diff --git a/CHANGELOG.md b/CHANGELOG.md index c54c8fe038..088e1af908 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,27 @@ +# [1.14.0](https://github.com/payloadcms/payload/compare/v1.13.4...v1.14.0) (2023-08-16) + + +### Bug Fixes + +* DatePicker showing only selected day by default ([#3169](https://github.com/payloadcms/payload/issues/3169)) ([edcb393](https://github.com/payloadcms/payload/commit/edcb3933cfb4532180c822135ea6a8be928e0fdc)) +* only allow redirects to /admin sub-routes ([c0f05a1](https://github.com/payloadcms/payload/commit/c0f05a1c38fb9c958de920fabb698b5ecfb661f0)) +* passes in height to resizeOptions upload option to allow height resize ([#3171](https://github.com/payloadcms/payload/issues/3171)) ([7963d04](https://github.com/payloadcms/payload/commit/7963d04a27888eb5a12d0ab37f2082cd33638abd)) +* WhereBuilder component does not accept all valid Where queries ([#3087](https://github.com/payloadcms/payload/issues/3087)) ([fdfdfc8](https://github.com/payloadcms/payload/commit/fdfdfc83f36a958971f8e4e4f9f5e51560cb26e0)) + + +### Features + +* add afterOperation hook ([#2697](https://github.com/payloadcms/payload/issues/2697)) ([33686c6](https://github.com/payloadcms/payload/commit/33686c6db8373a16d7f6b0192e0701bf15881aa4)) +* add support for hotkeys ([#1821](https://github.com/payloadcms/payload/issues/1821)) ([942cfec](https://github.com/payloadcms/payload/commit/942cfec286ff050e13417b037cca64b9d757d868)) +* Added Azerbaijani language file ([#3164](https://github.com/payloadcms/payload/issues/3164)) ([63e3063](https://github.com/payloadcms/payload/commit/63e3063b9ecc1afd62d7a287a798d41215008f2a)) +* allow async relationship filter options ([#2951](https://github.com/payloadcms/payload/issues/2951)) ([bad3638](https://github.com/payloadcms/payload/commit/bad363882c9d00d3c73547ca3329eba988e728ff)) +* Improve admin dashboard accessibility ([#3053](https://github.com/payloadcms/payload/issues/3053)) ([e03a8e6](https://github.com/payloadcms/payload/commit/e03a8e6b030e82a17e1cdae5b4032433cf9c75a4)) +* improve field ops ([#3172](https://github.com/payloadcms/payload/issues/3172)) ([d91b44c](https://github.com/payloadcms/payload/commit/d91b44cbb3fd526caca2a6f4bd30fd06ede3a5da)) +* make PAYLOAD_CONFIG_PATH optional ([#2839](https://github.com/payloadcms/payload/issues/2839)) ([5744de7](https://github.com/payloadcms/payload/commit/5744de7ec63e3f17df7e02a7cc827818a79dbbb8)) +* text alignment for richtext editor ([#2803](https://github.com/payloadcms/payload/issues/2803)) ([a0b13a5](https://github.com/payloadcms/payload/commit/a0b13a5b01fa0d7f4c4dffd1895bfe507e5c676d)) + ## [1.13.4](https://github.com/payloadcms/payload/compare/v1.13.3...v1.13.4) (2023-08-11) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 7d50a836ef..9c9e0f6190 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -20,6 +20,12 @@ Payload documentation can be found directly within its codebase and you can feel If you're an incredibly awesome person and want to help us make Payload even better through new features or additions, we would be thrilled to work with you. +## Design Contributions + +When it comes to design-related changes or additions, it's crucial for us to ensure a cohesive user experience and alignment with our broader design vision. Before embarking on any implementation that would affect the design or UI/UX, we ask that you **first share your design proposal** with us for review and approval. + +Our design review ensures that proposed changes fit seamlessly with other components, both existing and planned. This step is meant to prevent unintentional design inconsistencies and to save you from investing time in implementing features that might need significant design alterations later. + ### Before Starting To help us work on new features, you can create a new feature request post in [GitHub Discussion](https://github.com/payloadcms/payload/discussions) or discuss it in our [Discord](https://discord.com/invite/payload). New functionality often has large implications across the entire Payload repo, so it is best to discuss the architecture and approach before starting work on a pull request. diff --git a/docs/admin/components.mdx b/docs/admin/components.mdx index b9c88c2a74..60c37110f2 100644 --- a/docs/admin/components.mdx +++ b/docs/admin/components.mdx @@ -351,7 +351,7 @@ const CustomComponent: React.FC = () => { ### Getting the current locale -In any custom component you can get the selected locale with the `useLocale` hook. Here is a simple example: +In any custom component you can get the selected locale with `useLocale` hook. `useLocale` returns the full locale object, consisting of a `label`, `rtl`(right-to-left) property, and then `code`. Here is a simple example: ```tsx import { useLocale } from "payload/components/utilities"; @@ -366,6 +366,6 @@ const Greeting: React.FC = () => { es: "Hola", }; - return {trans[locale]} ; + return {trans[locale.code]} }; ``` diff --git a/docs/admin/hooks.mdx b/docs/admin/hooks.mdx index 18a938a89a..3c498db6a3 100644 --- a/docs/admin/hooks.mdx +++ b/docs/admin/hooks.mdx @@ -662,7 +662,7 @@ const LinkFromCategoryToPosts: React.FC = () => { ### useLocale -In any custom component you can get the selected locale with the `useLocale` hook. Here is a simple example: +In any custom component you can get the selected locale object with the `useLocale` hook. `useLocale`gives you the full locale object, consisting of a `label`, `rtl`(right-to-left) property, and then `code`. Here is a simple example: ```tsx import { useLocale } from 'payload/components/utilities'; @@ -678,7 +678,7 @@ const Greeting: React.FC = () => { }; return ( - { trans[locale] } + { trans[locale.code] } ); }; ``` diff --git a/docs/configuration/localization.mdx b/docs/configuration/localization.mdx index 3e90019b26..6b92a0a8c8 100644 --- a/docs/configuration/localization.mdx +++ b/docs/configuration/localization.mdx @@ -33,15 +33,43 @@ export default buildConfig({ }); ``` +**Example Payload config set up for localization with full locales objects:** + +```ts +import { buildConfig } from 'payload/config' + +export default buildConfig({ + collections: [ + // collections go here + ], + localization: { + locales: [ + { + label: "English", + code: "en", + }, + { + label: "Arabic", + code: "ar", + // opt-in to setting default text-alignment on Input fields to rtl (right-to-left) when current locale is rtl + rtl: true, + }, + ], + defaultLocale: "en", + fallback: true, + }, +}); +``` + **Here is a brief explanation of each of the options available within the `localization` property:** **`locales`** -Array-based list of all locales that you would like to support. These strings do not need to be in any specific format. It's up to you to define how to represent your locales. Common patterns are to use two-letter ISO 639 language codes or four-letter language and country codes (ISO 3166‑1) such as `en-US`, `en-UK`, `es-MX`, etc. +Array-based list of all locales that you would like to support. These can be strings of locale codes or objects with a `label`, a locale `code`, and the `rtl` (right-to-left) property. The locale codes do not need to be in any specific format. It's up to you to define how to represent your locales. Common patterns are to use two-letter ISO 639 language codes or four-letter language and country codes (ISO 3166‑1) such as `en-US`, `en-UK`, `es-MX`, etc. **`defaultLocale`** -Required string that matches one of the locales from the array provided. By default, if no locale is specified, documents will be returned in this locale. +Required string that matches one of the locale codes from the array provided. By default, if no locale is specified, documents will be returned in this locale. **`fallback`** diff --git a/docs/fields/rich-text.mdx b/docs/fields/rich-text.mdx index c8518ac025..a23c38321f 100644 --- a/docs/fields/rich-text.mdx +++ b/docs/fields/rich-text.mdx @@ -7,9 +7,7 @@ keywords: rich text, fields, config, configuration, documentation, Content Manag --- - The Rich Text field is a powerful way to allow editors to write dynamic - content. The content is saved as JSON in the database and can be converted - into any format, including HTML, that you need. + The Rich Text field is a powerful way to allow editors to write dynamic content. The content is saved as JSON in the database and can be converted into any format, including HTML, that you need. - - Consistent with Payload's goal of making you learn as little of Payload as - possible, customizing and using the Rich Text Editor does not involve - learning how to develop for a Payload rich text editor. - {" "} - Instead, you can invest your time and effort into learning Slate, an - open-source tool that will allow you to apply your learnings elsewhere as - well. + Consistent with Payload's goal of making you learn as little of Payload as possible, customizing and using the Rich Text Editor does not involve learning how to develop for a Payload rich text editor. Instead, you can invest your time and effort into learning Slate, an open-source tool that will allow you to apply your learnings elsewhere as well. ### Config @@ -116,6 +107,10 @@ _RichText field using the upload element_ ![RichText upload element modal](https://payloadcms.com/images/docs/fields/richText/rte-upload-fields-modal.jpg) _RichText upload element modal displaying fields from the config_ +**`rtl`** + +Override the default text direction of the Admin panel for this field. Set to `true` to force right-to-left text direction. + ### Relationship element The built-in `relationship` element is a powerful way to reference other Documents directly within your Rich Text editor. @@ -125,13 +120,7 @@ The built-in `relationship` element is a powerful way to reference other Documen Similar to the `relationship` element, the `upload` element is a user-friendly way to reference [Upload-enabled collections](/docs/upload/overview) with a UI specifically designed for media / image-based uploads. - Tip: -
- Collections are automatically allowed to be selected within the Rich Text - relationship and upload elements by default. If you want to disable a - collection from being able to be referenced in Rich Text fields, set the - collection admin options of enableRichTextLink and{" "} - enableRichTextRelationship to false. + Tip:
Collections are automatically allowed to be selected within the Rich Text relationship and upload elements by default. If you want to disable a collection from being able to be referenced in Rich Text fields, set the collection admin options of enableRichTextLink and enableRichTextRelationship to false.
Relationship and Upload elements are populated dynamically into your Rich Text field' content. Within the REST and Local APIs, any present RichText `relationship` or `upload` elements will respect the `depth` option that you pass, and will be populated accordingly. In GraphQL, each `richText` field accepts an argument of `depth` for you to utilize. @@ -307,10 +296,7 @@ const serialize = (children) => ``` - Note: -
- The above example is for how to render to JSX, although for plain HTML the - pattern is similar. Just remove the JSX and return HTML strings instead! + Note:
The above example is for how to render to JSX, although for plain HTML the pattern is similar. Just remove the JSX and return HTML strings instead!
### Built-in SlateJS Plugins diff --git a/docs/fields/text.mdx b/docs/fields/text.mdx index 40dcd11c67..5df281b8ec 100644 --- a/docs/fields/text.mdx +++ b/docs/fields/text.mdx @@ -52,6 +52,10 @@ Set this property to define a placeholder string in the text input. Set this property to a string that will be used for browser autocomplete. +**`rtl`** + +Override the default text direction of the Admin panel for this field. Set to `true` to force right-to-left text direction. + ### Example `collections/ExampleCollection.ts` diff --git a/docs/fields/textarea.mdx b/docs/fields/textarea.mdx index 0bc8db3d0f..9dfd367ea2 100644 --- a/docs/fields/textarea.mdx +++ b/docs/fields/textarea.mdx @@ -52,6 +52,10 @@ Set this property to define a placeholder string in the textarea. Set this property to a string that will be used for browser autocomplete. +**`rtl`** + +Override the default text direction of the Admin panel for this field. Set to `true` to force right-to-left text direction. + ### Example `collections/ExampleCollection.ts` diff --git a/docs/hooks/collections.mdx b/docs/hooks/collections.mdx index 8923f65277..b998dd9a0f 100644 --- a/docs/hooks/collections.mdx +++ b/docs/hooks/collections.mdx @@ -16,6 +16,7 @@ Collections feature the ability to define the following hooks: - [afterRead](#afterread) - [beforeDelete](#beforedelete) - [afterDelete](#afterdelete) +- [afterOperation](#afteroperation) Additionally, `auth`-enabled collections feature the following hooks: @@ -31,6 +32,7 @@ Additionally, `auth`-enabled collections feature the following hooks: All collection Hook properties accept arrays of synchronous or asynchronous functions. Each Hook type receives specific arguments and has the ability to modify specific outputs. `collections/exampleHooks.js` + ```ts import { CollectionConfig } from 'payload/types'; @@ -48,6 +50,7 @@ export const ExampleHooks: CollectionConfig = { afterChange: [(args) => {...}], afterRead: [(args) => {...}], afterDelete: [(args) => {...}], + afterOperation: [(args) => {...}], // Auth-enabled hooks beforeLogin: [(args) => {...}], @@ -62,19 +65,19 @@ export const ExampleHooks: CollectionConfig = { ### beforeOperation -The `beforeOperation` Hook type can be used to modify the arguments that operations accept or execute side-effects that run before an operation begins. +The `beforeOperation` hook can be used to modify the arguments that operations accept or execute side-effects that run before an operation begins. -Available Collection operations include `create`, `read`, `update`, `delete`, `login`, `refresh` and `forgotPassword`. +Available Collection operations include `create`, `read`, `update`, `delete`, `login`, `refresh`, and `forgotPassword`. ```ts -import { CollectionBeforeOperationHook } from 'payload/types'; +import { CollectionBeforeOperationHook } from "payload/types"; const beforeOperationHook: CollectionBeforeOperationHook = async ({ - args, // Original arguments passed into the operation + args, // original arguments passed into the operation operation, // name of the operation }) => { - return args; // Return operation arguments as necessary -} + return args; // return modified operation arguments as necessary +}; ``` ### beforeValidate @@ -88,7 +91,7 @@ Please do note that this does not run before the client-side validation. If you 3. `validate` runs on the server ```ts -import { CollectionBeforeOperationHook } from 'payload/types'; +import { CollectionBeforeOperationHook } from "payload/types"; const beforeValidateHook: CollectionBeforeValidateHook = async ({ data, // incoming data to update or create with @@ -97,7 +100,7 @@ const beforeValidateHook: CollectionBeforeValidateHook = async ({ originalDoc, // original document }) => { return data; // Return data to either create or update a document with -} +}; ``` ### beforeChange @@ -105,7 +108,7 @@ const beforeValidateHook: CollectionBeforeValidateHook = async ({ Immediately following validation, `beforeChange` hooks will run within `create` and `update` operations. At this stage, you can be confident that the data that will be saved to the document is valid in accordance to your field validations. You can optionally modify the shape of data to be saved. ```ts -import { CollectionBeforeChangeHook } from 'payload/types'; +import { CollectionBeforeChangeHook } from "payload/types"; const beforeChangeHook: CollectionBeforeChangeHook = async ({ data, // incoming data to update or create with @@ -114,7 +117,7 @@ const beforeChangeHook: CollectionBeforeChangeHook = async ({ originalDoc, // original document }) => { return data; // Return data to either create or update a document with -} +}; ``` ### afterChange @@ -122,7 +125,7 @@ const beforeChangeHook: CollectionBeforeChangeHook = async ({ After a document is created or updated, the `afterChange` hook runs. This hook is helpful to recalculate statistics such as total sales within a global, syncing user profile changes to a CRM, and more. ```ts -import { CollectionAfterChangeHook } from 'payload/types'; +import { CollectionAfterChangeHook } from "payload/types"; const afterChangeHook: CollectionAfterChangeHook = async ({ doc, // full document data @@ -131,7 +134,7 @@ const afterChangeHook: CollectionAfterChangeHook = async ({ operation, // name of the operation ie. 'create', 'update' }) => { return doc; -} +}; ``` ### beforeRead @@ -139,7 +142,7 @@ const afterChangeHook: CollectionAfterChangeHook = async ({ Runs before `find` and `findByID` operations are transformed for output by `afterRead`. This hook fires before hidden fields are removed and before localized fields are flattened into the requested locale. Using this Hook will provide you with all locales and all hidden fields via the `doc` argument. ```ts -import { CollectionBeforeReadHook } from 'payload/types'; +import { CollectionBeforeReadHook } from "payload/types"; const beforeReadHook: CollectionBeforeReadHook = async ({ doc, // full document data @@ -147,7 +150,7 @@ const beforeReadHook: CollectionBeforeReadHook = async ({ query, // JSON formatted query }) => { return doc; -} +}; ``` ### afterRead @@ -155,7 +158,7 @@ const beforeReadHook: CollectionBeforeReadHook = async ({ Runs as the last step before documents are returned. Flattens locales, hides protected fields, and removes fields that users do not have access to. ```ts -import { CollectionAfterReadHook } from 'payload/types'; +import { CollectionAfterReadHook } from "payload/types"; const afterReadHook: CollectionAfterReadHook = async ({ doc, // full document data @@ -164,7 +167,7 @@ const afterReadHook: CollectionAfterReadHook = async ({ findMany, // boolean to denote if this hook is running against finding one, or finding many }) => { return doc; -} +}; ``` ### beforeDelete @@ -194,19 +197,37 @@ const afterDeleteHook: CollectionAfterDeleteHook = async ({ }) => {...} ``` +### afterOperation + +The `afterOperation` hook can be used to modify the result of operations or execute side-effects that run after an operation has completed. + +Available Collection operations include `create`, `find`, `findByID`, `update`, `updateByID`, `delete`, `deleteByID`, `login`, `refresh`, and `forgotPassword`. + +```ts +import { CollectionAfterOperationHook } from "payload/types"; + +const afterOperationHook: CollectionAfterOperationHook = async ({ + args, // arguments passed into the operation + operation, // name of the operation + result, // the result of the operation, before modifications +}) => { + return result; // return modified result as necessary +}; +``` + ### beforeLogin For auth-enabled Collections, this hook runs during `login` operations where a user with the provided credentials exist, but before a token is generated and added to the response. You can optionally modify the user that is returned, or throw an error in order to deny the login operation. ```ts -import { CollectionBeforeLoginHook } from 'payload/types'; +import { CollectionBeforeLoginHook } from "payload/types"; const beforeLoginHook: CollectionBeforeLoginHook = async ({ req, // full express request user, // user being logged in }) => { return user; -} +}; ``` ### afterLogin @@ -267,7 +288,7 @@ const afterMeHook: CollectionAfterMeHook = async ({ For auth-enabled Collections, this hook runs after successful `forgotPassword` operations. Returned values are discarded. ```ts -import { CollectionAfterForgotPasswordHook } from 'payload/types'; +import { CollectionAfterForgotPasswordHook } from "payload/types"; const afterLoginHook: CollectionAfterForgotPasswordHook = async ({ req, // full express request @@ -275,7 +296,7 @@ const afterLoginHook: CollectionAfterForgotPasswordHook = async ({ token, // user token }) => { return user; -} +}; ``` ## TypeScript @@ -298,5 +319,5 @@ import type { CollectionAfterRefreshHook, CollectionAfterMeHook, CollectionAfterForgotPasswordHook, -} from 'payload/types'; +} from "payload/types"; ``` diff --git a/examples/draft-preview/next-app/README.md b/examples/draft-preview/next-app/README.md index b4d9b169e6..a2713894ef 100644 --- a/examples/draft-preview/next-app/README.md +++ b/examples/draft-preview/next-app/README.md @@ -1,6 +1,6 @@ # Payload Draft Preview Example Front-End -This is a [Next.js](https://nextjs.org) app using the [App Router](https://nextjs.org/docs/app). It was made explicitly for Payload's [Draft Preview Example](https://github.com/payloadcms/payload/tree/master/examples/draft-preview). +This is a [Next.js](https://nextjs.org) app using the [App Router](https://nextjs.org/docs/app). It was made explicitly for Payload's [Draft Preview Example](https://github.com/payloadcms/payload/tree/master/examples/draft-preview/payload). > This example uses the App Router, the latest API of Next.js. If your app is using the legacy [Pages Router](https://nextjs.org/docs/pages), check out the official [Pages Router Example](https://github.com/payloadcms/payload/tree/master/examples/draft-preview/next-pages). diff --git a/examples/draft-preview/next-app/app/_api/fetchPage.ts b/examples/draft-preview/next-app/app/_api/fetchPage.ts index 5e0798e81b..ad9c70fb92 100644 --- a/examples/draft-preview/next-app/app/_api/fetchPage.ts +++ b/examples/draft-preview/next-app/app/_api/fetchPage.ts @@ -20,6 +20,11 @@ export const fetchPage = async ( draft && payloadToken ? '&draft=true' : '' }`, { + method: 'GET', + // this is the key we'll use to on-demand revalidate pages that use this data + // we do this by calling `revalidateTag()` using the same key + // see `app/api/revalidate.ts` for more info + next: { tags: [`pages_${slug}`] }, ...(draft && payloadToken ? { headers: { diff --git a/examples/draft-preview/next-app/app/api/revalidate/route.ts b/examples/draft-preview/next-app/app/api/revalidate/route.ts index 653a1c85af..3306cda4d0 100644 --- a/examples/draft-preview/next-app/app/api/revalidate/route.ts +++ b/examples/draft-preview/next-app/app/api/revalidate/route.ts @@ -1,23 +1,32 @@ -import { revalidatePath } from 'next/cache' +import { revalidatePath, revalidateTag } from 'next/cache' import type { NextRequest } from 'next/server' import { NextResponse } from 'next/server' +// this endpoint will revalidate a page by tag or path +// this is to achieve on-demand revalidation of pages that use this data +// send either `collection` and `slug` or `revalidatePath` as query params export async function GET(request: NextRequest): Promise { - const path = request.nextUrl.searchParams.get('revalidatePath') + const collection = request.nextUrl.searchParams.get('collection') + const slug = request.nextUrl.searchParams.get('slug') + const path = request.nextUrl.searchParams.get('path') const secret = request.nextUrl.searchParams.get('secret') if (secret !== process.env.NEXT_PRIVATE_REVALIDATION_KEY) { return NextResponse.json({ revalidated: false, now: Date.now() }) } + if (typeof collection === 'string' && typeof slug === 'string') { + revalidateTag(`${collection}_${slug}`) + return NextResponse.json({ revalidated: true, now: Date.now() }) + } + + // there is a known limitation with `revalidatePath` where it will not revalidate exact paths of dynamic routes + // instead, Next.js expects us to revalidate entire directories, i.e. `revalidatePath('/[slug]')` instead of `/example-page` + // for this reason, it is preferred to use `revalidateTag` instead of `revalidatePath` + // - https://github.com/vercel/next.js/issues/49387 + // - https://github.com/vercel/next.js/issues/49778#issuecomment-1547028830 if (typeof path === 'string') { - // there is a known bug with `revalidatePath` where it will not revalidate exact paths of dynamic routes - // instead, Next.js expects us to revalidate entire directories, i.e. `/[slug]` instead of `/example-page` - // for now we'll make this change but with expectation that it will be fixed so we can use `revalidatePath('/example-page')` - // - https://github.com/vercel/next.js/issues/49387 - // - https://github.com/vercel/next.js/issues/49778#issuecomment-1547028830 - // revalidatePath(path) - revalidatePath('/[slug]') + revalidatePath(path) return NextResponse.json({ revalidated: true, now: Date.now() }) } diff --git a/examples/draft-preview/next-pages/README.md b/examples/draft-preview/next-pages/README.md index b01b952e86..a5f57ae006 100644 --- a/examples/draft-preview/next-pages/README.md +++ b/examples/draft-preview/next-pages/README.md @@ -1,6 +1,6 @@ # Payload Draft Preview Example Front-End -This is a [Next.js](https://nextjs.org) app using the [Pages Router](https://nextjs.org/docs/pages). It was made explicitly for Payload's [Draft Preview Example](https://github.com/payloadcms/payload/tree/master/examples/draft-preview). +This is a [Next.js](https://nextjs.org) app using the [Pages Router](https://nextjs.org/docs/pages). It was made explicitly for Payload's [Draft Preview Example](https://github.com/payloadcms/payload/tree/master/examples/draft-preview/payload). > This example uses the Pages Router, the legacy API of Next.js. If your app is using the latest [App Router](https://nextjs.org/docs/app), check out the official [App Router Example](https://github.com/payloadcms/payload/tree/master/examples/draft-preview/next-app). diff --git a/examples/draft-preview/next-pages/src/pages/api/revalidate.ts b/examples/draft-preview/next-pages/src/pages/api/revalidate.ts index a662071122..0181d1a156 100644 --- a/examples/draft-preview/next-pages/src/pages/api/revalidate.ts +++ b/examples/draft-preview/next-pages/src/pages/api/revalidate.ts @@ -6,9 +6,9 @@ const revalidate = async (req: NextApiRequest, res: NextApiResponse): Promise { return pathname } -// Revalidate the page in the background, so the user doesn't have to wait -// Notice that the hook itself is not async and we are not awaiting `revalidate` -// Only revalidate existing docs that are published +// revalidate the page in the background, so the user doesn't have to wait +// notice that the hook itself is not async and we are not awaiting `revalidate` +// only revalidate existing docs that are published (not drafts) +// send `revalidatePath`, `collection`, and `slug` to the frontend to use in its revalidate route +// frameworks may have different ways of doing this, but the idea is the same export const revalidatePage: AfterChangeHook = ({ doc, req, operation }) => { if (operation === 'update' && doc._status === 'published') { const url = formatAppURL({ doc }) @@ -17,7 +19,7 @@ export const revalidatePage: AfterChangeHook = ({ doc, req, operation }) => { const revalidate = async (): Promise => { try { const res = await fetch( - `${process.env.PAYLOAD_PUBLIC_SITE_URL}/api/revalidate?secret=${process.env.REVALIDATION_KEY}&revalidatePath=${url}`, + `${process.env.PAYLOAD_PUBLIC_SITE_URL}/api/revalidate?secret=${process.env.REVALIDATION_KEY}&collection=pages&slug=${doc?.slug}&path=${url}`, ) if (res.ok) { diff --git a/examples/draft-preview/payload/src/collections/Pages/index.ts b/examples/draft-preview/payload/src/collections/Pages/index.ts index f4bde2e1a6..5f685462a2 100644 --- a/examples/draft-preview/payload/src/collections/Pages/index.ts +++ b/examples/draft-preview/payload/src/collections/Pages/index.ts @@ -16,7 +16,7 @@ export const Pages: CollectionConfig = { formatAppURL({ doc, }), - )}&secret=${process.env.PAYLOAD_PUBLIC_DRAFT_SECRET}` + )}&collection=pages&slug=${doc.slug}&secret=${process.env.PAYLOAD_PUBLIC_DRAFT_SECRET}` }, }, versions: { diff --git a/examples/draft-preview/payload/src/seed/pageDraft.ts b/examples/draft-preview/payload/src/seed/pageDraft.ts index ce289a7521..4b6cb32507 100644 --- a/examples/draft-preview/payload/src/seed/pageDraft.ts +++ b/examples/draft-preview/payload/src/seed/pageDraft.ts @@ -1,6 +1,7 @@ import type { Page } from '../payload-types' export const examplePageDraft: Partial = { + title: 'Example Page (Draft)', richText: [ { children: [ diff --git a/package.json b/package.json index ce2f857297..1b9e67751b 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "payload", - "version": "1.13.4", + "version": "1.14.0", "description": "Node, React and MongoDB Headless CMS and Application Framework", "license": "MIT", "engines": { @@ -43,10 +43,12 @@ "pretest": "yarn build", "test": "yarn test:int && yarn test:components && yarn test:e2e", "test:int": "cross-env DISABLE_LOGGING=true jest --forceExit --detectOpenHandles", + "test:int:postgres": "cross-env PAYLOAD_DATABASE=postgres yarn test:int", "test:e2e": "ts-node -T ./test/runE2E.ts", "test:e2e:headed": "cross-env DISABLE_LOGGING=true playwright test --headed", "test:e2e:debug": "cross-env PWDEBUG=1 DISABLE_LOGGING=true playwright test", "test:components": "cross-env jest --config=jest.components.config.js", + "translateNewKeys": "ts-node -T ./scripts/translateNewKeys.ts", "clean:cache": "rimraf node_modules/.cache", "clean": "rimraf dist", "release:patch": "release-it patch", @@ -147,8 +149,8 @@ "passport-jwt": "^4.0.1", "passport-local": "^1.0.0", "path-browserify": "^1.0.1", - "pino": "^6.4.1", - "pino-pretty": "^9.1.1", + "pino": "^8.15.0", + "pino-pretty": "^10.2.0", "pluralize": "^8.0.0", "postcss": "^8.4.21", "postcss-loader": "^6.2.1", diff --git a/packages/db-mongodb/package.json b/packages/db-mongodb/package.json index 08c6f0f50b..33730d98ff 100644 --- a/packages/db-mongodb/package.json +++ b/packages/db-mongodb/package.json @@ -12,8 +12,8 @@ "devDependencies": { "@types/mongoose-aggregate-paginate-v2": "^1.0.5", "mongodb-memory-server": "^8.13.0", - "payload": "^1.11.8", - "typescript": "^4.9.4" + "typescript": "^4.9.4", + "payload": "payloadcms/payload#build/chore/update-2.0" }, "dependencies": { "bson-objectid": "^2.0.4", @@ -24,4 +24,4 @@ "mongoose-paginate-v2": "1.7.22", "uuid": "^9.0.0" } -} \ No newline at end of file +} diff --git a/packages/db-mongodb/src/models/buildSchema.ts b/packages/db-mongodb/src/models/buildSchema.ts index 1261b72ef7..8e4827f61e 100644 --- a/packages/db-mongodb/src/models/buildSchema.ts +++ b/packages/db-mongodb/src/models/buildSchema.ts @@ -3,7 +3,7 @@ /* eslint-disable @typescript-eslint/no-use-before-define */ /* eslint-disable no-use-before-define */ import { IndexOptions, Schema, SchemaOptions, SchemaTypeOptions } from 'mongoose'; -import { SanitizedConfig } from 'payload/dist/config/types'; +import { SanitizedConfig, SanitizedLocalizationConfig } from 'payload/dist/config/types'; import { ArrayField, Block, @@ -66,10 +66,10 @@ const formatBaseSchema = (field: FieldAffectingData, buildSchemaOptions: BuildSc return schema; }; -const localizeSchema = (entity: NonPresentationalField | Tab, schema, localization) => { +const localizeSchema = (entity: NonPresentationalField | Tab, schema, localization: false | SanitizedLocalizationConfig) => { if (fieldIsLocalized(entity) && localization && Array.isArray(localization.locales)) { return { - type: localization.locales.reduce((localeSchema, locale) => ({ + type: localization.localeCodes.reduce((localeSchema, locale) => ({ ...localeSchema, [locale]: schema, }), { @@ -242,7 +242,7 @@ const fieldToSchemaMap: Record = { if (field.localized && config.localization) { schemaToReturn = { - type: config.localization.locales.reduce((locales, locale) => { + type: config.localization.localeCodes.reduce((locales, locale) => { let localeSchema: { [key: string]: any } = {}; if (hasManyRelations) { @@ -454,10 +454,10 @@ const fieldToSchemaMap: Record = { }); if (field.localized && config.localization) { - config.localization.locales.forEach((locale) => { + config.localization.localeCodes.forEach((localeCode) => { // eslint-disable-next-line @typescript-eslint/ban-ts-comment // @ts-ignore Possible incorrect typing in mongoose types, this works - schema.path(`${field.name}.${locale}`).discriminator(blockItem.slug, blockSchema); + schema.path(`${field.name}.${localeCode}`).discriminator(blockItem.slug, blockSchema); }); } else { // eslint-disable-next-line @typescript-eslint/ban-ts-comment diff --git a/packages/db-mongodb/src/queries/buildSearchParams.ts b/packages/db-mongodb/src/queries/buildSearchParams.ts index 38efb9071b..2ebeaed340 100644 --- a/packages/db-mongodb/src/queries/buildSearchParams.ts +++ b/packages/db-mongodb/src/queries/buildSearchParams.ts @@ -2,8 +2,10 @@ import mongoose from 'mongoose'; import objectID from 'bson-objectid'; import { getLocalizedPaths } from 'payload/dist/database/getLocalizedPaths'; import { Field, fieldAffectsData } from 'payload/dist/fields/config/types'; -import { PathToQuery, validOperators } from 'payload/dist/database/queryValidation/types'; +import { PathToQuery } from 'payload/dist/database/queryValidation/types'; +import { validOperators } from 'payload/dist/types/constants'; import { Payload } from 'payload'; +import { Operator } from 'payload/types'; import { operatorMap } from './operatorMap'; import { sanitizeQueryValue } from './sanitizeQueryValue'; import { MongooseAdapter } from '..'; @@ -179,7 +181,7 @@ export async function buildSearchParam({ return relationshipQuery; } - if (operator && validOperators.includes(operator)) { + if (operator && validOperators.includes(operator as Operator)) { const operatorKey = operatorMap[operator]; if (field.type === 'relationship' || field.type === 'upload') { diff --git a/packages/db-mongodb/src/queries/buildSortParam.ts b/packages/db-mongodb/src/queries/buildSortParam.ts index d1809b08d3..6d1d54bd13 100644 --- a/packages/db-mongodb/src/queries/buildSortParam.ts +++ b/packages/db-mongodb/src/queries/buildSortParam.ts @@ -1,11 +1,11 @@ import { PaginateOptions } from 'mongoose'; -import { Config } from 'payload/dist/config/types'; +import { SanitizedConfig } from 'payload/dist/config/types'; import { Field } from 'payload/dist/fields/config/types'; import { getLocalizedSortProperty } from './getLocalizedSortProperty'; type Args = { sort: string - config: Config + config: SanitizedConfig fields: Field[] timestamps: boolean locale: string diff --git a/packages/db-mongodb/src/queries/getLocalizedSortProperty.spec.ts b/packages/db-mongodb/src/queries/getLocalizedSortProperty.spec.ts index 1ca8b8d1af..2737ea47b6 100644 --- a/packages/db-mongodb/src/queries/getLocalizedSortProperty.spec.ts +++ b/packages/db-mongodb/src/queries/getLocalizedSortProperty.spec.ts @@ -1,3 +1,4 @@ +import { sanitizeConfig } from 'payload/dist/config/sanitize'; import { Config } from 'payload/dist/config/types'; import { getLocalizedSortProperty } from './getLocalizedSortProperty'; @@ -11,7 +12,7 @@ describe('get localized sort property', () => { it('passes through a non-localized sort property', () => { const result = getLocalizedSortProperty({ segments: ['title'], - config, + config: sanitizeConfig(config), fields: [ { name: 'title', @@ -27,7 +28,7 @@ describe('get localized sort property', () => { it('properly localizes an un-localized sort property', () => { const result = getLocalizedSortProperty({ segments: ['title'], - config, + config: sanitizeConfig(config), fields: [ { name: 'title', @@ -44,7 +45,7 @@ describe('get localized sort property', () => { it('keeps specifically asked-for localized sort properties', () => { const result = getLocalizedSortProperty({ segments: ['title', 'es'], - config, + config: sanitizeConfig(config), fields: [ { name: 'title', @@ -61,7 +62,7 @@ describe('get localized sort property', () => { it('properly localizes nested sort properties', () => { const result = getLocalizedSortProperty({ segments: ['group', 'title'], - config, + config: sanitizeConfig(config), fields: [ { name: 'group', @@ -84,7 +85,7 @@ describe('get localized sort property', () => { it('keeps requested locale with nested sort properties', () => { const result = getLocalizedSortProperty({ segments: ['group', 'title', 'es'], - config, + config: sanitizeConfig(config), fields: [ { name: 'group', @@ -107,7 +108,7 @@ describe('get localized sort property', () => { it('properly localizes field within row', () => { const result = getLocalizedSortProperty({ segments: ['title'], - config, + config: sanitizeConfig(config), fields: [ { type: 'row', @@ -129,7 +130,7 @@ describe('get localized sort property', () => { it('properly localizes field within named tab', () => { const result = getLocalizedSortProperty({ segments: ['tab', 'title'], - config, + config: sanitizeConfig(config), fields: [ { type: 'tabs', @@ -156,7 +157,7 @@ describe('get localized sort property', () => { it('properly localizes field within unnamed tab', () => { const result = getLocalizedSortProperty({ segments: ['title'], - config, + config: sanitizeConfig(config), fields: [ { type: 'tabs', diff --git a/packages/db-mongodb/src/queries/getLocalizedSortProperty.ts b/packages/db-mongodb/src/queries/getLocalizedSortProperty.ts index f02e1be1de..8fdee83e56 100644 --- a/packages/db-mongodb/src/queries/getLocalizedSortProperty.ts +++ b/packages/db-mongodb/src/queries/getLocalizedSortProperty.ts @@ -1,10 +1,10 @@ -import { Config } from 'payload/dist/config/types'; +import { SanitizedConfig } from 'payload/dist/config/types'; import { Field, fieldAffectsData, fieldIsPresentationalOnly } from 'payload/dist/fields/config/types'; import flattenTopLevelFields from 'payload/dist/utilities/flattenTopLevelFields'; type Args = { segments: string[] - config: Config + config: SanitizedConfig fields: Field[] locale: string result?: string @@ -42,7 +42,7 @@ export const getLocalizedSortProperty = ({ if (matchedField.localized) { // Check to see if next segment is a locale if (segments.length > 0) { - const nextSegmentIsLocale = config.localization.locales.includes(remainingSegments[0]); + const nextSegmentIsLocale = config.localization.localeCodes.includes(remainingSegments[0]); // If next segment is locale, remove it from remaining segments // and use it to localize the current segment diff --git a/packages/db-mongodb/src/queries/operatorMap.ts b/packages/db-mongodb/src/queries/operatorMap.ts index e5282461b1..280defb358 100644 --- a/packages/db-mongodb/src/queries/operatorMap.ts +++ b/packages/db-mongodb/src/queries/operatorMap.ts @@ -10,4 +10,6 @@ export const operatorMap = { exists: '$exists', equals: '$eq', near: '$near', + within: '$geoWithin', + intersects: '$geoIntersects', }; diff --git a/packages/db-mongodb/src/queries/parseParams.ts b/packages/db-mongodb/src/queries/parseParams.ts index 3ecd3d247e..6f8bec55da 100644 --- a/packages/db-mongodb/src/queries/parseParams.ts +++ b/packages/db-mongodb/src/queries/parseParams.ts @@ -2,10 +2,10 @@ /* eslint-disable no-await-in-loop */ import { FilterQuery } from 'mongoose'; import deepmerge from 'deepmerge'; -import { Where } from 'payload/types'; +import { Operator, Where } from 'payload/types'; import { combineMerge } from 'payload/dist/utilities/combineMerge'; import { Field } from 'payload/dist/fields/config/types'; -import { validOperators } from 'payload/dist/database/queryValidation/types'; +import { validOperators } from 'payload/dist/types/constants'; import { Payload } from 'payload'; import { buildSearchParam } from './buildSearchParams'; import { buildAndOrConditions } from './buildAndOrConditions'; @@ -54,7 +54,7 @@ export async function parseParams({ const pathOperators = where[relationOrPath]; if (typeof pathOperators === 'object') { for (const operator of Object.keys(pathOperators)) { - if (validOperators.includes(operator)) { + if (validOperators.includes(operator as Operator)) { const searchParam = await buildSearchParam({ collectionSlug, globalSlug, diff --git a/packages/db-mongodb/src/queries/sanitizeQueryValue.ts b/packages/db-mongodb/src/queries/sanitizeQueryValue.ts index 0d573df817..9ae737c6d9 100644 --- a/packages/db-mongodb/src/queries/sanitizeQueryValue.ts +++ b/packages/db-mongodb/src/queries/sanitizeQueryValue.ts @@ -95,7 +95,7 @@ export const sanitizeQueryValue = ({ field, path, operator, val, hasCustomID }: [lng, lat, maxDistance, minDistance] = createArrayFromCommaDelineated(formattedValue); } - if (!lng || !lat || (!maxDistance && !minDistance)) { + if (lng == null || lat == null || (maxDistance == null && minDistance == null)) { formattedValue = undefined; } else { formattedValue = { @@ -107,6 +107,12 @@ export const sanitizeQueryValue = ({ field, path, operator, val, hasCustomID }: } } + if (operator === 'within' || operator === 'intersects') { + formattedValue = { + $geometry: formattedValue, + }; + } + if (path !== '_id' || (path === '_id' && hasCustomID && field.type === 'text')) { if (operator === 'contains') { formattedValue = { $regex: formattedValue, $options: 'i' }; diff --git a/packages/db-mongodb/src/updateOne.ts b/packages/db-mongodb/src/updateOne.ts index 82c4778d7e..0bf533e49c 100644 --- a/packages/db-mongodb/src/updateOne.ts +++ b/packages/db-mongodb/src/updateOne.ts @@ -1,15 +1,16 @@ import { ValidationError } from 'payload/errors'; import type { PayloadRequest } from 'payload/types'; import type { UpdateOne } from 'payload/dist/database/types'; -import sanitizeInternalFields from './utilities/sanitizeInternalFields'; import i18nInit from 'payload/dist/translations/init'; +import sanitizeInternalFields from './utilities/sanitizeInternalFields'; import type { MongooseAdapter } from '.'; import { withSession } from './withSession'; export const updateOne: UpdateOne = async function updateOne( this: MongooseAdapter, - { collection, data, where, locale, req = {} as PayloadRequest }, + { collection, data, where: whereArg, id, locale, req = {} as PayloadRequest }, ) { + const where = id ? { id: { equals: id } } : whereArg; const Model = this.collections[collection]; const options = { ...withSession(this, req.transactionID), @@ -25,7 +26,7 @@ export const updateOne: UpdateOne = async function updateOne( let result; try { - result = await Model.findOneAndUpdate(query, data, options).lean(); + result = await Model.findOneAndUpdate(query, data, options); } catch (error) { // Handle uniqueness error from MongoDB throw error.code === 11000 && error.keyValue diff --git a/packages/db-mongodb/yarn.lock b/packages/db-mongodb/yarn.lock index 596a1532e2..2b46ac533a 100644 --- a/packages/db-mongodb/yarn.lock +++ b/packages/db-mongodb/yarn.lock @@ -455,49 +455,50 @@ tslib "^2.3.1" "@babel/code-frame@^7.0.0": - version "7.22.5" - resolved "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.5.tgz#234d98e1551960604f1246e6475891a570ad5658" - integrity sha512-Xmwn266vad+6DAqEB2A6V/CcZVp62BbwVmcOJc2RPuwih1kw02TjQvWVWlcKGbBPd+8/0V5DEkOcizRGYsspYQ== + version "7.22.10" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.22.10.tgz#1c20e612b768fefa75f6e90d6ecb86329247f0a3" + integrity sha512-/KKIMG4UEL35WmI9OlvMhurwtytjvXoFcGNrOvyG9zIzA8YmPjVtIZUf7b05+TPO7G7/GEmLHDaoCgACHl9hhA== dependencies: - "@babel/highlight" "^7.22.5" + "@babel/highlight" "^7.22.10" + chalk "^2.4.2" "@babel/helper-module-imports@^7.16.7": version "7.22.5" - resolved "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.5.tgz#1a8f4c9f4027d23f520bd76b364d44434a72660c" + resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.22.5.tgz#1a8f4c9f4027d23f520bd76b364d44434a72660c" integrity sha512-8Dl6+HD/cKifutF5qGd/8ZJi84QeAKh+CEe1sBzz8UayBBGg1dAIJrdHOcOM5b2MpzWL2yuotJTtGjETq0qjXg== dependencies: "@babel/types" "^7.22.5" "@babel/helper-string-parser@^7.22.5": version "7.22.5" - resolved "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz#533f36457a25814cf1df6488523ad547d784a99f" + resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz#533f36457a25814cf1df6488523ad547d784a99f" integrity sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw== "@babel/helper-validator-identifier@^7.22.5": version "7.22.5" - resolved "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.5.tgz#9544ef6a33999343c8740fa51350f30eeaaaf193" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.5.tgz#9544ef6a33999343c8740fa51350f30eeaaaf193" integrity sha512-aJXu+6lErq8ltp+JhkJUfk1MTGyuA4v7f3pA+BJ5HLfNC6nAQ0Cpi9uOquUj8Hehg0aUiHzWQbOVJGao6ztBAQ== -"@babel/highlight@^7.22.5": - version "7.22.5" - resolved "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.5.tgz#aa6c05c5407a67ebce408162b7ede789b4d22031" - integrity sha512-BSKlD1hgnedS5XRnGOljZawtag7H1yPfQp0tdNJCHoH6AZ+Pcm9VvkrK59/Yy593Ypg0zMxH2BxD1VPYUQ7UIw== +"@babel/highlight@^7.22.10": + version "7.22.10" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.22.10.tgz#02a3f6d8c1cb4521b2fd0ab0da8f4739936137d7" + integrity sha512-78aUtVcT7MUscr0K5mIEnkwxPE0MaxkR5RxRwuHaQ+JuU5AmTPhY+do2mdzVTnIJJpyBglql2pehuBIWHug+WQ== dependencies: "@babel/helper-validator-identifier" "^7.22.5" - chalk "^2.0.0" + chalk "^2.4.2" js-tokens "^4.0.0" "@babel/runtime@^7.1.2", "@babel/runtime@^7.12.0", "@babel/runtime@^7.12.13", "@babel/runtime@^7.12.5", "@babel/runtime@^7.14.5", "@babel/runtime@^7.18.3", "@babel/runtime@^7.19.0", "@babel/runtime@^7.20.6", "@babel/runtime@^7.21.0", "@babel/runtime@^7.5.5", "@babel/runtime@^7.8.7": - version "7.22.6" - resolved "https://registry.npmjs.org/@babel/runtime/-/runtime-7.22.6.tgz#57d64b9ae3cff1d67eb067ae117dac087f5bd438" - integrity sha512-wDb5pWm4WDdF6LFUde3Jl8WzPA+3ZbxYqkC6xAXuD3irdEHN1k0NfTRrJD8ZD378SJ61miMLCqIOXYhd8x+AJQ== + version "7.22.10" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.22.10.tgz#ae3e9631fd947cb7e3610d3e9d8fef5f76696682" + integrity sha512-21t/fkKLMZI4pqP2wlmsQAWnYW1PDyKyyUV4vCi+B25ydmdaYTKXPwCj0BzSUnZf4seIiYvSA3jcZ3gdsMFkLQ== dependencies: - regenerator-runtime "^0.13.11" + regenerator-runtime "^0.14.0" "@babel/types@^7.22.5": - version "7.22.5" - resolved "https://registry.npmjs.org/@babel/types/-/types-7.22.5.tgz#cd93eeaab025880a3a47ec881f4b096a5b786fbe" - integrity sha512-zo3MIHGOkPOfoRXitsgHLjEXmlDaD/5KU1Uzuc9GNiZPhSqVxVRtxuPaSBZDsYZ9qV88AjtMtWW7ww98loJ9KA== + version "7.22.10" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.22.10.tgz#4a9e76446048f2c66982d1a989dd12b8a2d2dc03" + integrity sha512-obaoigiLrlDZ7TUQln/8m4mSqIW2QFeOrCQc9r+xsaHGNoplVNYlRVpsfE8Vj35GEm2ZH4ZhrNYogs/3fj85kg== dependencies: "@babel/helper-string-parser" "^7.22.5" "@babel/helper-validator-identifier" "^7.22.5" @@ -505,7 +506,7 @@ "@bcherny/json-schema-ref-parser@9.0.9": version "9.0.9" - resolved "https://registry.npmjs.org/@bcherny/json-schema-ref-parser/-/json-schema-ref-parser-9.0.9.tgz#09899d405bc708c0acac0066ae8db5b94d465ca4" + resolved "https://registry.yarnpkg.com/@bcherny/json-schema-ref-parser/-/json-schema-ref-parser-9.0.9.tgz#09899d405bc708c0acac0066ae8db5b94d465ca4" integrity sha512-vmEmnJCfpkLdas++9OYg6riIezTYqTHpqUTODJzHLzs5UnXujbOJW9VwcVCnyo1mVRt32FRr23iXBx/sX8YbeQ== dependencies: "@jsdevtools/ono" "^7.1.3" @@ -515,22 +516,22 @@ "@csstools/cascade-layer-name-parser@^1.0.3", "@csstools/cascade-layer-name-parser@^1.0.4": version "1.0.4" - resolved "https://registry.npmjs.org/@csstools/cascade-layer-name-parser/-/cascade-layer-name-parser-1.0.4.tgz#3ff490b84660dc0592b4315029f22908f3de0577" + resolved "https://registry.yarnpkg.com/@csstools/cascade-layer-name-parser/-/cascade-layer-name-parser-1.0.4.tgz#3ff490b84660dc0592b4315029f22908f3de0577" integrity sha512-zXMGsJetbLoXe+gjEES07MEGjL0Uy3hMxmnGtVBrRpVKr5KV9OgCB09zr/vLrsEtoVQTgJFewxaU8IYSAE4tjg== "@csstools/color-helpers@^3.0.0": version "3.0.0" - resolved "https://registry.npmjs.org/@csstools/color-helpers/-/color-helpers-3.0.0.tgz#b64a9d86663b6d843b169f5da300f78c0242efc2" + resolved "https://registry.yarnpkg.com/@csstools/color-helpers/-/color-helpers-3.0.0.tgz#b64a9d86663b6d843b169f5da300f78c0242efc2" integrity sha512-rBODd1rY01QcenD34QxbQxLc1g+Uh7z1X/uzTHNQzJUnFCT9/EZYI7KWq+j0YfWMXJsRJ8lVkqBcB0R/qLr+yg== "@csstools/css-calc@^1.1.3": version "1.1.3" - resolved "https://registry.npmjs.org/@csstools/css-calc/-/css-calc-1.1.3.tgz#75e07eec075f1f3df0ce25575dab3d63da2bd680" + resolved "https://registry.yarnpkg.com/@csstools/css-calc/-/css-calc-1.1.3.tgz#75e07eec075f1f3df0ce25575dab3d63da2bd680" integrity sha512-7mJZ8gGRtSQfQKBQFi5N0Z+jzNC0q8bIkwojP1W0w+APzEqHu5wJoGVsvKxVnVklu9F8tW1PikbBRseYnAdv+g== "@csstools/css-color-parser@^1.2.2": version "1.2.3" - resolved "https://registry.npmjs.org/@csstools/css-color-parser/-/css-color-parser-1.2.3.tgz#0cd0f72c50894a623ae09f19e30bbfb298769f59" + resolved "https://registry.yarnpkg.com/@csstools/css-color-parser/-/css-color-parser-1.2.3.tgz#0cd0f72c50894a623ae09f19e30bbfb298769f59" integrity sha512-YaEnCoPTdhE4lPQFH3dU4IEk8S+yCnxS88wMv45JzlnMfZp57hpqA6qf2gX8uv7IJTJ/43u6pTQmhy7hCjlz7g== dependencies: "@csstools/color-helpers" "^3.0.0" @@ -538,22 +539,22 @@ "@csstools/css-parser-algorithms@^2.3.0", "@csstools/css-parser-algorithms@^2.3.1": version "2.3.1" - resolved "https://registry.npmjs.org/@csstools/css-parser-algorithms/-/css-parser-algorithms-2.3.1.tgz#ec4fc764ba45d2bb7ee2774667e056aa95003f3a" + resolved "https://registry.yarnpkg.com/@csstools/css-parser-algorithms/-/css-parser-algorithms-2.3.1.tgz#ec4fc764ba45d2bb7ee2774667e056aa95003f3a" integrity sha512-xrvsmVUtefWMWQsGgFffqWSK03pZ1vfDki4IVIIUxxDKnGBzqNgv0A7SB1oXtVNEkcVO8xi1ZrTL29HhSu5kGA== "@csstools/css-tokenizer@^2.1.1", "@csstools/css-tokenizer@^2.2.0": version "2.2.0" - resolved "https://registry.npmjs.org/@csstools/css-tokenizer/-/css-tokenizer-2.2.0.tgz#9d70e6dcbe94e44c7400a2929928db35c4de32b5" + resolved "https://registry.yarnpkg.com/@csstools/css-tokenizer/-/css-tokenizer-2.2.0.tgz#9d70e6dcbe94e44c7400a2929928db35c4de32b5" integrity sha512-wErmsWCbsmig8sQKkM6pFhr/oPha1bHfvxsUY5CYSQxwyhA9Ulrs8EqCgClhg4Tgg2XapVstGqSVcz0xOYizZA== -"@csstools/media-query-list-parser@^2.1.2", "@csstools/media-query-list-parser@^2.1.3": - version "2.1.3" - resolved "https://registry.npmjs.org/@csstools/media-query-list-parser/-/media-query-list-parser-2.1.3.tgz#4471ebd436a22019378fe9c8ac8c0f30c4fbb796" - integrity sha512-ATul1u+pic4aVpstgueqxEv4MsObEbszAxfTXpx9LHaeD3LAh+wFqdCteyegWmjk0k5rkSCAvIOaJe9U3DD09w== +"@csstools/media-query-list-parser@^2.1.2", "@csstools/media-query-list-parser@^2.1.4": + version "2.1.4" + resolved "https://registry.yarnpkg.com/@csstools/media-query-list-parser/-/media-query-list-parser-2.1.4.tgz#0017f99945f6c16dd81a7aacf6821770933c3a5c" + integrity sha512-V/OUXYX91tAC1CDsiY+HotIcJR+vPtzrX8pCplCpT++i8ThZZsq5F5dzZh/bDM3WUOjrvC1ljed1oSJxMfjqhw== "@csstools/postcss-cascade-layers@^4.0.0": version "4.0.0" - resolved "https://registry.npmjs.org/@csstools/postcss-cascade-layers/-/postcss-cascade-layers-4.0.0.tgz#21f8556de640f9f9ccfb950c49a886280fe5497e" + resolved "https://registry.yarnpkg.com/@csstools/postcss-cascade-layers/-/postcss-cascade-layers-4.0.0.tgz#21f8556de640f9f9ccfb950c49a886280fe5497e" integrity sha512-dVPVVqQG0FixjM9CG/+8eHTsCAxRKqmNh6H69IpruolPlnEF1611f2AoLK8TijTSAsqBSclKd4WHs1KUb/LdJw== dependencies: "@csstools/selector-specificity" "^3.0.0" @@ -561,7 +562,7 @@ "@csstools/postcss-color-function@^3.0.1": version "3.0.1" - resolved "https://registry.npmjs.org/@csstools/postcss-color-function/-/postcss-color-function-3.0.1.tgz#2f688783f9e8b2496bd0df6edbfb47b8300f01af" + resolved "https://registry.yarnpkg.com/@csstools/postcss-color-function/-/postcss-color-function-3.0.1.tgz#2f688783f9e8b2496bd0df6edbfb47b8300f01af" integrity sha512-+vrvCQeUifpMeyd42VQ3JPWGQ8cO19+TnGbtfq1SDSgZzRapCQO4aK9h/jhMOKPnxGzbA57oS0aHgP/12N9gSQ== dependencies: "@csstools/css-color-parser" "^1.2.2" @@ -571,7 +572,7 @@ "@csstools/postcss-color-mix-function@^2.0.1": version "2.0.1" - resolved "https://registry.npmjs.org/@csstools/postcss-color-mix-function/-/postcss-color-mix-function-2.0.1.tgz#51c5656bcbee9d02d00d10ddcdb0a55486573fd4" + resolved "https://registry.yarnpkg.com/@csstools/postcss-color-mix-function/-/postcss-color-mix-function-2.0.1.tgz#51c5656bcbee9d02d00d10ddcdb0a55486573fd4" integrity sha512-Z5cXkLiccKIVcUTe+fAfjUD7ZUv0j8rq3dSoBpM6I49dcw+50318eYrwUZa3nyb4xNx7ntNNUPmesAc87kPE2Q== dependencies: "@csstools/css-color-parser" "^1.2.2" @@ -581,7 +582,7 @@ "@csstools/postcss-exponential-functions@^1.0.0": version "1.0.0" - resolved "https://registry.npmjs.org/@csstools/postcss-exponential-functions/-/postcss-exponential-functions-1.0.0.tgz#2e558ad2856e0c737d9cb98a5d91cfe8d785c9f6" + resolved "https://registry.yarnpkg.com/@csstools/postcss-exponential-functions/-/postcss-exponential-functions-1.0.0.tgz#2e558ad2856e0c737d9cb98a5d91cfe8d785c9f6" integrity sha512-FPndJ/7oGlML7/4EhLi902wGOukO0Nn37PjwOQGc0BhhjQPy3np3By4d3M8s9Cfmp9EHEKgUHRN2DQ5HLT/hTw== dependencies: "@csstools/css-calc" "^1.1.3" @@ -590,14 +591,14 @@ "@csstools/postcss-font-format-keywords@^3.0.0": version "3.0.0" - resolved "https://registry.npmjs.org/@csstools/postcss-font-format-keywords/-/postcss-font-format-keywords-3.0.0.tgz#9ca3a3ca67122862addf8a1c0c61a6db02dea1cc" + resolved "https://registry.yarnpkg.com/@csstools/postcss-font-format-keywords/-/postcss-font-format-keywords-3.0.0.tgz#9ca3a3ca67122862addf8a1c0c61a6db02dea1cc" integrity sha512-ntkGj+1uDa/u6lpjPxnkPcjJn7ChO/Kcy08YxctOZI7vwtrdYvFhmE476dq8bj1yna306+jQ9gzXIG/SWfOaRg== dependencies: postcss-value-parser "^4.2.0" "@csstools/postcss-gradients-interpolation-method@^4.0.1": version "4.0.1" - resolved "https://registry.npmjs.org/@csstools/postcss-gradients-interpolation-method/-/postcss-gradients-interpolation-method-4.0.1.tgz#abbe5ec9992b850c4330da2f1b57e73d2f5f5086" + resolved "https://registry.yarnpkg.com/@csstools/postcss-gradients-interpolation-method/-/postcss-gradients-interpolation-method-4.0.1.tgz#abbe5ec9992b850c4330da2f1b57e73d2f5f5086" integrity sha512-IHeFIcksjI8xKX7PWLzAyigM3UvJdZ4btejeNa7y/wXxqD5dyPPZuY55y8HGTrS6ETVTRqfIznoCPtTzIX7ygQ== dependencies: "@csstools/css-color-parser" "^1.2.2" @@ -607,7 +608,7 @@ "@csstools/postcss-hwb-function@^3.0.1": version "3.0.1" - resolved "https://registry.npmjs.org/@csstools/postcss-hwb-function/-/postcss-hwb-function-3.0.1.tgz#72f47fae09e0dc48be4bd94cab15e6e98cc6de00" + resolved "https://registry.yarnpkg.com/@csstools/postcss-hwb-function/-/postcss-hwb-function-3.0.1.tgz#72f47fae09e0dc48be4bd94cab15e6e98cc6de00" integrity sha512-FYe2K8EOYlL1BUm2HTXVBo6bWAj0xl4khOk6EFhQHy/C5p3rlr8OcetzQuwMeNQ3v25nB06QTgqUHoOUwoEqhA== dependencies: "@csstools/css-color-parser" "^1.2.2" @@ -616,7 +617,7 @@ "@csstools/postcss-ic-unit@^3.0.0": version "3.0.0" - resolved "https://registry.npmjs.org/@csstools/postcss-ic-unit/-/postcss-ic-unit-3.0.0.tgz#bbc55170d880daa3cc096ee160e8f2492a48e881" + resolved "https://registry.yarnpkg.com/@csstools/postcss-ic-unit/-/postcss-ic-unit-3.0.0.tgz#bbc55170d880daa3cc096ee160e8f2492a48e881" integrity sha512-FH3+zfOfsgtX332IIkRDxiYLmgwyNk49tfltpC6dsZaO4RV2zWY6x9VMIC5cjvmjlDO7DIThpzqaqw2icT8RbQ== dependencies: "@csstools/postcss-progressive-custom-properties" "^3.0.0" @@ -624,7 +625,7 @@ "@csstools/postcss-is-pseudo-class@^4.0.0": version "4.0.0" - resolved "https://registry.npmjs.org/@csstools/postcss-is-pseudo-class/-/postcss-is-pseudo-class-4.0.0.tgz#954c489cf207a7cfeaf4d96d39fac50757dc48cf" + resolved "https://registry.yarnpkg.com/@csstools/postcss-is-pseudo-class/-/postcss-is-pseudo-class-4.0.0.tgz#954c489cf207a7cfeaf4d96d39fac50757dc48cf" integrity sha512-0I6siRcDymG3RrkNTSvHDMxTQ6mDyYE8awkcaHNgtYacd43msl+4ZWDfQ1yZQ/viczVWjqJkLmPiRHSgxn5nZA== dependencies: "@csstools/selector-specificity" "^3.0.0" @@ -632,59 +633,59 @@ "@csstools/postcss-logical-float-and-clear@^2.0.0": version "2.0.0" - resolved "https://registry.npmjs.org/@csstools/postcss-logical-float-and-clear/-/postcss-logical-float-and-clear-2.0.0.tgz#15e1b5d16dce01ad1e676167d0909e3958234eb5" + resolved "https://registry.yarnpkg.com/@csstools/postcss-logical-float-and-clear/-/postcss-logical-float-and-clear-2.0.0.tgz#15e1b5d16dce01ad1e676167d0909e3958234eb5" integrity sha512-Wki4vxsF6icRvRz8eF9bPpAvwaAt0RHwhVOyzfoFg52XiIMjb6jcbHkGxwpJXP4DVrnFEwpwmrz5aTRqOW82kg== "@csstools/postcss-logical-resize@^2.0.0": version "2.0.0" - resolved "https://registry.npmjs.org/@csstools/postcss-logical-resize/-/postcss-logical-resize-2.0.0.tgz#751bd5aab335c9973e346e3edacb2a0a16fa8296" + resolved "https://registry.yarnpkg.com/@csstools/postcss-logical-resize/-/postcss-logical-resize-2.0.0.tgz#751bd5aab335c9973e346e3edacb2a0a16fa8296" integrity sha512-lCQ1aX8c5+WI4t5EoYf3alTzJNNocMqTb+u1J9CINdDhFh1fjovqK+0aHalUHsNstZmzFPNzIkU4Mb3eM9U8SA== dependencies: postcss-value-parser "^4.2.0" "@csstools/postcss-logical-viewport-units@^2.0.1": version "2.0.1" - resolved "https://registry.npmjs.org/@csstools/postcss-logical-viewport-units/-/postcss-logical-viewport-units-2.0.1.tgz#2921034d11d60ea7340ebe795bb4fe60f32ebbae" + resolved "https://registry.yarnpkg.com/@csstools/postcss-logical-viewport-units/-/postcss-logical-viewport-units-2.0.1.tgz#2921034d11d60ea7340ebe795bb4fe60f32ebbae" integrity sha512-R5s19SscS7CHoxvdYNMu2Y3WDwG4JjdhsejqjunDB1GqfzhtHSvL7b5XxCkUWqm2KRl35hI6kJ4HEaCDd/3BXg== dependencies: "@csstools/css-tokenizer" "^2.2.0" -"@csstools/postcss-media-minmax@^1.0.6": - version "1.0.6" - resolved "https://registry.npmjs.org/@csstools/postcss-media-minmax/-/postcss-media-minmax-1.0.6.tgz#ed4cac86640c2dd4c3aa2ec491afc28527a10151" - integrity sha512-BmwKkqEzzQz6D+5ctoacsiGrq4kVgd1PMEPwkwdR0qFaL2C2nguGsWG87xEw+HIts/2yxhIPTm7Jp3DQq+wn3Q== +"@csstools/postcss-media-minmax@^1.0.7": + version "1.0.7" + resolved "https://registry.yarnpkg.com/@csstools/postcss-media-minmax/-/postcss-media-minmax-1.0.7.tgz#6701cf1141d28b5240de9bfae083c8a0af0daa00" + integrity sha512-5LGLdu8cJgRPmvkjUNqOPKIKeHbyQmoGKooB5Rh0mp5mLaNI9bl+IjFZ2keY0cztZYsriJsGf6Lu8R5XetuwoQ== dependencies: "@csstools/css-calc" "^1.1.3" "@csstools/css-parser-algorithms" "^2.3.1" "@csstools/css-tokenizer" "^2.2.0" - "@csstools/media-query-list-parser" "^2.1.3" + "@csstools/media-query-list-parser" "^2.1.4" -"@csstools/postcss-media-queries-aspect-ratio-number-values@^2.0.1": - version "2.0.1" - resolved "https://registry.npmjs.org/@csstools/postcss-media-queries-aspect-ratio-number-values/-/postcss-media-queries-aspect-ratio-number-values-2.0.1.tgz#00d30e83e0b1e82a09ab890dcef80cc41be1ab8c" - integrity sha512-UvMYxXT3R011whbxzRwLx7d7eNGyVsnZo7waAmf10ZGnT34XidY+rsdFnk6OdFwuG6FYqw3/tptQEAZOmUgvLw== +"@csstools/postcss-media-queries-aspect-ratio-number-values@^2.0.2": + version "2.0.2" + resolved "https://registry.yarnpkg.com/@csstools/postcss-media-queries-aspect-ratio-number-values/-/postcss-media-queries-aspect-ratio-number-values-2.0.2.tgz#8cb8865ad6311756b5de5179fb65b9c008406b69" + integrity sha512-kQJR6NvTRidsaRjCdHGjra2+fLoFiDQOm5B2aZrhmXqng/hweXjruboKzB326rxQO2L0m0T+gCKbZgyuncyhLg== dependencies: "@csstools/css-parser-algorithms" "^2.3.1" "@csstools/css-tokenizer" "^2.2.0" - "@csstools/media-query-list-parser" "^2.1.3" + "@csstools/media-query-list-parser" "^2.1.4" "@csstools/postcss-nested-calc@^3.0.0": version "3.0.0" - resolved "https://registry.npmjs.org/@csstools/postcss-nested-calc/-/postcss-nested-calc-3.0.0.tgz#b9069f5e1c2ea08de3840a5922e39af4e0ecf4b1" + resolved "https://registry.yarnpkg.com/@csstools/postcss-nested-calc/-/postcss-nested-calc-3.0.0.tgz#b9069f5e1c2ea08de3840a5922e39af4e0ecf4b1" integrity sha512-HsB66aDWAouOwD/GcfDTS0a7wCuVWaTpXcjl5VKP0XvFxDiU+r0T8FG7xgb6ovZNZ+qzvGIwRM+CLHhDgXrYgQ== dependencies: postcss-value-parser "^4.2.0" "@csstools/postcss-normalize-display-values@^3.0.0": version "3.0.0" - resolved "https://registry.npmjs.org/@csstools/postcss-normalize-display-values/-/postcss-normalize-display-values-3.0.0.tgz#de995eeafe217ac1854a7135b1db44c57487e9ea" + resolved "https://registry.yarnpkg.com/@csstools/postcss-normalize-display-values/-/postcss-normalize-display-values-3.0.0.tgz#de995eeafe217ac1854a7135b1db44c57487e9ea" integrity sha512-6Nw55PRXEKEVqn3bzA8gRRPYxr5tf5PssvcE5DRA/nAxKgKtgNZMCHCSd1uxTCWeyLnkf6h5tYRSB0P1Vh/K/A== dependencies: postcss-value-parser "^4.2.0" "@csstools/postcss-oklab-function@^3.0.1": version "3.0.1" - resolved "https://registry.npmjs.org/@csstools/postcss-oklab-function/-/postcss-oklab-function-3.0.1.tgz#2e33ed1761ce78d59a9156f1201a52fda7c75899" + resolved "https://registry.yarnpkg.com/@csstools/postcss-oklab-function/-/postcss-oklab-function-3.0.1.tgz#2e33ed1761ce78d59a9156f1201a52fda7c75899" integrity sha512-3TIz+dCPlQPzz4yAEYXchUpfuU2gRYK4u1J+1xatNX85Isg4V+IbLyppblWLV4Vb6npFF8qsHN17rNuxOIy/6w== dependencies: "@csstools/css-color-parser" "^1.2.2" @@ -694,14 +695,14 @@ "@csstools/postcss-progressive-custom-properties@^3.0.0": version "3.0.0" - resolved "https://registry.npmjs.org/@csstools/postcss-progressive-custom-properties/-/postcss-progressive-custom-properties-3.0.0.tgz#bb86ae4bb7f2206b0cf6e9b8f0bfc191f67271d8" + resolved "https://registry.yarnpkg.com/@csstools/postcss-progressive-custom-properties/-/postcss-progressive-custom-properties-3.0.0.tgz#bb86ae4bb7f2206b0cf6e9b8f0bfc191f67271d8" integrity sha512-2/D3CCL9DN2xhuUTP8OKvKnaqJ1j4yZUxuGLsCUOQ16wnDAuMLKLkflOmZF5tsPh/02VPeXRmqIN+U595WAulw== dependencies: postcss-value-parser "^4.2.0" "@csstools/postcss-relative-color-syntax@^2.0.1": version "2.0.1" - resolved "https://registry.npmjs.org/@csstools/postcss-relative-color-syntax/-/postcss-relative-color-syntax-2.0.1.tgz#b7e928fdef9366e1060e2bf4d95cab605855446b" + resolved "https://registry.yarnpkg.com/@csstools/postcss-relative-color-syntax/-/postcss-relative-color-syntax-2.0.1.tgz#b7e928fdef9366e1060e2bf4d95cab605855446b" integrity sha512-9B8br/7q0bjD1fV3yE22izjc7Oy5hDbDgwdFEz207cdJHYC9yQneJzP3H+/w3RgC7uyfEVhyyhkGRx5YAfJtmg== dependencies: "@csstools/css-color-parser" "^1.2.2" @@ -711,14 +712,14 @@ "@csstools/postcss-scope-pseudo-class@^3.0.0": version "3.0.0" - resolved "https://registry.npmjs.org/@csstools/postcss-scope-pseudo-class/-/postcss-scope-pseudo-class-3.0.0.tgz#23f32181b7de9a33e7c7c71f7620b78284955b82" + resolved "https://registry.yarnpkg.com/@csstools/postcss-scope-pseudo-class/-/postcss-scope-pseudo-class-3.0.0.tgz#23f32181b7de9a33e7c7c71f7620b78284955b82" integrity sha512-GFNVsD97OuEcfHmcT0/DAZWAvTM/FFBDQndIOLawNc1Wq8YqpZwBdHa063Lq+Irk7azygTT+Iinyg3Lt76p7rg== dependencies: postcss-selector-parser "^6.0.13" "@csstools/postcss-stepped-value-functions@^3.0.1": version "3.0.1" - resolved "https://registry.npmjs.org/@csstools/postcss-stepped-value-functions/-/postcss-stepped-value-functions-3.0.1.tgz#c337a8ae09bec13cdf6c95f63a58b407f6965557" + resolved "https://registry.yarnpkg.com/@csstools/postcss-stepped-value-functions/-/postcss-stepped-value-functions-3.0.1.tgz#c337a8ae09bec13cdf6c95f63a58b407f6965557" integrity sha512-y1sykToXorFE+5cjtp//xAMWEAEple0kcZn2QhzEFIZDDNvGOCp5JvvmmPGsC3eDlj6yQp70l9uXZNLnimEYfA== dependencies: "@csstools/css-calc" "^1.1.3" @@ -727,7 +728,7 @@ "@csstools/postcss-text-decoration-shorthand@^3.0.0": version "3.0.0" - resolved "https://registry.npmjs.org/@csstools/postcss-text-decoration-shorthand/-/postcss-text-decoration-shorthand-3.0.0.tgz#468800a47fcb4760df8c60bbf1ba7999f44b4dd4" + resolved "https://registry.yarnpkg.com/@csstools/postcss-text-decoration-shorthand/-/postcss-text-decoration-shorthand-3.0.0.tgz#468800a47fcb4760df8c60bbf1ba7999f44b4dd4" integrity sha512-BAa1MIMJmEZlJ+UkPrkyoz3DC7kLlIl2oDya5yXgvUrelpwxddgz8iMp69qBStdXwuMyfPx46oZcSNx8Z0T2eA== dependencies: "@csstools/color-helpers" "^3.0.0" @@ -735,7 +736,7 @@ "@csstools/postcss-trigonometric-functions@^3.0.1": version "3.0.1" - resolved "https://registry.npmjs.org/@csstools/postcss-trigonometric-functions/-/postcss-trigonometric-functions-3.0.1.tgz#06148aa8624b69a6573adb40ed27d3d019875caa" + resolved "https://registry.yarnpkg.com/@csstools/postcss-trigonometric-functions/-/postcss-trigonometric-functions-3.0.1.tgz#06148aa8624b69a6573adb40ed27d3d019875caa" integrity sha512-hW+JPv0MPQfWC1KARgvJI6bisEUFAZWSvUNq/khGCupYV/h6Z9R2ZFz0Xc633LXBst0ezbXpy7NpnPurSx5Klw== dependencies: "@csstools/css-calc" "^1.1.3" @@ -744,41 +745,41 @@ "@csstools/postcss-unset-value@^3.0.0": version "3.0.0" - resolved "https://registry.npmjs.org/@csstools/postcss-unset-value/-/postcss-unset-value-3.0.0.tgz#6d2f08140b41d3e70d805ccd2baaf64a6f59fdac" + resolved "https://registry.yarnpkg.com/@csstools/postcss-unset-value/-/postcss-unset-value-3.0.0.tgz#6d2f08140b41d3e70d805ccd2baaf64a6f59fdac" integrity sha512-P0JD1WHh3avVyKKRKjd0dZIjCEeaBer8t1BbwGMUDtSZaLhXlLNBqZ8KkqHzYWXOJgHleXAny2/sx8LYl6qhEA== "@csstools/selector-specificity@^3.0.0": version "3.0.0" - resolved "https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-3.0.0.tgz#798622546b63847e82389e473fd67f2707d82247" + resolved "https://registry.yarnpkg.com/@csstools/selector-specificity/-/selector-specificity-3.0.0.tgz#798622546b63847e82389e473fd67f2707d82247" integrity sha512-hBI9tfBtuPIi885ZsZ32IMEU/5nlZH/KOVYJCOh7gyMxaVLGmLedYqFN6Ui1LXkI8JlC8IsuC0rF0btcRZKd5g== "@date-io/core@^2.17.0": version "2.17.0" - resolved "https://registry.npmjs.org/@date-io/core/-/core-2.17.0.tgz#360a4d0641f069776ed22e457876e8a8a58c205e" + resolved "https://registry.yarnpkg.com/@date-io/core/-/core-2.17.0.tgz#360a4d0641f069776ed22e457876e8a8a58c205e" integrity sha512-+EQE8xZhRM/hsY0CDTVyayMDDY5ihc4MqXCrPxooKw19yAzUIC6uUqsZeaOFNL9YKTNxYKrJP5DFgE8o5xRCOw== "@date-io/date-fns@^2.16.0": version "2.17.0" - resolved "https://registry.npmjs.org/@date-io/date-fns/-/date-fns-2.17.0.tgz#1d9d0a02e0137524331819c9576a4e8e19a6142b" + resolved "https://registry.yarnpkg.com/@date-io/date-fns/-/date-fns-2.17.0.tgz#1d9d0a02e0137524331819c9576a4e8e19a6142b" integrity sha512-L0hWZ/mTpy3Gx/xXJ5tq5CzHo0L7ry6KEO9/w/JWiFWFLZgiNVo3ex92gOl3zmzjHqY/3Ev+5sehAr8UnGLEng== dependencies: "@date-io/core" "^2.17.0" "@discoveryjs/json-ext@0.5.7", "@discoveryjs/json-ext@^0.5.0": version "0.5.7" - resolved "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz#1d572bfbbe14b7704e0ba0f39b74815b84870d70" + resolved "https://registry.yarnpkg.com/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz#1d572bfbbe14b7704e0ba0f39b74815b84870d70" integrity sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw== "@dnd-kit/accessibility@^3.0.0": version "3.0.1" - resolved "https://registry.npmjs.org/@dnd-kit/accessibility/-/accessibility-3.0.1.tgz#3ccbefdfca595b0a23a5dc57d3de96bc6935641c" + resolved "https://registry.yarnpkg.com/@dnd-kit/accessibility/-/accessibility-3.0.1.tgz#3ccbefdfca595b0a23a5dc57d3de96bc6935641c" integrity sha512-HXRrwS9YUYQO9lFRc/49uO/VICbM+O+ZRpFDe9Pd1rwVv2PCNkRiTZRdxrDgng/UkvdC3Re9r2vwPpXXrWeFzg== dependencies: tslib "^2.0.0" "@dnd-kit/core@^6.0.7": version "6.0.8" - resolved "https://registry.npmjs.org/@dnd-kit/core/-/core-6.0.8.tgz#040ae13fea9787ee078e5f0361f3b49b07f3f005" + resolved "https://registry.yarnpkg.com/@dnd-kit/core/-/core-6.0.8.tgz#040ae13fea9787ee078e5f0361f3b49b07f3f005" integrity sha512-lYaoP8yHTQSLlZe6Rr9qogouGUz9oRUj4AHhDQGQzq/hqaJRpFo65X+JKsdHf8oUFBzx5A+SJPUvxAwTF2OabA== dependencies: "@dnd-kit/accessibility" "^3.0.0" @@ -787,7 +788,7 @@ "@dnd-kit/sortable@^7.0.2": version "7.0.2" - resolved "https://registry.npmjs.org/@dnd-kit/sortable/-/sortable-7.0.2.tgz#791d550872457f3f3c843e00d159b640f982011c" + resolved "https://registry.yarnpkg.com/@dnd-kit/sortable/-/sortable-7.0.2.tgz#791d550872457f3f3c843e00d159b640f982011c" integrity sha512-wDkBHHf9iCi1veM834Gbk1429bd4lHX4RpAwT0y2cHLf246GAvU2sVw/oxWNpPKQNQRQaeGXhAVgrOl1IT+iyA== dependencies: "@dnd-kit/utilities" "^3.2.0" @@ -795,14 +796,14 @@ "@dnd-kit/utilities@^3.2.0", "@dnd-kit/utilities@^3.2.1": version "3.2.1" - resolved "https://registry.npmjs.org/@dnd-kit/utilities/-/utilities-3.2.1.tgz#53f9e2016fd2506ec49e404c289392cfff30332a" + resolved "https://registry.yarnpkg.com/@dnd-kit/utilities/-/utilities-3.2.1.tgz#53f9e2016fd2506ec49e404c289392cfff30332a" integrity sha512-OOXqISfvBw/1REtkSK2N3Fi2EQiLMlWUlqnOK/UpOISqBZPWpE6TqL+jcPtMOkE8TqYGiURvRdPSI9hltNUjEA== dependencies: tslib "^2.0.0" "@emotion/babel-plugin@^11.11.0": version "11.11.0" - resolved "https://registry.npmjs.org/@emotion/babel-plugin/-/babel-plugin-11.11.0.tgz#c2d872b6a7767a9d176d007f5b31f7d504bb5d6c" + resolved "https://registry.yarnpkg.com/@emotion/babel-plugin/-/babel-plugin-11.11.0.tgz#c2d872b6a7767a9d176d007f5b31f7d504bb5d6c" integrity sha512-m4HEDZleaaCH+XgDDsPF15Ht6wTLsgDTeR3WYj9Q/k76JtWhrJjcP4+/XlG8LGT/Rol9qUfOIztXeA84ATpqPQ== dependencies: "@babel/helper-module-imports" "^7.16.7" @@ -819,7 +820,7 @@ "@emotion/cache@^11.11.0", "@emotion/cache@^11.4.0": version "11.11.0" - resolved "https://registry.npmjs.org/@emotion/cache/-/cache-11.11.0.tgz#809b33ee6b1cb1a625fef7a45bc568ccd9b8f3ff" + resolved "https://registry.yarnpkg.com/@emotion/cache/-/cache-11.11.0.tgz#809b33ee6b1cb1a625fef7a45bc568ccd9b8f3ff" integrity sha512-P34z9ssTCBi3e9EI1ZsWpNHcfY1r09ZO0rZbRO2ob3ZQMnFI35jB536qoXbkdesr5EUhYi22anuEJuyxifaqAQ== dependencies: "@emotion/memoize" "^0.8.1" @@ -830,7 +831,7 @@ "@emotion/css@^11.10.5": version "11.11.2" - resolved "https://registry.npmjs.org/@emotion/css/-/css-11.11.2.tgz#e5fa081d0c6e335352e1bc2b05953b61832dca5a" + resolved "https://registry.yarnpkg.com/@emotion/css/-/css-11.11.2.tgz#e5fa081d0c6e335352e1bc2b05953b61832dca5a" integrity sha512-VJxe1ucoMYMS7DkiMdC2T7PWNbrEI0a39YRiyDvK2qq4lXwjRbVP/z4lpG+odCsRzadlR+1ywwrTzhdm5HNdew== dependencies: "@emotion/babel-plugin" "^11.11.0" @@ -841,17 +842,17 @@ "@emotion/hash@^0.9.1": version "0.9.1" - resolved "https://registry.npmjs.org/@emotion/hash/-/hash-0.9.1.tgz#4ffb0055f7ef676ebc3a5a91fb621393294e2f43" + resolved "https://registry.yarnpkg.com/@emotion/hash/-/hash-0.9.1.tgz#4ffb0055f7ef676ebc3a5a91fb621393294e2f43" integrity sha512-gJB6HLm5rYwSLI6PQa+X1t5CFGrv1J1TWG+sOyMCeKz2ojaj6Fnl/rZEspogG+cvqbt4AE/2eIyD2QfLKTBNlQ== "@emotion/memoize@^0.8.1": version "0.8.1" - resolved "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.8.1.tgz#c1ddb040429c6d21d38cc945fe75c818cfb68e17" + resolved "https://registry.yarnpkg.com/@emotion/memoize/-/memoize-0.8.1.tgz#c1ddb040429c6d21d38cc945fe75c818cfb68e17" integrity sha512-W2P2c/VRW1/1tLox0mVUalvnWXxavmv/Oum2aPsRcoDJuob75FC3Y8FbpfLwUegRcxINtGUMPq0tFCvYNTBXNA== "@emotion/react@^11.8.1": version "11.11.1" - resolved "https://registry.npmjs.org/@emotion/react/-/react-11.11.1.tgz#b2c36afac95b184f73b08da8c214fdf861fa4157" + resolved "https://registry.yarnpkg.com/@emotion/react/-/react-11.11.1.tgz#b2c36afac95b184f73b08da8c214fdf861fa4157" integrity sha512-5mlW1DquU5HaxjLkfkGN1GA/fvVGdyHURRiX/0FHl2cfIfRxSOfmxEH5YS43edp0OldZrZ+dkBKbngxcNCdZvA== dependencies: "@babel/runtime" "^7.18.3" @@ -865,7 +866,7 @@ "@emotion/serialize@^1.1.2": version "1.1.2" - resolved "https://registry.npmjs.org/@emotion/serialize/-/serialize-1.1.2.tgz#017a6e4c9b8a803bd576ff3d52a0ea6fa5a62b51" + resolved "https://registry.yarnpkg.com/@emotion/serialize/-/serialize-1.1.2.tgz#017a6e4c9b8a803bd576ff3d52a0ea6fa5a62b51" integrity sha512-zR6a/fkFP4EAcCMQtLOhIgpprZOwNmCldtpaISpvz348+DP4Mz8ZoKaGGCQpbzepNIUWbq4w6hNZkwDyKoS+HA== dependencies: "@emotion/hash" "^0.9.1" @@ -876,32 +877,32 @@ "@emotion/sheet@^1.2.2": version "1.2.2" - resolved "https://registry.npmjs.org/@emotion/sheet/-/sheet-1.2.2.tgz#d58e788ee27267a14342303e1abb3d508b6d0fec" + resolved "https://registry.yarnpkg.com/@emotion/sheet/-/sheet-1.2.2.tgz#d58e788ee27267a14342303e1abb3d508b6d0fec" integrity sha512-0QBtGvaqtWi+nx6doRwDdBIzhNdZrXUppvTM4dtZZWEGTXL/XE/yJxLMGlDT1Gt+UHH5IX1n+jkXyytE/av7OA== "@emotion/unitless@^0.8.1": version "0.8.1" - resolved "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.8.1.tgz#182b5a4704ef8ad91bde93f7a860a88fd92c79a3" + resolved "https://registry.yarnpkg.com/@emotion/unitless/-/unitless-0.8.1.tgz#182b5a4704ef8ad91bde93f7a860a88fd92c79a3" integrity sha512-KOEGMu6dmJZtpadb476IsZBclKvILjopjUii3V+7MnXIQCYh8W3NgNcgwo21n9LXZX6EDIKvqfjYxXebDwxKmQ== "@emotion/use-insertion-effect-with-fallbacks@^1.0.1": version "1.0.1" - resolved "https://registry.npmjs.org/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.0.1.tgz#08de79f54eb3406f9daaf77c76e35313da963963" + resolved "https://registry.yarnpkg.com/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.0.1.tgz#08de79f54eb3406f9daaf77c76e35313da963963" integrity sha512-jT/qyKZ9rzLErtrjGgdkMBn2OP8wl0G3sQlBb3YPryvKHsjvINUhVaPFfP+fpBcOkmrVOVEEHQFJ7nbj2TH2gw== "@emotion/utils@^1.2.1": version "1.2.1" - resolved "https://registry.npmjs.org/@emotion/utils/-/utils-1.2.1.tgz#bbab58465738d31ae4cb3dbb6fc00a5991f755e4" + resolved "https://registry.yarnpkg.com/@emotion/utils/-/utils-1.2.1.tgz#bbab58465738d31ae4cb3dbb6fc00a5991f755e4" integrity sha512-Y2tGf3I+XVnajdItskUCn6LX+VUDmP6lTL4fcqsXAv43dnlbZiuW4MWQW38rW/BVWSE7Q/7+XQocmpnRYILUmg== "@emotion/weak-memoize@^0.3.1": version "0.3.1" - resolved "https://registry.npmjs.org/@emotion/weak-memoize/-/weak-memoize-0.3.1.tgz#d0fce5d07b0620caa282b5131c297bb60f9d87e6" + resolved "https://registry.yarnpkg.com/@emotion/weak-memoize/-/weak-memoize-0.3.1.tgz#d0fce5d07b0620caa282b5131c297bb60f9d87e6" integrity sha512-EsBwpc7hBUJWAsNPBmJy4hxWx12v6bshQsldrVmjxJoc3isbxhOrF2IcCpaXxfvq03NwkI7sbsOLXbYuqF/8Ww== "@faceless-ui/modal@^2.0.1": version "2.0.1" - resolved "https://registry.npmjs.org/@faceless-ui/modal/-/modal-2.0.1.tgz#8a47299442eff450c09432cfaef35c5471becad6" + resolved "https://registry.yarnpkg.com/@faceless-ui/modal/-/modal-2.0.1.tgz#8a47299442eff450c09432cfaef35c5471becad6" integrity sha512-z1PaaLxwuX+1In4vhUxODZndGKdCY+WIqzvtnas3CaYGGCVJBSJ4jfv9UEEGZzcahmSy+71bEL89cUT6d36j1Q== dependencies: body-scroll-lock "^3.1.5" @@ -911,24 +912,24 @@ "@faceless-ui/scroll-info@^1.3.0": version "1.3.0" - resolved "https://registry.npmjs.org/@faceless-ui/scroll-info/-/scroll-info-1.3.0.tgz#4d9f76afa4c004018697424f77f8bc362ccaae08" + resolved "https://registry.yarnpkg.com/@faceless-ui/scroll-info/-/scroll-info-1.3.0.tgz#4d9f76afa4c004018697424f77f8bc362ccaae08" integrity sha512-X+doJMzQqyVGpwV/YgXUAalNWepP2W8ThgZspKZLFG43zTYLVTU17BYCjjY+ggKuA3b0W3JyXZ2M8f247AdmHw== "@faceless-ui/window-info@^2.1.1": version "2.1.1" - resolved "https://registry.npmjs.org/@faceless-ui/window-info/-/window-info-2.1.1.tgz#ed1474a60ab794295bca4c29e295b1e11a584d22" + resolved "https://registry.yarnpkg.com/@faceless-ui/window-info/-/window-info-2.1.1.tgz#ed1474a60ab794295bca4c29e295b1e11a584d22" integrity sha512-gMAgda7beR4CNpBIXjgRVn97ek0LG3PAj9lxmoYdg574IEzLFZAh3eAYtTaS2XLKgb4+IHhsuBzlGmHbeOo2Aw== "@floating-ui/core@^1.4.1": version "1.4.1" - resolved "https://registry.npmjs.org/@floating-ui/core/-/core-1.4.1.tgz#0d633f4b76052668afb932492ac452f7ebe97f17" + resolved "https://registry.yarnpkg.com/@floating-ui/core/-/core-1.4.1.tgz#0d633f4b76052668afb932492ac452f7ebe97f17" integrity sha512-jk3WqquEJRlcyu7997NtR5PibI+y5bi+LS3hPmguVClypenMsCY3CBa3LAQnozRCtCrYWSEtAdiskpamuJRFOQ== dependencies: "@floating-ui/utils" "^0.1.1" "@floating-ui/dom@^1.0.1": version "1.5.1" - resolved "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.5.1.tgz#88b70defd002fe851f17b4a25efb2d3c04d7a8d7" + resolved "https://registry.yarnpkg.com/@floating-ui/dom/-/dom-1.5.1.tgz#88b70defd002fe851f17b4a25efb2d3c04d7a8d7" integrity sha512-KwvVcPSXg6mQygvA1TjbN/gh///36kKtllIF8SUm0qpFj8+rvYrpvlYdL1JoA71SHpDqgSSdGOSoQ0Mp3uY5aw== dependencies: "@floating-ui/core" "^1.4.1" @@ -936,34 +937,34 @@ "@floating-ui/utils@^0.1.1": version "0.1.1" - resolved "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.1.1.tgz#1a5b1959a528e374e8037c4396c3e825d6cf4a83" + resolved "https://registry.yarnpkg.com/@floating-ui/utils/-/utils-0.1.1.tgz#1a5b1959a528e374e8037c4396c3e825d6cf4a83" integrity sha512-m0G6wlnhm/AX0H12IOWtK8gASEMffnX08RtKkCgTdHb9JpHKGloI7icFfLg9ZmQeavcvR0PKmzxClyuFPSjKWw== "@hapi/hoek@^9.0.0": version "9.3.0" - resolved "https://registry.npmjs.org/@hapi/hoek/-/hoek-9.3.0.tgz#8368869dcb735be2e7f5cb7647de78e167a251fb" + resolved "https://registry.yarnpkg.com/@hapi/hoek/-/hoek-9.3.0.tgz#8368869dcb735be2e7f5cb7647de78e167a251fb" integrity sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ== "@hapi/topo@^5.0.0": version "5.1.0" - resolved "https://registry.npmjs.org/@hapi/topo/-/topo-5.1.0.tgz#dc448e332c6c6e37a4dc02fd84ba8d44b9afb012" + resolved "https://registry.yarnpkg.com/@hapi/topo/-/topo-5.1.0.tgz#dc448e332c6c6e37a4dc02fd84ba8d44b9afb012" integrity sha512-foQZKJig7Ob0BMAYBfcJk8d77QtOe7Wo4ox7ff1lQYoNNAb6jwcY1ncdoy2e9wQZzvNy7ODZCYJkK8kzmcAnAg== dependencies: "@hapi/hoek" "^9.0.0" -"@jest/schemas@^29.6.0": - version "29.6.0" - resolved "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.0.tgz#0f4cb2c8e3dca80c135507ba5635a4fd755b0040" - integrity sha512-rxLjXyJBTL4LQeJW3aKo0M/+GkCOXsO+8i9Iu7eDb6KwtP65ayoDsitrdPBtujxQ88k4wI2FNYfa6TOGwSn6cQ== +"@jest/schemas@^29.6.3": + version "29.6.3" + resolved "https://registry.yarnpkg.com/@jest/schemas/-/schemas-29.6.3.tgz#430b5ce8a4e0044a7e3819663305a7b3091c8e03" + integrity sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA== dependencies: "@sinclair/typebox" "^0.27.8" -"@jest/types@^29.6.1": - version "29.6.1" - resolved "https://registry.npmjs.org/@jest/types/-/types-29.6.1.tgz#ae79080278acff0a6af5eb49d063385aaa897bf2" - integrity sha512-tPKQNMPuXgvdOn2/Lg9HNfUvjYVGolt04Hp03f5hAk878uwOLikN+JzeLY0HcVgKgFl9Hs3EIqpu3WX27XNhnw== +"@jest/types@^29.6.3": + version "29.6.3" + resolved "https://registry.yarnpkg.com/@jest/types/-/types-29.6.3.tgz#1131f8cf634e7e84c5e77bab12f052af585fba59" + integrity sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw== dependencies: - "@jest/schemas" "^29.6.0" + "@jest/schemas" "^29.6.3" "@types/istanbul-lib-coverage" "^2.0.0" "@types/istanbul-reports" "^3.0.0" "@types/node" "*" @@ -972,103 +973,98 @@ "@jridgewell/gen-mapping@^0.3.0": version "0.3.3" - resolved "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz#7e02e6eb5df901aaedb08514203b096614024098" + resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz#7e02e6eb5df901aaedb08514203b096614024098" integrity sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ== dependencies: "@jridgewell/set-array" "^1.0.1" "@jridgewell/sourcemap-codec" "^1.4.10" "@jridgewell/trace-mapping" "^0.3.9" -"@jridgewell/resolve-uri@3.1.0": - version "3.1.0" - resolved "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz#2203b118c157721addfe69d47b70465463066d78" - integrity sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w== +"@jridgewell/resolve-uri@^3.1.0": + version "3.1.1" + resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz#c08679063f279615a3326583ba3a90d1d82cc721" + integrity sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA== "@jridgewell/set-array@^1.0.1": version "1.1.2" - resolved "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz#7c6cf998d6d20b914c0a55a91ae928ff25965e72" + resolved "https://registry.yarnpkg.com/@jridgewell/set-array/-/set-array-1.1.2.tgz#7c6cf998d6d20b914c0a55a91ae928ff25965e72" integrity sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw== "@jridgewell/source-map@^0.3.3": version "0.3.5" - resolved "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.5.tgz#a3bb4d5c6825aab0d281268f47f6ad5853431e91" + resolved "https://registry.yarnpkg.com/@jridgewell/source-map/-/source-map-0.3.5.tgz#a3bb4d5c6825aab0d281268f47f6ad5853431e91" integrity sha512-UTYAUj/wviwdsMfzoSJspJxbkH5o1snzwX0//0ENX1u/55kkZZkcTZP6u9bwKGkv+dkk9at4m1Cpt0uY80kcpQ== dependencies: "@jridgewell/gen-mapping" "^0.3.0" "@jridgewell/trace-mapping" "^0.3.9" -"@jridgewell/sourcemap-codec@1.4.14": - version "1.4.14" - resolved "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz#add4c98d341472a289190b424efbdb096991bb24" - integrity sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw== - -"@jridgewell/sourcemap-codec@^1.4.10": +"@jridgewell/sourcemap-codec@^1.4.10", "@jridgewell/sourcemap-codec@^1.4.14": version "1.4.15" - resolved "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz#d7c6e6755c78567a951e04ab52ef0fd26de59f32" + resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz#d7c6e6755c78567a951e04ab52ef0fd26de59f32" integrity sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg== "@jridgewell/trace-mapping@^0.3.17", "@jridgewell/trace-mapping@^0.3.18", "@jridgewell/trace-mapping@^0.3.9": - version "0.3.18" - resolved "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.18.tgz#25783b2086daf6ff1dcb53c9249ae480e4dd4cd6" - integrity sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA== + version "0.3.19" + resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.19.tgz#f8a3249862f91be48d3127c3cfe992f79b4b8811" + integrity sha512-kf37QtfW+Hwx/buWGMPcR60iF9ziHa6r/CZJIHbmcm4+0qrXiVdxegAH0F6yddEVQ7zdkjcGCgCzUu+BcbhQxw== dependencies: - "@jridgewell/resolve-uri" "3.1.0" - "@jridgewell/sourcemap-codec" "1.4.14" + "@jridgewell/resolve-uri" "^3.1.0" + "@jridgewell/sourcemap-codec" "^1.4.14" "@jsdevtools/ono@^7.1.3": version "7.1.3" - resolved "https://registry.npmjs.org/@jsdevtools/ono/-/ono-7.1.3.tgz#9df03bbd7c696a5c58885c34aa06da41c8543796" + resolved "https://registry.yarnpkg.com/@jsdevtools/ono/-/ono-7.1.3.tgz#9df03bbd7c696a5c58885c34aa06da41c8543796" integrity sha512-4JQNk+3mVzK3xh2rqd6RB4J46qUR19azEHBneZyTZM+c456qOrbbM/5xcR8huNCCcbVt7+UmizG6GuUvPvKUYg== "@juggle/resize-observer@^3.4.0": version "3.4.0" - resolved "https://registry.npmjs.org/@juggle/resize-observer/-/resize-observer-3.4.0.tgz#08d6c5e20cf7e4cc02fd181c4b0c225cd31dbb60" + resolved "https://registry.yarnpkg.com/@juggle/resize-observer/-/resize-observer-3.4.0.tgz#08d6c5e20cf7e4cc02fd181c4b0c225cd31dbb60" integrity sha512-dfLbk+PwWvFzSxwk3n5ySL0hfBog779o8h68wK/7/APo/7cgyWp5jcXockbxdk5kFRkbeXWm4Fbi9FrdN381sA== "@monaco-editor/loader@^1.3.3": version "1.3.3" - resolved "https://registry.npmjs.org/@monaco-editor/loader/-/loader-1.3.3.tgz#7f1742bd3cc21c0362a46a4056317f6e5215cfca" + resolved "https://registry.yarnpkg.com/@monaco-editor/loader/-/loader-1.3.3.tgz#7f1742bd3cc21c0362a46a4056317f6e5215cfca" integrity sha512-6KKF4CTzcJiS8BJwtxtfyYt9shBiEv32ateQ9T4UVogwn4HM/uPo9iJd2Dmbkpz8CM6Y0PDUpjnZzCwC+eYo2Q== dependencies: state-local "^1.0.6" "@monaco-editor/react@^4.5.1": version "4.5.1" - resolved "https://registry.npmjs.org/@monaco-editor/react/-/react-4.5.1.tgz#fbc76c692aee9a33b9ab24ae0c5f219b8f002fdb" + resolved "https://registry.yarnpkg.com/@monaco-editor/react/-/react-4.5.1.tgz#fbc76c692aee9a33b9ab24ae0c5f219b8f002fdb" integrity sha512-NNDFdP+2HojtNhCkRfE6/D6ro6pBNihaOzMbGK84lNWzRu+CfBjwzGt4jmnqimLuqp5yE5viHS2vi+QOAnD5FQ== dependencies: "@monaco-editor/loader" "^1.3.3" "@polka/url@^1.0.0-next.20": version "1.0.0-next.21" - resolved "https://registry.npmjs.org/@polka/url/-/url-1.0.0-next.21.tgz#5de5a2385a35309427f6011992b544514d559aa1" + resolved "https://registry.yarnpkg.com/@polka/url/-/url-1.0.0-next.21.tgz#5de5a2385a35309427f6011992b544514d559aa1" integrity sha512-a5Sab1C4/icpTZVzZc5Ghpz88yQtGOyNqYXcZgOssB2uuAr+wF/MvN6bgtW32q7HHrvBki+BsZ0OuNv6EV3K9g== "@popperjs/core@^2.11.8": version "2.11.8" - resolved "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz#6b79032e760a0899cd4204710beede972a3a185f" + resolved "https://registry.yarnpkg.com/@popperjs/core/-/core-2.11.8.tgz#6b79032e760a0899cd4204710beede972a3a185f" integrity sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A== "@sideway/address@^4.1.3": version "4.1.4" - resolved "https://registry.npmjs.org/@sideway/address/-/address-4.1.4.tgz#03dccebc6ea47fdc226f7d3d1ad512955d4783f0" + resolved "https://registry.yarnpkg.com/@sideway/address/-/address-4.1.4.tgz#03dccebc6ea47fdc226f7d3d1ad512955d4783f0" integrity sha512-7vwq+rOHVWjyXxVlR76Agnvhy8I9rpzjosTESvmhNeXOXdZZB15Fl+TI9x1SiHZH5Jv2wTGduSxFDIaq0m3DUw== dependencies: "@hapi/hoek" "^9.0.0" "@sideway/formula@^3.0.1": version "3.0.1" - resolved "https://registry.npmjs.org/@sideway/formula/-/formula-3.0.1.tgz#80fcbcbaf7ce031e0ef2dd29b1bfc7c3f583611f" + resolved "https://registry.yarnpkg.com/@sideway/formula/-/formula-3.0.1.tgz#80fcbcbaf7ce031e0ef2dd29b1bfc7c3f583611f" integrity sha512-/poHZJJVjx3L+zVD6g9KgHfYnb443oi7wLu/XKojDviHy6HOEOA6z1Trk5aR1dGcmPenJEgb2sK2I80LeS3MIg== "@sideway/pinpoint@^2.0.0": version "2.0.0" - resolved "https://registry.npmjs.org/@sideway/pinpoint/-/pinpoint-2.0.0.tgz#cff8ffadc372ad29fd3f78277aeb29e632cc70df" + resolved "https://registry.yarnpkg.com/@sideway/pinpoint/-/pinpoint-2.0.0.tgz#cff8ffadc372ad29fd3f78277aeb29e632cc70df" integrity sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ== "@sinclair/typebox@^0.27.8": version "0.27.8" - resolved "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz#6667fac16c436b5434a387a34dedb013198f6e6e" + resolved "https://registry.yarnpkg.com/@sinclair/typebox/-/typebox-0.27.8.tgz#6667fac16c436b5434a387a34dedb013198f6e6e" integrity sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA== "@smithy/abort-controller@^2.0.1": @@ -1411,75 +1407,75 @@ "@smithy/util-buffer-from" "^2.0.0" tslib "^2.5.0" -"@swc/core-darwin-arm64@1.3.72": - version "1.3.72" - resolved "https://registry.npmjs.org/@swc/core-darwin-arm64/-/core-darwin-arm64-1.3.72.tgz#73ab213a2a07bfbf6ff71ce5f5bef7fb6857a032" - integrity sha512-oNSI5hVfZ+1xpj+dH1g4kQqA0VsGtqd8S9S+cDqkHZiOOVOevw9KN6dzVtmLOcPtlULVypVc0TVvsB55KdVZhQ== +"@swc/core-darwin-arm64@1.3.78": + version "1.3.78" + resolved "https://registry.yarnpkg.com/@swc/core-darwin-arm64/-/core-darwin-arm64-1.3.78.tgz#352c39630f97376b9de367eb1955965c6d2cef64" + integrity sha512-596KRua/d5Gx1buHKKchSyHuwoIL4S1BRD/wCvYNLNZ3xOzcuBBmXOjrDVigKi1ztNDeS07p30RO5UyYur0XAA== -"@swc/core-darwin-x64@1.3.72": - version "1.3.72" - resolved "https://registry.npmjs.org/@swc/core-darwin-x64/-/core-darwin-x64-1.3.72.tgz#b9d7d5ba3b68ae507e48e038f91d97aafd6bd907" - integrity sha512-y5O/WQ1g0/VfTgeNahWIOutbdD5U2Gi703jaefdcoJo3FUx8WU108QQdbVGwGMgaqapo3iQB6Qs9paixYQAYsA== +"@swc/core-darwin-x64@1.3.78": + version "1.3.78" + resolved "https://registry.yarnpkg.com/@swc/core-darwin-x64/-/core-darwin-x64-1.3.78.tgz#0279831884f3275eea67c34a87fb503b35a6f6c7" + integrity sha512-w0RsD1onQAj0vuLAoOVi48HgnW6D6oBEIZP17l0HYejCDBZ+FRZLjml7wgNAWMqHcd2qNRqgtZ+v7aLza2JtBQ== -"@swc/core-linux-arm-gnueabihf@1.3.72": - version "1.3.72" - resolved "https://registry.npmjs.org/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.3.72.tgz#af8fd09684d5a1327949cf64cad3a1e45b082c4f" - integrity sha512-05JdWcso0OomHF+7bk5MBDgI8MZ9skcQ/4nhSv5gboSgSiuBmKM15Bg3lZ5iAUwGByNj7pGkSmmd3YwTrXEB+g== +"@swc/core-linux-arm-gnueabihf@1.3.78": + version "1.3.78" + resolved "https://registry.yarnpkg.com/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.3.78.tgz#4268cac6945329f47216ae57e8ad17bf0e5cc294" + integrity sha512-v1CpRn+H6fha1WIqmdRvJM40pFdjUHrGfhf4Ygci72nlAU41l5XimN8Iwkm8FgIwf2wnv0lLzedSM4IHvpq/yA== -"@swc/core-linux-arm64-gnu@1.3.72": - version "1.3.72" - resolved "https://registry.npmjs.org/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.3.72.tgz#2c0e365431e25d0fb0d1be3f6cb71ff6b315287e" - integrity sha512-8qRELJaeYshhJgqvyOeXCKqBOpai+JYdWuouMbvvDUL85j3OcZhzR+bipexEbbJKcOCdRnoYB7Qg6mjqZ0t7VA== +"@swc/core-linux-arm64-gnu@1.3.78": + version "1.3.78" + resolved "https://registry.yarnpkg.com/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.3.78.tgz#dcedcc8fb3addaca8660c8c712376850a04d5251" + integrity sha512-Sis17dz9joJRFVvR/gteOZSUNrrrioo81RQzani0Zr5ZZOfWLMTB9DA+0MVlfnVa2taYcsJHJZFoAv9JkLwbzg== -"@swc/core-linux-arm64-musl@1.3.72": - version "1.3.72" - resolved "https://registry.npmjs.org/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.3.72.tgz#dbb6579daed116657d7ee6994bea75abb385ba6f" - integrity sha512-tOqAGZw+Pe7YrBHFrwFVyRiKqjgjzwYbJmY+UDxLrzWrZSVtC3eO2TPrp7kWmhirg40Og81BbdfRAl8ds48w0Q== +"@swc/core-linux-arm64-musl@1.3.78": + version "1.3.78" + resolved "https://registry.yarnpkg.com/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.3.78.tgz#c09c29419879e819a1790994da614887714fa675" + integrity sha512-E5F8/qp+QupnfBnsP4vN1PKyCmAHYHDG1GMyPE/zLFOUYLgw+jK4C9rfyLBR0o2bWo1ay2WCIjusBZD9XHGOSA== -"@swc/core-linux-x64-gnu@1.3.72": - version "1.3.72" - resolved "https://registry.npmjs.org/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.3.72.tgz#80dcbf6d71cb7ef0b92aa868ef605427305e83a8" - integrity sha512-U2W2xWR3s9nplGVWz376GiBlcLTgxyYKlpZPBNZk0w3OvTcjKC62gW1Pe7PUkk4NgJUnaQDBa/mb4V4Zl+GZPA== +"@swc/core-linux-x64-gnu@1.3.78": + version "1.3.78" + resolved "https://registry.yarnpkg.com/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.3.78.tgz#e295812b2c871a559fda2314c7063f965d7a3139" + integrity sha512-iDxa+RknnTQlyy+WfPor1FM6y44ERNI2E0xiUV6gV6uPwegCngi8LFC+E7IvP6+p+yXtAkesunAaiZ8nn0s+rw== -"@swc/core-linux-x64-musl@1.3.72": - version "1.3.72" - resolved "https://registry.npmjs.org/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.3.72.tgz#0a8ef179f89cc1f62dae8061e759d987c596ccb3" - integrity sha512-3+2dUiZBsifKgvnFEHWdysXjInK8K+BfPBw2tTZJmq1+fZLt0rvuErYDVMLfIJnVWLCcJMnDtTXrvkFV1y/6iA== +"@swc/core-linux-x64-musl@1.3.78": + version "1.3.78" + resolved "https://registry.yarnpkg.com/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.3.78.tgz#e9742111dc62b857492559491cff277ce7f952f2" + integrity sha512-dWtIYUFL5sMTE2UKshkXTusHcK8+zAhhGzvqWq1wJS45pqTlrAbzpyqB780fle880x3A6DMitWmsAFARdNzpuQ== -"@swc/core-win32-arm64-msvc@1.3.72": - version "1.3.72" - resolved "https://registry.npmjs.org/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.3.72.tgz#ac1a858b3777ba5dba2d55db7648f5a1ad7b840e" - integrity sha512-ndI8xZ2AId806D25xgqw2SFJ9gc/jhg21+5hA8XPq9ZL+oDiaYDztaP3ijVmZ1G5xXKD9DpgB7xmylv/f6o6GA== +"@swc/core-win32-arm64-msvc@1.3.78": + version "1.3.78" + resolved "https://registry.yarnpkg.com/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.3.78.tgz#59d76fbd58e0efcc003cf2a08984e697d285be8d" + integrity sha512-CXFaGEc2M9Su3UoUMC8AnzKb9g+GwPxXfakLWZsjwS448h6jcreExq3nwtBNdVGzQ26xqeVLMFfb1l/oK99Hwg== -"@swc/core-win32-ia32-msvc@1.3.72": - version "1.3.72" - resolved "https://registry.npmjs.org/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.3.72.tgz#3b7764bee0e276b2545e21a85a54381bdc34c3b8" - integrity sha512-F3TK8JHP3SRFjLRlzcRVZPnvvGm2CQ5/cwbIkaEq0Dla3kyctU8SiRqvtYwWCW4JuY10cUygIg93Ec/C9Lkk4g== +"@swc/core-win32-ia32-msvc@1.3.78": + version "1.3.78" + resolved "https://registry.yarnpkg.com/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.3.78.tgz#5aac382bc8e1d3c74228f823033e19d04720cb28" + integrity sha512-FaH1jwWnJpWkdImpMoiZpMg9oy9UUyZwltzN7hFwjR48e3Li82cRFb+9PifIBHCUSBM+CrrsJXbHP213IMVAyw== -"@swc/core-win32-x64-msvc@1.3.72": - version "1.3.72" - resolved "https://registry.npmjs.org/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.3.72.tgz#d3fba8398bb7844353eacb859d61cc1e70c39470" - integrity sha512-FXMnIUtLl0yEmGkw+xbUg/uUPExvUxUlLSHbX7CnbSuOIHqMHzvEd9skIueLAst4bvmJ8kT1hDyAIWQcTIAJYQ== +"@swc/core-win32-x64-msvc@1.3.78": + version "1.3.78" + resolved "https://registry.yarnpkg.com/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.3.78.tgz#3ee7a3bd46503bf81a88343d545d7e1aca8d57de" + integrity sha512-oYxa+tPdhlx1aH14AIoF6kvVjo49tEOW0drNqoEaVHufvgH0y43QU2Jum3b2+xXztmMRtzK2CSN3GPOAXDKKKg== -"@swc/core@^1.3.26": - version "1.3.72" - resolved "https://registry.npmjs.org/@swc/core/-/core-1.3.72.tgz#6eb7eb0388f98c5934343b2db1cbc616831afe03" - integrity sha512-+AKjwLH3/STfPrd7CHzB9+NG1FVT0UKJMUChuWq9sQ8b9xlV8vUeRgZXgh/EHYvNQgl/OUTQKtL6xU2yOLuEuA== +"@swc/core@^1.3.76": + version "1.3.78" + resolved "https://registry.yarnpkg.com/@swc/core/-/core-1.3.78.tgz#2c4bd7c397b85c021271043c76433e553446fe95" + integrity sha512-y6DQP571v7fbUUY7nz5G4lNIRGofuO48K5pGhD9VnuOCTuptfooCdi8wnigIrIhM/M4zQ53m/YCMDCbOtDgEww== optionalDependencies: - "@swc/core-darwin-arm64" "1.3.72" - "@swc/core-darwin-x64" "1.3.72" - "@swc/core-linux-arm-gnueabihf" "1.3.72" - "@swc/core-linux-arm64-gnu" "1.3.72" - "@swc/core-linux-arm64-musl" "1.3.72" - "@swc/core-linux-x64-gnu" "1.3.72" - "@swc/core-linux-x64-musl" "1.3.72" - "@swc/core-win32-arm64-msvc" "1.3.72" - "@swc/core-win32-ia32-msvc" "1.3.72" - "@swc/core-win32-x64-msvc" "1.3.72" + "@swc/core-darwin-arm64" "1.3.78" + "@swc/core-darwin-x64" "1.3.78" + "@swc/core-linux-arm-gnueabihf" "1.3.78" + "@swc/core-linux-arm64-gnu" "1.3.78" + "@swc/core-linux-arm64-musl" "1.3.78" + "@swc/core-linux-x64-gnu" "1.3.78" + "@swc/core-linux-x64-musl" "1.3.78" + "@swc/core-win32-arm64-msvc" "1.3.78" + "@swc/core-win32-ia32-msvc" "1.3.78" + "@swc/core-win32-x64-msvc" "1.3.78" "@swc/register@^0.1.10": version "0.1.10" - resolved "https://registry.npmjs.org/@swc/register/-/register-0.1.10.tgz#74a20b7559669e03479b05e9e5c6d1524d4d92a2" + resolved "https://registry.yarnpkg.com/@swc/register/-/register-0.1.10.tgz#74a20b7559669e03479b05e9e5c6d1524d4d92a2" integrity sha512-6STwH/q4dc3pitXLVkV7sP0Hiy+zBsU2wOF1aXpXR95pnH3RYHKIsDC+gvesfyB7jxNT9OOZgcqOp9RPxVTx9A== dependencies: lodash.clonedeep "^4.5.0" @@ -1488,38 +1484,38 @@ "@tokenizer/token@^0.3.0": version "0.3.0" - resolved "https://registry.npmjs.org/@tokenizer/token/-/token-0.3.0.tgz#fe98a93fe789247e998c75e74e9c7c63217aa276" + resolved "https://registry.yarnpkg.com/@tokenizer/token/-/token-0.3.0.tgz#fe98a93fe789247e998c75e74e9c7c63217aa276" integrity sha512-OvjF+z51L3ov0OyAU0duzsYuvO01PH7x4t6DJx+guahgTnBHkhJdG7soQeTSFLWN3efnHyibZ4Z8l2EuWwJN3A== "@trysound/sax@0.2.0": version "0.2.0" - resolved "https://registry.npmjs.org/@trysound/sax/-/sax-0.2.0.tgz#cccaab758af56761eb7bf37af6f03f326dd798ad" + resolved "https://registry.yarnpkg.com/@trysound/sax/-/sax-0.2.0.tgz#cccaab758af56761eb7bf37af6f03f326dd798ad" integrity sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA== "@types/eslint-scope@^3.7.3": version "3.7.4" - resolved "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.4.tgz#37fc1223f0786c39627068a12e94d6e6fc61de16" + resolved "https://registry.yarnpkg.com/@types/eslint-scope/-/eslint-scope-3.7.4.tgz#37fc1223f0786c39627068a12e94d6e6fc61de16" integrity sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA== dependencies: "@types/eslint" "*" "@types/estree" "*" "@types/eslint@*": - version "8.44.1" - resolved "https://registry.npmjs.org/@types/eslint/-/eslint-8.44.1.tgz#d1811559bb6bcd1a76009e3f7883034b78a0415e" - integrity sha512-XpNDc4Z5Tb4x+SW1MriMVeIsMoONHCkWFMkR/aPJbzEsxqHy+4Glu/BqTdPrApfDeMaXbtNh6bseNgl5KaWrSg== + version "8.44.2" + resolved "https://registry.yarnpkg.com/@types/eslint/-/eslint-8.44.2.tgz#0d21c505f98a89b8dd4d37fa162b09da6089199a" + integrity sha512-sdPRb9K6iL5XZOmBubg8yiFp5yS/JdUDQsq5e6h95km91MCYMuvp7mh1fjPEYUhvHepKpZOjnEaMBR4PxjWDzg== dependencies: "@types/estree" "*" "@types/json-schema" "*" "@types/estree@*", "@types/estree@^1.0.0": version "1.0.1" - resolved "https://registry.npmjs.org/@types/estree/-/estree-1.0.1.tgz#aa22750962f3bf0e79d753d3cc067f010c95f194" + resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.1.tgz#aa22750962f3bf0e79d753d3cc067f010c95f194" integrity sha512-LG4opVs2ANWZ1TJoKc937iMmNstM/d0ae1vNbnBvBhqCSezgVUOzcLCqbI5elV8Vy6WKwKjaqR+zO9VKirBBCA== "@types/glob@^7.1.3": version "7.2.0" - resolved "https://registry.npmjs.org/@types/glob/-/glob-7.2.0.tgz#bc1b5bf3aa92f25bd5dd39f35c57361bdce5b2eb" + resolved "https://registry.yarnpkg.com/@types/glob/-/glob-7.2.0.tgz#bc1b5bf3aa92f25bd5dd39f35c57361bdce5b2eb" integrity sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA== dependencies: "@types/minimatch" "*" @@ -1527,46 +1523,46 @@ "@types/html-minifier-terser@^6.0.0": version "6.1.0" - resolved "https://registry.npmjs.org/@types/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz#4fc33a00c1d0c16987b1a20cf92d20614c55ac35" + resolved "https://registry.yarnpkg.com/@types/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz#4fc33a00c1d0c16987b1a20cf92d20614c55ac35" integrity sha512-oh/6byDPnL1zeNXFrDXFLyZjkr1MsBG667IM792caf1L2UPOOMf65NFzjUH/ltyfwjAGfs1rsX1eftK0jC/KIg== "@types/is-hotkey@^0.1.1": version "0.1.7" - resolved "https://registry.npmjs.org/@types/is-hotkey/-/is-hotkey-0.1.7.tgz#30ec6d4234895230b576728ef77e70a52962f3b3" + resolved "https://registry.yarnpkg.com/@types/is-hotkey/-/is-hotkey-0.1.7.tgz#30ec6d4234895230b576728ef77e70a52962f3b3" integrity sha512-yB5C7zcOM7idwYZZ1wKQ3pTfjA9BbvFqRWvKB46GFddxnJtHwi/b9y84ykQtxQPg5qhdpg4Q/kWU3EGoCTmLzQ== "@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0": version "2.0.4" - resolved "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz#8467d4b3c087805d63580480890791277ce35c44" + resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz#8467d4b3c087805d63580480890791277ce35c44" 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#c14c24f18ea8190c118ee7562b7ff99a36552686" + resolved "https://registry.yarnpkg.com/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz#c14c24f18ea8190c118ee7562b7ff99a36552686" integrity sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg== dependencies: "@types/istanbul-lib-coverage" "*" "@types/istanbul-reports@^3.0.0": version "3.0.1" - resolved "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz#9153fe98bba2bd565a63add9436d6f0d7f8468ff" + resolved "https://registry.yarnpkg.com/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz#9153fe98bba2bd565a63add9436d6f0d7f8468ff" integrity sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw== dependencies: "@types/istanbul-lib-report" "*" "@types/json-schema@*", "@types/json-schema@^7.0.11", "@types/json-schema@^7.0.6", "@types/json-schema@^7.0.8", "@types/json-schema@^7.0.9": version "7.0.12" - resolved "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.12.tgz#d70faba7039d5fca54c83c7dbab41051d2b6f6cb" + resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.12.tgz#d70faba7039d5fca54c83c7dbab41051d2b6f6cb" integrity sha512-Hr5Jfhc9eYOQNPYO5WLDq/n4jqijdHNlDXjuAQkkt+mWdQR+XJToOHrsD4cPaMXpn6KO7y2+wM8AZEs8VpBLVA== "@types/lodash@^4.14.149", "@types/lodash@^4.14.182": - version "4.14.196" - resolved "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.196.tgz#a7c3d6fc52d8d71328b764e28e080b4169ec7a95" - integrity sha512-22y3o88f4a94mKljsZcanlNWPzO0uBsBdzLAngf2tp533LzZcQzb6+eZPJ+vCTt+bqF2XnvT9gejTLsAcJAJyQ== + version "4.14.197" + resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.14.197.tgz#e95c5ddcc814ec3e84c891910a01e0c8a378c54b" + integrity sha512-BMVOiWs0uNxHVlHBgzTIqJYmj+PgCo4euloGF+5m4okL3rEYzM2EEv78mw8zWSMM57dM7kVIgJ2QDvwHSoCI5g== "@types/minimatch@*": version "5.1.2" - resolved "https://registry.npmjs.org/@types/minimatch/-/minimatch-5.1.2.tgz#07508b45797cb81ec3f273011b054cd0755eddca" + resolved "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-5.1.2.tgz#07508b45797cb81ec3f273011b054cd0755eddca" integrity sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA== "@types/mongoose-aggregate-paginate-v2@^1.0.5": @@ -1583,30 +1579,30 @@ "@types/parse-json@^4.0.0": version "4.0.0" - resolved "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz#2f8bb441434d163b35fb8ffdccd7138927ffb8c0" + resolved "https://registry.yarnpkg.com/@types/parse-json/-/parse-json-4.0.0.tgz#2f8bb441434d163b35fb8ffdccd7138927ffb8c0" integrity sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA== "@types/prettier@^2.6.1": version "2.7.3" - resolved "https://registry.npmjs.org/@types/prettier/-/prettier-2.7.3.tgz#3e51a17e291d01d17d3fc61422015a933af7a08f" + resolved "https://registry.yarnpkg.com/@types/prettier/-/prettier-2.7.3.tgz#3e51a17e291d01d17d3fc61422015a933af7a08f" integrity sha512-+68kP9yzs4LMp7VNh8gdzMSPZFL44MLGqiHWvttYJe+6qnuVr4Ek9wSBQoveqY/r+LwjCcU29kNVkidwim+kYA== "@types/prop-types@*": version "15.7.5" - resolved "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.5.tgz#5f19d2b85a98e9558036f6a3cacc8819420f05cf" + resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.5.tgz#5f19d2b85a98e9558036f6a3cacc8819420f05cf" integrity sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w== "@types/react-transition-group@^4.4.0": version "4.4.6" - resolved "https://registry.npmjs.org/@types/react-transition-group/-/react-transition-group-4.4.6.tgz#18187bcda5281f8e10dfc48f0943e2fdf4f75e2e" + resolved "https://registry.yarnpkg.com/@types/react-transition-group/-/react-transition-group-4.4.6.tgz#18187bcda5281f8e10dfc48f0943e2fdf4f75e2e" integrity sha512-VnCdSxfcm08KjsJVQcfBmhEQAPnLB8G08hAxn39azX1qYBQ/5RVQuoHuKIcfKOdncuaUvEpFKFzEvbtIMsfVew== dependencies: "@types/react" "*" "@types/react@*": - version "18.2.17" - resolved "https://registry.npmjs.org/@types/react/-/react-18.2.17.tgz#baa565b17ddb649c2dac85b5eaf9e9a1fe0f3b4e" - integrity sha512-u+e7OlgPPh+aryjOm5UJMX32OvB2E3QASOAqVMY6Ahs90djagxwv2ya0IctglNbNTexC12qCSMZG47KPfy1hAA== + version "18.2.20" + resolved "https://registry.yarnpkg.com/@types/react/-/react-18.2.20.tgz#1605557a83df5c8a2cc4eeb743b3dfc0eb6aaeb2" + integrity sha512-WKNtmsLWJM/3D5mG4U84cysVY31ivmyw85dE84fOCk5Hx78wezB/XEjVPWl2JTZ5FkEeaTJf+VgUAUn3PE7Isw== dependencies: "@types/prop-types" "*" "@types/scheduler" "*" @@ -1614,12 +1610,12 @@ "@types/scheduler@*": version "0.16.3" - resolved "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.3.tgz#cef09e3ec9af1d63d2a6cc5b383a737e24e6dcf5" + resolved "https://registry.yarnpkg.com/@types/scheduler/-/scheduler-0.16.3.tgz#cef09e3ec9af1d63d2a6cc5b383a737e24e6dcf5" integrity sha512-5cJ8CB4yAx7BH1oMvdU0Jh9lrEXyPkar6F9G/ERswkCuvP4KQZfZkSjcMbAICCpQTN4OuZn8tz0HiKv9TGZgrQ== "@types/sharp@^0.31.1": version "0.31.1" - resolved "https://registry.npmjs.org/@types/sharp/-/sharp-0.31.1.tgz#db768461455dbcf9ff11d69277fd70564483c4df" + resolved "https://registry.yarnpkg.com/@types/sharp/-/sharp-0.31.1.tgz#db768461455dbcf9ff11d69277fd70564483c4df" integrity sha512-5nWwamN9ZFHXaYEincMSuza8nNfOof8nmO+mcI+Agx1uMUk4/pQnNIcix+9rLPXzKrm1pS34+6WRDbDV0Jn7ag== dependencies: "@types/node" "*" @@ -1639,19 +1635,19 @@ "@types/yargs-parser@*": version "21.0.0" - resolved "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.0.tgz#0c60e537fa790f5f9472ed2776c2b71ec117351b" + resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-21.0.0.tgz#0c60e537fa790f5f9472ed2776c2b71ec117351b" integrity sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA== "@types/yargs@^17.0.8": version "17.0.24" - resolved "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.24.tgz#b3ef8d50ad4aa6aecf6ddc97c580a00f5aa11902" + resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-17.0.24.tgz#b3ef8d50ad4aa6aecf6ddc97c580a00f5aa11902" integrity sha512-6i0aC7jV6QzQB8ne1joVZ0eSFIstHsCrobmOtghM11yGlH0j43FKL2UhWdELkyps0zuf7qVTUVCCR+tgSlyLLw== dependencies: "@types/yargs-parser" "*" "@webassemblyjs/ast@1.11.6", "@webassemblyjs/ast@^1.11.5": version "1.11.6" - resolved "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.6.tgz#db046555d3c413f8966ca50a95176a0e2c642e24" + resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.11.6.tgz#db046555d3c413f8966ca50a95176a0e2c642e24" integrity sha512-IN1xI7PwOvLPgjcf180gC1bqn3q/QaOCwYUahIOhbYUu8KA/3tw2RT/T0Gidi1l7Hhj5D/INhJxiICObqpMu4Q== dependencies: "@webassemblyjs/helper-numbers" "1.11.6" @@ -1659,22 +1655,22 @@ "@webassemblyjs/floating-point-hex-parser@1.11.6": version "1.11.6" - resolved "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.6.tgz#dacbcb95aff135c8260f77fa3b4c5fea600a6431" + resolved "https://registry.yarnpkg.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.6.tgz#dacbcb95aff135c8260f77fa3b4c5fea600a6431" integrity sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw== "@webassemblyjs/helper-api-error@1.11.6": version "1.11.6" - resolved "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.6.tgz#6132f68c4acd59dcd141c44b18cbebbd9f2fa768" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.6.tgz#6132f68c4acd59dcd141c44b18cbebbd9f2fa768" integrity sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q== "@webassemblyjs/helper-buffer@1.11.6": version "1.11.6" - resolved "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.6.tgz#b66d73c43e296fd5e88006f18524feb0f2c7c093" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.6.tgz#b66d73c43e296fd5e88006f18524feb0f2c7c093" integrity sha512-z3nFzdcp1mb8nEOFFk8DrYLpHvhKC3grJD2ardfKOzmbmJvEf/tPIqCY+sNcwZIY8ZD7IkB2l7/pqhUhqm7hLA== "@webassemblyjs/helper-numbers@1.11.6": version "1.11.6" - resolved "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.6.tgz#cbce5e7e0c1bd32cf4905ae444ef64cea919f1b5" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.6.tgz#cbce5e7e0c1bd32cf4905ae444ef64cea919f1b5" integrity sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g== dependencies: "@webassemblyjs/floating-point-hex-parser" "1.11.6" @@ -1683,12 +1679,12 @@ "@webassemblyjs/helper-wasm-bytecode@1.11.6": version "1.11.6" - resolved "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.6.tgz#bb2ebdb3b83aa26d9baad4c46d4315283acd51e9" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.6.tgz#bb2ebdb3b83aa26d9baad4c46d4315283acd51e9" integrity sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA== "@webassemblyjs/helper-wasm-section@1.11.6": version "1.11.6" - resolved "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.6.tgz#ff97f3863c55ee7f580fd5c41a381e9def4aa577" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.6.tgz#ff97f3863c55ee7f580fd5c41a381e9def4aa577" integrity sha512-LPpZbSOwTpEC2cgn4hTydySy1Ke+XEu+ETXuoyvuyezHO3Kjdu90KK95Sh9xTbmjrCsUwvWwCOQQNta37VrS9g== dependencies: "@webassemblyjs/ast" "1.11.6" @@ -1698,26 +1694,26 @@ "@webassemblyjs/ieee754@1.11.6": version "1.11.6" - resolved "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.6.tgz#bb665c91d0b14fffceb0e38298c329af043c6e3a" + resolved "https://registry.yarnpkg.com/@webassemblyjs/ieee754/-/ieee754-1.11.6.tgz#bb665c91d0b14fffceb0e38298c329af043c6e3a" integrity sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg== dependencies: "@xtuc/ieee754" "^1.2.0" "@webassemblyjs/leb128@1.11.6": version "1.11.6" - resolved "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.6.tgz#70e60e5e82f9ac81118bc25381a0b283893240d7" + resolved "https://registry.yarnpkg.com/@webassemblyjs/leb128/-/leb128-1.11.6.tgz#70e60e5e82f9ac81118bc25381a0b283893240d7" integrity sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ== dependencies: "@xtuc/long" "4.2.2" "@webassemblyjs/utf8@1.11.6": version "1.11.6" - resolved "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.6.tgz#90f8bc34c561595fe156603be7253cdbcd0fab5a" + resolved "https://registry.yarnpkg.com/@webassemblyjs/utf8/-/utf8-1.11.6.tgz#90f8bc34c561595fe156603be7253cdbcd0fab5a" integrity sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA== "@webassemblyjs/wasm-edit@^1.11.5": version "1.11.6" - resolved "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.6.tgz#c72fa8220524c9b416249f3d94c2958dfe70ceab" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.6.tgz#c72fa8220524c9b416249f3d94c2958dfe70ceab" integrity sha512-Ybn2I6fnfIGuCR+Faaz7YcvtBKxvoLV3Lebn1tM4o/IAJzmi9AWYIPWpyBfU8cC+JxAO57bk4+zdsTjJR+VTOw== dependencies: "@webassemblyjs/ast" "1.11.6" @@ -1731,7 +1727,7 @@ "@webassemblyjs/wasm-gen@1.11.6": version "1.11.6" - resolved "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.6.tgz#fb5283e0e8b4551cc4e9c3c0d7184a65faf7c268" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.6.tgz#fb5283e0e8b4551cc4e9c3c0d7184a65faf7c268" integrity sha512-3XOqkZP/y6B4F0PBAXvI1/bky7GryoogUtfwExeP/v7Nzwo1QLcq5oQmpKlftZLbT+ERUOAZVQjuNVak6UXjPA== dependencies: "@webassemblyjs/ast" "1.11.6" @@ -1742,7 +1738,7 @@ "@webassemblyjs/wasm-opt@1.11.6": version "1.11.6" - resolved "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.6.tgz#d9a22d651248422ca498b09aa3232a81041487c2" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.6.tgz#d9a22d651248422ca498b09aa3232a81041487c2" integrity sha512-cOrKuLRE7PCe6AsOVl7WasYf3wbSo4CeOk6PkrjS7g57MFfVUF9u6ysQBBODX0LdgSvQqRiGz3CXvIDKcPNy4g== dependencies: "@webassemblyjs/ast" "1.11.6" @@ -1752,7 +1748,7 @@ "@webassemblyjs/wasm-parser@1.11.6", "@webassemblyjs/wasm-parser@^1.11.5": version "1.11.6" - resolved "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.6.tgz#bb85378c527df824004812bbdb784eea539174a1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.6.tgz#bb85378c527df824004812bbdb784eea539174a1" integrity sha512-6ZwPeGzMJM3Dqp3hCsLgESxBGtT/OeCvCZ4TA1JUPYgmhAx38tTPR9JaKy0S5H3evQpO/h2uWs2j6Yc/fjkpTQ== dependencies: "@webassemblyjs/ast" "1.11.6" @@ -1764,7 +1760,7 @@ "@webassemblyjs/wast-printer@1.11.6": version "1.11.6" - resolved "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.6.tgz#a7bf8dd7e362aeb1668ff43f35cb849f188eff20" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-printer/-/wast-printer-1.11.6.tgz#a7bf8dd7e362aeb1668ff43f35cb849f188eff20" integrity sha512-JM7AhRcE+yW2GWYaKeHL5vt4xqee5N2WcezptmgyhNS+ScggqcT1OtXykhAb13Sn5Yas0j2uv9tHgrjwvzAP4A== dependencies: "@webassemblyjs/ast" "1.11.6" @@ -1772,41 +1768,41 @@ "@webpack-cli/configtest@^1.2.0": version "1.2.0" - resolved "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-1.2.0.tgz#7b20ce1c12533912c3b217ea68262365fa29a6f5" + resolved "https://registry.yarnpkg.com/@webpack-cli/configtest/-/configtest-1.2.0.tgz#7b20ce1c12533912c3b217ea68262365fa29a6f5" integrity sha512-4FB8Tj6xyVkyqjj1OaTqCjXYULB9FMkqQ8yGrZjRDrYh0nOE+7Lhs45WioWQQMV+ceFlE368Ukhe6xdvJM9Egg== "@webpack-cli/info@^1.5.0": version "1.5.0" - resolved "https://registry.npmjs.org/@webpack-cli/info/-/info-1.5.0.tgz#6c78c13c5874852d6e2dd17f08a41f3fe4c261b1" + resolved "https://registry.yarnpkg.com/@webpack-cli/info/-/info-1.5.0.tgz#6c78c13c5874852d6e2dd17f08a41f3fe4c261b1" integrity sha512-e8tSXZpw2hPl2uMJY6fsMswaok5FdlGNRTktvFk2sD8RjH0hE2+XistawJx1vmKteh4NmGmNUrp+Tb2w+udPcQ== dependencies: envinfo "^7.7.3" "@webpack-cli/serve@^1.7.0": version "1.7.0" - resolved "https://registry.npmjs.org/@webpack-cli/serve/-/serve-1.7.0.tgz#e1993689ac42d2b16e9194376cfb6753f6254db1" + resolved "https://registry.yarnpkg.com/@webpack-cli/serve/-/serve-1.7.0.tgz#e1993689ac42d2b16e9194376cfb6753f6254db1" integrity sha512-oxnCNGj88fL+xzV+dacXs44HcDwf1ovs3AuEzvP7mqXw7fQntqIhQ1BRmynh4qEKQSSSRSWVyXRjmTbZIX9V2Q== "@xtuc/ieee754@^1.2.0": version "1.2.0" - resolved "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz#eef014a3145ae477a1cbc00cd1e552336dceb790" + resolved "https://registry.yarnpkg.com/@xtuc/ieee754/-/ieee754-1.2.0.tgz#eef014a3145ae477a1cbc00cd1e552336dceb790" integrity sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA== "@xtuc/long@4.2.2": version "4.2.2" - resolved "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz#d291c6a4e97989b5c61d9acf396ae4fe133a718d" + resolved "https://registry.yarnpkg.com/@xtuc/long/-/long-4.2.2.tgz#d291c6a4e97989b5c61d9acf396ae4fe133a718d" integrity sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ== abort-controller@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz#eaf54d53b62bae4138e809ca225c8439a6efb392" + resolved "https://registry.yarnpkg.com/abort-controller/-/abort-controller-3.0.0.tgz#eaf54d53b62bae4138e809ca225c8439a6efb392" integrity sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg== dependencies: event-target-shim "^5.0.0" accepts@~1.3.5, accepts@~1.3.8: version "1.3.8" - resolved "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz#0bf0be125b67014adcb0b0921e62db7bffe16b2e" + resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.8.tgz#0bf0be125b67014adcb0b0921e62db7bffe16b2e" integrity sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw== dependencies: mime-types "~2.1.34" @@ -1814,17 +1810,17 @@ accepts@~1.3.5, accepts@~1.3.8: acorn-import-assertions@^1.9.0: version "1.9.0" - resolved "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.9.0.tgz#507276249d684797c84e0734ef84860334cfb1ac" + resolved "https://registry.yarnpkg.com/acorn-import-assertions/-/acorn-import-assertions-1.9.0.tgz#507276249d684797c84e0734ef84860334cfb1ac" integrity sha512-cmMwop9x+8KFhxvKrKfPYmN6/pKTYYHBqLa0DfvVZcKMJWNyWLnaqND7dx/qn66R7ewM1UX5XMaDVP5wlVTaVA== acorn-walk@^8.0.0: version "8.2.0" - resolved "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz#741210f2e2426454508853a2f44d0ab83b7f69c1" + resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-8.2.0.tgz#741210f2e2426454508853a2f44d0ab83b7f69c1" integrity sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA== acorn@^8.0.4, acorn@^8.7.1, acorn@^8.8.2: version "8.10.0" - resolved "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz#8be5b3907a67221a81ab23c7889c4c5526b62ec5" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.10.0.tgz#8be5b3907a67221a81ab23c7889c4c5526b62ec5" integrity sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw== agent-base@6: @@ -1836,26 +1832,26 @@ agent-base@6: ajv-formats@^2.1.1: version "2.1.1" - resolved "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz#6e669400659eb74973bbf2e33327180a0996b520" + resolved "https://registry.yarnpkg.com/ajv-formats/-/ajv-formats-2.1.1.tgz#6e669400659eb74973bbf2e33327180a0996b520" integrity sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA== dependencies: ajv "^8.0.0" ajv-keywords@^3.5.2: version "3.5.2" - resolved "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz#31f29da5ab6e00d1c2d329acf7b5929614d5014d" + resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.5.2.tgz#31f29da5ab6e00d1c2d329acf7b5929614d5014d" integrity sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ== ajv-keywords@^5.1.0: version "5.1.0" - resolved "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz#69d4d385a4733cdbeab44964a1170a88f87f0e16" + resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-5.1.0.tgz#69d4d385a4733cdbeab44964a1170a88f87f0e16" integrity sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw== dependencies: fast-deep-equal "^3.1.3" ajv@^6.12.5: version "6.12.6" - resolved "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== dependencies: fast-deep-equal "^3.1.1" @@ -1865,7 +1861,7 @@ ajv@^6.12.5: ajv@^8.0.0, ajv@^8.6.3, ajv@^8.9.0: version "8.12.0" - resolved "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz#d1a0527323e22f53562c567c00991577dfbe19d1" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.12.0.tgz#d1a0527323e22f53562c567c00991577dfbe19d1" integrity sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA== dependencies: fast-deep-equal "^3.1.1" @@ -1875,36 +1871,36 @@ ajv@^8.0.0, ajv@^8.6.3, ajv@^8.9.0: ansi-html-community@0.0.8: version "0.0.8" - resolved "https://registry.npmjs.org/ansi-html-community/-/ansi-html-community-0.0.8.tgz#69fbc4d6ccbe383f9736934ae34c3f8290f1bf41" + resolved "https://registry.yarnpkg.com/ansi-html-community/-/ansi-html-community-0.0.8.tgz#69fbc4d6ccbe383f9736934ae34c3f8290f1bf41" integrity sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw== ansi-regex@^5.0.1: version "5.0.1" - resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== ansi-styles@^3.2.1: version "3.2.1" - resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== dependencies: color-convert "^1.9.0" ansi-styles@^4.1.0: version "4.3.0" - resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937" integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== dependencies: color-convert "^2.0.1" any-promise@^1.0.0: version "1.3.0" - resolved "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz#abc6afeedcea52e809cdc0376aed3ce39635d17f" + resolved "https://registry.yarnpkg.com/any-promise/-/any-promise-1.3.0.tgz#abc6afeedcea52e809cdc0376aed3ce39635d17f" integrity sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A== anymatch@~3.1.2: version "3.1.3" - resolved "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz#790c58b19ba1720a84205b57c618d5ad8524973e" + resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.3.tgz#790c58b19ba1720a84205b57c618d5ad8524973e" integrity sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw== dependencies: normalize-path "^3.0.0" @@ -1912,12 +1908,12 @@ anymatch@~3.1.2: argparse@^2.0.1: version "2.0.1" - resolved "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38" + resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38" integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== array-buffer-byte-length@^1.0.0: version "1.0.0" - resolved "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.0.tgz#fabe8bc193fea865f317fe7807085ee0dee5aead" + resolved "https://registry.yarnpkg.com/array-buffer-byte-length/-/array-buffer-byte-length-1.0.0.tgz#fabe8bc193fea865f317fe7807085ee0dee5aead" integrity sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A== dependencies: call-bind "^1.0.2" @@ -1925,7 +1921,7 @@ array-buffer-byte-length@^1.0.0: array-flatten@1.1.1: version "1.1.1" - resolved "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2" + resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2" integrity sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg== async-mutex@^0.3.2: @@ -1937,21 +1933,21 @@ async-mutex@^0.3.2: atomic-sleep@^1.0.0: version "1.0.0" - resolved "https://registry.npmjs.org/atomic-sleep/-/atomic-sleep-1.0.0.tgz#eb85b77a601fc932cfe432c5acd364a9e2c9075b" + resolved "https://registry.yarnpkg.com/atomic-sleep/-/atomic-sleep-1.0.0.tgz#eb85b77a601fc932cfe432c5acd364a9e2c9075b" integrity sha512-kNOjDqAh7px0XWNI+4QbzoiR/nTkHAWNud2uvnJquD1/x5a7EQZMJT0AczqK0Qn67oY/TTQ1LbUKajZpp3I9tQ== atomically@^1.7.0: version "1.7.0" - resolved "https://registry.npmjs.org/atomically/-/atomically-1.7.0.tgz#c07a0458432ea6dbc9a3506fffa424b48bccaafe" + resolved "https://registry.yarnpkg.com/atomically/-/atomically-1.7.0.tgz#c07a0458432ea6dbc9a3506fffa424b48bccaafe" integrity sha512-Xcz9l0z7y9yQ9rdDaxlmaI4uJHf/T8g9hOEzJcsEqX2SjCj4J20uK7+ldkDHMbpJDK76wF7xEIgxc/vSlsfw5w== autoprefixer@^10.4.14: - version "10.4.14" - resolved "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.14.tgz#e28d49902f8e759dd25b153264e862df2705f79d" - integrity sha512-FQzyfOsTlwVzjHxKEqRIAdJx9niO6VCBCoEwax/VLSoQF29ggECcPuBqUMZ+u8jCZOPSy8b8/8KnuFbp0SaFZQ== + version "10.4.15" + resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-10.4.15.tgz#a1230f4aeb3636b89120b34a1f513e2f6834d530" + integrity sha512-KCuPB8ZCIqFdA4HwKXsvz7j6gvSDNhDP7WnUjBleRkKjPdvCmHFuQ77ocavI8FT6NdvlBnE2UFr2H4Mycn8Vew== dependencies: - browserslist "^4.21.5" - caniuse-lite "^1.0.30001464" + browserslist "^4.21.10" + caniuse-lite "^1.0.30001520" fraction.js "^4.2.0" normalize-range "^0.1.2" picocolors "^1.0.0" @@ -1959,12 +1955,12 @@ autoprefixer@^10.4.14: available-typed-arrays@^1.0.5: version "1.0.5" - resolved "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz#92f95616501069d07d10edb2fc37d3e1c65123b7" + resolved "https://registry.yarnpkg.com/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz#92f95616501069d07d10edb2fc37d3e1c65123b7" integrity sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw== babel-plugin-macros@^3.1.0: version "3.1.0" - resolved "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-3.1.0.tgz#9ef6dc74deb934b4db344dc973ee851d148c50c1" + resolved "https://registry.yarnpkg.com/babel-plugin-macros/-/babel-plugin-macros-3.1.0.tgz#9ef6dc74deb934b4db344dc973ee851d148c50c1" integrity sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg== dependencies: "@babel/runtime" "^7.12.5" @@ -1973,7 +1969,7 @@ babel-plugin-macros@^3.1.0: balanced-match@^1.0.0: version "1.0.2" - resolved "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" + resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== base64-js@^1.3.1: @@ -1983,12 +1979,12 @@ base64-js@^1.3.1: big.js@^5.2.2: version "5.2.2" - resolved "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz#65f0af382f578bcdc742bd9c281e9cb2d7768328" + resolved "https://registry.yarnpkg.com/big.js/-/big.js-5.2.2.tgz#65f0af382f578bcdc742bd9c281e9cb2d7768328" integrity sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ== binary-extensions@^2.0.0: version "2.2.0" - resolved "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d" + resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d" integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA== bl@^4.0.3: @@ -2002,7 +1998,7 @@ bl@^4.0.3: body-parser@1.20.1: version "1.20.1" - resolved "https://registry.npmjs.org/body-parser/-/body-parser-1.20.1.tgz#b1812a8912c195cd371a3ee5e66faa2338a5c668" + resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.20.1.tgz#b1812a8912c195cd371a3ee5e66faa2338a5c668" integrity sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw== dependencies: bytes "3.1.2" @@ -2020,7 +2016,7 @@ body-parser@1.20.1: body-parser@^1.20.1: version "1.20.2" - resolved "https://registry.npmjs.org/body-parser/-/body-parser-1.20.2.tgz#6feb0e21c4724d06de7ff38da36dad4f57a747fd" + resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.20.2.tgz#6feb0e21c4724d06de7ff38da36dad4f57a747fd" integrity sha512-ml9pReCu3M61kGlqoTm2umSXTlRTuGTx0bfYj+uIUKKYycG5NtSbeetV3faSU6R7ajOPw0g/J1PvK4qNy7s5bA== dependencies: bytes "3.1.2" @@ -2038,12 +2034,12 @@ body-parser@^1.20.1: body-scroll-lock@^3.1.5: version "3.1.5" - resolved "https://registry.npmjs.org/body-scroll-lock/-/body-scroll-lock-3.1.5.tgz#c1392d9217ed2c3e237fee1e910f6cdd80b7aaec" + resolved "https://registry.yarnpkg.com/body-scroll-lock/-/body-scroll-lock-3.1.5.tgz#c1392d9217ed2c3e237fee1e910f6cdd80b7aaec" integrity sha512-Yi1Xaml0EvNA0OYWxXiYNqY24AfWkbA6w5vxE7GWxtKfzIbZM+Qw+aSmkgsbWzbHiy/RCSkUZBplVxTA+E4jJg== boolbase@^1.0.0: version "1.0.0" - resolved "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e" + resolved "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e" integrity sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww== bowser@^2.11.0: @@ -2053,7 +2049,7 @@ bowser@^2.11.0: brace-expansion@^1.1.7: version "1.1.11" - resolved "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" + resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== dependencies: balanced-match "^1.0.0" @@ -2061,21 +2057,21 @@ brace-expansion@^1.1.7: brace-expansion@^2.0.1: version "2.0.1" - resolved "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz#1edc459e0f0c548486ecf9fc99f2221364b9a0ae" + resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-2.0.1.tgz#1edc459e0f0c548486ecf9fc99f2221364b9a0ae" integrity sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA== dependencies: balanced-match "^1.0.0" braces@~3.0.2: version "3.0.2" - resolved "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" + resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== dependencies: fill-range "^7.0.1" -browserslist@^4.0.0, browserslist@^4.14.5, browserslist@^4.21.4, browserslist@^4.21.5, browserslist@^4.21.9: +browserslist@^4.0.0, browserslist@^4.14.5, browserslist@^4.21.10, browserslist@^4.21.4: version "4.21.10" - resolved "https://registry.npmjs.org/browserslist/-/browserslist-4.21.10.tgz#dbbac576628c13d3b2231332cb2ec5a46e015bb0" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.21.10.tgz#dbbac576628c13d3b2231332cb2ec5a46e015bb0" integrity sha512-bipEBdZfVH5/pwrvqc+Ub0kUPVfGUhlKxbvfD+z1BDnPEO/X98ruXGA1WP5ASpAFKan7Qr6j736IacbZQuAlKQ== dependencies: caniuse-lite "^1.0.30001517" @@ -2107,12 +2103,12 @@ buffer-crc32@~0.2.3: buffer-equal-constant-time@1.0.1: version "1.0.1" - resolved "https://registry.npmjs.org/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz#f8e71132f7ffe6e01a5c9697a4c6f3e48d5cc819" + resolved "https://registry.yarnpkg.com/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz#f8e71132f7ffe6e01a5c9697a4c6f3e48d5cc819" integrity sha512-zRpUiDwd/xk6ADqPMATG8vc9VPrkck7T07OIx0gnjmJAnHnTVXNQG3vfvWNuiZIkwu9KrKdA1iJKfsfTVxE6NA== buffer-from@^1.0.0: version "1.1.2" - resolved "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5" + resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5" integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ== buffer@^5.5.0, buffer@^5.6.0: @@ -2125,7 +2121,7 @@ buffer@^5.5.0, buffer@^5.6.0: buffer@^6.0.3: version "6.0.3" - resolved "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz#2ace578459cc8fbe2a70aaa8f52ee63b6a74c6c6" + resolved "https://registry.yarnpkg.com/buffer/-/buffer-6.0.3.tgz#2ace578459cc8fbe2a70aaa8f52ee63b6a74c6c6" integrity sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA== dependencies: base64-js "^1.3.1" @@ -2133,24 +2129,24 @@ buffer@^6.0.3: busboy@^1.6.0: version "1.6.0" - resolved "https://registry.npmjs.org/busboy/-/busboy-1.6.0.tgz#966ea36a9502e43cdb9146962523b92f531f6893" + resolved "https://registry.yarnpkg.com/busboy/-/busboy-1.6.0.tgz#966ea36a9502e43cdb9146962523b92f531f6893" integrity sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA== dependencies: streamsearch "^1.1.0" bytes@3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz#d32815404d689699f85a4ea4fa8755dd13a96048" + resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.0.0.tgz#d32815404d689699f85a4ea4fa8755dd13a96048" integrity sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw== bytes@3.1.2: version "3.1.2" - resolved "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz#8b0beeb98605adf1b128fa4386403c009e0221a5" + resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.2.tgz#8b0beeb98605adf1b128fa4386403c009e0221a5" integrity sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg== call-bind@^1.0.0, call-bind@^1.0.2: version "1.0.2" - resolved "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz#b1d4e89e688119c3c9a903ad30abb2f6a919be3c" + resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.2.tgz#b1d4e89e688119c3c9a903ad30abb2f6a919be3c" integrity sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA== dependencies: function-bind "^1.1.1" @@ -2158,17 +2154,17 @@ call-bind@^1.0.0, call-bind@^1.0.2: call-me-maybe@^1.0.1: version "1.0.2" - resolved "https://registry.npmjs.org/call-me-maybe/-/call-me-maybe-1.0.2.tgz#03f964f19522ba643b1b0693acb9152fe2074baa" + resolved "https://registry.yarnpkg.com/call-me-maybe/-/call-me-maybe-1.0.2.tgz#03f964f19522ba643b1b0693acb9152fe2074baa" integrity sha512-HpX65o1Hnr9HH25ojC1YGs7HCQLq0GCOibSaWER0eNpgJ/Z1MZv2mTc7+xh6WOPxbRVcmgbv4hGU+uSQ/2xFZQ== callsites@^3.0.0: version "3.1.0" - resolved "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" + resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== camel-case@^4.1.2: version "4.1.2" - resolved "https://registry.npmjs.org/camel-case/-/camel-case-4.1.2.tgz#9728072a954f805228225a6deea6b38461e1bd5a" + resolved "https://registry.yarnpkg.com/camel-case/-/camel-case-4.1.2.tgz#9728072a954f805228225a6deea6b38461e1bd5a" integrity sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw== dependencies: pascal-case "^3.1.2" @@ -2181,7 +2177,7 @@ camelcase@^6.3.0: caniuse-api@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/caniuse-api/-/caniuse-api-3.0.0.tgz#5e4d90e2274961d46291997df599e3ed008ee4c0" + resolved "https://registry.yarnpkg.com/caniuse-api/-/caniuse-api-3.0.0.tgz#5e4d90e2274961d46291997df599e3ed008ee4c0" integrity sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw== dependencies: browserslist "^4.0.0" @@ -2189,14 +2185,14 @@ caniuse-api@^3.0.0: lodash.memoize "^4.1.2" lodash.uniq "^4.5.0" -caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001464, caniuse-lite@^1.0.30001517: - version "1.0.30001518" - resolved "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001518.tgz#b3ca93904cb4699c01218246c4d77a71dbe97150" - integrity sha512-rup09/e3I0BKjncL+FesTayKtPrdwKhUufQFd3riFw1hHg8JmIFoInYfB102cFcY/pPgGmdyl/iy+jgiDi2vdA== +caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001517, caniuse-lite@^1.0.30001520: + version "1.0.30001522" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001522.tgz#44b87a406c901269adcdb834713e23582dd71856" + integrity sha512-TKiyTVZxJGhsTszLuzb+6vUZSjVOAhClszBr2Ta2k9IwtNBT/4dzmL6aywt0HCgEZlmwJzXJd8yNiob6HgwTRg== -chalk@^2.0.0: +chalk@^2.4.2: version "2.4.2" - resolved "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== dependencies: ansi-styles "^3.2.1" @@ -2205,7 +2201,7 @@ chalk@^2.0.0: chalk@^4.0.0, chalk@^4.1.0: version "4.1.2" - resolved "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== dependencies: ansi-styles "^4.1.0" @@ -2213,12 +2209,12 @@ chalk@^4.0.0, chalk@^4.1.0: charenc@0.0.2: version "0.0.2" - resolved "https://registry.npmjs.org/charenc/-/charenc-0.0.2.tgz#c0a1d2f3a7092e03774bfa83f14c0fc5790a8667" + resolved "https://registry.yarnpkg.com/charenc/-/charenc-0.0.2.tgz#c0a1d2f3a7092e03774bfa83f14c0fc5790a8667" integrity sha512-yrLQ/yVUFXkzg7EDQsPieE/53+0RlaWTs+wBrvW36cyilJ2SaDWfl4Yj7MtLTXleV9uEKefbAGUPv2/iWSooRA== "chokidar@>=3.0.0 <4.0.0": version "3.5.3" - resolved "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz#1cf37c8707b932bd1af1ae22c0432e2acd1903bd" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.3.tgz#1cf37c8707b932bd1af1ae22c0432e2acd1903bd" integrity sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw== dependencies: anymatch "~3.1.2" @@ -2233,34 +2229,34 @@ charenc@0.0.2: chownr@^1.1.1: version "1.1.4" - resolved "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz#6fc9d7b42d32a583596337666e7d08084da2cc6b" + resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.4.tgz#6fc9d7b42d32a583596337666e7d08084da2cc6b" integrity sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg== chrome-trace-event@^1.0.2: version "1.0.3" - resolved "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz#1015eced4741e15d06664a957dbbf50d041e26ac" + resolved "https://registry.yarnpkg.com/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz#1015eced4741e15d06664a957dbbf50d041e26ac" integrity sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg== ci-info@^3.2.0: version "3.8.0" - resolved "https://registry.npmjs.org/ci-info/-/ci-info-3.8.0.tgz#81408265a5380c929f0bc665d62256628ce9ef91" + resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-3.8.0.tgz#81408265a5380c929f0bc665d62256628ce9ef91" integrity sha512-eXTggHWSooYhq49F2opQhuHWgzucfF2YgODK4e1566GQs5BIfP30B0oenwBJHfWxAs2fyPB1s7Mg949zLf61Yw== classnames@^2.2.5, classnames@^2.2.6, classnames@^2.3.1: version "2.3.2" - resolved "https://registry.npmjs.org/classnames/-/classnames-2.3.2.tgz#351d813bf0137fcc6a76a16b88208d2560a0d924" + resolved "https://registry.yarnpkg.com/classnames/-/classnames-2.3.2.tgz#351d813bf0137fcc6a76a16b88208d2560a0d924" integrity sha512-CSbhY4cFEJRe6/GQzIk5qXZ4Jeg5pcsP7b5peFSDpffpe1cqjASH/n9UTjBwOp6XpMSTwQ8Za2K5V02ueA7Tmw== clean-css@^5.2.2: version "5.3.2" - resolved "https://registry.npmjs.org/clean-css/-/clean-css-5.3.2.tgz#70ecc7d4d4114921f5d298349ff86a31a9975224" + resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-5.3.2.tgz#70ecc7d4d4114921f5d298349ff86a31a9975224" integrity sha512-JVJbM+f3d3Q704rF4bqQ5UUyTtuJ0JRKNbTKVEeujCCBoMdkEi+V+e8oktO9qGQNSvHrFTM6JZRXrUvGR1czww== dependencies: source-map "~0.6.0" cli-color@^2.0.2: version "2.0.3" - resolved "https://registry.npmjs.org/cli-color/-/cli-color-2.0.3.tgz#73769ba969080629670f3f2ef69a4bf4e7cc1879" + resolved "https://registry.yarnpkg.com/cli-color/-/cli-color-2.0.3.tgz#73769ba969080629670f3f2ef69a4bf4e7cc1879" integrity sha512-OkoZnxyC4ERN3zLzZaY9Emb7f/MhBOIpePv0Ycok0fJYT+Ouo00UBEIwsVsr0yoow++n5YWlSUgST9GKhNHiRQ== dependencies: d "^1.0.1" @@ -2271,7 +2267,7 @@ cli-color@^2.0.2: clone-deep@^4.0.1: version "4.0.1" - resolved "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz#c19fd9bdbbf85942b4fd979c84dcf7d5f07c2387" + resolved "https://registry.yarnpkg.com/clone-deep/-/clone-deep-4.0.1.tgz#c19fd9bdbbf85942b4fd979c84dcf7d5f07c2387" integrity sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ== dependencies: is-plain-object "^2.0.4" @@ -2280,36 +2276,36 @@ clone-deep@^4.0.1: clsx@^1.1.1: version "1.2.1" - resolved "https://registry.npmjs.org/clsx/-/clsx-1.2.1.tgz#0ddc4a20a549b59c93a4116bb26f5294ca17dc12" + resolved "https://registry.yarnpkg.com/clsx/-/clsx-1.2.1.tgz#0ddc4a20a549b59c93a4116bb26f5294ca17dc12" integrity sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg== color-convert@^1.9.0: version "1.9.3" - resolved "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== dependencies: color-name "1.1.3" color-convert@^2.0.1: version "2.0.1" - resolved "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== dependencies: color-name "~1.1.4" color-name@1.1.3: version "1.1.3" - resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" + resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw== color-name@^1.0.0, color-name@~1.1.4: version "1.1.4" - resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" + resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== color-string@^1.9.0: version "1.9.1" - resolved "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz#4467f9146f036f855b764dfb5bf8582bf342c7a4" + resolved "https://registry.yarnpkg.com/color-string/-/color-string-1.9.1.tgz#4467f9146f036f855b764dfb5bf8582bf342c7a4" integrity sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg== dependencies: color-name "^1.0.0" @@ -2317,7 +2313,7 @@ color-string@^1.9.0: color@^4.2.3: version "4.2.3" - resolved "https://registry.npmjs.org/color/-/color-4.2.3.tgz#d781ecb5e57224ee43ea9627560107c0e0c6463a" + resolved "https://registry.yarnpkg.com/color/-/color-4.2.3.tgz#d781ecb5e57224ee43ea9627560107c0e0c6463a" integrity sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A== dependencies: color-convert "^2.0.1" @@ -2325,27 +2321,27 @@ color@^4.2.3: colord@^2.9.1: version "2.9.3" - resolved "https://registry.npmjs.org/colord/-/colord-2.9.3.tgz#4f8ce919de456f1d5c1c368c307fe20f3e59fb43" + resolved "https://registry.yarnpkg.com/colord/-/colord-2.9.3.tgz#4f8ce919de456f1d5c1c368c307fe20f3e59fb43" integrity sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw== colorette@^2.0.10, colorette@^2.0.14, colorette@^2.0.7: version "2.0.20" - resolved "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz#9eb793e6833067f7235902fcd3b09917a000a95a" + resolved "https://registry.yarnpkg.com/colorette/-/colorette-2.0.20.tgz#9eb793e6833067f7235902fcd3b09917a000a95a" integrity sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w== commander@^2.20.0, commander@^2.20.3: version "2.20.3" - resolved "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" + resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ== commander@^7.0.0, commander@^7.2.0: version "7.2.0" - resolved "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz#a36cb57d0b501ce108e4d20559a150a391d97ab7" + resolved "https://registry.yarnpkg.com/commander/-/commander-7.2.0.tgz#a36cb57d0b501ce108e4d20559a150a391d97ab7" integrity sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw== commander@^8.3.0: version "8.3.0" - resolved "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz#4837ea1b2da67b9c616a67afbb0fafee567bca66" + resolved "https://registry.yarnpkg.com/commander/-/commander-8.3.0.tgz#4837ea1b2da67b9c616a67afbb0fafee567bca66" integrity sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww== commondir@^1.0.1: @@ -2355,14 +2351,14 @@ commondir@^1.0.1: compressible@~2.0.16: version "2.0.18" - resolved "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz#af53cca6b070d4c3c0750fbd77286a6d7cc46fba" + resolved "https://registry.yarnpkg.com/compressible/-/compressible-2.0.18.tgz#af53cca6b070d4c3c0750fbd77286a6d7cc46fba" integrity sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg== dependencies: mime-db ">= 1.43.0 < 2" compression@^1.7.4: version "1.7.4" - resolved "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz#95523eff170ca57c29a0ca41e6fe131f41e5bb8f" + resolved "https://registry.yarnpkg.com/compression/-/compression-1.7.4.tgz#95523eff170ca57c29a0ca41e6fe131f41e5bb8f" integrity sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ== dependencies: accepts "~1.3.5" @@ -2375,17 +2371,17 @@ compression@^1.7.4: compute-scroll-into-view@^1.0.20: version "1.0.20" - resolved "https://registry.npmjs.org/compute-scroll-into-view/-/compute-scroll-into-view-1.0.20.tgz#1768b5522d1172754f5d0c9b02de3af6be506a43" + resolved "https://registry.yarnpkg.com/compute-scroll-into-view/-/compute-scroll-into-view-1.0.20.tgz#1768b5522d1172754f5d0c9b02de3af6be506a43" integrity sha512-UCB0ioiyj8CRjtrvaceBLqqhZCVP+1B8+NWQhmdsm0VXOJtobBCf1dBQmebCCo34qZmUwZfIH2MZLqNHazrfjg== concat-map@0.0.1: version "0.0.1" - resolved "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" + resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg== conf@^10.2.0: version "10.2.0" - resolved "https://registry.npmjs.org/conf/-/conf-10.2.0.tgz#838e757be963f1a2386dfe048a98f8f69f7b55d6" + resolved "https://registry.yarnpkg.com/conf/-/conf-10.2.0.tgz#838e757be963f1a2386dfe048a98f8f69f7b55d6" integrity sha512-8fLl9F04EJqjSqH+QjITQfJF8BrOVaYr1jewVgSRAEWePfxT0sku4w2hrGQ60BC/TNLGQ2pgxNlTbWQmMPFvXg== dependencies: ajv "^8.6.3" @@ -2401,46 +2397,46 @@ conf@^10.2.0: connect-history-api-fallback@^1.6.0: version "1.6.0" - resolved "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-1.6.0.tgz#8b32089359308d111115d81cad3fceab888f97bc" + resolved "https://registry.yarnpkg.com/connect-history-api-fallback/-/connect-history-api-fallback-1.6.0.tgz#8b32089359308d111115d81cad3fceab888f97bc" integrity sha512-e54B99q/OUoH64zYYRf3HBP5z24G38h5D3qXu23JGRoigpX5Ss4r9ZnDk3g0Z8uQC2x2lPaJ+UlWBc1ZWBWdLg== console-table-printer@^2.11.2: version "2.11.2" - resolved "https://registry.npmjs.org/console-table-printer/-/console-table-printer-2.11.2.tgz#549757033a7e3cde7e26e030038c9392ce600ee5" + resolved "https://registry.yarnpkg.com/console-table-printer/-/console-table-printer-2.11.2.tgz#549757033a7e3cde7e26e030038c9392ce600ee5" integrity sha512-uuUHie0sfPP542TKGzPFal0W1wo1beuKAqIZdaavcONx8OoqdnJRKjkinbRTOta4FaCa1RcIL+7mMJWX3pQGVg== dependencies: simple-wcswidth "^1.0.1" content-disposition@0.5.4: version "0.5.4" - resolved "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz#8b82b4efac82512a02bb0b1dcec9d2c5e8eb5bfe" + resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.4.tgz#8b82b4efac82512a02bb0b1dcec9d2c5e8eb5bfe" integrity sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ== dependencies: safe-buffer "5.2.1" content-type@~1.0.4, content-type@~1.0.5: version "1.0.5" - resolved "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz#8b773162656d1d1086784c8f23a54ce6d73d7918" + resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.5.tgz#8b773162656d1d1086784c8f23a54ce6d73d7918" integrity sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA== convert-source-map@^1.5.0: version "1.9.0" - resolved "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz#7faae62353fb4213366d0ca98358d22e8368b05f" + resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.9.0.tgz#7faae62353fb4213366d0ca98358d22e8368b05f" integrity sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A== cookie-signature@1.0.6: version "1.0.6" - resolved "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c" + resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c" integrity sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ== cookie@0.5.0: version "0.5.0" - resolved "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz#d1f5d71adec6558c58f389987c366aa47e994f8b" + resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.5.0.tgz#d1f5d71adec6558c58f389987c366aa47e994f8b" integrity sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw== cosmiconfig@^7.0.0: version "7.1.0" - resolved "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz#1443b9afa596b670082ea46cbd8f6a62b84635f6" + resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-7.1.0.tgz#1443b9afa596b670082ea46cbd8f6a62b84635f6" integrity sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA== dependencies: "@types/parse-json" "^4.0.0" @@ -2451,7 +2447,7 @@ cosmiconfig@^7.0.0: cross-spawn@^7.0.3: version "7.0.3" - resolved "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== dependencies: path-key "^3.1.0" @@ -2460,24 +2456,24 @@ cross-spawn@^7.0.3: crypt@0.0.2: version "0.0.2" - resolved "https://registry.npmjs.org/crypt/-/crypt-0.0.2.tgz#88d7ff7ec0dfb86f713dc87bbb42d044d3e6c41b" + resolved "https://registry.yarnpkg.com/crypt/-/crypt-0.0.2.tgz#88d7ff7ec0dfb86f713dc87bbb42d044d3e6c41b" integrity sha512-mCxBlsHFYh9C+HVpiEacem8FEBnMXgU9gy4zmNC+SXAZNB/1idgp/aulFJ4FgCi7GPEVbfyng092GqL2k2rmow== css-blank-pseudo@^6.0.0: version "6.0.0" - resolved "https://registry.npmjs.org/css-blank-pseudo/-/css-blank-pseudo-6.0.0.tgz#2bc6f812a5f60296c04c55b1696bad4300dcdbcc" + resolved "https://registry.yarnpkg.com/css-blank-pseudo/-/css-blank-pseudo-6.0.0.tgz#2bc6f812a5f60296c04c55b1696bad4300dcdbcc" integrity sha512-VbfLlOWO7sBHBTn6pwDQzc07Z0SDydgDBfNfCE0nvrehdBNv9RKsuupIRa/qal0+fBZhAALyQDPMKz5lnvcchw== dependencies: postcss-selector-parser "^6.0.13" css-declaration-sorter@^6.3.1: version "6.4.1" - resolved "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-6.4.1.tgz#28beac7c20bad7f1775be3a7129d7eae409a3a71" + resolved "https://registry.yarnpkg.com/css-declaration-sorter/-/css-declaration-sorter-6.4.1.tgz#28beac7c20bad7f1775be3a7129d7eae409a3a71" integrity sha512-rtdthzxKuyq6IzqX6jEcIzQF/YqccluefyCYheovBOLhFT/drQA9zj/UbRAa9J7C0o6EG6u3E6g+vKkay7/k3g== css-has-pseudo@^6.0.0: version "6.0.0" - resolved "https://registry.npmjs.org/css-has-pseudo/-/css-has-pseudo-6.0.0.tgz#b8c8f39a19bc83c5be59fd251510a7e443c47968" + resolved "https://registry.yarnpkg.com/css-has-pseudo/-/css-has-pseudo-6.0.0.tgz#b8c8f39a19bc83c5be59fd251510a7e443c47968" integrity sha512-X+r+JBuoO37FBOWVNhVJhxtSBUFHgHbrcc0CjFT28JEdOw1qaDwABv/uunyodUuSy2hMPe9j/HjssxSlvUmKjg== dependencies: "@csstools/selector-specificity" "^3.0.0" @@ -2486,7 +2482,7 @@ css-has-pseudo@^6.0.0: css-loader@^5.2.7: version "5.2.7" - resolved "https://registry.npmjs.org/css-loader/-/css-loader-5.2.7.tgz#9b9f111edf6fb2be5dc62525644cbc9c232064ae" + resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-5.2.7.tgz#9b9f111edf6fb2be5dc62525644cbc9c232064ae" integrity sha512-Q7mOvpBNBG7YrVGMxRxcBJZFL75o+cH2abNASdibkj/fffYD8qWbInZrD0S9ccI6vZclF3DsHE7njGlLtaHbhg== dependencies: icss-utils "^5.1.0" @@ -2502,7 +2498,7 @@ css-loader@^5.2.7: css-minimizer-webpack-plugin@^5.0.0: version "5.0.1" - resolved "https://registry.npmjs.org/css-minimizer-webpack-plugin/-/css-minimizer-webpack-plugin-5.0.1.tgz#33effe662edb1a0bf08ad633c32fa75d0f7ec565" + resolved "https://registry.yarnpkg.com/css-minimizer-webpack-plugin/-/css-minimizer-webpack-plugin-5.0.1.tgz#33effe662edb1a0bf08ad633c32fa75d0f7ec565" integrity sha512-3caImjKFQkS+ws1TGcFn0V1HyDJFq1Euy589JlD6/3rV2kj+w7r5G9WDMgSHvpvXHNZ2calVypZWuEDQd9wfLg== dependencies: "@jridgewell/trace-mapping" "^0.3.18" @@ -2514,12 +2510,12 @@ css-minimizer-webpack-plugin@^5.0.0: css-prefers-color-scheme@^9.0.0: version "9.0.0" - resolved "https://registry.npmjs.org/css-prefers-color-scheme/-/css-prefers-color-scheme-9.0.0.tgz#7e9b74062655ea15490e359cb456a3b9f4c93327" + resolved "https://registry.yarnpkg.com/css-prefers-color-scheme/-/css-prefers-color-scheme-9.0.0.tgz#7e9b74062655ea15490e359cb456a3b9f4c93327" integrity sha512-03QGAk/FXIRseDdLb7XAiu6gidQ0Nd8945xuM7VFVPpc6goJsG9uIO8xQjTxwbPdPIIV4o4AJoOJyt8gwDl67g== css-select@^4.1.3: version "4.3.0" - resolved "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz#db7129b2846662fd8628cfc496abb2b59e41529b" + resolved "https://registry.yarnpkg.com/css-select/-/css-select-4.3.0.tgz#db7129b2846662fd8628cfc496abb2b59e41529b" integrity sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ== dependencies: boolbase "^1.0.0" @@ -2530,7 +2526,7 @@ css-select@^4.1.3: css-select@^5.1.0: version "5.1.0" - resolved "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz#b8ebd6554c3637ccc76688804ad3f6a6fdaea8a6" + resolved "https://registry.yarnpkg.com/css-select/-/css-select-5.1.0.tgz#b8ebd6554c3637ccc76688804ad3f6a6fdaea8a6" integrity sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg== dependencies: boolbase "^1.0.0" @@ -2541,7 +2537,7 @@ css-select@^5.1.0: css-tree@^2.2.1: version "2.3.1" - resolved "https://registry.npmjs.org/css-tree/-/css-tree-2.3.1.tgz#10264ce1e5442e8572fc82fbe490644ff54b5c20" + resolved "https://registry.yarnpkg.com/css-tree/-/css-tree-2.3.1.tgz#10264ce1e5442e8572fc82fbe490644ff54b5c20" integrity sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw== dependencies: mdn-data "2.0.30" @@ -2549,7 +2545,7 @@ css-tree@^2.2.1: css-tree@~2.2.0: version "2.2.1" - resolved "https://registry.npmjs.org/css-tree/-/css-tree-2.2.1.tgz#36115d382d60afd271e377f9c5f67d02bd48c032" + resolved "https://registry.yarnpkg.com/css-tree/-/css-tree-2.2.1.tgz#36115d382d60afd271e377f9c5f67d02bd48c032" integrity sha512-OA0mILzGc1kCOCSJerOeqDxDQ4HOh+G8NbOJFOTgOCzpw7fCBubk0fEyxp8AgOL/jvLgYA/uV0cMbe43ElF1JA== dependencies: mdn-data "2.0.28" @@ -2557,27 +2553,27 @@ css-tree@~2.2.0: css-what@^6.0.1, css-what@^6.1.0: version "6.1.0" - resolved "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz#fb5effcf76f1ddea2c81bdfaa4de44e79bac70f4" + resolved "https://registry.yarnpkg.com/css-what/-/css-what-6.1.0.tgz#fb5effcf76f1ddea2c81bdfaa4de44e79bac70f4" integrity sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw== cssdb@^7.7.0: - version "7.7.0" - resolved "https://registry.npmjs.org/cssdb/-/cssdb-7.7.0.tgz#8a62f1c825c019134e7830729f050c29e3eca95e" - integrity sha512-1hN+I3r4VqSNQ+OmMXxYexnumbOONkSil0TWMebVXHtzYW4tRRPovUNHPHj2d4nrgOuYJ8Vs3XwvywsuwwXNNA== + version "7.7.1" + resolved "https://registry.yarnpkg.com/cssdb/-/cssdb-7.7.1.tgz#759e333f516e47f26dd2c7be06147d4f4716356d" + integrity sha512-kM+Fs0BFyhJNeE6wbOrlnRsugRdL6vn7QcON0aBDZ7XRd7RI2pMlk+nxoHuTb4Et+aBobXgK0I+6NGLA0LLgTw== cssesc@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz#37741919903b868565e1c09ea747445cd18983ee" + resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-3.0.0.tgz#37741919903b868565e1c09ea747445cd18983ee" integrity sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg== cssfilter@0.0.10: version "0.0.10" - resolved "https://registry.npmjs.org/cssfilter/-/cssfilter-0.0.10.tgz#c6d2672632a2e5c83e013e6864a42ce8defd20ae" + resolved "https://registry.yarnpkg.com/cssfilter/-/cssfilter-0.0.10.tgz#c6d2672632a2e5c83e013e6864a42ce8defd20ae" integrity sha512-FAaLDaplstoRsDR8XGYH51znUN0UY7nMc6Z9/fvE8EXGwvJE9hu7W2vHwx1+bd6gCYnln9nLbzxFTrcO9YQDZw== cssnano-preset-default@^6.0.1: version "6.0.1" - resolved "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-6.0.1.tgz#2a93247140d214ddb9f46bc6a3562fa9177fe301" + resolved "https://registry.yarnpkg.com/cssnano-preset-default/-/cssnano-preset-default-6.0.1.tgz#2a93247140d214ddb9f46bc6a3562fa9177fe301" integrity sha512-7VzyFZ5zEB1+l1nToKyrRkuaJIx0zi/1npjvZfbBwbtNTzhLtlvYraK/7/uqmX2Wb2aQtd983uuGw79jAjLSuQ== dependencies: css-declaration-sorter "^6.3.1" @@ -2612,12 +2608,12 @@ cssnano-preset-default@^6.0.1: cssnano-utils@^4.0.0: version "4.0.0" - resolved "https://registry.npmjs.org/cssnano-utils/-/cssnano-utils-4.0.0.tgz#d1da885ec04003ab19505ff0e62e029708d36b08" + resolved "https://registry.yarnpkg.com/cssnano-utils/-/cssnano-utils-4.0.0.tgz#d1da885ec04003ab19505ff0e62e029708d36b08" integrity sha512-Z39TLP+1E0KUcd7LGyF4qMfu8ZufI0rDzhdyAMsa/8UyNUU8wpS0fhdBxbQbv32r64ea00h4878gommRVg2BHw== cssnano@^6.0.1: version "6.0.1" - resolved "https://registry.npmjs.org/cssnano/-/cssnano-6.0.1.tgz#87c38c4cd47049c735ab756d7e77ac3ca855c008" + resolved "https://registry.yarnpkg.com/cssnano/-/cssnano-6.0.1.tgz#87c38c4cd47049c735ab756d7e77ac3ca855c008" integrity sha512-fVO1JdJ0LSdIGJq68eIxOqFpIJrZqXUsBt8fkrBcztCQqAjQD51OhZp7tc0ImcbwXD4k7ny84QTV90nZhmqbkg== dependencies: cssnano-preset-default "^6.0.1" @@ -2625,19 +2621,19 @@ cssnano@^6.0.1: csso@^5.0.5: version "5.0.5" - resolved "https://registry.npmjs.org/csso/-/csso-5.0.5.tgz#f9b7fe6cc6ac0b7d90781bb16d5e9874303e2ca6" + resolved "https://registry.yarnpkg.com/csso/-/csso-5.0.5.tgz#f9b7fe6cc6ac0b7d90781bb16d5e9874303e2ca6" integrity sha512-0LrrStPOdJj+SPCCrGhzryycLjwcgUSHBtxNA8aIDxf0GLsRh1cKYhB00Gd1lDOS4yGH69+SNn13+TWbVHETFQ== dependencies: css-tree "~2.2.0" csstype@^3.0.2: version "3.1.2" - resolved "https://registry.npmjs.org/csstype/-/csstype-3.1.2.tgz#1d4bf9d572f11c14031f0436e1c10bc1f571f50b" + resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.2.tgz#1d4bf9d572f11c14031f0436e1c10bc1f571f50b" integrity sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ== d@1, d@^1.0.1: version "1.0.1" - resolved "https://registry.npmjs.org/d/-/d-1.0.1.tgz#8698095372d58dbee346ffd0c7093f99f8f9eb5a" + resolved "https://registry.yarnpkg.com/d/-/d-1.0.1.tgz#8698095372d58dbee346ffd0c7093f99f8f9eb5a" integrity sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA== dependencies: es5-ext "^0.10.50" @@ -2645,38 +2641,38 @@ d@1, d@^1.0.1: dataloader@^2.1.0: version "2.2.2" - resolved "https://registry.npmjs.org/dataloader/-/dataloader-2.2.2.tgz#216dc509b5abe39d43a9b9d97e6e5e473dfbe3e0" + resolved "https://registry.yarnpkg.com/dataloader/-/dataloader-2.2.2.tgz#216dc509b5abe39d43a9b9d97e6e5e473dfbe3e0" integrity sha512-8YnDaaf7N3k/q5HnTJVuzSyLETjoZjVmHc4AeKAzOvKHEFQKcn64OKBfzHYtE9zGjctNM7V9I0MfnUVLpi7M5g== date-fns@^2.29.3, date-fns@^2.30.0: version "2.30.0" - resolved "https://registry.npmjs.org/date-fns/-/date-fns-2.30.0.tgz#f367e644839ff57894ec6ac480de40cae4b0f4d0" + resolved "https://registry.yarnpkg.com/date-fns/-/date-fns-2.30.0.tgz#f367e644839ff57894ec6ac480de40cae4b0f4d0" integrity sha512-fnULvOpxnC5/Vg3NCiWelDsLiUc9bRwAPs/+LfTLNvetFCtCTN+yQz15C/fs4AwX1R9K5GLtLfn8QW+dWisaAw== dependencies: "@babel/runtime" "^7.21.0" dateformat@^4.6.3: version "4.6.3" - resolved "https://registry.npmjs.org/dateformat/-/dateformat-4.6.3.tgz#556fa6497e5217fedb78821424f8a1c22fa3f4b5" + resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-4.6.3.tgz#556fa6497e5217fedb78821424f8a1c22fa3f4b5" integrity sha512-2P0p0pFGzHS5EMnhdxQi7aJN+iMheud0UhG4dlE1DLAlvL8JHjJJTX/CSm4JXwV0Ka5nGk3zC5mcb5bUQUxxMA== debounce-fn@^4.0.0: version "4.0.0" - resolved "https://registry.npmjs.org/debounce-fn/-/debounce-fn-4.0.0.tgz#ed76d206d8a50e60de0dd66d494d82835ffe61c7" + resolved "https://registry.yarnpkg.com/debounce-fn/-/debounce-fn-4.0.0.tgz#ed76d206d8a50e60de0dd66d494d82835ffe61c7" integrity sha512-8pYCQiL9Xdcg0UPSD3d+0KMlOjp+KGU5EPwYddgzQ7DATsg4fuUDjQtsYLmWjnk2obnNHgV3vE2Y4jejSOJVBQ== dependencies: mimic-fn "^3.0.0" debug@2, debug@2.6.9: version "2.6.9" - resolved "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" + resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== dependencies: ms "2.0.0" debug@3.1.0: version "3.1.0" - resolved "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261" + resolved "https://registry.yarnpkg.com/debug/-/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261" integrity sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g== dependencies: ms "2.0.0" @@ -2690,21 +2686,21 @@ debug@4, debug@4.x, debug@^4.3.4: debug@^3.2.6: version "3.2.7" - resolved "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz#72580b7e9145fb39b6676f9c5e5fb100b934179a" + resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.7.tgz#72580b7e9145fb39b6676f9c5e5fb100b934179a" integrity sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ== dependencies: ms "^2.1.1" decompress-response@^6.0.0: version "6.0.0" - resolved "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz#ca387612ddb7e104bd16d85aab00d5ecf09c66fc" + resolved "https://registry.yarnpkg.com/decompress-response/-/decompress-response-6.0.0.tgz#ca387612ddb7e104bd16d85aab00d5ecf09c66fc" integrity sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ== dependencies: mimic-response "^3.1.0" deep-equal@^2.2.0: version "2.2.2" - resolved "https://registry.npmjs.org/deep-equal/-/deep-equal-2.2.2.tgz#9b2635da569a13ba8e1cc159c2f744071b115daa" + resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-2.2.2.tgz#9b2635da569a13ba8e1cc159c2f744071b115daa" integrity sha512-xjVyBf0w5vH0I42jdAZzOKVldmPgSulmiyPRywoyq7HXC9qdgo17kxJE+rdnif5Tz6+pIrpJI8dCpMNLIGkUiA== dependencies: array-buffer-byte-length "^1.0.0" @@ -2728,7 +2724,7 @@ deep-equal@^2.2.0: deep-extend@^0.6.0: version "0.6.0" - resolved "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac" + resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac" integrity sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA== deepmerge@^4.0.0, deepmerge@^4.2.2, deepmerge@^4.3.1: @@ -2738,7 +2734,7 @@ deepmerge@^4.0.0, deepmerge@^4.2.2, deepmerge@^4.3.1: define-properties@^1.1.3, define-properties@^1.1.4, define-properties@^1.2.0: version "1.2.0" - resolved "https://registry.npmjs.org/define-properties/-/define-properties-1.2.0.tgz#52988570670c9eacedd8064f4a990f2405849bd5" + resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.2.0.tgz#52988570670c9eacedd8064f4a990f2405849bd5" integrity sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA== dependencies: has-property-descriptors "^1.0.0" @@ -2746,39 +2742,39 @@ define-properties@^1.1.3, define-properties@^1.1.4, define-properties@^1.2.0: depd@2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz#b696163cc757560d09cf22cc8fad1571b79e76df" + resolved "https://registry.yarnpkg.com/depd/-/depd-2.0.0.tgz#b696163cc757560d09cf22cc8fad1571b79e76df" integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw== destroy@1.2.0: version "1.2.0" - resolved "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz#4803735509ad8be552934c67df614f94e66fa015" + resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.2.0.tgz#4803735509ad8be552934c67df614f94e66fa015" integrity sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg== detect-libc@^2.0.0, detect-libc@^2.0.1: version "2.0.2" - resolved "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.2.tgz#8ccf2ba9315350e1241b88d0ac3b0e1fbd99605d" + resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-2.0.2.tgz#8ccf2ba9315350e1241b88d0ac3b0e1fbd99605d" integrity sha512-UX6sGumvvqSaXgdKGUsgZWqcUyIXZ/vZTrlRT/iobiKhGL0zL4d3osHj3uqllWJK+i+sixDS/3COVEOFbupFyw== diff@^5.1.0: version "5.1.0" - resolved "https://registry.npmjs.org/diff/-/diff-5.1.0.tgz#bc52d298c5ea8df9194800224445ed43ffc87e40" + resolved "https://registry.yarnpkg.com/diff/-/diff-5.1.0.tgz#bc52d298c5ea8df9194800224445ed43ffc87e40" integrity sha512-D+mk+qE8VC/PAUrlAU34N+VfXev0ghe5ywmpqrawphmVZc1bEfn56uo9qpyGp1p4xpzOHkSW4ztBd6L7Xx4ACw== direction@^1.0.3: version "1.0.4" - resolved "https://registry.npmjs.org/direction/-/direction-1.0.4.tgz#2b86fb686967e987088caf8b89059370d4837442" + resolved "https://registry.yarnpkg.com/direction/-/direction-1.0.4.tgz#2b86fb686967e987088caf8b89059370d4837442" integrity sha512-GYqKi1aH7PJXxdhTeZBFrg8vUBeKXi+cNprXsC1kpJcbcVnV9wBsrOu1cQEdG0WeQwlfHiy3XvnKfIrJ2R0NzQ== dom-converter@^0.2.0: version "0.2.0" - resolved "https://registry.npmjs.org/dom-converter/-/dom-converter-0.2.0.tgz#6721a9daee2e293682955b6afe416771627bb768" + resolved "https://registry.yarnpkg.com/dom-converter/-/dom-converter-0.2.0.tgz#6721a9daee2e293682955b6afe416771627bb768" integrity sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA== dependencies: utila "~0.4" dom-helpers@^5.0.1: version "5.2.1" - resolved "https://registry.npmjs.org/dom-helpers/-/dom-helpers-5.2.1.tgz#d9400536b2bf8225ad98fe052e029451ac40e902" + resolved "https://registry.yarnpkg.com/dom-helpers/-/dom-helpers-5.2.1.tgz#d9400536b2bf8225ad98fe052e029451ac40e902" integrity sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA== dependencies: "@babel/runtime" "^7.8.7" @@ -2786,7 +2782,7 @@ dom-helpers@^5.0.1: dom-serializer@^1.0.1: version "1.4.1" - resolved "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz#de5d41b1aea290215dc45a6dae8adcf1d32e2d30" + resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-1.4.1.tgz#de5d41b1aea290215dc45a6dae8adcf1d32e2d30" integrity sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag== dependencies: domelementtype "^2.0.1" @@ -2795,7 +2791,7 @@ dom-serializer@^1.0.1: dom-serializer@^2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz#e41b802e1eedf9f6cae183ce5e622d789d7d8e53" + resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-2.0.0.tgz#e41b802e1eedf9f6cae183ce5e622d789d7d8e53" integrity sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg== dependencies: domelementtype "^2.3.0" @@ -2804,26 +2800,26 @@ dom-serializer@^2.0.0: domelementtype@^2.0.1, domelementtype@^2.2.0, domelementtype@^2.3.0: version "2.3.0" - resolved "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz#5c45e8e869952626331d7aab326d01daf65d589d" + resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.3.0.tgz#5c45e8e869952626331d7aab326d01daf65d589d" integrity sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw== domhandler@^4.0.0, domhandler@^4.2.0, domhandler@^4.3.1: version "4.3.1" - resolved "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz#8d792033416f59d68bc03a5aa7b018c1ca89279c" + resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-4.3.1.tgz#8d792033416f59d68bc03a5aa7b018c1ca89279c" integrity sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ== dependencies: domelementtype "^2.2.0" domhandler@^5.0.2, domhandler@^5.0.3: version "5.0.3" - resolved "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz#cc385f7f751f1d1fc650c21374804254538c7d31" + resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-5.0.3.tgz#cc385f7f751f1d1fc650c21374804254538c7d31" integrity sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w== dependencies: domelementtype "^2.3.0" domutils@^2.5.2, domutils@^2.8.0: version "2.8.0" - resolved "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz#4437def5db6e2d1f5d6ee859bd95ca7d02048135" + resolved "https://registry.yarnpkg.com/domutils/-/domutils-2.8.0.tgz#4437def5db6e2d1f5d6ee859bd95ca7d02048135" integrity sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A== dependencies: dom-serializer "^1.0.1" @@ -2832,7 +2828,7 @@ domutils@^2.5.2, domutils@^2.8.0: domutils@^3.0.1: version "3.1.0" - resolved "https://registry.npmjs.org/domutils/-/domutils-3.1.0.tgz#c47f551278d3dc4b0b1ab8cbb42d751a6f0d824e" + resolved "https://registry.yarnpkg.com/domutils/-/domutils-3.1.0.tgz#c47f551278d3dc4b0b1ab8cbb42d751a6f0d824e" integrity sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA== dependencies: dom-serializer "^2.0.0" @@ -2841,7 +2837,7 @@ domutils@^3.0.1: dot-case@^3.0.4: version "3.0.4" - resolved "https://registry.npmjs.org/dot-case/-/dot-case-3.0.4.tgz#9b2b670d00a431667a8a75ba29cd1b98809ce751" + resolved "https://registry.yarnpkg.com/dot-case/-/dot-case-3.0.4.tgz#9b2b670d00a431667a8a75ba29cd1b98809ce751" integrity sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w== dependencies: no-case "^3.0.4" @@ -2849,46 +2845,46 @@ dot-case@^3.0.4: dot-prop@^6.0.1: version "6.0.1" - resolved "https://registry.npmjs.org/dot-prop/-/dot-prop-6.0.1.tgz#fc26b3cf142b9e59b74dbd39ed66ce620c681083" + resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-6.0.1.tgz#fc26b3cf142b9e59b74dbd39ed66ce620c681083" integrity sha512-tE7ztYzXHIeyvc7N+hR3oi7FIbf/NIjVP9hmAt3yMXzrQ072/fpjGLx2GxNxGxUl5V73MEqYzioOMoVhGMJ5cA== dependencies: is-obj "^2.0.0" dotenv@^8.6.0: version "8.6.0" - resolved "https://registry.npmjs.org/dotenv/-/dotenv-8.6.0.tgz#061af664d19f7f4d8fc6e4ff9b584ce237adcb8b" + resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-8.6.0.tgz#061af664d19f7f4d8fc6e4ff9b584ce237adcb8b" integrity sha512-IrPdXQsk2BbzvCBGBOTmmSH5SodmqZNt4ERAZDmW4CT+tL8VtvinqywuANaFu4bOMWki16nqf0e4oC0QIaDr/g== duplexer@^0.1.2: version "0.1.2" - resolved "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz#3abe43aef3835f8ae077d136ddce0f276b0400e6" + resolved "https://registry.yarnpkg.com/duplexer/-/duplexer-0.1.2.tgz#3abe43aef3835f8ae077d136ddce0f276b0400e6" integrity sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg== ecdsa-sig-formatter@1.0.11: version "1.0.11" - resolved "https://registry.npmjs.org/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.11.tgz#ae0f0fa2d85045ef14a817daa3ce9acd0489e5bf" + resolved "https://registry.yarnpkg.com/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.11.tgz#ae0f0fa2d85045ef14a817daa3ce9acd0489e5bf" integrity sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ== dependencies: safe-buffer "^5.0.1" ee-first@1.1.1: version "1.1.1" - resolved "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" + resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" integrity sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow== electron-to-chromium@^1.4.477: - version "1.4.478" - resolved "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.478.tgz#687198cfcef9b854a79a229feaa6cd8961206290" - integrity sha512-qjTA8djMXd+ruoODDFGnRCRBpID+AAfYWCyGtYTNhsuwxI19s8q19gbjKTwRS5z/LyVf5wICaIiPQGLekmbJbA== + version "1.4.498" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.498.tgz#cef35341123f62a35ba7084e439c911d25e0d81b" + integrity sha512-4LODxAzKGVy7CJyhhN5mebwe7U2L29P+0G+HUriHnabm0d7LSff8Yn7t+Wq+2/9ze2Fu1dhX7mww090xfv7qXQ== emojis-list@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz#5570662046ad29e2e916e71aae260abdff4f6a78" + resolved "https://registry.yarnpkg.com/emojis-list/-/emojis-list-3.0.0.tgz#5570662046ad29e2e916e71aae260abdff4f6a78" integrity sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q== encodeurl@~1.0.2: version "1.0.2" - resolved "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" + resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" integrity sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w== end-of-stream@^1.1.0, end-of-stream@^1.4.1: @@ -2900,7 +2896,7 @@ end-of-stream@^1.1.0, end-of-stream@^1.4.1: enhanced-resolve@^5.15.0: version "5.15.0" - resolved "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.15.0.tgz#1af946c7d93603eb88e9896cee4904dc012e9c35" + resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.15.0.tgz#1af946c7d93603eb88e9896cee4904dc012e9c35" integrity sha512-LXYT42KJ7lpIKECr2mAXIaMldcNCh/7E0KBKOu4KSfkHmP+mZmSs+8V5gBAqisWBy0OO4W5Oyys0GO1Y8KtdKg== dependencies: graceful-fs "^4.2.4" @@ -2908,34 +2904,34 @@ enhanced-resolve@^5.15.0: entities@^2.0.0: version "2.2.0" - resolved "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz#098dc90ebb83d8dffa089d55256b351d34c4da55" + resolved "https://registry.yarnpkg.com/entities/-/entities-2.2.0.tgz#098dc90ebb83d8dffa089d55256b351d34c4da55" integrity sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A== entities@^4.2.0: version "4.5.0" - resolved "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz#5d268ea5e7113ec74c4d033b79ea5a35a488fb48" + resolved "https://registry.yarnpkg.com/entities/-/entities-4.5.0.tgz#5d268ea5e7113ec74c4d033b79ea5a35a488fb48" integrity sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw== env-paths@^2.2.1: version "2.2.1" - resolved "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz#420399d416ce1fbe9bc0a07c62fa68d67fd0f8f2" + resolved "https://registry.yarnpkg.com/env-paths/-/env-paths-2.2.1.tgz#420399d416ce1fbe9bc0a07c62fa68d67fd0f8f2" integrity sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A== envinfo@^7.7.3: version "7.10.0" - resolved "https://registry.npmjs.org/envinfo/-/envinfo-7.10.0.tgz#55146e3909cc5fe63c22da63fb15b05aeac35b13" + resolved "https://registry.yarnpkg.com/envinfo/-/envinfo-7.10.0.tgz#55146e3909cc5fe63c22da63fb15b05aeac35b13" integrity sha512-ZtUjZO6l5mwTHvc1L9+1q5p/R3wTopcfqMW8r5t8SJSKqeVI/LtajORwRFEKpEFuekjD0VBjwu1HMxL4UalIRw== error-ex@^1.3.1: version "1.3.2" - resolved "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" + resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== dependencies: is-arrayish "^0.2.1" es-get-iterator@^1.1.3: version "1.1.3" - resolved "https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.3.tgz#3ef87523c5d464d41084b2c3c9c214f1199763d6" + resolved "https://registry.yarnpkg.com/es-get-iterator/-/es-get-iterator-1.1.3.tgz#3ef87523c5d464d41084b2c3c9c214f1199763d6" integrity sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw== dependencies: call-bind "^1.0.2" @@ -2950,12 +2946,12 @@ es-get-iterator@^1.1.3: es-module-lexer@^1.2.1: version "1.3.0" - resolved "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.3.0.tgz#6be9c9e0b4543a60cd166ff6f8b4e9dae0b0c16f" + resolved "https://registry.yarnpkg.com/es-module-lexer/-/es-module-lexer-1.3.0.tgz#6be9c9e0b4543a60cd166ff6f8b4e9dae0b0c16f" integrity sha512-vZK7T0N2CBmBOixhmjdqx2gWVbFZ4DXZ/NyRMZVlJXPa7CyFS+/a4QQsDGDQy9ZfEzxFuNEsMLeQJnKP2p5/JA== es5-ext@^0.10.35, es5-ext@^0.10.46, es5-ext@^0.10.50, es5-ext@^0.10.53, es5-ext@^0.10.61, es5-ext@~0.10.14, es5-ext@~0.10.2, es5-ext@~0.10.46: version "0.10.62" - resolved "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.62.tgz#5e6adc19a6da524bf3d1e02bbc8960e5eb49a9a5" + resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.62.tgz#5e6adc19a6da524bf3d1e02bbc8960e5eb49a9a5" integrity sha512-BHLqn0klhEpnOKSrzn/Xsz2UIW8j+cGmo9JLzr8BiUapV8hPL9+FliFqjwr9ngW7jWdnxv6eO+/LqyhJVqgrjA== dependencies: es6-iterator "^2.0.3" @@ -2964,7 +2960,7 @@ es5-ext@^0.10.35, es5-ext@^0.10.46, es5-ext@^0.10.50, es5-ext@^0.10.53, es5-ext@ es6-iterator@^2.0.3: version "2.0.3" - resolved "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz#a7de889141a05a94b0854403b2d0a0fbfa98f3b7" + resolved "https://registry.yarnpkg.com/es6-iterator/-/es6-iterator-2.0.3.tgz#a7de889141a05a94b0854403b2d0a0fbfa98f3b7" integrity sha512-zw4SRzoUkd+cl+ZoE15A9o1oQd920Bb0iOJMQkQhl3jNc03YqVjAhG7scf9C5KWRU/R13Orf588uCC6525o02g== dependencies: d "1" @@ -2973,7 +2969,7 @@ es6-iterator@^2.0.3: es6-symbol@^3.1.1, es6-symbol@^3.1.3: version "3.1.3" - resolved "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.3.tgz#bad5d3c1bcdac28269f4cb331e431c78ac705d18" + resolved "https://registry.yarnpkg.com/es6-symbol/-/es6-symbol-3.1.3.tgz#bad5d3c1bcdac28269f4cb331e431c78ac705d18" integrity sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA== dependencies: d "^1.0.1" @@ -2981,7 +2977,7 @@ es6-symbol@^3.1.1, es6-symbol@^3.1.3: es6-weak-map@^2.0.3: version "2.0.3" - resolved "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-2.0.3.tgz#b6da1f16cc2cc0d9be43e6bdbfc5e7dfcdf31d53" + resolved "https://registry.yarnpkg.com/es6-weak-map/-/es6-weak-map-2.0.3.tgz#b6da1f16cc2cc0d9be43e6bdbfc5e7dfcdf31d53" integrity sha512-p5um32HOTO1kP+w7PRnB+5lQ43Z6muuMuIMffvDN8ZB4GcnjLBV6zGStpbASIMk4DCAvEaamhe2zhyCb/QXXsA== dependencies: d "1" @@ -2991,27 +2987,27 @@ es6-weak-map@^2.0.3: escalade@^3.1.1: version "3.1.1" - resolved "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" + resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== escape-html@~1.0.3: version "1.0.3" - resolved "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" + resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" integrity sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow== escape-string-regexp@^1.0.5: version "1.0.5" - resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" integrity sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg== escape-string-regexp@^4.0.0: version "4.0.0" - resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== eslint-scope@5.1.1: version "5.1.1" - resolved "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c" + resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c" integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw== dependencies: esrecurse "^4.3.0" @@ -3019,29 +3015,29 @@ eslint-scope@5.1.1: esrecurse@^4.3.0: version "4.3.0" - resolved "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz#7ad7964d679abb28bee72cec63758b1c5d2c9921" + resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.3.0.tgz#7ad7964d679abb28bee72cec63758b1c5d2c9921" integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag== dependencies: estraverse "^5.2.0" estraverse@^4.1.1: version "4.3.0" - resolved "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d" + resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d" integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw== estraverse@^5.2.0: version "5.3.0" - resolved "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz#2eea5290702f26ab8fe5370370ff86c965d21123" + resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.3.0.tgz#2eea5290702f26ab8fe5370370ff86c965d21123" integrity sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA== etag@~1.8.1: version "1.8.1" - resolved "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" + resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" integrity sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg== event-emitter@^0.3.5: version "0.3.5" - resolved "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz#df8c69eef1647923c7157b9ce83840610b02cc39" + resolved "https://registry.yarnpkg.com/event-emitter/-/event-emitter-0.3.5.tgz#df8c69eef1647923c7157b9ce83840610b02cc39" integrity sha512-D9rRn9y7kLPnJ+hMq7S/nhvoKwwvVJahBi2BPmx3bvbsEdK3W9ii8cBSGjP+72/LnM4n6fo3+dkCX5FeTQruXA== dependencies: d "1" @@ -3049,34 +3045,34 @@ event-emitter@^0.3.5: event-target-shim@^5.0.0: version "5.0.1" - resolved "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz#5d4d3ebdf9583d63a5333ce2deb7480ab2b05789" + resolved "https://registry.yarnpkg.com/event-target-shim/-/event-target-shim-5.0.1.tgz#5d4d3ebdf9583d63a5333ce2deb7480ab2b05789" integrity sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ== events@^3.2.0, events@^3.3.0: version "3.3.0" - resolved "https://registry.npmjs.org/events/-/events-3.3.0.tgz#31a95ad0a924e2d2c419a813aeb2c4e878ea7400" + resolved "https://registry.yarnpkg.com/events/-/events-3.3.0.tgz#31a95ad0a924e2d2c419a813aeb2c4e878ea7400" integrity sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q== expand-template@^2.0.3: version "2.0.3" - resolved "https://registry.npmjs.org/expand-template/-/expand-template-2.0.3.tgz#6e14b3fcee0f3a6340ecb57d2e8918692052a47c" + resolved "https://registry.yarnpkg.com/expand-template/-/expand-template-2.0.3.tgz#6e14b3fcee0f3a6340ecb57d2e8918692052a47c" integrity sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg== express-fileupload@1.4.0: version "1.4.0" - resolved "https://registry.npmjs.org/express-fileupload/-/express-fileupload-1.4.0.tgz#be9d70a881d6c2b1ce668df86e4f89ddbf238ec7" + resolved "https://registry.yarnpkg.com/express-fileupload/-/express-fileupload-1.4.0.tgz#be9d70a881d6c2b1ce668df86e4f89ddbf238ec7" integrity sha512-RjzLCHxkv3umDeZKeFeMg8w7qe0V09w3B7oGZprr/oO2H/ISCgNzuqzn7gV3HRWb37GjRk429CCpSLS2KNTqMQ== dependencies: busboy "^1.6.0" express-rate-limit@^5.5.1: version "5.5.1" - resolved "https://registry.npmjs.org/express-rate-limit/-/express-rate-limit-5.5.1.tgz#110c23f6a65dfa96ab468eda95e71697bc6987a2" + resolved "https://registry.yarnpkg.com/express-rate-limit/-/express-rate-limit-5.5.1.tgz#110c23f6a65dfa96ab468eda95e71697bc6987a2" integrity sha512-MTjE2eIbHv5DyfuFz4zLYWxpqVhEhkTiwFGuB74Q9CSou2WHO52nlE5y3Zlg6SIsiYUIPj6ifFxnkPz6O3sIUg== express@^4.18.2: version "4.18.2" - resolved "https://registry.npmjs.org/express/-/express-4.18.2.tgz#3fabe08296e930c796c19e3c516979386ba9fd59" + resolved "https://registry.yarnpkg.com/express/-/express-4.18.2.tgz#3fabe08296e930c796c19e3c516979386ba9fd59" integrity sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ== dependencies: accepts "~1.3.8" @@ -3113,34 +3109,34 @@ express@^4.18.2: ext@^1.1.2: version "1.7.0" - resolved "https://registry.npmjs.org/ext/-/ext-1.7.0.tgz#0ea4383c0103d60e70be99e9a7f11027a33c4f5f" + resolved "https://registry.yarnpkg.com/ext/-/ext-1.7.0.tgz#0ea4383c0103d60e70be99e9a7f11027a33c4f5f" integrity sha512-6hxeJYaL110a9b5TEJSj0gojyHQAmA2ch5Os+ySCiA1QGdS697XWY1pzsrSjqA9LDEEgdB/KypIlR59RcLuHYw== dependencies: type "^2.7.2" fast-copy@^3.0.0: version "3.0.1" - resolved "https://registry.npmjs.org/fast-copy/-/fast-copy-3.0.1.tgz#9e89ef498b8c04c1cd76b33b8e14271658a732aa" + resolved "https://registry.yarnpkg.com/fast-copy/-/fast-copy-3.0.1.tgz#9e89ef498b8c04c1cd76b33b8e14271658a732aa" integrity sha512-Knr7NOtK3HWRYGtHoJrjkaWepqT8thIVGAwt0p0aUs1zqkAzXZV4vo9fFNwyb5fcqK1GKYFYxldQdIDVKhUAfA== fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: version "3.1.3" - resolved "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" + resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== fast-json-stable-stringify@^2.0.0: version "2.1.0" - resolved "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" + resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== -fast-redact@^3.0.0: +fast-redact@^3.1.1: version "3.3.0" - resolved "https://registry.npmjs.org/fast-redact/-/fast-redact-3.3.0.tgz#7c83ce3a7be4898241a46560d51de10f653f7634" + resolved "https://registry.yarnpkg.com/fast-redact/-/fast-redact-3.3.0.tgz#7c83ce3a7be4898241a46560d51de10f653f7634" integrity sha512-6T5V1QK1u4oF+ATxs1lWUmlEk6P2T9HqJG3e2DnHOdVgZy2rFJBoEnrIedcTXlkAHU/zKC+7KETJ+KGGKwxgMQ== -fast-safe-stringify@^2.0.8, fast-safe-stringify@^2.1.1: +fast-safe-stringify@^2.1.1: version "2.1.1" - resolved "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz#c406a83b6e70d9e35ce3b30a81141df30aeba884" + resolved "https://registry.yarnpkg.com/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz#c406a83b6e70d9e35ce3b30a81141df30aeba884" integrity sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA== fast-xml-parser@4.2.5: @@ -3152,7 +3148,7 @@ fast-xml-parser@4.2.5: fastest-levenshtein@^1.0.12: version "1.0.16" - resolved "https://registry.npmjs.org/fastest-levenshtein/-/fastest-levenshtein-1.0.16.tgz#210e61b6ff181de91ea9b3d1b84fdedd47e034e5" + resolved "https://registry.yarnpkg.com/fastest-levenshtein/-/fastest-levenshtein-1.0.16.tgz#210e61b6ff181de91ea9b3d1b84fdedd47e034e5" integrity sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg== fd-slicer@~1.1.0: @@ -3164,7 +3160,7 @@ fd-slicer@~1.1.0: file-loader@^6.2.0: version "6.2.0" - resolved "https://registry.npmjs.org/file-loader/-/file-loader-6.2.0.tgz#baef7cf8e1840df325e4390b4484879480eebe4d" + resolved "https://registry.yarnpkg.com/file-loader/-/file-loader-6.2.0.tgz#baef7cf8e1840df325e4390b4484879480eebe4d" integrity sha512-qo3glqyTa61Ytg4u73GultjHGjdRyig3tG6lPtyX/jOEJvHif9uB0/OCI2Kif6ctF3caQTW2G5gym21oAsI4pw== dependencies: loader-utils "^2.0.0" @@ -3172,7 +3168,7 @@ file-loader@^6.2.0: file-type@16.5.4: version "16.5.4" - resolved "https://registry.npmjs.org/file-type/-/file-type-16.5.4.tgz#474fb4f704bee427681f98dd390058a172a6c2fd" + resolved "https://registry.yarnpkg.com/file-type/-/file-type-16.5.4.tgz#474fb4f704bee427681f98dd390058a172a6c2fd" integrity sha512-/yFHK0aGjFEgDJjEKP0pWCplsPFPhwyfwevf/pVxiN0tmE4L9LmwWxWukdJSHdoCli4VgQLehjJtwQBnqmsKcw== dependencies: readable-web-to-node-stream "^3.0.0" @@ -3181,14 +3177,14 @@ file-type@16.5.4: fill-range@^7.0.1: version "7.0.1" - resolved "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40" + resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40" integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ== dependencies: to-regex-range "^5.0.1" finalhandler@1.2.0: version "1.2.0" - resolved "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz#7d23fe5731b207b4640e4fcd00aec1f9207a7b32" + resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.2.0.tgz#7d23fe5731b207b4640e4fcd00aec1f9207a7b32" integrity sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg== dependencies: debug "2.6.9" @@ -3210,7 +3206,7 @@ find-cache-dir@^3.3.2: find-root@^1.1.0: version "1.1.0" - resolved "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz#abcfc8ba76f708c42a97b3d685b7e9450bfb9ce4" + resolved "https://registry.yarnpkg.com/find-root/-/find-root-1.1.0.tgz#abcfc8ba76f708c42a97b3d685b7e9450bfb9ce4" integrity sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng== find-up@4.1.0, find-up@^4.0.0: @@ -3223,50 +3219,45 @@ find-up@4.1.0, find-up@^4.0.0: find-up@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73" integrity sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg== dependencies: locate-path "^3.0.0" flatley@^5.2.0: version "5.2.0" - resolved "https://registry.npmjs.org/flatley/-/flatley-5.2.0.tgz#3a645837c669be8d978335e37ae3afffcfbdedb7" + resolved "https://registry.yarnpkg.com/flatley/-/flatley-5.2.0.tgz#3a645837c669be8d978335e37ae3afffcfbdedb7" integrity sha512-vsb0/03uIHu7/3jRqABweblFUJMLokz1uMrcgFlvx6OAr6V3FiSic2iXeiJCj+cciTiQeumSDsIFAAnN1yvu4w== dependencies: is-buffer "^1.1.6" -flatstr@^1.0.12: - version "1.0.12" - resolved "https://registry.npmjs.org/flatstr/-/flatstr-1.0.12.tgz#c2ba6a08173edbb6c9640e3055b95e287ceb5931" - integrity sha512-4zPxDyhCyiN2wIAtSLI6gc82/EjqZc1onI4Mz/l0pWrAlsSfYH/2ZIcU+e3oA2wDwbzIWNKwa23F8rh6+DRWkw== - focus-trap@^6.9.2: version "6.9.4" - resolved "https://registry.npmjs.org/focus-trap/-/focus-trap-6.9.4.tgz#436da1a1d935c48b97da63cd8f361c6f3aa16444" + resolved "https://registry.yarnpkg.com/focus-trap/-/focus-trap-6.9.4.tgz#436da1a1d935c48b97da63cd8f361c6f3aa16444" integrity sha512-v2NTsZe2FF59Y+sDykKY+XjqZ0cPfhq/hikWVL88BqLivnNiEffAsac6rP6H45ff9wG9LL5ToiDqrLEP9GX9mw== dependencies: tabbable "^5.3.3" for-each@^0.3.3: version "0.3.3" - resolved "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz#69b447e88a0a5d32c3e7084f3f1710034b21376e" + resolved "https://registry.yarnpkg.com/for-each/-/for-each-0.3.3.tgz#69b447e88a0a5d32c3e7084f3f1710034b21376e" integrity sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw== dependencies: is-callable "^1.1.3" forwarded@0.2.0: version "0.2.0" - resolved "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz#2269936428aad4c15c7ebe9779a84bf0b2a81811" + resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.2.0.tgz#2269936428aad4c15c7ebe9779a84bf0b2a81811" integrity sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow== fraction.js@^4.2.0: - version "4.2.0" - resolved "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz#448e5109a313a3527f5a3ab2119ec4cf0e0e2950" - integrity sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA== + version "4.2.1" + resolved "https://registry.yarnpkg.com/fraction.js/-/fraction.js-4.2.1.tgz#14b4cc886575a5684f8d5fd5759c5db376bb7bb8" + integrity sha512-/KxoyCnPM0GwYI4NN0Iag38Tqt+od3/mLuguepLgCAKPn0ZhC544nssAW0tG2/00zXEYl9W+7hwAIpLHo6Oc7Q== fresh@0.5.2: version "0.5.2" - resolved "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" + resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" integrity sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q== fs-constants@^1.0.0: @@ -3276,7 +3267,7 @@ fs-constants@^1.0.0: fs-extra@^10.1.0: version "10.1.0" - resolved "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz#02873cfbc4084dde127eaa5f9905eef2325d1abf" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-10.1.0.tgz#02873cfbc4084dde127eaa5f9905eef2325d1abf" integrity sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ== dependencies: graceful-fs "^4.2.0" @@ -3285,32 +3276,32 @@ fs-extra@^10.1.0: fs-monkey@^1.0.4: version "1.0.4" - resolved "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.4.tgz#ee8c1b53d3fe8bb7e5d2c5c5dfc0168afdd2f747" + resolved "https://registry.yarnpkg.com/fs-monkey/-/fs-monkey-1.0.4.tgz#ee8c1b53d3fe8bb7e5d2c5c5dfc0168afdd2f747" integrity sha512-INM/fWAxMICjttnD0DX1rBvinKskj5G1w+oy/pnm9u/tSlnBrzFonJMcalKJ30P8RRsPzKcCG7Q8l0jx5Fh9YQ== fs.realpath@^1.0.0: version "1.0.0" - resolved "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" + resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw== fsevents@~2.3.2: - version "2.3.2" - resolved "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a" - integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA== + version "2.3.3" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.3.tgz#cac6407785d03675a2a5e1a5305c697b347d90d6" + integrity sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw== function-bind@^1.1.1: version "1.1.1" - resolved "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" + resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== functions-have-names@^1.2.3: version "1.2.3" - resolved "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz#0404fe4ee2ba2f607f0e0ec3c80bae994133b834" + resolved "https://registry.yarnpkg.com/functions-have-names/-/functions-have-names-1.2.3.tgz#0404fe4ee2ba2f607f0e0ec3c80bae994133b834" integrity sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ== get-intrinsic@^1.0.2, get-intrinsic@^1.1.1, get-intrinsic@^1.1.3, get-intrinsic@^1.2.0, get-intrinsic@^1.2.1: version "1.2.1" - resolved "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.1.tgz#d295644fed4505fc9cde952c37ee12b477a83d82" + resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.2.1.tgz#d295644fed4505fc9cde952c37ee12b477a83d82" integrity sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw== dependencies: function-bind "^1.1.1" @@ -3325,43 +3316,43 @@ get-port@5.1.1, get-port@^5.1.1: get-stdin@^8.0.0: version "8.0.0" - resolved "https://registry.npmjs.org/get-stdin/-/get-stdin-8.0.0.tgz#cbad6a73feb75f6eeb22ba9e01f89aa28aa97a53" + resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-8.0.0.tgz#cbad6a73feb75f6eeb22ba9e01f89aa28aa97a53" integrity sha512-sY22aA6xchAzprjyqmSEQv4UbAAzRN0L2dQB0NlN5acTTK9Don6nhoc3eAbUnpZiCANAMfd/+40kVdKfFygohg== get-tsconfig@^4.4.0: - version "4.6.2" - resolved "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.6.2.tgz#831879a5e6c2aa24fe79b60340e2233a1e0f472e" - integrity sha512-E5XrT4CbbXcXWy+1jChlZmrmCwd5KGx502kDCXJJ7y898TtWW9FwoG5HfOLVRKmlmDGkWN2HM9Ho+/Y8F0sJDg== + version "4.7.0" + resolved "https://registry.yarnpkg.com/get-tsconfig/-/get-tsconfig-4.7.0.tgz#06ce112a1463e93196aa90320c35df5039147e34" + integrity sha512-pmjiZ7xtB8URYm74PlGJozDNyhvsVLUcpBa8DZBG3bWHwaHa9bPiRpiSfovw+fjhwONSCWKRyk+JQHEGZmMrzw== dependencies: resolve-pkg-maps "^1.0.0" github-from-package@0.0.0: version "0.0.0" - resolved "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz#97fb5d96bfde8973313f20e8288ef9a167fa64ce" + resolved "https://registry.yarnpkg.com/github-from-package/-/github-from-package-0.0.0.tgz#97fb5d96bfde8973313f20e8288ef9a167fa64ce" integrity sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw== glob-parent@~5.1.2: version "5.1.2" - resolved "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== dependencies: is-glob "^4.0.1" glob-promise@^4.2.2: version "4.2.2" - resolved "https://registry.npmjs.org/glob-promise/-/glob-promise-4.2.2.tgz#15f44bcba0e14219cd93af36da6bb905ff007877" + resolved "https://registry.yarnpkg.com/glob-promise/-/glob-promise-4.2.2.tgz#15f44bcba0e14219cd93af36da6bb905ff007877" integrity sha512-xcUzJ8NWN5bktoTIX7eOclO1Npxd/dyVqUJxlLIDasT4C7KZyqlPIwkdJ0Ypiy3p2ZKahTjK4M9uC3sNSfNMzw== dependencies: "@types/glob" "^7.1.3" glob-to-regexp@^0.4.1: version "0.4.1" - resolved "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz#c75297087c851b9a578bd217dd59a92f59fe546e" + resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz#c75297087c851b9a578bd217dd59a92f59fe546e" integrity sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw== glob@^7.1.6: version "7.2.3" - resolved "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q== dependencies: fs.realpath "^1.0.0" @@ -3373,7 +3364,7 @@ glob@^7.1.6: glob@^8.0.0: version "8.1.0" - resolved "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz#d388f656593ef708ee3e34640fdfb99a9fd1c33e" + resolved "https://registry.yarnpkg.com/glob/-/glob-8.1.0.tgz#d388f656593ef708ee3e34640fdfb99a9fd1c33e" integrity sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ== dependencies: fs.realpath "^1.0.0" @@ -3384,120 +3375,120 @@ glob@^8.0.0: gopd@^1.0.1: version "1.0.1" - resolved "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz#29ff76de69dac7489b7c0918a5788e56477c332c" + resolved "https://registry.yarnpkg.com/gopd/-/gopd-1.0.1.tgz#29ff76de69dac7489b7c0918a5788e56477c332c" integrity sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA== dependencies: get-intrinsic "^1.1.3" graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.4, graceful-fs@^4.2.9: version "4.2.11" - resolved "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz#4183e4e8bf08bb6e05bbb2f7d2e0c8f712ca40e3" + resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.11.tgz#4183e4e8bf08bb6e05bbb2f7d2e0c8f712ca40e3" integrity sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ== graphql-http@^1.17.1: version "1.21.0" - resolved "https://registry.npmjs.org/graphql-http/-/graphql-http-1.21.0.tgz#04d1606e663acd3f422e86e2e85f4ae7a8b0881b" + resolved "https://registry.yarnpkg.com/graphql-http/-/graphql-http-1.21.0.tgz#04d1606e663acd3f422e86e2e85f4ae7a8b0881b" integrity sha512-yrItPfHj5WeT4n7iusbVin+vGSQjXFAX6U/GnYytdCJRXVad1TWGtYFDZ2ROjCKpXQzIwvfbiWCEwfuXgR3B6A== graphql-playground-html@^1.6.30: version "1.6.30" - resolved "https://registry.npmjs.org/graphql-playground-html/-/graphql-playground-html-1.6.30.tgz#14c2a8eb7fc17bfeb1a746bbb28a11e34bf0b391" + resolved "https://registry.yarnpkg.com/graphql-playground-html/-/graphql-playground-html-1.6.30.tgz#14c2a8eb7fc17bfeb1a746bbb28a11e34bf0b391" integrity sha512-tpCujhsJMva4aqE8ULnF7/l3xw4sNRZcSHu+R00VV+W0mfp+Q20Plvcrp+5UXD+2yS6oyCXncA+zoQJQqhGCEw== dependencies: xss "^1.0.6" graphql-playground-middleware-express@^1.7.23: version "1.7.23" - resolved "https://registry.npmjs.org/graphql-playground-middleware-express/-/graphql-playground-middleware-express-1.7.23.tgz#95aba44d801ff3c08b2246917d2901d2e7c35d3d" + resolved "https://registry.yarnpkg.com/graphql-playground-middleware-express/-/graphql-playground-middleware-express-1.7.23.tgz#95aba44d801ff3c08b2246917d2901d2e7c35d3d" integrity sha512-M/zbTyC1rkgiQjFSgmzAv6umMHOphYLNWZp6Ye5QrD77WfGOOoSqDsVmGUczc2pDkEPEzzGB/bvBO5rdzaTRgw== dependencies: graphql-playground-html "^1.6.30" graphql-query-complexity@^0.12.0: version "0.12.0" - resolved "https://registry.npmjs.org/graphql-query-complexity/-/graphql-query-complexity-0.12.0.tgz#5f636ccc54da82225f31e898e7f27192fe074b4c" + resolved "https://registry.yarnpkg.com/graphql-query-complexity/-/graphql-query-complexity-0.12.0.tgz#5f636ccc54da82225f31e898e7f27192fe074b4c" integrity sha512-fWEyuSL6g/+nSiIRgIipfI6UXTI7bAxrpPlCY1c0+V3pAEUo1ybaKmSBgNr1ed2r+agm1plJww8Loig9y6s2dw== dependencies: lodash.get "^4.4.2" graphql-scalars@^1.20.1: version "1.22.2" - resolved "https://registry.npmjs.org/graphql-scalars/-/graphql-scalars-1.22.2.tgz#6326e6fe2d0ad4228a9fea72a977e2bf26b86362" + resolved "https://registry.yarnpkg.com/graphql-scalars/-/graphql-scalars-1.22.2.tgz#6326e6fe2d0ad4228a9fea72a977e2bf26b86362" integrity sha512-my9FB4GtghqXqi/lWSVAOPiTzTnnEzdOXCsAC2bb5V7EFNQjVjwy3cSSbUvgYOtDuDibd+ZsCDhz+4eykYOlhQ== dependencies: tslib "^2.5.0" graphql-type-json@^0.3.2: version "0.3.2" - resolved "https://registry.npmjs.org/graphql-type-json/-/graphql-type-json-0.3.2.tgz#f53a851dbfe07bd1c8157d24150064baab41e115" + resolved "https://registry.yarnpkg.com/graphql-type-json/-/graphql-type-json-0.3.2.tgz#f53a851dbfe07bd1c8157d24150064baab41e115" integrity sha512-J+vjof74oMlCWXSvt0DOf2APEdZOCdubEvGDUAlqH//VBYcOYsGgRW7Xzorr44LvkjiuvecWc8fChxuZZbChtg== graphql@^16.6.0: - version "16.7.1" - resolved "https://registry.npmjs.org/graphql/-/graphql-16.7.1.tgz#11475b74a7bff2aefd4691df52a0eca0abd9b642" - integrity sha512-DRYR9tf+UGU0KOsMcKAlXeFfX89UiiIZ0dRU3mR0yJfu6OjZqUcp68NnFLnqQU5RexygFoDy1EW+ccOYcPfmHg== + version "16.8.0" + resolved "https://registry.yarnpkg.com/graphql/-/graphql-16.8.0.tgz#374478b7f27b2dc6153c8f42c1b80157f79d79d4" + integrity sha512-0oKGaR+y3qcS5mCu1vb7KG+a89vjn06C7Ihq/dDl3jA+A8B3TKomvi3CiEcVLJQGalbu8F52LxkOym7U5sSfbg== gzip-size@^6.0.0: version "6.0.0" - resolved "https://registry.npmjs.org/gzip-size/-/gzip-size-6.0.0.tgz#065367fd50c239c0671cbcbad5be3e2eeb10e462" + resolved "https://registry.yarnpkg.com/gzip-size/-/gzip-size-6.0.0.tgz#065367fd50c239c0671cbcbad5be3e2eeb10e462" integrity sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q== dependencies: duplexer "^0.1.2" has-bigints@^1.0.1: version "1.0.2" - resolved "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz#0871bd3e3d51626f6ca0966668ba35d5602d6eaa" + resolved "https://registry.yarnpkg.com/has-bigints/-/has-bigints-1.0.2.tgz#0871bd3e3d51626f6ca0966668ba35d5602d6eaa" integrity sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ== has-flag@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" integrity sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw== has-flag@^4.0.0: version "4.0.0" - resolved "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== has-property-descriptors@^1.0.0: version "1.0.0" - resolved "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz#610708600606d36961ed04c196193b6a607fa861" + resolved "https://registry.yarnpkg.com/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz#610708600606d36961ed04c196193b6a607fa861" integrity sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ== dependencies: get-intrinsic "^1.1.1" has-proto@^1.0.1: version "1.0.1" - resolved "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz#1885c1305538958aff469fef37937c22795408e0" + resolved "https://registry.yarnpkg.com/has-proto/-/has-proto-1.0.1.tgz#1885c1305538958aff469fef37937c22795408e0" integrity sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg== has-symbols@^1.0.2, has-symbols@^1.0.3: version "1.0.3" - resolved "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz#bb7b2c4349251dce87b125f7bdf874aa7c8b39f8" + resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.3.tgz#bb7b2c4349251dce87b125f7bdf874aa7c8b39f8" integrity sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A== has-tostringtag@^1.0.0: version "1.0.0" - resolved "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz#7e133818a7d394734f941e73c3d3f9291e658b25" + resolved "https://registry.yarnpkg.com/has-tostringtag/-/has-tostringtag-1.0.0.tgz#7e133818a7d394734f941e73c3d3f9291e658b25" integrity sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ== dependencies: has-symbols "^1.0.2" has@^1.0.3: version "1.0.3" - resolved "https://registry.npmjs.org/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" + resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== dependencies: function-bind "^1.1.1" he@^1.2.0: version "1.2.0" - resolved "https://registry.npmjs.org/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" + resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw== help-me@^4.0.1: version "4.2.0" - resolved "https://registry.npmjs.org/help-me/-/help-me-4.2.0.tgz#50712bfd799ff1854ae1d312c36eafcea85b0563" + resolved "https://registry.yarnpkg.com/help-me/-/help-me-4.2.0.tgz#50712bfd799ff1854ae1d312c36eafcea85b0563" integrity sha512-TAOnTB8Tz5Dw8penUuzHVrKNKlCIbwwbHnXraNJxPwf8LRtE2HlM84RYuezMFcwOJmoYOCWVDyJ8TQGxn9PgxA== dependencies: glob "^8.0.0" @@ -3505,7 +3496,7 @@ help-me@^4.0.1: history@^4.9.0: version "4.10.1" - resolved "https://registry.npmjs.org/history/-/history-4.10.1.tgz#33371a65e3a83b267434e2b3f3b1b4c58aad4cf3" + resolved "https://registry.yarnpkg.com/history/-/history-4.10.1.tgz#33371a65e3a83b267434e2b3f3b1b4c58aad4cf3" integrity sha512-36nwAD620w12kuzPAsyINPWJqlNbij+hpK1k9XRloDtym8mxzGYl2c17LnV6IAGB2Dmg4tEa7G7DlawS0+qjew== dependencies: "@babel/runtime" "^7.1.2" @@ -3517,19 +3508,19 @@ history@^4.9.0: hoist-non-react-statics@^3.1.0, hoist-non-react-statics@^3.3.1: version "3.3.2" - resolved "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz#ece0acaf71d62c2969c2ec59feff42a4b1a85b45" + resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz#ece0acaf71d62c2969c2ec59feff42a4b1a85b45" integrity sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw== dependencies: react-is "^16.7.0" html-entities@^2.1.0: version "2.4.0" - resolved "https://registry.npmjs.org/html-entities/-/html-entities-2.4.0.tgz#edd0cee70402584c8c76cc2c0556db09d1f45061" + resolved "https://registry.yarnpkg.com/html-entities/-/html-entities-2.4.0.tgz#edd0cee70402584c8c76cc2c0556db09d1f45061" integrity sha512-igBTJcNNNhvZFRtm8uA6xMY6xYleeDwn3PeBCkDz7tHttv4F2hsDI2aPgNERWzvRcNYHNT3ymRaQzllmXj4YsQ== html-minifier-terser@^6.0.2: version "6.1.0" - resolved "https://registry.npmjs.org/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz#bfc818934cc07918f6b3669f5774ecdfd48f32ab" + resolved "https://registry.yarnpkg.com/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz#bfc818934cc07918f6b3669f5774ecdfd48f32ab" integrity sha512-YXxSlJBZTP7RS3tWnQw74ooKa6L9b9i9QYXY21eUEvhZ3u9XLfv6OnFsQq6RxkhHygsaUMvYsZRV5rU/OVNZxw== dependencies: camel-case "^4.1.2" @@ -3542,14 +3533,14 @@ html-minifier-terser@^6.0.2: html-parse-stringify@^3.0.1: version "3.0.1" - resolved "https://registry.npmjs.org/html-parse-stringify/-/html-parse-stringify-3.0.1.tgz#dfc1017347ce9f77c8141a507f233040c59c55d2" + resolved "https://registry.yarnpkg.com/html-parse-stringify/-/html-parse-stringify-3.0.1.tgz#dfc1017347ce9f77c8141a507f233040c59c55d2" integrity sha512-KknJ50kTInJ7qIScF3jeaFRpMpE8/lfiTdzf/twXyPBLAGrLRTmkz3AdTnKeh40X8k9L2fdYwEp/42WGXIRGcg== dependencies: void-elements "3.1.0" html-webpack-plugin@^5.5.0: version "5.5.3" - resolved "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-5.5.3.tgz#72270f4a78e222b5825b296e5e3e1328ad525a3e" + resolved "https://registry.yarnpkg.com/html-webpack-plugin/-/html-webpack-plugin-5.5.3.tgz#72270f4a78e222b5825b296e5e3e1328ad525a3e" integrity sha512-6YrDKTuqaP/TquFH7h4srYWsZx+x6k6+FbsTm0ziCwGHDP78Unr1r9F/H4+sGmMbX08GQcJ+K64x55b+7VM/jg== dependencies: "@types/html-minifier-terser" "^6.0.0" @@ -3560,7 +3551,7 @@ html-webpack-plugin@^5.5.0: htmlparser2@^6.1.0: version "6.1.0" - resolved "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz#c4d762b6c3371a05dbe65e94ae43a9f845fb8fb7" + resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-6.1.0.tgz#c4d762b6c3371a05dbe65e94ae43a9f845fb8fb7" integrity sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A== dependencies: domelementtype "^2.0.1" @@ -3570,7 +3561,7 @@ htmlparser2@^6.1.0: http-errors@2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz#b7774a1486ef73cf7667ac9ae0858c012c57b9d3" + resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-2.0.0.tgz#b7774a1486ef73cf7667ac9ae0858c012c57b9d3" integrity sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ== dependencies: depd "2.0.0" @@ -3581,7 +3572,7 @@ http-errors@2.0.0: http-status@^1.6.2: version "1.6.2" - resolved "https://registry.npmjs.org/http-status/-/http-status-1.6.2.tgz#6dc05188a9856d67d96e48e8b4fd645c719ce82a" + resolved "https://registry.yarnpkg.com/http-status/-/http-status-1.6.2.tgz#6dc05188a9856d67d96e48e8b4fd645c719ce82a" integrity sha512-oUExvfNckrpTpDazph7kNG8sQi5au3BeTo0idaZFXEhTaJKu7GNJCLHI0rYY2wljm548MSTM+Ljj/c6anqu2zQ== https-proxy-agent@^5.0.1: @@ -3594,33 +3585,33 @@ https-proxy-agent@^5.0.1: i18next-browser-languagedetector@^6.1.8: version "6.1.8" - resolved "https://registry.npmjs.org/i18next-browser-languagedetector/-/i18next-browser-languagedetector-6.1.8.tgz#8e9c61b32a4dfe9b959b38bc9d2a8b95f799b27c" + resolved "https://registry.yarnpkg.com/i18next-browser-languagedetector/-/i18next-browser-languagedetector-6.1.8.tgz#8e9c61b32a4dfe9b959b38bc9d2a8b95f799b27c" integrity sha512-Svm+MduCElO0Meqpj1kJAriTC6OhI41VhlT/A0UPjGoPZBhAHIaGE5EfsHlTpgdH09UVX7rcc72pSDDBeKSQQA== dependencies: "@babel/runtime" "^7.19.0" i18next-http-middleware@^3.2.2: version "3.3.2" - resolved "https://registry.npmjs.org/i18next-http-middleware/-/i18next-http-middleware-3.3.2.tgz#6a24fee6bde44952a5af24364d43fa32f6c1b9b6" + resolved "https://registry.yarnpkg.com/i18next-http-middleware/-/i18next-http-middleware-3.3.2.tgz#6a24fee6bde44952a5af24364d43fa32f6c1b9b6" integrity sha512-PSeLXQXr9Qiv9Q3GCWCoIJenKVbxCcVsXb7VMp/mOprV4gu+AMJT7VHw4+QEf6oYW6GU31QSLnfDpLNoSMtx3g== i18next@^22.4.9: version "22.5.1" - resolved "https://registry.npmjs.org/i18next/-/i18next-22.5.1.tgz#99df0b318741a506000c243429a7352e5f44d424" + resolved "https://registry.yarnpkg.com/i18next/-/i18next-22.5.1.tgz#99df0b318741a506000c243429a7352e5f44d424" integrity sha512-8TGPgM3pAD+VRsMtUMNknRz3kzqwp/gPALrWMsDnmC1mKqJwpWyooQRLMcbTwq8z8YwSmuj+ZYvc+xCuEpkssA== dependencies: "@babel/runtime" "^7.20.6" iconv-lite@0.4.24, iconv-lite@^0.4.4: version "0.4.24" - resolved "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" + resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== dependencies: safer-buffer ">= 2.1.2 < 3" icss-utils@^5.0.0, icss-utils@^5.1.0: version "5.1.0" - resolved "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz#c6be6858abd013d768e98366ae47e25d5887b1ae" + resolved "https://registry.yarnpkg.com/icss-utils/-/icss-utils-5.1.0.tgz#c6be6858abd013d768e98366ae47e25d5887b1ae" integrity sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA== ieee754@^1.1.13, ieee754@^1.2.1: @@ -3630,17 +3621,17 @@ ieee754@^1.1.13, ieee754@^1.2.1: immer@^9.0.6: version "9.0.21" - resolved "https://registry.npmjs.org/immer/-/immer-9.0.21.tgz#1e025ea31a40f24fb064f1fef23e931496330176" + resolved "https://registry.yarnpkg.com/immer/-/immer-9.0.21.tgz#1e025ea31a40f24fb064f1fef23e931496330176" integrity sha512-bc4NBHqOqSfRW7POMkHd51LvClaeMXpm8dx0e8oE2GORbq5aRK7Bxl4FyzVLdGtLmvLKL7BTDBG5ACQm4HWjTA== immutable@^4.0.0: - version "4.3.1" - resolved "https://registry.npmjs.org/immutable/-/immutable-4.3.1.tgz#17988b356097ab0719e2f741d56f3ec6c317f9dc" - integrity sha512-lj9cnmB/kVS0QHsJnYKD1uo3o39nrbKxszjnqS9Fr6NB7bZzW45U6WSGBPKXDL/CvDKqDNPA4r3DoDQ8GTxo2A== + version "4.3.2" + resolved "https://registry.yarnpkg.com/immutable/-/immutable-4.3.2.tgz#f89d910f8dfb6e15c03b2cae2faaf8c1f66455fe" + integrity sha512-oGXzbEDem9OOpDWZu88jGiYCvIsLHMvGw+8OXlpsvTFvIQplQbjg1B1cvKg8f7Hoch6+NGjpPsH1Fr+Mc2D1aA== import-fresh@^3.2.1: version "3.3.0" - resolved "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz#37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b" + resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.0.tgz#37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b" integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw== dependencies: parent-module "^1.0.0" @@ -3648,7 +3639,7 @@ import-fresh@^3.2.1: import-local@^3.0.2: version "3.1.0" - resolved "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz#b4479df8a5fd44f6cdce24070675676063c95cb4" + resolved "https://registry.yarnpkg.com/import-local/-/import-local-3.1.0.tgz#b4479df8a5fd44f6cdce24070675676063c95cb4" integrity sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg== dependencies: pkg-dir "^4.2.0" @@ -3656,7 +3647,7 @@ import-local@^3.0.2: inflight@^1.0.4: version "1.0.6" - resolved "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" + resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" integrity sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA== dependencies: once "^1.3.0" @@ -3669,12 +3660,12 @@ inherits@2, inherits@2.0.4, inherits@^2.0.3, inherits@^2.0.4: ini@~1.3.0: version "1.3.8" - resolved "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz#a29da425b48806f34767a4efce397269af28432c" + resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.8.tgz#a29da425b48806f34767a4efce397269af28432c" integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew== internal-slot@^1.0.4: version "1.0.5" - resolved "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.5.tgz#f2a2ee21f668f8627a4667f309dc0f4fb6674986" + resolved "https://registry.yarnpkg.com/internal-slot/-/internal-slot-1.0.5.tgz#f2a2ee21f668f8627a4667f309dc0f4fb6674986" integrity sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ== dependencies: get-intrinsic "^1.2.0" @@ -3683,7 +3674,7 @@ internal-slot@^1.0.4: interpret@^2.2.0: version "2.2.0" - resolved "https://registry.npmjs.org/interpret/-/interpret-2.2.0.tgz#1a78a0b5965c40a5416d007ad6f50ad27c417df9" + resolved "https://registry.yarnpkg.com/interpret/-/interpret-2.2.0.tgz#1a78a0b5965c40a5416d007ad6f50ad27c417df9" integrity sha512-Ju0Bz/cEia55xDwUWEa8+olFpCiQoypjnQySseKtmjNrnps3P+xfpUmGr90T7yjlVJmOtybRvPXhKMbHr+fWnw== ip@^2.0.0: @@ -3693,12 +3684,12 @@ ip@^2.0.0: ipaddr.js@1.9.1: version "1.9.1" - resolved "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz#bff38543eeb8984825079ff3a2a8e6cbd46781b3" + resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.9.1.tgz#bff38543eeb8984825079ff3a2a8e6cbd46781b3" integrity sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g== is-arguments@^1.1.1: version "1.1.1" - resolved "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz#15b3f88fda01f2a97fec84ca761a560f123efa9b" + resolved "https://registry.yarnpkg.com/is-arguments/-/is-arguments-1.1.1.tgz#15b3f88fda01f2a97fec84ca761a560f123efa9b" integrity sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA== dependencies: call-bind "^1.0.2" @@ -3706,7 +3697,7 @@ is-arguments@^1.1.1: is-array-buffer@^3.0.1, is-array-buffer@^3.0.2: version "3.0.2" - resolved "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.2.tgz#f2653ced8412081638ecb0ebbd0c41c6e0aecbbe" + resolved "https://registry.yarnpkg.com/is-array-buffer/-/is-array-buffer-3.0.2.tgz#f2653ced8412081638ecb0ebbd0c41c6e0aecbbe" integrity sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w== dependencies: call-bind "^1.0.2" @@ -3715,31 +3706,31 @@ is-array-buffer@^3.0.1, is-array-buffer@^3.0.2: is-arrayish@^0.2.1: version "0.2.1" - resolved "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" + resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" integrity sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg== is-arrayish@^0.3.1: version "0.3.2" - resolved "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz#4574a2ae56f7ab206896fb431eaeed066fdf8f03" + resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.3.2.tgz#4574a2ae56f7ab206896fb431eaeed066fdf8f03" integrity sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ== is-bigint@^1.0.1: version "1.0.4" - resolved "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz#08147a1875bc2b32005d41ccd8291dffc6691df3" + resolved "https://registry.yarnpkg.com/is-bigint/-/is-bigint-1.0.4.tgz#08147a1875bc2b32005d41ccd8291dffc6691df3" integrity sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg== dependencies: has-bigints "^1.0.1" is-binary-path@~2.1.0: version "2.1.0" - resolved "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09" + resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09" integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw== dependencies: binary-extensions "^2.0.0" is-boolean-object@^1.1.0: version "1.1.2" - resolved "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz#5c6dc200246dd9321ae4b885a114bb1f75f63719" + resolved "https://registry.yarnpkg.com/is-boolean-object/-/is-boolean-object-1.1.2.tgz#5c6dc200246dd9321ae4b885a114bb1f75f63719" integrity sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA== dependencies: call-bind "^1.0.2" @@ -3747,92 +3738,92 @@ is-boolean-object@^1.1.0: is-buffer@^1.1.6, is-buffer@~1.1.6: version "1.1.6" - resolved "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" + resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w== is-callable@^1.1.3: version "1.2.7" - resolved "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz#3bc2a85ea742d9e36205dcacdd72ca1fdc51b055" + resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.7.tgz#3bc2a85ea742d9e36205dcacdd72ca1fdc51b055" integrity sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA== -is-core-module@^2.11.0: - version "2.12.1" - resolved "https://registry.npmjs.org/is-core-module/-/is-core-module-2.12.1.tgz#0c0b6885b6f80011c71541ce15c8d66cf5a4f9fd" - integrity sha512-Q4ZuBAe2FUsKtyQJoQHlvP8OvBERxO3jEmy1I7hcRXcJBGGHFh/aJBswbXuS9sgrDH2QUO8ilkwNPHvHMd8clg== +is-core-module@^2.13.0: + version "2.13.0" + resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.13.0.tgz#bb52aa6e2cbd49a30c2ba68c42bf3435ba6072db" + integrity sha512-Z7dk6Qo8pOCp3l4tsX2C5ZVas4V+UxwQodwZhLopL91TX8UyyHEXafPcyoeeWuLrwzHcr3igO78wNLwHJHsMCQ== dependencies: has "^1.0.3" is-date-object@^1.0.5: version "1.0.5" - resolved "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz#0841d5536e724c25597bf6ea62e1bd38298df31f" + resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.5.tgz#0841d5536e724c25597bf6ea62e1bd38298df31f" integrity sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ== dependencies: has-tostringtag "^1.0.0" is-extglob@^2.1.1: version "2.1.1" - resolved "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" + resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ== is-glob@^4.0.1, is-glob@^4.0.3, is-glob@~4.0.1: version "4.0.3" - resolved "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" + resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg== dependencies: is-extglob "^2.1.1" is-hotkey@^0.1.6: version "0.1.8" - resolved "https://registry.npmjs.org/is-hotkey/-/is-hotkey-0.1.8.tgz#6b1f4b2d0e5639934e20c05ed24d623a21d36d25" + resolved "https://registry.yarnpkg.com/is-hotkey/-/is-hotkey-0.1.8.tgz#6b1f4b2d0e5639934e20c05ed24d623a21d36d25" integrity sha512-qs3NZ1INIS+H+yeo7cD9pDfwYV/jqRh1JG9S9zYrNudkoUQg7OL7ziXqRKu+InFjUIDoP2o6HIkLYMh1pcWgyQ== is-hotkey@^0.2.0: version "0.2.0" - resolved "https://registry.npmjs.org/is-hotkey/-/is-hotkey-0.2.0.tgz#1835a68171a91e5c9460869d96336947c8340cef" + resolved "https://registry.yarnpkg.com/is-hotkey/-/is-hotkey-0.2.0.tgz#1835a68171a91e5c9460869d96336947c8340cef" integrity sha512-UknnZK4RakDmTgz4PI1wIph5yxSs/mvChWs9ifnlXsKuXgWmOkY/hAE0H/k2MIqH0RlRye0i1oC07MCRSD28Mw== is-map@^2.0.1, is-map@^2.0.2: version "2.0.2" - resolved "https://registry.npmjs.org/is-map/-/is-map-2.0.2.tgz#00922db8c9bf73e81b7a335827bc2a43f2b91127" + resolved "https://registry.yarnpkg.com/is-map/-/is-map-2.0.2.tgz#00922db8c9bf73e81b7a335827bc2a43f2b91127" integrity sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg== is-number-object@^1.0.4: version "1.0.7" - resolved "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz#59d50ada4c45251784e9904f5246c742f07a42fc" + resolved "https://registry.yarnpkg.com/is-number-object/-/is-number-object-1.0.7.tgz#59d50ada4c45251784e9904f5246c742f07a42fc" integrity sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ== dependencies: has-tostringtag "^1.0.0" is-number@^7.0.0: version "7.0.0" - resolved "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" + resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== is-obj@^2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz#473fb05d973705e3fd9620545018ca8e22ef4982" + resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-2.0.0.tgz#473fb05d973705e3fd9620545018ca8e22ef4982" integrity sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w== is-plain-object@^2.0.4: version "2.0.4" - resolved "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" + resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" integrity sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og== dependencies: isobject "^3.0.1" is-plain-object@^5.0.0: version "5.0.0" - resolved "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz#4427f50ab3429e9025ea7d52e9043a9ef4159344" + resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-5.0.0.tgz#4427f50ab3429e9025ea7d52e9043a9ef4159344" integrity sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q== is-promise@^2.2.2: version "2.2.2" - resolved "https://registry.npmjs.org/is-promise/-/is-promise-2.2.2.tgz#39ab959ccbf9a774cf079f7b40c7a26f763135f1" + resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.2.2.tgz#39ab959ccbf9a774cf079f7b40c7a26f763135f1" integrity sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ== is-regex@^1.1.4: version "1.1.4" - resolved "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz#eef5663cd59fa4c0ae339505323df6854bb15958" + resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.1.4.tgz#eef5663cd59fa4c0ae339505323df6854bb15958" integrity sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg== dependencies: call-bind "^1.0.2" @@ -3840,45 +3831,45 @@ is-regex@^1.1.4: is-set@^2.0.1, is-set@^2.0.2: version "2.0.2" - resolved "https://registry.npmjs.org/is-set/-/is-set-2.0.2.tgz#90755fa4c2562dc1c5d4024760d6119b94ca18ec" + resolved "https://registry.yarnpkg.com/is-set/-/is-set-2.0.2.tgz#90755fa4c2562dc1c5d4024760d6119b94ca18ec" integrity sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g== is-shared-array-buffer@^1.0.2: version "1.0.2" - resolved "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz#8f259c573b60b6a32d4058a1a07430c0a7344c79" + resolved "https://registry.yarnpkg.com/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz#8f259c573b60b6a32d4058a1a07430c0a7344c79" integrity sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA== dependencies: call-bind "^1.0.2" is-string@^1.0.5, is-string@^1.0.7: version "1.0.7" - resolved "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz#0dd12bf2006f255bb58f695110eff7491eebc0fd" + resolved "https://registry.yarnpkg.com/is-string/-/is-string-1.0.7.tgz#0dd12bf2006f255bb58f695110eff7491eebc0fd" integrity sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg== dependencies: has-tostringtag "^1.0.0" is-symbol@^1.0.3: version "1.0.4" - resolved "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz#a6dac93b635b063ca6872236de88910a57af139c" + resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.4.tgz#a6dac93b635b063ca6872236de88910a57af139c" integrity sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg== dependencies: has-symbols "^1.0.2" is-typed-array@^1.1.10: version "1.1.12" - resolved "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.12.tgz#d0bab5686ef4a76f7a73097b95470ab199c57d4a" + resolved "https://registry.yarnpkg.com/is-typed-array/-/is-typed-array-1.1.12.tgz#d0bab5686ef4a76f7a73097b95470ab199c57d4a" integrity sha512-Z14TF2JNG8Lss5/HMqt0//T9JeHXttXy5pH/DBU4vi98ozO2btxzq9MwYDZYnKwU8nRsz/+GVFVRDq3DkVuSPg== dependencies: which-typed-array "^1.1.11" is-weakmap@^2.0.1: version "2.0.1" - resolved "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.1.tgz#5008b59bdc43b698201d18f62b37b2ca243e8cf2" + resolved "https://registry.yarnpkg.com/is-weakmap/-/is-weakmap-2.0.1.tgz#5008b59bdc43b698201d18f62b37b2ca243e8cf2" integrity sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA== is-weakset@^2.0.1: version "2.0.2" - resolved "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.2.tgz#4569d67a747a1ce5a994dfd4ef6dcea76e7c0a1d" + resolved "https://registry.yarnpkg.com/is-weakset/-/is-weakset-2.0.2.tgz#4569d67a747a1ce5a994dfd4ef6dcea76e7c0a1d" integrity sha512-t2yVvttHkQktwnNNmBQ98AhENLdPUTDTE21uPqAQ0ARwQfGeQKRVS0NNurH7bTf7RrvcVn1OOge45CnBeHCSmg== dependencies: call-bind "^1.0.2" @@ -3886,38 +3877,38 @@ is-weakset@^2.0.1: isarray@0.0.1: version "0.0.1" - resolved "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf" + resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf" integrity sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ== isarray@^2.0.5: version "2.0.5" - resolved "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz#8af1e4c1221244cc62459faf38940d4e644a5723" + resolved "https://registry.yarnpkg.com/isarray/-/isarray-2.0.5.tgz#8af1e4c1221244cc62459faf38940d4e644a5723" integrity sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw== isexe@^2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" + resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== isobject@^3.0.1: version "3.0.1" - resolved "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" + resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" integrity sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg== isomorphic-fetch@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/isomorphic-fetch/-/isomorphic-fetch-3.0.0.tgz#0267b005049046d2421207215d45d6a262b8b8b4" + resolved "https://registry.yarnpkg.com/isomorphic-fetch/-/isomorphic-fetch-3.0.0.tgz#0267b005049046d2421207215d45d6a262b8b8b4" integrity sha512-qvUtwJ3j6qwsF3jLxkZ72qCgjMysPzDfeV240JHiGZsANBYd+EEuu35v7dfrJ9Up0Ak07D7GGSkGhCHTqg/5wA== dependencies: node-fetch "^2.6.1" whatwg-fetch "^3.4.1" -jest-util@^29.6.2: - version "29.6.2" - resolved "https://registry.npmjs.org/jest-util/-/jest-util-29.6.2.tgz#8a052df8fff2eebe446769fd88814521a517664d" - integrity sha512-3eX1qb6L88lJNCFlEADKOkjpXJQyZRiavX1INZ4tRnrBVr2COd3RgcTLyUiEXMNBlDU/cgYq6taUS0fExrWW4w== +jest-util@^29.6.3: + version "29.6.3" + resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-29.6.3.tgz#e15c3eac8716440d1ed076f09bc63ace1aebca63" + integrity sha512-QUjna/xSy4B32fzcKTSz1w7YYzgiHrjjJjevdRf61HYk998R5vVMMNmrHESYZVDS5DSWs+1srPLPKxXPkeSDOA== dependencies: - "@jest/types" "^29.6.1" + "@jest/types" "^29.6.3" "@types/node" "*" chalk "^4.0.0" ci-info "^3.2.0" @@ -3926,7 +3917,7 @@ jest-util@^29.6.2: jest-worker@^27.4.5: version "27.5.1" - resolved "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz#8d146f0900e8973b106b6f73cc1e9a8cb86f8db0" + resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-27.5.1.tgz#8d146f0900e8973b106b6f73cc1e9a8cb86f8db0" integrity sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg== dependencies: "@types/node" "*" @@ -3934,18 +3925,18 @@ jest-worker@^27.4.5: supports-color "^8.0.0" jest-worker@^29.4.3: - version "29.6.2" - resolved "https://registry.npmjs.org/jest-worker/-/jest-worker-29.6.2.tgz#682fbc4b6856ad0aa122a5403c6d048b83f3fb44" - integrity sha512-l3ccBOabTdkng8I/ORCkADz4eSMKejTYv1vB/Z83UiubqhC1oQ5Li6dWCyqOIvSifGjUBxuvxvlm6KGK2DtuAQ== + version "29.6.3" + resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-29.6.3.tgz#7b1a47bbb6559f3c0882d16595938590e63915d5" + integrity sha512-wacANXecZ/GbQakpf2CClrqrlwsYYDSXFd4fIGdL+dXpM2GWoJ+6bhQ7vR3TKi3+gkSfBkjy1/khH/WrYS4Q6g== dependencies: "@types/node" "*" - jest-util "^29.6.2" + jest-util "^29.6.3" merge-stream "^2.0.0" supports-color "^8.0.0" joi@^17.7.0: version "17.9.2" - resolved "https://registry.npmjs.org/joi/-/joi-17.9.2.tgz#8b2e4724188369f55451aebd1d0b1d9482470690" + resolved "https://registry.yarnpkg.com/joi/-/joi-17.9.2.tgz#8b2e4724188369f55451aebd1d0b1d9482470690" integrity sha512-Itk/r+V4Dx0V3c7RLFdRh12IOjySm2/WGPMubBT92cQvRfYZhPM2W0hZlctjj72iES8jsRCwp7S/cRmWBnJ4nw== dependencies: "@hapi/hoek" "^9.0.0" @@ -3956,29 +3947,29 @@ joi@^17.7.0: joycon@^3.1.1: version "3.1.1" - resolved "https://registry.npmjs.org/joycon/-/joycon-3.1.1.tgz#bce8596d6ae808f8b68168f5fc69280996894f03" + resolved "https://registry.yarnpkg.com/joycon/-/joycon-3.1.1.tgz#bce8596d6ae808f8b68168f5fc69280996894f03" integrity sha512-34wB/Y7MW7bzjKRjUKTa46I2Z7eV62Rkhva+KkopW7Qvv/OSWBqvkSY7vusOPrNuZcUG3tApvdVgNB8POj3SPw== "js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: version "4.0.0" - resolved "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" + resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== js-yaml@^4.1.0: version "4.1.0" - resolved "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz#c1fb65f8f5017901cdd2c951864ba18458a10602" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.0.tgz#c1fb65f8f5017901cdd2c951864ba18458a10602" integrity sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA== dependencies: argparse "^2.0.1" json-parse-even-better-errors@^2.3.0, json-parse-even-better-errors@^2.3.1: version "2.3.1" - resolved "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d" + resolved "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d" integrity sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w== json-schema-to-typescript@11.0.3: version "11.0.3" - resolved "https://registry.npmjs.org/json-schema-to-typescript/-/json-schema-to-typescript-11.0.3.tgz#9b401c2b78329959f1c4c4e0639a6bdcf6a6ed77" + resolved "https://registry.yarnpkg.com/json-schema-to-typescript/-/json-schema-to-typescript-11.0.3.tgz#9b401c2b78329959f1c4c4e0639a6bdcf6a6ed77" integrity sha512-EaEE9Y4VZ8b9jW5zce5a9L3+p4C9AqgIRHbNVDJahfMnoKzcd4sDb98BLxLdQhJEuRAXyKLg4H66NKm80W8ilg== dependencies: "@bcherny/json-schema-ref-parser" "9.0.9" @@ -3998,27 +3989,27 @@ json-schema-to-typescript@11.0.3: json-schema-traverse@^0.4.1: version "0.4.1" - resolved "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" + resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== json-schema-traverse@^1.0.0: version "1.0.0" - resolved "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz#ae7bcb3656ab77a73ba5c49bf654f38e6b6860e2" + resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz#ae7bcb3656ab77a73ba5c49bf654f38e6b6860e2" integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug== json-schema-typed@^7.0.3: version "7.0.3" - resolved "https://registry.npmjs.org/json-schema-typed/-/json-schema-typed-7.0.3.tgz#23ff481b8b4eebcd2ca123b4fa0409e66469a2d9" + resolved "https://registry.yarnpkg.com/json-schema-typed/-/json-schema-typed-7.0.3.tgz#23ff481b8b4eebcd2ca123b4fa0409e66469a2d9" integrity sha512-7DE8mpG+/fVw+dTpjbxnx47TaMnDfOI1jwft9g1VybltZCduyRQPJPvc+zzKY9WPHxhPWczyFuYa6I8Mw4iU5A== json5@^2.1.2: version "2.2.3" - resolved "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" + resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== jsonfile@^6.0.1: version "6.1.0" - resolved "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz#bc55b2634793c679ec6403094eb13698a6ec0aae" + resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-6.1.0.tgz#bc55b2634793c679ec6403094eb13698a6ec0aae" integrity sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ== dependencies: universalify "^2.0.0" @@ -4027,7 +4018,7 @@ jsonfile@^6.0.1: jsonwebtoken@^9.0.0: version "9.0.1" - resolved "https://registry.npmjs.org/jsonwebtoken/-/jsonwebtoken-9.0.1.tgz#81d8c901c112c24e497a55daf6b2be1225b40145" + resolved "https://registry.yarnpkg.com/jsonwebtoken/-/jsonwebtoken-9.0.1.tgz#81d8c901c112c24e497a55daf6b2be1225b40145" integrity sha512-K8wx7eJ5TPvEjuiVSkv167EVboBDv9PZdDoF7BgeQnBLVvZWW9clr2PsQHVJDTKaEIH5JBIwHujGcHp7GgI2eg== dependencies: jws "^3.2.2" @@ -4037,7 +4028,7 @@ jsonwebtoken@^9.0.0: jwa@^1.4.1: version "1.4.1" - resolved "https://registry.npmjs.org/jwa/-/jwa-1.4.1.tgz#743c32985cb9e98655530d53641b66c8645b039a" + resolved "https://registry.yarnpkg.com/jwa/-/jwa-1.4.1.tgz#743c32985cb9e98655530d53641b66c8645b039a" integrity sha512-qiLX/xhEEFKUAJ6FiBMbes3w9ATzyk5W7Hvzpa/SLYdxNtng+gcurvrI7TbACjIXlsJyr05/S1oUhZrc63evQA== dependencies: buffer-equal-constant-time "1.0.1" @@ -4046,7 +4037,7 @@ jwa@^1.4.1: jws@^3.2.2: version "3.2.2" - resolved "https://registry.npmjs.org/jws/-/jws-3.2.2.tgz#001099f3639468c9414000e99995fa52fb478304" + resolved "https://registry.yarnpkg.com/jws/-/jws-3.2.2.tgz#001099f3639468c9414000e99995fa52fb478304" integrity sha512-YHlZCB6lMTllWDtSPHz/ZXTsi8S00usEV6v1tjq8tOUZzw7DpSDWVXjXDre6ed1w/pd495ODpHZYSdkRTsa0HA== dependencies: jwa "^1.4.1" @@ -4054,7 +4045,7 @@ jws@^3.2.2: jwt-decode@^3.1.2: version "3.1.2" - resolved "https://registry.npmjs.org/jwt-decode/-/jwt-decode-3.1.2.tgz#3fb319f3675a2df0c2895c8f5e9fa4b67b04ed59" + resolved "https://registry.yarnpkg.com/jwt-decode/-/jwt-decode-3.1.2.tgz#3fb319f3675a2df0c2895c8f5e9fa4b67b04ed59" integrity sha512-UfpWE/VZn0iP50d8cz9NrZLM9lSWhcJ+0Gt/nm4by88UL+J1SiKN8/5dkjMmbEzwL2CAe+67GsegCbIKtbp75A== kareem@2.5.1: @@ -4064,32 +4055,32 @@ kareem@2.5.1: kind-of@^6.0.2: version "6.0.3" - resolved "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd" integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw== klona@^2.0.4, klona@^2.0.5: version "2.0.6" - resolved "https://registry.npmjs.org/klona/-/klona-2.0.6.tgz#85bffbf819c03b2f53270412420a4555ef882e22" + resolved "https://registry.yarnpkg.com/klona/-/klona-2.0.6.tgz#85bffbf819c03b2f53270412420a4555ef882e22" integrity sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA== lilconfig@^2.1.0: version "2.1.0" - resolved "https://registry.npmjs.org/lilconfig/-/lilconfig-2.1.0.tgz#78e23ac89ebb7e1bfbf25b18043de756548e7f52" + resolved "https://registry.yarnpkg.com/lilconfig/-/lilconfig-2.1.0.tgz#78e23ac89ebb7e1bfbf25b18043de756548e7f52" integrity sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ== lines-and-columns@^1.1.6: version "1.2.4" - resolved "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632" + resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632" integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg== loader-runner@^4.2.0: version "4.3.0" - resolved "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz#c1b4a163b99f614830353b16755e7149ac2314e1" + resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-4.3.0.tgz#c1b4a163b99f614830353b16755e7149ac2314e1" integrity sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg== loader-utils@^2.0.0: version "2.0.4" - resolved "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz#8b5cb38b5c34a9a018ee1fc0e6a066d1dfcc528c" + resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-2.0.4.tgz#8b5cb38b5c34a9a018ee1fc0e6a066d1dfcc528c" integrity sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw== dependencies: big.js "^5.2.2" @@ -4098,7 +4089,7 @@ loader-utils@^2.0.0: locate-path@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz#dbec3b3ab759758071b58fe59fc41871af21400e" + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-3.0.0.tgz#dbec3b3ab759758071b58fe59fc41871af21400e" integrity sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A== dependencies: p-locate "^3.0.0" @@ -4113,39 +4104,39 @@ locate-path@^5.0.0: lodash.clonedeep@^4.5.0: version "4.5.0" - resolved "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz#e23f3f9c4f8fbdde872529c1071857a086e5ccef" + resolved "https://registry.yarnpkg.com/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz#e23f3f9c4f8fbdde872529c1071857a086e5ccef" integrity sha512-H5ZhCF25riFd9uB5UCkVKo61m3S/xZk1x4wA6yp/L3RFP6Z/eHH1ymQcGLo7J3GMPfm0V/7m1tryHuGVxpqEBQ== lodash.get@^4.4.2: version "4.4.2" - resolved "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz#2d177f652fa31e939b4438d5341499dfa3825e99" + resolved "https://registry.yarnpkg.com/lodash.get/-/lodash.get-4.4.2.tgz#2d177f652fa31e939b4438d5341499dfa3825e99" integrity sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ== lodash.memoize@^4.1.2: version "4.1.2" - resolved "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe" + resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe" integrity sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag== lodash.uniq@^4.5.0: version "4.5.0" - resolved "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" + resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" integrity sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ== lodash@^4.17.15, lodash@^4.17.20, lodash@^4.17.21, lodash@^4.17.4: version "4.17.21" - resolved "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" + resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.2.0, loose-envify@^1.3.1, loose-envify@^1.4.0: version "1.4.0" - resolved "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf" + resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf" integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q== dependencies: js-tokens "^3.0.0 || ^4.0.0" lower-case@^2.0.2: version "2.0.2" - resolved "https://registry.npmjs.org/lower-case/-/lower-case-2.0.2.tgz#6fa237c63dbdc4a82ca0fd882e4722dc5e634e28" + resolved "https://registry.yarnpkg.com/lower-case/-/lower-case-2.0.2.tgz#6fa237c63dbdc4a82ca0fd882e4722dc5e634e28" integrity sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg== dependencies: tslib "^2.0.3" @@ -4159,7 +4150,7 @@ lru-cache@^6.0.0: lru-queue@^0.1.0: version "0.1.0" - resolved "https://registry.npmjs.org/lru-queue/-/lru-queue-0.1.0.tgz#2738bd9f0d3cf4f84490c5736c48699ac632cda3" + resolved "https://registry.yarnpkg.com/lru-queue/-/lru-queue-0.1.0.tgz#2738bd9f0d3cf4f84490c5736c48699ac632cda3" integrity sha512-BpdYkt9EvGl8OfWHDQPISVpcl5xZthb+XPsbELj5AQXxIC8IriDZIQYjBJPEm5rS420sjZ0TLEzRcq5KdBhYrQ== dependencies: es5-ext "~0.10.2" @@ -4178,7 +4169,7 @@ md5-file@^5.0.0: md5@^2.3.0: version "2.3.0" - resolved "https://registry.npmjs.org/md5/-/md5-2.3.0.tgz#c3da9a6aae3a30b46b7b0c349b87b110dc3bda4f" + resolved "https://registry.yarnpkg.com/md5/-/md5-2.3.0.tgz#c3da9a6aae3a30b46b7b0c349b87b110dc3bda4f" integrity sha512-T1GITYmFaKuO91vxyoQMFETst+O71VUPEU3ze5GNzDm0OWdP8v1ziTaAEPUr/3kLsY3Sftgz242A1SetQiDL7g== dependencies: charenc "0.0.2" @@ -4187,34 +4178,34 @@ md5@^2.3.0: mdn-data@2.0.28: version "2.0.28" - resolved "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.28.tgz#5ec48e7bef120654539069e1ae4ddc81ca490eba" + resolved "https://registry.yarnpkg.com/mdn-data/-/mdn-data-2.0.28.tgz#5ec48e7bef120654539069e1ae4ddc81ca490eba" integrity sha512-aylIc7Z9y4yzHYAJNuESG3hfhC+0Ibp/MAMiaOZgNv4pmEdFyfZhhhny4MNiAfWdBQ1RQ2mfDWmM1x8SvGyp8g== mdn-data@2.0.30: version "2.0.30" - resolved "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.30.tgz#ce4df6f80af6cfbe218ecd5c552ba13c4dfa08cc" + resolved "https://registry.yarnpkg.com/mdn-data/-/mdn-data-2.0.30.tgz#ce4df6f80af6cfbe218ecd5c552ba13c4dfa08cc" integrity sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA== media-typer@0.3.0: version "0.3.0" - resolved "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" + resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" integrity sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ== memfs@^3.4.12: version "3.6.0" - resolved "https://registry.npmjs.org/memfs/-/memfs-3.6.0.tgz#d7a2110f86f79dd950a8b6df6d57bc984aa185f6" + resolved "https://registry.yarnpkg.com/memfs/-/memfs-3.6.0.tgz#d7a2110f86f79dd950a8b6df6d57bc984aa185f6" integrity sha512-EGowvkkgbMcIChjMTMkESFDbZeSh8xZ7kNSF0hAiAN4Jh6jgHCRS0Ga/+C8y6Au+oqpezRHCfPsmJ2+DwAgiwQ== dependencies: fs-monkey "^1.0.4" memoize-one@^6.0.0: version "6.0.0" - resolved "https://registry.npmjs.org/memoize-one/-/memoize-one-6.0.0.tgz#b2591b871ed82948aee4727dc6abceeeac8c1045" + resolved "https://registry.yarnpkg.com/memoize-one/-/memoize-one-6.0.0.tgz#b2591b871ed82948aee4727dc6abceeeac8c1045" integrity sha512-rkpe71W0N0c0Xz6QD0eJETuWAJGnJ9afsl1srmwPrI+yBCkge5EycXXbYRyvL29zZVUWQCY7InPRCv3GDXuZNw== memoizee@^0.4.15: version "0.4.15" - resolved "https://registry.npmjs.org/memoizee/-/memoizee-0.4.15.tgz#e6f3d2da863f318d02225391829a6c5956555b72" + resolved "https://registry.yarnpkg.com/memoizee/-/memoizee-0.4.15.tgz#e6f3d2da863f318d02225391829a6c5956555b72" integrity sha512-UBWmJpLZd5STPm7PMUlOw/TSy972M+z8gcyQ5veOnSDRREz/0bmpyTfKt3/51DhEBqCZQn1udM/5flcSPYhkdQ== dependencies: d "^1.0.1" @@ -4233,17 +4224,17 @@ memory-pager@^1.0.2: merge-descriptors@1.0.1: version "1.0.1" - resolved "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61" + resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61" integrity sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w== merge-stream@^2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" + resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w== method-override@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/method-override/-/method-override-3.0.0.tgz#6ab0d5d574e3208f15b0c9cf45ab52000468d7a2" + resolved "https://registry.yarnpkg.com/method-override/-/method-override-3.0.0.tgz#6ab0d5d574e3208f15b0c9cf45ab52000468d7a2" integrity sha512-IJ2NNN/mSl9w3kzWB92rcdHpz+HjkxhDJWNDBqSlas+zQdP8wBiJzITPg08M/k2uVvMow7Sk41atndNtt/PHSA== dependencies: debug "3.1.0" @@ -4253,49 +4244,49 @@ method-override@^3.0.0: methods@~1.1.2: version "1.1.2" - resolved "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" + resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" integrity sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w== micro-memoize@^4.0.14: version "4.1.2" - resolved "https://registry.npmjs.org/micro-memoize/-/micro-memoize-4.1.2.tgz#ce719c1ba1e41592f1cd91c64c5f41dcbf135f36" + resolved "https://registry.yarnpkg.com/micro-memoize/-/micro-memoize-4.1.2.tgz#ce719c1ba1e41592f1cd91c64c5f41dcbf135f36" integrity sha512-+HzcV2H+rbSJzApgkj0NdTakkC+bnyeiUxgT6/m7mjcz1CmM22KYFKp+EVj1sWe4UYcnriJr5uqHQD/gMHLD+g== mime-db@1.52.0, "mime-db@>= 1.43.0 < 2": version "1.52.0" - resolved "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70" + resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70" integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg== mime-types@^2.1.27, mime-types@^2.1.31, mime-types@~2.1.24, mime-types@~2.1.34: version "2.1.35" - resolved "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a" + resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a" integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw== dependencies: mime-db "1.52.0" mime@1.6.0: version "1.6.0" - resolved "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" + resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== mimic-fn@^2.1.0: version "2.1.0" - resolved "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" + resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== mimic-fn@^3.0.0: version "3.1.0" - resolved "https://registry.npmjs.org/mimic-fn/-/mimic-fn-3.1.0.tgz#65755145bbf3e36954b949c16450427451d5ca74" + resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-3.1.0.tgz#65755145bbf3e36954b949c16450427451d5ca74" integrity sha512-Ysbi9uYW9hFyfrThdDEQuykN4Ey6BuwPD2kpI5ES/nFTDn/98yxYNLZJcgUAKPT/mcrLLKaGzJR9YVxJrIdASQ== mimic-response@^3.1.0: version "3.1.0" - resolved "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz#2d1d59af9c1b129815accc2c46a022a5ce1fa3c9" + resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-3.1.0.tgz#2d1d59af9c1b129815accc2c46a022a5ce1fa3c9" integrity sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ== mini-css-extract-plugin@1.6.2: version "1.6.2" - resolved "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-1.6.2.tgz#83172b4fd812f8fc4a09d6f6d16f924f53990ca8" + resolved "https://registry.yarnpkg.com/mini-css-extract-plugin/-/mini-css-extract-plugin-1.6.2.tgz#83172b4fd812f8fc4a09d6f6d16f924f53990ca8" integrity sha512-WhDvO3SjGm40oV5y26GjMJYjd2UMqrLAGKy5YS2/3QKJy2F7jgynuHTir/tgUUOiNQu5saXHdc8reo7YuhhT4Q== dependencies: loader-utils "^2.0.0" @@ -4304,36 +4295,36 @@ mini-css-extract-plugin@1.6.2: minimatch@^3.1.1: version "3.1.2" - resolved "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== dependencies: brace-expansion "^1.1.7" minimatch@^5.0.1: version "5.1.6" - resolved "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz#1cfcb8cf5522ea69952cd2af95ae09477f122a96" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-5.1.6.tgz#1cfcb8cf5522ea69952cd2af95ae09477f122a96" integrity sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g== dependencies: brace-expansion "^2.0.1" minimist@^1.2.0, minimist@^1.2.3, minimist@^1.2.6, minimist@^1.2.7: version "1.2.8" - resolved "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c" integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA== mkdirp-classic@^0.5.2, mkdirp-classic@^0.5.3: version "0.5.3" - resolved "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz#fa10c9115cc6d8865be221ba47ee9bed78601113" + resolved "https://registry.yarnpkg.com/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz#fa10c9115cc6d8865be221ba47ee9bed78601113" integrity sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A== mkdirp@^1.0.4: version "1.0.4" - resolved "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== monaco-editor@^0.38.0: version "0.38.0" - resolved "https://registry.npmjs.org/monaco-editor/-/monaco-editor-0.38.0.tgz#7b3cd16f89b1b8867fcd3c96e67fccee791ff05c" + resolved "https://registry.yarnpkg.com/monaco-editor/-/monaco-editor-0.38.0.tgz#7b3cd16f89b1b8867fcd3c96e67fccee791ff05c" integrity sha512-11Fkh6yzEmwx7O0YoLxeae0qEGFwmyPRlVxpg7oF9czOOCB/iCjdJrG5I67da5WiXK3YJCxoz9TJFE8Tfq/v9A== mongodb-connection-string-url@^2.5.4, mongodb-connection-string-url@^2.6.0: @@ -4452,12 +4443,12 @@ mquery@5.0.0: mrmime@^1.0.0: version "1.0.1" - resolved "https://registry.npmjs.org/mrmime/-/mrmime-1.0.1.tgz#5f90c825fad4bdd41dc914eff5d1a8cfdaf24f27" + resolved "https://registry.yarnpkg.com/mrmime/-/mrmime-1.0.1.tgz#5f90c825fad4bdd41dc914eff5d1a8cfdaf24f27" integrity sha512-hzzEagAgDyoU1Q6yg5uI+AorQgdvMCur3FcKf7NhMKWsaYg+RnbTyHRa/9IlLF9rf455MOCtcqqrQQ83pPP7Uw== ms@2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" integrity sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A== ms@2.1.2: @@ -4472,7 +4463,7 @@ ms@2.1.3, ms@^2.1.1: mz@^2.7.0: version "2.7.0" - resolved "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz#95008057a56cafadc2bc63dde7f9ff6955948e32" + resolved "https://registry.yarnpkg.com/mz/-/mz-2.7.0.tgz#95008057a56cafadc2bc63dde7f9ff6955948e32" integrity sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q== dependencies: any-promise "^1.0.0" @@ -4481,17 +4472,17 @@ mz@^2.7.0: nanoid@^3.3.6: version "3.3.6" - resolved "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz#443380c856d6e9f9824267d960b4236ad583ea4c" + resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.6.tgz#443380c856d6e9f9824267d960b4236ad583ea4c" integrity sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA== napi-build-utils@^1.0.1: version "1.0.2" - resolved "https://registry.npmjs.org/napi-build-utils/-/napi-build-utils-1.0.2.tgz#b1fddc0b2c46e380a0b7a76f984dd47c41a13806" + resolved "https://registry.yarnpkg.com/napi-build-utils/-/napi-build-utils-1.0.2.tgz#b1fddc0b2c46e380a0b7a76f984dd47c41a13806" integrity sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg== needle@^2.5.2: version "2.9.1" - resolved "https://registry.npmjs.org/needle/-/needle-2.9.1.tgz#22d1dffbe3490c2b83e301f7709b6736cd8f2684" + resolved "https://registry.yarnpkg.com/needle/-/needle-2.9.1.tgz#22d1dffbe3490c2b83e301f7709b6736cd8f2684" integrity sha512-6R9fqJ5Zcmf+uYaFgdIHmLwNldn5HbK8L5ybn7Uz+ylX/rnOsSp1AHcvQSrCaFN+qNM1wpymHqD7mVasEOlHGQ== dependencies: debug "^3.2.6" @@ -4500,12 +4491,12 @@ needle@^2.5.2: negotiator@0.6.3: version "0.6.3" - resolved "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz#58e323a72fedc0d6f9cd4d31fe49f51479590ccd" + resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.3.tgz#58e323a72fedc0d6f9cd4d31fe49f51479590ccd" integrity sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg== neo-async@^2.6.2: version "2.6.2" - resolved "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz#b4aafb93e3aeb2d8174ca53cf163ab7d7308305f" + resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.2.tgz#b4aafb93e3aeb2d8174ca53cf163ab7d7308305f" integrity sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw== new-find-package-json@^2.0.0: @@ -4517,76 +4508,76 @@ new-find-package-json@^2.0.0: next-tick@1, next-tick@^1.1.0: version "1.1.0" - resolved "https://registry.npmjs.org/next-tick/-/next-tick-1.1.0.tgz#1836ee30ad56d67ef281b22bd199f709449b35eb" + resolved "https://registry.yarnpkg.com/next-tick/-/next-tick-1.1.0.tgz#1836ee30ad56d67ef281b22bd199f709449b35eb" integrity sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ== no-case@^3.0.4: version "3.0.4" - resolved "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz#d361fd5c9800f558551a8369fc0dcd4662b6124d" + resolved "https://registry.yarnpkg.com/no-case/-/no-case-3.0.4.tgz#d361fd5c9800f558551a8369fc0dcd4662b6124d" integrity sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg== dependencies: lower-case "^2.0.2" tslib "^2.0.3" node-abi@^3.3.0: - version "3.45.0" - resolved "https://registry.npmjs.org/node-abi/-/node-abi-3.45.0.tgz#f568f163a3bfca5aacfce1fbeee1fa2cc98441f5" - integrity sha512-iwXuFrMAcFVi/ZoZiqq8BzAdsLw9kxDfTC0HMyjXfSL/6CSDAGD5UmR7azrAgWV1zKYq7dUUMj4owusBWKLsiQ== + version "3.47.0" + resolved "https://registry.yarnpkg.com/node-abi/-/node-abi-3.47.0.tgz#6cbfa2916805ae25c2b7156ca640131632eb05e8" + integrity sha512-2s6B2CWZM//kPgwnuI0KrYwNjfdByE25zvAaEpq9IH4zcNsarH8Ihu/UuX6XMPEogDAxkuUFeZn60pXNHAqn3A== dependencies: semver "^7.3.5" node-addon-api@^5.0.0: version "5.1.0" - resolved "https://registry.npmjs.org/node-addon-api/-/node-addon-api-5.1.0.tgz#49da1ca055e109a23d537e9de43c09cca21eb762" + resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-5.1.0.tgz#49da1ca055e109a23d537e9de43c09cca21eb762" integrity sha512-eh0GgfEkpnoWDq+VY8OyvYhFEzBk6jIYbRKdIlyTiAXIVJ8PyBaKb0rp7oDtoddbdoHWhq8wwr+XZ81F1rpNdA== node-fetch@^2.6.1: - version "2.6.12" - resolved "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.12.tgz#02eb8e22074018e3d5a83016649d04df0e348fba" - integrity sha512-C/fGU2E8ToujUivIO0H+tpQ6HWo4eEmchoPIoXtxCrVghxdKq+QOHqEZW7tuP3KlV3bC8FRMO5nMCC7Zm1VP6g== + version "2.6.13" + resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.13.tgz#a20acbbec73c2e09f9007de5cda17104122e0010" + integrity sha512-StxNAxh15zr77QvvkmveSQ8uCQ4+v5FkvNTj0OESmiHu+VRi/gXArXtkWMElOsOUNLtUEvI4yS+rdtOHZTwlQA== dependencies: whatwg-url "^5.0.0" node-releases@^2.0.13: version "2.0.13" - resolved "https://registry.npmjs.org/node-releases/-/node-releases-2.0.13.tgz#d5ed1627c23e3461e819b02e57b75e4899b1c81d" + resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.13.tgz#d5ed1627c23e3461e819b02e57b75e4899b1c81d" integrity sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ== nodemailer@^6.9.0: version "6.9.4" - resolved "https://registry.npmjs.org/nodemailer/-/nodemailer-6.9.4.tgz#93bd4a60eb0be6fa088a0483340551ebabfd2abf" + resolved "https://registry.yarnpkg.com/nodemailer/-/nodemailer-6.9.4.tgz#93bd4a60eb0be6fa088a0483340551ebabfd2abf" integrity sha512-CXjQvrQZV4+6X5wP6ZIgdehJamI63MFoYFGGPtHudWym9qaEHDNdPzaj5bfMCvxG1vhAileSWW90q7nL0N36mA== normalize-path@^3.0.0, normalize-path@~3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" + resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== normalize-range@^0.1.2: version "0.1.2" - resolved "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz#2d10c06bdfd312ea9777695a4d28439456b75942" + resolved "https://registry.yarnpkg.com/normalize-range/-/normalize-range-0.1.2.tgz#2d10c06bdfd312ea9777695a4d28439456b75942" integrity sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA== nth-check@^2.0.1: version "2.1.1" - resolved "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz#c9eab428effce36cd6b92c924bdb000ef1f1ed1d" + resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-2.1.1.tgz#c9eab428effce36cd6b92c924bdb000ef1f1ed1d" integrity sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w== dependencies: boolbase "^1.0.0" object-assign@^4.0.1, object-assign@^4.1.1: version "4.1.1" - resolved "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" + resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" integrity sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg== object-inspect@^1.9.0: version "1.12.3" - resolved "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.3.tgz#ba62dffd67ee256c8c086dfae69e016cd1f198b9" + resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.12.3.tgz#ba62dffd67ee256c8c086dfae69e016cd1f198b9" integrity sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g== object-is@^1.1.5: version "1.1.5" - resolved "https://registry.npmjs.org/object-is/-/object-is-1.1.5.tgz#b9deeaa5fc7f1846a0faecdceec138e5778f53ac" + resolved "https://registry.yarnpkg.com/object-is/-/object-is-1.1.5.tgz#b9deeaa5fc7f1846a0faecdceec138e5778f53ac" integrity sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw== dependencies: call-bind "^1.0.2" @@ -4594,17 +4585,17 @@ object-is@^1.1.5: object-keys@^1.1.1: version "1.1.1" - resolved "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" + resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== object-to-formdata@^4.4.2: version "4.5.1" - resolved "https://registry.npmjs.org/object-to-formdata/-/object-to-formdata-4.5.1.tgz#b6955a9c505b58df15852fee5f844b418b3eb6fe" + resolved "https://registry.yarnpkg.com/object-to-formdata/-/object-to-formdata-4.5.1.tgz#b6955a9c505b58df15852fee5f844b418b3eb6fe" integrity sha512-QiM9D0NiU5jV6J6tjE1g7b4Z2tcUnKs1OPUi4iMb2zH+7jwlcUrASghgkFk9GtzqNNq8rTQJtT8AzjBAvLoNMw== object.assign@^4.1.4: version "4.1.4" - resolved "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz#9673c7c7c351ab8c4d0b516f4343ebf4dfb7799f" + resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.4.tgz#9673c7c7c351ab8c4d0b516f4343ebf4dfb7799f" integrity sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ== dependencies: call-bind "^1.0.2" @@ -4614,19 +4605,19 @@ object.assign@^4.1.4: on-exit-leak-free@^2.1.0: version "2.1.0" - resolved "https://registry.npmjs.org/on-exit-leak-free/-/on-exit-leak-free-2.1.0.tgz#5c703c968f7e7f851885f6459bf8a8a57edc9cc4" + resolved "https://registry.yarnpkg.com/on-exit-leak-free/-/on-exit-leak-free-2.1.0.tgz#5c703c968f7e7f851885f6459bf8a8a57edc9cc4" integrity sha512-VuCaZZAjReZ3vUwgOB8LxAosIurDiAW0s13rI1YwmaP++jvcxP77AWoQvenZebpCA2m8WC1/EosPYPMjnRAp/w== on-finished@2.4.1: version "2.4.1" - resolved "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz#58c8c44116e54845ad57f14ab10b03533184ac3f" + resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.4.1.tgz#58c8c44116e54845ad57f14ab10b03533184ac3f" integrity sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg== dependencies: ee-first "1.1.1" on-headers@~1.0.2: version "1.0.2" - resolved "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz#772b0ae6aaa525c399e489adfad90c403eb3c28f" + resolved "https://registry.yarnpkg.com/on-headers/-/on-headers-1.0.2.tgz#772b0ae6aaa525c399e489adfad90c403eb3c28f" integrity sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA== once@^1.3.0, once@^1.3.1, once@^1.4.0: @@ -4638,14 +4629,14 @@ once@^1.3.0, once@^1.3.1, once@^1.4.0: onetime@^5.1.2: version "5.1.2" - resolved "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz#d0e96ebb56b07476df1dd9c4806e5237985ca45e" + resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.2.tgz#d0e96ebb56b07476df1dd9c4806e5237985ca45e" integrity sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg== dependencies: mimic-fn "^2.1.0" opener@^1.5.2: version "1.5.2" - resolved "https://registry.npmjs.org/opener/-/opener-1.5.2.tgz#5d37e1f35077b9dcac4301372271afdeb2a13598" + resolved "https://registry.yarnpkg.com/opener/-/opener-1.5.2.tgz#5d37e1f35077b9dcac4301372271afdeb2a13598" integrity sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A== p-limit@^2.0.0, p-limit@^2.2.0: @@ -4657,7 +4648,7 @@ p-limit@^2.0.0, p-limit@^2.2.0: p-locate@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz#322d69a05c0264b25997d9f40cd8a891ab0064a4" + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-3.0.0.tgz#322d69a05c0264b25997d9f40cd8a891ab0064a4" integrity sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ== dependencies: p-limit "^2.0.0" @@ -4676,7 +4667,7 @@ p-try@^2.0.0: param-case@^3.0.4: version "3.0.4" - resolved "https://registry.npmjs.org/param-case/-/param-case-3.0.4.tgz#7d17fe4aa12bde34d4a77d91acfb6219caad01c5" + resolved "https://registry.yarnpkg.com/param-case/-/param-case-3.0.4.tgz#7d17fe4aa12bde34d4a77d91acfb6219caad01c5" integrity sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A== dependencies: dot-case "^3.0.4" @@ -4684,14 +4675,14 @@ param-case@^3.0.4: parent-module@^1.0.0: version "1.0.1" - resolved "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" + resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g== dependencies: callsites "^3.0.0" parse-json@^5.0.0: version "5.2.0" - resolved "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz#c76fc66dee54231c962b22bcc8a72cf2f99753cd" + resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-5.2.0.tgz#c76fc66dee54231c962b22bcc8a72cf2f99753cd" integrity sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg== dependencies: "@babel/code-frame" "^7.0.0" @@ -4701,12 +4692,12 @@ parse-json@^5.0.0: parseurl@~1.3.2, parseurl@~1.3.3: version "1.3.3" - resolved "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4" + resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4" integrity sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ== pascal-case@^3.1.2: version "3.1.2" - resolved "https://registry.npmjs.org/pascal-case/-/pascal-case-3.1.2.tgz#b48e0ef2b98e205e7c1dae747d0b1508237660eb" + resolved "https://registry.yarnpkg.com/pascal-case/-/pascal-case-3.1.2.tgz#b48e0ef2b98e205e7c1dae747d0b1508237660eb" integrity sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g== dependencies: no-case "^3.0.4" @@ -4714,14 +4705,14 @@ pascal-case@^3.1.2: passport-anonymous@^1.0.1: version "1.0.1" - resolved "https://registry.npmjs.org/passport-anonymous/-/passport-anonymous-1.0.1.tgz#241e37274ec44dfb7f6cad234b41c438386bc117" + resolved "https://registry.yarnpkg.com/passport-anonymous/-/passport-anonymous-1.0.1.tgz#241e37274ec44dfb7f6cad234b41c438386bc117" integrity sha512-Mk2dls97nLTzHpsWCYQ54IVGucWaiWSHHr3+IhWYAebg4dRgRQIfyoeYrixoxB2z2z4+EM7p9yjC+a3yMB5z5A== dependencies: passport-strategy "1.x.x" passport-headerapikey@^1.2.2: version "1.2.2" - resolved "https://registry.npmjs.org/passport-headerapikey/-/passport-headerapikey-1.2.2.tgz#b71960523999c9864151b8535c919e3ff5ba75ce" + resolved "https://registry.yarnpkg.com/passport-headerapikey/-/passport-headerapikey-1.2.2.tgz#b71960523999c9864151b8535c919e3ff5ba75ce" integrity sha512-4BvVJRrWsNJPrd3UoZfcnnl4zvUWYKEtfYkoDsaOKBsrWHYmzTApCjs7qUbncOLexE9ul0IRiYBFfBG0y9IVQA== dependencies: lodash "^4.17.15" @@ -4729,7 +4720,7 @@ passport-headerapikey@^1.2.2: passport-jwt@^4.0.1: version "4.0.1" - resolved "https://registry.npmjs.org/passport-jwt/-/passport-jwt-4.0.1.tgz#c443795eff322c38d173faa0a3c481479646ec3d" + resolved "https://registry.yarnpkg.com/passport-jwt/-/passport-jwt-4.0.1.tgz#c443795eff322c38d173faa0a3c481479646ec3d" integrity sha512-UCKMDYhNuGOBE9/9Ycuoyh7vP6jpeTp/+sfMJl7nLff/t6dps+iaeE0hhNkKN8/HZHcJ7lCdOyDxHdDoxoSvdQ== dependencies: jsonwebtoken "^9.0.0" @@ -4737,19 +4728,19 @@ passport-jwt@^4.0.1: passport-local@^1.0.0: version "1.0.0" - resolved "https://registry.npmjs.org/passport-local/-/passport-local-1.0.0.tgz#1fe63268c92e75606626437e3b906662c15ba6ee" + resolved "https://registry.yarnpkg.com/passport-local/-/passport-local-1.0.0.tgz#1fe63268c92e75606626437e3b906662c15ba6ee" integrity sha512-9wCE6qKznvf9mQYYbgJ3sVOHmCWoUNMVFoZzNoznmISbhnNNPhN9xfY3sLmScHMetEJeoY7CXwfhCe7argfQow== dependencies: passport-strategy "1.x.x" passport-strategy@1.x.x, passport-strategy@^1.0.0: version "1.0.0" - resolved "https://registry.npmjs.org/passport-strategy/-/passport-strategy-1.0.0.tgz#b5539aa8fc225a3d1ad179476ddf236b440f52e4" + resolved "https://registry.yarnpkg.com/passport-strategy/-/passport-strategy-1.0.0.tgz#b5539aa8fc225a3d1ad179476ddf236b440f52e4" integrity sha512-CB97UUvDKJde2V0KDWWB3lyf6PC3FaZP7YxZ2G8OAtn9p4HI9j9JLP9qjOGZFvyl8uwNT8qM+hGnz/n16NI7oA== passport@^0.6.0: version "0.6.0" - resolved "https://registry.npmjs.org/passport/-/passport-0.6.0.tgz#e869579fab465b5c0b291e841e6cc95c005fac9d" + resolved "https://registry.yarnpkg.com/passport/-/passport-0.6.0.tgz#e869579fab465b5c0b291e841e6cc95c005fac9d" integrity sha512-0fe+p3ZnrWRW74fe8+SvCyf4a3Pb2/h7gFkQ8yTJpAO50gDzlfjZUZTO1k5Eg9kUct22OxHLqDZoKUWRHOh9ug== dependencies: passport-strategy "1.x.x" @@ -4758,12 +4749,12 @@ passport@^0.6.0: path-browserify@^1.0.1: version "1.0.1" - resolved "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz#d98454a9c3753d5790860f16f68867b9e46be1fd" + resolved "https://registry.yarnpkg.com/path-browserify/-/path-browserify-1.0.1.tgz#d98454a9c3753d5790860f16f68867b9e46be1fd" integrity sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g== path-exists@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" + resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" integrity sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ== path-exists@^4.0.0: @@ -4773,45 +4764,44 @@ path-exists@^4.0.0: path-is-absolute@^1.0.0: version "1.0.1" - resolved "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" + resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" integrity sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg== path-key@^3.1.0: version "3.1.1" - resolved "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" + resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== path-parse@^1.0.7: version "1.0.7" - resolved "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" + resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== path-to-regexp@0.1.7: version "0.1.7" - resolved "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz#df604178005f522f15eb4490e7247a1bfaa67f8c" + resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.7.tgz#df604178005f522f15eb4490e7247a1bfaa67f8c" integrity sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ== path-to-regexp@^1.7.0: version "1.8.0" - resolved "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.8.0.tgz#887b3ba9d84393e87a0a0b9f4cb756198b53548a" + resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-1.8.0.tgz#887b3ba9d84393e87a0a0b9f4cb756198b53548a" integrity sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA== dependencies: isarray "0.0.1" path-type@^4.0.0: version "4.0.0" - resolved "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" + resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== pause@0.0.1: version "0.0.1" - resolved "https://registry.npmjs.org/pause/-/pause-0.0.1.tgz#1d408b3fdb76923b9543d96fb4c9dfd535d9cb5d" + resolved "https://registry.yarnpkg.com/pause/-/pause-0.0.1.tgz#1d408b3fdb76923b9543d96fb4c9dfd535d9cb5d" integrity sha512-KG8UEiEVkR3wGEb4m5yZkVCzigAD+cVEJck2CzYZO37ZGJfctvVptVO192MwrtPhzONn6go8ylnOdMhKqi4nfg== -payload@^1.11.8: - version "1.11.8" - resolved "https://registry.npmjs.org/payload/-/payload-1.11.8.tgz#8b924b131dccdddc1665fb777c7cf681017058b1" - integrity sha512-N5nYYdmY1L1iBqqrrB7frBJwTUx1+yEk4PLKvy3VkQKpegLqyjGLhAGl41H5JIzBGDUFhcOY1feRoG4kOLmFHw== +payload@payloadcms/payload#build/chore/update-2.0: + version "1.14.0" + resolved "https://codeload.github.com/payloadcms/payload/tar.gz/76b46b5f4529080a4e42a970529430ea8859d0b8" dependencies: "@date-io/date-fns" "^2.16.0" "@dnd-kit/core" "^6.0.7" @@ -4820,7 +4810,7 @@ payload@^1.11.8: "@faceless-ui/scroll-info" "^1.3.0" "@faceless-ui/window-info" "^2.1.1" "@monaco-editor/react" "^4.5.1" - "@swc/core" "^1.3.26" + "@swc/core" "^1.3.76" "@swc/register" "^0.1.10" "@types/sharp" "^0.31.1" body-parser "^1.20.1" @@ -4870,9 +4860,6 @@ payload@^1.11.8: minimist "^1.2.7" mkdirp "^1.0.4" monaco-editor "^0.38.0" - mongoose "6.11.4" - mongoose-aggregate-paginate-v2 "^1.0.6" - mongoose-paginate-v2 "1.7.22" nodemailer "^6.9.0" object-to-formdata "^4.4.2" passport "^0.6.0" @@ -4881,8 +4868,8 @@ payload@^1.11.8: passport-jwt "^4.0.1" passport-local "^1.0.0" path-browserify "^1.0.1" - pino "^6.4.1" - pino-pretty "^9.1.1" + pino "^8.15.0" + pino-pretty "^10.2.0" pluralize "^8.0.0" postcss "^8.4.21" postcss-loader "^6.2.1" @@ -4928,7 +4915,7 @@ payload@^1.11.8: peek-readable@^4.1.0: version "4.1.0" - resolved "https://registry.npmjs.org/peek-readable/-/peek-readable-4.1.0.tgz#4ece1111bf5c2ad8867c314c81356847e8a62e72" + resolved "https://registry.yarnpkg.com/peek-readable/-/peek-readable-4.1.0.tgz#4ece1111bf5c2ad8867c314c81356847e8a62e72" integrity sha512-ZI3LnwUv5nOGbQzD9c2iDG6toheuXSZP5esSHBjopsXH4dg19soufvpUGA3uohi5anFtGb2lhAVdHzH6R/Evvg== pend@~1.2.0: @@ -4938,26 +4925,26 @@ pend@~1.2.0: picocolors@^1.0.0: version "1.0.0" - resolved "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c" + resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c" integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ== picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.3: version "2.3.1" - resolved "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" + resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== -pino-abstract-transport@^1.0.0: +pino-abstract-transport@^1.0.0, pino-abstract-transport@v1.0.0: version "1.0.0" - resolved "https://registry.npmjs.org/pino-abstract-transport/-/pino-abstract-transport-1.0.0.tgz#cc0d6955fffcadb91b7b49ef220a6cc111d48bb3" + resolved "https://registry.yarnpkg.com/pino-abstract-transport/-/pino-abstract-transport-1.0.0.tgz#cc0d6955fffcadb91b7b49ef220a6cc111d48bb3" integrity sha512-c7vo5OpW4wIS42hUVcT5REsL8ZljsUfBjqV/e2sFxmFEFZiq1XLUp5EYLtuDH6PEHq9W1egWqRbnLUP5FuZmOA== dependencies: readable-stream "^4.0.0" split2 "^4.0.0" -pino-pretty@^9.1.1: - version "9.4.1" - resolved "https://registry.npmjs.org/pino-pretty/-/pino-pretty-9.4.1.tgz#89121ef32d00a4d2e4b1c62850dcfff26f62a185" - integrity sha512-loWr5SNawVycvY//hamIzyz3Fh5OSpvkcO13MwdDW+eKIGylobPLqnVGTDwDXkdmpJd1BhEG+qhDw09h6SqJiQ== +pino-pretty@^10.2.0: + version "10.2.0" + resolved "https://registry.yarnpkg.com/pino-pretty/-/pino-pretty-10.2.0.tgz#c674a153e15c08d7032a826d0051d786feace1d9" + integrity sha512-tRvpyEmGtc2D+Lr3FulIZ+R1baggQ4S3xD2Ar93KixFEDx6SEAUP3W5aYuEw1C73d6ROrNcB2IXLteW8itlwhA== dependencies: colorette "^2.0.7" dateformat "^4.6.3" @@ -4974,27 +4961,31 @@ pino-pretty@^9.1.1: sonic-boom "^3.0.0" strip-json-comments "^3.1.1" -pino-std-serializers@^3.1.0: - version "3.2.0" - resolved "https://registry.npmjs.org/pino-std-serializers/-/pino-std-serializers-3.2.0.tgz#b56487c402d882eb96cd67c257868016b61ad671" - integrity sha512-EqX4pwDPrt3MuOAAUBMU0Tk5kR/YcCM5fNPEzgCO2zJ5HfX0vbiH9HbJglnyeQsN96Kznae6MWD47pZB5avTrg== +pino-std-serializers@^6.0.0: + version "6.2.2" + resolved "https://registry.yarnpkg.com/pino-std-serializers/-/pino-std-serializers-6.2.2.tgz#d9a9b5f2b9a402486a5fc4db0a737570a860aab3" + integrity sha512-cHjPPsE+vhj/tnhCy/wiMh3M3z3h/j15zHQX+S9GkTBgqJuTuJzYJ4gUyACLhDaJ7kk9ba9iRDmbH2tJU03OiA== -pino@^6.4.1: - version "6.14.0" - resolved "https://registry.npmjs.org/pino/-/pino-6.14.0.tgz#b745ea87a99a6c4c9b374e4f29ca7910d4c69f78" - integrity sha512-iuhEDel3Z3hF9Jfe44DPXR8l07bhjuFY3GMHIXbjnY9XcafbyDDwl2sN2vw2GjMPf5Nkoe+OFao7ffn9SXaKDg== +pino@^8.15.0: + version "8.15.0" + resolved "https://registry.yarnpkg.com/pino/-/pino-8.15.0.tgz#67c61d5e397bf297e5a0433976a7f7b8aa6f876b" + integrity sha512-olUADJByk4twxccmAxb1RiGKOSvddHugCV3wkqjyv+3Sooa2KLrmXrKEWOKi0XPCLasRR5jBXxioE1jxUa4KzQ== dependencies: - fast-redact "^3.0.0" - fast-safe-stringify "^2.0.8" - flatstr "^1.0.12" - pino-std-serializers "^3.1.0" - process-warning "^1.0.0" + atomic-sleep "^1.0.0" + fast-redact "^3.1.1" + on-exit-leak-free "^2.1.0" + pino-abstract-transport v1.0.0 + pino-std-serializers "^6.0.0" + process-warning "^2.0.0" quick-format-unescaped "^4.0.3" - sonic-boom "^1.0.2" + real-require "^0.2.0" + safe-stable-stringify "^2.3.1" + sonic-boom "^3.1.0" + thread-stream "^2.0.0" pirates@^4.0.1: version "4.0.6" - resolved "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz#3018ae32ecfcff6c29ba2267cbf21166ac1f36b9" + resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.6.tgz#3018ae32ecfcff6c29ba2267cbf21166ac1f36b9" integrity sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg== pkg-dir@^4.1.0, pkg-dir@^4.2.0: @@ -5006,26 +4997,26 @@ pkg-dir@^4.1.0, pkg-dir@^4.2.0: pkg-up@^3.1.0: version "3.1.0" - resolved "https://registry.npmjs.org/pkg-up/-/pkg-up-3.1.0.tgz#100ec235cc150e4fd42519412596a28512a0def5" + resolved "https://registry.yarnpkg.com/pkg-up/-/pkg-up-3.1.0.tgz#100ec235cc150e4fd42519412596a28512a0def5" integrity sha512-nDywThFk1i4BQK4twPQ6TA4RT8bDY96yeuCVBWL3ePARCiEKDRSrNGbFIgUJpLp+XeIR65v8ra7WuJOFUBtkMA== dependencies: find-up "^3.0.0" pluralize@^8.0.0: version "8.0.0" - resolved "https://registry.npmjs.org/pluralize/-/pluralize-8.0.0.tgz#1a6fa16a38d12a1901e0320fa017051c539ce3b1" + resolved "https://registry.yarnpkg.com/pluralize/-/pluralize-8.0.0.tgz#1a6fa16a38d12a1901e0320fa017051c539ce3b1" integrity sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA== postcss-attribute-case-insensitive@^6.0.2: version "6.0.2" - resolved "https://registry.npmjs.org/postcss-attribute-case-insensitive/-/postcss-attribute-case-insensitive-6.0.2.tgz#e843091859323342e461878d201ee70278809e01" + resolved "https://registry.yarnpkg.com/postcss-attribute-case-insensitive/-/postcss-attribute-case-insensitive-6.0.2.tgz#e843091859323342e461878d201ee70278809e01" integrity sha512-IRuCwwAAQbgaLhxQdQcIIK0dCVXg3XDUnzgKD8iwdiYdwU4rMWRWyl/W9/0nA4ihVpq5pyALiHB2veBJ0292pw== dependencies: postcss-selector-parser "^6.0.10" postcss-calc@^9.0.0: version "9.0.1" - resolved "https://registry.npmjs.org/postcss-calc/-/postcss-calc-9.0.1.tgz#a744fd592438a93d6de0f1434c572670361eb6c6" + resolved "https://registry.yarnpkg.com/postcss-calc/-/postcss-calc-9.0.1.tgz#a744fd592438a93d6de0f1434c572670361eb6c6" integrity sha512-TipgjGyzP5QzEhsOZUaIkeO5mKeMFpebWzRogWG/ysonUlnHcq5aJe0jOjpfzUU8PeSaBQnrE8ehR0QA5vs8PQ== dependencies: postcss-selector-parser "^6.0.11" @@ -5033,14 +5024,14 @@ postcss-calc@^9.0.0: postcss-clamp@^4.1.0: version "4.1.0" - resolved "https://registry.npmjs.org/postcss-clamp/-/postcss-clamp-4.1.0.tgz#7263e95abadd8c2ba1bd911b0b5a5c9c93e02363" + resolved "https://registry.yarnpkg.com/postcss-clamp/-/postcss-clamp-4.1.0.tgz#7263e95abadd8c2ba1bd911b0b5a5c9c93e02363" integrity sha512-ry4b1Llo/9zz+PKC+030KUnPITTJAHeOwjfAyyB60eT0AorGLdzp52s31OsPRHRf8NchkgFoG2y6fCfn1IV1Ow== dependencies: postcss-value-parser "^4.2.0" postcss-color-functional-notation@^6.0.0: version "6.0.0" - resolved "https://registry.npmjs.org/postcss-color-functional-notation/-/postcss-color-functional-notation-6.0.0.tgz#dcc1b8b6273099c597a790dc484d89e2573f5f17" + resolved "https://registry.yarnpkg.com/postcss-color-functional-notation/-/postcss-color-functional-notation-6.0.0.tgz#dcc1b8b6273099c597a790dc484d89e2573f5f17" integrity sha512-kaWTgnhRKFtfMF8H0+NQBFxgr5CGg05WGe07Mc1ld6XHwwRWlqSbHOW0zwf+BtkBQpsdVUu7+gl9dtdvhWMedw== dependencies: "@csstools/postcss-progressive-custom-properties" "^3.0.0" @@ -5048,21 +5039,21 @@ postcss-color-functional-notation@^6.0.0: postcss-color-hex-alpha@^9.0.2: version "9.0.2" - resolved "https://registry.npmjs.org/postcss-color-hex-alpha/-/postcss-color-hex-alpha-9.0.2.tgz#6d3ed50342802469880981a1999515d003ff7d79" + resolved "https://registry.yarnpkg.com/postcss-color-hex-alpha/-/postcss-color-hex-alpha-9.0.2.tgz#6d3ed50342802469880981a1999515d003ff7d79" integrity sha512-SfPjgr//VQ/DOCf80STIAsdAs7sbIbxATvVmd+Ec7JvR8onz9pjawhq3BJM3Pie40EE3TyB0P6hft16D33Nlyg== dependencies: postcss-value-parser "^4.2.0" postcss-color-rebeccapurple@^9.0.0: version "9.0.0" - resolved "https://registry.npmjs.org/postcss-color-rebeccapurple/-/postcss-color-rebeccapurple-9.0.0.tgz#317bf718962c70b779efacf3dc040c56f05d03ce" + resolved "https://registry.yarnpkg.com/postcss-color-rebeccapurple/-/postcss-color-rebeccapurple-9.0.0.tgz#317bf718962c70b779efacf3dc040c56f05d03ce" integrity sha512-RmUFL+foS05AKglkEoqfx+KFdKRVmqUAxlHNz4jLqIi7046drIPyerdl4B6j/RA2BSP8FI8gJcHmLRrwJOMnHw== dependencies: postcss-value-parser "^4.2.0" postcss-colormin@^6.0.0: version "6.0.0" - resolved "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-6.0.0.tgz#d4250652e952e1c0aca70c66942da93d3cdeaafe" + resolved "https://registry.yarnpkg.com/postcss-colormin/-/postcss-colormin-6.0.0.tgz#d4250652e952e1c0aca70c66942da93d3cdeaafe" integrity sha512-EuO+bAUmutWoZYgHn2T1dG1pPqHU6L4TjzPlu4t1wZGXQ/fxV16xg2EJmYi0z+6r+MGV1yvpx1BHkUaRrPa2bw== dependencies: browserslist "^4.21.4" @@ -5072,7 +5063,7 @@ postcss-colormin@^6.0.0: postcss-convert-values@^6.0.0: version "6.0.0" - resolved "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-6.0.0.tgz#ec94a954957e5c3f78f0e8f65dfcda95280b8996" + resolved "https://registry.yarnpkg.com/postcss-convert-values/-/postcss-convert-values-6.0.0.tgz#ec94a954957e5c3f78f0e8f65dfcda95280b8996" integrity sha512-U5D8QhVwqT++ecmy8rnTb+RL9n/B806UVaS3m60lqle4YDFcpbS3ae5bTQIh3wOGUSDHSEtMYLs/38dNG7EYFw== dependencies: browserslist "^4.21.4" @@ -5080,7 +5071,7 @@ postcss-convert-values@^6.0.0: postcss-custom-media@^10.0.0: version "10.0.0" - resolved "https://registry.npmjs.org/postcss-custom-media/-/postcss-custom-media-10.0.0.tgz#299781f67d043de7d3eaa13923c26c586d9cd57a" + resolved "https://registry.yarnpkg.com/postcss-custom-media/-/postcss-custom-media-10.0.0.tgz#299781f67d043de7d3eaa13923c26c586d9cd57a" integrity sha512-NxDn7C6GJ7X8TsWOa8MbCdq9rLERRLcPfQSp856k1jzMreL8X9M6iWk35JjPRIb9IfRnVohmxAylDRx7n4Rv4g== dependencies: "@csstools/cascade-layer-name-parser" "^1.0.3" @@ -5090,7 +5081,7 @@ postcss-custom-media@^10.0.0: postcss-custom-properties@^13.3.0: version "13.3.0" - resolved "https://registry.npmjs.org/postcss-custom-properties/-/postcss-custom-properties-13.3.0.tgz#53361280a9ec57c2ac448c0877ba25c4978241ee" + resolved "https://registry.yarnpkg.com/postcss-custom-properties/-/postcss-custom-properties-13.3.0.tgz#53361280a9ec57c2ac448c0877ba25c4978241ee" integrity sha512-q4VgtIKSy5+KcUvQ0WxTjDy9DZjQ5VCXAZ9+tT9+aPMbA0z6s2t1nMw0QHszru1ib5ElkXl9JUpYYU37VVUs7g== dependencies: "@csstools/cascade-layer-name-parser" "^1.0.4" @@ -5100,7 +5091,7 @@ postcss-custom-properties@^13.3.0: postcss-custom-selectors@^7.1.4: version "7.1.4" - resolved "https://registry.npmjs.org/postcss-custom-selectors/-/postcss-custom-selectors-7.1.4.tgz#5980972353119af0d9725bdcccad46be8cfc9011" + resolved "https://registry.yarnpkg.com/postcss-custom-selectors/-/postcss-custom-selectors-7.1.4.tgz#5980972353119af0d9725bdcccad46be8cfc9011" integrity sha512-TU2xyUUBTlpiLnwyE2ZYMUIYB41MKMkBZ8X8ntkqRDQ8sdBLhFFsPgNcOliBd5+/zcK51C9hRnSE7hKUJMxQSw== dependencies: "@csstools/cascade-layer-name-parser" "^1.0.3" @@ -5110,34 +5101,34 @@ postcss-custom-selectors@^7.1.4: postcss-dir-pseudo-class@^8.0.0: version "8.0.0" - resolved "https://registry.npmjs.org/postcss-dir-pseudo-class/-/postcss-dir-pseudo-class-8.0.0.tgz#9e4e37d170f672520d3f38fd8376db0ca04d4e9c" + resolved "https://registry.yarnpkg.com/postcss-dir-pseudo-class/-/postcss-dir-pseudo-class-8.0.0.tgz#9e4e37d170f672520d3f38fd8376db0ca04d4e9c" integrity sha512-Oy5BBi0dWPwij/IA+yDYj+/OBMQ9EPqAzTHeSNUYrUWdll/PRJmcbiUj0MNcsBi681I1gcSTLvMERPaXzdbvJg== dependencies: postcss-selector-parser "^6.0.13" postcss-discard-comments@^6.0.0: version "6.0.0" - resolved "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-6.0.0.tgz#9ca335e8b68919f301b24ba47dde226a42e535fe" + resolved "https://registry.yarnpkg.com/postcss-discard-comments/-/postcss-discard-comments-6.0.0.tgz#9ca335e8b68919f301b24ba47dde226a42e535fe" integrity sha512-p2skSGqzPMZkEQvJsgnkBhCn8gI7NzRH2683EEjrIkoMiwRELx68yoUJ3q3DGSGuQ8Ug9Gsn+OuDr46yfO+eFw== postcss-discard-duplicates@^6.0.0: version "6.0.0" - resolved "https://registry.npmjs.org/postcss-discard-duplicates/-/postcss-discard-duplicates-6.0.0.tgz#c26177a6c33070922e67e9a92c0fd23d443d1355" + resolved "https://registry.yarnpkg.com/postcss-discard-duplicates/-/postcss-discard-duplicates-6.0.0.tgz#c26177a6c33070922e67e9a92c0fd23d443d1355" integrity sha512-bU1SXIizMLtDW4oSsi5C/xHKbhLlhek/0/yCnoMQany9k3nPBq+Ctsv/9oMmyqbR96HYHxZcHyK2HR5P/mqoGA== postcss-discard-empty@^6.0.0: version "6.0.0" - resolved "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-6.0.0.tgz#06c1c4fce09e22d2a99e667c8550eb8a3a1b9aee" + resolved "https://registry.yarnpkg.com/postcss-discard-empty/-/postcss-discard-empty-6.0.0.tgz#06c1c4fce09e22d2a99e667c8550eb8a3a1b9aee" integrity sha512-b+h1S1VT6dNhpcg+LpyiUrdnEZfICF0my7HAKgJixJLW7BnNmpRH34+uw/etf5AhOlIhIAuXApSzzDzMI9K/gQ== postcss-discard-overridden@^6.0.0: version "6.0.0" - resolved "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-6.0.0.tgz#49c5262db14e975e349692d9024442de7cd8e234" + resolved "https://registry.yarnpkg.com/postcss-discard-overridden/-/postcss-discard-overridden-6.0.0.tgz#49c5262db14e975e349692d9024442de7cd8e234" integrity sha512-4VELwssYXDFigPYAZ8vL4yX4mUepF/oCBeeIT4OXsJPYOtvJumyz9WflmJWTfDwCUcpDR+z0zvCWBXgTx35SVw== postcss-double-position-gradients@^5.0.0: version "5.0.0" - resolved "https://registry.npmjs.org/postcss-double-position-gradients/-/postcss-double-position-gradients-5.0.0.tgz#cdc11e1210c3fbd3f7bc242a5ee83e5b9d7db8fa" + resolved "https://registry.yarnpkg.com/postcss-double-position-gradients/-/postcss-double-position-gradients-5.0.0.tgz#cdc11e1210c3fbd3f7bc242a5ee83e5b9d7db8fa" integrity sha512-wR8npIkrIVUTicUpCWSSo1f/g7gAEIH70FMqCugY4m4j6TX4E0T2Q5rhfO0gqv00biBZdLyb+HkW8x6as+iJNQ== dependencies: "@csstools/postcss-progressive-custom-properties" "^3.0.0" @@ -5145,43 +5136,43 @@ postcss-double-position-gradients@^5.0.0: postcss-focus-visible@^9.0.0: version "9.0.0" - resolved "https://registry.npmjs.org/postcss-focus-visible/-/postcss-focus-visible-9.0.0.tgz#a81227428d6f1e524099c6581f7c7132f987e382" + resolved "https://registry.yarnpkg.com/postcss-focus-visible/-/postcss-focus-visible-9.0.0.tgz#a81227428d6f1e524099c6581f7c7132f987e382" integrity sha512-zA4TbVaIaT8npZBEROhZmlc+GBKE8AELPHXE7i4TmIUEQhw/P/mSJfY9t6tBzpQ1rABeGtEOHYrW4SboQeONMQ== dependencies: postcss-selector-parser "^6.0.13" postcss-focus-within@^8.0.0: version "8.0.0" - resolved "https://registry.npmjs.org/postcss-focus-within/-/postcss-focus-within-8.0.0.tgz#8304380dd2dadc1c2dcfa52816ff86be7736fc16" + resolved "https://registry.yarnpkg.com/postcss-focus-within/-/postcss-focus-within-8.0.0.tgz#8304380dd2dadc1c2dcfa52816ff86be7736fc16" integrity sha512-E7+J9nuQzZaA37D/MUZMX1K817RZGDab8qw6pFwzAkDd/QtlWJ9/WTKmzewNiuxzeq6WWY7ATiRePVoDKp+DnA== dependencies: postcss-selector-parser "^6.0.13" postcss-font-variant@^5.0.0: version "5.0.0" - resolved "https://registry.npmjs.org/postcss-font-variant/-/postcss-font-variant-5.0.0.tgz#efd59b4b7ea8bb06127f2d031bfbb7f24d32fa66" + resolved "https://registry.yarnpkg.com/postcss-font-variant/-/postcss-font-variant-5.0.0.tgz#efd59b4b7ea8bb06127f2d031bfbb7f24d32fa66" integrity sha512-1fmkBaCALD72CK2a9i468mA/+tr9/1cBxRRMXOUaZqO43oWPR5imcyPjXwuv7PXbCid4ndlP5zWhidQVVa3hmA== postcss-gap-properties@^5.0.0: version "5.0.0" - resolved "https://registry.npmjs.org/postcss-gap-properties/-/postcss-gap-properties-5.0.0.tgz#3bd77f3d51facb1da404b4edd72b8203929385a5" + resolved "https://registry.yarnpkg.com/postcss-gap-properties/-/postcss-gap-properties-5.0.0.tgz#3bd77f3d51facb1da404b4edd72b8203929385a5" integrity sha512-YjsEEL6890P7MCv6fch6Am1yq0EhQCJMXyT4LBohiu87+4/WqR7y5W3RIv53WdA901hhytgRvjlrAhibhW4qsA== postcss-image-set-function@^6.0.0: version "6.0.0" - resolved "https://registry.npmjs.org/postcss-image-set-function/-/postcss-image-set-function-6.0.0.tgz#a5aba4a805ae903ab8200b584242149c48c481fb" + resolved "https://registry.yarnpkg.com/postcss-image-set-function/-/postcss-image-set-function-6.0.0.tgz#a5aba4a805ae903ab8200b584242149c48c481fb" integrity sha512-bg58QnJexFpPBU4IGPAugAPKV0FuFtX5rHYNSKVaV91TpHN7iwyEzz1bkIPCiSU5+BUN00e+3fV5KFrwIgRocw== dependencies: postcss-value-parser "^4.2.0" postcss-initial@^4.0.1: version "4.0.1" - resolved "https://registry.npmjs.org/postcss-initial/-/postcss-initial-4.0.1.tgz#529f735f72c5724a0fb30527df6fb7ac54d7de42" + resolved "https://registry.yarnpkg.com/postcss-initial/-/postcss-initial-4.0.1.tgz#529f735f72c5724a0fb30527df6fb7ac54d7de42" integrity sha512-0ueD7rPqX8Pn1xJIjay0AZeIuDoF+V+VvMt/uOnn+4ezUKhZM/NokDeP6DwMNyIoYByuN/94IQnt5FEkaN59xQ== postcss-lab-function@^6.0.1: version "6.0.1" - resolved "https://registry.npmjs.org/postcss-lab-function/-/postcss-lab-function-6.0.1.tgz#46dc530a242972d47018c6627128d8e9e96b82c8" + resolved "https://registry.yarnpkg.com/postcss-lab-function/-/postcss-lab-function-6.0.1.tgz#46dc530a242972d47018c6627128d8e9e96b82c8" integrity sha512-/Xl6JitDh7jWkcOLxrHcAlEaqkxyaG3g4iDMy5RyhNaiQPJ9Egf2+Mxp1W2qnH5jB2bj59f3RbdKmC6qx1IcXA== dependencies: "@csstools/css-color-parser" "^1.2.2" @@ -5191,7 +5182,7 @@ postcss-lab-function@^6.0.1: postcss-loader@^6.2.1: version "6.2.1" - resolved "https://registry.npmjs.org/postcss-loader/-/postcss-loader-6.2.1.tgz#0895f7346b1702103d30fdc66e4d494a93c008ef" + resolved "https://registry.yarnpkg.com/postcss-loader/-/postcss-loader-6.2.1.tgz#0895f7346b1702103d30fdc66e4d494a93c008ef" integrity sha512-WbbYpmAaKcux/P66bZ40bpWsBucjx/TTgVVzRZ9yUO8yQfVBlameJ0ZGVaPfH64hNSBh63a+ICP5nqOpBA0w+Q== dependencies: cosmiconfig "^7.0.0" @@ -5200,14 +5191,14 @@ postcss-loader@^6.2.1: postcss-logical@^7.0.0: version "7.0.0" - resolved "https://registry.npmjs.org/postcss-logical/-/postcss-logical-7.0.0.tgz#9a83426e716e3c8f957dda3fd874edbcf22c754e" + resolved "https://registry.yarnpkg.com/postcss-logical/-/postcss-logical-7.0.0.tgz#9a83426e716e3c8f957dda3fd874edbcf22c754e" integrity sha512-zYf3vHkoW82f5UZTEXChTJvH49Yl9X37axTZsJGxrCG2kOUwtaAoz9E7tqYg0lsIoJLybaL8fk/2mOi81zVIUw== dependencies: postcss-value-parser "^4.2.0" postcss-merge-longhand@^6.0.0: version "6.0.0" - resolved "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-6.0.0.tgz#6f627b27db939bce316eaa97e22400267e798d69" + resolved "https://registry.yarnpkg.com/postcss-merge-longhand/-/postcss-merge-longhand-6.0.0.tgz#6f627b27db939bce316eaa97e22400267e798d69" integrity sha512-4VSfd1lvGkLTLYcxFuISDtWUfFS4zXe0FpF149AyziftPFQIWxjvFSKhA4MIxMe4XM3yTDgQMbSNgzIVxChbIg== dependencies: postcss-value-parser "^4.2.0" @@ -5215,7 +5206,7 @@ postcss-merge-longhand@^6.0.0: postcss-merge-rules@^6.0.1: version "6.0.1" - resolved "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-6.0.1.tgz#39f165746404e646c0f5c510222ccde4824a86aa" + resolved "https://registry.yarnpkg.com/postcss-merge-rules/-/postcss-merge-rules-6.0.1.tgz#39f165746404e646c0f5c510222ccde4824a86aa" integrity sha512-a4tlmJIQo9SCjcfiCcCMg/ZCEe0XTkl/xK0XHBs955GWg9xDX3NwP9pwZ78QUOWB8/0XCjZeJn98Dae0zg6AAw== dependencies: browserslist "^4.21.4" @@ -5225,14 +5216,14 @@ postcss-merge-rules@^6.0.1: postcss-minify-font-values@^6.0.0: version "6.0.0" - resolved "https://registry.npmjs.org/postcss-minify-font-values/-/postcss-minify-font-values-6.0.0.tgz#68d4a028f9fa5f61701974724b2cc9445d8e6070" + resolved "https://registry.yarnpkg.com/postcss-minify-font-values/-/postcss-minify-font-values-6.0.0.tgz#68d4a028f9fa5f61701974724b2cc9445d8e6070" integrity sha512-zNRAVtyh5E8ndZEYXA4WS8ZYsAp798HiIQ1V2UF/C/munLp2r1UGHwf1+6JFu7hdEhJFN+W1WJQKBrtjhFgEnA== dependencies: postcss-value-parser "^4.2.0" postcss-minify-gradients@^6.0.0: version "6.0.0" - resolved "https://registry.npmjs.org/postcss-minify-gradients/-/postcss-minify-gradients-6.0.0.tgz#22b5c88cc63091dadbad34e31ff958404d51d679" + resolved "https://registry.yarnpkg.com/postcss-minify-gradients/-/postcss-minify-gradients-6.0.0.tgz#22b5c88cc63091dadbad34e31ff958404d51d679" integrity sha512-wO0F6YfVAR+K1xVxF53ueZJza3L+R3E6cp0VwuXJQejnNUH0DjcAFe3JEBeTY1dLwGa0NlDWueCA1VlEfiKgAA== dependencies: colord "^2.9.1" @@ -5241,7 +5232,7 @@ postcss-minify-gradients@^6.0.0: postcss-minify-params@^6.0.0: version "6.0.0" - resolved "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-6.0.0.tgz#2b3a85a9e3b990d7a16866f430f5fd1d5961b539" + resolved "https://registry.yarnpkg.com/postcss-minify-params/-/postcss-minify-params-6.0.0.tgz#2b3a85a9e3b990d7a16866f430f5fd1d5961b539" integrity sha512-Fz/wMQDveiS0n5JPcvsMeyNXOIMrwF88n7196puSuQSWSa+/Ofc1gDOSY2xi8+A4PqB5dlYCKk/WfqKqsI+ReQ== dependencies: browserslist "^4.21.4" @@ -5250,19 +5241,19 @@ postcss-minify-params@^6.0.0: postcss-minify-selectors@^6.0.0: version "6.0.0" - resolved "https://registry.npmjs.org/postcss-minify-selectors/-/postcss-minify-selectors-6.0.0.tgz#5046c5e8680a586e5a0cad52cc9aa36d6be5bda2" + resolved "https://registry.yarnpkg.com/postcss-minify-selectors/-/postcss-minify-selectors-6.0.0.tgz#5046c5e8680a586e5a0cad52cc9aa36d6be5bda2" integrity sha512-ec/q9JNCOC2CRDNnypipGfOhbYPuUkewGwLnbv6omue/PSASbHSU7s6uSQ0tcFRVv731oMIx8k0SP4ZX6be/0g== dependencies: postcss-selector-parser "^6.0.5" postcss-modules-extract-imports@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz#cda1f047c0ae80c97dbe28c3e76a43b88025741d" + resolved "https://registry.yarnpkg.com/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz#cda1f047c0ae80c97dbe28c3e76a43b88025741d" integrity sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw== postcss-modules-local-by-default@^4.0.0: version "4.0.3" - resolved "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.3.tgz#b08eb4f083050708998ba2c6061b50c2870ca524" + resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.3.tgz#b08eb4f083050708998ba2c6061b50c2870ca524" integrity sha512-2/u2zraspoACtrbFRnTijMiQtb4GW4BvatjaG/bCjYQo8kLTdevCUlwuBHx2sCnSyrI3x3qj4ZK1j5LQBgzmwA== dependencies: icss-utils "^5.0.0" @@ -5271,69 +5262,69 @@ postcss-modules-local-by-default@^4.0.0: postcss-modules-scope@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.0.0.tgz#9ef3151456d3bbfa120ca44898dfca6f2fa01f06" + resolved "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-3.0.0.tgz#9ef3151456d3bbfa120ca44898dfca6f2fa01f06" integrity sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg== dependencies: postcss-selector-parser "^6.0.4" postcss-modules-values@^4.0.0: version "4.0.0" - resolved "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz#d7c5e7e68c3bb3c9b27cbf48ca0bb3ffb4602c9c" + resolved "https://registry.yarnpkg.com/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz#d7c5e7e68c3bb3c9b27cbf48ca0bb3ffb4602c9c" integrity sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ== dependencies: icss-utils "^5.0.0" -postcss-nesting@^12.0.0: - version "12.0.0" - resolved "https://registry.npmjs.org/postcss-nesting/-/postcss-nesting-12.0.0.tgz#729932293b925ac5bffcb6df1e2620faa0447554" - integrity sha512-knqwW65kxssmyIFadRSimaiRyLVRd0MdwfabesKw6XvGLwSOCJ+4zfvNQQCOOYij5obwpZzDpODuGRv2PCyiUw== +postcss-nesting@^12.0.1: + version "12.0.1" + resolved "https://registry.yarnpkg.com/postcss-nesting/-/postcss-nesting-12.0.1.tgz#abb76d15dfd59a9f7d03b4464f53b60a4d3795c4" + integrity sha512-6LCqCWP9pqwXw/njMvNK0hGY44Fxc4B2EsGbn6xDcxbNRzP8GYoxT7yabVVMLrX3quqOJ9hg2jYMsnkedOf8pA== dependencies: "@csstools/selector-specificity" "^3.0.0" postcss-selector-parser "^6.0.13" postcss-normalize-charset@^6.0.0: version "6.0.0" - resolved "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-6.0.0.tgz#36cc12457259064969fb96f84df491652a4b0975" + resolved "https://registry.yarnpkg.com/postcss-normalize-charset/-/postcss-normalize-charset-6.0.0.tgz#36cc12457259064969fb96f84df491652a4b0975" integrity sha512-cqundwChbu8yO/gSWkuFDmKrCZ2vJzDAocheT2JTd0sFNA4HMGoKMfbk2B+J0OmO0t5GUkiAkSM5yF2rSLUjgQ== postcss-normalize-display-values@^6.0.0: version "6.0.0" - resolved "https://registry.npmjs.org/postcss-normalize-display-values/-/postcss-normalize-display-values-6.0.0.tgz#8d2961415078644d8c6bbbdaf9a2fdd60f546cd4" + resolved "https://registry.yarnpkg.com/postcss-normalize-display-values/-/postcss-normalize-display-values-6.0.0.tgz#8d2961415078644d8c6bbbdaf9a2fdd60f546cd4" integrity sha512-Qyt5kMrvy7dJRO3OjF7zkotGfuYALETZE+4lk66sziWSPzlBEt7FrUshV6VLECkI4EN8Z863O6Nci4NXQGNzYw== dependencies: postcss-value-parser "^4.2.0" postcss-normalize-positions@^6.0.0: version "6.0.0" - resolved "https://registry.npmjs.org/postcss-normalize-positions/-/postcss-normalize-positions-6.0.0.tgz#25b96df99a69f8925f730eaee0be74416865e301" + resolved "https://registry.yarnpkg.com/postcss-normalize-positions/-/postcss-normalize-positions-6.0.0.tgz#25b96df99a69f8925f730eaee0be74416865e301" integrity sha512-mPCzhSV8+30FZyWhxi6UoVRYd3ZBJgTRly4hOkaSifo0H+pjDYcii/aVT4YE6QpOil15a5uiv6ftnY3rm0igPg== dependencies: postcss-value-parser "^4.2.0" postcss-normalize-repeat-style@^6.0.0: version "6.0.0" - resolved "https://registry.npmjs.org/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-6.0.0.tgz#ddf30ad8762feb5b1eb97f39f251acd7b8353299" + resolved "https://registry.yarnpkg.com/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-6.0.0.tgz#ddf30ad8762feb5b1eb97f39f251acd7b8353299" integrity sha512-50W5JWEBiOOAez2AKBh4kRFm2uhrT3O1Uwdxz7k24aKtbD83vqmcVG7zoIwo6xI2FZ/HDlbrCopXhLeTpQib1A== dependencies: postcss-value-parser "^4.2.0" postcss-normalize-string@^6.0.0: version "6.0.0" - resolved "https://registry.npmjs.org/postcss-normalize-string/-/postcss-normalize-string-6.0.0.tgz#948282647a51e409d69dde7910f0ac2ff97cb5d8" + resolved "https://registry.yarnpkg.com/postcss-normalize-string/-/postcss-normalize-string-6.0.0.tgz#948282647a51e409d69dde7910f0ac2ff97cb5d8" integrity sha512-KWkIB7TrPOiqb8ZZz6homet2KWKJwIlysF5ICPZrXAylGe2hzX/HSf4NTX2rRPJMAtlRsj/yfkrWGavFuB+c0w== dependencies: postcss-value-parser "^4.2.0" postcss-normalize-timing-functions@^6.0.0: version "6.0.0" - resolved "https://registry.npmjs.org/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-6.0.0.tgz#5f13e650b8c43351989fc5de694525cc2539841c" + resolved "https://registry.yarnpkg.com/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-6.0.0.tgz#5f13e650b8c43351989fc5de694525cc2539841c" integrity sha512-tpIXWciXBp5CiFs8sem90IWlw76FV4oi6QEWfQwyeREVwUy39VSeSqjAT7X0Qw650yAimYW5gkl2Gd871N5SQg== dependencies: postcss-value-parser "^4.2.0" postcss-normalize-unicode@^6.0.0: version "6.0.0" - resolved "https://registry.npmjs.org/postcss-normalize-unicode/-/postcss-normalize-unicode-6.0.0.tgz#741b3310f874616bdcf07764f5503695d3604730" + resolved "https://registry.yarnpkg.com/postcss-normalize-unicode/-/postcss-normalize-unicode-6.0.0.tgz#741b3310f874616bdcf07764f5503695d3604730" integrity sha512-ui5crYkb5ubEUDugDc786L/Me+DXp2dLg3fVJbqyAl0VPkAeALyAijF2zOsnZyaS1HyfPuMH0DwyY18VMFVNkg== dependencies: browserslist "^4.21.4" @@ -5341,26 +5332,26 @@ postcss-normalize-unicode@^6.0.0: postcss-normalize-url@^6.0.0: version "6.0.0" - resolved "https://registry.npmjs.org/postcss-normalize-url/-/postcss-normalize-url-6.0.0.tgz#d0a31e962a16401fb7deb7754b397a323fb650b4" + resolved "https://registry.yarnpkg.com/postcss-normalize-url/-/postcss-normalize-url-6.0.0.tgz#d0a31e962a16401fb7deb7754b397a323fb650b4" integrity sha512-98mvh2QzIPbb02YDIrYvAg4OUzGH7s1ZgHlD3fIdTHLgPLRpv1ZTKJDnSAKr4Rt21ZQFzwhGMXxpXlfrUBKFHw== dependencies: postcss-value-parser "^4.2.0" postcss-normalize-whitespace@^6.0.0: version "6.0.0" - resolved "https://registry.npmjs.org/postcss-normalize-whitespace/-/postcss-normalize-whitespace-6.0.0.tgz#accb961caa42e25ca4179b60855b79b1f7129d4d" + resolved "https://registry.yarnpkg.com/postcss-normalize-whitespace/-/postcss-normalize-whitespace-6.0.0.tgz#accb961caa42e25ca4179b60855b79b1f7129d4d" integrity sha512-7cfE1AyLiK0+ZBG6FmLziJzqQCpTQY+8XjMhMAz8WSBSCsCNNUKujgIgjCAmDT3cJ+3zjTXFkoD15ZPsckArVw== dependencies: postcss-value-parser "^4.2.0" postcss-opacity-percentage@^2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/postcss-opacity-percentage/-/postcss-opacity-percentage-2.0.0.tgz#c0a56060cd4586e3f954dbde1efffc2deed53002" + resolved "https://registry.yarnpkg.com/postcss-opacity-percentage/-/postcss-opacity-percentage-2.0.0.tgz#c0a56060cd4586e3f954dbde1efffc2deed53002" integrity sha512-lyDrCOtntq5Y1JZpBFzIWm2wG9kbEdujpNt4NLannF+J9c8CgFIzPa80YQfdza+Y+yFfzbYj/rfoOsYsooUWTQ== postcss-ordered-values@^6.0.0: version "6.0.0" - resolved "https://registry.npmjs.org/postcss-ordered-values/-/postcss-ordered-values-6.0.0.tgz#374704cdff25560d44061d17ba3c6308837a3218" + resolved "https://registry.yarnpkg.com/postcss-ordered-values/-/postcss-ordered-values-6.0.0.tgz#374704cdff25560d44061d17ba3c6308837a3218" integrity sha512-K36XzUDpvfG/nWkjs6d1hRBydeIxGpKS2+n+ywlKPzx1nMYDYpoGbcjhj5AwVYJK1qV2/SDoDEnHzlPD6s3nMg== dependencies: cssnano-utils "^4.0.0" @@ -5368,27 +5359,27 @@ postcss-ordered-values@^6.0.0: postcss-overflow-shorthand@^5.0.0: version "5.0.0" - resolved "https://registry.npmjs.org/postcss-overflow-shorthand/-/postcss-overflow-shorthand-5.0.0.tgz#1ed6d6c532cdf52b5dabec06662dc63f9207855c" + resolved "https://registry.yarnpkg.com/postcss-overflow-shorthand/-/postcss-overflow-shorthand-5.0.0.tgz#1ed6d6c532cdf52b5dabec06662dc63f9207855c" integrity sha512-2rlxDyeSics/hC2FuMdPnWiP9WUPZ5x7FTuArXLFVpaSQ2woPSfZS4RD59HuEokbZhs/wPUQJ1E3MT6zVv94MQ== dependencies: postcss-value-parser "^4.2.0" postcss-page-break@^3.0.4: version "3.0.4" - resolved "https://registry.npmjs.org/postcss-page-break/-/postcss-page-break-3.0.4.tgz#7fbf741c233621622b68d435babfb70dd8c1ee5f" + resolved "https://registry.yarnpkg.com/postcss-page-break/-/postcss-page-break-3.0.4.tgz#7fbf741c233621622b68d435babfb70dd8c1ee5f" integrity sha512-1JGu8oCjVXLa9q9rFTo4MbeeA5FMe00/9C7lN4va606Rdb+HkxXtXsmEDrIraQ11fGz/WvKWa8gMuCKkrXpTsQ== postcss-place@^9.0.0: version "9.0.0" - resolved "https://registry.npmjs.org/postcss-place/-/postcss-place-9.0.0.tgz#7e47851bf40d16ce06f6013453b706100ca6c102" + resolved "https://registry.yarnpkg.com/postcss-place/-/postcss-place-9.0.0.tgz#7e47851bf40d16ce06f6013453b706100ca6c102" integrity sha512-qLEPD9VPH5opDVemwmRaujODF9nExn24VOC3ghgVLEvfYN7VZLwJHes0q/C9YR5hI2UC3VgBE8Wkdp1TxCXhtg== dependencies: postcss-value-parser "^4.2.0" postcss-preset-env@^9.0.0: - version "9.1.0" - resolved "https://registry.npmjs.org/postcss-preset-env/-/postcss-preset-env-9.1.0.tgz#3e996fc261f69423a18830f7c301cb286c030d4a" - integrity sha512-G+x9BD7jb9uHBB7o720emXV00CP+VdWeirJsHC5ERSpbTd2e6Xg7vHzT+a6UkxFyddALuV+Q8wJMgeTKaau+Pg== + version "9.1.1" + resolved "https://registry.yarnpkg.com/postcss-preset-env/-/postcss-preset-env-9.1.1.tgz#0217fd0d41b9f62f10e1e2c8c5502bbdcb1a76b1" + integrity sha512-rMPEqyTLm8JLbvaHnDAdQg6SN4Z/NDOsm+CRefg4HmSOiNpTcBXaw4RAaQbfTNe8BB75l4NpoQ6sMdrutdEpdQ== dependencies: "@csstools/postcss-cascade-layers" "^4.0.0" "@csstools/postcss-color-function" "^3.0.1" @@ -5402,8 +5393,8 @@ postcss-preset-env@^9.0.0: "@csstools/postcss-logical-float-and-clear" "^2.0.0" "@csstools/postcss-logical-resize" "^2.0.0" "@csstools/postcss-logical-viewport-units" "^2.0.1" - "@csstools/postcss-media-minmax" "^1.0.6" - "@csstools/postcss-media-queries-aspect-ratio-number-values" "^2.0.1" + "@csstools/postcss-media-minmax" "^1.0.7" + "@csstools/postcss-media-queries-aspect-ratio-number-values" "^2.0.2" "@csstools/postcss-nested-calc" "^3.0.0" "@csstools/postcss-normalize-display-values" "^3.0.0" "@csstools/postcss-oklab-function" "^3.0.1" @@ -5415,7 +5406,7 @@ postcss-preset-env@^9.0.0: "@csstools/postcss-trigonometric-functions" "^3.0.1" "@csstools/postcss-unset-value" "^3.0.0" autoprefixer "^10.4.14" - browserslist "^4.21.9" + browserslist "^4.21.10" css-blank-pseudo "^6.0.0" css-has-pseudo "^6.0.0" css-prefers-color-scheme "^9.0.0" @@ -5438,7 +5429,7 @@ postcss-preset-env@^9.0.0: postcss-initial "^4.0.1" postcss-lab-function "^6.0.1" postcss-logical "^7.0.0" - postcss-nesting "^12.0.0" + postcss-nesting "^12.0.1" postcss-opacity-percentage "^2.0.0" postcss-overflow-shorthand "^5.0.0" postcss-page-break "^3.0.4" @@ -5450,14 +5441,14 @@ postcss-preset-env@^9.0.0: postcss-pseudo-class-any-link@^9.0.0: version "9.0.0" - resolved "https://registry.npmjs.org/postcss-pseudo-class-any-link/-/postcss-pseudo-class-any-link-9.0.0.tgz#5fb5b700e0ecdc845a94eb433b8ccff756cbf660" + resolved "https://registry.yarnpkg.com/postcss-pseudo-class-any-link/-/postcss-pseudo-class-any-link-9.0.0.tgz#5fb5b700e0ecdc845a94eb433b8ccff756cbf660" integrity sha512-QNCYIL98VKFKY6HGDEJpF6+K/sg9bxcUYnOmNHJxZS5wsFDFaVoPeG68WAuhsqwbIBSo/b9fjEnTwY2mTSD+uA== dependencies: postcss-selector-parser "^6.0.13" postcss-reduce-initial@^6.0.0: version "6.0.0" - resolved "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-6.0.0.tgz#7d16e83e60e27e2fa42f56ec0b426f1da332eca7" + resolved "https://registry.yarnpkg.com/postcss-reduce-initial/-/postcss-reduce-initial-6.0.0.tgz#7d16e83e60e27e2fa42f56ec0b426f1da332eca7" integrity sha512-s2UOnidpVuXu6JiiI5U+fV2jamAw5YNA9Fdi/GRK0zLDLCfXmSGqQtzpUPtfN66RtCbb9fFHoyZdQaxOB3WxVA== dependencies: browserslist "^4.21.4" @@ -5465,26 +5456,26 @@ postcss-reduce-initial@^6.0.0: postcss-reduce-transforms@^6.0.0: version "6.0.0" - resolved "https://registry.npmjs.org/postcss-reduce-transforms/-/postcss-reduce-transforms-6.0.0.tgz#28ff2601a6d9b96a2f039b3501526e1f4d584a46" + resolved "https://registry.yarnpkg.com/postcss-reduce-transforms/-/postcss-reduce-transforms-6.0.0.tgz#28ff2601a6d9b96a2f039b3501526e1f4d584a46" integrity sha512-FQ9f6xM1homnuy1wLe9lP1wujzxnwt1EwiigtWwuyf8FsqqXUDUp2Ulxf9A5yjlUOTdCJO6lonYjg1mgqIIi2w== dependencies: postcss-value-parser "^4.2.0" postcss-replace-overflow-wrap@^4.0.0: version "4.0.0" - resolved "https://registry.npmjs.org/postcss-replace-overflow-wrap/-/postcss-replace-overflow-wrap-4.0.0.tgz#d2df6bed10b477bf9c52fab28c568b4b29ca4319" + resolved "https://registry.yarnpkg.com/postcss-replace-overflow-wrap/-/postcss-replace-overflow-wrap-4.0.0.tgz#d2df6bed10b477bf9c52fab28c568b4b29ca4319" integrity sha512-KmF7SBPphT4gPPcKZc7aDkweHiKEEO8cla/GjcBK+ckKxiZslIu3C4GCRW3DNfL0o7yW7kMQu9xlZ1kXRXLXtw== postcss-selector-not@^7.0.1: version "7.0.1" - resolved "https://registry.npmjs.org/postcss-selector-not/-/postcss-selector-not-7.0.1.tgz#8142e90c8eb6c8c5faecb3e9d96d4353d02e94fb" + resolved "https://registry.yarnpkg.com/postcss-selector-not/-/postcss-selector-not-7.0.1.tgz#8142e90c8eb6c8c5faecb3e9d96d4353d02e94fb" integrity sha512-1zT5C27b/zeJhchN7fP0kBr16Cc61mu7Si9uWWLoA3Px/D9tIJPKchJCkUH3tPO5D0pCFmGeApAv8XpXBQJ8SQ== dependencies: postcss-selector-parser "^6.0.10" postcss-selector-parser@^6.0.10, postcss-selector-parser@^6.0.11, postcss-selector-parser@^6.0.13, postcss-selector-parser@^6.0.2, postcss-selector-parser@^6.0.4, postcss-selector-parser@^6.0.5: version "6.0.13" - resolved "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.13.tgz#d05d8d76b1e8e173257ef9d60b706a8e5e99bf1b" + resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.13.tgz#d05d8d76b1e8e173257ef9d60b706a8e5e99bf1b" integrity sha512-EaV1Gl4mUEV4ddhDnv/xtj7sxwrwxdetHdWUGnT4VJQf+4d05v6lHYZr8N573k5Z0BViss7BDhfWtKS3+sfAqQ== dependencies: cssesc "^3.0.0" @@ -5492,7 +5483,7 @@ postcss-selector-parser@^6.0.10, postcss-selector-parser@^6.0.11, postcss-select postcss-svgo@^6.0.0: version "6.0.0" - resolved "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-6.0.0.tgz#7b18742d38d4505a0455bbe70d52b49f00eaf69d" + resolved "https://registry.yarnpkg.com/postcss-svgo/-/postcss-svgo-6.0.0.tgz#7b18742d38d4505a0455bbe70d52b49f00eaf69d" integrity sha512-r9zvj/wGAoAIodn84dR/kFqwhINp5YsJkLoujybWG59grR/IHx+uQ2Zo+IcOwM0jskfYX3R0mo+1Kip1VSNcvw== dependencies: postcss-value-parser "^4.2.0" @@ -5500,20 +5491,20 @@ postcss-svgo@^6.0.0: postcss-unique-selectors@^6.0.0: version "6.0.0" - resolved "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-6.0.0.tgz#c94e9b0f7bffb1203894e42294b5a1b3fb34fbe1" + resolved "https://registry.yarnpkg.com/postcss-unique-selectors/-/postcss-unique-selectors-6.0.0.tgz#c94e9b0f7bffb1203894e42294b5a1b3fb34fbe1" integrity sha512-EPQzpZNxOxP7777t73RQpZE5e9TrnCrkvp7AH7a0l89JmZiPnS82y216JowHXwpBCQitfyxrof9TK3rYbi7/Yw== dependencies: postcss-selector-parser "^6.0.5" postcss-value-parser@^4.1.0, postcss-value-parser@^4.2.0: version "4.2.0" - resolved "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz#723c09920836ba6d3e5af019f92bc0971c02e514" + resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz#723c09920836ba6d3e5af019f92bc0971c02e514" integrity sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ== postcss@^8.2.15, postcss@^8.4.21, postcss@^8.4.24: - version "8.4.27" - resolved "https://registry.npmjs.org/postcss/-/postcss-8.4.27.tgz#234d7e4b72e34ba5a92c29636734349e0d9c3057" - integrity sha512-gY/ACJtJPSmUFPDCHtX78+01fHa64FaU4zaaWfuh1MhGJISufJAH4cun6k/8fwsHYeK4UQmENQK+tRLCFJE8JQ== + version "8.4.28" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.28.tgz#c6cc681ed00109072816e1557f889ef51cf950a5" + integrity sha512-Z7V5j0cq8oEKyejIKfpD8b4eBy9cwW2JWPk0+fB1HOAMsfHbnAXLLS+PfVWlzMSLQaWttKDt607I0XHmpE67Vw== dependencies: nanoid "^3.3.6" picocolors "^1.0.0" @@ -5521,7 +5512,7 @@ postcss@^8.2.15, postcss@^8.4.21, postcss@^8.4.24: prebuild-install@^7.1.1: version "7.1.1" - resolved "https://registry.npmjs.org/prebuild-install/-/prebuild-install-7.1.1.tgz#de97d5b34a70a0c81334fd24641f2a1702352e45" + resolved "https://registry.yarnpkg.com/prebuild-install/-/prebuild-install-7.1.1.tgz#de97d5b34a70a0c81334fd24641f2a1702352e45" integrity sha512-jAXscXWMcCK8GgCoHOfIr0ODh5ai8mj63L2nWrjuAgXE6tDyYGnx4/8o/rCgU+B4JSyZBKbeZqzhtwtC3ovxjw== dependencies: detect-libc "^2.0.0" @@ -5539,12 +5530,12 @@ prebuild-install@^7.1.1: prettier@^2.6.2: version "2.8.8" - resolved "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz#e8c5d7e98a4305ffe3de2e1fc4aca1a71c28b1da" + resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.8.8.tgz#e8c5d7e98a4305ffe3de2e1fc4aca1a71c28b1da" integrity sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q== pretty-error@^4.0.0: version "4.0.0" - resolved "https://registry.npmjs.org/pretty-error/-/pretty-error-4.0.0.tgz#90a703f46dd7234adb46d0f84823e9d1cb8f10d6" + resolved "https://registry.yarnpkg.com/pretty-error/-/pretty-error-4.0.0.tgz#90a703f46dd7234adb46d0f84823e9d1cb8f10d6" integrity sha512-AoJ5YMAcXKYxKhuJGdcvse+Voc6v1RgnsR3nWcYU7q4t6z0Q6T86sv5Zq8VIRbOWWFpvdGE83LtdSMNd+6Y0xw== dependencies: lodash "^4.17.20" @@ -5552,26 +5543,26 @@ pretty-error@^4.0.0: probe-image-size@^6.0.0: version "6.0.0" - resolved "https://registry.npmjs.org/probe-image-size/-/probe-image-size-6.0.0.tgz#4a85b19d5af4e29a8de7d53a9aa036f6fd02f5f4" + resolved "https://registry.yarnpkg.com/probe-image-size/-/probe-image-size-6.0.0.tgz#4a85b19d5af4e29a8de7d53a9aa036f6fd02f5f4" integrity sha512-99PZ5+RU4gqiTfK5ZDMDkZtn6eL4WlKfFyVJV7lFQvH3iGmQ85DqMTOdxorERO26LHkevR2qsxnHp0x/2UDJPA== dependencies: deepmerge "^4.0.0" needle "^2.5.2" stream-parser "~0.3.1" -process-warning@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/process-warning/-/process-warning-1.0.0.tgz#980a0b25dc38cd6034181be4b7726d89066b4616" - integrity sha512-du4wfLyj4yCZq1VupnVSZmRsPJsNuxoDQFdCFHLaYiEbFBD7QE0a+I4D7hOxrVnh78QE/YipFAj9lXHiXocV+Q== +process-warning@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/process-warning/-/process-warning-2.2.0.tgz#008ec76b579820a8e5c35d81960525ca64feb626" + integrity sha512-/1WZ8+VQjR6avWOgHeEPd7SDQmFQ1B5mC1eRXsCm5TarlNmx/wCsa5GEaxGm05BORRtyG/Ex/3xq3TuRvq57qg== process@^0.11.10: version "0.11.10" - resolved "https://registry.npmjs.org/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182" + resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182" integrity sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A== prop-types@^15.6.0, prop-types@^15.6.1, prop-types@^15.6.2, prop-types@^15.7.2, prop-types@^15.8.1: version "15.8.1" - resolved "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz#67d87bf1a694f48435cf332c24af10214a3140b5" + resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.8.1.tgz#67d87bf1a694f48435cf332c24af10214a3140b5" integrity sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg== dependencies: loose-envify "^1.4.0" @@ -5580,7 +5571,7 @@ prop-types@^15.6.0, prop-types@^15.6.1, prop-types@^15.6.2, prop-types@^15.7.2, proxy-addr@~2.0.7: version "2.0.7" - resolved "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz#f19fe69ceab311eeb94b42e70e8c2070f9ba1025" + resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.7.tgz#f19fe69ceab311eeb94b42e70e8c2070f9ba1025" integrity sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg== dependencies: forwarded "0.2.0" @@ -5588,7 +5579,7 @@ proxy-addr@~2.0.7: pump@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64" + resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64" integrity sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww== dependencies: end-of-stream "^1.1.0" @@ -5601,50 +5592,50 @@ punycode@^2.1.0, punycode@^2.1.1: qs-middleware@^1.0.3: version "1.0.3" - resolved "https://registry.npmjs.org/qs-middleware/-/qs-middleware-1.0.3.tgz#84f3535275ba20fd00c2122efacce6ab01092c19" + resolved "https://registry.yarnpkg.com/qs-middleware/-/qs-middleware-1.0.3.tgz#84f3535275ba20fd00c2122efacce6ab01092c19" integrity sha512-ymlixxD/0Bj3BMY9x1z8ENdQdhkmsIbDNyVvfM8soHn5p/CRFlLPrmtxmE5aG//q1PzHHSGuLi+6QlHezivseg== dependencies: qs "~6.4.0" qs@6.11.0: version "6.11.0" - resolved "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz#fd0d963446f7a65e1367e01abd85429453f0c37a" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.11.0.tgz#fd0d963446f7a65e1367e01abd85429453f0c37a" integrity sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q== dependencies: side-channel "^1.0.4" qs@^6.11.0, qs@^6.9.1: version "6.11.2" - resolved "https://registry.npmjs.org/qs/-/qs-6.11.2.tgz#64bea51f12c1f5da1bc01496f48ffcff7c69d7d9" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.11.2.tgz#64bea51f12c1f5da1bc01496f48ffcff7c69d7d9" integrity sha512-tDNIz22aBzCDxLtVH++VnTfzxlfeK5CbqohpSqpJgj1Wg/cQbStNAz3NuqCs5vV+pjBsK4x4pN9HlVh7rcYRiA== dependencies: side-channel "^1.0.4" qs@~6.4.0: version "6.4.1" - resolved "https://registry.npmjs.org/qs/-/qs-6.4.1.tgz#2bad97710a5b661c366b378b1e3a44a592ff45e6" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.4.1.tgz#2bad97710a5b661c366b378b1e3a44a592ff45e6" integrity sha512-LQy1Q1fcva/UsnP/6Iaa4lVeM49WiOitu2T4hZCyA/elLKu37L99qcBJk4VCCk+rdLvnMzfKyiN3SZTqdAZGSQ== quick-format-unescaped@^4.0.3: version "4.0.4" - resolved "https://registry.npmjs.org/quick-format-unescaped/-/quick-format-unescaped-4.0.4.tgz#93ef6dd8d3453cbc7970dd614fad4c5954d6b5a7" + resolved "https://registry.yarnpkg.com/quick-format-unescaped/-/quick-format-unescaped-4.0.4.tgz#93ef6dd8d3453cbc7970dd614fad4c5954d6b5a7" integrity sha512-tYC1Q1hgyRuHgloV/YXs2w15unPVh8qfu/qCTfhTYamaw7fyhumKa2yGpdSo87vY32rIclj+4fWYQXUMs9EHvg== randombytes@^2.1.0: version "2.1.0" - resolved "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz#df6f84372f0270dc65cdf6291349ab7a473d4f2a" + resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.1.0.tgz#df6f84372f0270dc65cdf6291349ab7a473d4f2a" integrity sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ== dependencies: safe-buffer "^5.1.0" range-parser@^1.2.1, range-parser@~1.2.1: version "1.2.1" - resolved "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" + resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== raw-body@2.5.1: version "2.5.1" - resolved "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz#fe1b1628b181b700215e5fd42389f98b71392857" + resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.5.1.tgz#fe1b1628b181b700215e5fd42389f98b71392857" integrity sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig== dependencies: bytes "3.1.2" @@ -5654,7 +5645,7 @@ raw-body@2.5.1: raw-body@2.5.2: version "2.5.2" - resolved "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz#99febd83b90e08975087e8f1f9419a149366b68a" + resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.5.2.tgz#99febd83b90e08975087e8f1f9419a149366b68a" integrity sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA== dependencies: bytes "3.1.2" @@ -5664,7 +5655,7 @@ raw-body@2.5.2: rc@^1.2.7: version "1.2.8" - resolved "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed" + resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed" integrity sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw== dependencies: deep-extend "^0.6.0" @@ -5674,7 +5665,7 @@ rc@^1.2.7: react-animate-height@^2.1.2: version "2.1.2" - resolved "https://registry.npmjs.org/react-animate-height/-/react-animate-height-2.1.2.tgz#9b450fc64d46f10f5e07da8d0d5e2c47b9f15030" + resolved "https://registry.yarnpkg.com/react-animate-height/-/react-animate-height-2.1.2.tgz#9b450fc64d46f10f5e07da8d0d5e2c47b9f15030" integrity sha512-A9jfz/4CTdsIsE7WCQtO9UkOpMBcBRh8LxyHl2eoZz1ki02jpyUL5xt58gabd0CyeLQ8fRyQ+s2lyV2Ufu8Owg== dependencies: classnames "^2.2.5" @@ -5682,7 +5673,7 @@ react-animate-height@^2.1.2: react-datepicker@^4.10.0: version "4.16.0" - resolved "https://registry.npmjs.org/react-datepicker/-/react-datepicker-4.16.0.tgz#b9dd389bb5611a1acc514bba1dd944be21dd877f" + resolved "https://registry.yarnpkg.com/react-datepicker/-/react-datepicker-4.16.0.tgz#b9dd389bb5611a1acc514bba1dd944be21dd877f" integrity sha512-hNQ0PAg/LQoVbDUO/RWAdm/RYmPhN3cz7LuQ3hqbs24OSp69QCiKOJRrQ4jk1gv1jNR5oYu8SjjgfDh8q6Q1yw== dependencies: "@popperjs/core" "^2.11.8" @@ -5694,7 +5685,7 @@ react-datepicker@^4.10.0: react-diff-viewer-continued@^3.2.6: version "3.2.6" - resolved "https://registry.npmjs.org/react-diff-viewer-continued/-/react-diff-viewer-continued-3.2.6.tgz#96382463b5de6838d95323c407442349b1c3a26e" + resolved "https://registry.yarnpkg.com/react-diff-viewer-continued/-/react-diff-viewer-continued-3.2.6.tgz#96382463b5de6838d95323c407442349b1c3a26e" integrity sha512-GrzyqQnjIMoej+jMjWvtVSsQqhXgzEGqpXlJ2dAGfOk7Q26qcm8Gu6xtI430PBUyZsERe8BJSQf+7VZZo8IBNQ== dependencies: "@emotion/css" "^11.10.5" @@ -5705,7 +5696,7 @@ react-diff-viewer-continued@^3.2.6: react-dom@^18.2.0: version "18.2.0" - resolved "https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz#22aaf38708db2674ed9ada224ca4aa708d821e3d" + resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-18.2.0.tgz#22aaf38708db2674ed9ada224ca4aa708d821e3d" integrity sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g== dependencies: loose-envify "^1.1.0" @@ -5713,12 +5704,12 @@ react-dom@^18.2.0: react-fast-compare@^3.0.1, react-fast-compare@^3.1.1: version "3.2.2" - resolved "https://registry.npmjs.org/react-fast-compare/-/react-fast-compare-3.2.2.tgz#929a97a532304ce9fee4bcae44234f1ce2c21d49" + resolved "https://registry.yarnpkg.com/react-fast-compare/-/react-fast-compare-3.2.2.tgz#929a97a532304ce9fee4bcae44234f1ce2c21d49" integrity sha512-nsO+KSNgo1SbJqJEYRE9ERzo7YtYbou/OqjSQKxV7jcKox7+usiUVZOAC+XnDOABXggQTno0Y1CpVnuWEc1boQ== react-helmet@^6.1.0: version "6.1.0" - resolved "https://registry.npmjs.org/react-helmet/-/react-helmet-6.1.0.tgz#a750d5165cb13cf213e44747502652e794468726" + resolved "https://registry.yarnpkg.com/react-helmet/-/react-helmet-6.1.0.tgz#a750d5165cb13cf213e44747502652e794468726" integrity sha512-4uMzEY9nlDlgxr61NL3XbKRy1hEkXmKNXhjbAIOVw5vcFrsdYbH2FEwcNyWvWinl103nXgzYNlns9ca+8kFiWw== dependencies: object-assign "^4.1.1" @@ -5728,7 +5719,7 @@ react-helmet@^6.1.0: react-i18next@^11.18.6: version "11.18.6" - resolved "https://registry.npmjs.org/react-i18next/-/react-i18next-11.18.6.tgz#e159c2960c718c1314f1e8fcaa282d1c8b167887" + resolved "https://registry.yarnpkg.com/react-i18next/-/react-i18next-11.18.6.tgz#e159c2960c718c1314f1e8fcaa282d1c8b167887" integrity sha512-yHb2F9BiT0lqoQDt8loZ5gWP331GwctHz9tYQ8A2EIEUu+CcEdjBLQWli1USG3RdWQt3W+jqQLg/d4rrQR96LA== dependencies: "@babel/runtime" "^7.14.5" @@ -5736,17 +5727,17 @@ react-i18next@^11.18.6: react-is@^16.13.1, react-is@^16.6.0, react-is@^16.7.0: version "16.13.1" - resolved "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4" + resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4" integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== react-onclickoutside@^6.12.2: version "6.13.0" - resolved "https://registry.npmjs.org/react-onclickoutside/-/react-onclickoutside-6.13.0.tgz#e165ea4e5157f3da94f4376a3ab3e22a565f4ffc" + resolved "https://registry.yarnpkg.com/react-onclickoutside/-/react-onclickoutside-6.13.0.tgz#e165ea4e5157f3da94f4376a3ab3e22a565f4ffc" integrity sha512-ty8So6tcUpIb+ZE+1HAhbLROvAIJYyJe/1vRrrcmW+jLsaM+/powDRqxzo6hSh9CuRZGSL1Q8mvcF5WRD93a0A== react-popper@^2.3.0: version "2.3.0" - resolved "https://registry.npmjs.org/react-popper/-/react-popper-2.3.0.tgz#17891c620e1320dce318bad9fede46a5f71c70ba" + resolved "https://registry.yarnpkg.com/react-popper/-/react-popper-2.3.0.tgz#17891c620e1320dce318bad9fede46a5f71c70ba" integrity sha512-e1hj8lL3uM+sgSR4Lxzn5h1GxBlpa4CQz0XLF8kx4MDrDRWY0Ena4c97PUeSX9i5W3UAfDP0z0FXCTQkoXUl3Q== dependencies: react-fast-compare "^3.0.1" @@ -5754,7 +5745,7 @@ react-popper@^2.3.0: react-router-dom@^5.3.4: version "5.3.4" - resolved "https://registry.npmjs.org/react-router-dom/-/react-router-dom-5.3.4.tgz#2ed62ffd88cae6db134445f4a0c0ae8b91d2e5e6" + resolved "https://registry.yarnpkg.com/react-router-dom/-/react-router-dom-5.3.4.tgz#2ed62ffd88cae6db134445f4a0c0ae8b91d2e5e6" integrity sha512-m4EqFMHv/Ih4kpcBCONHbkT68KoAeHN4p3lAGoNryfHi0dMy0kCzEZakiKRsvg5wHZ/JLrLW8o8KomWiz/qbYQ== dependencies: "@babel/runtime" "^7.12.13" @@ -5767,12 +5758,12 @@ react-router-dom@^5.3.4: react-router-navigation-prompt@^1.9.6: version "1.9.6" - resolved "https://registry.npmjs.org/react-router-navigation-prompt/-/react-router-navigation-prompt-1.9.6.tgz#a949252dfbae8c40508671beb6d5995f0b089ac4" + resolved "https://registry.yarnpkg.com/react-router-navigation-prompt/-/react-router-navigation-prompt-1.9.6.tgz#a949252dfbae8c40508671beb6d5995f0b089ac4" integrity sha512-l0sAtbroHK8i1/Eyy29XcrMpBEt0R08BaScgMUt8r5vWWbLz7G0ChOikayTCQm7QgDFsHw8gVnxDJb7TBZCAKg== react-router@5.3.4: version "5.3.4" - resolved "https://registry.npmjs.org/react-router/-/react-router-5.3.4.tgz#8ca252d70fcc37841e31473c7a151cf777887bb5" + resolved "https://registry.yarnpkg.com/react-router/-/react-router-5.3.4.tgz#8ca252d70fcc37841e31473c7a151cf777887bb5" integrity sha512-Ys9K+ppnJah3QuaRiLxk+jDWOR1MekYQrlytiXxC1RyfbdsZkS5pvKAzCCr031xHixZwpnsYNT5xysdFHQaYsA== dependencies: "@babel/runtime" "^7.12.13" @@ -5787,7 +5778,7 @@ react-router@5.3.4: react-select@^5.7.3: version "5.7.4" - resolved "https://registry.npmjs.org/react-select/-/react-select-5.7.4.tgz#d8cad96e7bc9d6c8e2709bdda8f4363c5dd7ea7d" + resolved "https://registry.yarnpkg.com/react-select/-/react-select-5.7.4.tgz#d8cad96e7bc9d6c8e2709bdda8f4363c5dd7ea7d" integrity sha512-NhuE56X+p9QDFh4BgeygHFIvJJszO1i1KSkg/JPcIJrbovyRtI+GuOEa4XzFCEpZRAEoEI8u/cAHK+jG/PgUzQ== dependencies: "@babel/runtime" "^7.12.0" @@ -5802,19 +5793,19 @@ react-select@^5.7.3: react-side-effect@^2.1.0: version "2.1.2" - resolved "https://registry.npmjs.org/react-side-effect/-/react-side-effect-2.1.2.tgz#dc6345b9e8f9906dc2eeb68700b615e0b4fe752a" + resolved "https://registry.yarnpkg.com/react-side-effect/-/react-side-effect-2.1.2.tgz#dc6345b9e8f9906dc2eeb68700b615e0b4fe752a" integrity sha512-PVjOcvVOyIILrYoyGEpDN3vmYNLdy1CajSFNt4TDsVQC5KpTijDvWVoR+/7Rz2xT978D8/ZtFceXxzsPwZEDvw== react-toastify@^8.2.0: version "8.2.0" - resolved "https://registry.npmjs.org/react-toastify/-/react-toastify-8.2.0.tgz#ef7d56bdfdc6272ca6b228368ab564721c3a3244" + resolved "https://registry.yarnpkg.com/react-toastify/-/react-toastify-8.2.0.tgz#ef7d56bdfdc6272ca6b228368ab564721c3a3244" integrity sha512-Pg2Ju7NngAamarFvLwqrFomJ57u/Ay6i6zfLurt/qPynWkAkOthu6vxfqYpJCyNhHRhR4hu7+bySSeWWJu6PAg== dependencies: clsx "^1.1.1" react-transition-group@^4.3.0, react-transition-group@^4.4.2: version "4.4.5" - resolved "https://registry.npmjs.org/react-transition-group/-/react-transition-group-4.4.5.tgz#e53d4e3f3344da8521489fbef8f2581d42becdd1" + resolved "https://registry.yarnpkg.com/react-transition-group/-/react-transition-group-4.4.5.tgz#e53d4e3f3344da8521489fbef8f2581d42becdd1" integrity sha512-pZcd1MCJoiKiBR2NRxeCRg13uCXbydPnmB4EOeRrY7480qNWO8IIgQG6zlDkm6uRMsURXPuKq0GWtiM59a5Q6g== dependencies: "@babel/runtime" "^7.5.5" @@ -5824,7 +5815,7 @@ react-transition-group@^4.3.0, react-transition-group@^4.4.2: react@^18.2.0: version "18.2.0" - resolved "https://registry.npmjs.org/react/-/react-18.2.0.tgz#555bd98592883255fa00de14f1151a917b5d77d5" + resolved "https://registry.yarnpkg.com/react/-/react-18.2.0.tgz#555bd98592883255fa00de14f1151a917b5d77d5" integrity sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ== dependencies: loose-envify "^1.1.0" @@ -5840,7 +5831,7 @@ readable-stream@^3.1.1, readable-stream@^3.4.0, readable-stream@^3.6.0: readable-stream@^4.0.0: version "4.4.2" - resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-4.4.2.tgz#e6aced27ad3b9d726d8308515b9a1b98dc1b9d13" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-4.4.2.tgz#e6aced27ad3b9d726d8308515b9a1b98dc1b9d13" integrity sha512-Lk/fICSyIhodxy1IDK2HazkeGjSmezAWX2egdtJnYhtzKEsBPJowlI6F6LPb5tqIQILrMbx22S5o3GuJavPusA== dependencies: abort-controller "^3.0.0" @@ -5851,33 +5842,38 @@ readable-stream@^4.0.0: readable-web-to-node-stream@^3.0.0: version "3.0.2" - resolved "https://registry.npmjs.org/readable-web-to-node-stream/-/readable-web-to-node-stream-3.0.2.tgz#5d52bb5df7b54861fd48d015e93a2cb87b3ee0bb" + resolved "https://registry.yarnpkg.com/readable-web-to-node-stream/-/readable-web-to-node-stream-3.0.2.tgz#5d52bb5df7b54861fd48d015e93a2cb87b3ee0bb" integrity sha512-ePeK6cc1EcKLEhJFt/AebMCLL+GgSKhuygrZ/GLaKZYEecIgIECf4UaUuaByiGtzckwR4ain9VzUh95T1exYGw== dependencies: readable-stream "^3.6.0" readdirp@~3.6.0: version "3.6.0" - resolved "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz#74a370bd857116e245b29cc97340cd431a02a6c7" + resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.6.0.tgz#74a370bd857116e245b29cc97340cd431a02a6c7" integrity sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA== dependencies: picomatch "^2.2.1" +real-require@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/real-require/-/real-require-0.2.0.tgz#209632dea1810be2ae063a6ac084fee7e33fba78" + integrity sha512-57frrGM/OCTLqLOAh0mhVA9VBMHd+9U7Zb2THMGdBUoZVOtGbJzjxsYGDJ3A9AYYCP4hn6y1TVbaOfzWtm5GFg== + rechoir@^0.7.0: version "0.7.1" - resolved "https://registry.npmjs.org/rechoir/-/rechoir-0.7.1.tgz#9478a96a1ca135b5e88fc027f03ee92d6c645686" + resolved "https://registry.yarnpkg.com/rechoir/-/rechoir-0.7.1.tgz#9478a96a1ca135b5e88fc027f03ee92d6c645686" integrity sha512-/njmZ8s1wVeR6pjTZ+0nCnv8SpZNRMT2D1RLOJQESlYFDBvwpTA4KWJpZ+sBJ4+vhjILRcK7JIFdGCdxEAAitg== dependencies: resolve "^1.9.0" -regenerator-runtime@^0.13.11: - version "0.13.11" - resolved "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz#f6dca3e7ceec20590d07ada785636a90cdca17f9" - integrity sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg== +regenerator-runtime@^0.14.0: + version "0.14.0" + resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.14.0.tgz#5e19d68eb12d486f797e15a3c6a918f7cec5eb45" + integrity sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA== regexp.prototype.flags@^1.5.0: version "1.5.0" - resolved "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.0.tgz#fe7ce25e7e4cca8db37b6634c8a2c7009199b9cb" + resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.5.0.tgz#fe7ce25e7e4cca8db37b6634c8a2c7009199b9cb" integrity sha512-0SutC3pNudRKgquxGoRGIz946MZVHqbNfPjBdxeOhBrdgDKlRoXmYLQN9xRbrR09ZXWeGAdPuif7egofn6v5LA== dependencies: call-bind "^1.0.2" @@ -5886,12 +5882,12 @@ regexp.prototype.flags@^1.5.0: relateurl@^0.2.7: version "0.2.7" - resolved "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz#54dbf377e51440aca90a4cd274600d3ff2d888a9" + resolved "https://registry.yarnpkg.com/relateurl/-/relateurl-0.2.7.tgz#54dbf377e51440aca90a4cd274600d3ff2d888a9" integrity sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog== renderkid@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/renderkid/-/renderkid-3.0.0.tgz#5fd823e4d6951d37358ecc9a58b1f06836b6268a" + resolved "https://registry.yarnpkg.com/renderkid/-/renderkid-3.0.0.tgz#5fd823e4d6951d37358ecc9a58b1f06836b6268a" integrity sha512-q/7VIQA8lmM1hF+jn+sFSPWGlMkSAeNYcPLmDQx2zzuiDfaLrOmumR8iaUKlenFgh0XRPIUeSPlH3A+AW3Z5pg== dependencies: css-select "^4.1.3" @@ -5902,48 +5898,48 @@ renderkid@^3.0.0: require-from-string@^2.0.2: version "2.0.2" - resolved "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909" + resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909" integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw== resolve-cwd@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz#0f0075f1bb2544766cf73ba6a6e2adfebcb13f2d" + resolved "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-3.0.0.tgz#0f0075f1bb2544766cf73ba6a6e2adfebcb13f2d" integrity sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg== dependencies: resolve-from "^5.0.0" resolve-from@^4.0.0: version "4.0.0" - resolved "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" + resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== resolve-from@^5.0.0: version "5.0.0" - resolved "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz#c35225843df8f776df21c57557bc087e9dfdfc69" + resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-5.0.0.tgz#c35225843df8f776df21c57557bc087e9dfdfc69" integrity sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw== resolve-pathname@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/resolve-pathname/-/resolve-pathname-3.0.0.tgz#99d02224d3cf263689becbb393bc560313025dcd" + resolved "https://registry.yarnpkg.com/resolve-pathname/-/resolve-pathname-3.0.0.tgz#99d02224d3cf263689becbb393bc560313025dcd" integrity sha512-C7rARubxI8bXFNB/hqcp/4iUeIXJhJZvFPFPiSPRnhU5UPxzMFIl+2E6yY6c4k9giDJAhtV+enfA+G89N6Csng== resolve-pkg-maps@^1.0.0: version "1.0.0" - resolved "https://registry.npmjs.org/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz#616b3dc2c57056b5588c31cdf4b3d64db133720f" + resolved "https://registry.yarnpkg.com/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz#616b3dc2c57056b5588c31cdf4b3d64db133720f" integrity sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw== resolve@^1.19.0, resolve@^1.9.0: - version "1.22.2" - resolved "https://registry.npmjs.org/resolve/-/resolve-1.22.2.tgz#0ed0943d4e301867955766c9f3e1ae6d01c6845f" - integrity sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g== + version "1.22.4" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.4.tgz#1dc40df46554cdaf8948a486a10f6ba1e2026c34" + integrity sha512-PXNdCiPqDqeUou+w1C2eTQbNfxKSuMxqTCuvlmmMsk1NWHL5fRrhY6Pl0qEYYc6+QqGClco1Qj8XnjPego4wfg== dependencies: - is-core-module "^2.11.0" + is-core-module "^2.13.0" path-parse "^1.0.7" supports-preserve-symlinks-flag "^1.0.0" safe-buffer@5.1.2: version "5.1.2" - resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== safe-buffer@5.2.1, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@~5.2.0: @@ -5951,14 +5947,19 @@ safe-buffer@5.2.1, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@~5.2.0: resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== +safe-stable-stringify@^2.3.1: + version "2.4.3" + resolved "https://registry.yarnpkg.com/safe-stable-stringify/-/safe-stable-stringify-2.4.3.tgz#138c84b6f6edb3db5f8ef3ef7115b8f55ccbf886" + integrity sha512-e2bDA2WJT0wxseVd4lsDP4+3ONX6HpMXQa1ZhFQ7SU+GjvORCmShbCMltrtIDfkYhVHrOcPtj+KhmDBdPdZD1g== + "safer-buffer@>= 2.1.2 < 3": version "2.1.2" - resolved "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" + resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== sanitize-filename@^1.6.3: version "1.6.3" - resolved "https://registry.npmjs.org/sanitize-filename/-/sanitize-filename-1.6.3.tgz#755ebd752045931977e30b2025d340d7c9090378" + resolved "https://registry.yarnpkg.com/sanitize-filename/-/sanitize-filename-1.6.3.tgz#755ebd752045931977e30b2025d340d7c9090378" integrity sha512-y/52Mcy7aw3gRm7IrcGDFx/bCk4AhRh2eI9luHOQM86nZsqwiRkkq2GekHXBBD+SmPidc8i2PqtYZl+pWJ8Oeg== dependencies: truncate-utf8-bytes "^1.0.0" @@ -5972,16 +5973,16 @@ saslprep@^1.0.3: sass-loader@^12.6.0: version "12.6.0" - resolved "https://registry.npmjs.org/sass-loader/-/sass-loader-12.6.0.tgz#5148362c8e2cdd4b950f3c63ac5d16dbfed37bcb" + resolved "https://registry.yarnpkg.com/sass-loader/-/sass-loader-12.6.0.tgz#5148362c8e2cdd4b950f3c63ac5d16dbfed37bcb" integrity sha512-oLTaH0YCtX4cfnJZxKSLAyglED0naiYfNG1iXfU5w1LNZ+ukoA5DtyDIN5zmKVZwYNJP4KRc5Y3hkWga+7tYfA== dependencies: klona "^2.0.4" neo-async "^2.6.2" sass@^1.57.1: - version "1.64.1" - resolved "https://registry.npmjs.org/sass/-/sass-1.64.1.tgz#6a46f6d68e0fa5ad90aa59ce025673ddaa8441cf" - integrity sha512-16rRACSOFEE8VN7SCgBu1MpYCyN7urj9At898tyzdXFhC+a+yOX5dXwAR7L8/IdPJ1NB8OYoXmD55DM30B2kEQ== + version "1.66.1" + resolved "https://registry.yarnpkg.com/sass/-/sass-1.66.1.tgz#04b51c4671e4650aa393740e66a4e58b44d055b1" + integrity sha512-50c+zTsZOJVgFfTgwwEzkjA3/QACgdNsKueWPyAR0mRINIvLAStVQBbPg14iuqEQ74NPDbXzJARJ/O4SI1zftA== dependencies: chokidar ">=3.0.0 <4.0.0" immutable "^4.0.0" @@ -5989,19 +5990,19 @@ sass@^1.57.1: sax@^1.2.4: version "1.2.4" - resolved "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" + resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw== scheduler@^0.23.0: version "0.23.0" - resolved "https://registry.npmjs.org/scheduler/-/scheduler-0.23.0.tgz#ba8041afc3d30eb206a487b6b384002e4e61fdfe" + resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.23.0.tgz#ba8041afc3d30eb206a487b6b384002e4e61fdfe" integrity sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw== dependencies: loose-envify "^1.1.0" schema-utils@^3.0.0, schema-utils@^3.1.1, schema-utils@^3.2.0: version "3.3.0" - resolved "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz#f50a88877c3c01652a15b622ae9e9795df7a60fe" + resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-3.3.0.tgz#f50a88877c3c01652a15b622ae9e9795df7a60fe" integrity sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg== dependencies: "@types/json-schema" "^7.0.8" @@ -6010,7 +6011,7 @@ schema-utils@^3.0.0, schema-utils@^3.1.1, schema-utils@^3.2.0: schema-utils@^4.0.0, schema-utils@^4.0.1: version "4.2.0" - resolved "https://registry.npmjs.org/schema-utils/-/schema-utils-4.2.0.tgz#70d7c93e153a273a805801882ebd3bff20d89c8b" + resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-4.2.0.tgz#70d7c93e153a273a805801882ebd3bff20d89c8b" integrity sha512-L0jRsrPpjdckP3oPug3/VxNKt2trR8TcabrM6FOAAlvC/9Phcmm+cuAgTlxBqdBR1WJx7Naj9WHw+aOmheSVbw== dependencies: "@types/json-schema" "^7.0.9" @@ -6020,19 +6021,19 @@ schema-utils@^4.0.0, schema-utils@^4.0.1: scmp@^2.1.0: version "2.1.0" - resolved "https://registry.npmjs.org/scmp/-/scmp-2.1.0.tgz#37b8e197c425bdeb570ab91cc356b311a11f9c9a" + resolved "https://registry.yarnpkg.com/scmp/-/scmp-2.1.0.tgz#37b8e197c425bdeb570ab91cc356b311a11f9c9a" integrity sha512-o/mRQGk9Rcer/jEEw/yw4mwo3EU/NvYvp577/Btqrym9Qy5/MdWGBqipbALgd2lrdWTJ5/gqDusxfnQBxOxT2Q== scroll-into-view-if-needed@^2.2.20: version "2.2.31" - resolved "https://registry.npmjs.org/scroll-into-view-if-needed/-/scroll-into-view-if-needed-2.2.31.tgz#d3c482959dc483e37962d1521254e3295d0d1587" + resolved "https://registry.yarnpkg.com/scroll-into-view-if-needed/-/scroll-into-view-if-needed-2.2.31.tgz#d3c482959dc483e37962d1521254e3295d0d1587" integrity sha512-dGCXy99wZQivjmjIqihaBQNjryrz5rueJY7eHfTdyWEiR4ttYpsajb14rn9s5d4DY4EcY6+4+U/maARBXJedkA== dependencies: compute-scroll-into-view "^1.0.20" secure-json-parse@^2.4.0: version "2.7.0" - resolved "https://registry.npmjs.org/secure-json-parse/-/secure-json-parse-2.7.0.tgz#5a5f9cd6ae47df23dba3151edd06855d47e09862" + resolved "https://registry.yarnpkg.com/secure-json-parse/-/secure-json-parse-2.7.0.tgz#5a5f9cd6ae47df23dba3151edd06855d47e09862" integrity sha512-6aU+Rwsezw7VR8/nyvKTx8QpWH9FrcYiXXlqC4z5d5XQBDRqtbfsRjnwGyqbi3gddNtWHuEk9OANUotL26qKUw== semver@^6.0.0: @@ -6049,7 +6050,7 @@ semver@^7.3.5, semver@^7.3.8, semver@^7.5.1: send@0.18.0: version "0.18.0" - resolved "https://registry.npmjs.org/send/-/send-0.18.0.tgz#670167cc654b05f5aa4a767f9113bb371bc706be" + resolved "https://registry.yarnpkg.com/send/-/send-0.18.0.tgz#670167cc654b05f5aa4a767f9113bb371bc706be" integrity sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg== dependencies: debug "2.6.9" @@ -6068,14 +6069,14 @@ send@0.18.0: serialize-javascript@^6.0.1: version "6.0.1" - resolved "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.1.tgz#b206efb27c3da0b0ab6b52f48d170b7996458e5c" + resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-6.0.1.tgz#b206efb27c3da0b0ab6b52f48d170b7996458e5c" integrity sha512-owoXEFjWRllis8/M1Q+Cw5k8ZH40e3zhp/ovX+Xr/vi1qj6QesbyXXViFbpNvWvPNAD62SutwEXavefrLJWj7w== dependencies: randombytes "^2.1.0" serve-static@1.15.0: version "1.15.0" - resolved "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz#faaef08cffe0a1a62f60cad0c4e513cff0ac9540" + resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.15.0.tgz#faaef08cffe0a1a62f60cad0c4e513cff0ac9540" integrity sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g== dependencies: encodeurl "~1.0.2" @@ -6085,19 +6086,19 @@ serve-static@1.15.0: setprototypeof@1.2.0: version "1.2.0" - resolved "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz#66c9a24a73f9fc28cbe66b09fed3d33dcaf1b424" + resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.2.0.tgz#66c9a24a73f9fc28cbe66b09fed3d33dcaf1b424" integrity sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw== shallow-clone@^3.0.0: version "3.0.1" - resolved "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz#8f2981ad92531f55035b01fb230769a40e02efa3" + resolved "https://registry.yarnpkg.com/shallow-clone/-/shallow-clone-3.0.1.tgz#8f2981ad92531f55035b01fb230769a40e02efa3" integrity sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA== dependencies: kind-of "^6.0.2" sharp@^0.31.3: version "0.31.3" - resolved "https://registry.npmjs.org/sharp/-/sharp-0.31.3.tgz#60227edc5c2be90e7378a210466c99aefcf32688" + resolved "https://registry.yarnpkg.com/sharp/-/sharp-0.31.3.tgz#60227edc5c2be90e7378a210466c99aefcf32688" integrity sha512-XcR4+FCLBFKw1bdB+GEhnUNXNXvnt0tDo4WsBsraKymuo/IAuPuCBVAL2wIkUw2r/dwFW5Q5+g66Kwl2dgDFVg== dependencies: color "^4.2.3" @@ -6111,19 +6112,19 @@ sharp@^0.31.3: shebang-command@^2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" + resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA== dependencies: shebang-regex "^3.0.0" shebang-regex@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" + resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== side-channel@^1.0.4: version "1.0.4" - resolved "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz#efce5c8fdc104ee751b25c58d4290011fa5ea2cf" + resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.0.4.tgz#efce5c8fdc104ee751b25c58d4290011fa5ea2cf" integrity sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw== dependencies: call-bind "^1.0.0" @@ -6137,12 +6138,12 @@ sift@16.0.1: simple-concat@^1.0.0: version "1.0.1" - resolved "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz#f46976082ba35c2263f1c8ab5edfe26c41c9552f" + resolved "https://registry.yarnpkg.com/simple-concat/-/simple-concat-1.0.1.tgz#f46976082ba35c2263f1c8ab5edfe26c41c9552f" integrity sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q== simple-get@^4.0.0, simple-get@^4.0.1: version "4.0.1" - resolved "https://registry.npmjs.org/simple-get/-/simple-get-4.0.1.tgz#4a39db549287c979d352112fa03fd99fd6bc3543" + resolved "https://registry.yarnpkg.com/simple-get/-/simple-get-4.0.1.tgz#4a39db549287c979d352112fa03fd99fd6bc3543" integrity sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA== dependencies: decompress-response "^6.0.0" @@ -6151,19 +6152,19 @@ simple-get@^4.0.0, simple-get@^4.0.1: simple-swizzle@^0.2.2: version "0.2.2" - resolved "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz#a4da6b635ffcccca33f70d17cb92592de95e557a" + resolved "https://registry.yarnpkg.com/simple-swizzle/-/simple-swizzle-0.2.2.tgz#a4da6b635ffcccca33f70d17cb92592de95e557a" integrity sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg== dependencies: is-arrayish "^0.3.1" simple-wcswidth@^1.0.1: version "1.0.1" - resolved "https://registry.npmjs.org/simple-wcswidth/-/simple-wcswidth-1.0.1.tgz#8ab18ac0ae342f9d9b629604e54d2aa1ecb018b2" + resolved "https://registry.yarnpkg.com/simple-wcswidth/-/simple-wcswidth-1.0.1.tgz#8ab18ac0ae342f9d9b629604e54d2aa1ecb018b2" integrity sha512-xMO/8eNREtaROt7tJvWJqHBDTMFN4eiQ5I4JRMuilwfnFcV5W9u7RUkueNkdw0jPqGMX36iCywelS5yilTuOxg== sirv@^1.0.7: version "1.0.19" - resolved "https://registry.npmjs.org/sirv/-/sirv-1.0.19.tgz#1d73979b38c7fe91fcba49c85280daa9c2363b49" + resolved "https://registry.yarnpkg.com/sirv/-/sirv-1.0.19.tgz#1d73979b38c7fe91fcba49c85280daa9c2363b49" integrity sha512-JuLThK3TnZG1TAKDwNIqNq6QA2afLOCcm+iE8D1Kj3GA40pSPsxQjjJl0J8X3tsR7T+CP1GavpzLwYkgVLWrZQ== dependencies: "@polka/url" "^1.0.0-next.20" @@ -6172,21 +6173,21 @@ sirv@^1.0.7: slate-history@^0.86.0: version "0.86.0" - resolved "https://registry.npmjs.org/slate-history/-/slate-history-0.86.0.tgz#5554612271d2fc1018a7918be3961bb66e620c58" + resolved "https://registry.yarnpkg.com/slate-history/-/slate-history-0.86.0.tgz#5554612271d2fc1018a7918be3961bb66e620c58" integrity sha512-OxObL9tbhgwvSlnKSCpGIh7wnuaqvOj5jRExGjEyCU2Ke8ctf22HjT+jw7GEi9ttLzNTUmTEU3YIzqKGeqN+og== dependencies: is-plain-object "^5.0.0" slate-hyperscript@^0.81.3: version "0.81.3" - resolved "https://registry.npmjs.org/slate-hyperscript/-/slate-hyperscript-0.81.3.tgz#0c8f446d6bef717d2fe855239fb86a000ba2d0d2" + resolved "https://registry.yarnpkg.com/slate-hyperscript/-/slate-hyperscript-0.81.3.tgz#0c8f446d6bef717d2fe855239fb86a000ba2d0d2" integrity sha512-A/jvoLTAgeRcJaUPQCYOikCJxSws6+/jkL7mM+QuZljNd7EA5YqafGA7sVBJRFpcoSsDRUIah1yNiC/7vxZPYg== dependencies: is-plain-object "^5.0.0" slate-react@^0.92.0: version "0.92.0" - resolved "https://registry.npmjs.org/slate-react/-/slate-react-0.92.0.tgz#eb158ac2a33d962f48c466c4c8cc7bc14c1c6633" + resolved "https://registry.yarnpkg.com/slate-react/-/slate-react-0.92.0.tgz#eb158ac2a33d962f48c466c4c8cc7bc14c1c6633" integrity sha512-xEDKu5RKw5f0N95l1UeNQnrB0Pxh4JPjpIZR/BVsMo0ININnLAknR99gLo46bl/Ffql4mr7LeaxQRoXxbFtJOQ== dependencies: "@juggle/resize-observer" "^3.4.0" @@ -6201,7 +6202,7 @@ slate-react@^0.92.0: slate@^0.91.4: version "0.91.4" - resolved "https://registry.npmjs.org/slate/-/slate-0.91.4.tgz#759764d63c8a8a7aff29a29e598e593ed80277f9" + resolved "https://registry.yarnpkg.com/slate/-/slate-0.91.4.tgz#759764d63c8a8a7aff29a29e598e593ed80277f9" integrity sha512-aUJ3rpjrdi5SbJ5G1Qjr3arytfRkEStTmHjBfWq2A2Q8MybacIzkScSvGJjQkdTk3djCK9C9SEOt39sSeZFwTw== dependencies: immer "^9.0.6" @@ -6221,34 +6222,26 @@ socks@^2.7.1: ip "^2.0.0" smart-buffer "^4.2.0" -sonic-boom@^1.0.2: - version "1.4.1" - resolved "https://registry.npmjs.org/sonic-boom/-/sonic-boom-1.4.1.tgz#d35d6a74076624f12e6f917ade7b9d75e918f53e" - integrity sha512-LRHh/A8tpW7ru89lrlkU4AszXt1dbwSjVWguGrmlxE7tawVmDBlI1PILMkXAxJTwqhgsEeTHzj36D5CmHgQmNg== - dependencies: - atomic-sleep "^1.0.0" - flatstr "^1.0.12" - -sonic-boom@^3.0.0: +sonic-boom@^3.0.0, sonic-boom@^3.1.0: version "3.3.0" - resolved "https://registry.npmjs.org/sonic-boom/-/sonic-boom-3.3.0.tgz#cffab6dafee3b2bcb88d08d589394198bee1838c" + resolved "https://registry.yarnpkg.com/sonic-boom/-/sonic-boom-3.3.0.tgz#cffab6dafee3b2bcb88d08d589394198bee1838c" integrity sha512-LYxp34KlZ1a2Jb8ZQgFCK3niIHzibdwtwNUWKg0qQRzsDoJ3Gfgkf8KdBTFU3SkejDEIlWwnSnpVdOZIhFMl/g== dependencies: atomic-sleep "^1.0.0" source-list-map@^2.0.0: version "2.0.1" - resolved "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz#3993bd873bfc48479cca9ea3a547835c7c154b34" + resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-2.0.1.tgz#3993bd873bfc48479cca9ea3a547835c7c154b34" integrity sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw== "source-map-js@>=0.6.2 <2.0.0", source-map-js@^1.0.1, source-map-js@^1.0.2: version "1.0.2" - resolved "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz#adbc361d9c62df380125e7f161f71c826f1e490c" + resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.0.2.tgz#adbc361d9c62df380125e7f161f71c826f1e490c" integrity sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw== source-map-support@^0.5.13, source-map-support@~0.5.20: version "0.5.21" - resolved "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz#04fe7c7f9e1ed2d662233c28cb2b35b9f63f6e4f" + resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.21.tgz#04fe7c7f9e1ed2d662233c28cb2b35b9f63f6e4f" integrity sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w== dependencies: buffer-from "^1.0.0" @@ -6256,12 +6249,12 @@ source-map-support@^0.5.13, source-map-support@~0.5.20: source-map@^0.5.7: version "0.5.7" - resolved "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" integrity sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ== source-map@^0.6.0, source-map@~0.6.0, source-map@~0.6.1: version "0.6.1" - resolved "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== sparse-bitfield@^3.0.3: @@ -6273,36 +6266,36 @@ sparse-bitfield@^3.0.3: split2@^4.0.0: version "4.2.0" - resolved "https://registry.npmjs.org/split2/-/split2-4.2.0.tgz#c9c5920904d148bab0b9f67145f245a86aadbfa4" + resolved "https://registry.yarnpkg.com/split2/-/split2-4.2.0.tgz#c9c5920904d148bab0b9f67145f245a86aadbfa4" integrity sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg== state-local@^1.0.6: version "1.0.7" - resolved "https://registry.npmjs.org/state-local/-/state-local-1.0.7.tgz#da50211d07f05748d53009bee46307a37db386d5" + resolved "https://registry.yarnpkg.com/state-local/-/state-local-1.0.7.tgz#da50211d07f05748d53009bee46307a37db386d5" integrity sha512-HTEHMNieakEnoe33shBYcZ7NX83ACUjCu8c40iOGEZsngj9zRnkqS9j1pqQPXwobB0ZcVTk27REb7COQ0UR59w== statuses@2.0.1: version "2.0.1" - resolved "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz#55cb000ccf1d48728bd23c685a063998cf1a1b63" + resolved "https://registry.yarnpkg.com/statuses/-/statuses-2.0.1.tgz#55cb000ccf1d48728bd23c685a063998cf1a1b63" integrity sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ== stop-iteration-iterator@^1.0.0: version "1.0.0" - resolved "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.0.0.tgz#6a60be0b4ee757d1ed5254858ec66b10c49285e4" + resolved "https://registry.yarnpkg.com/stop-iteration-iterator/-/stop-iteration-iterator-1.0.0.tgz#6a60be0b4ee757d1ed5254858ec66b10c49285e4" integrity sha512-iCGQj+0l0HOdZ2AEeBADlsRC+vsnDsZsbdSiH1yNSjcfKM7fdpCMfqAL/dwF5BLiw/XhRft/Wax6zQbhq2BcjQ== dependencies: internal-slot "^1.0.4" stream-parser@~0.3.1: version "0.3.1" - resolved "https://registry.npmjs.org/stream-parser/-/stream-parser-0.3.1.tgz#1618548694420021a1182ff0af1911c129761773" + resolved "https://registry.yarnpkg.com/stream-parser/-/stream-parser-0.3.1.tgz#1618548694420021a1182ff0af1911c129761773" integrity sha512-bJ/HgKq41nlKvlhccD5kaCr/P+Hu0wPNKPJOH7en+YrJu/9EgqUF+88w5Jb6KNcjOFMhfX4B2asfeAtIGuHObQ== dependencies: debug "2" streamsearch@^1.1.0: version "1.1.0" - resolved "https://registry.npmjs.org/streamsearch/-/streamsearch-1.1.0.tgz#404dd1e2247ca94af554e841a8ef0eaa238da764" + resolved "https://registry.yarnpkg.com/streamsearch/-/streamsearch-1.1.0.tgz#404dd1e2247ca94af554e841a8ef0eaa238da764" integrity sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg== string_decoder@^1.1.1, string_decoder@^1.3.0: @@ -6314,19 +6307,19 @@ string_decoder@^1.1.1, string_decoder@^1.3.0: strip-ansi@^6.0.0, strip-ansi@^6.0.1: version "6.0.1" - resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== dependencies: ansi-regex "^5.0.1" strip-json-comments@^3.1.1: version "3.1.1" - resolved "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" + resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== strip-json-comments@~2.0.1: version "2.0.1" - resolved "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" + resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" integrity sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ== strnum@^1.0.5: @@ -6336,7 +6329,7 @@ strnum@^1.0.5: strtok3@^6.2.4: version "6.3.0" - resolved "https://registry.npmjs.org/strtok3/-/strtok3-6.3.0.tgz#358b80ffe6d5d5620e19a073aa78ce947a90f9a0" + resolved "https://registry.yarnpkg.com/strtok3/-/strtok3-6.3.0.tgz#358b80ffe6d5d5620e19a073aa78ce947a90f9a0" integrity sha512-fZtbhtvI9I48xDSywd/somNqgUHl2L2cstmXCCif0itOf96jeW18MBSyrLuNicYQVkvpOxkZtkzujiTJ9LW5Jw== dependencies: "@tokenizer/token" "^0.3.0" @@ -6344,7 +6337,7 @@ strtok3@^6.2.4: style-loader@^2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/style-loader/-/style-loader-2.0.0.tgz#9669602fd4690740eaaec137799a03addbbc393c" + resolved "https://registry.yarnpkg.com/style-loader/-/style-loader-2.0.0.tgz#9669602fd4690740eaaec137799a03addbbc393c" integrity sha512-Z0gYUJmzZ6ZdRUqpg1r8GsaFKypE+3xAzuFeMuoHgjc9KZv3wMyCRjQIWEbhoFSq7+7yoHXySDJyyWQaPajeiQ== dependencies: loader-utils "^2.0.0" @@ -6352,7 +6345,7 @@ style-loader@^2.0.0: stylehacks@^6.0.0: version "6.0.0" - resolved "https://registry.npmjs.org/stylehacks/-/stylehacks-6.0.0.tgz#9fdd7c217660dae0f62e14d51c89f6c01b3cb738" + resolved "https://registry.yarnpkg.com/stylehacks/-/stylehacks-6.0.0.tgz#9fdd7c217660dae0f62e14d51c89f6c01b3cb738" integrity sha512-+UT589qhHPwz6mTlCLSt/vMNTJx8dopeJlZAlBMJPWA3ORqu6wmQY7FBXf+qD+FsqoBJODyqNxOUP3jdntFRdw== dependencies: browserslist "^4.21.4" @@ -6360,38 +6353,38 @@ stylehacks@^6.0.0: stylis@4.2.0: version "4.2.0" - resolved "https://registry.npmjs.org/stylis/-/stylis-4.2.0.tgz#79daee0208964c8fe695a42fcffcac633a211a51" + resolved "https://registry.yarnpkg.com/stylis/-/stylis-4.2.0.tgz#79daee0208964c8fe695a42fcffcac633a211a51" integrity sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw== supports-color@^5.3.0: version "5.5.0" - resolved "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== dependencies: has-flag "^3.0.0" supports-color@^7.1.0: version "7.2.0" - resolved "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== dependencies: has-flag "^4.0.0" supports-color@^8.0.0: version "8.1.1" - resolved "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz#cd6fc17e28500cff56c1b86c0a7fd4a54a73005c" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-8.1.1.tgz#cd6fc17e28500cff56c1b86c0a7fd4a54a73005c" integrity sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q== dependencies: has-flag "^4.0.0" supports-preserve-symlinks-flag@^1.0.0: version "1.0.0" - resolved "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" + resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== svgo@^3.0.2: version "3.0.2" - resolved "https://registry.npmjs.org/svgo/-/svgo-3.0.2.tgz#5e99eeea42c68ee0dc46aa16da093838c262fe0a" + resolved "https://registry.yarnpkg.com/svgo/-/svgo-3.0.2.tgz#5e99eeea42c68ee0dc46aa16da093838c262fe0a" integrity sha512-Z706C1U2pb1+JGP48fbazf3KxHrWOsLme6Rv7imFBn5EnuanDW1GPaA/P1/dvObE670JDePC3mnj0k0B7P0jjQ== dependencies: "@trysound/sax" "0.2.0" @@ -6403,27 +6396,27 @@ svgo@^3.0.2: swc-loader@^0.2.3: version "0.2.3" - resolved "https://registry.npmjs.org/swc-loader/-/swc-loader-0.2.3.tgz#6792f1c2e4c9ae9bf9b933b3e010210e270c186d" + resolved "https://registry.yarnpkg.com/swc-loader/-/swc-loader-0.2.3.tgz#6792f1c2e4c9ae9bf9b933b3e010210e270c186d" integrity sha512-D1p6XXURfSPleZZA/Lipb3A8pZ17fP4NObZvFCDjK/OKljroqDpPmsBdTraWhVBqUNpcWBQY1imWdoPScRlQ7A== swc-minify-webpack-plugin@^2.1.0: version "2.1.1" - resolved "https://registry.npmjs.org/swc-minify-webpack-plugin/-/swc-minify-webpack-plugin-2.1.1.tgz#2c63fe592d49541733d7557b3af8f97c7ffa78b9" + resolved "https://registry.yarnpkg.com/swc-minify-webpack-plugin/-/swc-minify-webpack-plugin-2.1.1.tgz#2c63fe592d49541733d7557b3af8f97c7ffa78b9" integrity sha512-/9ud/libNWUC5p71vXWhW/O2Nc0essW8D9pY4P4ol0ceM8OcFbNr41R9YFqTkmktqUL2t0WwXau+FkR4T1+PJA== tabbable@^5.3.3: version "5.3.3" - resolved "https://registry.npmjs.org/tabbable/-/tabbable-5.3.3.tgz#aac0ff88c73b22d6c3c5a50b1586310006b47fbf" + resolved "https://registry.yarnpkg.com/tabbable/-/tabbable-5.3.3.tgz#aac0ff88c73b22d6c3c5a50b1586310006b47fbf" integrity sha512-QD9qKY3StfbZqWOPLp0++pOrAVb/HbUi5xCc8cUo4XjP19808oaMiDzn0leBY5mCespIBM0CIZePzZjgzR83kA== tapable@^2.0.0, tapable@^2.1.1, tapable@^2.2.0: version "2.2.1" - resolved "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz#1967a73ef4060a82f12ab96af86d52fdb76eeca0" + resolved "https://registry.yarnpkg.com/tapable/-/tapable-2.2.1.tgz#1967a73ef4060a82f12ab96af86d52fdb76eeca0" integrity sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ== tar-fs@^2.0.0, tar-fs@^2.1.1: version "2.1.1" - resolved "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.1.tgz#489a15ab85f1f0befabb370b7de4f9eb5cbe8784" + resolved "https://registry.yarnpkg.com/tar-fs/-/tar-fs-2.1.1.tgz#489a15ab85f1f0befabb370b7de4f9eb5cbe8784" integrity sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng== dependencies: chownr "^1.1.1" @@ -6444,7 +6437,7 @@ tar-stream@^2.1.4: terser-webpack-plugin@^5.3.6, terser-webpack-plugin@^5.3.7: version "5.3.9" - resolved "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.9.tgz#832536999c51b46d468067f9e37662a3b96adfe1" + resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-5.3.9.tgz#832536999c51b46d468067f9e37662a3b96adfe1" integrity sha512-ZuXsqE07EcggTWQjXUj+Aot/OMcD0bMKGgF63f7UxYcu5/AJF53aIpK1YoP5xR9l6s/Hy2b+t1AM0bLNPRuhwA== dependencies: "@jridgewell/trace-mapping" "^0.3.17" @@ -6455,7 +6448,7 @@ terser-webpack-plugin@^5.3.6, terser-webpack-plugin@^5.3.7: terser@^5.10.0, terser@^5.16.8: version "5.19.2" - resolved "https://registry.npmjs.org/terser/-/terser-5.19.2.tgz#bdb8017a9a4a8de4663a7983f45c506534f9234e" + resolved "https://registry.yarnpkg.com/terser/-/terser-5.19.2.tgz#bdb8017a9a4a8de4663a7983f45c506534f9234e" integrity sha512-qC5+dmecKJA4cpYxRa5aVkKehYsQKc+AHeKl0Oe62aYjBL8ZA33tTljktDHJSaxxMnbI5ZYw+o/S2DxxLu8OfA== dependencies: "@jridgewell/source-map" "^0.3.3" @@ -6465,21 +6458,28 @@ terser@^5.10.0, terser@^5.16.8: thenify-all@^1.0.0: version "1.6.0" - resolved "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz#1a1918d402d8fc3f98fbf234db0bcc8cc10e9726" + resolved "https://registry.yarnpkg.com/thenify-all/-/thenify-all-1.6.0.tgz#1a1918d402d8fc3f98fbf234db0bcc8cc10e9726" integrity sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA== dependencies: thenify ">= 3.1.0 < 4" "thenify@>= 3.1.0 < 4": version "3.3.1" - resolved "https://registry.npmjs.org/thenify/-/thenify-3.3.1.tgz#8932e686a4066038a016dd9e2ca46add9838a95f" + resolved "https://registry.yarnpkg.com/thenify/-/thenify-3.3.1.tgz#8932e686a4066038a016dd9e2ca46add9838a95f" integrity sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw== dependencies: any-promise "^1.0.0" +thread-stream@^2.0.0: + version "2.4.0" + resolved "https://registry.yarnpkg.com/thread-stream/-/thread-stream-2.4.0.tgz#5def29598d1d4171ba3bace7e023a71d87d99c07" + integrity sha512-xZYtOtmnA63zj04Q+F9bdEay5r47bvpo1CaNqsKi7TpoJHcotUez8Fkfo2RJWpW91lnnaApdpRbVwCWsy+ifcw== + dependencies: + real-require "^0.2.0" + timers-ext@^0.1.7: version "0.1.7" - resolved "https://registry.npmjs.org/timers-ext/-/timers-ext-0.1.7.tgz#6f57ad8578e07a3fb9f91d9387d65647555e25c6" + resolved "https://registry.yarnpkg.com/timers-ext/-/timers-ext-0.1.7.tgz#6f57ad8578e07a3fb9f91d9387d65647555e25c6" integrity sha512-b85NUNzTSdodShTIbky6ZF02e8STtVVfD+fu4aXXShEELpozH+bCpJLYMPZbsABN2wDH7fJpqIoXxJpzbf0NqQ== dependencies: es5-ext "~0.10.46" @@ -6487,39 +6487,39 @@ timers-ext@^0.1.7: tiny-invariant@1.0.6: version "1.0.6" - resolved "https://registry.npmjs.org/tiny-invariant/-/tiny-invariant-1.0.6.tgz#b3f9b38835e36a41c843a3b0907a5a7b3755de73" + resolved "https://registry.yarnpkg.com/tiny-invariant/-/tiny-invariant-1.0.6.tgz#b3f9b38835e36a41c843a3b0907a5a7b3755de73" integrity sha512-FOyLWWVjG+aC0UqG76V53yAWdXfH8bO6FNmyZOuUrzDzK8DI3/JRY25UD7+g49JWM1LXwymsKERB+DzI0dTEQA== tiny-invariant@^1.0.2: version "1.3.1" - resolved "https://registry.npmjs.org/tiny-invariant/-/tiny-invariant-1.3.1.tgz#8560808c916ef02ecfd55e66090df23a4b7aa642" + resolved "https://registry.yarnpkg.com/tiny-invariant/-/tiny-invariant-1.3.1.tgz#8560808c916ef02ecfd55e66090df23a4b7aa642" integrity sha512-AD5ih2NlSssTCwsMznbvwMZpJ1cbhkGd2uueNxzv2jDlEeZdU04JQfRnggJQ8DrcVBGjAsCKwFBbDlVNtEMlzw== tiny-warning@^1.0.0, tiny-warning@^1.0.3: version "1.0.3" - resolved "https://registry.npmjs.org/tiny-warning/-/tiny-warning-1.0.3.tgz#94a30db453df4c643d0fd566060d60a875d84754" + resolved "https://registry.yarnpkg.com/tiny-warning/-/tiny-warning-1.0.3.tgz#94a30db453df4c643d0fd566060d60a875d84754" integrity sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA== to-fast-properties@^2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" + resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" integrity sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog== to-regex-range@^5.0.1: version "5.0.1" - resolved "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" + resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ== dependencies: is-number "^7.0.0" toidentifier@1.0.1: version "1.0.1" - resolved "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz#3be34321a88a820ed1bd80dfaa33e479fbb8dd35" + resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.1.tgz#3be34321a88a820ed1bd80dfaa33e479fbb8dd35" integrity sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA== token-types@^4.1.1: version "4.2.1" - resolved "https://registry.npmjs.org/token-types/-/token-types-4.2.1.tgz#0f897f03665846982806e138977dbe72d44df753" + resolved "https://registry.yarnpkg.com/token-types/-/token-types-4.2.1.tgz#0f897f03665846982806e138977dbe72d44df753" integrity sha512-6udB24Q737UD/SDsKAHI9FCRP7Bqc9D/MQUV02ORQg5iskjtLJlZJNdN4kKtcdtwCeWIwIHDGaUsTsCCAa8sFQ== dependencies: "@tokenizer/token" "^0.3.0" @@ -6527,7 +6527,7 @@ token-types@^4.1.1: totalist@^1.0.0: version "1.1.0" - resolved "https://registry.npmjs.org/totalist/-/totalist-1.1.0.tgz#a4d65a3e546517701e3e5c37a47a70ac97fe56df" + resolved "https://registry.yarnpkg.com/totalist/-/totalist-1.1.0.tgz#a4d65a3e546517701e3e5c37a47a70ac97fe56df" integrity sha512-gduQwd1rOdDMGxFG1gEvhV88Oirdo2p+KjoYFU7k2g+i7n6AFFbDQ5kMPUsW0pNbfQsB/cwXvT1i4Bue0s9g5g== tr46@^3.0.0: @@ -6539,19 +6539,19 @@ tr46@^3.0.0: tr46@~0.0.3: version "0.0.3" - resolved "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" + resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" integrity sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw== truncate-utf8-bytes@^1.0.0: version "1.0.2" - resolved "https://registry.npmjs.org/truncate-utf8-bytes/-/truncate-utf8-bytes-1.0.2.tgz#405923909592d56f78a5818434b0b78489ca5f2b" + resolved "https://registry.yarnpkg.com/truncate-utf8-bytes/-/truncate-utf8-bytes-1.0.2.tgz#405923909592d56f78a5818434b0b78489ca5f2b" integrity sha512-95Pu1QXQvruGEhv62XCMO3Mm90GscOCClvrIUwCM0PYOXK3kaF3l3sIHxx71ThJfcbM2O5Au6SO3AWCSEfW4mQ== dependencies: utf8-byte-length "^1.0.1" ts-essentials@^7.0.3: version "7.0.3" - resolved "https://registry.npmjs.org/ts-essentials/-/ts-essentials-7.0.3.tgz#686fd155a02133eedcc5362dc8b5056cde3e5a38" + resolved "https://registry.yarnpkg.com/ts-essentials/-/ts-essentials-7.0.3.tgz#686fd155a02133eedcc5362dc8b5056cde3e5a38" integrity sha512-8+gr5+lqO3G84KdiTSMRLtuyJ+nTBVRKuCrK4lidMPdVeEp0uqC875uE5NMcaA7YYMN7XsNiFQuMvasF8HT/xQ== tslib@^1.11.1: @@ -6559,21 +6559,26 @@ tslib@^1.11.1: resolved "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== -tslib@^2.0.0, tslib@^2.0.3, tslib@^2.3.1, tslib@^2.5.0, tslib@^2.5.3: +tslib@^2.0.0, tslib@^2.0.3: + version "2.6.2" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.6.2.tgz#703ac29425e7b37cd6fd456e92404d46d1f3e4ae" + integrity sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q== + +tslib@^2.3.1, tslib@^2.5.0, tslib@^2.5.3: version "2.6.1" resolved "https://registry.npmjs.org/tslib/-/tslib-2.6.1.tgz#fd8c9a0ff42590b25703c0acb3de3d3f4ede0410" integrity sha512-t0hLfiEKfMUoqhG+U1oid7Pva4bbDPHYfJNiB7BiIjRkj1pyC++4N3huJfqY6aRH6VTB0rvtzQwjM4K6qpfOig== tunnel-agent@^0.6.0: version "0.6.0" - resolved "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" + resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" integrity sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w== dependencies: safe-buffer "^5.0.1" type-is@~1.6.18: version "1.6.18" - resolved "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz#4e552cd05df09467dcbc4ef739de89f2cf37c131" + resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.18.tgz#4e552cd05df09467dcbc4ef739de89f2cf37c131" integrity sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g== dependencies: media-typer "0.3.0" @@ -6581,12 +6586,12 @@ type-is@~1.6.18: type@^1.0.1: version "1.2.0" - resolved "https://registry.npmjs.org/type/-/type-1.2.0.tgz#848dd7698dafa3e54a6c479e759c4bc3f18847a0" + resolved "https://registry.yarnpkg.com/type/-/type-1.2.0.tgz#848dd7698dafa3e54a6c479e759c4bc3f18847a0" integrity sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg== type@^2.7.2: version "2.7.2" - resolved "https://registry.npmjs.org/type/-/type-2.7.2.tgz#2376a15a3a28b1efa0f5350dcf72d24df6ef98d0" + resolved "https://registry.yarnpkg.com/type/-/type-2.7.2.tgz#2376a15a3a28b1efa0f5350dcf72d24df6ef98d0" integrity sha512-dzlvlNlt6AXU7EBSfpAscydQ7gXB+pPGsPnfJnZpiNJBDj7IaJzQlBZYGdEi4R9HmPdBv2XmWJ6YUtoTa7lmCw== typescript@^4.9.4: @@ -6596,17 +6601,17 @@ typescript@^4.9.4: universalify@^2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz#75a4984efedc4b08975c5aeb73f530d02df25717" + resolved "https://registry.yarnpkg.com/universalify/-/universalify-2.0.0.tgz#75a4984efedc4b08975c5aeb73f530d02df25717" integrity sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ== unpipe@1.0.0, unpipe@~1.0.0: version "1.0.0" - resolved "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" + resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" integrity sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ== update-browserslist-db@^1.0.11: version "1.0.11" - resolved "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz#9a2a641ad2907ae7b3616506f4b977851db5b940" + resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz#9a2a641ad2907ae7b3616506f4b977851db5b940" integrity sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA== dependencies: escalade "^3.1.1" @@ -6614,14 +6619,14 @@ update-browserslist-db@^1.0.11: uri-js@^4.2.2: version "4.4.1" - resolved "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e" + resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e" integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg== dependencies: punycode "^2.1.0" url-loader@^4.1.1: version "4.1.1" - resolved "https://registry.npmjs.org/url-loader/-/url-loader-4.1.1.tgz#28505e905cae158cf07c92ca622d7f237e70a4e2" + resolved "https://registry.yarnpkg.com/url-loader/-/url-loader-4.1.1.tgz#28505e905cae158cf07c92ca622d7f237e70a4e2" integrity sha512-3BTV812+AVHHOJQO8O5MkWgZ5aosP7GnROJwvzLS9hWDj00lZ6Z0wNak423Lp9PBZN05N+Jk/N5Si8jRAlGyWA== dependencies: loader-utils "^2.0.0" @@ -6630,17 +6635,17 @@ url-loader@^4.1.1: use-context-selector@^1.4.1: version "1.4.1" - resolved "https://registry.npmjs.org/use-context-selector/-/use-context-selector-1.4.1.tgz#eb96279965846b72915d7f899b8e6ef1d768b0ae" + resolved "https://registry.yarnpkg.com/use-context-selector/-/use-context-selector-1.4.1.tgz#eb96279965846b72915d7f899b8e6ef1d768b0ae" integrity sha512-Io2ArvcRO+6MWIhkdfMFt+WKQX+Vb++W8DS2l03z/Vw/rz3BclKpM0ynr4LYGyU85Eke+Yx5oIhTY++QR0ZDoA== use-isomorphic-layout-effect@^1.1.2: version "1.1.2" - resolved "https://registry.npmjs.org/use-isomorphic-layout-effect/-/use-isomorphic-layout-effect-1.1.2.tgz#497cefb13d863d687b08477d9e5a164ad8c1a6fb" + resolved "https://registry.yarnpkg.com/use-isomorphic-layout-effect/-/use-isomorphic-layout-effect-1.1.2.tgz#497cefb13d863d687b08477d9e5a164ad8c1a6fb" integrity sha512-49L8yCO3iGT/ZF9QttjwLF/ZD9Iwto5LnH5LmEdk/6cFmXddqi2ulF0edxTwjj+7mqvpVVGQWvbXZdn32wRSHA== utf8-byte-length@^1.0.1: version "1.0.4" - resolved "https://registry.npmjs.org/utf8-byte-length/-/utf8-byte-length-1.0.4.tgz#f45f150c4c66eee968186505ab93fcbb8ad6bf61" + resolved "https://registry.yarnpkg.com/utf8-byte-length/-/utf8-byte-length-1.0.4.tgz#f45f150c4c66eee968186505ab93fcbb8ad6bf61" integrity sha512-4+wkEYLBbWxqTahEsWrhxepcoVOJ+1z5PGIjPZxRkytcdSUaNjIjBM7Xn8E+pdSuV7SzvWovBFA54FO0JSoqhA== util-deprecate@^1.0.1, util-deprecate@^1.0.2: @@ -6650,12 +6655,12 @@ util-deprecate@^1.0.1, util-deprecate@^1.0.2: utila@~0.4: version "0.4.0" - resolved "https://registry.npmjs.org/utila/-/utila-0.4.0.tgz#8a16a05d445657a3aea5eecc5b12a4fa5379772c" + resolved "https://registry.yarnpkg.com/utila/-/utila-0.4.0.tgz#8a16a05d445657a3aea5eecc5b12a4fa5379772c" integrity sha512-Z0DbgELS9/L/75wZbro8xAnT50pBVFQZ+hUEueGDU5FN51YSCYM+jdxsfCiHjwNP/4LCDD0i/graKpeBnOXKRA== utils-merge@1.0.1, utils-merge@^1.0.1: version "1.0.1" - resolved "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" + resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" integrity sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA== uuid@^8.3.2: @@ -6670,29 +6675,29 @@ uuid@^9.0.0: value-equal@^1.0.1: version "1.0.1" - resolved "https://registry.npmjs.org/value-equal/-/value-equal-1.0.1.tgz#1e0b794c734c5c0cade179c437d356d931a34d6c" + resolved "https://registry.yarnpkg.com/value-equal/-/value-equal-1.0.1.tgz#1e0b794c734c5c0cade179c437d356d931a34d6c" integrity sha512-NOJ6JZCAWr0zlxZt+xqCHNTEKOsrks2HQd4MqhP1qy4z1SkbEP467eNx6TgDKXMvUOb+OENfJCZwM+16n7fRfw== vary@~1.1.2: version "1.1.2" - resolved "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" + resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" integrity sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg== void-elements@3.1.0: version "3.1.0" - resolved "https://registry.npmjs.org/void-elements/-/void-elements-3.1.0.tgz#614f7fbf8d801f0bb5f0661f5b2f5785750e4f09" + resolved "https://registry.yarnpkg.com/void-elements/-/void-elements-3.1.0.tgz#614f7fbf8d801f0bb5f0661f5b2f5785750e4f09" integrity sha512-Dhxzh5HZuiHQhbvTW9AMetFfBHDMYpo23Uo9btPXgdYP+3T5S+p+jgNy7spra+veYhBP2dCSgxR/i2Y02h5/6w== warning@^4.0.2: version "4.0.3" - resolved "https://registry.npmjs.org/warning/-/warning-4.0.3.tgz#16e9e077eb8a86d6af7d64aa1e05fd85b4678ca3" + resolved "https://registry.yarnpkg.com/warning/-/warning-4.0.3.tgz#16e9e077eb8a86d6af7d64aa1e05fd85b4678ca3" integrity sha512-rpJyN222KWIvHJ/F53XSZv0Zl/accqHR8et1kpaMTD/fLCRxtV8iX8czMzY7sVZupTI3zcUTg8eycS2kNF9l6w== dependencies: loose-envify "^1.0.0" watchpack@^2.4.0: version "2.4.0" - resolved "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz#fa33032374962c78113f93c7f2fb4c54c9862a5d" + resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-2.4.0.tgz#fa33032374962c78113f93c7f2fb4c54c9862a5d" integrity sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg== dependencies: glob-to-regexp "^0.4.1" @@ -6700,7 +6705,7 @@ watchpack@^2.4.0: webidl-conversions@^3.0.0: version "3.0.1" - resolved "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871" + resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871" integrity sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ== webidl-conversions@^7.0.0: @@ -6710,7 +6715,7 @@ webidl-conversions@^7.0.0: webpack-bundle-analyzer@^4.8.0: version "4.9.0" - resolved "https://registry.npmjs.org/webpack-bundle-analyzer/-/webpack-bundle-analyzer-4.9.0.tgz#fc093c4ab174fd3dcbd1c30b763f56d10141209d" + resolved "https://registry.yarnpkg.com/webpack-bundle-analyzer/-/webpack-bundle-analyzer-4.9.0.tgz#fc093c4ab174fd3dcbd1c30b763f56d10141209d" integrity sha512-+bXGmO1LyiNx0i9enBu3H8mv42sj/BJWhZNFwjz92tVnBa9J3JMGo2an2IXlEleoDOPn/Hofl5hr/xCpObUDtw== dependencies: "@discoveryjs/json-ext" "0.5.7" @@ -6726,7 +6731,7 @@ webpack-bundle-analyzer@^4.8.0: webpack-cli@^4.10.0: version "4.10.0" - resolved "https://registry.npmjs.org/webpack-cli/-/webpack-cli-4.10.0.tgz#37c1d69c8d85214c5a65e589378f53aec64dab31" + resolved "https://registry.yarnpkg.com/webpack-cli/-/webpack-cli-4.10.0.tgz#37c1d69c8d85214c5a65e589378f53aec64dab31" integrity sha512-NLhDfH/h4O6UOy+0LSso42xvYypClINuMNBVVzX4vX98TmTaTUxwRbXdhucbFMd2qLaCTcLq/PdYrvi8onw90w== dependencies: "@discoveryjs/json-ext" "^0.5.0" @@ -6744,7 +6749,7 @@ webpack-cli@^4.10.0: webpack-dev-middleware@6.0.1: version "6.0.1" - resolved "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-6.0.1.tgz#fd585127ed44dab3f253daf0d98f4d58a5088cc2" + resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-6.0.1.tgz#fd585127ed44dab3f253daf0d98f4d58a5088cc2" integrity sha512-PZPZ6jFinmqVPJZbisfggDiC+2EeGZ1ZByyMP5sOFJcPPWSexalISz+cvm+j+oYPT7FIJyxT76esjnw9DhE5sw== dependencies: colorette "^2.0.10" @@ -6755,7 +6760,7 @@ webpack-dev-middleware@6.0.1: webpack-hot-middleware@^2.25.3: version "2.25.4" - resolved "https://registry.npmjs.org/webpack-hot-middleware/-/webpack-hot-middleware-2.25.4.tgz#d8bc9e9cb664fc3105c8e83d2b9ed436bee4e193" + resolved "https://registry.yarnpkg.com/webpack-hot-middleware/-/webpack-hot-middleware-2.25.4.tgz#d8bc9e9cb664fc3105c8e83d2b9ed436bee4e193" integrity sha512-IRmTspuHM06aZh98OhBJtqLpeWFM8FXJS5UYpKYxCJzyFoyWj1w6VGFfomZU7OPA55dMLrQK0pRT1eQ3PACr4w== dependencies: ansi-html-community "0.0.8" @@ -6764,7 +6769,7 @@ webpack-hot-middleware@^2.25.3: webpack-merge@^5.7.3: version "5.9.0" - resolved "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.9.0.tgz#dc160a1c4cf512ceca515cc231669e9ddb133826" + resolved "https://registry.yarnpkg.com/webpack-merge/-/webpack-merge-5.9.0.tgz#dc160a1c4cf512ceca515cc231669e9ddb133826" integrity sha512-6NbRQw4+Sy50vYNTw7EyOn41OZItPiXB8GNv3INSoe3PSFaHJEz3SHTrYVaRm2LilNGnFUzh0FAwqPEmU/CwDg== dependencies: clone-deep "^4.0.1" @@ -6772,7 +6777,7 @@ webpack-merge@^5.7.3: webpack-sources@^1.1.0: version "1.4.3" - resolved "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.4.3.tgz#eedd8ec0b928fbf1cbfe994e22d2d890f330a933" + resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-1.4.3.tgz#eedd8ec0b928fbf1cbfe994e22d2d890f330a933" integrity sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ== dependencies: source-list-map "^2.0.0" @@ -6780,12 +6785,12 @@ webpack-sources@^1.1.0: webpack-sources@^3.2.3: version "3.2.3" - resolved "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz#2d4daab8451fd4b240cc27055ff6a0c2ccea0cde" + resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-3.2.3.tgz#2d4daab8451fd4b240cc27055ff6a0c2ccea0cde" integrity sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w== webpack@^5.78.0: version "5.88.2" - resolved "https://registry.npmjs.org/webpack/-/webpack-5.88.2.tgz#f62b4b842f1c6ff580f3fcb2ed4f0b579f4c210e" + resolved "https://registry.yarnpkg.com/webpack/-/webpack-5.88.2.tgz#f62b4b842f1c6ff580f3fcb2ed4f0b579f4c210e" integrity sha512-JmcgNZ1iKj+aiR0OvTYtWQqJwq37Pf683dY9bVORwVbUrDhLhdn/PlO2sHsFHPkj7sHNQF3JwaAkp49V+Sq1tQ== dependencies: "@types/eslint-scope" "^3.7.3" @@ -6815,7 +6820,7 @@ webpack@^5.78.0: whatwg-fetch@^3.4.1: version "3.6.17" - resolved "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-3.6.17.tgz#009bbbfc122b227b74ba1ff31536b3a1a0e0e212" + resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-3.6.17.tgz#009bbbfc122b227b74ba1ff31536b3a1a0e0e212" integrity sha512-c4ghIvG6th0eudYwKZY5keb81wtFz9/WeAHAoy8+r18kcWlitUIrmGFQ2rWEl4UCKUilD3zCLHOIPheHx5ypRQ== whatwg-url@^11.0.0: @@ -6828,7 +6833,7 @@ whatwg-url@^11.0.0: whatwg-url@^5.0.0: version "5.0.0" - resolved "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz#966454e8765462e37644d3626f6742ce8b70965d" + resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-5.0.0.tgz#966454e8765462e37644d3626f6742ce8b70965d" integrity sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw== dependencies: tr46 "~0.0.3" @@ -6836,7 +6841,7 @@ whatwg-url@^5.0.0: which-boxed-primitive@^1.0.2: version "1.0.2" - resolved "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz#13757bc89b209b049fe5d86430e21cf40a89a8e6" + resolved "https://registry.yarnpkg.com/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz#13757bc89b209b049fe5d86430e21cf40a89a8e6" integrity sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg== dependencies: is-bigint "^1.0.1" @@ -6847,7 +6852,7 @@ which-boxed-primitive@^1.0.2: which-collection@^1.0.1: version "1.0.1" - resolved "https://registry.npmjs.org/which-collection/-/which-collection-1.0.1.tgz#70eab71ebbbd2aefaf32f917082fc62cdcb70906" + resolved "https://registry.yarnpkg.com/which-collection/-/which-collection-1.0.1.tgz#70eab71ebbbd2aefaf32f917082fc62cdcb70906" integrity sha512-W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A== dependencies: is-map "^2.0.1" @@ -6857,7 +6862,7 @@ which-collection@^1.0.1: which-typed-array@^1.1.11, which-typed-array@^1.1.9: version "1.1.11" - resolved "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.11.tgz#99d691f23c72aab6768680805a271b69761ed61a" + resolved "https://registry.yarnpkg.com/which-typed-array/-/which-typed-array-1.1.11.tgz#99d691f23c72aab6768680805a271b69761ed61a" integrity sha512-qe9UWWpkeG5yzZ0tNYxDmd7vo58HDBc39mZ0xWWpolAGADdFOzkfamWLDxkOWcvHQKVmdTyQdLD4NOfjLWTKew== dependencies: available-typed-arrays "^1.0.5" @@ -6868,14 +6873,14 @@ which-typed-array@^1.1.11, which-typed-array@^1.1.9: which@^2.0.1: version "2.0.2" - resolved "https://registry.npmjs.org/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" + resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== dependencies: isexe "^2.0.0" wildcard@^2.0.0: version "2.0.1" - resolved "https://registry.npmjs.org/wildcard/-/wildcard-2.0.1.tgz#5ab10d02487198954836b6349f74fff961e10f67" + resolved "https://registry.yarnpkg.com/wildcard/-/wildcard-2.0.1.tgz#5ab10d02487198954836b6349f74fff961e10f67" integrity sha512-CC1bOL87PIWSBhDcTrdeLo6eGT7mCFtrg0uIJtqJUFyK+eJnzl8A1niH56uu7KMa5XFrtiV+AQuHO3n7DsHnLQ== wrappy@1: @@ -6885,12 +6890,12 @@ wrappy@1: ws@^7.3.1: version "7.5.9" - resolved "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz#54fa7db29f4c7cec68b1ddd3a89de099942bb591" + resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.9.tgz#54fa7db29f4c7cec68b1ddd3a89de099942bb591" integrity sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q== xss@^1.0.6: version "1.0.14" - resolved "https://registry.npmjs.org/xss/-/xss-1.0.14.tgz#4f3efbde75ad0d82e9921cc3c95e6590dd336694" + resolved "https://registry.yarnpkg.com/xss/-/xss-1.0.14.tgz#4f3efbde75ad0d82e9921cc3c95e6590dd336694" integrity sha512-og7TEJhXvn1a7kzZGQ7ETjdQVS2UfZyTlsEdDOqvQF7GoxNfY+0YLCzBy1kPdsDDx4QuNAonQPddpsn6Xl/7sw== dependencies: commander "^2.20.3" @@ -6903,7 +6908,7 @@ yallist@^4.0.0: yaml@^1.10.0: version "1.10.2" - resolved "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz#2301c5ffbf12b467de8da2333a459e29e7920e4b" + resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.2.tgz#2301c5ffbf12b467de8da2333a459e29e7920e4b" integrity sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg== yauzl@^2.10.0: diff --git a/packages/db-postgres/package.json b/packages/db-postgres/package.json index 6524a8d37f..6fce48bfd5 100644 --- a/packages/db-postgres/package.json +++ b/packages/db-postgres/package.json @@ -10,8 +10,7 @@ "build": "tsc" }, "peerDependencies": { - "better-sqlite3": "^8.5.0", - "payload": "^1.12.0" + "better-sqlite3": "^8.5.0" }, "dependencies": { "@libsql/client": "^0.3.1", @@ -25,7 +24,7 @@ "@types/pg": "^8.10.2", "@types/to-snake-case": "^1.0.0", "better-sqlite3": "^8.5.0", - "payload": "^1.12.0", + "payload": "payloadcms/payload#build/chore/update-2.0", "typescript": "^4.9.4" } } diff --git a/packages/db-postgres/src/init.ts b/packages/db-postgres/src/init.ts index 876ac9413f..787ed3a442 100644 --- a/packages/db-postgres/src/init.ts +++ b/packages/db-postgres/src/init.ts @@ -9,7 +9,9 @@ export const init: Init = async function init(this: PostgresAdapter) { if (this.payload.config.localization) { this.enums._locales = pgEnum( '_locales', - this.payload.config.localization.locales as [string, ...string[]], + // TODO: types out of sync with core, monorepo please + // this.payload.config.localization.localeCodes, + (this.payload.config.localization.locales as unknown as {code: string}[]).map(({ code }) => code) as [string, ...string[]], ); } diff --git a/packages/db-postgres/src/queries/buildSearchParams.ts b/packages/db-postgres/src/queries/buildSearchParams.ts index 8c33d140ff..91fc68e229 100644 --- a/packages/db-postgres/src/queries/buildSearchParams.ts +++ b/packages/db-postgres/src/queries/buildSearchParams.ts @@ -3,7 +3,9 @@ import { inArray } from 'drizzle-orm'; import { a as SQL } from 'drizzle-orm/column.d-aa4e525d'; import { getLocalizedPaths } from 'payload/dist/database/getLocalizedPaths'; import { Field, fieldAffectsData } from 'payload/dist/fields/config/types'; -import { PathToQuery, validOperators } from 'payload/dist/database/queryValidation/types'; +import { PathToQuery } from 'payload/dist/database/queryValidation/types'; +import { validOperators } from 'payload/dist/types/constants'; +import { Operator } from 'payload/types'; import { operatorMap } from './operatorMap'; import { PostgresAdapter } from '../types'; @@ -177,7 +179,7 @@ export async function buildSearchParam({ return relationshipQuery; } - if (operator && validOperators.includes(operator)) { + if (operator && validOperators.includes(operator as Operator)) { const operatorKey = operatorMap[operator]; if (field.type === 'relationship' || field.type === 'upload') { diff --git a/packages/db-postgres/src/queries/parseParams.ts b/packages/db-postgres/src/queries/parseParams.ts index 91fd22e658..4e59f7845e 100644 --- a/packages/db-postgres/src/queries/parseParams.ts +++ b/packages/db-postgres/src/queries/parseParams.ts @@ -1,8 +1,8 @@ /* eslint-disable no-restricted-syntax */ /* eslint-disable no-await-in-loop */ -import { Where } from 'payload/types'; +import { Operator, Where } from 'payload/types'; import { Field } from 'payload/dist/fields/config/types'; -import { validOperators } from 'payload/dist/database/queryValidation/types'; +import { validOperators } from 'payload/dist/types/constants'; import { and, SQL } from 'drizzle-orm'; import { buildSearchParam } from './buildSearchParams'; import { buildAndOrConditions } from './buildAndOrConditions'; @@ -53,7 +53,7 @@ export async function parseParams({ const pathOperators = where[relationOrPath]; if (typeof pathOperators === 'object') { for (const operator of Object.keys(pathOperators)) { - if (validOperators.includes(operator)) { + if (validOperators.includes(operator as Operator)) { const searchParam = await buildSearchParam({ collectionSlug, globalSlug, diff --git a/packages/db-postgres/yarn.lock b/packages/db-postgres/yarn.lock index c6e76201e8..1cf3c4e873 100644 --- a/packages/db-postgres/yarn.lock +++ b/packages/db-postgres/yarn.lock @@ -2,424 +2,13 @@ # yarn lockfile v1 -"@aws-crypto/crc32@3.0.0": - version "3.0.0" - resolved "https://registry.yarnpkg.com/@aws-crypto/crc32/-/crc32-3.0.0.tgz#07300eca214409c33e3ff769cd5697b57fdd38fa" - integrity sha512-IzSgsrxUcsrejQbPVilIKy16kAT52EwB6zSaI+M3xxIhKh5+aldEyvI+z6erM7TCLB2BJsFrtHjp6/4/sr+3dA== - dependencies: - "@aws-crypto/util" "^3.0.0" - "@aws-sdk/types" "^3.222.0" - tslib "^1.11.1" - -"@aws-crypto/ie11-detection@^3.0.0": - version "3.0.0" - resolved "https://registry.yarnpkg.com/@aws-crypto/ie11-detection/-/ie11-detection-3.0.0.tgz#640ae66b4ec3395cee6a8e94ebcd9f80c24cd688" - integrity sha512-341lBBkiY1DfDNKai/wXM3aujNBkXR7tq1URPQDL9wi3AUbI80NR74uF1TXHMm7po1AcnFk8iu2S2IeU/+/A+Q== - dependencies: - tslib "^1.11.1" - -"@aws-crypto/sha256-browser@3.0.0": - version "3.0.0" - resolved "https://registry.yarnpkg.com/@aws-crypto/sha256-browser/-/sha256-browser-3.0.0.tgz#05f160138ab893f1c6ba5be57cfd108f05827766" - integrity sha512-8VLmW2B+gjFbU5uMeqtQM6Nj0/F1bro80xQXCW6CQBWgosFWXTx77aeOF5CAIAmbOK64SdMBJdNr6J41yP5mvQ== - dependencies: - "@aws-crypto/ie11-detection" "^3.0.0" - "@aws-crypto/sha256-js" "^3.0.0" - "@aws-crypto/supports-web-crypto" "^3.0.0" - "@aws-crypto/util" "^3.0.0" - "@aws-sdk/types" "^3.222.0" - "@aws-sdk/util-locate-window" "^3.0.0" - "@aws-sdk/util-utf8-browser" "^3.0.0" - tslib "^1.11.1" - -"@aws-crypto/sha256-js@3.0.0", "@aws-crypto/sha256-js@^3.0.0": - version "3.0.0" - resolved "https://registry.yarnpkg.com/@aws-crypto/sha256-js/-/sha256-js-3.0.0.tgz#f06b84d550d25521e60d2a0e2a90139341e007c2" - integrity sha512-PnNN7os0+yd1XvXAy23CFOmTbMaDxgxXtTKHybrJ39Y8kGzBATgBFibWJKH6BhytLI/Zyszs87xCOBNyBig6vQ== - dependencies: - "@aws-crypto/util" "^3.0.0" - "@aws-sdk/types" "^3.222.0" - tslib "^1.11.1" - -"@aws-crypto/supports-web-crypto@^3.0.0": - version "3.0.0" - resolved "https://registry.yarnpkg.com/@aws-crypto/supports-web-crypto/-/supports-web-crypto-3.0.0.tgz#5d1bf825afa8072af2717c3e455f35cda0103ec2" - integrity sha512-06hBdMwUAb2WFTuGG73LSC0wfPu93xWwo5vL2et9eymgmu3Id5vFAHBbajVWiGhPO37qcsdCap/FqXvJGJWPIg== - dependencies: - tslib "^1.11.1" - -"@aws-crypto/util@^3.0.0": - version "3.0.0" - resolved "https://registry.yarnpkg.com/@aws-crypto/util/-/util-3.0.0.tgz#1c7ca90c29293f0883468ad48117937f0fe5bfb0" - integrity sha512-2OJlpeJpCR48CC8r+uKVChzs9Iungj9wkZrl8Z041DWEWvyIHILYKCPNzJghKsivj+S3mLo6BVc7mBNzdxA46w== - dependencies: - "@aws-sdk/types" "^3.222.0" - "@aws-sdk/util-utf8-browser" "^3.0.0" - tslib "^1.11.1" - -"@aws-sdk/client-cognito-identity@3.385.0": - version "3.385.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/client-cognito-identity/-/client-cognito-identity-3.385.0.tgz#49d50030f8837b522af34902d7ea936937c56106" - integrity sha512-fRXZhxvBBeK/Jxb+sLPhyQmcduNSugSKJDz474A/wLK5UIuDOnKhDTjsa0OXMpY5DkqwdYLwDcGZtxUbEZ8DCQ== - dependencies: - "@aws-crypto/sha256-browser" "3.0.0" - "@aws-crypto/sha256-js" "3.0.0" - "@aws-sdk/client-sts" "3.385.0" - "@aws-sdk/credential-provider-node" "3.385.0" - "@aws-sdk/middleware-host-header" "3.379.1" - "@aws-sdk/middleware-logger" "3.378.0" - "@aws-sdk/middleware-recursion-detection" "3.378.0" - "@aws-sdk/middleware-signing" "3.379.1" - "@aws-sdk/middleware-user-agent" "3.382.0" - "@aws-sdk/types" "3.378.0" - "@aws-sdk/util-endpoints" "3.382.0" - "@aws-sdk/util-user-agent-browser" "3.378.0" - "@aws-sdk/util-user-agent-node" "3.378.0" - "@smithy/config-resolver" "^2.0.1" - "@smithy/fetch-http-handler" "^2.0.1" - "@smithy/hash-node" "^2.0.1" - "@smithy/invalid-dependency" "^2.0.1" - "@smithy/middleware-content-length" "^2.0.1" - "@smithy/middleware-endpoint" "^2.0.1" - "@smithy/middleware-retry" "^2.0.1" - "@smithy/middleware-serde" "^2.0.1" - "@smithy/middleware-stack" "^2.0.0" - "@smithy/node-config-provider" "^2.0.1" - "@smithy/node-http-handler" "^2.0.1" - "@smithy/protocol-http" "^2.0.1" - "@smithy/smithy-client" "^2.0.1" - "@smithy/types" "^2.0.2" - "@smithy/url-parser" "^2.0.1" - "@smithy/util-base64" "^2.0.0" - "@smithy/util-body-length-browser" "^2.0.0" - "@smithy/util-body-length-node" "^2.0.0" - "@smithy/util-defaults-mode-browser" "^2.0.1" - "@smithy/util-defaults-mode-node" "^2.0.1" - "@smithy/util-retry" "^2.0.0" - "@smithy/util-utf8" "^2.0.0" - tslib "^2.5.0" - -"@aws-sdk/client-sso@3.382.0": - version "3.382.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/client-sso/-/client-sso-3.382.0.tgz#811e7cf2bb31b5b388794c17d407e1cdb2af7a7a" - integrity sha512-ge11t4hJllOF8pBNF0p1X52lLqUsLGAoey24fvk3fyvvczeLpegGYh2kdLG0iwFTDgRxaUqK+kboH5Wy9ux/pw== - dependencies: - "@aws-crypto/sha256-browser" "3.0.0" - "@aws-crypto/sha256-js" "3.0.0" - "@aws-sdk/middleware-host-header" "3.379.1" - "@aws-sdk/middleware-logger" "3.378.0" - "@aws-sdk/middleware-recursion-detection" "3.378.0" - "@aws-sdk/middleware-user-agent" "3.382.0" - "@aws-sdk/types" "3.378.0" - "@aws-sdk/util-endpoints" "3.382.0" - "@aws-sdk/util-user-agent-browser" "3.378.0" - "@aws-sdk/util-user-agent-node" "3.378.0" - "@smithy/config-resolver" "^2.0.1" - "@smithy/fetch-http-handler" "^2.0.1" - "@smithy/hash-node" "^2.0.1" - "@smithy/invalid-dependency" "^2.0.1" - "@smithy/middleware-content-length" "^2.0.1" - "@smithy/middleware-endpoint" "^2.0.1" - "@smithy/middleware-retry" "^2.0.1" - "@smithy/middleware-serde" "^2.0.1" - "@smithy/middleware-stack" "^2.0.0" - "@smithy/node-config-provider" "^2.0.1" - "@smithy/node-http-handler" "^2.0.1" - "@smithy/protocol-http" "^2.0.1" - "@smithy/smithy-client" "^2.0.1" - "@smithy/types" "^2.0.2" - "@smithy/url-parser" "^2.0.1" - "@smithy/util-base64" "^2.0.0" - "@smithy/util-body-length-browser" "^2.0.0" - "@smithy/util-body-length-node" "^2.0.0" - "@smithy/util-defaults-mode-browser" "^2.0.1" - "@smithy/util-defaults-mode-node" "^2.0.1" - "@smithy/util-retry" "^2.0.0" - "@smithy/util-utf8" "^2.0.0" - tslib "^2.5.0" - -"@aws-sdk/client-sts@3.385.0": - version "3.385.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/client-sts/-/client-sts-3.385.0.tgz#4c5bcbfd94c3f54555201472283d3e0c4abd4385" - integrity sha512-VdSDwICW2cBttbdj1izu6VYflJbZZKu3/FSaJGuGu8SgTvRsa56g6E5xfbUfR/SCstuETObKLusSfQZ6yxUnzA== - dependencies: - "@aws-crypto/sha256-browser" "3.0.0" - "@aws-crypto/sha256-js" "3.0.0" - "@aws-sdk/credential-provider-node" "3.385.0" - "@aws-sdk/middleware-host-header" "3.379.1" - "@aws-sdk/middleware-logger" "3.378.0" - "@aws-sdk/middleware-recursion-detection" "3.378.0" - "@aws-sdk/middleware-sdk-sts" "3.379.1" - "@aws-sdk/middleware-signing" "3.379.1" - "@aws-sdk/middleware-user-agent" "3.382.0" - "@aws-sdk/types" "3.378.0" - "@aws-sdk/util-endpoints" "3.382.0" - "@aws-sdk/util-user-agent-browser" "3.378.0" - "@aws-sdk/util-user-agent-node" "3.378.0" - "@smithy/config-resolver" "^2.0.1" - "@smithy/fetch-http-handler" "^2.0.1" - "@smithy/hash-node" "^2.0.1" - "@smithy/invalid-dependency" "^2.0.1" - "@smithy/middleware-content-length" "^2.0.1" - "@smithy/middleware-endpoint" "^2.0.1" - "@smithy/middleware-retry" "^2.0.1" - "@smithy/middleware-serde" "^2.0.1" - "@smithy/middleware-stack" "^2.0.0" - "@smithy/node-config-provider" "^2.0.1" - "@smithy/node-http-handler" "^2.0.1" - "@smithy/protocol-http" "^2.0.1" - "@smithy/smithy-client" "^2.0.1" - "@smithy/types" "^2.0.2" - "@smithy/url-parser" "^2.0.1" - "@smithy/util-base64" "^2.0.0" - "@smithy/util-body-length-browser" "^2.0.0" - "@smithy/util-body-length-node" "^2.0.0" - "@smithy/util-defaults-mode-browser" "^2.0.1" - "@smithy/util-defaults-mode-node" "^2.0.1" - "@smithy/util-retry" "^2.0.0" - "@smithy/util-utf8" "^2.0.0" - fast-xml-parser "4.2.5" - tslib "^2.5.0" - -"@aws-sdk/credential-provider-cognito-identity@3.385.0": - version "3.385.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-cognito-identity/-/credential-provider-cognito-identity-3.385.0.tgz#219f21ae4fc62d0fc49f04574759234fbe9872c7" - integrity sha512-NeWJgI2XdfO0ZM25KsfNx9CDmLByY3ymVc0ae4Os+bd8pJsFeo1rX3NSkyw8XGryEbOlVJ3Jz5W5huhjo4LvqQ== - dependencies: - "@aws-sdk/client-cognito-identity" "3.385.0" - "@aws-sdk/types" "3.378.0" - "@smithy/property-provider" "^2.0.0" - "@smithy/types" "^2.0.2" - tslib "^2.5.0" - -"@aws-sdk/credential-provider-env@3.378.0": - version "3.378.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-env/-/credential-provider-env-3.378.0.tgz#a0f6291eff4e002c140599acede2433f58e4f4cb" - integrity sha512-B2OVdO9kBClDwGgWTBLAQwFV8qYTYGyVujg++1FZFSFMt8ORFdZ5fNpErvJtiSjYiOOQMzyBeSNhKyYNXCiJjQ== - dependencies: - "@aws-sdk/types" "3.378.0" - "@smithy/property-provider" "^2.0.0" - "@smithy/types" "^2.0.2" - tslib "^2.5.0" - -"@aws-sdk/credential-provider-ini@3.385.0": - version "3.385.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.385.0.tgz#6e3d9787f54cf9b810bb9a5a09e782427fa04874" - integrity sha512-WBIR5GdfUzCGzynQYX/TuCXw3KJCkHBk6bVAsO1YmfR68XKVAxWmJPKovlK/rR6LIuV+iwUMNludO+SkmG0efg== - dependencies: - "@aws-sdk/credential-provider-env" "3.378.0" - "@aws-sdk/credential-provider-process" "3.378.0" - "@aws-sdk/credential-provider-sso" "3.385.0" - "@aws-sdk/credential-provider-web-identity" "3.378.0" - "@aws-sdk/types" "3.378.0" - "@smithy/credential-provider-imds" "^2.0.0" - "@smithy/property-provider" "^2.0.0" - "@smithy/shared-ini-file-loader" "^2.0.0" - "@smithy/types" "^2.0.2" - tslib "^2.5.0" - -"@aws-sdk/credential-provider-node@3.385.0": - version "3.385.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-node/-/credential-provider-node-3.385.0.tgz#13b9e99f4d13583fcb79779a404497b987fe3bcc" - integrity sha512-Lk8uu6jm/8OkbLX4Qnss8o5bnt0yQa0Tb7Azbh5/5otju5kStVAD2E+zMGrMP++NriGyZV87crduh0J8l4JUTA== - dependencies: - "@aws-sdk/credential-provider-env" "3.378.0" - "@aws-sdk/credential-provider-ini" "3.385.0" - "@aws-sdk/credential-provider-process" "3.378.0" - "@aws-sdk/credential-provider-sso" "3.385.0" - "@aws-sdk/credential-provider-web-identity" "3.378.0" - "@aws-sdk/types" "3.378.0" - "@smithy/credential-provider-imds" "^2.0.0" - "@smithy/property-provider" "^2.0.0" - "@smithy/shared-ini-file-loader" "^2.0.0" - "@smithy/types" "^2.0.2" - tslib "^2.5.0" - -"@aws-sdk/credential-provider-process@3.378.0": - version "3.378.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-process/-/credential-provider-process-3.378.0.tgz#8fd594c9600f9e4b7121f3cf2cea13b4d37f09e5" - integrity sha512-KFTIy7u+wXj3eDua4rgS0tODzMnXtXhAm1RxzCW9FL5JLBBrd82ymCj1Dp72217Sw5Do6NjCnDTTNkCHZMA77w== - dependencies: - "@aws-sdk/types" "3.378.0" - "@smithy/property-provider" "^2.0.0" - "@smithy/shared-ini-file-loader" "^2.0.0" - "@smithy/types" "^2.0.2" - tslib "^2.5.0" - -"@aws-sdk/credential-provider-sso@3.385.0": - version "3.385.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.385.0.tgz#6cc484fd8d8edb500c81c0d789e5356317230bad" - integrity sha512-ETFnS+4ZKTAgT8boVpIpRuXA9wWGpNqOcI1RXtjsaIgQ9s8uNn2JPa8l71gZh861mzBC8Hadp1EpNu+43w4lkg== - dependencies: - "@aws-sdk/client-sso" "3.382.0" - "@aws-sdk/token-providers" "3.385.0" - "@aws-sdk/types" "3.378.0" - "@smithy/property-provider" "^2.0.0" - "@smithy/shared-ini-file-loader" "^2.0.0" - "@smithy/types" "^2.0.2" - tslib "^2.5.0" - -"@aws-sdk/credential-provider-web-identity@3.378.0": - version "3.378.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.378.0.tgz#019db9f17bd9fb2fd9a4171fe3b443c9e049a70a" - integrity sha512-GWjydOszhc4xDF8xuPtBvboglXQr0gwCW1oHAvmLcOT38+Hd6qnKywnMSeoXYRPgoKfF9TkWQgW1jxplzCG0UA== - dependencies: - "@aws-sdk/types" "3.378.0" - "@smithy/property-provider" "^2.0.0" - "@smithy/types" "^2.0.2" - tslib "^2.5.0" - -"@aws-sdk/credential-providers@^3.186.0": - version "3.385.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/credential-providers/-/credential-providers-3.385.0.tgz#7ffadc20355cf4e95368d13e50e3f3755073dcca" - integrity sha512-II4WAFMk061Ud6n1Pux+5T3FQe6gLIwmpF+QgMH97TxJZWFiKyhmJ1Z0VArjo1wwcEPMyIN21Ij91ayop8agwQ== - dependencies: - "@aws-sdk/client-cognito-identity" "3.385.0" - "@aws-sdk/client-sso" "3.382.0" - "@aws-sdk/client-sts" "3.385.0" - "@aws-sdk/credential-provider-cognito-identity" "3.385.0" - "@aws-sdk/credential-provider-env" "3.378.0" - "@aws-sdk/credential-provider-ini" "3.385.0" - "@aws-sdk/credential-provider-node" "3.385.0" - "@aws-sdk/credential-provider-process" "3.378.0" - "@aws-sdk/credential-provider-sso" "3.385.0" - "@aws-sdk/credential-provider-web-identity" "3.378.0" - "@aws-sdk/types" "3.378.0" - "@smithy/credential-provider-imds" "^2.0.0" - "@smithy/property-provider" "^2.0.0" - "@smithy/types" "^2.0.2" - tslib "^2.5.0" - -"@aws-sdk/middleware-host-header@3.379.1": - version "3.379.1" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-host-header/-/middleware-host-header-3.379.1.tgz#26d8af6100de4e03d201553360dfe16e10ae1aa5" - integrity sha512-LI4KpAFWNWVr2aH2vRVblr0Y8tvDz23lj8LOmbDmCrzd5M21nxuocI/8nEAQj55LiTIf9Zs+dHCdsyegnFXdrA== - dependencies: - "@aws-sdk/types" "3.378.0" - "@smithy/protocol-http" "^2.0.1" - "@smithy/types" "^2.0.2" - tslib "^2.5.0" - -"@aws-sdk/middleware-logger@3.378.0": - version "3.378.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-logger/-/middleware-logger-3.378.0.tgz#f27fe3a979f3ef49034a860aa2c38c8a16faa879" - integrity sha512-l1DyaDLm3KeBMNMuANI3scWh8Xvu248x+vw6Z7ExWOhGXFmQ1MW7YvASg/SdxWkhlF9HmkkTif1LdMB22x6QDA== - dependencies: - "@aws-sdk/types" "3.378.0" - "@smithy/types" "^2.0.2" - tslib "^2.5.0" - -"@aws-sdk/middleware-recursion-detection@3.378.0": - version "3.378.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.378.0.tgz#706f505f608a766d617fbdad20ca30a7abccb311" - integrity sha512-mUMfHAz0oGNIWiTZHTVJb+I515Hqs2zx1j36Le4MMiiaMkPW1SRUF1FIwGuc1wh6E8jB5q+XfEMriDjRi4TZRA== - dependencies: - "@aws-sdk/types" "3.378.0" - "@smithy/protocol-http" "^2.0.1" - "@smithy/types" "^2.0.2" - tslib "^2.5.0" - -"@aws-sdk/middleware-sdk-sts@3.379.1": - version "3.379.1" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-sdk-sts/-/middleware-sdk-sts-3.379.1.tgz#4238aa2fa4ad4b0f7e0f6bb08d7c131b7d6a2baa" - integrity sha512-SK3gSyT0XbLiY12+AjLFYL9YngxOXHnZF3Z33Cdd4a+AUYrVBV7JBEEGD1Nlwrcmko+3XgaKlmgUaR5s91MYvg== - dependencies: - "@aws-sdk/middleware-signing" "3.379.1" - "@aws-sdk/types" "3.378.0" - "@smithy/types" "^2.0.2" - tslib "^2.5.0" - -"@aws-sdk/middleware-signing@3.379.1": - version "3.379.1" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-signing/-/middleware-signing-3.379.1.tgz#ebb7912868076babec851f9f703862dae6583a89" - integrity sha512-kBk2ZUvR84EM4fICjr8K+Ykpf8SI1UzzPp2/UVYZ0X+4H/ZCjfSqohGRwHykMqeplne9qHSL7/rGJs1H3l3gPg== - dependencies: - "@aws-sdk/types" "3.378.0" - "@smithy/property-provider" "^2.0.0" - "@smithy/protocol-http" "^2.0.1" - "@smithy/signature-v4" "^2.0.0" - "@smithy/types" "^2.0.2" - "@smithy/util-middleware" "^2.0.0" - tslib "^2.5.0" - -"@aws-sdk/middleware-user-agent@3.382.0": - version "3.382.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.382.0.tgz#d30cf323e3dbc6e87909d382ec7c1245c7505016" - integrity sha512-LFRW1jmXOrOAd3911ktn6oaYmuurNnulbdRMOUdwz99GGdLVFipQhOi9idKswb8IOhPa4jEVQt25Kcv7ctvu0A== - dependencies: - "@aws-sdk/types" "3.378.0" - "@aws-sdk/util-endpoints" "3.382.0" - "@smithy/protocol-http" "^2.0.1" - "@smithy/types" "^2.0.2" - tslib "^2.5.0" - -"@aws-sdk/token-providers@3.385.0": - version "3.385.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/token-providers/-/token-providers-3.385.0.tgz#f92f9aeab36ad9105a2673248a9a69717c483181" - integrity sha512-2A2Y7/bU5EaxQwLwLy7ojs+Wy5VOBkIlGPH7ZcpPaoQ1Hscwn3Wvx/DZmOvbyYfZ1CbIFutoHJlVxh6KZldUDw== - dependencies: - "@aws-sdk/types" "3.378.0" - "@smithy/property-provider" "^2.0.0" - "@smithy/shared-ini-file-loader" "^2.0.0" - "@smithy/types" "^2.0.2" - tslib "^2.5.0" - -"@aws-sdk/types@3.378.0", "@aws-sdk/types@^3.222.0": - version "3.378.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/types/-/types-3.378.0.tgz#93a811ccdf15c81b1947f1cd67922c4690792189" - integrity sha512-qP0CvR/ItgktmN8YXpGQglzzR/6s0nrsQ4zIfx3HMwpsBTwuouYahcCtF1Vr82P4NFcoDA412EJahJ2pIqEd+w== - dependencies: - "@smithy/types" "^2.0.2" - tslib "^2.5.0" - -"@aws-sdk/util-endpoints@3.382.0": - version "3.382.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-endpoints/-/util-endpoints-3.382.0.tgz#534c491624c9eac517148ab4f833b9b7332f16bb" - integrity sha512-flajPyjmjNG67fXk7l4GoTB/7J11VBqtFZXuuAZKhKU07Ia3IQupsFqNf5lV8D44ZgjnKH0fTGnv3dUALjW7Wg== - dependencies: - "@aws-sdk/types" "3.378.0" - tslib "^2.5.0" - -"@aws-sdk/util-locate-window@^3.0.0": - version "3.310.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-locate-window/-/util-locate-window-3.310.0.tgz#b071baf050301adee89051032bd4139bba32cc40" - integrity sha512-qo2t/vBTnoXpjKxlsC2e1gBrRm80M3bId27r0BRB2VniSSe7bL1mmzM+/HFtujm0iAxtPM+aLEflLJlJeDPg0w== - dependencies: - tslib "^2.5.0" - -"@aws-sdk/util-user-agent-browser@3.378.0": - version "3.378.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.378.0.tgz#e756215da5bd1654a308b4e5383ebdcfc938fb0a" - integrity sha512-FSCpagzftK1W+m7Ar6lpX7/Gr9y5P56nhFYz8U4EYQ4PkufS6czWX9YW+/FA5OYV0vlQ/SvPqMnzoHIPUNhZrQ== - dependencies: - "@aws-sdk/types" "3.378.0" - "@smithy/types" "^2.0.2" - bowser "^2.11.0" - tslib "^2.5.0" - -"@aws-sdk/util-user-agent-node@3.378.0": - version "3.378.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.378.0.tgz#7af728f1823e860853998166a2bda0f0044251ef" - integrity sha512-IdwVJV0E96MkJeFte4dlWqvB+oiqCiZ5lOlheY3W9NynTuuX0GGYNC8Y9yIsV8Oava1+ujpJq0ww6qXdYxmO4A== - dependencies: - "@aws-sdk/types" "3.378.0" - "@smithy/node-config-provider" "^2.0.1" - "@smithy/types" "^2.0.2" - tslib "^2.5.0" - -"@aws-sdk/util-utf8-browser@^3.0.0": - version "3.259.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-utf8-browser/-/util-utf8-browser-3.259.0.tgz#3275a6f5eb334f96ca76635b961d3c50259fd9ff" - integrity sha512-UvFa/vR+e19XookZF8RzFZBrw2EUkQWxiBW0yYQAhvk3C+QVGl0H3ouca8LDBlBfQKXwmW3huo/59H8rwb1wJw== - dependencies: - tslib "^2.3.1" - "@babel/code-frame@^7.0.0": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.22.5.tgz#234d98e1551960604f1246e6475891a570ad5658" - integrity sha512-Xmwn266vad+6DAqEB2A6V/CcZVp62BbwVmcOJc2RPuwih1kw02TjQvWVWlcKGbBPd+8/0V5DEkOcizRGYsspYQ== + version "7.22.10" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.22.10.tgz#1c20e612b768fefa75f6e90d6ecb86329247f0a3" + integrity sha512-/KKIMG4UEL35WmI9OlvMhurwtytjvXoFcGNrOvyG9zIzA8YmPjVtIZUf7b05+TPO7G7/GEmLHDaoCgACHl9hhA== dependencies: - "@babel/highlight" "^7.22.5" + "@babel/highlight" "^7.22.10" + chalk "^2.4.2" "@babel/helper-module-imports@^7.16.7": version "7.22.5" @@ -438,26 +27,26 @@ resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.5.tgz#9544ef6a33999343c8740fa51350f30eeaaaf193" integrity sha512-aJXu+6lErq8ltp+JhkJUfk1MTGyuA4v7f3pA+BJ5HLfNC6nAQ0Cpi9uOquUj8Hehg0aUiHzWQbOVJGao6ztBAQ== -"@babel/highlight@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.22.5.tgz#aa6c05c5407a67ebce408162b7ede789b4d22031" - integrity sha512-BSKlD1hgnedS5XRnGOljZawtag7H1yPfQp0tdNJCHoH6AZ+Pcm9VvkrK59/Yy593Ypg0zMxH2BxD1VPYUQ7UIw== +"@babel/highlight@^7.22.10": + version "7.22.10" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.22.10.tgz#02a3f6d8c1cb4521b2fd0ab0da8f4739936137d7" + integrity sha512-78aUtVcT7MUscr0K5mIEnkwxPE0MaxkR5RxRwuHaQ+JuU5AmTPhY+do2mdzVTnIJJpyBglql2pehuBIWHug+WQ== dependencies: "@babel/helper-validator-identifier" "^7.22.5" - chalk "^2.0.0" + chalk "^2.4.2" js-tokens "^4.0.0" "@babel/runtime@^7.1.2", "@babel/runtime@^7.12.0", "@babel/runtime@^7.12.13", "@babel/runtime@^7.12.5", "@babel/runtime@^7.14.5", "@babel/runtime@^7.18.3", "@babel/runtime@^7.19.0", "@babel/runtime@^7.20.6", "@babel/runtime@^7.21.0", "@babel/runtime@^7.5.5", "@babel/runtime@^7.8.7": - version "7.22.6" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.22.6.tgz#57d64b9ae3cff1d67eb067ae117dac087f5bd438" - integrity sha512-wDb5pWm4WDdF6LFUde3Jl8WzPA+3ZbxYqkC6xAXuD3irdEHN1k0NfTRrJD8ZD378SJ61miMLCqIOXYhd8x+AJQ== + version "7.22.10" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.22.10.tgz#ae3e9631fd947cb7e3610d3e9d8fef5f76696682" + integrity sha512-21t/fkKLMZI4pqP2wlmsQAWnYW1PDyKyyUV4vCi+B25ydmdaYTKXPwCj0BzSUnZf4seIiYvSA3jcZ3gdsMFkLQ== dependencies: - regenerator-runtime "^0.13.11" + regenerator-runtime "^0.14.0" "@babel/types@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.22.5.tgz#cd93eeaab025880a3a47ec881f4b096a5b786fbe" - integrity sha512-zo3MIHGOkPOfoRXitsgHLjEXmlDaD/5KU1Uzuc9GNiZPhSqVxVRtxuPaSBZDsYZ9qV88AjtMtWW7ww98loJ9KA== + version "7.22.10" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.22.10.tgz#4a9e76446048f2c66982d1a989dd12b8a2d2dc03" + integrity sha512-obaoigiLrlDZ7TUQln/8m4mSqIW2QFeOrCQc9r+xsaHGNoplVNYlRVpsfE8Vj35GEm2ZH4ZhrNYogs/3fj85kg== dependencies: "@babel/helper-string-parser" "^7.22.5" "@babel/helper-validator-identifier" "^7.22.5" @@ -1152,19 +741,19 @@ dependencies: "@hapi/hoek" "^9.0.0" -"@jest/schemas@^29.6.0": - version "29.6.0" - resolved "https://registry.yarnpkg.com/@jest/schemas/-/schemas-29.6.0.tgz#0f4cb2c8e3dca80c135507ba5635a4fd755b0040" - integrity sha512-rxLjXyJBTL4LQeJW3aKo0M/+GkCOXsO+8i9Iu7eDb6KwtP65ayoDsitrdPBtujxQ88k4wI2FNYfa6TOGwSn6cQ== +"@jest/schemas@^29.6.3": + version "29.6.3" + resolved "https://registry.yarnpkg.com/@jest/schemas/-/schemas-29.6.3.tgz#430b5ce8a4e0044a7e3819663305a7b3091c8e03" + integrity sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA== dependencies: "@sinclair/typebox" "^0.27.8" -"@jest/types@^29.6.1": - version "29.6.1" - resolved "https://registry.yarnpkg.com/@jest/types/-/types-29.6.1.tgz#ae79080278acff0a6af5eb49d063385aaa897bf2" - integrity sha512-tPKQNMPuXgvdOn2/Lg9HNfUvjYVGolt04Hp03f5hAk878uwOLikN+JzeLY0HcVgKgFl9Hs3EIqpu3WX27XNhnw== +"@jest/types@^29.6.3": + version "29.6.3" + resolved "https://registry.yarnpkg.com/@jest/types/-/types-29.6.3.tgz#1131f8cf634e7e84c5e77bab12f052af585fba59" + integrity sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw== dependencies: - "@jest/schemas" "^29.6.0" + "@jest/schemas" "^29.6.3" "@types/istanbul-lib-coverage" "^2.0.0" "@types/istanbul-reports" "^3.0.0" "@types/node" "*" @@ -1180,10 +769,10 @@ "@jridgewell/sourcemap-codec" "^1.4.10" "@jridgewell/trace-mapping" "^0.3.9" -"@jridgewell/resolve-uri@3.1.0": - version "3.1.0" - resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz#2203b118c157721addfe69d47b70465463066d78" - integrity sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w== +"@jridgewell/resolve-uri@^3.1.0": + version "3.1.1" + resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz#c08679063f279615a3326583ba3a90d1d82cc721" + integrity sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA== "@jridgewell/set-array@^1.0.1": version "1.1.2" @@ -1198,23 +787,18 @@ "@jridgewell/gen-mapping" "^0.3.0" "@jridgewell/trace-mapping" "^0.3.9" -"@jridgewell/sourcemap-codec@1.4.14": - version "1.4.14" - resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz#add4c98d341472a289190b424efbdb096991bb24" - integrity sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw== - -"@jridgewell/sourcemap-codec@^1.4.10": +"@jridgewell/sourcemap-codec@^1.4.10", "@jridgewell/sourcemap-codec@^1.4.14": version "1.4.15" resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz#d7c6e6755c78567a951e04ab52ef0fd26de59f32" integrity sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg== "@jridgewell/trace-mapping@^0.3.17", "@jridgewell/trace-mapping@^0.3.18", "@jridgewell/trace-mapping@^0.3.9": - version "0.3.18" - resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.18.tgz#25783b2086daf6ff1dcb53c9249ae480e4dd4cd6" - integrity sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA== + version "0.3.19" + resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.19.tgz#f8a3249862f91be48d3127c3cfe992f79b4b8811" + integrity sha512-kf37QtfW+Hwx/buWGMPcR60iF9ziHa6r/CZJIHbmcm4+0qrXiVdxegAH0F6yddEVQ7zdkjcGCgCzUu+BcbhQxw== dependencies: - "@jridgewell/resolve-uri" "3.1.0" - "@jridgewell/sourcemap-codec" "1.4.14" + "@jridgewell/resolve-uri" "^3.1.0" + "@jridgewell/sourcemap-codec" "^1.4.14" "@jsdevtools/ono@^7.1.3": version "7.1.3" @@ -1306,411 +890,71 @@ resolved "https://registry.yarnpkg.com/@sinclair/typebox/-/typebox-0.27.8.tgz#6667fac16c436b5434a387a34dedb013198f6e6e" integrity sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA== -"@smithy/abort-controller@^2.0.1": - version "2.0.1" - resolved "https://registry.yarnpkg.com/@smithy/abort-controller/-/abort-controller-2.0.1.tgz#ddb5dd8c37016e8fcf772bd9c80e900860d74ae6" - integrity sha512-0s7XjIbsTwZyUW9OwXQ8J6x1UiA1TNCh60Vaw56nHahL7kUZsLhmTlWiaxfLkFtO2Utkj8YewcpHTYpxaTzO+w== - dependencies: - "@smithy/types" "^2.0.2" - tslib "^2.5.0" +"@swc/core-darwin-arm64@1.3.78": + version "1.3.78" + resolved "https://registry.yarnpkg.com/@swc/core-darwin-arm64/-/core-darwin-arm64-1.3.78.tgz#352c39630f97376b9de367eb1955965c6d2cef64" + integrity sha512-596KRua/d5Gx1buHKKchSyHuwoIL4S1BRD/wCvYNLNZ3xOzcuBBmXOjrDVigKi1ztNDeS07p30RO5UyYur0XAA== -"@smithy/config-resolver@^2.0.1": - version "2.0.1" - resolved "https://registry.yarnpkg.com/@smithy/config-resolver/-/config-resolver-2.0.1.tgz#ea7981f4716961889d1c7d16aaa956cf7dae2b79" - integrity sha512-l83Pm7hV+8CBQOCmBRopWDtF+CURUJol7NsuPYvimiDhkC2F8Ba9T1imSFE+pD1UIJ9jlsDPAnZfPJT5cjnuEw== - dependencies: - "@smithy/types" "^2.0.2" - "@smithy/util-config-provider" "^2.0.0" - "@smithy/util-middleware" "^2.0.0" - tslib "^2.5.0" +"@swc/core-darwin-x64@1.3.78": + version "1.3.78" + resolved "https://registry.yarnpkg.com/@swc/core-darwin-x64/-/core-darwin-x64-1.3.78.tgz#0279831884f3275eea67c34a87fb503b35a6f6c7" + integrity sha512-w0RsD1onQAj0vuLAoOVi48HgnW6D6oBEIZP17l0HYejCDBZ+FRZLjml7wgNAWMqHcd2qNRqgtZ+v7aLza2JtBQ== -"@smithy/credential-provider-imds@^2.0.0", "@smithy/credential-provider-imds@^2.0.1": - version "2.0.1" - resolved "https://registry.yarnpkg.com/@smithy/credential-provider-imds/-/credential-provider-imds-2.0.1.tgz#e034f3d8ee6ad178becb267886056233870661d0" - integrity sha512-8VxriuRINNEfVZjEFKBY75y9ZWAx73DZ5K/u+3LmB6r8WR2h3NaFxFKMlwlq0uzNdGhD1ouKBn9XWEGYHKiPLw== - dependencies: - "@smithy/node-config-provider" "^2.0.1" - "@smithy/property-provider" "^2.0.1" - "@smithy/types" "^2.0.2" - "@smithy/url-parser" "^2.0.1" - tslib "^2.5.0" +"@swc/core-linux-arm-gnueabihf@1.3.78": + version "1.3.78" + resolved "https://registry.yarnpkg.com/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.3.78.tgz#4268cac6945329f47216ae57e8ad17bf0e5cc294" + integrity sha512-v1CpRn+H6fha1WIqmdRvJM40pFdjUHrGfhf4Ygci72nlAU41l5XimN8Iwkm8FgIwf2wnv0lLzedSM4IHvpq/yA== -"@smithy/eventstream-codec@^2.0.1": - version "2.0.1" - resolved "https://registry.yarnpkg.com/@smithy/eventstream-codec/-/eventstream-codec-2.0.1.tgz#b84e224db346066e817ca9ca23260798a1aa071e" - integrity sha512-/IiNB7gQM2y2ZC/GAWOWDa8+iXfhr1g9Xe5979cQEOdCWDISvrAiv18cn3OtIQUhbYOR3gm7QtCpkq1to2takQ== - dependencies: - "@aws-crypto/crc32" "3.0.0" - "@smithy/types" "^2.0.2" - "@smithy/util-hex-encoding" "^2.0.0" - tslib "^2.5.0" +"@swc/core-linux-arm64-gnu@1.3.78": + version "1.3.78" + resolved "https://registry.yarnpkg.com/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.3.78.tgz#dcedcc8fb3addaca8660c8c712376850a04d5251" + integrity sha512-Sis17dz9joJRFVvR/gteOZSUNrrrioo81RQzani0Zr5ZZOfWLMTB9DA+0MVlfnVa2taYcsJHJZFoAv9JkLwbzg== -"@smithy/fetch-http-handler@^2.0.1": - version "2.0.1" - resolved "https://registry.yarnpkg.com/@smithy/fetch-http-handler/-/fetch-http-handler-2.0.1.tgz#5c8903897d3fd7ae3758ed7760d559d72d27e902" - integrity sha512-/SoU/ClazgcdOxgE4zA7RX8euiELwpsrKCSvulVQvu9zpmqJRyEJn8ZTWYFV17/eHOBdHTs9kqodhNhsNT+cUw== - dependencies: - "@smithy/protocol-http" "^2.0.1" - "@smithy/querystring-builder" "^2.0.1" - "@smithy/types" "^2.0.2" - "@smithy/util-base64" "^2.0.0" - tslib "^2.5.0" +"@swc/core-linux-arm64-musl@1.3.78": + version "1.3.78" + resolved "https://registry.yarnpkg.com/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.3.78.tgz#c09c29419879e819a1790994da614887714fa675" + integrity sha512-E5F8/qp+QupnfBnsP4vN1PKyCmAHYHDG1GMyPE/zLFOUYLgw+jK4C9rfyLBR0o2bWo1ay2WCIjusBZD9XHGOSA== -"@smithy/hash-node@^2.0.1": - version "2.0.1" - resolved "https://registry.yarnpkg.com/@smithy/hash-node/-/hash-node-2.0.1.tgz#458b74378cbfecf6dcd1ffc6b7ec7d29a4247efd" - integrity sha512-oTKYimQdF4psX54ZonpcIE+MXjMUWFxLCNosjPkJPFQ9whRX0K/PFX/+JZGRQh3zO9RlEOEUIbhy9NO+Wha6hw== - dependencies: - "@smithy/types" "^2.0.2" - "@smithy/util-buffer-from" "^2.0.0" - "@smithy/util-utf8" "^2.0.0" - tslib "^2.5.0" +"@swc/core-linux-x64-gnu@1.3.78": + version "1.3.78" + resolved "https://registry.yarnpkg.com/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.3.78.tgz#e295812b2c871a559fda2314c7063f965d7a3139" + integrity sha512-iDxa+RknnTQlyy+WfPor1FM6y44ERNI2E0xiUV6gV6uPwegCngi8LFC+E7IvP6+p+yXtAkesunAaiZ8nn0s+rw== -"@smithy/invalid-dependency@^2.0.1": - version "2.0.1" - resolved "https://registry.yarnpkg.com/@smithy/invalid-dependency/-/invalid-dependency-2.0.1.tgz#bb49b297e2141ec2ba6e131e0946af0ba59509e2" - integrity sha512-2q/Eb0AE662zwyMV+z+TL7deBwcHCgaZZGc0RItamBE8kak3MzCi/EZCNoFWoBfxgQ4jfR12wm8KKsSXhJzJtQ== - dependencies: - "@smithy/types" "^2.0.2" - tslib "^2.5.0" +"@swc/core-linux-x64-musl@1.3.78": + version "1.3.78" + resolved "https://registry.yarnpkg.com/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.3.78.tgz#e9742111dc62b857492559491cff277ce7f952f2" + integrity sha512-dWtIYUFL5sMTE2UKshkXTusHcK8+zAhhGzvqWq1wJS45pqTlrAbzpyqB780fle880x3A6DMitWmsAFARdNzpuQ== -"@smithy/is-array-buffer@^2.0.0": - version "2.0.0" - resolved "https://registry.yarnpkg.com/@smithy/is-array-buffer/-/is-array-buffer-2.0.0.tgz#8fa9b8040651e7ba0b2f6106e636a91354ff7d34" - integrity sha512-z3PjFjMyZNI98JFRJi/U0nGoLWMSJlDjAW4QUX2WNZLas5C0CmVV6LJ01JI0k90l7FvpmixjWxPFmENSClQ7ug== - dependencies: - tslib "^2.5.0" +"@swc/core-win32-arm64-msvc@1.3.78": + version "1.3.78" + resolved "https://registry.yarnpkg.com/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.3.78.tgz#59d76fbd58e0efcc003cf2a08984e697d285be8d" + integrity sha512-CXFaGEc2M9Su3UoUMC8AnzKb9g+GwPxXfakLWZsjwS448h6jcreExq3nwtBNdVGzQ26xqeVLMFfb1l/oK99Hwg== -"@smithy/middleware-content-length@^2.0.1": - version "2.0.1" - resolved "https://registry.yarnpkg.com/@smithy/middleware-content-length/-/middleware-content-length-2.0.1.tgz#86005cd4cb45eff5420730abe88e08d22c582d79" - integrity sha512-IZhRSk5GkVBcrKaqPXddBS2uKhaqwBgaSgbBb1OJyGsKe7SxRFbclWS0LqOR9fKUkDl+3lL8E2ffpo6EQg0igw== - dependencies: - "@smithy/protocol-http" "^2.0.1" - "@smithy/types" "^2.0.2" - tslib "^2.5.0" +"@swc/core-win32-ia32-msvc@1.3.78": + version "1.3.78" + resolved "https://registry.yarnpkg.com/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.3.78.tgz#5aac382bc8e1d3c74228f823033e19d04720cb28" + integrity sha512-FaH1jwWnJpWkdImpMoiZpMg9oy9UUyZwltzN7hFwjR48e3Li82cRFb+9PifIBHCUSBM+CrrsJXbHP213IMVAyw== -"@smithy/middleware-endpoint@^2.0.1": - version "2.0.1" - resolved "https://registry.yarnpkg.com/@smithy/middleware-endpoint/-/middleware-endpoint-2.0.1.tgz#4e992dd2c9dedbff776150045904c5455df4eaf7" - integrity sha512-uz/KI1MBd9WHrrkVFZO4L4Wyv24raf0oR4EsOYEeG5jPJO5U+C7MZGLcMxX8gWERDn1sycBDqmGv8fjUMLxT6w== - dependencies: - "@smithy/middleware-serde" "^2.0.1" - "@smithy/types" "^2.0.2" - "@smithy/url-parser" "^2.0.1" - "@smithy/util-middleware" "^2.0.0" - tslib "^2.5.0" +"@swc/core-win32-x64-msvc@1.3.78": + version "1.3.78" + resolved "https://registry.yarnpkg.com/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.3.78.tgz#3ee7a3bd46503bf81a88343d545d7e1aca8d57de" + integrity sha512-oYxa+tPdhlx1aH14AIoF6kvVjo49tEOW0drNqoEaVHufvgH0y43QU2Jum3b2+xXztmMRtzK2CSN3GPOAXDKKKg== -"@smithy/middleware-retry@^2.0.1": - version "2.0.1" - resolved "https://registry.yarnpkg.com/@smithy/middleware-retry/-/middleware-retry-2.0.1.tgz#d6c0aa9d117140a429951c8a1a92e05d9d0c218c" - integrity sha512-NKHF4i0gjSyjO6C0ZyjEpNqzGgIu7s8HOK6oT/1Jqws2Q1GynR1xV8XTUs1gKXeaNRzbzKQRewHHmfPwZjOtHA== - dependencies: - "@smithy/protocol-http" "^2.0.1" - "@smithy/service-error-classification" "^2.0.0" - "@smithy/types" "^2.0.2" - "@smithy/util-middleware" "^2.0.0" - "@smithy/util-retry" "^2.0.0" - tslib "^2.5.0" - uuid "^8.3.2" - -"@smithy/middleware-serde@^2.0.1": - version "2.0.1" - resolved "https://registry.yarnpkg.com/@smithy/middleware-serde/-/middleware-serde-2.0.1.tgz#daa38ebc5873f1f7d0430e7a75b7255b69c70016" - integrity sha512-uKxPaC6ItH9ZXdpdqNtf8sda7GcU4SPMp0tomq/5lUg9oiMa/Q7+kD35MUrpKaX3IVXVrwEtkjCU9dogZ/RAUA== - dependencies: - "@smithy/types" "^2.0.2" - tslib "^2.5.0" - -"@smithy/middleware-stack@^2.0.0": - version "2.0.0" - resolved "https://registry.yarnpkg.com/@smithy/middleware-stack/-/middleware-stack-2.0.0.tgz#cd9f442c2788b1ef0ea6b32236d80c76b3c342e9" - integrity sha512-31XC1xNF65nlbc16yuh3wwTudmqs6qy4EseQUGF8A/p2m/5wdd/cnXJqpniy/XvXVwkHPz/GwV36HqzHtIKATQ== - dependencies: - tslib "^2.5.0" - -"@smithy/node-config-provider@^2.0.1": - version "2.0.1" - resolved "https://registry.yarnpkg.com/@smithy/node-config-provider/-/node-config-provider-2.0.1.tgz#5a17c2564dc9689d523408c9a6dea9ca1330c47f" - integrity sha512-Zoel4CPkKRTQ2XxmozZUfqBYqjPKL53/SvTDhJHj+VBSiJy6MXRav1iDCyFPS92t40Uh+Yi+Km5Ch3hQ+c/zSA== - dependencies: - "@smithy/property-provider" "^2.0.1" - "@smithy/shared-ini-file-loader" "^2.0.1" - "@smithy/types" "^2.0.2" - tslib "^2.5.0" - -"@smithy/node-http-handler@^2.0.1": - version "2.0.1" - resolved "https://registry.yarnpkg.com/@smithy/node-http-handler/-/node-http-handler-2.0.1.tgz#7a1b23e30c5125ec31062a8b5edbc9fdd96ac651" - integrity sha512-Zv3fxk3p9tsmPT2CKMsbuwbbxnq2gzLDIulxv+yI6aE+02WPYorObbbe9gh7SW3weadMODL1vTfOoJ9yFypDzg== - dependencies: - "@smithy/abort-controller" "^2.0.1" - "@smithy/protocol-http" "^2.0.1" - "@smithy/querystring-builder" "^2.0.1" - "@smithy/types" "^2.0.2" - tslib "^2.5.0" - -"@smithy/property-provider@^2.0.0", "@smithy/property-provider@^2.0.1": - version "2.0.1" - resolved "https://registry.yarnpkg.com/@smithy/property-provider/-/property-provider-2.0.1.tgz#4c359f5063a9c664599f88be00e3f9b3e1021d4d" - integrity sha512-pmJRyY9SF6sutWIktIhe+bUdSQDxv/qZ4mYr3/u+u45riTPN7nmRxPo+e4sjWVoM0caKFjRSlj3tf5teRFy0Vg== - dependencies: - "@smithy/types" "^2.0.2" - tslib "^2.5.0" - -"@smithy/protocol-http@^2.0.1": - version "2.0.1" - resolved "https://registry.yarnpkg.com/@smithy/protocol-http/-/protocol-http-2.0.1.tgz#4257b9b8803f1e7638022a9cc6be8ea0abacac26" - integrity sha512-mrkMAp0wtaDEIkgRObWYxI1Kun1tm6Iu6rK+X4utb6Ah7Uc3Kk4VIWwK/rBHdYGReiLIrxFCB1rq4a2gyZnSgg== - dependencies: - "@smithy/types" "^2.0.2" - tslib "^2.5.0" - -"@smithy/querystring-builder@^2.0.1": - version "2.0.1" - resolved "https://registry.yarnpkg.com/@smithy/querystring-builder/-/querystring-builder-2.0.1.tgz#c8326d27e3796cac8b46f580bb067e83f50b4375" - integrity sha512-bp+93WFzx1FojVEIeFPtG0A1pKsFdCUcZvVdZdRlmNooOUrz9Mm9bneRd8hDwAQ37pxiZkCOxopSXXRQN10mYw== - dependencies: - "@smithy/types" "^2.0.2" - "@smithy/util-uri-escape" "^2.0.0" - tslib "^2.5.0" - -"@smithy/querystring-parser@^2.0.1": - version "2.0.1" - resolved "https://registry.yarnpkg.com/@smithy/querystring-parser/-/querystring-parser-2.0.1.tgz#915872aa7983218da3e87144a5b729dd6ae6f50f" - integrity sha512-h+e7k1z+IvI2sSbUBG9Aq46JsgLl4UqIUl6aigAlRBj+P6ocNXpM6Yn1vMBw5ijtXeZbYpd1YvCxwDgdw3jhmg== - dependencies: - "@smithy/types" "^2.0.2" - tslib "^2.5.0" - -"@smithy/service-error-classification@^2.0.0": - version "2.0.0" - resolved "https://registry.yarnpkg.com/@smithy/service-error-classification/-/service-error-classification-2.0.0.tgz#bbce07c9c529d9333d40db881fd4a1795dd84892" - integrity sha512-2z5Nafy1O0cTf69wKyNjGW/sNVMiqDnb4jgwfMG8ye8KnFJ5qmJpDccwIbJNhXIfbsxTg9SEec2oe1cexhMJvw== - -"@smithy/shared-ini-file-loader@^2.0.0", "@smithy/shared-ini-file-loader@^2.0.1": - version "2.0.1" - resolved "https://registry.yarnpkg.com/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-2.0.1.tgz#47278552cf9462e731077da2f66a32d21b775e15" - integrity sha512-a463YiZrPGvM+F336rIF8pLfQsHAdCRAn/BiI/EWzg5xLoxbC7GSxIgliDDXrOu0z8gT3nhVsif85eU6jyct3A== - dependencies: - "@smithy/types" "^2.0.2" - tslib "^2.5.0" - -"@smithy/signature-v4@^2.0.0": - version "2.0.1" - resolved "https://registry.yarnpkg.com/@smithy/signature-v4/-/signature-v4-2.0.1.tgz#1f9e72930def3c25a3918ee7b562044fecbdaef4" - integrity sha512-jztv5Mirca42ilxmMDjzLdXcoAmRhZskGafGL49sRo5u7swEZcToEFrq6vtX5YMbSyTVrE9Teog5EFexY5Ff2Q== - dependencies: - "@smithy/eventstream-codec" "^2.0.1" - "@smithy/is-array-buffer" "^2.0.0" - "@smithy/types" "^2.0.2" - "@smithy/util-hex-encoding" "^2.0.0" - "@smithy/util-middleware" "^2.0.0" - "@smithy/util-uri-escape" "^2.0.0" - "@smithy/util-utf8" "^2.0.0" - tslib "^2.5.0" - -"@smithy/smithy-client@^2.0.1": - version "2.0.1" - resolved "https://registry.yarnpkg.com/@smithy/smithy-client/-/smithy-client-2.0.1.tgz#34572ada6eccb62e6f0b38b6a9dc261e2cdf4d24" - integrity sha512-LHC5m6tYpEu1iNbONfvMbwtErboyTZJfEIPoD78Ei5MVr36vZQCaCla5mvo36+q/a2NAk2//fA5Rx3I1Kf7+lQ== - dependencies: - "@smithy/middleware-stack" "^2.0.0" - "@smithy/types" "^2.0.2" - "@smithy/util-stream" "^2.0.1" - tslib "^2.5.0" - -"@smithy/types@^2.0.2": - version "2.0.2" - resolved "https://registry.yarnpkg.com/@smithy/types/-/types-2.0.2.tgz#49d42724c909e845bfd80a2e195740614ce497f3" - integrity sha512-wcymEjIXQ9+NEfE5Yt5TInAqe1o4n+Nh+rh00AwoazppmUt8tdo6URhc5gkDcOYrcvlDVAZE7uG69nDpEGUKxw== - dependencies: - tslib "^2.5.0" - -"@smithy/url-parser@^2.0.1": - version "2.0.1" - resolved "https://registry.yarnpkg.com/@smithy/url-parser/-/url-parser-2.0.1.tgz#c0712fd7bde198644ffd57b202aa5d54bd437520" - integrity sha512-NpHVOAwddo+OyyIoujDL9zGL96piHWrTNXqltWmBvlUoWgt1HPyBuKs6oHjioyFnNZXUqveTOkEEq0U5w6Uv8A== - dependencies: - "@smithy/querystring-parser" "^2.0.1" - "@smithy/types" "^2.0.2" - tslib "^2.5.0" - -"@smithy/util-base64@^2.0.0": - version "2.0.0" - resolved "https://registry.yarnpkg.com/@smithy/util-base64/-/util-base64-2.0.0.tgz#1beeabfb155471d1d41c8d0603be1351f883c444" - integrity sha512-Zb1E4xx+m5Lud8bbeYi5FkcMJMnn+1WUnJF3qD7rAdXpaL7UjkFQLdmW5fHadoKbdHpwH9vSR8EyTJFHJs++tA== - dependencies: - "@smithy/util-buffer-from" "^2.0.0" - tslib "^2.5.0" - -"@smithy/util-body-length-browser@^2.0.0": - version "2.0.0" - resolved "https://registry.yarnpkg.com/@smithy/util-body-length-browser/-/util-body-length-browser-2.0.0.tgz#5447853003b4c73da3bc5f3c5e82c21d592d1650" - integrity sha512-JdDuS4ircJt+FDnaQj88TzZY3+njZ6O+D3uakS32f2VNnDo3vyEuNdBOh/oFd8Df1zSZOuH1HEChk2AOYDezZg== - dependencies: - tslib "^2.5.0" - -"@smithy/util-body-length-node@^2.0.0": - version "2.0.0" - resolved "https://registry.yarnpkg.com/@smithy/util-body-length-node/-/util-body-length-node-2.0.0.tgz#4870b71cb9ded0123d984898ce952ce56896bc53" - integrity sha512-ZV7Z/WHTMxHJe/xL/56qZwSUcl63/5aaPAGjkfynJm4poILjdD4GmFI+V+YWabh2WJIjwTKZ5PNsuvPQKt93Mg== - dependencies: - tslib "^2.5.0" - -"@smithy/util-buffer-from@^2.0.0": - version "2.0.0" - resolved "https://registry.yarnpkg.com/@smithy/util-buffer-from/-/util-buffer-from-2.0.0.tgz#7eb75d72288b6b3001bc5f75b48b711513091deb" - integrity sha512-/YNnLoHsR+4W4Vf2wL5lGv0ksg8Bmk3GEGxn2vEQt52AQaPSCuaO5PM5VM7lP1K9qHRKHwrPGktqVoAHKWHxzw== - dependencies: - "@smithy/is-array-buffer" "^2.0.0" - tslib "^2.5.0" - -"@smithy/util-config-provider@^2.0.0": - version "2.0.0" - resolved "https://registry.yarnpkg.com/@smithy/util-config-provider/-/util-config-provider-2.0.0.tgz#4dd6a793605559d94267312fd06d0f58784b4c38" - integrity sha512-xCQ6UapcIWKxXHEU4Mcs2s7LcFQRiU3XEluM2WcCjjBtQkUN71Tb+ydGmJFPxMUrW/GWMgQEEGipLym4XG0jZg== - dependencies: - tslib "^2.5.0" - -"@smithy/util-defaults-mode-browser@^2.0.1": - version "2.0.1" - resolved "https://registry.yarnpkg.com/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-2.0.1.tgz#650805fc2f308dee8efcf812392a6578ebcc652d" - integrity sha512-w72Qwsb+IaEYEFtYICn0Do42eFju78hTaBzzJfT107lFOPdbjWjKnFutV+6GL/nZd5HWXY7ccAKka++C3NrjHw== - dependencies: - "@smithy/property-provider" "^2.0.1" - "@smithy/types" "^2.0.2" - bowser "^2.11.0" - tslib "^2.5.0" - -"@smithy/util-defaults-mode-node@^2.0.1": - version "2.0.1" - resolved "https://registry.yarnpkg.com/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-2.0.1.tgz#3a8fc607735481878c7c4c739da358bd0bb9bcae" - integrity sha512-dNF45caelEBambo0SgkzQ0v76m4YM+aFKZNTtSafy7P5dVF8TbjZuR2UX1A5gJABD9XK6lzN+v/9Yfzj/EDgGg== - dependencies: - "@smithy/config-resolver" "^2.0.1" - "@smithy/credential-provider-imds" "^2.0.1" - "@smithy/node-config-provider" "^2.0.1" - "@smithy/property-provider" "^2.0.1" - "@smithy/types" "^2.0.2" - tslib "^2.5.0" - -"@smithy/util-hex-encoding@^2.0.0": - version "2.0.0" - resolved "https://registry.yarnpkg.com/@smithy/util-hex-encoding/-/util-hex-encoding-2.0.0.tgz#0aa3515acd2b005c6d55675e377080a7c513b59e" - integrity sha512-c5xY+NUnFqG6d7HFh1IFfrm3mGl29lC+vF+geHv4ToiuJCBmIfzx6IeHLg+OgRdPFKDXIw6pvi+p3CsscaMcMA== - dependencies: - tslib "^2.5.0" - -"@smithy/util-middleware@^2.0.0": - version "2.0.0" - resolved "https://registry.yarnpkg.com/@smithy/util-middleware/-/util-middleware-2.0.0.tgz#706681d4a1686544a2275f68266304233f372c99" - integrity sha512-eCWX4ECuDHn1wuyyDdGdUWnT4OGyIzV0LN1xRttBFMPI9Ff/4heSHVxneyiMtOB//zpXWCha1/SWHJOZstG7kA== - dependencies: - tslib "^2.5.0" - -"@smithy/util-retry@^2.0.0": - version "2.0.0" - resolved "https://registry.yarnpkg.com/@smithy/util-retry/-/util-retry-2.0.0.tgz#7ac5d5f12383a9d9b2a43f9ff25f3866c8727c24" - integrity sha512-/dvJ8afrElasuiiIttRJeoS2sy8YXpksQwiM/TcepqdRVp7u4ejd9C4IQURHNjlfPUT7Y6lCDSa2zQJbdHhVTg== - dependencies: - "@smithy/service-error-classification" "^2.0.0" - tslib "^2.5.0" - -"@smithy/util-stream@^2.0.1": - version "2.0.1" - resolved "https://registry.yarnpkg.com/@smithy/util-stream/-/util-stream-2.0.1.tgz#cbe2af5704a6050b9075835a8e7251185901864b" - integrity sha512-2a0IOtwIKC46EEo7E7cxDN8u2jwOiYYJqcFKA6rd5rdXqKakHT2Gc+AqHWngr0IEHUfW92zX12wRQKwyoqZf2Q== - dependencies: - "@smithy/fetch-http-handler" "^2.0.1" - "@smithy/node-http-handler" "^2.0.1" - "@smithy/types" "^2.0.2" - "@smithy/util-base64" "^2.0.0" - "@smithy/util-buffer-from" "^2.0.0" - "@smithy/util-hex-encoding" "^2.0.0" - "@smithy/util-utf8" "^2.0.0" - tslib "^2.5.0" - -"@smithy/util-uri-escape@^2.0.0": - version "2.0.0" - resolved "https://registry.yarnpkg.com/@smithy/util-uri-escape/-/util-uri-escape-2.0.0.tgz#19955b1a0f517a87ae77ac729e0e411963dfda95" - integrity sha512-ebkxsqinSdEooQduuk9CbKcI+wheijxEb3utGXkCoYQkJnwTnLbH1JXGimJtUkQwNQbsbuYwG2+aFVyZf5TLaw== - dependencies: - tslib "^2.5.0" - -"@smithy/util-utf8@^2.0.0": - version "2.0.0" - resolved "https://registry.yarnpkg.com/@smithy/util-utf8/-/util-utf8-2.0.0.tgz#b4da87566ea7757435e153799df9da717262ad42" - integrity sha512-rctU1VkziY84n5OXe3bPNpKR001ZCME2JCaBBFgtiM2hfKbHFudc/BkMuPab8hRbLd0j3vbnBTTZ1igBf0wgiQ== - dependencies: - "@smithy/util-buffer-from" "^2.0.0" - tslib "^2.5.0" - -"@swc/core-darwin-arm64@1.3.74": - version "1.3.74" - resolved "https://registry.yarnpkg.com/@swc/core-darwin-arm64/-/core-darwin-arm64-1.3.74.tgz#5ec6f504fb8cd74fd5133080f6cc670327a867cd" - integrity sha512-2rMV4QxM583jXcREfo0MhV3Oj5pgRSfSh/kVrB1twL2rQxOrbzkAPT/8flmygdVoL4f2F7o1EY5lKlYxEBiIKQ== - -"@swc/core-darwin-x64@1.3.74": - version "1.3.74" - resolved "https://registry.yarnpkg.com/@swc/core-darwin-x64/-/core-darwin-x64-1.3.74.tgz#5da7bdc4ad0fb3b4375d9c1039672ae8f61efaeb" - integrity sha512-KKEGE1wXneYXe15fWDRM8/oekd/Q4yAuccA0vWY/7i6nOSPqWYcSDR0nRtR030ltDxWt0rk/eCTmNkrOWrKs3A== - -"@swc/core-linux-arm-gnueabihf@1.3.74": - version "1.3.74" - resolved "https://registry.yarnpkg.com/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.3.74.tgz#52d818692aaaf9138e1175956271cae8107c1096" - integrity sha512-HehH5DR6r/5fIVu7tu8ZqgrHkhSCQNewf1ztFQJgcmaQWn+H4AJERBjwkjosqh4TvUJucZv8vyRTvrFeBXaCSA== - -"@swc/core-linux-arm64-gnu@1.3.74": - version "1.3.74" - resolved "https://registry.yarnpkg.com/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.3.74.tgz#b230ba8623edb3c4b9ceffaf9aced8bf7a9fc829" - integrity sha512-+xkbCRz/wczgdknoV4NwYxbRI2dD7x/qkIFcVM2buzLCq8oWLweuV8+aL4pRqu0qDh7ZSb1jcaVTUIsySCJznA== - -"@swc/core-linux-arm64-musl@1.3.74": - version "1.3.74" - resolved "https://registry.yarnpkg.com/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.3.74.tgz#05ff0f3046aba1dd9d2d8793c10cd4a21a46fd7f" - integrity sha512-maKFZSCD3tQznzPV7T3V+TtiWZFEFM8YrnSS5fQNNb+K9J65sL+170uTb3M7H4cFkG+9Sm5k5yCrCIutlvV48g== - -"@swc/core-linux-x64-gnu@1.3.74": - version "1.3.74" - resolved "https://registry.yarnpkg.com/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.3.74.tgz#a98d9a984d47404aa2de478dd3cd33dbd195bba2" - integrity sha512-LEXpcShF6DLTWJSiBhMSYZkLQ27UvaQ24fCFhoIV/R3dhYaUpHmIyLPPBNC82T03lB3ONUFVwrRw6fxDJ/f00A== - -"@swc/core-linux-x64-musl@1.3.74": - version "1.3.74" - resolved "https://registry.yarnpkg.com/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.3.74.tgz#95e04431eba994b4fae23c578ad1ba73fb72c21d" - integrity sha512-sxsFctbFMZEFmDE7CmYljG0dMumH8XBTwwtGr8s6z0fYAzXBGNq2AFPcmEh2np9rPWkt7pE1m0ByESD+dMkbxQ== - -"@swc/core-win32-arm64-msvc@1.3.74": - version "1.3.74" - resolved "https://registry.yarnpkg.com/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.3.74.tgz#62cb708094a8902a307fba6eea08682dbccd472d" - integrity sha512-F7hY9/BjFCozA4YPFYFH5FGCyWwa44vIXHqG66F5cDwXDGFn8ZtBsYIsiPfUYcx0AeAo1ojnVWKPxokZhYNYqA== - -"@swc/core-win32-ia32-msvc@1.3.74": - version "1.3.74" - resolved "https://registry.yarnpkg.com/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.3.74.tgz#fe5a2d8bbddb609e554e0d8d678093973096330c" - integrity sha512-qBAsiD1AlIdqED6wy3UNRHyAys9pWMUidX0LJ6mj24r/vfrzzTBAUrLJe5m7bzE+F1Rgi001avYJeEW1DLEJ+Q== - -"@swc/core-win32-x64-msvc@1.3.74": - version "1.3.74" - resolved "https://registry.yarnpkg.com/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.3.74.tgz#4fd459c7264d4c97d1b2965ed6aa86b1725ce38b" - integrity sha512-S3YAvvLprTnPRwQuy9Dkwubb5SRLpVK3JJsqYDbGfgj8PGQyKHZcVJ5X3nfFsoWLy3j9B/3Os2nawprRSzeC5A== - -"@swc/core@^1.3.26": - version "1.3.74" - resolved "https://registry.yarnpkg.com/@swc/core/-/core-1.3.74.tgz#b1d1a3c46ca32b7f10d970c8a209d2913c9de251" - integrity sha512-P+MIExOTdWlfq8Heb1/NhBAke6UTckd4cRDuJoFcFMGBRvgoCMNWhnfP3FRRXPLI7GGg27dRZS+xHiqYyQmSrA== +"@swc/core@^1.3.76": + version "1.3.78" + resolved "https://registry.yarnpkg.com/@swc/core/-/core-1.3.78.tgz#2c4bd7c397b85c021271043c76433e553446fe95" + integrity sha512-y6DQP571v7fbUUY7nz5G4lNIRGofuO48K5pGhD9VnuOCTuptfooCdi8wnigIrIhM/M4zQ53m/YCMDCbOtDgEww== optionalDependencies: - "@swc/core-darwin-arm64" "1.3.74" - "@swc/core-darwin-x64" "1.3.74" - "@swc/core-linux-arm-gnueabihf" "1.3.74" - "@swc/core-linux-arm64-gnu" "1.3.74" - "@swc/core-linux-arm64-musl" "1.3.74" - "@swc/core-linux-x64-gnu" "1.3.74" - "@swc/core-linux-x64-musl" "1.3.74" - "@swc/core-win32-arm64-msvc" "1.3.74" - "@swc/core-win32-ia32-msvc" "1.3.74" - "@swc/core-win32-x64-msvc" "1.3.74" + "@swc/core-darwin-arm64" "1.3.78" + "@swc/core-darwin-x64" "1.3.78" + "@swc/core-linux-arm-gnueabihf" "1.3.78" + "@swc/core-linux-arm64-gnu" "1.3.78" + "@swc/core-linux-arm64-musl" "1.3.78" + "@swc/core-linux-x64-gnu" "1.3.78" + "@swc/core-linux-x64-musl" "1.3.78" + "@swc/core-win32-arm64-msvc" "1.3.78" + "@swc/core-win32-ia32-msvc" "1.3.78" + "@swc/core-win32-x64-msvc" "1.3.78" "@swc/register@^0.1.10": version "0.1.10" @@ -1795,9 +1039,9 @@ integrity sha512-Hr5Jfhc9eYOQNPYO5WLDq/n4jqijdHNlDXjuAQkkt+mWdQR+XJToOHrsD4cPaMXpn6KO7y2+wM8AZEs8VpBLVA== "@types/lodash@^4.14.149", "@types/lodash@^4.14.182": - version "4.14.196" - resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.14.196.tgz#a7c3d6fc52d8d71328b764e28e080b4169ec7a95" - integrity sha512-22y3o88f4a94mKljsZcanlNWPzO0uBsBdzLAngf2tp533LzZcQzb6+eZPJ+vCTt+bqF2XnvT9gejTLsAcJAJyQ== + version "4.14.197" + resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.14.197.tgz#e95c5ddcc814ec3e84c891910a01e0c8a378c54b" + integrity sha512-BMVOiWs0uNxHVlHBgzTIqJYmj+PgCo4euloGF+5m4okL3rEYzM2EEv78mw8zWSMM57dM7kVIgJ2QDvwHSoCI5g== "@types/minimatch@*": version "5.1.2" @@ -1849,9 +1093,9 @@ "@types/react" "*" "@types/react@*": - version "18.2.18" - resolved "https://registry.yarnpkg.com/@types/react/-/react-18.2.18.tgz#c8b233919eef1bdc294f6f34b37f9727ad677516" - integrity sha512-da4NTSeBv/P34xoZPhtcLkmZuJ+oYaCxHmyHzwaDQo9RQPBeXV+06gEk2FpqEcsX9XrnNLvRpVh6bdavDSjtiQ== + version "18.2.20" + resolved "https://registry.yarnpkg.com/@types/react/-/react-18.2.20.tgz#1605557a83df5c8a2cc4eeb743b3dfc0eb6aaeb2" + integrity sha512-WKNtmsLWJM/3D5mG4U84cysVY31ivmyw85dE84fOCk5Hx78wezB/XEjVPWl2JTZ5FkEeaTJf+VgUAUn3PE7Isw== dependencies: "@types/prop-types" "*" "@types/scheduler" "*" @@ -1874,19 +1118,6 @@ resolved "https://registry.npmjs.org/@types/to-snake-case/-/to-snake-case-1.0.0.tgz#1b32f1b5ad8ea907b6c847346cdd3782e486654e" integrity sha512-9YtLP+wuIL2EwOqyUjwTzWK6CGVnsP13vJ3i0U8S7O+SLAxrsi1jwC2TkHkdqVqfGLQWnk5H+Z+sSPT7SJeGYg== -"@types/webidl-conversions@*": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@types/webidl-conversions/-/webidl-conversions-7.0.0.tgz#2b8e60e33906459219aa587e9d1a612ae994cfe7" - integrity sha512-xTE1E+YF4aWPJJeUzaZI5DRntlkY3+BCVJi0axFptnjGmAoWxkyREIh/XMrfxVLejwQxMCfDXdICo0VLxThrog== - -"@types/whatwg-url@^8.2.1": - version "8.2.2" - resolved "https://registry.yarnpkg.com/@types/whatwg-url/-/whatwg-url-8.2.2.tgz#749d5b3873e845897ada99be4448041d4cc39e63" - integrity sha512-FtQu10RWgn3D9U4aazdwIE2yzphmTJREDqNdODHrbrZmmMqI0vMheC/6NE/J1Yveaj8H+ela+YwWTjq5PGmuhA== - dependencies: - "@types/node" "*" - "@types/webidl-conversions" "*" - "@types/ws@^8.5.4": version "8.5.5" resolved "https://registry.yarnpkg.com/@types/ws/-/ws-8.5.5.tgz#af587964aa06682702ee6dcbc7be41a80e4b28eb" @@ -2194,12 +1425,12 @@ atomically@^1.7.0: integrity sha512-Xcz9l0z7y9yQ9rdDaxlmaI4uJHf/T8g9hOEzJcsEqX2SjCj4J20uK7+ldkDHMbpJDK76wF7xEIgxc/vSlsfw5w== autoprefixer@^10.4.14: - version "10.4.14" - resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-10.4.14.tgz#e28d49902f8e759dd25b153264e862df2705f79d" - integrity sha512-FQzyfOsTlwVzjHxKEqRIAdJx9niO6VCBCoEwax/VLSoQF29ggECcPuBqUMZ+u8jCZOPSy8b8/8KnuFbp0SaFZQ== + version "10.4.15" + resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-10.4.15.tgz#a1230f4aeb3636b89120b34a1f513e2f6834d530" + integrity sha512-KCuPB8ZCIqFdA4HwKXsvz7j6gvSDNhDP7WnUjBleRkKjPdvCmHFuQ77ocavI8FT6NdvlBnE2UFr2H4Mycn8Vew== dependencies: - browserslist "^4.21.5" - caniuse-lite "^1.0.30001464" + browserslist "^4.21.10" + caniuse-lite "^1.0.30001520" fraction.js "^4.2.0" normalize-range "^0.1.2" picocolors "^1.0.0" @@ -2309,11 +1540,6 @@ boolbase@^1.0.0: resolved "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e" integrity sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww== -bowser@^2.11.0: - version "2.11.0" - resolved "https://registry.yarnpkg.com/bowser/-/bowser-2.11.0.tgz#5ca3c35757a7aa5771500c70a73a9f91ef420a8f" - integrity sha512-AlcaJBi/pqqJBIQ8U9Mcpc9i8Aqxn88Skv5d+xBX006BY5u8N3mGLHa5Lgppa7L/HfwgwLgZ6NYs+Ag6uUmJRA== - brace-expansion@^1.1.7: version "1.1.11" resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" @@ -2336,7 +1562,7 @@ braces@~3.0.2: dependencies: fill-range "^7.0.1" -browserslist@^4.0.0, browserslist@^4.14.5, browserslist@^4.21.10, browserslist@^4.21.4, browserslist@^4.21.5: +browserslist@^4.0.0, browserslist@^4.14.5, browserslist@^4.21.10, browserslist@^4.21.4: version "4.21.10" resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.21.10.tgz#dbbac576628c13d3b2231332cb2ec5a46e015bb0" integrity sha512-bipEBdZfVH5/pwrvqc+Ub0kUPVfGUhlKxbvfD+z1BDnPEO/X98ruXGA1WP5ASpAFKan7Qr6j736IacbZQuAlKQ== @@ -2351,13 +1577,6 @@ bson-objectid@^2.0.4: resolved "https://registry.yarnpkg.com/bson-objectid/-/bson-objectid-2.0.4.tgz#339211572ef97dc98f2d68eaee7b99b7be59a089" integrity sha512-vgnKAUzcDoa+AeyYwXCoHyF2q6u/8H46dxu5JN+4/TZeq/Dlinn0K6GvxsCLb3LHUJl0m/TLiEK31kUwtgocMQ== -bson@^4.7.2: - version "4.7.2" - resolved "https://registry.yarnpkg.com/bson/-/bson-4.7.2.tgz#320f4ad0eaf5312dd9b45dc369cc48945e2a5f2e" - integrity sha512-Ry9wCtIZ5kGqkJoi6aD8KjxFZEx78guTQDnpXWiNthsxzrxAK/i8E6pCHAIZTbaEFWcOCvbecMukfK7XUvyLpQ== - dependencies: - buffer "^5.6.0" - buffer-equal-constant-time@1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz#f8e71132f7ffe6e01a5c9697a4c6f3e48d5cc819" @@ -2373,7 +1592,7 @@ buffer-writer@2.0.0: resolved "https://registry.yarnpkg.com/buffer-writer/-/buffer-writer-2.0.0.tgz#ce7eb81a38f7829db09c873f2fbb792c0c98ec04" integrity sha512-a7ZpuTZU1TRtnwyCNW3I5dc0wWNC3VR9S++Ewyk2HHZdrO3CQJqSpd+95Us590V6AL7JqUAH2IwZ/398PmNFgw== -buffer@^5.5.0, buffer@^5.6.0: +buffer@^5.5.0: version "5.7.1" resolved "https://registry.yarnpkg.com/buffer/-/buffer-5.7.1.tgz#ba62e7c13133053582197160851a8f648e99eed0" integrity sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ== @@ -2447,12 +1666,12 @@ caniuse-api@^3.0.0: lodash.memoize "^4.1.2" lodash.uniq "^4.5.0" -caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001464, caniuse-lite@^1.0.30001517: - version "1.0.30001519" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001519.tgz#3e7b8b8a7077e78b0eb054d69e6edf5c7df35601" - integrity sha512-0QHgqR+Jv4bxHMp8kZ1Kn8CH55OikjKJ6JmKkZYP1F3D7w+lnFXF70nG5eNfsZS89jadi5Ywy5UCSKLAglIRkg== +caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001517, caniuse-lite@^1.0.30001520: + version "1.0.30001522" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001522.tgz#44b87a406c901269adcdb834713e23582dd71856" + integrity sha512-TKiyTVZxJGhsTszLuzb+6vUZSjVOAhClszBr2Ta2k9IwtNBT/4dzmL6aywt0HCgEZlmwJzXJd8yNiob6HgwTRg== -chalk@^2.0.0: +chalk@^2.4.2: version "2.4.2" resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== @@ -2831,9 +2050,9 @@ css-what@^6.0.1, css-what@^6.1.0: integrity sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw== cssdb@^7.7.0: - version "7.7.0" - resolved "https://registry.yarnpkg.com/cssdb/-/cssdb-7.7.0.tgz#8a62f1c825c019134e7830729f050c29e3eca95e" - integrity sha512-1hN+I3r4VqSNQ+OmMXxYexnumbOONkSil0TWMebVXHtzYW4tRRPovUNHPHj2d4nrgOuYJ8Vs3XwvywsuwwXNNA== + version "7.7.1" + resolved "https://registry.yarnpkg.com/cssdb/-/cssdb-7.7.1.tgz#759e333f516e47f26dd2c7be06147d4f4716356d" + integrity sha512-kM+Fs0BFyhJNeE6wbOrlnRsugRdL6vn7QcON0aBDZ7XRd7RI2pMlk+nxoHuTb4Et+aBobXgK0I+6NGLA0LLgTw== cssesc@^3.0.0: version "3.0.0" @@ -2951,13 +2170,6 @@ debug@3.1.0: dependencies: ms "2.0.0" -debug@4.x, debug@^4.3.4: - version "4.3.4" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" - integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== - dependencies: - ms "2.1.2" - debug@^3.2.6: version "3.2.7" resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.7.tgz#72580b7e9145fb39b6676f9c5e5fb100b934179a" @@ -2965,6 +2177,13 @@ debug@^3.2.6: dependencies: ms "^2.1.1" +debug@^4.3.4: + version "4.3.4" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" + integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== + dependencies: + ms "2.1.2" + decompress-response@^6.0.0: version "6.0.0" resolved "https://registry.yarnpkg.com/decompress-response/-/decompress-response-6.0.0.tgz#ca387612ddb7e104bd16d85aab00d5ecf09c66fc" @@ -3189,9 +2408,9 @@ ee-first@1.1.1: integrity sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow== electron-to-chromium@^1.4.477: - version "1.4.485" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.485.tgz#fde3ee9ee8112a3414c0dfa545385ad08ec43408" - integrity sha512-1ndQ5IBNEnFirPwvyud69GHL+31FkE09gH/CJ6m3KCbkx3i0EVOrjwz4UNxRmN9H8OVHbC6vMRZGN1yCvjSs9w== + version "1.4.498" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.498.tgz#cef35341123f62a35ba7084e439c911d25e0d81b" + integrity sha512-4LODxAzKGVy7CJyhhN5mebwe7U2L29P+0G+HUriHnabm0d7LSff8Yn7t+Wq+2/9ze2Fu1dhX7mww090xfv7qXQ== emojis-list@^3.0.0: version "3.0.0" @@ -3508,23 +2727,16 @@ fast-json-stable-stringify@^2.0.0: resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== -fast-redact@^3.0.0: +fast-redact@^3.1.1: version "3.3.0" resolved "https://registry.yarnpkg.com/fast-redact/-/fast-redact-3.3.0.tgz#7c83ce3a7be4898241a46560d51de10f653f7634" integrity sha512-6T5V1QK1u4oF+ATxs1lWUmlEk6P2T9HqJG3e2DnHOdVgZy2rFJBoEnrIedcTXlkAHU/zKC+7KETJ+KGGKwxgMQ== -fast-safe-stringify@^2.0.8, fast-safe-stringify@^2.1.1: +fast-safe-stringify@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz#c406a83b6e70d9e35ce3b30a81141df30aeba884" integrity sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA== -fast-xml-parser@4.2.5: - version "4.2.5" - resolved "https://registry.yarnpkg.com/fast-xml-parser/-/fast-xml-parser-4.2.5.tgz#a6747a09296a6cb34f2ae634019bf1738f3b421f" - integrity sha512-B9/wizE4WngqQftFPmdaMYlXoJlJOYxGQOanC77fq9k8+Z0v5dDSVh+3glErdIROP//s/jgb7ZuxKfB8nVyo0g== - dependencies: - strnum "^1.0.5" - fastest-levenshtein@^1.0.12: version "1.0.16" resolved "https://registry.yarnpkg.com/fastest-levenshtein/-/fastest-levenshtein-1.0.16.tgz#210e61b6ff181de91ea9b3d1b84fdedd47e034e5" @@ -3599,11 +2811,6 @@ flatley@^5.2.0: dependencies: is-buffer "^1.1.6" -flatstr@^1.0.12: - version "1.0.12" - resolved "https://registry.yarnpkg.com/flatstr/-/flatstr-1.0.12.tgz#c2ba6a08173edbb6c9640e3055b95e287ceb5931" - integrity sha512-4zPxDyhCyiN2wIAtSLI6gc82/EjqZc1onI4Mz/l0pWrAlsSfYH/2ZIcU+e3oA2wDwbzIWNKwa23F8rh6+DRWkw== - focus-trap@^6.9.2: version "6.9.4" resolved "https://registry.yarnpkg.com/focus-trap/-/focus-trap-6.9.4.tgz#436da1a1d935c48b97da63cd8f361c6f3aa16444" @@ -3633,9 +2840,9 @@ forwarded@0.2.0: integrity sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow== fraction.js@^4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/fraction.js/-/fraction.js-4.2.0.tgz#448e5109a313a3527f5a3ab2119ec4cf0e0e2950" - integrity sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA== + version "4.2.1" + resolved "https://registry.yarnpkg.com/fraction.js/-/fraction.js-4.2.1.tgz#14b4cc886575a5684f8d5fd5759c5db376bb7bb8" + integrity sha512-/KxoyCnPM0GwYI4NN0Iag38Tqt+od3/mLuguepLgCAKPn0ZhC544nssAW0tG2/00zXEYl9W+7hwAIpLHo6Oc7Q== fresh@0.5.2: version "0.5.2" @@ -3667,9 +2874,9 @@ fs.realpath@^1.0.0: integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw== fsevents@~2.3.2: - version "2.3.2" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a" - integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA== + version "2.3.3" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.3.tgz#cac6407785d03675a2a5e1a5305c697b347d90d6" + integrity sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw== function-bind@^1.1.1: version "1.1.1" @@ -3801,9 +3008,9 @@ graphql-type-json@^0.3.2: integrity sha512-J+vjof74oMlCWXSvt0DOf2APEdZOCdubEvGDUAlqH//VBYcOYsGgRW7Xzorr44LvkjiuvecWc8fChxuZZbChtg== graphql@^16.6.0: - version "16.7.1" - resolved "https://registry.yarnpkg.com/graphql/-/graphql-16.7.1.tgz#11475b74a7bff2aefd4691df52a0eca0abd9b642" - integrity sha512-DRYR9tf+UGU0KOsMcKAlXeFfX89UiiIZ0dRU3mR0yJfu6OjZqUcp68NnFLnqQU5RexygFoDy1EW+ccOYcPfmHg== + version "16.8.0" + resolved "https://registry.yarnpkg.com/graphql/-/graphql-16.8.0.tgz#374478b7f27b2dc6153c8f42c1b80157f79d79d4" + integrity sha512-0oKGaR+y3qcS5mCu1vb7KG+a89vjn06C7Ihq/dDl3jA+A8B3TKomvi3CiEcVLJQGalbu8F52LxkOym7U5sSfbg== gzip-size@^6.0.0: version "6.0.0" @@ -4059,11 +3266,6 @@ interpret@^2.2.0: resolved "https://registry.yarnpkg.com/interpret/-/interpret-2.2.0.tgz#1a78a0b5965c40a5416d007ad6f50ad27c417df9" integrity sha512-Ju0Bz/cEia55xDwUWEa8+olFpCiQoypjnQySseKtmjNrnps3P+xfpUmGr90T7yjlVJmOtybRvPXhKMbHr+fWnw== -ip@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/ip/-/ip-2.0.0.tgz#4cf4ab182fee2314c75ede1276f8c80b479936da" - integrity sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ== - ipaddr.js@1.9.1: version "1.9.1" resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.9.1.tgz#bff38543eeb8984825079ff3a2a8e6cbd46781b3" @@ -4285,12 +3487,12 @@ isomorphic-fetch@^3.0.0: node-fetch "^2.6.1" whatwg-fetch "^3.4.1" -jest-util@^29.6.2: - version "29.6.2" - resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-29.6.2.tgz#8a052df8fff2eebe446769fd88814521a517664d" - integrity sha512-3eX1qb6L88lJNCFlEADKOkjpXJQyZRiavX1INZ4tRnrBVr2COd3RgcTLyUiEXMNBlDU/cgYq6taUS0fExrWW4w== +jest-util@^29.6.3: + version "29.6.3" + resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-29.6.3.tgz#e15c3eac8716440d1ed076f09bc63ace1aebca63" + integrity sha512-QUjna/xSy4B32fzcKTSz1w7YYzgiHrjjJjevdRf61HYk998R5vVMMNmrHESYZVDS5DSWs+1srPLPKxXPkeSDOA== dependencies: - "@jest/types" "^29.6.1" + "@jest/types" "^29.6.3" "@types/node" "*" chalk "^4.0.0" ci-info "^3.2.0" @@ -4307,12 +3509,12 @@ jest-worker@^27.4.5: supports-color "^8.0.0" jest-worker@^29.4.3: - version "29.6.2" - resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-29.6.2.tgz#682fbc4b6856ad0aa122a5403c6d048b83f3fb44" - integrity sha512-l3ccBOabTdkng8I/ORCkADz4eSMKejTYv1vB/Z83UiubqhC1oQ5Li6dWCyqOIvSifGjUBxuvxvlm6KGK2DtuAQ== + version "29.6.3" + resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-29.6.3.tgz#7b1a47bbb6559f3c0882d16595938590e63915d5" + integrity sha512-wacANXecZ/GbQakpf2CClrqrlwsYYDSXFd4fIGdL+dXpM2GWoJ+6bhQ7vR3TKi3+gkSfBkjy1/khH/WrYS4Q6g== dependencies: "@types/node" "*" - jest-util "^29.6.2" + jest-util "^29.6.3" merge-stream "^2.0.0" supports-color "^8.0.0" @@ -4444,11 +3646,6 @@ jwt-decode@^3.1.2: resolved "https://registry.yarnpkg.com/jwt-decode/-/jwt-decode-3.1.2.tgz#3fb319f3675a2df0c2895c8f5e9fa4b67b04ed59" integrity sha512-UfpWE/VZn0iP50d8cz9NrZLM9lSWhcJ+0Gt/nm4by88UL+J1SiKN8/5dkjMmbEzwL2CAe+67GsegCbIKtbp75A== -kareem@2.5.1: - version "2.5.1" - resolved "https://registry.yarnpkg.com/kareem/-/kareem-2.5.1.tgz#7b8203e11819a8e77a34b3517d3ead206764d15d" - integrity sha512-7jFxRVm+jD+rkq3kY0iZDJfsO2/t4BBPeEb2qKn2lR/9KhuksYk5hxzfRYWMPV8P/x2d0kHD306YyWLzjjH+uA== - kind-of@^6.0.2: version "6.0.3" resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd" @@ -4611,11 +3808,6 @@ memoizee@^0.4.15: next-tick "^1.1.0" timers-ext "^0.1.7" -memory-pager@^1.0.2: - version "1.5.0" - resolved "https://registry.yarnpkg.com/memory-pager/-/memory-pager-1.5.0.tgz#d8751655d22d384682741c972f2c3d6dfa3e66b5" - integrity sha512-ZS4Bp4r/Zoeq6+NLJpP+0Zzm0pR8whtGPf1XExKLJBAczGMnSi3It14OiNCStjQjM6NU1okjQGSxgEZN8eBYKg== - merge-descriptors@1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61" @@ -4728,61 +3920,6 @@ monaco-editor@^0.38.0: resolved "https://registry.yarnpkg.com/monaco-editor/-/monaco-editor-0.38.0.tgz#7b3cd16f89b1b8867fcd3c96e67fccee791ff05c" integrity sha512-11Fkh6yzEmwx7O0YoLxeae0qEGFwmyPRlVxpg7oF9czOOCB/iCjdJrG5I67da5WiXK3YJCxoz9TJFE8Tfq/v9A== -mongodb-connection-string-url@^2.5.4: - version "2.6.0" - resolved "https://registry.yarnpkg.com/mongodb-connection-string-url/-/mongodb-connection-string-url-2.6.0.tgz#57901bf352372abdde812c81be47b75c6b2ec5cf" - integrity sha512-WvTZlI9ab0QYtTYnuMLgobULWhokRjtC7db9LtcVfJ+Hsnyr5eo6ZtNAt3Ly24XZScGMelOcGtm7lSn0332tPQ== - dependencies: - "@types/whatwg-url" "^8.2.1" - whatwg-url "^11.0.0" - -mongodb@4.16.0: - version "4.16.0" - resolved "https://registry.yarnpkg.com/mongodb/-/mongodb-4.16.0.tgz#8b0043de7b577c6a7e0ce44a2ca7315b9c0a7927" - integrity sha512-0EB113Fsucaq1wsY0dOhi1fmZOwFtLOtteQkiqOXGklvWMnSH3g2QS53f0KTP+/6qOkuoXE2JksubSZNmxeI+g== - dependencies: - bson "^4.7.2" - mongodb-connection-string-url "^2.5.4" - socks "^2.7.1" - optionalDependencies: - "@aws-sdk/credential-providers" "^3.186.0" - saslprep "^1.0.3" - -mongoose-aggregate-paginate-v2@^1.0.6: - version "1.0.6" - resolved "https://registry.yarnpkg.com/mongoose-aggregate-paginate-v2/-/mongoose-aggregate-paginate-v2-1.0.6.tgz#fd2f2564d1bbf52f49a196f0b7b03675913dacca" - integrity sha512-UuALu+mjhQa1K9lMQvjLL3vm3iALvNw8PQNIh2gp1b+tO5hUa0NC0Wf6/8QrT9PSJVTihXaD8hQVy3J4e0jO0Q== - -mongoose-paginate-v2@1.7.22: - version "1.7.22" - resolved "https://registry.yarnpkg.com/mongoose-paginate-v2/-/mongoose-paginate-v2-1.7.22.tgz#9f178fe5fb71597e231639adac84d3ab9a96c62a" - integrity sha512-xW5GugkE21DJiu9e13EOxKt4ejEKQkRP/S1PkkXRjnk2rRZVKBcld1nPV+VJ/YCPfm8hb3sz9OvI7O38RmixkA== - -mongoose@6.11.4: - version "6.11.4" - resolved "https://registry.yarnpkg.com/mongoose/-/mongoose-6.11.4.tgz#7bab3a32eca8a43715057ae5f78d5515ecf94d7d" - integrity sha512-q9NaW9/BBYZofx80SqlR7uoSR09CS3g02y+KMj1lNLUxcFFsPshupY3WWisNFauYG9gyuDF4L/RgyIK3obSghg== - dependencies: - bson "^4.7.2" - kareem "2.5.1" - mongodb "4.16.0" - mpath "0.9.0" - mquery "4.0.3" - ms "2.1.3" - sift "16.0.1" - -mpath@0.9.0: - version "0.9.0" - resolved "https://registry.yarnpkg.com/mpath/-/mpath-0.9.0.tgz#0c122fe107846e31fc58c75b09c35514b3871904" - integrity sha512-ikJRQTk8hw5DEoFVxHG1Gn9T/xcjtdnOKIU1JTmGjZZlg9LST2mBLmcX3/ICIbgJydT2GOc15RnNy5mHmzfSew== - -mquery@4.0.3: - version "4.0.3" - resolved "https://registry.yarnpkg.com/mquery/-/mquery-4.0.3.tgz#4d15f938e6247d773a942c912d9748bd1965f89d" - integrity sha512-J5heI+P08I6VJ2Ky3+33IpCdAvlYGTSUjwTPxkAr8i8EoduPMBX2OY/wa3IKZIQl7MU4SbFk8ndgSKyB/cl1zA== - dependencies: - debug "4.x" - mrmime@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/mrmime/-/mrmime-1.0.1.tgz#5f90c825fad4bdd41dc914eff5d1a8cfdaf24f27" @@ -4866,13 +4003,20 @@ node-addon-api@^5.0.0: resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-5.1.0.tgz#49da1ca055e109a23d537e9de43c09cca21eb762" integrity sha512-eh0GgfEkpnoWDq+VY8OyvYhFEzBk6jIYbRKdIlyTiAXIVJ8PyBaKb0rp7oDtoddbdoHWhq8wwr+XZ81F1rpNdA== -node-fetch@^2.2.6, node-fetch@^2.6.1: +node-fetch@^2.2.6: version "2.6.12" resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.12.tgz#02eb8e22074018e3d5a83016649d04df0e348fba" integrity sha512-C/fGU2E8ToujUivIO0H+tpQ6HWo4eEmchoPIoXtxCrVghxdKq+QOHqEZW7tuP3KlV3bC8FRMO5nMCC7Zm1VP6g== dependencies: whatwg-url "^5.0.0" +node-fetch@^2.6.1: + version "2.6.13" + resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.13.tgz#a20acbbec73c2e09f9007de5cda17104122e0010" + integrity sha512-StxNAxh15zr77QvvkmveSQ8uCQ4+v5FkvNTj0OESmiHu+VRi/gXArXtkWMElOsOUNLtUEvI4yS+rdtOHZTwlQA== + dependencies: + whatwg-url "^5.0.0" + node-releases@^2.0.13: version "2.0.13" resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.13.tgz#d5ed1627c23e3461e819b02e57b75e4899b1c81d" @@ -5144,10 +4288,9 @@ pause@0.0.1: resolved "https://registry.yarnpkg.com/pause/-/pause-0.0.1.tgz#1d408b3fdb76923b9543d96fb4c9dfd535d9cb5d" integrity sha512-KG8UEiEVkR3wGEb4m5yZkVCzigAD+cVEJck2CzYZO37ZGJfctvVptVO192MwrtPhzONn6go8ylnOdMhKqi4nfg== -payload@^1.12.0: - version "1.13.0" - resolved "https://registry.npmjs.org/payload/-/payload-1.13.0.tgz#f299d98dcda9817888a71f51a626d5ecbed414b8" - integrity sha512-f8Px82L6Y9WcH44Y7pV6oqX6LE4qs1IQwty2hnM2wLhzkMr+ok5voYHnr1roXZB4PbhIwuLR6p7a12ZzuPsLnQ== +payload@payloadcms/payload#build/chore/update-2.0: + version "1.14.0" + resolved "https://codeload.github.com/payloadcms/payload/tar.gz/76b46b5f4529080a4e42a970529430ea8859d0b8" dependencies: "@date-io/date-fns" "^2.16.0" "@dnd-kit/core" "^6.0.7" @@ -5156,7 +4299,7 @@ payload@^1.12.0: "@faceless-ui/scroll-info" "^1.3.0" "@faceless-ui/window-info" "^2.1.1" "@monaco-editor/react" "^4.5.1" - "@swc/core" "^1.3.26" + "@swc/core" "^1.3.76" "@swc/register" "^0.1.10" "@types/sharp" "^0.31.1" body-parser "^1.20.1" @@ -5206,9 +4349,6 @@ payload@^1.12.0: minimist "^1.2.7" mkdirp "^1.0.4" monaco-editor "^0.38.0" - mongoose "6.11.4" - mongoose-aggregate-paginate-v2 "^1.0.6" - mongoose-paginate-v2 "1.7.22" nodemailer "^6.9.0" object-to-formdata "^4.4.2" passport "^0.6.0" @@ -5217,8 +4357,8 @@ payload@^1.12.0: passport-jwt "^4.0.1" passport-local "^1.0.0" path-browserify "^1.0.1" - pino "^6.4.1" - pino-pretty "^9.1.1" + pino "^8.15.0" + pino-pretty "^10.2.0" pluralize "^8.0.0" postcss "^8.4.21" postcss-loader "^6.2.1" @@ -5353,7 +4493,7 @@ picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.3: resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== -pino-abstract-transport@^1.0.0: +pino-abstract-transport@^1.0.0, pino-abstract-transport@v1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/pino-abstract-transport/-/pino-abstract-transport-1.0.0.tgz#cc0d6955fffcadb91b7b49ef220a6cc111d48bb3" integrity sha512-c7vo5OpW4wIS42hUVcT5REsL8ZljsUfBjqV/e2sFxmFEFZiq1XLUp5EYLtuDH6PEHq9W1egWqRbnLUP5FuZmOA== @@ -5361,10 +4501,10 @@ pino-abstract-transport@^1.0.0: readable-stream "^4.0.0" split2 "^4.0.0" -pino-pretty@^9.1.1: - version "9.4.1" - resolved "https://registry.yarnpkg.com/pino-pretty/-/pino-pretty-9.4.1.tgz#89121ef32d00a4d2e4b1c62850dcfff26f62a185" - integrity sha512-loWr5SNawVycvY//hamIzyz3Fh5OSpvkcO13MwdDW+eKIGylobPLqnVGTDwDXkdmpJd1BhEG+qhDw09h6SqJiQ== +pino-pretty@^10.2.0: + version "10.2.0" + resolved "https://registry.yarnpkg.com/pino-pretty/-/pino-pretty-10.2.0.tgz#c674a153e15c08d7032a826d0051d786feace1d9" + integrity sha512-tRvpyEmGtc2D+Lr3FulIZ+R1baggQ4S3xD2Ar93KixFEDx6SEAUP3W5aYuEw1C73d6ROrNcB2IXLteW8itlwhA== dependencies: colorette "^2.0.7" dateformat "^4.6.3" @@ -5381,23 +4521,27 @@ pino-pretty@^9.1.1: sonic-boom "^3.0.0" strip-json-comments "^3.1.1" -pino-std-serializers@^3.1.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/pino-std-serializers/-/pino-std-serializers-3.2.0.tgz#b56487c402d882eb96cd67c257868016b61ad671" - integrity sha512-EqX4pwDPrt3MuOAAUBMU0Tk5kR/YcCM5fNPEzgCO2zJ5HfX0vbiH9HbJglnyeQsN96Kznae6MWD47pZB5avTrg== +pino-std-serializers@^6.0.0: + version "6.2.2" + resolved "https://registry.yarnpkg.com/pino-std-serializers/-/pino-std-serializers-6.2.2.tgz#d9a9b5f2b9a402486a5fc4db0a737570a860aab3" + integrity sha512-cHjPPsE+vhj/tnhCy/wiMh3M3z3h/j15zHQX+S9GkTBgqJuTuJzYJ4gUyACLhDaJ7kk9ba9iRDmbH2tJU03OiA== -pino@^6.4.1: - version "6.14.0" - resolved "https://registry.yarnpkg.com/pino/-/pino-6.14.0.tgz#b745ea87a99a6c4c9b374e4f29ca7910d4c69f78" - integrity sha512-iuhEDel3Z3hF9Jfe44DPXR8l07bhjuFY3GMHIXbjnY9XcafbyDDwl2sN2vw2GjMPf5Nkoe+OFao7ffn9SXaKDg== +pino@^8.15.0: + version "8.15.0" + resolved "https://registry.yarnpkg.com/pino/-/pino-8.15.0.tgz#67c61d5e397bf297e5a0433976a7f7b8aa6f876b" + integrity sha512-olUADJByk4twxccmAxb1RiGKOSvddHugCV3wkqjyv+3Sooa2KLrmXrKEWOKi0XPCLasRR5jBXxioE1jxUa4KzQ== dependencies: - fast-redact "^3.0.0" - fast-safe-stringify "^2.0.8" - flatstr "^1.0.12" - pino-std-serializers "^3.1.0" - process-warning "^1.0.0" + atomic-sleep "^1.0.0" + fast-redact "^3.1.1" + on-exit-leak-free "^2.1.0" + pino-abstract-transport v1.0.0 + pino-std-serializers "^6.0.0" + process-warning "^2.0.0" quick-format-unescaped "^4.0.3" - sonic-boom "^1.0.2" + real-require "^0.2.0" + safe-stable-stringify "^2.3.1" + sonic-boom "^3.1.0" + thread-stream "^2.0.0" pirates@^4.0.1: version "4.0.6" @@ -5918,9 +5062,9 @@ postcss-value-parser@^4.1.0, postcss-value-parser@^4.2.0: integrity sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ== postcss@^8.2.15, postcss@^8.4.21, postcss@^8.4.24: - version "8.4.27" - resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.27.tgz#234d7e4b72e34ba5a92c29636734349e0d9c3057" - integrity sha512-gY/ACJtJPSmUFPDCHtX78+01fHa64FaU4zaaWfuh1MhGJISufJAH4cun6k/8fwsHYeK4UQmENQK+tRLCFJE8JQ== + version "8.4.28" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.28.tgz#c6cc681ed00109072816e1557f889ef51cf950a5" + integrity sha512-Z7V5j0cq8oEKyejIKfpD8b4eBy9cwW2JWPk0+fB1HOAMsfHbnAXLLS+PfVWlzMSLQaWttKDt607I0XHmpE67Vw== dependencies: nanoid "^3.3.6" picocolors "^1.0.0" @@ -6015,10 +5159,10 @@ probe-image-size@^6.0.0: needle "^2.5.2" stream-parser "~0.3.1" -process-warning@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/process-warning/-/process-warning-1.0.0.tgz#980a0b25dc38cd6034181be4b7726d89066b4616" - integrity sha512-du4wfLyj4yCZq1VupnVSZmRsPJsNuxoDQFdCFHLaYiEbFBD7QE0a+I4D7hOxrVnh78QE/YipFAj9lXHiXocV+Q== +process-warning@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/process-warning/-/process-warning-2.2.0.tgz#008ec76b579820a8e5c35d81960525ca64feb626" + integrity sha512-/1WZ8+VQjR6avWOgHeEPd7SDQmFQ1B5mC1eRXsCm5TarlNmx/wCsa5GEaxGm05BORRtyG/Ex/3xq3TuRvq57qg== process@^0.11.10: version "0.11.10" @@ -6058,7 +5202,7 @@ pump@^3.0.0: end-of-stream "^1.1.0" once "^1.3.1" -punycode@^2.1.0, punycode@^2.1.1: +punycode@^2.1.0: version "2.3.0" resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.3.0.tgz#f67fa67c94da8f4d0cfff981aee4118064199b8f" integrity sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA== @@ -6327,6 +5471,11 @@ readdirp@~3.6.0: dependencies: picomatch "^2.2.1" +real-require@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/real-require/-/real-require-0.2.0.tgz#209632dea1810be2ae063a6ac084fee7e33fba78" + integrity sha512-57frrGM/OCTLqLOAh0mhVA9VBMHd+9U7Zb2THMGdBUoZVOtGbJzjxsYGDJ3A9AYYCP4hn6y1TVbaOfzWtm5GFg== + rechoir@^0.7.0: version "0.7.1" resolved "https://registry.yarnpkg.com/rechoir/-/rechoir-0.7.1.tgz#9478a96a1ca135b5e88fc027f03ee92d6c645686" @@ -6334,10 +5483,10 @@ rechoir@^0.7.0: dependencies: resolve "^1.9.0" -regenerator-runtime@^0.13.11: - version "0.13.11" - resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz#f6dca3e7ceec20590d07ada785636a90cdca17f9" - integrity sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg== +regenerator-runtime@^0.14.0: + version "0.14.0" + resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.14.0.tgz#5e19d68eb12d486f797e15a3c6a918f7cec5eb45" + integrity sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA== regexp.prototype.flags@^1.5.0: version "1.5.0" @@ -6415,6 +5564,11 @@ safe-buffer@5.2.1, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@~5.2.0: resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== +safe-stable-stringify@^2.3.1: + version "2.4.3" + resolved "https://registry.yarnpkg.com/safe-stable-stringify/-/safe-stable-stringify-2.4.3.tgz#138c84b6f6edb3db5f8ef3ef7115b8f55ccbf886" + integrity sha512-e2bDA2WJT0wxseVd4lsDP4+3ONX6HpMXQa1ZhFQ7SU+GjvORCmShbCMltrtIDfkYhVHrOcPtj+KhmDBdPdZD1g== + "safer-buffer@>= 2.1.2 < 3": version "2.1.2" resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" @@ -6427,13 +5581,6 @@ sanitize-filename@^1.6.3: dependencies: truncate-utf8-bytes "^1.0.0" -saslprep@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/saslprep/-/saslprep-1.0.3.tgz#4c02f946b56cf54297e347ba1093e7acac4cf226" - integrity sha512-/MY/PEMbk2SuY5sScONwhUDsV2p77Znkb/q3nSVstq/yQzYJOH/Azh29p9oJLsl3LnQwSvZDKagDGBsBwSooag== - dependencies: - sparse-bitfield "^3.0.3" - sass-loader@^12.6.0: version "12.6.0" resolved "https://registry.yarnpkg.com/sass-loader/-/sass-loader-12.6.0.tgz#5148362c8e2cdd4b950f3c63ac5d16dbfed37bcb" @@ -6443,9 +5590,9 @@ sass-loader@^12.6.0: neo-async "^2.6.2" sass@^1.57.1: - version "1.64.2" - resolved "https://registry.yarnpkg.com/sass/-/sass-1.64.2.tgz#0d9805ad6acf31c59c3acc725fcfb91b7fcc6909" - integrity sha512-TnDlfc+CRnUAgLO9D8cQLFu/GIjJIzJCGkE7o4ekIGQOH7T3GetiRR/PsTWJUHhkzcSPrARkPI+gNWn5alCzDg== + version "1.66.1" + resolved "https://registry.yarnpkg.com/sass/-/sass-1.66.1.tgz#04b51c4671e4650aa393740e66a4e58b44d055b1" + integrity sha512-50c+zTsZOJVgFfTgwwEzkjA3/QACgdNsKueWPyAR0mRINIvLAStVQBbPg14iuqEQ74NPDbXzJARJ/O4SI1zftA== dependencies: chokidar ">=3.0.0 <4.0.0" immutable "^4.0.0" @@ -6589,11 +5736,6 @@ side-channel@^1.0.4: get-intrinsic "^1.0.2" object-inspect "^1.9.0" -sift@16.0.1: - version "16.0.1" - resolved "https://registry.yarnpkg.com/sift/-/sift-16.0.1.tgz#e9c2ccc72191585008cf3e36fc447b2d2633a053" - integrity sha512-Wv6BjQ5zbhW7VFefWusVP33T/EM0vYikCaQ2qR8yULbsilAT8/wQaXvuQ3ptGLpoKx+lihJE3y2UTgKDyyNHZQ== - simple-concat@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/simple-concat/-/simple-concat-1.0.1.tgz#f46976082ba35c2263f1c8ab5edfe26c41c9552f" @@ -6672,28 +5814,7 @@ slate@^0.91.4: is-plain-object "^5.0.0" tiny-warning "^1.0.3" -smart-buffer@^4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/smart-buffer/-/smart-buffer-4.2.0.tgz#6e1d71fa4f18c05f7d0ff216dd16a481d0e8d9ae" - integrity sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg== - -socks@^2.7.1: - version "2.7.1" - resolved "https://registry.yarnpkg.com/socks/-/socks-2.7.1.tgz#d8e651247178fde79c0663043e07240196857d55" - integrity sha512-7maUZy1N7uo6+WVEX6psASxtNlKaNVMlGQKkG/63nEDdLOWNbiUMoLK7X4uYoLhQstau72mLgfEWcXcwsaHbYQ== - dependencies: - ip "^2.0.0" - smart-buffer "^4.2.0" - -sonic-boom@^1.0.2: - version "1.4.1" - resolved "https://registry.yarnpkg.com/sonic-boom/-/sonic-boom-1.4.1.tgz#d35d6a74076624f12e6f917ade7b9d75e918f53e" - integrity sha512-LRHh/A8tpW7ru89lrlkU4AszXt1dbwSjVWguGrmlxE7tawVmDBlI1PILMkXAxJTwqhgsEeTHzj36D5CmHgQmNg== - dependencies: - atomic-sleep "^1.0.0" - flatstr "^1.0.12" - -sonic-boom@^3.0.0: +sonic-boom@^3.0.0, sonic-boom@^3.1.0: version "3.3.0" resolved "https://registry.yarnpkg.com/sonic-boom/-/sonic-boom-3.3.0.tgz#cffab6dafee3b2bcb88d08d589394198bee1838c" integrity sha512-LYxp34KlZ1a2Jb8ZQgFCK3niIHzibdwtwNUWKg0qQRzsDoJ3Gfgkf8KdBTFU3SkejDEIlWwnSnpVdOZIhFMl/g== @@ -6728,13 +5849,6 @@ source-map@^0.6.0, source-map@~0.6.0, source-map@~0.6.1: resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== -sparse-bitfield@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/sparse-bitfield/-/sparse-bitfield-3.0.3.tgz#ff4ae6e68656056ba4b3e792ab3334d38273ca11" - integrity sha512-kvzhi7vqKTfkh0PZU+2D2PIllw2ymqJKujUcyPMd9Y75Nv4nPbGJZXNhxsgdQab2BmlDct1YnfQCguEvHr7VsQ== - dependencies: - memory-pager "^1.0.2" - split2@^4.0.0, split2@^4.1.0: version "4.2.0" resolved "https://registry.yarnpkg.com/split2/-/split2-4.2.0.tgz#c9c5920904d148bab0b9f67145f245a86aadbfa4" @@ -6793,11 +5907,6 @@ strip-json-comments@~2.0.1: resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" integrity sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ== -strnum@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/strnum/-/strnum-1.0.5.tgz#5c4e829fe15ad4ff0d20c3db5ac97b73c9b072db" - integrity sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA== - strtok3@^6.2.4: version "6.3.0" resolved "https://registry.yarnpkg.com/strtok3/-/strtok3-6.3.0.tgz#358b80ffe6d5d5620e19a073aa78ce947a90f9a0" @@ -6941,6 +6050,13 @@ thenify-all@^1.0.0: dependencies: any-promise "^1.0.0" +thread-stream@^2.0.0: + version "2.4.0" + resolved "https://registry.yarnpkg.com/thread-stream/-/thread-stream-2.4.0.tgz#5def29598d1d4171ba3bace7e023a71d87d99c07" + integrity sha512-xZYtOtmnA63zj04Q+F9bdEay5r47bvpo1CaNqsKi7TpoJHcotUez8Fkfo2RJWpW91lnnaApdpRbVwCWsy+ifcw== + dependencies: + real-require "^0.2.0" + timers-ext@^0.1.7: version "0.1.7" resolved "https://registry.yarnpkg.com/timers-ext/-/timers-ext-0.1.7.tgz#6f57ad8578e07a3fb9f91d9387d65647555e25c6" @@ -7013,13 +6129,6 @@ totalist@^1.0.0: resolved "https://registry.yarnpkg.com/totalist/-/totalist-1.1.0.tgz#a4d65a3e546517701e3e5c37a47a70ac97fe56df" integrity sha512-gduQwd1rOdDMGxFG1gEvhV88Oirdo2p+KjoYFU7k2g+i7n6AFFbDQ5kMPUsW0pNbfQsB/cwXvT1i4Bue0s9g5g== -tr46@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/tr46/-/tr46-3.0.0.tgz#555c4e297a950617e8eeddef633c87d4d9d6cbf9" - integrity sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA== - dependencies: - punycode "^2.1.1" - tr46@~0.0.3: version "0.0.3" resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" @@ -7037,15 +6146,10 @@ ts-essentials@^7.0.3: resolved "https://registry.yarnpkg.com/ts-essentials/-/ts-essentials-7.0.3.tgz#686fd155a02133eedcc5362dc8b5056cde3e5a38" integrity sha512-8+gr5+lqO3G84KdiTSMRLtuyJ+nTBVRKuCrK4lidMPdVeEp0uqC875uE5NMcaA7YYMN7XsNiFQuMvasF8HT/xQ== -tslib@^1.11.1: - version "1.14.1" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" - integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== - -tslib@^2.0.0, tslib@^2.0.3, tslib@^2.3.1, tslib@^2.5.0: - version "2.6.1" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.6.1.tgz#fd8c9a0ff42590b25703c0acb3de3d3f4ede0410" - integrity sha512-t0hLfiEKfMUoqhG+U1oid7Pva4bbDPHYfJNiB7BiIjRkj1pyC++4N3huJfqY6aRH6VTB0rvtzQwjM4K6qpfOig== +tslib@^2.0.0, tslib@^2.0.3, tslib@^2.5.0: + version "2.6.2" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.6.2.tgz#703ac29425e7b37cd6fd456e92404d46d1f3e4ae" + integrity sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q== tunnel-agent@^0.6.0: version "0.6.0" @@ -7181,11 +6285,6 @@ webidl-conversions@^3.0.0: resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871" integrity sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ== -webidl-conversions@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-7.0.0.tgz#256b4e1882be7debbf01d05f0aa2039778ea080a" - integrity sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g== - webpack-bundle-analyzer@^4.8.0: version "4.9.0" resolved "https://registry.yarnpkg.com/webpack-bundle-analyzer/-/webpack-bundle-analyzer-4.9.0.tgz#fc093c4ab174fd3dcbd1c30b763f56d10141209d" @@ -7296,14 +6395,6 @@ whatwg-fetch@^3.4.1: resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-3.6.17.tgz#009bbbfc122b227b74ba1ff31536b3a1a0e0e212" integrity sha512-c4ghIvG6th0eudYwKZY5keb81wtFz9/WeAHAoy8+r18kcWlitUIrmGFQ2rWEl4UCKUilD3zCLHOIPheHx5ypRQ== -whatwg-url@^11.0.0: - version "11.0.0" - resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-11.0.0.tgz#0a849eebb5faf2119b901bb76fd795c2848d4018" - integrity sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ== - dependencies: - tr46 "^3.0.0" - webidl-conversions "^7.0.0" - whatwg-url@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-5.0.0.tgz#966454e8765462e37644d3626f6742ce8b70965d" diff --git a/scripts/translateNewKeys.ts b/scripts/translateNewKeys.ts new file mode 100644 index 0000000000..fd0c8f137c --- /dev/null +++ b/scripts/translateNewKeys.ts @@ -0,0 +1,128 @@ +/* eslint-disable no-await-in-loop */ +/* eslint-disable no-continue */ +/* eslint-disable no-restricted-syntax */ +import * as fs from 'fs'; +import * as path from 'path'; + +const TRANSLATIONS_DIR = './src/translations'; +const SOURCE_LANG_FILE = 'en.json'; +const OPENAI_ENDPOINT = 'https://api.openai.com/v1/chat/completions'; // Adjust if needed +const OPENAI_API_KEY = 'sk-YOURKEYHERE'; // Remember to replace with your actual key + + +async function main() { + const sourceLangContent = JSON.parse(fs.readFileSync(path.join(TRANSLATIONS_DIR, SOURCE_LANG_FILE), 'utf8')); + + const files = fs.readdirSync(TRANSLATIONS_DIR); + + for (const file of files) { + if (file === SOURCE_LANG_FILE) { + continue; + } + // check if file ends with .json + if (!file.endsWith('.json')) { + continue; + } + + // skip the translation-schema.json file + if (file === 'translation-schema.json') { + continue; + } + console.log('Processing file:', file); + + const targetLangContent = JSON.parse(fs.readFileSync(path.join(TRANSLATIONS_DIR, file), 'utf8')); + const missingKeys = findMissingKeys(sourceLangContent, targetLangContent); + + let hasChanged = false; + + for (const missingKey of missingKeys) { + const keys = missingKey.split('.'); + const sourceText = keys.reduce((acc, key) => acc[key], sourceLangContent); + const targetLang = file.split('.')[0]; + + const translatedText = await translateText(sourceText, targetLang); + let targetObj = targetLangContent; + + for (let i = 0; i < keys.length - 1; i += 1) { + if (!targetObj[keys[i]]) { + targetObj[keys[i]] = {}; + } + targetObj = targetObj[keys[i]]; + } + + targetObj[keys[keys.length - 1]] = translatedText; + hasChanged = true; + } + + + if (hasChanged) { + const sortedContent = sortKeys(targetLangContent); + fs.writeFileSync(path.join(TRANSLATIONS_DIR, file), JSON.stringify(sortedContent, null, 2)); + } + } +} + +main().then(() => { + console.log('Translation update completed.'); +}).catch((error) => { + console.error('Error occurred:', error); +}); + +async function translateText(text: string, targetLang: string): Promise { + const response = await fetch(OPENAI_ENDPOINT, { + method: 'POST', + headers: { + 'Content-Type': 'application/json', + Authorization: `Bearer ${OPENAI_API_KEY}`, + }, + body: JSON.stringify({ + max_tokens: 150, + model: 'gpt-4', + messages: [ + { + role: 'system', + content: `Only respond with the translation of the text you receive. The original language is English and the translation language is ${targetLang}. Only respond with the translation - do not say anything else. If you cannot translate the text, respond with "[SKIPPED]"`, + }, + { + role: 'user', + content: text, + }, + ], + }), + }); + + const data = await response.json(); + console.log(' Old text:', text, 'New text:', data.choices[0].message.content.trim()); + return data.choices[0].message.content.trim(); +} + +function findMissingKeys(baseObj: any, targetObj: any, prefix = ''): string[] { + let missingKeys = []; + + for (const key in baseObj) { + if (typeof baseObj[key] === 'object') { + missingKeys = missingKeys.concat(findMissingKeys(baseObj[key], targetObj[key] || {}, `${prefix}${key}.`)); + } else if (!(key in targetObj)) { + missingKeys.push(`${prefix}${key}`); + } + } + + return missingKeys; +} + +function sortKeys(obj: any): any { + if (typeof obj !== 'object' || obj === null) return obj; + + if (Array.isArray(obj)) { + return obj.map(sortKeys); + } + + const sortedKeys = Object.keys(obj).sort(); + const sortedObj: { [key: string]: any } = {}; + + for (const key of sortedKeys) { + sortedObj[key] = sortKeys(obj[key]); + } + + return sortedObj; +} diff --git a/src/admin/components/Routes.tsx b/src/admin/components/Routes.tsx index 8efc59fe89..96a548a2c6 100644 --- a/src/admin/components/Routes.tsx +++ b/src/admin/components/Routes.tsx @@ -30,7 +30,7 @@ const Routes: React.FC = () => { const [initialized, setInitialized] = useState(null); const { user, permissions, refreshCookie } = useAuth(); const { i18n } = useTranslation(); - const locale = useLocale(); + const { code: locale } = useLocale(); const canAccessAdmin = permissions?.canAccessAdmin; @@ -260,7 +260,7 @@ const Routes: React.FC = () => { const routesToReturn = [ ...globalRoutes, diff --git a/src/admin/components/elements/Autosave/index.tsx b/src/admin/components/elements/Autosave/index.tsx index d9c387a848..3862187201 100644 --- a/src/admin/components/elements/Autosave/index.tsx +++ b/src/admin/components/elements/Autosave/index.tsx @@ -19,7 +19,7 @@ const Autosave: React.FC = ({ collection, global, id, publishedDocUpdated const { versions, getVersions } = useDocumentInfo(); const [fields] = useAllFormFields(); const modified = useFormModified(); - const locale = useLocale(); + const { code: locale } = useLocale(); const { replace } = useHistory(); const { t, i18n } = useTranslation('version'); diff --git a/src/admin/components/elements/Button/index.scss b/src/admin/components/elements/Button/index.scss index 1dd4ec54b5..9c9bd60d94 100644 --- a/src/admin/components/elements/Button/index.scss +++ b/src/admin/components/elements/Button/index.scss @@ -129,6 +129,12 @@ a.btn { &--round { border-radius: 100%; } + + [dir=rtl] &--icon { + span{ + margin-left: 5px; + } + } &--icon { span { diff --git a/src/admin/components/elements/Button/index.tsx b/src/admin/components/elements/Button/index.tsx index 3dbc9b3edc..23f62a89fc 100644 --- a/src/admin/components/elements/Button/index.tsx +++ b/src/admin/components/elements/Button/index.tsx @@ -72,6 +72,7 @@ const Button = forwardRef((props, iconPosition = 'right', newTab, tooltip, + 'aria-label': ariaLabel, } = props; const [showTooltip, setShowTooltip] = React.useState(false); @@ -101,6 +102,8 @@ const Button = forwardRef((props, type, className: classes, disabled, + 'aria-disabled': disabled, + 'aria-label': ariaLabel, onMouseEnter: tooltip ? () => setShowTooltip(true) : undefined, onMouseLeave: tooltip ? () => setShowTooltip(false) : undefined, onClick: !disabled ? handleClick : undefined, diff --git a/src/admin/components/elements/Button/types.ts b/src/admin/components/elements/Button/types.ts index 48eaaa3afb..600b9f9c5f 100644 --- a/src/admin/components/elements/Button/types.ts +++ b/src/admin/components/elements/Button/types.ts @@ -19,4 +19,5 @@ export type Props = { iconPosition?: 'left' | 'right', newTab?: boolean tooltip?: string + 'aria-label'?: string } diff --git a/src/admin/components/elements/Card/index.scss b/src/admin/components/elements/Card/index.scss index 37d1bbf8f3..1380c5bc59 100644 --- a/src/admin/components/elements/Card/index.scss +++ b/src/admin/components/elements/Card/index.scss @@ -5,7 +5,8 @@ padding: base(1.25) $baseline; position: relative; - h5 { + &__title { + @extend %h5; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; diff --git a/src/admin/components/elements/Card/index.tsx b/src/admin/components/elements/Card/index.tsx index 697ecbaedd..65050df016 100644 --- a/src/admin/components/elements/Card/index.tsx +++ b/src/admin/components/elements/Card/index.tsx @@ -7,7 +7,7 @@ import './index.scss'; const baseClass = 'card'; const Card: React.FC = (props) => { - const { id, title, actions, onClick } = props; + const { id, title, titleAs, buttonAriaLabel, actions, onClick } = props; const classes = [ baseClass, @@ -15,14 +15,16 @@ const Card: React.FC = (props) => { onClick && `${baseClass}--has-onclick`, ].filter(Boolean).join(' '); + const Tag = titleAs ?? 'div'; + return (
-
+ {title} -
+ {actions && (
{actions} @@ -30,6 +32,7 @@ const Card: React.FC = (props) => { )} {onClick && ( @@ -58,6 +59,7 @@ const SortColumn: React.FC = (props) => { buttonStyle="none" className={descClasses.join(' ')} onClick={() => setSort(desc)} + aria-label={t('sortByLabelDirection', { label: getTranslation(label, i18n), direction: t('descending') })} > diff --git a/src/admin/components/elements/Status/index.tsx b/src/admin/components/elements/Status/index.tsx index 94b0b6800c..ef9e7832a0 100644 --- a/src/admin/components/elements/Status/index.tsx +++ b/src/admin/components/elements/Status/index.tsx @@ -32,7 +32,7 @@ const Status: React.FC = () => { } = useConfig(); const [processing, setProcessing] = useState(false); const { reset: resetForm } = useForm(); - const locale = useLocale(); + const { code: locale } = useLocale(); const { t, i18n } = useTranslation('version'); const unPublishModalSlug = `confirm-un-publish-${id}`; diff --git a/src/admin/components/elements/StepNav/index.scss b/src/admin/components/elements/StepNav/index.scss index 12a39cf737..4e80c80a3c 100644 --- a/src/admin/components/elements/StepNav/index.scss +++ b/src/admin/components/elements/StepNav/index.scss @@ -9,7 +9,12 @@ } a { - margin-right: base(.25); + [dir=ltr] & { + margin-right: base(.25); + } + [dir=rtl] & { + margin-left: base(.25); + } border: 0; display: flex; align-items: center; @@ -17,8 +22,14 @@ text-decoration: none; svg { - margin-left: base(.25); - transform: rotate(-90deg); + [dir=ltr] & { + margin-left: base(.25); + transform: rotate(-90deg); + } + [dir=rtl] & { + margin-right: base(.25); + transform: rotate(90deg); + } } label { diff --git a/src/admin/components/elements/Table/index.scss b/src/admin/components/elements/Table/index.scss index 7dda019e82..13e04ba8d3 100644 --- a/src/admin/components/elements/Table/index.scss +++ b/src/admin/components/elements/Table/index.scss @@ -11,6 +11,9 @@ th { font-weight: normal; text-align: left; + [dir = rtl] & { + text-align: right; + } } } diff --git a/src/admin/components/elements/ViewDescription/index.tsx b/src/admin/components/elements/ViewDescription/index.tsx index a253f18426..52f7912852 100644 --- a/src/admin/components/elements/ViewDescription/index.tsx +++ b/src/admin/components/elements/ViewDescription/index.tsx @@ -2,6 +2,7 @@ import React from 'react'; import { useTranslation } from 'react-i18next'; import { Props, isComponent } from './types'; import { getTranslation } from '../../../../utilities/getTranslation'; + import './index.scss'; const ViewDescription: React.FC = (props) => { diff --git a/src/admin/components/elements/WhereBuilder/Condition/index.scss b/src/admin/components/elements/WhereBuilder/Condition/index.scss index c7e06d0c6e..15d58f8c98 100644 --- a/src/admin/components/elements/WhereBuilder/Condition/index.scss +++ b/src/admin/components/elements/WhereBuilder/Condition/index.scss @@ -15,6 +15,12 @@ } } + [dir=rtl] &__field, + &__operator { + margin-left: $baseline; + margin-right:0; + } + &__field, &__operator { margin-right: $baseline; @@ -27,6 +33,9 @@ .btn { vertical-align: middle; margin: 0 0 0 $baseline; + [dir=rtl] & { + margin: 0 $baseline 0 0; + } } @include mid-break { diff --git a/src/admin/components/elements/WhereBuilder/field-types.tsx b/src/admin/components/elements/WhereBuilder/field-types.tsx index 9cfb1cd1a4..41f92ef837 100644 --- a/src/admin/components/elements/WhereBuilder/field-types.tsx +++ b/src/admin/components/elements/WhereBuilder/field-types.tsx @@ -57,6 +57,16 @@ const geo = [ }, ]; +const within = { + label: 'within', + value: 'within', +}; + +const intersects = { + label: 'intersects', + value: 'intersects', +}; + const like = { label: 'isLike', value: 'like', @@ -86,7 +96,7 @@ const fieldTypeConditions = { }, json: { component: 'Text', - operators: [...base, like, contains], + operators: [...base, like, contains, within, intersects], }, richText: { component: 'Text', @@ -102,7 +112,7 @@ const fieldTypeConditions = { }, point: { component: 'Point', - operators: [...geo], + operators: [...geo, within, intersects], }, upload: { component: 'Text', diff --git a/src/admin/components/elements/WhereBuilder/index.tsx b/src/admin/components/elements/WhereBuilder/index.tsx index d215c42b77..3bf71a4918 100644 --- a/src/admin/components/elements/WhereBuilder/index.tsx +++ b/src/admin/components/elements/WhereBuilder/index.tsx @@ -13,6 +13,7 @@ import { useSearchParams } from '../../utilities/SearchParams'; import validateWhereQuery from './validateWhereQuery'; import { Where } from '../../../../types'; import { getTranslation } from '../../../../utilities/getTranslation'; +import { transformWhereQuery } from './transformWhereQuery'; import './index.scss'; @@ -43,6 +44,10 @@ const reduceFields = (fields, i18n) => flattenTopLevelFields(fields).reduce((red return reduced; }, []); +/** + * The WhereBuilder component is used to render the filter controls for a collection's list view. + * It is part of the {@link ListControls} component which is used to render the controls (search, filter, where). + */ const WhereBuilder: React.FC = (props) => { const { collection, @@ -59,16 +64,30 @@ const WhereBuilder: React.FC = (props) => { const params = useSearchParams(); const { t, i18n } = useTranslation('general'); + // This handles initializing the where conditions from the search query (URL). That way, if you pass in + // query params to the URL, the where conditions will be initialized from those and displayed in the UI. + // Example: /admin/collections/posts?where[or][0][and][0][text][equals]=example%20post const [conditions, dispatchConditions] = useReducer(reducer, params.where, (whereFromSearch) => { - if (modifySearchQuery && validateWhereQuery(whereFromSearch)) { - return whereFromSearch.or; - } + if (modifySearchQuery && whereFromSearch) { + if (validateWhereQuery(whereFromSearch)) { + return whereFromSearch.or; + } + // Transform the where query to be in the right format. This will transform something simple like [text][equals]=example%20post to the right format + const transformedWhere = transformWhereQuery(whereFromSearch); + + if (validateWhereQuery(transformedWhere)) { + return transformedWhere.or; + } + + console.warn('Invalid where query in URL. Ignoring.'); + } return []; }); const [reducedFields] = useState(() => reduceFields(collection.fields, i18n)); + // This handles updating the search query (URL) when the where conditions change useThrottledEffect(() => { const currentParams = queryString.parse(history.location.search, { ignoreQueryPrefix: true, depth: 10 }) as { where: Where }; @@ -83,8 +102,11 @@ const WhereBuilder: React.FC = (props) => { ]; }, []) : []; + const hasNewWhereConditions = conditions.length > 0; + + const newWhereQuery = { - ...typeof currentParams?.where === 'object' ? currentParams.where : {}, + ...typeof currentParams?.where === 'object' && (validateWhereQuery(currentParams?.where) || !hasNewWhereConditions) ? currentParams.where : {}, or: [ ...conditions, ...paramsToKeep, @@ -94,7 +116,6 @@ const WhereBuilder: React.FC = (props) => { if (handleChange) handleChange(newWhereQuery as Where); const hasExistingConditions = typeof currentParams?.where === 'object' && 'or' in currentParams.where; - const hasNewWhereConditions = conditions.length > 0; if (modifySearchQuery && ((hasExistingConditions && !hasNewWhereConditions) || hasNewWhereConditions)) { history.replace({ diff --git a/src/admin/components/elements/WhereBuilder/transformWhereQuery.ts b/src/admin/components/elements/WhereBuilder/transformWhereQuery.ts new file mode 100644 index 0000000000..1edb9a8bcf --- /dev/null +++ b/src/admin/components/elements/WhereBuilder/transformWhereQuery.ts @@ -0,0 +1,51 @@ +import type { Where } from '../../../../types'; + +/** + * Something like [or][0][and][0][text][equals]=example%20post will work and pass through the validateWhereQuery check. + * However, something like [text][equals]=example%20post will not work and will fail the validateWhereQuery check, + * even though it is a valid Where query. This needs to be transformed here. + */ +export const transformWhereQuery = (whereQuery): Where => { + if (!whereQuery) { + return {}; + } + // Check if 'whereQuery' has 'or' field but no 'and'. This is the case for "correct" queries + if (whereQuery.or && !whereQuery.and) { + return { + or: whereQuery.or.map((query) => { + // ...but if the or query does not have an and, we need to add it + if(!query.and) { + return { + and: [query] + } + } + return query; + }), + }; + } + + // Check if 'whereQuery' has 'and' field but no 'or'. + if (whereQuery.and && !whereQuery.or) { + return { + or: [ + { + and: whereQuery.and, + }, + ], + }; + } + + // Check if 'whereQuery' has neither 'or' nor 'and'. + if (!whereQuery.or && !whereQuery.and) { + return { + or: [ + { + and: [whereQuery], // top-level siblings are considered 'and' + }, + ], + }; + } + + // If 'whereQuery' has 'or' and 'and', just return it as it is. + return whereQuery; +}; diff --git a/src/admin/components/elements/WhereBuilder/validateWhereQuery.ts b/src/admin/components/elements/WhereBuilder/validateWhereQuery.ts index f0f62656fc..f1789e73dc 100644 --- a/src/admin/components/elements/WhereBuilder/validateWhereQuery.ts +++ b/src/admin/components/elements/WhereBuilder/validateWhereQuery.ts @@ -1,8 +1,37 @@ -import { Where } from '../../../../types'; +import type { Operator, Where } from '../../../../types'; +import { validOperators } from '../../../../types/constants'; const validateWhereQuery = (whereQuery): whereQuery is Where => { if (whereQuery?.or?.length > 0 && whereQuery?.or?.[0]?.and && whereQuery?.or?.[0]?.and?.length > 0) { - return true; + // At this point we know that the whereQuery has 'or' and 'and' fields, + // now let's check the structure and content of these fields. + + const isValid = whereQuery.or.every((orQuery) => { + if (orQuery.and && Array.isArray(orQuery.and)) { + return orQuery.and.every((andQuery) => { + if (typeof andQuery !== 'object') { + return false; + } + const andKeys = Object.keys(andQuery); + // If there are no keys, it's not a valid WhereField. + if (andKeys.length === 0) { + return false; + } + // eslint-disable-next-line no-restricted-syntax + for (const key of andKeys) { + const operator = Object.keys(andQuery[key])[0]; + // Check if the key is a valid Operator. + if (!operator || !validOperators.includes(operator as Operator)) { + return false; + } + } + return true; + }); + } + return false; + }); + + return isValid; } return false; diff --git a/src/admin/components/forms/Form/index.tsx b/src/admin/components/forms/Form/index.tsx index 98e23a9321..5b5d338916 100644 --- a/src/admin/components/forms/Form/index.tsx +++ b/src/admin/components/forms/Form/index.tsx @@ -51,7 +51,7 @@ const Form: React.FC = (props) => { } = props; const history = useHistory(); - const locale = useLocale(); + const { code: locale } = useLocale(); const { t, i18n } = useTranslation('general'); const { refreshCookie, user } = useAuth(); const { id, getDocPreferences, collection, global } = useDocumentInfo(); diff --git a/src/admin/components/forms/Label/index.scss b/src/admin/components/forms/Label/index.scss index a1f4391000..80bc02795b 100644 --- a/src/admin/components/forms/Label/index.scss +++ b/src/admin/components/forms/Label/index.scss @@ -9,7 +9,13 @@ label.field-label { .required { color: var(--theme-error-500); - margin-left: base(.25); - margin-right: auto; + [dir=ltr] & { + margin-left: base(.25); + margin-right: auto; + } + [dir=rtl] & { + margin-right: base(.25); + margin-left: auto; + } } } \ No newline at end of file diff --git a/src/admin/components/forms/NullifyField/index.tsx b/src/admin/components/forms/NullifyField/index.tsx index 1eb42ef26b..0b07c60ccf 100644 --- a/src/admin/components/forms/NullifyField/index.tsx +++ b/src/admin/components/forms/NullifyField/index.tsx @@ -13,7 +13,7 @@ type NullifyLocaleFieldProps = { } export const NullifyLocaleField: React.FC = ({ localized, path, fieldValue }) => { const { dispatchFields, setModified } = useForm(); - const currentLocale = useLocale(); + const { code: currentLocale } = useLocale(); const { localization } = useConfig(); const [checked, setChecked] = React.useState(typeof fieldValue !== 'number'); const defaultLocale = (localization && localization.defaultLocale) ? localization.defaultLocale : 'en'; diff --git a/src/admin/components/forms/field-types/Array/index.scss b/src/admin/components/forms/field-types/Array/index.scss index 8d33dd2f87..533e6ea81a 100644 --- a/src/admin/components/forms/field-types/Array/index.scss +++ b/src/admin/components/forms/field-types/Array/index.scss @@ -31,11 +31,12 @@ display: flex; align-items: flex-end; width: 100%; + justify-content: space-between; } &__header-actions { list-style: none; - margin: 0 0 0 auto; + margin: 0; padding: 0; display: flex; } diff --git a/src/admin/components/forms/field-types/Array/index.tsx b/src/admin/components/forms/field-types/Array/index.tsx index 519b9d9f19..c4e128e006 100644 --- a/src/admin/components/forms/field-types/Array/index.tsx +++ b/src/admin/components/forms/field-types/Array/index.tsx @@ -56,7 +56,7 @@ const ArrayFieldType: React.FC = (props) => { const { setDocFieldPreferences } = useDocumentInfo(); const { dispatchFields, setModified, addFieldRow, removeFieldRow } = useForm(); const submitted = useFormSubmitted(); - const locale = useLocale(); + const { code: locale } = useLocale(); const { t, i18n } = useTranslation('fields'); const { localization } = useConfig(); diff --git a/src/admin/components/forms/field-types/Blocks/index.scss b/src/admin/components/forms/field-types/Blocks/index.scss index 5022acf1ea..ce989684bf 100644 --- a/src/admin/components/forms/field-types/Blocks/index.scss +++ b/src/admin/components/forms/field-types/Blocks/index.scss @@ -15,6 +15,7 @@ display: flex; align-items: flex-end; width: 100%; + justify-content: space-between; } &__heading-with-error { @@ -41,7 +42,7 @@ &__header-actions { list-style: none; - margin: 0 0 0 auto; + margin: 0; padding: 0; display: flex; } @@ -73,10 +74,6 @@ line-height: unset; } - .section-title { - min-width: 0; - } - &__row { margin-bottom: base(.5); } diff --git a/src/admin/components/forms/field-types/Blocks/index.tsx b/src/admin/components/forms/field-types/Blocks/index.tsx index 5d2f8d0f41..f38d8c5c55 100644 --- a/src/admin/components/forms/field-types/Blocks/index.tsx +++ b/src/admin/components/forms/field-types/Blocks/index.tsx @@ -56,7 +56,7 @@ const BlocksField: React.FC = (props) => { const { setDocFieldPreferences } = useDocumentInfo(); const { dispatchFields, setModified, addFieldRow, removeFieldRow } = useForm(); - const locale = useLocale(); + const { code: locale } = useLocale(); const { localization } = useConfig(); const drawerSlug = useDrawerSlug('blocks-drawer'); const submitted = useFormSubmitted(); diff --git a/src/admin/components/forms/field-types/Checkbox/Input.tsx b/src/admin/components/forms/field-types/Checkbox/Input.tsx index 8532a8c609..040cb82148 100644 --- a/src/admin/components/forms/field-types/Checkbox/Input.tsx +++ b/src/admin/components/forms/field-types/Checkbox/Input.tsx @@ -1,62 +1,74 @@ import React from 'react'; import Check from '../../../icons/Check'; import Label from '../../Label'; +import Line from '../../../icons/Line'; import './index.scss'; const baseClass = 'custom-checkbox'; type CheckboxInputProps = { - onToggle: React.MouseEventHandler + onToggle: React.FormEventHandler inputRef?: React.MutableRefObject readOnly?: boolean checked?: boolean + partialChecked?: boolean name?: string id?: string label?: string + 'aria-label'?: string required?: boolean } + export const CheckboxInput: React.FC = (props) => { const { onToggle, checked, + partialChecked, inputRef, name, id, label, + 'aria-label': ariaLabel, readOnly, required, } = props; return ( - - - - + )} +
); }; diff --git a/src/admin/components/forms/field-types/Checkbox/index.scss b/src/admin/components/forms/field-types/Checkbox/index.scss index aabd160a24..8bada90490 100644 --- a/src/admin/components/forms/field-types/Checkbox/index.scss +++ b/src/admin/components/forms/field-types/Checkbox/index.scss @@ -4,10 +4,6 @@ position: relative; margin-bottom: $baseline; - input[type=checkbox] { - display: none; - } - .tooltip:not([aria-hidden="true"]) { right: auto; position: relative; @@ -22,32 +18,88 @@ .custom-checkbox { + display: inline-flex; + label { padding-bottom: 0; + padding-left: base(.5); } - - input { - // hidden HTML checkbox - position: absolute; - top: 0; - left: 0; - opacity: 0; + [dir=rtl] &__input { + margin-right: 0; + margin-left: base(.5); } &__input { - // visible checkbox @include formInput; + display: flex; padding: 0; line-height: 0; position: relative; width: $baseline; height: $baseline; - margin-right: base(.5); + + & input[type="checkbox"] { + position: absolute; + // Without the extra 4px, there is an uncheckable area due to the border of the parent element + width: calc(100% + 4px); + height: calc(100% + 4px); + padding: 0; + margin: 0; + margin-left: -2px; + margin-top: -2px; + opacity: 0; + border-radius: 0; + z-index: 1; + cursor: pointer; + } + } + + &__icon { + position: absolute; svg { opacity: 0; } } + + + &:not(&--read-only) { + &:active, + &:focus-within, + &:focus { + .custom-checkbox__input, & input[type="checkbox"] { + @include inputShadowActive; + + outline: 0; + box-shadow: 0 0 3px 3px var(--theme-success-400)!important; + border: 1px solid var(--theme-elevation-150); + } + } + + &:hover { + .custom-checkbox__input, & input[type="checkbox"] { + border-color: var(--theme-elevation-250); + } + } + } + + &:not(&--read-only):not(&--checked) { + &:hover { + cursor: pointer; + + svg { + opacity: 0.2; + } + } + } + + &--checked { + .custom-checkbox__icon { + svg { + opacity: 1; + } + } + } &--read-only { .custom-checkbox__input { @@ -58,40 +110,6 @@ color: var(--theme-elevation-400); } } - - button { - @extend %btn-reset; - display: flex; - align-items: center; - cursor: pointer; - - &:focus, - &:active { - outline: none; - } - - &:focus { - .custom-checkbox__input { - box-shadow: 0 0 3px 3px var(--theme-success-400); - } - } - - &:hover { - svg { - opacity: .2; - } - } - } - - &--checked { - button { - .custom-checkbox__input { - svg { - opacity: 1; - } - } - } - } } html[data-theme=light] { diff --git a/src/admin/components/forms/field-types/Checkbox/index.tsx b/src/admin/components/forms/field-types/Checkbox/index.tsx index 1fdb7785d0..be798ad00c 100644 --- a/src/admin/components/forms/field-types/Checkbox/index.tsx +++ b/src/admin/components/forms/field-types/Checkbox/index.tsx @@ -88,6 +88,7 @@ const Checkbox: React.FC = (props) => { label={getTranslation(label || name, i18n)} name={path} checked={Boolean(value)} + readOnly={readOnly} /> = (props) => { const { @@ -143,9 +143,17 @@ const NumberField: React.FC = (props) => { isMulti isSortable isClearable + noOptionsMessage={({ inputValue }) => { + const isOverHasMany = Array.isArray(value) && value.length >= maxRows; + if (isOverHasMany) { + return t('validation:limitReached', { value: value.length + 1, max: maxRows }); + } + return t('general:noOptions'); + }} filterOption={(option, rawInput) => { // eslint-disable-next-line no-restricted-globals - return isNumber(rawInput) + const isOverHasMany = Array.isArray(value) && value.length >= maxRows; + return isNumber(rawInput) && !isOverHasMany; }} numberOnly /> diff --git a/src/admin/components/forms/field-types/RadioGroup/RadioInput/index.scss b/src/admin/components/forms/field-types/RadioGroup/RadioInput/index.scss index 0d0be113ef..c8450a6f71 100644 --- a/src/admin/components/forms/field-types/RadioGroup/RadioInput/index.scss +++ b/src/admin/components/forms/field-types/RadioGroup/RadioInput/index.scss @@ -36,6 +36,11 @@ opacity: 0; } } + + [dir=rtl] &__label { + margin-left: 0; + margin-right: base(.5); + } &__label { margin-left: base(.5); diff --git a/src/admin/components/forms/field-types/RadioGroup/index.scss b/src/admin/components/forms/field-types/RadioGroup/index.scss index e72a825694..a96b36a90c 100644 --- a/src/admin/components/forms/field-types/RadioGroup/index.scss +++ b/src/admin/components/forms/field-types/RadioGroup/index.scss @@ -14,8 +14,13 @@ } li { - padding-right: $baseline; flex-shrink: 0; + [dir=ltr] & { + padding-right: $baseline; + } + [dir=rtl] & { + padding-left: $baseline; + } } } diff --git a/src/admin/components/forms/field-types/Relationship/index.tsx b/src/admin/components/forms/field-types/Relationship/index.tsx index 362cca406d..7f8aebf236 100644 --- a/src/admin/components/forms/field-types/Relationship/index.tsx +++ b/src/admin/components/forms/field-types/Relationship/index.tsx @@ -66,7 +66,7 @@ const Relationship: React.FC = (props) => { const { t, i18n } = useTranslation('fields'); const { permissions } = useAuth(); - const locale = useLocale(); + const { code: locale } = useLocale(); const formProcessing = useFormProcessing(); const hasMultipleRelations = Array.isArray(relationTo); const [options, dispatchOptions] = useReducer(optionsReducer, []); diff --git a/src/admin/components/forms/field-types/Relationship/select-components/MultiValueLabel/index.tsx b/src/admin/components/forms/field-types/Relationship/select-components/MultiValueLabel/index.tsx index 5aadcd34fc..9b7fb300b0 100644 --- a/src/admin/components/forms/field-types/Relationship/select-components/MultiValueLabel/index.tsx +++ b/src/admin/components/forms/field-types/Relationship/select-components/MultiValueLabel/index.tsx @@ -6,6 +6,7 @@ import Tooltip from '../../../../../elements/Tooltip'; import Edit from '../../../../../icons/Edit'; import { useAuth } from '../../../../../utilities/Auth'; import { Option } from '../../types'; + import './index.scss'; const baseClass = 'relationship--multi-value-label'; diff --git a/src/admin/components/forms/field-types/RichText/elements/link/Button/index.tsx b/src/admin/components/forms/field-types/RichText/elements/link/Button/index.tsx index 4b5bef1c45..7b13bb951e 100644 --- a/src/admin/components/forms/field-types/RichText/elements/link/Button/index.tsx +++ b/src/admin/components/forms/field-types/RichText/elements/link/Button/index.tsx @@ -62,7 +62,7 @@ export const LinkButton: React.FC<{ }> = ({ fieldProps }) => { const customFieldSchema = fieldProps?.admin?.link?.fields; const { user } = useAuth(); - const locale = useLocale(); + const { code: locale } = useLocale(); const [initialState, setInitialState] = useState({}); const { t, i18n } = useTranslation(['upload', 'general']); diff --git a/src/admin/components/forms/field-types/RichText/elements/link/Element/index.tsx b/src/admin/components/forms/field-types/RichText/elements/link/Element/index.tsx index e8fd272d6d..c2df836741 100644 --- a/src/admin/components/forms/field-types/RichText/elements/link/Element/index.tsx +++ b/src/admin/components/forms/field-types/RichText/elements/link/Element/index.tsx @@ -76,7 +76,7 @@ export const LinkElement: React.FC<{ const editor = useSlate(); const config = useConfig(); const { user } = useAuth(); - const locale = useLocale(); + const { code: locale } = useLocale(); const { t, i18n } = useTranslation('fields'); const { openModal, toggleModal, closeModal } = useModal(); const [renderModal, setRenderModal] = useState(false); diff --git a/src/admin/components/forms/field-types/RichText/elements/link/LinkDrawer/index.tsx b/src/admin/components/forms/field-types/RichText/elements/link/LinkDrawer/index.tsx index 6a6195c099..b3c03f9712 100644 --- a/src/admin/components/forms/field-types/RichText/elements/link/LinkDrawer/index.tsx +++ b/src/admin/components/forms/field-types/RichText/elements/link/LinkDrawer/index.tsx @@ -6,11 +6,11 @@ import FormSubmit from '../../../../../Submit'; import { Props } from './types'; import fieldTypes from '../../../..'; import RenderFields from '../../../../../RenderFields'; - -import './index.scss'; import useHotkey from '../../../../../../../hooks/useHotkey'; import { useEditDepth } from '../../../../../../utilities/EditDepth'; +import './index.scss'; + const baseClass = 'rich-text-link-edit-modal'; export const LinkDrawer: React.FC = ({ diff --git a/src/admin/components/forms/field-types/RichText/elements/upload/Element/UploadDrawer/index.tsx b/src/admin/components/forms/field-types/RichText/elements/upload/Element/UploadDrawer/index.tsx index 2b98a01397..9461ed78f7 100644 --- a/src/admin/components/forms/field-types/RichText/elements/upload/Element/UploadDrawer/index.tsx +++ b/src/admin/components/forms/field-types/RichText/elements/upload/Element/UploadDrawer/index.tsx @@ -31,7 +31,7 @@ export const UploadDrawer: React.FC & { - showError?: boolean - errorMessage?: string - readOnly?: boolean - path: string - required?: boolean - value?: string - description?: Description - onChange?: (e: ChangeEvent) => void - onKeyDown?: React.KeyboardEventHandler - placeholder?: Record | string - style?: React.CSSProperties - className?: string - width?: string - inputRef?: React.MutableRefObject -} + showError?: boolean; + errorMessage?: string; + readOnly?: boolean; + path: string; + required?: boolean; + value?: string; + description?: Description; + onChange?: (e: ChangeEvent) => void; + onKeyDown?: React.KeyboardEventHandler; + placeholder?: Record | string; + style?: React.CSSProperties; + className?: string; + width?: string; + inputRef?: React.MutableRefObject; + rtl?: boolean; +}; const TextInput: React.FC = (props) => { const { @@ -43,6 +44,7 @@ const TextInput: React.FC = (props) => { className, width, inputRef, + rtl, } = props; const { i18n } = useTranslation(); @@ -82,6 +84,7 @@ const TextInput: React.FC = (props) => { placeholder={getTranslation(placeholder, i18n)} type="text" name={path} + data-rtl={rtl} /> = (props) => { const { @@ -14,6 +17,7 @@ const Text: React.FC = (props) => { label, minLength, maxLength, + localized, admin: { placeholder, readOnly, @@ -22,11 +26,22 @@ const Text: React.FC = (props) => { width, description, condition, + rtl, } = {}, inputRef, } = props; const path = pathFromProps || name; + const locale = useLocale(); + + const { localization } = useConfig(); + const isRTL = isFieldRTL({ + fieldRTL: rtl, + fieldLocalized: localized, + locale, + localizationConfig: localization || undefined, + }); + const memoizedValidate = useCallback((value, options) => { return validate(value, { ...options, minLength, maxLength, required }); @@ -62,6 +77,7 @@ const Text: React.FC = (props) => { width={width} description={description} inputRef={inputRef} + rtl={isRTL} /> ); }; diff --git a/src/admin/components/forms/field-types/Textarea/Input.tsx b/src/admin/components/forms/field-types/Textarea/Input.tsx index e82861e2d4..9eb5bc4e52 100644 --- a/src/admin/components/forms/field-types/Textarea/Input.tsx +++ b/src/admin/components/forms/field-types/Textarea/Input.tsx @@ -23,6 +23,7 @@ export type TextAreaInputProps = Omit & { className?: string width?: string rows?: number + rtl?: boolean; } const TextareaInput: React.FC = (props) => { @@ -41,6 +42,7 @@ const TextareaInput: React.FC = (props) => { errorMessage, onChange, rows, + rtl, } = props; const { i18n } = useTranslation(); @@ -88,6 +90,7 @@ const TextareaInput: React.FC = (props) => { placeholder={getTranslation(placeholder, i18n)} name={path} rows={rows} + data-rtl={rtl} />
diff --git a/src/admin/components/forms/field-types/Textarea/index.scss b/src/admin/components/forms/field-types/Textarea/index.scss index b2ea0b8744..544d4916a4 100644 --- a/src/admin/components/forms/field-types/Textarea/index.scss +++ b/src/admin/components/forms/field-types/Textarea/index.scss @@ -64,6 +64,9 @@ &::-webkit-scrollbar { display: none; } + &[data-rtl='true'] { + direction: rtl; + } } // Clone of textarea with same height diff --git a/src/admin/components/forms/field-types/Textarea/index.tsx b/src/admin/components/forms/field-types/Textarea/index.tsx index 73c32969f4..00646a6b15 100644 --- a/src/admin/components/forms/field-types/Textarea/index.tsx +++ b/src/admin/components/forms/field-types/Textarea/index.tsx @@ -6,8 +6,11 @@ import { textarea } from '../../../../../fields/validations'; import { Props } from './types'; import TextareaInput from './Input'; import { getTranslation } from '../../../../../utilities/getTranslation'; +import { useLocale } from '../../../utilities/Locale'; import './index.scss'; +import { useConfig } from '../../../utilities/Config'; +import { isFieldRTL } from '../shared'; const Textarea: React.FC = (props) => { const { @@ -17,6 +20,7 @@ const Textarea: React.FC = (props) => { validate = textarea, maxLength, minLength, + localized, admin: { readOnly, style, @@ -26,6 +30,7 @@ const Textarea: React.FC = (props) => { rows, description, condition, + rtl, } = {}, label, } = props; @@ -34,6 +39,15 @@ const Textarea: React.FC = (props) => { const path = pathFromProps || name; + const locale = useLocale(); + + const { localization } = useConfig(); + const isRTL = isFieldRTL({ + fieldRTL: rtl, + fieldLocalized: localized, + locale, + localizationConfig: localization || undefined, + }); const memoizedValidate = useCallback((value, options) => { return validate(value, { ...options, required, maxLength, minLength }); }, [validate, required, maxLength, minLength]); @@ -68,6 +82,7 @@ const Textarea: React.FC = (props) => { width={width} description={description} rows={rows} + rtl={isRTL} /> ); }; diff --git a/src/admin/components/forms/field-types/shared.ts b/src/admin/components/forms/field-types/shared.ts new file mode 100644 index 0000000000..b6a18da694 --- /dev/null +++ b/src/admin/components/forms/field-types/shared.ts @@ -0,0 +1,32 @@ +import type { Locale, SanitizedLocalizationConfig } from '../../../../config/types'; + +/** + * Determines whether a field should be displayed as right-to-left (RTL) based on its configuration, payload's localization configuration and the adming user's currently enabled locale. + + * @returns Whether the field should be displayed as RTL. + */ +export function isFieldRTL({ + fieldRTL, + fieldLocalized, + locale, + localizationConfig, +}: { + fieldRTL: boolean; + fieldLocalized: boolean; + locale: Locale; + localizationConfig?: SanitizedLocalizationConfig; +}) { + const hasMultipleLocales = locale + && (localizationConfig) + && (localizationConfig.locales) + && (localizationConfig.locales.length > 1); + const isCurrentLocaleDefaultLocale = locale?.code === localizationConfig?.defaultLocale; + + return ((fieldRTL !== false && locale?.rtl === true) + && ( + fieldLocalized + || (!fieldLocalized && !hasMultipleLocales) // If there is only one locale which is also rtl, that field is rtl too + || (!fieldLocalized && isCurrentLocaleDefaultLocale) // If the current locale is the default locale, but the field is not localized, that field is rtl too + )) + || (fieldRTL === true); // If fieldRTL is true. This should be useful for when no localization is set at all in the payload config, but you still want fields to be rtl. +} diff --git a/src/admin/components/modals/LeaveWithoutSaving/index.scss b/src/admin/components/modals/LeaveWithoutSaving/index.scss index 3720614d5e..d42dc52f06 100644 --- a/src/admin/components/modals/LeaveWithoutSaving/index.scss +++ b/src/admin/components/modals/LeaveWithoutSaving/index.scss @@ -15,6 +15,11 @@ } .btn { - margin-right: $baseline; + [dir=ltr] & { + margin-right: $baseline; + } + [dir=rtl] & { + margin-left: $baseline; + } } } \ No newline at end of file diff --git a/src/admin/components/templates/Default/index.scss b/src/admin/components/templates/Default/index.scss index bd14ec8276..3c2b81d7d9 100644 --- a/src/admin/components/templates/Default/index.scss +++ b/src/admin/components/templates/Default/index.scss @@ -13,7 +13,12 @@ @include mid-break { display: block; width: 100%; - margin-left: 0; + [dir=ltr] & { + margin-left: 0; + } + [dir=rtl] & { + margin-right: 0; + } padding-top: base(3); &__wrap { diff --git a/src/admin/components/utilities/I18n/index.tsx b/src/admin/components/utilities/I18n/index.tsx index 9cfaa39f30..d463dcc847 100644 --- a/src/admin/components/utilities/I18n/index.tsx +++ b/src/admin/components/utilities/I18n/index.tsx @@ -16,7 +16,10 @@ export const I18n: React.FC = () => { } i18n - .use(LanguageDetector) + .use(new LanguageDetector(null, { + lookupCookie: 'lng', + lookupLocalStorage: 'lng', + })) .use(initReactI18next) .init(deepmerge(defaultOptions, config.i18n || {})); loader.config({ 'vs/nls': { availableLanguages: { '*': getSupportedMonacoLocale(i18n.language) } } }); diff --git a/src/admin/components/utilities/Locale/index.tsx b/src/admin/components/utilities/Locale/index.tsx index 22d9e5d8b1..d8402a383d 100644 --- a/src/admin/components/utilities/Locale/index.tsx +++ b/src/admin/components/utilities/Locale/index.tsx @@ -1,19 +1,29 @@ -import React, { - createContext, useContext, useState, useEffect, -} from 'react'; +import React, { createContext, useContext, useState, useEffect } from 'react'; +import { Locale } from '../../../../config/types'; import { useConfig } from '../Config'; import { useAuth } from '../Auth'; import { usePreferences } from '../Preferences'; import { useSearchParams } from '../SearchParams'; +import { findLocaleFromCode } from '../../../../utilities/findLocaleFromCode'; -const Context = createContext(''); +const LocaleContext = createContext(null); -export const LocaleProvider: React.FC<{ children?: React.ReactNode }> = ({ children }) => { +export const LocaleProvider: React.FC<{ children?: React.ReactNode }> = ({ + children, +}) => { const { localization } = useConfig(); + const { user } = useAuth(); - const defaultLocale = (localization && localization.defaultLocale) ? localization.defaultLocale : 'en'; + const defaultLocale = (localization && localization.defaultLocale) + ? localization.defaultLocale + : 'en'; const searchParams = useSearchParams(); - const [locale, setLocale] = useState(searchParams?.locale as string || defaultLocale); + const [localeCode, setLocaleCode] = useState( + (searchParams?.locale as string) || defaultLocale, + ); + const [locale, setLocale] = useState( + localization && findLocaleFromCode(localization, localeCode), + ); const { getPreference, setPreference } = usePreferences(); const localeFromParams = searchParams.locale; @@ -23,8 +33,14 @@ export const LocaleProvider: React.FC<{ children?: React.ReactNode }> = ({ child } // set locale from search param - if (localeFromParams && localization.locales.indexOf(localeFromParams as string) > -1) { - setLocale(localeFromParams as string); + if ( + localeFromParams + && localization.localeCodes.indexOf(localeFromParams as string) > -1 + ) { + setLocaleCode(localeFromParams as string); + setLocale( + findLocaleFromCode(localization, localeFromParams as string), + ); if (user) setPreference('locale', localeFromParams); return; } @@ -35,24 +51,38 @@ export const LocaleProvider: React.FC<{ children?: React.ReactNode }> = ({ child let isPreferenceInConfig: boolean; if (user) { preferenceLocale = await getPreference('locale'); - isPreferenceInConfig = preferenceLocale && (localization.locales.indexOf(preferenceLocale) > -1); + isPreferenceInConfig = preferenceLocale + && localization.localeCodes.indexOf(preferenceLocale) > -1; if (isPreferenceInConfig) { - setLocale(preferenceLocale); + setLocaleCode(preferenceLocale); + setLocale( + findLocaleFromCode(localization, preferenceLocale as string), + ); return; } setPreference('locale', defaultLocale); } - setLocale(defaultLocale); + setLocaleCode(defaultLocale); + setLocale(findLocaleFromCode(localization, defaultLocale)); })(); - }, [defaultLocale, getPreference, localeFromParams, localization, setPreference, user]); + }, [ + defaultLocale, + getPreference, + localeFromParams, + setPreference, + user, + localization, + ]); return ( - + {children} - + ); }; -export const useLocale = (): string => useContext(Context); - -export default Context; +/** + * A hook that returns the current locale object. + */ +export const useLocale = (): Locale | null => useContext(LocaleContext); +export default LocaleContext; diff --git a/src/admin/components/utilities/Meta/index.tsx b/src/admin/components/utilities/Meta/index.tsx index 57561fbf54..e80e14001a 100644 --- a/src/admin/components/utilities/Meta/index.tsx +++ b/src/admin/components/utilities/Meta/index.tsx @@ -1,18 +1,37 @@ import React from 'react'; import Helmet from 'react-helmet'; +import { useTranslation } from 'react-i18next'; import { useConfig } from '../Config'; import { Props } from './types'; import payloadFavicon from '../../../assets/images/favicon.svg'; import payloadOgImage from '../../../assets/images/og-image.png'; import useMountEffect from '../../../hooks/useMountEffect'; +const rtlLanguages = [ + 'ar', + 'fa', + 'ha', + 'ku', + 'ur', + 'ps', + 'dv', + 'ks', + 'khw', + 'he', + 'yi', +]; + const Meta: React.FC = ({ description, - lang = 'en', + // lang = 'en', meta = [], title, keywords = 'CMS, Admin, Dashboard', }) => { + const { i18n } = useTranslation(); + const currentLanguage = i18n.language; + const currentDirection = rtlLanguages.includes(currentLanguage) ? 'RTL' : 'LTR'; + const config = useConfig(); const titleSuffix = config.admin.meta?.titleSuffix ?? '- Payload'; const favicon = config.admin.meta.favicon ?? payloadFavicon; @@ -28,7 +47,8 @@ const Meta: React.FC = ({ return ( = (props) => {

{t('general:payloadSettings')}

); diff --git a/src/admin/components/views/Version/Version.tsx b/src/admin/components/views/Version/Version.tsx index 0c41f2635c..5863b56f76 100644 --- a/src/admin/components/views/Version/Version.tsx +++ b/src/admin/components/views/Version/Version.tsx @@ -32,10 +32,10 @@ const VersionView: React.FC = ({ collection, global }) => { const { setStepNav } = useStepNav(); const { params: { id, versionID } } = useRouteMatch<{ id?: string, versionID: string }>(); const [compareValue, setCompareValue] = useState(mostRecentVersionOption); - const [localeOptions] = useState(() => (localization ? localization.locales.map((locale) => ({ label: locale, value: locale })) : [])); + const [localeOptions] = useState(() => (localization ? localization.locales : [])); const [locales, setLocales] = useState(localeOptions); const { permissions } = useAuth(); - const locale = useLocale(); + const { code: locale } = useLocale(); const { t, i18n } = useTranslation('version'); const { docPermissions } = useDocumentInfo(); @@ -214,7 +214,7 @@ const VersionView: React.FC = ({ collection, global }) => { {doc?.version && ( value) : []} + locales={locales ? locales.map(({ code }) => code) : []} fields={fields} fieldComponents={fieldComponents} fieldPermissions={fieldPermissions} diff --git a/src/admin/components/views/Version/types.ts b/src/admin/components/views/Version/types.ts index 276b8913ab..e48e92cb62 100644 --- a/src/admin/components/views/Version/types.ts +++ b/src/admin/components/views/Version/types.ts @@ -3,7 +3,7 @@ import { SanitizedGlobalConfig } from '../../../../globals/config/types'; export type LocaleOption = { label: string - value: string + code: string } export type CompareOption = { diff --git a/src/admin/components/views/Versions/index.scss b/src/admin/components/views/Versions/index.scss index 2d4f0f23d2..526a15fbcd 100644 --- a/src/admin/components/views/Versions/index.scss +++ b/src/admin/components/views/Versions/index.scss @@ -23,7 +23,12 @@ } &__parent-doc-pills { - margin-left: auto; + [dir=ltr] & { + margin-left: auto; + } + [dir=rtl] & { + margin-right: auto; + } } .table { @@ -44,8 +49,14 @@ } &__page-info { - margin-right: base(1); - margin-left: auto; + [dir=ltr] & { + margin-right: base(1); + margin-left: auto; + } + [dir=rtl] & { + margin-left: base(1); + margin-right: auto; + } } @include mid-break { @@ -58,7 +69,12 @@ } &__page-info { - margin-left: 0; + [dir=ltr] & { + margin-left: 0; + } + [dir=rtl] & { + margin-right: 0; + } } .paginator { diff --git a/src/admin/components/views/collections/Edit/Auth/index.scss b/src/admin/components/views/collections/Edit/Auth/index.scss index 508ebf4333..89a6a57e4f 100644 --- a/src/admin/components/views/collections/Edit/Auth/index.scss +++ b/src/admin/components/views/collections/Edit/Auth/index.scss @@ -7,7 +7,12 @@ .btn { margin-top: 0; - margin-right: base(.5); + [dir=ltr] & { + margin-right: base(.5); + } + [dir=rtl] & { + margin-left: base(.5); + } } &__api-key-label { diff --git a/src/admin/components/views/collections/Edit/Upload/index.scss b/src/admin/components/views/collections/Edit/Upload/index.scss index 405cfda088..488d31dec7 100644 --- a/src/admin/components/views/collections/Edit/Upload/index.scss +++ b/src/admin/components/views/collections/Edit/Upload/index.scss @@ -37,19 +37,20 @@ &__drop-zone { align-items: center; border: 1px dotted var(--theme-elevation-400); + gap: $baseline; .btn { - margin: 0 $baseline 0 0; + margin: 0; } } &__file-selected { + gap: $baseline; flex-direction: column; .btn { @include formInput; position: relative; - margin-top: 0; - margin-bottom: 0; + margin: 0; margin-left: -1px; display: flex; padding: 0 base(0.5); diff --git a/src/admin/components/views/collections/Edit/index.scss b/src/admin/components/views/collections/Edit/index.scss index ee2e6984b6..f61f1e20c3 100644 --- a/src/admin/components/views/collections/Edit/index.scss +++ b/src/admin/components/views/collections/Edit/index.scss @@ -30,7 +30,12 @@ display: flex; li { - margin-right: base(.75); + [dir=ltr] & { + margin-right: base(.75); + } + [dir=rtl] & { + margin-left: base(.75); + } } } @@ -44,10 +49,17 @@ position: fixed; width: base(15); height: 100%; - top: 0; - right: 0; overflow: visible; - border-left: 1px solid var(--theme-elevation-100); + [dir=ltr] & { + top: 0; + right: 0; + border-left: 1px solid var(--theme-elevation-100); + } + [dir=rtl] & { + top: 0; + left: 0; + border-right: 1px solid var(--theme-elevation-100); + } } &__sidebar { @@ -66,11 +78,21 @@ &__document-actions, &__meta, &__sidebar-fields { - padding-left: base(1.5); + [dir=ltr] & { + padding-left: base(1.5); + } + [dir=rtl] & { + padding-right: base(1.5); + } } &__document-actions { - padding-right: $baseline; + [dir=ltr] & { + padding-right: $baseline; + } + [dir=rtl] & { + padding-left: $baseline; + } position: sticky; top: 0; z-index: var(--z-nav); @@ -93,11 +115,21 @@ } >*:first-child { - margin-right: base(.5); + [dir=ltr] & { + margin-right: base(.5); + } + [dir=rtl] & { + margin-left: base(.5); + } } >*:last-child { - margin-left: base(.5); + [dir=ltr] & { + margin-left: base(.5); + } + [dir=rtl] & { + margin-right: base(.5); + } } .form-submit { @@ -120,7 +152,12 @@ } &__sidebar-fields { - padding-right: $baseline; + [dir=ltr] & { + padding-right: $baseline; + } + [dir=rtl] & { + padding-left: $baseline; + } display: flex; flex-direction: column; gap: $baseline; @@ -141,7 +178,12 @@ &__meta { margin: auto 0 $baseline 0; padding-top: $baseline; - padding-right: $baseline; + [dir=ltr] & { + padding-right: $baseline; + } + [dir=rtl] & { + padding-left: $baseline; + } list-style: none; li { @@ -192,7 +234,12 @@ &__meta { border-top: 1px solid var(--theme-elevation-100); - padding-right: var(--gutter-h); + [dir=ltr] & { + padding-right: var(--gutter-h); + } + [dir=rtl] & { + padding-left: var(--gutter-h); + } } &__form { @@ -226,7 +273,12 @@ &__sidebar-fields { padding-top: 0; - padding-right: var(--gutter-h); + [dir=ltr] & { + padding-right: var(--gutter-h); + } + [dir=rtl] & { + padding-left: var(--gutter-h); + } gap: base(0.5); .preview-btn { diff --git a/src/admin/components/views/collections/Edit/index.tsx b/src/admin/components/views/collections/Edit/index.tsx index e51095d6ef..84f938a5c9 100644 --- a/src/admin/components/views/collections/Edit/index.tsx +++ b/src/admin/components/views/collections/Edit/index.tsx @@ -34,7 +34,7 @@ const EditView: React.FC = (props) => { const [collection] = useState(() => ({ ...incomingCollection, fields })); const [redirect, setRedirect] = useState(); - const locale = useLocale(); + const { code: locale } = useLocale(); const { serverURL, routes: { admin, api } } = useConfig(); const { params: { id } = {} } = useRouteMatch>(); const history = useHistory(); diff --git a/src/admin/components/views/collections/List/Cell/field-types/Checkbox/index.scss b/src/admin/components/views/collections/List/Cell/field-types/Checkbox/index.scss index 4878a07386..afbac5265c 100644 --- a/src/admin/components/views/collections/List/Cell/field-types/Checkbox/index.scss +++ b/src/admin/components/views/collections/List/Cell/field-types/Checkbox/index.scss @@ -10,7 +10,12 @@ color: var(--theme-elevation-800); border-radius: $style-radius-s; padding: 0 base(0.25); - padding-left: base(0.0875 + 0.25); + [dir=ltr] & { + padding-left: base(0.0875 + 0.25); + } + [dir=rtl] & { + padding-right: base(0.0875 + 0.25); + } background: var(--theme-elevation-100); color: var(--theme-elevation-800); diff --git a/src/admin/components/views/collections/List/Cell/field-types/Code/index.scss b/src/admin/components/views/collections/List/Cell/field-types/Code/index.scss index 83cbce3638..8b2babc7e9 100644 --- a/src/admin/components/views/collections/List/Cell/field-types/Code/index.scss +++ b/src/admin/components/views/collections/List/Cell/field-types/Code/index.scss @@ -10,7 +10,12 @@ color: var(--theme-elevation-800); border-radius: $style-radius-s; padding: 0 base(0.25); - padding-left: base(0.0875 + 0.25); + [dir=ltr] & { + padding-left: base(0.0875 + 0.25); + } + [dir=rtl] & { + padding-right: base(0.0875 + 0.25); + } background: var(--theme-elevation-100); color: var(--theme-elevation-800); diff --git a/src/admin/components/views/collections/List/Cell/field-types/File/index.scss b/src/admin/components/views/collections/List/Cell/field-types/File/index.scss index 89c1c4b35b..58c353fb34 100644 --- a/src/admin/components/views/collections/List/Cell/field-types/File/index.scss +++ b/src/admin/components/views/collections/List/Cell/field-types/File/index.scss @@ -13,6 +13,11 @@ &__filename { align-self: center; - margin-left: base(1); + [dir=ltr] & { + margin-left: base(1); + } + [dir=rtl] & { + margin-right: base(1); + } } } diff --git a/src/admin/components/views/collections/List/Cell/field-types/JSON/index.scss b/src/admin/components/views/collections/List/Cell/field-types/JSON/index.scss index 4b84498272..5354d6e38e 100644 --- a/src/admin/components/views/collections/List/Cell/field-types/JSON/index.scss +++ b/src/admin/components/views/collections/List/Cell/field-types/JSON/index.scss @@ -10,7 +10,12 @@ color: var(--theme-elevation-800); border-radius: $style-radius-s; padding: 0 base(0.25); - padding-left: base(0.0875 + 0.25); + [dir=ltr] & { + padding-left: base(0.0875 + 0.25); + } + [dir=rtl] & { + padding-right: base(0.0875 + 0.25); + } background: var(--theme-elevation-100); color: var(--theme-elevation-800); diff --git a/src/admin/components/views/collections/List/Default.tsx b/src/admin/components/views/collections/List/Default.tsx index c0190272b4..eb32be8448 100644 --- a/src/admin/components/views/collections/List/Default.tsx +++ b/src/admin/components/views/collections/List/Default.tsx @@ -100,7 +100,10 @@ const DefaultList: React.FC = (props) => { {getTranslation(pluralLabel, i18n)} {hasCreatePermission && ( - + {t('createNew')} )} diff --git a/src/admin/components/views/collections/List/RelationshipProvider/index.tsx b/src/admin/components/views/collections/List/RelationshipProvider/index.tsx index 0a77221585..80d0c828c6 100644 --- a/src/admin/components/views/collections/List/RelationshipProvider/index.tsx +++ b/src/admin/components/views/collections/List/RelationshipProvider/index.tsx @@ -31,7 +31,7 @@ export const RelationshipProvider: React.FC<{ children?: React.ReactNode }> = ({ const debouncedDocuments = useDebounce(documents, 100); const config = useConfig(); const { i18n } = useTranslation(); - const locale = useLocale(); + const { code: locale } = useLocale(); const prevLocale = useRef(locale); const { diff --git a/src/admin/components/views/collections/List/SelectAll/index.scss b/src/admin/components/views/collections/List/SelectAll/index.scss deleted file mode 100644 index 573462a888..0000000000 --- a/src/admin/components/views/collections/List/SelectAll/index.scss +++ /dev/null @@ -1,34 +0,0 @@ -@import '../../../../../scss/styles.scss'; - -.select-all { - button { - @extend %btn-reset; - display: flex; - align-items: center; - cursor: pointer; - - &:focus:not(:focus-visible), - &:active { - outline: none; - } - - &:hover { - svg { - opacity: .2; - } - } - - &:focus-visible { - outline-offset: var(--accessibility-outline-offset); - } - } - - &__input { - @include formInput; - padding: 0; - line-height: 0; - position: relative; - width: $baseline; - height: $baseline; - } -} diff --git a/src/admin/components/views/collections/List/SelectAll/index.tsx b/src/admin/components/views/collections/List/SelectAll/index.tsx index 18b0b3dcb3..bcc3e373e8 100644 --- a/src/admin/components/views/collections/List/SelectAll/index.tsx +++ b/src/admin/components/views/collections/List/SelectAll/index.tsx @@ -1,31 +1,22 @@ import React from 'react'; +import { useTranslation } from 'react-i18next'; + import { SelectAllStatus, useSelection } from '../SelectionProvider'; -import Check from '../../../../icons/Check'; -import Line from '../../../../icons/Line'; -import './index.scss'; - -const baseClass = 'select-all'; +import { CheckboxInput } from '../../../../forms/field-types/Checkbox/Input'; const SelectAll: React.FC = () => { + const { t } = useTranslation('general'); const { selectAll, toggleAll } = useSelection(); return ( -
- -
+ toggleAll()} + /> ); }; diff --git a/src/admin/components/views/collections/List/SelectRow/index.tsx b/src/admin/components/views/collections/List/SelectRow/index.tsx index acae082fe7..f879c62bcc 100644 --- a/src/admin/components/views/collections/List/SelectRow/index.tsx +++ b/src/admin/components/views/collections/List/SelectRow/index.tsx @@ -1,31 +1,17 @@ import React from 'react'; import { useSelection } from '../SelectionProvider'; -import Check from '../../../../icons/Check'; +import { CheckboxInput } from '../../../../forms/field-types/Checkbox/Input'; import './index.scss'; -const baseClass = 'select-row'; - const SelectRow: React.FC<{ id: string | number }> = ({ id }) => { const { selected, setSelection } = useSelection(); return ( -
- -
+ setSelection(id)} + /> ); }; diff --git a/src/admin/components/views/collections/List/SelectionProvider/index.tsx b/src/admin/components/views/collections/List/SelectionProvider/index.tsx index e78fa670b1..24ccc4f37b 100644 --- a/src/admin/components/views/collections/List/SelectionProvider/index.tsx +++ b/src/admin/components/views/collections/List/SelectionProvider/index.tsx @@ -32,7 +32,7 @@ export const SelectionProvider: React.FC = ({ children, docs = [], totalD const contextRef = useRef({} as SelectionContext); const history = useHistory(); - const locale = useLocale(); + const { code: locale } = useLocale(); const [selected, setSelected] = useState({}); const [selectAll, setSelectAll] = useState(SelectAllStatus.None); const [count, setCount] = useState(0); diff --git a/src/admin/components/views/collections/List/index.scss b/src/admin/components/views/collections/List/index.scss index dfeaea3834..f934bc14ec 100644 --- a/src/admin/components/views/collections/List/index.scss +++ b/src/admin/components/views/collections/List/index.scss @@ -14,9 +14,10 @@ display: flex; align-items: flex-end; flex-wrap: wrap; + gap: base(.75); h1 { - margin: 0 base(.75) 0 0; + margin: 0; } a { @@ -57,8 +58,14 @@ } &__page-info { - margin-right: base(1); - margin-left: auto; + [dir=ltr] & { + margin-right: base(1); + margin-left: auto; + } + [dir=rtl] & { + margin-left: base(1); + margin-right: auto; + } } &__list-selection { diff --git a/src/admin/components/views/collections/List/index.tsx b/src/admin/components/views/collections/List/index.tsx index 6b03c65348..10f9b71c0c 100644 --- a/src/admin/components/views/collections/List/index.tsx +++ b/src/admin/components/views/collections/List/index.tsx @@ -16,6 +16,12 @@ import { useSearchParams } from '../../../utilities/SearchParams'; import { TableColumnsProvider } from '../../../elements/TableColumns'; import type { Field } from '../../../../../fields/config/types'; +/** + * The ListView component is table which lists the collection's documents. + * The default list view can be found at the {@link DefaultList} component. + * Users can also create pass their own custom list view component instead + * of using the default one. + */ const ListView: React.FC = (props) => { const { collection, diff --git a/src/admin/hooks/usePayloadAPI.tsx b/src/admin/hooks/usePayloadAPI.tsx index 28663c1c0e..f00a69b5e6 100644 --- a/src/admin/hooks/usePayloadAPI.tsx +++ b/src/admin/hooks/usePayloadAPI.tsx @@ -33,7 +33,7 @@ const usePayloadAPI: UsePayloadAPI = (url, options = {}) => { const [params, setParams] = useState(initialParams); const [isLoading, setIsLoading] = useState(true); const [isError, setIsError] = useState(false); - const locale = useLocale(); + const { code: locale } = useLocale(); const search = queryString.stringify({ locale, diff --git a/src/admin/scss/vars.scss b/src/admin/scss/vars.scss index dc629e5980..229f65e2cd 100644 --- a/src/admin/scss/vars.scss +++ b/src/admin/scss/vars.scss @@ -153,6 +153,10 @@ $focus-box-shadow: 0 0 0 $style-stroke-width-m var(--theme-success-500); padding: base(.5) base(.75); -webkit-appearance: none; + &[data-rtl='true'] { + direction: rtl; + } + &::-webkit-input-placeholder { color: var(--theme-elevation-400); font-weight: normal; diff --git a/src/auth/operations/forgotPassword.ts b/src/auth/operations/forgotPassword.ts index dfc0187554..8b51550cd1 100644 --- a/src/auth/operations/forgotPassword.ts +++ b/src/auth/operations/forgotPassword.ts @@ -2,6 +2,7 @@ import crypto from 'crypto'; import { APIError } from '../../errors'; import { PayloadRequest } from '../../express/types'; import { Collection } from '../../collections/config/types'; +import { buildAfterOperation } from '../../collections/operations/utils'; export type Arguments = { collection: Collection @@ -134,6 +135,16 @@ async function forgotPassword(incomingArgs: Arguments): Promise { await hook({ args, context: req.context }); }, Promise.resolve()); + // ///////////////////////////////////// + // afterOperation - Collection + // ///////////////////////////////////// + + token = await buildAfterOperation({ + operation: 'forgotPassword', + args, + result: token, + }); + return token; } diff --git a/src/auth/operations/login.ts b/src/auth/operations/login.ts index bc2746de69..4b46a6109a 100644 --- a/src/auth/operations/login.ts +++ b/src/auth/operations/login.ts @@ -10,6 +10,7 @@ import { User } from '../types'; import { Collection } from '../../collections/config/types'; import { afterRead } from '../../fields/hooks/afterRead'; import unlock from './unlock'; +import { buildAfterOperation } from '../../collections/operations/utils'; import { incrementLoginAttempts } from '../strategies/local/incrementLoginAttempts'; import { authenticateLocalStrategy } from '../strategies/local/authenticate'; import { getFieldsToSign } from './getFieldsToSign'; @@ -240,16 +241,29 @@ async function login( }) || user; }, Promise.resolve()); - // ///////////////////////////////////// - // Return results - // ///////////////////////////////////// - if (shouldCommit) await payload.db.commitTransaction(req.transactionID); - - return { + let result: Result & { user: GeneratedTypes['collections'][TSlug] } = { token, user, exp: (jwt.decode(token) as jwt.JwtPayload).exp, }; + + // ///////////////////////////////////// + // afterOperation - Collection + // ///////////////////////////////////// + + result = await buildAfterOperation({ + operation: 'login', + args, + result, + }); + + // ///////////////////////////////////// + // Return results + // ///////////////////////////////////// + + if (shouldCommit) await payload.db.commitTransaction(req.transactionID); + + return result; } catch (error: unknown) { await killTransaction(req); throw error; diff --git a/src/auth/operations/refresh.ts b/src/auth/operations/refresh.ts index aef6896606..6ae63854ed 100644 --- a/src/auth/operations/refresh.ts +++ b/src/auth/operations/refresh.ts @@ -1,11 +1,12 @@ +import url from 'url'; import jwt from 'jsonwebtoken'; import { Response } from 'express'; -import url from 'url'; import { Collection, BeforeOperationHook } from '../../collections/config/types'; import { Forbidden } from '../../errors'; import getCookieExpiration from '../../utilities/getCookieExpiration'; import { Document } from '../../types'; import { PayloadRequest } from '../../express/types'; +import { buildAfterOperation } from '../../collections/operations/utils'; import { getFieldsToSign } from './getFieldsToSign'; export type Result = { @@ -97,7 +98,7 @@ async function refresh(incomingArgs: Arguments): Promise { args.res.cookie(`${config.cookiePrefix}-token`, refreshedToken, cookieOptions); } - let response: Result = { + let result: Result = { user, refreshedToken, exp, @@ -110,20 +111,31 @@ async function refresh(incomingArgs: Arguments): Promise { await collectionConfig.hooks.afterRefresh.reduce(async (priorHook, hook) => { await priorHook; - response = (await hook({ + result = (await hook({ req: args.req, res: args.res, exp, token: refreshedToken, context: args.req.context, - })) || response; + })) || result; }, Promise.resolve()); + + // ///////////////////////////////////// + // afterOperation - Collection + // ///////////////////////////////////// + + result = await buildAfterOperation({ + operation: 'refresh', + args, + result, + }); + // ///////////////////////////////////// // Return results // ///////////////////////////////////// - return response; + return result; } export default refresh; diff --git a/src/bin/index.ts b/src/bin/index.ts index a85bf7d863..ff12d162f0 100755 --- a/src/bin/index.ts +++ b/src/bin/index.ts @@ -17,7 +17,7 @@ const swcOptions = { tsx: true, }, paths: undefined, - baseUrl: __dirname, + baseUrl: path.resolve(), }, module: { type: 'commonjs', diff --git a/src/collections/config/defaults.ts b/src/collections/config/defaults.ts index fde30c9eca..7972c72c36 100644 --- a/src/collections/config/defaults.ts +++ b/src/collections/config/defaults.ts @@ -29,6 +29,7 @@ export const defaults = { afterRead: [], beforeDelete: [], afterDelete: [], + afterOperation: [], beforeLogin: [], afterLogin: [], afterLogout: [], diff --git a/src/collections/config/schema.ts b/src/collections/config/schema.ts index 0e089815d6..984c28f2fe 100644 --- a/src/collections/config/schema.ts +++ b/src/collections/config/schema.ts @@ -103,6 +103,7 @@ const collectionSchema = joi.object().keys({ afterRead: joi.array().items(joi.func()), beforeDelete: joi.array().items(joi.func()), afterDelete: joi.array().items(joi.func()), + afterOperation: joi.array().items(joi.func()), beforeLogin: joi.array().items(joi.func()), afterLogin: joi.array().items(joi.func()), afterLogout: joi.array().items(joi.func()), diff --git a/src/collections/config/types.ts b/src/collections/config/types.ts index 79451ce2fa..2567ced913 100644 --- a/src/collections/config/types.ts +++ b/src/collections/config/types.ts @@ -15,6 +15,7 @@ import { CustomSaveButtonProps, CustomSaveDraftButtonProps, } from '../../admin/components/elements/types'; +import { AfterOperationArg, AfterOperationMap } from '../operations/utils'; import type { Props as ListProps } from '../../admin/components/views/collections/List/types'; import type { Props as EditProps } from '../../admin/components/views/collections/Edit/types'; @@ -110,6 +111,13 @@ export type AfterDeleteHook = (args: { context: RequestContext; }) => any; + +export type AfterOperationHook< + T extends TypeWithID = any, +> = ( + arg: AfterOperationArg, + ) => Promise[keyof AfterOperationMap]>>; + export type AfterErrorHook = (err: Error, res: unknown, context: RequestContext) => { response: any, status: number } | void; export type BeforeLoginHook = (args: { @@ -301,6 +309,7 @@ export type CollectionConfig = { afterMe?: AfterMeHook[]; afterRefresh?: AfterRefreshHook[]; afterForgotPassword?: AfterForgotPasswordHook[]; + afterOperation?: AfterOperationHook[]; }; /** * Custom rest api endpoints, set false to disable all rest endpoints for this collection. diff --git a/src/collections/operations/create.ts b/src/collections/operations/create.ts index 45e7b05568..e5f51365fa 100644 --- a/src/collections/operations/create.ts +++ b/src/collections/operations/create.ts @@ -22,13 +22,16 @@ import { afterRead } from '../../fields/hooks/afterRead'; import { generateFileData } from '../../uploads/generateFileData'; import { saveVersion } from '../../versions/saveVersion'; import { mapAsync } from '../../utilities/mapAsync'; +import { buildAfterOperation } from './utils'; import { registerLocalStrategy } from '../../auth/strategies/local/register'; import { initTransaction } from '../../utilities/initTransaction'; import { killTransaction } from '../../utilities/killTransaction'; const unlinkFile = promisify(fs.unlink); -export type Arguments = { +export type CreateUpdateType = { [field: string | number | symbol]: unknown } + +export type Arguments = { collection: Collection req: PayloadRequest depth?: number @@ -349,6 +352,17 @@ async function create( }) || result; }, Promise.resolve()); + // ///////////////////////////////////// + // afterOperation - Collection + // ///////////////////////////////////// + + result = await buildAfterOperation({ + operation: 'create', + args, + result, + }); + + // Remove temp files if enabled, as express-fileupload does not do this automatically if (config.upload?.useTempFiles && collectionConfig.upload) { const { files } = req; diff --git a/src/collections/operations/delete.ts b/src/collections/operations/delete.ts index c3d7bb4c61..26dd793030 100644 --- a/src/collections/operations/delete.ts +++ b/src/collections/operations/delete.ts @@ -14,6 +14,7 @@ import { validateQueryPaths } from '../../database/queryValidation/validateQuery import { combineQueries } from '../../database/combineQueries'; import { initTransaction } from '../../utilities/initTransaction'; import { killTransaction } from '../../utilities/killTransaction'; +import { buildAfterOperation } from './utils'; export type Arguments = { depth?: number @@ -247,12 +248,24 @@ async function deleteOperation({ + operation: 'delete', + args, + result, + }); + + if (shouldCommit) await payload.db.commitTransaction(req.transactionID); + + return result; } catch (error: unknown) { await killTransaction(req); throw error; diff --git a/src/collections/operations/deleteByID.ts b/src/collections/operations/deleteByID.ts index 807811219b..b01644533c 100644 --- a/src/collections/operations/deleteByID.ts +++ b/src/collections/operations/deleteByID.ts @@ -12,6 +12,7 @@ import { combineQueries } from '../../database/combineQueries'; import { deleteUserPreferences } from '../../preferences/deleteUserPreferences'; import { killTransaction } from '../../utilities/killTransaction'; import { initTransaction } from '../../utilities/initTransaction'; +import { buildAfterOperation } from './utils'; export type Arguments = { depth?: number @@ -192,6 +193,16 @@ async function deleteByID(inc }) || result; }, Promise.resolve()); + // ///////////////////////////////////// + // afterOperation - Collection + // ///////////////////////////////////// + + result = await buildAfterOperation({ + operation: 'deleteByID', + args, + result, + }); + // ///////////////////////////////////// // 8. Return results // ///////////////////////////////////// diff --git a/src/collections/operations/find.ts b/src/collections/operations/find.ts index e31e797ffc..5ee5feaa85 100644 --- a/src/collections/operations/find.ts +++ b/src/collections/operations/find.ts @@ -11,6 +11,7 @@ import { buildVersionCollectionFields } from '../../versions/buildCollectionFiel import { combineQueries } from '../../database/combineQueries'; import { initTransaction } from '../../utilities/initTransaction'; import { killTransaction } from '../../utilities/killTransaction'; +import { buildAfterOperation } from './utils'; export type Arguments = { collection: Collection @@ -234,6 +235,16 @@ async function find>( })), }; + // ///////////////////////////////////// + // afterOperation - Collection + // ///////////////////////////////////// + + result = await buildAfterOperation({ + operation: 'find', + args, + result, + }); + // ///////////////////////////////////// // Return results // ///////////////////////////////////// diff --git a/src/collections/operations/findByID.ts b/src/collections/operations/findByID.ts index e628c842c5..b3eb8d9838 100644 --- a/src/collections/operations/findByID.ts +++ b/src/collections/operations/findByID.ts @@ -10,6 +10,7 @@ import { combineQueries } from '../../database/combineQueries'; import type { FindOneArgs } from '../../database/types'; import { initTransaction } from '../../utilities/initTransaction'; import { killTransaction } from '../../utilities/killTransaction'; +import { buildAfterOperation } from './utils'; export type Arguments = { collection: Collection @@ -192,6 +193,16 @@ async function findByID( }) || result; }, Promise.resolve()); + // ///////////////////////////////////// + // afterOperation - Collection + // ///////////////////////////////////// + + result = await buildAfterOperation({ + operation: 'findByID', + args, + result: result as any, + }); // TODO: fix this typing + // ///////////////////////////////////// // Return results // ///////////////////////////////////// diff --git a/src/collections/operations/update.ts b/src/collections/operations/update.ts index 2e883a1188..165cf068c2 100644 --- a/src/collections/operations/update.ts +++ b/src/collections/operations/update.ts @@ -22,8 +22,10 @@ import { appendVersionToQueryKey } from '../../versions/drafts/appendVersionToQu import { buildVersionCollectionFields } from '../../versions/buildCollectionFields'; import { initTransaction } from '../../utilities/initTransaction'; import { killTransaction } from '../../utilities/killTransaction'; +import { CreateUpdateType } from './create'; +import { buildAfterOperation } from './utils'; -export type Arguments = { +export type Arguments = { collection: Collection req: PayloadRequest where: Where @@ -361,6 +363,7 @@ async function update( collectionConfig, }); + // ///////////////////////////////////// // Return results // ///////////////////////////////////// @@ -377,12 +380,24 @@ async function update( const awaitedDocs = await Promise.all(promises); - if (shouldCommit) await payload.db.commitTransaction(req.transactionID); - - return { + let result = { docs: awaitedDocs.filter(Boolean), errors, }; + + // ///////////////////////////////////// + // afterOperation - Collection + // ///////////////////////////////////// + + result = await buildAfterOperation({ + operation: 'update', + args, + result, + }); + + if (shouldCommit) await payload.db.commitTransaction(req.transactionID); + + return result; } catch (error: unknown) { await killTransaction(req); throw error; diff --git a/src/collections/operations/updateByID.ts b/src/collections/operations/updateByID.ts index 56e22c241b..ae57a9da49 100644 --- a/src/collections/operations/updateByID.ts +++ b/src/collections/operations/updateByID.ts @@ -16,6 +16,7 @@ import { generateFileData } from '../../uploads/generateFileData'; import { getLatestCollectionVersion } from '../../versions/getLatestCollectionVersion'; import { deleteAssociatedFiles } from '../../uploads/deleteAssociatedFiles'; import { unlinkTempFiles } from '../../uploads/unlinkTempFiles'; +import { buildAfterOperation } from './utils'; import { generatePasswordSaltHash } from '../../auth/strategies/local/generatePasswordSaltHash'; import { combineQueries } from '../../database/combineQueries'; import type { FindOneArgs } from '../../database/types'; @@ -341,6 +342,16 @@ async function updateByID( }) || result; }, Promise.resolve()); + // ///////////////////////////////////// + // afterOperation - Collection + // ///////////////////////////////////// + + result = await buildAfterOperation({ + operation: 'updateByID', + args, + result, + }); + await unlinkTempFiles({ req, config, diff --git a/src/collections/operations/utils.ts b/src/collections/operations/utils.ts new file mode 100644 index 0000000000..d27974c77d --- /dev/null +++ b/src/collections/operations/utils.ts @@ -0,0 +1,71 @@ +import find from './find'; +import update from './update'; +import deleteOperation from './delete'; +import create from './create'; +import login from '../../auth/operations/login'; +import refresh from '../../auth/operations/refresh'; +import findByID from './findByID'; +import updateByID from './updateByID'; +import deleteByID from './deleteByID'; +import { AfterOperationHook, TypeWithID } from '../config/types'; +import forgotPassword from '../../auth/operations/forgotPassword'; + +export type AfterOperationMap< + T extends TypeWithID, +> = { + create: typeof create, // todo: pass correct generic + find: typeof find, + findByID: typeof findByID, + update: typeof update, // todo: pass correct generic + updateByID: typeof updateByID, // todo: pass correct generic + delete: typeof deleteOperation, // todo: pass correct generic + deleteByID: typeof deleteByID, // todo: pass correct generic + login: typeof login, + refresh: typeof refresh, + forgotPassword: typeof forgotPassword, +} +export type AfterOperationArg = + | { operation: 'create'; result: Awaited['create']>>, args: Parameters['create']>[0] } + | { operation: 'find'; result: Awaited['find']>>, args: Parameters['find']>[0] } + | { operation: 'findByID'; result: Awaited['findByID']>>, args: Parameters['findByID']>[0] } + | { operation: 'update'; result: Awaited['update']>>, args: Parameters['update']>[0] } + | { operation: 'updateByID'; result: Awaited['updateByID']>>, args: Parameters['updateByID']>[0] } + | { operation: 'delete'; result: Awaited['delete']>>, args: Parameters['delete']>[0] } + | { operation: 'deleteByID'; result: Awaited['deleteByID']>>, args: Parameters['deleteByID']>[0] } + | { operation: 'login'; result: Awaited['login']>>, args: Parameters['login']>[0] } + | { operation: 'refresh'; result: Awaited['refresh']>>, args: Parameters['refresh']>[0] } + | { operation: 'forgotPassword'; result: Awaited['forgotPassword']>>, args: Parameters['forgotPassword']>[0] }; + +// export type AfterOperationHook = typeof buildAfterOperation; + +export const buildAfterOperation = async < + T extends TypeWithID = any, + O extends keyof AfterOperationMap = keyof AfterOperationMap +> +( + operationArgs: AfterOperationArg & { operation: O }, +): Promise[O]>>> => { + const { + operation, + args, + result, + } = operationArgs; + + let newResult = result; + + await args.collection.config.hooks.afterOperation.reduce(async (priorHook, hook: AfterOperationHook) => { + await priorHook; + + const hookResult = await hook({ + operation, + args, + result: newResult, + } as AfterOperationArg); + + if (hookResult !== undefined) { + newResult = hookResult; + } + }, Promise.resolve()); + + return newResult; +}; diff --git a/src/config/sanitize.ts b/src/config/sanitize.ts index 32cf81e9c0..efc3710d7b 100644 --- a/src/config/sanitize.ts +++ b/src/config/sanitize.ts @@ -1,6 +1,6 @@ import merge from 'deepmerge'; import { isPlainObject } from 'is-plain-object'; -import { Config, SanitizedConfig } from './types'; +import type { Config, LocalizationConfigWithLabels, LocalizationConfigWithNoLabels, SanitizedConfig, SanitizedLocalizationConfig } from './types'; import { defaultUserCollection } from '../auth/defaultUser'; import sanitizeCollection from '../collections/config/sanitize'; import { InvalidConfiguration } from '../errors'; @@ -11,58 +11,84 @@ import getPreferencesCollection from '../preferences/preferencesCollection'; import { migrationsCollection } from '../database/migrations/migrationsCollection'; import getDefaultBundler from '../bundlers/webpack/bundler'; -const sanitizeAdmin = (config: SanitizedConfig): SanitizedConfig['admin'] => { - const adminConfig = config.admin; +const sanitizeAdminConfig = (configToSanitize: Config): Partial => { + const sanitizedConfig = { ...configToSanitize }; // add default user collection if none provided - if (!adminConfig?.user) { - const firstCollectionWithAuth = config.collections.find(({ auth }) => Boolean(auth)); + if (!sanitizedConfig?.admin?.user) { + const firstCollectionWithAuth = sanitizedConfig.collections.find(({ auth }) => Boolean(auth)); if (firstCollectionWithAuth) { - adminConfig.user = firstCollectionWithAuth.slug; + sanitizedConfig.admin.user = firstCollectionWithAuth.slug; } else { - adminConfig.user = 'users'; - const sanitizedDefaultUser = sanitizeCollection(config, defaultUserCollection); - config.collections.push(sanitizedDefaultUser); + sanitizedConfig.admin.user = defaultUserCollection.slug; + sanitizedConfig.collections.push(defaultUserCollection); } } - if (!config.collections.find(({ slug }) => slug === adminConfig.user)) { - throw new InvalidConfiguration(`${config.admin.user} is not a valid admin user collection`); + if (!sanitizedConfig.collections.find(({ slug }) => slug === sanitizedConfig.admin.user)) { + throw new InvalidConfiguration(`${sanitizedConfig.admin.user} is not a valid admin user collection`); } // add default bundler if none provided - if (!adminConfig.bundler) { - adminConfig.bundler = getDefaultBundler(); + if (!sanitizedConfig.admin.bundler) { + sanitizedConfig.admin.bundler = getDefaultBundler(); } - return adminConfig; + return sanitizedConfig as Partial; }; -export const sanitizeConfig = (config: Config): SanitizedConfig => { - const sanitizedConfig: Config = merge(defaults, config, { +export const sanitizeConfig = (incomingConfig: Config): SanitizedConfig => { + const configWithDefaults: Config = merge(defaults, incomingConfig, { isMergeableObject: isPlainObject, }) as Config; - sanitizedConfig.admin = sanitizeAdmin(sanitizedConfig as SanitizedConfig); + const config: Partial = sanitizeAdminConfig(configWithDefaults); - sanitizedConfig.collections.push(getPreferencesCollection(sanitizedConfig)); + if (config.localization && config.localization.locales?.length > 0) { + // clone localization config so to not break everything + const firstLocale = config.localization.locales[0]; + if (typeof firstLocale === 'string') { + (config.localization as SanitizedLocalizationConfig).localeCodes = [...(config.localization as unknown as LocalizationConfigWithNoLabels).locales]; - sanitizedConfig.collections.push(migrationsCollection); + // is string[], so convert to Locale[] + (config.localization as SanitizedLocalizationConfig).locales = (config.localization as unknown as LocalizationConfigWithNoLabels).locales.map((locale) => ({ + label: locale, + code: locale, + rtl: false, + toString: () => locale, + })); + } else { + // is Locale[], so convert to string[] for localeCodes + (config.localization as SanitizedLocalizationConfig).localeCodes = (config.localization as SanitizedLocalizationConfig).locales.reduce((locales, locale) => { + locales.push(locale.code); + return locales; + }, [] as string[]); - sanitizedConfig.collections = sanitizedConfig.collections.map((collection) => sanitizeCollection(sanitizedConfig, collection)); - checkDuplicateCollections(sanitizedConfig.collections); - - if (sanitizedConfig.globals.length > 0) { - sanitizedConfig.globals = sanitizeGlobals(sanitizedConfig.collections, sanitizedConfig.globals); + (config.localization as SanitizedLocalizationConfig).locales = (config.localization as LocalizationConfigWithLabels).locales.map((locale) => ({ + ...locale, + toString: () => locale.code, + })); + } } - if (typeof sanitizedConfig.serverURL === 'undefined') { - sanitizedConfig.serverURL = ''; + + configWithDefaults.collections.push(getPreferencesCollection(configWithDefaults)); + configWithDefaults.collections.push(migrationsCollection); + + config.collections = config.collections.map((collection) => sanitizeCollection(configWithDefaults, collection)); + checkDuplicateCollections(config.collections); + + if (config.globals.length > 0) { + config.globals = sanitizeGlobals(config.collections, config.globals); } - if (sanitizedConfig.serverURL !== '') { - sanitizedConfig.csrf.push(sanitizedConfig.serverURL); + if (typeof config.serverURL === 'undefined') { + config.serverURL = ''; } - return sanitizedConfig as SanitizedConfig; + if (config.serverURL !== '') { + config.csrf.push(config.serverURL); + } + + return config as SanitizedConfig; }; diff --git a/src/config/schema.ts b/src/config/schema.ts index a1999378fe..22cfb2ac55 100644 --- a/src/config/schema.ts +++ b/src/config/schema.ts @@ -163,15 +163,25 @@ export default joi.object({ disable: joi.boolean(), schemaOutputFile: joi.string(), }), - localization: joi.alternatives() - .try( - joi.object().keys({ - locales: joi.array().items(joi.string()), - defaultLocale: joi.string(), - fallback: joi.boolean(), - }), - joi.boolean(), - ), + localization: joi.alternatives().try( + joi.object().keys({ + locales: joi.alternatives().try( + joi.array().items( + joi.object().keys({ + label: joi.string(), + code: joi.string(), + rtl: joi.boolean(), + toString: joi.func(), + }), + ), + joi.array().items(joi.string()), + ), + localeCodes: joi.array().items(joi.string()), + defaultLocale: joi.string(), + fallback: joi.boolean(), + }), + joi.boolean(), + ), hooks: joi.object().keys({ afterError: joi.func(), }), diff --git a/src/config/types.ts b/src/config/types.ts index 8173a85d31..b55c482581 100644 --- a/src/config/types.ts +++ b/src/config/types.ts @@ -17,6 +17,10 @@ import { User } from '../auth/types'; import { DatabaseAdapter } from '../database/types'; import type { PayloadBundler } from '../bundlers/types'; +type Prettify = { + [K in keyof T]: T[K]; +} & NonNullable; + type Email = { fromName: string; fromAddress: string; @@ -208,24 +212,74 @@ export type AdminRoute = { sensitive?: boolean; }; -/** - * @see https://payloadcms.com/docs/configuration/localization#localization - */ -export type LocalizationConfig = { +export type Locale = { /** - * List of supported locales - * @exanple `["en", "es", "fr", "nl", "de", "jp"]` + * label of supported locale + * @example "English" */ - locales: string[]; + label: string; + /** + * value of supported locale + * @example "en" + */ + code: string; + /** + * if true, defaults textAligmnent on text fields to RTL + */ + rtl?: boolean; +}; + +export type BaseLocalizationConfig = { /** * Locale for users that have not expressed their preference for a specific locale - * @exanple `"en"` + * @example `"en"` */ defaultLocale: string; /** Set to `true` to let missing values in localised fields fall back to the values in `defaultLocale` */ fallback?: boolean; }; +export type LocalizationConfigWithNoLabels = Prettify< + BaseLocalizationConfig & { + /** + * List of supported locales + * @example `["en", "es", "fr", "nl", "de", "jp"]` + */ + locales: string[]; + } +>; + +export type LocalizationConfigWithLabels = Prettify< + BaseLocalizationConfig & { + /** + * List of supported locales with labels + * @example { + * label: 'English', + * value: 'en', + * rtl: false + * } + */ + locales: Locale[]; + } +>; + +export type SanitizedLocalizationConfig = Prettify< +LocalizationConfigWithLabels & { + /** + * List of supported locales + * @example `["en", "es", "fr", "nl", "de", "jp"]` + */ + localeCodes: string[]; +} +>; + +/** + * @see https://payloadcms.com/docs/configuration/localization#localization + */ +export type LocalizationConfig = Prettify< + LocalizationConfigWithNoLabels | LocalizationConfigWithLabels +>; + /** * This is the central configuration * @@ -315,8 +369,8 @@ export type Config = { */ afterDashboard?: React.ComponentType[]; /** - * Add custom components before the email/password field - */ + * Add custom components before the email/password field + */ beforeLogin?: React.ComponentType[]; /** * Add custom components after the email/password field @@ -482,7 +536,7 @@ export type Config = { * window: 15 * 60 * 100, // 1.5 minutes, * max: 500, * } - */ + */ rateLimit?: { window?: number; max?: number; @@ -554,16 +608,17 @@ export type Config = { export type SanitizedConfig = Omit< DeepRequired, - 'collections' | 'globals' | 'endpoint' + 'collections' | 'globals' | 'endpoint' | 'localization' > & { collections: SanitizedCollectionConfig[]; globals: SanitizedGlobalConfig[]; endpoints: Endpoint[]; paths: { - configDir: string - config: string - rawConfig: string + configDir: string; + config: string; + rawConfig: string; }; + localization: false | SanitizedLocalizationConfig; }; export type EntityDescription = diff --git a/src/database/flattenWhereToOperators.ts b/src/database/flattenWhereToOperators.ts index 35a9f5a7f2..f72fd81fe6 100644 --- a/src/database/flattenWhereToOperators.ts +++ b/src/database/flattenWhereToOperators.ts @@ -1,23 +1,21 @@ import { Where, WhereField } from '../types'; -// Take a where query and flatten it to all top-level operators -const flattenWhereToOperators = (query: Where): WhereField[] => Object.entries(query).reduce((flattenedConstraints, [key, val]) => { - if ((key === 'and' || key === 'or') && Array.isArray(val)) { +/** + * Take a where query and flatten it to all top-level operators + */ +const flattenWhereToOperators = (query: Where): WhereField[] => Object.entries(query) + .reduce((flattenedConstraints, [key, val]) => { + if ((key === 'and' || key === 'or') && Array.isArray(val)) { + return [ + ...flattenedConstraints, + ...val.map((subVal) => flattenWhereToOperators(subVal)), + ]; + } + return [ ...flattenedConstraints, - ...val.reduce((subVals, subVal) => { - return [ - ...subVals, - ...flattenWhereToOperators(subVal), - ]; - }, []), + { [key]: val }, ]; - } - - return [ - ...flattenedConstraints, - val, - ]; -}, []); + }, []); export default flattenWhereToOperators; diff --git a/src/database/getLocalizedPaths.ts b/src/database/getLocalizedPaths.ts index 80d2a072c5..674b9f9c2e 100644 --- a/src/database/getLocalizedPaths.ts +++ b/src/database/getLocalizedPaths.ts @@ -64,7 +64,7 @@ export async function getLocalizedPaths({ } const nextSegment = pathSegments[i + 1]; - const nextSegmentIsLocale = localizationConfig && localizationConfig.locales.includes(nextSegment); + const nextSegmentIsLocale = localizationConfig && localizationConfig.localeCodes.includes(nextSegment); if (nextSegmentIsLocale) { // Skip the next iteration, because it's a locale diff --git a/src/database/queryValidation/types.ts b/src/database/queryValidation/types.ts index 1adc876454..829f0aae7b 100644 --- a/src/database/queryValidation/types.ts +++ b/src/database/queryValidation/types.ts @@ -1,8 +1,6 @@ import { CollectionPermission, GlobalPermission } from '../../auth'; import { Field, FieldAffectingData, TabAsField, UIField } from '../../fields/config/types'; -export const validOperators = ['like', 'contains', 'in', 'all', 'not_in', 'greater_than_equal', 'greater_than', 'less_than_equal', 'less_than', 'not_equals', 'equals', 'exists', 'near']; - export type EntityPolicies = { collections?: { [collectionSlug: string]: CollectionPermission; diff --git a/src/database/queryValidation/validateQueryPaths.ts b/src/database/queryValidation/validateQueryPaths.ts index c686a70edb..03190ecaab 100644 --- a/src/database/queryValidation/validateQueryPaths.ts +++ b/src/database/queryValidation/validateQueryPaths.ts @@ -1,6 +1,6 @@ /* eslint-disable no-restricted-syntax */ /* eslint-disable no-await-in-loop */ -import { PayloadRequest, Where, WhereField } from '../../types'; +import { Operator, PayloadRequest, Where } from '../../types'; import QueryError from '../../errors/QueryError'; import { SanitizedCollectionConfig } from '../../collections/config/types'; import { SanitizedGlobalConfig } from '../../globals/config/types'; @@ -8,21 +8,9 @@ import flattenFields from '../../utilities/flattenTopLevelFields'; import { Field, FieldAffectingData } from '../../fields/config/types'; import { validateSearchParam } from './validateSearchParams'; import deepCopyObject from '../../utilities/deepCopyObject'; -import { EntityPolicies, validOperators } from './types'; - -const flattenWhere = (query: Where): WhereField[] => Object.entries(query).reduce((flattenedConstraints, [key, val]) => { - if ((key === 'and' || key === 'or') && Array.isArray(val)) { - return [ - ...flattenedConstraints, - ...val.map((subVal) => flattenWhere(subVal)), - ]; - } - - return [ - ...flattenedConstraints, - { [key]: val }, - ]; -}, []); +import { EntityPolicies } from './types'; +import flattenWhereToOperators from '../flattenWhereToOperators'; +import { validOperators } from '../../types/constants'; type Args = { where: Where @@ -54,13 +42,13 @@ export async function validateQueryPaths({ const fields = flattenFields(versionFields || (globalConfig || collectionConfig).fields) as FieldAffectingData[]; if (typeof where === 'object') { // const flattenedWhere = flattenWhere(where); - const whereFields = flattenWhere(where); + const whereFields = flattenWhereToOperators(where); // We need to determine if the whereKey is an AND, OR, or a schema path const promises = []; whereFields.map(async (constraint) => { Object.keys(constraint).map(async (path) => { Object.entries(constraint[path]).map(async ([operator, val]) => { - if (validOperators.includes(operator)) { + if (validOperators.includes(operator as Operator)) { promises.push(validateSearchParam({ collectionConfig: deepCopyObject(collectionConfig), globalConfig: deepCopyObject(globalConfig), diff --git a/src/express/middleware/i18n.ts b/src/express/middleware/i18n.ts index 2df96d4509..d2c1d61194 100644 --- a/src/express/middleware/i18n.ts +++ b/src/express/middleware/i18n.ts @@ -6,7 +6,7 @@ import { Handler } from 'express'; import { defaultOptions } from '../../translations/defaultOptions'; const i18nMiddleware = (options: InitOptions): Handler => { - i18next.use(i18nHTTPMiddleware.LanguageDetector) + i18next.use(new i18nHTTPMiddleware.LanguageDetector(defaultOptions.detection)) .init({ preload: defaultOptions.supportedLngs, ...deepmerge(defaultOptions, options || {}), diff --git a/src/fields/config/schema.ts b/src/fields/config/schema.ts index 0ab85aec6f..f6f91c034b 100644 --- a/src/fields/config/schema.ts +++ b/src/fields/config/schema.ts @@ -80,6 +80,7 @@ export const text = baseField.keys({ joi.string(), ), autoComplete: joi.string(), + rtl: joi.boolean(), }), }); @@ -116,6 +117,7 @@ export const textarea = baseField.keys({ admin: baseAdminFields.keys({ placeholder: joi.string(), rows: joi.number(), + rtl: joi.boolean(), }), }); @@ -446,6 +448,7 @@ export const richText = baseField.keys({ joi.func(), ), }), + rtl: joi.boolean(), }), }); diff --git a/src/fields/config/types.ts b/src/fields/config/types.ts index e5203a7959..50155db2e5 100644 --- a/src/fields/config/types.ts +++ b/src/fields/config/types.ts @@ -165,6 +165,7 @@ export type TextField = FieldBase & { admin?: Admin & { placeholder?: Record | string autoComplete?: string + rtl?: boolean } } @@ -183,6 +184,7 @@ export type TextareaField = FieldBase & { admin?: Admin & { placeholder?: Record | string rows?: number + rtl?: boolean } } @@ -411,6 +413,7 @@ export type RichTextField = FieldBase & { link?: { fields?: Field[] | ((args: { defaultFields: Field[], config: SanitizedConfig, i18n: Ii18n }) => Field[]); } + rtl?: boolean } } diff --git a/src/fields/hooks/beforeChange/promise.ts b/src/fields/hooks/beforeChange/promise.ts index 5d7185b4f3..f13e3564fb 100644 --- a/src/fields/hooks/beforeChange/promise.ts +++ b/src/fields/hooks/beforeChange/promise.ts @@ -3,10 +3,8 @@ import merge from 'deepmerge'; import { Field, fieldAffectsData, TabAsField, tabHasName } from '../../config/types'; import { Operation } from '../../../types'; import { PayloadRequest, RequestContext } from '../../../express/types'; -import getValueWithDefault from '../../getDefaultValue'; import { traverseFields } from './traverseFields'; import { getExistingRowDoc } from './getExistingRowDoc'; -import { cloneDataFromOriginalDoc } from './cloneDataFromOriginalDoc'; type Args = { data: Record @@ -28,8 +26,6 @@ type Args = { // This function is responsible for the following actions, in order: // - Run condition -// - Merge original document data into incoming data -// - Compute default values for undefined fields // - Execute field hooks // - Validate data // - Transform data for storage @@ -59,26 +55,6 @@ export const promise = async ({ const operationLocale = req.locale || defaultLocale; if (fieldAffectsData(field)) { - if (typeof siblingData[field.name] === 'undefined') { - // If no incoming data, but existing document data is found, merge it in - if (typeof siblingDoc[field.name] !== 'undefined') { - if (field.localized && typeof siblingDocWithLocales[field.name] === 'object' && siblingDocWithLocales[field.name] !== null) { - siblingData[field.name] = cloneDataFromOriginalDoc(siblingDocWithLocales[field.name][req.locale]); - } else { - siblingData[field.name] = cloneDataFromOriginalDoc(siblingDoc[field.name]); - } - - // Otherwise compute default value - } else if (typeof field.defaultValue !== 'undefined') { - siblingData[field.name] = await getValueWithDefault({ - value: siblingData[field.name], - defaultValue: field.defaultValue, - locale: req.locale, - user: req.user, - }); - } - } - // skip validation if the field is localized and the incoming data is null if (field.localized && operationLocale !== defaultLocale) { if (['array', 'blocks'].includes(field.type) && siblingData[field.name] === null) { @@ -150,7 +126,8 @@ export const promise = async ({ if (field.localized) { mergeLocaleActions.push(() => { if (req.payload.config.localization) { - const localeData = req.payload.config.localization.locales.reduce((localizedValues, locale) => { + const { localization } = req.payload.config; + const localeData = localization.localeCodes.reduce((localizedValues, locale) => { const fieldValue = locale === req.locale ? siblingData[field.name] : siblingDocWithLocales?.[field.name]?.[locale]; diff --git a/src/fields/hooks/beforeValidate/promise.ts b/src/fields/hooks/beforeValidate/promise.ts index 5d6e0aa8bd..5f206dc3fc 100644 --- a/src/fields/hooks/beforeValidate/promise.ts +++ b/src/fields/hooks/beforeValidate/promise.ts @@ -1,6 +1,9 @@ /* eslint-disable no-param-reassign */ import { PayloadRequest, RequestContext } from '../../../express/types'; import { Field, fieldAffectsData, TabAsField, tabHasName, valueIsValueWithRelation } from '../../config/types'; +import getValueWithDefault from '../../getDefaultValue'; +import { cloneDataFromOriginalDoc } from '../beforeChange/cloneDataFromOriginalDoc'; +import { getExistingRowDoc } from '../beforeChange/getExistingRowDoc'; import { traverseFields } from './traverseFields'; type Args = { @@ -20,6 +23,8 @@ type Args = { // - Sanitize incoming data // - Execute field hooks // - Execute field access control +// - Merge original document data into incoming data +// - Compute default values for undefined fields export const promise = async ({ data, @@ -189,6 +194,22 @@ export const promise = async ({ delete siblingData[field.name]; } } + + if (typeof siblingData[field.name] === 'undefined') { + // If no incoming data, but existing document data is found, merge it in + if (typeof siblingDoc[field.name] !== 'undefined') { + siblingData[field.name] = cloneDataFromOriginalDoc(siblingDoc[field.name]); + + // Otherwise compute default value + } else if (typeof field.defaultValue !== 'undefined') { + siblingData[field.name] = await getValueWithDefault({ + value: siblingData[field.name], + defaultValue: field.defaultValue, + locale: req.locale, + user: req.user, + }); + } + } } // Traverse subfields @@ -231,7 +252,7 @@ export const promise = async ({ overrideAccess, req, siblingData: row, - siblingDoc: siblingDoc[field.name]?.[i] || {}, + siblingDoc: getExistingRowDoc(row, siblingDoc[field.name]), context, })); }); @@ -258,7 +279,7 @@ export const promise = async ({ overrideAccess, req, siblingData: row, - siblingDoc: siblingDoc[field.name]?.[i] || {}, + siblingDoc: getExistingRowDoc(row, siblingDoc[field.name]), context, })); } @@ -291,8 +312,11 @@ export const promise = async ({ let tabSiblingData; let tabSiblingDoc; if (tabHasName(field)) { - tabSiblingData = typeof siblingData[field.name] === 'object' ? siblingData[field.name] : {}; - tabSiblingDoc = typeof siblingDoc[field.name] === 'object' ? siblingDoc[field.name] : {}; + if (typeof siblingData[field.name] !== 'object') siblingData[field.name] = {}; + if (typeof siblingDoc[field.name] !== 'object') siblingDoc[field.name] = {}; + + tabSiblingData = siblingData[field.name] as Record; + tabSiblingDoc = siblingDoc[field.name] as Record; } else { tabSiblingData = siblingData; tabSiblingDoc = siblingDoc; diff --git a/src/fields/validations.ts b/src/fields/validations.ts index dba7753077..91c0318868 100644 --- a/src/fields/validations.ts +++ b/src/fields/validations.ts @@ -352,8 +352,6 @@ export const relationship: Validate = async type = 'ObjectID'; } - if (typeof requestedID === 'number') return false; - return !isValidID(requestedID, type); }); diff --git a/src/graphql/schema/buildFallbackLocaleInputType.ts b/src/graphql/schema/buildFallbackLocaleInputType.ts index 71e58a0005..aec9358a04 100644 --- a/src/graphql/schema/buildFallbackLocaleInputType.ts +++ b/src/graphql/schema/buildFallbackLocaleInputType.ts @@ -1,15 +1,22 @@ import { GraphQLEnumType } from 'graphql'; -import { LocalizationConfig } from '../../config/types'; +import { SanitizedLocalizationConfig } from '../../config/types'; import formatName from '../utilities/formatName'; -const buildFallbackLocaleInputType = (localization: LocalizationConfig): GraphQLEnumType => new GraphQLEnumType({ - name: 'FallbackLocaleInputType', - values: [...localization.locales, 'none'].reduce((values, locale) => ({ - ...values, - [formatName(locale)]: { - value: locale, - }, - }), {}), -}); +const buildFallbackLocaleInputType = ( + localization: SanitizedLocalizationConfig, +): GraphQLEnumType => { + return new GraphQLEnumType({ + name: 'FallbackLocaleInputType', + values: [...localization.localeCodes, 'none'].reduce( + (values, locale) => ({ + ...values, + [formatName(locale)]: { + value: locale, + }, + }), + {}, + ), + }); +}; export default buildFallbackLocaleInputType; diff --git a/src/graphql/schema/buildLocaleInputType.ts b/src/graphql/schema/buildLocaleInputType.ts index 8ed0843535..fc1d8e2538 100644 --- a/src/graphql/schema/buildLocaleInputType.ts +++ b/src/graphql/schema/buildLocaleInputType.ts @@ -1,16 +1,21 @@ import { GraphQLEnumType, GraphQLScalarType } from 'graphql'; -import { LocalizationConfig } from '../../config/types'; +import type { SanitizedLocalizationConfig } from '../../config/types'; import formatName from '../utilities/formatName'; -const buildLocaleInputType = (localization: LocalizationConfig): GraphQLEnumType | GraphQLScalarType => { +const buildLocaleInputType = ( + localization: SanitizedLocalizationConfig, +): GraphQLEnumType | GraphQLScalarType => { return new GraphQLEnumType({ name: 'LocaleInputType', - values: localization.locales.reduce((values, locale) => ({ - ...values, - [formatName(locale)]: { - value: locale, - }, - }), {}), + values: localization.localeCodes.reduce( + (values, locale) => ({ + ...values, + [formatName(locale)]: { + value: locale, + }, + }), + {}, + ), }); }; diff --git a/src/graphql/schema/buildWhereInputType.ts b/src/graphql/schema/buildWhereInputType.ts index 7be5b2f160..e5c02133cc 100644 --- a/src/graphql/schema/buildWhereInputType.ts +++ b/src/graphql/schema/buildWhereInputType.ts @@ -15,13 +15,20 @@ import formatName from '../utilities/formatName'; import { withOperators } from './withOperators'; import fieldToSchemaMap from './fieldToWhereInputSchemaMap'; -// buildWhereInputType is similar to buildObjectType and operates -// on a field basis with a few distinct differences. -// -// 1. Everything needs to be a GraphQLInputObjectType or scalar / enum -// 2. Relationships, groups, repeaters and flex content are not -// directly searchable. Instead, we need to build a chained pathname -// using dot notation so MongoDB can properly search nested paths. +/** This does as the function name suggests. It builds a where GraphQL input type + * for all the fields which are passed to the function. + * Each field has different operators which may be valid for a where input type. + * For example, a text field may have a "contains" operator, but a number field + * may not. + * + * buildWhereInputType is similar to buildObjectType and operates + * on a field basis with a few distinct differences. + * + * 1. Everything needs to be a GraphQLInputObjectType or scalar / enum + * 2. Relationships, groups, repeaters and flex content are not + * directly searchable. Instead, we need to build a chained pathname + * using dot notation so MongoDB can properly search nested paths. + */ const buildWhereInputType = (name: string, fields: Field[], parentName: string): GraphQLInputObjectType => { // This is the function that builds nested paths for all // field types with nested paths. diff --git a/src/graphql/schema/operators.ts b/src/graphql/schema/operators.ts index 2a2fbc1413..1c41f9d2d8 100644 --- a/src/graphql/schema/operators.ts +++ b/src/graphql/schema/operators.ts @@ -4,6 +4,7 @@ const operators = { contains: ['in', 'not_in', 'all'], comparison: ['greater_than_equal', 'greater_than', 'less_than_equal', 'less_than'], geo: ['near'], + geojson: ['within', 'intersects'], }; export default operators; diff --git a/src/graphql/schema/withOperators.ts b/src/graphql/schema/withOperators.ts index 3308a2b75d..6fba79f709 100644 --- a/src/graphql/schema/withOperators.ts +++ b/src/graphql/schema/withOperators.ts @@ -9,124 +9,211 @@ import operators from './operators'; type staticTypes = 'number' | 'text' | 'email' | 'textarea' | 'richText' | 'json' | 'code' | 'checkbox' | 'date' | 'upload' | 'point' | 'relationship' +type dynamicTypes = 'radio' | 'select' + +const GeoJSONObject = new GraphQLInputObjectType({ + name: 'GeoJSONObject', + fields: { + type: { type: GraphQLString }, + coordinates: { + type: GraphQLJSON, + }, + }, +}); + type DefaultsType = { [key in staticTypes]: { - type: GraphQLType | ((field: FieldAffectingData, parentName: string) => GraphQLType); - operators: string[]; + operators: { + name: string; + type: GraphQLType | ((field: FieldAffectingData, parentName: string) => GraphQLType); + }[]; } } & { - radio: { - type: (field: FieldAffectingData, parentName: string) => GraphQLType; - operators: string[]; - } - select: { - type: (field: FieldAffectingData, parentName: string) => GraphQLType; - operators: string[]; + [key in dynamicTypes]: { + operators: { + name: string; + type: ((field: FieldAffectingData, parentName: string) => GraphQLType); + }[]; } } const defaults: DefaultsType = { number: { - type: (field: NumberField): GraphQLType => { - return field?.name === 'id' ? GraphQLInt : GraphQLFloat; - }, - operators: [...operators.equality, ...operators.comparison], + operators: [ + ...[...operators.equality, ...operators.comparison].map((operator) => ({ + name: operator, + type: (field: NumberField): GraphQLType => { + return field?.name === 'id' ? GraphQLInt : GraphQLFloat; + }, + })), + ], }, text: { - type: GraphQLString, - operators: [...operators.equality, ...operators.partial, ...operators.contains], + operators: [ + ...[...operators.equality, ...operators.partial, ...operators.contains].map((operator) => ({ + name: operator, + type: GraphQLString, + })), + ], }, email: { - type: EmailAddressResolver, - operators: [...operators.equality, ...operators.partial, ...operators.contains], + operators: [ + ...[...operators.equality, ...operators.partial, ...operators.contains].map((operator) => ({ + name: operator, + type: EmailAddressResolver, + })), + ], }, textarea: { - type: GraphQLString, - operators: [...operators.equality, ...operators.partial], + operators: [ + ...[...operators.equality, ...operators.partial].map((operator) => ({ + name: operator, + type: GraphQLString, + })), + ], }, richText: { - type: GraphQLJSON, - operators: [...operators.equality, ...operators.partial], + operators: [ + ...[...operators.equality, ...operators.partial].map((operator) => ({ + name: operator, + type: GraphQLJSON, + })), + ], }, json: { - type: GraphQLJSON, - operators: [...operators.equality, ...operators.partial], + operators: [ + ...[...operators.equality, ...operators.partial, ...operators.geojson].map((operator) => ({ + name: operator, + type: GraphQLJSON, + })), + ], }, code: { - type: GraphQLString, - operators: [...operators.equality, ...operators.partial], + operators: [ + ...[...operators.equality, ...operators.partial].map((operator) => ({ + name: operator, + type: GraphQLString, + })), + ], }, radio: { - type: (field: RadioField, parentName): GraphQLType => new GraphQLEnumType({ - name: `${combineParentName(parentName, field.name)}_Input`, - values: field.options.reduce((values, option) => { - if (optionIsObject(option)) { - return { - ...values, - [formatName(option.value)]: { - value: option.value, - }, - }; - } + operators: [ + ...[...operators.equality, ...operators.partial].map((operator) => ({ + name: operator, + type: (field: RadioField, parentName): GraphQLType => new GraphQLEnumType({ + name: `${combineParentName(parentName, field.name)}_Input`, + values: field.options.reduce((values, option) => { + if (optionIsObject(option)) { + return { + ...values, + [formatName(option.value)]: { + value: option.value, + }, + }; + } - return { - ...values, - [formatName(option)]: { - value: option, - }, - }; - }, {}), - }), - operators: [...operators.equality, ...operators.contains], + return { + ...values, + [formatName(option)]: { + value: option, + }, + }; + }, {}), + }), + })), + ], }, date: { - type: DateTimeResolver, - operators: [...operators.equality, ...operators.comparison, 'like'], + operators: [ + ...[...operators.equality, ...operators.comparison, 'like'].map((operator) => ({ + name: operator, + type: DateTimeResolver, + })), + ], }, point: { - type: new GraphQLList(GraphQLFloat), - operators: [...operators.equality, ...operators.comparison, ...operators.geo], + operators: [ + ...[...operators.equality, ...operators.comparison, ...operators.geo].map((operator) => ({ + name: operator, + type: new GraphQLList(GraphQLFloat), + })), + ...operators.geojson.map((operator) => ({ + name: operator, + /** + * @example: + * within: { + * type: "Polygon", + * coordinates: [[ + * [0.0, 0.0], + * [1.0, 1.0], + * [1.0, 0.0], + * [0.0, 0.0], + * ]], + * } + * @example + * intersects: { + * type: "Point", + * coordinates: [ 0.5, 0.5 ] + * } + */ + type: GeoJSONObject, + })), + ], }, relationship: { - type: (field: RelationshipField): GraphQLType => { - return field?.hasMany === true ? new GraphQLList(GraphQLString) : GraphQLString; - }, - operators: [...operators.equality, ...operators.contains], + operators: [ + ...[...operators.equality, ...operators.contains].map((operator) => ({ + name: operator, + type: GraphQLString, + })), + ], }, upload: { - type: GraphQLString, - operators: [...operators.equality], + operators: [ + ...operators.equality.map((operator) => ({ + name: operator, + type: GraphQLString, + })), + ], }, checkbox: { - type: GraphQLBoolean, - operators: [...operators.equality], + operators: [ + ...operators.equality.map((operator) => ({ + name: operator, + type: GraphQLBoolean, + })), + ], }, select: { - type: (field: SelectField, parentName): GraphQLType => new GraphQLEnumType({ - name: `${combineParentName(parentName, field.name)}_Input`, - values: field.options.reduce((values, option) => { - if (typeof option === 'object' && option.value) { - return { - ...values, - [formatName(option.value)]: { - value: option.value, - }, - }; - } + operators: [ + ...[...operators.equality, ...operators.contains].map((operator) => ({ + name: operator, + type: (field: SelectField, parentName): GraphQLType => new GraphQLEnumType({ + name: `${combineParentName(parentName, field.name)}_Input`, + values: field.options.reduce((values, option) => { + if (typeof option === 'object' && option.value) { + return { + ...values, + [formatName(option.value)]: { + value: option.value, + }, + }; + } - if (typeof option === 'string') { - return { - ...values, - [option]: { - value: option, - }, - }; - } + if (typeof option === 'string') { + return { + ...values, + [option]: { + value: option, + }, + }; + } - return values; - }, {}), - }), - operators: [...operators.equality, ...operators.contains], + return values; + }, {}), + }), + })), + ], }, // array: n/a // group: n/a @@ -137,32 +224,64 @@ const defaults: DefaultsType = { const listOperators = ['in', 'not_in', 'all']; +const gqlTypeCache: Record = {}; + +/** + * In GraphQL, you can use "where" as an argument to filter a collection. Example: + * { Posts(where: { title: { equals: "Hello" } }) { text } } + * This function defines the operators for a field's condition in the "where" argument of the collection (it thus gets called for every field). + * For example, in the example above, it would control that + * - "equals" is a valid operator for the "title" field + * - the accepted type of the "equals" argument has to be a string. + * + * @param field the field for which their valid operators inside a "where" argument is being defined + * @param parentName the name of the parent field (if any) + * @returns all the operators (including their types) which can be used as a condition for a given field inside a where + */ export const withOperators = (field: FieldAffectingData, parentName: string): GraphQLInputObjectType => { if (!defaults?.[field.type]) throw new Error(`Error: ${field.type} has no defaults configured.`); const name = `${combineParentName(parentName, field.name)}_operator`; + // Get the default operators for the field type which are hard-coded above const fieldOperators = [...defaults[field.type].operators]; - if (!('required' in field) || !field.required) fieldOperators.push('exists'); - const initialGqlType: GraphQLType = typeof defaults[field.type].type === 'function' - ? defaults[field.type].type(field, parentName) - : defaults?.[field.type].type; + if (!('required' in field) || !field.required) { + fieldOperators.push({ + name: 'exists', + type: fieldOperators[0].type, + }); + } + return new GraphQLInputObjectType({ name, fields: fieldOperators.reduce((objectTypeFields, operator) => { - let gqlType = initialGqlType; + // Get the type of the operator. It can be either static, or dynamic (=> a function) + let gqlType: GraphQLType = typeof operator.type === 'function' + ? operator.type(field, parentName) + : operator.type; - if (listOperators.includes(operator)) { + // GraphQL does not allow types with duplicate names, so we use this cache to avoid that. + // Without this, select and radio fields would have the same name, and GraphQL would throw an error + // This usually only happens if a custom type is returned from the operator.type function + if (typeof operator.type === 'function' && 'name' in gqlType) { + if (gqlTypeCache[gqlType.name]) { + gqlType = gqlTypeCache[gqlType.name]; + } else { + gqlTypeCache[gqlType.name] = gqlType; + } + } + + if (listOperators.includes(operator.name)) { gqlType = new GraphQLList(gqlType); - } else if (operator === 'exists') { + } else if (operator.name === 'exists') { gqlType = GraphQLBoolean; } return { ...objectTypeFields, - [operator]: { + [operator.name]: { type: gqlType, }, }; diff --git a/src/localization/middleware.ts b/src/localization/middleware.ts index ada3027d36..4974332d78 100644 --- a/src/localization/middleware.ts +++ b/src/localization/middleware.ts @@ -1,31 +1,37 @@ +import type { SanitizedLocalizationConfig } from '../config/types'; + /** * sets request locale * * @param localization * @returns {Function} */ -export default function localizationMiddleware(localization) { +export default function localizationMiddleware(localization: false | SanitizedLocalizationConfig) { const middleware = (req, res, next) => { if (localization) { - const validLocales = [...localization.locales, 'all']; - const validFallbackLocales = [...localization.locales, 'null']; + const validLocales = [...localization.localeCodes, 'all']; + const validFallbackLocales = [...localization.localeCodes, 'null']; let requestedLocale = req.query.locale || localization.defaultLocale; let requestedFallbackLocale = req.query['fallback-locale'] || localization.defaultLocale; if (req.body) { if (req.body.locale) requestedLocale = req.body.locale; - if (req.body['fallback-locale']) requestedFallbackLocale = req.body['fallback-locale']; + if (req.body['fallback-locale']) { requestedFallbackLocale = req.body['fallback-locale']; } } if (requestedFallbackLocale === 'none') requestedFallbackLocale = 'null'; - if (requestedLocale === '*' || requestedLocale === 'all') requestedLocale = 'all'; + if (requestedLocale === '*' || requestedLocale === 'all') { requestedLocale = 'all'; } if (validLocales.find((locale) => locale === requestedLocale)) { req.locale = requestedLocale; } - if (validFallbackLocales.find((locale) => locale === requestedFallbackLocale)) { + if ( + validFallbackLocales.find( + (locale) => locale === requestedFallbackLocale, + ) + ) { req.fallbackLocale = requestedFallbackLocale; } } diff --git a/src/translations/ar.json b/src/translations/ar.json index 2fe61044d0..a4fa10aaa7 100644 --- a/src/translations/ar.json +++ b/src/translations/ar.json @@ -3,58 +3,58 @@ "authentication": { "account": "الحساب", "accountOfCurrentUser": "حساب المستخدم الحالي", - "alreadyActivated": "تم التفعيل بالفعل", - "alreadyLoggedIn": "تم تسجيل الدخول بالفعل", + "alreadyActivated": "تمّ التّفعيل بالفعل", + "alreadyLoggedIn": "تمّ تسجيل الدّخول بالفعل", "apiKey": "مفتاح API", - "backToLogin": "العودة إلى تسجيل الدخول", - "beginCreateFirstUser": "للبدء، قم بإنشاء مستخدمك الأول.", + "backToLogin": "العودة لتسجيل الدخول", + "beginCreateFirstUser": "للبدء, قم بإنشاء المستخدم الأوّل.", "changePassword": "تغيير كلمة المرور", - "checkYourEmailForPasswordReset": "يرجى التحقق من بريدك الإلكتروني للحصول على رابط يتيح لك إعادة تعيين كلمة المرور بأمان.", - "confirmGeneration": "تأكيد التوليد", + "checkYourEmailForPasswordReset": "تحقّق من بريدك الإلكتروني بحثًا عن رابط يسمح لك بإعادة تعيين كلمة المرور الخاصّة بك بشكل آمن.", + "confirmGeneration": "تأكيد التّوليد", "confirmPassword": "تأكيد كلمة المرور", - "createFirstUser": "إنشاء المستخدم الأول", - "emailNotValid": "البريد الإلكتروني الذي تم تقديمه غير صالح", - "emailSent": "تم إرسال البريد الإلكتروني", - "enableAPIKey": "تمكين مفتاح API", - "failedToUnlock": "فشل في الفتح", - "forceUnlock": "فتح بالقوة", + "createFirstUser": "إنشاء المستخدم الأوّل", + "emailNotValid": "البريد الإلكتروني غير صالح", + "emailSent": "تمّ ارسال البريد الإلكتروني", + "enableAPIKey": "تفعيل مفتاح API", + "failedToUnlock": "فشل فتح القفل", + "forceUnlock": "إجبار فتح القفل", "forgotPassword": "نسيت كلمة المرور", - "forgotPasswordEmailInstructions": "يرجى إدخال بريدك الإلكتروني أدناه. ستتلقى رسالة بريد إلكتروني تحتوي على تعليمات حول كيفية إعادة تعيين كلمة المرور الخاصة بك.", + "forgotPasswordEmailInstructions": "يرجى إدخال البريد الالكتروني أدناه. ستتلقّى رسالة بريد إلكتروني تحتوي على إرشادات حول كيفيّة إعادة تعيين كلمة المرور الخاصّة بك.", "forgotPasswordQuestion": "هل نسيت كلمة المرور؟", "generate": "توليد", "generateNewAPIKey": "توليد مفتاح API جديد", - "generatingNewAPIKeyWillInvalidate": "سيؤدي إنشاء مفتاح API جديد إلى <1>إلغاء صلاحية المفتاح السابق. هل تريد المتابعة؟", - "lockUntil": "الإقفال حتى", - "logBackIn": "تسجيل الدخول مرة أخرى", + "generatingNewAPIKeyWillInvalidate": "سيؤدّي إنشاء مفتاح API جديد إلى <1> إبطال المفتاح السّابق. هل أنت متأكّد أنّك تريد المتابعة؟", + "lockUntil": "قفل حتى", + "logBackIn": "تسجيل الدّخول من جديد", "logOut": "تسجيل الخروج", - "loggedIn": "لتسجيل الدخول باستخدام مستخدم آخر، يجب عليك <0>تسجيل الخروج أولاً.", - "loggedInChangePassword": "لتغيير كلمة المرور الخاصة بك ، انتقل إلى <0>حسابك وقم بتحرير كلمة المرور هناك.", - "loggedOutInactivity": "لقد تم تسجيل خروجك بسبب عدم النشاط.", - "loggedOutSuccessfully": "لقد تم تسجيل الخروج بنجاح.", + "loggedIn": "لتسجيل الدّخول مع مستخدم آخر ، يجب عليك <0> تسجيل الخروج أوّلاً.", + "loggedInChangePassword": "لتغيير كلمة المرور الخاصّة بك ، انتقل إلى <0>حسابك وقم بتعديل كلمة المرور هناك.", + "loggedOutInactivity": "لقد تمّ تسجيل الخروج بسبب عدم النّشاط.", + "loggedOutSuccessfully": "لقد تمّ تسجيل خروجك بنجاح.", "login": "تسجيل الدخول", "loginAttempts": "محاولات تسجيل الدخول", - "loginUser": "مستخدم تسجيل الدخول", - "loginWithAnotherUser": "لتسجيل الدخول باستخدام مستخدم آخر ، يجب عليك <0>تسجيل الخروج أولاً.", + "loginUser": "تسجيل دخول المستخدم", + "loginWithAnotherUser": "لتسجيل الدخول مع مستخدم آخر ، يجب عليك <0> تسجيل الخروج أوّلاً.", "logout": "تسجيل الخروج", "logoutUser": "تسجيل خروج المستخدم", - "newAPIKeyGenerated": "تم إنشاء مفتاح API جديد.", - "newAccountCreated": "تم إنشاء حساب جديد لتتمكن من الوصول إلى {{serverURL}} الرجاء النقر فوق الارتباط التالي أو لصق عنوان URL أدناه في متصفحك للتحقق من بريدك الإلكتروني: {{verificationURL}}
بعد التحقق من بريدك الإلكتروني ، ستتمكن من تسجيل الدخول بنجاح. ", - "newPassword": "كلمة السر الجديدة", + "newAPIKeyGenerated": "تمّ توليد مفتاح API جديد.", + "newAccountCreated": "تمّ إنشاء حساب جديد لتتمكّن من الوصول إلى {{serverURL}} الرّجاء النّقر فوق الرّابط التّالي أو لصق عنوان URL أدناه في متصفّحّك لتأكيد بريدك الإلكتروني : {{verificationURL}}
بعد التّحقّق من بريدك الإلكتروني ، ستتمكّن من تسجيل الدّخول بنجاح.", + "newPassword": "كلمة مرور جديدة", "resetPassword": "إعادة تعيين كلمة المرور", - "resetPasswordExpiration": "انتهاء صلاحية إعادة تعيين كلمة المرور", + "resetPasswordExpiration": "انتهاء صلاحيّة إعادة تعيين كلمة المرور", "resetPasswordToken": "رمز إعادة تعيين كلمة المرور", - "resetYourPassword": "إعادة تعيين كلمة المرور الخاصة بك", - "stayLoggedIn": "ابق متصلا", - "successfullyUnlocked": "تم فتح القفل بنجاح", - "unableToVerify": "غير قادر على التحقق", - "verified": "تم التحقق", - "verifiedSuccessfully": "تم التحقق بنجاح", - "verify": "التحقق", - "verifyUser": "التحقق من المستخدم", - "verifyYourEmail": "تحقق من بريدك الإلكتروني", - "youAreInactive": "لم تكن نشطًا لبعض الوقت وسيتم تسجيل خروجك تلقائيًا قريبًا لأمانك الشخصي. هل تريد البقاء متصلًا؟", - "youAreReceivingResetPassword": "تتلقى هذا لأنك (أو شخص آخر) قد طلب إعادة تعيين كلمة المرور لحسابك. يرجى النقر على الرابط التالي، أو نسخه ولصقه في المتصفح الخاص بك لإكمال العملية:", - "youDidNotRequestPassword": "إذا لم تطلب هذا، يرجى تجاهل هذا البريد الإلكتروني وسيظل كلمة المرور الخاصة بك كما هي." + "resetYourPassword": "إعادة تعيين كلمة المرور الخاصّة بك", + "stayLoggedIn": "ابق متّصلًا", + "successfullyUnlocked": "تمّ فتح القفل بنجاح", + "unableToVerify": "غير قادر على التحقق من", + "verified": "تمّ التحقّق", + "verifiedSuccessfully": "تمّ التحقّق بنجاح", + "verify": "قم بالتّحقّق", + "verifyUser": "قم بالتّحقّق من المستخدم", + "verifyYourEmail": "قم بتأكيد بريدك الألكتروني", + "youAreInactive": "لم تكن نشطًا منذ فترة قصيرة وسيتمّ تسجيل خروجك قريبًا تلقائيًا من أجل أمنك. هل ترغب في البقاء مسجّلا؟", + "youAreReceivingResetPassword": "أنت تتلقّى هذا البريد الالكتروني لأنّك (أو لأنّ شخص آخر) طلبت إعادة تعيين كلمة المرور لحسابك. الرّجاء النّقر فوق الرّابط التّالي ، أو لصق هذا الرّابط في متصفّحك لإكمال العمليّة:", + "youDidNotRequestPassword": "إن لم تطلب هذا ، يرجى تجاهل هذا البريد الإلكتروني وستبقى كلمة مرورك ذاتها بدون تغيير." }, "error": { "accountAlreadyActivated": "تم تفعيل هذا الحساب بالفعل.", @@ -63,116 +63,117 @@ "deletingFile": "حدث خطأ أثناء حذف الملف.", "deletingTitle": "حدث خطأ أثناء حذف {{title}}. يرجى التحقق من الاتصال الخاص بك والمحاولة مرة أخرى.", "emailOrPasswordIncorrect": "البريد الإلكتروني أو كلمة المرور المقدمة غير صحيحة.", - "followingFieldsInvalid_other": "الحقول التالية غير صالحة:", "followingFieldsInvalid_one": "الحقل التالي غير صالح:", + "followingFieldsInvalid_other": "الحقول التالية غير صالحة:", "incorrectCollection": "مجموعة غير صحيحة", "invalidFileType": "نوع ملف غير صالح", "invalidFileTypeValue": "نوع ملف غير صالح: {{value}}", "loadingDocument": "حدثت مشكلة أثناء تحميل المستند برقم التعريف {{id}}.", "missingEmail": "البريد الإلكتروني مفقود.", - "missingIDOfDocument": "معرف المستند الذي يجب تحديثه مفقود.", - "missingIDOfVersion": "معرف الإصدار مفقود.", - "missingRequiredData": "البيانات المطلوبة مفقودة.", - "noFilesUploaded": "لم يتم تحميل أي ملفات.", - "noMatchedField": "لم يتم العثور على حقل مطابق ل\"{{label}}\"", + "missingIDOfDocument": "معرّف المستند المراد تحديثه مفقود.", + "missingIDOfVersion": "معرّف النسخة مفقود.", + "missingRequiredData": "توجد بيانات مطلوبة مفقودة.", + "noFilesUploaded": "لم يتمّ رفع أيّة ملفّات.", + "noMatchedField": "لم يتمّ العثور على حقل مطابق لـ \"{{label}}\"", "noUser": "لا يوجد مستخدم", - "notAllowedToAccessPage": "لا يسمح لك بالوصول إلى هذه الصفحة.", - "notAllowedToPerformAction": "لا يسمح لك بأداء هذا الإجراء.", - "notFound": "لم يتم العثور على المورد المطلوب.", - "previewing": "حدثت مشكلة أثناء معاينة هذا الوثيقة.", - "problemUploadingFile": "حدثت مشكلة أثناء تحميل الملف.", - "tokenInvalidOrExpired": "الرمز غير صالح أو انتهت صلاحيته.", - "unPublishingDocument": "حدثت مشكلة أثناء إلغاء نشر هذه الوثيقة.", - "unableToDeleteCount": "غير قادر على حذف {{count}} من بين {{total}} {{label}}.", - "unableToUpdateCount": "غير قادر على تحديث {{count}} من بين {{total}} {{label}}.", - "unauthorized": "غير مصرح لك، يجب تسجيل الدخول لإجراء هذا الطلب.", + "notAllowedToAccessPage": "لا يسمح لك الوصول إلى هذه الصّفحة.", + "notAllowedToPerformAction": "لا يسمح لك القيام بهذه العمليّة.", + "notFound": "لم يتمّ العثور على المورد المطلوب.", + "previewing": "حدث خطأ في اثناء معاينة هذا المستند.", + "problemUploadingFile": "حدث خطأ اثناء رفع الملفّ.", + "tokenInvalidOrExpired": "الرّمز إمّا غير صالح أو منتهي الصّلاحيّة.", + "unPublishingDocument": "حدث خطأ أثناء إلغاء نشر هذا المستند.", + "unableToDeleteCount": "يتعذّر حذف {{count}} من {{total}} {{label}}.", + "unableToUpdateCount": "يتعذّر تحديث {{count}} من {{total}} {{label}}.", + "unauthorized": "غير مصرّح لك ، عليك أن تقوم بتسجيل الدّخول لتتمكّن من تقديم هذا الطّلب.", "unknown": "حدث خطأ غير معروف.", "unspecific": "حدث خطأ.", - "userLocked": "تم قفل هذا المستخدم بسبب العديد من محاولات تسجيل الدخول الفاشلة.", - "valueMustBeUnique": "يجب أن يكون القيمة فريدة", - "verificationTokenInvalid": "رمز التحقق غير صالح." + "userLocked": "تمّ قفل هذا المستخدم نظرًا لوجود عدد كبير من محاولات تسجيل الدّخول الغير ناجحة.", + "valueMustBeUnique": "على القيمة أن تكون فريدة", + "verificationTokenInvalid": "رمز التحقّق غير صالح." }, "fields": { - "addLabel": "إضافة {{label}}", - "addLink": "إضافة رابط", - "addNew": "إضافة جديد", - "addNewLabel": "إضافة {{label}} جديدة", - "addRelationship": "إضافة علاقة", - "addUpload": "إضافة تحميل", - "block": "منع", - "blockType": "نوع المنع", - "blocks": "المنعات", - "chooseBetweenCustomTextOrDocument": "اختر بين إدخال عنوان URL مخصص أو الربط بمستند آخر.", - "chooseDocumentToLink": "اختر المستند الذي تريد الربط به", - "chooseFromExisting": "اختر من القائمة الموجودة", + "addLabel": "أضف {{label}}", + "addLink": "أضف رابط", + "addNew": "أضف جديد", + "addNewLabel": "أضف {{label}} جديد", + "addRelationship": "أضف علاقة", + "addUpload": "أضف تحميل", + "block": "وحدة محتوى", + "blockType": "نوع وحدة المحتوى", + "blocks": "وحدات المحتوى", + "chooseBetweenCustomTextOrDocument": "اختر بين إدخال عنوان URL نصّي مخصّص أو الرّبط بمستند آخر.", + "chooseDocumentToLink": "اختر مستندًا للربط", + "chooseFromExisting": "اختر من القائمة", "chooseLabel": "اختر {{label}}", - "collapseAll": "طي الكل", - "customURL": "عنوان URL مخصص", - "editLabelData": "تعديل بيانات {{label}}", - "editLink": "تعديل الرابط", - "editRelationship": "تعديل العلاقة", - "enterURL": "أدخل عنوان URL", + "collapseAll": "طيّ الكلّ", + "customURL": "URL مخصّص", + "editLabelData": "عدّل بيانات {{label}}", + "editLink": "عدّل الرّابط", + "editRelationship": "عدّل العلاقة", + "enterURL": "ادخل عنوان URL", "internalLink": "رابط داخلي", - "itemsAndMore": "{{items}} و {{count}} آخرين", + "itemsAndMore": "{{items}} و {{count}} أخرى", "labelRelationship": "{{label}} علاقة", - "latitude": "خط العرض", - "linkType": "نوع الرابط", - "linkedTo": "مرتبط بـ <0>{{label}}", - "longitude": "خط الطول", + "latitude": "خطّ العرض", + "linkType": "نوع الرّابط", + "linkedTo": "تمّ الرّبط ل <0>{{label}}", + "longitude": "خطّ الطّول", "newLabel": "{{label}} جديد", - "openInNewTab": "فتح في علامة تبويب جديدة", - "passwordsDoNotMatch": "كلمتا المرور غير متطابقتين.", - "relatedDocument": "مستند مرتبط", - "relationTo": "العلاقة بـ", - "removeRelationship": "إزالة العلاقة", - "removeUpload": "حذف التحميل", - "saveChanges": "حفظ التغييرات", - "searchForBlock": "البحث عن كتلة", - "selectExistingLabel": "حدد {{label}} الحالي", - "selectFieldsToEdit": "تحديد الحقول المراد تحريرها", - "showAll": "عرض الكل", + "openInNewTab": "الفتح في علامة تبويب جديدة", + "passwordsDoNotMatch": "كلمة المرور غير مطابقة.", + "relatedDocument": "مستند مربوط", + "relationTo": "ربط ل", + "removeRelationship": "حذف العلاقة", + "removeUpload": "حذف المحتوى المرفوع", + "saveChanges": "حفظ التّغييرات", + "searchForBlock": "ابحث عن وحدة محتوى", + "selectExistingLabel": "اختيار {{label}} من القائمة", + "selectFieldsToEdit": "حدّد الحقول اللتي تريد تعديلها", + "showAll": "إظهار الكلّ", "swapRelationship": "تبديل العلاقة", - "swapUpload": "تبديل التحميل", - "textToDisplay": "النص المعروض", - "toggleBlock": "تبديل الكتلة", - "uploadNewLabel": "{{label}} جديدة للتحميل" + "swapUpload": "تبديل المحتوى المرفوع", + "textToDisplay": "النصّ الذي تريد إظهاره", + "toggleBlock": "Toggle block", + "uploadNewLabel": "رفع {{label}} جديد" }, "general": { - "aboutToDelete": "أنت على وشك حذف {{label}} <1>{{title}}>. هل أنت متأكد؟", + "aboutToDelete": "أنت على وشك حذف {{label}} <1>{{title}}. هل أنت متأكّد؟", "aboutToDeleteCount_many": "أنت على وشك حذف {{count}} {{label}}", "aboutToDeleteCount_one": "أنت على وشك حذف {{count}} {{label}}", "aboutToDeleteCount_other": "أنت على وشك حذف {{count}} {{label}}", - "addBelow": "إضافة أسفل", - "addFilter": "إضافة تصفية", - "adminTheme": "سمة المسؤول", + "addBelow": "أضف في الاسفل", + "addFilter": "أضف فلتر", + "adminTheme": "شكل واجهة المستخدم", "and": "و", "ascending": "تصاعدي", "automatic": "تلقائي", - "backToDashboard": "العودة إلى لوحة التحكم", + "backToDashboard": "العودة للوحة التّحكّم", "cancel": "إلغاء", - "changesNotSaved": "لم يتم حفظ تغييراتك. إذا غادرت الآن ، فستفقد التغييرات الخاصة بك.", + "changesNotSaved": "لم يتمّ حفظ التّغييرات. إن غادرت الآن ، ستفقد تغييراتك.", "close": "إغلاق", "collections": "المجموعات", - "columnToSort": "العمود المراد الفرز عليه", + "columnToSort": "التّرتيب حسب العامود", "columns": "الأعمدة", "confirm": "تأكيد", "confirmDeletion": "تأكيد الحذف", - "confirmDuplication": "تأكيد الاستنساخ", - "copied": "تم النسخ", + "confirmDuplication": "تأكيد التّكرار", + "copied": "تمّ النّسخ", "copy": "نسخ", "create": "إنشاء", - "createNew": "إنشاء جديد", + "createNew": "أنشاء جديد", "createNewLabel": "إنشاء {{label}} جديد", - "created": "تم الإنشاء", - "createdAt": "تاريخ الإنشاء", - "creating": "جاري الإنشاء", - "dark": "داكن", - "dashboard": "لوحة التحكم", + "created": "تمّ الإنشاء", + "createdAt": "تمّ الإنشاء في", + "creating": "يتمّ الإنشاء", + "dark": "غامق", + "dashboard": "لوحة التّحكّم", "delete": "حذف", - "deletedCountSuccessfully": "تم حذف {{count}} {{label}} بنجاح.", - "deletedSuccessfully": "تم الحذف بنجاح.", - "deleting": "جاري الحذف...", + "deletedCountSuccessfully": "تمّ حذف {{count}} {{label}} بنجاح.", + "deletedSuccessfully": "تمّ الحذف بنجاح.", + "deleting": "يتمّ الحذف...", "descending": "تنازلي", + "deselectAllRows": "إلغاء تحديد جميع الصفوف", "duplicate": "استنساخ", "duplicateWithoutSaving": "استنساخ بدون حفظ التغييرات", "edit": "تعديل", @@ -181,11 +182,11 @@ "editingLabel_many": "تعديل {{count}} {{label}}", "editingLabel_one": "تعديل {{count}} {{label}}", "editingLabel_other": "تعديل {{count}} {{label}}", - "error": "خطأ", - "errors": "أخطاء", "email": "البريد الإلكتروني", "emailAddress": "عنوان البريد الإلكتروني", "enterAValue": "أدخل قيمة", + "error": "خطأ", + "errors": "أخطاء", "fallbackToDefaultLocale": "الرجوع إلى اللغة الافتراضية", "filter": "تصفية", "filterWhere": "تصفية {{label}} حيث", @@ -196,13 +197,14 @@ "leaveAnyway": "المغادرة على أي حال", "leaveWithoutSaving": "المغادرة بدون حفظ", "light": "فاتح", - "loading": "جاري التحميل", - "locales": "اللغات", - "moveDown": "تحريك للأسفل", - "moveUp": "تحريك للأعلى", + "loading": "يتمّ التّحميل", + "locales": "اللّغات", + "moveDown": "التّحريك إلى الأسفل", + "moveUp": "التّحريك إلى الأعلى", "newPassword": "كلمة مرور جديدة", "noFiltersSet": "لم يتم تعيين أي عوامل تصفية", "noLabel": "<لا {{label}}>", + "noOptions": "لا خيارات", "noResults": "لا يوجد {{label}}. إما أن لا {{label}} موجودة حتى الآن أو لا تتطابق مع عوامل التصفية التي حددتها أعلاه.", "noValue": "لا يوجد قيمة", "none": "لا شيء", @@ -210,22 +212,25 @@ "nothingFound": "لم يتم العثور على شيء", "of": "من", "or": "أو", - "order": "ترتيب", - "pageNotFound": "الصفحة غير موجودة", + "order": "التّرتيب", + "pageNotFound": "الصّفحة غير موجودة", "password": "كلمة المرور", - "payloadSettings": "إعدادات الحمولة", - "perPage": "في الصفحة: {{limit}}", + "payloadSettings": "الإعدادات", + "perPage": "لكلّ صفحة: {{limit}}", "remove": "إزالة", - "row": "صف", - "rows": "صفوف", + "row": "سطر", + "rows": "أسطُر", "save": "حفظ", "saving": "جاري الحفظ...", "searchBy": "البحث عن طريق {{label}}", "selectAll": "تحديد كل {{count}} {{label}}", + "selectAllRows": "حدد جميع الصفوف", "selectValue": "اختيار قيمة", "selectedCount": "تم تحديد {{count}} {{label}}", + "showAllLabel": "عرض كل {{label}}", "sorryNotFound": "عذرًا - لا يوجد شيء يتوافق مع طلبك.", "sort": "ترتيب", + "sortByLabelDirection": "رتّب حسب {{label}} {{direction}}", "stayOnThisPage": "البقاء على هذه الصفحة", "submissionSuccessful": "تمت الإرسال بنجاح.", "submit": "إرسال", @@ -247,30 +252,30 @@ "welcome": "مرحبًا" }, "operators": { - "contains": "يحتوي على", + "contains": "يحتوي", "equals": "يساوي", "exists": "موجود", "isGreaterThan": "أكبر من", - "isGreaterThanOrEqualTo": "أكبر من أو يساوي", + "isGreaterThanOrEqualTo": "أكبر أو يساوي", "isIn": "موجود في", - "isLessThan": "أقل من", - "isLessThanOrEqualTo": "أقل من أو يساوي", - "isLike": "مشابه لـ", + "isLessThan": "أصغر من", + "isLessThanOrEqualTo": "أصغر أو يساوي", + "isLike": "هو مثل", "isNotEqualTo": "لا يساوي", "isNotIn": "غير موجود في", "near": "قريب من" }, "upload": { - "dragAndDrop": "اسحب وأفلت الملف", - "dragAndDropHere": "أو اسحب وأفلت الملف هنا", - "fileName": "اسم الملف", - "fileSize": "حجم الملف", - "height": "الارتفاع", - "lessInfo": "معلومات أقل", + "dragAndDrop": "قم بسحب وإسقاط ملفّ", + "dragAndDropHere": "أو اسحب الملفّ وأفلته هنا", + "fileName": "اسم الملفّ", + "fileSize": "حجم الملفّ", + "height": "الطّول", + "lessInfo": "معلومات أقلّ", "moreInfo": "معلومات أكثر", - "selectCollectionToBrowse": "حدد مجموعة لتصفحها", - "selectFile": "حدد ملف", - "sizes": "الأحجام", + "selectCollectionToBrowse": "حدّد مجموعة لاستعراضها", + "selectFile": "اختر ملفّ", + "sizes": "الاحجام", "width": "العرض" }, "validation": { @@ -282,6 +287,7 @@ "invalidSelection": "هذا الحقل لديه اختيار غير صالح.", "invalidSelections": "هذا الحقل لديه الاختيارات الغير صالحة التالية:", "lessThanMin": "{{value}} أقل من الحد الأدنى المسموح به {{label}} الذي يبلغ {{min}}.", + "limitReached": "تم الوصول إلى الحد الأقصى، يمكن إضافة {{max}} عناصر فقط.", "longerThanMin": "يجب أن يكون هذا القيمة أطول من الحد الأدنى للطول الذي هو {{minLength}} أحرف.", "notValidDate": "\"{{value}}\" ليس تاريخا صالحا.", "required": "هذا الحقل مطلوب.", @@ -293,57 +299,57 @@ "validUploadID": "هذا الحقل ليس معرّف تحميل صالح." }, "version": { - "aboutToPublishSelection": "أنت على وشك نشر جميع {{label}} المحددة. هل أنت متأكد؟", - "aboutToRestore": "أنت على وشك استعادة هذا الوثيقة {{label}} إلى الحالة التي كانت عليها في {{versionDate}}.", - "aboutToRestoreGlobal": "أنت على وشك استعادة {{label}} العالمي إلى الحالة التي كانت عليها في {{versionDate}}.", - "aboutToRevertToPublished": "أنت على وشك إرجاع تغييرات هذه الوثيقة إلى الحالة التي كانت عليها عند النشر. هل أنت متأكد؟", - "aboutToUnpublish": "أنت على وشك إلغاء نشر هذه الوثيقة. هل أنت متأكد؟", - "aboutToUnpublishSelection": "أنت على وشك إلغاء نشر جميع {{label}} المحددة. هل أنت متأكد؟", + "aboutToPublishSelection": "أنت على وشك نشر كلّ {{label}} في التّحديد. هل أنت متأكّد؟", + "aboutToRestore": "أنت على وشك استرجاع هذا المستند {{label}} إلى الحالة التّي كان عليها في {{versionDate}}.", + "aboutToRestoreGlobal": "أنت على وشك استرجاع الاعداد العامّ {{label}} إلى الحالة التي كان عليها في {{versionDate}}.", + "aboutToRevertToPublished": "أنت على وشك إعادة هذا المستند إلى حالته المنشورة. هل أنت متأكّد؟", + "aboutToUnpublish": "أنت على وشك إلغاء نشر هذا المستند. هل أنت متأكّد؟", + "aboutToUnpublishSelection": "أنت على وشك إلغاء نشر كلّ {{label}} في التّحديد. هل أنت متأكّد؟", "autosave": "حفظ تلقائي", - "autosavedSuccessfully": "تم الحفظ التلقائي بنجاح.", - "autosavedVersion": "نسخة محفوظة تلقائياً", - "changed": "تم التغيير", - "compareVersion": "مقارنة النسخة مع:", - "confirmPublish": "تأكيد النشر", - "confirmRevertToSaved": "تأكيد العودة إلى الحالة المحفوظة", - "confirmUnpublish": "تأكيد إلغاء النشر", - "confirmVersionRestoration": "تأكيد استعادة النسخة", - "currentDocumentStatus": "{{docStatus}} الوثيقة الحالية", - "draft": "مسودة", - "draftSavedSuccessfully": "تم حفظ المسودة بنجاح.", - "lastSavedAgo": "تم الحفظ الأخير {{distance, relativetime(minutes)}}", - "noFurtherVersionsFound": "لم يتم العثور على مزيد من النسخ", - "noRowsFound": "لم يتم العثور على {{label}}", + "autosavedSuccessfully": "تمّ الحفظ التّلقائي بنجاح.", + "autosavedVersion": "النّسخة المحفوظة تلقائياً", + "changed": "تمّ التّغيير", + "compareVersion": "مقارنة النّسخة مع:", + "confirmPublish": "تأكيد النّشر", + "confirmRevertToSaved": "تأكيد الرّجوع للنسخة المنشورة", + "confirmUnpublish": "تأكيد إلغاء النّشر", + "confirmVersionRestoration": "تأكيد إستعادة النّسخة", + "currentDocumentStatus": "المستند {{docStatus}} الحالي", + "draft": "مسودّة", + "draftSavedSuccessfully": "تمّ حفظ المسودّة بنجاح.", + "lastSavedAgo": "آخر حفظ في {{distance, relativetime(minutes)}}", + "noFurtherVersionsFound": "لم يتمّ العثور على نسخات أخرى", + "noRowsFound": "لم يتمّ العثور على {{label}}", "preview": "معاينة", - "problemRestoringVersion": "حدثت مشكلة أثناء استعادة هذا الإصدار", + "problemRestoringVersion": "حدث خطأ في استعادة هذه النّسخة", "publish": "نشر", - "publishChanges": "نشر التغييرات", - "published": "تم النشر", - "restoreThisVersion": "استعادة هذا الإصدار", - "restoredSuccessfully": "تمت الاستعادة بنجاح.", - "restoring": "جارٍ الاستعادة...", - "revertToPublished": "العودة إلى النسخة المنشورة", - "reverting": "جارٍ العودة...", - "saveDraft": "حفظ المسودة", - "selectLocales": "تحديد اللغات المراد عرضها", - "selectVersionToCompare": "حدد إصدارًا للمقارنة", - "showLocales": "عرض اللغات:", - "showingVersionsFor": "عرض الإصدارات لـ:", + "publishChanges": "نشر التّغييرات", + "published": "تمّ النّشر", + "restoreThisVersion": "استعادة هذه النّسخة", + "restoredSuccessfully": "تمّت الاستعادة بنحاح.", + "restoring": "تتمّ الاستعادة...", + "revertToPublished": "الرّجوع للنسخة المنشورة", + "reverting": "يتمّ الاسترجاع...", + "saveDraft": "حفظ المسودّة", + "selectLocales": "حدّد اللّغات المراد عرضها", + "selectVersionToCompare": "حدّد نسخة للمقارنة", + "showLocales": "اظهر اللّغات:", + "showingVersionsFor": "يتمّ عرض النًّسخ ل:", "status": "الحالة", - "type": "النوع", - "unpublish": "إلغاء النشر", - "unpublishing": "جارٍ إلغاء النشر...", - "version": "نسخة", - "versionCount_many": "تم العثور على {{count}} نسخة", - "versionCount_none": "لا توجد نسخ", - "versionCount_one": "تم العثور على نسخة واحدة", - "versionCount_other": "تم العثور على {{count}} نسخة", - "versionCreatedOn": "تم إنشاء {{version}} في تاريخ:", - "versionID": "معرف النسخة", - "versions": "النسخ", - "viewingVersion": "عرض نسخة لـ {{entityLabel}} {{documentTitle}}", - "viewingVersionGlobal": "عرض نسخة للـ {{entityLabel}} العام", - "viewingVersions": "عرض النسخ لـ {{entityLabel}} {{documentTitle}}", - "viewingVersionsGlobal": "عرض النسخ للـ {{entityLabel}} العام" + "type": "النّوع", + "unpublish": "الغاء النّشر", + "unpublishing": "يتمّ الغاء النّشر...", + "version": "النّسخة", + "versionCount_many": "تمّ العثور على {{count}} نُسخ", + "versionCount_none": "لم يتمّ العثور على أيّ من النّسخ", + "versionCount_one": "تمّ العثور على {{count}} من النّسخ", + "versionCount_other": "تمّ العثور على {{count}} نُسخ", + "versionCreatedOn": "تمّ ﻹنشاء النّسخة في {{version}}:", + "versionID": "مُعرّف النّسخة", + "versions": "النُّسَخ", + "viewingVersion": "يتمّ استعراض نسخة ل {{entityLabel}} {{documentTitle}}", + "viewingVersionGlobal": "يتمّ استعراض نسخة للاعداد العامّ {{entityLabel}}", + "viewingVersions": "يتمّ استعراض النُّسَخ ل {{entityLabel}} {{documentTitle}}", + "viewingVersionsGlobal": "يتمّ استعراض النُّسَخ للاعداد العامّ {{entityLabel}}" } } diff --git a/src/translations/az.json b/src/translations/az.json index 7ec01e7c13..194ba7ebc2 100644 --- a/src/translations/az.json +++ b/src/translations/az.json @@ -65,6 +65,7 @@ "emailOrPasswordIncorrect": "Təqdim olunan e-poçt və ya şifrə yanlışdır.", "followingFieldsInvalid_many": "Aşağıdakı sahələr yanlışdır:", "followingFieldsInvalid_one": "Aşağıdakı sahə yanlışdır:", + "followingFieldsInvalid_other": "Aşağıdaki sahələr yanlışdır:", "incorrectCollection": "Yanlış Kolleksiya", "invalidFileType": "Yanlış fayl növü", "invalidFileTypeValue": "Yanlış fayl növü: {{value}}", @@ -173,6 +174,7 @@ "deletedSuccessfully": "Uğurla silindi.", "deleting": "Silinir...", "descending": "Azalan", + "deselectAllRows": "Bütün sıraları seçimi ləğv edin", "duplicate": "Dublikat", "duplicateWithoutSaving": "Dəyişiklikləri saxlamadan dublikatla", "edit": "Redaktə et", @@ -203,6 +205,7 @@ "newPassword": "Yeni şifrə", "noFiltersSet": "Filter təyin edilməyib", "noLabel": "", + "noOptions": "Heç bir seçim yoxdur", "noResults": "Heç bir {{label}} tapılmadı. Ya hələ {{label}} yoxdur, ya da yuxarıda göstərdiyiniz filtrlərə uyğun gəlmir.", "noValue": "Dəyər yoxdur", "none": "Heç bir", @@ -222,10 +225,13 @@ "saving": "Saxlanılır...", "searchBy": "{{label}} ilə axtar", "selectAll": "Bütün {{count}} {{label}} seç", + "selectAllRows": "Bütün sıraları seçin", "selectValue": "Dəyər seçin", "selectedCount": "{{count}} {{label}} seçildi", + "showAllLabel": "Bütün {{label}}-ı göstər", "sorryNotFound": "Üzr istəyirik - sizin tələbinizə uyğun heç nə yoxdur.", "sort": "Sırala", + "sortByLabelDirection": "{{label}} {{direction}} ilə sırala", "stayOnThisPage": "Bu səhifədə qal", "submissionSuccessful": "Təqdimat uğurlu oldu.", "submit": "Təqdim et", @@ -282,6 +288,7 @@ "invalidSelection": "Bu sahədə yanlış seçim edilmişdir.", "invalidSelections": "Bu sahədə aşağıdakı yanlış seçimlər edilmişdir:", "lessThanMin": "{{value}} icazə verilən minimal {{label}} olan {{min}}-dən kiçikdir.", + "limitReached": "Limitə çatdınız, yalnız {{max}} element əlavə edilə bilər.", "longerThanMin": "Bu dəyər {{minLength}} simvoldan uzun olmalıdır.", "notValidDate": "\"{{value}}\" doğru tarix deyil.", "required": "Bu sahə mütləq doldurulmalıdır.", @@ -346,4 +353,4 @@ "viewingVersions": "{{entityLabel}} {{documentTitle}} üçün versiyaları göstərir", "viewingVersionsGlobal": "Qlobal {{entityLabel}} üçün versiyaları göstərir" } -} \ No newline at end of file +} diff --git a/src/translations/bg.json b/src/translations/bg.json index 3c43e3fa06..5e9f000325 100644 --- a/src/translations/bg.json +++ b/src/translations/bg.json @@ -63,8 +63,8 @@ "deletingFile": "Имаше грешка при изтриването на файла.", "deletingTitle": "Имаше проблем при изтриването на {{title}}. Моля провери връзката си и опитай отново.", "emailOrPasswordIncorrect": "Имейлът или паролата не са правилни.", - "followingFieldsInvalid_other": "Следните полета са некоректни:", "followingFieldsInvalid_one": "Следното поле е некоректно:", + "followingFieldsInvalid_other": "Следните полета са некоректни:", "incorrectCollection": "Некоректно събиране", "invalidFileType": "Невалиден тип на файл", "invalidFileTypeValue": "Невалиден тип на файл: {{value}}", @@ -173,6 +173,7 @@ "deletedSuccessfully": "Изтрито успешно.", "deleting": "Изтриване...", "descending": "Низходящо", + "deselectAllRows": "Деселектирайте всички редове", "duplicate": "Дупликирай", "duplicateWithoutSaving": "Дупликирай без да запазваш промените", "edit": "Редактирай", @@ -203,6 +204,7 @@ "newPassword": "Нова парола", "noFiltersSet": "Няма зададени филтри", "noLabel": "<Няма {{label}}>", + "noOptions": "Няма опции", "noResults": "{{label}} не е открит. {{label}} не съществува или никой не отговаря на зададените филтри.", "noValue": "Няма стойност", "none": "Никакъв", @@ -222,10 +224,13 @@ "saving": "Запазване...", "searchBy": "Търси по {{label}}", "selectAll": "Избери всички {{count}} {{label}}", + "selectAllRows": "Изберете всички редове", "selectValue": "Избери стойност", "selectedCount": "{{count}} {{label}} избрани", + "showAllLabel": "Покажи всички {{label}}", "sorryNotFound": "Съжаляваме-няма нищо, което да отговаря на търсенето ти.", "sort": "Сортирай", + "sortByLabelDirection": "Сортирай по {{label}} {{direction}}", "stayOnThisPage": "Остани на тази страница", "submissionSuccessful": "Успешно подаване.", "submit": "Подай", @@ -261,6 +266,7 @@ "near": "близко" }, "upload": { + "dragAndDrop": "Дръпни и пусни файл", "dragAndDropHere": "или дръпни и пусни файла тук", "fileName": "Име на файла", "fileSize": "Големина на файла", @@ -269,7 +275,6 @@ "moreInfo": "Повече информация", "selectCollectionToBrowse": "Избери колекция, която да разгледаш", "selectFile": "Избери файл", - "dragAndDrop": "Дръпни и пусни файл", "sizes": "Големини", "width": "Ширина" }, @@ -282,6 +287,7 @@ "invalidSelection": "Това поле има невалидна селекция.", "invalidSelections": "Това поле има следните невалидни селекции:", "lessThanMin": "{{value}} е по-малко от минимално допустимото {{label}} от {{min}}.", + "limitReached": "Достигнат е лимитът, могат да бъдат добавени само {{max}} елемента.", "longerThanMin": "Тази стойност трябва да е по-голяма от минималната стойност от {{minLength}} символа.", "notValidDate": "\"{{value}}\" не е валидна дата.", "required": "Това поле е задължително.", @@ -327,8 +333,8 @@ "saveDraft": "Запази чернова", "selectLocales": "Избери локализации за показване", "selectVersionToCompare": "Избери версия за сравняване", - "showingVersionsFor": "Показване на версии за:", "showLocales": "Покажи преводи:", + "showingVersionsFor": "Показване на версии за:", "status": "Статус", "type": "Тип", "unpublish": "Скрий", diff --git a/src/translations/cs.json b/src/translations/cs.json index a301f4e77d..3ef2fc97f0 100644 --- a/src/translations/cs.json +++ b/src/translations/cs.json @@ -63,8 +63,8 @@ "deletingFile": "Při mazání souboru došlo k chybě.", "deletingTitle": "Při mazání {{title}} došlo k chybě. Zkontrolujte své připojení a zkuste to znovu.", "emailOrPasswordIncorrect": "Zadaný email nebo heslo není správné.", - "followingFieldsInvalid_other": "Následující pole jsou neplatná:", "followingFieldsInvalid_one": "Následující pole je neplatné:", + "followingFieldsInvalid_other": "Následující pole jsou neplatná:", "incorrectCollection": "Nesprávná kolekce", "invalidFileType": "Neplatný typ souboru", "invalidFileTypeValue": "Neplatný typ souboru: {{value}}", @@ -173,6 +173,7 @@ "deletedSuccessfully": "Úspěšně odstraněno.", "deleting": "Odstraňování...", "descending": "Sestupně", + "deselectAllRows": "Zrušte výběr všech řádků", "duplicate": "Duplikovat", "duplicateWithoutSaving": "Duplikovat bez uložení změn", "edit": "Upravit", @@ -203,6 +204,7 @@ "newPassword": "Nové heslo", "noFiltersSet": "Nenastaveny žádné filtry", "noLabel": "<Žádný {{label}}>", + "noOptions": "Žádné možnosti", "noResults": "Nebyly nalezeny žádné {{label}}. Buď ještě neexistují žádné {{label}}, nebo žádné nesplňují filtry, které jste zadali výše.", "noValue": "Žádná hodnota", "none": "Žádné", @@ -222,10 +224,13 @@ "saving": "Ukládání...", "searchBy": "Vyhledat podle {{label}}", "selectAll": "Vybrat vše {{count}} {{label}}", + "selectAllRows": "Vyberte všechny řádky", "selectValue": "Vyberte hodnotu", "selectedCount": "Vybráno {{count}} {{label}}", + "showAllLabel": "Zobrazit všechny {{label}}", "sorryNotFound": "Je nám líto, ale neexistuje nic, co by odpovídalo vašemu požadavku.", "sort": "Třídit", + "sortByLabelDirection": "Seřadit podle {{label}} {{direction}}", "stayOnThisPage": "Zůstat na této stránce", "submissionSuccessful": "Odeslání úspěšné.", "submit": "Odeslat", @@ -247,20 +252,21 @@ "welcome": "Vítejte" }, "operators": { + "contains": "obsahuje", "equals": "rovná se", - "isNotEqualTo": "není rovno", - "isIn": "je v", - "isNotIn": "není in", "exists": "existuje", "isGreaterThan": "je větší než", + "isGreaterThanOrEqualTo": "je větší nebo rovno", + "isIn": "je v", "isLessThan": "je menší než", "isLessThanOrEqualTo": "je menší nebo rovno", - "isGreaterThanOrEqualTo": "je větší nebo rovno", - "near": "blízko", "isLike": "je jako", - "contains": "obsahuje" + "isNotEqualTo": "není rovno", + "isNotIn": "není in", + "near": "blízko" }, "upload": { + "dragAndDrop": "Přetáhněte soubor", "dragAndDropHere": "nebo sem přetáhněte soubor", "fileName": "Název souboru", "fileSize": "Velikost souboru", @@ -269,7 +275,6 @@ "moreInfo": "Více informací", "selectCollectionToBrowse": "Vyberte kolekci pro procházení", "selectFile": "Vyberte soubor", - "dragAndDrop": "Přetáhněte soubor", "sizes": "Velikosti", "width": "Šířka" }, @@ -282,6 +287,7 @@ "invalidSelection": "Toto pole má neplatný výběr.", "invalidSelections": "Toto pole má následující neplatné výběry:", "lessThanMin": "{{value}} je nižší než minimálně povolená {{label}} {{min}}.", + "limitReached": "Dosáhnutý limit, mohou být přidány pouze {{max}} položky.", "longerThanMin": "Tato hodnota musí být delší než minimální délka {{minLength}} znaků.", "notValidDate": "\"{{value}}\" není platné datum.", "required": "Toto pole je povinné.", diff --git a/src/translations/de.json b/src/translations/de.json index ab45d0a4c3..4f980a132c 100644 --- a/src/translations/de.json +++ b/src/translations/de.json @@ -63,8 +63,8 @@ "deletingFile": "Beim Löschen der Datei ist ein Fehler aufgetreten.", "deletingTitle": "Es gab ein Problem während der Löschung von {{title}}. Bitte überprüfe deine Verbindung und versuche es erneut.", "emailOrPasswordIncorrect": "Die E-Mail-Adresse oder das Passwort sind nicht korrekt.", - "followingFieldsInvalid_other": "Die folgenden Felder sind nicht korrekt:", "followingFieldsInvalid_one": "Das folgende Feld ist nicht korrekt:", + "followingFieldsInvalid_other": "Die folgenden Felder sind nicht korrekt:", "incorrectCollection": "Falsche Sammlung", "invalidFileType": "Ungültiger Datei-Typ", "invalidFileTypeValue": "Ungültiger Datei-Typ: {{value}}", @@ -173,6 +173,7 @@ "deletedSuccessfully": "Erfolgreich gelöscht.", "deleting": "Lösche...", "descending": "Absteigend", + "deselectAllRows": "Alle Zeilen abwählen", "duplicate": "Duplizieren", "duplicateWithoutSaving": "Dupliziere ohne Änderungen zu speichern", "edit": "Bearbeiten", @@ -184,9 +185,9 @@ "email": "E-Mail", "emailAddress": "E-Mail-Adresse", "enterAValue": "Gib einen Wert ein", - "fallbackToDefaultLocale": "Rückgriff auf das Standardgebietsschema", "error": "Fehler", "errors": "Fehler", + "fallbackToDefaultLocale": "Rückgriff auf das Standardgebietsschema", "filter": "Filter", "filterWhere": "Filter {{label}} wo", "filters": "Filter", @@ -203,6 +204,7 @@ "newPassword": "Neues Passwort", "noFiltersSet": "Keine Filter gesetzt", "noLabel": "", + "noOptions": "Keine Optionen", "noResults": "Keine {{label}} gefunden. Entweder es existieren keine {{label}} oder es gibt keine Übereinstimmung zu den von dir verwendeten Filtern.", "noValue": "Kein Wert", "none": "Kein", @@ -222,10 +224,13 @@ "saving": "Speichert...", "searchBy": "Suche nach {{label}}", "selectAll": "Alle auswählen {{count}} {{label}}", + "selectAllRows": "Wählen Sie alle Zeilen aus", "selectValue": "Wert auswählen", "selectedCount": "{{count}} {{label}} ausgewählt", + "showAllLabel": "Zeige alle {{label}}", "sorryNotFound": "Entschuldige, es entspricht nichts deiner Anfrage", "sort": "Sortieren", + "sortByLabelDirection": "Sortieren nach {{label}} {{direction}}", "stayOnThisPage": "Auf dieser Seite bleiben", "submissionSuccessful": "Einrichung erfolgreich.", "submit": "Senden", @@ -282,6 +287,7 @@ "invalidSelection": "Dieses Feld hat eine inkorrekte Auswahl.", "invalidSelections": "'Dieses Feld enthält die folgenden inkorrekten Auswahlen:'", "lessThanMin": "{{value}} ist kleiner als der minimal erlaubte {{label}} von {{min}}.", + "limitReached": "Limit erreicht, es können nur {{max}} Elemente hinzugefügt werden.", "longerThanMin": "Dieser Wert muss länger als die minimale Länge von {{minLength}} Zeichen sein.", "notValidDate": "\"{{value}}\" ist kein gültiges Datum.", "required": "Pflichtfeld", diff --git a/src/translations/defaultOptions.ts b/src/translations/defaultOptions.ts index 262aa2d45c..314c979250 100644 --- a/src/translations/defaultOptions.ts +++ b/src/translations/defaultOptions.ts @@ -9,4 +9,16 @@ export const defaultOptions: InitOptions = { interpolation: { escapeValue: false, }, + detection: { + order: [ + 'cookie', + 'localStorage', + ], + lookupCookie: 'lng', + lookupLocalStorage: 'lng', + caches: [ + 'cookie', + 'localStorage', + ], + }, }; diff --git a/src/translations/en.json b/src/translations/en.json index 0ef74f751c..33579bf864 100644 --- a/src/translations/en.json +++ b/src/translations/en.json @@ -173,6 +173,7 @@ "deletedSuccessfully": "Deleted successfully.", "deleting": "Deleting...", "descending": "Descending", + "deselectAllRows": "Deselect all rows", "duplicate": "Duplicate", "duplicateWithoutSaving": "Duplicate without saving changes", "edit": "Edit", @@ -203,6 +204,7 @@ "newPassword": "New Password", "noFiltersSet": "No filters set", "noLabel": "", + "noOptions": "No options", "noResults": "No {{label}} found. Either no {{label}} exist yet or none match the filters you've specified above.", "noValue": "No value", "none": "None", @@ -222,10 +224,13 @@ "saving": "Saving...", "searchBy": "Search by {{label}}", "selectAll": "Select all {{count}} {{label}}", + "selectAllRows": "Select all rows", "selectValue": "Select a value", "selectedCount": "{{count}} {{label}} selected", + "showAllLabel": "Show all {{label}}", "sorryNotFound": "Sorry—there is nothing to correspond with your request.", "sort": "Sort", + "sortByLabelDirection": "Sort by {{label}} {{direction}}", "stayOnThisPage": "Stay on this page", "submissionSuccessful": "Submission Successful.", "submit": "Submit", @@ -276,6 +281,7 @@ "validation": { "emailAddress": "Please enter a valid email address.", "enterNumber": "Please enter a valid number.", + "limitReached": "Limit reached, only {{max}} items can be added.", "fieldHasNo": "This field has no {{label}}", "greaterThanMax": "{{value}} is greater than the max allowed {{label}} of {{max}}.", "invalidInput": "This field has an invalid input.", diff --git a/src/translations/es.json b/src/translations/es.json index c8212f4769..6db37da7c5 100644 --- a/src/translations/es.json +++ b/src/translations/es.json @@ -63,8 +63,8 @@ "deletingFile": "Ocurrió un error al eliminar el archivo.", "deletingTitle": "Ocurrió un error al eliminar {{title}}. Por favor revisa tu conexión y vuelve a intentarlo.", "emailOrPasswordIncorrect": "El correo o la contraseña introducida es incorrecta.", - "followingFieldsInvalid_other": "Los siguientes campos son inválidos:", "followingFieldsInvalid_one": "El siguiente campo es inválido:", + "followingFieldsInvalid_other": "Los siguientes campos son inválidos:", "incorrectCollection": "Colección Incorrecta", "invalidFileType": "Tipo de archivo inválido", "invalidFileTypeValue": "Tipo de archivo inválido: {{value}}", @@ -173,6 +173,7 @@ "deletedSuccessfully": "Borrado exitosamente.", "deleting": "Eliminando...", "descending": "Descendente", + "deselectAllRows": "Deselecciona todas las filas", "duplicate": "Duplicar", "duplicateWithoutSaving": "Duplicar sin guardar cambios", "edit": "Editar", @@ -203,6 +204,7 @@ "newPassword": "Nueva contraseña", "noFiltersSet": "No hay filtros establecidos", "noLabel": "", + "noOptions": "Sin opciones", "noResults": "No encontramos {{label}}. Puede que no existan {{label}} todavía o no hay coincidencias con los filtros introducidos arriba.", "noValue": "Sin valor", "none": "Ninguna", @@ -222,10 +224,13 @@ "saving": "Guardando...", "searchBy": "Buscar por {{label}}", "selectAll": "Seleccionar todo {{count}} {{label}}", + "selectAllRows": "Selecciona todas las filas", "selectValue": "Selecciona un valor", "selectedCount": "{{count}} {{label}} seleccionado", + "showAllLabel": "Muestra todas {{label}}", "sorryNotFound": "Lo sentimos. No hay nada que corresponda con tu solicitud.", "sort": "Ordenar", + "sortByLabelDirection": "Ordenar por {{label}} {{direction}}", "stayOnThisPage": "Permanecer en esta página", "submissionSuccessful": "Envío realizado correctamente.", "submit": "Enviar", @@ -282,6 +287,7 @@ "invalidSelection": "La selección en este campo es inválida.", "invalidSelections": "Este campo tiene las siguientes selecciones inválidas:", "lessThanMin": "{{value}} es menor que el {{label}} mínimo permitido de {{min}}.", + "limitReached": "Se ha alcanzado el límite, solo se pueden agregar {{max}} elementos.", "longerThanMin": "Este dato debe ser más largo que el mínimo de {{minLength}} caracteres.", "notValidDate": "\"{{value}}\" es una fecha inválida.", "required": "Este campo es obligatorio.", diff --git a/src/translations/fa.json b/src/translations/fa.json index 5fb0855591..550d971906 100644 --- a/src/translations/fa.json +++ b/src/translations/fa.json @@ -63,8 +63,8 @@ "deletingFile": "هنگام حذف فایل خطایی روی داد.", "deletingTitle": "هنگام حذف {{title}} خطایی رخ داد. لطفاً وضعیت اتصال اینترنت خود را بررسی کنید.", "emailOrPasswordIncorrect": "رایانامه یا گذرواژه ارائه شده نادرست است.", - "followingFieldsInvalid_other": "کادرهای زیر نامعتبر هستند:", "followingFieldsInvalid_one": "کادر زیر نامعتبر است:", + "followingFieldsInvalid_other": "کادرهای زیر نامعتبر هستند:", "incorrectCollection": "مجموعه نادرست", "invalidFileType": "نوع رسانه نامعتبر است", "invalidFileTypeValue": "نوع رسانه نامعتبر: {{value}}", @@ -173,6 +173,7 @@ "deletedSuccessfully": "با موفقیت حذف شد.", "deleting": "در حال حذف...", "descending": "رو به پایین", + "deselectAllRows": "تمام سطرها را از انتخاب خارج کنید", "duplicate": "تکراری", "duplicateWithoutSaving": "رونوشت بدون ذخیره کردن تغییرات", "edit": "نگارش", @@ -203,6 +204,7 @@ "newPassword": "گذرواژه تازه", "noFiltersSet": "هیچ علامت‌گذاری تنظیم نشده", "noLabel": "", + "noOptions": "بدون گزینه", "noResults": "هیچ {{label}} یافت نشد. {{label}} یا هنوز وجود ندارد یا هیچ کدام با علامت‌گذاری‌هایی که در بالا مشخص کرده اید مطابقت ندارد.", "noValue": "بدون مقدار", "none": "هیچ یک", @@ -222,10 +224,13 @@ "saving": "در حال ذخیره...", "searchBy": "جستجو بر اساس {{label}}", "selectAll": "انتخاب همه {{count}} {{label}}", + "selectAllRows": "انتخاب تمام سطرها", "selectValue": "یک مقدار را انتخاب کنید", "selectedCount": "{{count}} {{label}} انتخاب شد", + "showAllLabel": "نمایش همه {{label}}", "sorryNotFound": "متأسفانه چیزی برای مطابقت با درخواست شما وجود ندارد.", "sort": "مرتب‌سازی", + "sortByLabelDirection": "مرتب کردن بر اساس {{label}} {{direction}}", "stayOnThisPage": "ماندن در این برگه", "submissionSuccessful": "با موفقیت ثبت شد.", "submit": "فرستادن", @@ -282,6 +287,7 @@ "invalidSelection": "این کادر دارای یک انتخاب نامعتبر است.", "invalidSelections": "این کادر دارای انتخاب‌های نامعتبر زیر است:", "lessThanMin": "{{value}} کمتر از حداقل مجاز برای {{label}} است که {{min}} است.", + "limitReached": "محدودیت رسیده است، فقط {{max}} مورد می تواند اضافه شود.", "longerThanMin": "ورودی باید بیش از حداقل {{minLength}} واژه باشد.", "notValidDate": "\"{{value}}\" یک تاریخ معتبر نیست.", "required": "این کادر اجباری است.", diff --git a/src/translations/fr.json b/src/translations/fr.json index a4010c1477..3880451c95 100644 --- a/src/translations/fr.json +++ b/src/translations/fr.json @@ -63,8 +63,8 @@ "deletingFile": "Une erreur s'est produite lors de la suppression du fichier.", "deletingTitle": "Une erreur s'est produite lors de la suppression de {{title}}. Veuillez vérifier votre connexion puis réessayer.", "emailOrPasswordIncorrect": "L'adresse e-mail ou le mot de passe fourni est incorrect.", - "followingFieldsInvalid_other": "Les champs suivants ne sont pas valides :", "followingFieldsInvalid_one": "Le champ suivant n'est pas valide :", + "followingFieldsInvalid_other": "Les champs suivants ne sont pas valides :", "incorrectCollection": "Collection incorrecte", "invalidFileType": "Type de fichier invalide", "invalidFileTypeValue": "Type de fichier invalide : {{value}}", @@ -173,6 +173,7 @@ "deletedSuccessfully": "Supprimé(e) avec succès.", "deleting": "Suppression en cours...", "descending": "Descendant(e)", + "deselectAllRows": "Désélectionner toutes les lignes", "duplicate": "Dupliquer", "duplicateWithoutSaving": "Dupliquer sans enregistrer les modifications", "edit": "Éditer", @@ -203,6 +204,7 @@ "newPassword": "Nouveau mot de passe", "noFiltersSet": "Aucun filtre défini", "noLabel": "", + "noOptions": "Aucune option", "noResults": "Aucun(e) {{label}} trouvé(e). Soit aucun(e) {{label}} n'existe encore, soit aucun(e) ne correspond aux filtres que vous avez spécifiés ci-dessus", "noValue": "Aucune valeur", "none": "Aucun(e)", @@ -222,10 +224,13 @@ "saving": "Sauvegarde en cours...", "searchBy": "Rechercher par {{label}}", "selectAll": "Tout sélectionner {{count}} {{label}}", + "selectAllRows": "Sélectionnez toutes les lignes", "selectValue": "Sélectionnez une valeur", "selectedCount": "{{count}} {{label}} sélectionné", + "showAllLabel": "Afficher tous les {{label}}", "sorryNotFound": "Désolé, rien ne correspond à votre demande.", "sort": "Trier", + "sortByLabelDirection": "Trier par {{label}} {{direction}}", "stayOnThisPage": "Rester sur cette page", "submissionSuccessful": "Soumission réussie.", "submit": "Soumettre", @@ -282,6 +287,7 @@ "invalidSelection": "Ce champ a une sélection invalide.", "invalidSelections": "Ce champ contient des sélections invalides suivantes :", "lessThanMin": "{{value}} est inférieur au min autorisé {{label}} de {{min}}.", + "limitReached": "Limite atteinte, seulement {{max}} éléments peuvent être ajoutés.", "longerThanMin": "Cette valeur doit être supérieure à la longueur minimale de {{minLength}} caractères.", "notValidDate": "\"{{value}}\" n'est pas une date valide.", "required": "Ce champ est requis.", diff --git a/src/translations/hr.json b/src/translations/hr.json index 39c4317e35..6e640bcb67 100644 --- a/src/translations/hr.json +++ b/src/translations/hr.json @@ -63,8 +63,8 @@ "deletingFile": "Dogodila se pogreška pri brisanju datoteke.", "deletingTitle": "Dogodila se pogreška pri brisanju {{title}}. Molim provjerite svoju internetsku vezu i pokušajte ponovno.", "emailOrPasswordIncorrect": "Email ili lozinka netočni.", - "followingFieldsInvalid_other": "Ova polja su nevaljana:", "followingFieldsInvalid_one": " Ovo polje je nevaljano:", + "followingFieldsInvalid_other": "Ova polja su nevaljana:", "incorrectCollection": "Nevaljana kolekcija", "invalidFileType": "Nevaljan tip datoteke", "invalidFileTypeValue": "Nevaljan tip datoteke: {{value}}", @@ -173,6 +173,7 @@ "deletedSuccessfully": "Uspješno obrisano.", "deleting": "Brisanje...", "descending": "Silazno", + "deselectAllRows": "Odznači sve redove", "duplicate": "Duplikat", "duplicateWithoutSaving": "Dupliciraj bez spremanja promjena", "edit": "Uredi", @@ -203,6 +204,7 @@ "newPassword": "Nova lozinka", "noFiltersSet": "Nema postavljenih filtera", "noLabel": "", + "noOptions": "Nema opcija", "noResults": "Nema pronađenih {{label}}. Ili {{label}} još uvijek ne postoji ili nijedan od odgovara postavljenim filterima.", "noValue": "Bez vrijednosti", "none": "Nijedan", @@ -222,10 +224,13 @@ "saving": "Spremanje...", "searchBy": "Traži po {{label}}", "selectAll": "Odaberite sve {{count}} {{label}}", + "selectAllRows": "Odaberite sve redove", "selectValue": "Odaberi vrijednost", "selectedCount": "{{count}} {{label}} odabrano", + "showAllLabel": "Prikaži sve {{label}}", "sorryNotFound": "Nažalost, ne postoji ništa što odgovara vašem zahtjevu.", "sort": "Sortiraj", + "sortByLabelDirection": "Sortiraj prema {{label}} {{direction}}", "stayOnThisPage": "Ostani na ovoj stranici", "submissionSuccessful": "Uspješno slanje", "submit": "Podnesi", @@ -282,6 +287,7 @@ "invalidSelection": "Ovo polje ima nevaljan odabir.", "invalidSelections": "Ovo polje ima sljedeće nevaljane odabire:", "lessThanMin": "{{value}} is below the minimum allowable {{label}} limit of {{min}}.", + "limitReached": "Dosegnut je limit, može se dodati samo {{max}} stavki.", "longerThanMin": "Ova vrijednost mora biti duža od minimalne dužine od {{minLength}} znakova", "notValidDate": "\"{{value}}\" nije valjan datum.", "required": "Ovo polje je obvezno.", diff --git a/src/translations/hu.json b/src/translations/hu.json index 4d7f41ddd5..2e5fa1a077 100644 --- a/src/translations/hu.json +++ b/src/translations/hu.json @@ -63,8 +63,8 @@ "deletingFile": "Hiba történt a fájl törlésekor.", "deletingTitle": "Hiba történt a {{title}} törlése közben. Kérjük, ellenőrizze a kapcsolatot, és próbálja meg újra.", "emailOrPasswordIncorrect": "A megadott e-mail-cím vagy jelszó helytelen.", - "followingFieldsInvalid_other": "A következő mezők érvénytelenek:", "followingFieldsInvalid_one": "A következő mező érvénytelen:", + "followingFieldsInvalid_other": "A következő mezők érvénytelenek:", "incorrectCollection": "Helytelen gyűjtemény", "invalidFileType": "Érvénytelen fájltípus", "invalidFileTypeValue": "Érvénytelen fájltípus: {{value}}", @@ -173,6 +173,7 @@ "deletedSuccessfully": "Sikeresen törölve.", "deleting": "Törlés...", "descending": "Csökkenő", + "deselectAllRows": "Jelölje ki az összes sort", "duplicate": "Duplikálás", "duplicateWithoutSaving": "Duplikálás a módosítások mentése nélkül", "edit": "Szerkesztés", @@ -203,6 +204,7 @@ "newPassword": "Új jelszó", "noFiltersSet": "Nincs beállítva szűrő", "noLabel": "", + "noOptions": "Nincs lehetőség", "noResults": "Nem találtunk {{label}}. Vagy még nem létezik {{label}}, vagy egyik sem felel meg a fent megadott szűrőknek.", "noValue": "Nincs érték", "none": "Semmi", @@ -222,10 +224,13 @@ "saving": "Mentés...", "searchBy": "Keresés a következő szerint: {{label}}", "selectAll": "Az összes kijelölése: {{count}} {{label}}", + "selectAllRows": "Válassza ki az összes sort", "selectValue": "Válasszon ki egy értéket", "selectedCount": "{{count}} {{label}} kiválasztva", + "showAllLabel": "Mutasd az összes {{címke}}", "sorryNotFound": "Sajnáljuk – nincs semmi, ami megfelelne a kérésének.", "sort": "Rendezés", + "sortByLabelDirection": "Rendezés {{label}} {{direction}} szerint", "stayOnThisPage": "Maradjon ezen az oldalon", "submissionSuccessful": "Beküldés sikeres.", "submit": "Beküldés", @@ -247,20 +252,21 @@ "welcome": "Üdvözöljük" }, "operators": { + "contains": "tartalmaz", "equals": "egyenlő", - "isNotEqualTo": "nem egyenlő", - "isIn": "benne van", - "isNotIn": "nincs benne", "exists": "létezik", "isGreaterThan": "nagyobb, mint", + "isGreaterThanOrEqualTo": "nagyobb vagy egyenlő, mint", + "isIn": "benne van", "isLessThan": "kisebb, mint", "isLessThanOrEqualTo": "kisebb vagy egyenlő, mint", - "isGreaterThanOrEqualTo": "nagyobb vagy egyenlő, mint", - "near": "közel", "isLike": "olyan, mint", - "contains": "tartalmaz" + "isNotEqualTo": "nem egyenlő", + "isNotIn": "nincs benne", + "near": "közel" }, "upload": { + "dragAndDrop": "Húzzon ide egy fájlt", "dragAndDropHere": "vagy húzzon ide egy fájlt", "fileName": "Fájlnév", "fileSize": "Fájl mérete", @@ -269,7 +275,6 @@ "moreInfo": "További információ", "selectCollectionToBrowse": "Válassza ki a böngészni kívánt gyűjteményt", "selectFile": "Válasszon ki egy fájlt", - "dragAndDrop": "Húzzon ide egy fájlt", "sizes": "Méretek", "width": "Szélesség" }, @@ -282,6 +287,7 @@ "invalidSelection": "Ez a mező érvénytelen kijelöléssel rendelkezik.", "invalidSelections": "Ez a mező a következő érvénytelen kijelöléseket tartalmazza:", "lessThanMin": "{{value}} kisebb, mint a megengedett minimum {{label}} érték, ami {{min}}.", + "limitReached": "Elérte a korlátot, csak {{max}} elem adható hozzá.", "longerThanMin": "Ennek az értéknek hosszabbnak kell lennie, mint a minimális {{minLength}} karakter hosszúság.", "notValidDate": "\" {{value}} \" nem érvényes dátum.", "required": "Ez a mező kötelező.", diff --git a/src/translations/it.json b/src/translations/it.json index 6c938f4151..d280f12109 100644 --- a/src/translations/it.json +++ b/src/translations/it.json @@ -63,8 +63,8 @@ "deletingFile": "Si è verificato un errore durante l'eleminazione del file.", "deletingTitle": "Si è verificato un errore durante l'eliminazione di {{title}}. Per favore controlla la tua connessione e riprova.", "emailOrPasswordIncorrect": "L'email o la password fornita non è corretta.", - "followingFieldsInvalid_other": "I seguenti campi non sono validi:", "followingFieldsInvalid_one": "Il seguente campo non è valido:", + "followingFieldsInvalid_other": "I seguenti campi non sono validi:", "incorrectCollection": "Collezione non corretta", "invalidFileType": "Tipo di file non valido", "invalidFileTypeValue": "Tipo di file non valido: {{value}}", @@ -173,6 +173,7 @@ "deletedSuccessfully": "Eliminato con successo.", "deleting": "Sto eliminando...", "descending": "Decrescente", + "deselectAllRows": "Deseleziona tutte le righe", "duplicate": "Duplica", "duplicateWithoutSaving": "Duplica senza salvare le modifiche", "edit": "Modificare", @@ -203,6 +204,7 @@ "newPassword": "Nuova Password", "noFiltersSet": "Nessun filtro impostato", "noLabel": "", + "noOptions": "Nessuna opzione", "noResults": "Nessun {{label}} trovato. Non esiste ancora nessun {{label}} oppure nessuno corrisponde ai filtri che hai specificato sopra.", "noValue": "Nessun valore", "none": "Nessuno", @@ -222,10 +224,13 @@ "saving": "Salvo...", "searchBy": "Cerca per {{label}}", "selectAll": "Seleziona tutto {{count}} {{label}}", + "selectAllRows": "Seleziona tutte le righe", "selectValue": "Seleziona un valore", "selectedCount": "{{count}} {{label}} selezionato", + "showAllLabel": "Mostra tutti {{label}}", "sorryNotFound": "Siamo spiacenti, non c'è nulla che corrisponda alla tua richiesta.", "sort": "Ordina", + "sortByLabelDirection": "Ordina per {{label}} {{direction}}", "stayOnThisPage": "Rimani su questa pagina", "submissionSuccessful": "Invio riuscito.", "submit": "Invia", @@ -282,6 +287,7 @@ "invalidSelection": "Questo campo ha una selezione non valida.", "invalidSelections": "'In questo campo sono presenti le seguenti selezioni non valide:'", "lessThanMin": "{{value}} è inferiore al minimo consentito {{label}} di {{min}}.", + "limitReached": "Raggiunto il limite, possono essere aggiunti solo {{max}} elementi.", "longerThanMin": "Questo valore deve essere più lungo della lunghezza minima di {{minLength}} caratteri.", "notValidDate": "\"{{value}}\" non è una data valida.", "required": "Questo campo è obbligatorio.", diff --git a/src/translations/ja.json b/src/translations/ja.json index 17a7ebb628..7f39eb076c 100644 --- a/src/translations/ja.json +++ b/src/translations/ja.json @@ -63,8 +63,8 @@ "deletingFile": "ファイルの削除中にエラーが発生しました。", "deletingTitle": "{{title}} を削除する際にエラーが発生しました。接続を確認してからもう一度お試しください。", "emailOrPasswordIncorrect": "メールアドレス、または、パスワードが正しくありません。", - "followingFieldsInvalid_other": "次のフィールドは無効です:", "followingFieldsInvalid_one": "次のフィールドは無効です:", + "followingFieldsInvalid_other": "次のフィールドは無効です:", "incorrectCollection": "不正なコレクション", "invalidFileType": "無効なファイル形式", "invalidFileTypeValue": "無効なファイル形式: {{value}}", @@ -173,14 +173,15 @@ "deletedSuccessfully": "正常に削除されました。", "deleting": "削除しています...", "descending": "降順", + "deselectAllRows": "すべての行の選択を解除します", "duplicate": "複製", "duplicateWithoutSaving": "変更を保存せずに複製", "edit": "編集", "editLabel": "{{label}} を編集", + "editing": "編集", "editingLabel_many": "{{count}}つの{{label}}を編集しています", "editingLabel_one": "{{count}}つの{{label}}を編集しています", "editingLabel_other": "{{count}}つの{{label}}を編集しています", - "editing": "編集", "email": "メールアドレス", "emailAddress": "メールアドレス", "enterAValue": "値を入力", @@ -203,6 +204,7 @@ "newPassword": "新しいパスワード", "noFiltersSet": "絞り込みが未設定です。", "noLabel": "", + "noOptions": "選択肢なし", "noResults": "{{label}} データが見つかりませんでした。データが存在しない、または、絞り込みに一致するものがありません。", "noValue": "未設定", "none": "なし", @@ -222,10 +224,13 @@ "saving": "保存しています...", "searchBy": "{{label}} で検索", "selectAll": "すべての{{count}}つの{{label}}を選択", + "selectAllRows": "すべての行を選択します", "selectValue": "値を選択", "selectedCount": "{{count}}つの{{label}}を選択中", + "showAllLabel": "すべての{{label}}を表示する", "sorryNotFound": "申し訳ありません。リクエストに対応する内容が見つかりませんでした。", "sort": "並び替え", + "sortByLabelDirection": "{{label}}により並べ替え {{direction}}", "stayOnThisPage": "この画面にとどまる", "submissionSuccessful": "送信が成功しました。", "submit": "送信", @@ -247,20 +252,21 @@ "welcome": "ようこそ" }, "operators": { + "contains": "含む", "equals": "等しい", - "isNotEqualTo": "等しくない", - "isIn": "あります", - "isNotIn": "入っていません", "exists": "存在す", "isGreaterThan": "より大きい", + "isGreaterThanOrEqualTo": "以上", + "isIn": "あります", "isLessThan": "より小さい", "isLessThanOrEqualTo": "以下", - "isGreaterThanOrEqualTo": "以上", - "near": "近く", "isLike": "のような", - "contains": "含む" + "isNotEqualTo": "等しくない", + "isNotIn": "入っていません", + "near": "近く" }, "upload": { + "dragAndDrop": "ファイルをドラッグ アンド ドロップする", "dragAndDropHere": "または、このエリアにファイルをドラッグ & ドロップ", "fileName": "ファイル名", "fileSize": "ファイル容量", @@ -269,7 +275,6 @@ "moreInfo": "詳細を表示", "selectCollectionToBrowse": "閲覧するコレクションを選択", "selectFile": "ファイルを選択", - "dragAndDrop": "ファイルをドラッグ アンド ドロップする", "sizes": "容量", "width": "横幅" }, @@ -282,6 +287,7 @@ "invalidSelection": "無効な選択です。", "invalidSelections": "次の無効な選択があります: ", "lessThanMin": "{{value}}は許容最小{{label}}の{{min}}未満です。", + "limitReached": "制限に達しました、{{max}}個以上のアイテムを追加することはできません。", "longerThanMin": "{{minLength}} 文字以上にする必要があります。", "notValidDate": "\"{{value}}\" は有効な日付ではありません。", "required": "必須フィールドです。", @@ -293,15 +299,18 @@ "validUploadID": "有効なアップロードIDではありません。" }, "version": { + "aboutToPublishSelection": "選択中のすべての{{label}}を公開しようとしています。よろしいですか?", "aboutToRestore": "この {{label}} データを {{versionDate}} 時点のバージョンに復元しようとしています。", "aboutToRestoreGlobal": "グローバルな {{label}} データを {{versionDate}} 時点のバージョンに復元しようとしています。", "aboutToRevertToPublished": "このデータの変更を公開時の状態に戻そうとしています。よろしいですか?", "aboutToUnpublish": "このデータを非公開にしようとしています。よろしいですか?", + "aboutToUnpublishSelection": "選択したすべての{{label}}の公開を取り消そうとしています。よろしいですか?", "autosave": "自動保存", "autosavedSuccessfully": "自動保存に成功しました。", "autosavedVersion": "自動保存されたバージョン", "changed": "変更済み", "compareVersion": "バージョンを比較:", + "confirmPublish": "公開を確認する", "confirmRevertToSaved": "保存された状態に戻す確認", "confirmUnpublish": "非公開の確認", "confirmVersionRestoration": "バージョン復元の確認", @@ -313,6 +322,7 @@ "noRowsFound": "{{label}} は未設定です", "preview": "プレビュー", "problemRestoringVersion": "このバージョンの復元に問題がありました。", + "publish": "公開する", "publishChanges": "変更内容を公開", "published": "公開済み", "restoreThisVersion": "このバージョンを復元", @@ -324,6 +334,7 @@ "selectLocales": "表示するロケールを選択", "selectVersionToCompare": "比較するバージョンを選択", "showLocales": "ロケールを表示:", + "showingVersionsFor": "次のバージョンを表示します:", "status": "ステータス", "type": "タイプ", "unpublish": "非公開", @@ -332,6 +343,7 @@ "versionCount_many": "{{count}} バージョンがあります", "versionCount_none": "バージョンがありません", "versionCount_one": "{{count}} バージョンがあります", + "versionCount_other": "{{count}}バージョンが見つかりました", "versionCreatedOn": "{{version}} 作成日時:", "versionID": "バージョンID", "versions": "バージョン", diff --git a/src/translations/my.json b/src/translations/my.json index 7b1d54156f..99fb976ee1 100644 --- a/src/translations/my.json +++ b/src/translations/my.json @@ -63,8 +63,8 @@ "deletingFile": "ဖိုင်ကိုဖျက်ရာတွင် အမှားအယွင်းရှိနေသည်။", "deletingTitle": "{{title}} ကို ဖျက်ရာတွင် အမှားအယွင်းရှိခဲ့သည်။ သင့် အင်တာနက်လိုင်းအား စစ်ဆေးပြီး ထပ်မံကြို့စားကြည့်ပါ။", "emailOrPasswordIncorrect": "ထည့်သွင်းထားသော အီးမေးလ် သို့မဟုတ် စကားဝှက်သည် မမှန်ပါ။", - "followingFieldsInvalid_other": "ထည့်သွင်းထားသော အချက်အလက်များသည် မမှန်ကန်ပါ။", "followingFieldsInvalid_one": "ထည့်သွင်းထားသော အချက်အလက်သည် မမှန်ကန်ပါ။", + "followingFieldsInvalid_other": "ထည့်သွင်းထားသော အချက်အလက်များသည် မမှန်ကန်ပါ။", "incorrectCollection": "မှားယွင်းသော စုစည်းမှု", "invalidFileType": "မမှန်ကန်သော ဖိုင်အမျိုးအစား", "invalidFileTypeValue": "မမှန်ကန်သော ဖိုင်အမျိုးအစား: {{value}}", @@ -173,6 +173,7 @@ "deletedSuccessfully": "အောင်မြင်စွာ ဖျက်လိုက်ပါပြီ။", "deleting": "ဖျက်နေဆဲ ...", "descending": "ဆင်းသက်လာသည်။", + "deselectAllRows": "အားလုံးကို မရွေးနိုင်ပါ", "duplicate": "ပုံတူပွားမည်။", "duplicateWithoutSaving": "သေချာပါပြီ။", "edit": "တည်းဖြတ်ပါ။", @@ -203,6 +204,7 @@ "newPassword": "စကားဝှက် အသစ်", "noFiltersSet": "စစ်ထုတ်မှုများ မသတ်မှတ်ထားပါ။", "noLabel": "<မရှိ {{label}}>", + "noOptions": "ရွေးချယ်မှုမရှိပါ", "noResults": "{{label}} မတွေ့ပါ။ {{label}} မရှိသေးသည်ဖြစ်စေ အထက်တွင်ဖော်ပြထားသော စစ်ထုတ်မှုများနှင့် ကိုက်ညီမှုမရှိပါ။", "noValue": "တန်ဖိုး မရှိပါ။", "none": "တစ်ခုမှ", @@ -222,10 +224,13 @@ "saving": "သိမ်းနေဆဲ ...", "searchBy": "ရှာဖွေပါ။", "selectAll": "{{count}} {{label}} အားလုံးကို ရွေးပါ", + "selectAllRows": "အားလုံးကိုရွေးချယ်ပါ", "selectValue": "တစ်ခုခုကို ရွေးချယ်ပါ။", "selectedCount": "{{count}} {{label}} ကို ရွေးထားသည်။", + "showAllLabel": "Tunjukkan semua {{label}}", "sorryNotFound": "ဝမ်းနည်းပါသည်။ သင်ရှာနေတဲ့ဟာ ဒီမှာမရှိပါ။", "sort": "အစဉ်လိုက်", + "sortByLabelDirection": "အစဉ်အလိုက် စီမံခန့်ခွဲထားသည် {{label}} {{direction}}", "stayOnThisPage": "ဒီမှာပဲ ဆက်နေမည်။", "submissionSuccessful": "သိမ်းဆည်းမှု အောင်မြင်ပါသည်။", "submit": "သိမ်းဆည်းမည်။", @@ -282,6 +287,7 @@ "invalidSelection": "ဤအကွက်တွင် မမှန်ကန်သော ရွေးချယ်မှုတစ်ခုရှိသည်။", "invalidSelections": "ဤအကွက်တွင် အောက်ပါ မမှန်ကန်သော ရွေးချယ်မှုများ ရှိသည်", "lessThanMin": "{{value}} သည် {{min}} ထက် ပိုမိုနိမ့်သည်။ ဤသည်ဖြင့် {{label}} အနည်းဆုံးခွင့်ပြုထားသော တန်ဖိုးထက် နိမ့်သည်။", + "limitReached": "Had yang dibenarkan telah dicapai, hanya {{max}} item sahaja yang boleh ditambah.", "longerThanMin": "ဤတန်ဖိုးသည် အနိမ့်ဆုံးအရှည် {{minLength}} စာလုံးထက် ပိုရှည်ရမည်။", "notValidDate": "\"{{value}}\" သည် တရားဝင်ရက်စွဲမဟုတ်ပါ။", "required": "ဤအကွက်ကို လိုအပ်သည်။", diff --git a/src/translations/nb.json b/src/translations/nb.json index 3493db1de1..17b23706c5 100644 --- a/src/translations/nb.json +++ b/src/translations/nb.json @@ -63,8 +63,8 @@ "deletingFile": "Det oppstod en feil under sletting av filen.", "deletingTitle": "Det oppstod en feil under sletting av {{title}}. Sjekk tilkoblingen og prøv igjen.", "emailOrPasswordIncorrect": "E-postadressen eller passordet er feil.", - "followingFieldsInvalid_other": "Følgende felter er ugyldige:", "followingFieldsInvalid_one": "Følgende felt er ugyldig:", + "followingFieldsInvalid_other": "Følgende felter er ugyldige:", "incorrectCollection": "Ugyldig samling", "invalidFileType": "Ugyldig filtype", "invalidFileTypeValue": "Ugyldig filtype: {{value}}", @@ -173,6 +173,7 @@ "deletedSuccessfully": "Slettet.", "deleting": "Sletter...", "descending": "Synkende", + "deselectAllRows": "Fjern markeringen fra alle rader", "duplicate": "Dupliser", "duplicateWithoutSaving": "Dupliser uten å lagre endringer", "edit": "Redigere", @@ -203,6 +204,7 @@ "newPassword": "Nytt passord", "noFiltersSet": "Ingen filtre satt", "noLabel": "", + "noOptions": "Ingen alternativer", "noResults": "Ingen {{label}} funnet. Enten finnes det ingen {{label}} enda eller ingen matcher filterne du har spesifisert ovenfor.", "noValue": "Ingen verdi", "none": "Ingen", @@ -222,10 +224,13 @@ "saving": "Lagrer...", "searchBy": "Søk etter {{label}}", "selectAll": "Velg alle {{count}} {{label}}", + "selectAllRows": "Velg alle rader", "selectValue": "Velg en verdi", "selectedCount": "{{count}} {{label}} valgt", + "showAllLabel": "Vis alle {{label}}", "sorryNotFound": "Beklager, det er ingenting som samsvarer med forespørselen din.", "sort": "Sortér", + "sortByLabelDirection": "Sorter etter {{label}} {{direction}}", "stayOnThisPage": "Bli på denne siden", "submissionSuccessful": "Innsending vellykket.", "submit": "Send inn", @@ -282,6 +287,7 @@ "invalidSelection": "Dette feltet har en ugyldig utvalg.", "invalidSelections": "Dette feltet har følgende ugyldige utvalg:", "lessThanMin": "{{value}} er mindre enn den tillatte minimale {{label}} på {{min}}.", + "limitReached": "Begrensning nådd, bare {{max}} elementer kan legges til.", "longerThanMin": "Denne verdien må være lengre enn minimumslengden på {{minLength}} tegn.", "notValidDate": "\"{{value}}\" er ikke en gyldig dato.", "required": "Dette feltet er påkrevd.", diff --git a/src/translations/nl.json b/src/translations/nl.json index f7ccc9895b..147aa0e2f3 100644 --- a/src/translations/nl.json +++ b/src/translations/nl.json @@ -63,8 +63,8 @@ "deletingFile": "Er is een fout opgetreden bij het verwijderen van dit bestand.", "deletingTitle": "Er is een fout opgetreden tijdens het verwijderen van {{title}}. Controleer uw verbinding en probeer het opnieuw.", "emailOrPasswordIncorrect": "Het opgegeven e-mailadres of wachtwoord is onjuist.", - "followingFieldsInvalid_other": "De volgende velden zijn ongeldig:", "followingFieldsInvalid_one": "Het volgende veld is ongeldig:", + "followingFieldsInvalid_other": "De volgende velden zijn ongeldig:", "incorrectCollection": "Ongeldige collectie", "invalidFileType": "Ongeldig bestandstype", "invalidFileTypeValue": "Ongeldig bestandstype: {{value}}", @@ -173,6 +173,7 @@ "deletedSuccessfully": "Succesvol verwijderd.", "deleting": "Verwijderen...", "descending": "Aflopend", + "deselectAllRows": "Deselecteer alle rijen", "duplicate": "Dupliceren", "duplicateWithoutSaving": "Dupliceren zonder wijzigingen te bewaren", "edit": "Bewerk", @@ -203,6 +204,7 @@ "newPassword": "Nieuw wachtwoord", "noFiltersSet": "Geen filters ingesteld", "noLabel": "Geen \"{{label}}\"", + "noOptions": "Geen opties", "noResults": "Geen {{label}} gevonden. Of er bestaat nog geen {{label}}, of niets komt overeen met de hierboven gespecifieerde filters.", "noValue": "Geen waarde", "none": "Niets", @@ -222,10 +224,13 @@ "saving": "Bewaren...", "searchBy": "Zoeken op {{label}}", "selectAll": "Alles selecteren {{count}} {{label}}", + "selectAllRows": "Selecteer alle rijen", "selectValue": "Selecteer een waarde", "selectedCount": "{{count}} {{label}} geselecteerd", + "showAllLabel": "Toon alle {{label}}", "sorryNotFound": "Sorry, er is niets dat overeen komt met uw verzoek.", "sort": "Sorteer", + "sortByLabelDirection": "Sorteer op {{label}} {{direction}}", "stayOnThisPage": "Blijf op deze pagina", "submissionSuccessful": "Indiening succesvol.", "submit": "Indienen", @@ -282,6 +287,7 @@ "invalidSelection": "Dit veld heeft een ongeldige selectie.", "invalidSelections": "Dit veld heeft de volgende ongeldige selecties:", "lessThanMin": "{{value}} is kleiner dan de minimaal toegestane {{label}} van {{min}}.", + "limitReached": "Limiet bereikt, er kunnen slechts {{max}} items worden toegevoegd.", "longerThanMin": "Deze waarde moet langer zijn dan de minimale lengte van {{minLength}} tekens.", "notValidDate": "\"{{value}}\" is geen geldige datum.", "required": "Dit veld is verplicht.", diff --git a/src/translations/pl.json b/src/translations/pl.json index 99613d87c4..c2e681f639 100644 --- a/src/translations/pl.json +++ b/src/translations/pl.json @@ -63,8 +63,8 @@ "deletingFile": "", "deletingTitle": "Wystąpił błąd podczas usuwania {{title}}. Proszę, sprawdź swoje połączenie i spróbuj ponownie.", "emailOrPasswordIncorrect": "Podany adres e-mail lub hasło jest nieprawidłowe.", - "followingFieldsInvalid_other": "Następujące pola są nieprawidłowe:", "followingFieldsInvalid_one": "To pole jest nieprawidłowe:", + "followingFieldsInvalid_other": "Następujące pola są nieprawidłowe:", "incorrectCollection": "Nieprawidłowa kolekcja", "invalidFileType": "Nieprawidłowy typ pliku", "invalidFileTypeValue": "Nieprawidłowy typ pliku: {{value}}", @@ -173,6 +173,7 @@ "deletedSuccessfully": "Skutecznie usunięte.", "deleting": "Usuwanie...", "descending": "Malejąco", + "deselectAllRows": "Odznacz wszystkie wiersze", "duplicate": "Zduplikuj", "duplicateWithoutSaving": "Zduplikuj bez zapisywania zmian", "edit": "Edytować", @@ -203,6 +204,7 @@ "newPassword": "Nowe hasło", "noFiltersSet": "Brak ustawionych filtrów", "noLabel": "", + "noOptions": "Brak opcji", "noResults": "Nie znaleziono {{label}}. Być może {{label}} jeszcze nie istnieje, albo żaden nie pasuje do filtrów określonych powyżej.", "noValue": "Brak wartości", "none": "Nic", @@ -222,10 +224,13 @@ "saving": "Zapisywanie...", "searchBy": "Szukaj według", "selectAll": "Wybierz wszystkie {{liczba}} {{etykieta}}", + "selectAllRows": "Wybierz wszystkie wiersze", "selectValue": "Wybierz wartość", "selectedCount": "Wybrano {{count}} {{label}}", + "showAllLabel": "Pokaż wszystkie {{label}}", "sorryNotFound": "Przepraszamy — nie ma nic, co odpowiadałoby twojej prośbie.", "sort": "Sortuj", + "sortByLabelDirection": "Sortuj według {{label}} {{direction}}", "stayOnThisPage": "Pozostań na stronie", "submissionSuccessful": "Zgłoszenie zakończone powodzeniem.", "submit": "Zatwierdź", @@ -282,6 +287,7 @@ "invalidSelection": "To pole ma nieprawidłowy wybór.", "invalidSelections": "To pole zawiera następujące, nieprawidłowe wybory:", "lessThanMin": "{{value}} jest mniejsze niż minimalnie dozwolony {{label}} wynoszący {{min}}.", + "limitReached": "Osiągnięto limit, można dodać tylko {{max}} elementów.", "longerThanMin": "Ta wartość musi być dłuższa niż minimalna długość znaków: {{minLength}}.", "notValidDate": "\"{{value}}\" nie jest prawidłową datą.", "required": "To pole jest wymagane.", diff --git a/src/translations/pt.json b/src/translations/pt.json index 9166a65738..2ea860d7e2 100644 --- a/src/translations/pt.json +++ b/src/translations/pt.json @@ -63,8 +63,8 @@ "deletingFile": "Ocorreu um erro ao excluir o arquivo.", "deletingTitle": "Ocorreu um erro ao excluir {{title}}. Por favor, verifique sua conexão e tente novamente.", "emailOrPasswordIncorrect": "O email ou senha fornecido está incorreto.", - "followingFieldsInvalid_other": "Os campos a seguir estão inválidos:", "followingFieldsInvalid_one": "O campo a seguir está inválido:", + "followingFieldsInvalid_other": "Os campos a seguir estão inválidos:", "incorrectCollection": "Coleção Incorreta", "invalidFileType": "Tipo de arquivo inválido", "invalidFileTypeValue": "Tipo de arquivo inválido: {{value}}", @@ -173,6 +173,7 @@ "deletedSuccessfully": "Apagado com sucesso.", "deleting": "Excluindo...", "descending": "Decrescente", + "deselectAllRows": "Desmarcar todas as linhas", "duplicate": "Duplicar", "duplicateWithoutSaving": "Duplicar sem salvar alterações", "edit": "Editar", @@ -203,6 +204,7 @@ "newPassword": "Nova Senha", "noFiltersSet": "Nenhum filtro definido", "noLabel": "", + "noOptions": "Sem opções", "noResults": "Nenhum {{label}} encontrado. Ou nenhum(a) {{label}} existe ainda, ou nenhum(a) corresponde aos filtros que você especificou acima.", "noValue": "Nenhum valor", "none": "Nenhum", @@ -222,10 +224,13 @@ "saving": "Salvando...", "searchBy": "Buscar por {{label}}", "selectAll": "Selecione tudo {{count}} {{label}}", + "selectAllRows": "Selecione todas as linhas", "selectValue": "Selecione um valor", "selectedCount": "{{count}} {{label}} selecionado", + "showAllLabel": "Mostre todos {{label}}", "sorryNotFound": "Desculpe—não há nada que corresponda à sua requisição.", "sort": "Ordenar", + "sortByLabelDirection": "Ordenar por {{label}} {{direction}}", "stayOnThisPage": "Permanecer nessa página", "submissionSuccessful": "Envio bem-sucedido.", "submit": "Enviar", @@ -282,6 +287,7 @@ "invalidSelection": "Esse campo tem uma seleção inválida.", "invalidSelections": "'Esse campo tem as seguintes seleções inválidas:'", "lessThanMin": "{{value}} é menor que o mínimo permitido de {{label}} que é {{min}}.", + "limitReached": "Limite atingido, apenas {{max}} itens podem ser adicionados.", "longerThanMin": "Esse valor deve ser maior do que o mínimo de {{minLength}} characters.", "notValidDate": "\"{{value}}\" não é uma data válida.", "required": "Esse campo é obrigatório.", diff --git a/src/translations/ro.json b/src/translations/ro.json index 56298aa24a..b7e17c5b05 100644 --- a/src/translations/ro.json +++ b/src/translations/ro.json @@ -63,8 +63,8 @@ "deletingFile": "S-a produs o eroare la ștergerea fișierului.", "deletingTitle": "S-a produs o eroare în timpul ștergerii {{title}}. Vă rugăm să verificați conexiunea și să încercați din nou.", "emailOrPasswordIncorrect": "Adresa de e-mail sau parola este incorectă.", - "followingFieldsInvalid_other": "Următoarele câmpuri nu sunt valabile:", "followingFieldsInvalid_one": "Următorul câmp nu este valid:", + "followingFieldsInvalid_other": "Următoarele câmpuri nu sunt valabile:", "incorrectCollection": "Colecție incorectă", "invalidFileType": "Tip de fișier invalid", "invalidFileTypeValue": "Tip de fișier invalid: {{value}}", @@ -173,6 +173,7 @@ "deletedSuccessfully": "Șters cu succes.", "deleting": "Deleting...", "descending": "Descendentă", + "deselectAllRows": "Deselectează toate rândurile", "duplicate": "Duplicați", "duplicateWithoutSaving": "Duplicați fără salvarea modificărilor", "edit": "Editează", @@ -203,6 +204,7 @@ "newPassword": "Parolă nouă", "noFiltersSet": "Nici un filtru setat", "noLabel": "", + "noOptions": "Fără opțiuni", "noResults": "Nici un {{label}} găsit. Fie nu există încă niciun {{label}}, fie niciunul nu se potrivește cu filtrele pe care le-ați specificat mai sus..", "noValue": "Nici o valoare", "none": "Nici unul", @@ -222,10 +224,13 @@ "saving": "Salvare...", "searchBy": "Căutați după {{label}}", "selectAll": "Selectați toate {{count}} {{label}}", + "selectAllRows": "Selectează toate rândurile", "selectValue": "Selectați o valoare", "selectedCount": "{{count}} {{label}} selectate", + "showAllLabel": "Afișează toate {{eticheta}}", "sorryNotFound": "Ne pare rău - nu există nimic care să corespundă cu cererea dvs.", "sort": "Sortează", + "sortByLabelDirection": "Sortează după {{etichetă}} {{direcţie}}", "stayOnThisPage": "Rămâneți pe această pagină", "submissionSuccessful": "Trimitere cu succes.", "submit": "Trimite", @@ -282,6 +287,7 @@ "invalidSelection": "Acest câmp are o selecție invalidă.", "invalidSelections": "Acest câmp are următoarele selecții invalide:", "lessThanMin": "{{value}} este mai mic decât valoarea minimă permisă pentru {{label}} de {{min}}.", + "limitReached": "Limita atinsă, doar {{max}} elemente pot fi adăugate.", "longerThanMin": "Această valoare trebuie să fie mai mare decât lungimea minimă de {{minLength}} caractere.", "notValidDate": "\"{{value}}\" nu este o dată valabilă.", "required": "Acest câmp este obligatoriu.", diff --git a/src/translations/ru.json b/src/translations/ru.json index 04e82d0bfc..f553c90d68 100644 --- a/src/translations/ru.json +++ b/src/translations/ru.json @@ -63,8 +63,8 @@ "deletingFile": "Произошла ошибка при удалении файла.", "deletingTitle": "При удалении {{title}} произошла ошибка. Пожалуйста, проверьте соединение и повторите попытку.", "emailOrPasswordIncorrect": "Указанный email или пароль неверен.", - "followingFieldsInvalid_other": "Следующие поля недействительны:", "followingFieldsInvalid_one": "Следующее поле недействительно:", + "followingFieldsInvalid_other": "Следующие поля недействительны:", "incorrectCollection": "Неправильная Коллекция", "invalidFileType": "Недопустимый тип файла", "invalidFileTypeValue": "Недопустимый тип файла: {{value}}", @@ -173,6 +173,7 @@ "deletedSuccessfully": "Удален успешно.", "deleting": "Удаление...", "descending": "Уменьшение", + "deselectAllRows": "Снять выделение со всех строк", "duplicate": "Дублировать", "duplicateWithoutSaving": "Дублирование без сохранения изменений", "edit": "Редактировать", @@ -203,6 +204,7 @@ "newPassword": "Новый пароль", "noFiltersSet": "Фильтры не установлены", "noLabel": "Без метки", + "noOptions": "Нет вариантов", "noResults": "Не найдено ни одной {{label}}. Либо {{label}} еще не существует, либо ни одна из них не соответствует фильтрам, которые вы указали выше.", "noValue": "Нет значения", "none": "Никто", @@ -222,10 +224,13 @@ "saving": "Сохранение...", "searchBy": "Искать по", "selectAll": "Выбрать все {{count}} {{label}}", + "selectAllRows": "Выбрать все строки", "selectValue": "Выбрать значение", "selectedCount": "{{count}} {{label}} выбрано", + "showAllLabel": "Показать все {{label}}", "sorryNotFound": "К сожалению, ничего подходящего под ваш запрос нет.", "sort": "Сортировать", + "sortByLabelDirection": "Сортировать по {{label}} {{direction}}", "stayOnThisPage": "Остаться на этой странице", "submissionSuccessful": "Успешно отправлено.", "submit": "Отправить", @@ -282,6 +287,7 @@ "invalidSelection": "В этом поле выбран недопустимый вариант.", "invalidSelections": "'Это поле содержит следующие неправильные варианты:'", "lessThanMin": "{{value}} меньше минимально допустимого значения {{label}} {{min}}.", + "limitReached": "Достигнут лимит, можно добавить только {{max}} элементов.", "longerThanMin": "Это значение должно быть больше минимальной длины символов: {{minLength}}.", "notValidDate": "\"{{value}}\" это не действительная дата.", "required": "Это обязательное поле.", diff --git a/src/translations/sv.json b/src/translations/sv.json index 4fd209c5b2..ad8539c2f5 100644 --- a/src/translations/sv.json +++ b/src/translations/sv.json @@ -63,8 +63,8 @@ "deletingFile": "Det gick inte att ta bort filen.", "deletingTitle": "Det uppstod ett fel vid borttagningen av {{title}}. Vänligen kontrollera din anslutning och försök igen.", "emailOrPasswordIncorrect": "E-postadressen eller lösenordet som angivits är felaktigt.", - "followingFieldsInvalid_other": "Följande fält är ogiltiga:", "followingFieldsInvalid_one": "Följande fält är ogiltigt:", + "followingFieldsInvalid_other": "Följande fält är ogiltiga:", "incorrectCollection": "Felaktig Samling", "invalidFileType": "Ogiltig filtyp", "invalidFileTypeValue": "Ogiltig filtyp: {{value}}", @@ -173,6 +173,7 @@ "deletedSuccessfully": "Togs bort framgångsrikt.", "deleting": "Tar bort...", "descending": "Fallande", + "deselectAllRows": "Avmarkera alla rader", "duplicate": "Duplicera", "duplicateWithoutSaving": "Duplicera utan att spara ändringar", "edit": "Redigera", @@ -203,6 +204,7 @@ "newPassword": "Nytt Lösenord", "noFiltersSet": "Inga filter inställda", "noLabel": "", + "noOptions": "Inga alternativ", "noResults": "Inga {{label}} hittades. Antingen finns inga {{label}} ännu eller matchar ingen filtren du har angett ovan.", "noValue": "Inget värde", "none": "Ingen", @@ -222,10 +224,13 @@ "saving": "Sparar...", "searchBy": "Sök efter {{label}}", "selectAll": "Välj alla {{count}} {{label}}", + "selectAllRows": "Välj alla rader", "selectValue": "Välj ett värde", "selectedCount": "{{count}} {{label}} har valts", + "showAllLabel": "Visa alla {{label}}", "sorryNotFound": "Tyvärr–det finns inget som motsvarar din begäran.", "sort": "Sortera", + "sortByLabelDirection": "Sortera efter {{label}} {{direction}}", "stayOnThisPage": "Stanna på denna sida", "submissionSuccessful": "Inlämningen Lyckades.", "submit": "Lämna in", @@ -282,6 +287,7 @@ "invalidSelection": "Det här fältet har ett ogiltigt urval.", "invalidSelections": "Det här fältet har följande ogiltiga val:", "lessThanMin": "{{value}} är mindre än den minst tillåtna {{label}} av {{min}}.", + "limitReached": "Gränsen nådd, endast {{max}} objekt kan läggas till.", "longerThanMin": "Detta värde måste vara längre än minimilängden på {{minLength}} tecken.", "notValidDate": "\"{{value}}\" är inte ett giltigt datum.", "required": "Detta fält är obligatoriskt.", diff --git a/src/translations/th.json b/src/translations/th.json index 09968e06e2..6140c3134c 100644 --- a/src/translations/th.json +++ b/src/translations/th.json @@ -63,8 +63,8 @@ "deletingFile": "เกิดปัญหาระหว่างการลบไฟล์", "deletingTitle": "เกิดปัญหาระหว่างการลบ {{title}} โปรดตรวจสอบการเชื่อมต่อของคุณแล้วลองอีกครั้ง", "emailOrPasswordIncorrect": "อีเมลหรือรหัสผ่านไม่ถูกต้อง", - "followingFieldsInvalid_other": "ช่องต่อไปนี้ไม่ถูกต้อง:", "followingFieldsInvalid_one": "ช่องต่อไปนี้ไม่ถูกต้อง:", + "followingFieldsInvalid_other": "ช่องต่อไปนี้ไม่ถูกต้อง:", "incorrectCollection": "Collection ไม่ถูกต้อง", "invalidFileType": "ประเภทของไฟล์ไม่ถูกต้อง", "invalidFileTypeValue": "ประเภทของไฟล์ไม่ถูกต้อง: {{value}}", @@ -173,6 +173,7 @@ "deletedSuccessfully": "ลบสำเร็จ", "deleting": "กำลังลบ...", "descending": "มากไปน้อย", + "deselectAllRows": "ยกเลิกการเลือกทุกแถว", "duplicate": "สำเนา", "duplicateWithoutSaving": "สำเนาโดยไม่บันทึกการแก้ไข", "edit": "แก้ไข", @@ -203,6 +204,7 @@ "newPassword": "รหัสผ่านใหม่", "noFiltersSet": "ไม่มีการกรอง", "noLabel": "<ไม่มี {{label}}>", + "noOptions": "ไม่มีตัวเลือก", "noResults": "ไม่พบ {{label}} เนื่องจากยังไม่มี {{label}} หรือไม่มี {{label}} ใดตรงกับการกรองด้านบน", "noValue": "ไม่มีค่า", "none": "ไม่มี", @@ -222,10 +224,13 @@ "saving": "กำลังบันทึก...", "searchBy": "ค้นหาด้วย {{label}}", "selectAll": "เลือกทั้งหมด {{count}} {{label}}", + "selectAllRows": "เลือกทุกแถว", "selectValue": "เลือกค่า", "selectedCount": "เลือก {{count}} {{label}} แล้ว", + "showAllLabel": "แสดง {{label}} ทั้งหมด", "sorryNotFound": "ขออภัย ไม่สามารถทำตามคำขอของคุณได้", "sort": "เรียง", + "sortByLabelDirection": "เรียงลำดับตาม {{label}} {{direction}}", "stayOnThisPage": "อยู่หน้านี้ต่อ", "submissionSuccessful": "ส่งสำเร็จ", "submit": "ส่ง", @@ -282,6 +287,7 @@ "invalidSelection": "ค่าที่เลือกไม่ถูกต้อง", "invalidSelections": "ค่าที่เลือกไม่ถูกต้องดังนี้:", "lessThanMin": "{{value}} น้อยกว่าค่าต่ำสุดที่อนุญาตของ {{label}} ซึ่งคือ {{min}}.", + "limitReached": "ถึงขีดจำกัดแล้ว, สามารถเพิ่มไอเทมได้เพียง {{max}} ไอเทมเท่านั้น", "longerThanMin": "ค่าต้องมีความยาวมากกว่า {{minLength}} ตัวอักษร", "notValidDate": "วันที่ \"{{value}}\" ไม่ถูกต้อง", "required": "จำเป็นต้องระบุค่า", diff --git a/src/translations/tr.json b/src/translations/tr.json index 4a5c10468d..181f0e736f 100644 --- a/src/translations/tr.json +++ b/src/translations/tr.json @@ -63,8 +63,8 @@ "deletingFile": "Dosya silinirken bir hatayla karşılaşıldı.", "deletingTitle": "{{title}} silinirken bir sorun yaşandı. Lütfen internet bağlantınızı kontrol edip tekrar deneyin.", "emailOrPasswordIncorrect": "Girilen e-posta veya parola hatalı", - "followingFieldsInvalid_other": "Lütfen geçersiz alanları düzeltin:", "followingFieldsInvalid_one": "Lütfen geçersiz alanı düzeltin:", + "followingFieldsInvalid_other": "Lütfen geçersiz alanları düzeltin:", "incorrectCollection": "Hatalı koleksiyon", "invalidFileType": "Geçersiz dosya türü", "invalidFileTypeValue": "Geçersiz dosya türü: {{value}}", @@ -173,6 +173,7 @@ "deletedSuccessfully": "Başarıyla silindi.", "deleting": "Siliniyor...", "descending": "Azalan", + "deselectAllRows": "Tüm satırların seçimini kaldır", "duplicate": "Çoğalt", "duplicateWithoutSaving": "Ayarları kaydetmeden çoğalt", "edit": "Düzenle", @@ -203,6 +204,7 @@ "newPassword": "Yeni parola", "noFiltersSet": "Tanımlı filtre yok", "noLabel": "<{{label}} yok>", + "noOptions": "Seçenek yok", "noResults": "{{label}} bulunamadı. Henüz bir {{label}} eklenmemiş olabilir veya seçtiğiniz filtrelerle eşleşen bir sonuç bulunamamış olabilir.", "noValue": "Değer yok", "none": "Hiç", @@ -222,10 +224,13 @@ "saving": "Kaydediliyor...", "searchBy": "Şuna göre sırala: {{label}}", "selectAll": "Tüm {{count}} {{label}}'ı seçin", + "selectAllRows": "Tüm satırları seçin", "selectValue": "Bir değer seçin", "selectedCount": "{{count}} {{label}} seçildi", + "showAllLabel": "Tüm {{label}} göster", "sorryNotFound": "Üzgünüz, isteğinizle eşleşen bir sonuç bulunamadı.", "sort": "Sırala", + "sortByLabelDirection": "{{label}} göre sırala {{direction}}", "stayOnThisPage": "Bu sayfada kal", "submissionSuccessful": "Gönderme başarılı", "submit": "Gönder", @@ -282,6 +287,7 @@ "invalidSelection": "Bu alanda geçersiz bir seçim mevcut.", "invalidSelections": "'Bu alan şu geçersiz seçimlere sahip:'", "lessThanMin": "{{value}} izin verilen minimum {{label}} değerinden daha küçük.", + "limitReached": "Sınır aşıldı, yalnızca {{max}} öğe eklenebilir.", "longerThanMin": "Bu değer minimum {{minLength}} karakterden uzun olmalıdır.", "notValidDate": "\"{{value}}\" geçerli bir tarih değil.", "required": "Bu alan gereklidir.", diff --git a/src/translations/translation-schema.json b/src/translations/translation-schema.json index 86f6c1687c..804b35cbeb 100644 --- a/src/translations/translation-schema.json +++ b/src/translations/translation-schema.json @@ -663,6 +663,9 @@ "descending": { "type": "string" }, + "deselectAllRows": { + "type": "string" + }, "duplicate": { "type": "string" }, @@ -753,6 +756,9 @@ "noLabel": { "type": "string" }, + "noOptions": { + "type": "string" + }, "noResults": { "type": "string" }, @@ -810,18 +816,27 @@ "selectAll": { "type": "string" }, + "selectAllRows": { + "type": "string" + }, "selectValue": { "type": "string" }, "selectedCount": { "type": "string" }, + "showAllLabel": { + "type": "string" + }, "sorryNotFound": { "type": "string" }, "sort": { "type": "string" }, + "sortByLabelDirection": { + "type": "string" + }, "stayOnThisPage": { "type": "string" }, @@ -1108,6 +1123,9 @@ "enterNumber": { "type": "string" }, + "limitReached": { + "type": "string" + }, "fieldHasNo": { "type": "string" }, diff --git a/src/translations/ua.json b/src/translations/ua.json index 257f37362f..ea6fae68db 100644 --- a/src/translations/ua.json +++ b/src/translations/ua.json @@ -63,8 +63,8 @@ "deletingFile": "Виникла помилка під час видалення файлу", "deletingTitle": "Виникла помилка під час видалення {{title}}, Будь ласка, перевірте ваше з'єднання та спробуйте ще раз.", "emailOrPasswordIncorrect": "Вказаний email або пароль не є вірними", - "followingFieldsInvalid_other": "Наступні поля не є вірними", "followingFieldsInvalid_one": "Наступне поле не є вірним:", + "followingFieldsInvalid_other": "Наступні поля не є вірними", "incorrectCollection": "Неправильна колекція", "invalidFileType": "Невіртий тип файлу", "invalidFileTypeValue": "Невірний тип файлу: {{value}}", @@ -131,8 +131,8 @@ "selectExistingLabel": "Вибрати існуючий {{label}}", "selectFieldsToEdit": "Виберіть поля для редагування", "showAll": "Показати все", - "swapUpload": "Замінити завантаження", "swapRelationship": "Замінити зв'язок", + "swapUpload": "Замінити завантаження", "textToDisplay": "Текст для відображення", "toggleBlock": "Перемкнути блок", "uploadNewLabel": "Завантажити новий {{label}}" @@ -173,6 +173,7 @@ "deletedSuccessfully": "Успішно видалено.", "deleting": "Видалення...", "descending": "В порядку спадання", + "deselectAllRows": "Скасувати вибір всіх рядків", "duplicate": "Дублювати", "duplicateWithoutSaving": "Дублювання без збереження змін", "edit": "Редагувати", @@ -203,6 +204,7 @@ "newPassword": "Новий пароль", "noFiltersSet": "Відсусті фільтри", "noLabel": "<без {{label}}>", + "noOptions": "Немає варіантів", "noResults": "Жодного {{label}} не знайдено. Або {{label}} ще не існує, або жодна з них не відповідає фільтрам, які ви задали више.", "noValue": "Немає значення", "none": "Ніхто", @@ -222,10 +224,13 @@ "saving": "Збереження...", "searchBy": "Шукати по {{label}}", "selectAll": "Вибрати всі {{count}} {{label}}", + "selectAllRows": "Вибрати всі рядки", "selectValue": "Вибрати значення", "selectedCount": "Вибрано {{count}} {{label}}", + "showAllLabel": "Показати всі {{label}}", "sorryNotFound": "Вибачте - немає нічого, що відповідало б Вашому запиту.", "sort": "Сортувати", + "sortByLabelDirection": "Сортувати за {{label}} {{direction}}", "stayOnThisPage": "Залишитись на цій сторінці", "submissionSuccessful": "Успішно відправлено.", "submit": "Відправити", @@ -282,6 +287,7 @@ "invalidSelection": "Це поле має некоректний вибір.", "invalidSelections": "Це поле має наступні невірні варіанти вибору:", "lessThanMin": "{{value}} менше, ніж дозволено мінімуму {{label}} в {{min}}.", + "limitReached": "Досягнуто межі, можна додати лише {{max}} елементів.", "longerThanMin": "Це значення має бути більше, ніж мінімальна довжина {{minLength}} characters.", "notValidDate": "\"{{value}}\" - некоректна дата.", "required": "Це поле є обов'язковим.", diff --git a/src/translations/vi.json b/src/translations/vi.json index ded98ed594..b152604fc2 100644 --- a/src/translations/vi.json +++ b/src/translations/vi.json @@ -63,8 +63,8 @@ "deletingFile": "Lỗi - Đã xảy ra vấn đề khi xóa tệp này.", "deletingTitle": "Lỗi - Đã xảy ra vấn đề khi xóa {{title}}. Hãy kiểm tra kết nối mạng và thử lại.", "emailOrPasswordIncorrect": "Lỗi - Email hoặc mật khẩu không chính xác.", - "followingFieldsInvalid_other": "Lỗi - Những fields sau không hợp lệ:", "followingFieldsInvalid_one": "Lỗi - Field sau không hợp lệ:", + "followingFieldsInvalid_other": "Lỗi - Những fields sau không hợp lệ:", "incorrectCollection": "Lỗi - Collection không hợp lệ.", "invalidFileType": "Lỗi - Định dạng tệp không hợp lệ.", "invalidFileTypeValue": "Lỗi - Định dạng tệp không hợp lệ: {{value}}.", @@ -173,6 +173,7 @@ "deletedSuccessfully": "Đã xoá thành công.", "deleting": "Đang xóa...", "descending": "Xếp theo thứ tự giảm dần", + "deselectAllRows": "Bỏ chọn tất cả các hàng", "duplicate": "Tạo bản sao", "duplicateWithoutSaving": "Không lưu dữ liệu và tạo bản sao", "edit": "Chỉnh sửa", @@ -203,6 +204,7 @@ "newPassword": "Mật khảu mới", "noFiltersSet": "Không có bộ lọc nào được áp dụng", "noLabel": "", + "noOptions": "Không có lựa chọn", "noResults": "Danh sách rỗng: {{label}}. Có thể {{label}} chưa tồn tại hoặc không có dữ kiện trùng với bộ lọc hiện tại.", "noValue": "Không có giá trị", "none": "Không có", @@ -222,10 +224,13 @@ "saving": "Đang lưu...", "searchBy": "Tìm với {{label}}", "selectAll": "Chọn tất cả {{count}} {{label}}", + "selectAllRows": "Chọn tất cả các hàng", "selectValue": "Chọn một giá trị", "selectedCount": "Đã chọn {{count}} {{label}}", + "showAllLabel": "Hiển thị tất cả {{label}}", "sorryNotFound": "Xin lỗi, không có kết quả nào tương ứng với request của bạn.", "sort": "Sắp xếp", + "sortByLabelDirection": "Sắp xếp theo {{label}} {{direction}}", "stayOnThisPage": "Ở lại trang này", "submissionSuccessful": "Gửi thành công.", "submit": "Gửi", @@ -282,6 +287,7 @@ "invalidSelection": "Lựa chọn ở field này không hợp lệ.", "invalidSelections": "'Field này có những lựa chọn không hợp lệ sau:'", "lessThanMin": "{{value}} nhỏ hơn giá trị tối thiểu cho phép của {{label}} là {{min}}.", + "limitReached": "Đã đạt giới hạn, chỉ có thể thêm {{max}} mục.", "longerThanMin": "Giá trị này cần có độ dài tối thiểu {{minLength}} ký tự.", "notValidDate": "\"{{value}}\" không phải là một ngày (date) hợp lệ.", "required": "Field này cần được diền.", diff --git a/src/translations/zh.json b/src/translations/zh.json index a37a48d4b7..98e595a938 100644 --- a/src/translations/zh.json +++ b/src/translations/zh.json @@ -63,8 +63,8 @@ "deletingFile": "删除文件时出现了错误。", "deletingTitle": "删除{{title}}时出现了错误。请检查您的连接并重试。", "emailOrPasswordIncorrect": "提供的电子邮件或密码不正确。", - "followingFieldsInvalid_other": "以下字段是无效的:", "followingFieldsInvalid_one": "下面的字段是无效的:", + "followingFieldsInvalid_other": "以下字段是无效的:", "incorrectCollection": "不正确的集合", "invalidFileType": "无效的文件类型", "invalidFileTypeValue": "无效的文件类型: {{value}}", @@ -173,6 +173,7 @@ "deletedSuccessfully": "已成功删除。", "deleting": "删除中...", "descending": "降序", + "deselectAllRows": "取消选择所有行", "duplicate": "重复", "duplicateWithoutSaving": "重复而不保存更改。", "edit": "编辑", @@ -203,6 +204,7 @@ "newPassword": "新密码", "noFiltersSet": "没有设置过滤器", "noLabel": "<没有{{label}}>", + "noOptions": "没有选项", "noResults": "没有找到{{label}}。{{label}}并不存在或没有符合您上面所指定的过滤器。", "noValue": "没有值", "none": "无", @@ -222,10 +224,13 @@ "saving": "保存中...", "searchBy": "搜索{{label}}", "selectAll": "选择所有 {{count}} {{label}}", + "selectAllRows": "选择所有行", "selectValue": "选择一个值", "selectedCount": "已选择 {{count}} {{label}}", + "showAllLabel": "显示所有{{label}}", "sorryNotFound": "对不起,没有与您的请求相对应的东西。", "sort": "排序", + "sortByLabelDirection": "按{{label}} {{direction}}排序", "stayOnThisPage": "停留在此页面", "submissionSuccessful": "提交成功。", "submit": "提交", @@ -282,6 +287,7 @@ "invalidSelection": "这个字段有一个无效的选择。", "invalidSelections": "这个字段有以下无效的选择:", "lessThanMin": "{{value}}小于允许的最小{{label}},该最小值为{{min}}。", + "limitReached": "已达限制,只能添加{{max}}个项目。", "longerThanMin": "该值必须大于{{minLength}}字符的最小长度", "notValidDate": "\"{{value}}\"不是一个有效的日期。", "required": "该字段为必填项目。", diff --git a/src/types/constants.ts b/src/types/constants.ts new file mode 100644 index 0000000000..cac6ee6fe3 --- /dev/null +++ b/src/types/constants.ts @@ -0,0 +1,17 @@ +export const validOperators = [ + 'equals', + 'contains', + 'not_equals', + 'in', + 'all', + 'not_in', + 'exists', + 'greater_than', + 'greater_than_equal', + 'less_than', + 'less_than_equal', + 'like', + 'within', + 'intersects', + 'near', +] as const; diff --git a/src/types/index.ts b/src/types/index.ts index 7397ec4af7..afd0f34bf7 100644 --- a/src/types/index.ts +++ b/src/types/index.ts @@ -1,21 +1,9 @@ import { TypeWithTimestamps } from '../collections/config/types'; +import { validOperators } from './constants'; export { PayloadRequest } from '../express/types'; -export type Operator = - | 'equals' - | 'contains' - | 'not_equals' - | 'in' - | 'all' - | 'not_in' - | 'exists' - | 'greater_than' - | 'greater_than_equal' - | 'less_than' - | 'less_than_equal' - | 'like' - | 'near'; +export type Operator = typeof validOperators[number]; export type WhereField = { [key in Operator]?: unknown; diff --git a/src/uploads/generateFileData.ts b/src/uploads/generateFileData.ts index 46cc535fb2..33586505c1 100644 --- a/src/uploads/generateFileData.ts +++ b/src/uploads/generateFileData.ts @@ -114,6 +114,7 @@ export const generateFileData = async ({ fileBuffer = await sharpFile.toBuffer({ resolveWithObject: true }); ({ mime, ext } = await fromBuffer(fileBuffer.data)); // This is getting an incorrect gif height back. fileData.width = fileBuffer.info.width; + fileData.height = fileBuffer.info.height; fileData.filesize = fileBuffer.info.size; // Animated GIFs + WebP aggregate the height from every frame, so we need to use divide by number of pages diff --git a/src/uploads/imageResizer.ts b/src/uploads/imageResizer.ts index 7da8f0a313..d28d85a7d7 100644 --- a/src/uploads/imageResizer.ts +++ b/src/uploads/imageResizer.ts @@ -106,7 +106,7 @@ const createResult = ( * @returns true if the image needs to be resized, false otherwise */ const needsResize = ( - { width: desiredWidth, height: desiredHeigth, withoutEnlargement, withoutReduction }: ImageSize, + { width: desiredWidth, height: desiredHeight, withoutEnlargement, withoutReduction }: ImageSize, original: ProbedImageSize, ): boolean => { // allow enlargement or prevent reduction (our default is to prevent @@ -115,7 +115,8 @@ const needsResize = ( return true; // needs resize } - const isWidthOrHeightNotDefined = !desiredHeigth || !desiredWidth; + const isWidthOrHeightNotDefined = !desiredHeight || !desiredWidth; + if (isWidthOrHeightNotDefined) { // If with and height are not defined, it means there is a format conversion // and the image needs to be "resized" (transformed). @@ -123,7 +124,7 @@ const needsResize = ( } const hasInsufficientWidth = original.width < desiredWidth; - const hasInsufficientHeight = original.height < desiredHeigth; + const hasInsufficientHeight = original.height < desiredHeight; if (hasInsufficientWidth && hasInsufficientHeight) { // doesn't need resize - prevent enlargement. This should only happen if both width and height are insufficient. // if only one dimension is insufficient and the other is sufficient, resizing needs to happen, as the image diff --git a/src/utilities/checkDuplicateCollections.ts b/src/utilities/checkDuplicateCollections.ts index 2a34f67c68..03c1146c8e 100644 --- a/src/utilities/checkDuplicateCollections.ts +++ b/src/utilities/checkDuplicateCollections.ts @@ -1,9 +1,9 @@ import { DuplicateCollection } from '../errors'; -import { CollectionConfig } from '../collections/config/types'; +import { SanitizedCollectionConfig } from '../collections/config/types'; const getDuplicates = (arr: string[]) => arr.filter((item, index) => arr.indexOf(item) !== index); -const checkDuplicateCollections = (collections: CollectionConfig[]): void => { +const checkDuplicateCollections = (collections: SanitizedCollectionConfig[]): void => { const duplicateSlugs = getDuplicates(collections.map((c) => c.slug)); if (duplicateSlugs.length > 0) { throw new DuplicateCollection('slug', duplicateSlugs); diff --git a/src/utilities/findLocaleFromCode.ts b/src/utilities/findLocaleFromCode.ts new file mode 100644 index 0000000000..c3641eced1 --- /dev/null +++ b/src/utilities/findLocaleFromCode.ts @@ -0,0 +1,16 @@ +import type { SanitizedLocalizationConfig, Locale } from '../config/types'; +/* + return the Locale for given locale code, else return null +*/ +export const findLocaleFromCode = ( + localizationConfig: SanitizedLocalizationConfig, + locale: string, +): Locale | null => { + if (!localizationConfig?.locales || localizationConfig.locales.length === 0) { + return null; + } + + return localizationConfig.locales.find( + (el) => el?.code === locale, + ); +}; diff --git a/src/utilities/logger.ts b/src/utilities/logger.ts index 911a6306d5..fccd031d8a 100644 --- a/src/utilities/logger.ts +++ b/src/utilities/logger.ts @@ -2,10 +2,14 @@ import pino from 'pino'; export type PayloadLogger = pino.Logger; -const defaultLoggerOptions = { - prettyPrint: { - ignore: 'pid,hostname', - translateTime: 'HH:MM:ss', +const defaultLoggerOptions: pino.LoggerOptions = { + transport: { + target: 'pino-pretty', + options: { + colorize: true, + ignore: 'pid,hostname', + translateTime: 'HH:MM:ss', + }, }, }; diff --git a/templates/ecommerce/.env.example b/templates/ecommerce/.env.example index 7c16f9e3f2..ecbd588c90 100644 --- a/templates/ecommerce/.env.example +++ b/templates/ecommerce/.env.example @@ -6,8 +6,12 @@ PAYLOAD_PUBLIC_SERVER_URL=http://localhost:3000 STRIPE_SECRET_KEY= PAYLOAD_PUBLIC_STRIPE_IS_TEST_KEY=true STRIPE_WEBHOOKS_SIGNING_SECRET= +PAYLOAD_PUBLIC_DRAFT_SECRET=demo-draft-secret +REVALIDATION_KEY=demo-revalation-key # Next.js vars NEXT_PUBLIC_SERVER_URL=http://localhost:3000 NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY= NEXT_PUBLIC_IS_LIVE= +NEXT_PRIVATE_DRAFT_SECRET=demo-draft-secret +NEXT_PRIVATE_REVALIDATION_KEY=demo-revalation-key diff --git a/templates/ecommerce/next.config.js b/templates/ecommerce/next.config.js index 8947ed2680..4866b830ce 100644 --- a/templates/ecommerce/next.config.js +++ b/templates/ecommerce/next.config.js @@ -15,7 +15,7 @@ const nextConfig = { reactStrictMode: true, swcMinify: true, images: { - domains: ['localhost', process.env.NEXT_PUBLIC_SERVER_URL], + domains: ['localhost', process.env.NEXT_PUBLIC_SERVER_URL].filter(Boolean), // remotePatterns: [ // { // protocol: 'https', diff --git a/templates/ecommerce/src/app/(pages)/[slug]/page.tsx b/templates/ecommerce/src/app/(pages)/[slug]/page.tsx index f3b3f5e156..fe10c1a0cf 100644 --- a/templates/ecommerce/src/app/(pages)/[slug]/page.tsx +++ b/templates/ecommerce/src/app/(pages)/[slug]/page.tsx @@ -1,9 +1,10 @@ import React from 'react' import { Metadata } from 'next' +import { draftMode } from 'next/headers' import { notFound } from 'next/navigation' import { Page } from '../../../payload/payload-types' -import { staticHome } from '../../../payload/seed/static-home' +import { staticHome } from '../../../payload/seed/home-static' import { fetchDoc } from '../../_api/fetchDoc' import { fetchDocs } from '../../_api/fetchDocs' import { Blocks } from '../../_components/Blocks' @@ -11,19 +12,33 @@ import { Hero } from '../../_components/Hero' import { generateMeta } from '../../_utilities/generateMeta' export default async function Page({ params: { slug = 'home' } }) { - let page = await fetchDoc({ - collection: 'pages', - slug, - }) + const { isEnabled: isDraftMode } = draftMode() - // If no `home` page exists, render a static one using dummy content - // You should delete this code once you have created a home page in the CMS - // This is really only useful for those who are demoing this template + let page: Page | null = null + + try { + page = await fetchDoc({ + collection: 'pages', + slug, + draft: isDraftMode, + }) + } catch (error) { + // when deploying this template on Payload Cloud, this page needs to build before the APIs are live + // so swallow the error here and simply render the page with fallback data where necessary + // in production you may want to redirect to a 404 page or at least log the error somewhere + // console.error(error) + } + + // if no `home` page exists, render a static one using dummy content + // you should delete this code once you have a home page in the CMS + // this is really only useful for those who are demoing this template if (!page && slug === 'home') { page = staticHome } - if (!page) return notFound() + if (!page) { + return notFound() + } const { hero, layout } = page @@ -39,16 +54,31 @@ export default async function Page({ params: { slug = 'home' } }) { } export async function generateStaticParams() { - const pages = await fetchDocs('pages') - - return pages?.map(({ slug }) => slug) + try { + const pages = await fetchDocs('pages') + return pages?.map(({ slug }) => slug) + } catch (error) { + return [] + } } export async function generateMetadata({ params: { slug = 'home' } }): Promise { - let page = await fetchDoc({ - collection: 'pages', - slug, - }) + const { isEnabled: isDraftMode } = draftMode() + + let page: Page | null = null + + try { + page = await fetchDoc({ + collection: 'pages', + slug, + draft: isDraftMode, + }) + } catch (error) { + // don't throw an error if the fetch fails + // this is so that we can render a static home page for the demo + // when deploying this template on Payload Cloud, this page needs to build before the APIs are live + // in production you may want to redirect to a 404 page or at least log the error somewhere + } if (!page && slug === 'home') { page = staticHome diff --git a/templates/ecommerce/src/app/(pages)/cart/CartPage/index.tsx b/templates/ecommerce/src/app/(pages)/cart/CartPage/index.tsx index 96844a2540..602fcd29cd 100644 --- a/templates/ecommerce/src/app/(pages)/cart/CartPage/index.tsx +++ b/templates/ecommerce/src/app/(pages)/cart/CartPage/index.tsx @@ -19,9 +19,8 @@ export const CartPage: React.FC<{ settings: Settings page: Page }> = props => { - const { - settings: { productsPage }, - } = props + const { settings } = props + const { productsPage } = settings || {} const { user } = useAuth() @@ -103,7 +102,7 @@ export const CartPage: React.FC<{ - navigate to the admin dashboard + edit this product in the admin panel {'.'}

diff --git a/templates/ecommerce/src/app/(pages)/cart/page.tsx b/templates/ecommerce/src/app/(pages)/cart/page.tsx index 482b7acf7b..5abfa63cc0 100644 --- a/templates/ecommerce/src/app/(pages)/cart/page.tsx +++ b/templates/ecommerce/src/app/(pages)/cart/page.tsx @@ -1,9 +1,11 @@ import React, { Fragment } from 'react' import { Metadata } from 'next' +import { notFound } from 'next/navigation' -import { Page } from '../../../payload/payload-types' +import { Page, Settings } from '../../../payload/payload-types' +import { staticCart } from '../../../payload/seed/cart-static' import { fetchDoc } from '../../_api/fetchDoc' -import { fetchGlobals } from '../../_api/fetchGlobals' +import { fetchSettings } from '../../_api/fetchGlobals' import { Blocks } from '../../_components/Blocks' import { Gutter } from '../../_components/Gutter' import { Hero } from '../../_components/Hero' @@ -14,12 +16,41 @@ import { CartPage } from './CartPage' import classes from './index.module.scss' export default async function Cart() { - const { settings } = await fetchGlobals() + let page: Page | null = null - const page = await fetchDoc({ - collection: 'pages', - slug: 'cart', - }) + try { + page = await fetchDoc({ + collection: 'pages', + slug: 'cart', + }) + } catch (error) { + // when deploying this template on Payload Cloud, this page needs to build before the APIs are live + // so swallow the error here and simply render the page with fallback data where necessary + // in production you may want to redirect to a 404 page or at least log the error somewhere + // console.error(error) + } + + // if no `cart` page exists, render a static one using dummy content + // you should delete this code once you have a cart page in the CMS + // this is really only useful for those who are demoing this template + if (!page) { + page = staticCart + } + + if (!page) { + return notFound() + } + + let settings: Settings | null = null + + try { + settings = await fetchSettings() + } catch (error) { + // when deploying this template on Payload Cloud, this page needs to build before the APIs are live + // so swallow the error here and simply render the page with fallback data where necessary + // in production you may want to redirect to a 404 page or at least log the error somewhere + // console.error(error) + } return ( @@ -61,10 +92,23 @@ export default async function Cart() { } export async function generateMetadata(): Promise { - const page = await fetchDoc({ - collection: 'pages', - slug: 'cart', - }) + let page: Page | null = null + + try { + page = await fetchDoc({ + collection: 'pages', + slug: 'cart', + }) + } catch (error) { + // don't throw an error if the fetch fails + // this is so that we can render a static cart page for the demo + // when deploying this template on Payload Cloud, this page needs to build before the APIs are live + // in production you may want to redirect to a 404 page or at least log the error somewhere + } + + if (!page) { + page = staticCart + } return generateMeta({ doc: page }) } diff --git a/templates/ecommerce/src/app/(pages)/checkout/CheckoutPage/index.tsx b/templates/ecommerce/src/app/(pages)/checkout/CheckoutPage/index.tsx index 35fb78cdfe..50b4026ab1 100644 --- a/templates/ecommerce/src/app/(pages)/checkout/CheckoutPage/index.tsx +++ b/templates/ecommerce/src/app/(pages)/checkout/CheckoutPage/index.tsx @@ -130,7 +130,7 @@ export const CheckoutPage: React.FC<{ - navigate to the admin dashboard + edit this product in the admin panel {'.'}

diff --git a/templates/ecommerce/src/app/(pages)/checkout/page.tsx b/templates/ecommerce/src/app/(pages)/checkout/page.tsx index 2a1170b416..cecc57b63a 100644 --- a/templates/ecommerce/src/app/(pages)/checkout/page.tsx +++ b/templates/ecommerce/src/app/(pages)/checkout/page.tsx @@ -1,7 +1,8 @@ import React, { Fragment } from 'react' import { Metadata } from 'next' -import { fetchGlobals } from '../../_api/fetchGlobals' +import { Settings } from '../../../payload/payload-types' +import { fetchSettings } from '../../_api/fetchGlobals' import { Gutter } from '../../_components/Gutter' import { Message } from '../../_components/Message' import { LowImpactHero } from '../../_heros/LowImpact' @@ -18,7 +19,14 @@ export default async function Checkout() { )}&redirect=${encodeURIComponent('/checkout')}`, }) - const { settings } = await fetchGlobals() + let settings: Settings | null = null + + try { + settings = await fetchSettings() + } catch (error) { + // no need to redirect to 404 here, just simply render the page with fallback data where necessary + console.error(error) // eslint-disable-line no-console + } return ( diff --git a/templates/ecommerce/src/app/(pages)/logout/LogoutPage/index.tsx b/templates/ecommerce/src/app/(pages)/logout/LogoutPage/index.tsx index a88d007ad1..177ecc146f 100644 --- a/templates/ecommerce/src/app/(pages)/logout/LogoutPage/index.tsx +++ b/templates/ecommerce/src/app/(pages)/logout/LogoutPage/index.tsx @@ -9,9 +9,8 @@ import { useAuth } from '../../../_providers/Auth' export const LogoutPage: React.FC<{ settings: Settings }> = props => { - const { - settings: { productsPage }, - } = props + const { settings } = props + const { productsPage } = settings || {} const { logout } = useAuth() const [success, setSuccess] = useState('') const [error, setError] = useState('') diff --git a/templates/ecommerce/src/app/(pages)/logout/page.tsx b/templates/ecommerce/src/app/(pages)/logout/page.tsx index 302c7cfab8..681a99207b 100644 --- a/templates/ecommerce/src/app/(pages)/logout/page.tsx +++ b/templates/ecommerce/src/app/(pages)/logout/page.tsx @@ -1,7 +1,8 @@ import React from 'react' import { Metadata } from 'next' -import { fetchGlobals } from '../../_api/fetchGlobals' +import { Settings } from '../../../payload/payload-types' +import { fetchSettings } from '../../_api/fetchGlobals' import { Gutter } from '../../_components/Gutter' import { mergeOpenGraph } from '../../_utilities/mergeOpenGraph' import { LogoutPage } from './LogoutPage' @@ -9,7 +10,16 @@ import { LogoutPage } from './LogoutPage' import classes from './index.module.scss' export default async function Logout() { - const { settings } = await fetchGlobals() + let settings: Settings | null = null + + try { + settings = await fetchSettings() + } catch (error) { + // when deploying this template on Payload Cloud, this page needs to build before the APIs are live + // so swallow the error here and simply render the page with fallback data where necessary + // in production you may want to redirect to a 404 page or at least log the error somewhere + // console.error(error) + } return ( diff --git a/templates/ecommerce/src/app/(pages)/orders/[id]/page.tsx b/templates/ecommerce/src/app/(pages)/orders/[id]/page.tsx index 80a2859201..48bbedc140 100644 --- a/templates/ecommerce/src/app/(pages)/orders/[id]/page.tsx +++ b/templates/ecommerce/src/app/(pages)/orders/[id]/page.tsx @@ -22,17 +22,24 @@ export default async function Order({ params: { id } }) { )}&redirect=${encodeURIComponent(`/order/${id}`)}`, }) - const order: Order = await fetch(`${process.env.NEXT_PUBLIC_SERVER_URL}/api/orders/${id}`, { - headers: { - 'Content-Type': 'application/json', - Authorization: `JWT ${token}`, - }, - })?.then(async res => { - const json = await res.json() - if ('error' in json && json.error) notFound() - if ('errors' in json && json.errors) notFound() - return json - }) + let order: Order | null = null + + try { + order = await fetch(`${process.env.NEXT_PUBLIC_SERVER_URL}/api/orders/${id}`, { + headers: { + 'Content-Type': 'application/json', + Authorization: `JWT ${token}`, + }, + })?.then(async res => { + if (!res.ok) notFound() + const json = await res.json() + if ('error' in json && json.error) notFound() + if ('errors' in json && json.errors) notFound() + return json + }) + } catch (error) { + console.error(error) // eslint-disable-line no-console + } if (!order) { notFound() @@ -92,7 +99,7 @@ export default async function Order({ params: { id } }) { - navigate to the admin dashboard + edit this product in the admin panel {'.'}

diff --git a/templates/ecommerce/src/app/(pages)/orders/page.tsx b/templates/ecommerce/src/app/(pages)/orders/page.tsx index 6f6a184c1d..75a261d75c 100644 --- a/templates/ecommerce/src/app/(pages)/orders/page.tsx +++ b/templates/ecommerce/src/app/(pages)/orders/page.tsx @@ -21,20 +21,30 @@ export default async function Orders() { )}&redirect=${encodeURIComponent('/orders')}`, }) - const orders: Order[] = await fetch(`${process.env.NEXT_PUBLIC_SERVER_URL}/api/orders`, { - headers: { - 'Content-Type': 'application/json', - Authorization: `JWT ${token}`, - }, - cache: 'no-store', - }) - ?.then(async res => { - const json = await res.json() - if ('error' in json && json.error) notFound() - if ('errors' in json && json.errors) notFound() - return json + let orders: Order[] | null = null + + try { + orders = await fetch(`${process.env.NEXT_PUBLIC_SERVER_URL}/api/orders`, { + headers: { + 'Content-Type': 'application/json', + Authorization: `JWT ${token}`, + }, + cache: 'no-store', }) - ?.then(json => json.docs) + ?.then(async res => { + if (!res.ok) notFound() + const json = await res.json() + if ('error' in json && json.error) notFound() + if ('errors' in json && json.errors) notFound() + return json + }) + ?.then(json => json.docs) + } catch (error) { + // when deploying this template on Payload Cloud, this page needs to build before the APIs are live + // so swallow the error here and simply render the page with fallback data where necessary + // in production you may want to redirect to a 404 page or at least log the error somewhere + // console.error(error) + } return ( diff --git a/templates/ecommerce/src/app/(pages)/products/[slug]/page.tsx b/templates/ecommerce/src/app/(pages)/products/[slug]/page.tsx index 2325c79291..358a0adf36 100644 --- a/templates/ecommerce/src/app/(pages)/products/[slug]/page.tsx +++ b/templates/ecommerce/src/app/(pages)/products/[slug]/page.tsx @@ -1,5 +1,6 @@ import React from 'react' import { Metadata } from 'next' +import { draftMode } from 'next/headers' import { notFound } from 'next/navigation' import { Product, Product as ProductType } from '../../../../payload/payload-types' @@ -11,12 +12,23 @@ import { ProductHero } from '../../../_heros/Product' import { generateMeta } from '../../../_utilities/generateMeta' export default async function Product({ params: { slug } }) { - const product = await fetchDoc({ - collection: 'products', - slug, - }) + const { isEnabled: isDraftMode } = draftMode() - if (!product) return notFound() + let product: Product | null = null + + try { + product = await fetchDoc({ + collection: 'products', + slug, + draft: isDraftMode, + }) + } catch (error) { + console.error(error) // eslint-disable-line no-console + } + + if (!product) { + notFound() + } const { layout } = product @@ -30,16 +42,26 @@ export default async function Product({ params: { slug } }) { } export async function generateStaticParams() { - const products = await fetchDocs('products') - - return products?.map(({ slug }) => slug) + try { + const products = await fetchDocs('products') + return products?.map(({ slug }) => slug) + } catch (error) { + return [] + } } export async function generateMetadata({ params: { slug } }): Promise { - const product = await fetchDoc({ - collection: 'products', - slug, - }) + const { isEnabled: isDraftMode } = draftMode() + + let product: Product | null = null + + try { + product = await fetchDoc({ + collection: 'products', + slug, + draft: isDraftMode, + }) + } catch (error) {} return generateMeta({ doc: product }) } diff --git a/templates/ecommerce/src/app/_api/fetchDoc.ts b/templates/ecommerce/src/app/_api/fetchDoc.ts index c39ced3922..126dcc2be6 100644 --- a/templates/ecommerce/src/app/_api/fetchDoc.ts +++ b/templates/ecommerce/src/app/_api/fetchDoc.ts @@ -1,7 +1,10 @@ +import type { RequestCookie } from 'next/dist/compiled/@edge-runtime/cookies' + import type { Config } from '../../payload/payload-types' import { ORDER } from '../_graphql/orders' import { PAGE } from '../_graphql/pages' import { PRODUCT } from '../_graphql/products' +import { payloadToken } from './token' const queryMap = { pages: { @@ -22,22 +25,31 @@ export const fetchDoc = async (args: { collection: keyof Config['collections'] slug?: string id?: string - token?: string + draft?: boolean }): Promise => { - const { collection, slug, token } = args || {} + const { collection, slug, draft } = args || {} if (!queryMap[collection]) throw new Error(`Collection ${collection} not found`) + let token: RequestCookie | undefined + + if (draft) { + const { cookies } = await import('next/headers') + token = cookies().get(payloadToken) + } + const doc: T = await fetch(`${process.env.PAYLOAD_PUBLIC_SERVER_URL}/api/graphql`, { method: 'POST', headers: { 'Content-Type': 'application/json', - ...(token ? { Authorization: `JWT ${token}` } : {}), + ...(token?.value && draft ? { Authorization: `JWT ${token.value}` } : {}), }, + next: { tags: [`${collection}_${slug}`] }, body: JSON.stringify({ query: queryMap[collection].query, variables: { slug, + draft, }, }), }) diff --git a/templates/ecommerce/src/app/_api/fetchDocs.ts b/templates/ecommerce/src/app/_api/fetchDocs.ts index 34ffdf3681..2198cb7645 100644 --- a/templates/ecommerce/src/app/_api/fetchDocs.ts +++ b/templates/ecommerce/src/app/_api/fetchDocs.ts @@ -1,7 +1,10 @@ +import type { RequestCookie } from 'next/dist/compiled/@edge-runtime/cookies' + import type { Config } from '../../payload/payload-types' import { ORDERS } from '../_graphql/orders' import { PAGES } from '../_graphql/pages' import { PRODUCTS } from '../_graphql/products' +import { payloadToken } from './token' const queryMap = { pages: { @@ -18,14 +21,26 @@ const queryMap = { }, } -export const fetchDocs = async (collection: keyof Config['collections']): Promise => { +export const fetchDocs = async ( + collection: keyof Config['collections'], + draft?: boolean, +): Promise => { if (!queryMap[collection]) throw new Error(`Collection ${collection} not found`) + let token: RequestCookie | undefined + + if (draft) { + const { cookies } = await import('next/headers') + token = cookies().get(payloadToken) + } + const docs: T[] = await fetch(`${process.env.PAYLOAD_PUBLIC_SERVER_URL}/api/graphql`, { method: 'POST', headers: { 'Content-Type': 'application/json', + ...(token?.value && draft ? { Authorization: `JWT ${token.value}` } : {}), }, + next: { tags: [collection] }, body: JSON.stringify({ query: queryMap[collection].query, }), diff --git a/templates/ecommerce/src/app/_api/fetchGlobals.ts b/templates/ecommerce/src/app/_api/fetchGlobals.ts index 876c929f63..c518d8d436 100644 --- a/templates/ecommerce/src/app/_api/fetchGlobals.ts +++ b/templates/ecommerce/src/app/_api/fetchGlobals.ts @@ -1,8 +1,10 @@ import type { Footer, Header, Settings } from '../../payload/payload-types' import { FOOTER_QUERY, HEADER_QUERY, SETTINGS_QUERY } from '../_graphql/globals' -async function getSettings(): Promise { - const settings = await fetch(`${process.env.PAYLOAD_PUBLIC_SERVER_URL}/api/graphql`, { +export async function fetchSettings(): Promise { + if (!process.env.NEXT_PUBLIC_SERVER_URL) throw new Error('NEXT_PUBLIC_SERVER_URL not found') + + const settings = await fetch(`${process.env.NEXT_PUBLIC_SERVER_URL}/api/graphql`, { method: 'POST', headers: { 'Content-Type': 'application/json', @@ -11,7 +13,10 @@ async function getSettings(): Promise { query: SETTINGS_QUERY, }), }) - ?.then(res => res.json()) + ?.then(res => { + if (!res.ok) throw new Error('Error fetching doc') + return res.json() + }) ?.then(res => { if (res?.errors) throw new Error(res?.errors[0]?.message || 'Error fetching settings') return res.data?.Settings @@ -20,8 +25,10 @@ async function getSettings(): Promise { return settings } -async function getHeader(): Promise
{ - const header = await fetch(`${process.env.PAYLOAD_PUBLIC_SERVER_URL}/api/graphql`, { +export async function fetchHeader(): Promise
{ + if (!process.env.NEXT_PUBLIC_SERVER_URL) throw new Error('NEXT_PUBLIC_SERVER_URL not found') + + const header = await fetch(`${process.env.NEXT_PUBLIC_SERVER_URL}/api/graphql`, { method: 'POST', headers: { 'Content-Type': 'application/json', @@ -30,7 +37,10 @@ async function getHeader(): Promise
{ query: HEADER_QUERY, }), }) - ?.then(res => res.json()) + ?.then(res => { + if (!res.ok) throw new Error('Error fetching doc') + return res.json() + }) ?.then(res => { if (res?.errors) throw new Error(res?.errors[0]?.message || 'Error fetching header') return res.data?.Header @@ -39,8 +49,10 @@ async function getHeader(): Promise
{ return header } -async function getFooter(): Promise