diff --git a/README.md b/README.md index 60fd9ae1f..3217d9976 100644 --- a/README.md +++ b/README.md @@ -8,6 +8,7 @@ | [**Code for Africa**](./apps/codeforafrica/) | Africa's largest network of civic tech and open data labs | | [**PesaYetu**](./apps/pesayetu/) | Data to hold your government accountable | | [**RoboShield**](./apps/roboshield/) | Guard your website against AI Bots | +| [**Central CMS**](./apps/centralcms/) | Manage content of your web Apps | ## Blogs diff --git a/apps/centralcms/.env.template b/apps/centralcms/.env.template new file mode 100644 index 000000000..29833eb9b --- /dev/null +++ b/apps/centralcms/.env.template @@ -0,0 +1,4 @@ +MONGO_URL= +PAYLOAD_SECRET=YOUR_SECRET_HERE +NEXT_PUBLIC_IMAGE_DOMAINS= +NEXT_PUBLIC_IMAGE_UNOPTIMIZED= diff --git a/apps/centralcms/.eslintignore b/apps/centralcms/.eslintignore new file mode 100644 index 000000000..19d6cb9ac --- /dev/null +++ b/apps/centralcms/.eslintignore @@ -0,0 +1,36 @@ +# dependencies +node_modules +.pnp +.pnp.js +.pnpm-debug.log + +# typescript +dist/ + +# testing +coverage + +# next.js +.next/ +out/ + +# payload +build/ + +# misc +.DS_Store +*.pem + +# debug +npm-debug.log* +yarn-debug.log* +yarn-error.log* + +# Vercel +.vercel +.now + +# turbo +.turbo +test-results/ +playwright-report/ diff --git a/apps/centralcms/.eslintrc.cjs b/apps/centralcms/.eslintrc.cjs new file mode 100644 index 000000000..38bdf1892 --- /dev/null +++ b/apps/centralcms/.eslintrc.cjs @@ -0,0 +1,12 @@ +/** @type {import('eslint').Linter.Config} */ +module.exports = { + root: true, + extends: ["next/core-web-vitals", "plugin:prettier/recommended"], + settings: { + "import/resolver": { + webpack: { + config: "./eslint.webpack.config.js", + }, + }, + }, +}; diff --git a/apps/centralcms/README.md b/apps/centralcms/README.md new file mode 100644 index 000000000..56857418c --- /dev/null +++ b/apps/centralcms/README.md @@ -0,0 +1,120 @@ +# Central CMS + +This repo has contains source code for [Payload 3.0](https://github.com/payloadcms/payload) CMS for multiple full stack Applications. It borrows ideas from this [example](https://payloadcms.com/blog/how-to-build-a-multi-tenant-app-with-payload) the main difference is that this example is suited for a scenario where you are managing content of multiple instances of the same application while in our case we are managing content of multiple instances of different applications. + +## Running the project in Development mode + +To spin up the project locally, follow these steps: + +1. First clone the repo +1. Then `cd YOUR_PROJECT_REPO && cp .env.template .env` +1. Next `pnpm install && pnpm run dev` (or `docker-compose up`, see [Docker](#docker)) +1. Now `open http://localhost:3000/admin` to access the admin panel +1. Create your first super-admin user using the form on the page + +That's it! + +Next step see [Configuring Domains for your applications](#configuring-domains-for-your-applications) + +### Docker + +Alternatively, you can use [Docker](https://www.docker.com) to spin up this project locally. To do so, follow these steps: + +1. Follow [steps 1 and 2 from above](#development), the docker-compose file will automatically use the `.env` file in your project root +1. Next run `docker-compose up` +1. Follow [steps 4 and 5 from above](#development) to login and create your first super-admin user + +That's it! The Docker instance will help you get up and running quickly while also standardizing the development environment across your teams. + +Next step see [Configuring Domains for your applications](#configuring-domains-for-your-applications) + +## Production + +To run Payload in production, you need to build and serve the Admin panel. To do so, follow these steps: + +1. First invoke the `payload build` script by running `pnpm build` or `pnpm run build` in your project root. This creates a `./build` directory with a production-ready admin bundle. +1. Then run `pnpm start` to run Node in production and serve Payload from the `./build` directory. + +Next step see [Configuring Domains for your applications](#configuring-domains-for-your-applications) + +## Configuring Domains for your applications + +After creating your Super-admin account you will need to create tenants (application instances) which will be tied to non super-admin user accounts. To do so, follow these steps: + +1. Select `Tenants` from the side bar menu or dashboard. +1. Click `Create New` +1. Provide the Name, and Domain for your application. + +Take Note: + +- For local development, you may need to edit your `/etc/hosts` file to ensure that you have multiple domains see this [article](https://linuxize.com/post/how-to-edit-your-hosts-file/). +- The domain configured for a tenant is used for authentication and authorization services for this application. + +- Therefore in this setup, non-super admin users will only be able to log in via a URL with a domain that has been configured for a tenant tied to their account i.e. If a user account is tied with Tenant A then the user account will only be able to log in via the allowed domains for Tenant A. +- A user account may be tied to more than one tenant, this allows a user to be authenticated using the same credentials for multiple applications. + +- A user account may have different roles per each tenant tied to their account. + +- A tenant may have more than one allowed domain, users will only be able to log in if they make login requests via a URL belonging to domains assigned to a tenant tied to their account. + +- Upon authentication via a given URL, the user will only be able to see content and configurations belonging to a specific tenant belonging to the domain they have been authenticated from + +- User accounts can be authenticated by using API keys, this is expected to be used for the Full-stack applications accessing content from the CMS, see [Authentication Config](https://payloadcms.com/docs/authentication/config). + +## Development Approach + +This section provides an overview of the approach and thought process behind the development of this application. It outlines the strategies, methodologies, and considerations that guided the overall development process. By understanding this approach, you can gain insight into the decisions made and the reasoning behind the design and implementation of the Multi-tenant application. + +### Project folder structure + +This application follow a standard convention in which each of the different configurations for a specific application e.g. collections, blocks, and fields will be enclosed in a folder structure following this convention: +`src/payload///` + +Two examples have been provided in this repository which are RoboShield and CodeforAfrica web applications. For example to store blocks under each application we can use the following paths: + +- `src/payload/blocks/roboshield` + +- `src/payload/blocks/codeforafrica` + +Moreover, to store collections we can use: + +- `src/payload/collections/roboshield` + +- `src/payload/collections/codeforafrica` + +This convention is expected to significantly reduce the time to migrate the multiple existing Payload instances to a single CMS instance and ensure that the code responsible for managing the content of a specific application is isolated, consequently improving maintainability. It should be noted that some of the configurations are shared across different applications and can be placed in a shared global folder to improve reusability, see the `src/payload/fields` + +### User Authentication and Authorization + +Custom logic has been implemented for authorization and authentication to meet this use case. + +For authentication two custom hooks have been tied to the User collection namely: + +- `checkDomain`: This hook is invoked `beforeLogin` It ensures that users with valid credentials (correct username and password) are also permitted to log in based on the domain from which they are accessing the application. This extra layer of security helps control access and enforces domain-specific login permissions. + +- `recordLastLoggedInTenant`: This hook is invoked `afterLogin`. It records the id of the tenant a user has been authenticated with. This is further used in providing access control to ensure that a user only sees collections, blocks and other configurations belonging to the domain they have been authenticated with. Take note: Super-Admins will only be authenticated via + +For authorization a custom function that is used in collection level `Access` function(s) named `canAccessFromDomain` has been implemented. The collection level Access has been tied to each collection which verifies if a user can view a given collection after being authenticated from a specific domain. The implementation of the function can be seen on `src/payload/access/` + +An example of this implementation can be seen below: + +``` +import type { Access } from "payload"; +import canAccessFromDomain from "@/payload/access/canAccessFromDomain" + +export const canRead: Access = ({ req: { user } }) => { + return canAccessFromDomain(user, "CodeforAfrica"); +}; + +``` + +The `canRead` Access function is tied to each collection under a specific folder e.g. for the example to control access of Authors collection we can use the following code snippet: + +``` +import { canRead } from "@/payload/access/codeforafrica"; + +const Authors: CollectionConfig = { + slug: "author", + access: { + read: canRead, +``` diff --git a/apps/centralcms/eslint.webpack.config.js b/apps/centralcms/eslint.webpack.config.js new file mode 100644 index 000000000..d0f4db108 --- /dev/null +++ b/apps/centralcms/eslint.webpack.config.js @@ -0,0 +1,25 @@ +const path = require("path"); + +module.exports = { + module: { + rules: [ + { + test: /\.svg$/i, + type: "asset", + resourceQuery: /url/, // *.svg?url + }, + { + test: /\.svg$/i, + issuer: /\.[jt]sx?$/, + resourceQuery: { not: [/url/] }, // exclude react component if *.svg?url + use: ["@svgr/webpack"], + }, + ], + }, + resolve: { + alias: { + "@/centralcms": path.resolve(__dirname, "src/"), + }, + extensions: [".ts", ".tsx"], + }, +}; diff --git a/apps/centralcms/next.config.mjs b/apps/centralcms/next.config.mjs new file mode 100644 index 000000000..44d6fe50a --- /dev/null +++ b/apps/centralcms/next.config.mjs @@ -0,0 +1,24 @@ +import { withPayload } from "@payloadcms/next/withPayload"; + +const PROJECT_ROOT = process.env.PROJECT_ROOT?.trim(); +const outputFileTracingRoot = PROJECT_ROOT + ? path.resolve(__dirname, PROJECT_ROOT) + : undefined; + +/** @type {import('next').NextConfig} */ +const nextConfig = { + transpilePackages: ["@commons-ui/core", "@commons-ui/next"], + reactStrictMode: true, + output: "standalone", + outputFileTracingRoot, + images: { + domains: process.env.NEXT_PUBLIC_IMAGE_DOMAINS?.split(",") + ?.map((d) => d.trim()) + ?.filter((d) => d), + unoptimized: + process.env.NEXT_PUBLIC_IMAGE_UNOPTIMIZED?.trim()?.toLowerCase() === + "true", + }, +}; + +export default withPayload(nextConfig); diff --git a/apps/centralcms/package.json b/apps/centralcms/package.json new file mode 100644 index 000000000..d2193112b --- /dev/null +++ b/apps/centralcms/package.json @@ -0,0 +1,56 @@ +{ + "name": "centralcms", + "version": "0.0.1", + "author": "Code for Africa ", + "description": "Headless CMS for CfA full stack applications", + "keywords": [ + "cms", + "next", + "next.js", + "react", + "payload" + ], + "license": "MIT", + "type": "module", + "scripts": { + "build": "cross-env NODE_OPTIONS=--no-deprecation next build", + "dev": "cross-env NODE_OPTIONS=--no-deprecation next dev", + "devsafe": "rm -rf .next && cross-env NODE_OPTIONS=--no-deprecation next dev", + "generate:types": "payload generate:types", + "lint": "cross-env NODE_OPTIONS=--no-deprecation next lint", + "payload": "cross-env NODE_OPTIONS=--no-deprecation payload", + "start": "cross-env NODE_OPTIONS=--no-deprecation next start" + }, + "dependencies": { + "@commons-ui/core": "workspace:*", + "@commons-ui/next": "workspace:*", + "@mui/utils": "catalog:", + "@payloadcms/db-mongodb": "catalog:payload-3", + "@payloadcms/db-postgres": "catalog:payload-3", + "@payloadcms/next": "catalog:payload-3", + "@payloadcms/plugin-cloud": "catalog:payload-3", + "@payloadcms/plugin-seo": "catalog:payload-3", + "@payloadcms/richtext-lexical": "catalog:payload-3", + "@payloadcms/ui": "catalog:payload-3", + "cross-env": "catalog:payload-3", + "graphql": "catalog:payload-3", + "next": "catalog:payload-3", + "payload": "catalog:payload-3", + "react": "catalog:payload-3", + "react-dom": "catalog:payload-3", + "sharp": "catalog:" + }, + "devDependencies": { + "@commons-ui/testing-library": "workspace:*", + "@svgr/webpack": "catalog:", + "@types/node": "catalog:payload-3", + "@types/react": "catalog:payload-3", + "@types/react-dom": "catalog:payload-3", + "eslint": "catalog:payload-3", + "eslint-config-next": "catalog:payload-3", + "typescript": "catalog:" + }, + "engines": { + "node": "^18.20.2 || >=20.9.0" + } +} diff --git a/apps/centralcms/public/images/cms/blocks/codeforafrica/contact_form.jpg b/apps/centralcms/public/images/cms/blocks/codeforafrica/contact_form.jpg new file mode 100644 index 000000000..06aeb1bc6 Binary files /dev/null and b/apps/centralcms/public/images/cms/blocks/codeforafrica/contact_form.jpg differ diff --git a/apps/centralcms/public/images/cms/blocks/codeforafrica/custom_page_header.jpg b/apps/centralcms/public/images/cms/blocks/codeforafrica/custom_page_header.jpg new file mode 100644 index 000000000..078189342 Binary files /dev/null and b/apps/centralcms/public/images/cms/blocks/codeforafrica/custom_page_header.jpg differ diff --git a/apps/centralcms/public/images/cms/blocks/codeforafrica/error.png b/apps/centralcms/public/images/cms/blocks/codeforafrica/error.png new file mode 100644 index 000000000..dcd2e66e6 Binary files /dev/null and b/apps/centralcms/public/images/cms/blocks/codeforafrica/error.png differ diff --git a/apps/centralcms/public/images/cms/blocks/codeforafrica/featured_stories.jpg b/apps/centralcms/public/images/cms/blocks/codeforafrica/featured_stories.jpg new file mode 100644 index 000000000..33cc3e2a5 Binary files /dev/null and b/apps/centralcms/public/images/cms/blocks/codeforafrica/featured_stories.jpg differ diff --git a/apps/centralcms/public/images/cms/blocks/codeforafrica/get_in_touch.jpg b/apps/centralcms/public/images/cms/blocks/codeforafrica/get_in_touch.jpg new file mode 100644 index 000000000..ca1fb2b1e Binary files /dev/null and b/apps/centralcms/public/images/cms/blocks/codeforafrica/get_in_touch.jpg differ diff --git a/apps/centralcms/public/images/cms/blocks/codeforafrica/get_involved.jpg b/apps/centralcms/public/images/cms/blocks/codeforafrica/get_involved.jpg new file mode 100644 index 000000000..e0759fe80 Binary files /dev/null and b/apps/centralcms/public/images/cms/blocks/codeforafrica/get_involved.jpg differ diff --git a/apps/centralcms/public/images/cms/blocks/codeforafrica/guiding_principles.png b/apps/centralcms/public/images/cms/blocks/codeforafrica/guiding_principles.png new file mode 100644 index 000000000..1b5de838a Binary files /dev/null and b/apps/centralcms/public/images/cms/blocks/codeforafrica/guiding_principles.png differ diff --git a/apps/centralcms/public/images/cms/blocks/codeforafrica/hero.jpg b/apps/centralcms/public/images/cms/blocks/codeforafrica/hero.jpg new file mode 100644 index 000000000..95c346194 Binary files /dev/null and b/apps/centralcms/public/images/cms/blocks/codeforafrica/hero.jpg differ diff --git a/apps/centralcms/public/images/cms/blocks/codeforafrica/join_our_slack.jpg b/apps/centralcms/public/images/cms/blocks/codeforafrica/join_our_slack.jpg new file mode 100644 index 000000000..1d245879a Binary files /dev/null and b/apps/centralcms/public/images/cms/blocks/codeforafrica/join_our_slack.jpg differ diff --git a/apps/centralcms/public/images/cms/blocks/codeforafrica/longform.jpg b/apps/centralcms/public/images/cms/blocks/codeforafrica/longform.jpg new file mode 100644 index 000000000..a89295287 Binary files /dev/null and b/apps/centralcms/public/images/cms/blocks/codeforafrica/longform.jpg differ diff --git a/apps/centralcms/public/images/cms/blocks/codeforafrica/meet_our_team.jpg b/apps/centralcms/public/images/cms/blocks/codeforafrica/meet_our_team.jpg new file mode 100644 index 000000000..7cac36961 Binary files /dev/null and b/apps/centralcms/public/images/cms/blocks/codeforafrica/meet_our_team.jpg differ diff --git a/apps/centralcms/public/images/cms/blocks/codeforafrica/our-work-showcase.png b/apps/centralcms/public/images/cms/blocks/codeforafrica/our-work-showcase.png new file mode 100644 index 000000000..6382ba177 Binary files /dev/null and b/apps/centralcms/public/images/cms/blocks/codeforafrica/our-work-showcase.png differ diff --git a/apps/centralcms/public/images/cms/blocks/codeforafrica/our_impact.jpg b/apps/centralcms/public/images/cms/blocks/codeforafrica/our_impact.jpg new file mode 100644 index 000000000..b01b4a6c4 Binary files /dev/null and b/apps/centralcms/public/images/cms/blocks/codeforafrica/our_impact.jpg differ diff --git a/apps/centralcms/public/images/cms/blocks/codeforafrica/our_mission.jpg b/apps/centralcms/public/images/cms/blocks/codeforafrica/our_mission.jpg new file mode 100644 index 000000000..e6b4fc1b0 Binary files /dev/null and b/apps/centralcms/public/images/cms/blocks/codeforafrica/our_mission.jpg differ diff --git a/apps/centralcms/public/images/cms/blocks/codeforafrica/our_offices.png b/apps/centralcms/public/images/cms/blocks/codeforafrica/our_offices.png new file mode 100644 index 000000000..140ebec9b Binary files /dev/null and b/apps/centralcms/public/images/cms/blocks/codeforafrica/our_offices.png differ diff --git a/apps/centralcms/public/images/cms/blocks/codeforafrica/page_header.jpg b/apps/centralcms/public/images/cms/blocks/codeforafrica/page_header.jpg new file mode 100644 index 000000000..c6eba6b6c Binary files /dev/null and b/apps/centralcms/public/images/cms/blocks/codeforafrica/page_header.jpg differ diff --git a/apps/centralcms/public/images/cms/blocks/codeforafrica/partners.png b/apps/centralcms/public/images/cms/blocks/codeforafrica/partners.png new file mode 100644 index 000000000..7f87ee37e Binary files /dev/null and b/apps/centralcms/public/images/cms/blocks/codeforafrica/partners.png differ diff --git a/apps/centralcms/public/images/cms/blocks/codeforafrica/posts.jpg b/apps/centralcms/public/images/cms/blocks/codeforafrica/posts.jpg new file mode 100644 index 000000000..dce8f4dbf Binary files /dev/null and b/apps/centralcms/public/images/cms/blocks/codeforafrica/posts.jpg differ diff --git a/apps/centralcms/public/images/cms/blocks/codeforafrica/projects.png b/apps/centralcms/public/images/cms/blocks/codeforafrica/projects.png new file mode 100644 index 000000000..0f1c207a5 Binary files /dev/null and b/apps/centralcms/public/images/cms/blocks/codeforafrica/projects.png differ diff --git a/apps/centralcms/public/images/cms/blocks/codeforafrica/team.png b/apps/centralcms/public/images/cms/blocks/codeforafrica/team.png new file mode 100644 index 000000000..0eb5dcb16 Binary files /dev/null and b/apps/centralcms/public/images/cms/blocks/codeforafrica/team.png differ diff --git a/apps/centralcms/public/images/cms/blocks/roboshield/blockBots.png b/apps/centralcms/public/images/cms/blocks/roboshield/blockBots.png new file mode 100644 index 000000000..68100afa9 Binary files /dev/null and b/apps/centralcms/public/images/cms/blocks/roboshield/blockBots.png differ diff --git a/apps/centralcms/public/images/cms/blocks/roboshield/blog.png b/apps/centralcms/public/images/cms/blocks/roboshield/blog.png new file mode 100644 index 000000000..c937c8e2e Binary files /dev/null and b/apps/centralcms/public/images/cms/blocks/roboshield/blog.png differ diff --git a/apps/centralcms/public/images/cms/blocks/roboshield/delays.png b/apps/centralcms/public/images/cms/blocks/roboshield/delays.png new file mode 100644 index 000000000..a3ce8f315 Binary files /dev/null and b/apps/centralcms/public/images/cms/blocks/roboshield/delays.png differ diff --git a/apps/centralcms/public/images/cms/blocks/roboshield/existingRobots.png b/apps/centralcms/public/images/cms/blocks/roboshield/existingRobots.png new file mode 100644 index 000000000..36892153b Binary files /dev/null and b/apps/centralcms/public/images/cms/blocks/roboshield/existingRobots.png differ diff --git a/apps/centralcms/public/images/cms/blocks/roboshield/finish.png b/apps/centralcms/public/images/cms/blocks/roboshield/finish.png new file mode 100644 index 000000000..18e0f5f94 Binary files /dev/null and b/apps/centralcms/public/images/cms/blocks/roboshield/finish.png differ diff --git a/apps/centralcms/public/images/cms/blocks/roboshield/hero.png b/apps/centralcms/public/images/cms/blocks/roboshield/hero.png new file mode 100644 index 000000000..097757658 Binary files /dev/null and b/apps/centralcms/public/images/cms/blocks/roboshield/hero.png differ diff --git a/apps/centralcms/public/images/cms/blocks/roboshield/pageHeader.png b/apps/centralcms/public/images/cms/blocks/roboshield/pageHeader.png new file mode 100644 index 000000000..4ebc71a0d Binary files /dev/null and b/apps/centralcms/public/images/cms/blocks/roboshield/pageHeader.png differ diff --git a/apps/centralcms/public/images/cms/blocks/roboshield/paths.png b/apps/centralcms/public/images/cms/blocks/roboshield/paths.png new file mode 100644 index 000000000..61f8d4632 Binary files /dev/null and b/apps/centralcms/public/images/cms/blocks/roboshield/paths.png differ diff --git a/apps/centralcms/public/images/cms/blocks/roboshield/robotsGenerator.png b/apps/centralcms/public/images/cms/blocks/roboshield/robotsGenerator.png new file mode 100644 index 000000000..6f4fb31ac Binary files /dev/null and b/apps/centralcms/public/images/cms/blocks/roboshield/robotsGenerator.png differ diff --git a/apps/centralcms/public/images/cms/blocks/roboshield/siteMaps.png b/apps/centralcms/public/images/cms/blocks/roboshield/siteMaps.png new file mode 100644 index 000000000..aa7b83c73 Binary files /dev/null and b/apps/centralcms/public/images/cms/blocks/roboshield/siteMaps.png differ diff --git a/apps/centralcms/public/images/cms/blocks/roboshield/statistics.png b/apps/centralcms/public/images/cms/blocks/roboshield/statistics.png new file mode 100644 index 000000000..7feefbfff Binary files /dev/null and b/apps/centralcms/public/images/cms/blocks/roboshield/statistics.png differ diff --git a/apps/centralcms/src/app/(payload)/admin/[[...segments]]/not-found.tsx b/apps/centralcms/src/app/(payload)/admin/[[...segments]]/not-found.tsx new file mode 100644 index 000000000..73751af84 --- /dev/null +++ b/apps/centralcms/src/app/(payload)/admin/[[...segments]]/not-found.tsx @@ -0,0 +1,27 @@ +/* THIS FILE WAS GENERATED AUTOMATICALLY BY PAYLOAD. */ +import type { Metadata } from "next"; + +import config from "@payload-config"; +/* DO NOT MODIFY IT BECAUSE IT COULD BE REWRITTEN AT ANY TIME. */ +import { NotFoundPage, generatePageMetadata } from "@payloadcms/next/views"; +import { importMap } from "../importMap"; + +type Args = { + params: { + segments: string[]; + }; + searchParams: { + [key: string]: string | string[]; + }; +}; + +export const generateMetadata = ({ + params, + searchParams, +}: Args): Promise => + generatePageMetadata({ config, params, searchParams }); + +const NotFound = ({ params, searchParams }: Args) => + NotFoundPage({ config, importMap, params, searchParams }); + +export default NotFound; diff --git a/apps/centralcms/src/app/(payload)/admin/[[...segments]]/page.tsx b/apps/centralcms/src/app/(payload)/admin/[[...segments]]/page.tsx new file mode 100644 index 000000000..a38559e03 --- /dev/null +++ b/apps/centralcms/src/app/(payload)/admin/[[...segments]]/page.tsx @@ -0,0 +1,26 @@ +/* THIS FILE WAS GENERATED AUTOMATICALLY BY PAYLOAD. */ +import type { Metadata } from "next"; +import { importMap } from "../importMap.js"; +import config from "@payload-config"; +/* DO NOT MODIFY IT BECAUSE IT COULD BE REWRITTEN AT ANY TIME. */ +import { RootPage, generatePageMetadata } from "@payloadcms/next/views"; + +type Args = { + params: { + segments: string[]; + }; + searchParams: { + [key: string]: string | string[]; + }; +}; + +export const generateMetadata = ({ + params, + searchParams, +}: Args): Promise => + generatePageMetadata({ config, params, searchParams }); + +const Page = ({ params, searchParams }: Args) => + RootPage({ config, importMap, params, searchParams }); + +export default Page; diff --git a/apps/centralcms/src/app/(payload)/admin/importMap.js b/apps/centralcms/src/app/(payload)/admin/importMap.js new file mode 100644 index 000000000..1cedadb71 --- /dev/null +++ b/apps/centralcms/src/app/(payload)/admin/importMap.js @@ -0,0 +1,84 @@ +import { RichTextCell as RichTextCell_0 } from "@payloadcms/richtext-lexical/client"; +import { RichTextField as RichTextField_1 } from "@payloadcms/richtext-lexical/client"; +import { getGenerateComponentMap as getGenerateComponentMap_2 } from "@payloadcms/richtext-lexical/generateComponentMap"; +import { HorizontalRuleFeatureClient as HorizontalRuleFeatureClient_3 } from "@payloadcms/richtext-lexical/client"; +import { InlineToolbarFeatureClient as InlineToolbarFeatureClient_4 } from "@payloadcms/richtext-lexical/client"; +import { FixedToolbarFeatureClient as FixedToolbarFeatureClient_5 } from "@payloadcms/richtext-lexical/client"; +import { HeadingFeatureClient as HeadingFeatureClient_6 } from "@payloadcms/richtext-lexical/client"; +import { BoldFeatureClient as BoldFeatureClient_7 } from "@payloadcms/richtext-lexical/client"; +import { ItalicFeatureClient as ItalicFeatureClient_8 } from "@payloadcms/richtext-lexical/client"; +import { UnderlineFeatureClient as UnderlineFeatureClient_9 } from "@payloadcms/richtext-lexical/client"; +import { StrikethroughFeatureClient as StrikethroughFeatureClient_10 } from "@payloadcms/richtext-lexical/client"; +import { SubscriptFeatureClient as SubscriptFeatureClient_11 } from "@payloadcms/richtext-lexical/client"; +import { SuperscriptFeatureClient as SuperscriptFeatureClient_12 } from "@payloadcms/richtext-lexical/client"; +import { InlineCodeFeatureClient as InlineCodeFeatureClient_13 } from "@payloadcms/richtext-lexical/client"; +import { ParagraphFeatureClient as ParagraphFeatureClient_14 } from "@payloadcms/richtext-lexical/client"; +import { AlignFeatureClient as AlignFeatureClient_15 } from "@payloadcms/richtext-lexical/client"; +import { IndentFeatureClient as IndentFeatureClient_16 } from "@payloadcms/richtext-lexical/client"; +import { UnorderedListFeatureClient as UnorderedListFeatureClient_17 } from "@payloadcms/richtext-lexical/client"; +import { OrderedListFeatureClient as OrderedListFeatureClient_18 } from "@payloadcms/richtext-lexical/client"; +import { ChecklistFeatureClient as ChecklistFeatureClient_19 } from "@payloadcms/richtext-lexical/client"; +import { LinkFeatureClient as LinkFeatureClient_20 } from "@payloadcms/richtext-lexical/client"; +import { RelationshipFeatureClient as RelationshipFeatureClient_21 } from "@payloadcms/richtext-lexical/client"; +import { BlockquoteFeatureClient as BlockquoteFeatureClient_22 } from "@payloadcms/richtext-lexical/client"; +import { UploadFeatureClient as UploadFeatureClient_23 } from "@payloadcms/richtext-lexical/client"; +import { default as default_24 } from "@/payload/components/RowLabel.tsx"; +import { OverviewComponent as OverviewComponent_25 } from "@payloadcms/plugin-seo/client"; +import { MetaTitleComponent as MetaTitleComponent_26 } from "@payloadcms/plugin-seo/client"; +import { MetaImageComponent as MetaImageComponent_27 } from "@payloadcms/plugin-seo/client"; +import { MetaDescriptionComponent as MetaDescriptionComponent_28 } from "@payloadcms/plugin-seo/client"; +import { PreviewComponent as PreviewComponent_29 } from "@payloadcms/plugin-seo/client"; + +export const importMap = { + "@payloadcms/richtext-lexical/client#RichTextCell": RichTextCell_0, + "@payloadcms/richtext-lexical/client#RichTextField": RichTextField_1, + "@payloadcms/richtext-lexical/generateComponentMap#getGenerateComponentMap": + getGenerateComponentMap_2, + "@payloadcms/richtext-lexical/client#HorizontalRuleFeatureClient": + HorizontalRuleFeatureClient_3, + "@payloadcms/richtext-lexical/client#InlineToolbarFeatureClient": + InlineToolbarFeatureClient_4, + "@payloadcms/richtext-lexical/client#FixedToolbarFeatureClient": + FixedToolbarFeatureClient_5, + "@payloadcms/richtext-lexical/client#HeadingFeatureClient": + HeadingFeatureClient_6, + "@payloadcms/richtext-lexical/client#BoldFeatureClient": BoldFeatureClient_7, + "@payloadcms/richtext-lexical/client#ItalicFeatureClient": + ItalicFeatureClient_8, + "@payloadcms/richtext-lexical/client#UnderlineFeatureClient": + UnderlineFeatureClient_9, + "@payloadcms/richtext-lexical/client#StrikethroughFeatureClient": + StrikethroughFeatureClient_10, + "@payloadcms/richtext-lexical/client#SubscriptFeatureClient": + SubscriptFeatureClient_11, + "@payloadcms/richtext-lexical/client#SuperscriptFeatureClient": + SuperscriptFeatureClient_12, + "@payloadcms/richtext-lexical/client#InlineCodeFeatureClient": + InlineCodeFeatureClient_13, + "@payloadcms/richtext-lexical/client#ParagraphFeatureClient": + ParagraphFeatureClient_14, + "@payloadcms/richtext-lexical/client#AlignFeatureClient": + AlignFeatureClient_15, + "@payloadcms/richtext-lexical/client#IndentFeatureClient": + IndentFeatureClient_16, + "@payloadcms/richtext-lexical/client#UnorderedListFeatureClient": + UnorderedListFeatureClient_17, + "@payloadcms/richtext-lexical/client#OrderedListFeatureClient": + OrderedListFeatureClient_18, + "@payloadcms/richtext-lexical/client#ChecklistFeatureClient": + ChecklistFeatureClient_19, + "@payloadcms/richtext-lexical/client#LinkFeatureClient": LinkFeatureClient_20, + "@payloadcms/richtext-lexical/client#RelationshipFeatureClient": + RelationshipFeatureClient_21, + "@payloadcms/richtext-lexical/client#BlockquoteFeatureClient": + BlockquoteFeatureClient_22, + "@payloadcms/richtext-lexical/client#UploadFeatureClient": + UploadFeatureClient_23, + "@/payload/components/RowLabel.tsx#default": default_24, + "@payloadcms/plugin-seo/client#OverviewComponent": OverviewComponent_25, + "@payloadcms/plugin-seo/client#MetaTitleComponent": MetaTitleComponent_26, + "@payloadcms/plugin-seo/client#MetaImageComponent": MetaImageComponent_27, + "@payloadcms/plugin-seo/client#MetaDescriptionComponent": + MetaDescriptionComponent_28, + "@payloadcms/plugin-seo/client#PreviewComponent": PreviewComponent_29, +}; diff --git a/apps/centralcms/src/app/(payload)/api/[...slug]/route.ts b/apps/centralcms/src/app/(payload)/api/[...slug]/route.ts new file mode 100644 index 000000000..20a7db151 --- /dev/null +++ b/apps/centralcms/src/app/(payload)/api/[...slug]/route.ts @@ -0,0 +1,16 @@ +/* THIS FILE WAS GENERATED AUTOMATICALLY BY PAYLOAD. */ +/* DO NOT MODIFY it because it could be re-written at any time. */ +import config from "@payload-config"; +import { + REST_DELETE, + REST_GET, + REST_OPTIONS, + REST_PATCH, + REST_POST, +} from "@payloadcms/next/routes"; + +export const GET = REST_GET(config); +export const POST = REST_POST(config); +export const DELETE = REST_DELETE(config); +export const PATCH = REST_PATCH(config); +export const OPTIONS = REST_OPTIONS(config); diff --git a/apps/centralcms/src/app/(payload)/api/graphql-playground/route.ts b/apps/centralcms/src/app/(payload)/api/graphql-playground/route.ts new file mode 100644 index 000000000..886afe86b --- /dev/null +++ b/apps/centralcms/src/app/(payload)/api/graphql-playground/route.ts @@ -0,0 +1,6 @@ +/* THIS FILE WAS GENERATED AUTOMATICALLY BY PAYLOAD. */ +/* DO NOT MODIFY it because it could be re-written at any time. */ +import config from "@payload-config"; +import { GRAPHQL_PLAYGROUND_GET } from "@payloadcms/next/routes"; + +export const GET = GRAPHQL_PLAYGROUND_GET(config); diff --git a/apps/centralcms/src/app/(payload)/api/graphql/route.ts b/apps/centralcms/src/app/(payload)/api/graphql/route.ts new file mode 100644 index 000000000..4232a621a --- /dev/null +++ b/apps/centralcms/src/app/(payload)/api/graphql/route.ts @@ -0,0 +1,6 @@ +/* THIS FILE WAS GENERATED AUTOMATICALLY BY PAYLOAD. */ +/* DO NOT MODIFY it because it could be re-written at any time. */ +import config from "@payload-config"; +import { GRAPHQL_POST } from "@payloadcms/next/routes"; + +export const POST = GRAPHQL_POST(config); diff --git a/apps/centralcms/src/app/(payload)/custom.scss b/apps/centralcms/src/app/(payload)/custom.scss new file mode 100644 index 000000000..e69de29bb diff --git a/apps/centralcms/src/app/(payload)/layout.tsx b/apps/centralcms/src/app/(payload)/layout.tsx new file mode 100644 index 000000000..9f2e90852 --- /dev/null +++ b/apps/centralcms/src/app/(payload)/layout.tsx @@ -0,0 +1,22 @@ +/* THIS FILE WAS GENERATED AUTOMATICALLY BY PAYLOAD. */ +import configPromise from "@payload-config"; +import "@payloadcms/next/css"; +import { RootLayout } from "@payloadcms/next/layouts"; +import { importMap } from "./admin/importMap.js"; + +/* DO NOT MODIFY IT BECAUSE IT COULD BE REWRITTEN AT ANY TIME. */ +import React from "react"; + +import "./custom.scss"; + +type Args = { + children: React.ReactNode; +}; + +const Layout = ({ children }: Args) => ( + + {children} + +); + +export default Layout; diff --git a/apps/centralcms/src/app/my-route/route.ts b/apps/centralcms/src/app/my-route/route.ts new file mode 100644 index 000000000..f05b12769 --- /dev/null +++ b/apps/centralcms/src/app/my-route/route.ts @@ -0,0 +1,14 @@ +import configPromise from "@payload-config"; +import { getPayload } from "payload"; + +export const GET = async () => { + const payload = await getPayload({ + config: configPromise, + }); + + const data = await payload.find({ + collection: "users", + }); + + return Response.json(data); +}; diff --git a/apps/centralcms/src/payload-types.ts b/apps/centralcms/src/payload-types.ts new file mode 100644 index 000000000..658f5e5a8 --- /dev/null +++ b/apps/centralcms/src/payload-types.ts @@ -0,0 +1,2073 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * This file was automatically generated by Payload. + * DO NOT MODIFY IT BY HAND. Instead, modify your source Payload config, + * and re-run `payload generate:types` to regenerate this file. + */ + +export interface Config { + auth: { + users: UserAuthOperations; + }; + collections: { + users: User; + media: Media; + tenants: Tenant; + author: Author; + donors: Donor; + "guiding-principles": GuidingPrinciple; + impact: Impact; + offices: Office; + members: Member; + partners: Partner; + projects: Project; + posts: Post; + tag: Tag; + teams: Team; + CodeForAfricaPages: CodeForAfricaPage; + RoboshieldPages: RoboshieldPage; + "payload-preferences": PayloadPreference; + "payload-migrations": PayloadMigration; + }; + db: { + defaultIDType: string; + }; + globals: { + "codeforafrica-site-settings": CodeforafricaSiteSetting; + "roboshield-site-settings": RoboshieldSiteSetting; + }; + locale: null; + user: User & { + collection: "users"; + }; +} +export interface UserAuthOperations { + forgotPassword: { + email: string; + password: string; + }; + login: { + email: string; + password: string; + }; + registerFirstUser: { + email: string; + password: string; + }; + unlock: { + email: string; + password: string; + }; +} +/** + * This interface was referenced by `Config`'s JSON-Schema + * via the `definition` "users". + */ +export interface User { + id: string; + firstName?: string | null; + lastName?: string | null; + roles: ("super-admin" | "user")[]; + tenants?: + | { + tenant: string | Tenant; + roles: ("admin" | "user")[]; + id?: string | null; + }[] + | null; + lastLoggedInTenant?: (string | null) | Tenant; + updatedAt: string; + createdAt: string; + enableAPIKey?: boolean | null; + apiKey?: string | null; + apiKeyIndex?: string | null; + email: string; + resetPasswordToken?: string | null; + resetPasswordExpiration?: string | null; + salt?: string | null; + hash?: string | null; + loginAttempts?: number | null; + lockUntil?: string | null; + password?: string | null; +} +/** + * This interface was referenced by `Config`'s JSON-Schema + * via the `definition` "tenants". + */ +export interface Tenant { + id: string; + name: string; + domains?: + | { + domain: string; + id?: string | null; + }[] + | null; + updatedAt: string; + createdAt: string; +} +/** + * This interface was referenced by `Config`'s JSON-Schema + * via the `definition` "media". + */ +export interface Media { + id: string; + alt: string; + updatedAt: string; + createdAt: string; + url?: string | null; + thumbnailURL?: string | null; + filename?: string | null; + mimeType?: string | null; + filesize?: number | null; + width?: number | null; + height?: number | null; + focalX?: number | null; + focalY?: number | null; +} +/** + * This interface was referenced by `Config`'s JSON-Schema + * via the `definition` "author". + */ +export interface Author { + id: string; + fullName: string; + bio?: string | null; + updatedAt: string; + createdAt: string; +} +/** + * This interface was referenced by `Config`'s JSON-Schema + * via the `definition` "donors". + */ +export interface Donor { + id: string; + name: string; + slug?: string | null; + logo: string | Media; + updatedAt: string; + createdAt: string; +} +/** + * This interface was referenced by `Config`'s JSON-Schema + * via the `definition` "guiding-principles". + */ +export interface GuidingPrinciple { + id: string; + title: string; + slug?: string | null; + icon: string | Media; + description: { + root: { + type: string; + children: { + type: string; + version: number; + [k: string]: unknown; + }[]; + direction: ("ltr" | "rtl") | null; + format: "left" | "start" | "center" | "right" | "end" | "justify" | ""; + indent: number; + version: number; + }; + [k: string]: unknown; + }; + updatedAt: string; + createdAt: string; +} +/** + * This interface was referenced by `Config`'s JSON-Schema + * via the `definition` "impact". + */ +export interface Impact { + id: string; + title: string; + description: { + root: { + type: string; + children: { + type: string; + version: number; + [k: string]: unknown; + }[]; + direction: ("ltr" | "rtl") | null; + format: "left" | "start" | "center" | "right" | "end" | "justify" | ""; + indent: number; + version: number; + }; + [k: string]: unknown; + }; + value: string; + icon: string | Media; + updatedAt: string; + createdAt: string; +} +/** + * This interface was referenced by `Config`'s JSON-Schema + * via the `definition` "offices". + */ +export interface Office { + id: string; + city: string; + /** + * @minItems 2 + * @maxItems 2 + */ + location: [number, number]; + addressLine1?: string | null; + addressLine2?: string | null; + zipCode?: string | null; + country?: + | ( + | "AFG" + | "ALA" + | "ALB" + | "DZA" + | "ASM" + | "AND" + | "AGO" + | "AIA" + | "ATA" + | "ATG" + | "ARG" + | "ARM" + | "ABW" + | "AUS" + | "AUT" + | "AZE" + | "BHS" + | "BHR" + | "BGD" + | "BRB" + | "BLR" + | "BEL" + | "BLZ" + | "BEN" + | "BMU" + | "BTN" + | "BOL" + | "BES" + | "BIH" + | "BWA" + | "BVT" + | "BRA" + | "IOT" + | "BRN" + | "BGR" + | "BFA" + | "BDI" + | "CPV" + | "KHM" + | "CMR" + | "CAN" + | "CYM" + | "CAF" + | "TCD" + | "CHL" + | "CHN" + | "CXR" + | "CCK" + | "COL" + | "COM" + | "COG" + | "COD" + | "COK" + | "CRI" + | "CIV" + | "HRV" + | "CUB" + | "CUW" + | "CYP" + | "CZE" + | "DNK" + | "DJI" + | "DMA" + | "DOM" + | "ECU" + | "EGY" + | "SLV" + | "GNQ" + | "ERI" + | "EST" + | "SWZ" + | "ETH" + | "FLK" + | "FRO" + | "FJI" + | "FIN" + | "FRA" + | "GUF" + | "PYF" + | "ATF" + | "GAB" + | "GMB" + | "GEO" + | "DEU" + | "GHA" + | "GIB" + | "GRC" + | "GRL" + | "GRD" + | "GLP" + | "GUM" + | "GTM" + | "GGY" + | "GIN" + | "GNB" + | "GUY" + | "HTI" + | "HMD" + | "VAT" + | "HND" + | "HKG" + | "HUN" + | "ISL" + | "IND" + | "IDN" + | "IRN" + | "IRQ" + | "IRL" + | "IMN" + | "ISR" + | "ITA" + | "JAM" + | "JPN" + | "JEY" + | "JOR" + | "KAZ" + | "KEN" + | "KIR" + | "PRK" + | "KOR" + | "KWT" + | "KGZ" + | "LAO" + | "LVA" + | "LBN" + | "LSO" + | "LBR" + | "LBY" + | "LIE" + | "LTU" + | "LUX" + | "MAC" + | "MDG" + | "MWI" + | "MYS" + | "MDV" + | "MLI" + | "MLT" + | "MHL" + | "MTQ" + | "MRT" + | "MUS" + | "MYT" + | "MEX" + | "FSM" + | "MDA" + | "MCO" + | "MNG" + | "MNE" + | "MSR" + | "MAR" + | "MOZ" + | "MMR" + | "NAM" + | "NRU" + | "NPL" + | "NLD" + | "NCL" + | "NZL" + | "NIC" + | "NER" + | "NGA" + | "NIU" + | "NFK" + | "MKD" + | "MNP" + | "NOR" + | "OMN" + | "PAK" + | "PLW" + | "PSE" + | "PAN" + | "PNG" + | "PRY" + | "PER" + | "PHL" + | "PCN" + | "POL" + | "PRT" + | "PRI" + | "QAT" + | "REU" + | "ROU" + | "RUS" + | "RWA" + | "BLM" + | "SHN" + | "KNA" + | "LCA" + | "MAF" + | "SPM" + | "VCT" + | "WSM" + | "SMR" + | "STP" + | "SAU" + | "SEN" + | "SRB" + | "SYC" + | "SLE" + | "SGP" + | "SXM" + | "SVK" + | "SVN" + | "SLB" + | "SOM" + | "ZAF" + | "SGS" + | "SSD" + | "ESP" + | "LKA" + | "SDN" + | "SUR" + | "SJM" + | "SWE" + | "CHE" + | "SYR" + | "TWN" + | "TJK" + | "TZA" + | "THA" + | "TLS" + | "TGO" + | "TKL" + | "TON" + | "TTO" + | "TUN" + | "TUR" + | "TKM" + | "TCA" + | "TUV" + | "UGA" + | "UKR" + | "ARE" + | "GBR" + | "USA" + | "UMI" + | "URY" + | "UZB" + | "VUT" + | "VEN" + | "VNM" + | "VGB" + | "VIR" + | "WLF" + | "ESH" + | "YEM" + | "ZMB" + | "ZWE" + ) + | null; + updatedAt: string; + createdAt: string; +} +/** + * This interface was referenced by `Config`'s JSON-Schema + * via the `definition` "members". + */ +export interface Member { + id: string; + image: string | Media; + name: string; + title: string; + slug?: string | null; + country?: + | ( + | "AFG" + | "ALA" + | "ALB" + | "DZA" + | "ASM" + | "AND" + | "AGO" + | "AIA" + | "ATA" + | "ATG" + | "ARG" + | "ARM" + | "ABW" + | "AUS" + | "AUT" + | "AZE" + | "BHS" + | "BHR" + | "BGD" + | "BRB" + | "BLR" + | "BEL" + | "BLZ" + | "BEN" + | "BMU" + | "BTN" + | "BOL" + | "BES" + | "BIH" + | "BWA" + | "BVT" + | "BRA" + | "IOT" + | "BRN" + | "BGR" + | "BFA" + | "BDI" + | "CPV" + | "KHM" + | "CMR" + | "CAN" + | "CYM" + | "CAF" + | "TCD" + | "CHL" + | "CHN" + | "CXR" + | "CCK" + | "COL" + | "COM" + | "COG" + | "COD" + | "COK" + | "CRI" + | "CIV" + | "HRV" + | "CUB" + | "CUW" + | "CYP" + | "CZE" + | "DNK" + | "DJI" + | "DMA" + | "DOM" + | "ECU" + | "EGY" + | "SLV" + | "GNQ" + | "ERI" + | "EST" + | "SWZ" + | "ETH" + | "FLK" + | "FRO" + | "FJI" + | "FIN" + | "FRA" + | "GUF" + | "PYF" + | "ATF" + | "GAB" + | "GMB" + | "GEO" + | "DEU" + | "GHA" + | "GIB" + | "GRC" + | "GRL" + | "GRD" + | "GLP" + | "GUM" + | "GTM" + | "GGY" + | "GIN" + | "GNB" + | "GUY" + | "HTI" + | "HMD" + | "VAT" + | "HND" + | "HKG" + | "HUN" + | "ISL" + | "IND" + | "IDN" + | "IRN" + | "IRQ" + | "IRL" + | "IMN" + | "ISR" + | "ITA" + | "JAM" + | "JPN" + | "JEY" + | "JOR" + | "KAZ" + | "KEN" + | "KIR" + | "PRK" + | "KOR" + | "KWT" + | "KGZ" + | "LAO" + | "LVA" + | "LBN" + | "LSO" + | "LBR" + | "LBY" + | "LIE" + | "LTU" + | "LUX" + | "MAC" + | "MDG" + | "MWI" + | "MYS" + | "MDV" + | "MLI" + | "MLT" + | "MHL" + | "MTQ" + | "MRT" + | "MUS" + | "MYT" + | "MEX" + | "FSM" + | "MDA" + | "MCO" + | "MNG" + | "MNE" + | "MSR" + | "MAR" + | "MOZ" + | "MMR" + | "NAM" + | "NRU" + | "NPL" + | "NLD" + | "NCL" + | "NZL" + | "NIC" + | "NER" + | "NGA" + | "NIU" + | "NFK" + | "MKD" + | "MNP" + | "NOR" + | "OMN" + | "PAK" + | "PLW" + | "PSE" + | "PAN" + | "PNG" + | "PRY" + | "PER" + | "PHL" + | "PCN" + | "POL" + | "PRT" + | "PRI" + | "QAT" + | "REU" + | "ROU" + | "RUS" + | "RWA" + | "BLM" + | "SHN" + | "KNA" + | "LCA" + | "MAF" + | "SPM" + | "VCT" + | "WSM" + | "SMR" + | "STP" + | "SAU" + | "SEN" + | "SRB" + | "SYC" + | "SLE" + | "SGP" + | "SXM" + | "SVK" + | "SVN" + | "SLB" + | "SOM" + | "ZAF" + | "SGS" + | "SSD" + | "ESP" + | "LKA" + | "SDN" + | "SUR" + | "SJM" + | "SWE" + | "CHE" + | "SYR" + | "TWN" + | "TJK" + | "TZA" + | "THA" + | "TLS" + | "TGO" + | "TKL" + | "TON" + | "TTO" + | "TUN" + | "TUR" + | "TKM" + | "TCA" + | "TUV" + | "UGA" + | "UKR" + | "ARE" + | "GBR" + | "USA" + | "UMI" + | "URY" + | "UZB" + | "VUT" + | "VEN" + | "VNM" + | "VGB" + | "VIR" + | "WLF" + | "ESH" + | "YEM" + | "ZMB" + | "ZWE" + ) + | null; + description: { + root: { + type: string; + children: { + type: string; + version: number; + [k: string]: unknown; + }[]; + direction: ("ltr" | "rtl") | null; + format: "left" | "start" | "center" | "right" | "end" | "justify" | ""; + indent: number; + version: number; + }; + [k: string]: unknown; + }; + connect?: + | { + platform: + | "Facebook" + | "Twitter" + | "Instagram" + | "Linkedin" + | "Github" + | "Slack"; + url: string; + id?: string | null; + }[] + | null; + team: string | Team; + updatedAt: string; + createdAt: string; +} +/** + * This interface was referenced by `Config`'s JSON-Schema + * via the `definition` "teams". + */ +export interface Team { + id: string; + name: string; + slug?: string | null; + updatedAt: string; + createdAt: string; +} +/** + * This interface was referenced by `Config`'s JSON-Schema + * via the `definition` "partners". + */ +export interface Partner { + id: string; + name: string; + slug?: string | null; + logo: string | Media; + description: { + root: { + type: string; + children: { + type: string; + version: number; + [k: string]: unknown; + }[]; + direction: ("ltr" | "rtl") | null; + format: "left" | "start" | "center" | "right" | "end" | "justify" | ""; + indent: number; + version: number; + }; + [k: string]: unknown; + }; + connect?: + | { + platform: + | "Facebook" + | "Twitter" + | "Instagram" + | "Linkedin" + | "Github" + | "Slack"; + url: string; + id?: string | null; + }[] + | null; + updatedAt: string; + createdAt: string; +} +/** + * This interface was referenced by `Config`'s JSON-Schema + * via the `definition` "projects". + */ +export interface Project { + id: string; + name: string; + icon: string | Media; + title: { + root: { + type: string; + children: { + type: string; + version: number; + [k: string]: unknown; + }[]; + direction: ("ltr" | "rtl") | null; + format: "left" | "start" | "center" | "right" | "end" | "justify" | ""; + indent: number; + version: number; + }; + [k: string]: unknown; + }; + subtitle: { + root: { + type: string; + children: { + type: string; + version: number; + [k: string]: unknown; + }[]; + direction: ("ltr" | "rtl") | null; + format: "left" | "start" | "center" | "right" | "end" | "justify" | ""; + indent: number; + version: number; + }; + [k: string]: unknown; + }; + tagLine: string; + tag: string | Tag; + externalLink: { + link: { + label: string; + type?: ("internal" | "custom") | null; + internal?: + | ({ + relationTo: "RoboshieldPages"; + value: string | RoboshieldPage; + } | null) + | ({ + relationTo: "CodeForAfricaPages"; + value: string | CodeForAfricaPage; + } | null); + url?: string | null; + newTab?: boolean | null; + }; + }; + thumbnail: string | Media; + badges?: + | { + name: string; + date: string; + id?: string | null; + }[] + | null; + description: { + root: { + type: string; + children: { + type: string; + version: number; + [k: string]: unknown; + }[]; + direction: ("ltr" | "rtl") | null; + format: "left" | "start" | "center" | "right" | "end" | "justify" | ""; + indent: number; + version: number; + }; + [k: string]: unknown; + }; + links?: + | { + type: "source" | "data"; + link: { + label: string; + type?: ("internal" | "custom") | null; + internal?: + | ({ + relationTo: "RoboshieldPages"; + value: string | RoboshieldPage; + } | null) + | ({ + relationTo: "CodeForAfricaPages"; + value: string | CodeForAfricaPage; + } | null); + url?: string | null; + }; + id?: string | null; + }[] + | null; + partners: (string | Partner)[]; + donors: (string | Donor)[]; + team: (string | Member)[]; + slug?: string | null; + updatedAt: string; + createdAt: string; +} +/** + * This interface was referenced by `Config`'s JSON-Schema + * via the `definition` "tag". + */ +export interface Tag { + id: string; + name: string; + slug?: string | null; + updatedAt: string; + createdAt: string; +} +/** + * This interface was referenced by `Config`'s JSON-Schema + * via the `definition` "RoboshieldPages". + */ +export interface RoboshieldPage { + id: string; + title: string; + slug?: string | null; + tenant?: (string | null) | Tenant; + content?: { + root: { + type: string; + children: { + type: string; + version: number; + [k: string]: unknown; + }[]; + direction: ("ltr" | "rtl") | null; + format: "left" | "start" | "center" | "right" | "end" | "justify" | ""; + indent: number; + version: number; + }; + [k: string]: unknown; + } | null; + blocks?: + | ( + | { + title: string; + subtitle: string; + id?: string | null; + blockName?: string | null; + blockType: "page-header"; + } + | SiteHero + | { + content?: + | ( + | { + content: { + root: { + type: string; + children: { + type: string; + version: number; + [k: string]: unknown; + }[]; + direction: ("ltr" | "rtl") | null; + format: + | "left" + | "start" + | "center" + | "right" + | "end" + | "justify" + | ""; + indent: number; + version: number; + }; + [k: string]: unknown; + }; + id?: string | null; + blockName?: string | null; + blockType: "richtext"; + } + | { + image: string | Media; + id?: string | null; + blockName?: string | null; + blockType: "mediaBlock"; + } + | { + externalEmbedFields?: { + embedType?: ("url" | "code") | null; + url?: string | null; + caption?: string | null; + code?: string | null; + }; + id?: string | null; + blockName?: string | null; + blockType: "externalEmbed"; + } + )[] + | null; + id?: string | null; + blockName?: string | null; + blockType: "content"; + } + | { + title: string; + statistics?: + | { + name: string; + value: string; + description: { + root: { + type: string; + children: { + type: string; + version: number; + [k: string]: unknown; + }[]; + direction: ("ltr" | "rtl") | null; + format: + | "left" + | "start" + | "center" + | "right" + | "end" + | "justify" + | ""; + indent: number; + version: number; + }; + [k: string]: unknown; + }; + icon?: (string | null) | Media; + id?: string | null; + }[] + | null; + id?: string | null; + blockName?: string | null; + blockType: "statistics"; + } + | { + steps?: + | ( + | { + title: string; + hint?: { + root: { + type: string; + children: { + type: string; + version: number; + [k: string]: unknown; + }[]; + direction: ("ltr" | "rtl") | null; + format: + | "left" + | "start" + | "center" + | "right" + | "end" + | "justify" + | ""; + indent: number; + version: number; + }; + [k: string]: unknown; + } | null; + defaultFetchExistingRobots?: boolean | null; + existingRobotsTxt: string; + placeholder: string; + urlValidationError: string; + fetch: string; + id?: string | null; + blockName?: string | null; + blockType: "existing-robots-txt"; + } + | { + title: string; + hint?: { + root: { + type: string; + children: { + type: string; + version: number; + [k: string]: unknown; + }[]; + direction: ("ltr" | "rtl") | null; + format: + | "left" + | "start" + | "center" + | "right" + | "end" + | "justify" + | ""; + indent: number; + version: number; + }; + [k: string]: unknown; + } | null; + crawlDelay: { + label: string; + title: string; + }; + cacheDelay: { + label: string; + title: string; + }; + visitTime: { + label: string; + title: string; + }; + id?: string | null; + blockName?: string | null; + blockType: "delays"; + } + | { + title: string; + hint?: { + root: { + type: string; + children: { + type: string; + version: number; + [k: string]: unknown; + }[]; + direction: ("ltr" | "rtl") | null; + format: + | "left" + | "start" + | "center" + | "right" + | "end" + | "justify" + | ""; + indent: number; + version: number; + }; + [k: string]: unknown; + } | null; + selectPlatform: { + label: string; + title: string; + }; + disallowedPaths: { + label: string; + title: string; + }; + allowedPaths: { + label: string; + title: string; + }; + id?: string | null; + blockName?: string | null; + blockType: "paths"; + } + | { + title: string; + hint?: { + root: { + type: string; + children: { + type: string; + version: number; + [k: string]: unknown; + }[]; + direction: ("ltr" | "rtl") | null; + format: + | "left" + | "start" + | "center" + | "right" + | "end" + | "justify" + | ""; + indent: number; + version: number; + }; + [k: string]: unknown; + } | null; + aiWebCrawlers: { + label: string; + title: string; + }; + searchEngineCrawlers: { + label: string; + title: string; + }; + id?: string | null; + blockName?: string | null; + blockType: "block-bots"; + } + | { + title: string; + hint?: { + root: { + type: string; + children: { + type: string; + version: number; + [k: string]: unknown; + }[]; + direction: ("ltr" | "rtl") | null; + format: + | "left" + | "start" + | "center" + | "right" + | "end" + | "justify" + | ""; + indent: number; + version: number; + }; + [k: string]: unknown; + } | null; + placeholder: string; + id?: string | null; + blockName?: string | null; + blockType: "site-maps"; + } + | { + title: string; + hint?: { + root: { + type: string; + children: { + type: string; + version: number; + [k: string]: unknown; + }[]; + direction: ("ltr" | "rtl") | null; + format: + | "left" + | "start" + | "center" + | "right" + | "end" + | "justify" + | ""; + indent: number; + version: number; + }; + [k: string]: unknown; + } | null; + placeholder: string; + id?: string | null; + blockName?: string | null; + blockType: "finish"; + } + )[] + | null; + actions: { + showRobotsTxt: string; + continue: string; + back: string; + reset: string; + download: string; + copyToClipboard: string; + }; + id?: string | null; + blockName?: string | null; + blockType: "robots-txt-generator"; + } + )[] + | null; + meta?: { + title?: string | null; + image?: (string | null) | Media; + description?: string | null; + }; + updatedAt: string; + createdAt: string; +} +/** + * This interface was referenced by `Config`'s JSON-Schema + * via the `definition` "SiteHero". + */ +export interface SiteHero { + heroHeaders?: + | { + headingType?: ("largeHeading" | "subHeading" | "rotatingText") | null; + title?: string | null; + id?: string | null; + }[] + | null; + heroDescription: { + root: { + type: string; + children: { + type: string; + version: number; + [k: string]: unknown; + }[]; + direction: ("ltr" | "rtl") | null; + format: "left" | "start" | "center" | "right" | "end" | "justify" | ""; + indent: number; + version: number; + }; + [k: string]: unknown; + }; + heroCallToAction?: string | null; + id?: string | null; + blockName?: string | null; + blockType: "page-hero"; +} +/** + * This interface was referenced by `Config`'s JSON-Schema + * via the `definition` "CodeForAfricaPages". + */ +export interface CodeForAfricaPage { + id: string; + title: string; + slug?: string | null; + blocks?: + | ( + | { + embedCode: string; + id?: string | null; + blockName?: string | null; + blockType: "contact-form"; + } + | { + title: string; + subtitle?: { + root: { + type: string; + children: { + type: string; + version: number; + [k: string]: unknown; + }[]; + direction: ("ltr" | "rtl") | null; + format: + | "left" + | "start" + | "center" + | "right" + | "end" + | "justify" + | ""; + indent: number; + version: number; + }; + [k: string]: unknown; + } | null; + id?: string | null; + blockName?: string | null; + blockType: "error"; + } + | { + defaultTag: string | Tag; + projects: (string | Project)[]; + id?: string | null; + blockName?: string | null; + blockType: "featured-work"; + } + | { + title: string; + primaryTag?: string | null; + featured: { + story: string | Post; + action?: string | null; + }; + stories: { + items: (string | Post)[]; + action: { + link: { + label: string; + type?: ("internal" | "custom") | null; + internal?: + | ({ + relationTo: "RoboshieldPages"; + value: string | RoboshieldPage; + } | null) + | ({ + relationTo: "CodeForAfricaPages"; + value: string | CodeForAfricaPage; + } | null); + url?: string | null; + newTab?: boolean | null; + }; + }; + }; + id?: string | null; + blockName?: string | null; + blockType: "featured-stories"; + } + | { + title: string; + subtitle: string; + action: { + link: { + label: string; + type?: ("internal" | "custom") | null; + internal?: + | ({ + relationTo: "RoboshieldPages"; + value: string | RoboshieldPage; + } | null) + | ({ + relationTo: "CodeForAfricaPages"; + value: string | CodeForAfricaPage; + } | null); + url?: string | null; + newTab?: boolean | null; + }; + }; + id?: string | null; + blockName?: string | null; + blockType: "get-in-touch"; + } + | { + impacts?: (string | Impact)[] | null; + action: { + link: { + label: string; + type?: ("internal" | "custom") | null; + internal?: + | ({ + relationTo: "RoboshieldPages"; + value: string | RoboshieldPage; + } | null) + | ({ + relationTo: "CodeForAfricaPages"; + value: string | CodeForAfricaPage; + } | null); + url?: string | null; + newTab?: boolean | null; + }; + }; + id?: string | null; + blockName?: string | null; + blockType: "get-involved"; + } + | { + title: string; + list?: (string | GuidingPrinciple)[] | null; + id?: string | null; + blockName?: string | null; + blockType: "our-guiding-principles"; + } + | { + title: { + root: { + type: string; + children: { + type: string; + version: number; + [k: string]: unknown; + }[]; + direction: ("ltr" | "rtl") | null; + format: + | "left" + | "start" + | "center" + | "right" + | "end" + | "justify" + | ""; + indent: number; + version: number; + }; + [k: string]: unknown; + }; + messages?: + | { + message?: string | null; + id?: string | null; + }[] + | null; + subtitle: string; + image: string | Media; + id?: string | null; + blockName?: string | null; + blockType: "hero"; + } + | { + title: string; + subtitle: string; + action: { + link: { + label: string; + type?: ("internal" | "custom") | null; + internal?: + | ({ + relationTo: "RoboshieldPages"; + value: string | RoboshieldPage; + } | null) + | ({ + relationTo: "CodeForAfricaPages"; + value: string | CodeForAfricaPage; + } | null); + url?: string | null; + newTab?: boolean | null; + }; + }; + id?: string | null; + blockName?: string | null; + blockType: "join-our-slack"; + } + | { + title: string; + description: { + root: { + type: string; + children: { + type: string; + version: number; + [k: string]: unknown; + }[]; + direction: ("ltr" | "rtl") | null; + format: + | "left" + | "start" + | "center" + | "right" + | "end" + | "justify" + | ""; + indent: number; + version: number; + }; + [k: string]: unknown; + }; + action: { + link: { + label: string; + type?: ("internal" | "custom") | null; + internal?: + | ({ + relationTo: "RoboshieldPages"; + value: string | RoboshieldPage; + } | null) + | ({ + relationTo: "CodeForAfricaPages"; + value: string | CodeForAfricaPage; + } | null); + url?: string | null; + newTab?: boolean | null; + }; + }; + image: string | Media; + id?: string | null; + blockName?: string | null; + blockType: "meet-our-team"; + } + | { + title: string; + subtitle: string; + id?: string | null; + blockName?: string | null; + blockType: "page-header"; + } + | { + primaryTag: "stories" | "opportunities"; + stories?: { + featured?: (string | null) | Post; + title: string; + }; + labels: { + search: string; + readMore: string; + }; + id?: string | null; + blockName?: string | null; + blockType: "post-list"; + } + | { + title: string; + subtitle: string; + image: string | Media; + id?: string | null; + blockName?: string | null; + blockType: "custom-page-header"; + } + | { + content: ( + | { + richTextBlockFields: { + content: { + root: { + type: string; + children: { + type: string; + version: number; + [k: string]: unknown; + }[]; + direction: ("ltr" | "rtl") | null; + format: + | "left" + | "start" + | "center" + | "right" + | "end" + | "justify" + | ""; + indent: number; + version: number; + }; + [k: string]: unknown; + }; + }; + id?: string | null; + blockName?: string | null; + blockType: "richText"; + } + | { + mediaBlockFields: { + image: string | Media; + }; + id?: string | null; + blockName?: string | null; + blockType: "mediaBlock"; + } + | { + embedBlockFields?: { + embedType?: ("url" | "code") | null; + url?: string | null; + caption?: string | null; + code?: string | null; + }; + id?: string | null; + blockName?: string | null; + blockType: "external-embed"; + } + )[]; + id?: string | null; + blockName?: string | null; + blockType: "longform"; + } + | { + title: string; + offices: (string | Office)[]; + id?: string | null; + blockName?: string | null; + blockType: "our-offices"; + } + | { + title: string; + impacts?: (string | Impact)[] | null; + id?: string | null; + blockName?: string | null; + blockType: "our-impact"; + } + | { + title: string; + subtitle: string; + description: { + root: { + type: string; + children: { + type: string; + version: number; + [k: string]: unknown; + }[]; + direction: ("ltr" | "rtl") | null; + format: + | "left" + | "start" + | "center" + | "right" + | "end" + | "justify" + | ""; + indent: number; + version: number; + }; + [k: string]: unknown; + }; + id?: string | null; + blockName?: string | null; + blockType: "our-mission"; + } + | { + title: string; + partners?: (string | Partner)[] | null; + id?: string | null; + blockName?: string | null; + blockType: "our-partners"; + } + | { + title: string; + fields?: ("team" | "country")[] | null; + labels: { + projects: string; + }; + id?: string | null; + blockName?: string | null; + blockType: "our-team"; + } + | { + title: string; + labels: { + description: string; + details: string; + team: string; + projects: string; + partners: string; + donors: string; + }; + id?: string | null; + blockName?: string | null; + blockType: "our-work"; + } + )[] + | null; + updatedAt: string; + createdAt: string; + _status?: ("draft" | "published") | null; +} +/** + * This interface was referenced by `Config`'s JSON-Schema + * via the `definition` "posts". + */ +export interface Post { + id: string; + title: string; + coverImage: string | Media; + content: ( + | { + richTextBlockFields: { + content: { + root: { + type: string; + children: { + type: string; + version: number; + [k: string]: unknown; + }[]; + direction: ("ltr" | "rtl") | null; + format: + | "left" + | "start" + | "center" + | "right" + | "end" + | "justify" + | ""; + indent: number; + version: number; + }; + [k: string]: unknown; + }; + }; + id?: string | null; + blockName?: string | null; + blockType: "richText"; + } + | { + mediaBlockFields: { + image: string | Media; + }; + id?: string | null; + blockName?: string | null; + blockType: "mediaBlock"; + } + | { + embedBlockFields?: { + embedType?: ("url" | "code") | null; + url?: string | null; + caption?: string | null; + code?: string | null; + }; + id?: string | null; + blockName?: string | null; + blockType: "external-embed"; + } + )[]; + slug?: string | null; + publishedOn: string; + tags: (string | Tag)[]; + authors?: (string | Author)[] | null; + excerpt: string; + updatedAt: string; + createdAt: string; + _status?: ("draft" | "published") | null; +} +/** + * This interface was referenced by `Config`'s JSON-Schema + * via the `definition` "payload-preferences". + */ +export interface PayloadPreference { + id: string; + user: { + relationTo: "users"; + value: string | User; + }; + key?: string | null; + value?: + | { + [k: string]: unknown; + } + | unknown[] + | string + | number + | boolean + | null; + updatedAt: string; + createdAt: string; +} +/** + * This interface was referenced by `Config`'s JSON-Schema + * via the `definition` "payload-migrations". + */ +export interface PayloadMigration { + id: string; + name?: string | null; + batch?: number | null; + updatedAt: string; + createdAt: string; +} +/** + * This interface was referenced by `Config`'s JSON-Schema + * via the `definition` "codeforafrica-site-settings". + */ +export interface CodeforafricaSiteSetting { + id: string; + title: string; + description: { + root: { + type: string; + children: { + type: string; + version: number; + [k: string]: unknown; + }[]; + direction: ("ltr" | "rtl") | null; + format: "left" | "start" | "center" | "right" | "end" | "justify" | ""; + indent: number; + version: number; + }; + [k: string]: unknown; + }; + primaryLogo: string | Media; + secondaryLogo?: (string | null) | Media; + primaryNavigation?: { + menus?: + | { + link: { + label: string; + type?: ("internal" | "custom") | null; + internal?: + | ({ + relationTo: "RoboshieldPages"; + value: string | RoboshieldPage; + } | null) + | ({ + relationTo: "CodeForAfricaPages"; + value: string | CodeForAfricaPage; + } | null); + url?: string | null; + newTab?: boolean | null; + }; + id?: string | null; + }[] + | null; + connect?: + | ("Facebook" | "Twitter" | "Instagram" | "Linkedin" | "Github" | "Slack") + | null; + }; + secondaryNavigation?: { + menus?: + | { + link: { + label: string; + type?: ("internal" | "custom") | null; + internal?: + | ({ + relationTo: "RoboshieldPages"; + value: string | RoboshieldPage; + } | null) + | ({ + relationTo: "CodeForAfricaPages"; + value: string | CodeForAfricaPage; + } | null); + url?: string | null; + newTab?: boolean | null; + }; + id?: string | null; + }[] + | null; + }; + connect: { + title: string; + links?: + | { + platform: + | "Facebook" + | "Twitter" + | "Instagram" + | "Linkedin" + | "Github" + | "Slack"; + url: string; + id?: string | null; + }[] + | null; + }; + newsletter: { + title: string; + embedCode: string; + }; + updatedAt?: string | null; + createdAt?: string | null; +} +/** + * This interface was referenced by `Config`'s JSON-Schema + * via the `definition` "roboshield-site-settings". + */ +export interface RoboshieldSiteSetting { + id: string; + title: string; + description: { + root: { + type: string; + children: { + type: string; + version: number; + [k: string]: unknown; + }[]; + direction: ("ltr" | "rtl") | null; + format: "left" | "start" | "center" | "right" | "end" | "justify" | ""; + indent: number; + version: number; + }; + [k: string]: unknown; + }; + primaryLogo: string | Media; + secondaryLogo?: (string | null) | Media; + primaryNavigation?: { + menus?: + | { + link: { + label: string; + type?: ("internal" | "custom") | null; + internal?: + | ({ + relationTo: "RoboshieldPages"; + value: string | RoboshieldPage; + } | null) + | ({ + relationTo: "CodeForAfricaPages"; + value: string | CodeForAfricaPage; + } | null); + url?: string | null; + newTab?: boolean | null; + }; + id?: string | null; + }[] + | null; + connect?: + | ("Facebook" | "Twitter" | "Instagram" | "Linkedin" | "Github" | "Slack") + | null; + }; + secondaryNavigation?: { + menus?: + | { + link: { + label: string; + type?: ("internal" | "custom") | null; + internal?: + | ({ + relationTo: "RoboshieldPages"; + value: string | RoboshieldPage; + } | null) + | ({ + relationTo: "CodeForAfricaPages"; + value: string | CodeForAfricaPage; + } | null); + url?: string | null; + newTab?: boolean | null; + }; + id?: string | null; + }[] + | null; + }; + connect: { + title: string; + links?: + | { + platform: + | "Facebook" + | "Twitter" + | "Instagram" + | "Linkedin" + | "Github" + | "Slack"; + url: string; + id?: string | null; + }[] + | null; + }; + newsletter: { + title: string; + embedCode: string; + }; + initiative: { + title: string; + description: { + root: { + type: string; + children: { + type: string; + version: number; + [k: string]: unknown; + }[]; + direction: ("ltr" | "rtl") | null; + format: "left" | "start" | "center" | "right" | "end" | "justify" | ""; + indent: number; + version: number; + }; + [k: string]: unknown; + }; + partners?: + | { + name: string; + logo: string | Media; + link: { + label: string; + type?: ("internal" | "custom") | null; + internal?: + | ({ + relationTo: "RoboshieldPages"; + value: string | RoboshieldPage; + } | null) + | ({ + relationTo: "CodeForAfricaPages"; + value: string | CodeForAfricaPage; + } | null); + url?: string | null; + }; + id?: string | null; + }[] + | null; + }; + updatedAt?: string | null; + createdAt?: string | null; +} +/** + * This interface was referenced by `Config`'s JSON-Schema + * via the `definition` "auth". + */ +export interface Auth { + [k: string]: unknown; +} + +declare module "payload" { + export interface GeneratedTypes extends Config {} +} diff --git a/apps/centralcms/src/payload.config.ts b/apps/centralcms/src/payload.config.ts new file mode 100644 index 000000000..ef09ced49 --- /dev/null +++ b/apps/centralcms/src/payload.config.ts @@ -0,0 +1,72 @@ +// storage-adapter-import-placeholder +import { mongooseAdapter } from "@payloadcms/db-mongodb"; +import { lexicalEditor } from "@payloadcms/richtext-lexical"; +import { seoPlugin } from "@payloadcms/plugin-seo"; +import path from "path"; +import { buildConfig } from "payload"; +import { fileURLToPath } from "url"; +import sharp from "sharp"; +import { Users } from "@/payload/collections/Users"; +import { Media } from "@/payload/collections/Media"; +import { Tenants } from "@/payload/collections/Tenants"; +import Pages from "@/payload/collections/codeforafrica/Pages"; +import { Pages as RoboShieldPages } from "@/payload/collections/roboshield/Pages"; +import Authors from "./payload/collections/codeforafrica/Authors"; +import GuidingPrinciples from "@/payload/collections/codeforafrica/GuidingPrinciples"; +import Partners from "@/payload/collections/codeforafrica/Partners"; +import Posts from "@/payload/collections/codeforafrica/Posts"; +import Donors from "@/payload/collections/codeforafrica/Donors"; +import Impact from "@/payload/collections/codeforafrica/Impact"; +import Members from "@/payload/collections/codeforafrica/Members"; +import Offices from "@/payload/collections/codeforafrica/Offices"; +import Projects from "@/payload/collections/codeforafrica/Projects"; +import Tags from "@/payload/collections/codeforafrica/Tags"; +import Teams from "@/payload/collections/codeforafrica/Teams"; +import CodeforAfricaGlobals from "@/payload/globals/CodeforAfricaGlobals"; +import RoboShieldGlobals from "@/payload/globals/RoboShieldGlobals"; + +const filename = fileURLToPath(import.meta.url); +const dirname = path.dirname(filename); +const MONGO_URL: string = + process.env.MONGO_URL ?? + (() => { + throw new Error("MONGO_URL environment variable is not set"); + })(); + +export default buildConfig({ + admin: { + user: Users.slug, + }, + collections: [ + Users, + Media, + Tenants, + Authors, + Donors, + GuidingPrinciples, + Impact, + Offices, + Members, + Partners, + Projects, + Posts, + Tags, + Teams, + Pages, + RoboShieldPages, + ], + editor: lexicalEditor(), + globals: [CodeforAfricaGlobals, RoboShieldGlobals], + secret: process.env.PAYLOAD_SECRET || "", + typescript: { + outputFile: path.resolve(dirname, "payload-types.ts"), + }, + db: mongooseAdapter({ + url: MONGO_URL, + }), + sharp, + plugins: [ + // storage-adapter-placeholder + seoPlugin({}), + ], +}); diff --git a/apps/centralcms/src/payload/access/anyone.ts b/apps/centralcms/src/payload/access/anyone.ts new file mode 100644 index 000000000..27fd88b71 --- /dev/null +++ b/apps/centralcms/src/payload/access/anyone.ts @@ -0,0 +1,3 @@ +import type { Access } from "payload"; + +export const anyone: Access = () => true; diff --git a/apps/centralcms/src/payload/access/canAccessFromDomain.ts b/apps/centralcms/src/payload/access/canAccessFromDomain.ts new file mode 100644 index 000000000..2e6c5f487 --- /dev/null +++ b/apps/centralcms/src/payload/access/canAccessFromDomain.ts @@ -0,0 +1,25 @@ +import { User } from "@/payload-types"; +import { isSuperAdmin } from "@/payload/utilities/isSuperAdmin"; + +export default function canAccessFromDomain( + user: User | null, + searchString: string, +): boolean { + if (user) { + if ( + user.lastLoggedInTenant && + typeof user.lastLoggedInTenant === "object" && + "name" in user.lastLoggedInTenant + ) { + return ( + user?.lastLoggedInTenant.name.toLowerCase() === + searchString.toLowerCase() + ); + } else { + if (isSuperAdmin(user)) { + return false; + } + } + } + return false; +} diff --git a/apps/centralcms/src/payload/access/codeforafrica/index.ts b/apps/centralcms/src/payload/access/codeforafrica/index.ts new file mode 100644 index 000000000..6e2b68111 --- /dev/null +++ b/apps/centralcms/src/payload/access/codeforafrica/index.ts @@ -0,0 +1,6 @@ +import type { Access } from "payload"; +import canAccessFromDomain from "@/payload/access/canAccessFromDomain"; + +export const canRead: Access = ({ req: { user } }) => { + return canAccessFromDomain(user, "CodeforAfrica"); +}; diff --git a/apps/centralcms/src/payload/access/lastLoggedInTenant.ts b/apps/centralcms/src/payload/access/lastLoggedInTenant.ts new file mode 100644 index 000000000..ffc2f0bd2 --- /dev/null +++ b/apps/centralcms/src/payload/access/lastLoggedInTenant.ts @@ -0,0 +1,12 @@ +import type { Access, AccessArgs } from "payload"; +import { isTenant } from "@/payload/utilities/typeGuards"; + +export const lastLoggedInTenant: Access = ({ + req: { user }, + data, +}: AccessArgs) => { + if (isTenant(user?.lastLoggedInTenant)) { + return user.lastLoggedInTenant.id === data?.id; + } + return false; +}; diff --git a/apps/centralcms/src/payload/access/loggedIn.ts b/apps/centralcms/src/payload/access/loggedIn.ts new file mode 100644 index 000000000..e1e839865 --- /dev/null +++ b/apps/centralcms/src/payload/access/loggedIn.ts @@ -0,0 +1,5 @@ +import type { Access } from "payload"; + +export const loggedIn: Access = ({ req: { user } }) => { + return Boolean(user); +}; diff --git a/apps/centralcms/src/payload/access/roboshield/index.ts b/apps/centralcms/src/payload/access/roboshield/index.ts new file mode 100644 index 000000000..22b55ef15 --- /dev/null +++ b/apps/centralcms/src/payload/access/roboshield/index.ts @@ -0,0 +1,6 @@ +import type { Access } from "payload"; +import canAccessFromDomain from "@/payload/access/canAccessFromDomain"; + +export const canRead: Access = ({ req: { user } }) => { + return canAccessFromDomain(user, "RoboShield"); +}; diff --git a/apps/centralcms/src/payload/access/superAdmins.ts b/apps/centralcms/src/payload/access/superAdmins.ts new file mode 100644 index 000000000..5e2dde722 --- /dev/null +++ b/apps/centralcms/src/payload/access/superAdmins.ts @@ -0,0 +1,9 @@ +import type { Access } from "payload"; +import type { FieldHook } from "payload"; +import { checkUserRoles } from "@/payload/utilities/checkUserRoles"; + +export const superAdmins: Access = ({ req: { user } }) => + checkUserRoles(["super-admin"], user); + +export const superAdminFieldAccess: FieldHook = ({ req: { user } }) => + checkUserRoles(["super-admin"], user); diff --git a/apps/centralcms/src/payload/access/tenantAdmins.ts b/apps/centralcms/src/payload/access/tenantAdmins.ts new file mode 100644 index 000000000..e16ee3f6e --- /dev/null +++ b/apps/centralcms/src/payload/access/tenantAdmins.ts @@ -0,0 +1,27 @@ +import type { Access, AccessArgs } from "payload"; +import { checkUserRoles } from "@/payload/utilities/checkUserRoles"; +import { isTenant } from "@/payload/utilities/typeGuards"; + +// the user must be an admin of the document's tenant +export const tenantAdmins: Access = ({ req: { user } }: AccessArgs) => { + if (checkUserRoles(["super-admin"], user)) { + return true; + } + + const adminTenants = + user?.tenants + ?.map(({ tenant, roles }) => + roles.includes("admin") + ? isTenant(tenant) + ? tenant.id + : tenant + : null, + ) // eslint-disable-line function-paren-newline + .filter(Boolean) || []; + + return { + tenant: { + in: adminTenants, + }, + }; +}; diff --git a/apps/centralcms/src/payload/access/tenants.ts b/apps/centralcms/src/payload/access/tenants.ts new file mode 100644 index 000000000..7b4473634 --- /dev/null +++ b/apps/centralcms/src/payload/access/tenants.ts @@ -0,0 +1,19 @@ +import type { Access, AccessArgs } from "payload"; + +import { isSuperAdmin } from "@/payload/utilities/isSuperAdmin"; +import { isTenant } from "@/payload/utilities/typeGuards"; + +export const tenants: Access = ({ req: { user }, data }: AccessArgs) => { + const lastLoggedInTenantId = isTenant(user?.lastLoggedInTenant) + ? user.lastLoggedInTenant.id + : user?.lastLoggedInTenant; + + return ( + (data?.tenant?.id && lastLoggedInTenantId === data.tenant.id) || + (!lastLoggedInTenantId && isSuperAdmin(user)) || { + tenant: { + equals: lastLoggedInTenantId, + }, + } + ); +}; diff --git a/apps/centralcms/src/payload/blocks/codeforafrica/ContactForm.ts b/apps/centralcms/src/payload/blocks/codeforafrica/ContactForm.ts new file mode 100644 index 000000000..13440d261 --- /dev/null +++ b/apps/centralcms/src/payload/blocks/codeforafrica/ContactForm.ts @@ -0,0 +1,19 @@ +import { Block } from "payload"; + +const ContactForm: Block = { + slug: "contact-form", + imageURL: "/images/cms/blocks/codeforafrica/contact_form.jpg", + imageAltText: "Contact Form", + fields: [ + { + name: "embedCode", + type: "code", + required: true, + admin: { + language: "html", + }, + }, + ], +}; + +export default ContactForm; diff --git a/apps/centralcms/src/payload/blocks/codeforafrica/CustomPageHeader.ts b/apps/centralcms/src/payload/blocks/codeforafrica/CustomPageHeader.ts new file mode 100644 index 000000000..cdb57bad6 --- /dev/null +++ b/apps/centralcms/src/payload/blocks/codeforafrica/CustomPageHeader.ts @@ -0,0 +1,27 @@ +import image from "@/payload/fields/image"; +import { Block } from "payload"; + +const CustomPageHeader: Block = { + slug: "custom-page-header", + imageURL: "/images/cms/blocks//codeforafrica/custom_page_header.jpg", + imageAltText: "Used in about page.", + fields: [ + { + name: "title", + type: "text", + required: true, + }, + { + name: "subtitle", + type: "text", + required: true, + }, + image({ + overrides: { + required: true, + }, + }), + ], +}; + +export default CustomPageHeader; diff --git a/apps/centralcms/src/payload/blocks/codeforafrica/Error.ts b/apps/centralcms/src/payload/blocks/codeforafrica/Error.ts new file mode 100644 index 000000000..bf2da90c7 --- /dev/null +++ b/apps/centralcms/src/payload/blocks/codeforafrica/Error.ts @@ -0,0 +1,20 @@ +import richText from "@/payload/fields/RichText"; +import { Block } from "payload"; + +const Error: Block = { + slug: "error", + imageURL: "/images/cms/blocks/codeforafrica/error.png", + imageAltText: "Used to describe errors in error pages.", + fields: [ + { + name: "title", + type: "text", + required: true, + }, + richText({ + name: "subtitle", + }), + ], +}; + +export default Error; diff --git a/apps/centralcms/src/payload/blocks/codeforafrica/ExternalEmbed.ts b/apps/centralcms/src/payload/blocks/codeforafrica/ExternalEmbed.ts new file mode 100644 index 000000000..f8396da46 --- /dev/null +++ b/apps/centralcms/src/payload/blocks/codeforafrica/ExternalEmbed.ts @@ -0,0 +1,60 @@ +import blockFields from "@/payload/fields/blockFields"; +import { Block, Field } from "payload"; + +const ExternalEmbed: Block = { + slug: "external-embed", + fields: [ + blockFields({ + name: "embedBlockFields", + fields: [ + { + type: "row", + fields: [ + { + name: "embedType", + type: "radio", + defaultValue: "url", + options: [ + { + label: "URL", + value: "url", + }, + { + label: "Code", + value: "code", + }, + ], + }, + ], + }, + { + name: "url", + label: "URL", + type: "text", + required: true, + admin: { + condition: (_, siblingData) => siblingData?.embedType === "url", + }, + }, + { + name: "caption", + type: "text", + localized: true, + admin: { + condition: (_, siblingData) => siblingData?.embedType === "url", + }, + }, + { + name: "code", + type: "code", + required: true, + admin: { + condition: (_, siblingData) => siblingData?.embedType === "code", + }, + }, + ], + }), + ], +}; + +export default ExternalEmbed; diff --git a/apps/centralcms/src/payload/blocks/codeforafrica/FeaturedStories.ts b/apps/centralcms/src/payload/blocks/codeforafrica/FeaturedStories.ts new file mode 100644 index 000000000..6be240880 --- /dev/null +++ b/apps/centralcms/src/payload/blocks/codeforafrica/FeaturedStories.ts @@ -0,0 +1,77 @@ +import linkGroup from "@/payload/fields/links/linkGroup"; +import { Block } from "payload"; + +const FeaturedStories: Block = { + slug: "featured-stories", + imageURL: "/images/cms/blocks/codeforafrica/featured_stories.jpg", + imageAltText: "Featured Stories", + labels: { + singular: { + en: "Featured Stories", + }, + plural: { + en: "Featured Stories", + }, + }, + fields: [ + { + name: "title", + type: "text", + required: true, + }, + { + name: "primaryTag", + label: "Post Type", + type: "text", + defaultValue: "stories", + admin: { + hidden: true, + }, + }, + { + name: "featured", + label: "Featured Story", + type: "group", + fields: [ + { + name: "story", + type: "relationship", + relationTo: "posts", + hasMany: false, + required: true, + }, + { + name: "action", + label: "Action Label", + type: "text", + defaultValue: "Read Story", + }, + ], + }, + { + name: "stories", + label: "Stories", + type: "group", + fields: [ + { + name: "items", + label: "Stories", + type: "relationship", + relationTo: "posts", + hasMany: true, + minRows: 1, + maxRows: 3, + required: true, + }, + linkGroup({ + overrides: { + name: "action", + label: "Browse More Action", + }, + }), + ], + }, + ], +}; + +export default FeaturedStories; diff --git a/apps/centralcms/src/payload/blocks/codeforafrica/FeaturedWork.ts b/apps/centralcms/src/payload/blocks/codeforafrica/FeaturedWork.ts new file mode 100644 index 000000000..8f8e9c49c --- /dev/null +++ b/apps/centralcms/src/payload/blocks/codeforafrica/FeaturedWork.ts @@ -0,0 +1,29 @@ +import tags from "@/payload/fields/tags"; +import { Block } from "payload"; + +const FeaturedWork: Block = { + slug: "featured-work", + imageURL: "/images/cms/blocks/codeforafrica/our-work-showcase.png", + imageAltText: "Featured Work", + fields: [ + tags({ + name: "defaultTag", + label: { + en: "Default Tag", + }, + hasMany: false, + }), + { + name: "projects", + type: "relationship", + relationTo: "projects", + hasMany: true, + required: true, + admin: { + isSortable: true, + }, + }, + ], +}; + +export default FeaturedWork; diff --git a/apps/centralcms/src/payload/blocks/codeforafrica/GetInTouch.ts b/apps/centralcms/src/payload/blocks/codeforafrica/GetInTouch.ts new file mode 100644 index 000000000..90e34368f --- /dev/null +++ b/apps/centralcms/src/payload/blocks/codeforafrica/GetInTouch.ts @@ -0,0 +1,23 @@ +import linkGroup from "@/payload/fields/links/linkGroup"; +import { Block } from "payload"; + +const GetInTouch: Block = { + slug: "get-in-touch", + imageURL: "/images/cms/blocks/codeforafrica/get_in_touch.jpg", + imageAltText: "Display Get In Touch Call to Action", + fields: [ + { + name: "title", + type: "text", + required: true, + }, + { + name: "subtitle", + type: "text", + required: true, + }, + linkGroup({ overrides: { name: "action", label: "Action" } }), + ], +}; + +export default GetInTouch; diff --git a/apps/centralcms/src/payload/blocks/codeforafrica/GetInvolved.ts b/apps/centralcms/src/payload/blocks/codeforafrica/GetInvolved.ts new file mode 100644 index 000000000..b674716c0 --- /dev/null +++ b/apps/centralcms/src/payload/blocks/codeforafrica/GetInvolved.ts @@ -0,0 +1,18 @@ +import impacts from "@/payload/fields/impacts"; +import linkGroup from "@/payload/fields/links/linkGroup"; +import { Block } from "payload"; + +const GetInvolved: Block = { + slug: "get-involved", + imageURL: "/images/cms/blocks/codeforafrica/get_involved.jpg", + imageAltText: "Get Involved", + fields: [ + impacts({ + minRows: 3, + maxRows: 3, + }), + linkGroup({ overrides: { name: "action", label: "Action" } }), + ], +}; + +export default GetInvolved; diff --git a/apps/centralcms/src/payload/blocks/codeforafrica/GuidingPrinciples.ts b/apps/centralcms/src/payload/blocks/codeforafrica/GuidingPrinciples.ts new file mode 100644 index 000000000..266d65d2e --- /dev/null +++ b/apps/centralcms/src/payload/blocks/codeforafrica/GuidingPrinciples.ts @@ -0,0 +1,28 @@ +import { Block } from "payload"; + +const GuidingPrinciples: Block = { + slug: "our-guiding-principles", + imageURL: "/images/cms/blocks/codeforafrica/guiding_principles.png", + imageAltText: "Guiding Principles", + fields: [ + { + name: "title", + type: "text", + required: true, + }, + { + name: "list", + label: { + en: "Guiding Principles", + }, + type: "relationship", + relationTo: "guiding-principles", + hasMany: true, + admin: { + isSortable: true, + }, + }, + ], +}; + +export default GuidingPrinciples; diff --git a/apps/centralcms/src/payload/blocks/codeforafrica/Hero.ts b/apps/centralcms/src/payload/blocks/codeforafrica/Hero.ts new file mode 100644 index 000000000..5d009507f --- /dev/null +++ b/apps/centralcms/src/payload/blocks/codeforafrica/Hero.ts @@ -0,0 +1,46 @@ +import image from "@/payload/fields/image"; +import richText from "@/payload/fields/RichText"; +import { Block } from "payload"; + +const Hero: Block = { + slug: "hero", + imageURL: "/images/cms/blocks/codeforafrica/hero.jpg", + imageAltText: "Used in homepage.", + fields: [ + richText({ + name: "title", + required: true, + }), + { + name: "messages", + type: "array", + minRows: 3, + maxRows: 3, + fields: [ + { + name: "message", + type: "text", + }, + ], + admin: { + className: "array-field-nested", + components: { + RowLabel: "@/payload/components/RowLabel.tsx", + }, + }, + }, + { + name: "subtitle", + label: "Description", + type: "text", + required: true, + }, + image({ + overrides: { + required: true, + }, + }), + ], +}; + +export default Hero; diff --git a/apps/centralcms/src/payload/blocks/codeforafrica/JoinOurSlack.ts b/apps/centralcms/src/payload/blocks/codeforafrica/JoinOurSlack.ts new file mode 100644 index 000000000..2e3dc7c45 --- /dev/null +++ b/apps/centralcms/src/payload/blocks/codeforafrica/JoinOurSlack.ts @@ -0,0 +1,23 @@ +import linkGroup from "@/payload/fields/links/linkGroup"; +import { Block } from "payload"; + +const JoinOurSlack: Block = { + slug: "join-our-slack", + imageURL: "/images/cms/blocks/codeforafrica/join_our_slack.jpg", + imageAltText: "Display link to join our Slack community", + fields: [ + { + name: "title", + type: "text", + required: true, + }, + { + name: "subtitle", + type: "text", + required: true, + }, + linkGroup({ overrides: { name: "action", label: "Action" } }), + ], +}; + +export default JoinOurSlack; diff --git a/apps/centralcms/src/payload/blocks/codeforafrica/LongForm.ts b/apps/centralcms/src/payload/blocks/codeforafrica/LongForm.ts new file mode 100644 index 000000000..243d3f9cb --- /dev/null +++ b/apps/centralcms/src/payload/blocks/codeforafrica/LongForm.ts @@ -0,0 +1,19 @@ +import content from "@/payload/fields/content"; +import { Block } from "payload"; + +const LongForm: Block = { + slug: "longform", + imageURL: "/images/cms/blocks/codeforafrica/longform.jpg", + imageAltText: "Our team.", + labels: { + singular: { + en: "Long Form", + }, + plural: { + en: "Long Form", + }, + }, + fields: [content({ minRows: 1, required: true, localized: true })], +}; + +export default LongForm; diff --git a/apps/centralcms/src/payload/blocks/codeforafrica/MediaBlock.ts b/apps/centralcms/src/payload/blocks/codeforafrica/MediaBlock.ts new file mode 100644 index 000000000..9737622cd --- /dev/null +++ b/apps/centralcms/src/payload/blocks/codeforafrica/MediaBlock.ts @@ -0,0 +1,24 @@ +import blockFields from "@/payload/fields/blockFields"; +import { Block } from "payload"; + +const MediaBlock: Block = { + slug: "mediaBlock", + fields: [ + blockFields({ + name: "mediaBlockFields", + fields: [ + { + name: "image", + type: "upload", + relationTo: "media", + required: true, + filterOptions: { + mimeType: { contains: "image" }, + }, + }, + ], + }), + ], +}; + +export default MediaBlock; diff --git a/apps/centralcms/src/payload/blocks/codeforafrica/MeetOurTeam.ts b/apps/centralcms/src/payload/blocks/codeforafrica/MeetOurTeam.ts new file mode 100644 index 000000000..a1913811d --- /dev/null +++ b/apps/centralcms/src/payload/blocks/codeforafrica/MeetOurTeam.ts @@ -0,0 +1,29 @@ +import image from "@/payload/fields/image"; +import linkGroup from "@/payload/fields/links/linkGroup"; +import richText from "@/payload/fields/RichText"; +import { Block } from "payload"; + +const MeetOurTeam: Block = { + slug: "meet-our-team", + imageURL: "/images/cms/blocks/codeforafrica/meet_our_team.jpg", + imageAltText: "Display Team Call to Action", + fields: [ + { + name: "title", + type: "text", + required: true, + }, + richText({ + name: "description", + required: true, + }), + linkGroup({ overrides: { name: "action", label: "Action" } }), + image({ + overrides: { + required: true, + }, + }), + ], +}; + +export default MeetOurTeam; diff --git a/apps/centralcms/src/payload/blocks/codeforafrica/OurImpact.ts b/apps/centralcms/src/payload/blocks/codeforafrica/OurImpact.ts new file mode 100644 index 000000000..c269dec67 --- /dev/null +++ b/apps/centralcms/src/payload/blocks/codeforafrica/OurImpact.ts @@ -0,0 +1,20 @@ +import impacts from "@/payload/fields/impacts"; +import { Block } from "payload"; + +const OurImpact: Block = { + slug: "our-impact", + imageURL: "/images/cms/blocks/codeforafrica/our_impact.jpg", + imageAltText: "Show our impact.", + fields: [ + { + name: "title", + type: "text", + required: true, + }, + impacts({ + minRows: 1, + }), + ], +}; + +export default OurImpact; diff --git a/apps/centralcms/src/payload/blocks/codeforafrica/OurMission.ts b/apps/centralcms/src/payload/blocks/codeforafrica/OurMission.ts new file mode 100644 index 000000000..fc8e7e3e6 --- /dev/null +++ b/apps/centralcms/src/payload/blocks/codeforafrica/OurMission.ts @@ -0,0 +1,26 @@ +import richText from "@/payload/fields/RichText"; +import { Block } from "payload"; + +const OurMission: Block = { + slug: "our-mission", + imageURL: "/images/cms/blocks/codeforafrica/our_mission.jpg", + imageAltText: "Our mission", + fields: [ + { + name: "title", + type: "text", + required: true, + }, + { + name: "subtitle", + type: "text", + required: true, + }, + richText({ + name: "description", + required: true, + }), + ], +}; + +export default OurMission; diff --git a/apps/centralcms/src/payload/blocks/codeforafrica/OurOffices.ts b/apps/centralcms/src/payload/blocks/codeforafrica/OurOffices.ts new file mode 100644 index 000000000..42370dddc --- /dev/null +++ b/apps/centralcms/src/payload/blocks/codeforafrica/OurOffices.ts @@ -0,0 +1,23 @@ +import { Block } from "payload"; + +const OurOffices: Block = { + slug: "our-offices", + imageURL: "/images/cms/blocks/codeforafrica/our_offices.png", + imageAltText: "Our offices", + fields: [ + { + name: "title", + type: "text", + required: true, + }, + { + hasMany: true, + type: "relationship", + relationTo: "offices", + name: "offices", + required: true, + }, + ], +}; + +export default OurOffices; diff --git a/apps/centralcms/src/payload/blocks/codeforafrica/OurPartners.ts b/apps/centralcms/src/payload/blocks/codeforafrica/OurPartners.ts new file mode 100644 index 000000000..ece6393ec --- /dev/null +++ b/apps/centralcms/src/payload/blocks/codeforafrica/OurPartners.ts @@ -0,0 +1,33 @@ +import { Block } from "payload"; + +const Partners: Block = { + slug: "our-partners", + imageURL: "/images/cms/blocks/codeforafrica/partners.png", + imageAltText: "Our partners.", + labels: { + singular: { + en: "Partners", + }, + plural: { + en: "Partners", + }, + }, + fields: [ + { + name: "title", + type: "text", + required: true, + }, + { + name: "partners", + type: "relationship", + relationTo: "partners", + hasMany: true, + admin: { + isSortable: true, + }, + }, + ], +}; + +export default Partners; diff --git a/apps/centralcms/src/payload/blocks/codeforafrica/OurTeam.ts b/apps/centralcms/src/payload/blocks/codeforafrica/OurTeam.ts new file mode 100644 index 000000000..37efbe2c5 --- /dev/null +++ b/apps/centralcms/src/payload/blocks/codeforafrica/OurTeam.ts @@ -0,0 +1,57 @@ +import { Block } from "payload"; + +const OurTeam: Block = { + slug: "our-team", + imageURL: "/images/cms/blocks/codeforafrica/team.png", + imageAltText: "Our team.", + labels: { + singular: { + en: "Team", + }, + plural: { + en: "Team", + }, + }, + fields: [ + { + name: "title", + type: "text", + required: true, + }, + { + name: "fields", + type: "select", + label: { + en: "Filter By", + }, + hasMany: true, + options: [ + { + value: "team", + label: { en: "Team" }, + }, + { + value: "country", + label: { en: "Country" }, + }, + ], + }, + { + name: "labels", + type: "group", + admin: { + description: "Labels/Titles to be used in member view page", + }, + fields: [ + { + name: "projects", + type: "text", + required: true, + defaultValue: "Projects", + }, + ], + }, + ], +}; + +export default OurTeam; diff --git a/apps/centralcms/src/payload/blocks/codeforafrica/OurWork.ts b/apps/centralcms/src/payload/blocks/codeforafrica/OurWork.ts new file mode 100644 index 000000000..4ffcd8c86 --- /dev/null +++ b/apps/centralcms/src/payload/blocks/codeforafrica/OurWork.ts @@ -0,0 +1,69 @@ +import { Block } from "payload"; + +const OurWork: Block = { + slug: "our-work", + imageURL: "/images/cms/blocks/codeforafrica/projects.png", + imageAltText: "Our work.", + labels: { + singular: { + en: "Our Work", + }, + plural: { + en: "Our Work", + }, + }, + fields: [ + { + name: "title", + type: "text", + required: true, + }, + { + name: "labels", + type: "group", + fields: [ + { + name: "description", + type: "text", + required: true, + defaultValue: "Description", + }, + { + name: "details", + type: "text", + required: true, + defaultValue: "Details", + }, + { + name: "team", + type: "text", + required: true, + defaultValue: "Team", + }, + { + name: "projects", + type: "text", + required: true, + defaultValue: "Explore other Projects", + }, + { + name: "partners", + type: "text", + required: true, + defaultValue: "Partners", + }, + { + name: "donors", + type: "text", + required: true, + defaultValue: "Donors", + }, + ], + admin: { + description: "Labels/Titles to be used in single project view page", + }, + }, + ], +}; + +export default OurWork; diff --git a/apps/centralcms/src/payload/blocks/codeforafrica/PageHeader.ts b/apps/centralcms/src/payload/blocks/codeforafrica/PageHeader.ts new file mode 100644 index 000000000..df29f09e9 --- /dev/null +++ b/apps/centralcms/src/payload/blocks/codeforafrica/PageHeader.ts @@ -0,0 +1,21 @@ +import { Block } from "payload"; + +const PageHeader: Block = { + slug: "page-header", + imageURL: "/images/cms/blocks/codeforafrica/page_header.jpg", + imageAltText: "Header for content pages such as contact page.", + fields: [ + { + name: "title", + required: true, + type: "text", + }, + { + name: "subtitle", + required: true, + type: "text", + }, + ], +}; + +export default PageHeader; diff --git a/apps/centralcms/src/payload/blocks/codeforafrica/Posts.ts b/apps/centralcms/src/payload/blocks/codeforafrica/Posts.ts new file mode 100644 index 000000000..947b62ae9 --- /dev/null +++ b/apps/centralcms/src/payload/blocks/codeforafrica/Posts.ts @@ -0,0 +1,78 @@ +import { Block } from "payload"; + +const primaryTags = [ + { + label: "Stories", + value: "stories", + }, + { + label: "Opportunities", + value: "opportunities", + }, +]; + +const Posts: Block = { + // `posts` slug is already used by Post collection + slug: "post-list", + imageURL: "/images/cms/blocks/codeforafrica/posts.jpg", + imageAltText: "Stories & Opportunities", + labels: { + singular: { + en: "Posts", + }, + plural: { + en: "Posts", + }, + }, + fields: [ + { + name: "primaryTag", + label: "Post Type", + type: "select", + hasMany: false, + options: primaryTags, + required: true, + }, + { + name: "stories", + type: "group", + fields: [ + { + name: "featured", + type: "relationship", + relationTo: "posts", + hasMany: false, + }, + { + name: "title", + type: "text", + required: true, + defaultValue: "Stories", + }, + ], + admin: { + condition: (_, siblingData) => siblingData.primaryTag === "stories", + }, + }, + { + name: "labels", + type: "group", + fields: [ + { + name: "search", + type: "text", + required: true, + defaultValue: "Search Posts", + }, + { + name: "readMore", + type: "text", + required: true, + defaultValue: "Read More", + }, + ], + }, + ], +}; + +export default Posts; diff --git a/apps/centralcms/src/payload/blocks/codeforafrica/RichText.ts b/apps/centralcms/src/payload/blocks/codeforafrica/RichText.ts new file mode 100644 index 000000000..a7f6499b2 --- /dev/null +++ b/apps/centralcms/src/payload/blocks/codeforafrica/RichText.ts @@ -0,0 +1,20 @@ +import blockFields from "@/payload/fields/blockFields"; +import richText from "@/payload/fields/RichText"; +import { Block } from "payload"; + +const RichText: Block = { + slug: "richText", + fields: [ + blockFields({ + name: "richTextBlockFields", + fields: [ + richText({ + name: "content", + required: true, + }), + ], + }), + ], +}; + +export default RichText; diff --git a/apps/centralcms/src/payload/blocks/roboshield/Content.ts b/apps/centralcms/src/payload/blocks/roboshield/Content.ts new file mode 100644 index 000000000..6d5399800 --- /dev/null +++ b/apps/centralcms/src/payload/blocks/roboshield/Content.ts @@ -0,0 +1,21 @@ +import { Block } from "payload"; +import { RichText } from "./RichText"; +import { MediaBlock } from "./MediaBlock"; +import { ExternalEmbed } from "./ExternalEmbed"; + +export const Content: Block = { + slug: "content", + labels: { + singular: "Content", + plural: "Content", + }, + imageURL: "/images/cms/blocks/roboshield/blog.png", + imageAltText: "Used in About page. Allows addition of blog like content", + fields: [ + { + type: "blocks", + name: "content", + blocks: [RichText, MediaBlock, ExternalEmbed], + }, + ], +}; diff --git a/apps/centralcms/src/payload/blocks/roboshield/ExternalEmbed.ts b/apps/centralcms/src/payload/blocks/roboshield/ExternalEmbed.ts new file mode 100644 index 000000000..46f7214f6 --- /dev/null +++ b/apps/centralcms/src/payload/blocks/roboshield/ExternalEmbed.ts @@ -0,0 +1,62 @@ +import { Block } from "payload"; + +export const ExternalEmbed: Block = { + slug: "externalEmbed", + labels: { + singular: "External Embed", + plural: "External Embed", + }, + fields: [ + { + name: "externalEmbedFields", + type: "group", + fields: [ + { + type: "row", + fields: [ + { + name: "embedType", + type: "radio", + defaultValue: "url", + options: [ + { + label: "URL", + value: "url", + }, + { + label: "Code", + value: "code", + }, + ], + }, + ], + }, + { + name: "url", + label: "URL", + type: "text", + required: true, + admin: { + condition: (_, siblingData) => siblingData?.embedType === "url", + }, + }, + { + name: "caption", + type: "text", + localized: true, + admin: { + condition: (_, siblingData) => siblingData?.embedType === "url", + }, + }, + { + name: "code", + type: "code", + required: true, + admin: { + condition: (_, siblingData) => siblingData?.embedType === "code", + }, + }, + ], + }, + ], +}; diff --git a/apps/centralcms/src/payload/blocks/roboshield/MediaBlock.ts b/apps/centralcms/src/payload/blocks/roboshield/MediaBlock.ts new file mode 100644 index 000000000..5130365b4 --- /dev/null +++ b/apps/centralcms/src/payload/blocks/roboshield/MediaBlock.ts @@ -0,0 +1,16 @@ +import { Block } from "payload"; + +export const MediaBlock: Block = { + slug: "mediaBlock", + fields: [ + { + name: "image", + type: "upload", + relationTo: "media", + required: true, + filterOptions: { + mimeType: { contains: "image" }, + }, + }, + ], +}; diff --git a/apps/centralcms/src/payload/blocks/roboshield/PageHeader.ts b/apps/centralcms/src/payload/blocks/roboshield/PageHeader.ts new file mode 100644 index 000000000..9e36d21e1 --- /dev/null +++ b/apps/centralcms/src/payload/blocks/roboshield/PageHeader.ts @@ -0,0 +1,25 @@ +import { Block } from "payload"; + +export const PageHeader: Block = { + slug: "page-header", + labels: { + singular: "Page Header", + plural: "Page Header", + }, + imageURL: "/images/cms/blocks/roboshield/pageHeader.png", + imageAltText: "Used in About page.", + fields: [ + { + name: "title", + type: "text", + label: "Title", + required: true, + }, + { + name: "subtitle", + type: "text", + label: "Subtitle", + required: true, + }, + ], +}; diff --git a/apps/centralcms/src/payload/blocks/roboshield/RichText.ts b/apps/centralcms/src/payload/blocks/roboshield/RichText.ts new file mode 100644 index 000000000..df106b5f5 --- /dev/null +++ b/apps/centralcms/src/payload/blocks/roboshield/RichText.ts @@ -0,0 +1,16 @@ +import { Block } from "payload"; +import richText from "@/custom-fields/RichText"; + +export const RichText: Block = { + slug: "richtext", + labels: { + singular: "Rich Text", + plural: "Rich Text", + }, + fields: [ + richText({ + name: "content", + required: true, + }), + ], +}; diff --git a/apps/centralcms/src/payload/blocks/roboshield/RobotsTxtGenerator.ts b/apps/centralcms/src/payload/blocks/roboshield/RobotsTxtGenerator.ts new file mode 100644 index 000000000..2e0253622 --- /dev/null +++ b/apps/centralcms/src/payload/blocks/roboshield/RobotsTxtGenerator.ts @@ -0,0 +1,454 @@ +import { Block, Field, Validate, ValidateOptions } from "payload"; +import richText from "@/custom-fields/RichText"; +import { blocks } from "node_modules/payload/dist/fields/validations"; + +const validateSteps: Validate = (value = [], args: any) => { + const requiredSteps: string[] = ["finish"]; + const missingSteps = requiredSteps.filter( + (slug) => + !value?.find( + ({ blockType }: { blockType: string }) => blockType === slug, + ), + ); + if (missingSteps.length) { + return `The following steps are missing: ${missingSteps.join(", ")}`; + } + const robotsTxtBlockIndex = value.findIndex( + ({ blockType }: { blockType: string }) => + blockType === "existing-robots-txt", + ); + if (robotsTxtBlockIndex > 0) { + return "Existing Robots Txt step should appear first"; + } + const lastBlock = value[value.length - 1]; + if (lastBlock?.blockType !== "finish") { + return "Finish Step should appear last"; + } + return blocks(value, args); +}; + +const ExistingRobots: Block = { + slug: "existing-robots-txt", + labels: { singular: "Existing Robots Txt", plural: "Existing Robots Txt" }, + imageURL: "/images/cms/blocks/roboshield/existingRobots.png", + imageAltText: "Fetch existing robots.txt", + fields: [ + { + name: "title", + type: "text", + required: true, + defaultValue: "Existing Robots", + }, + richText({ + name: "hint", + label: "Hint", + defaultValue: [ + { + children: [ + { + text: "Start by fetching the robots.txt file of the website you want to generate robots for.", + }, + ], + }, + ], + }) as unknown as Field, + { + name: "defaultFetchExistingRobots", + type: "checkbox", + label: "Fetch Existing Robots", + defaultValue: false, + }, + { + name: "existingRobotsTxt", + type: "text", + required: true, + defaultValue: "Fetch existing robots.txt", + }, + { + name: "placeholder", + type: "text", + required: true, + defaultValue: "Enter site URL e.g https://example.com", + }, + { + name: "urlValidationError", + type: "text", + required: true, + defaultValue: + "Please enter a valid URL. A valid URL should start with http:// or \nhttps://", + }, + { + name: "fetch", + type: "text", + required: true, + defaultValue: "Fetch", + }, + ], +}; + +const Delays: Block = { + slug: "delays", + labels: { singular: "Delays", plural: "Delays" }, + imageURL: "/images/cms/blocks/roboshield/delays.png", + imageAltText: "Set bot delays for the robots you want to generate.", + fields: [ + { + name: "title", + type: "text", + required: true, + defaultValue: "Delays", + }, + richText({ + name: "hint", + label: "Hint", + defaultValue: [ + { + children: [ + { + text: "You can set bot delays for the robots you want to generate.", + }, + ], + }, + ], + }) as unknown as Field, + { + name: "crawlDelay", + type: "group", + fields: [ + { + name: "label", + type: "text", + required: true, + defaultValue: "Crawl delay", + }, + { + name: "title", + type: "text", + required: true, + defaultValue: + "The crawl delay directive specifies the minimum time between requests to your server from a bot.", + }, + ], + }, + { + name: "cacheDelay", + type: "group", + fields: [ + { + name: "label", + type: "text", + required: true, + defaultValue: "Cache delay", + }, + { + name: "title", + type: "text", + required: true, + defaultValue: + "The cache delay directive specifies the time that a cached copy of a page should be considered fresh.", + }, + ], + }, + { + name: "visitTime", + type: "group", + fields: [ + { + name: "label", + type: "text", + required: true, + defaultValue: "Visit time", + }, + { + name: "title", + type: "text", + required: true, + defaultValue: + "The visit time directive specifies the time of day when a bot should visit your site.", + }, + ], + }, + ], +}; + +const Paths: Block = { + slug: "paths", + labels: { singular: "Paths", plural: "Paths" }, + imageURL: "/images/cms/blocks/roboshield/paths.png", + imageAltText: + "Set disallowed and allowed paths for the robots you want to generate.", + fields: [ + { + name: "title", + type: "text", + required: true, + defaultValue: "Paths", + }, + richText({ + name: "hint", + label: "hint", + defaultValue: [ + { + children: [ + { + text: "You can set disallowed and allowed paths for the robots you want to generate. All paths should be relative to the root of your site and end with a /", + }, + ], + }, + ], + }) as unknown as Field, + { + name: "selectPlatform", + label: "Select Platform", + type: "group", + fields: [ + { + name: "label", + type: "text", + required: true, + defaultValue: "Select platform", + }, + { + name: "title", + type: "text", + required: true, + defaultValue: + "Select the platform your website is built on to generate the correct robots.txt file.", + }, + ], + }, + { + name: "disallowedPaths", + type: "group", + fields: [ + { + name: "label", + type: "text", + required: true, + defaultValue: "Disallowed paths", + }, + { + name: "title", + type: "text", + required: true, + defaultValue: + "The disallowed paths directive specifies the paths that a bot should not visit.", + }, + ], + }, + { + name: "allowedPaths", + type: "group", + fields: [ + { + name: "label", + type: "text", + required: true, + defaultValue: "Allowed Paths", + }, + { + name: "title", + type: "text", + required: true, + defaultValue: + "The allowed paths directive specifies the paths that a bot should visit.", + }, + ], + }, + ], +}; + +const BlockBots: Block = { + slug: "block-bots", + labels: { singular: "Block Bots", plural: "Block Bots" }, + imageURL: "/images/cms/blocks/roboshield/blockBots.png", + imageAltText: "Select bots you want to block from crawling your website.", + fields: [ + { + name: "title", + type: "text", + required: true, + defaultValue: "Block Bots", + }, + richText({ + name: "hint", + defaultValue: [ + { + children: [ + { + text: "Select bots you want to block from crawling your website.", + }, + ], + }, + ], + }) as unknown as Field, + + { + name: "aiWebCrawlers", + type: "group", + fields: [ + { + name: "label", + type: "text", + required: true, + defaultValue: "AI Web Crawlers", + }, + { + name: "title", + type: "text", + required: true, + defaultValue: + "AI Web Crawlers are automated programs, that systematically browse the internet, indexing content for search engines and retrieving data from web pages. The information they gather can be used to train different models. You might want to block them if you're concerned about attribution or how your creative work could be used in the resulting AI model", + }, + ], + }, + { + name: "searchEngineCrawlers", + type: "group", + fields: [ + { + name: "label", + type: "text", + required: true, + defaultValue: "Search Engine Crawlers", + }, + { + name: "title", + type: "text", + required: true, + defaultValue: + "Search engine crawlers are used to index web content for search engines. Blocking them could prevent your website from being discovered by users.", + }, + ], + }, + ], +}; + +const SiteMaps: Block = { + slug: "site-maps", + labels: { singular: "Site Maps", plural: "Site Maps" }, + imageURL: "/images/cms/blocks/roboshield/siteMaps.png", + imageAltText: "Add sitemap URLs to your robots.txt file.", + fields: [ + { + name: "title", + type: "text", + required: true, + defaultValue: "Site Maps", + }, + richText({ + name: "hint", + defaultValue: [ + { + children: [ + { text: "You can add sitemap URLs to your robots.txt file." }, + ], + }, + ], + }) as unknown as Field, + { + name: "placeholder", + type: "text", + required: true, + defaultValue: "Enter sitemap URLs each URL on a new line", + }, + ], +}; + +const Finish: Block = { + slug: "finish", + labels: { singular: "Finish", plural: "Finish" }, + imageURL: "/images/cms/blocks/roboshield/finish.png", + imageAltText: "Completes robots generation process", + fields: [ + { + name: "title", + type: "text", + required: true, + defaultValue: "Finish", + }, + richText({ + name: "hint", + defaultValue: [ + { + children: [ + { + text: "Your robots.txt file has been generated successfully. You can now copy the code or download the file.", + }, + ], + }, + ], + }) as unknown as Field, + { + name: "placeholder", + type: "text", + required: true, + defaultValue: + "# Disallow specifies the paths that are not allowed to be crawled by the robot.", + }, + ], +}; + +const Actions: Field = { + name: "actions", + label: "Actions", + type: "group", + fields: [ + { + name: "showRobotsTxt", + type: "text", + required: true, + defaultValue: "View current robots.txt file", + }, + { + name: "continue", + type: "text", + required: true, + defaultValue: "Continue", + }, + { + name: "back", + type: "text", + required: true, + defaultValue: "Back", + }, + { + name: "reset", + type: "text", + required: true, + defaultValue: "Reset", + }, + { + name: "download", + type: "text", + required: true, + defaultValue: "Download", + }, + { + name: "copyToClipboard", + type: "text", + required: true, + defaultValue: "Copy to Clipboard", + }, + ], +}; +const RobotsTxtGenerator: Block = { + slug: "robots-txt-generator", + labels: { singular: "robots.txt Generator", plural: "robots.txt Generator" }, + imageURL: "/images/cms/blocks/roboshield/robotsGenerator.png", + imageAltText: "Set action labels and content for robots.txt generator.", + fields: [ + { + type: "blocks", + name: "steps", + blocks: [ExistingRobots, Delays, Paths, BlockBots, SiteMaps, Finish], + admin: { + initCollapsed: true, + }, + validate: validateSteps, + }, + Actions, + ], +}; + +export default RobotsTxtGenerator; diff --git a/apps/centralcms/src/payload/blocks/roboshield/SiteHero.ts b/apps/centralcms/src/payload/blocks/roboshield/SiteHero.ts new file mode 100644 index 000000000..6e2db0aaa --- /dev/null +++ b/apps/centralcms/src/payload/blocks/roboshield/SiteHero.ts @@ -0,0 +1,68 @@ +import richText from "@/payload/fields/RichText"; +import { Block } from "payload"; + +export const SiteHero: Block = { + slug: "page-hero", + imageURL: "/images/cms/blocks/roboshield/hero.png", + imageAltText: "Used in homepage", + labels: { + singular: "Site Hero", + plural: "Site Hero", + }, + interfaceName: "SiteHero", + fields: [ + { + name: "heroHeaders", + type: "array", + label: "Hero Components", + minRows: 3, + maxRows: 4, + labels: { + singular: "Header", + plural: "Headers", + }, + fields: [ + { + name: "headingType", + label: "Heading Type", + type: "select", + hasMany: false, + options: [ + { + label: "Large Heading", + value: "largeHeading", + }, + { + label: "Sub Heading", + value: "subHeading", + }, + { + label: "Heading with rotating text", + value: "rotatingText", + }, + ], + }, + { + name: "title", + type: "text", + label: "Content", + }, + ], + admin: { + components: { + RowLabel: "@/payload/components/RowLabel.tsx", + }, + }, + }, + richText({ + name: "heroDescription", + required: true, + label: "Description", + }), + { + name: "heroCallToAction", + type: "text", + label: "Call to Action", + }, + ], +}; diff --git a/apps/centralcms/src/payload/blocks/roboshield/Statistics.ts b/apps/centralcms/src/payload/blocks/roboshield/Statistics.ts new file mode 100644 index 000000000..29963c40a --- /dev/null +++ b/apps/centralcms/src/payload/blocks/roboshield/Statistics.ts @@ -0,0 +1,60 @@ +import { Block } from "payload"; +import image from "@/custom-fields/image"; + +export const Statistics: Block = { + slug: "statistics", + labels: { + singular: "Statistics", + plural: "Statistics", + }, + imageURL: "/images/cms/blocks/roboshield/statistics.png", + imageAltText: "Used in About page.", + fields: [ + { + name: "title", + type: "text", + label: "Title", + required: true, + defaultValue: "Statistics", + }, + { + name: "statistics", + type: "array", + label: "Statistics", + labels: { + singular: "Statistic", + plural: "Statistics", + }, + fields: [ + { + name: "name", + type: "text", + label: "Name", + required: true, + }, + { + name: "value", + type: "text", + label: "Value", + required: true, + }, + { + name: "description", + type: "richText", + label: "Description", + required: true, + }, + image({ + overrides: { + name: "icon", + localized: true, + admin: { + description: + "An icon to represent this statistic. SVG format is recommended.", + }, + }, + }), + ], + }, + ], +}; diff --git a/apps/centralcms/src/payload/collections/Media.ts b/apps/centralcms/src/payload/collections/Media.ts new file mode 100644 index 000000000..2b4f49940 --- /dev/null +++ b/apps/centralcms/src/payload/collections/Media.ts @@ -0,0 +1,18 @@ +import type { CollectionConfig } from "payload"; + +export const Media: CollectionConfig = { + slug: "media", + access: { + read: () => true, + create: () => true, + update: () => true, + }, + fields: [ + { + name: "alt", + type: "text", + required: true, + }, + ], + upload: true, +}; diff --git a/apps/centralcms/src/payload/collections/Tenants/access/tenantAdmins.ts b/apps/centralcms/src/payload/collections/Tenants/access/tenantAdmins.ts new file mode 100644 index 000000000..e0185a71e --- /dev/null +++ b/apps/centralcms/src/payload/collections/Tenants/access/tenantAdmins.ts @@ -0,0 +1,27 @@ +import type { Access } from "payload"; +import { isSuperAdmin } from "@/payload/utilities/isSuperAdmin"; + +// the user must be an admin of the tenant being accessed +export const tenantAdmins: Access = ({ req: { user } }) => { + if (isSuperAdmin(user)) { + return true; + } + + return { + id: { + in: + user?.tenants + ?.map(({ tenant, roles }) => { + if (roles.includes("admin")) { + if (typeof tenant === "string") { + return tenant; + } else if (typeof tenant === "object" && "id" in tenant) { + return tenant.id; + } + } + return null; + }) // eslint-disable-line function-paren-newline + .filter(Boolean) || [], + }, + }; +}; diff --git a/apps/centralcms/src/payload/collections/Tenants/index.ts b/apps/centralcms/src/payload/collections/Tenants/index.ts new file mode 100644 index 000000000..b8ce5cb64 --- /dev/null +++ b/apps/centralcms/src/payload/collections/Tenants/index.ts @@ -0,0 +1,34 @@ +import type { CollectionConfig } from "payload"; +import { superAdmins } from "@/payload/access/superAdmins"; + +export const Tenants: CollectionConfig = { + slug: "tenants", + access: { + create: superAdmins, + read: superAdmins, + update: superAdmins, + delete: superAdmins, + }, + admin: { + useAsTitle: "name", + }, + fields: [ + { + name: "name", + type: "text", + required: true, + }, + { + name: "domains", + type: "array", + index: true, + fields: [ + { + name: "domain", + type: "text", + required: true, + }, + ], + }, + ], +}; diff --git a/apps/centralcms/src/payload/collections/Users/access/adminsAndSelf.ts b/apps/centralcms/src/payload/collections/Users/access/adminsAndSelf.ts new file mode 100644 index 000000000..1d5070b31 --- /dev/null +++ b/apps/centralcms/src/payload/collections/Users/access/adminsAndSelf.ts @@ -0,0 +1,62 @@ +import type { Access, AccessResult } from "payload"; + +import { isSuperAdmin } from "@/payload/utilities/isSuperAdmin"; + +export const adminsAndSelf: any = async ({ req: { user } }) => { + if (user) { + const isSuper = isSuperAdmin(user); + + // allow super-admins through only if they have not scoped their user via `lastLoggedInTenant` + if (isSuper && !user?.lastLoggedInTenant) { + return true; + } + + // allow users to read themselves and any users within the tenants they are admins of + return { + or: [ + { + id: { + equals: user.id, + }, + }, + ...(isSuper + ? [ + { + "tenants.tenant": { + in: [ + typeof user?.lastLoggedInTenant === "string" + ? user.lastLoggedInTenant + : typeof user?.lastLoggedInTenant === "number" + ? user.lastLoggedInTenant.toString() + : user?.lastLoggedInTenant?.id, + ].filter(Boolean), + }, + }, + ] + : [ + { + "tenants.tenant": { + in: + user?.tenants + ?.map(({ tenant, roles }) => { + if (roles.includes("admin")) { + if (typeof tenant === "string") { + return tenant; + } else if ( + tenant && + typeof tenant === "object" && + "id" in tenant + ) { + return tenant.id; + } + } + return null; + }) // eslint-disable-line function-paren-newline + .filter(Boolean) || [], + }, + }, + ]), + ], + }; + } +}; diff --git a/apps/centralcms/src/payload/collections/Users/access/tenantAdmins.ts b/apps/centralcms/src/payload/collections/Users/access/tenantAdmins.ts new file mode 100644 index 000000000..7f9dd2bb1 --- /dev/null +++ b/apps/centralcms/src/payload/collections/Users/access/tenantAdmins.ts @@ -0,0 +1,20 @@ +import type { FieldAccess } from "payload"; + +import { checkUserRoles } from "@/payload/utilities/checkUserRoles"; +import { checkTenantRoles } from "../utilities/checkTenantRoles"; +import { User } from "payload"; + +export const tenantAdmins: FieldAccess = (args) => { + const { + req: { user }, + doc, + } = args; + + return ( + checkUserRoles(["super-admin"], user) || + doc?.tenants?.some(({ tenant }) => { + const id = typeof tenant === "string" ? tenant : tenant?.id; + return checkTenantRoles(["admin"], user as User, id); + }) + ); +}; diff --git a/apps/centralcms/src/payload/collections/Users/hooks/checkDomain.ts b/apps/centralcms/src/payload/collections/Users/hooks/checkDomain.ts new file mode 100644 index 000000000..7c5bc52c7 --- /dev/null +++ b/apps/centralcms/src/payload/collections/Users/hooks/checkDomain.ts @@ -0,0 +1,40 @@ +import { AuthenticationError, CollectionBeforeLoginHook } from "payload"; +import { CustomError } from "./customError"; +import { checkUserRoles } from "@/payload/utilities/checkUserRoles"; + +export const checkDomain: CollectionBeforeLoginHook = async ({ + req, // full express request + user, // user being logged in + req: { payload }, +}) => { + //get tenant details that belong to a specific domain + const currentTenant = await payload.find({ + collection: "tenants", + where: { + "domains.domain": { + in: [req.headers.get("host")], + }, + }, + depth: 0, + limit: 1, + req, + }); + + if (currentTenant.totalDocs === 0) { + if (!checkUserRoles(["super-admin"], user)) { + throw new CustomError("Only super admins can login via this domain"); + } + } else { + if ( + !user?.tenants.some( + (tenantDetails) => tenantDetails.tenant === currentTenant.docs[0]["id"], + ) + ) { + throw new CustomError( + "This user is not authorized to login via this domain", + ); + } + } + + return user; +}; diff --git a/apps/centralcms/src/payload/collections/Users/hooks/customError.ts b/apps/centralcms/src/payload/collections/Users/hooks/customError.ts new file mode 100644 index 000000000..85d22aa5c --- /dev/null +++ b/apps/centralcms/src/payload/collections/Users/hooks/customError.ts @@ -0,0 +1,7 @@ +import { APIError } from "payload"; + +export class CustomError extends APIError { + constructor(message: string) { + super(message, 400, undefined, true); + } +} diff --git a/apps/centralcms/src/payload/collections/Users/hooks/recordLastLoggedInTenant.ts b/apps/centralcms/src/payload/collections/Users/hooks/recordLastLoggedInTenant.ts new file mode 100644 index 000000000..1579841c7 --- /dev/null +++ b/apps/centralcms/src/payload/collections/Users/hooks/recordLastLoggedInTenant.ts @@ -0,0 +1,36 @@ +import type { AfterLoginHook } from "node_modules/payload/dist/collections/config/types"; + +export const recordLastLoggedInTenant: AfterLoginHook = async ({ + req, + user, +}) => { + try { + const relatedOrg = await req.payload + .find({ + collection: "tenants", + where: { + "domains.domain": { + in: [req.headers.get("host")], + }, + }, + depth: 0, + limit: 1, + }) + ?.then((res) => res.docs?.[0]); + + await req.payload.update({ + id: user.id, + collection: "users", + data: { + lastLoggedInTenant: relatedOrg?.id || null, + }, + req, + }); + } catch (err: unknown) { + req.payload.logger.error( + `Error recording last logged in tenant for user ${user.id}: ${err}`, + ); + } + + return user; +}; diff --git a/apps/centralcms/src/payload/collections/Users/index.ts b/apps/centralcms/src/payload/collections/Users/index.ts new file mode 100644 index 000000000..a2a5eec08 --- /dev/null +++ b/apps/centralcms/src/payload/collections/Users/index.ts @@ -0,0 +1,109 @@ +import type { CollectionConfig } from "payload"; + +import { anyone } from "@/payload/access/anyone"; +import { superAdminFieldAccess } from "@/payload/access/superAdmins"; +import { adminsAndSelf } from "./access/adminsAndSelf"; +import { tenantAdmins } from "./access/tenantAdmins"; +import { recordLastLoggedInTenant } from "./hooks/recordLastLoggedInTenant"; +import { checkDomain } from "./hooks/checkDomain"; +import { isSuperOrTenantAdmin } from "./utilities/isSuperOrTenantAdmin"; + +export const Users: CollectionConfig = { + slug: "users", + auth: { + useAPIKey: true, + }, + admin: { + useAsTitle: "email", + }, + access: { + read: adminsAndSelf, + create: anyone, + update: adminsAndSelf, + delete: adminsAndSelf, + admin: isSuperOrTenantAdmin, + }, + hooks: { + afterLogin: [recordLastLoggedInTenant], + beforeLogin: [checkDomain], + }, + fields: [ + { + name: "firstName", + type: "text", + }, + { + name: "lastName", + type: "text", + }, + { + name: "roles", + type: "select", + hasMany: true, + required: true, + access: { + create: superAdminFieldAccess, + update: superAdminFieldAccess, + read: superAdminFieldAccess, + }, + options: [ + { + label: "Super Admin", + value: "super-admin", + }, + { + label: "User", + value: "user", + }, + ], + }, + { + name: "tenants", + type: "array", + label: "Tenants", + access: { + create: tenantAdmins, + update: tenantAdmins, + read: tenantAdmins, + }, + fields: [ + { + name: "tenant", + type: "relationship", + relationTo: "tenants", + required: true, + }, + { + name: "roles", + type: "select", + hasMany: true, + required: true, + options: [ + { + label: "Admin", + value: "admin", + }, + { + label: "User", + value: "user", + }, + ], + }, + ], + }, + { + name: "lastLoggedInTenant", + type: "relationship", + relationTo: "tenants", + index: true, + access: { + create: () => false, + read: tenantAdmins, + update: superAdminFieldAccess, + }, + admin: { + position: "sidebar", + }, + }, + ], +}; diff --git a/apps/centralcms/src/payload/collections/Users/utilities/checkTenantRoles.ts b/apps/centralcms/src/payload/collections/Users/utilities/checkTenantRoles.ts new file mode 100644 index 000000000..e02dba63c --- /dev/null +++ b/apps/centralcms/src/payload/collections/Users/utilities/checkTenantRoles.ts @@ -0,0 +1,24 @@ +import type { User } from "payload"; + +export const checkTenantRoles = ( + allRoles: User["tenants"][0]["roles"] = [], + user?: User, + tenant?: User["tenants"][0]["tenant"], +): boolean => { + if (tenant) { + const id = typeof tenant === "string" ? tenant : tenant?.id; + + if ( + allRoles.some((role) => { + return user?.tenants?.some(({ tenant: userTenant, roles }) => { + const tenantID = + typeof userTenant === "string" ? userTenant : userTenant?.id; + return tenantID === id && roles?.includes(role); + }); + }) + ) + return true; + } + + return false; +}; diff --git a/apps/centralcms/src/payload/collections/Users/utilities/isSuperOrTenantAdmin.ts b/apps/centralcms/src/payload/collections/Users/utilities/isSuperOrTenantAdmin.ts new file mode 100644 index 000000000..6a8c78bed --- /dev/null +++ b/apps/centralcms/src/payload/collections/Users/utilities/isSuperOrTenantAdmin.ts @@ -0,0 +1,82 @@ +import type { PayloadRequest } from "payload"; +import { isSuperAdmin } from "@/payload/utilities/isSuperAdmin"; + +const logs = false; + +export const isSuperOrTenantAdmin = async (args: { + req: PayloadRequest; +}): Promise => { + const { + req, + req: { user, payload }, + } = args; + + // always allow super admins through + if (isSuperAdmin(user)) { + return true; + } + + if (logs) { + const msg = `Finding tenant with host: '${req.headers.get("host")}'`; + payload.logger.info({ msg }); + } + + // read `req.headers.host`, lookup the tenant by `domain` to ensure it exists, and check if the user is an admin of that tenant + const foundTenants = await payload.find({ + collection: "tenants", + where: { + "domains.domain": { + in: [req.headers.get("host")], + }, + }, + depth: 0, + limit: 1, + req, + }); + + // if this tenant does not exist, deny access + if (foundTenants.totalDocs === 0) { + if (logs) { + const msg = `No tenant found for ${req.headers.get("host")}`; + payload.logger.info({ msg }); + } + + return false; + } + + if (logs) { + const msg = `Found tenant: '${foundTenants.docs?.[0]?.name}', checking if user is an tenant admin`; + payload.logger.info({ msg }); + } + + // finally check if the user is an admin of this tenant + const tenantWithUser = user?.tenants?.find(({ tenant: userTenant }) => { + // Check if userTenant is a Tenant object or a string/number + if (typeof userTenant === "object" && "id" in userTenant) { + return userTenant.id === foundTenants.docs[0].id; + } + + // Handle the case when userTenant is a string or number + return typeof userTenant === "string" + ? userTenant === foundTenants.docs[0].id + : typeof userTenant === "number" + ? userTenant === foundTenants.docs[0].id + : false; + }); + + if (tenantWithUser?.roles?.some((role) => role === "admin")) { + if (logs) { + const msg = `User is an admin of ${foundTenants.docs[0].name}, allowing access`; + payload.logger.info({ msg }); + } + + return true; + } + + if (logs) { + const msg = `User is not an admin of ${foundTenants.docs[0].name}, denying access`; + payload.logger.info({ msg }); + } + + return false; +}; diff --git a/apps/centralcms/src/payload/collections/codeforafrica/Authors.ts b/apps/centralcms/src/payload/collections/codeforafrica/Authors.ts new file mode 100644 index 000000000..e278416e0 --- /dev/null +++ b/apps/centralcms/src/payload/collections/codeforafrica/Authors.ts @@ -0,0 +1,32 @@ +import type { CollectionConfig } from "payload"; +import { canRead } from "@/payload/access/codeforafrica"; + +const Authors: CollectionConfig = { + slug: "author", + access: { + read: canRead, + create: () => true, + update: () => true, + }, + admin: { + defaultColumns: ["fullName", "updatedAt"], + enableRichTextLink: false, + group: "Publications", + useAsTitle: "fullName", + }, + fields: [ + { + name: "fullName", + type: "text", + required: true, + localized: true, + }, + { + name: "bio", + type: "textarea", + localized: true, + }, + ], +}; + +export default Authors; diff --git a/apps/centralcms/src/payload/collections/codeforafrica/Donors.ts b/apps/centralcms/src/payload/collections/codeforafrica/Donors.ts new file mode 100644 index 000000000..90ce27f0c --- /dev/null +++ b/apps/centralcms/src/payload/collections/codeforafrica/Donors.ts @@ -0,0 +1,45 @@ +import image from "@/payload/fields/image"; +import slug from "@/payload/fields/slug"; +import type { CollectionConfig } from "payload"; +import { canRead } from "@/payload/access/codeforafrica"; + +const Donors: CollectionConfig = { + access: { + read: canRead, + create: () => true, + update: () => true, + }, + slug: "donors", + labels: { + singular: { + en: "Donor", + }, + plural: { + en: "Donors", + }, + }, + admin: { + defaultColumns: ["name", "slug", "updatedAt"], + enableRichTextLink: false, + group: "Organisation", + useAsTitle: "name", + }, + fields: [ + { + name: "name", + type: "text", + required: true, + localized: true, + }, + slug({ fieldToUse: "name" }), + image({ + overrides: { + name: "logo", + required: true, + localized: true, + }, + }), + ], +}; + +export default Donors; diff --git a/apps/centralcms/src/payload/collections/codeforafrica/GuidingPrinciples.ts b/apps/centralcms/src/payload/collections/codeforafrica/GuidingPrinciples.ts new file mode 100644 index 000000000..c3369d98f --- /dev/null +++ b/apps/centralcms/src/payload/collections/codeforafrica/GuidingPrinciples.ts @@ -0,0 +1,43 @@ +import image from "@/payload/fields/image"; +import richText from "@/payload/fields/RichText"; +import slug from "@/payload/fields/slug"; +import type { CollectionConfig } from "payload"; +import { canRead } from "@/payload/access/codeforafrica"; + +const GuidingPrinciples: CollectionConfig = { + access: { + read: canRead, + create: () => true, + update: () => true, + }, + slug: "guiding-principles", + admin: { + defaultColumns: ["title", "slug", "updatedAt"], + enableRichTextLink: false, + group: "Organisation", + useAsTitle: "title", + }, + fields: [ + { + name: "title", + type: "text", + required: true, + localized: true, + }, + slug({ fieldToUse: "title" }), + image({ + overrides: { + name: "icon", + required: true, + localized: true, + }, + }), + richText({ + name: "description", + required: true, + localized: true, + }), + ], +}; + +export default GuidingPrinciples; diff --git a/apps/centralcms/src/payload/collections/codeforafrica/Impact.ts b/apps/centralcms/src/payload/collections/codeforafrica/Impact.ts new file mode 100644 index 000000000..ae420bc94 --- /dev/null +++ b/apps/centralcms/src/payload/collections/codeforafrica/Impact.ts @@ -0,0 +1,46 @@ +import image from "@/payload/fields/image"; +import richText from "@/payload/fields/RichText"; +import type { CollectionConfig } from "payload"; +import { canRead } from "@/payload/access/codeforafrica"; + +const Impact: CollectionConfig = { + slug: "impact", + admin: { + defaultColumns: ["title", "value", "updatedAt"], + enableRichTextLink: false, + group: "Organisation", + useAsTitle: "title", + }, + access: { + read: canRead, + create: () => true, + update: () => true, + }, + fields: [ + { + name: "title", + type: "text", + required: true, + localized: true, + }, + richText({ + name: "description", + required: true, + localized: true, + }), + { + name: "value", + type: "text", + required: true, + localized: true, + }, + image({ + overrides: { + name: "icon", + required: true, + localized: true, + }, + }), + ], +}; +export default Impact; diff --git a/apps/centralcms/src/payload/collections/codeforafrica/Media.ts b/apps/centralcms/src/payload/collections/codeforafrica/Media.ts new file mode 100644 index 000000000..ddd65ff30 --- /dev/null +++ b/apps/centralcms/src/payload/collections/codeforafrica/Media.ts @@ -0,0 +1,34 @@ +import type { CollectionConfig } from "payload"; +import { canRead } from "@/payload/access/codeforafrica"; + +const Media: CollectionConfig = { + slug: "media", + admin: { + defaultColumns: ["alt", "updatedAt"], + enableRichTextLink: false, + group: "Publication", + useAsTitle: "alt", + }, + access: { + read: canRead, + create: () => true, + update: () => true, + }, + upload: { + //staticURL: "/media", + staticDir: "media", + }, + fields: [ + { + name: "alt", + label: "Alt Text", + type: "text", + required: true, + }, + ], + hooks: { + afterRead: [({ doc }) => ({ ...doc, src: doc.url })], + }, +}; + +export default Media; diff --git a/apps/centralcms/src/payload/collections/codeforafrica/Members.ts b/apps/centralcms/src/payload/collections/codeforafrica/Members.ts new file mode 100644 index 000000000..0618366c7 --- /dev/null +++ b/apps/centralcms/src/payload/collections/codeforafrica/Members.ts @@ -0,0 +1,79 @@ +import { allCountries } from "@/payload/lib/data/json/countries"; +import image from "@/payload/fields/image"; +import richText from "@/payload/fields/RichText"; +import slug from "@/payload/fields/slug"; +import socialLinks from "@/payload/fields/socialLinks"; +import nestCollectionUnderPage from "@/payload/utilities/nestCollectionUnderPage"; +import type { CollectionConfig, Option } from "payload"; +import { canRead } from "@/payload/access/codeforafrica"; + +const Members: CollectionConfig = { + access: { + read: canRead, + create: () => true, + update: () => true, + }, + slug: "members", + labels: { + singular: { + en: "Member", + }, + plural: { + en: "Members", + }, + }, + admin: { + defaultColumns: ["name", "title", "team.name", "updatedAt"], + enableRichTextLink: false, + group: "Organisation", + useAsTitle: "name", + }, + fields: [ + image({ + overrides: { + required: true, + }, + }), + { + name: "name", + type: "text", + required: true, + localized: true, + index: true, + }, + { + name: "title", + type: "text", + required: true, + localized: true, + }, + slug({ fieldToUse: "name" }), + { + name: "country", + type: "select", + options: allCountries as Option[], + }, + richText({ + name: "description", + required: true, + localized: true, + }), + socialLinks({ + name: "connect", + label: "Social Media Links", + required: false, + localized: true, + }), + { + name: "team", + type: "relationship", + relationTo: "teams", + required: true, + }, + ], + hooks: { + afterRead: [nestCollectionUnderPage("members")], + }, +}; + +export default Members; diff --git a/apps/centralcms/src/payload/collections/codeforafrica/Offices.ts b/apps/centralcms/src/payload/collections/codeforafrica/Offices.ts new file mode 100644 index 000000000..18cb97c57 --- /dev/null +++ b/apps/centralcms/src/payload/collections/codeforafrica/Offices.ts @@ -0,0 +1,49 @@ +import { allCountries } from "@/payload/lib/data/json/countries"; +import type { CollectionConfig, Option } from "payload"; +import { canRead } from "@/payload/access/codeforafrica"; + +const Offices: CollectionConfig = { + slug: "offices", + access: { + read: canRead, + create: () => true, + update: () => true, + }, + admin: { + group: "Organisation", + defaultColumns: ["city", "country"], + useAsTitle: "city", + }, + fields: [ + { + name: "city", + type: "text", + required: true, + }, + { + name: "location", + type: "point", + label: "Location", + required: true, + }, + { + name: "addressLine1", + type: "text", + }, + { + name: "addressLine2", + type: "text", + }, + { + name: "zipCode", + type: "text", + }, + { + name: "country", + type: "select", + options: allCountries as Option[], + }, + ], +}; + +export default Offices; diff --git a/apps/centralcms/src/payload/collections/codeforafrica/Pages.ts b/apps/centralcms/src/payload/collections/codeforafrica/Pages.ts new file mode 100644 index 000000000..ba73bbcad --- /dev/null +++ b/apps/centralcms/src/payload/collections/codeforafrica/Pages.ts @@ -0,0 +1,92 @@ +import ContactForm from "@/payload/blocks/codeforafrica/ContactForm"; +import CustomPageHeader from "@/payload/blocks/codeforafrica/CustomPageHeader"; +import Error from "@/payload/blocks/codeforafrica/Error"; +import FeaturedStories from "@/payload/blocks/codeforafrica/FeaturedStories"; +import FeaturedWork from "@/payload/blocks/codeforafrica/FeaturedWork"; +import GetInTouch from "@/payload/blocks/codeforafrica/GetInTouch"; +import GetInvolved from "@/payload/blocks/codeforafrica/GetInvolved"; +import GuidingPrinciples from "@/payload/blocks/codeforafrica/GuidingPrinciples"; +import Hero from "@/payload/blocks/codeforafrica/Hero"; +import JoinOurSlack from "@/payload/blocks/codeforafrica/JoinOurSlack"; +import LongForm from "@/payload/blocks/codeforafrica/LongForm"; +import MeetOurTeam from "@/payload/blocks/codeforafrica/MeetOurTeam"; +import OurImpact from "@/payload/blocks/codeforafrica/OurImpact"; +import OurMission from "@/payload/blocks/codeforafrica/OurMission"; +import OurOffices from "@/payload/blocks/codeforafrica/OurOffices"; +import OurPartners from "@/payload/blocks/codeforafrica/OurPartners"; +import OurTeam from "@/payload/blocks/codeforafrica/OurTeam"; +import OurWork from "@/payload/blocks/codeforafrica/OurWork"; +import PageHeader from "@/payload/blocks/codeforafrica/PageHeader"; +import Posts from "@/payload/blocks/codeforafrica/Posts"; +import slug from "@/payload/fields/slug"; +import formatDraftUrl from "@/payload/utilities/formatDraftUrl"; +import { CollectionConfig } from "node_modules/payload/dist/collections/config/types"; +import { canRead } from "@/payload/access/codeforafrica"; + +const Pages: CollectionConfig = { + slug: "CodeForAfricaPages", + access: { + read: canRead, + create: () => true, + update: () => true, + }, + labels: { + singular: "Page", + plural: "Pages", + }, + admin: { + defaultColumns: ["fullTitle", "updatedAt"], + group: "Publications", + preview: (doc, options) => formatDraftUrl("pages", doc, options), + useAsTitle: "title", + }, + fields: [ + { + name: "title", + type: "text", + required: true, + localized: true, + }, + //fullTitle({ overrides: { localized: true } }), + slug(), + { + name: "blocks", + type: "blocks", + // Generally sort blocks alphabetically but keep related blocks next to + // each other e.g. while alphabecially CustomPageHeader should be with C, + // it's functiaonally equivalent with PageHeader so we keep it next to + // PageHeader + blocks: [ + ContactForm, + Error, + FeaturedWork, + FeaturedStories, + GetInTouch, + GetInvolved, + GuidingPrinciples, + Hero, + JoinOurSlack, + MeetOurTeam, + PageHeader, + Posts, + CustomPageHeader, + LongForm, + OurOffices, + OurImpact, + OurMission, + OurPartners, + OurTeam, + OurWork, + ], + localized: true, + admin: { + initCollapsed: true, + }, + }, + ], + versions: { + drafts: true, + }, +}; + +export default Pages; diff --git a/apps/centralcms/src/payload/collections/codeforafrica/Partners.ts b/apps/centralcms/src/payload/collections/codeforafrica/Partners.ts new file mode 100644 index 000000000..b04f29fbe --- /dev/null +++ b/apps/centralcms/src/payload/collections/codeforafrica/Partners.ts @@ -0,0 +1,66 @@ +import image from "@/payload/fields/image"; +import richText from "@/payload/fields/RichText"; +import slug from "@/payload/fields/slug"; +import socialLinks from "@/payload/fields/socialLinks"; +import nestCollectionUnderPage from "@/payload/utilities/nestCollectionUnderPage"; +import type { CollectionConfig } from "payload"; +import { canRead } from "@/payload/access/codeforafrica"; + +const Partners: CollectionConfig = { + slug: "partners", + access: { + read: canRead, + create: () => true, + update: () => true, + }, + labels: { + singular: { + en: "Partner", + }, + plural: { + en: "Partners", + }, + }, + admin: { + defaultColumns: ["name", "updatedAt"], + enableRichTextLink: false, + group: "Organisation", + useAsTitle: "name", + }, + fields: [ + { + name: "name", + label: { + en: "Name", + fr: "Nom", + pt: "Nome", + }, + type: "text", + required: true, + localized: true, + }, + slug({ fieldToUse: "name" }), + image({ + overrides: { + name: "logo", + required: true, + localized: true, + }, + }), + richText({ + name: "description", + required: true, + localized: true, + }), + socialLinks({ + name: "connect", + label: "Social Media Links", + required: false, + localized: true, + }), + ], + hooks: { + afterRead: [nestCollectionUnderPage("partners")], + }, +}; +export default Partners; diff --git a/apps/centralcms/src/payload/collections/codeforafrica/Posts.ts b/apps/centralcms/src/payload/collections/codeforafrica/Posts.ts new file mode 100644 index 000000000..401af9e8c --- /dev/null +++ b/apps/centralcms/src/payload/collections/codeforafrica/Posts.ts @@ -0,0 +1,71 @@ +import authors from "@/payload/fields/authors"; +import content from "@/payload/fields/content"; +import image from "@/payload/fields/image"; +import publishedOn from "@/payload/fields/publishedOn"; +import slug from "@/payload/fields/slug"; +import tags from "@/payload/fields/tags"; +import type { CollectionConfig } from "payload"; +import { canRead } from "@/payload/access/codeforafrica"; + +const Posts: CollectionConfig = { + slug: "posts", + access: { + read: canRead, + create: () => true, + update: () => true, + }, + labels: { + singular: { + en: "Post", + }, + plural: { + en: "Posts", + }, + }, + admin: { + defaultColumns: ["title", "authors", "publishedOn"], + description: "Stories and Opportunities", + group: "Publications", + useAsTitle: "title", + listSearchableFields: ["content", "excerpt"], + }, + fields: [ + { + name: "title", + type: "text", + required: true, + localized: true, + }, + image({ + overrides: { + name: "coverImage", + required: true, + localized: true, + }, + }), + content({ minRows: 1, required: true, localized: true }), + slug(), + publishedOn({ localized: true }), + tags({ + admin: { + isSortable: true, + position: "sidebar", + }, + }), + authors({ localized: true }), + { + name: "excerpt", + type: "textarea", + required: true, + localized: true, + admin: { + position: "sidebar", + }, + }, + ], + versions: { + drafts: true, + }, +}; + +export default Posts; diff --git a/apps/centralcms/src/payload/collections/codeforafrica/Projects.ts b/apps/centralcms/src/payload/collections/codeforafrica/Projects.ts new file mode 100644 index 000000000..086d00165 --- /dev/null +++ b/apps/centralcms/src/payload/collections/codeforafrica/Projects.ts @@ -0,0 +1,162 @@ +import image from "@/payload/fields/image"; +import link from "@/payload/fields/links/link"; +import linkArray from "@/payload/fields/links/linkArray"; +import linkGroup from "@/payload/fields/links/linkGroup"; +import richText from "@/payload/fields/RichText"; +import slug from "@/payload/fields/slug"; +import tags from "@/payload/fields/tags"; +import nestCollectionUnderPage from "@/payload/utilities/nestCollectionUnderPage"; +import type { CollectionConfig } from "payload"; +import { canRead } from "@/payload/access/codeforafrica"; + +const Projects: CollectionConfig = { + slug: "projects", + access: { + read: canRead, + create: () => true, + update: () => true, + }, + admin: { + defaultColumns: ["name", "tagLine", "updatedAt"], + enableRichTextLink: false, + group: "Organisation", + useAsTitle: "name", + }, + fields: [ + { + name: "name", + type: "text", + required: true, + localized: true, + }, + image({ + overrides: { + name: "icon", + required: true, + localized: true, + }, + }), + richText({ + name: "title", + required: true, + localized: true, + }), + richText({ + name: "subtitle", + required: true, + localized: true, + }), + { + name: "tagLine", + type: "text", + required: true, + localized: true, + }, + tags({ + name: "tag", + hasMany: false, + admin: { + position: "sidebar", + }, + }), + linkGroup({ + overrides: { + name: "externalLink", + label: "Project Link", + localized: true, + }, + }), + image({ + overrides: { + name: "thumbnail", + required: true, + localized: true, + }, + }), + { + name: "badges", + type: "array", + localized: true, + fields: [ + { + name: "name", + type: "text", + required: true, + }, + { + name: "date", + type: "date", + required: true, + admin: { + date: { + pickerAppearance: "dayOnly", + displayFormat: "yyyy-MM-dd", + }, + }, + }, + ], + }, + richText({ + name: "description", + required: true, + localized: true, + }), + linkArray({ + overrides: { + fields: [ + { + name: "type", + type: "select", + options: [ + { + value: "source", + label: { en: "Source code" }, + }, + { + value: "data", + label: { en: "Data" }, + }, + ], + required: true, + }, + link({ + defaultValue: "custom", + disableLinkTypeSelection: true, + disableOpenInNewTab: true, + }), + ], + localized: true, + }, + }), + { + name: "partners", + type: "relationship", + relationTo: "partners", + hasMany: true, + required: true, + localized: true, + }, + { + name: "donors", + type: "relationship", + relationTo: "donors", + hasMany: true, + required: true, + localized: true, + }, + { + name: "team", + type: "relationship", + relationTo: "members", + hasMany: true, + required: true, + localized: true, + }, + slug({ fieldToUse: "name" }), + ], + hooks: { + afterRead: [nestCollectionUnderPage("projects")], + }, +}; + +export default Projects; diff --git a/apps/centralcms/src/payload/collections/codeforafrica/Publication/PostTab.ts b/apps/centralcms/src/payload/collections/codeforafrica/Publication/PostTab.ts new file mode 100644 index 000000000..911c67f74 --- /dev/null +++ b/apps/centralcms/src/payload/collections/codeforafrica/Publication/PostTab.ts @@ -0,0 +1,77 @@ +import { Tab } from "payload"; + +const PostTab: Tab = { + label: "Post", + fields: [ + { + type: "collapsible", + label: "Story", + fields: [ + { + name: "stories", + label: "Recent stories", + type: "group", + localized: true, + fields: [ + { + name: "showRecent", + label: "Show recent stories", + type: "checkbox", + required: true, + defaultValue: false, + }, + { + name: "title", + label: "Title", + type: "text", + required: true, + defaultValue: "Recent Stories", + admin: { + condition: (_, data) => data.showRecent, + }, + }, + ], + admin: { + className: "group-field-nested", + }, + }, + ], + }, + { + type: "collapsible", + label: "Opportunity", + fields: [ + { + name: "opportunities", + label: "Recent opportunities", + type: "group", + localized: true, + fields: [ + { + name: "showRecent", + label: "Show recent opportunities", + type: "checkbox", + required: true, + defaultValue: false, + }, + { + name: "title", + label: "Title", + type: "text", + required: true, + defaultValue: "Recent Opportunities", + admin: { + condition: (_, data) => data.showRecent, + }, + }, + ], + admin: { + className: "group-field-nested", + }, + }, + ], + }, + ], +}; + +export default PostTab; diff --git a/apps/centralcms/src/payload/collections/codeforafrica/Publication/index.ts b/apps/centralcms/src/payload/collections/codeforafrica/Publication/index.ts new file mode 100644 index 000000000..3f08a2dab --- /dev/null +++ b/apps/centralcms/src/payload/collections/codeforafrica/Publication/index.ts @@ -0,0 +1,20 @@ +import PostTab from "./PostTab"; + +const Publication = { + slug: "settings-publication", + label: "Publication", + access: { + read: () => true, + }, + admin: { + group: "Settings", + }, + fields: [ + { + type: "tabs", + tabs: [PostTab], + }, + ], +}; + +export default Publication; diff --git a/apps/centralcms/src/payload/collections/codeforafrica/Tags.ts b/apps/centralcms/src/payload/collections/codeforafrica/Tags.ts new file mode 100644 index 000000000..9722aa956 --- /dev/null +++ b/apps/centralcms/src/payload/collections/codeforafrica/Tags.ts @@ -0,0 +1,30 @@ +import slug from "@/payload/fields/slug"; +import type { CollectionConfig } from "payload"; +import { canRead } from "@/payload/access/codeforafrica"; + +const Tags: CollectionConfig = { + slug: "tag", + access: { + read: canRead, + create: () => true, + update: () => true, + }, + admin: { + defaultColumns: ["name", "updatedAt"], + enableRichTextLink: false, + group: "Publications", + useAsTitle: "name", + }, + fields: [ + { + name: "name", + type: "text", + unique: true, + required: true, + localized: true, + }, + slug({ fieldToUse: "name" }), + ], +}; + +export default Tags; diff --git a/apps/centralcms/src/payload/collections/codeforafrica/Teams.ts b/apps/centralcms/src/payload/collections/codeforafrica/Teams.ts new file mode 100644 index 000000000..46116b0d4 --- /dev/null +++ b/apps/centralcms/src/payload/collections/codeforafrica/Teams.ts @@ -0,0 +1,30 @@ +import slug from "@/payload/fields/slug"; +import type { CollectionConfig } from "payload"; +import { canRead } from "@/payload/access/codeforafrica"; + +const Teams: CollectionConfig = { + slug: "teams", + access: { + read: canRead, + create: () => true, + update: () => true, + }, + admin: { + defaultColumns: ["name", "updatedAt"], + enableRichTextLink: false, + group: "Organisation", + useAsTitle: "name", + }, + fields: [ + { + name: "name", + type: "text", + unique: true, + localized: true, + required: true, + }, + slug({ fieldToUse: "name" }), + ], +}; + +export default Teams; diff --git a/apps/centralcms/src/payload/collections/roboshield/Pages/index.ts b/apps/centralcms/src/payload/collections/roboshield/Pages/index.ts new file mode 100644 index 000000000..71831e03a --- /dev/null +++ b/apps/centralcms/src/payload/collections/roboshield/Pages/index.ts @@ -0,0 +1,120 @@ +import type { CollectionConfig } from "payload"; + +import { tenant } from "@/payload/fields/tenant"; +import { loggedIn } from "@/payload/access/loggedIn"; +import { tenantAdmins } from "@/payload/access/tenantAdmins"; +import { tenants } from "@/payload/access/tenants"; +import formatSlug from "@/payload/hooks/formatSlug"; +import { + MetaDescriptionField, + MetaImageField, + MetaTitleField, + OverviewField, + PreviewField, +} from "@payloadcms/plugin-seo/fields"; + +import { PageHeader } from "@/payload/blocks/roboshield/PageHeader"; +import { SiteHero } from "@/payload/blocks/roboshield/SiteHero"; +import { lexicalEditor } from "@payloadcms/richtext-lexical"; +import { Statistics } from "@/payload/blocks/roboshield/Statistics"; +import { Content } from "@/payload/blocks/roboshield/Content"; +import RobotsTxtGenerator from "@/payload/blocks/roboshield/RobotsTxtGenerator"; +import { canRead } from "@/payload/access/roboshield"; + +export const Pages: CollectionConfig = { + slug: "RoboshieldPages", + labels: { + singular: "Page", + plural: "Pages", + }, + admin: { + useAsTitle: "title", + defaultColumns: ["title", "slug", "updatedAt"], + group: "Publications", + description: "RoboShield", + }, + access: { + read: canRead, + create: loggedIn, + update: tenantAdmins, + delete: tenantAdmins, + }, + fields: [ + { + name: "title", + type: "text", + required: true, + }, + { + name: "slug", + label: "Slug", + type: "text", + index: true, + admin: { + position: "sidebar", + }, + hooks: { + beforeValidate: [formatSlug("title")], + }, + }, + tenant, + { + type: "tabs", + tabs: [ + { + fields: [ + { + name: "content", + type: "richText", + // Pass the Lexical editor here and override base settings as necessary + editor: lexicalEditor({}), + }, + { + name: "blocks", + type: "blocks", + blocks: [ + PageHeader, + SiteHero, + Content, + Statistics, + RobotsTxtGenerator, + ], + localized: true, + admin: { + initCollapsed: true, + }, + }, + ], + label: "Content", + }, + { + name: "meta", + label: "SEO", + fields: [ + OverviewField({ + titlePath: "meta.title", + descriptionPath: "meta.description", + imagePath: "meta.image", + }), + MetaTitleField({ + hasGenerateFn: true, + }), + MetaImageField({ + relationTo: "media", + }), + + MetaDescriptionField({}), + PreviewField({ + // if the `generateUrl` function is configured + hasGenerateFn: true, + + // field paths to match the target field for data + titlePath: "meta.title", + descriptionPath: "meta.description", + }), + ], + }, + ], + }, + ], +}; diff --git a/apps/centralcms/src/payload/components/RowLabel.tsx b/apps/centralcms/src/payload/components/RowLabel.tsx new file mode 100644 index 000000000..85620ff3e --- /dev/null +++ b/apps/centralcms/src/payload/components/RowLabel.tsx @@ -0,0 +1,34 @@ +"use client"; +import React from "react"; +import { useRowLabel } from "@payloadcms/ui"; + +interface RowData extends Record { + title?: string; +} + +interface Data { + title?: string; + message?: string; + partner?: string; + [key: string]: unknown; +} + +const getLabelData = (path: string, data: Data): { label; data } => { + if (path.includes("Headers")) return { label: "Header", data: data?.title }; + if (path.includes("message")) + return { label: "Message", data: data?.message }; + if (path.includes("partners")) + return { label: "Partner", data: data?.partner }; + return { label: "Item", data: null }; +}; + +export const RowLabel = () => { + const { data, rowNumber, path } = useRowLabel(); + const { label, data: message } = getLabelData(path, data); + + return ( + + ); +}; + +export default RowLabel; diff --git a/apps/centralcms/src/payload/fields/RichText.ts b/apps/centralcms/src/payload/fields/RichText.ts new file mode 100644 index 000000000..9d77ef874 --- /dev/null +++ b/apps/centralcms/src/payload/fields/RichText.ts @@ -0,0 +1,48 @@ +import { + FixedToolbarFeature, + HeadingFeature, + HorizontalRuleFeature, + InlineToolbarFeature, + lexicalEditor, +} from "@payloadcms/richtext-lexical"; +import { LexicalRichTextAdapterProvider } from "node_modules/@payloadcms/richtext-lexical/dist/types"; + +interface RichTextInput { + name: string; + required?: boolean; + label?: string; + defaultValue?: any; + localized?: boolean; +} + +interface RichTextOutput { + name: string; + type: "richText"; + required: boolean; + label: string; + editor: LexicalRichTextAdapterProvider; +} + +function capitalizeFirstLetter(text: String) { + return text[0].toUpperCase() + text.slice(1); +} + +export default function richText(input: RichTextInput): RichTextOutput { + return { + name: input.name, + type: "richText", + required: input.required ?? false, + label: capitalizeFirstLetter(input.name) ?? "Content", + editor: lexicalEditor({ + features: ({ rootFeatures }) => { + return [ + ...rootFeatures, + HeadingFeature({ enabledHeadingSizes: ["h1", "h2", "h3", "h4"] }), + FixedToolbarFeature(), + InlineToolbarFeature(), + HorizontalRuleFeature(), + ]; + }, + }), + }; +} diff --git a/apps/centralcms/src/payload/fields/authors.ts b/apps/centralcms/src/payload/fields/authors.ts new file mode 100644 index 000000000..358ef544d --- /dev/null +++ b/apps/centralcms/src/payload/fields/authors.ts @@ -0,0 +1,19 @@ +import { deepmerge } from "@mui/utils"; +import { Field } from "payload"; + +const authors = (overrides): Field => + deepmerge( + { + name: "authors", + type: "relationship", + relationTo: "author", + hasMany: true, + admin: { + isSortable: true, + position: "sidebar", + }, + }, + overrides, + ); + +export default authors; diff --git a/apps/centralcms/src/payload/fields/blockFields.ts b/apps/centralcms/src/payload/fields/blockFields.ts new file mode 100644 index 000000000..94c5b9f84 --- /dev/null +++ b/apps/centralcms/src/payload/fields/blockFields.ts @@ -0,0 +1,28 @@ +import { deepmerge } from "@mui/utils"; +import { Field } from "payload"; + +interface BlockFieldsProps { + name: string; + fields: Field[]; + overrides?: Record; +} + +const blockFields = ({ name, fields, overrides }: BlockFieldsProps) => + deepmerge( + { + name, + label: false, + type: "group", + admin: { + hideGutter: true, + style: { + margin: 0, + padding: 0, + }, + }, + fields, + }, + overrides, + ) as Field; + +export default blockFields; diff --git a/apps/centralcms/src/payload/fields/content.ts b/apps/centralcms/src/payload/fields/content.ts new file mode 100644 index 000000000..8ccf2f663 --- /dev/null +++ b/apps/centralcms/src/payload/fields/content.ts @@ -0,0 +1,18 @@ +import { deepmerge } from "@mui/utils"; + +import ExternalEmbed from "@/payload/blocks/codeforafrica/ExternalEmbed"; +import MediaBlock from "@/payload/blocks/codeforafrica/MediaBlock"; +import RichText from "@/payload/blocks/codeforafrica/RichText"; +import { Field } from "payload"; + +const content = (overrides): Field => + deepmerge( + { + name: "content", + type: "blocks", + blocks: [RichText, MediaBlock, ExternalEmbed], + }, + overrides, + ) as Field; + +export default content; diff --git a/apps/centralcms/src/payload/fields/fullTitle/index.ts b/apps/centralcms/src/payload/fields/fullTitle/index.ts new file mode 100644 index 000000000..23ec78a3c --- /dev/null +++ b/apps/centralcms/src/payload/fields/fullTitle/index.ts @@ -0,0 +1,27 @@ +import { deepmerge } from "@mui/utils"; + +import populateFullTitle from "./populateFullTitle"; +import { Field } from "payload"; + +type Overrides = { + overrides?: Partial; +}; + +function fullTitle({ overrides = {} }: Overrides = {}): Field { + const fullTitleResult = { + name: "fullTitle", + type: "text", + hooks: { + beforeChange: [populateFullTitle], + }, + admin: { + components: { + Field: () => null, + }, + }, + }; + + return deepmerge(fullTitleResult, overrides) as Field; +} + +export default fullTitle; diff --git a/apps/centralcms/src/payload/fields/fullTitle/populateFullTitle.ts b/apps/centralcms/src/payload/fields/fullTitle/populateFullTitle.ts new file mode 100644 index 000000000..703529fe8 --- /dev/null +++ b/apps/centralcms/src/payload/fields/fullTitle/populateFullTitle.ts @@ -0,0 +1,17 @@ +export function generateFullTitle(breadcrumbs) { + if (Array.isArray(breadcrumbs)) { + return breadcrumbs.reduce((title, breadcrumb, i) => { + if (i === 0) { + return `${breadcrumb.label}`; + } + return `${title} > ${breadcrumb.label}`; + }, ""); + } + return undefined; +} + +async function populateFullTitle({ data, originalDoc }) { + return generateFullTitle(data?.breadcrumbs || originalDoc?.breadcrumbs); +} + +export default populateFullTitle; diff --git a/apps/centralcms/src/payload/fields/image.ts b/apps/centralcms/src/payload/fields/image.ts new file mode 100644 index 000000000..ea957e3f3 --- /dev/null +++ b/apps/centralcms/src/payload/fields/image.ts @@ -0,0 +1,20 @@ +import { deepmerge } from "@mui/utils"; +import { Field } from "payload"; + +interface Args { + overrides?: Partial; +} +function image({ overrides = undefined }: Args = {}) { + const imageResult: Field = { + name: "image", + type: "upload", + relationTo: "media", + filterOptions: { + mimeType: { contains: "image" }, + }, + }; + + return deepmerge(imageResult, overrides); +} + +export default image; diff --git a/apps/centralcms/src/payload/fields/impacts.ts b/apps/centralcms/src/payload/fields/impacts.ts new file mode 100644 index 000000000..de9d37c53 --- /dev/null +++ b/apps/centralcms/src/payload/fields/impacts.ts @@ -0,0 +1,15 @@ +import { deepmerge } from "@mui/utils"; +import { Field } from "payload"; + +const impacts = (overrides): Field => + deepmerge( + { + name: "impacts", + type: "relationship", + relationTo: "impact", + hasMany: true, + }, + overrides, + ); + +export default impacts; diff --git a/apps/centralcms/src/payload/fields/links/link.ts b/apps/centralcms/src/payload/fields/links/link.ts new file mode 100644 index 000000000..bd914ac98 --- /dev/null +++ b/apps/centralcms/src/payload/fields/links/link.ts @@ -0,0 +1,121 @@ +import { deepmerge } from "@mui/utils"; + +import { Field } from "payload"; + +type LinkType = (options?: { + disableLabel?: boolean; + defaultValue?: string; + disableLinkTypeSelection?: boolean; + disableOpenInNewTab?: boolean; + overrides?: Record; +}) => Field; + +const link: LinkType = ({ + disableLabel = false, + defaultValue = "internal", + disableLinkTypeSelection = false, + disableOpenInNewTab = false, + overrides = {}, +} = {}) => { + const linkResult: Field = { + name: "link", + type: "group", + label: false, + admin: { + hideGutter: true, + }, + fields: [ + { + type: "row", + fields: [ + ...(!disableLabel + ? [ + { + name: "label", + type: "text", + label: "Label", + required: true, + } as Field, + ] + : []), + { + name: "type", + type: "radio", + admin: { + layout: "horizontal", + hidden: disableLinkTypeSelection, + }, + defaultValue, + options: [ + { + label: "Internal link", + value: "internal", + }, + { + label: "Custom URL", + value: "custom", + }, + ], + }, + { + name: "internal", + type: "relationship", + admin: { + condition: (_, siblingData) => siblingData?.type === "internal", + }, + label: "Document to link to", + maxDepth: 1, + relationTo: ["RoboshieldPages", "CodeForAfricaPages"], + required: true, + }, + { + name: "url", + type: "text", + admin: { + condition: (_, siblingData) => siblingData?.type === "custom", + }, + label: "Custom URL", + required: true, + }, + ], + }, + ], + }; + + let labelFields: any = []; + + if (!disableLabel) { + labelFields.push({ + type: "row", + fields: [ + { + name: "label", + type: "text", + label: "Label", + required: true, + }, + ], + }); + } + + if (!disableOpenInNewTab) { + linkResult.fields.push({ + type: "row", + fields: [ + { + name: "newTab", + label: { + en: "Open in new tab", + fr: "Ouvrir dans un nouvel onglet", + pt: "Abrir num novo separador", + }, + type: "checkbox", + }, + ], + }); + } + + return deepmerge(linkResult, overrides); +}; + +export default link; diff --git a/apps/centralcms/src/payload/fields/links/linkArray.ts b/apps/centralcms/src/payload/fields/links/linkArray.ts new file mode 100644 index 000000000..becea1ec9 --- /dev/null +++ b/apps/centralcms/src/payload/fields/links/linkArray.ts @@ -0,0 +1,36 @@ +import { deepmerge } from "@mui/utils"; + +import link from "./link"; +import { Field } from "payload"; + +type LinkConfig = { + defaultValue: string; + disableLabel: boolean; + disableLinkTypeSelection: boolean; + disableOpenInNewTab: boolean; + overrides: Partial; + required: boolean; +}; + +interface Args { + linkConfig?: LinkConfig; + overrides: Partial; +} +/** + * array field consisting of link fields . + */ +function linkArray(args: Args) { + const { linkConfig, overrides = {} } = args ?? {}; + const generatedLinkArray: Field = { + name: "links", + type: "array", + fields: [link(linkConfig)], + admin: { + initCollapsed: true, + }, + }; + + return deepmerge(generatedLinkArray, overrides); +} + +export default linkArray; diff --git a/apps/centralcms/src/payload/fields/links/linkGroup.ts b/apps/centralcms/src/payload/fields/links/linkGroup.ts new file mode 100644 index 000000000..959f6a3a8 --- /dev/null +++ b/apps/centralcms/src/payload/fields/links/linkGroup.ts @@ -0,0 +1,34 @@ +import { deepmerge } from "@mui/utils"; + +import link from "./link"; +import { Field } from "payload"; + +type LinkConfig = { + defaultValue: string; + disableLabel: boolean; + disableLinkTypeSelection: boolean; + disableOpenInNewTab: boolean; + overrides: Partial; + required: boolean; +}; + +interface Args { + linkConfig?: LinkConfig; + overrides: Partial; +} +/** + * group field consisting of a link field. + */ +function linkGroup(args: Args): Field { + const { linkConfig, overrides = {} } = args ?? {}; + const generatedLinkGroup = { + name: "link", + type: "group", + required: true, + fields: [link(linkConfig)], + }; + + return deepmerge(generatedLinkGroup, overrides) as Field; +} + +export default linkGroup; diff --git a/apps/centralcms/src/payload/fields/publishedOn.ts b/apps/centralcms/src/payload/fields/publishedOn.ts new file mode 100644 index 000000000..724ab9ca9 --- /dev/null +++ b/apps/centralcms/src/payload/fields/publishedOn.ts @@ -0,0 +1,23 @@ +import { deepmerge } from "@mui/utils"; +import { Field } from "payload"; + +const publishedOn = (overrides): Field => + deepmerge( + { + name: "publishedOn", + type: "date", + required: true, + hooks: { + beforeValidate: [({ value }) => (value ? new Date(value) : new Date())], + }, + admin: { + date: { + pickerAppearance: "dayAndTime", + }, + position: "sidebar", + }, + }, + overrides, + ); + +export default publishedOn; diff --git a/apps/centralcms/src/payload/fields/slug/formatSlug.ts b/apps/centralcms/src/payload/fields/slug/formatSlug.ts new file mode 100644 index 000000000..1bad1ee6d --- /dev/null +++ b/apps/centralcms/src/payload/fields/slug/formatSlug.ts @@ -0,0 +1,40 @@ +import { FieldHook, FieldHookArgs } from "payload"; + +interface FieldArgs extends Partial> { + fallback: string[]; +} +const format = (val: string) => + val + .replace(/ /g, "-") + .replace(/[^\w-]+/g, "") + .toLowerCase(); + +const getFallbackData = ({ fallback, originalDoc, data }: FieldArgs) => { + const fallbackValues = fallback.map( + (value: string) => + (data && data[value]) || (originalDoc && originalDoc[value]), + ); + return fallbackValues.join("-"); +}; + +const formatSlug = + (fallback: string): FieldHook => + ({ value, originalDoc, data }) => { + if (value && typeof value === "string") { + return format(value); + } + + const validFallback = typeof fallback === "string" ? [fallback] : fallback; + const fallbackData = getFallbackData({ + fallback: validFallback, + originalDoc, + data, + }); + + if (fallbackData && typeof fallbackData === "string") { + return format(fallbackData); + } + return value; + }; + +export default formatSlug; diff --git a/apps/centralcms/src/payload/fields/slug/index.ts b/apps/centralcms/src/payload/fields/slug/index.ts new file mode 100644 index 000000000..37a56084d --- /dev/null +++ b/apps/centralcms/src/payload/fields/slug/index.ts @@ -0,0 +1,23 @@ +import { deepmerge } from "@mui/utils"; + +import formatSlug from "./formatSlug"; +import { Field } from "payload"; + +function slug({ fieldToUse = "title", overrides = undefined } = {}): Field { + const slugResult: Field = { + name: "slug", + type: "text", + index: true, + unique: true, + admin: { + position: "sidebar", + }, + hooks: { + beforeValidate: [formatSlug(fieldToUse)], + }, + }; + + return deepmerge(slugResult, overrides); +} + +export default slug; diff --git a/apps/centralcms/src/payload/fields/socialLinks.ts b/apps/centralcms/src/payload/fields/socialLinks.ts new file mode 100644 index 000000000..bcf7c2633 --- /dev/null +++ b/apps/centralcms/src/payload/fields/socialLinks.ts @@ -0,0 +1,73 @@ +import { deepmerge } from "@mui/utils"; +import { select } from "node_modules/payload/dist/fields/validations"; + +import url from "./url"; +import { Field } from "payload"; + +export const socialMediaOptions = [ + "Facebook", + "Twitter", + "Instagram", + "Linkedin", + "Github", + "Slack", +]; + +type Overrides = { + name: string; +} & Partial; + +function socialLinks(overrides: Overrides = { name: "links" }) { + const defaults: Field = { + name: "links", + type: "array", + labels: { + singular: { + en: "Link", + }, + plural: { + en: "Links", + }, + }, + minRows: 1, + admin: { + className: "array-field-nested", + initCollapsed: true, + }, + fields: [ + { + name: "platform", + type: "select", + label: "Platform", + options: socialMediaOptions, + required: true, + validate: (val, args) => { + const { data, t } = args || {}; + const { name: linksName = "links" } = overrides as Overrides; + if ( + data?.[linksName]?.filter((l: any) => l.platform === val)?.length > + 1 + ) { + return t("codeforafrica.validation:uniquePlatforms"); + } + + const { + hasMany, + options = socialMediaOptions, + required = true, + } = args; + // @ts-ignore + return select(val, { hasMany, options, required, t }); + }, + }, + url({ + overrides: { + required: true, + }, + }), + ], + }; + return deepmerge(defaults, overrides); +} + +export default socialLinks; diff --git a/apps/centralcms/src/payload/fields/tags.ts b/apps/centralcms/src/payload/fields/tags.ts new file mode 100644 index 000000000..6d22eeacd --- /dev/null +++ b/apps/centralcms/src/payload/fields/tags.ts @@ -0,0 +1,15 @@ +import { deepmerge } from "@mui/utils"; +import { Field } from "payload"; + +const tags = (overrides): Field => { + const field = { + name: "tags", + type: "relationship", + relationTo: "tag", + hasMany: true, + required: true, + }; + return deepmerge(field, overrides) as Field; +}; + +export default tags; diff --git a/apps/centralcms/src/payload/fields/tenant/access/tenantAdmins.ts b/apps/centralcms/src/payload/fields/tenant/access/tenantAdmins.ts new file mode 100644 index 000000000..17136b6c2 --- /dev/null +++ b/apps/centralcms/src/payload/fields/tenant/access/tenantAdmins.ts @@ -0,0 +1,24 @@ +import type { FieldAccess } from "payload"; + +import { checkUserRoles } from "@/payload/utilities/checkUserRoles"; +import { isTenant } from "@/payload/utilities/typeGuards"; + +export const tenantAdminFieldAccess: FieldAccess = ({ + req: { user }, + doc, +}: any) => { + if (checkUserRoles(["super-admin"], user)) { + return true; + } + + const docTenantId = isTenant(doc?.tenant) ? doc.tenant.id : doc?.tenant; + + return ( + !doc?.tenant || + user?.tenants?.some( + ({ tenant: userTenant, roles }) => + (typeof userTenant === "string" ? userTenant : userTenant.id) === + docTenantId && roles?.includes("admin"), + ) + ); +}; diff --git a/apps/centralcms/src/payload/fields/tenant/index.ts b/apps/centralcms/src/payload/fields/tenant/index.ts new file mode 100644 index 000000000..39b000fb3 --- /dev/null +++ b/apps/centralcms/src/payload/fields/tenant/index.ts @@ -0,0 +1,45 @@ +import type { Field } from "payload"; + +import { superAdminFieldAccess } from "@/payload/access/superAdmins"; +import { isSuperAdmin } from "@/payload/utilities/isSuperAdmin"; +import { tenantAdminFieldAccess } from "./access/tenantAdmins"; +import { isTenant } from "@/payload/utilities/typeGuards"; + +export const tenant: Field = { + name: "tenant", + type: "relationship", + relationTo: "tenants", + // don't require this field because we need to auto-populate it, see below + // required: true, + // we also don't want to hide this field because super-admins may need to manage it + // to achieve this, create a custom component that conditionally renders the field based on the user's role + // hidden: true, + index: true, + admin: { + position: "sidebar", + }, + access: { + create: superAdminFieldAccess, + read: tenantAdminFieldAccess, + update: superAdminFieldAccess, + }, + hooks: { + // automatically set the tenant to the last logged in tenant + // for super admins, allow them to set the tenant + beforeChange: [ + async ({ req, req: { user }, data }) => { + if ((await isSuperAdmin(req.user)) && data?.tenant) { + return data.tenant; + } + + if (isTenant(user?.lastLoggedInTenant)) { + if (user?.lastLoggedInTenant?.id) { + return user.lastLoggedInTenant.id; + } + } + + return undefined; + }, + ], + }, +}; diff --git a/apps/centralcms/src/payload/fields/url.ts b/apps/centralcms/src/payload/fields/url.ts new file mode 100644 index 000000000..7a9f1de2f --- /dev/null +++ b/apps/centralcms/src/payload/fields/url.ts @@ -0,0 +1,29 @@ +import { deepmerge } from "@mui/utils"; +import { text } from "node_modules/payload/dist/fields/validations"; +import { Field } from "payload"; + +interface Args { + overrides?: Partial; +} +function url({ overrides = undefined }: Args = {}): Field { + const urlResult: Field = { + name: "url", + type: "text", + label: "URL", + validate: (val, options) => { + try { + // eslint-disable-next-line no-new + new URL(val); + } catch (e) { + if (e instanceof TypeError) { + return "Please enter valid URL"; + } + } + return text(val, options); + }, + }; + + return deepmerge(urlResult, overrides); +} + +export default url; diff --git a/apps/centralcms/src/payload/globals/CodeforAfricaGlobals.ts b/apps/centralcms/src/payload/globals/CodeforAfricaGlobals.ts new file mode 100644 index 000000000..1aa2133ea --- /dev/null +++ b/apps/centralcms/src/payload/globals/CodeforAfricaGlobals.ts @@ -0,0 +1,25 @@ +import EngagementTab from "./Shared/EngagementTab"; +import GeneralTab from "./Shared/GeneralTab"; +import NavigationTab from "./Shared/NavigationTab"; +import InitiativeTab from "./Shared/InitiativeTab"; +import { GlobalConfig } from "payload"; +import { canRead } from "@/payload/access/codeforafrica"; + +const Site: GlobalConfig = { + slug: "codeforafrica-site-settings", + label: "Site", + access: { + read: canRead, + }, + admin: { + group: "Settings", + }, + fields: [ + { + type: "tabs", + tabs: [GeneralTab, NavigationTab, EngagementTab], + }, + ], +}; + +export default Site; diff --git a/apps/centralcms/src/payload/globals/RoboShieldGlobals.ts b/apps/centralcms/src/payload/globals/RoboShieldGlobals.ts new file mode 100644 index 000000000..4da83d82e --- /dev/null +++ b/apps/centralcms/src/payload/globals/RoboShieldGlobals.ts @@ -0,0 +1,25 @@ +import EngagementTab from "./Shared/EngagementTab"; +import GeneralTab from "./Shared/GeneralTab"; +import NavigationTab from "./Shared/NavigationTab"; +import InitiativeTab from "./Shared/InitiativeTab"; +import { GlobalConfig } from "payload"; +import { canRead } from "@/payload/access/roboshield"; + +const Site: GlobalConfig = { + slug: "roboshield-site-settings", + label: "Site", + access: { + read: canRead, + }, + admin: { + group: "Settings", + }, + fields: [ + { + type: "tabs", + tabs: [GeneralTab, NavigationTab, EngagementTab, InitiativeTab], + }, + ], +}; + +export default Site; diff --git a/apps/centralcms/src/payload/globals/Shared/EngagementTab.ts b/apps/centralcms/src/payload/globals/Shared/EngagementTab.ts new file mode 100644 index 000000000..a3373aeb2 --- /dev/null +++ b/apps/centralcms/src/payload/globals/Shared/EngagementTab.ts @@ -0,0 +1,61 @@ +import { Tab } from "payload"; +import socialLinks from "@/custom-fields/socialLinks"; + +const EngagementTab: Tab = { + label: "Engagement", + fields: [ + { + name: "connect", + type: "group", + label: "Social Accounts", + localized: true, + fields: [ + { + type: "collapsible", + label: "Title & Links", + fields: [ + { + name: "title", + type: "text", + admin: { + description: + "Text that appears on contact links e.g Stay in Touch", + }, + required: true, + }, + socialLinks(), + ], + }, + ], + }, + { + name: "newsletter", + type: "group", + label: "Email Newsletter", + localized: true, + fields: [ + { + type: "collapsible", + label: "Title & Embed Code", + fields: [ + { + name: "title", + type: "text", + required: true, + }, + { + name: "embedCode", + type: "code", + required: true, + admin: { + language: "html", + }, + }, + ], + }, + ], + }, + ], +}; + +export default EngagementTab; diff --git a/apps/centralcms/src/payload/globals/Shared/GeneralTab.ts b/apps/centralcms/src/payload/globals/Shared/GeneralTab.ts new file mode 100644 index 000000000..bccfb8250 --- /dev/null +++ b/apps/centralcms/src/payload/globals/Shared/GeneralTab.ts @@ -0,0 +1,54 @@ +import { Tab } from "payload"; +import image from "@/custom-fields/image"; +import richText from "@/custom-fields/RichText"; + +const GeneralTab: Tab = { + label: "General", + fields: [ + { + type: "collapsible", + label: "Title & Description", + fields: [ + { + name: "title", + type: "text", + required: true, + localized: true, + }, + richText({ + name: "description", + required: true, + localized: true, + }), + ], + }, + { + type: "collapsible", + label: "Logo", + fields: [ + image({ + overrides: { + name: "primaryLogo", + required: true, + localized: true, + admin: { + description: "Shown on main navigation bar.", + }, + }, + }), + image({ + overrides: { + name: "secondaryLogo", + localized: true, + admin: { + description: + "Shown on main footer. If not provided, primary logo will be reused.", + }, + }, + }), + ], + }, + ], +}; + +export default GeneralTab; diff --git a/apps/centralcms/src/payload/globals/Shared/InitiativeTab.ts b/apps/centralcms/src/payload/globals/Shared/InitiativeTab.ts new file mode 100644 index 000000000..a9325c1ad --- /dev/null +++ b/apps/centralcms/src/payload/globals/Shared/InitiativeTab.ts @@ -0,0 +1,56 @@ +import { CustomComponent, Tab } from "payload"; +import image from "@/custom-fields/image"; +import link from "@/custom-fields/links/link"; +import richText from "@/custom-fields/RichText"; + +const PartnersTab: Tab = { + label: "Initiative", + fields: [ + { + name: "initiative", + type: "group", + fields: [ + { + name: "title", + type: "text", + required: true, + }, + richText({ + name: "description", + required: true, + }), + { + name: "partners", + label: "Partners", + type: "array", + fields: [ + { + name: "name", + type: "text", + required: true, + }, + image({ + overrides: { + label: "Logo", + name: "logo", + required: true, + }, + }), + link({ + defaultValue: "custom", + disableLinkTypeSelection: true, + disableOpenInNewTab: true, + }), + ], + admin: { + components: { + RowLabel: "@/payload/components/RowLabel.tsx", + }, + }, + }, + ], + }, + ], +}; + +export default PartnersTab; diff --git a/apps/centralcms/src/payload/globals/Shared/NavigationTab.ts b/apps/centralcms/src/payload/globals/Shared/NavigationTab.ts new file mode 100644 index 000000000..ae6aa4aeb --- /dev/null +++ b/apps/centralcms/src/payload/globals/Shared/NavigationTab.ts @@ -0,0 +1,81 @@ +import { Tab } from "payload"; +import link from "@/custom-fields/links/link"; +import linkArray from "@/custom-fields/links/linkArray"; +import { socialMediaOptions } from "@/custom-fields/socialLinks"; + +const linkField = link({ + disableOpenInNewTab: false, +}); + +const NavigationTab: Tab = { + label: "Navigation", + fields: [ + { + name: "primaryNavigation", + type: "group", + localized: true, + fields: [ + { + type: "collapsible", + label: "Title & Links", + fields: [ + linkArray({ + overrides: { + name: "menus", + labels: { + singular: { + en: "Menu", + }, + plural: { + en: "Menus", + }, + }, + fields: [linkField], + admin: { + className: "array-field-nested", + }, + }, + }), + { + name: "connect", + type: "select", + options: socialMediaOptions, + }, + ], + }, + ], + }, + { + name: "secondaryNavigation", + type: "group", + localized: true, + fields: [ + { + type: "collapsible", + label: "Title & Links", + fields: [ + linkArray({ + overrides: { + name: "menus", + labels: { + singular: { + en: "Menu", + }, + plural: { + en: "Menus", + }, + }, + fields: [linkField], + admin: { + className: "array-field-nested", + }, + }, + }), + ], + }, + ], + }, + ], +}; + +export default NavigationTab; diff --git a/apps/centralcms/src/payload/hooks/formatSlug.ts b/apps/centralcms/src/payload/hooks/formatSlug.ts new file mode 100644 index 000000000..6c4b0402b --- /dev/null +++ b/apps/centralcms/src/payload/hooks/formatSlug.ts @@ -0,0 +1,27 @@ +import type { FieldHook } from "payload"; + +const format = (val: string): string => + val + .replace(/ /g, "-") + .replace(/[^\w-]+/g, "") + .toLowerCase(); + +const formatSlug = + (fallback: string): FieldHook => + ({ operation, value, originalDoc, data }) => { + if (typeof value === "string") { + return format(value); + } + + if (operation === "create") { + const fallbackData = data?.[fallback] || originalDoc?.[fallback]; + + if (fallbackData && typeof fallbackData === "string") { + return format(fallbackData); + } + } + + return value; + }; + +export default formatSlug; diff --git a/apps/centralcms/src/payload/lib/data/json/countries.ts b/apps/centralcms/src/payload/lib/data/json/countries.ts new file mode 100644 index 000000000..5a7a71b39 --- /dev/null +++ b/apps/centralcms/src/payload/lib/data/json/countries.ts @@ -0,0 +1,4229 @@ +import { Option } from "payload"; + +export const countries = [ + { + region: "Asia", + continent: "Asia", + value: "Afghanistan", + label: { pt: "Afeganistão", en: "Afghanistan", fr: "Afghanistan" }, + slug: "AFG", + name: "Afghanistan", + alpha3: "AFG", + alpha2: "AF", + countryCode: "004", + iso: "ISO 3166-2:AF", + subRegion: "Southern Asia", + intermediateRegion: "", + regionCode: "142", + subRegionCode: "034", + intermediateRegionCode: "", + }, + { + region: "Europe", + value: "Åland Islands", + label: { en: "Åland Islands" }, + slug: "ALA", + name: "Åland Islands", + alpha3: "ALA", + alpha2: "AX", + countryCode: "248", + iso: "ISO 3166-2:AX", + subRegion: "Northern Europe", + intermediateRegion: "", + regionCode: "150", + subRegionCode: "154", + intermediateRegionCode: "", + }, + { + region: "Europe", + continent: "Europe", + value: "Albania", + label: { pt: "Albânia", en: "Albania", fr: "Albanie" }, + slug: "ALB", + name: "Albania", + alpha3: "ALB", + alpha2: "AL", + countryCode: "008", + iso: "ISO 3166-2:AL", + subRegion: "Southern Europe", + intermediateRegion: "", + regionCode: "150", + subRegionCode: "039", + intermediateRegionCode: "", + }, + { + region: "Africa", + continent: "Africa", + value: "Algeria", + label: { pt: "Argélia", en: "Algeria", fr: "Algérie" }, + slug: "DZA", + name: "Algeria", + alpha3: "DZA", + alpha2: "DZ", + countryCode: "012", + iso: "ISO 3166-2:DZ", + subRegion: "Northern Africa", + intermediateRegion: "", + regionCode: "002", + subRegionCode: "015", + intermediateRegionCode: "", + }, + { + region: "Oceania", + value: "American Samoa", + label: { en: "American Samoa" }, + slug: "ASM", + name: "American Samoa", + alpha3: "ASM", + alpha2: "AS", + countryCode: "016", + iso: "ISO 3166-2:AS", + subRegion: "Polynesia", + intermediateRegion: "", + regionCode: "009", + subRegionCode: "061", + intermediateRegionCode: "", + }, + { + region: "Europe", + continent: "Europe", + value: "Andorra", + label: { pt: "Andorra", en: "Andorra", fr: "Andorre" }, + slug: "AND", + name: "Andorra", + alpha3: "AND", + alpha2: "AD", + countryCode: "020", + iso: "ISO 3166-2:AD", + subRegion: "Southern Europe", + intermediateRegion: "", + regionCode: "150", + subRegionCode: "039", + intermediateRegionCode: "", + }, + { + region: "Africa", + continent: "Africa", + value: "Angola", + label: { pt: "Angola", en: "Angola", fr: "Angola" }, + slug: "AGO", + name: "Angola", + alpha3: "AGO", + alpha2: "AO", + countryCode: "024", + iso: "ISO 3166-2:AO", + subRegion: "Sub-Saharan Africa", + intermediateRegion: "Middle Africa", + regionCode: "002", + subRegionCode: "202", + intermediateRegionCode: "017", + }, + { + region: "Americas", + value: "Anguilla", + label: { en: "Anguilla" }, + slug: "AIA", + name: "Anguilla", + alpha3: "AIA", + alpha2: "AI", + countryCode: "660", + iso: "ISO 3166-2:AI", + subRegion: "Latin America and the Caribbean", + intermediateRegion: "Caribbean", + regionCode: "019", + subRegionCode: "419", + intermediateRegionCode: "029", + }, + { + region: "", + value: "Antarctica", + label: { en: "Antarctica" }, + slug: "ATA", + name: "Antarctica", + alpha3: "ATA", + alpha2: "AQ", + countryCode: "010", + iso: "ISO 3166-2:AQ", + subRegion: "", + intermediateRegion: "", + regionCode: "", + subRegionCode: "", + intermediateRegionCode: "", + }, + { + region: "Americas", + continent: "North America", + value: "Antigua and Barbuda", + label: { + pt: "Antígua e Barbuda", + en: "Antigua and Barbuda", + fr: "Antigua-et-Barbuda", + }, + slug: "ATG", + name: "Antigua and Barbuda", + alpha3: "ATG", + alpha2: "AG", + countryCode: "028", + iso: "ISO 3166-2:AG", + subRegion: "Latin America and the Caribbean", + intermediateRegion: "Caribbean", + regionCode: "019", + subRegionCode: "419", + intermediateRegionCode: "029", + }, + { + region: "Americas", + continent: "South America", + value: "Argentina", + label: { pt: "Argentina", en: "Argentina", fr: "Argentine" }, + slug: "ARG", + name: "Argentina", + alpha3: "ARG", + alpha2: "AR", + countryCode: "032", + iso: "ISO 3166-2:AR", + subRegion: "Latin America and the Caribbean", + intermediateRegion: "South America", + regionCode: "019", + subRegionCode: "419", + intermediateRegionCode: "005", + }, + { + region: "Asia", + continent: "Asia", + value: "Armenia", + label: { pt: "Armênia", en: "Armenia", fr: "Arménie" }, + slug: "ARM", + name: "Armenia", + alpha3: "ARM", + alpha2: "AM", + countryCode: "051", + iso: "ISO 3166-2:AM", + subRegion: "Western Asia", + intermediateRegion: "", + regionCode: "142", + subRegionCode: "145", + intermediateRegionCode: "", + }, + { + region: "Americas", + value: "Aruba", + label: { en: "Aruba" }, + slug: "ABW", + name: "Aruba", + alpha3: "ABW", + alpha2: "AW", + countryCode: "533", + iso: "ISO 3166-2:AW", + subRegion: "Latin America and the Caribbean", + intermediateRegion: "Caribbean", + regionCode: "019", + subRegionCode: "419", + intermediateRegionCode: "029", + }, + { + region: "Oceania", + continent: "Oceania", + value: "Australia", + label: { pt: "Austrália", en: "Australia", fr: "Australie" }, + slug: "AUS", + name: "Australia", + alpha3: "AUS", + alpha2: "AU", + countryCode: "036", + iso: "ISO 3166-2:AU", + subRegion: "Australia and New Zealand", + intermediateRegion: "", + regionCode: "009", + subRegionCode: "053", + intermediateRegionCode: "", + }, + { + region: "Europe", + continent: "Europe", + value: "Austria", + label: { pt: "Áustria", en: "Austria", fr: "Autriche" }, + slug: "AUT", + name: "Austria", + alpha3: "AUT", + alpha2: "AT", + countryCode: "040", + iso: "ISO 3166-2:AT", + subRegion: "Western Europe", + intermediateRegion: "", + regionCode: "150", + subRegionCode: "155", + intermediateRegionCode: "", + }, + { + region: "Asia", + continent: "Asia", + value: "Azerbaijan", + label: { pt: "Azerbaijão", en: "Azerbaijan", fr: "Azerbaïdjan" }, + slug: "AZE", + name: "Azerbaijan", + alpha3: "AZE", + alpha2: "AZ", + countryCode: "031", + iso: "ISO 3166-2:AZ", + subRegion: "Western Asia", + intermediateRegion: "", + regionCode: "142", + subRegionCode: "145", + intermediateRegionCode: "", + }, + { + region: "Americas", + continent: "North America", + value: "Bahamas", + label: { pt: "Bahamas", en: "Bahamas", fr: "Bahamas" }, + slug: "BHS", + name: "Bahamas", + alpha3: "BHS", + alpha2: "BS", + countryCode: "044", + iso: "ISO 3166-2:BS", + subRegion: "Latin America and the Caribbean", + intermediateRegion: "Caribbean", + regionCode: "019", + subRegionCode: "419", + intermediateRegionCode: "029", + }, + { + region: "Asia", + continent: "Asia", + value: "Bahrain", + label: { pt: "Bahrein", en: "Bahrain", fr: "Bahreïn" }, + slug: "BHR", + name: "Bahrain", + alpha3: "BHR", + alpha2: "BH", + countryCode: "048", + iso: "ISO 3166-2:BH", + subRegion: "Western Asia", + intermediateRegion: "", + regionCode: "142", + subRegionCode: "145", + intermediateRegionCode: "", + }, + { + region: "Asia", + continent: "Asia", + value: "Bangladesh", + label: { pt: "Bangladesh", en: "Bangladesh", fr: "Bangladesh" }, + slug: "BGD", + name: "Bangladesh", + alpha3: "BGD", + alpha2: "BD", + countryCode: "050", + iso: "ISO 3166-2:BD", + subRegion: "Southern Asia", + intermediateRegion: "", + regionCode: "142", + subRegionCode: "034", + intermediateRegionCode: "", + }, + { + region: "Americas", + continent: "North America", + value: "Barbados", + label: { pt: "Barbados", en: "Barbados", fr: "Barbade" }, + slug: "BRB", + name: "Barbados", + alpha3: "BRB", + alpha2: "BB", + countryCode: "052", + iso: "ISO 3166-2:BB", + subRegion: "Latin America and the Caribbean", + intermediateRegion: "Caribbean", + regionCode: "019", + subRegionCode: "419", + intermediateRegionCode: "029", + }, + { + region: "Europe", + continent: "Europe", + value: "Belarus", + label: { pt: "Belarus", en: "Belarus", fr: "Biélorussie" }, + slug: "BLR", + name: "Belarus", + alpha3: "BLR", + alpha2: "BY", + countryCode: "112", + iso: "ISO 3166-2:BY", + subRegion: "Eastern Europe", + intermediateRegion: "", + regionCode: "150", + subRegionCode: "151", + intermediateRegionCode: "", + }, + { + region: "Europe", + continent: "Europe", + value: "Belgium", + label: { pt: "Bélgica", en: "Belgium", fr: "Belgique" }, + slug: "BEL", + name: "Belgium", + alpha3: "BEL", + alpha2: "BE", + countryCode: "056", + iso: "ISO 3166-2:BE", + subRegion: "Western Europe", + intermediateRegion: "", + regionCode: "150", + subRegionCode: "155", + intermediateRegionCode: "", + }, + { + region: "Americas", + continent: "North America", + value: "Belize", + label: { pt: "Belize", en: "Belize", fr: "Belize" }, + slug: "BLZ", + name: "Belize", + alpha3: "BLZ", + alpha2: "BZ", + countryCode: "084", + iso: "ISO 3166-2:BZ", + subRegion: "Latin America and the Caribbean", + intermediateRegion: "Central America", + regionCode: "019", + subRegionCode: "419", + intermediateRegionCode: "013", + }, + { + region: "Africa", + continent: "Africa", + value: "Benin", + label: { pt: "Benin", en: "Benin", fr: "Bénin" }, + slug: "BEN", + name: "Benin", + alpha3: "BEN", + alpha2: "BJ", + countryCode: "204", + iso: "ISO 3166-2:BJ", + subRegion: "Sub-Saharan Africa", + intermediateRegion: "Western Africa", + regionCode: "002", + subRegionCode: "202", + intermediateRegionCode: "011", + }, + { + region: "Americas", + value: "Bermuda", + label: { en: "Bermuda" }, + slug: "BMU", + name: "Bermuda", + alpha3: "BMU", + alpha2: "BM", + countryCode: "060", + iso: "ISO 3166-2:BM", + subRegion: "Northern America", + intermediateRegion: "", + regionCode: "019", + subRegionCode: "021", + intermediateRegionCode: "", + }, + { + region: "Asia", + continent: "Asia", + value: "Bhutan", + label: { pt: "Butão", en: "Bhutan", fr: "Bhoutan" }, + slug: "BTN", + name: "Bhutan", + alpha3: "BTN", + alpha2: "BT", + countryCode: "064", + iso: "ISO 3166-2:BT", + subRegion: "Southern Asia", + intermediateRegion: "", + regionCode: "142", + subRegionCode: "034", + intermediateRegionCode: "", + }, + { + region: "Americas", + value: "Bolivia (Plurinational State of)", + label: { en: "Bolivia (Plurinational State of)" }, + slug: "BOL", + name: "Bolivia (Plurinational State of)", + alpha3: "BOL", + alpha2: "BO", + countryCode: "068", + iso: "ISO 3166-2:BO", + subRegion: "Latin America and the Caribbean", + intermediateRegion: "South America", + regionCode: "019", + subRegionCode: "419", + intermediateRegionCode: "005", + }, + { + region: "Americas", + value: "Bonaire, Sint Eustatius and Saba", + label: { en: "Bonaire, Sint Eustatius and Saba" }, + slug: "BES", + name: "Bonaire, Sint Eustatius and Saba", + alpha3: "BES", + alpha2: "BQ", + countryCode: "535", + iso: "ISO 3166-2:BQ", + subRegion: "Latin America and the Caribbean", + intermediateRegion: "Caribbean", + regionCode: "019", + subRegionCode: "419", + intermediateRegionCode: "029", + }, + { + region: "Europe", + continent: "Europe", + value: "Bosnia and Herzegovina", + label: { + pt: "Bósnia e Herzegovina", + en: "Bosnia and Herzegovina", + fr: "Bosnie-Herzégovine", + }, + slug: "BIH", + name: "Bosnia and Herzegovina", + alpha3: "BIH", + alpha2: "BA", + countryCode: "070", + iso: "ISO 3166-2:BA", + subRegion: "Southern Europe", + intermediateRegion: "", + regionCode: "150", + subRegionCode: "039", + intermediateRegionCode: "", + }, + { + region: "Africa", + continent: "Africa", + value: "Botswana", + label: { pt: "Botsuana", en: "Botswana", fr: "Botswana" }, + slug: "BWA", + name: "Botswana", + alpha3: "BWA", + alpha2: "BW", + countryCode: "072", + iso: "ISO 3166-2:BW", + subRegion: "Sub-Saharan Africa", + intermediateRegion: "Southern Africa", + regionCode: "002", + subRegionCode: "202", + intermediateRegionCode: "018", + }, + { + region: "Americas", + value: "Bouvet Island", + label: { en: "Bouvet Island" }, + slug: "BVT", + name: "Bouvet Island", + alpha3: "BVT", + alpha2: "BV", + countryCode: "074", + iso: "ISO 3166-2:BV", + subRegion: "Latin America and the Caribbean", + intermediateRegion: "South America", + regionCode: "019", + subRegionCode: "419", + intermediateRegionCode: "005", + }, + { + region: "Americas", + continent: "South America", + value: "Brazil", + label: { pt: "Brasil", en: "Brazil", fr: "Brésil" }, + slug: "BRA", + name: "Brazil", + alpha3: "BRA", + alpha2: "BR", + countryCode: "076", + iso: "ISO 3166-2:BR", + subRegion: "Latin America and the Caribbean", + intermediateRegion: "South America", + regionCode: "019", + subRegionCode: "419", + intermediateRegionCode: "005", + }, + { + region: "Africa", + value: "British Indian Ocean Territory", + label: { en: "British Indian Ocean Territory" }, + slug: "IOT", + name: "British Indian Ocean Territory", + alpha3: "IOT", + alpha2: "IO", + countryCode: "086", + iso: "ISO 3166-2:IO", + subRegion: "Sub-Saharan Africa", + intermediateRegion: "Eastern Africa", + regionCode: "002", + subRegionCode: "202", + intermediateRegionCode: "014", + }, + { + region: "Asia", + value: "Brunei Darussalam", + label: { en: "Brunei Darussalam" }, + slug: "BRN", + name: "Brunei Darussalam", + alpha3: "BRN", + alpha2: "BN", + countryCode: "096", + iso: "ISO 3166-2:BN", + subRegion: "South-eastern Asia", + intermediateRegion: "", + regionCode: "142", + subRegionCode: "035", + intermediateRegionCode: "", + }, + { + region: "Europe", + continent: "Europe", + value: "Bulgaria", + label: { pt: "Bulgária", en: "Bulgaria", fr: "Bulgarie" }, + slug: "BGR", + name: "Bulgaria", + alpha3: "BGR", + alpha2: "BG", + countryCode: "100", + iso: "ISO 3166-2:BG", + subRegion: "Eastern Europe", + intermediateRegion: "", + regionCode: "150", + subRegionCode: "151", + intermediateRegionCode: "", + }, + { + region: "Africa", + continent: "Africa", + value: "Burkina Faso", + label: { pt: "Burquina Faso", en: "Burkina Faso", fr: "Burkina Faso" }, + slug: "BFA", + name: "Burkina Faso", + alpha3: "BFA", + alpha2: "BF", + countryCode: "854", + iso: "ISO 3166-2:BF", + subRegion: "Sub-Saharan Africa", + intermediateRegion: "Western Africa", + regionCode: "002", + subRegionCode: "202", + intermediateRegionCode: "011", + }, + { + region: "Africa", + continent: "Africa", + value: "Burundi", + label: { pt: "Burundi", en: "Burundi", fr: "Burundi" }, + slug: "BDI", + name: "Burundi", + alpha3: "BDI", + alpha2: "BI", + countryCode: "108", + iso: "ISO 3166-2:BI", + subRegion: "Sub-Saharan Africa", + intermediateRegion: "Eastern Africa", + regionCode: "002", + subRegionCode: "202", + intermediateRegionCode: "014", + }, + { + region: "Africa", + continent: "Africa", + value: "Cabo Verde", + label: { pt: "Cabo Verde", en: "Cabo Verde", fr: "Cap-Vert" }, + slug: "CPV", + name: "Cabo Verde", + alpha3: "CPV", + alpha2: "CV", + countryCode: "132", + iso: "ISO 3166-2:CV", + subRegion: "Sub-Saharan Africa", + intermediateRegion: "Western Africa", + regionCode: "002", + subRegionCode: "202", + intermediateRegionCode: "011", + }, + { + region: "Asia", + continent: "Asia", + value: "Cambodia", + label: { pt: "Camboja", en: "Cambodia", fr: "Cambodge" }, + slug: "KHM", + name: "Cambodia", + alpha3: "KHM", + alpha2: "KH", + countryCode: "116", + iso: "ISO 3166-2:KH", + subRegion: "South-eastern Asia", + intermediateRegion: "", + regionCode: "142", + subRegionCode: "035", + intermediateRegionCode: "", + }, + { + region: "Africa", + continent: "Africa", + value: "Cameroon", + label: { pt: "Camarões", en: "Cameroon", fr: "Cameroun" }, + slug: "CMR", + name: "Cameroon", + alpha3: "CMR", + alpha2: "CM", + countryCode: "120", + iso: "ISO 3166-2:CM", + subRegion: "Sub-Saharan Africa", + intermediateRegion: "Middle Africa", + regionCode: "002", + subRegionCode: "202", + intermediateRegionCode: "017", + }, + { + region: "Americas", + continent: "North America", + value: "Canada", + label: { pt: "Canadá", en: "Canada", fr: "Canada" }, + slug: "CAN", + name: "Canada", + alpha3: "CAN", + alpha2: "CA", + countryCode: "124", + iso: "ISO 3166-2:CA", + subRegion: "Northern America", + intermediateRegion: "", + regionCode: "019", + subRegionCode: "021", + intermediateRegionCode: "", + }, + { + region: "Americas", + value: "Cayman Islands", + label: { en: "Cayman Islands" }, + slug: "CYM", + name: "Cayman Islands", + alpha3: "CYM", + alpha2: "KY", + countryCode: "136", + iso: "ISO 3166-2:KY", + subRegion: "Latin America and the Caribbean", + intermediateRegion: "Caribbean", + regionCode: "019", + subRegionCode: "419", + intermediateRegionCode: "029", + }, + { + region: "Africa", + continent: "Africa", + value: "Central African Republic", + label: { + pt: "República Centro-Africana", + en: "Central African Republic", + fr: "République centrafricaine", + }, + slug: "CAF", + name: "Central African Republic", + alpha3: "CAF", + alpha2: "CF", + countryCode: "140", + iso: "ISO 3166-2:CF", + subRegion: "Sub-Saharan Africa", + intermediateRegion: "Middle Africa", + regionCode: "002", + subRegionCode: "202", + intermediateRegionCode: "017", + }, + { + region: "Africa", + continent: "Africa", + value: "Chad", + label: { pt: "Chade", en: "Chad", fr: "Tchad" }, + slug: "TCD", + name: "Chad", + alpha3: "TCD", + alpha2: "TD", + countryCode: "148", + iso: "ISO 3166-2:TD", + subRegion: "Sub-Saharan Africa", + intermediateRegion: "Middle Africa", + regionCode: "002", + subRegionCode: "202", + intermediateRegionCode: "017", + }, + { + region: "Americas", + continent: "South America", + value: "Chile", + label: { pt: "Chile", en: "Chile", fr: "Chili" }, + slug: "CHL", + name: "Chile", + alpha3: "CHL", + alpha2: "CL", + countryCode: "152", + iso: "ISO 3166-2:CL", + subRegion: "Latin America and the Caribbean", + intermediateRegion: "South America", + regionCode: "019", + subRegionCode: "419", + intermediateRegionCode: "005", + }, + { + region: "Asia", + continent: "Asia", + value: "China", + label: { pt: "China", en: "China", fr: "Chine" }, + slug: "CHN", + name: "China", + alpha3: "CHN", + alpha2: "CN", + countryCode: "156", + iso: "ISO 3166-2:CN", + subRegion: "Eastern Asia", + intermediateRegion: "", + regionCode: "142", + subRegionCode: "030", + intermediateRegionCode: "", + }, + { + region: "Oceania", + value: "Christmas Island", + label: { en: "Christmas Island" }, + slug: "CXR", + name: "Christmas Island", + alpha3: "CXR", + alpha2: "CX", + countryCode: "162", + iso: "ISO 3166-2:CX", + subRegion: "Australia and New Zealand", + intermediateRegion: "", + regionCode: "009", + subRegionCode: "053", + intermediateRegionCode: "", + }, + { + region: "Oceania", + value: "Cocos (Keeling) Islands", + label: { en: "Cocos (Keeling) Islands" }, + slug: "CCK", + name: "Cocos (Keeling) Islands", + alpha3: "CCK", + alpha2: "CC", + countryCode: "166", + iso: "ISO 3166-2:CC", + subRegion: "Australia and New Zealand", + intermediateRegion: "", + regionCode: "009", + subRegionCode: "053", + intermediateRegionCode: "", + }, + { + region: "Americas", + continent: "South America", + value: "Colombia", + label: { pt: "Colômbia", en: "Colombia", fr: "Colombie" }, + slug: "COL", + name: "Colombia", + alpha3: "COL", + alpha2: "CO", + countryCode: "170", + iso: "ISO 3166-2:CO", + subRegion: "Latin America and the Caribbean", + intermediateRegion: "South America", + regionCode: "019", + subRegionCode: "419", + intermediateRegionCode: "005", + }, + { + region: "Africa", + continent: "Africa", + value: "Comoros", + label: { pt: "Comores", en: "Comoros", fr: "Comores" }, + slug: "COM", + name: "Comoros", + alpha3: "COM", + alpha2: "KM", + countryCode: "174", + iso: "ISO 3166-2:KM", + subRegion: "Sub-Saharan Africa", + intermediateRegion: "Eastern Africa", + regionCode: "002", + subRegionCode: "202", + intermediateRegionCode: "014", + }, + { + region: "Africa", + value: "Congo", + label: { en: "Congo" }, + slug: "COG", + name: "Congo", + alpha3: "COG", + alpha2: "CG", + countryCode: "178", + iso: "ISO 3166-2:CG", + subRegion: "Sub-Saharan Africa", + intermediateRegion: "Middle Africa", + regionCode: "002", + subRegionCode: "202", + intermediateRegionCode: "017", + }, + { + region: "Africa", + value: "Congo, Democratic Republic of the", + label: { en: "Congo, Democratic Republic of the" }, + slug: "COD", + name: "Congo, Democratic Republic of the", + alpha3: "COD", + alpha2: "CD", + countryCode: "180", + iso: "ISO 3166-2:CD", + subRegion: "Sub-Saharan Africa", + intermediateRegion: "Middle Africa", + regionCode: "002", + subRegionCode: "202", + intermediateRegionCode: "017", + }, + { + region: "Oceania", + value: "Cook Islands", + label: { en: "Cook Islands" }, + slug: "COK", + name: "Cook Islands", + alpha3: "COK", + alpha2: "CK", + countryCode: "184", + iso: "ISO 3166-2:CK", + subRegion: "Polynesia", + intermediateRegion: "", + regionCode: "009", + subRegionCode: "061", + intermediateRegionCode: "", + }, + { + region: "Americas", + continent: "North America", + value: "Costa Rica", + label: { pt: "Costa Rica", en: "Costa Rica", fr: "Costa Rica" }, + slug: "CRI", + name: "Costa Rica", + alpha3: "CRI", + alpha2: "CR", + countryCode: "188", + iso: "ISO 3166-2:CR", + subRegion: "Latin America and the Caribbean", + intermediateRegion: "Central America", + regionCode: "019", + subRegionCode: "419", + intermediateRegionCode: "013", + }, + { + region: "Africa", + continent: "Africa", + value: "Côte d'Ivoire", + label: { pt: "Costa do Marfim", en: "Côte d'Ivoire", fr: "Côte d'Ivoire" }, + slug: "CIV", + name: "Côte d'Ivoire", + alpha3: "CIV", + alpha2: "CI", + countryCode: "384", + iso: "ISO 3166-2:CI", + subRegion: "Sub-Saharan Africa", + intermediateRegion: "Western Africa", + regionCode: "002", + subRegionCode: "202", + intermediateRegionCode: "011", + }, + { + region: "Europe", + continent: "Europe", + value: "Croatia", + label: { pt: "Croácia", en: "Croatia", fr: "Croatie" }, + slug: "HRV", + name: "Croatia", + alpha3: "HRV", + alpha2: "HR", + countryCode: "191", + iso: "ISO 3166-2:HR", + subRegion: "Southern Europe", + intermediateRegion: "", + regionCode: "150", + subRegionCode: "039", + intermediateRegionCode: "", + }, + { + region: "Americas", + continent: "North America", + value: "Cuba", + label: { pt: "Cuba", en: "Cuba", fr: "Cuba" }, + slug: "CUB", + name: "Cuba", + alpha3: "CUB", + alpha2: "CU", + countryCode: "192", + iso: "ISO 3166-2:CU", + subRegion: "Latin America and the Caribbean", + intermediateRegion: "Caribbean", + regionCode: "019", + subRegionCode: "419", + intermediateRegionCode: "029", + }, + { + region: "Americas", + value: "Curaçao", + label: { en: "Curaçao" }, + slug: "CUW", + name: "Curaçao", + alpha3: "CUW", + alpha2: "CW", + countryCode: "531", + iso: "ISO 3166-2:CW", + subRegion: "Latin America and the Caribbean", + intermediateRegion: "Caribbean", + regionCode: "019", + subRegionCode: "419", + intermediateRegionCode: "029", + }, + { + region: "Asia", + continent: "Asia", + value: "Cyprus", + label: { pt: "Chipre", en: "Cyprus", fr: "Chypre" }, + slug: "CYP", + name: "Cyprus", + alpha3: "CYP", + alpha2: "CY", + countryCode: "196", + iso: "ISO 3166-2:CY", + subRegion: "Western Asia", + intermediateRegion: "", + regionCode: "142", + subRegionCode: "145", + intermediateRegionCode: "", + }, + { + region: "Europe", + value: "Czechia", + label: { en: "Czechia" }, + slug: "CZE", + name: "Czechia", + alpha3: "CZE", + alpha2: "CZ", + countryCode: "203", + iso: "ISO 3166-2:CZ", + subRegion: "Eastern Europe", + intermediateRegion: "", + regionCode: "150", + subRegionCode: "151", + intermediateRegionCode: "", + }, + { + region: "Europe", + continent: "Europe", + value: "Denmark", + label: { pt: "Dinamarca", en: "Denmark", fr: "Danemark" }, + slug: "DNK", + name: "Denmark", + alpha3: "DNK", + alpha2: "DK", + countryCode: "208", + iso: "ISO 3166-2:DK", + subRegion: "Northern Europe", + intermediateRegion: "", + regionCode: "150", + subRegionCode: "154", + intermediateRegionCode: "", + }, + { + region: "Africa", + continent: "Africa", + value: "Djibouti", + label: { pt: "Djibuti", en: "Djibouti", fr: "Djibouti" }, + slug: "DJI", + name: "Djibouti", + alpha3: "DJI", + alpha2: "DJ", + countryCode: "262", + iso: "ISO 3166-2:DJ", + subRegion: "Sub-Saharan Africa", + intermediateRegion: "Eastern Africa", + regionCode: "002", + subRegionCode: "202", + intermediateRegionCode: "014", + }, + { + region: "Americas", + continent: "North America", + value: "Dominica", + label: { pt: "Dominica", en: "Dominica", fr: "Dominique" }, + slug: "DMA", + name: "Dominica", + alpha3: "DMA", + alpha2: "DM", + countryCode: "212", + iso: "ISO 3166-2:DM", + subRegion: "Latin America and the Caribbean", + intermediateRegion: "Caribbean", + regionCode: "019", + subRegionCode: "419", + intermediateRegionCode: "029", + }, + { + region: "Americas", + continent: "North America", + value: "Dominican Republic", + label: { + pt: "República Dominicana", + en: "Dominican Republic", + fr: "République dominicaine", + }, + slug: "DOM", + name: "Dominican Republic", + alpha3: "DOM", + alpha2: "DO", + countryCode: "214", + iso: "ISO 3166-2:DO", + subRegion: "Latin America and the Caribbean", + intermediateRegion: "Caribbean", + regionCode: "019", + subRegionCode: "419", + intermediateRegionCode: "029", + }, + { + region: "Americas", + continent: "South America", + value: "Ecuador", + label: { pt: "Equador", en: "Ecuador", fr: "Équateur" }, + slug: "ECU", + name: "Ecuador", + alpha3: "ECU", + alpha2: "EC", + countryCode: "218", + iso: "ISO 3166-2:EC", + subRegion: "Latin America and the Caribbean", + intermediateRegion: "South America", + regionCode: "019", + subRegionCode: "419", + intermediateRegionCode: "005", + }, + { + region: "Africa", + continent: "Africa", + value: "Egypt", + label: { pt: "Egito", en: "Egypt", fr: "Égypte" }, + slug: "EGY", + name: "Egypt", + alpha3: "EGY", + alpha2: "EG", + countryCode: "818", + iso: "ISO 3166-2:EG", + subRegion: "Northern Africa", + intermediateRegion: "", + regionCode: "002", + subRegionCode: "015", + intermediateRegionCode: "", + }, + { + region: "Americas", + continent: "North America", + value: "El Salvador", + label: { pt: "El Salvador", en: "El Salvador", fr: "El Salvador" }, + slug: "SLV", + name: "El Salvador", + alpha3: "SLV", + alpha2: "SV", + countryCode: "222", + iso: "ISO 3166-2:SV", + subRegion: "Latin America and the Caribbean", + intermediateRegion: "Central America", + regionCode: "019", + subRegionCode: "419", + intermediateRegionCode: "013", + }, + { + region: "Africa", + continent: "Africa", + value: "Equatorial Guinea", + label: { + pt: "Guiné Equatorial", + en: "Equatorial Guinea", + fr: "Guinée équatoriale", + }, + slug: "GNQ", + name: "Equatorial Guinea", + alpha3: "GNQ", + alpha2: "GQ", + countryCode: "226", + iso: "ISO 3166-2:GQ", + subRegion: "Sub-Saharan Africa", + intermediateRegion: "Middle Africa", + regionCode: "002", + subRegionCode: "202", + intermediateRegionCode: "017", + }, + { + region: "Africa", + continent: "Africa", + value: "Eritrea", + label: { pt: "Eritreia", en: "Eritrea", fr: "Érythrée" }, + slug: "ERI", + name: "Eritrea", + alpha3: "ERI", + alpha2: "ER", + countryCode: "232", + iso: "ISO 3166-2:ER", + subRegion: "Sub-Saharan Africa", + intermediateRegion: "Eastern Africa", + regionCode: "002", + subRegionCode: "202", + intermediateRegionCode: "014", + }, + { + region: "Europe", + continent: "Europe", + value: "Estonia", + label: { pt: "Estônia", en: "Estonia", fr: "Estonie" }, + slug: "EST", + name: "Estonia", + alpha3: "EST", + alpha2: "EE", + countryCode: "233", + iso: "ISO 3166-2:EE", + subRegion: "Northern Europe", + intermediateRegion: "", + regionCode: "150", + subRegionCode: "154", + intermediateRegionCode: "", + }, + { + region: "Africa", + continent: "Africa", + value: "Eswatini", + label: { pt: "Eswatini", en: "Eswatini", fr: "Eswatini" }, + slug: "SWZ", + name: "Eswatini", + alpha3: "SWZ", + alpha2: "SZ", + countryCode: "748", + iso: "ISO 3166-2:SZ", + subRegion: "Sub-Saharan Africa", + intermediateRegion: "Southern Africa", + regionCode: "002", + subRegionCode: "202", + intermediateRegionCode: "018", + }, + { + region: "Africa", + continent: "Africa", + value: "Ethiopia", + label: { pt: "Etiópia", en: "Ethiopia", fr: "Éthiopie" }, + slug: "ETH", + name: "Ethiopia", + alpha3: "ETH", + alpha2: "ET", + countryCode: "231", + iso: "ISO 3166-2:ET", + subRegion: "Sub-Saharan Africa", + intermediateRegion: "Eastern Africa", + regionCode: "002", + subRegionCode: "202", + intermediateRegionCode: "014", + }, + { + region: "Americas", + value: "Falkland Islands (Malvinas)", + label: { en: "Falkland Islands (Malvinas)" }, + slug: "FLK", + name: "Falkland Islands (Malvinas)", + alpha3: "FLK", + alpha2: "FK", + countryCode: "238", + iso: "ISO 3166-2:FK", + subRegion: "Latin America and the Caribbean", + intermediateRegion: "South America", + regionCode: "019", + subRegionCode: "419", + intermediateRegionCode: "005", + }, + { + region: "Europe", + value: "Faroe Islands", + label: { en: "Faroe Islands" }, + slug: "FRO", + name: "Faroe Islands", + alpha3: "FRO", + alpha2: "FO", + countryCode: "234", + iso: "ISO 3166-2:FO", + subRegion: "Northern Europe", + intermediateRegion: "", + regionCode: "150", + subRegionCode: "154", + intermediateRegionCode: "", + }, + { + region: "Oceania", + continent: "Oceania", + value: "Fiji", + label: { pt: "Fiji", en: "Fiji", fr: "Fidji" }, + slug: "FJI", + name: "Fiji", + alpha3: "FJI", + alpha2: "FJ", + countryCode: "242", + iso: "ISO 3166-2:FJ", + subRegion: "Melanesia", + intermediateRegion: "", + regionCode: "009", + subRegionCode: "054", + intermediateRegionCode: "", + }, + { + region: "Europe", + continent: "Europe", + value: "Finland", + label: { pt: "Finlândia", en: "Finland", fr: "Finlande" }, + slug: "FIN", + name: "Finland", + alpha3: "FIN", + alpha2: "FI", + countryCode: "246", + iso: "ISO 3166-2:FI", + subRegion: "Northern Europe", + intermediateRegion: "", + regionCode: "150", + subRegionCode: "154", + intermediateRegionCode: "", + }, + { + region: "Europe", + continent: "Europe", + value: "France", + label: { pt: "França", en: "France", fr: "France" }, + slug: "FRA", + name: "France", + alpha3: "FRA", + alpha2: "FR", + countryCode: "250", + iso: "ISO 3166-2:FR", + subRegion: "Western Europe", + intermediateRegion: "", + regionCode: "150", + subRegionCode: "155", + intermediateRegionCode: "", + }, + { + region: "Americas", + value: "French Guiana", + label: { en: "French Guiana" }, + slug: "GUF", + name: "French Guiana", + alpha3: "GUF", + alpha2: "GF", + countryCode: "254", + iso: "ISO 3166-2:GF", + subRegion: "Latin America and the Caribbean", + intermediateRegion: "South America", + regionCode: "019", + subRegionCode: "419", + intermediateRegionCode: "005", + }, + { + region: "Oceania", + value: "French Polynesia", + label: { en: "French Polynesia" }, + slug: "PYF", + name: "French Polynesia", + alpha3: "PYF", + alpha2: "PF", + countryCode: "258", + iso: "ISO 3166-2:PF", + subRegion: "Polynesia", + intermediateRegion: "", + regionCode: "009", + subRegionCode: "061", + intermediateRegionCode: "", + }, + { + region: "Africa", + value: "French Southern Territories", + label: { en: "French Southern Territories" }, + slug: "ATF", + name: "French Southern Territories", + alpha3: "ATF", + alpha2: "TF", + countryCode: "260", + iso: "ISO 3166-2:TF", + subRegion: "Sub-Saharan Africa", + intermediateRegion: "Eastern Africa", + regionCode: "002", + subRegionCode: "202", + intermediateRegionCode: "014", + }, + { + region: "Africa", + continent: "Africa", + value: "Gabon", + label: { pt: "Gabão", en: "Gabon", fr: "Gabon" }, + slug: "GAB", + name: "Gabon", + alpha3: "GAB", + alpha2: "GA", + countryCode: "266", + iso: "ISO 3166-2:GA", + subRegion: "Sub-Saharan Africa", + intermediateRegion: "Middle Africa", + regionCode: "002", + subRegionCode: "202", + intermediateRegionCode: "017", + }, + { + region: "Africa", + continent: "Africa", + value: "Gambia", + label: { pt: "Gâmbia", en: "Gambia", fr: "Gambie" }, + slug: "GMB", + name: "Gambia", + alpha3: "GMB", + alpha2: "GM", + countryCode: "270", + iso: "ISO 3166-2:GM", + subRegion: "Sub-Saharan Africa", + intermediateRegion: "Western Africa", + regionCode: "002", + subRegionCode: "202", + intermediateRegionCode: "011", + }, + { + region: "Asia", + continent: "Asia", + value: "Georgia", + label: { pt: "Geórgia", en: "Georgia", fr: "Géorgie" }, + slug: "GEO", + name: "Georgia", + alpha3: "GEO", + alpha2: "GE", + countryCode: "268", + iso: "ISO 3166-2:GE", + subRegion: "Western Asia", + intermediateRegion: "", + regionCode: "142", + subRegionCode: "145", + intermediateRegionCode: "", + }, + { + region: "Europe", + continent: "Europe", + value: "Germany", + label: { pt: "Alemanha", en: "Germany", fr: "Allemagne" }, + slug: "DEU", + name: "Germany", + alpha3: "DEU", + alpha2: "DE", + countryCode: "276", + iso: "ISO 3166-2:DE", + subRegion: "Western Europe", + intermediateRegion: "", + regionCode: "150", + subRegionCode: "155", + intermediateRegionCode: "", + }, + { + region: "Africa", + continent: "Africa", + value: "Ghana", + label: { pt: "Gana", en: "Ghana", fr: "Ghana" }, + slug: "GHA", + name: "Ghana", + alpha3: "GHA", + alpha2: "GH", + countryCode: "288", + iso: "ISO 3166-2:GH", + subRegion: "Sub-Saharan Africa", + intermediateRegion: "Western Africa", + regionCode: "002", + subRegionCode: "202", + intermediateRegionCode: "011", + }, + { + region: "Europe", + value: "Gibraltar", + label: { en: "Gibraltar" }, + slug: "GIB", + name: "Gibraltar", + alpha3: "GIB", + alpha2: "GI", + countryCode: "292", + iso: "ISO 3166-2:GI", + subRegion: "Southern Europe", + intermediateRegion: "", + regionCode: "150", + subRegionCode: "039", + intermediateRegionCode: "", + }, + { + region: "Europe", + continent: "Europe", + value: "Greece", + label: { pt: "Grécia", en: "Greece", fr: "Grèce" }, + slug: "GRC", + name: "Greece", + alpha3: "GRC", + alpha2: "GR", + countryCode: "300", + iso: "ISO 3166-2:GR", + subRegion: "Southern Europe", + intermediateRegion: "", + regionCode: "150", + subRegionCode: "039", + intermediateRegionCode: "", + }, + { + region: "Americas", + value: "Greenland", + label: { en: "Greenland" }, + slug: "GRL", + name: "Greenland", + alpha3: "GRL", + alpha2: "GL", + countryCode: "304", + iso: "ISO 3166-2:GL", + subRegion: "Northern America", + intermediateRegion: "", + regionCode: "019", + subRegionCode: "021", + intermediateRegionCode: "", + }, + { + region: "Americas", + continent: "North America", + value: "Grenada", + label: { pt: "Granada", en: "Grenada", fr: "Grenade" }, + slug: "GRD", + name: "Grenada", + alpha3: "GRD", + alpha2: "GD", + countryCode: "308", + iso: "ISO 3166-2:GD", + subRegion: "Latin America and the Caribbean", + intermediateRegion: "Caribbean", + regionCode: "019", + subRegionCode: "419", + intermediateRegionCode: "029", + }, + { + region: "Americas", + value: "Guadeloupe", + label: { en: "Guadeloupe" }, + slug: "GLP", + name: "Guadeloupe", + alpha3: "GLP", + alpha2: "GP", + countryCode: "312", + iso: "ISO 3166-2:GP", + subRegion: "Latin America and the Caribbean", + intermediateRegion: "Caribbean", + regionCode: "019", + subRegionCode: "419", + intermediateRegionCode: "029", + }, + { + region: "Oceania", + value: "Guam", + label: { en: "Guam" }, + slug: "GUM", + name: "Guam", + alpha3: "GUM", + alpha2: "GU", + countryCode: "316", + iso: "ISO 3166-2:GU", + subRegion: "Micronesia", + intermediateRegion: "", + regionCode: "009", + subRegionCode: "057", + intermediateRegionCode: "", + }, + { + region: "Americas", + continent: "North America", + value: "Guatemala", + label: { pt: "Guatemala", en: "Guatemala", fr: "Guatemala" }, + slug: "GTM", + name: "Guatemala", + alpha3: "GTM", + alpha2: "GT", + countryCode: "320", + iso: "ISO 3166-2:GT", + subRegion: "Latin America and the Caribbean", + intermediateRegion: "Central America", + regionCode: "019", + subRegionCode: "419", + intermediateRegionCode: "013", + }, + { + region: "Europe", + value: "Guernsey", + label: { en: "Guernsey" }, + slug: "GGY", + name: "Guernsey", + alpha3: "GGY", + alpha2: "GG", + countryCode: "831", + iso: "ISO 3166-2:GG", + subRegion: "Northern Europe", + intermediateRegion: "Channel Islands", + regionCode: "150", + subRegionCode: "154", + intermediateRegionCode: "830", + }, + { + region: "Africa", + continent: "Africa", + value: "Guinea", + label: { pt: "Guiné", en: "Guinea", fr: "Guinée" }, + slug: "GIN", + name: "Guinea", + alpha3: "GIN", + alpha2: "GN", + countryCode: "324", + iso: "ISO 3166-2:GN", + subRegion: "Sub-Saharan Africa", + intermediateRegion: "Western Africa", + regionCode: "002", + subRegionCode: "202", + intermediateRegionCode: "011", + }, + { + region: "Africa", + continent: "Africa", + value: "Guinea-Bissau", + label: { pt: "Guiné-Bissau", en: "Guinea-Bissau", fr: "Guinée-Bissau" }, + slug: "GNB", + name: "Guinea-Bissau", + alpha3: "GNB", + alpha2: "GW", + countryCode: "624", + iso: "ISO 3166-2:GW", + subRegion: "Sub-Saharan Africa", + intermediateRegion: "Western Africa", + regionCode: "002", + subRegionCode: "202", + intermediateRegionCode: "011", + }, + { + region: "Americas", + continent: "South America", + value: "Guyana", + label: { pt: "Guiana", en: "Guyana", fr: "Guyana" }, + slug: "GUY", + name: "Guyana", + alpha3: "GUY", + alpha2: "GY", + countryCode: "328", + iso: "ISO 3166-2:GY", + subRegion: "Latin America and the Caribbean", + intermediateRegion: "South America", + regionCode: "019", + subRegionCode: "419", + intermediateRegionCode: "005", + }, + { + region: "Americas", + continent: "North America", + value: "Haiti", + label: { pt: "Haiti", en: "Haiti", fr: "Haïti" }, + slug: "HTI", + name: "Haiti", + alpha3: "HTI", + alpha2: "HT", + countryCode: "332", + iso: "ISO 3166-2:HT", + subRegion: "Latin America and the Caribbean", + intermediateRegion: "Caribbean", + regionCode: "019", + subRegionCode: "419", + intermediateRegionCode: "029", + }, + { + region: "Oceania", + value: "Heard Island and McDonald Islands", + label: { en: "Heard Island and McDonald Islands" }, + slug: "HMD", + name: "Heard Island and McDonald Islands", + alpha3: "HMD", + alpha2: "HM", + countryCode: "334", + iso: "ISO 3166-2:HM", + subRegion: "Australia and New Zealand", + intermediateRegion: "", + regionCode: "009", + subRegionCode: "053", + intermediateRegionCode: "", + }, + { + region: "Europe", + value: "Holy See", + label: { en: "Holy See" }, + slug: "VAT", + name: "Holy See", + alpha3: "VAT", + alpha2: "VA", + countryCode: "336", + iso: "ISO 3166-2:VA", + subRegion: "Southern Europe", + intermediateRegion: "", + regionCode: "150", + subRegionCode: "039", + intermediateRegionCode: "", + }, + { + region: "Americas", + continent: "North America", + value: "Honduras", + label: { pt: "Honduras", en: "Honduras", fr: "Honduras" }, + slug: "HND", + name: "Honduras", + alpha3: "HND", + alpha2: "HN", + countryCode: "340", + iso: "ISO 3166-2:HN", + subRegion: "Latin America and the Caribbean", + intermediateRegion: "Central America", + regionCode: "019", + subRegionCode: "419", + intermediateRegionCode: "013", + }, + { + region: "Asia", + value: "Hong Kong", + label: { en: "Hong Kong" }, + slug: "HKG", + name: "Hong Kong", + alpha3: "HKG", + alpha2: "HK", + countryCode: "344", + iso: "ISO 3166-2:HK", + subRegion: "Eastern Asia", + intermediateRegion: "", + regionCode: "142", + subRegionCode: "030", + intermediateRegionCode: "", + }, + { + region: "Europe", + continent: "Europe", + value: "Hungary", + label: { pt: "Hungria", en: "Hungary", fr: "Hongrie" }, + slug: "HUN", + name: "Hungary", + alpha3: "HUN", + alpha2: "HU", + countryCode: "348", + iso: "ISO 3166-2:HU", + subRegion: "Eastern Europe", + intermediateRegion: "", + regionCode: "150", + subRegionCode: "151", + intermediateRegionCode: "", + }, + { + region: "Europe", + continent: "Europe", + value: "Iceland", + label: { pt: "Islândia", en: "Iceland", fr: "Islande" }, + slug: "ISL", + name: "Iceland", + alpha3: "ISL", + alpha2: "IS", + countryCode: "352", + iso: "ISO 3166-2:IS", + subRegion: "Northern Europe", + intermediateRegion: "", + regionCode: "150", + subRegionCode: "154", + intermediateRegionCode: "", + }, + { + region: "Asia", + continent: "Asia", + value: "India", + label: { pt: "Índia", en: "India", fr: "Inde" }, + slug: "IND", + name: "India", + alpha3: "IND", + alpha2: "IN", + countryCode: "356", + iso: "ISO 3166-2:IN", + subRegion: "Southern Asia", + intermediateRegion: "", + regionCode: "142", + subRegionCode: "034", + intermediateRegionCode: "", + }, + { + region: "Asia", + continent: "Asia", + value: "Indonesia", + label: { pt: "Indonésia", en: "Indonesia", fr: "Indonésie" }, + slug: "IDN", + name: "Indonesia", + alpha3: "IDN", + alpha2: "ID", + countryCode: "360", + iso: "ISO 3166-2:ID", + subRegion: "South-eastern Asia", + intermediateRegion: "", + regionCode: "142", + subRegionCode: "035", + intermediateRegionCode: "", + }, + { + region: "Asia", + value: "Iran (Islamic Republic of)", + label: { en: "Iran (Islamic Republic of)" }, + slug: "IRN", + name: "Iran (Islamic Republic of)", + alpha3: "IRN", + alpha2: "IR", + countryCode: "364", + iso: "ISO 3166-2:IR", + subRegion: "Southern Asia", + intermediateRegion: "", + regionCode: "142", + subRegionCode: "034", + intermediateRegionCode: "", + }, + { + region: "Asia", + continent: "Asia", + value: "Iraq", + label: { pt: "Iraque", en: "Iraq", fr: "Irak" }, + slug: "IRQ", + name: "Iraq", + alpha3: "IRQ", + alpha2: "IQ", + countryCode: "368", + iso: "ISO 3166-2:IQ", + subRegion: "Western Asia", + intermediateRegion: "", + regionCode: "142", + subRegionCode: "145", + intermediateRegionCode: "", + }, + { + region: "Europe", + continent: "Europe", + value: "Ireland", + label: { pt: "Irlanda", en: "Ireland", fr: "Irlande" }, + slug: "IRL", + name: "Ireland", + alpha3: "IRL", + alpha2: "IE", + countryCode: "372", + iso: "ISO 3166-2:IE", + subRegion: "Northern Europe", + intermediateRegion: "", + regionCode: "150", + subRegionCode: "154", + intermediateRegionCode: "", + }, + { + region: "Europe", + value: "Isle of Man", + label: { en: "Isle of Man" }, + slug: "IMN", + name: "Isle of Man", + alpha3: "IMN", + alpha2: "IM", + countryCode: "833", + iso: "ISO 3166-2:IM", + subRegion: "Northern Europe", + intermediateRegion: "", + regionCode: "150", + subRegionCode: "154", + intermediateRegionCode: "", + }, + { + region: "Asia", + continent: "Asia", + value: "Israel", + label: { pt: "Israel", en: "Israel", fr: "Israël" }, + slug: "ISR", + name: "Israel", + alpha3: "ISR", + alpha2: "IL", + countryCode: "376", + iso: "ISO 3166-2:IL", + subRegion: "Western Asia", + intermediateRegion: "", + regionCode: "142", + subRegionCode: "145", + intermediateRegionCode: "", + }, + { + region: "Europe", + continent: "Europe", + value: "Italy", + label: { pt: "Itália", en: "Italy", fr: "Italie" }, + slug: "ITA", + name: "Italy", + alpha3: "ITA", + alpha2: "IT", + countryCode: "380", + iso: "ISO 3166-2:IT", + subRegion: "Southern Europe", + intermediateRegion: "", + regionCode: "150", + subRegionCode: "039", + intermediateRegionCode: "", + }, + { + region: "Americas", + continent: "North America", + value: "Jamaica", + label: { pt: "Jamaica", en: "Jamaica", fr: "Jamaïque" }, + slug: "JAM", + name: "Jamaica", + alpha3: "JAM", + alpha2: "JM", + countryCode: "388", + iso: "ISO 3166-2:JM", + subRegion: "Latin America and the Caribbean", + intermediateRegion: "Caribbean", + regionCode: "019", + subRegionCode: "419", + intermediateRegionCode: "029", + }, + { + region: "Asia", + continent: "Asia", + value: "Japan", + label: { pt: "Japão", en: "Japan", fr: "Japon" }, + slug: "JPN", + name: "Japan", + alpha3: "JPN", + alpha2: "JP", + countryCode: "392", + iso: "ISO 3166-2:JP", + subRegion: "Eastern Asia", + intermediateRegion: "", + regionCode: "142", + subRegionCode: "030", + intermediateRegionCode: "", + }, + { + region: "Europe", + value: "Jersey", + label: { en: "Jersey" }, + slug: "JEY", + name: "Jersey", + alpha3: "JEY", + alpha2: "JE", + countryCode: "832", + iso: "ISO 3166-2:JE", + subRegion: "Northern Europe", + intermediateRegion: "Channel Islands", + regionCode: "150", + subRegionCode: "154", + intermediateRegionCode: "830", + }, + { + region: "Asia", + continent: "Asia", + value: "Jordan", + label: { pt: "Jordânia", en: "Jordan", fr: "Jordanie" }, + slug: "JOR", + name: "Jordan", + alpha3: "JOR", + alpha2: "JO", + countryCode: "400", + iso: "ISO 3166-2:JO", + subRegion: "Western Asia", + intermediateRegion: "", + regionCode: "142", + subRegionCode: "145", + intermediateRegionCode: "", + }, + { + region: "Asia", + continent: "Asia", + value: "Kazakhstan", + label: { pt: "Cazaquistão", en: "Kazakhstan", fr: "Kazakhstan" }, + slug: "KAZ", + name: "Kazakhstan", + alpha3: "KAZ", + alpha2: "KZ", + countryCode: "398", + iso: "ISO 3166-2:KZ", + subRegion: "Central Asia", + intermediateRegion: "", + regionCode: "142", + subRegionCode: "143", + intermediateRegionCode: "", + }, + { + region: "Africa", + continent: "Africa", + value: "Kenya", + label: { pt: "Quênia", en: "Kenya", fr: "Kenya" }, + slug: "KEN", + name: "Kenya", + alpha3: "KEN", + alpha2: "KE", + countryCode: "404", + iso: "ISO 3166-2:KE", + subRegion: "Sub-Saharan Africa", + intermediateRegion: "Eastern Africa", + regionCode: "002", + subRegionCode: "202", + intermediateRegionCode: "014", + }, + { + region: "Oceania", + continent: "Oceania", + value: "Kiribati", + label: { pt: "Kiribati", en: "Kiribati", fr: "Kiribati" }, + slug: "KIR", + name: "Kiribati", + alpha3: "KIR", + alpha2: "KI", + countryCode: "296", + iso: "ISO 3166-2:KI", + subRegion: "Micronesia", + intermediateRegion: "", + regionCode: "009", + subRegionCode: "057", + intermediateRegionCode: "", + }, + { + region: "Asia", + value: "Korea (Democratic People's Republic of)", + label: { en: "Korea (Democratic People's Republic of)" }, + slug: "PRK", + name: "Korea (Democratic People's Republic of)", + alpha3: "PRK", + alpha2: "KP", + countryCode: "408", + iso: "ISO 3166-2:KP", + subRegion: "Eastern Asia", + intermediateRegion: "", + regionCode: "142", + subRegionCode: "030", + intermediateRegionCode: "", + }, + { + region: "Asia", + value: "Korea, Republic of", + label: { en: "Korea, Republic of" }, + slug: "KOR", + name: "Korea, Republic of", + alpha3: "KOR", + alpha2: "KR", + countryCode: "410", + iso: "ISO 3166-2:KR", + subRegion: "Eastern Asia", + intermediateRegion: "", + regionCode: "142", + subRegionCode: "030", + intermediateRegionCode: "", + }, + { + region: "Asia", + continent: "Asia", + value: "Kuwait", + label: { pt: "Kuwait", en: "Kuwait", fr: "Koweït" }, + slug: "KWT", + name: "Kuwait", + alpha3: "KWT", + alpha2: "KW", + countryCode: "414", + iso: "ISO 3166-2:KW", + subRegion: "Western Asia", + intermediateRegion: "", + regionCode: "142", + subRegionCode: "145", + intermediateRegionCode: "", + }, + { + region: "Asia", + continent: "Asia", + value: "Kyrgyzstan", + label: { pt: "Quirguistão", en: "Kyrgyzstan", fr: "Kirghizistan" }, + slug: "KGZ", + name: "Kyrgyzstan", + alpha3: "KGZ", + alpha2: "KG", + countryCode: "417", + iso: "ISO 3166-2:KG", + subRegion: "Central Asia", + intermediateRegion: "", + regionCode: "142", + subRegionCode: "143", + intermediateRegionCode: "", + }, + { + region: "Asia", + value: "Lao People's Democratic Republic", + label: { en: "Lao People's Democratic Republic" }, + slug: "LAO", + name: "Lao People's Democratic Republic", + alpha3: "LAO", + alpha2: "LA", + countryCode: "418", + iso: "ISO 3166-2:LA", + subRegion: "South-eastern Asia", + intermediateRegion: "", + regionCode: "142", + subRegionCode: "035", + intermediateRegionCode: "", + }, + { + region: "Europe", + continent: "Europe", + value: "Latvia", + label: { pt: "Letônia", en: "Latvia", fr: "Lettonie" }, + slug: "LVA", + name: "Latvia", + alpha3: "LVA", + alpha2: "LV", + countryCode: "428", + iso: "ISO 3166-2:LV", + subRegion: "Northern Europe", + intermediateRegion: "", + regionCode: "150", + subRegionCode: "154", + intermediateRegionCode: "", + }, + { + region: "Asia", + continent: "Asia", + value: "Lebanon", + label: { pt: "Líbano", en: "Lebanon", fr: "Liban" }, + slug: "LBN", + name: "Lebanon", + alpha3: "LBN", + alpha2: "LB", + countryCode: "422", + iso: "ISO 3166-2:LB", + subRegion: "Western Asia", + intermediateRegion: "", + regionCode: "142", + subRegionCode: "145", + intermediateRegionCode: "", + }, + { + region: "Africa", + continent: "Africa", + value: "Lesotho", + label: { pt: "Lesoto", en: "Lesotho", fr: "Lesotho" }, + slug: "LSO", + name: "Lesotho", + alpha3: "LSO", + alpha2: "LS", + countryCode: "426", + iso: "ISO 3166-2:LS", + subRegion: "Sub-Saharan Africa", + intermediateRegion: "Southern Africa", + regionCode: "002", + subRegionCode: "202", + intermediateRegionCode: "018", + }, + { + region: "Africa", + continent: "Africa", + value: "Liberia", + label: { pt: "Libéria", en: "Liberia", fr: "Libéria" }, + slug: "LBR", + name: "Liberia", + alpha3: "LBR", + alpha2: "LR", + countryCode: "430", + iso: "ISO 3166-2:LR", + subRegion: "Sub-Saharan Africa", + intermediateRegion: "Western Africa", + regionCode: "002", + subRegionCode: "202", + intermediateRegionCode: "011", + }, + { + region: "Africa", + continent: "Africa", + value: "Libya", + label: { pt: "Líbia", en: "Libya", fr: "Libye" }, + slug: "LBY", + name: "Libya", + alpha3: "LBY", + alpha2: "LY", + countryCode: "434", + iso: "ISO 3166-2:LY", + subRegion: "Northern Africa", + intermediateRegion: "", + regionCode: "002", + subRegionCode: "015", + intermediateRegionCode: "", + }, + { + region: "Europe", + continent: "Europe", + value: "Liechtenstein", + label: { pt: "Liechtenstein", en: "Liechtenstein", fr: "Liechtenstein" }, + slug: "LIE", + name: "Liechtenstein", + alpha3: "LIE", + alpha2: "LI", + countryCode: "438", + iso: "ISO 3166-2:LI", + subRegion: "Western Europe", + intermediateRegion: "", + regionCode: "150", + subRegionCode: "155", + intermediateRegionCode: "", + }, + { + region: "Europe", + continent: "Europe", + value: "Lithuania", + label: { pt: "Lituânia", en: "Lithuania", fr: "Lituanie" }, + slug: "LTU", + name: "Lithuania", + alpha3: "LTU", + alpha2: "LT", + countryCode: "440", + iso: "ISO 3166-2:LT", + subRegion: "Northern Europe", + intermediateRegion: "", + regionCode: "150", + subRegionCode: "154", + intermediateRegionCode: "", + }, + { + region: "Europe", + continent: "Europe", + value: "Luxembourg", + label: { pt: "Luxemburgo", en: "Luxembourg", fr: "Luxembourg" }, + slug: "LUX", + name: "Luxembourg", + alpha3: "LUX", + alpha2: "LU", + countryCode: "442", + iso: "ISO 3166-2:LU", + subRegion: "Western Europe", + intermediateRegion: "", + regionCode: "150", + subRegionCode: "155", + intermediateRegionCode: "", + }, + { + region: "Asia", + value: "Macao", + label: { en: "Macao" }, + slug: "MAC", + name: "Macao", + alpha3: "MAC", + alpha2: "MO", + countryCode: "446", + iso: "ISO 3166-2:MO", + subRegion: "Eastern Asia", + intermediateRegion: "", + regionCode: "142", + subRegionCode: "030", + intermediateRegionCode: "", + }, + { + region: "Africa", + continent: "Africa", + value: "Madagascar", + label: { pt: "Madagáscar", en: "Madagascar", fr: "Madagascar" }, + slug: "MDG", + name: "Madagascar", + alpha3: "MDG", + alpha2: "MG", + countryCode: "450", + iso: "ISO 3166-2:MG", + subRegion: "Sub-Saharan Africa", + intermediateRegion: "Eastern Africa", + regionCode: "002", + subRegionCode: "202", + intermediateRegionCode: "014", + }, + { + region: "Africa", + continent: "Africa", + value: "Malawi", + label: { pt: "Malawi", en: "Malawi", fr: "Malawi" }, + slug: "MWI", + name: "Malawi", + alpha3: "MWI", + alpha2: "MW", + countryCode: "454", + iso: "ISO 3166-2:MW", + subRegion: "Sub-Saharan Africa", + intermediateRegion: "Eastern Africa", + regionCode: "002", + subRegionCode: "202", + intermediateRegionCode: "014", + }, + { + region: "Asia", + continent: "Asia", + value: "Malaysia", + label: { pt: "Malásia", en: "Malaysia", fr: "Malaisie" }, + slug: "MYS", + name: "Malaysia", + alpha3: "MYS", + alpha2: "MY", + countryCode: "458", + iso: "ISO 3166-2:MY", + subRegion: "South-eastern Asia", + intermediateRegion: "", + regionCode: "142", + subRegionCode: "035", + intermediateRegionCode: "", + }, + { + region: "Asia", + continent: "Asia", + value: "Maldives", + label: { pt: "Maldivas", en: "Maldives", fr: "Maldives" }, + slug: "MDV", + name: "Maldives", + alpha3: "MDV", + alpha2: "MV", + countryCode: "462", + iso: "ISO 3166-2:MV", + subRegion: "Southern Asia", + intermediateRegion: "", + regionCode: "142", + subRegionCode: "034", + intermediateRegionCode: "", + }, + { + region: "Africa", + continent: "Africa", + value: "Mali", + label: { pt: "Mali", en: "Mali", fr: "Mali" }, + slug: "MLI", + name: "Mali", + alpha3: "MLI", + alpha2: "ML", + countryCode: "466", + iso: "ISO 3166-2:ML", + subRegion: "Sub-Saharan Africa", + intermediateRegion: "Western Africa", + regionCode: "002", + subRegionCode: "202", + intermediateRegionCode: "011", + }, + { + region: "Europe", + continent: "Europe", + value: "Malta", + label: { pt: "Malta", en: "Malta", fr: "Malte" }, + slug: "MLT", + name: "Malta", + alpha3: "MLT", + alpha2: "MT", + countryCode: "470", + iso: "ISO 3166-2:MT", + subRegion: "Southern Europe", + intermediateRegion: "", + regionCode: "150", + subRegionCode: "039", + intermediateRegionCode: "", + }, + { + region: "Oceania", + continent: "Oceania", + value: "Marshall Islands", + label: { + pt: "Ilhas Marshall", + en: "Marshall Islands", + fr: "Îles Marshall", + }, + slug: "MHL", + name: "Marshall Islands", + alpha3: "MHL", + alpha2: "MH", + countryCode: "584", + iso: "ISO 3166-2:MH", + subRegion: "Micronesia", + intermediateRegion: "", + regionCode: "009", + subRegionCode: "057", + intermediateRegionCode: "", + }, + { + region: "Americas", + value: "Martinique", + label: { en: "Martinique" }, + slug: "MTQ", + name: "Martinique", + alpha3: "MTQ", + alpha2: "MQ", + countryCode: "474", + iso: "ISO 3166-2:MQ", + subRegion: "Latin America and the Caribbean", + intermediateRegion: "Caribbean", + regionCode: "019", + subRegionCode: "419", + intermediateRegionCode: "029", + }, + { + region: "Africa", + continent: "Africa", + value: "Mauritania", + label: { pt: "Mauritânia", en: "Mauritania", fr: "Mauritanie" }, + slug: "MRT", + name: "Mauritania", + alpha3: "MRT", + alpha2: "MR", + countryCode: "478", + iso: "ISO 3166-2:MR", + subRegion: "Sub-Saharan Africa", + intermediateRegion: "Western Africa", + regionCode: "002", + subRegionCode: "202", + intermediateRegionCode: "011", + }, + { + region: "Africa", + continent: "Africa", + value: "Mauritius", + label: { pt: "Maurício", en: "Mauritius", fr: "Maurice" }, + slug: "MUS", + name: "Mauritius", + alpha3: "MUS", + alpha2: "MU", + countryCode: "480", + iso: "ISO 3166-2:MU", + subRegion: "Sub-Saharan Africa", + intermediateRegion: "Eastern Africa", + regionCode: "002", + subRegionCode: "202", + intermediateRegionCode: "014", + }, + { + region: "Africa", + value: "Mayotte", + label: { en: "Mayotte" }, + slug: "MYT", + name: "Mayotte", + alpha3: "MYT", + alpha2: "YT", + countryCode: "175", + iso: "ISO 3166-2:YT", + subRegion: "Sub-Saharan Africa", + intermediateRegion: "Eastern Africa", + regionCode: "002", + subRegionCode: "202", + intermediateRegionCode: "014", + }, + { + region: "Americas", + continent: "North America", + value: "Mexico", + label: { pt: "México", en: "Mexico", fr: "Mexique" }, + slug: "MEX", + name: "Mexico", + alpha3: "MEX", + alpha2: "MX", + countryCode: "484", + iso: "ISO 3166-2:MX", + subRegion: "Latin America and the Caribbean", + intermediateRegion: "Central America", + regionCode: "019", + subRegionCode: "419", + intermediateRegionCode: "013", + }, + { + region: "Oceania", + value: "Micronesia (Federated States of)", + label: { en: "Micronesia (Federated States of)" }, + slug: "FSM", + name: "Micronesia (Federated States of)", + alpha3: "FSM", + alpha2: "FM", + countryCode: "583", + iso: "ISO 3166-2:FM", + subRegion: "Micronesia", + intermediateRegion: "", + regionCode: "009", + subRegionCode: "057", + intermediateRegionCode: "", + }, + { + region: "Europe", + value: "Moldova, Republic of", + label: { en: "Moldova, Republic of" }, + slug: "MDA", + name: "Moldova, Republic of", + alpha3: "MDA", + alpha2: "MD", + countryCode: "498", + iso: "ISO 3166-2:MD", + subRegion: "Eastern Europe", + intermediateRegion: "", + regionCode: "150", + subRegionCode: "151", + intermediateRegionCode: "", + }, + { + region: "Europe", + continent: "Europe", + value: "Monaco", + label: { pt: "Mônaco", en: "Monaco", fr: "Monaco" }, + slug: "MCO", + name: "Monaco", + alpha3: "MCO", + alpha2: "MC", + countryCode: "492", + iso: "ISO 3166-2:MC", + subRegion: "Western Europe", + intermediateRegion: "", + regionCode: "150", + subRegionCode: "155", + intermediateRegionCode: "", + }, + { + region: "Asia", + continent: "Asia", + value: "Mongolia", + label: { pt: "Mongólia", en: "Mongolia", fr: "Mongolie" }, + slug: "MNG", + name: "Mongolia", + alpha3: "MNG", + alpha2: "MN", + countryCode: "496", + iso: "ISO 3166-2:MN", + subRegion: "Eastern Asia", + intermediateRegion: "", + regionCode: "142", + subRegionCode: "030", + intermediateRegionCode: "", + }, + { + region: "Europe", + continent: "Europe", + value: "Montenegro", + label: { pt: "Montenegro", en: "Montenegro", fr: "Monténégro" }, + slug: "MNE", + name: "Montenegro", + alpha3: "MNE", + alpha2: "ME", + countryCode: "499", + iso: "ISO 3166-2:ME", + subRegion: "Southern Europe", + intermediateRegion: "", + regionCode: "150", + subRegionCode: "039", + intermediateRegionCode: "", + }, + { + region: "Americas", + value: "Montserrat", + label: { en: "Montserrat" }, + slug: "MSR", + name: "Montserrat", + alpha3: "MSR", + alpha2: "MS", + countryCode: "500", + iso: "ISO 3166-2:MS", + subRegion: "Latin America and the Caribbean", + intermediateRegion: "Caribbean", + regionCode: "019", + subRegionCode: "419", + intermediateRegionCode: "029", + }, + { + region: "Africa", + continent: "Africa", + value: "Morocco", + label: { pt: "Marrocos", en: "Morocco", fr: "Maroc" }, + slug: "MAR", + name: "Morocco", + alpha3: "MAR", + alpha2: "MA", + countryCode: "504", + iso: "ISO 3166-2:MA", + subRegion: "Northern Africa", + intermediateRegion: "", + regionCode: "002", + subRegionCode: "015", + intermediateRegionCode: "", + }, + { + region: "Africa", + continent: "Africa", + value: "Mozambique", + label: { pt: "Moçambique", en: "Mozambique", fr: "Mozambique" }, + slug: "MOZ", + name: "Mozambique", + alpha3: "MOZ", + alpha2: "MZ", + countryCode: "508", + iso: "ISO 3166-2:MZ", + subRegion: "Sub-Saharan Africa", + intermediateRegion: "Eastern Africa", + regionCode: "002", + subRegionCode: "202", + intermediateRegionCode: "014", + }, + { + region: "Asia", + continent: "Asia", + value: "Myanmar", + label: { pt: "Myanmar", en: "Myanmar", fr: "Myanmar" }, + slug: "MMR", + name: "Myanmar", + alpha3: "MMR", + alpha2: "MM", + countryCode: "104", + iso: "ISO 3166-2:MM", + subRegion: "South-eastern Asia", + intermediateRegion: "", + regionCode: "142", + subRegionCode: "035", + intermediateRegionCode: "", + }, + { + region: "Africa", + continent: "Africa", + value: "Namibia", + label: { pt: "Namíbia", en: "Namibia", fr: "Namibie" }, + slug: "NAM", + name: "Namibia", + alpha3: "NAM", + alpha2: "NA", + countryCode: "516", + iso: "ISO 3166-2:NA", + subRegion: "Sub-Saharan Africa", + intermediateRegion: "Southern Africa", + regionCode: "002", + subRegionCode: "202", + intermediateRegionCode: "018", + }, + { + region: "Oceania", + continent: "Oceania", + value: "Nauru", + label: { pt: "Nauru", en: "Nauru", fr: "Nauru" }, + slug: "NRU", + name: "Nauru", + alpha3: "NRU", + alpha2: "NR", + countryCode: "520", + iso: "ISO 3166-2:NR", + subRegion: "Micronesia", + intermediateRegion: "", + regionCode: "009", + subRegionCode: "057", + intermediateRegionCode: "", + }, + { + region: "Asia", + continent: "Asia", + value: "Nepal", + label: { pt: "Nepal", en: "Nepal", fr: "Népal" }, + slug: "NPL", + name: "Nepal", + alpha3: "NPL", + alpha2: "NP", + countryCode: "524", + iso: "ISO 3166-2:NP", + subRegion: "Southern Asia", + intermediateRegion: "", + regionCode: "142", + subRegionCode: "034", + intermediateRegionCode: "", + }, + { + region: "Europe", + continent: "Europe", + value: "Netherlands", + label: { pt: "Países Baixos", en: "Netherlands", fr: "Pays-Bas" }, + slug: "NLD", + name: "Netherlands", + alpha3: "NLD", + alpha2: "NL", + countryCode: "528", + iso: "ISO 3166-2:NL", + subRegion: "Western Europe", + intermediateRegion: "", + regionCode: "150", + subRegionCode: "155", + intermediateRegionCode: "", + }, + { + region: "Oceania", + value: "New Caledonia", + label: { en: "New Caledonia" }, + slug: "NCL", + name: "New Caledonia", + alpha3: "NCL", + alpha2: "NC", + countryCode: "540", + iso: "ISO 3166-2:NC", + subRegion: "Melanesia", + intermediateRegion: "", + regionCode: "009", + subRegionCode: "054", + intermediateRegionCode: "", + }, + { + region: "Oceania", + continent: "Oceania", + value: "New Zealand", + label: { pt: "Nova Zelândia", en: "New Zealand", fr: "Nouvelle-Zélande" }, + slug: "NZL", + name: "New Zealand", + alpha3: "NZL", + alpha2: "NZ", + countryCode: "554", + iso: "ISO 3166-2:NZ", + subRegion: "Australia and New Zealand", + intermediateRegion: "", + regionCode: "009", + subRegionCode: "053", + intermediateRegionCode: "", + }, + { + region: "Americas", + continent: "North America", + value: "Nicaragua", + label: { pt: "Nicarágua", en: "Nicaragua", fr: "Nicaragua" }, + slug: "NIC", + name: "Nicaragua", + alpha3: "NIC", + alpha2: "NI", + countryCode: "558", + iso: "ISO 3166-2:NI", + subRegion: "Latin America and the Caribbean", + intermediateRegion: "Central America", + regionCode: "019", + subRegionCode: "419", + intermediateRegionCode: "013", + }, + { + region: "Africa", + continent: "Africa", + value: "Niger", + label: { pt: "Níger", en: "Niger", fr: "Niger" }, + slug: "NER", + name: "Niger", + alpha3: "NER", + alpha2: "NE", + countryCode: "562", + iso: "ISO 3166-2:NE", + subRegion: "Sub-Saharan Africa", + intermediateRegion: "Western Africa", + regionCode: "002", + subRegionCode: "202", + intermediateRegionCode: "011", + }, + { + region: "Africa", + continent: "Africa", + value: "Nigeria", + label: { pt: "Nigéria", en: "Nigeria", fr: "Nigeria" }, + slug: "NGA", + name: "Nigeria", + alpha3: "NGA", + alpha2: "NG", + countryCode: "566", + iso: "ISO 3166-2:NG", + subRegion: "Sub-Saharan Africa", + intermediateRegion: "Western Africa", + regionCode: "002", + subRegionCode: "202", + intermediateRegionCode: "011", + }, + { + region: "Oceania", + value: "Niue", + label: { en: "Niue" }, + slug: "NIU", + name: "Niue", + alpha3: "NIU", + alpha2: "NU", + countryCode: "570", + iso: "ISO 3166-2:NU", + subRegion: "Polynesia", + intermediateRegion: "", + regionCode: "009", + subRegionCode: "061", + intermediateRegionCode: "", + }, + { + region: "Oceania", + value: "Norfolk Island", + label: { en: "Norfolk Island" }, + slug: "NFK", + name: "Norfolk Island", + alpha3: "NFK", + alpha2: "NF", + countryCode: "574", + iso: "ISO 3166-2:NF", + subRegion: "Australia and New Zealand", + intermediateRegion: "", + regionCode: "009", + subRegionCode: "053", + intermediateRegionCode: "", + }, + { + region: "Europe", + continent: "Europe", + value: "North Macedonia", + label: { + pt: "Macedônia do Norte", + en: "North Macedonia", + fr: "Macédoine du Nord", + }, + slug: "MKD", + name: "North Macedonia", + alpha3: "MKD", + alpha2: "MK", + countryCode: "807", + iso: "ISO 3166-2:MK", + subRegion: "Southern Europe", + intermediateRegion: "", + regionCode: "150", + subRegionCode: "039", + intermediateRegionCode: "", + }, + { + region: "Oceania", + value: "Northern Mariana Islands", + label: { en: "Northern Mariana Islands" }, + slug: "MNP", + name: "Northern Mariana Islands", + alpha3: "MNP", + alpha2: "MP", + countryCode: "580", + iso: "ISO 3166-2:MP", + subRegion: "Micronesia", + intermediateRegion: "", + regionCode: "009", + subRegionCode: "057", + intermediateRegionCode: "", + }, + { + region: "Europe", + continent: "Europe", + value: "Norway", + label: { pt: "Noruega", en: "Norway", fr: "Norvège" }, + slug: "NOR", + name: "Norway", + alpha3: "NOR", + alpha2: "NO", + countryCode: "578", + iso: "ISO 3166-2:NO", + subRegion: "Northern Europe", + intermediateRegion: "", + regionCode: "150", + subRegionCode: "154", + intermediateRegionCode: "", + }, + { + region: "Asia", + continent: "Asia", + value: "Oman", + label: { pt: "Omã", en: "Oman", fr: "Oman" }, + slug: "OMN", + name: "Oman", + alpha3: "OMN", + alpha2: "OM", + countryCode: "512", + iso: "ISO 3166-2:OM", + subRegion: "Western Asia", + intermediateRegion: "", + regionCode: "142", + subRegionCode: "145", + intermediateRegionCode: "", + }, + { + region: "Asia", + continent: "Asia", + value: "Pakistan", + label: { pt: "Paquistão", en: "Pakistan", fr: "Pakistan" }, + slug: "PAK", + name: "Pakistan", + alpha3: "PAK", + alpha2: "PK", + countryCode: "586", + iso: "ISO 3166-2:PK", + subRegion: "Southern Asia", + intermediateRegion: "", + regionCode: "142", + subRegionCode: "034", + intermediateRegionCode: "", + }, + { + region: "Oceania", + continent: "Oceania", + value: "Palau", + label: { pt: "Palau", en: "Palau", fr: "Palaos" }, + slug: "PLW", + name: "Palau", + alpha3: "PLW", + alpha2: "PW", + countryCode: "585", + iso: "ISO 3166-2:PW", + subRegion: "Micronesia", + intermediateRegion: "", + regionCode: "009", + subRegionCode: "057", + intermediateRegionCode: "", + }, + { + region: "Asia", + value: "Palestine, State of", + label: { en: "Palestine, State of" }, + slug: "PSE", + name: "Palestine, State of", + alpha3: "PSE", + alpha2: "PS", + countryCode: "275", + iso: "ISO 3166-2:PS", + subRegion: "Western Asia", + intermediateRegion: "", + regionCode: "142", + subRegionCode: "145", + intermediateRegionCode: "", + }, + { + region: "Americas", + continent: "North America", + value: "Panama", + label: { pt: "Panamá", en: "Panama", fr: "Panama" }, + slug: "PAN", + name: "Panama", + alpha3: "PAN", + alpha2: "PA", + countryCode: "591", + iso: "ISO 3166-2:PA", + subRegion: "Latin America and the Caribbean", + intermediateRegion: "Central America", + regionCode: "019", + subRegionCode: "419", + intermediateRegionCode: "013", + }, + { + region: "Oceania", + continent: "Oceania", + value: "Papua New Guinea", + label: { + pt: "Papua-Nova Guiné", + en: "Papua New Guinea", + fr: "Papouasie-Nouvelle-Guinée", + }, + slug: "PNG", + name: "Papua New Guinea", + alpha3: "PNG", + alpha2: "PG", + countryCode: "598", + iso: "ISO 3166-2:PG", + subRegion: "Melanesia", + intermediateRegion: "", + regionCode: "009", + subRegionCode: "054", + intermediateRegionCode: "", + }, + { + region: "Americas", + continent: "South America", + value: "Paraguay", + label: { pt: "Paraguai", en: "Paraguay", fr: "Paraguay" }, + slug: "PRY", + name: "Paraguay", + alpha3: "PRY", + alpha2: "PY", + countryCode: "600", + iso: "ISO 3166-2:PY", + subRegion: "Latin America and the Caribbean", + intermediateRegion: "South America", + regionCode: "019", + subRegionCode: "419", + intermediateRegionCode: "005", + }, + { + region: "Americas", + continent: "South America", + value: "Peru", + label: { pt: "Peru", en: "Peru", fr: "Pérou" }, + slug: "PER", + name: "Peru", + alpha3: "PER", + alpha2: "PE", + countryCode: "604", + iso: "ISO 3166-2:PE", + subRegion: "Latin America and the Caribbean", + intermediateRegion: "South America", + regionCode: "019", + subRegionCode: "419", + intermediateRegionCode: "005", + }, + { + region: "Asia", + continent: "Asia", + value: "Philippines", + label: { pt: "Filipinas", en: "Philippines", fr: "Philippines" }, + slug: "PHL", + name: "Philippines", + alpha3: "PHL", + alpha2: "PH", + countryCode: "608", + iso: "ISO 3166-2:PH", + subRegion: "South-eastern Asia", + intermediateRegion: "", + regionCode: "142", + subRegionCode: "035", + intermediateRegionCode: "", + }, + { + region: "Oceania", + value: "Pitcairn", + label: { en: "Pitcairn" }, + slug: "PCN", + name: "Pitcairn", + alpha3: "PCN", + alpha2: "PN", + countryCode: "612", + iso: "ISO 3166-2:PN", + subRegion: "Polynesia", + intermediateRegion: "", + regionCode: "009", + subRegionCode: "061", + intermediateRegionCode: "", + }, + { + region: "Europe", + continent: "Europe", + value: "Poland", + label: { pt: "Polônia", en: "Poland", fr: "Pologne" }, + slug: "POL", + name: "Poland", + alpha3: "POL", + alpha2: "PL", + countryCode: "616", + iso: "ISO 3166-2:PL", + subRegion: "Eastern Europe", + intermediateRegion: "", + regionCode: "150", + subRegionCode: "151", + intermediateRegionCode: "", + }, + { + region: "Europe", + continent: "Europe", + value: "Portugal", + label: { pt: "Portugal", en: "Portugal", fr: "Portugal" }, + slug: "PRT", + name: "Portugal", + alpha3: "PRT", + alpha2: "PT", + countryCode: "620", + iso: "ISO 3166-2:PT", + subRegion: "Southern Europe", + intermediateRegion: "", + regionCode: "150", + subRegionCode: "039", + intermediateRegionCode: "", + }, + { + region: "Americas", + value: "Puerto Rico", + label: { en: "Puerto Rico" }, + slug: "PRI", + name: "Puerto Rico", + alpha3: "PRI", + alpha2: "PR", + countryCode: "630", + iso: "ISO 3166-2:PR", + subRegion: "Latin America and the Caribbean", + intermediateRegion: "Caribbean", + regionCode: "019", + subRegionCode: "419", + intermediateRegionCode: "029", + }, + { + region: "Asia", + continent: "Asia", + value: "Qatar", + label: { pt: "Catar", en: "Qatar", fr: "Qatar" }, + slug: "QAT", + name: "Qatar", + alpha3: "QAT", + alpha2: "QA", + countryCode: "634", + iso: "ISO 3166-2:QA", + subRegion: "Western Asia", + intermediateRegion: "", + regionCode: "142", + subRegionCode: "145", + intermediateRegionCode: "", + }, + { + region: "Africa", + value: "Réunion", + label: { en: "Réunion" }, + slug: "REU", + name: "Réunion", + alpha3: "REU", + alpha2: "RE", + countryCode: "638", + iso: "ISO 3166-2:RE", + subRegion: "Sub-Saharan Africa", + intermediateRegion: "Eastern Africa", + regionCode: "002", + subRegionCode: "202", + intermediateRegionCode: "014", + }, + { + region: "Europe", + continent: "Europe", + value: "Romania", + label: { pt: "Romênia", en: "Romania", fr: "Roumanie" }, + slug: "ROU", + name: "Romania", + alpha3: "ROU", + alpha2: "RO", + countryCode: "642", + iso: "ISO 3166-2:RO", + subRegion: "Eastern Europe", + intermediateRegion: "", + regionCode: "150", + subRegionCode: "151", + intermediateRegionCode: "", + }, + { + region: "Europe", + value: "Russian Federation", + label: { en: "Russian Federation" }, + slug: "RUS", + name: "Russian Federation", + alpha3: "RUS", + alpha2: "RU", + countryCode: "643", + iso: "ISO 3166-2:RU", + subRegion: "Eastern Europe", + intermediateRegion: "", + regionCode: "150", + subRegionCode: "151", + intermediateRegionCode: "", + }, + { + region: "Africa", + continent: "Africa", + value: "Rwanda", + label: { pt: "Ruanda", en: "Rwanda", fr: "Rwanda" }, + slug: "RWA", + name: "Rwanda", + alpha3: "RWA", + alpha2: "RW", + countryCode: "646", + iso: "ISO 3166-2:RW", + subRegion: "Sub-Saharan Africa", + intermediateRegion: "Eastern Africa", + regionCode: "002", + subRegionCode: "202", + intermediateRegionCode: "014", + }, + { + region: "Americas", + value: "Saint Barthélemy", + label: { en: "Saint Barthélemy" }, + slug: "BLM", + name: "Saint Barthélemy", + alpha3: "BLM", + alpha2: "BL", + countryCode: "652", + iso: "ISO 3166-2:BL", + subRegion: "Latin America and the Caribbean", + intermediateRegion: "Caribbean", + regionCode: "019", + subRegionCode: "419", + intermediateRegionCode: "029", + }, + { + region: "Africa", + value: "Saint Helena, Ascension and Tristan da Cunha", + label: { en: "Saint Helena, Ascension and Tristan da Cunha" }, + slug: "SHN", + name: "Saint Helena, Ascension and Tristan da Cunha", + alpha3: "SHN", + alpha2: "SH", + countryCode: "654", + iso: "ISO 3166-2:SH", + subRegion: "Sub-Saharan Africa", + intermediateRegion: "Western Africa", + regionCode: "002", + subRegionCode: "202", + intermediateRegionCode: "011", + }, + { + region: "Americas", + continent: "North America", + value: "Saint Kitts and Nevis", + label: { + pt: "São Cristóvão e Nevis", + en: "Saint Kitts and Nevis", + fr: "Saint-Christophe-et-Niévès", + }, + slug: "KNA", + name: "Saint Kitts and Nevis", + alpha3: "KNA", + alpha2: "KN", + countryCode: "659", + iso: "ISO 3166-2:KN", + subRegion: "Latin America and the Caribbean", + intermediateRegion: "Caribbean", + regionCode: "019", + subRegionCode: "419", + intermediateRegionCode: "029", + }, + { + region: "Americas", + continent: "North America", + value: "Saint Lucia", + label: { pt: "Santa Lúcia", en: "Saint Lucia", fr: "Sainte-Lucie" }, + slug: "LCA", + name: "Saint Lucia", + alpha3: "LCA", + alpha2: "LC", + countryCode: "662", + iso: "ISO 3166-2:LC", + subRegion: "Latin America and the Caribbean", + intermediateRegion: "Caribbean", + regionCode: "019", + subRegionCode: "419", + intermediateRegionCode: "029", + }, + { + region: "Americas", + value: "Saint Martin (French part)", + label: { en: "Saint Martin (French part)" }, + slug: "MAF", + name: "Saint Martin (French part)", + alpha3: "MAF", + alpha2: "MF", + countryCode: "663", + iso: "ISO 3166-2:MF", + subRegion: "Latin America and the Caribbean", + intermediateRegion: "Caribbean", + regionCode: "019", + subRegionCode: "419", + intermediateRegionCode: "029", + }, + { + region: "Americas", + value: "Saint Pierre and Miquelon", + label: { en: "Saint Pierre and Miquelon" }, + slug: "SPM", + name: "Saint Pierre and Miquelon", + alpha3: "SPM", + alpha2: "PM", + countryCode: "666", + iso: "ISO 3166-2:PM", + subRegion: "Northern America", + intermediateRegion: "", + regionCode: "019", + subRegionCode: "021", + intermediateRegionCode: "", + }, + { + region: "Americas", + continent: "North America", + value: "Saint Vincent and the Grenadines", + label: { + pt: "São Vicente e Granadinas", + en: "Saint Vincent and the Grenadines", + fr: "Saint-Vincent-et-les Grenadines", + }, + slug: "VCT", + name: "Saint Vincent and the Grenadines", + alpha3: "VCT", + alpha2: "VC", + countryCode: "670", + iso: "ISO 3166-2:VC", + subRegion: "Latin America and the Caribbean", + intermediateRegion: "Caribbean", + regionCode: "019", + subRegionCode: "419", + intermediateRegionCode: "029", + }, + { + region: "Oceania", + continent: "Oceania", + value: "Samoa", + label: { pt: "Samoa", en: "Samoa", fr: "Samoa" }, + slug: "WSM", + name: "Samoa", + alpha3: "WSM", + alpha2: "WS", + countryCode: "882", + iso: "ISO 3166-2:WS", + subRegion: "Polynesia", + intermediateRegion: "", + regionCode: "009", + subRegionCode: "061", + intermediateRegionCode: "", + }, + { + region: "Europe", + continent: "Europe", + value: "San Marino", + label: { pt: "San Marino", en: "San Marino", fr: "Saint-Marin" }, + slug: "SMR", + name: "San Marino", + alpha3: "SMR", + alpha2: "SM", + countryCode: "674", + iso: "ISO 3166-2:SM", + subRegion: "Southern Europe", + intermediateRegion: "", + regionCode: "150", + subRegionCode: "039", + intermediateRegionCode: "", + }, + { + region: "Africa", + continent: "Africa", + value: "Sao Tome and Principe", + label: { + pt: "São Tomé e Príncipe", + en: "Sao Tome and Principe", + fr: "Sao Tomé-et-Principe", + }, + slug: "STP", + name: "Sao Tome and Principe", + alpha3: "STP", + alpha2: "ST", + countryCode: "678", + iso: "ISO 3166-2:ST", + subRegion: "Sub-Saharan Africa", + intermediateRegion: "Middle Africa", + regionCode: "002", + subRegionCode: "202", + intermediateRegionCode: "017", + }, + { + region: "Asia", + continent: "Asia", + value: "Saudi Arabia", + label: { pt: "Arábia Saudita", en: "Saudi Arabia", fr: "Arabie saoudite" }, + slug: "SAU", + name: "Saudi Arabia", + alpha3: "SAU", + alpha2: "SA", + countryCode: "682", + iso: "ISO 3166-2:SA", + subRegion: "Western Asia", + intermediateRegion: "", + regionCode: "142", + subRegionCode: "145", + intermediateRegionCode: "", + }, + { + region: "Africa", + continent: "Africa", + value: "Senegal", + label: { pt: "Senegal", en: "Senegal", fr: "Sénégal" }, + slug: "SEN", + name: "Senegal", + alpha3: "SEN", + alpha2: "SN", + countryCode: "686", + iso: "ISO 3166-2:SN", + subRegion: "Sub-Saharan Africa", + intermediateRegion: "Western Africa", + regionCode: "002", + subRegionCode: "202", + intermediateRegionCode: "011", + }, + { + region: "Europe", + continent: "Europe", + value: "Serbia", + label: { pt: "Sérvia", en: "Serbia", fr: "Serbie" }, + slug: "SRB", + name: "Serbia", + alpha3: "SRB", + alpha2: "RS", + countryCode: "688", + iso: "ISO 3166-2:RS", + subRegion: "Southern Europe", + intermediateRegion: "", + regionCode: "150", + subRegionCode: "039", + intermediateRegionCode: "", + }, + { + region: "Africa", + continent: "Africa", + value: "Seychelles", + label: { pt: "Seychelles", en: "Seychelles", fr: "Seychelles" }, + slug: "SYC", + name: "Seychelles", + alpha3: "SYC", + alpha2: "SC", + countryCode: "690", + iso: "ISO 3166-2:SC", + subRegion: "Sub-Saharan Africa", + intermediateRegion: "Eastern Africa", + regionCode: "002", + subRegionCode: "202", + intermediateRegionCode: "014", + }, + { + region: "Africa", + continent: "Africa", + value: "Sierra Leone", + label: { pt: "Serra Leoa", en: "Sierra Leone", fr: "Sierra Leone" }, + slug: "SLE", + name: "Sierra Leone", + alpha3: "SLE", + alpha2: "SL", + countryCode: "694", + iso: "ISO 3166-2:SL", + subRegion: "Sub-Saharan Africa", + intermediateRegion: "Western Africa", + regionCode: "002", + subRegionCode: "202", + intermediateRegionCode: "011", + }, + { + region: "Asia", + continent: "Asia", + value: "Singapore", + label: { pt: "Singapura", en: "Singapore", fr: "Singapour" }, + slug: "SGP", + name: "Singapore", + alpha3: "SGP", + alpha2: "SG", + countryCode: "702", + iso: "ISO 3166-2:SG", + subRegion: "South-eastern Asia", + intermediateRegion: "", + regionCode: "142", + subRegionCode: "035", + intermediateRegionCode: "", + }, + { + region: "Americas", + value: "Sint Maarten (Dutch part)", + label: { en: "Sint Maarten (Dutch part)" }, + slug: "SXM", + name: "Sint Maarten (Dutch part)", + alpha3: "SXM", + alpha2: "SX", + countryCode: "534", + iso: "ISO 3166-2:SX", + subRegion: "Latin America and the Caribbean", + intermediateRegion: "Caribbean", + regionCode: "019", + subRegionCode: "419", + intermediateRegionCode: "029", + }, + { + region: "Europe", + continent: "Europe", + value: "Slovakia", + label: { pt: "Eslováquia", en: "Slovakia", fr: "Slovaquie" }, + slug: "SVK", + name: "Slovakia", + alpha3: "SVK", + alpha2: "SK", + countryCode: "703", + iso: "ISO 3166-2:SK", + subRegion: "Eastern Europe", + intermediateRegion: "", + regionCode: "150", + subRegionCode: "151", + intermediateRegionCode: "", + }, + { + region: "Europe", + continent: "Europe", + value: "Slovenia", + label: { pt: "Eslovênia", en: "Slovenia", fr: "Slovénie" }, + slug: "SVN", + name: "Slovenia", + alpha3: "SVN", + alpha2: "SI", + countryCode: "705", + iso: "ISO 3166-2:SI", + subRegion: "Southern Europe", + intermediateRegion: "", + regionCode: "150", + subRegionCode: "039", + intermediateRegionCode: "", + }, + { + region: "Oceania", + continent: "Oceania", + value: "Solomon Islands", + label: { pt: "Ilhas Salomão", en: "Solomon Islands", fr: "Îles Salomon" }, + slug: "SLB", + name: "Solomon Islands", + alpha3: "SLB", + alpha2: "SB", + countryCode: "090", + iso: "ISO 3166-2:SB", + subRegion: "Melanesia", + intermediateRegion: "", + regionCode: "009", + subRegionCode: "054", + intermediateRegionCode: "", + }, + { + region: "Africa", + continent: "Africa", + value: "Somalia", + label: { pt: "Somália", en: "Somalia", fr: "Somalie" }, + slug: "SOM", + name: "Somalia", + alpha3: "SOM", + alpha2: "SO", + countryCode: "706", + iso: "ISO 3166-2:SO", + subRegion: "Sub-Saharan Africa", + intermediateRegion: "Eastern Africa", + regionCode: "002", + subRegionCode: "202", + intermediateRegionCode: "014", + }, + { + region: "Africa", + continent: "Africa", + value: "South Africa", + label: { pt: "África do Sul", en: "South Africa", fr: "Afrique du Sud" }, + slug: "ZAF", + name: "South Africa", + alpha3: "ZAF", + alpha2: "ZA", + countryCode: "710", + iso: "ISO 3166-2:ZA", + subRegion: "Sub-Saharan Africa", + intermediateRegion: "Southern Africa", + regionCode: "002", + subRegionCode: "202", + intermediateRegionCode: "018", + }, + { + region: "Americas", + value: "South Georgia and the South Sandwich Islands", + label: { en: "South Georgia and the South Sandwich Islands" }, + slug: "SGS", + name: "South Georgia and the South Sandwich Islands", + alpha3: "SGS", + alpha2: "GS", + countryCode: "239", + iso: "ISO 3166-2:GS", + subRegion: "Latin America and the Caribbean", + intermediateRegion: "South America", + regionCode: "019", + subRegionCode: "419", + intermediateRegionCode: "005", + }, + { + region: "Africa", + continent: "Africa", + value: "South Sudan", + label: { pt: "Sudão do Sul", en: "South Sudan", fr: "Soudan du Sud" }, + slug: "SSD", + name: "South Sudan", + alpha3: "SSD", + alpha2: "SS", + countryCode: "728", + iso: "ISO 3166-2:SS", + subRegion: "Sub-Saharan Africa", + intermediateRegion: "Eastern Africa", + regionCode: "002", + subRegionCode: "202", + intermediateRegionCode: "014", + }, + { + region: "Europe", + continent: "Europe", + value: "Spain", + label: { pt: "Espanha", en: "Spain", fr: "Espagne" }, + slug: "ESP", + name: "Spain", + alpha3: "ESP", + alpha2: "ES", + countryCode: "724", + iso: "ISO 3166-2:ES", + subRegion: "Southern Europe", + intermediateRegion: "", + regionCode: "150", + subRegionCode: "039", + intermediateRegionCode: "", + }, + { + region: "Asia", + continent: "Asia", + value: "Sri Lanka", + label: { pt: "Sri Lanka", en: "Sri Lanka", fr: "Sri Lanka" }, + slug: "LKA", + name: "Sri Lanka", + alpha3: "LKA", + alpha2: "LK", + countryCode: "144", + iso: "ISO 3166-2:LK", + subRegion: "Southern Asia", + intermediateRegion: "", + regionCode: "142", + subRegionCode: "034", + intermediateRegionCode: "", + }, + { + region: "Africa", + continent: "Africa", + value: "Sudan", + label: { pt: "Sudão", en: "Sudan", fr: "Soudan" }, + slug: "SDN", + name: "Sudan", + alpha3: "SDN", + alpha2: "SD", + countryCode: "729", + iso: "ISO 3166-2:SD", + subRegion: "Northern Africa", + intermediateRegion: "", + regionCode: "002", + subRegionCode: "015", + intermediateRegionCode: "", + }, + { + region: "Americas", + continent: "South America", + value: "Suriname", + label: { pt: "Suriname", en: "Suriname", fr: "Suriname" }, + slug: "SUR", + name: "Suriname", + alpha3: "SUR", + alpha2: "SR", + countryCode: "740", + iso: "ISO 3166-2:SR", + subRegion: "Latin America and the Caribbean", + intermediateRegion: "South America", + regionCode: "019", + subRegionCode: "419", + intermediateRegionCode: "005", + }, + { + region: "Europe", + value: "Svalbard and Jan Mayen", + label: { en: "Svalbard and Jan Mayen" }, + slug: "SJM", + name: "Svalbard and Jan Mayen", + alpha3: "SJM", + alpha2: "SJ", + countryCode: "744", + iso: "ISO 3166-2:SJ", + subRegion: "Northern Europe", + intermediateRegion: "", + regionCode: "150", + subRegionCode: "154", + intermediateRegionCode: "", + }, + { + region: "Europe", + continent: "Europe", + value: "Sweden", + label: { pt: "Suécia", en: "Sweden", fr: "Suède" }, + slug: "SWE", + name: "Sweden", + alpha3: "SWE", + alpha2: "SE", + countryCode: "752", + iso: "ISO 3166-2:SE", + subRegion: "Northern Europe", + intermediateRegion: "", + regionCode: "150", + subRegionCode: "154", + intermediateRegionCode: "", + }, + { + region: "Europe", + continent: "Europe", + value: "Switzerland", + label: { pt: "Suíça", en: "Switzerland", fr: "Suisse" }, + slug: "CHE", + name: "Switzerland", + alpha3: "CHE", + alpha2: "CH", + countryCode: "756", + iso: "ISO 3166-2:CH", + subRegion: "Western Europe", + intermediateRegion: "", + regionCode: "150", + subRegionCode: "155", + intermediateRegionCode: "", + }, + { + region: "Asia", + value: "Syrian Arab Republic", + label: { en: "Syrian Arab Republic" }, + slug: "SYR", + name: "Syrian Arab Republic", + alpha3: "SYR", + alpha2: "SY", + countryCode: "760", + iso: "ISO 3166-2:SY", + subRegion: "Western Asia", + intermediateRegion: "", + regionCode: "142", + subRegionCode: "145", + intermediateRegionCode: "", + }, + { + region: "Asia", + value: "Taiwan, Province of China", + label: { en: "Taiwan, Province of China" }, + slug: "TWN", + name: "Taiwan, Province of China", + alpha3: "TWN", + alpha2: "TW", + countryCode: "158", + iso: "ISO 3166-2:TW", + subRegion: "Eastern Asia", + intermediateRegion: "", + regionCode: "142", + subRegionCode: "030", + intermediateRegionCode: "", + }, + { + region: "Asia", + continent: "Asia", + value: "Tajikistan", + label: { pt: "Tajiquistão", en: "Tajikistan", fr: "Tadjikistan" }, + slug: "TJK", + name: "Tajikistan", + alpha3: "TJK", + alpha2: "TJ", + countryCode: "762", + iso: "ISO 3166-2:TJ", + subRegion: "Central Asia", + intermediateRegion: "", + regionCode: "142", + subRegionCode: "143", + intermediateRegionCode: "", + }, + { + region: "Africa", + value: "Tanzania, United Republic of", + label: { en: "Tanzania, United Republic of" }, + slug: "TZA", + name: "Tanzania, United Republic of", + alpha3: "TZA", + alpha2: "TZ", + countryCode: "834", + iso: "ISO 3166-2:TZ", + subRegion: "Sub-Saharan Africa", + intermediateRegion: "Eastern Africa", + regionCode: "002", + subRegionCode: "202", + intermediateRegionCode: "014", + }, + { + region: "Asia", + continent: "Asia", + value: "Thailand", + label: { pt: "Tailândia", en: "Thailand", fr: "Thaïlande" }, + slug: "THA", + name: "Thailand", + alpha3: "THA", + alpha2: "TH", + countryCode: "764", + iso: "ISO 3166-2:TH", + subRegion: "South-eastern Asia", + intermediateRegion: "", + regionCode: "142", + subRegionCode: "035", + intermediateRegionCode: "", + }, + { + region: "Asia", + continent: "Asia", + value: "Timor-Leste", + label: { pt: "Timor-Leste", en: "Timor-Leste", fr: "Timor oriental" }, + slug: "TLS", + name: "Timor-Leste", + alpha3: "TLS", + alpha2: "TL", + countryCode: "626", + iso: "ISO 3166-2:TL", + subRegion: "South-eastern Asia", + intermediateRegion: "", + regionCode: "142", + subRegionCode: "035", + intermediateRegionCode: "", + }, + { + region: "Africa", + continent: "Africa", + value: "Togo", + label: { pt: "Togo", en: "Togo", fr: "Togo" }, + slug: "TGO", + name: "Togo", + alpha3: "TGO", + alpha2: "TG", + countryCode: "768", + iso: "ISO 3166-2:TG", + subRegion: "Sub-Saharan Africa", + intermediateRegion: "Western Africa", + regionCode: "002", + subRegionCode: "202", + intermediateRegionCode: "011", + }, + { + region: "Oceania", + value: "Tokelau", + label: { en: "Tokelau" }, + slug: "TKL", + name: "Tokelau", + alpha3: "TKL", + alpha2: "TK", + countryCode: "772", + iso: "ISO 3166-2:TK", + subRegion: "Polynesia", + intermediateRegion: "", + regionCode: "009", + subRegionCode: "061", + intermediateRegionCode: "", + }, + { + region: "Oceania", + continent: "Oceania", + value: "Tonga", + label: { pt: "Tonga", en: "Tonga", fr: "Tonga" }, + slug: "TON", + name: "Tonga", + alpha3: "TON", + alpha2: "TO", + countryCode: "776", + iso: "ISO 3166-2:TO", + subRegion: "Polynesia", + intermediateRegion: "", + regionCode: "009", + subRegionCode: "061", + intermediateRegionCode: "", + }, + { + region: "Americas", + continent: "North America", + value: "Trinidad and Tobago", + label: { + pt: "Trinidad e Tobago", + en: "Trinidad and Tobago", + fr: "Trinidad-et-Tobago", + }, + slug: "TTO", + name: "Trinidad and Tobago", + alpha3: "TTO", + alpha2: "TT", + countryCode: "780", + iso: "ISO 3166-2:TT", + subRegion: "Latin America and the Caribbean", + intermediateRegion: "Caribbean", + regionCode: "019", + subRegionCode: "419", + intermediateRegionCode: "029", + }, + { + region: "Africa", + continent: "Africa", + value: "Tunisia", + label: { pt: "Tunísia", en: "Tunisia", fr: "Tunisie" }, + slug: "TUN", + name: "Tunisia", + alpha3: "TUN", + alpha2: "TN", + countryCode: "788", + iso: "ISO 3166-2:TN", + subRegion: "Northern Africa", + intermediateRegion: "", + regionCode: "002", + subRegionCode: "015", + intermediateRegionCode: "", + }, + { + region: "Asia", + continent: "Asia", + value: "Turkey", + label: { pt: "Turquia", en: "Turkey", fr: "Turquie" }, + slug: "TUR", + name: "Turkey", + alpha3: "TUR", + alpha2: "TR", + countryCode: "792", + iso: "ISO 3166-2:TR", + subRegion: "Western Asia", + intermediateRegion: "", + regionCode: "142", + subRegionCode: "145", + intermediateRegionCode: "", + }, + { + region: "Asia", + continent: "Asia", + value: "Turkmenistan", + label: { pt: "Turcomenistão", en: "Turkmenistan", fr: "Turkménistan" }, + slug: "TKM", + name: "Turkmenistan", + alpha3: "TKM", + alpha2: "TM", + countryCode: "795", + iso: "ISO 3166-2:TM", + subRegion: "Central Asia", + intermediateRegion: "", + regionCode: "142", + subRegionCode: "143", + intermediateRegionCode: "", + }, + { + region: "Americas", + value: "Turks and Caicos Islands", + label: { en: "Turks and Caicos Islands" }, + slug: "TCA", + name: "Turks and Caicos Islands", + alpha3: "TCA", + alpha2: "TC", + countryCode: "796", + iso: "ISO 3166-2:TC", + subRegion: "Latin America and the Caribbean", + intermediateRegion: "Caribbean", + regionCode: "019", + subRegionCode: "419", + intermediateRegionCode: "029", + }, + { + region: "Oceania", + continent: "Oceania", + value: "Tuvalu", + label: { pt: "Tuvalu", en: "Tuvalu", fr: "Tuvalu" }, + slug: "TUV", + name: "Tuvalu", + alpha3: "TUV", + alpha2: "TV", + countryCode: "798", + iso: "ISO 3166-2:TV", + subRegion: "Polynesia", + intermediateRegion: "", + regionCode: "009", + subRegionCode: "061", + intermediateRegionCode: "", + }, + { + region: "Africa", + continent: "Africa", + value: "Uganda", + label: { pt: "Uganda", en: "Uganda", fr: "Ouganda" }, + slug: "UGA", + name: "Uganda", + alpha3: "UGA", + alpha2: "UG", + countryCode: "800", + iso: "ISO 3166-2:UG", + subRegion: "Sub-Saharan Africa", + intermediateRegion: "Eastern Africa", + regionCode: "002", + subRegionCode: "202", + intermediateRegionCode: "014", + }, + { + region: "Europe", + continent: "Europe", + value: "Ukraine", + label: { pt: "Ucrânia", en: "Ukraine", fr: "Ukraine" }, + slug: "UKR", + name: "Ukraine", + alpha3: "UKR", + alpha2: "UA", + countryCode: "804", + iso: "ISO 3166-2:UA", + subRegion: "Eastern Europe", + intermediateRegion: "", + regionCode: "150", + subRegionCode: "151", + intermediateRegionCode: "", + }, + { + region: "Asia", + continent: "Asia", + value: "United Arab Emirates", + label: { + pt: "Emirados Árabes Unidos", + en: "United Arab Emirates", + fr: "Émirats arabes unis", + }, + slug: "ARE", + name: "United Arab Emirates", + alpha3: "ARE", + alpha2: "AE", + countryCode: "784", + iso: "ISO 3166-2:AE", + subRegion: "Western Asia", + intermediateRegion: "", + regionCode: "142", + subRegionCode: "145", + intermediateRegionCode: "", + }, + { + region: "Europe", + value: "United Kingdom of Great Britain and Northern Ireland", + label: { en: "United Kingdom of Great Britain and Northern Ireland" }, + slug: "GBR", + name: "United Kingdom of Great Britain and Northern Ireland", + alpha3: "GBR", + alpha2: "GB", + countryCode: "826", + iso: "ISO 3166-2:GB", + subRegion: "Northern Europe", + intermediateRegion: "", + regionCode: "150", + subRegionCode: "154", + intermediateRegionCode: "", + }, + { + region: "Americas", + value: "United States of America", + label: { en: "United States of America" }, + slug: "USA", + name: "United States of America", + alpha3: "USA", + alpha2: "US", + countryCode: "840", + iso: "ISO 3166-2:US", + subRegion: "Northern America", + intermediateRegion: "", + regionCode: "019", + subRegionCode: "021", + intermediateRegionCode: "", + }, + { + region: "Oceania", + value: "United States Minor Outlying Islands", + label: { en: "United States Minor Outlying Islands" }, + slug: "UMI", + name: "United States Minor Outlying Islands", + alpha3: "UMI", + alpha2: "UM", + countryCode: "581", + iso: "ISO 3166-2:UM", + subRegion: "Micronesia", + intermediateRegion: "", + regionCode: "009", + subRegionCode: "057", + intermediateRegionCode: "", + }, + { + region: "Americas", + continent: "South America", + value: "Uruguay", + label: { pt: "Uruguai", en: "Uruguay", fr: "Uruguay" }, + slug: "URY", + name: "Uruguay", + alpha3: "URY", + alpha2: "UY", + countryCode: "858", + iso: "ISO 3166-2:UY", + subRegion: "Latin America and the Caribbean", + intermediateRegion: "South America", + regionCode: "019", + subRegionCode: "419", + intermediateRegionCode: "005", + }, + { + region: "Asia", + continent: "Asia", + value: "Uzbekistan", + label: { pt: "Uzbequistão", en: "Uzbekistan", fr: "Ouzbékistan" }, + slug: "UZB", + name: "Uzbekistan", + alpha3: "UZB", + alpha2: "UZ", + countryCode: "860", + iso: "ISO 3166-2:UZ", + subRegion: "Central Asia", + intermediateRegion: "", + regionCode: "142", + subRegionCode: "143", + intermediateRegionCode: "", + }, + { + region: "Oceania", + continent: "Oceania", + value: "Vanuatu", + label: { pt: "Vanuatu", en: "Vanuatu", fr: "Vanuatu" }, + slug: "VUT", + name: "Vanuatu", + alpha3: "VUT", + alpha2: "VU", + countryCode: "548", + iso: "ISO 3166-2:VU", + subRegion: "Melanesia", + intermediateRegion: "", + regionCode: "009", + subRegionCode: "054", + intermediateRegionCode: "", + }, + { + region: "Americas", + value: "Venezuela (Bolivarian Republic of)", + label: { en: "Venezuela (Bolivarian Republic of)" }, + slug: "VEN", + name: "Venezuela (Bolivarian Republic of)", + alpha3: "VEN", + alpha2: "VE", + countryCode: "862", + iso: "ISO 3166-2:VE", + subRegion: "Latin America and the Caribbean", + intermediateRegion: "South America", + regionCode: "019", + subRegionCode: "419", + intermediateRegionCode: "005", + }, + { + region: "Asia", + value: "Viet Nam", + label: { en: "Viet Nam" }, + slug: "VNM", + name: "Viet Nam", + alpha3: "VNM", + alpha2: "VN", + countryCode: "704", + iso: "ISO 3166-2:VN", + subRegion: "South-eastern Asia", + intermediateRegion: "", + regionCode: "142", + subRegionCode: "035", + intermediateRegionCode: "", + }, + { + region: "Americas", + value: "Virgin Islands (British)", + label: { en: "Virgin Islands (British)" }, + slug: "VGB", + name: "Virgin Islands (British)", + alpha3: "VGB", + alpha2: "VG", + countryCode: "092", + iso: "ISO 3166-2:VG", + subRegion: "Latin America and the Caribbean", + intermediateRegion: "Caribbean", + regionCode: "019", + subRegionCode: "419", + intermediateRegionCode: "029", + }, + { + region: "Americas", + value: "Virgin Islands (U.S.)", + label: { en: "Virgin Islands (U.S.)" }, + slug: "VIR", + name: "Virgin Islands (U.S.)", + alpha3: "VIR", + alpha2: "VI", + countryCode: "850", + iso: "ISO 3166-2:VI", + subRegion: "Latin America and the Caribbean", + intermediateRegion: "Caribbean", + regionCode: "019", + subRegionCode: "419", + intermediateRegionCode: "029", + }, + { + region: "Oceania", + value: "Wallis and Futuna", + label: { en: "Wallis and Futuna" }, + slug: "WLF", + name: "Wallis and Futuna", + alpha3: "WLF", + alpha2: "WF", + countryCode: "876", + iso: "ISO 3166-2:WF", + subRegion: "Polynesia", + intermediateRegion: "", + regionCode: "009", + subRegionCode: "061", + intermediateRegionCode: "", + }, + { + region: "Africa", + value: "Western Sahara", + label: { en: "Western Sahara" }, + slug: "ESH", + name: "Western Sahara", + alpha3: "ESH", + alpha2: "EH", + countryCode: "732", + iso: "ISO 3166-2:EH", + subRegion: "Northern Africa", + intermediateRegion: "", + regionCode: "002", + subRegionCode: "015", + intermediateRegionCode: "", + }, + { + region: "Asia", + continent: "Asia", + value: "Yemen", + label: { pt: "Iêmen", en: "Yemen", fr: "Yémen" }, + slug: "YEM", + name: "Yemen", + alpha3: "YEM", + alpha2: "YE", + countryCode: "887", + iso: "ISO 3166-2:YE", + subRegion: "Western Asia", + intermediateRegion: "", + regionCode: "142", + subRegionCode: "145", + intermediateRegionCode: "", + }, + { + region: "Africa", + continent: "Africa", + value: "Zambia", + label: { pt: "Zâmbia", en: "Zambia", fr: "Zambie" }, + slug: "ZMB", + name: "Zambia", + alpha3: "ZMB", + alpha2: "ZM", + countryCode: "894", + iso: "ISO 3166-2:ZM", + subRegion: "Sub-Saharan Africa", + intermediateRegion: "Eastern Africa", + regionCode: "002", + subRegionCode: "202", + intermediateRegionCode: "014", + }, + { + region: "Africa", + continent: "Africa", + value: "Zimbabwe", + label: { pt: "Zimbábue", en: "Zimbabwe", fr: "Zimbabwe" }, + slug: "ZWE", + name: "Zimbabwe", + alpha3: "ZWE", + alpha2: "ZW", + countryCode: "716", + iso: "ISO 3166-2:ZW", + subRegion: "Sub-Saharan Africa", + intermediateRegion: "Eastern Africa", + regionCode: "002", + subRegionCode: "202", + intermediateRegionCode: "014", + }, +]; + +export const countriesByContinent = (continent) => { + return countries + .filter((country) => continent === country.continent) + .map((country) => ({ + value: country.alpha3, + label: country.label, + })); +}; + +export const allCountries = countries.map((country) => ({ + value: country.alpha3, + label: country.label, +})); diff --git a/apps/centralcms/src/payload/utilities/checkUserRoles.ts b/apps/centralcms/src/payload/utilities/checkUserRoles.ts new file mode 100644 index 000000000..aeb6dcbc7 --- /dev/null +++ b/apps/centralcms/src/payload/utilities/checkUserRoles.ts @@ -0,0 +1,19 @@ +import type { User } from "@/payload-types"; + +export const checkUserRoles = ( + allRoles: User["roles"] = [], + user: any = undefined, +): boolean => { + if (user) { + if ( + allRoles.some((role) => { + return user?.roles?.some((individualRole: string) => { + return individualRole === role; + }); + }) + ) + return true; + } + + return false; +}; diff --git a/apps/centralcms/src/payload/utilities/findAndFormatPagePath.ts b/apps/centralcms/src/payload/utilities/findAndFormatPagePath.ts new file mode 100644 index 000000000..d6ccca9e5 --- /dev/null +++ b/apps/centralcms/src/payload/utilities/findAndFormatPagePath.ts @@ -0,0 +1,22 @@ +import formatPagePath from "./formatPagePath"; + +async function findAndFormatPagePath(payload, slug) { + const collection = "pages"; + const options = { + collection, + where: { + slug: { + equals: slug, + }, + }, + limit: 0, + }; + const { docs } = await payload.find(options); + + if (docs?.length) { + return formatPagePath(collection, docs[0]); + } + return undefined; +} + +export default findAndFormatPagePath; diff --git a/apps/centralcms/src/payload/utilities/formatDraftUrl.ts b/apps/centralcms/src/payload/utilities/formatDraftUrl.ts new file mode 100644 index 000000000..ad12da6e2 --- /dev/null +++ b/apps/centralcms/src/payload/utilities/formatDraftUrl.ts @@ -0,0 +1,17 @@ +import formatPagePath from "./formatPagePath"; +import { Document } from "payload"; + +const payloadUrl = + process.env.PAYLOAD_PUBLIC_APP_URL || process.env.NEXT_PUBLIC_APP_URL; + +function formatDraftUrl(collection: string, doc: Document, options: any) { + const pagePath = formatPagePath(collection, doc); + if (pagePath) { + const slug = pagePath; + const url = new URL(`/api/draft?slug=${slug}`, payloadUrl); + return url.href; + } + return null; +} + +export default formatDraftUrl; diff --git a/apps/centralcms/src/payload/utilities/formatPagePath.ts b/apps/centralcms/src/payload/utilities/formatPagePath.ts new file mode 100644 index 000000000..f25331e4a --- /dev/null +++ b/apps/centralcms/src/payload/utilities/formatPagePath.ts @@ -0,0 +1,45 @@ +interface BreadCrumbs { + doc: string; + url: string; + label: string; + id: string; +} +interface Doc { + slug: string; + parent?: Doc; + breadcrumbs: BreadCrumbs[]; +} +function fullSlugFromParents(doc: Doc): string { + const { slug, parent } = doc; + if (!parent) { + return slug; + } + return `${fullSlugFromParents(parent)}/${slug}`; +} + +function fullSlugFromBreadcrumbs(doc: Doc) { + const fullSlug = + doc?.breadcrumbs?.[doc?.breadcrumbs.length - 1]?.url?.slice(1); + return fullSlug; +} + +function formatPagePath(collection: string, doc: Doc) { + let pageSlug = fullSlugFromBreadcrumbs(doc) || fullSlugFromParents(doc) || ""; + if (pageSlug === "index") { + pageSlug = ""; + } + let prefix = ""; + if (collection) { + switch (collection) { + case "pages": + // Empty prefix for pages + break; + default: + prefix = `/${collection}`; + } + } + + return `${prefix}/${pageSlug}`; +} + +export default formatPagePath; diff --git a/apps/centralcms/src/payload/utilities/isSuperAdmin.ts b/apps/centralcms/src/payload/utilities/isSuperAdmin.ts new file mode 100644 index 000000000..d12b9ccc0 --- /dev/null +++ b/apps/centralcms/src/payload/utilities/isSuperAdmin.ts @@ -0,0 +1,5 @@ +import { User } from "@/payload-types"; +import { checkUserRoles } from "./checkUserRoles"; + +export const isSuperAdmin = (user: User | null): boolean => + checkUserRoles(["super-admin"], user); diff --git a/apps/centralcms/src/payload/utilities/mapLinkTypeToHref.ts b/apps/centralcms/src/payload/utilities/mapLinkTypeToHref.ts new file mode 100644 index 000000000..ea91afa80 --- /dev/null +++ b/apps/centralcms/src/payload/utilities/mapLinkTypeToHref.ts @@ -0,0 +1,31 @@ +import formatPagePath from "./formatPagePath"; + +export interface NodeType { + type: string; + children?: NodeType[] | null; + doc: any; + linkType?: "custom" | "internal"; + url?: string; + href?: string; +} + +const mapLinkTypeToHref = ({ + doc: linkDoc, + linkType, + url, +}: NodeType): string | null | undefined => { + // default to `null` for serialization. + let href: string | null | undefined = null; + if (linkType === "internal") { + const { relationTo: collection, value: doc } = linkDoc; + if (doc?.slug) { + href = formatPagePath(collection, doc); + } + } else { + // custom link + href = url; + } + return href; +}; + +export default mapLinkTypeToHref; diff --git a/apps/centralcms/src/payload/utilities/nestCollectionUnderPage.ts b/apps/centralcms/src/payload/utilities/nestCollectionUnderPage.ts new file mode 100644 index 000000000..52bac0302 --- /dev/null +++ b/apps/centralcms/src/payload/utilities/nestCollectionUnderPage.ts @@ -0,0 +1,21 @@ +import findAndFormatPagePath from "./findAndFormatPagePath"; + +function nestCollectionUnderPage(pageSlug) { + return async function nestCollectionItemUnderParentPage({ + doc, + req: { payload }, + }) { + let href: string | null = null; + try { + const pagePath = await findAndFormatPagePath(payload, pageSlug); + if (pagePath) { + href = `${pagePath}/${doc.slug}`; + } + } catch (error) { + // Handle Errors + } + return { ...doc, link: { href } }; + }; +} + +export default nestCollectionUnderPage; diff --git a/apps/centralcms/src/payload/utilities/typeGuards.ts b/apps/centralcms/src/payload/utilities/typeGuards.ts new file mode 100644 index 000000000..7e8621c68 --- /dev/null +++ b/apps/centralcms/src/payload/utilities/typeGuards.ts @@ -0,0 +1,5 @@ +import { Tenant } from "@/payload-types"; + +export function isTenant(obj: any): obj is Tenant { + return obj && typeof obj === "object" && "id" in obj; +} diff --git a/apps/centralcms/tsconfig.json b/apps/centralcms/tsconfig.json new file mode 100644 index 000000000..88b73a456 --- /dev/null +++ b/apps/centralcms/tsconfig.json @@ -0,0 +1,35 @@ +{ + "compilerOptions": { + "baseUrl": ".", + "lib": ["dom", "dom.iterable", "esnext"], + "allowJs": true, + "skipLibCheck": true, + "strict": false, + "noEmit": true, + "esModuleInterop": true, + "module": "esnext", + "moduleResolution": "Bundler", + "resolveJsonModule": true, + "isolatedModules": true, + "jsx": "preserve", + "incremental": true, + "plugins": [ + { + "name": "next" + } + ], + "paths": { + "@/*": ["./src/*"], + "@payload-config": ["./src/payload.config.ts"], + "@payload-validations": [ + "./node_modules/payload/dist/fields/validations/*" + ], + "node_modules/*": ["./node_modules/*"], + "@/custom-fields/*": ["./src/payload/fields/*"] + }, + "target": "ES2017", + "strictNullChecks": true + }, + "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", ".next/types/**/*.ts"], + "exclude": ["node_modules"] +} diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 43686d862..10b0d7683 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -6,562 +6,70 @@ settings: catalogs: default: - '@actions/exec': - specifier: ^1.1.1 - version: 1.1.1 - '@apollo/client': - specifier: ^3.11.7 - version: 3.11.8 - '@aws-sdk/client-s3': - specifier: ^3.645.0 - version: 3.645.0 - '@aws-sdk/lib-storage': - specifier: ^3.645.0 - version: 3.645.0 - '@babel/core': - specifier: ^7.25.2 - version: 7.25.2 - '@babel/eslint-parser': - specifier: ^7.25.1 - version: 7.25.1 - '@babel/preset-env': - specifier: ^7.25.4 - version: 7.25.4 - '@babel/preset-react': - specifier: ^7.24.7 - version: 7.24.7 - '@babel/register': - specifier: ^7.24.6 - version: 7.24.6 - '@babel/runtime': - specifier: ^7.25.0 - version: 7.25.6 - '@changesets/changelog-github': - specifier: ^0.5.0 - version: 0.5.0 - '@changesets/cli': - specifier: ^2.27.8 - version: 2.27.8 - '@commons-ui/core': - specifier: ^0.1.0 - version: 0.1.0 - '@emotion/cache': - specifier: ^11.13.1 - version: 11.13.1 - '@emotion/react': - specifier: ^11.13.3 - version: 11.13.3 - '@emotion/server': - specifier: ^11.11.0 - version: 11.11.0 - '@emotion/styled': - specifier: ^11.13.0 - version: 11.13.0 - '@googlemaps/react-wrapper': - specifier: ^1.1.42 - version: 1.1.42 - '@material-ui/codemod': - specifier: ^4.5.1 - version: 4.5.1 - '@mdx-js/loader': - specifier: ^3.0.1 - version: 3.0.1 - '@mdx-js/react': - specifier: ^3.0.1 - version: 3.0.1 - '@mui/icons-material': - specifier: ^5.16.6 - version: 5.16.6 - '@mui/material': - specifier: ^5.16.6 - version: 5.16.6 - '@mui/material-nextjs': - specifier: ^5.16.1 - version: 5.16.6 '@mui/utils': specifier: ^5.16.6 version: 5.16.6 - '@mui/x-date-pickers': - specifier: ^7.15.0 - version: 7.15.0 - '@mui/x-tree-view': - specifier: ^7.15.0 - version: 7.15.0 - '@next/env': - specifier: ^14.2.8 - version: 14.2.8 - '@next/eslint-plugin-next': - specifier: ^14.2.8 - version: 14.2.8 - '@next/mdx': - specifier: ^14.2.8 - version: 14.2.8 - '@next/third-parties': - specifier: ^14.2.8 - version: 14.2.8 - '@nivo/core': - specifier: ^0.84.0 - version: 0.84.0 - '@nivo/pie': - specifier: ^0.84.0 - version: 0.84.0 - '@nivo/tooltip': - specifier: ^0.84.0 - version: 0.84.0 - '@nivo/waffle': - specifier: ^0.84.0 - version: 0.84.0 - '@payloadcms/bundler-webpack': - specifier: ^1.0.7 - version: 1.0.7 - '@payloadcms/db-mongodb': - specifier: ^1.7.2 - version: 1.7.2 - '@payloadcms/live-preview': - specifier: ^0.2.2 - version: 0.2.2 - '@payloadcms/live-preview-react': - specifier: ^0.2.0 - version: 0.2.0 - '@payloadcms/plugin-cloud-storage': - specifier: ^1.1.3 - version: 1.1.3 - '@payloadcms/plugin-nested-docs': - specifier: ^1.0.12 - version: 1.0.12 - '@payloadcms/plugin-sentry': - specifier: ^0.0.6 - version: 0.0.6 - '@payloadcms/plugin-seo': - specifier: ^2.3.2 - version: 2.3.2 - '@payloadcms/richtext-slate': - specifier: ^1.5.2 - version: 1.5.2 - '@playwright/test': - specifier: ^1.46.1 - version: 1.46.1 - '@react-spring/web': - specifier: ^9.7.4 - version: 9.7.4 - '@reactour/tour': - specifier: ^3.7.0 - version: 3.7.0 - '@sendgrid/mail': - specifier: ^8.1.3 - version: 8.1.3 - '@sentry/nextjs': - specifier: ^8.28.0 - version: 8.28.0 - '@storybook/addon-essentials': - specifier: ^8.2.9 - version: 8.2.9 - '@storybook/addon-interactions': - specifier: ^8.2.9 - version: 8.2.9 - '@storybook/addon-links': - specifier: ^8.2.9 - version: 8.2.9 - '@storybook/blocks': - specifier: ^8.2.9 - version: 8.2.9 - '@storybook/cli': - specifier: ^8.2.9 - version: 8.2.9 - '@storybook/nextjs': - specifier: ^8.2.9 - version: 8.2.9 - '@storybook/react': - specifier: ^8.2.9 - version: 8.2.9 - '@storybook/test': - specifier: ^8.2.9 - version: 8.2.9 '@svgr/webpack': specifier: ^8.1.0 version: 8.1.0 - '@swc/core': - specifier: ^1.7.23 - version: 1.7.23 - '@testing-library/jest-dom': - specifier: ^6.5.0 - version: 6.5.0 - '@testing-library/react': - specifier: ^16.0.1 - version: 16.0.1 - '@types/express': - specifier: ^4.17.21 - version: 4.17.21 - '@types/jest': - specifier: ^29.5.12 - version: 29.5.12 - '@types/mdx': - specifier: ^2.0.13 - version: 2.0.13 + typescript: + specifier: ^5.5.4 + version: 5.5.4 + payload-3: + '@payloadcms/db-mongodb': + specifier: 3.0.0-beta.102 + version: 3.0.0-beta.102 + '@payloadcms/db-postgres': + specifier: 3.0.0-beta.102 + version: 3.0.0-beta.102 + '@payloadcms/next': + specifier: 3.0.0-beta.102 + version: 3.0.0-beta.102 + '@payloadcms/plugin-cloud': + specifier: 3.0.0-beta.102 + version: 3.0.0-beta.102 + '@payloadcms/plugin-seo': + specifier: 3.0.0-beta.102 + version: 3.0.0-beta.102 + '@payloadcms/richtext-lexical': + specifier: 3.0.0-beta.102 + version: 3.0.0-beta.102 + '@payloadcms/ui': + specifier: 3.0.0-beta.102 + version: 3.0.0-beta.102 '@types/node': - specifier: ^20.14.14 - version: 20.14.14 - '@types/nodemailer-sendgrid': - specifier: ^1.0.3 - version: 1.0.3 + specifier: ^22.5.4 + version: 22.5.4 '@types/react': - specifier: ^18.3.5 - version: 18.3.5 + specifier: npm:types-react@19.0.0-rc.0 + version: 19.0.0-rc.0 '@types/react-dom': - specifier: ^18.3.0 - version: 18.3.0 - '@types/react-syntax-highlighter': - specifier: ^15.5.13 - version: 15.5.13 - ace-builds: - specifier: ^1.36.2 - version: 1.36.2 - airtable: - specifier: ^0.12.2 - version: 0.12.2 - apollo-link-rest: - specifier: ^0.9.0 - version: 0.9.0 - aws-sdk: - specifier: ^2.1689.0 - version: 2.1689.0 - babel-jest: - specifier: ^29.7.0 - version: 29.7.0 - babel-loader: - specifier: ^9.1.3 - version: 9.1.3 - babel-plugin-transform-imports: - specifier: ^2.0.0 - version: 2.0.0 - camelcase-keys: - specifier: ^9.1.3 - version: 9.1.3 - clsx: - specifier: ^2.1.1 - version: 2.1.1 - crawler-user-agents: - specifier: ^1.0.146 - version: 1.0.146 - css-loader: - specifier: ^7.1.2 - version: 7.1.2 - d3-format: - specifier: ^3.1.0 - version: 3.1.0 - date-fns: - specifier: ^3.6.0 - version: 3.6.0 - deepmerge: - specifier: ^4.3.1 - version: 4.3.1 - dotenv: - specifier: ^16.4.5 - version: 16.4.5 + specifier: npm:types-react-dom@19.0.0-rc.0 + version: 19.0.0-rc.0 + cross-env: + specifier: ^7.0.3 + version: 7.0.3 eslint: - specifier: ^8.57.0 - version: 8.57.0 - eslint-config-airbnb: - specifier: ^19.0.4 - version: 19.0.4 + specifier: ^9.10.0 + version: 9.10.0 eslint-config-next: - specifier: ^14.2.8 - version: 14.2.8 - eslint-config-prettier: - specifier: ^9.1.0 - version: 9.1.0 - eslint-config-turbo: - specifier: ^2.1.1 - version: 2.1.1 - eslint-import-resolver-babel-module: - specifier: ^5.3.2 - version: 5.3.2 - eslint-import-resolver-jsconfig: - specifier: ^1.1.0 - version: 1.1.0 - eslint-import-resolver-webpack: - specifier: ^0.13.9 - version: 0.13.9 - eslint-plugin-import: - specifier: ^2.29.1 - version: 2.29.1 - eslint-plugin-jest: - specifier: ^28.8.3 - version: 28.8.3 - eslint-plugin-jest-dom: - specifier: ^5.4.0 - version: 5.4.0 - eslint-plugin-json: - specifier: ^3.1.0 - version: 3.1.0 - eslint-plugin-jsx-a11y: - specifier: ^6.10.0 - version: 6.10.0 - eslint-plugin-markdown: - specifier: ^3.0.1 - version: 3.0.1 - eslint-plugin-mdx: - specifier: ^3.1.5 - version: 3.1.5 - eslint-plugin-module-resolver: - specifier: ^1.5.0 - version: 1.5.0 - eslint-plugin-playwright: - specifier: ^1.6.2 - version: 1.6.2 - eslint-plugin-prettier: - specifier: ^5.2.1 - version: 5.2.1 - eslint-plugin-react: - specifier: ^7.35.2 - version: 7.35.2 - eslint-plugin-react-hooks: - specifier: ^4.6.2 - version: 4.6.2 - eslint-plugin-testing-library: - specifier: ^6.2.2 - version: 6.2.2 - express: - specifier: ^4.19.2 - version: 4.19.2 - fast-equals: - specifier: ^5.0.1 - version: 5.0.1 - form-data: - specifier: ^4.0.0 - version: 4.0.0 - formik: - specifier: ^2.4.6 - version: 2.4.6 - formik-mui: - specifier: ^5.0.0-alpha.1 - version: 5.0.0-alpha.1 - formik-mui-lab: - specifier: ^1.0.0 - version: 1.0.0 - googleapis: - specifier: ^133.0.0 - version: 133.0.0 + specifier: 15.0.0-canary.53 + version: 15.0.0-canary.53 graphql: - specifier: ^15.9.0 - version: 15.9.0 - graphql-anywhere: - specifier: ^4.2.8 - version: 4.2.8 - gray-matter: - specifier: ^4.0.3 - version: 4.0.3 - husky: - specifier: ^8.0.3 - version: 8.0.3 - identity-obj-proxy: - specifier: ^3.0.0 - version: 3.0.0 - jest: - specifier: ^29.7.0 - version: 29.7.0 - jest-environment-jsdom: - specifier: ^29.7.0 - version: 29.7.0 - js-yaml: - specifier: ^4.1.0 - version: 4.1.0 - jscodeshift: - specifier: ^0.15.2 - version: 0.15.2 - jsdom: - specifier: ^24.1.3 - version: 24.1.3 - jwt-decode: - specifier: ^4.0.0 - version: 4.0.0 - leaflet: - specifier: ^1.9.4 - version: 1.9.4 - lint-staged: - specifier: ^15.2.10 - version: 15.2.10 - lodash: - specifier: ^4.17.21 - version: 4.17.21 - migrate-mongo: - specifier: ^11.0.0 - version: 11.0.0 - monaco-editor: - specifier: ^0.51.0 - version: 0.51.0 + specifier: ^16.9.0 + version: 16.9.0 next: - specifier: ^14.2.8 - version: 14.2.8 - next-auth: - specifier: ^4.24.7 - version: 4.24.7 - next-images: - specifier: ^1.8.5 - version: 1.8.5 - next-seo: - specifier: ^6.6.0 - version: 6.6.0 - next-sitemap: - specifier: ^1.9.12 - version: 1.9.12 - nodemailer-sendgrid: - specifier: ^1.0.3 - version: 1.0.3 - papaparse: - specifier: ^5.4.1 - version: 5.4.1 - parse-numeric-range: - specifier: ^1.3.0 - version: 1.3.0 + specifier: 15.0.0-canary.104 + version: 15.0.0-canary.104 payload: - specifier: ^2.28.0 - version: 2.28.0 - plaiceholder: - specifier: ^2.5.0 - version: 2.5.0 - prettier: - specifier: ^3.3.3 - version: 3.3.3 - prop-types: - specifier: ^15.8.1 - version: 15.8.1 - qs: - specifier: ^6.13.0 - version: 6.13.0 + specifier: 3.0.0-beta.102 + version: 3.0.0-beta.102 react: - specifier: ^18.3.1 - version: 18.3.1 - react-ace: - specifier: ^11.0.1 - version: 11.0.1 - react-copy-to-clipboard: - specifier: ^5.1.0 - version: 5.1.0 + specifier: 19.0.0-rc-06d0b89e-20240801 + version: 19.0.0-rc-06d0b89e-20240801 react-dom: - specifier: ^18.3.1 - version: 18.3.1 - react-leaflet: - specifier: ^4.2.1 - version: 4.2.1 - react-markdown: - specifier: ^9.0.1 - version: 9.0.1 - react-multi-carousel: - specifier: ^2.8.5 - version: 2.8.5 - react-rotating-text: - specifier: ^1.4.1 - version: 1.4.1 - react-share: - specifier: ^5.1.0 - version: 5.1.0 - react-swipeable-views-react-18-fix: - specifier: ^0.14.1 - version: 0.14.1 - react-syntax-highlighter: - specifier: ^15.5.0 - version: 15.5.0 - react-test-renderer: - specifier: ^18.3.1 - version: 18.3.1 - react-vega: - specifier: ^7.6.0 - version: 7.6.0 - reading-time: - specifier: ^1.5.0 - version: 1.5.0 - require-from-string: - specifier: ^2.0.2 - version: 2.0.2 - robots-txt-parse: - specifier: ^2.0.1 - version: 2.0.1 - scheduler: - specifier: ^0.23.2 - version: 0.23.2 - simplebar-react: - specifier: ^3.2.6 - version: 3.2.6 - slate: - specifier: ^0.103.0 - version: 0.103.0 - sqlite: - specifier: ^5.1.1 - version: 5.1.1 - sqlite3: - specifier: ^5.1.7 - version: 5.1.7 - storybook: - specifier: ^8.2.9 - version: 8.2.9 - svg-url-loader: - specifier: ^8.0.0 - version: 8.0.0 - swr: - specifier: ^2.2.5 - version: 2.2.5 - tiny-warning: - specifier: ^1.0.3 - version: 1.0.3 - ts-node: - specifier: ^10.9.2 - version: 10.9.2 - tsc-alias: - specifier: ^1.8.10 - version: 1.8.10 - tsconfig-paths: - specifier: ^4.2.0 - version: 4.2.0 - turbo: - specifier: ^2.1.1 - version: 2.1.1 - typescript: - specifier: ^5.5.4 - version: 5.5.4 - vega: - specifier: ^5.30.0 - version: 5.30.0 - vega-embed: - specifier: ^6.26.0 - version: 6.26.0 - vega-lite: - specifier: ^5.21.0 - version: 5.21.0 - vega-tooltip: - specifier: ^0.34.0 - version: 0.34.0 - victory: - specifier: ^36.9.2 - version: 36.9.2 - video.js: - specifier: ^8.17.3 - version: 8.17.3 - videojs-youtube: - specifier: ^3.0.1 - version: 3.0.1 - webpack: - specifier: ^5.93.0 - version: 5.93.0 - xlsx: - specifier: ^0.18.5 - version: 0.18.5 - mui-styles: - '@mui/icons-material': - specifier: ^5.16.6 - version: 5.16.6 - '@mui/lab': - specifier: ^5.0.0-alpha.155 - version: 5.0.0-alpha.155 - '@mui/material': - specifier: ^5.16.6 - version: 5.16.6 - '@mui/styles': - specifier: ^5.16.6 - version: 5.16.6 - '@mui/utils': - specifier: ^5.16.6 - version: 5.16.6 + specifier: 19.0.0-rc-06d0b89e-20240801 + version: 19.0.0-rc-06d0b89e-20240801 overrides: sharp: ^0.33.5 @@ -604,6 +112,85 @@ importers: specifier: 'catalog:' version: 2.1.1 + apps/centralcms: + dependencies: + '@commons-ui/core': + specifier: workspace:* + version: link:../../packages/commons-ui-core + '@commons-ui/next': + specifier: workspace:* + version: link:../../packages/commons-ui-next + '@mui/utils': + specifier: 'catalog:' + version: 5.16.6(react@19.0.0-rc-06d0b89e-20240801)(types-react@19.0.0-rc.0) + '@payloadcms/db-mongodb': + specifier: catalog:payload-3 + version: 3.0.0-beta.102(@aws-sdk/client-sso-oidc@3.645.0(@aws-sdk/client-sts@3.645.0))(payload@3.0.0-beta.102(graphql@16.9.0)(monaco-editor@0.51.0)(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(typescript@5.5.4)) + '@payloadcms/db-postgres': + specifier: catalog:payload-3 + version: 3.0.0-beta.102(@opentelemetry/api@1.9.0)(@types/pg@8.6.1)(payload@3.0.0-beta.102(graphql@16.9.0)(monaco-editor@0.51.0)(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(typescript@5.5.4))(react@19.0.0-rc-06d0b89e-20240801)(sqlite3@5.1.7)(types-react@19.0.0-rc.0) + '@payloadcms/next': + specifier: catalog:payload-3 + version: 3.0.0-beta.102(graphql@16.9.0)(monaco-editor@0.51.0)(next@15.0.0-canary.104(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(sass@1.77.4))(payload@3.0.0-beta.102(graphql@16.9.0)(monaco-editor@0.51.0)(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(typescript@5.5.4))(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(types-react@19.0.0-rc.0)(typescript@5.5.4) + '@payloadcms/plugin-cloud': + specifier: catalog:payload-3 + version: 3.0.0-beta.102(@aws-sdk/client-sso-oidc@3.645.0(@aws-sdk/client-sts@3.645.0))(encoding@0.1.13)(payload@3.0.0-beta.102(graphql@16.9.0)(monaco-editor@0.51.0)(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(typescript@5.5.4)) + '@payloadcms/plugin-seo': + specifier: catalog:payload-3 + version: 3.0.0-beta.102(monaco-editor@0.51.0)(next@15.0.0-canary.104(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(sass@1.77.4))(payload@3.0.0-beta.102(graphql@16.9.0)(monaco-editor@0.51.0)(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(typescript@5.5.4))(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(types-react@19.0.0-rc.0)(typescript@5.5.4) + '@payloadcms/richtext-lexical': + specifier: catalog:payload-3 + version: 3.0.0-beta.102(kveg4lsydt2bh47mgyau54rg7e) + '@payloadcms/ui': + specifier: catalog:payload-3 + version: 3.0.0-beta.102(monaco-editor@0.51.0)(next@15.0.0-canary.104(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(sass@1.77.4))(payload@3.0.0-beta.102(graphql@16.9.0)(monaco-editor@0.51.0)(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(typescript@5.5.4))(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(types-react@19.0.0-rc.0)(typescript@5.5.4) + cross-env: + specifier: catalog:payload-3 + version: 7.0.3 + graphql: + specifier: catalog:payload-3 + version: 16.9.0 + next: + specifier: catalog:payload-3 + version: 15.0.0-canary.104(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(sass@1.77.4) + payload: + specifier: catalog:payload-3 + version: 3.0.0-beta.102(graphql@16.9.0)(monaco-editor@0.51.0)(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(typescript@5.5.4) + react: + specifier: catalog:payload-3 + version: 19.0.0-rc-06d0b89e-20240801 + react-dom: + specifier: catalog:payload-3 + version: 19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801) + sharp: + specifier: ^0.33.5 + version: 0.33.5 + devDependencies: + '@commons-ui/testing-library': + specifier: workspace:* + version: link:../../packages/commons-ui-testing-library + '@svgr/webpack': + specifier: 'catalog:' + version: 8.1.0(typescript@5.5.4) + '@types/node': + specifier: catalog:payload-3 + version: 22.5.4 + '@types/react': + specifier: catalog:payload-3 + version: types-react@19.0.0-rc.0 + '@types/react-dom': + specifier: catalog:payload-3 + version: types-react-dom@19.0.0-rc.0 + eslint: + specifier: catalog:payload-3 + version: 9.10.0(jiti@1.21.6) + eslint-config-next: + specifier: catalog:payload-3 + version: 15.0.0-canary.53(eslint@9.10.0(jiti@1.21.6))(typescript@5.5.4) + typescript: + specifier: 'catalog:' + version: 5.5.4 + apps/charterafrica: dependencies: '@aws-sdk/client-s3': @@ -653,31 +240,31 @@ importers: version: 0.84.0(prop-types@15.8.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@payloadcms/bundler-webpack': specifier: 'catalog:' - version: 1.0.7(@swc/core@1.7.23(@swc/helpers@0.5.5))(ajv@8.17.1)(payload@2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)))(sass@1.69.4) + version: 1.0.7(@swc/core@1.7.23(@swc/helpers@0.5.12))(ajv@8.17.1)(payload@2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)))(sass@1.77.4) '@payloadcms/db-mongodb': specifier: 'catalog:' - version: 1.7.2(@aws-sdk/client-sso-oidc@3.645.0(@aws-sdk/client-sts@3.621.0))(payload@2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0))) + version: 1.7.2(@aws-sdk/client-sso-oidc@3.645.0(@aws-sdk/client-sts@3.645.0))(payload@2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0))) '@payloadcms/plugin-cloud-storage': specifier: 'catalog:' - version: 1.1.3(@aws-sdk/client-s3@3.645.0)(@aws-sdk/lib-storage@3.645.0(@aws-sdk/client-s3@3.645.0))(payload@2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0))) + version: 1.1.3(@aws-sdk/client-s3@3.645.0)(@aws-sdk/lib-storage@3.645.0(@aws-sdk/client-s3@3.645.0))(payload@2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0))) '@payloadcms/plugin-nested-docs': specifier: 'catalog:' - version: 1.0.12(payload@2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0))) + version: 1.0.12(payload@2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0))) '@payloadcms/plugin-sentry': specifier: 'catalog:' - version: 0.0.6(payload@2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)))(react@18.3.1) + version: 0.0.6(payload@2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)))(react@18.3.1) '@payloadcms/plugin-seo': specifier: 'catalog:' - version: 2.3.2(payload@2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)))(react@18.3.1) + version: 2.3.2(payload@2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)))(react@18.3.1) '@payloadcms/richtext-slate': specifier: 'catalog:' - version: 1.5.2(payload@2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + version: 1.5.2(payload@2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-spring/web': specifier: 'catalog:' version: 9.7.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@sentry/nextjs': specifier: 'catalog:' - version: 8.28.0(@opentelemetry/api@1.9.0)(@opentelemetry/core@1.25.1(@opentelemetry/api@1.9.0))(@opentelemetry/instrumentation@0.52.1(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@1.25.1(@opentelemetry/api@1.9.0))(encoding@0.1.13)(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4))(react@18.3.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)) + version: 8.28.0(@opentelemetry/api@1.9.0)(@opentelemetry/core@1.25.1(@opentelemetry/api@1.9.0))(@opentelemetry/instrumentation@0.52.1(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@1.25.1(@opentelemetry/api@1.9.0))(encoding@0.1.13)(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4))(react@18.3.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)) airtable: specifier: 'catalog:' version: 0.12.2(encoding@0.1.13) @@ -692,22 +279,22 @@ importers: version: 1.9.4 migrate-mongo: specifier: 'catalog:' - version: 11.0.0(mongodb@4.17.1(@aws-sdk/client-sso-oidc@3.645.0(@aws-sdk/client-sts@3.621.0))) + version: 11.0.0(mongodb@4.17.1(@aws-sdk/client-sso-oidc@3.645.0(@aws-sdk/client-sts@3.645.0))) monaco-editor: specifier: 'catalog:' version: 0.51.0 next: specifier: 'catalog:' - version: 14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4) + version: 14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4) next-seo: specifier: 'catalog:' - version: 6.6.0(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4))(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + version: 6.6.0(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4))(react-dom@18.3.1(react@18.3.1))(react@18.3.1) nodemailer-sendgrid: specifier: 'catalog:' version: 1.0.3 payload: specifier: 'catalog:' - version: 2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)) + version: 2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)) prop-types: specifier: 'catalog:' version: 15.8.1 @@ -771,7 +358,7 @@ importers: version: 8.1.0(typescript@5.5.4) '@swc/core': specifier: 'catalog:' - version: 1.7.23(@swc/helpers@0.5.5) + version: 1.7.23(@swc/helpers@0.5.12) '@types/express': specifier: 'catalog:' version: 4.17.21 @@ -792,7 +379,7 @@ importers: version: link:../../packages/eslint-config-commons-ui eslint-import-resolver-webpack: specifier: 'catalog:' - version: 0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)) + version: 0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)) eslint-plugin-import: specifier: 'catalog:' version: 2.29.1(eslint-import-resolver-webpack@0.13.9)(eslint@8.57.0) @@ -801,7 +388,7 @@ importers: version: 3.0.0 jest: specifier: 'catalog:' - version: 29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.5))(@types/node@20.14.14)(typescript@5.5.4)) + version: 29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@20.14.14)(typescript@5.5.4)) jest-config-commons-ui: specifier: workspace:* version: link:../../packages/jest-config-commons-ui @@ -816,13 +403,13 @@ importers: version: 18.3.1(react@18.3.1) ts-node: specifier: 'catalog:' - version: 10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.5))(@types/node@20.14.14)(typescript@5.5.4) + version: 10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@20.14.14)(typescript@5.5.4) typescript: specifier: 'catalog:' version: 5.5.4 webpack: specifier: 'catalog:' - version: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0) + version: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0) apps/civicsignalblog: dependencies: @@ -864,13 +451,13 @@ importers: version: 14.2.8 '@next/third-parties': specifier: 'catalog:' - version: 14.2.8(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4))(react@18.3.1) + version: 14.2.8(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4))(react@18.3.1) '@payloadcms/bundler-webpack': specifier: 'catalog:' - version: 1.0.7(@swc/core@1.7.23(@swc/helpers@0.5.5))(ajv@8.17.1)(payload@2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))))(sass@1.69.4) + version: 1.0.7(@swc/core@1.7.23(@swc/helpers@0.5.12))(ajv@8.17.1)(payload@2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))))(sass@1.77.4) '@payloadcms/db-mongodb': specifier: 'catalog:' - version: 1.7.2(@aws-sdk/client-sso-oidc@3.645.0(@aws-sdk/client-sts@3.645.0))(payload@2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5)))) + version: 1.7.2(payload@2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))) '@payloadcms/live-preview': specifier: 'catalog:' version: 0.2.2 @@ -879,22 +466,22 @@ importers: version: 0.2.0(react@18.3.1) '@payloadcms/plugin-cloud-storage': specifier: 'catalog:' - version: 1.1.3(@aws-sdk/client-s3@3.645.0)(@aws-sdk/lib-storage@3.645.0(@aws-sdk/client-s3@3.645.0))(payload@2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5)))) + version: 1.1.3(@aws-sdk/client-s3@3.645.0)(@aws-sdk/lib-storage@3.645.0(@aws-sdk/client-s3@3.645.0))(payload@2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))) '@payloadcms/plugin-nested-docs': specifier: 'catalog:' - version: 1.0.12(payload@2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5)))) + version: 1.0.12(payload@2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))) '@payloadcms/plugin-sentry': specifier: 'catalog:' - version: 0.0.6(payload@2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))))(react@18.3.1) + version: 0.0.6(payload@2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))))(react@18.3.1) '@payloadcms/plugin-seo': specifier: 'catalog:' - version: 2.3.2(payload@2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))))(react@18.3.1) + version: 2.3.2(payload@2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))))(react@18.3.1) '@payloadcms/richtext-slate': specifier: 'catalog:' - version: 1.5.2(payload@2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))))(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + version: 1.5.2(payload@2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))))(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@sentry/nextjs': specifier: 'catalog:' - version: 8.28.0(@opentelemetry/api@1.9.0)(@opentelemetry/core@1.25.1(@opentelemetry/api@1.9.0))(@opentelemetry/instrumentation@0.52.1(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@1.25.1(@opentelemetry/api@1.9.0))(encoding@0.1.13)(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4))(react@18.3.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))) + version: 8.28.0(@opentelemetry/api@1.9.0)(@opentelemetry/core@1.25.1(@opentelemetry/api@1.9.0))(@opentelemetry/instrumentation@0.52.1(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@1.25.1(@opentelemetry/api@1.9.0))(encoding@0.1.13)(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4))(react@18.3.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) camelcase-keys: specifier: 'catalog:' version: 9.1.3 @@ -918,16 +505,16 @@ importers: version: 24.1.3 next: specifier: 'catalog:' - version: 14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4) + version: 14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4) next-seo: specifier: 'catalog:' - version: 6.6.0(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4))(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + version: 6.6.0(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4))(react-dom@18.3.1(react@18.3.1))(react@18.3.1) nodemailer-sendgrid: specifier: 'catalog:' version: 1.0.3 payload: specifier: 'catalog:' - version: 2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))) + version: 2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) prop-types: specifier: 'catalog:' version: 15.8.1 @@ -970,7 +557,7 @@ importers: version: 8.1.0(typescript@5.5.4) '@swc/core': specifier: 'catalog:' - version: 1.7.23(@swc/helpers@0.5.5) + version: 1.7.23(@swc/helpers@0.5.12) '@types/express': specifier: 'catalog:' version: 4.17.21 @@ -991,7 +578,7 @@ importers: version: link:../../packages/eslint-config-commons-ui eslint-import-resolver-webpack: specifier: 'catalog:' - version: 0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))) + version: 0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) eslint-plugin-import: specifier: 'catalog:' version: 2.29.1(eslint-import-resolver-webpack@0.13.9)(eslint@8.57.0) @@ -1000,7 +587,7 @@ importers: version: 3.0.0 jest: specifier: 'catalog:' - version: 29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.5))(@types/node@20.14.14)(typescript@5.5.4)) + version: 29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@20.14.14)(typescript@5.5.4)) jest-config-commons-ui: specifier: workspace:* version: link:../../packages/jest-config-commons-ui @@ -1015,13 +602,13 @@ importers: version: 18.3.1(react@18.3.1) ts-node: specifier: 'catalog:' - version: 10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.5))(@types/node@20.14.14)(typescript@5.5.4) + version: 10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@20.14.14)(typescript@5.5.4) typescript: specifier: 'catalog:' version: 5.5.4 webpack: specifier: 'catalog:' - version: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5)))) + version: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))) apps/climatemappedafrica: dependencies: @@ -1081,13 +668,13 @@ importers: version: 4.17.21 next: specifier: 'catalog:' - version: 14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4) + version: 14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4) next-images: specifier: 'catalog:' - version: 1.8.5(webpack@5.93.0) + version: 1.8.5(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) next-seo: specifier: 'catalog:' - version: 6.6.0(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4))(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + version: 6.6.0(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4))(react-dom@18.3.1(react@18.3.1))(react@18.3.1) papaparse: specifier: 'catalog:' version: 5.4.1 @@ -1147,7 +734,7 @@ importers: version: 3.0.1(video.js@8.17.3) webpack: specifier: 'catalog:' - version: 5.93.0 + version: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))) xlsx: specifier: 'catalog:' version: 0.18.5 @@ -1175,7 +762,7 @@ importers: version: 8.2.9(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2))) '@storybook/addon-interactions': specifier: 'catalog:' - version: 8.2.9(@jest/globals@29.7.0)(@types/jest@29.5.12)(jest@29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0))(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2))) + version: 8.2.9(@jest/globals@29.7.0)(@types/jest@29.5.12)(jest@29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@20.14.14)(typescript@5.5.4)))(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2))) '@storybook/addon-links': specifier: 'catalog:' version: 8.2.9(react@18.3.1)(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2))) @@ -1187,13 +774,13 @@ importers: version: 8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2)) '@storybook/nextjs': specifier: 'catalog:' - version: 8.2.9(@jest/globals@29.7.0)(@types/jest@29.5.12)(babel-plugin-macros@3.1.0)(jest@29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0))(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4)(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2)))(type-fest@4.23.0)(typescript@5.5.4)(webpack-hot-middleware@2.26.1)(webpack@5.93.0) + version: 8.2.9(@jest/globals@29.7.0)(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/jest@29.5.12)(babel-plugin-macros@3.1.0)(jest@29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@20.14.14)(typescript@5.5.4)))(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4)(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2)))(type-fest@4.23.0)(typescript@5.5.4)(webpack-hot-middleware@2.26.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) '@storybook/react': specifier: 'catalog:' version: 8.2.9(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2)))(typescript@5.5.4) '@storybook/test': specifier: 'catalog:' - version: 8.2.9(@jest/globals@29.7.0)(@types/jest@29.5.12)(jest@29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0))(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2))) + version: 8.2.9(@jest/globals@29.7.0)(@types/jest@29.5.12)(jest@29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@20.14.14)(typescript@5.5.4)))(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2))) '@svgr/webpack': specifier: 'catalog:' version: 8.1.0(typescript@5.5.4) @@ -1211,7 +798,7 @@ importers: version: 29.7.0(@babel/core@7.25.2) babel-loader: specifier: 'catalog:' - version: 9.1.3(@babel/core@7.25.2)(webpack@5.93.0) + version: 9.1.3(@babel/core@7.25.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) eslint: specifier: 'catalog:' version: 8.57.0 @@ -1223,7 +810,7 @@ importers: version: 5.3.2(@babel/core@7.25.2)(babel-plugin-module-resolver@4.1.0) eslint-plugin-import: specifier: 'catalog:' - version: 2.29.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-webpack@0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))))(eslint-plugin-import@2.29.1(eslint-import-resolver-webpack@0.13.9)(eslint@8.57.0))(eslint@8.57.0))(eslint-import-resolver-webpack@0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))))(eslint@8.57.0) + version: 2.29.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-webpack@0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))))(eslint-plugin-import@2.29.1(eslint-import-resolver-webpack@0.13.9)(eslint@8.57.0))(eslint@8.57.0))(eslint-import-resolver-webpack@0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))))(eslint@8.57.0) eslint-plugin-module-resolver: specifier: 'catalog:' version: 1.5.0 @@ -1241,7 +828,7 @@ importers: version: 3.0.0 jest: specifier: 'catalog:' - version: 29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.5))(@types/node@20.14.14)(typescript@5.5.4)) + version: 29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@20.14.14)(typescript@5.5.4)) jest-config-commons-ui: specifier: workspace:* version: link:../../packages/jest-config-commons-ui @@ -1250,7 +837,7 @@ importers: version: 0.15.2(@babel/preset-env@7.25.4(@babel/core@7.25.2)) next-sitemap: specifier: 'catalog:' - version: 1.9.12(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4)) + version: 1.9.12(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4)) playwright-config-commons-ui: specifier: workspace:* version: link:../../packages/playwright-config-commons-ui @@ -1262,7 +849,7 @@ importers: version: 18.3.1(react@18.3.1) svg-url-loader: specifier: 'catalog:' - version: 8.0.0(webpack@5.93.0) + version: 8.0.0(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) typescript: specifier: 'catalog:' version: 5.5.4 @@ -1307,28 +894,28 @@ importers: version: 14.2.8 '@payloadcms/bundler-webpack': specifier: 'catalog:' - version: 1.0.7(@swc/core@1.7.23(@swc/helpers@0.5.5))(ajv@8.17.1)(payload@2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))))(sass@1.69.4) + version: 1.0.7(@swc/core@1.7.23(@swc/helpers@0.5.12))(ajv@8.17.1)(payload@2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))))(sass@1.77.4) '@payloadcms/db-mongodb': specifier: 'catalog:' - version: 1.7.2(@aws-sdk/client-sso-oidc@3.645.0(@aws-sdk/client-sts@3.645.0))(payload@2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5)))) + version: 1.7.2(payload@2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))) '@payloadcms/plugin-cloud-storage': specifier: 'catalog:' - version: 1.1.3(@aws-sdk/client-s3@3.645.0)(@aws-sdk/lib-storage@3.645.0(@aws-sdk/client-s3@3.645.0))(payload@2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5)))) + version: 1.1.3(@aws-sdk/client-s3@3.645.0)(@aws-sdk/lib-storage@3.645.0(@aws-sdk/client-s3@3.645.0))(payload@2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))) '@payloadcms/plugin-nested-docs': specifier: 'catalog:' - version: 1.0.12(payload@2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5)))) + version: 1.0.12(payload@2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))) '@payloadcms/plugin-sentry': specifier: 'catalog:' - version: 0.0.6(payload@2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))))(react@18.3.1) + version: 0.0.6(payload@2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))))(react@18.3.1) '@payloadcms/plugin-seo': specifier: 'catalog:' - version: 2.3.2(payload@2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))))(react@18.3.1) + version: 2.3.2(payload@2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))))(react@18.3.1) '@payloadcms/richtext-slate': specifier: 'catalog:' - version: 1.5.2(payload@2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))))(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + version: 1.5.2(payload@2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))))(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@sentry/nextjs': specifier: 'catalog:' - version: 8.28.0(@opentelemetry/api@1.9.0)(@opentelemetry/core@1.25.1(@opentelemetry/api@1.9.0))(@opentelemetry/instrumentation@0.52.1(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@1.25.1(@opentelemetry/api@1.9.0))(encoding@0.1.13)(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4))(react@18.3.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))) + version: 8.28.0(@opentelemetry/api@1.9.0)(@opentelemetry/core@1.25.1(@opentelemetry/api@1.9.0))(@opentelemetry/instrumentation@0.52.1(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@1.25.1(@opentelemetry/api@1.9.0))(encoding@0.1.13)(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4))(react@18.3.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) camelcase-keys: specifier: 'catalog:' version: 9.1.3 @@ -1352,16 +939,16 @@ importers: version: 24.1.3 next: specifier: 'catalog:' - version: 14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4) + version: 14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4) next-seo: specifier: 'catalog:' - version: 6.6.0(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4))(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + version: 6.6.0(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4))(react-dom@18.3.1(react@18.3.1))(react@18.3.1) nodemailer-sendgrid: specifier: 'catalog:' version: 1.0.3 payload: specifier: 'catalog:' - version: 2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))) + version: 2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) prop-types: specifier: 'catalog:' version: 15.8.1 @@ -1404,7 +991,7 @@ importers: version: 8.1.0(typescript@5.5.4) '@swc/core': specifier: 'catalog:' - version: 1.7.23(@swc/helpers@0.5.5) + version: 1.7.23(@swc/helpers@0.5.12) '@types/express': specifier: 'catalog:' version: 4.17.21 @@ -1425,7 +1012,7 @@ importers: version: link:../../packages/eslint-config-commons-ui eslint-import-resolver-webpack: specifier: 'catalog:' - version: 0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))) + version: 0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) eslint-plugin-import: specifier: 'catalog:' version: 2.29.1(eslint-import-resolver-webpack@0.13.9)(eslint@8.57.0) @@ -1434,7 +1021,7 @@ importers: version: 3.0.0 jest: specifier: 'catalog:' - version: 29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.5))(@types/node@20.14.14)(typescript@5.5.4)) + version: 29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@20.14.14)(typescript@5.5.4)) jest-config-commons-ui: specifier: workspace:* version: link:../../packages/jest-config-commons-ui @@ -1449,13 +1036,13 @@ importers: version: 18.3.1(react@18.3.1) ts-node: specifier: 'catalog:' - version: 10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.5))(@types/node@20.14.14)(typescript@5.5.4) + version: 10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@20.14.14)(typescript@5.5.4) typescript: specifier: 'catalog:' version: 5.5.4 webpack: specifier: 'catalog:' - version: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5)))) + version: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))) apps/engineeringblog: dependencies: @@ -1485,7 +1072,7 @@ importers: version: 5.16.6(@emotion/react@11.13.3(@types/react@18.3.5)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.5)(react@18.3.1))(@types/react@18.3.5)(react@18.3.1))(@types/react@18.3.5)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@mui/material-nextjs': specifier: 'catalog:' - version: 5.16.6(@emotion/cache@11.13.1)(@emotion/server@11.11.0(@emotion/css@11.13.0))(@mui/material@5.16.6(@emotion/react@11.13.3(@types/react@18.3.5)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.5)(react@18.3.1))(@types/react@18.3.5)(react@18.3.1))(@types/react@18.3.5)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.5)(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4))(react@18.3.1) + version: 5.16.6(@emotion/cache@11.13.1)(@emotion/server@11.11.0(@emotion/css@11.13.0))(@mui/material@5.16.6(@emotion/react@11.13.3(@types/react@18.3.5)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.5)(react@18.3.1))(@types/react@18.3.5)(react@18.3.1))(@types/react@18.3.5)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.5)(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4))(react@18.3.1) '@mui/utils': specifier: 'catalog:' version: 5.16.6(@types/react@18.3.5)(react@18.3.1) @@ -1503,7 +1090,7 @@ importers: version: 4.0.3 next: specifier: 'catalog:' - version: 14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4) + version: 14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4) parse-numeric-range: specifier: 'catalog:' version: 1.3.0 @@ -1618,13 +1205,13 @@ importers: version: 4.17.21 next: specifier: 'catalog:' - version: 14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4) + version: 14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4) next-images: specifier: 'catalog:' - version: 1.8.5(webpack@5.93.0(esbuild@0.21.5)) + version: 1.8.5(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5)) next-seo: specifier: 'catalog:' - version: 6.6.0(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4))(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + version: 6.6.0(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4))(react-dom@18.3.1(react@18.3.1))(react@18.3.1) papaparse: specifier: 'catalog:' version: 5.4.1 @@ -1684,7 +1271,7 @@ importers: version: 3.0.1(video.js@8.17.3) webpack: specifier: 'catalog:' - version: 5.93.0(esbuild@0.21.5) + version: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5) xlsx: specifier: 'catalog:' version: 0.18.5 @@ -1712,7 +1299,7 @@ importers: version: 8.2.9(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2))) '@storybook/addon-interactions': specifier: 'catalog:' - version: 8.2.9(@jest/globals@29.7.0)(@types/jest@29.5.12)(jest@29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0))(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2))) + version: 8.2.9(@jest/globals@29.7.0)(@types/jest@29.5.12)(jest@29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@20.14.14)(typescript@5.5.4)))(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2))) '@storybook/addon-links': specifier: 'catalog:' version: 8.2.9(react@18.3.1)(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2))) @@ -1724,13 +1311,13 @@ importers: version: 8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2)) '@storybook/nextjs': specifier: 'catalog:' - version: 8.2.9(@jest/globals@29.7.0)(@types/jest@29.5.12)(babel-plugin-macros@3.1.0)(esbuild@0.21.5)(jest@29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0))(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4)(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2)))(type-fest@4.23.0)(typescript@5.5.4)(webpack-hot-middleware@2.26.1)(webpack@5.93.0(esbuild@0.21.5)) + version: 8.2.9(@jest/globals@29.7.0)(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/jest@29.5.12)(babel-plugin-macros@3.1.0)(esbuild@0.21.5)(jest@29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@20.14.14)(typescript@5.5.4)))(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4)(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2)))(type-fest@4.23.0)(typescript@5.5.4)(webpack-hot-middleware@2.26.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5)) '@storybook/react': specifier: 'catalog:' version: 8.2.9(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2)))(typescript@5.5.4) '@storybook/test': specifier: 'catalog:' - version: 8.2.9(@jest/globals@29.7.0)(@types/jest@29.5.12)(jest@29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0))(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2))) + version: 8.2.9(@jest/globals@29.7.0)(@types/jest@29.5.12)(jest@29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@20.14.14)(typescript@5.5.4)))(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2))) '@svgr/webpack': specifier: 'catalog:' version: 8.1.0(typescript@5.5.4) @@ -1748,7 +1335,7 @@ importers: version: 29.7.0(@babel/core@7.25.2) babel-loader: specifier: 'catalog:' - version: 9.1.3(@babel/core@7.25.2)(webpack@5.93.0(esbuild@0.21.5)) + version: 9.1.3(@babel/core@7.25.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5)) babel-plugin-transform-imports: specifier: 'catalog:' version: 2.0.0 @@ -1763,7 +1350,7 @@ importers: version: 5.3.2(@babel/core@7.25.2)(babel-plugin-module-resolver@4.1.0) eslint-import-resolver-webpack: specifier: 'catalog:' - version: 0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(esbuild@0.21.5)) + version: 0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5)) eslint-plugin-import: specifier: 'catalog:' version: 2.29.1(eslint-import-resolver-webpack@0.13.9)(eslint@8.57.0) @@ -1784,7 +1371,7 @@ importers: version: 3.0.0 jest: specifier: 'catalog:' - version: 29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.5))(@types/node@20.14.14)(typescript@5.5.4)) + version: 29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@20.14.14)(typescript@5.5.4)) jest-config-commons-ui: specifier: workspace:* version: link:../../packages/jest-config-commons-ui @@ -1793,7 +1380,7 @@ importers: version: 0.15.2(@babel/preset-env@7.25.4(@babel/core@7.25.2)) next-sitemap: specifier: 'catalog:' - version: 1.9.12(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4)) + version: 1.9.12(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4)) playwright-config-commons-ui: specifier: workspace:* version: link:../../packages/playwright-config-commons-ui @@ -1808,7 +1395,7 @@ importers: version: 8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2)) svg-url-loader: specifier: 'catalog:' - version: 8.0.0(webpack@5.93.0(esbuild@0.21.5)) + version: 8.0.0(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5)) typescript: specifier: 'catalog:' version: 5.5.4 @@ -1847,7 +1434,7 @@ importers: version: 5.16.6(@types/react@18.3.5)(react@18.3.1) '@sentry/nextjs': specifier: 'catalog:' - version: 8.28.0(@opentelemetry/api@1.9.0)(@opentelemetry/core@1.25.1(@opentelemetry/api@1.9.0))(@opentelemetry/instrumentation@0.52.1(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@1.25.1(@opentelemetry/api@1.9.0))(encoding@0.1.13)(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4))(react@18.3.1)(webpack@5.93.0) + version: 8.28.0(@opentelemetry/api@1.9.0)(@opentelemetry/core@1.25.1(@opentelemetry/api@1.9.0))(@opentelemetry/instrumentation@0.52.1(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@1.25.1(@opentelemetry/api@1.9.0))(encoding@0.1.13)(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4))(react@18.3.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) clsx: specifier: 'catalog:' version: 2.1.1 @@ -1874,13 +1461,13 @@ importers: version: 4.17.21 next: specifier: 'catalog:' - version: 14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4) + version: 14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4) next-auth: specifier: 'catalog:' - version: 4.24.7(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4))(nodemailer@6.9.8)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + version: 4.24.7(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4))(nodemailer@6.9.10)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) next-seo: specifier: 'catalog:' - version: 6.6.0(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4))(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + version: 6.6.0(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4))(react-dom@18.3.1(react@18.3.1))(react@18.3.1) papaparse: specifier: 'catalog:' version: 5.4.1 @@ -1947,7 +1534,7 @@ importers: version: link:../../packages/eslint-config-commons-ui eslint-import-resolver-webpack: specifier: 'catalog:' - version: 0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0) + version: 0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) eslint-plugin-import: specifier: 'catalog:' version: 2.29.1(eslint-import-resolver-webpack@0.13.9)(eslint@8.57.0) @@ -1956,7 +1543,7 @@ importers: version: 3.0.0 jest: specifier: 'catalog:' - version: 29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.5))(@types/node@20.14.14)(typescript@5.5.4)) + version: 29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@20.14.14)(typescript@5.5.4)) jest-config-commons-ui: specifier: workspace:* version: link:../../packages/jest-config-commons-ui @@ -1974,7 +1561,7 @@ importers: version: 5.5.4 webpack: specifier: 'catalog:' - version: 5.93.0 + version: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))) apps/roboshield: dependencies: @@ -2004,7 +1591,7 @@ importers: version: 5.16.6(@emotion/react@11.13.3(@types/react@18.3.5)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.5)(react@18.3.1))(@types/react@18.3.5)(react@18.3.1))(@types/react@18.3.5)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@mui/material-nextjs': specifier: 'catalog:' - version: 5.16.6(@emotion/cache@11.13.1)(@emotion/server@11.11.0(@emotion/css@11.13.0))(@mui/material@5.16.6(@emotion/react@11.13.3(@types/react@18.3.5)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.5)(react@18.3.1))(@types/react@18.3.5)(react@18.3.1))(@types/react@18.3.5)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.5)(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4))(react@18.3.1) + version: 5.16.6(@emotion/cache@11.13.1)(@emotion/server@11.11.0(@emotion/css@11.13.0))(@mui/material@5.16.6(@emotion/react@11.13.3(@types/react@18.3.5)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.5)(react@18.3.1))(@types/react@18.3.5)(react@18.3.1))(@types/react@18.3.5)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.5)(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4))(react@18.3.1) '@mui/utils': specifier: 'catalog:' version: 5.16.6(@types/react@18.3.5)(react@18.3.1) @@ -2016,34 +1603,34 @@ importers: version: 14.2.8 '@next/third-parties': specifier: 'catalog:' - version: 14.2.8(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4))(react@18.3.1) + version: 14.2.8(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4))(react@18.3.1) '@payloadcms/bundler-webpack': specifier: 'catalog:' - version: 1.0.7(@swc/core@1.7.23(@swc/helpers@0.5.5))(ajv@8.17.1)(payload@2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))))(sass@1.69.4) + version: 1.0.7(@swc/core@1.7.23(@swc/helpers@0.5.12))(ajv@8.17.1)(payload@2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))))(sass@1.77.4) '@payloadcms/db-mongodb': specifier: 'catalog:' - version: 1.7.2(@aws-sdk/client-sso-oidc@3.645.0(@aws-sdk/client-sts@3.645.0))(payload@2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5)))) + version: 1.7.2(payload@2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))) '@payloadcms/live-preview-react': specifier: 'catalog:' version: 0.2.0(react@18.3.1) '@payloadcms/plugin-cloud-storage': specifier: 'catalog:' - version: 1.1.3(@aws-sdk/client-s3@3.645.0)(@aws-sdk/lib-storage@3.645.0(@aws-sdk/client-s3@3.645.0))(payload@2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5)))) + version: 1.1.3(@aws-sdk/client-s3@3.645.0)(@aws-sdk/lib-storage@3.645.0(@aws-sdk/client-s3@3.645.0))(payload@2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))) '@payloadcms/plugin-nested-docs': specifier: 'catalog:' - version: 1.0.12(payload@2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5)))) + version: 1.0.12(payload@2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))) '@payloadcms/plugin-sentry': specifier: 'catalog:' - version: 0.0.6(payload@2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))))(react@18.3.1) + version: 0.0.6(payload@2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))))(react@18.3.1) '@payloadcms/plugin-seo': specifier: 'catalog:' - version: 2.3.2(payload@2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))))(react@18.3.1) + version: 2.3.2(payload@2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))))(react@18.3.1) '@payloadcms/richtext-slate': specifier: 'catalog:' - version: 1.5.2(payload@2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))))(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + version: 1.5.2(payload@2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))))(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@sentry/nextjs': specifier: 'catalog:' - version: 8.28.0(@opentelemetry/api@1.9.0)(@opentelemetry/core@1.25.1(@opentelemetry/api@1.9.0))(@opentelemetry/instrumentation@0.52.1(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@1.25.1(@opentelemetry/api@1.9.0))(encoding@0.1.13)(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4))(react@18.3.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))) + version: 8.28.0(@opentelemetry/api@1.9.0)(@opentelemetry/core@1.25.1(@opentelemetry/api@1.9.0))(@opentelemetry/instrumentation@0.52.1(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@1.25.1(@opentelemetry/api@1.9.0))(encoding@0.1.13)(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4))(react@18.3.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) ace-builds: specifier: 'catalog:' version: 1.36.2 @@ -2061,16 +1648,16 @@ importers: version: 4.19.2 next: specifier: 'catalog:' - version: 14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4) + version: 14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4) next-seo: specifier: 'catalog:' - version: 6.6.0(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4))(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + version: 6.6.0(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4))(react-dom@18.3.1(react@18.3.1))(react@18.3.1) nodemailer-sendgrid: specifier: 'catalog:' version: 1.0.3 payload: specifier: 'catalog:' - version: 2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))) + version: 2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) react: specifier: 'catalog:' version: 18.3.1 @@ -2131,19 +1718,19 @@ importers: version: 8.57.0 eslint-config-next: specifier: 'catalog:' - version: 14.2.8(eslint-import-resolver-webpack@0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))))(eslint@8.57.0)(typescript@5.5.4) + version: 14.2.8(eslint-import-resolver-webpack@0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))))(eslint@8.57.0)(typescript@5.5.4) eslint-config-prettier: specifier: 'catalog:' version: 9.1.0(eslint@8.57.0) eslint-import-resolver-webpack: specifier: 'catalog:' - version: 0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))) + version: 0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) eslint-plugin-import: specifier: 'catalog:' version: 2.29.1(eslint-import-resolver-webpack@0.13.9)(eslint@8.57.0) jest: specifier: 'catalog:' - version: 29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.5))(@types/node@20.14.14)(typescript@5.5.4)) + version: 29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@20.14.14)(typescript@5.5.4)) jest-config-commons-ui: specifier: workspace:* version: link:../../packages/jest-config-commons-ui @@ -2152,7 +1739,7 @@ importers: version: 3.3.3 ts-node: specifier: 'catalog:' - version: 10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.5))(@types/node@20.14.14)(typescript@5.5.4) + version: 10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@20.14.14)(typescript@5.5.4) typescript: specifier: 'catalog:' version: 5.5.4 @@ -2197,13 +1784,13 @@ importers: version: 14.2.8 css-loader: specifier: 'catalog:' - version: 7.1.2(webpack@5.93.0) + version: 7.1.2(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) leaflet: specifier: 'catalog:' version: 1.9.4 next: specifier: 'catalog:' - version: 14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4) + version: 14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4) prop-types: specifier: 'catalog:' version: 15.8.1 @@ -2228,7 +1815,7 @@ importers: version: 8.2.9(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2))) '@storybook/addon-interactions': specifier: 'catalog:' - version: 8.2.9(@jest/globals@29.7.0)(@types/jest@29.5.12)(jest@29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0))(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2))) + version: 8.2.9(@jest/globals@29.7.0)(@types/jest@29.5.12)(jest@29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@20.14.14)(typescript@5.5.4)))(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2))) '@storybook/addon-links': specifier: 'catalog:' version: 8.2.9(react@18.3.1)(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2))) @@ -2240,13 +1827,13 @@ importers: version: 8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2)) '@storybook/nextjs': specifier: 'catalog:' - version: 8.2.9(@jest/globals@29.7.0)(@types/jest@29.5.12)(babel-plugin-macros@3.1.0)(jest@29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0))(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4)(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2)))(type-fest@4.23.0)(typescript@5.5.4)(webpack-hot-middleware@2.26.1)(webpack@5.93.0) + version: 8.2.9(@jest/globals@29.7.0)(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/jest@29.5.12)(babel-plugin-macros@3.1.0)(jest@29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@20.14.14)(typescript@5.5.4)))(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4)(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2)))(type-fest@4.23.0)(typescript@5.5.4)(webpack-hot-middleware@2.26.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) '@storybook/react': specifier: 'catalog:' version: 8.2.9(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2)))(typescript@5.5.4) '@storybook/test': specifier: 'catalog:' - version: 8.2.9(@jest/globals@29.7.0)(@types/jest@29.5.12)(jest@29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0))(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2))) + version: 8.2.9(@jest/globals@29.7.0)(@types/jest@29.5.12)(jest@29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@20.14.14)(typescript@5.5.4)))(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2))) '@types/node': specifier: 'catalog:' version: 20.14.14 @@ -2261,7 +1848,7 @@ importers: version: link:../../packages/eslint-config-commons-ui eslint-import-resolver-webpack: specifier: 'catalog:' - version: 0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0) + version: 0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) eslint-plugin-import: specifier: 'catalog:' version: 2.29.1(eslint-import-resolver-webpack@0.13.9)(eslint@8.57.0) @@ -2276,7 +1863,7 @@ importers: version: 5.5.4 webpack: specifier: 'catalog:' - version: 5.93.0 + version: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))) apps/vpnmanager: dependencies: @@ -2315,7 +1902,7 @@ importers: version: 8.1.3 '@sentry/nextjs': specifier: 'catalog:' - version: 8.28.0(@opentelemetry/api@1.9.0)(@opentelemetry/core@1.25.1(@opentelemetry/api@1.9.0))(@opentelemetry/instrumentation@0.52.1(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@1.25.1(@opentelemetry/api@1.9.0))(encoding@0.1.13)(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4))(react@18.3.1)(webpack@5.93.0) + version: 8.28.0(@opentelemetry/api@1.9.0)(@opentelemetry/core@1.25.1(@opentelemetry/api@1.9.0))(@opentelemetry/instrumentation@0.52.1(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@1.25.1(@opentelemetry/api@1.9.0))(encoding@0.1.13)(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4))(react@18.3.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) '@svgr/webpack': specifier: 'catalog:' version: 8.1.0(typescript@5.5.4) @@ -2327,10 +1914,10 @@ importers: version: 133.0.0(encoding@0.1.13) jest: specifier: 'catalog:' - version: 29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.5))(@types/node@20.14.14)(typescript@5.5.4)) + version: 29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@20.14.14)(typescript@5.5.4)) next: specifier: 'catalog:' - version: 14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4) + version: 14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4) react: specifier: 'catalog:' version: 18.3.1 @@ -2401,7 +1988,7 @@ importers: version: 18.3.5 babel-loader: specifier: 'catalog:' - version: 9.1.3(@babel/core@7.25.2)(webpack@5.93.0) + version: 9.1.3(@babel/core@7.25.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) eslint: specifier: 'catalog:' version: 8.57.0 @@ -2413,7 +2000,7 @@ importers: version: 3.0.0 jest: specifier: 'catalog:' - version: 29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.5))(@types/node@20.14.14)(typescript@5.5.4)) + version: 29.7.0(@types/node@22.5.4)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@22.5.4)(typescript@5.5.4)) jest-config-commons-ui: specifier: workspace:* version: link:../jest-config-commons-ui @@ -2437,7 +2024,7 @@ importers: version: 5.5.4 webpack: specifier: 'catalog:' - version: 5.93.0 + version: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))) packages/commons-ui-next: dependencies: @@ -2462,7 +2049,7 @@ importers: version: 5.16.6(@emotion/react@11.13.3(@types/react@18.3.5)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.5)(react@18.3.1))(@types/react@18.3.5)(react@18.3.1))(@types/react@18.3.5)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) babel-loader: specifier: 'catalog:' - version: 9.1.3(@babel/core@7.25.2)(webpack@5.93.0) + version: 9.1.3(@babel/core@7.25.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) eslint: specifier: 'catalog:' version: 8.57.0 @@ -2471,13 +2058,13 @@ importers: version: link:../eslint-config-commons-ui jest: specifier: 'catalog:' - version: 29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.5))(@types/node@20.14.14)(typescript@5.5.4)) + version: 29.7.0(@types/node@22.5.4)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@22.5.4)(typescript@5.5.4)) jest-config-commons-ui: specifier: workspace:* version: link:../jest-config-commons-ui next: specifier: 'catalog:' - version: 14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4) + version: 14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4) prop-types: specifier: 'catalog:' version: 15.8.1 @@ -2495,7 +2082,7 @@ importers: version: 5.5.4 webpack: specifier: 'catalog:' - version: 5.93.0 + version: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))) packages/commons-ui-testing-library: dependencies: @@ -2529,7 +2116,7 @@ importers: version: 18.3.5 babel-loader: specifier: 'catalog:' - version: 9.1.3(@babel/core@7.25.2)(webpack@5.93.0) + version: 9.1.3(@babel/core@7.25.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) eslint: specifier: 'catalog:' version: 8.57.0 @@ -2541,7 +2128,7 @@ importers: version: 3.0.0 jest: specifier: 'catalog:' - version: 29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.5))(@types/node@20.14.14)(typescript@5.5.4)) + version: 29.7.0(@types/node@22.5.4)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@22.5.4)(typescript@5.5.4)) jest-config-commons-ui: specifier: workspace:* version: link:../jest-config-commons-ui @@ -2562,7 +2149,7 @@ importers: version: 5.5.4 webpack: specifier: 'catalog:' - version: 5.93.0 + version: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))) packages/eslint-config-commons-ui: dependencies: @@ -2589,10 +2176,10 @@ importers: version: 1.1.0 eslint-plugin-import: specifier: 'catalog:' - version: 2.29.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-webpack@0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))))(eslint-plugin-import@2.29.1(eslint-import-resolver-webpack@0.13.9)(eslint@8.57.0))(eslint@8.57.0))(eslint-import-resolver-webpack@0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))))(eslint@8.57.0) + version: 2.29.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-webpack@0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))))(eslint-plugin-import@2.29.1(eslint-import-resolver-webpack@0.13.9)(eslint@8.57.0))(eslint@8.57.0))(eslint-import-resolver-webpack@0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))))(eslint@8.57.0) eslint-plugin-jest: specifier: 'catalog:' - version: 28.8.3(@typescript-eslint/eslint-plugin@7.2.0(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(babel-plugin-macros@3.1.0))(typescript@5.5.4) + version: 28.8.3(@typescript-eslint/eslint-plugin@7.2.0(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.5.4)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@22.5.4)(typescript@5.5.4)))(typescript@5.5.4) eslint-plugin-jest-dom: specifier: 'catalog:' version: 5.4.0(@testing-library/dom@10.1.0)(eslint@8.57.0) @@ -2607,7 +2194,7 @@ importers: version: 3.0.1(eslint@8.57.0) eslint-plugin-playwright: specifier: 'catalog:' - version: 1.6.2(eslint-plugin-jest@28.8.3(@typescript-eslint/eslint-plugin@7.2.0(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(babel-plugin-macros@3.1.0))(typescript@5.5.4))(eslint@8.57.0) + version: 1.6.2(eslint-plugin-jest@28.8.3(@typescript-eslint/eslint-plugin@7.2.0(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.5.4)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@22.5.4)(typescript@5.5.4)))(typescript@5.5.4))(eslint@8.57.0) eslint-plugin-prettier: specifier: 'catalog:' version: 5.2.1(@types/eslint@9.6.0)(eslint-config-prettier@9.1.0(eslint@8.57.0))(eslint@8.57.0)(prettier@3.3.3) @@ -2693,7 +2280,7 @@ importers: version: 18.3.5 babel-loader: specifier: 'catalog:' - version: 9.1.3(@babel/core@7.25.2)(webpack@5.93.0) + version: 9.1.3(@babel/core@7.25.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) deepmerge: specifier: 'catalog:' version: 4.3.1 @@ -2708,7 +2295,7 @@ importers: version: 3.0.0 jest: specifier: 'catalog:' - version: 29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.5))(@types/node@20.14.14)(typescript@5.5.4)) + version: 29.7.0(@types/node@22.5.4)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@22.5.4)(typescript@5.5.4)) jest-config-commons-ui: specifier: workspace:* version: link:../jest-config-commons-ui @@ -2732,7 +2319,7 @@ importers: version: 5.5.4 webpack: specifier: 'catalog:' - version: 5.93.0 + version: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))) packages/hurumap-next: devDependencies: @@ -2765,7 +2352,7 @@ importers: version: 5.16.6(@emotion/react@11.13.3(@types/react@18.3.5)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.5)(react@18.3.1))(@types/react@18.3.5)(react@18.3.1))(@types/react@18.3.5)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) babel-loader: specifier: 'catalog:' - version: 9.1.3(@babel/core@7.25.2)(webpack@5.93.0) + version: 9.1.3(@babel/core@7.25.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) eslint: specifier: 'catalog:' version: 8.57.0 @@ -2774,7 +2361,7 @@ importers: version: link:../eslint-config-commons-ui jest: specifier: 'catalog:' - version: 29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.5))(@types/node@20.14.14)(typescript@5.5.4)) + version: 29.7.0(@types/node@22.5.4)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@22.5.4)(typescript@5.5.4)) jest-config-commons-ui: specifier: workspace:* version: link:../jest-config-commons-ui @@ -2783,7 +2370,7 @@ importers: version: 1.9.4 next: specifier: 'catalog:' - version: 14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4) + version: 14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4) prop-types: specifier: 'catalog:' version: 15.8.1 @@ -2804,7 +2391,7 @@ importers: version: 5.5.4 webpack: specifier: 'catalog:' - version: 5.93.0 + version: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))) packages/jest-config-commons-ui: dependencies: @@ -2832,7 +2419,7 @@ importers: version: 3.0.0 jest: specifier: 'catalog:' - version: 29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.5))(@types/node@20.14.14)(typescript@5.5.4)) + version: 29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@20.14.14)(typescript@5.5.4)) prettier: specifier: 'catalog:' version: 3.3.3 @@ -2923,6 +2510,9 @@ packages: '@aws-crypto/sha256-browser@5.2.0': resolution: {integrity: sha512-AXfN/lGotSQwu6HNcEsIASo7kWXZ5HYWvfOmSNKDsEqC4OashTp8alTmaz+F7TC2L083SFv5RdB+qU3Vs1kZqw==} + '@aws-crypto/sha256-js@1.2.2': + resolution: {integrity: sha512-Nr1QJIbW/afYYGzYvrF70LtaHrIRtd4TNAglX8BvlfxJLZ45SAmueIKYl5tWoNBPzp65ymXGFK0Bb1vZUpuc9g==} + '@aws-crypto/sha256-js@5.2.0': resolution: {integrity: sha512-FFQQyu7edu4ufvIZ+OadFpHHOt+eSTBaYaki44c+akjg7qZg9oOQeLlk77F6tSYqjDAFClrHJk9tMf0HdVyOvA==} engines: {node: '>=16.0.0'} @@ -2930,6 +2520,9 @@ packages: '@aws-crypto/supports-web-crypto@5.2.0': resolution: {integrity: sha512-iAvUotm021kM33eCdNfwIN//F77/IADDSs58i+MDaOqFrVjZo9bAal0NK7HurRuWLLpF1iLX7gbWrjHjeo+YFg==} + '@aws-crypto/util@1.2.2': + resolution: {integrity: sha512-H8PjG5WJ4wz0UXAFXeJjWCW1vkvIJ3qUUD+rGRwJ2/hj+xT58Qle2MTql/2MGzkU+1JLAFuR6aJpLAjHwhmwwg==} + '@aws-crypto/util@5.2.0': resolution: {integrity: sha512-4RkU9EsI6ZpBve5fseQlGNUWKMa1RLPQ1dnjnQoe07ldfIzcsGb5hC5W0Dm7u423KWzawlrpbjXBrXCEv9zazQ==} @@ -3131,6 +2724,9 @@ packages: aws-crt: optional: true + '@aws-sdk/util-utf8-browser@3.259.0': + resolution: {integrity: sha512-UvFa/vR+e19XookZF8RzFZBrw2EUkQWxiBW0yYQAhvk3C+QVGl0H3ouca8LDBlBfQKXwmW3huo/59H8rwb1wJw==} + '@aws-sdk/xml-builder@3.609.0': resolution: {integrity: sha512-l9XxNcA4HX98rwCC2/KoiWcmEiRfZe4G+mYwDbCFT87JIMj6GBhLDkAzr/W8KAaA2IDr8Vc6J8fZPgVulxxfMA==} engines: {node: '>=16.0.0'} @@ -3438,12 +3034,6 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-async-generator-functions@7.25.0': - resolution: {integrity: sha512-uaIi2FdqzjpAMvVqvB51S42oC2JEVgh0LDsGfZVDysWE8LrJtQC2jvKmOqEYThKyB7bDEb7BP1GYWDm7tABA0Q==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-async-generator-functions@7.25.4': resolution: {integrity: sha512-jz8cV2XDDTqjKPwVPJBIjORVEmSGYhdRa8e5k5+vN+uwcjSrSxUaebBRa4ko1jqNF2uxyg8G6XYk30Jv285xzg==} engines: {node: '>=6.9.0'} @@ -3486,12 +3076,6 @@ packages: peerDependencies: '@babel/core': ^7.12.0 - '@babel/plugin-transform-classes@7.25.0': - resolution: {integrity: sha512-xyi6qjr/fYU304fiRwFbekzkqVJZ6A7hOjWZd+89FVcBqPV3S9Wuozz82xdpLspckeaafntbzglaW4pqpzvtSw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-classes@7.25.4': resolution: {integrity: sha512-oexUfaQle2pF/b6E0dwsxQtAol9TLSO88kQvym6HHBWFliV2lGdrPieX+WgMRLSJDVzdYywk7jXbLPuO2KLTLg==} engines: {node: '>=6.9.0'} @@ -3792,24 +3376,12 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-unicode-sets-regex@7.24.7': - resolution: {integrity: sha512-2G8aAvF4wy1w/AGZkemprdGMRg5o6zPNhbHVImRz3lss55TYCBd6xStN19rt8XJHq20sqV0JbyWjOWwQRwV/wg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - '@babel/plugin-transform-unicode-sets-regex@7.25.4': resolution: {integrity: sha512-qesBxiWkgN1Q+31xUE9RcMk79eOXXDCv6tfyGMRSs4RGlioSg2WVyQAm07k726cSE56pa+Kb0y9epX2qaXzTvA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 - '@babel/preset-env@7.25.3': - resolution: {integrity: sha512-QsYW7UeAaXvLPX9tdVliMJE7MD7M6MLYVTovRTIwhoYQVFHR1rM4wO8wqAezYi3/BpSD+NzVCZ69R6smWiIi8g==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/preset-env@7.25.4': resolution: {integrity: sha512-W9Gyo+KmcxjGahtt3t9fb14vFRWvPpu5pT6GBlovAK6BTBcxgjfVMSQCfJl4oi35ODrxP6xx2Wr8LNST57Mraw==} engines: {node: '>=6.9.0'} @@ -4210,6 +3782,9 @@ packages: peerDependencies: react: '>=16.8.0' + '@drizzle-team/brocli@0.8.2': + resolution: {integrity: sha512-zTrFENsqGvOkBOuHDC1pXCkDXNd2UhP4lI3gYGhQ1R1SPeAAfqzPsV1dcpMy4uNU6kB5VpU5NGhvwxVNETR02A==} + '@emnapi/runtime@1.2.0': resolution: {integrity: sha512-bV21/9LQmcQeCPEg3BDFtvwL6cwiTMksYNWQQ4KOxCZikEGalWtenoZ0wCiukJINlGCIi2KXx01g4FoH/LxpzQ==} @@ -4284,144 +3859,564 @@ packages: '@emotion/weak-memoize@0.4.0': resolution: {integrity: sha512-snKqtPW01tN0ui7yu9rGv69aJXr/a/Ywvl11sUjNtEcRc+ng/mQriFL0wLXMef74iHa/EkftbDzU9F8iFbH+zg==} + '@esbuild-kit/core-utils@3.3.2': + resolution: {integrity: sha512-sPRAnw9CdSsRmEtnsl2WXWdyquogVpB3yZ3dgwJfe8zrOzTsV7cJvmwrKVa+0ma5BoiGJ+BoqkMvawbayKUsqQ==} + + '@esbuild-kit/esm-loader@2.6.5': + resolution: {integrity: sha512-FxEMIkJKnodyA1OaCUoEvbYRkoZlLZ4d/eXFu9Fh8CbBBgP5EmZxrfTRyN0qpXZ4vOvqnE5YdRdcrmUUXuU+dA==} + + '@esbuild/aix-ppc64@0.19.12': + resolution: {integrity: sha512-bmoCYyWdEL3wDQIVbcyzRyeKLgk2WtWLTWz1ZIAZF/EGbNOwSA6ew3PftJ1PqMiOOGu0OyFMzG53L0zqIpPeNA==} + engines: {node: '>=12'} + cpu: [ppc64] + os: [aix] + '@esbuild/aix-ppc64@0.21.5': resolution: {integrity: sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==} engines: {node: '>=12'} cpu: [ppc64] os: [aix] + '@esbuild/aix-ppc64@0.23.1': + resolution: {integrity: sha512-6VhYk1diRqrhBAqpJEdjASR/+WVRtfjpqKuNw11cLiaWpAT/Uu+nokB+UJnevzy/P9C/ty6AOe0dwueMrGh/iQ==} + engines: {node: '>=18'} + cpu: [ppc64] + os: [aix] + + '@esbuild/android-arm64@0.18.20': + resolution: {integrity: sha512-Nz4rJcchGDtENV0eMKUNa6L12zz2zBDXuhj/Vjh18zGqB44Bi7MBMSXjgunJgjRhCmKOjnPuZp4Mb6OKqtMHLQ==} + engines: {node: '>=12'} + cpu: [arm64] + os: [android] + + '@esbuild/android-arm64@0.19.12': + resolution: {integrity: sha512-P0UVNGIienjZv3f5zq0DP3Nt2IE/3plFzuaS96vihvD0Hd6H/q4WXUGpCxD/E8YrSXfNyRPbpTq+T8ZQioSuPA==} + engines: {node: '>=12'} + cpu: [arm64] + os: [android] + '@esbuild/android-arm64@0.21.5': resolution: {integrity: sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==} engines: {node: '>=12'} cpu: [arm64] os: [android] + '@esbuild/android-arm64@0.23.1': + resolution: {integrity: sha512-xw50ipykXcLstLeWH7WRdQuysJqejuAGPd30vd1i5zSyKK3WE+ijzHmLKxdiCMtH1pHz78rOg0BKSYOSB/2Khw==} + engines: {node: '>=18'} + cpu: [arm64] + os: [android] + + '@esbuild/android-arm@0.18.20': + resolution: {integrity: sha512-fyi7TDI/ijKKNZTUJAQqiG5T7YjJXgnzkURqmGj13C6dCqckZBLdl4h7bkhHt/t0WP+zO9/zwroDvANaOqO5Sw==} + engines: {node: '>=12'} + cpu: [arm] + os: [android] + + '@esbuild/android-arm@0.19.12': + resolution: {integrity: sha512-qg/Lj1mu3CdQlDEEiWrlC4eaPZ1KztwGJ9B6J+/6G+/4ewxJg7gqj8eVYWvao1bXrqGiW2rsBZFSX3q2lcW05w==} + engines: {node: '>=12'} + cpu: [arm] + os: [android] + '@esbuild/android-arm@0.21.5': resolution: {integrity: sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==} engines: {node: '>=12'} cpu: [arm] os: [android] + '@esbuild/android-arm@0.23.1': + resolution: {integrity: sha512-uz6/tEy2IFm9RYOyvKl88zdzZfwEfKZmnX9Cj1BHjeSGNuGLuMD1kR8y5bteYmwqKm1tj8m4cb/aKEorr6fHWQ==} + engines: {node: '>=18'} + cpu: [arm] + os: [android] + + '@esbuild/android-x64@0.18.20': + resolution: {integrity: sha512-8GDdlePJA8D6zlZYJV/jnrRAi6rOiNaCC/JclcXpB+KIuvfBN4owLtgzY2bsxnx666XjJx2kDPUmnTtR8qKQUg==} + engines: {node: '>=12'} + cpu: [x64] + os: [android] + + '@esbuild/android-x64@0.19.12': + resolution: {integrity: sha512-3k7ZoUW6Q6YqhdhIaq/WZ7HwBpnFBlW905Fa4s4qWJyiNOgT1dOqDiVAQFwBH7gBRZr17gLrlFCRzF6jFh7Kew==} + engines: {node: '>=12'} + cpu: [x64] + os: [android] + '@esbuild/android-x64@0.21.5': resolution: {integrity: sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==} engines: {node: '>=12'} cpu: [x64] os: [android] + '@esbuild/android-x64@0.23.1': + resolution: {integrity: sha512-nlN9B69St9BwUoB+jkyU090bru8L0NA3yFvAd7k8dNsVH8bi9a8cUAUSEcEEgTp2z3dbEDGJGfP6VUnkQnlReg==} + engines: {node: '>=18'} + cpu: [x64] + os: [android] + + '@esbuild/darwin-arm64@0.18.20': + resolution: {integrity: sha512-bxRHW5kHU38zS2lPTPOyuyTm+S+eobPUnTNkdJEfAddYgEcll4xkT8DB9d2008DtTbl7uJag2HuE5NZAZgnNEA==} + engines: {node: '>=12'} + cpu: [arm64] + os: [darwin] + + '@esbuild/darwin-arm64@0.19.12': + resolution: {integrity: sha512-B6IeSgZgtEzGC42jsI+YYu9Z3HKRxp8ZT3cqhvliEHovq8HSX2YX8lNocDn79gCKJXOSaEot9MVYky7AKjCs8g==} + engines: {node: '>=12'} + cpu: [arm64] + os: [darwin] + '@esbuild/darwin-arm64@0.21.5': resolution: {integrity: sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==} engines: {node: '>=12'} cpu: [arm64] os: [darwin] + '@esbuild/darwin-arm64@0.23.1': + resolution: {integrity: sha512-YsS2e3Wtgnw7Wq53XXBLcV6JhRsEq8hkfg91ESVadIrzr9wO6jJDMZnCQbHm1Guc5t/CdDiFSSfWP58FNuvT3Q==} + engines: {node: '>=18'} + cpu: [arm64] + os: [darwin] + + '@esbuild/darwin-x64@0.18.20': + resolution: {integrity: sha512-pc5gxlMDxzm513qPGbCbDukOdsGtKhfxD1zJKXjCCcU7ju50O7MeAZ8c4krSJcOIJGFR+qx21yMMVYwiQvyTyQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [darwin] + + '@esbuild/darwin-x64@0.19.12': + resolution: {integrity: sha512-hKoVkKzFiToTgn+41qGhsUJXFlIjxI/jSYeZf3ugemDYZldIXIxhvwN6erJGlX4t5h417iFuheZ7l+YVn05N3A==} + engines: {node: '>=12'} + cpu: [x64] + os: [darwin] + '@esbuild/darwin-x64@0.21.5': resolution: {integrity: sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==} engines: {node: '>=12'} cpu: [x64] os: [darwin] + '@esbuild/darwin-x64@0.23.1': + resolution: {integrity: sha512-aClqdgTDVPSEGgoCS8QDG37Gu8yc9lTHNAQlsztQ6ENetKEO//b8y31MMu2ZaPbn4kVsIABzVLXYLhCGekGDqw==} + engines: {node: '>=18'} + cpu: [x64] + os: [darwin] + + '@esbuild/freebsd-arm64@0.18.20': + resolution: {integrity: sha512-yqDQHy4QHevpMAaxhhIwYPMv1NECwOvIpGCZkECn8w2WFHXjEwrBn3CeNIYsibZ/iZEUemj++M26W3cNR5h+Tw==} + engines: {node: '>=12'} + cpu: [arm64] + os: [freebsd] + + '@esbuild/freebsd-arm64@0.19.12': + resolution: {integrity: sha512-4aRvFIXmwAcDBw9AueDQ2YnGmz5L6obe5kmPT8Vd+/+x/JMVKCgdcRwH6APrbpNXsPz+K653Qg8HB/oXvXVukA==} + engines: {node: '>=12'} + cpu: [arm64] + os: [freebsd] + '@esbuild/freebsd-arm64@0.21.5': resolution: {integrity: sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==} engines: {node: '>=12'} cpu: [arm64] os: [freebsd] + '@esbuild/freebsd-arm64@0.23.1': + resolution: {integrity: sha512-h1k6yS8/pN/NHlMl5+v4XPfikhJulk4G+tKGFIOwURBSFzE8bixw1ebjluLOjfwtLqY0kewfjLSrO6tN2MgIhA==} + engines: {node: '>=18'} + cpu: [arm64] + os: [freebsd] + + '@esbuild/freebsd-x64@0.18.20': + resolution: {integrity: sha512-tgWRPPuQsd3RmBZwarGVHZQvtzfEBOreNuxEMKFcd5DaDn2PbBxfwLcj4+aenoh7ctXcbXmOQIn8HI6mCSw5MQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [freebsd] + + '@esbuild/freebsd-x64@0.19.12': + resolution: {integrity: sha512-EYoXZ4d8xtBoVN7CEwWY2IN4ho76xjYXqSXMNccFSx2lgqOG/1TBPW0yPx1bJZk94qu3tX0fycJeeQsKovA8gg==} + engines: {node: '>=12'} + cpu: [x64] + os: [freebsd] + '@esbuild/freebsd-x64@0.21.5': resolution: {integrity: sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==} engines: {node: '>=12'} cpu: [x64] os: [freebsd] + '@esbuild/freebsd-x64@0.23.1': + resolution: {integrity: sha512-lK1eJeyk1ZX8UklqFd/3A60UuZ/6UVfGT2LuGo3Wp4/z7eRTRYY+0xOu2kpClP+vMTi9wKOfXi2vjUpO1Ro76g==} + engines: {node: '>=18'} + cpu: [x64] + os: [freebsd] + + '@esbuild/linux-arm64@0.18.20': + resolution: {integrity: sha512-2YbscF+UL7SQAVIpnWvYwM+3LskyDmPhe31pE7/aoTMFKKzIc9lLbyGUpmmb8a8AixOL61sQ/mFh3jEjHYFvdA==} + engines: {node: '>=12'} + cpu: [arm64] + os: [linux] + + '@esbuild/linux-arm64@0.19.12': + resolution: {integrity: sha512-EoTjyYyLuVPfdPLsGVVVC8a0p1BFFvtpQDB/YLEhaXyf/5bczaGeN15QkR+O4S5LeJ92Tqotve7i1jn35qwvdA==} + engines: {node: '>=12'} + cpu: [arm64] + os: [linux] + '@esbuild/linux-arm64@0.21.5': resolution: {integrity: sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==} engines: {node: '>=12'} cpu: [arm64] os: [linux] + '@esbuild/linux-arm64@0.23.1': + resolution: {integrity: sha512-/93bf2yxencYDnItMYV/v116zff6UyTjo4EtEQjUBeGiVpMmffDNUyD9UN2zV+V3LRV3/on4xdZ26NKzn6754g==} + engines: {node: '>=18'} + cpu: [arm64] + os: [linux] + + '@esbuild/linux-arm@0.18.20': + resolution: {integrity: sha512-/5bHkMWnq1EgKr1V+Ybz3s1hWXok7mDFUMQ4cG10AfW3wL02PSZi5kFpYKrptDsgb2WAJIvRcDm+qIvXf/apvg==} + engines: {node: '>=12'} + cpu: [arm] + os: [linux] + + '@esbuild/linux-arm@0.19.12': + resolution: {integrity: sha512-J5jPms//KhSNv+LO1S1TX1UWp1ucM6N6XuL6ITdKWElCu8wXP72l9MM0zDTzzeikVyqFE6U8YAV9/tFyj0ti+w==} + engines: {node: '>=12'} + cpu: [arm] + os: [linux] + '@esbuild/linux-arm@0.21.5': resolution: {integrity: sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==} engines: {node: '>=12'} cpu: [arm] os: [linux] + '@esbuild/linux-arm@0.23.1': + resolution: {integrity: sha512-CXXkzgn+dXAPs3WBwE+Kvnrf4WECwBdfjfeYHpMeVxWE0EceB6vhWGShs6wi0IYEqMSIzdOF1XjQ/Mkm5d7ZdQ==} + engines: {node: '>=18'} + cpu: [arm] + os: [linux] + + '@esbuild/linux-ia32@0.18.20': + resolution: {integrity: sha512-P4etWwq6IsReT0E1KHU40bOnzMHoH73aXp96Fs8TIT6z9Hu8G6+0SHSw9i2isWrD2nbx2qo5yUqACgdfVGx7TA==} + engines: {node: '>=12'} + cpu: [ia32] + os: [linux] + + '@esbuild/linux-ia32@0.19.12': + resolution: {integrity: sha512-Thsa42rrP1+UIGaWz47uydHSBOgTUnwBwNq59khgIwktK6x60Hivfbux9iNR0eHCHzOLjLMLfUMLCypBkZXMHA==} + engines: {node: '>=12'} + cpu: [ia32] + os: [linux] + '@esbuild/linux-ia32@0.21.5': resolution: {integrity: sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==} engines: {node: '>=12'} cpu: [ia32] os: [linux] + '@esbuild/linux-ia32@0.23.1': + resolution: {integrity: sha512-VTN4EuOHwXEkXzX5nTvVY4s7E/Krz7COC8xkftbbKRYAl96vPiUssGkeMELQMOnLOJ8k3BY1+ZY52tttZnHcXQ==} + engines: {node: '>=18'} + cpu: [ia32] + os: [linux] + + '@esbuild/linux-loong64@0.18.20': + resolution: {integrity: sha512-nXW8nqBTrOpDLPgPY9uV+/1DjxoQ7DoB2N8eocyq8I9XuqJ7BiAMDMf9n1xZM9TgW0J8zrquIb/A7s3BJv7rjg==} + engines: {node: '>=12'} + cpu: [loong64] + os: [linux] + + '@esbuild/linux-loong64@0.19.12': + resolution: {integrity: sha512-LiXdXA0s3IqRRjm6rV6XaWATScKAXjI4R4LoDlvO7+yQqFdlr1Bax62sRwkVvRIrwXxvtYEHHI4dm50jAXkuAA==} + engines: {node: '>=12'} + cpu: [loong64] + os: [linux] + '@esbuild/linux-loong64@0.21.5': resolution: {integrity: sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==} engines: {node: '>=12'} cpu: [loong64] os: [linux] + '@esbuild/linux-loong64@0.23.1': + resolution: {integrity: sha512-Vx09LzEoBa5zDnieH8LSMRToj7ir/Jeq0Gu6qJ/1GcBq9GkfoEAoXvLiW1U9J1qE/Y/Oyaq33w5p2ZWrNNHNEw==} + engines: {node: '>=18'} + cpu: [loong64] + os: [linux] + + '@esbuild/linux-mips64el@0.18.20': + resolution: {integrity: sha512-d5NeaXZcHp8PzYy5VnXV3VSd2D328Zb+9dEq5HE6bw6+N86JVPExrA6O68OPwobntbNJ0pzCpUFZTo3w0GyetQ==} + engines: {node: '>=12'} + cpu: [mips64el] + os: [linux] + + '@esbuild/linux-mips64el@0.19.12': + resolution: {integrity: sha512-fEnAuj5VGTanfJ07ff0gOA6IPsvrVHLVb6Lyd1g2/ed67oU1eFzL0r9WL7ZzscD+/N6i3dWumGE1Un4f7Amf+w==} + engines: {node: '>=12'} + cpu: [mips64el] + os: [linux] + '@esbuild/linux-mips64el@0.21.5': resolution: {integrity: sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==} engines: {node: '>=12'} cpu: [mips64el] os: [linux] - '@esbuild/linux-ppc64@0.21.5': - resolution: {integrity: sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==} + '@esbuild/linux-mips64el@0.23.1': + resolution: {integrity: sha512-nrFzzMQ7W4WRLNUOU5dlWAqa6yVeI0P78WKGUo7lg2HShq/yx+UYkeNSE0SSfSure0SqgnsxPvmAUu/vu0E+3Q==} + engines: {node: '>=18'} + cpu: [mips64el] + os: [linux] + + '@esbuild/linux-ppc64@0.18.20': + resolution: {integrity: sha512-WHPyeScRNcmANnLQkq6AfyXRFr5D6N2sKgkFo2FqguP44Nw2eyDlbTdZwd9GYk98DZG9QItIiTlFLHJHjxP3FA==} engines: {node: '>=12'} cpu: [ppc64] os: [linux] - '@esbuild/linux-riscv64@0.21.5': - resolution: {integrity: sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==} + '@esbuild/linux-ppc64@0.19.12': + resolution: {integrity: sha512-nYJA2/QPimDQOh1rKWedNOe3Gfc8PabU7HT3iXWtNUbRzXS9+vgB0Fjaqr//XNbd82mCxHzik2qotuI89cfixg==} engines: {node: '>=12'} - cpu: [riscv64] + cpu: [ppc64] os: [linux] - '@esbuild/linux-s390x@0.21.5': - resolution: {integrity: sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==} + '@esbuild/linux-ppc64@0.21.5': + resolution: {integrity: sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==} engines: {node: '>=12'} - cpu: [s390x] + cpu: [ppc64] os: [linux] - '@esbuild/linux-x64@0.21.5': - resolution: {integrity: sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==} - engines: {node: '>=12'} - cpu: [x64] + '@esbuild/linux-ppc64@0.23.1': + resolution: {integrity: sha512-dKN8fgVqd0vUIjxuJI6P/9SSSe/mB9rvA98CSH2sJnlZ/OCZWO1DJvxj8jvKTfYUdGfcq2dDxoKaC6bHuTlgcw==} + engines: {node: '>=18'} + cpu: [ppc64] os: [linux] - '@esbuild/netbsd-x64@0.21.5': - resolution: {integrity: sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==} + '@esbuild/linux-riscv64@0.18.20': + resolution: {integrity: sha512-WSxo6h5ecI5XH34KC7w5veNnKkju3zBRLEQNY7mv5mtBmrP/MjNBCAlsM2u5hDBlS3NGcTQpoBvRzqBcRtpq1A==} engines: {node: '>=12'} - cpu: [x64] + cpu: [riscv64] + os: [linux] + + '@esbuild/linux-riscv64@0.19.12': + resolution: {integrity: sha512-2MueBrlPQCw5dVJJpQdUYgeqIzDQgw3QtiAHUC4RBz9FXPrskyyU3VI1hw7C0BSKB9OduwSJ79FTCqtGMWqJHg==} + engines: {node: '>=12'} + cpu: [riscv64] + os: [linux] + + '@esbuild/linux-riscv64@0.21.5': + resolution: {integrity: sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==} + engines: {node: '>=12'} + cpu: [riscv64] + os: [linux] + + '@esbuild/linux-riscv64@0.23.1': + resolution: {integrity: sha512-5AV4Pzp80fhHL83JM6LoA6pTQVWgB1HovMBsLQ9OZWLDqVY8MVobBXNSmAJi//Csh6tcY7e7Lny2Hg1tElMjIA==} + engines: {node: '>=18'} + cpu: [riscv64] + os: [linux] + + '@esbuild/linux-s390x@0.18.20': + resolution: {integrity: sha512-+8231GMs3mAEth6Ja1iK0a1sQ3ohfcpzpRLH8uuc5/KVDFneH6jtAJLFGafpzpMRO6DzJ6AvXKze9LfFMrIHVQ==} + engines: {node: '>=12'} + cpu: [s390x] + os: [linux] + + '@esbuild/linux-s390x@0.19.12': + resolution: {integrity: sha512-+Pil1Nv3Umes4m3AZKqA2anfhJiVmNCYkPchwFJNEJN5QxmTs1uzyy4TvmDrCRNT2ApwSari7ZIgrPeUx4UZDg==} + engines: {node: '>=12'} + cpu: [s390x] + os: [linux] + + '@esbuild/linux-s390x@0.21.5': + resolution: {integrity: sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==} + engines: {node: '>=12'} + cpu: [s390x] + os: [linux] + + '@esbuild/linux-s390x@0.23.1': + resolution: {integrity: sha512-9ygs73tuFCe6f6m/Tb+9LtYxWR4c9yg7zjt2cYkjDbDpV/xVn+68cQxMXCjUpYwEkze2RcU/rMnfIXNRFmSoDw==} + engines: {node: '>=18'} + cpu: [s390x] + os: [linux] + + '@esbuild/linux-x64@0.18.20': + resolution: {integrity: sha512-UYqiqemphJcNsFEskc73jQ7B9jgwjWrSayxawS6UVFZGWrAAtkzjxSqnoclCXxWtfwLdzU+vTpcNYhpn43uP1w==} + engines: {node: '>=12'} + cpu: [x64] + os: [linux] + + '@esbuild/linux-x64@0.19.12': + resolution: {integrity: sha512-B71g1QpxfwBvNrfyJdVDexenDIt1CiDN1TIXLbhOw0KhJzE78KIFGX6OJ9MrtC0oOqMWf+0xop4qEU8JrJTwCg==} + engines: {node: '>=12'} + cpu: [x64] + os: [linux] + + '@esbuild/linux-x64@0.21.5': + resolution: {integrity: sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [linux] + + '@esbuild/linux-x64@0.23.1': + resolution: {integrity: sha512-EV6+ovTsEXCPAp58g2dD68LxoP/wK5pRvgy0J/HxPGB009omFPv3Yet0HiaqvrIrgPTBuC6wCH1LTOY91EO5hQ==} + engines: {node: '>=18'} + cpu: [x64] + os: [linux] + + '@esbuild/netbsd-x64@0.18.20': + resolution: {integrity: sha512-iO1c++VP6xUBUmltHZoMtCUdPlnPGdBom6IrO4gyKPFFVBKioIImVooR5I83nTew5UOYrk3gIJhbZh8X44y06A==} + engines: {node: '>=12'} + cpu: [x64] + os: [netbsd] + + '@esbuild/netbsd-x64@0.19.12': + resolution: {integrity: sha512-3ltjQ7n1owJgFbuC61Oj++XhtzmymoCihNFgT84UAmJnxJfm4sYCiSLTXZtE00VWYpPMYc+ZQmB6xbSdVh0JWA==} + engines: {node: '>=12'} + cpu: [x64] + os: [netbsd] + + '@esbuild/netbsd-x64@0.21.5': + resolution: {integrity: sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==} + engines: {node: '>=12'} + cpu: [x64] + os: [netbsd] + + '@esbuild/netbsd-x64@0.23.1': + resolution: {integrity: sha512-aevEkCNu7KlPRpYLjwmdcuNz6bDFiE7Z8XC4CPqExjTvrHugh28QzUXVOZtiYghciKUacNktqxdpymplil1beA==} + engines: {node: '>=18'} + cpu: [x64] os: [netbsd] + '@esbuild/openbsd-arm64@0.23.1': + resolution: {integrity: sha512-3x37szhLexNA4bXhLrCC/LImN/YtWis6WXr1VESlfVtVeoFJBRINPJ3f0a/6LV8zpikqoUg4hyXw0sFBt5Cr+Q==} + engines: {node: '>=18'} + cpu: [arm64] + os: [openbsd] + + '@esbuild/openbsd-x64@0.18.20': + resolution: {integrity: sha512-e5e4YSsuQfX4cxcygw/UCPIEP6wbIL+se3sxPdCiMbFLBWu0eiZOJ7WoD+ptCLrmjZBK1Wk7I6D/I3NglUGOxg==} + engines: {node: '>=12'} + cpu: [x64] + os: [openbsd] + + '@esbuild/openbsd-x64@0.19.12': + resolution: {integrity: sha512-RbrfTB9SWsr0kWmb9srfF+L933uMDdu9BIzdA7os2t0TXhCRjrQyCeOt6wVxr79CKD4c+p+YhCj31HBkYcXebw==} + engines: {node: '>=12'} + cpu: [x64] + os: [openbsd] + '@esbuild/openbsd-x64@0.21.5': resolution: {integrity: sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==} engines: {node: '>=12'} cpu: [x64] os: [openbsd] + '@esbuild/openbsd-x64@0.23.1': + resolution: {integrity: sha512-aY2gMmKmPhxfU+0EdnN+XNtGbjfQgwZj43k8G3fyrDM/UdZww6xrWxmDkuz2eCZchqVeABjV5BpildOrUbBTqA==} + engines: {node: '>=18'} + cpu: [x64] + os: [openbsd] + + '@esbuild/sunos-x64@0.18.20': + resolution: {integrity: sha512-kDbFRFp0YpTQVVrqUd5FTYmWo45zGaXe0X8E1G/LKFC0v8x0vWrhOWSLITcCn63lmZIxfOMXtCfti/RxN/0wnQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [sunos] + + '@esbuild/sunos-x64@0.19.12': + resolution: {integrity: sha512-HKjJwRrW8uWtCQnQOz9qcU3mUZhTUQvi56Q8DPTLLB+DawoiQdjsYq+j+D3s9I8VFtDr+F9CjgXKKC4ss89IeA==} + engines: {node: '>=12'} + cpu: [x64] + os: [sunos] + '@esbuild/sunos-x64@0.21.5': resolution: {integrity: sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==} engines: {node: '>=12'} cpu: [x64] os: [sunos] + '@esbuild/sunos-x64@0.23.1': + resolution: {integrity: sha512-RBRT2gqEl0IKQABT4XTj78tpk9v7ehp+mazn2HbUeZl1YMdaGAQqhapjGTCe7uw7y0frDi4gS0uHzhvpFuI1sA==} + engines: {node: '>=18'} + cpu: [x64] + os: [sunos] + + '@esbuild/win32-arm64@0.18.20': + resolution: {integrity: sha512-ddYFR6ItYgoaq4v4JmQQaAI5s7npztfV4Ag6NrhiaW0RrnOXqBkgwZLofVTlq1daVTQNhtI5oieTvkRPfZrePg==} + engines: {node: '>=12'} + cpu: [arm64] + os: [win32] + + '@esbuild/win32-arm64@0.19.12': + resolution: {integrity: sha512-URgtR1dJnmGvX864pn1B2YUYNzjmXkuJOIqG2HdU62MVS4EHpU2946OZoTMnRUHklGtJdJZ33QfzdjGACXhn1A==} + engines: {node: '>=12'} + cpu: [arm64] + os: [win32] + '@esbuild/win32-arm64@0.21.5': resolution: {integrity: sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==} engines: {node: '>=12'} cpu: [arm64] os: [win32] + '@esbuild/win32-arm64@0.23.1': + resolution: {integrity: sha512-4O+gPR5rEBe2FpKOVyiJ7wNDPA8nGzDuJ6gN4okSA1gEOYZ67N8JPk58tkWtdtPeLz7lBnY6I5L3jdsr3S+A6A==} + engines: {node: '>=18'} + cpu: [arm64] + os: [win32] + + '@esbuild/win32-ia32@0.18.20': + resolution: {integrity: sha512-Wv7QBi3ID/rROT08SABTS7eV4hX26sVduqDOTe1MvGMjNd3EjOz4b7zeexIR62GTIEKrfJXKL9LFxTYgkyeu7g==} + engines: {node: '>=12'} + cpu: [ia32] + os: [win32] + + '@esbuild/win32-ia32@0.19.12': + resolution: {integrity: sha512-+ZOE6pUkMOJfmxmBZElNOx72NKpIa/HFOMGzu8fqzQJ5kgf6aTGrcJaFsNiVMH4JKpMipyK+7k0n2UXN7a8YKQ==} + engines: {node: '>=12'} + cpu: [ia32] + os: [win32] + '@esbuild/win32-ia32@0.21.5': resolution: {integrity: sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==} engines: {node: '>=12'} cpu: [ia32] os: [win32] + '@esbuild/win32-ia32@0.23.1': + resolution: {integrity: sha512-BcaL0Vn6QwCwre3Y717nVHZbAa4UBEigzFm6VdsVdT/MbZ38xoj1X9HPkZhbmaBGUD1W8vxAfffbDe8bA6AKnQ==} + engines: {node: '>=18'} + cpu: [ia32] + os: [win32] + + '@esbuild/win32-x64@0.18.20': + resolution: {integrity: sha512-kTdfRcSiDfQca/y9QIkng02avJ+NCaQvrMejlsB3RRv5sE9rRoeBPISaZpKxHELzRxZyLvNts1P27W3wV+8geQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [win32] + + '@esbuild/win32-x64@0.19.12': + resolution: {integrity: sha512-T1QyPSDCyMXaO3pzBkF96E8xMkiRYbUEZADd29SyPGabqxMViNoii+NcK7eWJAEoU6RZyEm5lVSIjTmcdoB9HA==} + engines: {node: '>=12'} + cpu: [x64] + os: [win32] + '@esbuild/win32-x64@0.21.5': resolution: {integrity: sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==} engines: {node: '>=12'} cpu: [x64] os: [win32] + '@esbuild/win32-x64@0.23.1': + resolution: {integrity: sha512-BHpFFeslkWrXWyUPnbKm+xYYVYruCinGcftSBaa8zoF9hZO4BcSCFUvHVTtzpIY6YzUnYtuEhZ+C9iEXjxnasg==} + engines: {node: '>=18'} + cpu: [x64] + os: [win32] + '@eslint-community/eslint-utils@4.4.0': resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -4432,32 +4427,70 @@ packages: resolution: {integrity: sha512-G/M/tIiMrTAxEWRfLfQJMmGNX28IxBg4PBz8XqQhqUHLFI6TL2htpIB1iQCj144V5ee/JaKyT9/WZ0MGZWfA7A==} engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} + '@eslint/config-array@0.18.0': + resolution: {integrity: sha512-fTxvnS1sRMu3+JjXwJG0j/i4RT9u4qJ+lqS/yCGap4lH4zZGzQ7tu+xZqQmcMZq5OBZDL4QRxQzRjkWcGt8IVw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@eslint/eslintrc@2.1.4': resolution: {integrity: sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + '@eslint/eslintrc@3.1.0': + resolution: {integrity: sha512-4Bfj15dVJdoy3RfZmmo86RK1Fwzn6SstsvK9JS+BaVKqC6QQQQyXekNaC+g+LKNgkQ+2VhGAzm6hO40AhMR3zQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@eslint/js@8.57.0': resolution: {integrity: sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + '@eslint/js@9.10.0': + resolution: {integrity: sha512-fuXtbiP5GWIn8Fz+LWoOMVf/Jxm+aajZYkhi6CuEm4SxymFM+eUWzbO9qXT+L0iCkL5+KGYMCSGxo686H19S1g==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/object-schema@2.1.4': + resolution: {integrity: sha512-BsWiH1yFGjXXS2yvrf5LyuoSIIbPrGUWob917o+BTKuZ7qJdxX8aJLRxs1fS9n6r7vESrq1OUqb68dANcFXuQQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/plugin-kit@0.1.0': + resolution: {integrity: sha512-autAXT203ixhqei9xt+qkYOvY8l6LAFIdT2UXc/RPNeUVfqRF1BV94GTJyVPFKT8nFM6MyVJhjLj9E8JWvf5zQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@faceless-ui/modal@2.0.1': resolution: {integrity: sha512-z1PaaLxwuX+1In4vhUxODZndGKdCY+WIqzvtnas3CaYGGCVJBSJ4jfv9UEEGZzcahmSy+71bEL89cUT6d36j1Q==} peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 + '@faceless-ui/modal@3.0.0-beta.2': + resolution: {integrity: sha512-UmXvz7Iw3KMO4Pm3llZczU4uc5pPQDb6rdqwoBvYDFgWvkraOAHKx0HxSZgwqQvqOhn8joEFBfFp6/Do2562ow==} + peerDependencies: + react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-rc.0 + react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-rc.0 + '@faceless-ui/scroll-info@1.3.0': resolution: {integrity: sha512-X+doJMzQqyVGpwV/YgXUAalNWepP2W8ThgZspKZLFG43zTYLVTU17BYCjjY+ggKuA3b0W3JyXZ2M8f247AdmHw==} peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 + '@faceless-ui/scroll-info@2.0.0-beta.0': + resolution: {integrity: sha512-pUBhQP8vduA7rVndNsjhaCcds1BykA/Q4iV23JWijU6ZFL/M3Fm9P3ypDS+0VVxolqemNhw8S3FXPwZGgjH4Rw==} + peerDependencies: + react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-rc.0 + react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-rc.0 + '@faceless-ui/window-info@2.1.1': resolution: {integrity: sha512-gMAgda7beR4CNpBIXjgRVn97ek0LG3PAj9lxmoYdg574IEzLFZAh3eAYtTaS2XLKgb4+IHhsuBzlGmHbeOo2Aw==} peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 + '@faceless-ui/window-info@3.0.0-beta.0': + resolution: {integrity: sha512-Qs8xRA+fl4sU2aFVe9xawxfi5TVZ9VTPuhdQpx9aSv7U5a2F0AXwT61lJfnaJ9Flm8tOcxzq67p8cVZsXNCVeQ==} + peerDependencies: + react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-rc.0 + react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-rc.0 + '@floating-ui/core@1.6.5': resolution: {integrity: sha512-8GrTWmoFhm5BsMZOTHeGD2/0FLKLQQHvO/ZmQga4tKempYRLz8aqJGqXVuQgisnMObq2YZ2SgkwctN1LOOxcqA==} @@ -4470,9 +4503,18 @@ packages: react: '>=16.8.0' react-dom: '>=16.8.0' + '@floating-ui/react@0.26.23': + resolution: {integrity: sha512-9u3i62fV0CFF3nIegiWiRDwOs7OW/KhSUJDNx2MkQM3LbE5zQOY01sL3nelcVBXvX7Ovvo3A49I8ql+20Wg/Hw==} + peerDependencies: + react: '>=16.8.0' + react-dom: '>=16.8.0' + '@floating-ui/utils@0.2.5': resolution: {integrity: sha512-sTcG+QZ6fdEUObICavU+aB3Mp8HY4n14wYHdxK4fXjPmv3PXZZeY5RaguJmGyeH/CJQhX3fqKUtS4qc1LoHwhQ==} + '@floating-ui/utils@0.2.7': + resolution: {integrity: sha512-X8R8Oj771YRl/w+c1HqAC1szL8zWQRwFvgDwT129k9ACdBoud/+/rX9V0qiMl6LWUdP9voC2nDVZYPMQQsb6eA==} + '@gar/promisify@1.1.3': resolution: {integrity: sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==} @@ -4508,6 +4550,10 @@ packages: resolution: {integrity: sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==} deprecated: Use @eslint/object-schema instead + '@humanwhocodes/retry@0.3.0': + resolution: {integrity: sha512-d2CGZR2o7fS6sWB7DG/3a95bGKQyHMACZ5aW8qGkkqQpUoZV6C0X7Pc7l4ZNMZkfNBf4VWNe9E1jRsf0G146Ew==} + engines: {node: '>=18.18'} + '@img/sharp-darwin-arm64@0.33.5': resolution: {integrity: sha512-UT4p+iz/2H4twwAoLCqfA9UH5pI6DggwKEGuaPy7nCVQ8ZsiY5PIcrRvD1DzuY3qYL07NtIQcWnBSY/heikIFQ==} engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} @@ -4721,6 +4767,80 @@ packages: '@juggle/resize-observer@3.4.0': resolution: {integrity: sha512-dfLbk+PwWvFzSxwk3n5ySL0hfBog779o8h68wK/7/APo/7cgyWp5jcXockbxdk5kFRkbeXWm4Fbi9FrdN381sA==} + '@lexical/clipboard@0.17.0': + resolution: {integrity: sha512-wYtC6VJhuSxUZc69VTU+vBgzB4HQqhve2hLrr3v+3tR2aimx3KnKphCCP1TexCntxpEnOTPXafEgpOW/EVQE+Q==} + + '@lexical/code@0.17.0': + resolution: {integrity: sha512-8zrgHzf27aYySfUVeSKw8YP/LkRlXHSwD03BKlkSZAb4HX/WC60SGmdXUhtyTIBucqe0pnuGsRYfR9euD0/tfw==} + + '@lexical/devtools-core@0.17.0': + resolution: {integrity: sha512-0ftqWsoCb96oTc8Ok+uvjGAXZpsN9oc6ml3d46BdufdZyxHXC4qU3YVoPfLkgAHzH+4fQlNypu7u3Ym3dZ2rJg==} + peerDependencies: + react: '>=17.x' + react-dom: '>=17.x' + + '@lexical/dragon@0.17.0': + resolution: {integrity: sha512-XSsrHVwhjBIVF9VN9MFm6Go8fquj5H/jlYuyNzemHq0tOli8NaoSovGc5q0LwXr88RPsuIt1jluazR7Q1+kxTQ==} + + '@lexical/hashtag@0.17.0': + resolution: {integrity: sha512-E6nSoz9haB6JypQtYxG5OYr36AHgam/FBMu77OWNl1KsJbkP8nInm+P22QFsNnEvs4Hk6/0FJ5g42+lTEnGmIg==} + + '@lexical/headless@0.17.0': + resolution: {integrity: sha512-yKvXcq2F6S1lwDLcwv+bHht/al1LcFmidPT3rjISRxLX+/YjUcUT8MmvV773Du4piV4rFPbVlBPFBZfHJkDxXw==} + + '@lexical/history@0.17.0': + resolution: {integrity: sha512-SfeUKAXf9pZpqee9rMOTt33V0J0p/AS9TZLT9Un9dU6wAaHfv6NFax1ND0JoG1a9YkTc539mufxVLNjsNRc0ag==} + + '@lexical/html@0.17.0': + resolution: {integrity: sha512-sI458CEP/j+Gd2YEo1+vTax31ZAjdq5jmRJMgSKxzKlkVYAUY9eH5u3Y3awPLwLVXJHiIopMX02GeZytibuTiw==} + + '@lexical/link@0.17.0': + resolution: {integrity: sha512-Kux6yvPit6y0ksPpwimv3seVrXAsggkqB6oT6oAVBaDpYuygVEwNDqg/rCTtB3mHQ4eeuU33mdK7MSXZ34bZRQ==} + + '@lexical/list@0.17.0': + resolution: {integrity: sha512-anDuSUykTv+lqyCwl1m+sThrB15OKCa00Eo68/d2HQSHDD3KNWgSx709dcR17bD9oT204yOhMJbQGywuzcEyGQ==} + + '@lexical/mark@0.17.0': + resolution: {integrity: sha512-Ynqh9KHXUcB9qLOTGC9s+bbWtawOwRStkeIeAugTqrwckyYWeDaePpyJ6IhBBJy1E1CfpiZn71NDeP+FuRjnXQ==} + + '@lexical/markdown@0.17.0': + resolution: {integrity: sha512-6IuJ2l5p/Ma+VBUIStIRXwTC01GEzx21gvqqywuqBUzAOiMr1oRM+DGsQgrzZrcjX+LzUlZ5ZgjuWtK8XKVAZw==} + + '@lexical/offset@0.17.0': + resolution: {integrity: sha512-onE6SD2mIAwBLTT5v5fVBVtRg/NpQj+o10vTWJ1ImvEUERpSoCyHMTy3IMoSMuCRwuOG9C0cFEret2u+QS8Icw==} + + '@lexical/overflow@0.17.0': + resolution: {integrity: sha512-dh+nQAmeobKvZFodWyzNh1ZjX043Patk/1Lwct9XmtAGMUdXL+tB0bbguWVcDfY8OYu1CTQGfbdq2oMEJYzwsg==} + + '@lexical/plain-text@0.17.0': + resolution: {integrity: sha512-AEk+3ttbRyRi7m9UbU1CdLUtGsXh4FFZkBC12twV3U82lZHOdHocLlTutP+lcbYlGjeq6UF43NxOSGzsYEunsA==} + + '@lexical/react@0.17.0': + resolution: {integrity: sha512-HZ3joq+5g2++2vo/6scTd60Y2bsu8ya8EUdopyudnmGZGKAcAPue9pLOlBaEpsYZ7vqTuGjiPgtEBfFzDy9rlg==} + peerDependencies: + react: '>=17.x' + react-dom: '>=17.x' + + '@lexical/rich-text@0.17.0': + resolution: {integrity: sha512-XJc8gQBSwppCkESQaNcGtyTaPXZaeCQDcUVpnDjDK0vM/ZZN8TErxbujwbSqA3kO2dBds9N8WxNboSwuncMBcQ==} + + '@lexical/selection@0.17.0': + resolution: {integrity: sha512-UTjlvyhFY/lmHtBaIaVRwYnRfO9gR4I32+PT7vHQr4v3VfcgS63YEGSgEZy3Gh1pfeJqaZATN58+jCuMAQXlWQ==} + + '@lexical/table@0.17.0': + resolution: {integrity: sha512-RQF7IG0rGL2/bPaPFUIMgDA3QMdDflvXSnE7Udgbj9yMqSKhYkaERVfNyoLckDUSuusGJd6XV+qum6JWn0nSNA==} + + '@lexical/text@0.17.0': + resolution: {integrity: sha512-kFH0V6yjW8YswmoY7vHT4zHFDflGfamuUxTPHROpdnq/JMjHeaVwtmFBdrP0gknaC8XMRXdr3EsemQ7cbOoDPA==} + + '@lexical/utils@0.17.0': + resolution: {integrity: sha512-B/n0rRGDmdMrqi2qnprLt6SntC6jb4JItLmPl8zDDdg7/HxMdLq3F93vogeiXQJn0mlNqgiENWHvLAy5K2C2uQ==} + + '@lexical/yjs@0.17.0': + resolution: {integrity: sha512-xJv3frcK/jskssLbzdY4yfBaM7+LWaZD4YjYkJ/bvRDTey2w+McF+SvsJ/yBA8YF1oaL3rT+0aIQJ7rfH+AxjA==} + peerDependencies: + yjs: '>=13.5.22' + '@manypkg/find-root@1.1.0': resolution: {integrity: sha512-mki5uBvhHzO8kYYix/WRy2WX8S3B5wdVSc9D6KcU5lQNglP2yt58/VfLuAK49glRXChosY8ap2oJ1qgma3GUVA==} @@ -4757,6 +4877,13 @@ packages: react: ^16.8.0 || ^17.0.0 || ^18.0.0 react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 + '@monaco-editor/react@4.6.0': + resolution: {integrity: sha512-RFkU9/i7cN2bsq/iTkurMWOEErmYcY6JiQI3Jn+WeR/FGISH8JbHERjpS9oRuSOPvDMJI0Z8nJeKkbOs9sBYQw==} + peerDependencies: + monaco-editor: '>= 0.25.0 < 1' + react: ^16.8.0 || ^17.0.0 || ^18.0.0 + react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 + '@mongodb-js/saslprep@1.1.8': resolution: {integrity: sha512-qKwC/M/nNNaKUBMQ0nuzm47b7ZYWQHN3pcXq4IIcoSBc2hOIrflAxJduIvvqmhoz3gR2TacTAs8vlsCVPkiEdQ==} @@ -4967,9 +5094,18 @@ packages: '@next/env@14.2.8': resolution: {integrity: sha512-L44a+ynqkolyNBnYfF8VoCiSrjSZWgEHYKkKLGcs/a80qh7AkfVUD/MduVPgdsWZ31tgROR+yJRA0PZjSVBXWQ==} + '@next/env@15.0.0-canary.104': + resolution: {integrity: sha512-7wOJhe62uL4ViZOumMwuPev4IxQaXJ4g97iMsXelOF+Q5QuuFXzbxIXh4OJMVAHZJMYkM5VyD2zxV66iYU01DQ==} + + '@next/env@15.0.0-rc.0': + resolution: {integrity: sha512-6W0ndQvHR9sXcqcKeR/inD2UTRCs9+VkSK3lfaGmEuZs7EjwwXMO2BPYjz9oBrtfPL3xuTjtXsHKSsalYQ5l1Q==} + '@next/eslint-plugin-next@14.2.8': resolution: {integrity: sha512-ue5vcq9Fjk3asACRDrzYjcGMEN7pMMDQ5zUD+FenkqvlPCVUD1x7PxBNOLfPYDZOrk/Vnl4GHmjj2mZDqPW8TQ==} + '@next/eslint-plugin-next@15.0.0-canary.53': + resolution: {integrity: sha512-maGuyj1Y0YKSoYREbzMDxVB/tL8xmYQlNR6W6jqeorwFAkl8zI+2ScRegCChCPNu4827D7MYjle5EM8iz70mug==} + '@next/mdx@14.2.8': resolution: {integrity: sha512-moOKHP25r0lgvq4BIfFLOaef5sKBXvhHWqjqMaDR7cJ4mRdaFHP49hMkMStIPYyWYuRYUx4axb+Zfm2nXOy4oQ==} peerDependencies: @@ -4987,54 +5123,108 @@ packages: cpu: [arm64] os: [darwin] + '@next/swc-darwin-arm64@15.0.0-canary.104': + resolution: {integrity: sha512-tLrkGDlVAch+dwLr0lwZt6t//KQhwJQamTt86bFeSEgmuWg8escVD5608XjIicpy4oYUeTG2e7EDjvW1/9C7+Q==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [darwin] + '@next/swc-darwin-x64@14.2.8': resolution: {integrity: sha512-87t3I86rNRSOJB1gXIUzaQWWSWrkWPDyZGsR0Z7JAPtLeX3uUOW2fHxl7dNWD2BZvbvftctTQjgtfpp7nMtmWg==} engines: {node: '>= 10'} cpu: [x64] os: [darwin] + '@next/swc-darwin-x64@15.0.0-canary.104': + resolution: {integrity: sha512-NokpzlJHGzldMdx5ALJi9w8sZbFVQj3KPjMg1EKutvkX8Z0TgZguoj0Hb+0Dh7o6fBK0CqH1mYQd/IgYeqvYew==} + engines: {node: '>= 10'} + cpu: [x64] + os: [darwin] + '@next/swc-linux-arm64-gnu@14.2.8': resolution: {integrity: sha512-ta2sfVzbOpTbgBrF9HM5m+U58dv6QPuwU4n5EX4LLyCJGKc433Z0D9h9gay/HSOjLEXJ2fJYrMP5JYYbHdxhtw==} engines: {node: '>= 10'} cpu: [arm64] os: [linux] + '@next/swc-linux-arm64-gnu@15.0.0-canary.104': + resolution: {integrity: sha512-U9P1bXaxMyGrY7HdJ1fdtS5vy2yfWF7z1Qt/8OBcZi5y6WWHloZmJ/jRMXxoHJ1lcLSsC1EcubYHgV5ys1NDcA==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [linux] + '@next/swc-linux-arm64-musl@14.2.8': resolution: {integrity: sha512-+IoLTPK6Z5uIgDhgeWnQF5/o5GBN7+zyUNrs4Bes1W3g9++YELb8y0unFybS8s87ntAKMDl6jeQ+mD7oNwp/Ng==} engines: {node: '>= 10'} cpu: [arm64] os: [linux] + '@next/swc-linux-arm64-musl@15.0.0-canary.104': + resolution: {integrity: sha512-PDOS3ySD0/YBVvKn/JhQ8xjh4HU4v2MCvqFHaoahu9v1ydmUOeuDRjQk4hUliXgvKuE/ZZksP3a9TrzpbDScsA==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [linux] + '@next/swc-linux-x64-gnu@14.2.8': resolution: {integrity: sha512-pO+hVXC+mvzUOQJJRG4RX4wJsRJ5BkURSf6dD6EjUXAX4Ml9es1WsEfkaZ4lcpmFzFvY47IkDaffks/GdCn9ag==} engines: {node: '>= 10'} cpu: [x64] os: [linux] + '@next/swc-linux-x64-gnu@15.0.0-canary.104': + resolution: {integrity: sha512-jYNKOIkqL4puFpeNjIZ/riK0+adDyjENjACMlU3HyuG7A0xCYAFxBIbmwjbGmpSv99+PPB/gAbGnB0TT2PDHUQ==} + engines: {node: '>= 10'} + cpu: [x64] + os: [linux] + '@next/swc-linux-x64-musl@14.2.8': resolution: {integrity: sha512-bCat9izctychCtf3uL1nqHq31N5e1VxvdyNcBQflkudPMLbxVnlrw45Vi87K+lt1CwrtVayHqzo4ie0Szcpwzg==} engines: {node: '>= 10'} cpu: [x64] os: [linux] + '@next/swc-linux-x64-musl@15.0.0-canary.104': + resolution: {integrity: sha512-xX3ZUWM4syINdEqsUhvQWBjoFa2P8PL96adQUfph4cpUrkrUbnBQbWA2vSdSvwoC6a80wSX+buuhJptvxzEl3A==} + engines: {node: '>= 10'} + cpu: [x64] + os: [linux] + '@next/swc-win32-arm64-msvc@14.2.8': resolution: {integrity: sha512-gbxfUaSPV7EyUobpavida2Hwi62GhSJaSg7iBjmBWoxkxlmETOD7U4tWt763cGIsyE6jM7IoNavq0BXqwdW2QA==} engines: {node: '>= 10'} cpu: [arm64] os: [win32] + '@next/swc-win32-arm64-msvc@15.0.0-canary.104': + resolution: {integrity: sha512-kUMeZOhueb5wXZTQTPvdl4V4wtJKh49TcVAHS7kcDTU9m8jrIQ3beKURWtzjD4iizgl/iar8CHuYS5CAnCGqAw==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [win32] + '@next/swc-win32-ia32-msvc@14.2.8': resolution: {integrity: sha512-PUXzEzjTTlUh3b5VAn1nlpwvujTnuCMMwbiCnaTazoVlN1nA3kWjlmp42IfURA2N/nyrlVEw7pURa/o4Qxj1cw==} engines: {node: '>= 10'} cpu: [ia32] os: [win32] + '@next/swc-win32-ia32-msvc@15.0.0-canary.104': + resolution: {integrity: sha512-6q5HYiACa6GH7+RyTlLMdUlivwi75bw2L9PRYRBuw4C0SvLYMwBf7SlshbrCrNYbIAaGajYJLZjv3IXFnsZBjA==} + engines: {node: '>= 10'} + cpu: [ia32] + os: [win32] + '@next/swc-win32-x64-msvc@14.2.8': resolution: {integrity: sha512-EnPKv0ttq02E9/1KZ/8Dn7kuutv6hy1CKc0HlNcvzOQcm4/SQtvfws5gY0zrG9tuupd3HfC2L/zcTrnBhpjTuQ==} engines: {node: '>= 10'} cpu: [x64] os: [win32] + '@next/swc-win32-x64-msvc@15.0.0-canary.104': + resolution: {integrity: sha512-OeY5GRHRv5qMPwK2e1ipX+EeTDPmRITM9OBeaeIllubWprLGeLxnC1NbKYKCt6IfCboX+wanZKQcbuyH5RMtlg==} + engines: {node: '>= 10'} + cpu: [x64] + os: [win32] + '@next/third-parties@14.2.8': resolution: {integrity: sha512-Vus4MYsb+7B2X4Mks9aCztZwgnzTxU9sHEm1Y35z7Vw1seh43ummniD9CBk7A8dVJZf8NGpx8re6YSZLkaSQiQ==} peerDependencies: @@ -5133,6 +5323,9 @@ packages: resolution: {integrity: sha512-xhfYPXoV5Dy4UkY0D+v2KkwvnDfiA/8Mt3sWCGI/hM03NsYIH8ZaG6QzS9x7pje5vHZBZJ2v6VRFVTWACnqcmQ==} engines: {node: ^16.14.0 || >=18.0.0} + '@one-ini/wasm@0.1.1': + resolution: {integrity: sha512-XuySG1E38YScSJoMlqovLru4KTUNSjgVTIjyh7qMX6aNN5HY5Ct5LhRJdxO79JtTzKfzV/bnWpz+zquYrISsvw==} + '@opentelemetry/api-logs@0.52.1': resolution: {integrity: sha512-qnSqB2DQ9TPP96dl8cDubDvrUyWc0/sK81xHTK8eSUspzDM3bsewX903qclQFvVhgStjRWdC5bLb3kQqMkfV5A==} engines: {node: '>=14'} @@ -5307,6 +5500,34 @@ packages: peerDependencies: payload: ^2.0.0 + '@payloadcms/db-mongodb@3.0.0-beta.102': + resolution: {integrity: sha512-vXShXDNjBDymJ1Tb9oN5bsqYMrBNRXnr+7tMvABrkwiLq7jBoEK0sDlisudcHK/shexaWwLpME+G5gijuz3iFg==} + peerDependencies: + payload: 3.0.0-beta.102 + + '@payloadcms/db-postgres@3.0.0-beta.102': + resolution: {integrity: sha512-EhB658SuTgkim4+CvU1NcsVSdjuCs2sfrVCJ+jLxn2eWXQrkgDpEfjhzGVHBdRDExUtax61ioDeHoF3+mtYBrQ==} + peerDependencies: + payload: 3.0.0-beta.102 + + '@payloadcms/drizzle@3.0.0-beta.102': + resolution: {integrity: sha512-+6vDmmeBYFXstCZ2SpsKTly/wmzrfD4/0ZSLdVlDswgPRr5j39HOqvcRGq8cySuG7dyVbq3BUt6j/ZQWTAO1qg==} + peerDependencies: + payload: 3.0.0-beta.102 + + '@payloadcms/email-nodemailer@3.0.0-beta.102': + resolution: {integrity: sha512-gvFvTZndelXWMK3rGPLwjAZRof9aLQSuX7XLTjFQwKU77s8jcLRPvaSkTzdWDQxp7lr4upk/tHkIIBKNhfFSiw==} + engines: {node: ^18.20.2 || >=20.9.0} + peerDependencies: + payload: 3.0.0-beta.102 + + '@payloadcms/graphql@3.0.0-beta.102': + resolution: {integrity: sha512-hc16MsbX/l+Ip2fucRhtYjBItB8axa/aD8fbHhhaPpzYXqSYQVizurmiprPdu9tPchGOZ3lqkqWFkvZvGQBphA==} + hasBin: true + peerDependencies: + graphql: ^16.8.1 + payload: 3.0.0-beta.102 + '@payloadcms/live-preview-react@0.2.0': resolution: {integrity: sha512-ao7DN2GJFPoipw2cmt2M0tfwmUa0hIn3UxB5EaMv6RduMuOMQlG5hx5ouX3g5wPMcQpyvLwxCuuiQhj1nKMGhA==} peerDependencies: @@ -5315,6 +5536,14 @@ packages: '@payloadcms/live-preview@0.2.2': resolution: {integrity: sha512-FOcg/HOIzzESjoT4vXgM7Pjd+bODodZTKR/pEJWsjLtyARd6NfF3MNWS+tdlfa3TOZrdT8WnHBAKsKyREyE3og==} + '@payloadcms/next@3.0.0-beta.102': + resolution: {integrity: sha512-T2yEF6oOXwf8dwKqIUQ3RoaQhajDFot54Q5S46sji1o1cu6tRlBg/xp5zBEiN6k/VkxoRKVKZTzzYg60EkC7qA==} + engines: {node: ^18.20.2 || >=20.9.0} + peerDependencies: + graphql: ^16.8.1 + next: ^15.0.0-canary.104 + payload: 3.0.0-beta.102 + '@payloadcms/plugin-cloud-storage@1.1.3': resolution: {integrity: sha512-5YbCqnDnux2DR0RQwqgJAjvOybZ0GXst4h8L4eygozofELcDJKStyuaAAEv7JIA8EByDFr1DIxLSwmmQf0ytuw==} peerDependencies: @@ -5336,6 +5565,11 @@ packages: '@google-cloud/storage': optional: true + '@payloadcms/plugin-cloud@3.0.0-beta.102': + resolution: {integrity: sha512-Osh8jmeWt7Q/lojIKBfyGIubbE41Z3XnZ1duJjGF6Zc0xNwvxrT9oC+X3rixARg9CNU+SdmRACetRTfEsePfRw==} + peerDependencies: + payload: 3.0.0-beta.102 + '@payloadcms/plugin-nested-docs@1.0.12': resolution: {integrity: sha512-CZcfGjN3nUtlAHHlbjgnmiB+lPCw3X7CNN2t2IL5+n94OH98Kwfnu+qhPV/ALm1JAWMY0sQ46kRIwWHij016Nw==} peerDependencies: @@ -5353,12 +5587,53 @@ packages: payload: ^2.7.0 react: ^16.8.0 || ^17.0.0 || ^18.0.0 + '@payloadcms/plugin-seo@3.0.0-beta.102': + resolution: {integrity: sha512-NkqIHWMHvVlBsSqajQkeVn4/C2bs38gPJlSkpukBdVWo/nO6FFTeCpEGGuPUcqQ5goHdcV4BdUE2WBYrQQ1yNw==} + peerDependencies: + payload: 3.0.0-beta.102 + react: ^19.0.0 || ^19.0.0-rc-06d0b89e-20240801 + react-dom: ^19.0.0 || ^19.0.0-rc-06d0b89e-20240801 + + '@payloadcms/richtext-lexical@3.0.0-beta.102': + resolution: {integrity: sha512-zGxQ1zSZTc7mAYVLtImJPM+TFhgjNU9BsAFY7DVllZflzXhLi3x48KovEL60KbZFdNgw+E8/y48C6OjPdk88HQ==} + engines: {node: ^18.20.2 || >=20.9.0} + peerDependencies: + '@faceless-ui/modal': 3.0.0-beta.2 + '@faceless-ui/scroll-info': 2.0.0-beta.0 + '@lexical/headless': 0.17.0 + '@lexical/link': 0.17.0 + '@lexical/list': 0.17.0 + '@lexical/mark': 0.17.0 + '@lexical/markdown': 0.17.0 + '@lexical/react': 0.17.0 + '@lexical/rich-text': 0.17.0 + '@lexical/selection': 0.17.0 + '@lexical/table': 0.17.0 + '@lexical/utils': 0.17.0 + '@payloadcms/next': 3.0.0-beta.102 + lexical: 0.17.0 + payload: 3.0.0-beta.102 + react: ^19.0.0 || ^19.0.0-rc-06d0b89e-20240801 + react-dom: ^19.0.0 || ^19.0.0-rc-06d0b89e-20240801 + '@payloadcms/richtext-slate@1.5.2': resolution: {integrity: sha512-0rq9zgOhpPHO5kcFlajld3h5beww6jjYwHZH5sxgtuen3bz6pepIr3agg650R/aE1+sfez0NdpwoB0gb7FX03g==} peerDependencies: payload: ^2.3.0 react: ^16.8.0 || ^17.0.0 || ^18.0.0 + '@payloadcms/translations@3.0.0-beta.102': + resolution: {integrity: sha512-H93+fbtIUJ764NDAXO7LkFUDq4cmmOnh0AlMgDlNqeXopUwehgdPt4gl5F3jJ0D0Pb4mCEag8sgIarlS0OOR2Q==} + + '@payloadcms/ui@3.0.0-beta.102': + resolution: {integrity: sha512-L2KHkNBAbS1hD0DQivov0aguNPu+13CZAYK34QXv/2xLg97f7gTEE2bz/oxoJ2fp+m4Z8lnHFQfW4RSAtPW8cQ==} + engines: {node: ^18.20.2 || >=20.9.0} + peerDependencies: + next: ^15.0.0-canary.104 + payload: 3.0.0-beta.102 + react: ^19.0.0 || ^19.0.0-rc-06d0b89e-20240801 + react-dom: ^19.0.0 || ^19.0.0-rc-06d0b89e-20240801 + '@pkgjs/parseargs@0.11.0': resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} engines: {node: '>=14'} @@ -5407,6 +5682,10 @@ packages: '@prisma/instrumentation@5.18.0': resolution: {integrity: sha512-r074avGkpPXItk+josQPhufZEmGhUCb16PQx4ITPS40vWTpTPET4VsgCBZB2alIN6SS7pRFod2vz2M2HHEEylQ==} + '@react-email/render@0.0.7': + resolution: {integrity: sha512-hMMhxk6TpOcDC5qnKzXPVJoVGEwfm+U5bGOPH+MyTTlx0F02RLQygcATBKsbP7aI/mvkmBAZoFbgPIHop7ovug==} + engines: {node: '>=16.0.0'} + '@react-leaflet/core@2.1.0': resolution: {integrity: sha512-Qk7Pfu8BSarKGqILj4x7bCSZ1pjuAPZ+qmRwH5S7mDS91VSbVVsJSrW4qA+GPrro8t69gFYVMWb1Zc4yFmPiVg==} peerDependencies: @@ -5487,6 +5766,9 @@ packages: '@rushstack/eslint-patch@1.10.4': resolution: {integrity: sha512-WJgX9nzTqknM393q1QJDJmoW28kUfEnybeTfVNcNAPnIx210RXm2DiXiHzfNPJNIUUb1tJnz/l4QGtJ30PgWmA==} + '@selderee/plugin-htmlparser2@0.10.0': + resolution: {integrity: sha512-gW69MEamZ4wk1OsOq1nG1jcyhXIQcnrsX5JwixVw/9xaiav8TCyjESAruu1Rz9yyInhgBXxkNwMeygKnN2uxNA==} + '@sendgrid/client@6.5.5': resolution: {integrity: sha512-Nbfgo94gbWSL8PIgJfuHoifyOJJepvV8NQkkglctAEfb1hyozKhrzE6v1kPG/z4j0RodaTtXD5LJj/t0q/VhLA==} engines: {node: '>=6.0.0'} @@ -6306,6 +6588,9 @@ packages: '@swc/counter@0.1.3': resolution: {integrity: sha512-e2BR4lsJkkRlKZ/qCHPw9ZaSxc0MVUd7gtbtaB7aMvHeJVYe8sOB8DBZkP2DtISHGSku9sCK6T6cnY0CtXrOCQ==} + '@swc/helpers@0.5.12': + resolution: {integrity: sha512-KMZNXiGibsW9kvZAO1Pam2JPTDBm+KSHMMHWdsyI/1DbIZjT2A6Gy3hblVXUMEDvUAKq+e0vL0X0o54owWji7g==} + '@swc/helpers@0.5.5': resolution: {integrity: sha512-KGYxvIOXcceOAbEk4bi/dVLEK9z8sZ0uBB3Il5b1rhfClSpcX0yfRO0KmTkqR2cnQDymwLB+25ZyMzICg/cm/A==} @@ -6417,6 +6702,9 @@ packages: '@types/body-parser@1.19.5': resolution: {integrity: sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg==} + '@types/busboy@1.5.4': + resolution: {integrity: sha512-kG7WrUuAKK0NoyxfQHsVE6j1m01s6kMma64E+OZenQABMQyTJop1DumUWcLwAQ2JzpefU7PDYoRDKl8uZosFjw==} + '@types/caseless@0.12.5': resolution: {integrity: sha512-hWtVTC2q7hc7xZ/RLbxapMvDMgUnDvKvMOpKal4DrMyfGBUfB1oKaZlIRr6mJL+If3bAP6sV/QneGzF6tJjZDg==} @@ -6594,6 +6882,9 @@ packages: '@types/node@20.14.14': resolution: {integrity: sha512-d64f00982fS9YoOgJkAMolK7MN8Iq3TDdVjchbYHdEmjth/DHowx82GnoA+tVUAN+7vxfYUgAzi+JXbKNd2SDQ==} + '@types/node@22.5.4': + resolution: {integrity: sha512-FDuKUJQm/ju9fT/SeX/6+gBzoPzlVCzfzmGkwKvRHQVxi4BntVbyIwf6a4Xn62mrvndLiml6z/UBXIdEVjQLXg==} + '@types/nodemailer-sendgrid@1.0.3': resolution: {integrity: sha512-UpLLUyrXjcs8PIwhfY0/CqXAoJ5CcDNUs6hia9QT9+kcotCFK6siVC5dHUGpTAsodwteX2JoiQ3Na7ZbDkijgw==} @@ -6666,6 +6957,9 @@ packages: '@types/unist@3.0.2': resolution: {integrity: sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==} + '@types/uuid@10.0.0': + resolution: {integrity: sha512-7gqG38EyHgyP1S+7+xomFtL+ZNHcKv6DwNaCZmJmo1vgMugyF3TCnXVg4t1uk89mLNwnLtnY3TpOpCOyp1/xHQ==} + '@types/uuid@9.0.8': resolution: {integrity: sha512-jg+97EGIcY9AGHJJRaaPVgetKDsrTgbRjQ5Msgjh/DQKEFl0DtyRr/VCOyD1T2R1MNeWPK/u7JoGhlDZnKBAfA==} @@ -7041,9 +7335,15 @@ packages: ajv@6.12.6: resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} + ajv@8.14.0: + resolution: {integrity: sha512-oYs1UUtO97ZO2lJ4bwnWeQW8/zvOIQLGKcvPTsWmvc2SYgBb+upuNS5NxoLaMU4h8Ju3Nbj6Cq8mD2LQoqVKFA==} + ajv@8.17.1: resolution: {integrity: sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==} + amazon-cognito-identity-js@6.3.12: + resolution: {integrity: sha512-s7NKDZgx336cp+oDeUtB2ZzT8jWJp/v2LWuYl+LQtMEODe22RF1IJ4nRiDATp+rp1pTffCZcm44Quw4jx2bqNg==} + ansi-colors@4.1.3: resolution: {integrity: sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==} engines: {node: '>=6'} @@ -7234,6 +7534,9 @@ packages: resolution: {integrity: sha512-Mr2ZakwQ7XUAjp7pAwQWRhhK8mQQ6JAaNWSjmjxil0R8BPioMtQsTLOolGYkji1rcL++3dCqZA3zWqpT+9Ew6g==} engines: {node: '>=4'} + axios@1.4.0: + resolution: {integrity: sha512-S4XCWMEmzvo64T9GfvQDOXgYRDJ/wsSZc7Jvdgx5u1sd0JwsuPLqb3SYmusag+edF6ziyMensPVqLTSc1PiSEA==} + axios@1.7.2: resolution: {integrity: sha512-2A8QhOMrbomlDuiLeK9XibIBzuHeRcqqNOHp0Cyp5EoJ1IFDh+XZH3A6BkXtv0K4gFGCI0Y4BM7B1wOEi0Rmgw==} @@ -7434,6 +7737,10 @@ packages: buffer-from@1.1.2: resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} + buffer-writer@2.0.0: + resolution: {integrity: sha512-a7ZpuTZU1TRtnwyCNW3I5dc0wWNC3VR9S++Ewyk2HHZdrO3CQJqSpd+95Us590V6AL7JqUAH2IwZ/398PmNFgw==} + engines: {node: '>=4'} + buffer-xor@1.0.3: resolution: {integrity: sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ==} @@ -7714,6 +8021,10 @@ packages: comma-separated-tokens@2.0.3: resolution: {integrity: sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==} + commander@10.0.1: + resolution: {integrity: sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==} + engines: {node: '>=14'} + commander@12.1.0: resolution: {integrity: sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA==} engines: {node: '>=18'} @@ -7761,6 +8072,10 @@ packages: resolution: {integrity: sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==} engines: {'0': node >= 6.0} + condense-newlines@0.2.1: + resolution: {integrity: sha512-P7X+QL9Hb9B/c8HI5BFFKmjgBu2XpQuF98WZ9XkO+dBGgk5XgwiQz7o1SmpglNWId3581UcS0SFAWfoIhMHPfg==} + engines: {node: '>=0.10.0'} + conf@10.2.0: resolution: {integrity: sha512-8fLl9F04EJqjSqH+QjITQfJF8BrOVaYr1jewVgSRAEWePfxT0sku4w2hrGQ60BC/TNLGQ2pgxNlTbWQmMPFvXg==} engines: {node: '>=12'} @@ -7768,6 +8083,9 @@ packages: confbox@0.1.7: resolution: {integrity: sha512-uJcB/FKZtBMCJpK8MQji6bJHgu1tixKPxRLeGkNzBoOZzpnZUJm0jm2/sBDWcuBx1dYgxV4JU+g5hmNxCyAmdA==} + config-chain@1.1.13: + resolution: {integrity: sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==} + confusing-browser-globals@1.0.11: resolution: {integrity: sha512-JsPKdmh8ZkmnHxDk55FZ1TqVLvEQTvoByJZRN9jzI0UjxK/QgAmsphz7PGtqgPieQZ/CQcHWXCR7ATDNhGe+YA==} @@ -7881,6 +8199,11 @@ packages: create-require@1.1.1: resolution: {integrity: sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==} + cross-env@7.0.3: + resolution: {integrity: sha512-+/HKd6EgcQCJGh2PSjZuUitQBQynKor4wrFbRg4DtAgS1aWO+gU52xpH7M9ScGgXSYmAVS9bIJ8EzuaGw0oNAw==} + engines: {node: '>=10.14', npm: '>=6', yarn: '>=1'} + hasBin: true + cross-spawn@5.1.0: resolution: {integrity: sha512-pTgQJ5KC0d2hcY8eyL1IzlBPYjTkyH72XRZPnLyKus2mBfNjQs3klqbJU2VILqZryAZUt9JOb3h/mWMy23/f5A==} @@ -8162,6 +8485,9 @@ packages: resolution: {integrity: sha512-fnULvOpxnC5/Vg3NCiWelDsLiUc9bRwAPs/+LfTLNvetFCtCTN+yQz15C/fs4AwX1R9K5GLtLfn8QW+dWisaAw==} engines: {node: '>=0.11'} + date-fns@3.3.1: + resolution: {integrity: sha512-y8e109LYGgoQDveiEBD3DYXKba1jWf5BA8YU1FL5Tvm0BTdEfy54WLCwnuYWZNnzzvALy/QQ4Hov+Q9RVRv+Zw==} + date-fns@3.6.0: resolution: {integrity: sha512-fRHTG8g/Gif+kSh50gaGEdToemgfj74aRX3swtiouboip5JDLAyDE9F11nHMIcvOaXeOC6D7SpNhi7uFyB7Uww==} @@ -8419,6 +8745,99 @@ packages: resolution: {integrity: sha512-IrPdXQsk2BbzvCBGBOTmmSH5SodmqZNt4ERAZDmW4CT+tL8VtvinqywuANaFu4bOMWki16nqf0e4oC0QIaDr/g==} engines: {node: '>=10'} + drizzle-kit@0.23.2-df9e596: + resolution: {integrity: sha512-MOvoeDE1c05XGevXLqhRVu/TNHwueibPZqMUH/kG1v6DOHD5pB2poRpjphr4sjae2QDS6h+PU5pCfzqEa6le6Q==} + hasBin: true + + drizzle-orm@0.32.1: + resolution: {integrity: sha512-Wq1J+lL8PzwR5K3a1FfoWsbs8powjr3pGA4+5+2ueN1VTLDNFYEolUyUWFtqy8DVRvYbL2n7sXZkgVmK9dQkng==} + peerDependencies: + '@aws-sdk/client-rds-data': '>=3' + '@cloudflare/workers-types': '>=3' + '@electric-sql/pglite': '>=0.1.1' + '@libsql/client': '*' + '@neondatabase/serverless': '>=0.1' + '@op-engineering/op-sqlite': '>=2' + '@opentelemetry/api': ^1.4.1 + '@planetscale/database': '>=1' + '@prisma/client': '*' + '@tidbcloud/serverless': '*' + '@types/better-sqlite3': '*' + '@types/pg': '*' + '@types/react': '>=18' + '@types/sql.js': '*' + '@vercel/postgres': '>=0.8.0' + '@xata.io/client': '*' + better-sqlite3: '>=7' + bun-types: '*' + expo-sqlite: '>=13.2.0' + knex: '*' + kysely: '*' + mysql2: '>=2' + pg: '>=8' + postgres: '>=3' + prisma: '*' + react: '>=18' + sql.js: '>=1' + sqlite3: '>=5' + peerDependenciesMeta: + '@aws-sdk/client-rds-data': + optional: true + '@cloudflare/workers-types': + optional: true + '@electric-sql/pglite': + optional: true + '@libsql/client': + optional: true + '@neondatabase/serverless': + optional: true + '@op-engineering/op-sqlite': + optional: true + '@opentelemetry/api': + optional: true + '@planetscale/database': + optional: true + '@prisma/client': + optional: true + '@tidbcloud/serverless': + optional: true + '@types/better-sqlite3': + optional: true + '@types/pg': + optional: true + '@types/react': + optional: true + '@types/sql.js': + optional: true + '@vercel/postgres': + optional: true + '@xata.io/client': + optional: true + better-sqlite3: + optional: true + bun-types: + optional: true + expo-sqlite: + optional: true + knex: + optional: true + kysely: + optional: true + mysql2: + optional: true + pg: + optional: true + postgres: + optional: true + prisma: + optional: true + react: + optional: true + sql.js: + optional: true + sqlite3: + optional: true + duplexer2@0.1.4: resolution: {integrity: sha512-asLFVfWWtJ90ZyOUHMqk7/S2w2guQKxUI2itj3d92ADHhxUSbCMGi1f1cBcJ7xM1To+pE/Khbwo1yuNbMEPKeA==} @@ -8434,6 +8853,11 @@ packages: ecdsa-sig-formatter@1.0.11: resolution: {integrity: sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ==} + editorconfig@1.0.4: + resolution: {integrity: sha512-L9Qe08KWTlqYMVvMcTIvMAdl1cDUubzRNYL+WfA4bLDMHe4nemKkpmYzkznE1FwLKu0EEmy6obgQKzMJrg4x9Q==} + engines: {node: '>=14'} + hasBin: true + ee-first@1.1.1: resolution: {integrity: sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==} @@ -8570,11 +8994,26 @@ packages: peerDependencies: esbuild: '>=0.12 <1' + esbuild@0.18.20: + resolution: {integrity: sha512-ceqxoedUrcayh7Y7ZX6NdbbDzGROiyVBgC4PriJThBKSVPWnnFHZAkfI1lJT8QFkOwH4qOS2SJkS4wvpGl8BpA==} + engines: {node: '>=12'} + hasBin: true + + esbuild@0.19.12: + resolution: {integrity: sha512-aARqgq8roFBj054KvQr5f1sFu0D65G+miZRCuJyJ0G13Zwx7vRar5Zhn2tkQNzIXcBrNVsv/8stehpj+GAjgbg==} + engines: {node: '>=12'} + hasBin: true + esbuild@0.21.5: resolution: {integrity: sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==} engines: {node: '>=12'} hasBin: true + esbuild@0.23.1: + resolution: {integrity: sha512-VVNz/9Sa0bs5SELtn3f7qhJCDPCF5oMEl5cO9/SSinpE9hbPVvxbd572HH5AKiP7WD8INO53GgfDDhRjkylHEg==} + engines: {node: '>=18'} + hasBin: true + escalade@3.1.2: resolution: {integrity: sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==} engines: {node: '>=6'} @@ -8625,6 +9064,15 @@ packages: typescript: optional: true + eslint-config-next@15.0.0-canary.53: + resolution: {integrity: sha512-YRUEKd+GNOyJRfI3tfntEGyJixmy1NgdVVrUuz/PAHBTNTQfa1GG8zhwOBt2mmgzyy5REjhPqPQTcoCEKnjEZQ==} + peerDependencies: + eslint: ^7.23.0 || ^8.0.0 + typescript: '>=3.3.1' + peerDependenciesMeta: + typescript: + optional: true + eslint-config-prettier@9.1.0: resolution: {integrity: sha512-NSWl5BFQWEPi1j4TjVNItzYV7dZXZ+wP6I6ZhrBGpChQhZRUaElihE9uRRkcbRnNb76UMKDF3r+WTmNcGPKsqw==} hasBin: true @@ -8803,6 +9251,10 @@ packages: resolution: {integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + eslint-scope@8.0.2: + resolution: {integrity: sha512-6E4xmrTw5wtxnLA5wYL3WDfhZ/1bUBGOXV0zQvVRDOtrR8D0p6W7fs3JweNYhwRYeGvd/1CKX2se0/2s7Q/nJA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + eslint-visitor-keys@2.1.0: resolution: {integrity: sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==} engines: {node: '>=10'} @@ -8811,15 +9263,33 @@ packages: resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + eslint-visitor-keys@4.0.0: + resolution: {integrity: sha512-OtIRv/2GyiF6o/d8K7MYKKbXrOUBIK6SfkIRM4Z0dY3w+LiQ0vy3F57m0Z71bjbyeiWFiHJ8brqnmE6H6/jEuw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + eslint@8.57.0: resolution: {integrity: sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} hasBin: true + eslint@9.10.0: + resolution: {integrity: sha512-Y4D0IgtBZfOcOUAIQTSXBKoNGfY0REGqHJG6+Q81vNippW5YlKjHFj4soMxamKK1NXHUWuBZTLdU3Km+L/pcHw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + hasBin: true + peerDependencies: + jiti: '*' + peerDependenciesMeta: + jiti: + optional: true + esniff@2.0.1: resolution: {integrity: sha512-kTUIGKQ/mDPFoJ0oVfcmyJn4iBDRptjNVIzwIFR7tqWXdVI9xfA2RMwY/gbSpJG3lkdWNEjLap/NqVHZiJsdfg==} engines: {node: '>=0.10'} + espree@10.1.0: + resolution: {integrity: sha512-M1M6CpiE6ffoigIOWYO9UDP8TMUw9kqb21tf+08IgDYjCsOvCuDt4jQcZmoYxx+w7zlKw9/N0KXfto+I8/FrXA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + espree@9.6.1: resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -8955,6 +9425,9 @@ packages: resolution: {integrity: sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g==} engines: {'0': node >=0.6.0} + fast-base64-decode@1.0.0: + resolution: {integrity: sha512-qwaScUgUGBYeDNRnbc/KyllVU88Jk1pRHPStuF/lO7B0/RTRLj7U0lkdTAutlBblY08rwZDff6tNU9cjv6j//Q==} + fast-copy@3.0.2: resolution: {integrity: sha512-dl0O9Vhju8IrcLndv2eU4ldt1ftXMqqfgN4H1cpmGV7P6jeB9FwpN9a2c8DPGE1Ys88rNUJVYDHq73CGAGOPfQ==} @@ -8968,6 +9441,10 @@ packages: resolution: {integrity: sha512-WF1Wi8PwwSY7/6Kx0vKXtw8RwuSGoM1bvDaJbu7MxDlR1vovZjIAKrnzyrThgAjm6JDTu0fVgWXDlMGspodfoQ==} engines: {node: '>=6.0.0'} + fast-glob@3.3.1: + resolution: {integrity: sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==} + engines: {node: '>=8.6.0'} + fast-glob@3.3.2: resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==} engines: {node: '>=8.6.0'} @@ -9022,6 +9499,10 @@ packages: resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==} engines: {node: ^10.12.0 || >=12.0.0} + file-entry-cache@8.0.0: + resolution: {integrity: sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==} + engines: {node: '>=16.0.0'} + file-loader@6.2.0: resolution: {integrity: sha512-qo3glqyTa61Ytg4u73GultjHGjdRyig3tG6lPtyX/jOEJvHif9uB0/OCI2Kif6ctF3caQTW2G5gym21oAsI4pw==} engines: {node: '>= 10.13.0'} @@ -9032,6 +9513,10 @@ packages: resolution: {integrity: sha512-/yFHK0aGjFEgDJjEKP0pWCplsPFPhwyfwevf/pVxiN0tmE4L9LmwWxWukdJSHdoCli4VgQLehjJtwQBnqmsKcw==} engines: {node: '>=10'} + file-type@17.1.6: + resolution: {integrity: sha512-hlDw5Ev+9e883s0pwUsuuYNu4tD7GgpUnOvykjv1Gya0ZIjuKumthDRua90VUn6/nlRKAjcxLUnHNTIUWwWIiw==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + file-uri-to-path@1.0.0: resolution: {integrity: sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==} @@ -9085,6 +9570,10 @@ packages: resolution: {integrity: sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + find-up@7.0.0: + resolution: {integrity: sha512-YyZM99iHrqLKjmt4LJDj58KI+fYyufRLBSYcqycxf//KpBk9FoewoGX0450m9nB44qrZnovzC2oeP5hUibxc/g==} + engines: {node: '>=18'} + findup-sync@4.0.0: resolution: {integrity: sha512-6jvvn/12IC4quLBL1KNokxC7wWTvYncaVUYSoxWw7YykPLuRrnv4qdHcSOywOI5RpkOVGeQRtWM8/q+G6W6qfQ==} engines: {node: '>= 8'} @@ -9093,6 +9582,10 @@ packages: resolution: {integrity: sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==} engines: {node: ^10.12.0 || >=12.0.0} + flat-cache@4.0.1: + resolution: {integrity: sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==} + engines: {node: '>=16'} + flat@5.0.2: resolution: {integrity: sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==} hasBin: true @@ -9111,6 +9604,9 @@ packages: focus-trap@6.9.4: resolution: {integrity: sha512-v2NTsZe2FF59Y+sDykKY+XjqZ0cPfhq/hikWVL88BqLivnNiEffAsac6rP6H45ff9wG9LL5ToiDqrLEP9GX9mw==} + focus-trap@7.5.4: + resolution: {integrity: sha512-N7kHdlgsO/v+iD/dMoJKtsSqs5Dz/dXZVebRgJw23LDk+jMi/974zyiOYDziY2JPp8xivq9BmUGwIJMiuSBi7w==} + follow-redirects@1.15.6: resolution: {integrity: sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA==} engines: {node: '>=4.0'} @@ -9363,6 +9859,10 @@ packages: resolution: {integrity: sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==} engines: {node: '>=8'} + globals@14.0.0: + resolution: {integrity: sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==} + engines: {node: '>=18'} + globalthis@1.0.4: resolution: {integrity: sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==} engines: {node: '>= 0.4'} @@ -9407,6 +9907,12 @@ packages: peerDependencies: graphql: '>=0.11 <=16' + graphql-http@1.22.1: + resolution: {integrity: sha512-4Jor+LRbA7SfSaw7dfDUs2UBzvWg3cKrykfHRgKsOIvQaLuf+QOcG2t3Mx5N9GzSNJcuqMqJWz0ta5+BryEmXg==} + engines: {node: '>=12'} + peerDependencies: + graphql: '>=0.11 <=16' + graphql-playground-html@1.6.30: resolution: {integrity: sha512-tpCujhsJMva4aqE8ULnF7/l3xw4sNRZcSHu+R00VV+W0mfp+Q20Plvcrp+5UXD+2yS6oyCXncA+zoQJQqhGCEw==} @@ -9445,6 +9951,10 @@ packages: resolution: {integrity: sha512-59LZHPdGZVh695Ud9lRzPBVTtlX9ZCV150Er2W43ro37wVof0ctenSaskPPjN7lVTIN8mSZt8PHUNKZuNQUuxw==} engines: {node: ^12.22.0 || ^14.16.0 || ^16.0.0 || >=17.0.0} + graphql@16.9.0: + resolution: {integrity: sha512-GGTKBX4SD7Wdb8mqeDLni2oaRGYQWjWHGKPQ24ZMnUtKfcsVoiv4uX8+LJr1K6U5VW2Lu1BwJnj7uiori0YtRw==} + engines: {node: ^12.22.0 || ^14.16.0 || ^16.0.0 || >=17.0.0} + gray-matter@4.0.3: resolution: {integrity: sha512-5v6yZd4JK3eMI3FqqCouswVqwugaA9r4dNZB1wwcmrD02QkV5H0y7XBQW8QwQqEaZY1pM9aqORSORhJRdNK44Q==} engines: {node: '>=6.0'} @@ -9590,6 +10100,10 @@ packages: resolution: {integrity: sha512-ztqyC3kLto0e9WbNp0aeP+M3kTt+nbaIveGmUxAtZa+8iFgKLUOD4YKM5j+f3QD89bra7UeumolZHKuOXnTmeQ==} engines: {node: '>=8'} + html-to-text@9.0.3: + resolution: {integrity: sha512-hxDF1kVCF2uw4VUJ3vr2doc91pXf2D5ngKcNviSitNkhP9OMOaJkDrFIFL6RMvko7NisWTEiqGpQ9LAxcVok1w==} + engines: {node: '>=14'} + html-tokenize@2.0.1: resolution: {integrity: sha512-QY6S+hZ0f5m1WT8WffYN+Hg+xm/w5I8XeUcAq/ZYP5wVC8xbKi4Whhru3FtrAebD5EhBW8rmFzkDI6eCAuFe2w==} hasBin: true @@ -9618,6 +10132,9 @@ packages: htmlparser2@6.1.0: resolution: {integrity: sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==} + htmlparser2@8.0.2: + resolution: {integrity: sha512-GYdjWKDkbRLkZ5geuHs5NY1puJ+PXwP7+fHPRz06Eirsb9ugf6d8kkXav6ADhcODhFFPMIXyxkxSuMf3D6NCFA==} + http-cache-semantics@4.1.1: resolution: {integrity: sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==} @@ -10075,6 +10592,10 @@ packages: resolution: {integrity: sha512-LvIm3/KWzS9oRFHugab7d+M/GcBXuXX5xZkzPmN+NxihdQlZUQ4dWuSV1xR/sq6upL1TJEDrfBgRepHFdBtSNQ==} engines: {node: '>= 0.4'} + is-whitespace@0.3.0: + resolution: {integrity: sha512-RydPhl4S6JwAyj0JJjshWJEFG6hNye3pZFBRZaTUfZFwGHxzppNaNOVgQuS/E/SlhrApuMXrpnK1EEIXfdo3Dg==} + engines: {node: '>=0.10.0'} + is-windows@1.0.2: resolution: {integrity: sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==} engines: {node: '>=0.10.0'} @@ -10102,6 +10623,12 @@ packages: isomorphic-fetch@3.0.0: resolution: {integrity: sha512-qvUtwJ3j6qwsF3jLxkZ72qCgjMysPzDfeV240JHiGZsANBYd+EEuu35v7dfrJ9Up0Ak07D7GGSkGhCHTqg/5wA==} + isomorphic-unfetch@3.1.0: + resolution: {integrity: sha512-geDJjpoZ8N0kWexiwkX8F9NkTsXhetLPVbZFQ+JTW239QNOwvB0gniuR1Wc6f0AMTn7/mFGyXvHTifrCp/GH8Q==} + + isomorphic.js@0.2.5: + resolution: {integrity: sha512-PIeMbHqMt4DnUP3MA/Flc0HElYjMXArsw1qwJZcm9sqR8mq3l8NYizFMty0pWwE/tzIGH3EKK5+jes5mAr85yw==} + isstream@0.1.2: resolution: {integrity: sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g==} @@ -10299,6 +10826,18 @@ packages: resolution: {integrity: sha512-34wB/Y7MW7bzjKRjUKTa46I2Z7eV62Rkhva+KkopW7Qvv/OSWBqvkSY7vusOPrNuZcUG3tApvdVgNB8POj3SPw==} engines: {node: '>=10'} + js-beautify@1.15.1: + resolution: {integrity: sha512-ESjNzSlt/sWE8sciZH8kBF8BPlwXPwhR6pWKAw8bw4Bwj+iZcnKW6ONWUutJ7eObuBZQpiIb8S7OYspWrKt7rA==} + engines: {node: '>=14'} + hasBin: true + + js-cookie@2.2.1: + resolution: {integrity: sha512-HvdH2LzI/EAZcUwA8+0nKNtWHqS+ZmijLA30RwZA0bo7ToCckjK5MkGhjED9KoRcXO6BaGI3I9UIzSA1FKFPOQ==} + + js-cookie@3.0.5: + resolution: {integrity: sha512-cEiJEAEoIbWfCZYKWhVwFuvPX1gETRYPw6LlaTKoxD3s2AkXzkCjnp6h0V77ozyqj0jakteJ4YqDJT830+lVGw==} + engines: {node: '>=14'} + js-tokens@4.0.0: resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} @@ -10380,6 +10919,11 @@ packages: engines: {node: '>=16.0.0'} hasBin: true + json-schema-to-typescript@15.0.1: + resolution: {integrity: sha512-gSSg20skxv+ZQqR8Y8itZt+2iYFGNgneuTgf/Va0TBw+zo6JsykDG1bqhkhMs5g/vIdqmZx55oQJLbgOEuxPJw==} + engines: {node: '>=16.0.0'} + hasBin: true + json-schema-traverse@0.4.1: resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} @@ -10487,6 +11031,10 @@ packages: keyv@4.5.4: resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} + kind-of@3.2.2: + resolution: {integrity: sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==} + engines: {node: '>=0.10.0'} + kind-of@6.0.3: resolution: {integrity: sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==} engines: {node: '>=0.10.0'} @@ -10510,6 +11058,9 @@ packages: resolution: {integrity: sha512-MbjN408fEndfiQXbFQ1vnd+1NoLDsnQW41410oQBXiyXDMYH5z505juWa4KUE1LqxRC7DgOgZDbKLxHIwm27hA==} engines: {node: '>=0.10'} + leac@0.6.0: + resolution: {integrity: sha512-y+SqErxb8h7nE/fiEX07jsbuhrpO9lL8eca7/Y1nuWV2moNlXhyd59iDGcRf6moVyDMbmTNzL40SUyrFU/yDpg==} + leaflet@1.9.4: resolution: {integrity: sha512-nxS1ynzJOmOlHp+iL3FyWqK89GtNL8U8rvlMOsQdTTssxZwCXh8N2NB3GDQOL+YR3XnWyZAxwQixURb+FA74PA==} @@ -10521,6 +11072,14 @@ packages: resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} engines: {node: '>= 0.8.0'} + lexical@0.17.0: + resolution: {integrity: sha512-cCFmANO5rIf34NF0go/hxp5S3V5Z8G2Rsa1FJy50qF2WM5EJNJ/MqN75TApjfgMkfrbO6gau3X12nCqwsT7aDg==} + + lib0@0.2.97: + resolution: {integrity: sha512-Q4d1ekgvufi9FiHkkL46AhecfNjznSL9MRNoJRQ76gBHS9OqU2ArfQK0FvBpuxgWeJeNI0LVgAYMIpsGeX4gYg==} + engines: {node: '>=16'} + hasBin: true + lie@3.1.1: resolution: {integrity: sha512-RiNhHysUjhrDQntfYSfY4MU24coXXdEOgw9WGcKHNeEwffDYbF//u87M1EWaMGzuFoSbqW0C9C6lEEhDOAswfw==} @@ -10957,6 +11516,10 @@ packages: resolution: {integrity: sha512-W0Wvr9HyFXZRGIDgCicunpQ299OKXs9RgZfaukz4qAW/pJhcpUfupc9c+OObPOFueNy8VSrZgEmDtk6Kh4WzDA==} engines: {node: '>=16 || 14 >=14.17'} + minimatch@9.0.1: + resolution: {integrity: sha512-0jWhJpD/MdhPXwPuiRkCbfYfSKp2qnn2eOc279qI7f+osl/l+prKSrvhg157zSYvx/1nmgn2NqdT6k2Z7zSH9w==} + engines: {node: '>=16 || 14 >=14.17'} + minimatch@9.0.3: resolution: {integrity: sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==} engines: {node: '>=16 || 14 >=14.17'} @@ -11170,6 +11733,27 @@ packages: sass: optional: true + next@15.0.0-canary.104: + resolution: {integrity: sha512-LVzRmV/p/BGGYmTjlZSmCULmBQ2S5ov1nQAXYssu4cEMhkpklQVgh2I+uHHgo/xgdqIIcEBlUgsfV+CfKVsM6Q==} + engines: {node: '>=18.18.0'} + hasBin: true + peerDependencies: + '@opentelemetry/api': ^1.1.0 + '@playwright/test': ^1.41.2 + babel-plugin-react-compiler: '*' + react: 19.0.0-rc-06d0b89e-20240801 + react-dom: 19.0.0-rc-06d0b89e-20240801 + sass: ^1.3.0 + peerDependenciesMeta: + '@opentelemetry/api': + optional: true + '@playwright/test': + optional: true + babel-plugin-react-compiler: + optional: true + sass: + optional: true + no-case@3.0.4: resolution: {integrity: sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==} @@ -11240,6 +11824,10 @@ packages: nodemailer-sendgrid@1.0.3: resolution: {integrity: sha512-To/veO2M4evjtv1XrY7BUgE+LDypgs/FBx4wOHb2UNTpvZhiARtvMaBI0685Yxkho0lIPJc4jS0cUE7v+XGNgg==} + nodemailer@6.9.10: + resolution: {integrity: sha512-qtoKfGFhvIFW5kLfrkw2R6Nm6Ur4LNUMykyqu6n9BRKJuyQrqEGwdXXUAbwWEKt33dlWUGXb7rzmJP/p4+O+CA==} + engines: {node: '>=6.0.0'} + nodemailer@6.9.8: resolution: {integrity: sha512-cfrYUk16e67Ks051i4CntM9kshRYei1/o/Gi8K1d+R34OIs21xdFnW7Pt7EucmVKA0LKtqUGNcjMZ7ehjl49mQ==} engines: {node: '>=6.0.0'} @@ -11483,6 +12071,9 @@ packages: package-manager-detector@0.2.0: resolution: {integrity: sha512-E385OSk9qDcXhcM9LNSe4sdhx8a9mAPrZ4sMLW+tmxl5ZuGtPUcdFu+MPP2jbgiWAZ6Pfe5soGFMd+0Db5Vrog==} + packet-reader@1.0.0: + resolution: {integrity: sha512-HAKu/fG3HpHFO0AA8WE8q2g+gBJaZ9MG7fcKk+IJPLTGAD6Psw4443l+9DGRbOIh3/aXr7Phy0TjilYivJo5XQ==} + pako@1.0.11: resolution: {integrity: sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==} @@ -11524,6 +12115,9 @@ packages: parse5@7.1.2: resolution: {integrity: sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==} + parseley@0.11.0: + resolution: {integrity: sha512-VfcwXlBWgTF+unPcr7yu3HSSA6QUdDaDnrHcytVfj5Z8azAyKBDrYnSIfeSxlrEayndNcLmrXzg+Vxbo6DWRXQ==} + parseurl@1.3.3: resolution: {integrity: sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==} engines: {node: '>= 0.8'} @@ -11593,6 +12187,9 @@ packages: path-to-regexp@1.8.0: resolution: {integrity: sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA==} + path-to-regexp@6.2.2: + resolution: {integrity: sha512-GQX3SSMokngb36+whdpRXE+3f9V8UzyAorlYvOGx87ufGHehNTn5lCxrKtLyZ4Yl/wEKnNnr98ZzOwwDZV5ogw==} + path-type@4.0.0: resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} engines: {node: '>=8'} @@ -11615,24 +12212,49 @@ packages: engines: {node: '>=14'} hasBin: true + payload@3.0.0-beta.102: + resolution: {integrity: sha512-qbkiauI/MUmHtD/JfDKDCfenEOeKvgp3ANZQ99UKC8HcI4DReTTIA7c5pQ6ZWoUojJiLmxUULAvVlTuFicQd4g==} + engines: {node: ^18.20.2 || >=20.9.0} + hasBin: true + peerDependencies: + graphql: ^16.8.1 + pbkdf2@3.1.2: resolution: {integrity: sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==} engines: {node: '>=0.12'} + peberminta@0.8.0: + resolution: {integrity: sha512-YYEs+eauIjDH5nUEGi18EohWE0nV2QbGTqmxQcqgZ/0g+laPCQmuIqq7EBLVi9uim9zMgfJv0QBZEnQ3uHw/Tw==} + peek-readable@4.1.0: resolution: {integrity: sha512-ZI3LnwUv5nOGbQzD9c2iDG6toheuXSZP5esSHBjopsXH4dg19soufvpUGA3uohi5anFtGb2lhAVdHzH6R/Evvg==} engines: {node: '>=8'} + peek-readable@5.2.0: + resolution: {integrity: sha512-U94a+eXHzct7vAd19GH3UQ2dH4Satbng0MyYTMaQatL0pvYYL5CTPR25HBhKtecl+4bfu1/i3vC6k0hydO5Vcw==} + engines: {node: '>=14.16'} + performance-now@2.1.0: resolution: {integrity: sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==} periscopic@3.1.0: resolution: {integrity: sha512-vKiQ8RRtkl9P+r/+oefh25C3fhybptkHKCZSPlcXiJux2tJF55GnEj3BVn4A5gKfq9NWWXXrxkHBwVPUfH0opw==} + pg-cloudflare@1.1.1: + resolution: {integrity: sha512-xWPagP/4B6BgFO+EKz3JONXv3YDgvkbVrGw2mTo3D6tVDQRh1e7cqVGvyR3BE+eQgAvx1XhW/iEASj4/jCWl3Q==} + + pg-connection-string@2.6.4: + resolution: {integrity: sha512-v+Z7W/0EO707aNMaAEfiGnGL9sxxumwLl2fJvCQtMn9Fxsg+lPpPkdcyBSv/KFgpGdYkMfn+EI1Or2EHjpgLCA==} + pg-int8@1.0.1: resolution: {integrity: sha512-WCtabS6t3c8SkpDBUlb1kjOs7l66xsGdKpIPZsg4wR+B3+u9UAum2odSsF9tnvxg80h4ZxLWMy4pRjOsFIqQpw==} engines: {node: '>=4.0.0'} + pg-pool@3.6.2: + resolution: {integrity: sha512-Htjbg8BlwXqSBQ9V8Vjtc+vzf/6fVUuak/3/XXKA9oxZprwW3IMDQTGHP+KDmVL7rtd+R1QjbnCFPuTHm3G4hg==} + peerDependencies: + pg: '>=8.0' + pg-protocol@1.6.1: resolution: {integrity: sha512-jPIlvgoD63hrEuihvIg+tJhoGjUsLPn6poJY9N5CnlPd91c2T18T/9zBtLxZSb1EhYxBRoZJtzScCaWlYLtktg==} @@ -11640,6 +12262,18 @@ packages: resolution: {integrity: sha512-qTAAlrEsl8s4OiEQY69wDvcMIdQN6wdz5ojQiOy6YRMuynxenON0O5oCpJI6lshc6scgAY8qvJ2On/p+CXY0GA==} engines: {node: '>=4'} + pg@8.11.3: + resolution: {integrity: sha512-+9iuvG8QfaaUrrph+kpF24cXkH1YOOUeArRNYIxq1viYHZagBxrTno7cecY1Fa44tJeZvaoG+Djpkc3JwehN5g==} + engines: {node: '>= 8.0.0'} + peerDependencies: + pg-native: '>=3.0.1' + peerDependenciesMeta: + pg-native: + optional: true + + pgpass@1.0.5: + resolution: {integrity: sha512-FdW9r/jQZhSeohs1Z3sI1yxFQNFvMcnmfuj4WBMUTxOrAyLMaTcE1aAMBiTlbMNaXvBCQuVi0R7hd8udDSP7ug==} + picocolors@1.0.1: resolution: {integrity: sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==} @@ -11669,13 +12303,24 @@ packages: resolution: {integrity: sha512-az8JbIYeN/1iLj2t0jR9DV48/LQ3RC6hZPpapKPkb84Q+yTidMCpgWxIT3N0flnBDilyBQ1luWNpOeJptjdp/g==} hasBin: true + pino-pretty@11.2.1: + resolution: {integrity: sha512-O05NuD9tkRasFRWVaF/uHLOvoRDFD7tb5VMertr78rbsYFjYp48Vg3477EshVAF5eZaEw+OpDl/tu+B0R5o+7g==} + hasBin: true + pino-std-serializers@6.2.2: resolution: {integrity: sha512-cHjPPsE+vhj/tnhCy/wiMh3M3z3h/j15zHQX+S9GkTBgqJuTuJzYJ4gUyACLhDaJ7kk9ba9iRDmbH2tJU03OiA==} + pino-std-serializers@7.0.0: + resolution: {integrity: sha512-e906FRY0+tV27iq4juKzSYPbUj2do2X2JX4EzSca1631EB2QJQUqGbDuERal7LCtOpxl6x3+nvo9NPZcmjkiFA==} + pino@8.15.0: resolution: {integrity: sha512-olUADJByk4twxccmAxb1RiGKOSvddHugCV3wkqjyv+3Sooa2KLrmXrKEWOKi0XPCLasRR5jBXxioE1jxUa4KzQ==} hasBin: true + pino@9.3.1: + resolution: {integrity: sha512-afSfrq/hUiW/MFmQcLEwV9Zh8Ry6MrMTOyBU53o/fc0gEl+1OZ/Fks/xQCM2nOC0C/OfDtQMnT2d8c3kpcfSzA==} + hasBin: true + pirates@4.0.6: resolution: {integrity: sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==} engines: {node: '>= 6'} @@ -12016,6 +12661,10 @@ packages: pretty-format@3.8.0: resolution: {integrity: sha512-WuxUnVtlWL1OfZFQFuqvnvs6MiAGk9UNsBostyBOB0Is9wb5uRESevA6rnl/rkksXaGX3GzZhPup5d6Vp1nFew==} + pretty@2.0.0: + resolution: {integrity: sha512-G9xUchgTEiNpormdYBl+Pha50gOUovT18IvAe7EYMZ1/f9W/WWMPRn+xI68yXNMUk3QXHDwo/1wV/4NejVNe1w==} + engines: {node: '>=0.10.0'} + prismjs@1.27.0: resolution: {integrity: sha512-t13BGPUlFDR7wRB5kQDG4jjl7XeuH6jbJGt11JHPL96qwsEHNX2+68tFXqc1/k+/jALsbSWJKUOT/hcYAZ5LkA==} engines: {node: '>=6'} @@ -12037,6 +12686,9 @@ packages: process-warning@2.3.2: resolution: {integrity: sha512-n9wh8tvBe5sFmsqlg+XQhaQLumwpqoAUruLwjCopgTmUBjJ/fjtBsJzKleCaIGBOMXYEhp1YfKl4d7rJ5ZKJGA==} + process-warning@3.0.0: + resolution: {integrity: sha512-mqn0kFRl0EoqhnL0GQ0veqFHyIN1yig9RHh/InzORTUiZHFRAur+aMtRkELNwGs9aNwKS6tg/An4NYBPGwvtzQ==} + process@0.11.10: resolution: {integrity: sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==} engines: {node: '>= 0.6.0'} @@ -12070,6 +12722,9 @@ packages: property-information@6.5.0: resolution: {integrity: sha512-PgTgs/BlvHxOu8QuEN7wi5A0OmXaBcHpmCSTehcs6Uuu9IkDIEo13Hy7n898RHfrQ49vKCoGeWZSaAK01nwVig==} + proto-list@1.2.4: + resolution: {integrity: sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==} + proxy-addr@2.0.7: resolution: {integrity: sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==} engines: {node: '>= 0.10'} @@ -12102,6 +12757,10 @@ packages: pure-rand@6.1.0: resolution: {integrity: sha512-bVWawvoZoBYpp6yIoQtQXHZjmz35RSVHnUOTefl8Vcjr8snTPY1wnpSPMWekcFwbxI6gtmT7rSYPFvz71ldiOA==} + qs-esm@7.0.2: + resolution: {integrity: sha512-D8NAthKSD7SGn748v+GLaaO6k08Mvpoqroa35PqIQC4gtUa8/Pb/k+r0m0NnGBVbHDP1gKZ2nVywqfMisRhV5A==} + engines: {node: '>=18'} + qs-middleware@1.0.3: resolution: {integrity: sha512-ymlixxD/0Bj3BMY9x1z8ENdQdhkmsIbDNyVvfM8soHn5p/CRFlLPrmtxmE5aG//q1PzHHSGuLi+6QlHezivseg==} engines: {node: '>=0.10'} @@ -12207,6 +12866,12 @@ packages: react: ^16.9.0 || ^17 || ^18 react-dom: ^16.9.0 || ^17 || ^18 + react-datepicker@6.9.0: + resolution: {integrity: sha512-QTxuzeem7BUfVFWv+g5WuvzT0c5BPo+XTCNbMTZKSZQLU+cMMwSUHwspaxuIcDlwNcOH0tiJ+bh1fJ2yxOGYWA==} + peerDependencies: + react: ^16.9.0 || ^17 || ^18 + react-dom: ^16.9.0 || ^17 || ^18 + react-diff-viewer-continued@3.2.6: resolution: {integrity: sha512-GrzyqQnjIMoej+jMjWvtVSsQqhXgzEGqpXlJ2dAGfOk7Q26qcm8Gu6xtI430PBUyZsERe8BJSQf+7VZZo8IBNQ==} engines: {node: '>= 8'} @@ -12223,17 +12888,38 @@ packages: resolution: {integrity: sha512-i8aF1nyKInZnANZ4uZrH49qn1paRgBZ7wZiCNBMnenlPzEv0mRl+ShpTVEI6wZNl8sSc79xZkivtgLKQArcanQ==} engines: {node: '>=16.14.0'} + react-dom@18.2.0: + resolution: {integrity: sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==} + peerDependencies: + react: ^18.2.0 + react-dom@18.3.1: resolution: {integrity: sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==} peerDependencies: react: ^18.3.1 + react-dom@19.0.0-rc-06d0b89e-20240801: + resolution: {integrity: sha512-6JIbEXFwsRkI3gLKhcmjvQ3GKsP4NR/BjPyTKyp7xYeQEeiH01TypGVbc/K6nU1/y4jNGFGkxH3ZFbKKZwCecw==} + peerDependencies: + react: 19.0.0-rc-06d0b89e-20240801 + react-element-to-jsx-string@15.0.0: resolution: {integrity: sha512-UDg4lXB6BzlobN60P8fHWVPX3Kyw8ORrTeBtClmIlGdkOOE+GYQSFvmEU5iLLpwp/6v42DINwNcwOhOLfQ//FQ==} peerDependencies: react: ^0.14.8 || ^15.0.1 || ^16.0.0 || ^17.0.1 || ^18.0.0 react-dom: ^0.14.8 || ^15.0.1 || ^16.0.0 || ^17.0.1 || ^18.0.0 + react-error-boundary@3.1.4: + resolution: {integrity: sha512-uM9uPzZJTF6wRQORmSrvOIgt4lJ9MC1sNgEOj2XGsDTRE4kmpWxg7ENK9EWNKJRMAOY9z0MuF4yIfl6gp4sotA==} + engines: {node: '>=10', npm: '>=6'} + peerDependencies: + react: '>=16.13.1' + + react-error-boundary@4.0.13: + resolution: {integrity: sha512-b6PwbdSv8XeOSYvjt8LpgpKrZ0yGdtZokYwkwV2wlcZbxgopHX/hgPl5VgpnoVOWd868n1hktM8Qm4b+02MiLQ==} + peerDependencies: + react: '>=16.13.1' + react-event-listener@0.6.6: resolution: {integrity: sha512-+hCNqfy7o9wvO6UgjqFmBzARJS7qrNoda0VqzvOuioEpoEXKutiKuv92dSz6kP7rYLmyHPyYNLesi5t/aH1gfw==} peerDependencies: @@ -12345,6 +13031,12 @@ packages: react: ^16.8.0 || ^17.0.0 || ^18.0.0 react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 + react-select@5.8.0: + resolution: {integrity: sha512-TfjLDo58XrhP6VG5M/Mi56Us0Yt8X7xD6cDybC7yoRMUNm7BGO7qk8J0TLQOua/prb8vUOtsfnXZwfm30HGsAA==} + peerDependencies: + react: ^16.8.0 || ^17.0.0 || ^18.0.0 + react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 + react-shallow-renderer@16.15.0: resolution: {integrity: sha512-oScf2FqQ9LFVQgA73vr86xl2NaOIX73rh+YFqcOp68CWj56tSfgtGKrEbyhCj0rSijyG9M1CYprTh39fBi5hzA==} peerDependencies: @@ -12407,10 +13099,18 @@ packages: vega: '*' vega-lite: '*' + react@18.2.0: + resolution: {integrity: sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==} + engines: {node: '>=0.10.0'} + react@18.3.1: resolution: {integrity: sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==} engines: {node: '>=0.10.0'} + react@19.0.0-rc-06d0b89e-20240801: + resolution: {integrity: sha512-moBKIME1GBgs8onH1xCs+gzPWyLF62m+2XbD4GpirxeRDca7GLA8UQZO9IuQvf1uxCpVWCG8FrpU/D2x7Plknw==} + engines: {node: '>=0.10.0'} + read-package-json-fast@3.0.2: resolution: {integrity: sha512-0J+Msgym3vrLOUB3hzQCuZHII0xkNGCtz/HJH9xZshwv9DbDwkw1KaE3gx/e2J5rpEY5rtOy6cyhKOPrkP7FZw==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} @@ -12561,6 +13261,9 @@ packages: reselect@4.1.8: resolution: {integrity: sha512-ab9EmR80F/zQTMNeneUr4cv+jSwPJgIlvEmVwLerwrWVbpLlBuls9XHzIeTFy4cegU2NHBp3va0LKOzU5qFEYQ==} + resend@0.17.2: + resolution: {integrity: sha512-lakm76u4MiIDeMF1s2tCmjtksOhwZOs4WcAXkA7aUTvl+63/h+0h6Q6WnkB8RGtj6GakUhQuUkiZshfXgtIrGw==} + resize-observer-polyfill@1.5.1: resolution: {integrity: sha512-LwZrotdHOo12nQuZlHEmtuXdqGoOD0OhaxopaNFxWzInpEgaLWoVuAMbTzixuosCx2nEG58ngzW3vxdWoxIgdg==} @@ -12719,6 +13422,11 @@ packages: engines: {node: '>=14.0.0'} hasBin: true + sass@1.77.4: + resolution: {integrity: sha512-vcF3Ckow6g939GMA4PeU7b2K/9FALXk2KF9J87txdHzXbUF9XRQRwSxcAs/fGaTnJeBFd7UoV22j3lzMLdM0Pw==} + engines: {node: '>=14.0.0'} + hasBin: true + sax@1.2.1: resolution: {integrity: sha512-8I2a3LovHTOpm7NV5yOyO8IHqgVsfK4+UuySrXU8YXkSRX7k6hCV9b3HrkKCr3nMpgj+0bmocaJJWpvp1oc7ZA==} @@ -12735,6 +13443,12 @@ packages: scheduler@0.23.2: resolution: {integrity: sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==} + scheduler@0.25.0-rc-06d0b89e-20240801: + resolution: {integrity: sha512-5RF+494IBigvBHUPYId9MhAWyN0cZZq3o82oAbYvZuc2IFc4mZYHS3z2MuJ5Lwm39zGWDEzB404X6BO47zbt5w==} + + scheduler@0.25.0-rc-f994737d14-20240522: + resolution: {integrity: sha512-qS+xGFF7AljP2APO2iJe8zESNsK20k25MACz+WGOXPybUsRdi1ssvaoF93im2nSX2q/XT3wKkjdz6RQfbmaxdw==} + schema-utils@3.3.0: resolution: {integrity: sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==} engines: {node: '>= 10.13.0'} @@ -12756,6 +13470,9 @@ packages: secure-json-parse@2.7.0: resolution: {integrity: sha512-6aU+Rwsezw7VR8/nyvKTx8QpWH9FrcYiXXlqC4z5d5XQBDRqtbfsRjnwGyqbi3gddNtWHuEk9OANUotL26qKUw==} + selderee@0.10.0: + resolution: {integrity: sha512-DEL/RW/f4qLw/NrVg97xKaEBC8IpzIG2fvxnzCp3Z4yk4jQ3MXom+Imav9wApjxX2dfS3eW7x0DXafJr85i39A==} + semver@5.7.2: resolution: {integrity: sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==} hasBin: true @@ -12929,6 +13646,15 @@ packages: sonic-boom@3.8.1: resolution: {integrity: sha512-y4Z8LCDBuum+PBP3lSV7RHrXscqksve/bi0as7mhwVnBW+/wUqKT/2Kb7um8yqcFy0duYbbPxzt89Zy2nOCaxg==} + sonic-boom@4.1.0: + resolution: {integrity: sha512-NGipjjRicyJJ03rPiZCJYjwlsuP2d1/5QUviozRXC7S3WdVWNK5e3Ojieb9CCyfhq2UC+3+SRd9nG3I2lPRvUw==} + + sonner@1.5.0: + resolution: {integrity: sha512-FBjhG/gnnbN6FY0jaNnqZOMmB73R+5IiyYAw8yBj7L54ER7HB3fOSE5OFiQiE2iXWxeXKvg6fIP4LtVppHEdJA==} + peerDependencies: + react: ^18.0.0 + react-dom: ^18.0.0 + source-list-map@2.0.1: resolution: {integrity: sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==} @@ -13157,6 +13883,10 @@ packages: resolution: {integrity: sha512-fZtbhtvI9I48xDSywd/somNqgUHl2L2cstmXCCif0itOf96jeW18MBSyrLuNicYQVkvpOxkZtkzujiTJ9LW5Jw==} engines: {node: '>=10'} + strtok3@7.1.1: + resolution: {integrity: sha512-mKX8HA/cdBqMKUr0MMZAFssCkIGoZeSCMXgnt79yKxNFguMLVFgRe6wB+fsL0NmoHDbeyZXczy7vEPSoo3rkzg==} + engines: {node: '>=16'} + style-loader@2.0.0: resolution: {integrity: sha512-Z0gYUJmzZ6ZdRUqpg1r8GsaFKypE+3xAzuFeMuoHgjc9KZv3wMyCRjQIWEbhoFSq7+7yoHXySDJyyWQaPajeiQ==} engines: {node: '>= 10.13.0'} @@ -13188,6 +13918,19 @@ packages: babel-plugin-macros: optional: true + styled-jsx@5.1.6: + resolution: {integrity: sha512-qSVyDTeMotdvQYoHWLNGwRFJHC+i+ZvdBRYosOFgC+Wg1vx4frN2/RG/NA7SYqqvKNLf39P2LSRA2pu6n0XYZA==} + engines: {node: '>= 12.0.0'} + peerDependencies: + '@babel/core': '*' + babel-plugin-macros: '*' + react: '>= 16.8.0 || 17.x.x || ^18.0.0-0 || ^19.0.0-0' + peerDependenciesMeta: + '@babel/core': + optional: true + babel-plugin-macros: + optional: true + stylis@4.2.0: resolution: {integrity: sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw==} @@ -13262,6 +14005,9 @@ packages: tabbable@5.3.3: resolution: {integrity: sha512-QD9qKY3StfbZqWOPLp0++pOrAVb/HbUi5xCc8cUo4XjP19808oaMiDzn0leBY5mCespIBM0CIZePzZjgzR83kA==} + tabbable@6.2.0: + resolution: {integrity: sha512-Cat63mxsVJlzYvN51JmVXIgNoUokrIaT2zLclCXjRd8boZ0004U4KCs/sToJ75C6sdlByWxpYnb5Boif1VSFew==} + tapable@0.1.10: resolution: {integrity: sha512-jX8Et4hHg57mug1/079yitEKWGB3LCwoxByLsNim89LABq8NqgiX+6iYVOsq0vX8uJHkU+DZ5fnq95f800bEsQ==} engines: {node: '>=0.6'} @@ -13357,6 +14103,9 @@ packages: thread-stream@2.7.0: resolution: {integrity: sha512-qQiRWsU/wvNolI6tbbCKd9iKaTnCXsTwVxhhKM6nctPdujTyztjlbUkUTUymidWcMnZ5pWR0ej4a0tjsW021vw==} + thread-stream@3.1.0: + resolution: {integrity: sha512-OqyPZ9u96VohAyMfJykzmivOrY2wfMSf3C5TtFJVgN+Hm6aj+voFhlK+kZEIv2FBh1X6Xp3DlnCOfEQ3B2J86A==} + through2@0.4.2: resolution: {integrity: sha512-45Llu+EwHKtAZYTPPVn3XZHBgakWMN3rokhEv5hu596XP+cNgplMg+Gj+1nmAvj+L0K7+N49zBKx5rah5u0QIQ==} @@ -13395,10 +14144,19 @@ packages: resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==} engines: {node: '>=4'} + to-no-case@1.0.2: + resolution: {integrity: sha512-Z3g735FxuZY8rodxV4gH7LxClE4H0hTIyHNIHdk+vpQxjLm0cwnKXq/OFVZ76SOQmto7txVcwSCwkU5kqp+FKg==} + to-regex-range@5.0.1: resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} engines: {node: '>=8.0'} + to-snake-case@1.0.0: + resolution: {integrity: sha512-joRpzBAk1Bhi2eGEYBjukEWHOe/IvclOkiJl3DtA91jV6NwQ3MwXA4FHYeqk8BNp/D8bmi9tcNbRu/SozP0jbQ==} + + to-space-case@1.0.0: + resolution: {integrity: sha512-rLdvwXZ39VOn1IxGL3V6ZstoTbwLRckQmn/U8ZDLuWwIXNpuZDhQ3AiRUlhTbOXFVE9C+dR51wM0CBDhk31VcA==} + toggle-selection@1.0.6: resolution: {integrity: sha512-BiZS+C1OS8g/q2RRbJmy59xpyghNBqrr6k5L/uKBGRsTfxmu3ffiRnd8mlGPUVayg8pvfi5urfnu8TU7DVOkLQ==} @@ -13410,6 +14168,10 @@ packages: resolution: {integrity: sha512-6udB24Q737UD/SDsKAHI9FCRP7Bqc9D/MQUV02ORQg5iskjtLJlZJNdN4kKtcdtwCeWIwIHDGaUsTsCCAa8sFQ==} engines: {node: '>=10'} + token-types@5.0.1: + resolution: {integrity: sha512-Y2fmSnZjQdDb9W4w4r1tswlMHylzWIeOKpx0aZH9BgGtACHhrk3OkT52AzwcuqTRBZtvvnTjDBh8eynMulu8Vg==} + engines: {node: '>=14.16'} + topojson-client@3.1.0: resolution: {integrity: sha512-605uxS6bcYxGXw9qi62XyrV6Q3xwbndjachmNxu8HWTtVPxZfEJN9fd/SZS1Q54Sn2y0TMyMxFj/cJINqGHrKw==} hasBin: true @@ -13521,6 +14283,11 @@ packages: peerDependencies: typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta' + tsx@4.17.0: + resolution: {integrity: sha512-eN4mnDA5UMKDt4YZixo9tBioibaMBpoxBkD+rIPAjVmYERSG0/dWEY1CEFuV89CgASlKL499q8AhmkMnnjtOJg==} + engines: {node: '>=18.0.0'} + hasBin: true + tty-browserify@0.0.1: resolution: {integrity: sha512-C3TaO7K81YvjCgQH9Q1S3R3P3BtN3RIM8n+OvX4il1K1zgE8ZhI0op7kClgkxtutIE8hQrcrHBXvIheqKUUCxw==} @@ -13596,6 +14363,10 @@ packages: resolution: {integrity: sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==} engines: {node: '>=12.20'} + type-fest@3.13.0: + resolution: {integrity: sha512-Gur3yQGM9qiLNs0KPP7LPgeRbio2QTt4xXouobMCarR0/wyW3F+F/+OWwshg3NG0Adon7uQfSZBpB46NfhoF1A==} + engines: {node: '>=14.16'} + type-fest@3.13.1: resolution: {integrity: sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g==} engines: {node: '>=14.16'} @@ -13630,6 +14401,12 @@ packages: typedarray@0.0.6: resolution: {integrity: sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==} + types-react-dom@19.0.0-rc.0: + resolution: {integrity: sha512-wGlQSD6H6EeCxhH+dSip1cPcCU7nNTOwHEr29rjiNtGkUPlmEofOizoQaPMEqQH2V76ME3NLvBDLGajRu3xZOw==} + + types-react@19.0.0-rc.0: + resolution: {integrity: sha512-JFd3qtgXZ+EdHht8WXMPSF231brd6Bu4yLKqyo0JjpzhmjYxJptT6TBh/xFqOhx+ee2Nagj7Ttkh5F/jc49TVQ==} + typescript@5.5.4: resolution: {integrity: sha512-Mtq29sKDAEYP7aljRgtPOpTvOfbwRWlS6dPRzwjdE+C0R4brX/GUyhHSecbHMFLNBLcJIPt9nl9yG5TZ1weH+Q==} engines: {node: '>=14.17'} @@ -13644,6 +14421,12 @@ packages: undici-types@5.26.5: resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==} + undici-types@6.19.8: + resolution: {integrity: sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==} + + unfetch@4.2.0: + resolution: {integrity: sha512-F9p7yYCn6cIW9El1zi0HI6vqpeIvBsr3dSuRO6Xuppb1u5rXpCPmMvLSyECLhybr9isec8Ohl0hPekMVrEinDA==} + unicode-canonical-property-names-ecmascript@2.0.0: resolution: {integrity: sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==} engines: {node: '>=4'} @@ -13778,6 +14561,12 @@ packages: react-native: optional: true + use-context-selector@2.0.0: + resolution: {integrity: sha512-owfuSmUNd3eNp3J9CdDl0kMgfidV+MkDvHPpvthN5ThqM+ibMccNE0k+Iq7TWC6JPFvGZqanqiGCuQx6DyV24g==} + peerDependencies: + react: '>=18.0.0' + scheduler: '>=0.19.0' + use-isomorphic-layout-effect@1.1.2: resolution: {integrity: sha512-49L8yCO3iGT/ZF9QttjwLF/ZD9Iwto5LnH5LmEdk/6cFmXddqi2ulF0edxTwjj+7mqvpVVGQWvbXZdn32wRSHA==} peerDependencies: @@ -14479,6 +15268,10 @@ packages: resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==} engines: {node: '>=12'} + yjs@13.6.19: + resolution: {integrity: sha512-GNKw4mEUn5yWU2QPHRx8jppxmCm9KzbBhB4qJLUJFiiYD0g/tDVgXQ7aPkyh01YO28kbs2J/BEbWBagjuWyejw==} + engines: {node: '>=16.0.0', npm: '>=8.0.0'} + yn@3.1.1: resolution: {integrity: sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==} engines: {node: '>=6'} @@ -14575,6 +15368,12 @@ snapshots: '@smithy/util-utf8': 2.3.0 tslib: 2.6.3 + '@aws-crypto/sha256-js@1.2.2': + dependencies: + '@aws-crypto/util': 1.2.2 + '@aws-sdk/types': 3.609.0 + tslib: 1.14.1 + '@aws-crypto/sha256-js@5.2.0': dependencies: '@aws-crypto/util': 5.2.0 @@ -14585,6 +15384,12 @@ snapshots: dependencies: tslib: 2.6.3 + '@aws-crypto/util@1.2.2': + dependencies: + '@aws-sdk/types': 3.609.0 + '@aws-sdk/util-utf8-browser': 3.259.0 + tslib: 1.14.1 + '@aws-crypto/util@5.2.0': dependencies: '@aws-sdk/types': 3.609.0 @@ -14636,17 +15441,16 @@ snapshots: tslib: 2.6.3 transitivePeerDependencies: - aws-crt - optional: true '@aws-sdk/client-s3@3.645.0': dependencies: '@aws-crypto/sha1-browser': 5.2.0 '@aws-crypto/sha256-browser': 5.2.0 '@aws-crypto/sha256-js': 5.2.0 - '@aws-sdk/client-sso-oidc': 3.645.0(@aws-sdk/client-sts@3.621.0) + '@aws-sdk/client-sso-oidc': 3.645.0(@aws-sdk/client-sts@3.645.0) '@aws-sdk/client-sts': 3.645.0 '@aws-sdk/core': 3.635.0 - '@aws-sdk/credential-provider-node': 3.645.0(@aws-sdk/client-sso-oidc@3.645.0(@aws-sdk/client-sts@3.645.0))(@aws-sdk/client-sts@3.621.0) + '@aws-sdk/credential-provider-node': 3.645.0(@aws-sdk/client-sso-oidc@3.645.0(@aws-sdk/client-sts@3.621.0))(@aws-sdk/client-sts@3.645.0) '@aws-sdk/middleware-bucket-endpoint': 3.620.0 '@aws-sdk/middleware-expect-continue': 3.620.0 '@aws-sdk/middleware-flexible-checksums': 3.620.0 @@ -14746,13 +15550,13 @@ snapshots: transitivePeerDependencies: - aws-crt - '@aws-sdk/client-sso-oidc@3.645.0(@aws-sdk/client-sts@3.621.0)': + '@aws-sdk/client-sso-oidc@3.645.0(@aws-sdk/client-sts@3.645.0)': dependencies: '@aws-crypto/sha256-browser': 5.2.0 '@aws-crypto/sha256-js': 5.2.0 - '@aws-sdk/client-sts': 3.621.0 + '@aws-sdk/client-sts': 3.645.0 '@aws-sdk/core': 3.635.0 - '@aws-sdk/credential-provider-node': 3.645.0(@aws-sdk/client-sso-oidc@3.645.0(@aws-sdk/client-sts@3.645.0))(@aws-sdk/client-sts@3.621.0) + '@aws-sdk/credential-provider-node': 3.645.0(@aws-sdk/client-sso-oidc@3.645.0(@aws-sdk/client-sts@3.621.0))(@aws-sdk/client-sts@3.645.0) '@aws-sdk/middleware-host-header': 3.620.0 '@aws-sdk/middleware-logger': 3.609.0 '@aws-sdk/middleware-recursion-detection': 3.620.0 @@ -14791,60 +15595,15 @@ snapshots: transitivePeerDependencies: - aws-crt - '@aws-sdk/client-sso-oidc@3.645.0(@aws-sdk/client-sts@3.645.0)': + '@aws-sdk/client-sso@3.621.0': dependencies: '@aws-crypto/sha256-browser': 5.2.0 '@aws-crypto/sha256-js': 5.2.0 - '@aws-sdk/client-sts': 3.645.0 - '@aws-sdk/core': 3.635.0 - '@aws-sdk/credential-provider-node': 3.645.0(@aws-sdk/client-sso-oidc@3.645.0(@aws-sdk/client-sts@3.645.0))(@aws-sdk/client-sts@3.621.0) + '@aws-sdk/core': 3.621.0 '@aws-sdk/middleware-host-header': 3.620.0 '@aws-sdk/middleware-logger': 3.609.0 '@aws-sdk/middleware-recursion-detection': 3.620.0 - '@aws-sdk/middleware-user-agent': 3.645.0 - '@aws-sdk/region-config-resolver': 3.614.0 - '@aws-sdk/types': 3.609.0 - '@aws-sdk/util-endpoints': 3.645.0 - '@aws-sdk/util-user-agent-browser': 3.609.0 - '@aws-sdk/util-user-agent-node': 3.614.0 - '@smithy/config-resolver': 3.0.5 - '@smithy/core': 2.4.0 - '@smithy/fetch-http-handler': 3.2.4 - '@smithy/hash-node': 3.0.3 - '@smithy/invalid-dependency': 3.0.3 - '@smithy/middleware-content-length': 3.0.5 - '@smithy/middleware-endpoint': 3.1.0 - '@smithy/middleware-retry': 3.0.15 - '@smithy/middleware-serde': 3.0.3 - '@smithy/middleware-stack': 3.0.3 - '@smithy/node-config-provider': 3.1.4 - '@smithy/node-http-handler': 3.1.4 - '@smithy/protocol-http': 4.1.0 - '@smithy/smithy-client': 3.2.0 - '@smithy/types': 3.3.0 - '@smithy/url-parser': 3.0.3 - '@smithy/util-base64': 3.0.0 - '@smithy/util-body-length-browser': 3.0.0 - '@smithy/util-body-length-node': 3.0.0 - '@smithy/util-defaults-mode-browser': 3.0.15 - '@smithy/util-defaults-mode-node': 3.0.15 - '@smithy/util-endpoints': 2.0.5 - '@smithy/util-middleware': 3.0.3 - '@smithy/util-retry': 3.0.3 - '@smithy/util-utf8': 3.0.0 - tslib: 2.6.3 - transitivePeerDependencies: - - aws-crt - - '@aws-sdk/client-sso@3.621.0': - dependencies: - '@aws-crypto/sha256-browser': 5.2.0 - '@aws-crypto/sha256-js': 5.2.0 - '@aws-sdk/core': 3.621.0 - '@aws-sdk/middleware-host-header': 3.620.0 - '@aws-sdk/middleware-logger': 3.609.0 - '@aws-sdk/middleware-recursion-detection': 3.620.0 - '@aws-sdk/middleware-user-agent': 3.620.0 + '@aws-sdk/middleware-user-agent': 3.620.0 '@aws-sdk/region-config-resolver': 3.614.0 '@aws-sdk/types': 3.609.0 '@aws-sdk/util-endpoints': 3.614.0 @@ -14973,7 +15732,7 @@ snapshots: '@aws-crypto/sha256-js': 5.2.0 '@aws-sdk/client-sso-oidc': 3.645.0(@aws-sdk/client-sts@3.645.0) '@aws-sdk/core': 3.635.0 - '@aws-sdk/credential-provider-node': 3.645.0(@aws-sdk/client-sso-oidc@3.645.0(@aws-sdk/client-sts@3.645.0))(@aws-sdk/client-sts@3.621.0) + '@aws-sdk/credential-provider-node': 3.645.0(@aws-sdk/client-sso-oidc@3.645.0(@aws-sdk/client-sts@3.621.0))(@aws-sdk/client-sts@3.645.0) '@aws-sdk/middleware-host-header': 3.620.0 '@aws-sdk/middleware-logger': 3.609.0 '@aws-sdk/middleware-recursion-detection': 3.620.0 @@ -15046,7 +15805,6 @@ snapshots: tslib: 2.6.3 transitivePeerDependencies: - aws-crt - optional: true '@aws-sdk/credential-provider-env@3.620.1': dependencies: @@ -15114,16 +15872,15 @@ snapshots: transitivePeerDependencies: - '@aws-sdk/client-sso-oidc' - aws-crt - optional: true - '@aws-sdk/credential-provider-ini@3.645.0(@aws-sdk/client-sso-oidc@3.645.0(@aws-sdk/client-sts@3.645.0))(@aws-sdk/client-sts@3.621.0)': + '@aws-sdk/credential-provider-ini@3.645.0(@aws-sdk/client-sso-oidc@3.645.0(@aws-sdk/client-sts@3.621.0))(@aws-sdk/client-sts@3.645.0)': dependencies: - '@aws-sdk/client-sts': 3.621.0 + '@aws-sdk/client-sts': 3.645.0 '@aws-sdk/credential-provider-env': 3.620.1 '@aws-sdk/credential-provider-http': 3.635.0 '@aws-sdk/credential-provider-process': 3.620.1 - '@aws-sdk/credential-provider-sso': 3.645.0(@aws-sdk/client-sso-oidc@3.645.0(@aws-sdk/client-sts@3.645.0)) - '@aws-sdk/credential-provider-web-identity': 3.621.0(@aws-sdk/client-sts@3.621.0) + '@aws-sdk/credential-provider-sso': 3.645.0(@aws-sdk/client-sso-oidc@3.645.0(@aws-sdk/client-sts@3.621.0)) + '@aws-sdk/credential-provider-web-identity': 3.621.0(@aws-sdk/client-sts@3.645.0) '@aws-sdk/types': 3.609.0 '@smithy/credential-provider-imds': 3.2.0 '@smithy/property-provider': 3.1.3 @@ -15171,16 +15928,35 @@ snapshots: - '@aws-sdk/client-sso-oidc' - '@aws-sdk/client-sts' - aws-crt + + '@aws-sdk/credential-provider-node@3.621.0(@aws-sdk/client-sts@3.621.0)': + dependencies: + '@aws-sdk/credential-provider-env': 3.620.1 + '@aws-sdk/credential-provider-http': 3.621.0 + '@aws-sdk/credential-provider-ini': 3.621.0(@aws-sdk/client-sso-oidc@3.645.0(@aws-sdk/client-sts@3.645.0))(@aws-sdk/client-sts@3.621.0) + '@aws-sdk/credential-provider-process': 3.620.1 + '@aws-sdk/credential-provider-sso': 3.621.0(@aws-sdk/client-sso-oidc@3.645.0(@aws-sdk/client-sts@3.645.0)) + '@aws-sdk/credential-provider-web-identity': 3.621.0(@aws-sdk/client-sts@3.621.0) + '@aws-sdk/types': 3.609.0 + '@smithy/credential-provider-imds': 3.2.0 + '@smithy/property-provider': 3.1.3 + '@smithy/shared-ini-file-loader': 3.1.4 + '@smithy/types': 3.3.0 + tslib: 2.6.3 + transitivePeerDependencies: + - '@aws-sdk/client-sso-oidc' + - '@aws-sdk/client-sts' + - aws-crt optional: true - '@aws-sdk/credential-provider-node@3.645.0(@aws-sdk/client-sso-oidc@3.645.0(@aws-sdk/client-sts@3.645.0))(@aws-sdk/client-sts@3.621.0)': + '@aws-sdk/credential-provider-node@3.645.0(@aws-sdk/client-sso-oidc@3.645.0(@aws-sdk/client-sts@3.621.0))(@aws-sdk/client-sts@3.645.0)': dependencies: '@aws-sdk/credential-provider-env': 3.620.1 '@aws-sdk/credential-provider-http': 3.635.0 - '@aws-sdk/credential-provider-ini': 3.645.0(@aws-sdk/client-sso-oidc@3.645.0(@aws-sdk/client-sts@3.645.0))(@aws-sdk/client-sts@3.621.0) + '@aws-sdk/credential-provider-ini': 3.645.0(@aws-sdk/client-sso-oidc@3.645.0(@aws-sdk/client-sts@3.621.0))(@aws-sdk/client-sts@3.645.0) '@aws-sdk/credential-provider-process': 3.620.1 - '@aws-sdk/credential-provider-sso': 3.645.0(@aws-sdk/client-sso-oidc@3.645.0(@aws-sdk/client-sts@3.645.0)) - '@aws-sdk/credential-provider-web-identity': 3.621.0(@aws-sdk/client-sts@3.621.0) + '@aws-sdk/credential-provider-sso': 3.645.0(@aws-sdk/client-sso-oidc@3.645.0(@aws-sdk/client-sts@3.621.0)) + '@aws-sdk/credential-provider-web-identity': 3.621.0(@aws-sdk/client-sts@3.645.0) '@aws-sdk/types': 3.609.0 '@smithy/credential-provider-imds': 3.2.0 '@smithy/property-provider': 3.1.3 @@ -15216,7 +15992,7 @@ snapshots: '@aws-sdk/credential-provider-sso@3.621.0(@aws-sdk/client-sso-oidc@3.645.0(@aws-sdk/client-sts@3.645.0))': dependencies: '@aws-sdk/client-sso': 3.621.0 - '@aws-sdk/token-providers': 3.614.0(@aws-sdk/client-sso-oidc@3.645.0(@aws-sdk/client-sts@3.645.0)) + '@aws-sdk/token-providers': 3.614.0(@aws-sdk/client-sso-oidc@3.645.0(@aws-sdk/client-sts@3.621.0)) '@aws-sdk/types': 3.609.0 '@smithy/property-provider': 3.1.3 '@smithy/shared-ini-file-loader': 3.1.4 @@ -15225,12 +16001,11 @@ snapshots: transitivePeerDependencies: - '@aws-sdk/client-sso-oidc' - aws-crt - optional: true - '@aws-sdk/credential-provider-sso@3.645.0(@aws-sdk/client-sso-oidc@3.645.0(@aws-sdk/client-sts@3.645.0))': + '@aws-sdk/credential-provider-sso@3.645.0(@aws-sdk/client-sso-oidc@3.645.0(@aws-sdk/client-sts@3.621.0))': dependencies: '@aws-sdk/client-sso': 3.645.0 - '@aws-sdk/token-providers': 3.614.0(@aws-sdk/client-sso-oidc@3.645.0(@aws-sdk/client-sts@3.645.0)) + '@aws-sdk/token-providers': 3.614.0(@aws-sdk/client-sso-oidc@3.645.0(@aws-sdk/client-sts@3.621.0)) '@aws-sdk/types': 3.609.0 '@smithy/property-provider': 3.1.3 '@smithy/shared-ini-file-loader': 3.1.4 @@ -15248,6 +16023,37 @@ snapshots: '@smithy/types': 3.3.0 tslib: 2.6.3 + '@aws-sdk/credential-provider-web-identity@3.621.0(@aws-sdk/client-sts@3.645.0)': + dependencies: + '@aws-sdk/client-sts': 3.645.0 + '@aws-sdk/types': 3.609.0 + '@smithy/property-provider': 3.1.3 + '@smithy/types': 3.3.0 + tslib: 2.6.3 + + '@aws-sdk/credential-providers@3.621.0': + dependencies: + '@aws-sdk/client-cognito-identity': 3.621.0 + '@aws-sdk/client-sso': 3.621.0 + '@aws-sdk/client-sts': 3.621.0 + '@aws-sdk/credential-provider-cognito-identity': 3.621.0 + '@aws-sdk/credential-provider-env': 3.620.1 + '@aws-sdk/credential-provider-http': 3.621.0 + '@aws-sdk/credential-provider-ini': 3.621.0(@aws-sdk/client-sso-oidc@3.645.0(@aws-sdk/client-sts@3.645.0))(@aws-sdk/client-sts@3.621.0) + '@aws-sdk/credential-provider-node': 3.621.0(@aws-sdk/client-sts@3.621.0) + '@aws-sdk/credential-provider-process': 3.620.1 + '@aws-sdk/credential-provider-sso': 3.621.0(@aws-sdk/client-sso-oidc@3.645.0(@aws-sdk/client-sts@3.645.0)) + '@aws-sdk/credential-provider-web-identity': 3.621.0(@aws-sdk/client-sts@3.621.0) + '@aws-sdk/types': 3.609.0 + '@smithy/credential-provider-imds': 3.2.0 + '@smithy/property-provider': 3.1.3 + '@smithy/types': 3.3.0 + tslib: 2.6.3 + transitivePeerDependencies: + - '@aws-sdk/client-sso-oidc' + - aws-crt + optional: true + '@aws-sdk/credential-providers@3.621.0(@aws-sdk/client-sso-oidc@3.645.0(@aws-sdk/client-sts@3.645.0))': dependencies: '@aws-sdk/client-cognito-identity': 3.621.0 @@ -15269,7 +16075,6 @@ snapshots: transitivePeerDependencies: - '@aws-sdk/client-sso-oidc' - aws-crt - optional: true '@aws-sdk/lib-storage@3.645.0(@aws-sdk/client-s3@3.645.0)': dependencies: @@ -15402,9 +16207,9 @@ snapshots: '@smithy/types': 3.3.0 tslib: 2.6.3 - '@aws-sdk/token-providers@3.614.0(@aws-sdk/client-sso-oidc@3.645.0(@aws-sdk/client-sts@3.645.0))': + '@aws-sdk/token-providers@3.614.0(@aws-sdk/client-sso-oidc@3.645.0(@aws-sdk/client-sts@3.621.0))': dependencies: - '@aws-sdk/client-sso-oidc': 3.645.0(@aws-sdk/client-sts@3.621.0) + '@aws-sdk/client-sso-oidc': 3.645.0(@aws-sdk/client-sts@3.645.0) '@aws-sdk/types': 3.609.0 '@smithy/property-provider': 3.1.3 '@smithy/shared-ini-file-loader': 3.1.4 @@ -15452,6 +16257,10 @@ snapshots: '@smithy/types': 3.3.0 tslib: 2.6.3 + '@aws-sdk/util-utf8-browser@3.259.0': + dependencies: + tslib: 2.6.3 + '@aws-sdk/xml-builder@3.609.0': dependencies: '@smithy/types': 3.3.0 @@ -15657,7 +16466,7 @@ snapshots: '@babel/helper-validator-identifier': 7.24.7 chalk: 2.4.2 js-tokens: 4.0.0 - picocolors: 1.0.1 + picocolors: 1.1.0 '@babel/parser@7.25.3': dependencies: @@ -15822,16 +16631,6 @@ snapshots: '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-async-generator-functions@7.25.0(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-remap-async-to-generator': 7.25.0(@babel/core@7.25.2) - '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.25.2) - '@babel/traverse': 7.25.3 - transitivePeerDependencies: - - supports-color - '@babel/plugin-transform-async-generator-functions@7.25.4(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 @@ -15886,18 +16685,6 @@ snapshots: transitivePeerDependencies: - supports-color - '@babel/plugin-transform-classes@7.25.0(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-annotate-as-pure': 7.24.7 - '@babel/helper-compilation-targets': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-replace-supers': 7.25.0(@babel/core@7.25.2) - '@babel/traverse': 7.25.3 - globals: 11.12.0 - transitivePeerDependencies: - - supports-color - '@babel/plugin-transform-classes@7.25.4(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 @@ -16241,107 +17028,12 @@ snapshots: '@babel/helper-create-regexp-features-plugin': 7.25.2(@babel/core@7.25.2) '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-unicode-sets-regex@7.24.7(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-create-regexp-features-plugin': 7.25.2(@babel/core@7.25.2) - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-unicode-sets-regex@7.25.4(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 '@babel/helper-create-regexp-features-plugin': 7.25.2(@babel/core@7.25.2) '@babel/helper-plugin-utils': 7.24.8 - '@babel/preset-env@7.25.3(@babel/core@7.25.2)': - dependencies: - '@babel/compat-data': 7.25.2 - '@babel/core': 7.25.2 - '@babel/helper-compilation-targets': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-validator-option': 7.24.8 - '@babel/plugin-bugfix-firefox-class-in-computed-class-key': 7.25.3(@babel/core@7.25.2) - '@babel/plugin-bugfix-safari-class-field-initializer-scope': 7.25.0(@babel/core@7.25.2) - '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.25.0(@babel/core@7.25.2) - '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly': 7.25.0(@babel/core@7.25.2) - '@babel/plugin-proposal-private-property-in-object': 7.21.0-placeholder-for-preset-env.2(@babel/core@7.25.2) - '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.25.2) - '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.25.2) - '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.25.2) - '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.25.2) - '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.25.2) - '@babel/plugin-syntax-import-assertions': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-syntax-import-attributes': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.25.2) - '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.25.2) - '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.25.2) - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.25.2) - '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.25.2) - '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.25.2) - '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.25.2) - '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.25.2) - '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.25.2) - '@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.25.2) - '@babel/plugin-syntax-unicode-sets-regex': 7.18.6(@babel/core@7.25.2) - '@babel/plugin-transform-arrow-functions': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-async-generator-functions': 7.25.0(@babel/core@7.25.2) - '@babel/plugin-transform-async-to-generator': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-block-scoped-functions': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-block-scoping': 7.25.0(@babel/core@7.25.2) - '@babel/plugin-transform-class-properties': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-class-static-block': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-classes': 7.25.0(@babel/core@7.25.2) - '@babel/plugin-transform-computed-properties': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-destructuring': 7.24.8(@babel/core@7.25.2) - '@babel/plugin-transform-dotall-regex': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-duplicate-keys': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-duplicate-named-capturing-groups-regex': 7.25.0(@babel/core@7.25.2) - '@babel/plugin-transform-dynamic-import': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-exponentiation-operator': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-export-namespace-from': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-for-of': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-function-name': 7.25.1(@babel/core@7.25.2) - '@babel/plugin-transform-json-strings': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-literals': 7.25.2(@babel/core@7.25.2) - '@babel/plugin-transform-logical-assignment-operators': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-member-expression-literals': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-modules-amd': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-modules-commonjs': 7.24.8(@babel/core@7.25.2) - '@babel/plugin-transform-modules-systemjs': 7.25.0(@babel/core@7.25.2) - '@babel/plugin-transform-modules-umd': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-named-capturing-groups-regex': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-new-target': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-nullish-coalescing-operator': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-numeric-separator': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-object-rest-spread': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-object-super': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-optional-catch-binding': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-optional-chaining': 7.24.8(@babel/core@7.25.2) - '@babel/plugin-transform-parameters': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-private-methods': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-private-property-in-object': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-property-literals': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-regenerator': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-reserved-words': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-shorthand-properties': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-spread': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-sticky-regex': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-template-literals': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-typeof-symbol': 7.24.8(@babel/core@7.25.2) - '@babel/plugin-transform-unicode-escapes': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-unicode-property-regex': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-unicode-regex': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-unicode-sets-regex': 7.24.7(@babel/core@7.25.2) - '@babel/preset-modules': 0.1.6-no-external-plugins(@babel/core@7.25.2) - babel-plugin-polyfill-corejs2: 0.4.11(@babel/core@7.25.2) - babel-plugin-polyfill-corejs3: 0.10.4(@babel/core@7.25.2) - babel-plugin-polyfill-regenerator: 0.6.2(@babel/core@7.25.2) - core-js-compat: 3.37.1 - semver: 6.3.1 - transitivePeerDependencies: - - supports-color - '@babel/preset-env@7.25.4(@babel/core@7.25.2)': dependencies: '@babel/compat-data': 7.25.4 @@ -16932,6 +17624,11 @@ snapshots: react: 18.3.1 tslib: 2.6.3 + '@dnd-kit/accessibility@3.1.0(react@19.0.0-rc-06d0b89e-20240801)': + dependencies: + react: 19.0.0-rc-06d0b89e-20240801 + tslib: 2.6.3 + '@dnd-kit/core@6.0.8(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@dnd-kit/accessibility': 3.1.0(react@18.3.1) @@ -16940,6 +17637,14 @@ snapshots: react-dom: 18.3.1(react@18.3.1) tslib: 2.6.3 + '@dnd-kit/core@6.0.8(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)': + dependencies: + '@dnd-kit/accessibility': 3.1.0(react@19.0.0-rc-06d0b89e-20240801) + '@dnd-kit/utilities': 3.2.2(react@19.0.0-rc-06d0b89e-20240801) + react: 19.0.0-rc-06d0b89e-20240801 + react-dom: 19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801) + tslib: 2.6.3 + '@dnd-kit/sortable@7.0.2(@dnd-kit/core@6.0.8(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)': dependencies: '@dnd-kit/core': 6.0.8(react-dom@18.3.1(react@18.3.1))(react@18.3.1) @@ -16947,11 +17652,25 @@ snapshots: react: 18.3.1 tslib: 2.6.3 + '@dnd-kit/sortable@7.0.2(@dnd-kit/core@6.0.8(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)': + dependencies: + '@dnd-kit/core': 6.0.8(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801) + '@dnd-kit/utilities': 3.2.2(react@19.0.0-rc-06d0b89e-20240801) + react: 19.0.0-rc-06d0b89e-20240801 + tslib: 2.6.3 + '@dnd-kit/utilities@3.2.2(react@18.3.1)': dependencies: react: 18.3.1 tslib: 2.6.3 + '@dnd-kit/utilities@3.2.2(react@19.0.0-rc-06d0b89e-20240801)': + dependencies: + react: 19.0.0-rc-06d0b89e-20240801 + tslib: 2.6.3 + + '@drizzle-team/brocli@0.8.2': {} + '@emnapi/runtime@1.2.0': dependencies: tslib: 2.6.3 @@ -17015,6 +17734,22 @@ snapshots: transitivePeerDependencies: - supports-color + '@emotion/react@11.13.3(react@19.0.0-rc-06d0b89e-20240801)(types-react@19.0.0-rc.0)': + dependencies: + '@babel/runtime': 7.25.6 + '@emotion/babel-plugin': 11.12.0 + '@emotion/cache': 11.13.1 + '@emotion/serialize': 1.3.1 + '@emotion/use-insertion-effect-with-fallbacks': 1.1.0(react@19.0.0-rc-06d0b89e-20240801) + '@emotion/utils': 1.4.0 + '@emotion/weak-memoize': 0.4.0 + hoist-non-react-statics: 3.3.2 + react: 19.0.0-rc-06d0b89e-20240801 + optionalDependencies: + '@types/react': types-react@19.0.0-rc.0 + transitivePeerDependencies: + - supports-color + '@emotion/serialize@1.3.0': dependencies: '@emotion/hash': 0.9.2 @@ -17065,86 +17800,320 @@ snapshots: dependencies: react: 18.3.1 + '@emotion/use-insertion-effect-with-fallbacks@1.1.0(react@19.0.0-rc-06d0b89e-20240801)': + dependencies: + react: 19.0.0-rc-06d0b89e-20240801 + '@emotion/utils@1.4.0': {} '@emotion/weak-memoize@0.4.0': {} + '@esbuild-kit/core-utils@3.3.2': + dependencies: + esbuild: 0.18.20 + source-map-support: 0.5.21 + + '@esbuild-kit/esm-loader@2.6.5': + dependencies: + '@esbuild-kit/core-utils': 3.3.2 + get-tsconfig: 4.7.6 + + '@esbuild/aix-ppc64@0.19.12': + optional: true + '@esbuild/aix-ppc64@0.21.5': optional: true - '@esbuild/android-arm64@0.21.5': + '@esbuild/aix-ppc64@0.23.1': optional: true - '@esbuild/android-arm@0.21.5': + '@esbuild/android-arm64@0.18.20': optional: true - '@esbuild/android-x64@0.21.5': + '@esbuild/android-arm64@0.19.12': optional: true - '@esbuild/darwin-arm64@0.21.5': + '@esbuild/android-arm64@0.21.5': optional: true - '@esbuild/darwin-x64@0.21.5': + '@esbuild/android-arm64@0.23.1': optional: true - '@esbuild/freebsd-arm64@0.21.5': + '@esbuild/android-arm@0.18.20': + optional: true + + '@esbuild/android-arm@0.19.12': + optional: true + + '@esbuild/android-arm@0.21.5': + optional: true + + '@esbuild/android-arm@0.23.1': + optional: true + + '@esbuild/android-x64@0.18.20': + optional: true + + '@esbuild/android-x64@0.19.12': + optional: true + + '@esbuild/android-x64@0.21.5': + optional: true + + '@esbuild/android-x64@0.23.1': + optional: true + + '@esbuild/darwin-arm64@0.18.20': + optional: true + + '@esbuild/darwin-arm64@0.19.12': + optional: true + + '@esbuild/darwin-arm64@0.21.5': + optional: true + + '@esbuild/darwin-arm64@0.23.1': + optional: true + + '@esbuild/darwin-x64@0.18.20': + optional: true + + '@esbuild/darwin-x64@0.19.12': + optional: true + + '@esbuild/darwin-x64@0.21.5': + optional: true + + '@esbuild/darwin-x64@0.23.1': + optional: true + + '@esbuild/freebsd-arm64@0.18.20': + optional: true + + '@esbuild/freebsd-arm64@0.19.12': + optional: true + + '@esbuild/freebsd-arm64@0.21.5': + optional: true + + '@esbuild/freebsd-arm64@0.23.1': + optional: true + + '@esbuild/freebsd-x64@0.18.20': + optional: true + + '@esbuild/freebsd-x64@0.19.12': optional: true '@esbuild/freebsd-x64@0.21.5': optional: true + '@esbuild/freebsd-x64@0.23.1': + optional: true + + '@esbuild/linux-arm64@0.18.20': + optional: true + + '@esbuild/linux-arm64@0.19.12': + optional: true + '@esbuild/linux-arm64@0.21.5': optional: true + '@esbuild/linux-arm64@0.23.1': + optional: true + + '@esbuild/linux-arm@0.18.20': + optional: true + + '@esbuild/linux-arm@0.19.12': + optional: true + '@esbuild/linux-arm@0.21.5': optional: true + '@esbuild/linux-arm@0.23.1': + optional: true + + '@esbuild/linux-ia32@0.18.20': + optional: true + + '@esbuild/linux-ia32@0.19.12': + optional: true + '@esbuild/linux-ia32@0.21.5': optional: true + '@esbuild/linux-ia32@0.23.1': + optional: true + + '@esbuild/linux-loong64@0.18.20': + optional: true + + '@esbuild/linux-loong64@0.19.12': + optional: true + '@esbuild/linux-loong64@0.21.5': optional: true + '@esbuild/linux-loong64@0.23.1': + optional: true + + '@esbuild/linux-mips64el@0.18.20': + optional: true + + '@esbuild/linux-mips64el@0.19.12': + optional: true + '@esbuild/linux-mips64el@0.21.5': optional: true + '@esbuild/linux-mips64el@0.23.1': + optional: true + + '@esbuild/linux-ppc64@0.18.20': + optional: true + + '@esbuild/linux-ppc64@0.19.12': + optional: true + '@esbuild/linux-ppc64@0.21.5': optional: true + '@esbuild/linux-ppc64@0.23.1': + optional: true + + '@esbuild/linux-riscv64@0.18.20': + optional: true + + '@esbuild/linux-riscv64@0.19.12': + optional: true + '@esbuild/linux-riscv64@0.21.5': optional: true + '@esbuild/linux-riscv64@0.23.1': + optional: true + + '@esbuild/linux-s390x@0.18.20': + optional: true + + '@esbuild/linux-s390x@0.19.12': + optional: true + '@esbuild/linux-s390x@0.21.5': optional: true + '@esbuild/linux-s390x@0.23.1': + optional: true + + '@esbuild/linux-x64@0.18.20': + optional: true + + '@esbuild/linux-x64@0.19.12': + optional: true + '@esbuild/linux-x64@0.21.5': optional: true + '@esbuild/linux-x64@0.23.1': + optional: true + + '@esbuild/netbsd-x64@0.18.20': + optional: true + + '@esbuild/netbsd-x64@0.19.12': + optional: true + '@esbuild/netbsd-x64@0.21.5': optional: true + '@esbuild/netbsd-x64@0.23.1': + optional: true + + '@esbuild/openbsd-arm64@0.23.1': + optional: true + + '@esbuild/openbsd-x64@0.18.20': + optional: true + + '@esbuild/openbsd-x64@0.19.12': + optional: true + '@esbuild/openbsd-x64@0.21.5': optional: true + '@esbuild/openbsd-x64@0.23.1': + optional: true + + '@esbuild/sunos-x64@0.18.20': + optional: true + + '@esbuild/sunos-x64@0.19.12': + optional: true + '@esbuild/sunos-x64@0.21.5': optional: true + '@esbuild/sunos-x64@0.23.1': + optional: true + + '@esbuild/win32-arm64@0.18.20': + optional: true + + '@esbuild/win32-arm64@0.19.12': + optional: true + '@esbuild/win32-arm64@0.21.5': optional: true + '@esbuild/win32-arm64@0.23.1': + optional: true + + '@esbuild/win32-ia32@0.18.20': + optional: true + + '@esbuild/win32-ia32@0.19.12': + optional: true + '@esbuild/win32-ia32@0.21.5': optional: true + '@esbuild/win32-ia32@0.23.1': + optional: true + + '@esbuild/win32-x64@0.18.20': + optional: true + + '@esbuild/win32-x64@0.19.12': + optional: true + '@esbuild/win32-x64@0.21.5': optional: true + '@esbuild/win32-x64@0.23.1': + optional: true + '@eslint-community/eslint-utils@4.4.0(eslint@8.57.0)': dependencies: eslint: 8.57.0 eslint-visitor-keys: 3.4.3 + '@eslint-community/eslint-utils@4.4.0(eslint@9.10.0(jiti@1.21.6))': + dependencies: + eslint: 9.10.0(jiti@1.21.6) + eslint-visitor-keys: 3.4.3 + '@eslint-community/regexpp@4.11.0': {} + '@eslint/config-array@0.18.0': + dependencies: + '@eslint/object-schema': 2.1.4 + debug: 4.3.6 + minimatch: 3.1.2 + transitivePeerDependencies: + - supports-color + '@eslint/eslintrc@2.1.4': dependencies: ajv: 6.12.6 @@ -17159,8 +18128,30 @@ snapshots: transitivePeerDependencies: - supports-color + '@eslint/eslintrc@3.1.0': + dependencies: + ajv: 6.12.6 + debug: 4.3.6 + espree: 10.1.0 + globals: 14.0.0 + ignore: 5.3.1 + import-fresh: 3.3.0 + js-yaml: 4.1.0 + minimatch: 3.1.2 + strip-json-comments: 3.1.1 + transitivePeerDependencies: + - supports-color + '@eslint/js@8.57.0': {} + '@eslint/js@9.10.0': {} + + '@eslint/object-schema@2.1.4': {} + + '@eslint/plugin-kit@0.1.0': + dependencies: + levn: 0.4.1 + '@faceless-ui/modal@2.0.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: body-scroll-lock: 3.1.5 @@ -17170,16 +18161,34 @@ snapshots: react-dom: 18.3.1(react@18.3.1) react-transition-group: 4.4.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@faceless-ui/modal@3.0.0-beta.2(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)': + dependencies: + body-scroll-lock: 4.0.0-beta.0 + focus-trap: 7.5.4 + react: 19.0.0-rc-06d0b89e-20240801 + react-dom: 19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801) + react-transition-group: 4.4.5(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801) + '@faceless-ui/scroll-info@1.3.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) + '@faceless-ui/scroll-info@2.0.0-beta.0(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)': + dependencies: + react: 19.0.0-rc-06d0b89e-20240801 + react-dom: 19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801) + '@faceless-ui/window-info@2.1.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) + '@faceless-ui/window-info@3.0.0-beta.0(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)': + dependencies: + react: 19.0.0-rc-06d0b89e-20240801 + react-dom: 19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801) + '@floating-ui/core@1.6.5': dependencies: '@floating-ui/utils': 0.2.5 @@ -17195,8 +18204,24 @@ snapshots: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) + '@floating-ui/react-dom@2.1.1(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)': + dependencies: + '@floating-ui/dom': 1.6.8 + react: 19.0.0-rc-06d0b89e-20240801 + react-dom: 19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801) + + '@floating-ui/react@0.26.23(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)': + dependencies: + '@floating-ui/react-dom': 2.1.1(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801) + '@floating-ui/utils': 0.2.7 + react: 19.0.0-rc-06d0b89e-20240801 + react-dom: 19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801) + tabbable: 6.2.0 + '@floating-ui/utils@0.2.5': {} + '@floating-ui/utils@0.2.7': {} + '@gar/promisify@1.1.3': optional: true @@ -17229,6 +18254,8 @@ snapshots: '@humanwhocodes/object-schema@2.0.3': {} + '@humanwhocodes/retry@0.3.0': {} + '@img/sharp-darwin-arm64@0.33.5': optionalDependencies: '@img/sharp-libvips-darwin-arm64': 1.0.4 @@ -17332,7 +18359,42 @@ snapshots: jest-util: 29.7.0 slash: 3.0.0 - '@jest/core@29.7.0(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.5))(@types/node@20.14.14)(typescript@5.5.4))': + '@jest/core@29.7.0(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@20.14.14)(typescript@5.5.4))': + dependencies: + '@jest/console': 29.7.0 + '@jest/reporters': 29.7.0 + '@jest/test-result': 29.7.0 + '@jest/transform': 29.7.0 + '@jest/types': 29.6.3 + '@types/node': 20.14.14 + ansi-escapes: 4.3.2 + chalk: 4.1.2 + ci-info: 3.9.0 + exit: 0.1.2 + graceful-fs: 4.2.11 + jest-changed-files: 29.7.0 + jest-config: 29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@20.14.14)(typescript@5.5.4)) + jest-haste-map: 29.7.0 + jest-message-util: 29.7.0 + jest-regex-util: 29.6.3 + jest-resolve: 29.7.0 + jest-resolve-dependencies: 29.7.0 + jest-runner: 29.7.0 + jest-runtime: 29.7.0 + jest-snapshot: 29.7.0 + jest-util: 29.7.0 + jest-validate: 29.7.0 + jest-watcher: 29.7.0 + micromatch: 4.0.7 + pretty-format: 29.7.0 + slash: 3.0.0 + strip-ansi: 6.0.1 + transitivePeerDependencies: + - babel-plugin-macros + - supports-color + - ts-node + + '@jest/core@29.7.0(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@22.5.4)(typescript@5.5.4))': dependencies: '@jest/console': 29.7.0 '@jest/reporters': 29.7.0 @@ -17346,7 +18408,7 @@ snapshots: exit: 0.1.2 graceful-fs: 4.2.11 jest-changed-files: 29.7.0 - jest-config: 29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.5))(@types/node@20.14.14)(typescript@5.5.4)) + jest-config: 29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@22.5.4)(typescript@5.5.4)) jest-haste-map: 29.7.0 jest-message-util: 29.7.0 jest-regex-util: 29.6.3 @@ -17516,6 +18578,155 @@ snapshots: '@juggle/resize-observer@3.4.0': {} + '@lexical/clipboard@0.17.0': + dependencies: + '@lexical/html': 0.17.0 + '@lexical/list': 0.17.0 + '@lexical/selection': 0.17.0 + '@lexical/utils': 0.17.0 + lexical: 0.17.0 + + '@lexical/code@0.17.0': + dependencies: + '@lexical/utils': 0.17.0 + lexical: 0.17.0 + prismjs: 1.29.0 + + '@lexical/devtools-core@0.17.0(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)': + dependencies: + '@lexical/html': 0.17.0 + '@lexical/link': 0.17.0 + '@lexical/mark': 0.17.0 + '@lexical/table': 0.17.0 + '@lexical/utils': 0.17.0 + lexical: 0.17.0 + react: 19.0.0-rc-06d0b89e-20240801 + react-dom: 19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801) + + '@lexical/dragon@0.17.0': + dependencies: + lexical: 0.17.0 + + '@lexical/hashtag@0.17.0': + dependencies: + '@lexical/utils': 0.17.0 + lexical: 0.17.0 + + '@lexical/headless@0.17.0': + dependencies: + lexical: 0.17.0 + + '@lexical/history@0.17.0': + dependencies: + '@lexical/utils': 0.17.0 + lexical: 0.17.0 + + '@lexical/html@0.17.0': + dependencies: + '@lexical/selection': 0.17.0 + '@lexical/utils': 0.17.0 + lexical: 0.17.0 + + '@lexical/link@0.17.0': + dependencies: + '@lexical/utils': 0.17.0 + lexical: 0.17.0 + + '@lexical/list@0.17.0': + dependencies: + '@lexical/utils': 0.17.0 + lexical: 0.17.0 + + '@lexical/mark@0.17.0': + dependencies: + '@lexical/utils': 0.17.0 + lexical: 0.17.0 + + '@lexical/markdown@0.17.0': + dependencies: + '@lexical/code': 0.17.0 + '@lexical/link': 0.17.0 + '@lexical/list': 0.17.0 + '@lexical/rich-text': 0.17.0 + '@lexical/text': 0.17.0 + '@lexical/utils': 0.17.0 + lexical: 0.17.0 + + '@lexical/offset@0.17.0': + dependencies: + lexical: 0.17.0 + + '@lexical/overflow@0.17.0': + dependencies: + lexical: 0.17.0 + + '@lexical/plain-text@0.17.0': + dependencies: + '@lexical/clipboard': 0.17.0 + '@lexical/selection': 0.17.0 + '@lexical/utils': 0.17.0 + lexical: 0.17.0 + + '@lexical/react@0.17.0(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(yjs@13.6.19)': + dependencies: + '@lexical/clipboard': 0.17.0 + '@lexical/code': 0.17.0 + '@lexical/devtools-core': 0.17.0(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801) + '@lexical/dragon': 0.17.0 + '@lexical/hashtag': 0.17.0 + '@lexical/history': 0.17.0 + '@lexical/link': 0.17.0 + '@lexical/list': 0.17.0 + '@lexical/mark': 0.17.0 + '@lexical/markdown': 0.17.0 + '@lexical/overflow': 0.17.0 + '@lexical/plain-text': 0.17.0 + '@lexical/rich-text': 0.17.0 + '@lexical/selection': 0.17.0 + '@lexical/table': 0.17.0 + '@lexical/text': 0.17.0 + '@lexical/utils': 0.17.0 + '@lexical/yjs': 0.17.0(yjs@13.6.19) + lexical: 0.17.0 + react: 19.0.0-rc-06d0b89e-20240801 + react-dom: 19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801) + react-error-boundary: 3.1.4(react@19.0.0-rc-06d0b89e-20240801) + transitivePeerDependencies: + - yjs + + '@lexical/rich-text@0.17.0': + dependencies: + '@lexical/clipboard': 0.17.0 + '@lexical/selection': 0.17.0 + '@lexical/utils': 0.17.0 + lexical: 0.17.0 + + '@lexical/selection@0.17.0': + dependencies: + lexical: 0.17.0 + + '@lexical/table@0.17.0': + dependencies: + '@lexical/utils': 0.17.0 + lexical: 0.17.0 + + '@lexical/text@0.17.0': + dependencies: + lexical: 0.17.0 + + '@lexical/utils@0.17.0': + dependencies: + '@lexical/list': 0.17.0 + '@lexical/selection': 0.17.0 + '@lexical/table': 0.17.0 + lexical: 0.17.0 + + '@lexical/yjs@0.17.0(yjs@13.6.19)': + dependencies: + '@lexical/offset': 0.17.0 + lexical: 0.17.0 + yjs: 13.6.19 + '@manypkg/find-root@1.1.0': dependencies: '@babel/runtime': 7.25.6 @@ -17588,6 +18799,11 @@ snapshots: monaco-editor: 0.38.0 state-local: 1.0.7 + '@monaco-editor/loader@1.4.0(monaco-editor@0.51.0)': + dependencies: + monaco-editor: 0.51.0 + state-local: 1.0.7 + '@monaco-editor/react@4.5.1(monaco-editor@0.38.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@monaco-editor/loader': 1.4.0(monaco-editor@0.38.0) @@ -17595,6 +18811,13 @@ snapshots: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) + '@monaco-editor/react@4.6.0(monaco-editor@0.51.0)(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)': + dependencies: + '@monaco-editor/loader': 1.4.0(monaco-editor@0.51.0) + monaco-editor: 0.51.0 + react: 19.0.0-rc-06d0b89e-20240801 + react-dom: 19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801) + '@mongodb-js/saslprep@1.1.8': dependencies: sparse-bitfield: 3.0.3 @@ -17641,11 +18864,11 @@ snapshots: '@emotion/styled': 11.13.0(@emotion/react@11.13.3(@types/react@18.3.5)(react@18.3.1))(@types/react@18.3.5)(react@18.3.1) '@types/react': 18.3.5 - '@mui/material-nextjs@5.16.6(@emotion/cache@11.13.1)(@emotion/server@11.11.0(@emotion/css@11.13.0))(@mui/material@5.16.6(@emotion/react@11.13.3(@types/react@18.3.5)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.5)(react@18.3.1))(@types/react@18.3.5)(react@18.3.1))(@types/react@18.3.5)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.5)(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4))(react@18.3.1)': + '@mui/material-nextjs@5.16.6(@emotion/cache@11.13.1)(@emotion/server@11.11.0(@emotion/css@11.13.0))(@mui/material@5.16.6(@emotion/react@11.13.3(@types/react@18.3.5)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.5)(react@18.3.1))(@types/react@18.3.5)(react@18.3.1))(@types/react@18.3.5)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.5)(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4))(react@18.3.1)': dependencies: '@babel/runtime': 7.25.6 '@mui/material': 5.16.6(@emotion/react@11.13.3(@types/react@18.3.5)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.5)(react@18.3.1))(@types/react@18.3.5)(react@18.3.1))(@types/react@18.3.5)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - next: 14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4) + next: 14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4) react: 18.3.1 optionalDependencies: '@emotion/cache': 11.13.1 @@ -17736,6 +18959,10 @@ snapshots: optionalDependencies: '@types/react': 18.3.5 + '@mui/types@7.2.15(types-react@19.0.0-rc.0)': + optionalDependencies: + '@types/react': types-react@19.0.0-rc.0 + '@mui/utils@5.16.6(@types/react@18.3.5)(react@18.3.1)': dependencies: '@babel/runtime': 7.25.6 @@ -17748,6 +18975,18 @@ snapshots: optionalDependencies: '@types/react': 18.3.5 + '@mui/utils@5.16.6(react@19.0.0-rc-06d0b89e-20240801)(types-react@19.0.0-rc.0)': + dependencies: + '@babel/runtime': 7.25.6 + '@mui/types': 7.2.15(types-react@19.0.0-rc.0) + '@types/prop-types': 15.7.12 + clsx: 2.1.1 + prop-types: 15.8.1 + react: 19.0.0-rc-06d0b89e-20240801 + react-is: 18.3.1 + optionalDependencies: + '@types/react': types-react@19.0.0-rc.0 + '@mui/x-date-pickers@7.15.0(@emotion/react@11.13.3(@types/react@18.3.5)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.5)(react@18.3.1))(@types/react@18.3.5)(react@18.3.1))(@mui/material@5.16.6(@emotion/react@11.13.3(@types/react@18.3.5)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.5)(react@18.3.1))(@types/react@18.3.5)(react@18.3.1))(@types/react@18.3.5)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@mui/system@5.16.6(@emotion/react@11.13.3(@types/react@18.3.5)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.5)(react@18.3.1))(@types/react@18.3.5)(react@18.3.1))(@types/react@18.3.5)(react@18.3.1))(@types/react@18.3.5)(date-fns@3.6.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.25.6 @@ -17796,10 +19035,18 @@ snapshots: '@next/env@14.2.8': {} + '@next/env@15.0.0-canary.104': {} + + '@next/env@15.0.0-rc.0': {} + '@next/eslint-plugin-next@14.2.8': dependencies: glob: 10.3.10 + '@next/eslint-plugin-next@15.0.0-canary.53': + dependencies: + fast-glob: 3.3.1 + '@next/mdx@14.2.8(@mdx-js/loader@3.0.1(webpack@5.93.0))(@mdx-js/react@3.0.1(@types/react@18.3.5)(react@18.3.1))': dependencies: source-map: 0.7.4 @@ -17810,33 +19057,60 @@ snapshots: '@next/swc-darwin-arm64@14.2.8': optional: true + '@next/swc-darwin-arm64@15.0.0-canary.104': + optional: true + '@next/swc-darwin-x64@14.2.8': optional: true + '@next/swc-darwin-x64@15.0.0-canary.104': + optional: true + '@next/swc-linux-arm64-gnu@14.2.8': optional: true + '@next/swc-linux-arm64-gnu@15.0.0-canary.104': + optional: true + '@next/swc-linux-arm64-musl@14.2.8': optional: true + '@next/swc-linux-arm64-musl@15.0.0-canary.104': + optional: true + '@next/swc-linux-x64-gnu@14.2.8': optional: true + '@next/swc-linux-x64-gnu@15.0.0-canary.104': + optional: true + '@next/swc-linux-x64-musl@14.2.8': optional: true + '@next/swc-linux-x64-musl@15.0.0-canary.104': + optional: true + '@next/swc-win32-arm64-msvc@14.2.8': optional: true + '@next/swc-win32-arm64-msvc@15.0.0-canary.104': + optional: true + '@next/swc-win32-ia32-msvc@14.2.8': optional: true + '@next/swc-win32-ia32-msvc@15.0.0-canary.104': + optional: true + '@next/swc-win32-x64-msvc@14.2.8': optional: true - '@next/third-parties@14.2.8(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4))(react@18.3.1)': + '@next/swc-win32-x64-msvc@15.0.0-canary.104': + optional: true + + '@next/third-parties@14.2.8(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4))(react@18.3.1)': dependencies: - next: 14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4) + next: 14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4) react: 18.3.1 third-party-capital: 1.0.20 @@ -18030,6 +19304,8 @@ snapshots: dependencies: which: 4.0.0 + '@one-ini/wasm@0.1.1': {} + '@opentelemetry/api-logs@0.52.1': dependencies: '@opentelemetry/api': 1.9.0 @@ -18244,33 +19520,33 @@ snapshots: '@panva/hkdf@1.2.1': {} - '@payloadcms/bundler-webpack@1.0.7(@swc/core@1.7.23(@swc/helpers@0.5.5))(ajv@8.17.1)(payload@2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)))(sass@1.69.4)': + '@payloadcms/bundler-webpack@1.0.7(@swc/core@1.7.23(@swc/helpers@0.5.12))(ajv@8.17.1)(payload@2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)))(sass@1.77.4)': dependencies: ajv: 8.17.1 compression: 1.7.4 connect-history-api-fallback: 1.6.0 - css-loader: 5.2.7(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)) - file-loader: 6.2.0(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)) + css-loader: 5.2.7(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)) + file-loader: 6.2.0(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)) find-node-modules: 2.1.3 - html-webpack-plugin: 5.6.0(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)) + html-webpack-plugin: 5.6.0(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)) md5: 2.3.0 - mini-css-extract-plugin: 1.6.2(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)) + mini-css-extract-plugin: 1.6.2(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)) path-browserify: 1.0.1 - payload: 2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)) + payload: 2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)) postcss: 8.4.31 - postcss-loader: 6.2.1(postcss@8.4.31)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)) + postcss-loader: 6.2.1(postcss@8.4.31)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)) postcss-preset-env: 9.0.0(postcss@8.4.31) process: 0.11.10 - sass-loader: 12.6.0(sass@1.69.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)) - style-loader: 2.0.0(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)) - swc-loader: 0.2.6(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)) - swc-minify-webpack-plugin: 2.1.2(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)) - terser-webpack-plugin: 5.3.10(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)) - url-loader: 4.1.1(file-loader@6.2.0(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)) - webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0) + sass-loader: 12.6.0(sass@1.77.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)) + style-loader: 2.0.0(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)) + swc-loader: 0.2.6(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)) + swc-minify-webpack-plugin: 2.1.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)) + terser-webpack-plugin: 5.3.10(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)) + url-loader: 4.1.1(file-loader@6.2.0(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)) + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0) webpack-bundle-analyzer: 4.10.2 - webpack-cli: 4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)) - webpack-dev-middleware: 6.1.2(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)) + webpack-cli: 4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)) + webpack-dev-middleware: 6.1.2(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)) webpack-hot-middleware: 2.26.1 transitivePeerDependencies: - '@rspack/core' @@ -18288,33 +19564,33 @@ snapshots: - utf-8-validate - webpack-dev-server - '@payloadcms/bundler-webpack@1.0.7(@swc/core@1.7.23(@swc/helpers@0.5.5))(ajv@8.17.1)(payload@2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))))(sass@1.69.4)': + '@payloadcms/bundler-webpack@1.0.7(@swc/core@1.7.23(@swc/helpers@0.5.12))(ajv@8.17.1)(payload@2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))))(sass@1.77.4)': dependencies: ajv: 8.17.1 compression: 1.7.4 connect-history-api-fallback: 1.6.0 - css-loader: 5.2.7(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))) - file-loader: 6.2.0(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))) + css-loader: 5.2.7(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) + file-loader: 6.2.0(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) find-node-modules: 2.1.3 - html-webpack-plugin: 5.6.0(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))) + html-webpack-plugin: 5.6.0(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) md5: 2.3.0 - mini-css-extract-plugin: 1.6.2(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))) + mini-css-extract-plugin: 1.6.2(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) path-browserify: 1.0.1 - payload: 2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))) + payload: 2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) postcss: 8.4.31 - postcss-loader: 6.2.1(postcss@8.4.31)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))) + postcss-loader: 6.2.1(postcss@8.4.31)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) postcss-preset-env: 9.0.0(postcss@8.4.31) process: 0.11.10 - sass-loader: 12.6.0(sass@1.69.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))) - style-loader: 2.0.0(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))) - swc-loader: 0.2.6(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))) - swc-minify-webpack-plugin: 2.1.2(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))) - terser-webpack-plugin: 5.3.10(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))) - url-loader: 4.1.1(file-loader@6.2.0(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))) - webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5)))) + sass-loader: 12.6.0(sass@1.77.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) + style-loader: 2.0.0(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) + swc-loader: 0.2.6(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) + swc-minify-webpack-plugin: 2.1.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) + terser-webpack-plugin: 5.3.10(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) + url-loader: 4.1.1(file-loader@6.2.0(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))) webpack-bundle-analyzer: 4.10.2 - webpack-cli: 4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))) - webpack-dev-middleware: 6.1.2(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))) + webpack-cli: 4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) + webpack-dev-middleware: 6.1.2(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) webpack-hot-middleware: 2.26.1 transitivePeerDependencies: - '@rspack/core' @@ -18332,7 +19608,7 @@ snapshots: - utf-8-validate - webpack-dev-server - '@payloadcms/db-mongodb@1.7.2(@aws-sdk/client-sso-oidc@3.645.0(@aws-sdk/client-sts@3.621.0))(payload@2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)))': + '@payloadcms/db-mongodb@1.7.2(@aws-sdk/client-sso-oidc@3.645.0(@aws-sdk/client-sts@3.645.0))(payload@2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)))': dependencies: bson-objectid: 2.0.4 deepmerge: 4.3.1 @@ -18341,7 +19617,7 @@ snapshots: mongoose: 6.12.3(@aws-sdk/client-sso-oidc@3.645.0(@aws-sdk/client-sts@3.645.0)) mongoose-aggregate-paginate-v2: 1.0.6 mongoose-paginate-v2: 1.7.22 - payload: 2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)) + payload: 2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)) prompts: 2.4.2 uuid: 9.0.0 transitivePeerDependencies: @@ -18349,16 +19625,16 @@ snapshots: - aws-crt - supports-color - '@payloadcms/db-mongodb@1.7.2(@aws-sdk/client-sso-oidc@3.645.0(@aws-sdk/client-sts@3.645.0))(payload@2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))))': + '@payloadcms/db-mongodb@1.7.2(payload@2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))))': dependencies: bson-objectid: 2.0.4 deepmerge: 4.3.1 get-port: 5.1.1 http-status: 1.6.2 - mongoose: 6.12.3(@aws-sdk/client-sso-oidc@3.645.0(@aws-sdk/client-sts@3.645.0)) + mongoose: 6.12.3 mongoose-aggregate-paginate-v2: 1.0.6 mongoose-paginate-v2: 1.7.22 - payload: 2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))) + payload: 2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) prompts: 2.4.2 uuid: 9.0.0 transitivePeerDependencies: @@ -18366,6 +19642,116 @@ snapshots: - aws-crt - supports-color + '@payloadcms/db-mongodb@3.0.0-beta.102(@aws-sdk/client-sso-oidc@3.645.0(@aws-sdk/client-sts@3.645.0))(payload@3.0.0-beta.102(graphql@16.9.0)(monaco-editor@0.51.0)(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(typescript@5.5.4))': + dependencies: + bson-objectid: 2.0.4 + http-status: 1.6.2 + mongoose: 6.12.3(@aws-sdk/client-sso-oidc@3.645.0(@aws-sdk/client-sts@3.645.0)) + mongoose-paginate-v2: 1.7.22 + payload: 3.0.0-beta.102(graphql@16.9.0)(monaco-editor@0.51.0)(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(typescript@5.5.4) + prompts: 2.4.2 + uuid: 10.0.0 + transitivePeerDependencies: + - '@aws-sdk/client-sso-oidc' + - aws-crt + - supports-color + + '@payloadcms/db-postgres@3.0.0-beta.102(@opentelemetry/api@1.9.0)(@types/pg@8.6.1)(payload@3.0.0-beta.102(graphql@16.9.0)(monaco-editor@0.51.0)(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(typescript@5.5.4))(react@19.0.0-rc-06d0b89e-20240801)(sqlite3@5.1.7)(types-react@19.0.0-rc.0)': + dependencies: + '@payloadcms/drizzle': 3.0.0-beta.102(@opentelemetry/api@1.9.0)(@types/pg@8.6.1)(payload@3.0.0-beta.102(graphql@16.9.0)(monaco-editor@0.51.0)(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(typescript@5.5.4))(pg@8.11.3)(react@19.0.0-rc-06d0b89e-20240801)(sqlite3@5.1.7)(types-react@19.0.0-rc.0) + console-table-printer: 2.11.2 + drizzle-kit: 0.23.2-df9e596 + drizzle-orm: 0.32.1(@opentelemetry/api@1.9.0)(@types/pg@8.6.1)(pg@8.11.3)(react@19.0.0-rc-06d0b89e-20240801)(sqlite3@5.1.7)(types-react@19.0.0-rc.0) + payload: 3.0.0-beta.102(graphql@16.9.0)(monaco-editor@0.51.0)(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(typescript@5.5.4) + pg: 8.11.3 + prompts: 2.4.2 + to-snake-case: 1.0.0 + uuid: 10.0.0 + transitivePeerDependencies: + - '@aws-sdk/client-rds-data' + - '@cloudflare/workers-types' + - '@electric-sql/pglite' + - '@libsql/client' + - '@neondatabase/serverless' + - '@op-engineering/op-sqlite' + - '@opentelemetry/api' + - '@planetscale/database' + - '@prisma/client' + - '@tidbcloud/serverless' + - '@types/better-sqlite3' + - '@types/pg' + - '@types/react' + - '@types/sql.js' + - '@vercel/postgres' + - '@xata.io/client' + - better-sqlite3 + - bun-types + - expo-sqlite + - knex + - kysely + - mysql2 + - pg-native + - postgres + - prisma + - react + - sql.js + - sqlite3 + - supports-color + + '@payloadcms/drizzle@3.0.0-beta.102(@opentelemetry/api@1.9.0)(@types/pg@8.6.1)(payload@3.0.0-beta.102(graphql@16.9.0)(monaco-editor@0.51.0)(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(typescript@5.5.4))(pg@8.11.3)(react@19.0.0-rc-06d0b89e-20240801)(sqlite3@5.1.7)(types-react@19.0.0-rc.0)': + dependencies: + console-table-printer: 2.11.2 + drizzle-orm: 0.32.1(@opentelemetry/api@1.9.0)(@types/pg@8.6.1)(pg@8.11.3)(react@19.0.0-rc-06d0b89e-20240801)(sqlite3@5.1.7)(types-react@19.0.0-rc.0) + payload: 3.0.0-beta.102(graphql@16.9.0)(monaco-editor@0.51.0)(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(typescript@5.5.4) + prompts: 2.4.2 + to-snake-case: 1.0.0 + uuid: 9.0.0 + transitivePeerDependencies: + - '@aws-sdk/client-rds-data' + - '@cloudflare/workers-types' + - '@electric-sql/pglite' + - '@libsql/client' + - '@neondatabase/serverless' + - '@op-engineering/op-sqlite' + - '@opentelemetry/api' + - '@planetscale/database' + - '@prisma/client' + - '@tidbcloud/serverless' + - '@types/better-sqlite3' + - '@types/pg' + - '@types/react' + - '@types/sql.js' + - '@vercel/postgres' + - '@xata.io/client' + - better-sqlite3 + - bun-types + - expo-sqlite + - knex + - kysely + - mysql2 + - pg + - postgres + - prisma + - react + - sql.js + - sqlite3 + + '@payloadcms/email-nodemailer@3.0.0-beta.102(payload@3.0.0-beta.102(graphql@16.9.0)(monaco-editor@0.51.0)(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(typescript@5.5.4))': + dependencies: + nodemailer: 6.9.10 + payload: 3.0.0-beta.102(graphql@16.9.0)(monaco-editor@0.51.0)(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(typescript@5.5.4) + + '@payloadcms/graphql@3.0.0-beta.102(graphql@16.9.0)(payload@3.0.0-beta.102(graphql@16.9.0)(monaco-editor@0.51.0)(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(typescript@5.5.4))(typescript@5.5.4)': + dependencies: + graphql: 16.9.0 + graphql-scalars: 1.22.2(graphql@16.9.0) + payload: 3.0.0-beta.102(graphql@16.9.0)(monaco-editor@0.51.0)(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(typescript@5.5.4) + pluralize: 8.0.0 + ts-essentials: 7.0.3(typescript@5.5.4) + tsx: 4.17.0 + transitivePeerDependencies: + - typescript + '@payloadcms/live-preview-react@0.2.0(react@18.3.1)': dependencies: '@payloadcms/live-preview': 0.2.2 @@ -18373,68 +19759,164 @@ snapshots: '@payloadcms/live-preview@0.2.2': {} - '@payloadcms/plugin-cloud-storage@1.1.3(@aws-sdk/client-s3@3.645.0)(@aws-sdk/lib-storage@3.645.0(@aws-sdk/client-s3@3.645.0))(payload@2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)))': + '@payloadcms/next@3.0.0-beta.102(graphql@16.9.0)(monaco-editor@0.51.0)(next@15.0.0-canary.104(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(sass@1.77.4))(payload@3.0.0-beta.102(graphql@16.9.0)(monaco-editor@0.51.0)(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(typescript@5.5.4))(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(types-react@19.0.0-rc.0)(typescript@5.5.4)': + dependencies: + '@dnd-kit/core': 6.0.8(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801) + '@payloadcms/graphql': 3.0.0-beta.102(graphql@16.9.0)(payload@3.0.0-beta.102(graphql@16.9.0)(monaco-editor@0.51.0)(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(typescript@5.5.4))(typescript@5.5.4) + '@payloadcms/translations': 3.0.0-beta.102 + '@payloadcms/ui': 3.0.0-beta.102(monaco-editor@0.51.0)(next@15.0.0-canary.104(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(sass@1.77.4))(payload@3.0.0-beta.102(graphql@16.9.0)(monaco-editor@0.51.0)(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(typescript@5.5.4))(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(types-react@19.0.0-rc.0)(typescript@5.5.4) + busboy: 1.6.0 + file-type: 17.1.6 + graphql: 16.9.0 + graphql-http: 1.22.1(graphql@16.9.0) + graphql-playground-html: 1.6.30 + http-status: 1.6.2 + next: 15.0.0-canary.104(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(sass@1.77.4) + path-to-regexp: 6.2.2 + payload: 3.0.0-beta.102(graphql@16.9.0)(monaco-editor@0.51.0)(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(typescript@5.5.4) + qs-esm: 7.0.2 + react-diff-viewer-continued: 3.2.6(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801) + sass: 1.77.4 + sonner: 1.5.0(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801) + uuid: 10.0.0 + ws: 8.18.0 + transitivePeerDependencies: + - '@types/react' + - bufferutil + - monaco-editor + - react + - react-dom + - supports-color + - typescript + - utf-8-validate + + '@payloadcms/plugin-cloud-storage@1.1.3(@aws-sdk/client-s3@3.645.0)(@aws-sdk/lib-storage@3.645.0(@aws-sdk/client-s3@3.645.0))(payload@2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)))': dependencies: find-node-modules: 2.1.3 - payload: 2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)) + payload: 2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)) range-parser: 1.2.1 optionalDependencies: '@aws-sdk/client-s3': 3.645.0 '@aws-sdk/lib-storage': 3.645.0(@aws-sdk/client-s3@3.645.0) - '@payloadcms/plugin-cloud-storage@1.1.3(@aws-sdk/client-s3@3.645.0)(@aws-sdk/lib-storage@3.645.0(@aws-sdk/client-s3@3.645.0))(payload@2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))))': + '@payloadcms/plugin-cloud-storage@1.1.3(@aws-sdk/client-s3@3.645.0)(@aws-sdk/lib-storage@3.645.0(@aws-sdk/client-s3@3.645.0))(payload@2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))))': dependencies: find-node-modules: 2.1.3 - payload: 2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))) + payload: 2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) range-parser: 1.2.1 optionalDependencies: '@aws-sdk/client-s3': 3.645.0 '@aws-sdk/lib-storage': 3.645.0(@aws-sdk/client-s3@3.645.0) - '@payloadcms/plugin-nested-docs@1.0.12(payload@2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)))': + '@payloadcms/plugin-cloud@3.0.0-beta.102(@aws-sdk/client-sso-oidc@3.645.0(@aws-sdk/client-sts@3.645.0))(encoding@0.1.13)(payload@3.0.0-beta.102(graphql@16.9.0)(monaco-editor@0.51.0)(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(typescript@5.5.4))': dependencies: - payload: 2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)) + '@aws-sdk/client-cognito-identity': 3.621.0 + '@aws-sdk/client-s3': 3.645.0 + '@aws-sdk/credential-providers': 3.621.0(@aws-sdk/client-sso-oidc@3.645.0(@aws-sdk/client-sts@3.645.0)) + '@aws-sdk/lib-storage': 3.645.0(@aws-sdk/client-s3@3.645.0) + '@payloadcms/email-nodemailer': 3.0.0-beta.102(payload@3.0.0-beta.102(graphql@16.9.0)(monaco-editor@0.51.0)(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(typescript@5.5.4)) + amazon-cognito-identity-js: 6.3.12(encoding@0.1.13) + nodemailer: 6.9.10 + payload: 3.0.0-beta.102(graphql@16.9.0)(monaco-editor@0.51.0)(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(typescript@5.5.4) + resend: 0.17.2 + transitivePeerDependencies: + - '@aws-sdk/client-sso-oidc' + - aws-crt + - debug + - encoding + + '@payloadcms/plugin-nested-docs@1.0.12(payload@2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)))': + dependencies: + payload: 2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)) - '@payloadcms/plugin-nested-docs@1.0.12(payload@2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))))': + '@payloadcms/plugin-nested-docs@1.0.12(payload@2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))))': dependencies: - payload: 2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))) + payload: 2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) - '@payloadcms/plugin-sentry@0.0.6(payload@2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)))(react@18.3.1)': + '@payloadcms/plugin-sentry@0.0.6(payload@2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)))(react@18.3.1)': dependencies: '@sentry/node': 7.118.0 '@sentry/types': 7.118.0 express: 4.19.2 - payload: 2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)) + payload: 2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)) react: 18.3.1 transitivePeerDependencies: - supports-color - '@payloadcms/plugin-sentry@0.0.6(payload@2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))))(react@18.3.1)': + '@payloadcms/plugin-sentry@0.0.6(payload@2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))))(react@18.3.1)': dependencies: '@sentry/node': 7.118.0 '@sentry/types': 7.118.0 express: 4.19.2 - payload: 2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))) + payload: 2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) react: 18.3.1 transitivePeerDependencies: - supports-color - '@payloadcms/plugin-seo@2.3.2(payload@2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)))(react@18.3.1)': + '@payloadcms/plugin-seo@2.3.2(payload@2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)))(react@18.3.1)': dependencies: - payload: 2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)) + payload: 2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)) react: 18.3.1 - '@payloadcms/plugin-seo@2.3.2(payload@2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))))(react@18.3.1)': + '@payloadcms/plugin-seo@2.3.2(payload@2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))))(react@18.3.1)': dependencies: - payload: 2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))) + payload: 2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) react: 18.3.1 - '@payloadcms/richtext-slate@1.5.2(payload@2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@payloadcms/plugin-seo@3.0.0-beta.102(monaco-editor@0.51.0)(next@15.0.0-canary.104(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(sass@1.77.4))(payload@3.0.0-beta.102(graphql@16.9.0)(monaco-editor@0.51.0)(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(typescript@5.5.4))(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(types-react@19.0.0-rc.0)(typescript@5.5.4)': + dependencies: + '@payloadcms/translations': 3.0.0-beta.102 + '@payloadcms/ui': 3.0.0-beta.102(monaco-editor@0.51.0)(next@15.0.0-canary.104(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(sass@1.77.4))(payload@3.0.0-beta.102(graphql@16.9.0)(monaco-editor@0.51.0)(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(typescript@5.5.4))(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(types-react@19.0.0-rc.0)(typescript@5.5.4) + payload: 3.0.0-beta.102(graphql@16.9.0)(monaco-editor@0.51.0)(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(typescript@5.5.4) + react: 19.0.0-rc-06d0b89e-20240801 + react-dom: 19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801) + transitivePeerDependencies: + - '@types/react' + - monaco-editor + - next + - supports-color + - typescript + + '@payloadcms/richtext-lexical@3.0.0-beta.102(kveg4lsydt2bh47mgyau54rg7e)': + dependencies: + '@faceless-ui/modal': 3.0.0-beta.2(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801) + '@faceless-ui/scroll-info': 2.0.0-beta.0(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801) + '@lexical/headless': 0.17.0 + '@lexical/link': 0.17.0 + '@lexical/list': 0.17.0 + '@lexical/mark': 0.17.0 + '@lexical/markdown': 0.17.0 + '@lexical/react': 0.17.0(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(yjs@13.6.19) + '@lexical/rich-text': 0.17.0 + '@lexical/selection': 0.17.0 + '@lexical/table': 0.17.0 + '@lexical/utils': 0.17.0 + '@payloadcms/next': 3.0.0-beta.102(graphql@16.9.0)(monaco-editor@0.51.0)(next@15.0.0-canary.104(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(sass@1.77.4))(payload@3.0.0-beta.102(graphql@16.9.0)(monaco-editor@0.51.0)(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(typescript@5.5.4))(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(types-react@19.0.0-rc.0)(typescript@5.5.4) + '@payloadcms/translations': 3.0.0-beta.102 + '@payloadcms/ui': 3.0.0-beta.102(monaco-editor@0.51.0)(next@15.0.0-canary.104(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(sass@1.77.4))(payload@3.0.0-beta.102(graphql@16.9.0)(monaco-editor@0.51.0)(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(typescript@5.5.4))(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(types-react@19.0.0-rc.0)(typescript@5.5.4) + '@types/uuid': 10.0.0 + bson-objectid: 2.0.4 + dequal: 2.0.3 + escape-html: 1.0.3 + lexical: 0.17.0 + payload: 3.0.0-beta.102(graphql@16.9.0)(monaco-editor@0.51.0)(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(typescript@5.5.4) + react: 19.0.0-rc-06d0b89e-20240801 + react-dom: 19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801) + react-error-boundary: 4.0.13(react@19.0.0-rc-06d0b89e-20240801) + uuid: 10.0.0 + transitivePeerDependencies: + - '@types/react' + - monaco-editor + - next + - supports-color + - typescript + + '@payloadcms/richtext-slate@1.5.2(payload@2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@faceless-ui/modal': 2.0.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) i18next: 22.5.1 is-hotkey: 0.2.0 - payload: 2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)) + payload: 2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)) react: 18.3.1 react-i18next: 11.18.6(i18next@22.5.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) slate: 0.91.4 @@ -18445,12 +19927,12 @@ snapshots: - react-dom - react-native - '@payloadcms/richtext-slate@1.5.2(payload@2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@payloadcms/richtext-slate@1.5.2(payload@2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@faceless-ui/modal': 2.0.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) i18next: 22.5.1 is-hotkey: 0.2.0 - payload: 2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))) + payload: 2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) react: 18.3.1 react-i18next: 11.18.6(i18next@22.5.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) slate: 0.91.4 @@ -18461,6 +19943,45 @@ snapshots: - react-dom - react-native + '@payloadcms/translations@3.0.0-beta.102': + dependencies: + date-fns: 3.3.1 + + '@payloadcms/ui@3.0.0-beta.102(monaco-editor@0.51.0)(next@15.0.0-canary.104(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(sass@1.77.4))(payload@3.0.0-beta.102(graphql@16.9.0)(monaco-editor@0.51.0)(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(typescript@5.5.4))(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(types-react@19.0.0-rc.0)(typescript@5.5.4)': + dependencies: + '@dnd-kit/core': 6.0.8(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801) + '@dnd-kit/sortable': 7.0.2(@dnd-kit/core@6.0.8(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801) + '@faceless-ui/modal': 3.0.0-beta.2(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801) + '@faceless-ui/scroll-info': 2.0.0-beta.0(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801) + '@faceless-ui/window-info': 3.0.0-beta.0(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801) + '@monaco-editor/react': 4.6.0(monaco-editor@0.51.0)(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801) + '@payloadcms/translations': 3.0.0-beta.102 + body-scroll-lock: 4.0.0-beta.0 + bson-objectid: 2.0.4 + date-fns: 3.3.1 + dequal: 2.0.3 + md5: 2.3.0 + next: 15.0.0-canary.104(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(sass@1.77.4) + object-to-formdata: 4.5.1 + payload: 3.0.0-beta.102(graphql@16.9.0)(monaco-editor@0.51.0)(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(typescript@5.5.4) + qs-esm: 7.0.2 + react: 19.0.0-rc-06d0b89e-20240801 + react-animate-height: 2.1.2(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801) + react-datepicker: 6.9.0(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801) + react-dom: 19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801) + react-image-crop: 10.1.8(react@19.0.0-rc-06d0b89e-20240801) + react-select: 5.8.0(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(types-react@19.0.0-rc.0) + scheduler: 0.25.0-rc-f994737d14-20240522 + sonner: 1.5.0(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801) + ts-essentials: 7.0.3(typescript@5.5.4) + use-context-selector: 2.0.0(react@19.0.0-rc-06d0b89e-20240801)(scheduler@0.25.0-rc-f994737d14-20240522) + uuid: 10.0.0 + transitivePeerDependencies: + - '@types/react' + - monaco-editor + - supports-color + - typescript + '@pkgjs/parseargs@0.11.0': optional: true @@ -18470,7 +19991,7 @@ snapshots: dependencies: playwright: 1.46.1 - '@pmmmwh/react-refresh-webpack-plugin@0.5.15(react-refresh@0.14.2)(type-fest@4.23.0)(webpack-hot-middleware@2.26.1)(webpack@5.93.0(esbuild@0.21.5))': + '@pmmmwh/react-refresh-webpack-plugin@0.5.15(react-refresh@0.14.2)(type-fest@4.23.0)(webpack-hot-middleware@2.26.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5))': dependencies: ansi-html: 0.0.9 core-js-pure: 3.37.1 @@ -18480,12 +20001,12 @@ snapshots: react-refresh: 0.14.2 schema-utils: 4.2.0 source-map: 0.7.4 - webpack: 5.93.0(esbuild@0.21.5) + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5) optionalDependencies: type-fest: 4.23.0 webpack-hot-middleware: 2.26.1 - '@pmmmwh/react-refresh-webpack-plugin@0.5.15(react-refresh@0.14.2)(type-fest@4.23.0)(webpack-hot-middleware@2.26.1)(webpack@5.93.0)': + '@pmmmwh/react-refresh-webpack-plugin@0.5.15(react-refresh@0.14.2)(type-fest@4.23.0)(webpack-hot-middleware@2.26.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))': dependencies: ansi-html: 0.0.9 core-js-pure: 3.37.1 @@ -18495,7 +20016,7 @@ snapshots: react-refresh: 0.14.2 schema-utils: 4.2.0 source-map: 0.7.4 - webpack: 5.93.0 + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))) optionalDependencies: type-fest: 4.23.0 webpack-hot-middleware: 2.26.1 @@ -18512,6 +20033,13 @@ snapshots: transitivePeerDependencies: - supports-color + '@react-email/render@0.0.7': + dependencies: + html-to-text: 9.0.3 + pretty: 2.0.0 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + '@react-leaflet/core@2.1.0(leaflet@1.9.4)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: leaflet: 1.9.4 @@ -18598,6 +20126,11 @@ snapshots: '@rushstack/eslint-patch@1.10.4': {} + '@selderee/plugin-htmlparser2@0.10.0': + dependencies: + domhandler: 5.0.3 + selderee: 0.10.0 + '@sendgrid/client@6.5.5': dependencies: '@sendgrid/helpers': 6.5.5 @@ -18747,36 +20280,7 @@ snapshots: '@sentry/utils': 7.118.0 localforage: 1.10.0 - '@sentry/nextjs@8.28.0(@opentelemetry/api@1.9.0)(@opentelemetry/core@1.25.1(@opentelemetry/api@1.9.0))(@opentelemetry/instrumentation@0.52.1(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@1.25.1(@opentelemetry/api@1.9.0))(encoding@0.1.13)(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4))(react@18.3.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0))': - dependencies: - '@opentelemetry/instrumentation-http': 0.52.1(@opentelemetry/api@1.9.0) - '@opentelemetry/semantic-conventions': 1.25.1 - '@rollup/plugin-commonjs': 26.0.1(rollup@3.29.4) - '@sentry/core': 8.28.0 - '@sentry/node': 8.28.0 - '@sentry/opentelemetry': 8.28.0(@opentelemetry/api@1.9.0)(@opentelemetry/core@1.25.1(@opentelemetry/api@1.9.0))(@opentelemetry/instrumentation@0.52.1(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@1.25.1(@opentelemetry/api@1.9.0))(@opentelemetry/semantic-conventions@1.25.1) - '@sentry/react': 8.28.0(react@18.3.1) - '@sentry/types': 8.28.0 - '@sentry/utils': 8.28.0 - '@sentry/vercel-edge': 8.28.0 - '@sentry/webpack-plugin': 2.22.3(encoding@0.1.13)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)) - chalk: 3.0.0 - next: 14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4) - resolve: 1.22.8 - rollup: 3.29.4 - stacktrace-parser: 0.1.10 - optionalDependencies: - webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0) - transitivePeerDependencies: - - '@opentelemetry/api' - - '@opentelemetry/core' - - '@opentelemetry/instrumentation' - - '@opentelemetry/sdk-trace-base' - - encoding - - react - - supports-color - - '@sentry/nextjs@8.28.0(@opentelemetry/api@1.9.0)(@opentelemetry/core@1.25.1(@opentelemetry/api@1.9.0))(@opentelemetry/instrumentation@0.52.1(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@1.25.1(@opentelemetry/api@1.9.0))(encoding@0.1.13)(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4))(react@18.3.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5)))': + '@sentry/nextjs@8.28.0(@opentelemetry/api@1.9.0)(@opentelemetry/core@1.25.1(@opentelemetry/api@1.9.0))(@opentelemetry/instrumentation@0.52.1(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@1.25.1(@opentelemetry/api@1.9.0))(encoding@0.1.13)(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4))(react@18.3.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0))': dependencies: '@opentelemetry/instrumentation-http': 0.52.1(@opentelemetry/api@1.9.0) '@opentelemetry/semantic-conventions': 1.25.1 @@ -18788,14 +20292,14 @@ snapshots: '@sentry/types': 8.28.0 '@sentry/utils': 8.28.0 '@sentry/vercel-edge': 8.28.0 - '@sentry/webpack-plugin': 2.22.3(encoding@0.1.13)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))) + '@sentry/webpack-plugin': 2.22.3(encoding@0.1.13)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)) chalk: 3.0.0 - next: 14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4) + next: 14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4) resolve: 1.22.8 rollup: 3.29.4 stacktrace-parser: 0.1.10 optionalDependencies: - webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5)))) + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0) transitivePeerDependencies: - '@opentelemetry/api' - '@opentelemetry/core' @@ -18805,7 +20309,7 @@ snapshots: - react - supports-color - '@sentry/nextjs@8.28.0(@opentelemetry/api@1.9.0)(@opentelemetry/core@1.25.1(@opentelemetry/api@1.9.0))(@opentelemetry/instrumentation@0.52.1(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@1.25.1(@opentelemetry/api@1.9.0))(encoding@0.1.13)(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4))(react@18.3.1)(webpack@5.93.0)': + '@sentry/nextjs@8.28.0(@opentelemetry/api@1.9.0)(@opentelemetry/core@1.25.1(@opentelemetry/api@1.9.0))(@opentelemetry/instrumentation@0.52.1(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@1.25.1(@opentelemetry/api@1.9.0))(encoding@0.1.13)(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4))(react@18.3.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))': dependencies: '@opentelemetry/instrumentation-http': 0.52.1(@opentelemetry/api@1.9.0) '@opentelemetry/semantic-conventions': 1.25.1 @@ -18817,14 +20321,14 @@ snapshots: '@sentry/types': 8.28.0 '@sentry/utils': 8.28.0 '@sentry/vercel-edge': 8.28.0 - '@sentry/webpack-plugin': 2.22.3(encoding@0.1.13)(webpack@5.93.0) + '@sentry/webpack-plugin': 2.22.3(encoding@0.1.13)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) chalk: 3.0.0 - next: 14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4) + next: 14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4) resolve: 1.22.8 rollup: 3.29.4 stacktrace-parser: 0.1.10 optionalDependencies: - webpack: 5.93.0 + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))) transitivePeerDependencies: - '@opentelemetry/api' - '@opentelemetry/core' @@ -18916,32 +20420,22 @@ snapshots: '@sentry/types': 8.28.0 '@sentry/utils': 8.28.0 - '@sentry/webpack-plugin@2.22.3(encoding@0.1.13)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0))': - dependencies: - '@sentry/bundler-plugin-core': 2.22.3(encoding@0.1.13) - unplugin: 1.0.1 - uuid: 9.0.1 - webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0) - transitivePeerDependencies: - - encoding - - supports-color - - '@sentry/webpack-plugin@2.22.3(encoding@0.1.13)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5)))': + '@sentry/webpack-plugin@2.22.3(encoding@0.1.13)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0))': dependencies: '@sentry/bundler-plugin-core': 2.22.3(encoding@0.1.13) unplugin: 1.0.1 uuid: 9.0.1 - webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5)))) + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0) transitivePeerDependencies: - encoding - supports-color - '@sentry/webpack-plugin@2.22.3(encoding@0.1.13)(webpack@5.93.0)': + '@sentry/webpack-plugin@2.22.3(encoding@0.1.13)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))': dependencies: '@sentry/bundler-plugin-core': 2.22.3(encoding@0.1.13) unplugin: 1.0.1 uuid: 9.0.1 - webpack: 5.93.0 + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))) transitivePeerDependencies: - encoding - supports-color @@ -19360,11 +20854,11 @@ snapshots: '@storybook/global': 5.0.0 storybook: 8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2)) - '@storybook/addon-interactions@8.2.9(@jest/globals@29.7.0)(@types/jest@29.5.12)(jest@29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0))(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2)))': + '@storybook/addon-interactions@8.2.9(@jest/globals@29.7.0)(@types/jest@29.5.12)(jest@29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@20.14.14)(typescript@5.5.4)))(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2)))': dependencies: '@storybook/global': 5.0.0 '@storybook/instrumenter': 8.2.9(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2))) - '@storybook/test': 8.2.9(@jest/globals@29.7.0)(@types/jest@29.5.12)(jest@29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0))(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2))) + '@storybook/test': 8.2.9(@jest/globals@29.7.0)(@types/jest@29.5.12)(jest@29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@20.14.14)(typescript@5.5.4)))(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2))) polished: 4.3.1 storybook: 8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2)) ts-dedent: 2.2.0 @@ -19426,7 +20920,7 @@ snapshots: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@storybook/builder-webpack5@8.2.9(esbuild@0.21.5)(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2)))(typescript@5.5.4)': + '@storybook/builder-webpack5@8.2.9(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5)(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2)))(typescript@5.5.4)': dependencies: '@storybook/core-webpack': 8.2.9(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2))) '@types/node': 18.19.42 @@ -19435,25 +20929,25 @@ snapshots: case-sensitive-paths-webpack-plugin: 2.4.0 cjs-module-lexer: 1.3.1 constants-browserify: 1.0.0 - css-loader: 6.11.0(webpack@5.93.0(esbuild@0.21.5)) + css-loader: 6.11.0(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5)) es-module-lexer: 1.5.4 express: 4.19.2 - fork-ts-checker-webpack-plugin: 8.0.0(typescript@5.5.4)(webpack@5.93.0(esbuild@0.21.5)) + fork-ts-checker-webpack-plugin: 8.0.0(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5)) fs-extra: 11.2.0 - html-webpack-plugin: 5.6.0(webpack@5.93.0(esbuild@0.21.5)) + html-webpack-plugin: 5.6.0(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5)) magic-string: 0.30.11 path-browserify: 1.0.1 process: 0.11.10 semver: 7.6.3 storybook: 8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2)) - style-loader: 3.3.4(webpack@5.93.0(esbuild@0.21.5)) - terser-webpack-plugin: 5.3.10(esbuild@0.21.5)(webpack@5.93.0(esbuild@0.21.5)) + style-loader: 3.3.4(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5)) + terser-webpack-plugin: 5.3.10(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5)) ts-dedent: 2.2.0 url: 0.11.4 util: 0.12.5 util-deprecate: 1.0.2 - webpack: 5.93.0(esbuild@0.21.5) - webpack-dev-middleware: 6.1.3(webpack@5.93.0(esbuild@0.21.5)) + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5) + webpack-dev-middleware: 6.1.3(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5)) webpack-hot-middleware: 2.26.1 webpack-virtual-modules: 0.6.2 optionalDependencies: @@ -19466,7 +20960,7 @@ snapshots: - uglify-js - webpack-cli - '@storybook/builder-webpack5@8.2.9(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2)))(typescript@5.5.4)': + '@storybook/builder-webpack5@8.2.9(@swc/core@1.7.23(@swc/helpers@0.5.12))(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2)))(typescript@5.5.4)': dependencies: '@storybook/core-webpack': 8.2.9(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2))) '@types/node': 18.19.42 @@ -19475,25 +20969,25 @@ snapshots: case-sensitive-paths-webpack-plugin: 2.4.0 cjs-module-lexer: 1.3.1 constants-browserify: 1.0.0 - css-loader: 6.11.0(webpack@5.93.0) + css-loader: 6.11.0(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) es-module-lexer: 1.5.4 express: 4.19.2 - fork-ts-checker-webpack-plugin: 8.0.0(typescript@5.5.4)(webpack@5.93.0) + fork-ts-checker-webpack-plugin: 8.0.0(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) fs-extra: 11.2.0 - html-webpack-plugin: 5.6.0(webpack@5.93.0) + html-webpack-plugin: 5.6.0(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) magic-string: 0.30.11 path-browserify: 1.0.1 process: 0.11.10 semver: 7.6.3 storybook: 8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2)) - style-loader: 3.3.4(webpack@5.93.0) - terser-webpack-plugin: 5.3.10(webpack@5.93.0) + style-loader: 3.3.4(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) + terser-webpack-plugin: 5.3.10(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) ts-dedent: 2.2.0 url: 0.11.4 util: 0.12.5 util-deprecate: 1.0.2 - webpack: 5.93.0 - webpack-dev-middleware: 6.1.3(webpack@5.93.0) + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))) + webpack-dev-middleware: 6.1.3(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) webpack-hot-middleware: 2.26.1 webpack-virtual-modules: 0.6.2 optionalDependencies: @@ -19590,7 +21084,7 @@ snapshots: dependencies: storybook: 8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2)) - '@storybook/nextjs@8.2.9(@jest/globals@29.7.0)(@types/jest@29.5.12)(babel-plugin-macros@3.1.0)(esbuild@0.21.5)(jest@29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0))(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4)(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2)))(type-fest@4.23.0)(typescript@5.5.4)(webpack-hot-middleware@2.26.1)(webpack@5.93.0(esbuild@0.21.5))': + '@storybook/nextjs@8.2.9(@jest/globals@29.7.0)(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/jest@29.5.12)(babel-plugin-macros@3.1.0)(esbuild@0.21.5)(jest@29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@20.14.14)(typescript@5.5.4)))(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4)(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2)))(type-fest@4.23.0)(typescript@5.5.4)(webpack-hot-middleware@2.26.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5))': dependencies: '@babel/core': 7.25.2 '@babel/plugin-syntax-bigint': 7.8.3(@babel/core@7.25.2) @@ -19605,32 +21099,32 @@ snapshots: '@babel/preset-react': 7.24.7(@babel/core@7.25.2) '@babel/preset-typescript': 7.24.7(@babel/core@7.25.2) '@babel/runtime': 7.25.6 - '@pmmmwh/react-refresh-webpack-plugin': 0.5.15(react-refresh@0.14.2)(type-fest@4.23.0)(webpack-hot-middleware@2.26.1)(webpack@5.93.0(esbuild@0.21.5)) - '@storybook/builder-webpack5': 8.2.9(esbuild@0.21.5)(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2)))(typescript@5.5.4) - '@storybook/preset-react-webpack': 8.2.9(esbuild@0.21.5)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2)))(typescript@5.5.4) + '@pmmmwh/react-refresh-webpack-plugin': 0.5.15(react-refresh@0.14.2)(type-fest@4.23.0)(webpack-hot-middleware@2.26.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5)) + '@storybook/builder-webpack5': 8.2.9(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5)(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2)))(typescript@5.5.4) + '@storybook/preset-react-webpack': 8.2.9(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2)))(typescript@5.5.4) '@storybook/react': 8.2.9(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2)))(typescript@5.5.4) - '@storybook/test': 8.2.9(@jest/globals@29.7.0)(@types/jest@29.5.12)(jest@29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0))(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2))) + '@storybook/test': 8.2.9(@jest/globals@29.7.0)(@types/jest@29.5.12)(jest@29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@20.14.14)(typescript@5.5.4)))(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2))) '@types/node': 18.19.42 '@types/semver': 7.5.8 - babel-loader: 9.1.3(@babel/core@7.25.2)(webpack@5.93.0(esbuild@0.21.5)) - css-loader: 6.11.0(webpack@5.93.0(esbuild@0.21.5)) + babel-loader: 9.1.3(@babel/core@7.25.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5)) + css-loader: 6.11.0(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5)) find-up: 5.0.0 fs-extra: 11.2.0 image-size: 1.1.1 loader-utils: 3.3.1 - next: 14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4) - node-polyfill-webpack-plugin: 2.0.1(webpack@5.93.0(esbuild@0.21.5)) + next: 14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4) + node-polyfill-webpack-plugin: 2.0.1(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5)) pnp-webpack-plugin: 1.7.0(typescript@5.5.4) postcss: 8.4.40 - postcss-loader: 8.1.1(postcss@8.4.40)(typescript@5.5.4)(webpack@5.93.0(esbuild@0.21.5)) + postcss-loader: 8.1.1(postcss@8.4.40)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5)) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) react-refresh: 0.14.2 resolve-url-loader: 5.0.0 - sass-loader: 12.6.0(sass@1.69.4)(webpack@5.93.0(esbuild@0.21.5)) + sass-loader: 12.6.0(sass@1.77.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5)) semver: 7.6.3 storybook: 8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2)) - style-loader: 3.3.4(webpack@5.93.0(esbuild@0.21.5)) + style-loader: 3.3.4(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5)) styled-jsx: 5.1.1(@babel/core@7.25.2)(babel-plugin-macros@3.1.0)(react@18.3.1) ts-dedent: 2.2.0 tsconfig-paths: 4.2.0 @@ -19638,7 +21132,7 @@ snapshots: optionalDependencies: sharp: 0.33.5 typescript: 5.5.4 - webpack: 5.93.0(esbuild@0.21.5) + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5) transitivePeerDependencies: - '@jest/globals' - '@rspack/core' @@ -19663,7 +21157,7 @@ snapshots: - webpack-hot-middleware - webpack-plugin-serve - '@storybook/nextjs@8.2.9(@jest/globals@29.7.0)(@types/jest@29.5.12)(babel-plugin-macros@3.1.0)(jest@29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0))(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4)(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2)))(type-fest@4.23.0)(typescript@5.5.4)(webpack-hot-middleware@2.26.1)(webpack@5.93.0)': + '@storybook/nextjs@8.2.9(@jest/globals@29.7.0)(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/jest@29.5.12)(babel-plugin-macros@3.1.0)(jest@29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@20.14.14)(typescript@5.5.4)))(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4)(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2)))(type-fest@4.23.0)(typescript@5.5.4)(webpack-hot-middleware@2.26.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))': dependencies: '@babel/core': 7.25.2 '@babel/plugin-syntax-bigint': 7.8.3(@babel/core@7.25.2) @@ -19678,32 +21172,32 @@ snapshots: '@babel/preset-react': 7.24.7(@babel/core@7.25.2) '@babel/preset-typescript': 7.24.7(@babel/core@7.25.2) '@babel/runtime': 7.25.6 - '@pmmmwh/react-refresh-webpack-plugin': 0.5.15(react-refresh@0.14.2)(type-fest@4.23.0)(webpack-hot-middleware@2.26.1)(webpack@5.93.0) - '@storybook/builder-webpack5': 8.2.9(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2)))(typescript@5.5.4) - '@storybook/preset-react-webpack': 8.2.9(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2)))(typescript@5.5.4) + '@pmmmwh/react-refresh-webpack-plugin': 0.5.15(react-refresh@0.14.2)(type-fest@4.23.0)(webpack-hot-middleware@2.26.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) + '@storybook/builder-webpack5': 8.2.9(@swc/core@1.7.23(@swc/helpers@0.5.12))(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2)))(typescript@5.5.4) + '@storybook/preset-react-webpack': 8.2.9(@swc/core@1.7.23(@swc/helpers@0.5.12))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2)))(typescript@5.5.4) '@storybook/react': 8.2.9(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2)))(typescript@5.5.4) - '@storybook/test': 8.2.9(@jest/globals@29.7.0)(@types/jest@29.5.12)(jest@29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0))(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2))) + '@storybook/test': 8.2.9(@jest/globals@29.7.0)(@types/jest@29.5.12)(jest@29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@20.14.14)(typescript@5.5.4)))(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2))) '@types/node': 18.19.42 '@types/semver': 7.5.8 - babel-loader: 9.1.3(@babel/core@7.25.2)(webpack@5.93.0) - css-loader: 6.11.0(webpack@5.93.0) + babel-loader: 9.1.3(@babel/core@7.25.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) + css-loader: 6.11.0(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) find-up: 5.0.0 fs-extra: 11.2.0 image-size: 1.1.1 loader-utils: 3.3.1 - next: 14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4) - node-polyfill-webpack-plugin: 2.0.1(webpack@5.93.0) + next: 14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4) + node-polyfill-webpack-plugin: 2.0.1(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) pnp-webpack-plugin: 1.7.0(typescript@5.5.4) postcss: 8.4.40 - postcss-loader: 8.1.1(postcss@8.4.40)(typescript@5.5.4)(webpack@5.93.0) + postcss-loader: 8.1.1(postcss@8.4.40)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) react-refresh: 0.14.2 resolve-url-loader: 5.0.0 - sass-loader: 12.6.0(sass@1.69.4)(webpack@5.93.0) + sass-loader: 12.6.0(sass@1.77.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) semver: 7.6.3 storybook: 8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2)) - style-loader: 3.3.4(webpack@5.93.0) + style-loader: 3.3.4(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) styled-jsx: 5.1.1(@babel/core@7.25.2)(babel-plugin-macros@3.1.0)(react@18.3.1) ts-dedent: 2.2.0 tsconfig-paths: 4.2.0 @@ -19711,7 +21205,7 @@ snapshots: optionalDependencies: sharp: 0.33.5 typescript: 5.5.4 - webpack: 5.93.0 + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))) transitivePeerDependencies: - '@jest/globals' - '@rspack/core' @@ -19736,11 +21230,11 @@ snapshots: - webpack-hot-middleware - webpack-plugin-serve - '@storybook/preset-react-webpack@8.2.9(esbuild@0.21.5)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2)))(typescript@5.5.4)': + '@storybook/preset-react-webpack@8.2.9(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2)))(typescript@5.5.4)': dependencies: '@storybook/core-webpack': 8.2.9(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2))) '@storybook/react': 8.2.9(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2)))(typescript@5.5.4) - '@storybook/react-docgen-typescript-plugin': 1.0.6--canary.9.0c3f3b7.0(typescript@5.5.4)(webpack@5.93.0(esbuild@0.21.5)) + '@storybook/react-docgen-typescript-plugin': 1.0.6--canary.9.0c3f3b7.0(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5)) '@types/node': 18.19.42 '@types/semver': 7.5.8 find-up: 5.0.0 @@ -19753,7 +21247,7 @@ snapshots: semver: 7.6.3 storybook: 8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2)) tsconfig-paths: 4.2.0 - webpack: 5.93.0(esbuild@0.21.5) + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5) optionalDependencies: typescript: 5.5.4 transitivePeerDependencies: @@ -19763,11 +21257,11 @@ snapshots: - uglify-js - webpack-cli - '@storybook/preset-react-webpack@8.2.9(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2)))(typescript@5.5.4)': + '@storybook/preset-react-webpack@8.2.9(@swc/core@1.7.23(@swc/helpers@0.5.12))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2)))(typescript@5.5.4)': dependencies: '@storybook/core-webpack': 8.2.9(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2))) '@storybook/react': 8.2.9(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2)))(typescript@5.5.4) - '@storybook/react-docgen-typescript-plugin': 1.0.6--canary.9.0c3f3b7.0(typescript@5.5.4)(webpack@5.93.0) + '@storybook/react-docgen-typescript-plugin': 1.0.6--canary.9.0c3f3b7.0(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) '@types/node': 18.19.42 '@types/semver': 7.5.8 find-up: 5.0.0 @@ -19780,7 +21274,7 @@ snapshots: semver: 7.6.3 storybook: 8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2)) tsconfig-paths: 4.2.0 - webpack: 5.93.0 + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))) optionalDependencies: typescript: 5.5.4 transitivePeerDependencies: @@ -19794,7 +21288,7 @@ snapshots: dependencies: storybook: 8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2)) - '@storybook/react-docgen-typescript-plugin@1.0.6--canary.9.0c3f3b7.0(typescript@5.5.4)(webpack@5.93.0(esbuild@0.21.5))': + '@storybook/react-docgen-typescript-plugin@1.0.6--canary.9.0c3f3b7.0(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5))': dependencies: debug: 4.3.6 endent: 2.1.0 @@ -19804,11 +21298,11 @@ snapshots: react-docgen-typescript: 2.2.2(typescript@5.5.4) tslib: 2.6.3 typescript: 5.5.4 - webpack: 5.93.0(esbuild@0.21.5) + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5) transitivePeerDependencies: - supports-color - '@storybook/react-docgen-typescript-plugin@1.0.6--canary.9.0c3f3b7.0(typescript@5.5.4)(webpack@5.93.0)': + '@storybook/react-docgen-typescript-plugin@1.0.6--canary.9.0c3f3b7.0(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))': dependencies: debug: 4.3.6 endent: 2.1.0 @@ -19818,7 +21312,7 @@ snapshots: react-docgen-typescript: 2.2.2(typescript@5.5.4) tslib: 2.6.3 typescript: 5.5.4 - webpack: 5.93.0 + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))) transitivePeerDependencies: - supports-color @@ -19857,12 +21351,12 @@ snapshots: optionalDependencies: typescript: 5.5.4 - '@storybook/test@8.2.9(@jest/globals@29.7.0)(@types/jest@29.5.12)(jest@29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0))(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2)))': + '@storybook/test@8.2.9(@jest/globals@29.7.0)(@types/jest@29.5.12)(jest@29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@20.14.14)(typescript@5.5.4)))(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2)))': dependencies: '@storybook/csf': 0.1.11 '@storybook/instrumenter': 8.2.9(storybook@8.2.9(@babel/preset-env@7.25.4(@babel/core@7.25.2))) '@testing-library/dom': 10.1.0 - '@testing-library/jest-dom': 6.4.5(@jest/globals@29.7.0)(@types/jest@29.5.12)(jest@29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)) + '@testing-library/jest-dom': 6.4.5(@jest/globals@29.7.0)(@types/jest@29.5.12)(jest@29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@20.14.14)(typescript@5.5.4))) '@testing-library/user-event': 14.5.2(@testing-library/dom@10.1.0) '@vitest/expect': 1.6.0 '@vitest/spy': 1.6.0 @@ -19936,7 +21430,7 @@ snapshots: '@svgr/hast-util-to-babel-ast@8.0.0': dependencies: - '@babel/types': 7.25.2 + '@babel/types': 7.25.6 entities: 4.5.0 '@svgr/plugin-jsx@8.1.0(@svgr/core@8.1.0(typescript@5.5.4))': @@ -19962,7 +21456,7 @@ snapshots: dependencies: '@babel/core': 7.25.2 '@babel/plugin-transform-react-constant-elements': 7.25.1(@babel/core@7.25.2) - '@babel/preset-env': 7.25.3(@babel/core@7.25.2) + '@babel/preset-env': 7.25.4(@babel/core@7.25.2) '@babel/preset-react': 7.24.7(@babel/core@7.25.2) '@babel/preset-typescript': 7.24.7(@babel/core@7.25.2) '@svgr/core': 8.1.0(typescript@5.5.4) @@ -20032,7 +21526,7 @@ snapshots: '@swc/core-win32-x64-msvc@1.7.23': optional: true - '@swc/core@1.6.1(@swc/helpers@0.5.5)': + '@swc/core@1.6.1(@swc/helpers@0.5.12)': dependencies: '@swc/counter': 0.1.3 '@swc/types': 0.1.12 @@ -20047,9 +21541,9 @@ snapshots: '@swc/core-win32-arm64-msvc': 1.6.1 '@swc/core-win32-ia32-msvc': 1.6.1 '@swc/core-win32-x64-msvc': 1.6.1 - '@swc/helpers': 0.5.5 + '@swc/helpers': 0.5.12 - '@swc/core@1.7.23(@swc/helpers@0.5.5)': + '@swc/core@1.7.23(@swc/helpers@0.5.12)': dependencies: '@swc/counter': 0.1.3 '@swc/types': 0.1.12 @@ -20064,18 +21558,22 @@ snapshots: '@swc/core-win32-arm64-msvc': 1.7.23 '@swc/core-win32-ia32-msvc': 1.7.23 '@swc/core-win32-x64-msvc': 1.7.23 - '@swc/helpers': 0.5.5 + '@swc/helpers': 0.5.12 '@swc/counter@0.1.3': {} + '@swc/helpers@0.5.12': + dependencies: + tslib: 2.6.3 + '@swc/helpers@0.5.5': dependencies: '@swc/counter': 0.1.3 tslib: 2.6.3 - '@swc/register@0.1.10(@swc/core@1.6.1(@swc/helpers@0.5.5))': + '@swc/register@0.1.10(@swc/core@1.6.1(@swc/helpers@0.5.12))': dependencies: - '@swc/core': 1.6.1(@swc/helpers@0.5.5) + '@swc/core': 1.6.1(@swc/helpers@0.5.12) lodash.clonedeep: 4.5.0 pirates: 4.0.6 source-map-support: 0.5.21 @@ -20095,7 +21593,7 @@ snapshots: lz-string: 1.5.0 pretty-format: 27.5.1 - '@testing-library/jest-dom@6.4.5(@jest/globals@29.7.0)(@types/jest@29.5.12)(jest@29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0))': + '@testing-library/jest-dom@6.4.5(@jest/globals@29.7.0)(@types/jest@29.5.12)(jest@29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@20.14.14)(typescript@5.5.4)))': dependencies: '@adobe/css-tools': 4.4.0 '@babel/runtime': 7.25.6 @@ -20108,7 +21606,7 @@ snapshots: optionalDependencies: '@jest/globals': 29.7.0 '@types/jest': 29.5.12 - jest: 29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.5))(@types/node@20.14.14)(typescript@5.5.4)) + jest: 29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@20.14.14)(typescript@5.5.4)) '@testing-library/jest-dom@6.5.0': dependencies: @@ -20183,6 +21681,10 @@ snapshots: '@types/connect': 3.4.38 '@types/node': 20.14.14 + '@types/busboy@1.5.4': + dependencies: + '@types/node': 22.5.4 + '@types/caseless@0.12.5': {} '@types/concat-stream@2.0.3': @@ -20371,6 +21873,10 @@ snapshots: dependencies: undici-types: 5.26.5 + '@types/node@22.5.4': + dependencies: + undici-types: 6.19.8 + '@types/nodemailer-sendgrid@1.0.3': dependencies: '@types/nodemailer': 6.4.15 @@ -20387,7 +21893,7 @@ snapshots: '@types/pg@8.6.1': dependencies: - '@types/node': 20.14.14 + '@types/node': 22.5.4 pg-protocol: 1.6.1 pg-types: 2.2.0 @@ -20452,6 +21958,8 @@ snapshots: '@types/unist@3.0.2': {} + '@types/uuid@10.0.0': {} + '@types/uuid@9.0.8': {} '@types/webidl-conversions@7.0.3': {} @@ -20487,6 +21995,26 @@ snapshots: transitivePeerDependencies: - supports-color + '@typescript-eslint/eslint-plugin@7.2.0(@typescript-eslint/parser@7.2.0(eslint@9.10.0(jiti@1.21.6))(typescript@5.5.4))(eslint@9.10.0(jiti@1.21.6))(typescript@5.5.4)': + dependencies: + '@eslint-community/regexpp': 4.11.0 + '@typescript-eslint/parser': 7.2.0(eslint@9.10.0(jiti@1.21.6))(typescript@5.5.4) + '@typescript-eslint/scope-manager': 7.2.0 + '@typescript-eslint/type-utils': 7.2.0(eslint@9.10.0(jiti@1.21.6))(typescript@5.5.4) + '@typescript-eslint/utils': 7.2.0(eslint@9.10.0(jiti@1.21.6))(typescript@5.5.4) + '@typescript-eslint/visitor-keys': 7.2.0 + debug: 4.3.6 + eslint: 9.10.0(jiti@1.21.6) + graphemer: 1.4.0 + ignore: 5.3.1 + natural-compare: 1.4.0 + semver: 7.6.3 + ts-api-utils: 1.3.0(typescript@5.5.4) + optionalDependencies: + typescript: 5.5.4 + transitivePeerDependencies: + - supports-color + '@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4)': dependencies: '@typescript-eslint/scope-manager': 7.2.0 @@ -20500,6 +22028,19 @@ snapshots: transitivePeerDependencies: - supports-color + '@typescript-eslint/parser@7.2.0(eslint@9.10.0(jiti@1.21.6))(typescript@5.5.4)': + dependencies: + '@typescript-eslint/scope-manager': 7.2.0 + '@typescript-eslint/types': 7.2.0 + '@typescript-eslint/typescript-estree': 7.2.0(typescript@5.5.4) + '@typescript-eslint/visitor-keys': 7.2.0 + debug: 4.3.6 + eslint: 9.10.0(jiti@1.21.6) + optionalDependencies: + typescript: 5.5.4 + transitivePeerDependencies: + - supports-color + '@typescript-eslint/scope-manager@5.62.0': dependencies: '@typescript-eslint/types': 5.62.0 @@ -20527,6 +22068,18 @@ snapshots: transitivePeerDependencies: - supports-color + '@typescript-eslint/type-utils@7.2.0(eslint@9.10.0(jiti@1.21.6))(typescript@5.5.4)': + dependencies: + '@typescript-eslint/typescript-estree': 7.2.0(typescript@5.5.4) + '@typescript-eslint/utils': 7.2.0(eslint@9.10.0(jiti@1.21.6))(typescript@5.5.4) + debug: 4.3.6 + eslint: 9.10.0(jiti@1.21.6) + ts-api-utils: 1.3.0(typescript@5.5.4) + optionalDependencies: + typescript: 5.5.4 + transitivePeerDependencies: + - supports-color + '@typescript-eslint/types@5.62.0': {} '@typescript-eslint/types@7.2.0': {} @@ -20606,6 +22159,20 @@ snapshots: - supports-color - typescript + '@typescript-eslint/utils@7.2.0(eslint@9.10.0(jiti@1.21.6))(typescript@5.5.4)': + dependencies: + '@eslint-community/eslint-utils': 4.4.0(eslint@9.10.0(jiti@1.21.6)) + '@types/json-schema': 7.0.15 + '@types/semver': 7.5.8 + '@typescript-eslint/scope-manager': 7.2.0 + '@typescript-eslint/types': 7.2.0 + '@typescript-eslint/typescript-estree': 7.2.0(typescript@5.5.4) + eslint: 9.10.0(jiti@1.21.6) + semver: 7.6.3 + transitivePeerDependencies: + - supports-color + - typescript + '@typescript-eslint/utils@8.4.0(eslint@8.57.0)(typescript@5.5.4)': dependencies: '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0) @@ -20756,33 +22323,33 @@ snapshots: '@webassemblyjs/ast': 1.12.1 '@xtuc/long': 4.2.2 - '@webpack-cli/configtest@1.2.0(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5)))': + '@webpack-cli/configtest@1.2.0(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))': dependencies: - webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5)))) - webpack-cli: 4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))) + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))) + webpack-cli: 4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) - '@webpack-cli/configtest@1.2.0(webpack-cli@4.10.0(webpack@5.93.0))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0))': + '@webpack-cli/configtest@1.2.0(webpack-cli@4.10.0(webpack@5.93.0))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0))': dependencies: - webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0) - webpack-cli: 4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)) + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0) + webpack-cli: 4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)) - '@webpack-cli/info@1.5.0(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))))': + '@webpack-cli/info@1.5.0(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))))': dependencies: envinfo: 7.13.0 - webpack-cli: 4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))) + webpack-cli: 4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) '@webpack-cli/info@1.5.0(webpack-cli@4.10.0(webpack@5.93.0))': dependencies: envinfo: 7.13.0 - webpack-cli: 4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)) + webpack-cli: 4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)) - '@webpack-cli/serve@1.7.0(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))))': + '@webpack-cli/serve@1.7.0(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))))': dependencies: - webpack-cli: 4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))) + webpack-cli: 4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) '@webpack-cli/serve@1.7.0(webpack-cli@4.10.0(webpack@5.93.0))': dependencies: - webpack-cli: 4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)) + webpack-cli: 4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)) '@wry/caches@1.0.1': dependencies: @@ -20943,6 +22510,13 @@ snapshots: json-schema-traverse: 0.4.1 uri-js: 4.4.1 + ajv@8.14.0: + dependencies: + fast-deep-equal: 3.1.3 + json-schema-traverse: 1.0.0 + require-from-string: 2.0.2 + uri-js: 4.4.1 + ajv@8.17.1: dependencies: fast-deep-equal: 3.1.3 @@ -20950,6 +22524,16 @@ snapshots: json-schema-traverse: 1.0.0 require-from-string: 2.0.2 + amazon-cognito-identity-js@6.3.12(encoding@0.1.13): + dependencies: + '@aws-crypto/sha256-js': 1.2.2 + buffer: 4.9.2 + fast-base64-decode: 1.0.0 + isomorphic-unfetch: 3.1.0(encoding@0.1.13) + js-cookie: 2.2.1 + transitivePeerDependencies: + - encoding + ansi-colors@4.1.3: {} ansi-escapes@4.3.2: @@ -21137,7 +22721,7 @@ snapshots: caniuse-lite: 1.0.30001655 fraction.js: 4.3.7 normalize-range: 0.1.2 - picocolors: 1.0.1 + picocolors: 1.1.0 postcss: 8.4.31 postcss-value-parser: 4.2.0 @@ -21164,6 +22748,14 @@ snapshots: axe-core@4.10.0: {} + axios@1.4.0: + dependencies: + follow-redirects: 1.15.6 + form-data: 4.0.0 + proxy-from-env: 1.1.0 + transitivePeerDependencies: + - debug + axios@1.7.2: dependencies: follow-redirects: 1.15.6 @@ -21191,19 +22783,19 @@ snapshots: transitivePeerDependencies: - supports-color - babel-loader@9.1.3(@babel/core@7.25.2)(webpack@5.93.0(esbuild@0.21.5)): + babel-loader@9.1.3(@babel/core@7.25.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5)): dependencies: '@babel/core': 7.25.2 find-cache-dir: 4.0.0 schema-utils: 4.2.0 - webpack: 5.93.0(esbuild@0.21.5) + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5) - babel-loader@9.1.3(@babel/core@7.25.2)(webpack@5.93.0): + babel-loader@9.1.3(@babel/core@7.25.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))): dependencies: '@babel/core': 7.25.2 find-cache-dir: 4.0.0 schema-utils: 4.2.0 - webpack: 5.93.0 + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))) babel-plugin-istanbul@6.1.1: dependencies: @@ -21464,6 +23056,8 @@ snapshots: buffer-from@1.1.2: {} + buffer-writer@2.0.0: {} + buffer-xor@1.0.3: {} buffer@4.9.2: @@ -21752,6 +23346,8 @@ snapshots: comma-separated-tokens@2.0.3: {} + commander@10.0.1: {} + commander@12.1.0: {} commander@2.20.3: {} @@ -21795,6 +23391,12 @@ snapshots: readable-stream: 3.6.2 typedarray: 0.0.6 + condense-newlines@0.2.1: + dependencies: + extend-shallow: 2.0.1 + is-whitespace: 0.3.0 + kind-of: 3.2.2 + conf@10.2.0: dependencies: ajv: 8.17.1 @@ -21810,6 +23412,11 @@ snapshots: confbox@0.1.7: {} + config-chain@1.1.13: + dependencies: + ini: 1.3.8 + proto-list: 1.2.4 + confusing-browser-globals@1.0.11: {} connect-history-api-fallback@1.6.0: {} @@ -21913,13 +23520,28 @@ snapshots: safe-buffer: 5.2.1 sha.js: 2.4.11 - create-jest@29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.5))(@types/node@20.14.14)(typescript@5.5.4)): + create-jest@29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@20.14.14)(typescript@5.5.4)): + dependencies: + '@jest/types': 29.6.3 + chalk: 4.1.2 + exit: 0.1.2 + graceful-fs: 4.2.11 + jest-config: 29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@20.14.14)(typescript@5.5.4)) + jest-util: 29.7.0 + prompts: 2.4.2 + transitivePeerDependencies: + - '@types/node' + - babel-plugin-macros + - supports-color + - ts-node + + create-jest@29.7.0(@types/node@22.5.4)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@22.5.4)(typescript@5.5.4)): dependencies: '@jest/types': 29.6.3 chalk: 4.1.2 exit: 0.1.2 graceful-fs: 4.2.11 - jest-config: 29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.5))(@types/node@20.14.14)(typescript@5.5.4)) + jest-config: 29.7.0(@types/node@22.5.4)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@22.5.4)(typescript@5.5.4)) jest-util: 29.7.0 prompts: 2.4.2 transitivePeerDependencies: @@ -21930,6 +23552,10 @@ snapshots: create-require@1.1.1: {} + cross-env@7.0.3: + dependencies: + cross-spawn: 7.0.3 + cross-spawn@5.1.0: dependencies: lru-cache: 4.1.5 @@ -21974,7 +23600,7 @@ snapshots: postcss-selector-parser: 6.1.1 postcss-value-parser: 4.2.0 - css-loader@5.2.7(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)): + css-loader@5.2.7(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)): dependencies: icss-utils: 5.1.0(postcss@8.4.40) loader-utils: 2.0.4 @@ -21986,9 +23612,9 @@ snapshots: postcss-value-parser: 4.2.0 schema-utils: 3.3.0 semver: 7.6.3 - webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0) + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0) - css-loader@5.2.7(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))): + css-loader@5.2.7(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))): dependencies: icss-utils: 5.1.0(postcss@8.4.40) loader-utils: 2.0.4 @@ -22000,9 +23626,9 @@ snapshots: postcss-value-parser: 4.2.0 schema-utils: 3.3.0 semver: 7.6.3 - webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5)))) + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))) - css-loader@6.11.0(webpack@5.93.0(esbuild@0.21.5)): + css-loader@6.11.0(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5)): dependencies: icss-utils: 5.1.0(postcss@8.4.40) postcss: 8.4.40 @@ -22013,9 +23639,9 @@ snapshots: postcss-value-parser: 4.2.0 semver: 7.6.3 optionalDependencies: - webpack: 5.93.0(esbuild@0.21.5) + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5) - css-loader@6.11.0(webpack@5.93.0): + css-loader@6.11.0(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))): dependencies: icss-utils: 5.1.0(postcss@8.4.40) postcss: 8.4.40 @@ -22026,9 +23652,9 @@ snapshots: postcss-value-parser: 4.2.0 semver: 7.6.3 optionalDependencies: - webpack: 5.93.0 + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))) - css-loader@7.1.2(webpack@5.93.0): + css-loader@7.1.2(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))): dependencies: icss-utils: 5.1.0(postcss@8.4.40) postcss: 8.4.40 @@ -22039,7 +23665,7 @@ snapshots: postcss-value-parser: 4.2.0 semver: 7.6.3 optionalDependencies: - webpack: 5.93.0 + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))) css-prefers-color-scheme@9.0.1(postcss@8.4.31): dependencies: @@ -22270,6 +23896,8 @@ snapshots: dependencies: '@babel/runtime': 7.25.6 + date-fns@3.3.1: {} + date-fns@3.6.0: {} dateformat@4.6.3: {} @@ -22520,6 +24148,24 @@ snapshots: dotenv@8.6.0: {} + drizzle-kit@0.23.2-df9e596: + dependencies: + '@drizzle-team/brocli': 0.8.2 + '@esbuild-kit/esm-loader': 2.6.5 + esbuild: 0.19.12 + esbuild-register: 3.6.0(esbuild@0.19.12) + transitivePeerDependencies: + - supports-color + + drizzle-orm@0.32.1(@opentelemetry/api@1.9.0)(@types/pg@8.6.1)(pg@8.11.3)(react@19.0.0-rc-06d0b89e-20240801)(sqlite3@5.1.7)(types-react@19.0.0-rc.0): + optionalDependencies: + '@opentelemetry/api': 1.9.0 + '@types/pg': 8.6.1 + '@types/react': types-react@19.0.0-rc.0 + pg: 8.11.3 + react: 19.0.0-rc-06d0b89e-20240801 + sqlite3: 5.1.7 + duplexer2@0.1.4: dependencies: readable-stream: 2.3.8 @@ -22537,6 +24183,13 @@ snapshots: dependencies: safe-buffer: 5.2.1 + editorconfig@1.0.4: + dependencies: + '@one-ini/wasm': 0.1.1 + commander: 10.0.1 + minimatch: 9.0.1 + semver: 7.6.3 + ee-first@1.1.1: {} electron-to-chromium@1.5.4: {} @@ -22744,6 +24397,13 @@ snapshots: es6-iterator: 2.0.3 es6-symbol: 3.1.4 + esbuild-register@3.6.0(esbuild@0.19.12): + dependencies: + debug: 4.3.6 + esbuild: 0.19.12 + transitivePeerDependencies: + - supports-color + esbuild-register@3.6.0(esbuild@0.21.5): dependencies: debug: 4.3.6 @@ -22751,6 +24411,57 @@ snapshots: transitivePeerDependencies: - supports-color + esbuild@0.18.20: + optionalDependencies: + '@esbuild/android-arm': 0.18.20 + '@esbuild/android-arm64': 0.18.20 + '@esbuild/android-x64': 0.18.20 + '@esbuild/darwin-arm64': 0.18.20 + '@esbuild/darwin-x64': 0.18.20 + '@esbuild/freebsd-arm64': 0.18.20 + '@esbuild/freebsd-x64': 0.18.20 + '@esbuild/linux-arm': 0.18.20 + '@esbuild/linux-arm64': 0.18.20 + '@esbuild/linux-ia32': 0.18.20 + '@esbuild/linux-loong64': 0.18.20 + '@esbuild/linux-mips64el': 0.18.20 + '@esbuild/linux-ppc64': 0.18.20 + '@esbuild/linux-riscv64': 0.18.20 + '@esbuild/linux-s390x': 0.18.20 + '@esbuild/linux-x64': 0.18.20 + '@esbuild/netbsd-x64': 0.18.20 + '@esbuild/openbsd-x64': 0.18.20 + '@esbuild/sunos-x64': 0.18.20 + '@esbuild/win32-arm64': 0.18.20 + '@esbuild/win32-ia32': 0.18.20 + '@esbuild/win32-x64': 0.18.20 + + esbuild@0.19.12: + optionalDependencies: + '@esbuild/aix-ppc64': 0.19.12 + '@esbuild/android-arm': 0.19.12 + '@esbuild/android-arm64': 0.19.12 + '@esbuild/android-x64': 0.19.12 + '@esbuild/darwin-arm64': 0.19.12 + '@esbuild/darwin-x64': 0.19.12 + '@esbuild/freebsd-arm64': 0.19.12 + '@esbuild/freebsd-x64': 0.19.12 + '@esbuild/linux-arm': 0.19.12 + '@esbuild/linux-arm64': 0.19.12 + '@esbuild/linux-ia32': 0.19.12 + '@esbuild/linux-loong64': 0.19.12 + '@esbuild/linux-mips64el': 0.19.12 + '@esbuild/linux-ppc64': 0.19.12 + '@esbuild/linux-riscv64': 0.19.12 + '@esbuild/linux-s390x': 0.19.12 + '@esbuild/linux-x64': 0.19.12 + '@esbuild/netbsd-x64': 0.19.12 + '@esbuild/openbsd-x64': 0.19.12 + '@esbuild/sunos-x64': 0.19.12 + '@esbuild/win32-arm64': 0.19.12 + '@esbuild/win32-ia32': 0.19.12 + '@esbuild/win32-x64': 0.19.12 + esbuild@0.21.5: optionalDependencies: '@esbuild/aix-ppc64': 0.21.5 @@ -22777,6 +24488,33 @@ snapshots: '@esbuild/win32-ia32': 0.21.5 '@esbuild/win32-x64': 0.21.5 + esbuild@0.23.1: + optionalDependencies: + '@esbuild/aix-ppc64': 0.23.1 + '@esbuild/android-arm': 0.23.1 + '@esbuild/android-arm64': 0.23.1 + '@esbuild/android-x64': 0.23.1 + '@esbuild/darwin-arm64': 0.23.1 + '@esbuild/darwin-x64': 0.23.1 + '@esbuild/freebsd-arm64': 0.23.1 + '@esbuild/freebsd-x64': 0.23.1 + '@esbuild/linux-arm': 0.23.1 + '@esbuild/linux-arm64': 0.23.1 + '@esbuild/linux-ia32': 0.23.1 + '@esbuild/linux-loong64': 0.23.1 + '@esbuild/linux-mips64el': 0.23.1 + '@esbuild/linux-ppc64': 0.23.1 + '@esbuild/linux-riscv64': 0.23.1 + '@esbuild/linux-s390x': 0.23.1 + '@esbuild/linux-x64': 0.23.1 + '@esbuild/netbsd-x64': 0.23.1 + '@esbuild/openbsd-arm64': 0.23.1 + '@esbuild/openbsd-x64': 0.23.1 + '@esbuild/sunos-x64': 0.23.1 + '@esbuild/win32-arm64': 0.23.1 + '@esbuild/win32-ia32': 0.23.1 + '@esbuild/win32-x64': 0.23.1 + escalade@3.1.2: {} escape-html@1.0.3: {} @@ -22799,7 +24537,7 @@ snapshots: dependencies: confusing-browser-globals: 1.0.11 eslint: 8.57.0 - eslint-plugin-import: 2.29.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-webpack@0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))))(eslint-plugin-import@2.29.1(eslint-import-resolver-webpack@0.13.9)(eslint@8.57.0))(eslint@8.57.0))(eslint-import-resolver-webpack@0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))))(eslint@8.57.0) + eslint-plugin-import: 2.29.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-webpack@0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))))(eslint-plugin-import@2.29.1(eslint-import-resolver-webpack@0.13.9)(eslint@8.57.0))(eslint@8.57.0))(eslint-import-resolver-webpack@0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))))(eslint@8.57.0) object.assign: 4.1.5 object.entries: 1.1.8 semver: 6.3.1 @@ -22808,14 +24546,14 @@ snapshots: dependencies: eslint: 8.57.0 eslint-config-airbnb-base: 15.0.0(eslint-plugin-import@2.29.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0))(eslint@8.57.0) - eslint-plugin-import: 2.29.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-webpack@0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))))(eslint-plugin-import@2.29.1(eslint-import-resolver-webpack@0.13.9)(eslint@8.57.0))(eslint@8.57.0))(eslint-import-resolver-webpack@0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))))(eslint@8.57.0) + eslint-plugin-import: 2.29.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-webpack@0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))))(eslint-plugin-import@2.29.1(eslint-import-resolver-webpack@0.13.9)(eslint@8.57.0))(eslint@8.57.0))(eslint-import-resolver-webpack@0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))))(eslint@8.57.0) eslint-plugin-jsx-a11y: 6.10.0(eslint@8.57.0) eslint-plugin-react: 7.35.2(eslint@8.57.0) eslint-plugin-react-hooks: 4.6.2(eslint@8.57.0) object.assign: 4.1.5 object.entries: 1.1.8 - eslint-config-next@14.2.8(eslint-import-resolver-webpack@0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))))(eslint@8.57.0)(typescript@5.5.4): + eslint-config-next@14.2.8(eslint-import-resolver-webpack@0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))))(eslint@8.57.0)(typescript@5.5.4): dependencies: '@next/eslint-plugin-next': 14.2.8 '@rushstack/eslint-patch': 1.10.4 @@ -22823,8 +24561,8 @@ snapshots: '@typescript-eslint/parser': 7.2.0(eslint@8.57.0)(typescript@5.5.4) eslint: 8.57.0 eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-webpack@0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))))(eslint-plugin-import@2.29.1(eslint-import-resolver-webpack@0.13.9)(eslint@8.57.0))(eslint@8.57.0) - eslint-plugin-import: 2.29.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-webpack@0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))))(eslint-plugin-import@2.29.1(eslint-import-resolver-webpack@0.13.9)(eslint@8.57.0))(eslint@8.57.0))(eslint-import-resolver-webpack@0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))))(eslint@8.57.0) + eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-webpack@0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))))(eslint-plugin-import@2.29.1(eslint-import-resolver-webpack@0.13.9)(eslint@8.57.0))(eslint@8.57.0) + eslint-plugin-import: 2.29.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-webpack@0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))))(eslint-plugin-import@2.29.1(eslint-import-resolver-webpack@0.13.9)(eslint@8.57.0))(eslint@8.57.0))(eslint-import-resolver-webpack@0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))))(eslint@8.57.0) eslint-plugin-jsx-a11y: 6.10.0(eslint@8.57.0) eslint-plugin-react: 7.35.2(eslint@8.57.0) eslint-plugin-react-hooks: 4.6.2(eslint@8.57.0) @@ -22872,6 +24610,25 @@ snapshots: - eslint-import-resolver-webpack - supports-color + eslint-config-next@15.0.0-canary.53(eslint@9.10.0(jiti@1.21.6))(typescript@5.5.4): + dependencies: + '@next/eslint-plugin-next': 15.0.0-canary.53 + '@rushstack/eslint-patch': 1.10.4 + '@typescript-eslint/eslint-plugin': 7.2.0(@typescript-eslint/parser@7.2.0(eslint@9.10.0(jiti@1.21.6))(typescript@5.5.4))(eslint@9.10.0(jiti@1.21.6))(typescript@5.5.4) + '@typescript-eslint/parser': 7.2.0(eslint@9.10.0(jiti@1.21.6))(typescript@5.5.4) + eslint: 9.10.0(jiti@1.21.6) + eslint-import-resolver-node: 0.3.9 + eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@7.2.0(eslint@9.10.0(jiti@1.21.6))(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@9.10.0(jiti@1.21.6)) + eslint-plugin-import: 2.29.1(@typescript-eslint/parser@7.2.0(eslint@9.10.0(jiti@1.21.6))(typescript@5.5.4))(eslint-import-resolver-typescript@3.6.1)(eslint@9.10.0(jiti@1.21.6)) + eslint-plugin-jsx-a11y: 6.10.0(eslint@9.10.0(jiti@1.21.6)) + eslint-plugin-react: 7.35.2(eslint@9.10.0(jiti@1.21.6)) + eslint-plugin-react-hooks: 4.6.2(eslint@9.10.0(jiti@1.21.6)) + optionalDependencies: + typescript: 5.5.4 + transitivePeerDependencies: + - eslint-import-resolver-webpack + - supports-color + eslint-config-prettier@9.1.0(eslint@8.57.0): dependencies: eslint: 8.57.0 @@ -22902,12 +24659,12 @@ snapshots: transitivePeerDependencies: - supports-color - eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-webpack@0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))))(eslint-plugin-import@2.29.1(eslint-import-resolver-webpack@0.13.9)(eslint@8.57.0))(eslint@8.57.0): + eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-webpack@0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))))(eslint-plugin-import@2.29.1(eslint-import-resolver-webpack@0.13.9)(eslint@8.57.0))(eslint@8.57.0): dependencies: debug: 4.3.6 enhanced-resolve: 5.17.1 eslint: 8.57.0 - eslint-module-utils: 2.8.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-webpack@0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))))(eslint-plugin-import@2.29.1(eslint-import-resolver-webpack@0.13.9)(eslint@8.57.0))(eslint@8.57.0))(eslint-import-resolver-webpack@0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))))(eslint@8.57.0) + eslint-module-utils: 2.8.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-webpack@0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))))(eslint-plugin-import@2.29.1(eslint-import-resolver-webpack@0.13.9)(eslint@8.57.0))(eslint@8.57.0))(eslint-import-resolver-webpack@0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))))(eslint@8.57.0) eslint-plugin-import: 2.29.1(eslint-import-resolver-webpack@0.13.9)(eslint@8.57.0) fast-glob: 3.3.2 get-tsconfig: 4.7.6 @@ -22953,7 +24710,24 @@ snapshots: - eslint-import-resolver-webpack - supports-color - eslint-import-resolver-webpack@0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)): + eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@7.2.0(eslint@9.10.0(jiti@1.21.6))(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@9.10.0(jiti@1.21.6)): + dependencies: + debug: 4.3.6 + enhanced-resolve: 5.17.1 + eslint: 9.10.0(jiti@1.21.6) + eslint-module-utils: 2.8.1(@typescript-eslint/parser@7.2.0(eslint@9.10.0(jiti@1.21.6))(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@7.2.0(eslint@9.10.0(jiti@1.21.6))(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@9.10.0(jiti@1.21.6)))(eslint@9.10.0(jiti@1.21.6)) + eslint-plugin-import: 2.29.1(@typescript-eslint/parser@7.2.0(eslint@9.10.0(jiti@1.21.6))(typescript@5.5.4))(eslint-import-resolver-typescript@3.6.1)(eslint@9.10.0(jiti@1.21.6)) + fast-glob: 3.3.2 + get-tsconfig: 4.7.6 + is-core-module: 2.15.0 + is-glob: 4.0.3 + transitivePeerDependencies: + - '@typescript-eslint/parser' + - eslint-import-resolver-node + - eslint-import-resolver-webpack + - supports-color + + eslint-import-resolver-webpack@0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5)): dependencies: debug: 3.2.7 enhanced-resolve: 0.9.1 @@ -22966,11 +24740,11 @@ snapshots: lodash: 4.17.21 resolve: 2.0.0-next.5 semver: 5.7.2 - webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0) + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5) transitivePeerDependencies: - supports-color - eslint-import-resolver-webpack@0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))): + eslint-import-resolver-webpack@0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)): dependencies: debug: 3.2.7 enhanced-resolve: 0.9.1 @@ -22983,11 +24757,11 @@ snapshots: lodash: 4.17.21 resolve: 2.0.0-next.5 semver: 5.7.2 - webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5)))) + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0) transitivePeerDependencies: - supports-color - eslint-import-resolver-webpack@0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(esbuild@0.21.5)): + eslint-import-resolver-webpack@0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))): dependencies: debug: 3.2.7 enhanced-resolve: 0.9.1 @@ -23000,7 +24774,7 @@ snapshots: lodash: 4.17.21 resolve: 2.0.0-next.5 semver: 5.7.2 - webpack: 5.93.0(esbuild@0.21.5) + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))) transitivePeerDependencies: - supports-color @@ -23042,15 +24816,15 @@ snapshots: - bluebird - supports-color - eslint-module-utils@2.8.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-webpack@0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))))(eslint-plugin-import@2.29.1(eslint-import-resolver-webpack@0.13.9)(eslint@8.57.0))(eslint@8.57.0))(eslint-import-resolver-webpack@0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))))(eslint@8.57.0): + eslint-module-utils@2.8.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-webpack@0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))))(eslint-plugin-import@2.29.1(eslint-import-resolver-webpack@0.13.9)(eslint@8.57.0))(eslint@8.57.0))(eslint-import-resolver-webpack@0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))))(eslint@8.57.0): dependencies: debug: 3.2.7 optionalDependencies: '@typescript-eslint/parser': 7.2.0(eslint@8.57.0)(typescript@5.5.4) eslint: 8.57.0 eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-webpack@0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))))(eslint-plugin-import@2.29.1(eslint-import-resolver-webpack@0.13.9)(eslint@8.57.0))(eslint@8.57.0) - eslint-import-resolver-webpack: 0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))) + eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-webpack@0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))))(eslint-plugin-import@2.29.1(eslint-import-resolver-webpack@0.13.9)(eslint@8.57.0))(eslint@8.57.0) + eslint-import-resolver-webpack: 0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) transitivePeerDependencies: - supports-color @@ -23077,17 +24851,28 @@ snapshots: transitivePeerDependencies: - supports-color - eslint-module-utils@2.8.1(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-webpack@0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)))(eslint@8.57.0): + eslint-module-utils@2.8.1(@typescript-eslint/parser@7.2.0(eslint@9.10.0(jiti@1.21.6))(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@7.2.0(eslint@9.10.0(jiti@1.21.6))(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@9.10.0(jiti@1.21.6)))(eslint@9.10.0(jiti@1.21.6)): + dependencies: + debug: 3.2.7 + optionalDependencies: + '@typescript-eslint/parser': 7.2.0(eslint@9.10.0(jiti@1.21.6))(typescript@5.5.4) + eslint: 9.10.0(jiti@1.21.6) + eslint-import-resolver-node: 0.3.9 + eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@7.2.0(eslint@9.10.0(jiti@1.21.6))(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@9.10.0(jiti@1.21.6)) + transitivePeerDependencies: + - supports-color + + eslint-module-utils@2.8.1(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-webpack@0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)))(eslint@8.57.0): dependencies: debug: 3.2.7 optionalDependencies: eslint: 8.57.0 eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-webpack: 0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)) + eslint-import-resolver-webpack: 0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)) transitivePeerDependencies: - supports-color - eslint-plugin-import@2.29.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-webpack@0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))))(eslint-plugin-import@2.29.1(eslint-import-resolver-webpack@0.13.9)(eslint@8.57.0))(eslint@8.57.0))(eslint-import-resolver-webpack@0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))))(eslint@8.57.0): + eslint-plugin-import@2.29.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-webpack@0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))))(eslint-plugin-import@2.29.1(eslint-import-resolver-webpack@0.13.9)(eslint@8.57.0))(eslint@8.57.0))(eslint-import-resolver-webpack@0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))))(eslint@8.57.0): dependencies: array-includes: 3.1.8 array.prototype.findlastindex: 1.2.5 @@ -23097,7 +24882,7 @@ snapshots: doctrine: 2.1.0 eslint: 8.57.0 eslint-import-resolver-node: 0.3.9 - eslint-module-utils: 2.8.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-webpack@0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))))(eslint-plugin-import@2.29.1(eslint-import-resolver-webpack@0.13.9)(eslint@8.57.0))(eslint@8.57.0))(eslint-import-resolver-webpack@0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))))(eslint@8.57.0) + eslint-module-utils: 2.8.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-webpack@0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))))(eslint-plugin-import@2.29.1(eslint-import-resolver-webpack@0.13.9)(eslint@8.57.0))(eslint@8.57.0))(eslint-import-resolver-webpack@0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))))(eslint@8.57.0) hasown: 2.0.2 is-core-module: 2.15.0 is-glob: 4.0.3 @@ -23168,6 +24953,33 @@ snapshots: - eslint-import-resolver-webpack - supports-color + eslint-plugin-import@2.29.1(@typescript-eslint/parser@7.2.0(eslint@9.10.0(jiti@1.21.6))(typescript@5.5.4))(eslint-import-resolver-typescript@3.6.1)(eslint@9.10.0(jiti@1.21.6)): + dependencies: + array-includes: 3.1.8 + array.prototype.findlastindex: 1.2.5 + array.prototype.flat: 1.3.2 + array.prototype.flatmap: 1.3.2 + debug: 3.2.7 + doctrine: 2.1.0 + eslint: 9.10.0(jiti@1.21.6) + eslint-import-resolver-node: 0.3.9 + eslint-module-utils: 2.8.1(@typescript-eslint/parser@7.2.0(eslint@9.10.0(jiti@1.21.6))(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@7.2.0(eslint@9.10.0(jiti@1.21.6))(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@9.10.0(jiti@1.21.6)))(eslint@9.10.0(jiti@1.21.6)) + hasown: 2.0.2 + is-core-module: 2.15.0 + is-glob: 4.0.3 + minimatch: 3.1.2 + object.fromentries: 2.0.8 + object.groupby: 1.0.3 + object.values: 1.2.0 + semver: 6.3.1 + tsconfig-paths: 3.15.0 + optionalDependencies: + '@typescript-eslint/parser': 7.2.0(eslint@9.10.0(jiti@1.21.6))(typescript@5.5.4) + transitivePeerDependencies: + - eslint-import-resolver-typescript + - eslint-import-resolver-webpack + - supports-color + eslint-plugin-import@2.29.1(eslint-import-resolver-webpack@0.13.9)(eslint@8.57.0): dependencies: array-includes: 3.1.8 @@ -23178,7 +24990,7 @@ snapshots: doctrine: 2.1.0 eslint: 8.57.0 eslint-import-resolver-node: 0.3.9 - eslint-module-utils: 2.8.1(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-webpack@0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)))(eslint@8.57.0) + eslint-module-utils: 2.8.1(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-webpack@0.13.9(eslint-plugin-import@2.29.1)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)))(eslint@8.57.0) hasown: 2.0.2 is-core-module: 2.15.0 is-glob: 4.0.3 @@ -23201,13 +25013,13 @@ snapshots: optionalDependencies: '@testing-library/dom': 10.1.0 - eslint-plugin-jest@28.8.3(@typescript-eslint/eslint-plugin@7.2.0(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(babel-plugin-macros@3.1.0))(typescript@5.5.4): + eslint-plugin-jest@28.8.3(@typescript-eslint/eslint-plugin@7.2.0(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.5.4)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@22.5.4)(typescript@5.5.4)))(typescript@5.5.4): dependencies: '@typescript-eslint/utils': 8.4.0(eslint@8.57.0)(typescript@5.5.4) eslint: 8.57.0 optionalDependencies: '@typescript-eslint/eslint-plugin': 7.2.0(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(typescript@5.5.4) - jest: 29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.5))(@types/node@20.14.14)(typescript@5.5.4)) + jest: 29.7.0(@types/node@22.5.4)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@22.5.4)(typescript@5.5.4)) transitivePeerDependencies: - supports-color - typescript @@ -23237,6 +25049,26 @@ snapshots: safe-regex-test: 1.0.3 string.prototype.includes: 2.0.0 + eslint-plugin-jsx-a11y@6.10.0(eslint@9.10.0(jiti@1.21.6)): + dependencies: + aria-query: 5.1.3 + array-includes: 3.1.8 + array.prototype.flatmap: 1.3.2 + ast-types-flow: 0.0.8 + axe-core: 4.10.0 + axobject-query: 4.1.0 + damerau-levenshtein: 1.0.8 + emoji-regex: 9.2.2 + es-iterator-helpers: 1.0.19 + eslint: 9.10.0(jiti@1.21.6) + hasown: 2.0.2 + jsx-ast-utils: 3.3.5 + language-tags: 1.0.9 + minimatch: 3.1.2 + object.fromentries: 2.0.8 + safe-regex-test: 1.0.3 + string.prototype.includes: 2.0.0 + eslint-plugin-markdown@3.0.1(eslint@8.57.0): dependencies: eslint: 8.57.0 @@ -23261,12 +25093,12 @@ snapshots: eslint-plugin-module-resolver@1.5.0: {} - eslint-plugin-playwright@1.6.2(eslint-plugin-jest@28.8.3(@typescript-eslint/eslint-plugin@7.2.0(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(babel-plugin-macros@3.1.0))(typescript@5.5.4))(eslint@8.57.0): + eslint-plugin-playwright@1.6.2(eslint-plugin-jest@28.8.3(@typescript-eslint/eslint-plugin@7.2.0(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.5.4)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@22.5.4)(typescript@5.5.4)))(typescript@5.5.4))(eslint@8.57.0): dependencies: eslint: 8.57.0 globals: 13.24.0 optionalDependencies: - eslint-plugin-jest: 28.8.3(@typescript-eslint/eslint-plugin@7.2.0(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(babel-plugin-macros@3.1.0))(typescript@5.5.4) + eslint-plugin-jest: 28.8.3(@typescript-eslint/eslint-plugin@7.2.0(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.5.4)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@22.5.4)(typescript@5.5.4)))(typescript@5.5.4) eslint-plugin-prettier@5.2.1(@types/eslint@9.6.0)(eslint-config-prettier@9.1.0(eslint@8.57.0))(eslint@8.57.0)(prettier@3.3.3): dependencies: @@ -23282,7 +25114,33 @@ snapshots: dependencies: eslint: 8.57.0 - eslint-plugin-react@7.35.2(eslint@8.57.0): + eslint-plugin-react-hooks@4.6.2(eslint@9.10.0(jiti@1.21.6)): + dependencies: + eslint: 9.10.0(jiti@1.21.6) + + eslint-plugin-react@7.35.2(eslint@8.57.0): + dependencies: + array-includes: 3.1.8 + array.prototype.findlast: 1.2.5 + array.prototype.flatmap: 1.3.2 + array.prototype.tosorted: 1.1.4 + doctrine: 2.1.0 + es-iterator-helpers: 1.0.19 + eslint: 8.57.0 + estraverse: 5.3.0 + hasown: 2.0.2 + jsx-ast-utils: 3.3.5 + minimatch: 3.1.2 + object.entries: 1.1.8 + object.fromentries: 2.0.8 + object.values: 1.2.0 + prop-types: 15.8.1 + resolve: 2.0.0-next.5 + semver: 6.3.1 + string.prototype.matchall: 4.0.11 + string.prototype.repeat: 1.0.0 + + eslint-plugin-react@7.35.2(eslint@9.10.0(jiti@1.21.6)): dependencies: array-includes: 3.1.8 array.prototype.findlast: 1.2.5 @@ -23290,7 +25148,7 @@ snapshots: array.prototype.tosorted: 1.1.4 doctrine: 2.1.0 es-iterator-helpers: 1.0.19 - eslint: 8.57.0 + eslint: 9.10.0(jiti@1.21.6) estraverse: 5.3.0 hasown: 2.0.2 jsx-ast-utils: 3.3.5 @@ -23327,10 +25185,17 @@ snapshots: esrecurse: 4.3.0 estraverse: 5.3.0 + eslint-scope@8.0.2: + dependencies: + esrecurse: 4.3.0 + estraverse: 5.3.0 + eslint-visitor-keys@2.1.0: {} eslint-visitor-keys@3.4.3: {} + eslint-visitor-keys@4.0.0: {} + eslint@8.57.0: dependencies: '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0) @@ -23374,6 +25239,47 @@ snapshots: transitivePeerDependencies: - supports-color + eslint@9.10.0(jiti@1.21.6): + dependencies: + '@eslint-community/eslint-utils': 4.4.0(eslint@9.10.0(jiti@1.21.6)) + '@eslint-community/regexpp': 4.11.0 + '@eslint/config-array': 0.18.0 + '@eslint/eslintrc': 3.1.0 + '@eslint/js': 9.10.0 + '@eslint/plugin-kit': 0.1.0 + '@humanwhocodes/module-importer': 1.0.1 + '@humanwhocodes/retry': 0.3.0 + '@nodelib/fs.walk': 1.2.8 + ajv: 6.12.6 + chalk: 4.1.2 + cross-spawn: 7.0.3 + debug: 4.3.6 + escape-string-regexp: 4.0.0 + eslint-scope: 8.0.2 + eslint-visitor-keys: 4.0.0 + espree: 10.1.0 + esquery: 1.6.0 + esutils: 2.0.3 + fast-deep-equal: 3.1.3 + file-entry-cache: 8.0.0 + find-up: 5.0.0 + glob-parent: 6.0.2 + ignore: 5.3.1 + imurmurhash: 0.1.4 + is-glob: 4.0.3 + is-path-inside: 3.0.3 + json-stable-stringify-without-jsonify: 1.0.1 + lodash.merge: 4.6.2 + minimatch: 3.1.2 + natural-compare: 1.4.0 + optionator: 0.9.4 + strip-ansi: 6.0.1 + text-table: 0.2.0 + optionalDependencies: + jiti: 1.21.6 + transitivePeerDependencies: + - supports-color + esniff@2.0.1: dependencies: d: 1.0.2 @@ -23381,6 +25287,12 @@ snapshots: event-emitter: 0.3.5 type: 2.7.3 + espree@10.1.0: + dependencies: + acorn: 8.12.1 + acorn-jsx: 5.3.2(acorn@8.12.1) + eslint-visitor-keys: 4.0.0 + espree@9.6.1: dependencies: acorn: 8.12.1 @@ -23591,6 +25503,8 @@ snapshots: extsprintf@1.3.0: {} + fast-base64-decode@1.0.0: {} + fast-copy@3.0.2: {} fast-deep-equal@3.1.3: {} @@ -23599,13 +25513,21 @@ snapshots: fast-equals@5.0.1: {} + fast-glob@3.3.1: + dependencies: + '@nodelib/fs.stat': 2.0.5 + '@nodelib/fs.walk': 1.2.8 + glob-parent: 5.1.2 + merge2: 1.4.1 + micromatch: 4.0.8 + fast-glob@3.3.2: dependencies: '@nodelib/fs.stat': 2.0.5 '@nodelib/fs.walk': 1.2.8 glob-parent: 5.1.2 merge2: 1.4.1 - micromatch: 4.0.7 + micromatch: 4.0.8 fast-json-parse@1.0.3: {} @@ -23652,29 +25574,27 @@ snapshots: dependencies: flat-cache: 3.2.0 - file-loader@6.2.0(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)): + file-entry-cache@8.0.0: dependencies: - loader-utils: 2.0.4 - schema-utils: 3.3.0 - webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0) + flat-cache: 4.0.1 - file-loader@6.2.0(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))): + file-loader@6.2.0(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5)): dependencies: loader-utils: 2.0.4 schema-utils: 3.3.0 - webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5)))) + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5) - file-loader@6.2.0(webpack@5.93.0(esbuild@0.21.5)): + file-loader@6.2.0(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)): dependencies: loader-utils: 2.0.4 schema-utils: 3.3.0 - webpack: 5.93.0(esbuild@0.21.5) + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0) - file-loader@6.2.0(webpack@5.93.0): + file-loader@6.2.0(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))): dependencies: loader-utils: 2.0.4 schema-utils: 3.3.0 - webpack: 5.93.0 + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))) file-type@16.5.4: dependencies: @@ -23682,6 +25602,12 @@ snapshots: strtok3: 6.3.0 token-types: 4.2.1 + file-type@17.1.6: + dependencies: + readable-web-to-node-stream: 3.0.2 + strtok3: 7.1.1 + token-types: 5.0.1 + file-uri-to-path@1.0.0: {} fill-range@7.1.1: @@ -23750,11 +25676,17 @@ snapshots: locate-path: 7.2.0 path-exists: 5.0.0 + find-up@7.0.0: + dependencies: + locate-path: 7.2.0 + path-exists: 5.0.0 + unicorn-magic: 0.1.0 + findup-sync@4.0.0: dependencies: detect-file: 1.0.0 is-glob: 4.0.3 - micromatch: 4.0.7 + micromatch: 4.0.8 resolve-dir: 1.0.1 flat-cache@3.2.0: @@ -23763,6 +25695,11 @@ snapshots: keyv: 4.5.4 rimraf: 3.0.2 + flat-cache@4.0.1: + dependencies: + flatted: 3.3.1 + keyv: 4.5.4 + flat@5.0.2: {} flatted@3.3.1: {} @@ -23775,6 +25712,10 @@ snapshots: dependencies: tabbable: 5.3.3 + focus-trap@7.5.4: + dependencies: + tabbable: 6.2.0 + follow-redirects@1.15.6: {} for-each@0.3.3: @@ -23788,7 +25729,7 @@ snapshots: forever-agent@0.6.1: {} - fork-ts-checker-webpack-plugin@8.0.0(typescript@5.5.4)(webpack@5.93.0(esbuild@0.21.5)): + fork-ts-checker-webpack-plugin@8.0.0(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5)): dependencies: '@babel/code-frame': 7.24.7 chalk: 4.1.2 @@ -23803,9 +25744,9 @@ snapshots: semver: 7.6.3 tapable: 2.2.1 typescript: 5.5.4 - webpack: 5.93.0(esbuild@0.21.5) + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5) - fork-ts-checker-webpack-plugin@8.0.0(typescript@5.5.4)(webpack@5.93.0): + fork-ts-checker-webpack-plugin@8.0.0(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))): dependencies: '@babel/code-frame': 7.24.7 chalk: 4.1.2 @@ -23820,7 +25761,7 @@ snapshots: semver: 7.6.3 tapable: 2.2.1 typescript: 5.5.4 - webpack: 5.93.0 + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))) form-data@2.3.3: dependencies: @@ -24090,6 +26031,8 @@ snapshots: dependencies: type-fest: 0.20.2 + globals@14.0.0: {} + globalthis@1.0.4: dependencies: define-properties: 1.2.1 @@ -24164,6 +26107,10 @@ snapshots: dependencies: graphql: 16.8.1 + graphql-http@1.22.1(graphql@16.9.0): + dependencies: + graphql: 16.9.0 + graphql-playground-html@1.6.30: dependencies: xss: 1.0.15 @@ -24183,6 +26130,11 @@ snapshots: graphql: 16.8.1 tslib: 2.6.3 + graphql-scalars@1.22.2(graphql@16.9.0): + dependencies: + graphql: 16.9.0 + tslib: 2.6.3 + graphql-tag@2.12.6(graphql@15.9.0): dependencies: graphql: 15.9.0 @@ -24196,6 +26148,8 @@ snapshots: graphql@16.8.1: {} + graphql@16.9.0: {} + gray-matter@4.0.3: dependencies: js-yaml: 3.14.1 @@ -24393,6 +26347,14 @@ snapshots: html-tags@3.3.1: {} + html-to-text@9.0.3: + dependencies: + '@selderee/plugin-htmlparser2': 0.10.0 + deepmerge: 4.3.1 + dom-serializer: 2.0.0 + htmlparser2: 8.0.2 + selderee: 0.10.0 + html-tokenize@2.0.1: dependencies: buffer-from: 0.1.2 @@ -24403,25 +26365,25 @@ snapshots: html-url-attributes@3.0.0: {} - html-webpack-plugin@5.5.3(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)): + html-webpack-plugin@5.5.3(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)): dependencies: '@types/html-minifier-terser': 6.1.0 html-minifier-terser: 6.1.0 lodash: 4.17.21 pretty-error: 4.0.0 tapable: 2.2.1 - webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0) + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0) - html-webpack-plugin@5.5.3(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))): + html-webpack-plugin@5.5.3(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))): dependencies: '@types/html-minifier-terser': 6.1.0 html-minifier-terser: 6.1.0 lodash: 4.17.21 pretty-error: 4.0.0 tapable: 2.2.1 - webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5)))) + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))) - html-webpack-plugin@5.6.0(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)): + html-webpack-plugin@5.6.0(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5)): dependencies: '@types/html-minifier-terser': 6.1.0 html-minifier-terser: 6.1.0 @@ -24429,9 +26391,9 @@ snapshots: pretty-error: 4.0.0 tapable: 2.2.1 optionalDependencies: - webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0) + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5) - html-webpack-plugin@5.6.0(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))): + html-webpack-plugin@5.6.0(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)): dependencies: '@types/html-minifier-terser': 6.1.0 html-minifier-terser: 6.1.0 @@ -24439,9 +26401,9 @@ snapshots: pretty-error: 4.0.0 tapable: 2.2.1 optionalDependencies: - webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5)))) + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0) - html-webpack-plugin@5.6.0(webpack@5.93.0(esbuild@0.21.5)): + html-webpack-plugin@5.6.0(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))): dependencies: '@types/html-minifier-terser': 6.1.0 html-minifier-terser: 6.1.0 @@ -24449,17 +26411,7 @@ snapshots: pretty-error: 4.0.0 tapable: 2.2.1 optionalDependencies: - webpack: 5.93.0(esbuild@0.21.5) - - html-webpack-plugin@5.6.0(webpack@5.93.0): - dependencies: - '@types/html-minifier-terser': 6.1.0 - html-minifier-terser: 6.1.0 - lodash: 4.17.21 - pretty-error: 4.0.0 - tapable: 2.2.1 - optionalDependencies: - webpack: 5.93.0 + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))) htmlparser2@6.1.0: dependencies: @@ -24468,6 +26420,13 @@ snapshots: domutils: 2.8.0 entities: 2.2.0 + htmlparser2@8.0.2: + dependencies: + domelementtype: 2.3.0 + domhandler: 5.0.3 + domutils: 3.1.0 + entities: 4.5.0 + http-cache-semantics@4.1.1: optional: true @@ -24875,6 +26834,8 @@ snapshots: call-bind: 1.0.7 get-intrinsic: 1.2.4 + is-whitespace@0.3.0: {} + is-windows@1.0.2: {} isarray@0.0.1: {} @@ -24896,6 +26857,15 @@ snapshots: transitivePeerDependencies: - encoding + isomorphic-unfetch@3.1.0(encoding@0.1.13): + dependencies: + node-fetch: 2.7.0(encoding@0.1.13) + unfetch: 4.2.0 + transitivePeerDependencies: + - encoding + + isomorphic.js@0.2.5: {} + isstream@0.1.2: {} istanbul-lib-coverage@3.2.2: {} @@ -24991,16 +26961,35 @@ snapshots: - babel-plugin-macros - supports-color - jest-cli@29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.5))(@types/node@20.14.14)(typescript@5.5.4)): + jest-cli@29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@20.14.14)(typescript@5.5.4)): + dependencies: + '@jest/core': 29.7.0(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@20.14.14)(typescript@5.5.4)) + '@jest/test-result': 29.7.0 + '@jest/types': 29.6.3 + chalk: 4.1.2 + create-jest: 29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@20.14.14)(typescript@5.5.4)) + exit: 0.1.2 + import-local: 3.2.0 + jest-config: 29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@20.14.14)(typescript@5.5.4)) + jest-util: 29.7.0 + jest-validate: 29.7.0 + yargs: 17.7.2 + transitivePeerDependencies: + - '@types/node' + - babel-plugin-macros + - supports-color + - ts-node + + jest-cli@29.7.0(@types/node@22.5.4)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@22.5.4)(typescript@5.5.4)): dependencies: - '@jest/core': 29.7.0(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.5))(@types/node@20.14.14)(typescript@5.5.4)) + '@jest/core': 29.7.0(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@22.5.4)(typescript@5.5.4)) '@jest/test-result': 29.7.0 '@jest/types': 29.6.3 chalk: 4.1.2 - create-jest: 29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.5))(@types/node@20.14.14)(typescript@5.5.4)) + create-jest: 29.7.0(@types/node@22.5.4)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@22.5.4)(typescript@5.5.4)) exit: 0.1.2 import-local: 3.2.0 - jest-config: 29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.5))(@types/node@20.14.14)(typescript@5.5.4)) + jest-config: 29.7.0(@types/node@22.5.4)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@22.5.4)(typescript@5.5.4)) jest-util: 29.7.0 jest-validate: 29.7.0 yargs: 17.7.2 @@ -25010,7 +26999,7 @@ snapshots: - supports-color - ts-node - jest-config@29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.5))(@types/node@20.14.14)(typescript@5.5.4)): + jest-config@29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@20.14.14)(typescript@5.5.4)): dependencies: '@babel/core': 7.25.2 '@jest/test-sequencer': 29.7.0 @@ -25029,14 +27018,76 @@ snapshots: jest-runner: 29.7.0 jest-util: 29.7.0 jest-validate: 29.7.0 - micromatch: 4.0.7 + micromatch: 4.0.8 + parse-json: 5.2.0 + pretty-format: 29.7.0 + slash: 3.0.0 + strip-json-comments: 3.1.1 + optionalDependencies: + '@types/node': 20.14.14 + ts-node: 10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@20.14.14)(typescript@5.5.4) + transitivePeerDependencies: + - babel-plugin-macros + - supports-color + + jest-config@29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@22.5.4)(typescript@5.5.4)): + dependencies: + '@babel/core': 7.25.2 + '@jest/test-sequencer': 29.7.0 + '@jest/types': 29.6.3 + babel-jest: 29.7.0(@babel/core@7.25.2) + chalk: 4.1.2 + ci-info: 3.9.0 + deepmerge: 4.3.1 + glob: 7.2.3 + graceful-fs: 4.2.11 + jest-circus: 29.7.0(babel-plugin-macros@3.1.0) + jest-environment-node: 29.7.0 + jest-get-type: 29.6.3 + jest-regex-util: 29.6.3 + jest-resolve: 29.7.0 + jest-runner: 29.7.0 + jest-util: 29.7.0 + jest-validate: 29.7.0 + micromatch: 4.0.8 parse-json: 5.2.0 pretty-format: 29.7.0 slash: 3.0.0 strip-json-comments: 3.1.1 optionalDependencies: '@types/node': 20.14.14 - ts-node: 10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.5))(@types/node@20.14.14)(typescript@5.5.4) + ts-node: 10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@22.5.4)(typescript@5.5.4) + transitivePeerDependencies: + - babel-plugin-macros + - supports-color + + jest-config@29.7.0(@types/node@22.5.4)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@22.5.4)(typescript@5.5.4)): + dependencies: + '@babel/core': 7.25.2 + '@jest/test-sequencer': 29.7.0 + '@jest/types': 29.6.3 + babel-jest: 29.7.0(@babel/core@7.25.2) + chalk: 4.1.2 + ci-info: 3.9.0 + deepmerge: 4.3.1 + glob: 7.2.3 + graceful-fs: 4.2.11 + jest-circus: 29.7.0(babel-plugin-macros@3.1.0) + jest-environment-node: 29.7.0 + jest-get-type: 29.6.3 + jest-regex-util: 29.6.3 + jest-resolve: 29.7.0 + jest-runner: 29.7.0 + jest-util: 29.7.0 + jest-validate: 29.7.0 + micromatch: 4.0.8 + parse-json: 5.2.0 + pretty-format: 29.7.0 + slash: 3.0.0 + strip-json-comments: 3.1.1 + optionalDependencies: + '@types/node': 22.5.4 + ts-node: 10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@22.5.4)(typescript@5.5.4) transitivePeerDependencies: - babel-plugin-macros - supports-color @@ -25097,7 +27148,7 @@ snapshots: jest-regex-util: 29.6.3 jest-util: 29.7.0 jest-worker: 29.7.0 - micromatch: 4.0.7 + micromatch: 4.0.8 walker: 1.0.8 optionalDependencies: fsevents: 2.3.3 @@ -25121,7 +27172,7 @@ snapshots: '@types/stack-utils': 2.0.3 chalk: 4.1.2 graceful-fs: 4.2.11 - micromatch: 4.0.7 + micromatch: 4.0.8 pretty-format: 29.7.0 slash: 3.0.0 stack-utils: 2.0.6 @@ -25277,12 +27328,24 @@ snapshots: merge-stream: 2.0.0 supports-color: 8.1.1 - jest@29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.5))(@types/node@20.14.14)(typescript@5.5.4)): + jest@29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@20.14.14)(typescript@5.5.4)): + dependencies: + '@jest/core': 29.7.0(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@20.14.14)(typescript@5.5.4)) + '@jest/types': 29.6.3 + import-local: 3.2.0 + jest-cli: 29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@20.14.14)(typescript@5.5.4)) + transitivePeerDependencies: + - '@types/node' + - babel-plugin-macros + - supports-color + - ts-node + + jest@29.7.0(@types/node@22.5.4)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@22.5.4)(typescript@5.5.4)): dependencies: - '@jest/core': 29.7.0(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.5))(@types/node@20.14.14)(typescript@5.5.4)) + '@jest/core': 29.7.0(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@22.5.4)(typescript@5.5.4)) '@jest/types': 29.6.3 import-local: 3.2.0 - jest-cli: 29.7.0(@types/node@20.14.14)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.5))(@types/node@20.14.14)(typescript@5.5.4)) + jest-cli: 29.7.0(@types/node@22.5.4)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@22.5.4)(typescript@5.5.4)) transitivePeerDependencies: - '@types/node' - babel-plugin-macros @@ -25305,6 +27368,18 @@ snapshots: joycon@3.1.1: {} + js-beautify@1.15.1: + dependencies: + config-chain: 1.1.13 + editorconfig: 1.0.4 + glob: 10.4.5 + js-cookie: 3.0.5 + nopt: 7.2.1 + + js-cookie@2.2.1: {} + + js-cookie@3.0.5: {} + js-tokens@4.0.0: {} js-yaml@3.14.1: @@ -25450,6 +27525,17 @@ snapshots: node-fetch: 3.3.2 prettier: 3.3.3 + json-schema-to-typescript@15.0.1: + dependencies: + '@apidevtools/json-schema-ref-parser': 11.7.0 + '@types/json-schema': 7.0.15 + glob: 10.4.5 + is-glob: 4.0.3 + js-yaml: 4.1.0 + lodash: 4.17.21 + minimist: 1.2.8 + prettier: 3.3.3 + json-schema-traverse@0.4.1: {} json-schema-traverse@1.0.0: {} @@ -25589,6 +27675,10 @@ snapshots: dependencies: json-buffer: 3.0.1 + kind-of@3.2.2: + dependencies: + is-buffer: 1.1.6 + kind-of@6.0.3: {} kleur@3.0.3: {} @@ -25603,6 +27693,8 @@ snapshots: dependencies: language-subtag-registry: 0.3.23 + leac@0.6.0: {} + leaflet@1.9.4: {} leven@3.1.0: {} @@ -25612,6 +27704,12 @@ snapshots: prelude-ls: 1.2.1 type-check: 0.4.0 + lexical@0.17.0: {} + + lib0@0.2.97: + dependencies: + isomorphic.js: 0.2.5 + lie@3.1.1: dependencies: immediate: 3.0.6 @@ -26218,7 +28316,7 @@ snapshots: braces: 3.0.3 picomatch: 2.3.1 - migrate-mongo@11.0.0(mongodb@4.17.1(@aws-sdk/client-sso-oidc@3.645.0(@aws-sdk/client-sts@3.621.0))): + migrate-mongo@11.0.0(mongodb@4.17.1(@aws-sdk/client-sso-oidc@3.645.0(@aws-sdk/client-sts@3.645.0))): dependencies: cli-table3: 0.6.5 commander: 9.5.0 @@ -26260,18 +28358,18 @@ snapshots: min-indent@1.0.1: {} - mini-css-extract-plugin@1.6.2(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)): + mini-css-extract-plugin@1.6.2(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)): dependencies: loader-utils: 2.0.4 schema-utils: 3.3.0 - webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0) + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0) webpack-sources: 1.4.3 - mini-css-extract-plugin@1.6.2(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))): + mini-css-extract-plugin@1.6.2(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))): dependencies: loader-utils: 2.0.4 schema-utils: 3.3.0 - webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5)))) + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))) webpack-sources: 1.4.3 minimalistic-assert@1.0.1: {} @@ -26286,6 +28384,10 @@ snapshots: dependencies: brace-expansion: 2.0.1 + minimatch@9.0.1: + dependencies: + brace-expansion: 2.0.1 + minimatch@9.0.3: dependencies: brace-expansion: 2.0.1 @@ -26364,6 +28466,18 @@ snapshots: '@types/whatwg-url': 8.2.2 whatwg-url: 11.0.0 + mongodb@4.17.1: + dependencies: + bson: 4.7.2 + mongodb-connection-string-url: 2.6.0 + socks: 2.8.3 + optionalDependencies: + '@aws-sdk/credential-providers': 3.621.0 + '@mongodb-js/saslprep': 1.1.8 + transitivePeerDependencies: + - '@aws-sdk/client-sso-oidc' + - aws-crt + mongodb@4.17.1(@aws-sdk/client-sso-oidc@3.645.0(@aws-sdk/client-sts@3.645.0)): dependencies: bson: 4.7.2 @@ -26380,6 +28494,20 @@ snapshots: mongoose-paginate-v2@1.7.22: {} + mongoose@6.12.3: + dependencies: + bson: 4.7.2 + kareem: 2.5.1 + mongodb: 4.17.1 + mpath: 0.9.0 + mquery: 4.0.3 + ms: 2.1.3 + sift: 16.0.1 + transitivePeerDependencies: + - '@aws-sdk/client-sso-oidc' + - aws-crt + - supports-color + mongoose@6.12.3(@aws-sdk/client-sso-oidc@3.645.0(@aws-sdk/client-sts@3.645.0)): dependencies: bson: 4.7.2 @@ -26455,13 +28583,13 @@ snapshots: neo-async@2.6.2: {} - next-auth@4.24.7(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4))(nodemailer@6.9.8)(react-dom@18.3.1(react@18.3.1))(react@18.3.1): + next-auth@4.24.7(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4))(nodemailer@6.9.10)(react-dom@18.3.1(react@18.3.1))(react@18.3.1): dependencies: '@babel/runtime': 7.25.6 '@panva/hkdf': 1.2.1 cookie: 0.5.0 jose: 4.15.9 - next: 14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4) + next: 14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4) oauth: 0.9.15 openid-client: 5.6.5 preact: 10.23.1 @@ -26470,35 +28598,35 @@ snapshots: react-dom: 18.3.1(react@18.3.1) uuid: 8.3.2 optionalDependencies: - nodemailer: 6.9.8 + nodemailer: 6.9.10 - next-images@1.8.5(webpack@5.93.0(esbuild@0.21.5)): + next-images@1.8.5(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5)): dependencies: - file-loader: 6.2.0(webpack@5.93.0(esbuild@0.21.5)) - url-loader: 4.1.1(file-loader@6.2.0(webpack@5.93.0(esbuild@0.21.5)))(webpack@5.93.0(esbuild@0.21.5)) - webpack: 5.93.0(esbuild@0.21.5) + file-loader: 6.2.0(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5)) + url-loader: 4.1.1(file-loader@6.2.0(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5)))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5)) + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5) - next-images@1.8.5(webpack@5.93.0): + next-images@1.8.5(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))): dependencies: - file-loader: 6.2.0(webpack@5.93.0) - url-loader: 4.1.1(file-loader@6.2.0(webpack@5.93.0))(webpack@5.93.0) - webpack: 5.93.0 + file-loader: 6.2.0(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) + url-loader: 4.1.1(file-loader@6.2.0(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))) - next-seo@6.6.0(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4))(react-dom@18.3.1(react@18.3.1))(react@18.3.1): + next-seo@6.6.0(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4))(react-dom@18.3.1(react@18.3.1))(react@18.3.1): dependencies: - next: 14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4) + next: 14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - next-sitemap@1.9.12(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4)): + next-sitemap@1.9.12(next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4)): dependencies: '@corex/deepmerge': 2.6.148 minimist: 1.2.8 - next: 14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4) + next: 14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4) next-tick@1.1.0: {} - next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.69.4): + next@14.2.8(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4): dependencies: '@next/env': 14.2.8 '@swc/helpers': 0.5.5 @@ -26521,7 +28649,37 @@ snapshots: '@next/swc-win32-x64-msvc': 14.2.8 '@opentelemetry/api': 1.9.0 '@playwright/test': 1.46.1 - sass: 1.69.4 + sass: 1.77.4 + transitivePeerDependencies: + - '@babel/core' + - babel-plugin-macros + + next@15.0.0-canary.104(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.46.1)(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(sass@1.77.4): + dependencies: + '@next/env': 15.0.0-canary.104 + '@swc/counter': 0.1.3 + '@swc/helpers': 0.5.12 + busboy: 1.6.0 + caniuse-lite: 1.0.30001655 + graceful-fs: 4.2.11 + postcss: 8.4.31 + react: 19.0.0-rc-06d0b89e-20240801 + react-dom: 19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801) + styled-jsx: 5.1.6(@babel/core@7.25.2)(react@19.0.0-rc-06d0b89e-20240801) + optionalDependencies: + '@next/swc-darwin-arm64': 15.0.0-canary.104 + '@next/swc-darwin-x64': 15.0.0-canary.104 + '@next/swc-linux-arm64-gnu': 15.0.0-canary.104 + '@next/swc-linux-arm64-musl': 15.0.0-canary.104 + '@next/swc-linux-x64-gnu': 15.0.0-canary.104 + '@next/swc-linux-x64-musl': 15.0.0-canary.104 + '@next/swc-win32-arm64-msvc': 15.0.0-canary.104 + '@next/swc-win32-ia32-msvc': 15.0.0-canary.104 + '@next/swc-win32-x64-msvc': 15.0.0-canary.104 + '@opentelemetry/api': 1.9.0 + '@playwright/test': 1.46.1 + sass: 1.77.4 + sharp: 0.33.5 transitivePeerDependencies: - '@babel/core' - babel-plugin-macros @@ -26588,7 +28746,7 @@ snapshots: node-int64@0.4.0: {} - node-polyfill-webpack-plugin@2.0.1(webpack@5.93.0(esbuild@0.21.5)): + node-polyfill-webpack-plugin@2.0.1(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5)): dependencies: assert: 2.1.0 browserify-zlib: 0.2.0 @@ -26615,9 +28773,9 @@ snapshots: url: 0.11.4 util: 0.12.5 vm-browserify: 1.1.2 - webpack: 5.93.0(esbuild@0.21.5) + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5) - node-polyfill-webpack-plugin@2.0.1(webpack@5.93.0): + node-polyfill-webpack-plugin@2.0.1(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))): dependencies: assert: 2.1.0 browserify-zlib: 0.2.0 @@ -26644,7 +28802,7 @@ snapshots: url: 0.11.4 util: 0.12.5 vm-browserify: 1.1.2 - webpack: 5.93.0 + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))) node-releases@2.0.18: {} @@ -26652,6 +28810,8 @@ snapshots: dependencies: '@sendgrid/mail': 6.5.5 + nodemailer@6.9.10: {} + nodemailer@6.9.8: {} nopt@5.0.0: @@ -26906,6 +29066,8 @@ snapshots: package-manager-detector@0.2.0: {} + packet-reader@1.0.0: {} + pako@1.0.11: {} papaparse@5.4.1: {} @@ -26971,6 +29133,11 @@ snapshots: dependencies: entities: 4.5.0 + parseley@0.11.0: + dependencies: + leac: 0.6.0 + peberminta: 0.8.0 + parseurl@1.3.3: {} pascal-case@3.1.2: @@ -27031,6 +29198,8 @@ snapshots: dependencies: isarray: 0.0.1 + path-to-regexp@6.2.2: {} + path-type@4.0.0: {} path-type@5.0.0: {} @@ -27041,7 +29210,7 @@ snapshots: pause@0.0.1: {} - payload@2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)): + payload@2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)): dependencies: '@date-io/date-fns': 2.16.0(date-fns@2.30.0) '@dnd-kit/core': 6.0.8(react-dom@18.3.1(react@18.3.1))(react@18.3.1) @@ -27050,8 +29219,8 @@ snapshots: '@faceless-ui/scroll-info': 1.3.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@faceless-ui/window-info': 2.1.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@monaco-editor/react': 4.5.1(monaco-editor@0.38.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@swc/core': 1.6.1(@swc/helpers@0.5.5) - '@swc/register': 0.1.10(@swc/core@1.6.1(@swc/helpers@0.5.5)) + '@swc/core': 1.6.1(@swc/helpers@0.5.12) + '@swc/register': 0.1.10(@swc/core@1.6.1(@swc/helpers@0.5.12)) body-parser: 1.20.2 body-scroll-lock: 4.0.0-beta.0 bson-objectid: 2.0.4 @@ -27077,7 +29246,7 @@ snapshots: graphql-query-complexity: 0.12.0(graphql@16.8.1) graphql-scalars: 1.22.2(graphql@16.8.1) graphql-type-json: 0.3.2(graphql@16.8.1) - html-webpack-plugin: 5.5.3(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)) + html-webpack-plugin: 5.5.3(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)) http-status: 1.6.2 i18next: 22.5.1 i18next-browser-languagedetector: 6.1.8 @@ -27126,8 +29295,8 @@ snapshots: scheduler: 0.23.0 scmp: 2.1.0 sharp: 0.33.5 - swc-loader: 0.2.3(@swc/core@1.6.1(@swc/helpers@0.5.5))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)) - terser-webpack-plugin: 5.3.9(@swc/core@1.6.1(@swc/helpers@0.5.5))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)) + swc-loader: 0.2.3(@swc/core@1.6.1(@swc/helpers@0.5.12))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)) + terser-webpack-plugin: 5.3.9(@swc/core@1.6.1(@swc/helpers@0.5.12))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)) ts-essentials: 7.0.3(typescript@5.5.4) use-context-selector: 1.4.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(scheduler@0.23.0) uuid: 9.0.1 @@ -27142,7 +29311,7 @@ snapshots: - uglify-js - webpack - payload@2.28.0(@swc/helpers@0.5.5)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))): + payload@2.28.0(@swc/helpers@0.5.12)(@types/react@18.3.5)(encoding@0.1.13)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))): dependencies: '@date-io/date-fns': 2.16.0(date-fns@2.30.0) '@dnd-kit/core': 6.0.8(react-dom@18.3.1(react@18.3.1))(react@18.3.1) @@ -27151,8 +29320,8 @@ snapshots: '@faceless-ui/scroll-info': 1.3.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@faceless-ui/window-info': 2.1.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@monaco-editor/react': 4.5.1(monaco-editor@0.38.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@swc/core': 1.6.1(@swc/helpers@0.5.5) - '@swc/register': 0.1.10(@swc/core@1.6.1(@swc/helpers@0.5.5)) + '@swc/core': 1.6.1(@swc/helpers@0.5.12) + '@swc/register': 0.1.10(@swc/core@1.6.1(@swc/helpers@0.5.12)) body-parser: 1.20.2 body-scroll-lock: 4.0.0-beta.0 bson-objectid: 2.0.4 @@ -27178,7 +29347,7 @@ snapshots: graphql-query-complexity: 0.12.0(graphql@16.8.1) graphql-scalars: 1.22.2(graphql@16.8.1) graphql-type-json: 0.3.2(graphql@16.8.1) - html-webpack-plugin: 5.5.3(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))) + html-webpack-plugin: 5.5.3(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) http-status: 1.6.2 i18next: 22.5.1 i18next-browser-languagedetector: 6.1.8 @@ -27227,8 +29396,8 @@ snapshots: scheduler: 0.23.0 scmp: 2.1.0 sharp: 0.33.5 - swc-loader: 0.2.3(@swc/core@1.6.1(@swc/helpers@0.5.5))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))) - terser-webpack-plugin: 5.3.9(@swc/core@1.6.1(@swc/helpers@0.5.5))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))) + swc-loader: 0.2.3(@swc/core@1.6.1(@swc/helpers@0.5.12))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) + terser-webpack-plugin: 5.3.9(@swc/core@1.6.1(@swc/helpers@0.5.12))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) ts-essentials: 7.0.3(typescript@5.5.4) use-context-selector: 1.4.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(scheduler@0.23.0) uuid: 9.0.1 @@ -27243,6 +29412,41 @@ snapshots: - uglify-js - webpack + payload@3.0.0-beta.102(graphql@16.9.0)(monaco-editor@0.51.0)(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(typescript@5.5.4): + dependencies: + '@monaco-editor/react': 4.6.0(monaco-editor@0.51.0)(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801) + '@next/env': 15.0.0-rc.0 + '@payloadcms/translations': 3.0.0-beta.102 + '@types/busboy': 1.5.4 + ajv: 8.14.0 + bson-objectid: 2.0.4 + ci-info: 4.0.0 + console-table-printer: 2.11.2 + dataloader: 2.2.2 + deepmerge: 4.3.1 + file-type: 17.1.6 + find-up: 7.0.0 + get-tsconfig: 4.7.6 + graphql: 16.9.0 + http-status: 1.6.2 + image-size: 1.1.1 + json-schema-to-typescript: 15.0.1 + jsonwebtoken: 9.0.1 + minimist: 1.2.8 + pino: 9.3.1 + pino-pretty: 11.2.1 + pluralize: 8.0.0 + sanitize-filename: 1.6.3 + scmp: 2.1.0 + ts-essentials: 7.0.3(typescript@5.5.4) + tsx: 4.17.0 + uuid: 10.0.0 + transitivePeerDependencies: + - monaco-editor + - react + - react-dom + - typescript + pbkdf2@3.1.2: dependencies: create-hash: 1.2.0 @@ -27251,8 +29455,12 @@ snapshots: safe-buffer: 5.2.1 sha.js: 2.4.11 + peberminta@0.8.0: {} + peek-readable@4.1.0: {} + peek-readable@5.2.0: {} + performance-now@2.1.0: {} periscopic@3.1.0: @@ -27261,8 +29469,17 @@ snapshots: estree-walker: 3.0.3 is-reference: 3.0.2 + pg-cloudflare@1.1.1: + optional: true + + pg-connection-string@2.6.4: {} + pg-int8@1.0.1: {} + pg-pool@3.6.2(pg@8.11.3): + dependencies: + pg: 8.11.3 + pg-protocol@1.6.1: {} pg-types@2.2.0: @@ -27273,6 +29490,22 @@ snapshots: postgres-date: 1.0.7 postgres-interval: 1.2.0 + pg@8.11.3: + dependencies: + buffer-writer: 2.0.0 + packet-reader: 1.0.0 + pg-connection-string: 2.6.4 + pg-pool: 3.6.2(pg@8.11.3) + pg-protocol: 1.6.1 + pg-types: 2.2.0 + pgpass: 1.0.5 + optionalDependencies: + pg-cloudflare: 1.1.1 + + pgpass@1.0.5: + dependencies: + split2: 4.2.0 + picocolors@1.0.1: {} picocolors@1.1.0: {} @@ -27310,8 +29543,27 @@ snapshots: sonic-boom: 3.8.1 strip-json-comments: 3.1.1 + pino-pretty@11.2.1: + dependencies: + colorette: 2.0.20 + dateformat: 4.6.3 + fast-copy: 3.0.2 + fast-safe-stringify: 2.1.1 + help-me: 5.0.0 + joycon: 3.1.1 + minimist: 1.2.8 + on-exit-leak-free: 2.1.2 + pino-abstract-transport: 1.2.0 + pump: 3.0.0 + readable-stream: 4.5.2 + secure-json-parse: 2.7.0 + sonic-boom: 4.1.0 + strip-json-comments: 3.1.1 + pino-std-serializers@6.2.2: {} + pino-std-serializers@7.0.0: {} + pino@8.15.0: dependencies: atomic-sleep: 1.0.0 @@ -27326,6 +29578,20 @@ snapshots: sonic-boom: 3.8.1 thread-stream: 2.7.0 + pino@9.3.1: + dependencies: + atomic-sleep: 1.0.0 + fast-redact: 3.5.0 + on-exit-leak-free: 2.1.2 + pino-abstract-transport: 1.2.0 + pino-std-serializers: 7.0.0 + process-warning: 3.0.0 + quick-format-unescaped: 4.0.4 + real-require: 0.2.0 + safe-stable-stringify: 2.4.3 + sonic-boom: 4.1.0 + thread-stream: 3.1.0 + pirates@4.0.6: {} pkcs7@1.0.4: @@ -27494,41 +29760,41 @@ snapshots: '@csstools/utilities': 1.0.0(postcss@8.4.31) postcss: 8.4.31 - postcss-loader@6.2.1(postcss@8.4.31)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)): + postcss-loader@6.2.1(postcss@8.4.31)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)): dependencies: cosmiconfig: 7.1.0 klona: 2.0.6 postcss: 8.4.31 semver: 7.6.3 - webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0) + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0) - postcss-loader@6.2.1(postcss@8.4.31)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))): + postcss-loader@6.2.1(postcss@8.4.31)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))): dependencies: cosmiconfig: 7.1.0 klona: 2.0.6 postcss: 8.4.31 semver: 7.6.3 - webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5)))) + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))) - postcss-loader@8.1.1(postcss@8.4.40)(typescript@5.5.4)(webpack@5.93.0(esbuild@0.21.5)): + postcss-loader@8.1.1(postcss@8.4.40)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5)): dependencies: cosmiconfig: 9.0.0(typescript@5.5.4) jiti: 1.21.6 postcss: 8.4.40 semver: 7.6.3 optionalDependencies: - webpack: 5.93.0(esbuild@0.21.5) + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5) transitivePeerDependencies: - typescript - postcss-loader@8.1.1(postcss@8.4.40)(typescript@5.5.4)(webpack@5.93.0): + postcss-loader@8.1.1(postcss@8.4.40)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))): dependencies: cosmiconfig: 9.0.0(typescript@5.5.4) jiti: 1.21.6 postcss: 8.4.40 semver: 7.6.3 optionalDependencies: - webpack: 5.93.0 + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))) transitivePeerDependencies: - typescript @@ -27673,7 +29939,7 @@ snapshots: postcss@8.4.40: dependencies: nanoid: 3.3.7 - picocolors: 1.0.1 + picocolors: 1.1.0 source-map-js: 1.2.0 postgres-array@2.0.0: {} @@ -27737,6 +30003,12 @@ snapshots: pretty-format@3.8.0: {} + pretty@2.0.0: + dependencies: + condense-newlines: 0.2.1 + extend-shallow: 2.0.1 + js-beautify: 1.15.1 + prismjs@1.27.0: {} prismjs@1.29.0: {} @@ -27755,6 +30027,8 @@ snapshots: process-warning@2.3.2: {} + process-warning@3.0.0: {} + process@0.11.10: {} progress@2.0.3: {} @@ -27783,6 +30057,8 @@ snapshots: property-information@6.5.0: {} + proto-list@1.2.4: {} + proxy-addr@2.0.7: dependencies: forwarded: 0.2.0 @@ -27816,6 +30092,8 @@ snapshots: pure-rand@6.1.0: {} + qs-esm@7.0.2: {} + qs-middleware@1.0.3: dependencies: qs: 6.4.1 @@ -27903,6 +30181,13 @@ snapshots: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) + react-animate-height@2.1.2(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801): + dependencies: + classnames: 2.5.1 + prop-types: 15.8.1 + react: 19.0.0-rc-06d0b89e-20240801 + react-dom: 19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801) + react-colorful@5.6.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1): dependencies: react: 18.3.1 @@ -27925,6 +30210,16 @@ snapshots: react-onclickoutside: 6.13.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) react-popper: 2.3.0(@popperjs/core@2.11.8)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + react-datepicker@6.9.0(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801): + dependencies: + '@floating-ui/react': 0.26.23(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801) + clsx: 2.1.1 + date-fns: 3.6.0 + prop-types: 15.8.1 + react: 19.0.0-rc-06d0b89e-20240801 + react-dom: 19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801) + react-onclickoutside: 6.13.1(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801) + react-diff-viewer-continued@3.2.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1): dependencies: '@emotion/css': 11.13.0 @@ -27937,6 +30232,18 @@ snapshots: transitivePeerDependencies: - supports-color + react-diff-viewer-continued@3.2.6(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801): + dependencies: + '@emotion/css': 11.13.0 + classnames: 2.5.1 + diff: 5.2.0 + memoize-one: 6.0.0 + prop-types: 15.8.1 + react: 19.0.0-rc-06d0b89e-20240801 + react-dom: 19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801) + transitivePeerDependencies: + - supports-color + react-docgen-typescript@2.2.2(typescript@5.5.4): dependencies: typescript: 5.5.4 @@ -27956,12 +30263,23 @@ snapshots: transitivePeerDependencies: - supports-color + react-dom@18.2.0(react@18.2.0): + dependencies: + loose-envify: 1.4.0 + react: 18.2.0 + scheduler: 0.23.2 + react-dom@18.3.1(react@18.3.1): dependencies: loose-envify: 1.4.0 react: 18.3.1 scheduler: 0.23.2 + react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801): + dependencies: + react: 19.0.0-rc-06d0b89e-20240801 + scheduler: 0.25.0-rc-06d0b89e-20240801 + react-element-to-jsx-string@15.0.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1): dependencies: '@base2/pretty-print-object': 1.0.1 @@ -27970,6 +30288,16 @@ snapshots: react-dom: 18.3.1(react@18.3.1) react-is: 18.1.0 + react-error-boundary@3.1.4(react@19.0.0-rc-06d0b89e-20240801): + dependencies: + '@babel/runtime': 7.25.6 + react: 19.0.0-rc-06d0b89e-20240801 + + react-error-boundary@4.0.13(react@19.0.0-rc-06d0b89e-20240801): + dependencies: + '@babel/runtime': 7.25.6 + react: 19.0.0-rc-06d0b89e-20240801 + react-event-listener@0.6.6(react@18.3.1): dependencies: '@babel/runtime': 7.25.6 @@ -28002,6 +30330,10 @@ snapshots: dependencies: react: 18.3.1 + react-image-crop@10.1.8(react@19.0.0-rc-06d0b89e-20240801): + dependencies: + react: 19.0.0-rc-06d0b89e-20240801 + react-is@16.13.1: {} react-is@17.0.2: {} @@ -28043,6 +30375,11 @@ snapshots: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) + react-onclickoutside@6.13.1(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801): + dependencies: + react: 19.0.0-rc-06d0b89e-20240801 + react-dom: 19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801) + react-popper@2.3.0(@popperjs/core@2.11.8)(react-dom@18.3.1(react@18.3.1))(react@18.3.1): dependencies: '@popperjs/core': 2.11.8 @@ -28107,6 +30444,23 @@ snapshots: - '@types/react' - supports-color + react-select@5.8.0(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801)(types-react@19.0.0-rc.0): + dependencies: + '@babel/runtime': 7.25.6 + '@emotion/cache': 11.13.1 + '@emotion/react': 11.13.3(react@19.0.0-rc-06d0b89e-20240801)(types-react@19.0.0-rc.0) + '@floating-ui/dom': 1.6.8 + '@types/react-transition-group': 4.4.11 + memoize-one: 6.0.0 + prop-types: 15.8.1 + react: 19.0.0-rc-06d0b89e-20240801 + react-dom: 19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801) + react-transition-group: 4.4.5(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801) + use-isomorphic-layout-effect: 1.1.2(react@19.0.0-rc-06d0b89e-20240801)(types-react@19.0.0-rc.0) + transitivePeerDependencies: + - '@types/react' + - supports-color + react-shallow-renderer@16.15.0(react@18.3.1): dependencies: object-assign: 4.1.1 @@ -28181,6 +30535,15 @@ snapshots: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) + react-transition-group@4.4.5(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801): + dependencies: + '@babel/runtime': 7.25.6 + dom-helpers: 5.2.1 + loose-envify: 1.4.0 + prop-types: 15.8.1 + react: 19.0.0-rc-06d0b89e-20240801 + react-dom: 19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801) + react-vega@7.6.0(react@18.3.1)(vega-lite@5.21.0(vega@5.30.0(encoding@0.1.13)))(vega@5.30.0(encoding@0.1.13)): dependencies: '@types/react': 18.3.5 @@ -28191,10 +30554,16 @@ snapshots: vega-embed: 6.26.0(vega-lite@5.21.0(vega@5.30.0(encoding@0.1.13)))(vega@5.30.0(encoding@0.1.13)) vega-lite: 5.21.0(vega@5.30.0(encoding@0.1.13)) + react@18.2.0: + dependencies: + loose-envify: 1.4.0 + react@18.3.1: dependencies: loose-envify: 1.4.0 + react@19.0.0-rc-06d0b89e-20240801: {} + read-package-json-fast@3.0.2: dependencies: json-parse-even-better-errors: 3.0.2 @@ -28422,6 +30791,14 @@ snapshots: reselect@4.1.8: {} + resend@0.17.2: + dependencies: + '@react-email/render': 0.0.7 + axios: 1.4.0 + type-fest: 3.13.0 + transitivePeerDependencies: + - debug + resize-observer-polyfill@1.5.1: {} resolve-cwd@3.0.0: @@ -28551,39 +30928,37 @@ snapshots: dependencies: truncate-utf8-bytes: 1.0.2 - sass-loader@12.6.0(sass@1.69.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)): + sass-loader@12.6.0(sass@1.77.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5)): dependencies: klona: 2.0.6 neo-async: 2.6.2 - webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0) + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5) optionalDependencies: - sass: 1.69.4 + sass: 1.77.4 - sass-loader@12.6.0(sass@1.69.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))): + sass-loader@12.6.0(sass@1.77.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)): dependencies: klona: 2.0.6 neo-async: 2.6.2 - webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5)))) + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0) optionalDependencies: - sass: 1.69.4 + sass: 1.77.4 - sass-loader@12.6.0(sass@1.69.4)(webpack@5.93.0(esbuild@0.21.5)): + sass-loader@12.6.0(sass@1.77.4)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))): dependencies: klona: 2.0.6 neo-async: 2.6.2 - webpack: 5.93.0(esbuild@0.21.5) + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))) optionalDependencies: - sass: 1.69.4 + sass: 1.77.4 - sass-loader@12.6.0(sass@1.69.4)(webpack@5.93.0): + sass@1.69.4: dependencies: - klona: 2.0.6 - neo-async: 2.6.2 - webpack: 5.93.0 - optionalDependencies: - sass: 1.69.4 + chokidar: 3.6.0 + immutable: 4.3.7 + source-map-js: 1.2.0 - sass@1.69.4: + sass@1.77.4: dependencies: chokidar: 3.6.0 immutable: 4.3.7 @@ -28605,6 +30980,10 @@ snapshots: dependencies: loose-envify: 1.4.0 + scheduler@0.25.0-rc-06d0b89e-20240801: {} + + scheduler@0.25.0-rc-f994737d14-20240522: {} + schema-utils@3.3.0: dependencies: '@types/json-schema': 7.0.15 @@ -28631,6 +31010,10 @@ snapshots: secure-json-parse@2.7.0: {} + selderee@0.10.0: + dependencies: + parseley: 0.11.0 + semver@5.7.2: {} semver@6.3.1: {} @@ -28864,6 +31247,15 @@ snapshots: dependencies: atomic-sleep: 1.0.0 + sonic-boom@4.1.0: + dependencies: + atomic-sleep: 1.0.0 + + sonner@1.5.0(react-dom@19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801))(react@19.0.0-rc-06d0b89e-20240801): + dependencies: + react: 19.0.0-rc-06d0b89e-20240801 + react-dom: 19.0.0-rc-06d0b89e-20240801(react@19.0.0-rc-06d0b89e-20240801) + source-list-map@2.0.1: {} source-map-js@1.2.0: {} @@ -29158,25 +31550,30 @@ snapshots: '@tokenizer/token': 0.3.0 peek-readable: 4.1.0 - style-loader@2.0.0(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)): + strtok3@7.1.1: + dependencies: + '@tokenizer/token': 0.3.0 + peek-readable: 5.2.0 + + style-loader@2.0.0(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)): dependencies: loader-utils: 2.0.4 schema-utils: 3.3.0 - webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0) + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0) - style-loader@2.0.0(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))): + style-loader@2.0.0(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))): dependencies: loader-utils: 2.0.4 schema-utils: 3.3.0 - webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5)))) + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))) - style-loader@3.3.4(webpack@5.93.0(esbuild@0.21.5)): + style-loader@3.3.4(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5)): dependencies: - webpack: 5.93.0(esbuild@0.21.5) + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5) - style-loader@3.3.4(webpack@5.93.0): + style-loader@3.3.4(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))): dependencies: - webpack: 5.93.0 + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))) style-to-object@0.4.4: dependencies: @@ -29194,6 +31591,13 @@ snapshots: '@babel/core': 7.25.2 babel-plugin-macros: 3.1.0 + styled-jsx@5.1.6(@babel/core@7.25.2)(react@19.0.0-rc-06d0b89e-20240801): + dependencies: + client-only: 0.0.1 + react: 19.0.0-rc-06d0b89e-20240801 + optionalDependencies: + '@babel/core': 7.25.2 + stylis@4.2.0: {} supports-color@5.5.0: @@ -29214,15 +31618,15 @@ snapshots: svg-parser@2.0.4: {} - svg-url-loader@8.0.0(webpack@5.93.0(esbuild@0.21.5)): + svg-url-loader@8.0.0(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5)): dependencies: - file-loader: 6.2.0(webpack@5.93.0(esbuild@0.21.5)) - webpack: 5.93.0(esbuild@0.21.5) + file-loader: 6.2.0(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5)) + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5) - svg-url-loader@8.0.0(webpack@5.93.0): + svg-url-loader@8.0.0(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))): dependencies: - file-loader: 6.2.0(webpack@5.93.0) - webpack: 5.93.0 + file-loader: 6.2.0(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))) svgo@3.3.2: dependencies: @@ -29232,39 +31636,39 @@ snapshots: css-tree: 2.3.1 css-what: 6.1.0 csso: 5.0.5 - picocolors: 1.0.1 + picocolors: 1.1.0 - swc-loader@0.2.3(@swc/core@1.6.1(@swc/helpers@0.5.5))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)): + swc-loader@0.2.3(@swc/core@1.6.1(@swc/helpers@0.5.12))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)): dependencies: - '@swc/core': 1.6.1(@swc/helpers@0.5.5) - webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0) + '@swc/core': 1.6.1(@swc/helpers@0.5.12) + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0) - swc-loader@0.2.3(@swc/core@1.6.1(@swc/helpers@0.5.5))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))): + swc-loader@0.2.3(@swc/core@1.6.1(@swc/helpers@0.5.12))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))): dependencies: - '@swc/core': 1.6.1(@swc/helpers@0.5.5) - webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5)))) + '@swc/core': 1.6.1(@swc/helpers@0.5.12) + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))) - swc-loader@0.2.6(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)): + swc-loader@0.2.6(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)): dependencies: - '@swc/core': 1.7.23(@swc/helpers@0.5.5) + '@swc/core': 1.7.23(@swc/helpers@0.5.12) '@swc/counter': 0.1.3 - webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0) + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0) - swc-loader@0.2.6(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))): + swc-loader@0.2.6(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))): dependencies: - '@swc/core': 1.7.23(@swc/helpers@0.5.5) + '@swc/core': 1.7.23(@swc/helpers@0.5.12) '@swc/counter': 0.1.3 - webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5)))) + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))) - swc-minify-webpack-plugin@2.1.2(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)): + swc-minify-webpack-plugin@2.1.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)): dependencies: - '@swc/core': 1.7.23(@swc/helpers@0.5.5) - webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0) + '@swc/core': 1.7.23(@swc/helpers@0.5.12) + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0) - swc-minify-webpack-plugin@2.1.2(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))): + swc-minify-webpack-plugin@2.1.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))): dependencies: - '@swc/core': 1.7.23(@swc/helpers@0.5.5) - webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5)))) + '@swc/core': 1.7.23(@swc/helpers@0.5.12) + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))) swr@2.2.5(react@18.3.1): dependencies: @@ -29283,6 +31687,8 @@ snapshots: tabbable@5.3.3: {} + tabbable@6.2.0: {} + tapable@0.1.10: {} tapable@2.2.1: {} @@ -29330,38 +31736,39 @@ snapshots: term-size@2.2.1: {} - terser-webpack-plugin@5.3.10(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)): + terser-webpack-plugin@5.3.10(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5)): dependencies: '@jridgewell/trace-mapping': 0.3.25 jest-worker: 27.5.1 schema-utils: 3.3.0 serialize-javascript: 6.0.2 terser: 5.31.3 - webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0) + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5) optionalDependencies: - '@swc/core': 1.7.23(@swc/helpers@0.5.5) + '@swc/core': 1.7.23(@swc/helpers@0.5.12) + esbuild: 0.21.5 - terser-webpack-plugin@5.3.10(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))): + terser-webpack-plugin@5.3.10(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)): dependencies: '@jridgewell/trace-mapping': 0.3.25 jest-worker: 27.5.1 schema-utils: 3.3.0 serialize-javascript: 6.0.2 terser: 5.31.3 - webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5)))) + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0) optionalDependencies: - '@swc/core': 1.7.23(@swc/helpers@0.5.5) + '@swc/core': 1.7.23(@swc/helpers@0.5.12) - terser-webpack-plugin@5.3.10(esbuild@0.21.5)(webpack@5.93.0(esbuild@0.21.5)): + terser-webpack-plugin@5.3.10(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))): dependencies: '@jridgewell/trace-mapping': 0.3.25 jest-worker: 27.5.1 schema-utils: 3.3.0 serialize-javascript: 6.0.2 terser: 5.31.3 - webpack: 5.93.0(esbuild@0.21.5) + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))) optionalDependencies: - esbuild: 0.21.5 + '@swc/core': 1.7.23(@swc/helpers@0.5.12) terser-webpack-plugin@5.3.10(webpack@5.93.0): dependencies: @@ -29372,27 +31779,27 @@ snapshots: terser: 5.31.3 webpack: 5.93.0 - terser-webpack-plugin@5.3.9(@swc/core@1.6.1(@swc/helpers@0.5.5))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)): + terser-webpack-plugin@5.3.9(@swc/core@1.6.1(@swc/helpers@0.5.12))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)): dependencies: '@jridgewell/trace-mapping': 0.3.25 jest-worker: 27.5.1 schema-utils: 3.3.0 serialize-javascript: 6.0.2 terser: 5.31.3 - webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0) + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0) optionalDependencies: - '@swc/core': 1.6.1(@swc/helpers@0.5.5) + '@swc/core': 1.6.1(@swc/helpers@0.5.12) - terser-webpack-plugin@5.3.9(@swc/core@1.6.1(@swc/helpers@0.5.5))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))): + terser-webpack-plugin@5.3.9(@swc/core@1.6.1(@swc/helpers@0.5.12))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))): dependencies: '@jridgewell/trace-mapping': 0.3.25 jest-worker: 27.5.1 schema-utils: 3.3.0 serialize-javascript: 6.0.2 terser: 5.31.3 - webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5)))) + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))) optionalDependencies: - '@swc/core': 1.6.1(@swc/helpers@0.5.5) + '@swc/core': 1.6.1(@swc/helpers@0.5.12) terser@5.31.3: dependencies: @@ -29423,6 +31830,10 @@ snapshots: dependencies: real-require: 0.2.0 + thread-stream@3.1.0: + dependencies: + real-require: 0.2.0 + through2@0.4.2: dependencies: readable-stream: 1.0.34 @@ -29455,10 +31866,20 @@ snapshots: to-fast-properties@2.0.0: {} + to-no-case@1.0.2: {} + to-regex-range@5.0.1: dependencies: is-number: 7.0.0 + to-snake-case@1.0.0: + dependencies: + to-space-case: 1.0.0 + + to-space-case@1.0.0: + dependencies: + to-no-case: 1.0.2 + toggle-selection@1.0.6: {} toidentifier@1.0.1: {} @@ -29468,6 +31889,11 @@ snapshots: '@tokenizer/token': 0.3.0 ieee754: 1.2.1 + token-types@5.0.1: + dependencies: + '@tokenizer/token': 0.3.0 + ieee754: 1.2.1 + topojson-client@3.1.0: dependencies: commander: 2.20.3 @@ -29526,7 +31952,7 @@ snapshots: dependencies: tslib: 1.14.1 - ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.5))(@types/node@20.14.14)(typescript@5.5.4): + ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@20.14.14)(typescript@5.5.4): dependencies: '@cspotcode/source-map-support': 0.8.1 '@tsconfig/node10': 1.0.11 @@ -29544,7 +31970,28 @@ snapshots: v8-compile-cache-lib: 3.0.1 yn: 3.1.1 optionalDependencies: - '@swc/core': 1.7.23(@swc/helpers@0.5.5) + '@swc/core': 1.7.23(@swc/helpers@0.5.12) + + ts-node@10.9.2(@swc/core@1.7.23(@swc/helpers@0.5.12))(@types/node@22.5.4)(typescript@5.5.4): + dependencies: + '@cspotcode/source-map-support': 0.8.1 + '@tsconfig/node10': 1.0.11 + '@tsconfig/node12': 1.0.11 + '@tsconfig/node14': 1.0.3 + '@tsconfig/node16': 1.0.4 + '@types/node': 22.5.4 + acorn: 8.12.1 + acorn-walk: 8.3.3 + arg: 4.1.3 + create-require: 1.1.1 + diff: 4.0.2 + make-error: 1.3.6 + typescript: 5.5.4 + v8-compile-cache-lib: 3.0.1 + yn: 3.1.1 + optionalDependencies: + '@swc/core': 1.7.23(@swc/helpers@0.5.12) + optional: true ts-pnp@1.2.0(typescript@5.5.4): optionalDependencies: @@ -29587,6 +32034,13 @@ snapshots: tslib: 1.14.1 typescript: 5.5.4 + tsx@4.17.0: + dependencies: + esbuild: 0.23.1 + get-tsconfig: 4.7.6 + optionalDependencies: + fsevents: 2.3.3 + tty-browserify@0.0.1: {} tunnel-agent@0.6.0: @@ -29640,6 +32094,8 @@ snapshots: type-fest@2.19.0: {} + type-fest@3.13.0: {} + type-fest@3.13.1: {} type-fest@4.23.0: {} @@ -29685,6 +32141,14 @@ snapshots: typedarray@0.0.6: {} + types-react-dom@19.0.0-rc.0: + dependencies: + '@types/react': 18.3.5 + + types-react@19.0.0-rc.0: + dependencies: + csstype: 3.1.3 + typescript@5.5.4: {} ufo@1.5.4: {} @@ -29698,6 +32162,10 @@ snapshots: undici-types@5.26.5: {} + undici-types@6.19.8: {} + + unfetch@4.2.0: {} + unicode-canonical-property-names-ecmascript@2.0.0: {} unicode-match-property-ecmascript@2.0.0: @@ -29828,53 +32296,44 @@ snapshots: dependencies: browserslist: 4.23.2 escalade: 3.1.2 - picocolors: 1.0.1 + picocolors: 1.1.0 update-browserslist-db@1.1.0(browserslist@4.23.3): dependencies: browserslist: 4.23.3 escalade: 3.1.2 - picocolors: 1.0.1 + picocolors: 1.1.0 uri-js@4.4.1: dependencies: punycode: 2.3.1 - url-loader@4.1.1(file-loader@6.2.0(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)): - dependencies: - loader-utils: 2.0.4 - mime-types: 2.1.35 - schema-utils: 3.3.0 - webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0) - optionalDependencies: - file-loader: 6.2.0(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)) - - url-loader@4.1.1(file-loader@6.2.0(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))): + url-loader@4.1.1(file-loader@6.2.0(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5)))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5)): dependencies: loader-utils: 2.0.4 mime-types: 2.1.35 schema-utils: 3.3.0 - webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5)))) + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5) optionalDependencies: - file-loader: 6.2.0(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))) + file-loader: 6.2.0(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5)) - url-loader@4.1.1(file-loader@6.2.0(webpack@5.93.0(esbuild@0.21.5)))(webpack@5.93.0(esbuild@0.21.5)): + url-loader@4.1.1(file-loader@6.2.0(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)): dependencies: loader-utils: 2.0.4 mime-types: 2.1.35 schema-utils: 3.3.0 - webpack: 5.93.0(esbuild@0.21.5) + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0) optionalDependencies: - file-loader: 6.2.0(webpack@5.93.0(esbuild@0.21.5)) + file-loader: 6.2.0(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)) - url-loader@4.1.1(file-loader@6.2.0(webpack@5.93.0))(webpack@5.93.0): + url-loader@4.1.1(file-loader@6.2.0(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))): dependencies: loader-utils: 2.0.4 mime-types: 2.1.35 schema-utils: 3.3.0 - webpack: 5.93.0 + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))) optionalDependencies: - file-loader: 6.2.0(webpack@5.93.0) + file-loader: 6.2.0(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) url-parse@1.5.10: dependencies: @@ -29902,12 +32361,23 @@ snapshots: optionalDependencies: react-dom: 18.3.1(react@18.3.1) + use-context-selector@2.0.0(react@19.0.0-rc-06d0b89e-20240801)(scheduler@0.25.0-rc-f994737d14-20240522): + dependencies: + react: 19.0.0-rc-06d0b89e-20240801 + scheduler: 0.25.0-rc-f994737d14-20240522 + use-isomorphic-layout-effect@1.1.2(@types/react@18.3.5)(react@18.3.1): dependencies: react: 18.3.1 optionalDependencies: '@types/react': 18.3.5 + use-isomorphic-layout-effect@1.1.2(react@19.0.0-rc-06d0b89e-20240801)(types-react@19.0.0-rc.0): + dependencies: + react: 19.0.0-rc-06d0b89e-20240801 + optionalDependencies: + '@types/react': types-react@19.0.0-rc.0 + use-sync-external-store@1.2.2(react@18.3.1): dependencies: react: 18.3.1 @@ -30641,17 +33111,17 @@ snapshots: gzip-size: 6.0.0 html-escaper: 2.0.2 opener: 1.5.2 - picocolors: 1.0.1 + picocolors: 1.1.0 sirv: 2.0.4 ws: 7.5.10 transitivePeerDependencies: - bufferutil - utf-8-validate - webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)): + webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)): dependencies: '@discoveryjs/json-ext': 0.5.7 - '@webpack-cli/configtest': 1.2.0(webpack-cli@4.10.0(webpack@5.93.0))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)) + '@webpack-cli/configtest': 1.2.0(webpack-cli@4.10.0(webpack@5.93.0))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)) '@webpack-cli/info': 1.5.0(webpack-cli@4.10.0(webpack@5.93.0)) '@webpack-cli/serve': 1.7.0(webpack-cli@4.10.0(webpack@5.93.0)) colorette: 2.0.20 @@ -30661,17 +33131,17 @@ snapshots: import-local: 3.2.0 interpret: 2.2.0 rechoir: 0.7.1 - webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0) + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0) webpack-merge: 5.10.0 optionalDependencies: webpack-bundle-analyzer: 4.10.2 - webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))): + webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))): dependencies: '@discoveryjs/json-ext': 0.5.7 - '@webpack-cli/configtest': 1.2.0(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))) - '@webpack-cli/info': 1.5.0(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5)))) - '@webpack-cli/serve': 1.7.0(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5)))) + '@webpack-cli/configtest': 1.2.0(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) + '@webpack-cli/info': 1.5.0(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))) + '@webpack-cli/serve': 1.7.0(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))) colorette: 2.0.20 commander: 7.2.0 cross-spawn: 7.0.3 @@ -30679,12 +33149,12 @@ snapshots: import-local: 3.2.0 interpret: 2.2.0 rechoir: 0.7.1 - webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5)))) + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))) webpack-merge: 5.10.0 optionalDependencies: webpack-bundle-analyzer: 4.10.2 - webpack-dev-middleware@6.1.2(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)): + webpack-dev-middleware@6.1.2(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)): dependencies: colorette: 2.0.20 memfs: 3.5.3 @@ -30692,9 +33162,9 @@ snapshots: range-parser: 1.2.1 schema-utils: 4.2.0 optionalDependencies: - webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0) + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0) - webpack-dev-middleware@6.1.2(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))): + webpack-dev-middleware@6.1.2(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))): dependencies: colorette: 2.0.20 memfs: 3.5.3 @@ -30702,9 +33172,9 @@ snapshots: range-parser: 1.2.1 schema-utils: 4.2.0 optionalDependencies: - webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5)))) + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))) - webpack-dev-middleware@6.1.3(webpack@5.93.0(esbuild@0.21.5)): + webpack-dev-middleware@6.1.3(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5)): dependencies: colorette: 2.0.20 memfs: 3.5.3 @@ -30712,9 +33182,9 @@ snapshots: range-parser: 1.2.1 schema-utils: 4.2.0 optionalDependencies: - webpack: 5.93.0(esbuild@0.21.5) + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5) - webpack-dev-middleware@6.1.3(webpack@5.93.0): + webpack-dev-middleware@6.1.3(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))): dependencies: colorette: 2.0.20 memfs: 3.5.3 @@ -30722,7 +33192,7 @@ snapshots: range-parser: 1.2.1 schema-utils: 4.2.0 optionalDependencies: - webpack: 5.93.0 + webpack: 5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))) webpack-hot-middleware@2.26.1: dependencies: @@ -30778,7 +33248,7 @@ snapshots: - esbuild - uglify-js - webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5)))): + webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5): dependencies: '@types/eslint-scope': 3.7.7 '@types/estree': 1.0.5 @@ -30801,17 +33271,15 @@ snapshots: neo-async: 2.6.2 schema-utils: 3.3.0 tapable: 2.2.1 - terser-webpack-plugin: 5.3.10(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))) + terser-webpack-plugin: 5.3.10(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(esbuild@0.21.5)) watchpack: 2.4.1 webpack-sources: 3.2.3 - optionalDependencies: - webpack-cli: 4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))) transitivePeerDependencies: - '@swc/core' - esbuild - uglify-js - webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0): + webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12)))): dependencies: '@types/eslint-scope': 3.7.7 '@types/estree': 1.0.5 @@ -30834,17 +33302,17 @@ snapshots: neo-async: 2.6.2 schema-utils: 3.3.0 tapable: 2.2.1 - terser-webpack-plugin: 5.3.10(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)) + terser-webpack-plugin: 5.3.10(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) watchpack: 2.4.1 webpack-sources: 3.2.3 optionalDependencies: - webpack-cli: 4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.5))(webpack-cli@4.10.0)) + webpack-cli: 4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))) transitivePeerDependencies: - '@swc/core' - esbuild - uglify-js - webpack@5.93.0(esbuild@0.21.5): + webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0): dependencies: '@types/eslint-scope': 3.7.7 '@types/estree': 1.0.5 @@ -30867,9 +33335,11 @@ snapshots: neo-async: 2.6.2 schema-utils: 3.3.0 tapable: 2.2.1 - terser-webpack-plugin: 5.3.10(esbuild@0.21.5)(webpack@5.93.0(esbuild@0.21.5)) + terser-webpack-plugin: 5.3.10(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)) watchpack: 2.4.1 webpack-sources: 3.2.3 + optionalDependencies: + webpack-cli: 4.10.0(webpack-bundle-analyzer@4.10.2)(webpack@5.93.0(@swc/core@1.7.23(@swc/helpers@0.5.12))(webpack-cli@4.10.0)) transitivePeerDependencies: - '@swc/core' - esbuild @@ -31060,6 +33530,10 @@ snapshots: y18n: 5.0.8 yargs-parser: 21.1.1 + yjs@13.6.19: + dependencies: + lib0: 0.2.97 + yn@3.1.1: {} yocto-queue@0.1.0: {} diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index 0ff1f46f6..c9645d7c8 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -195,3 +195,27 @@ catalogs: "@mui/material": ^5.16.6 "@mui/styles": ^5.16.6 "@mui/utils": ^5.16.6 + + # Payload 3 has many dependecies that are currently in Beta, + # These dependencies could have breaking changes and unpredictable behaviour + # thus, a separate catalog has been created to handle this. + payload-3: + "@payloadcms/db-mongodb": "3.0.0-beta.102" + "@payloadcms/db-postgres": "3.0.0-beta.102" + "@payloadcms/next": "3.0.0-beta.102" + "@payloadcms/plugin-cloud": "3.0.0-beta.102" + "@payloadcms/plugin-seo": "3.0.0-beta.102" + "@payloadcms/richtext-lexical": "3.0.0-beta.102" + "@payloadcms/ui": "3.0.0-beta.102" + "cross-env": "^7.0.3" + "graphql": "^16.9.0" + "next": "15.0.0-canary.104" + "payload": "3.0.0-beta.102" + "react": "19.0.0-rc-06d0b89e-20240801" + "react-dom": "19.0.0-rc-06d0b89e-20240801" + "sharp": "0.33.5" + "@types/node": "^22.5.4" + "@types/react": "npm:types-react@19.0.0-rc.0" + "@types/react-dom": "npm:types-react-dom@19.0.0-rc.0" + "eslint": "^9.10.0" + "eslint-config-next": "15.0.0-canary.53"