From e3f62f14941a5c960664f0c2b7633a626f423cee Mon Sep 17 00:00:00 2001 From: Guillaume Dorce Date: Sat, 4 Feb 2023 17:03:40 +0100 Subject: [PATCH] initial commit with home, header, footer, react-page and builder.io --- .env.example | 9 + .eslintrc.json | 22 + .gitignore | 42 + README.md | 28 + next.config.mjs | 18 + package.json | 53 + pnpm-lock.yaml | 4222 +++++++++++++++++++++++++++++ postcss.config.cjs | 6 + prettier.config.cjs | 4 + prisma/schema.prisma | 17 + public/favicon.ico | Bin 0 -> 15406 bytes public/logo.png | Bin 0 -> 65843 bytes src/env/client.mjs | 35 + src/env/schema.mjs | 40 + src/env/server.mjs | 27 + src/pages/[...page].tsx | 115 + src/pages/_app.tsx | 12 + src/pages/api/trpc/[trpc].ts | 19 + src/pages/index.tsx | 95 + src/server/api/root.ts | 14 + src/server/api/routers/example.ts | 16 + src/server/api/trpc.ts | 85 + src/server/db.ts | 19 + src/styles/globals.css | 9 + src/utils/api.ts | 65 + tailwind.config.cjs | 8 + tsconfig.json | 21 + 27 files changed, 5001 insertions(+) create mode 100644 .env.example create mode 100644 .eslintrc.json create mode 100644 .gitignore create mode 100644 README.md create mode 100644 next.config.mjs create mode 100644 package.json create mode 100644 pnpm-lock.yaml create mode 100644 postcss.config.cjs create mode 100644 prettier.config.cjs create mode 100644 prisma/schema.prisma create mode 100644 public/favicon.ico create mode 100755 public/logo.png create mode 100644 src/env/client.mjs create mode 100644 src/env/schema.mjs create mode 100644 src/env/server.mjs create mode 100644 src/pages/[...page].tsx create mode 100644 src/pages/_app.tsx create mode 100644 src/pages/api/trpc/[trpc].ts create mode 100644 src/pages/index.tsx create mode 100644 src/server/api/root.ts create mode 100644 src/server/api/routers/example.ts create mode 100644 src/server/api/trpc.ts create mode 100644 src/server/db.ts create mode 100644 src/styles/globals.css create mode 100644 src/utils/api.ts create mode 100644 tailwind.config.cjs create mode 100644 tsconfig.json diff --git a/.env.example b/.env.example new file mode 100644 index 0000000..cb15881 --- /dev/null +++ b/.env.example @@ -0,0 +1,9 @@ +# Since .env is gitignored, you can use .env.example to build a new `.env` file when you clone the repo. +# Keep this file up-to-date when you add new variables to `.env`. + +# This file will be committed to version control, so make sure not to have any secrets in it. +# If you are cloning this repo, create a copy of this file named `.env` and populate it with your secrets. + +# When adding additional env variables, the schema in /env/schema.mjs should be updated accordingly +# Prisma +DATABASE_URL=file:./db.sqlite diff --git a/.eslintrc.json b/.eslintrc.json new file mode 100644 index 0000000..82671df --- /dev/null +++ b/.eslintrc.json @@ -0,0 +1,22 @@ +{ + "overrides": [ + { + "extends": [ + "plugin:@typescript-eslint/recommended-requiring-type-checking" + ], + "files": ["*.ts", "*.tsx"], + "parserOptions": { + "project": "tsconfig.json" + } + } + ], + "parser": "@typescript-eslint/parser", + "parserOptions": { + "project": "./tsconfig.json" + }, + "plugins": ["@typescript-eslint"], + "extends": ["next/core-web-vitals", "plugin:@typescript-eslint/recommended"], + "rules": { + "@typescript-eslint/consistent-type-imports": "warn" + } +} diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..2971a0b --- /dev/null +++ b/.gitignore @@ -0,0 +1,42 @@ +# See https://help.github.com/articles/ignoring-files/ for more about ignoring files. + +# dependencies +/node_modules +/.pnp +.pnp.js + +# testing +/coverage + +# database +/prisma/db.sqlite +/prisma/db.sqlite-journal + +# next.js +/.next/ +/out/ +next-env.d.ts + +# production +/build + +# misc +.DS_Store +*.pem + +# debug +npm-debug.log* +yarn-debug.log* +yarn-error.log* +.pnpm-debug.log* + +# local env files +# do not commit any .env files to git, except for the .env.example file. https://create.t3.gg/en/usage/env-variables#using-environment-variables +.env +.env*.local + +# vercel +.vercel + +# typescript +*.tsbuildinfo diff --git a/README.md b/README.md new file mode 100644 index 0000000..fba19ed --- /dev/null +++ b/README.md @@ -0,0 +1,28 @@ +# Create T3 App + +This is a [T3 Stack](https://create.t3.gg/) project bootstrapped with `create-t3-app`. + +## What's next? How do I make an app with this? + +We try to keep this project as simple as possible, so you can start with just the scaffolding we set up for you, and add additional things later when they become necessary. + +If you are not familiar with the different technologies used in this project, please refer to the respective docs. If you still are in the wind, please join our [Discord](https://t3.gg/discord) and ask for help. + +- [Next.js](https://nextjs.org) +- [NextAuth.js](https://next-auth.js.org) +- [Prisma](https://prisma.io) +- [Tailwind CSS](https://tailwindcss.com) +- [tRPC](https://trpc.io) + +## Learn More + +To learn more about the [T3 Stack](https://create.t3.gg/), take a look at the following resources: + +- [Documentation](https://create.t3.gg/) +- [Learn the T3 Stack](https://create.t3.gg/en/faq#what-learning-resources-are-currently-available) — Check out these awesome tutorials + +You can check out the [create-t3-app GitHub repository](https://github.com/t3-oss/create-t3-app) — your feedback and contributions are welcome! + +## How do I deploy this? + +Follow our deployment guides for [Vercel](https://create.t3.gg/en/deployment/vercel), [Netlify](https://create.t3.gg/en/deployment/netlify) and [Docker](https://create.t3.gg/en/deployment/docker) for more information. diff --git a/next.config.mjs b/next.config.mjs new file mode 100644 index 0000000..0ee755b --- /dev/null +++ b/next.config.mjs @@ -0,0 +1,18 @@ +// @ts-check +/** + * Run `build` or `dev` with `SKIP_ENV_VALIDATION` to skip env validation. + * This is especially useful for Docker builds. + */ +!process.env.SKIP_ENV_VALIDATION && (await import("./src/env/server.mjs")); + +/** @type {import("next").NextConfig} */ +const config = { + reactStrictMode: true, + /* If trying out the experimental appDir, comment the i18n config out + * @see https://github.com/vercel/next.js/issues/41980 */ + i18n: { + locales: ["en"], + defaultLocale: "en", + }, +}; +export default config; diff --git a/package.json b/package.json new file mode 100644 index 0000000..15c76a7 --- /dev/null +++ b/package.json @@ -0,0 +1,53 @@ +{ + "name": "pchl", + "version": "0.1.0", + "private": true, + "scripts": { + "build": "next build", + "dev": "next dev", + "postinstall": "prisma generate", + "lint": "next lint", + "start": "next start" + }, + "dependencies": { + "@builder.io/react": "^2.0.13", + "@emotion/react": "^11.10.5", + "@emotion/styled": "^11.10.5", + "@prisma/client": "^4.8.0", + "@react-page/editor": "^5.3.11", + "@react-page/plugins-image": "^5.3.11", + "@react-page/plugins-slate": "^5.3.11", + "@tanstack/react-query": "^4.20.0", + "@trpc/client": "^10.8.1", + "@trpc/next": "^10.8.1", + "@trpc/react-query": "^10.8.1", + "@trpc/server": "^10.8.1", + "add": "^2.0.6", + "next": "13.1.2", + "react": "18.2.0", + "react-dom": "18.2.0", + "react-icons": "^4.7.1", + "superjson": "1.9.1", + "zod": "^3.20.2" + }, + "devDependencies": { + "@types/node": "^18.11.18", + "@types/prettier": "^2.7.2", + "@types/react": "^18.0.26", + "@types/react-dom": "^18.0.10", + "@typescript-eslint/eslint-plugin": "^5.47.1", + "@typescript-eslint/parser": "^5.47.1", + "autoprefixer": "^10.4.7", + "eslint": "^8.30.0", + "eslint-config-next": "13.1.2", + "postcss": "^8.4.14", + "prettier": "^2.8.1", + "prettier-plugin-tailwindcss": "^0.2.1", + "prisma": "^4.8.0", + "tailwindcss": "^3.2.0", + "typescript": "^4.9.4" + }, + "ct3aMetadata": { + "initVersion": "7.3.2" + } +} diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml new file mode 100644 index 0000000..40081be --- /dev/null +++ b/pnpm-lock.yaml @@ -0,0 +1,4222 @@ +lockfileVersion: 5.4 + +specifiers: + '@builder.io/react': ^2.0.13 + '@emotion/react': ^11.10.5 + '@emotion/styled': ^11.10.5 + '@prisma/client': ^4.8.0 + '@react-page/editor': ^5.3.11 + '@react-page/plugins-image': ^5.3.11 + '@react-page/plugins-slate': ^5.3.11 + '@tanstack/react-query': ^4.20.0 + '@trpc/client': ^10.8.1 + '@trpc/next': ^10.8.1 + '@trpc/react-query': ^10.8.1 + '@trpc/server': ^10.8.1 + '@types/node': ^18.11.18 + '@types/prettier': ^2.7.2 + '@types/react': ^18.0.26 + '@types/react-dom': ^18.0.10 + '@typescript-eslint/eslint-plugin': ^5.47.1 + '@typescript-eslint/parser': ^5.47.1 + add: ^2.0.6 + autoprefixer: ^10.4.7 + eslint: ^8.30.0 + eslint-config-next: 13.1.2 + next: 13.1.2 + postcss: ^8.4.14 + prettier: ^2.8.1 + prettier-plugin-tailwindcss: ^0.2.1 + prisma: ^4.8.0 + react: 18.2.0 + react-dom: 18.2.0 + react-icons: ^4.7.1 + superjson: 1.9.1 + tailwindcss: ^3.2.0 + typescript: ^4.9.4 + zod: ^3.20.2 + +dependencies: + '@builder.io/react': 2.0.13_biqbaboplfbrettd7655fr4n2y + '@emotion/react': 11.10.5_3stiutgnnbnfnf3uowm5cip22i + '@emotion/styled': 11.10.5_jrh5enlbqfbnumycmktdqgd6se + '@prisma/client': 4.9.0_prisma@4.9.0 + '@react-page/editor': 5.3.11_dzriung6lmr2oo5om3r73hnblq + '@react-page/plugins-image': 5.3.11_dzriung6lmr2oo5om3r73hnblq + '@react-page/plugins-slate': 5.3.11_dzriung6lmr2oo5om3r73hnblq + '@tanstack/react-query': 4.23.0_biqbaboplfbrettd7655fr4n2y + '@trpc/client': 10.9.0_@trpc+server@10.9.0 + '@trpc/next': 10.9.0_agcdofckp5bsojf5gpkxjg6zzq + '@trpc/react-query': 10.9.0_22wgxldzdfxutowffn2dykkd3i + '@trpc/server': 10.9.0 + add: 2.0.6 + next: 13.1.2_biqbaboplfbrettd7655fr4n2y + react: 18.2.0 + react-dom: 18.2.0_react@18.2.0 + react-icons: 4.7.1_react@18.2.0 + superjson: 1.9.1 + zod: 3.20.2 + +devDependencies: + '@types/node': 18.11.18 + '@types/prettier': 2.7.2 + '@types/react': 18.0.27 + '@types/react-dom': 18.0.10 + '@typescript-eslint/eslint-plugin': 5.49.0_iu322prlnwsygkcra5kbpy22si + '@typescript-eslint/parser': 5.49.0_7uibuqfxkfaozanbtbziikiqje + autoprefixer: 10.4.13_postcss@8.4.21 + eslint: 8.32.0 + eslint-config-next: 13.1.2_7uibuqfxkfaozanbtbziikiqje + postcss: 8.4.21 + prettier: 2.8.3 + prettier-plugin-tailwindcss: 0.2.2_prettier@2.8.3 + prisma: 4.9.0 + tailwindcss: 3.2.4 + typescript: 4.9.4 + +packages: + + /@babel/code-frame/7.18.6: + resolution: {integrity: sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/highlight': 7.18.6 + dev: false + + /@babel/helper-module-imports/7.18.6: + resolution: {integrity: sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/types': 7.20.7 + dev: false + + /@babel/helper-plugin-utils/7.20.2: + resolution: {integrity: sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ==} + engines: {node: '>=6.9.0'} + dev: false + + /@babel/helper-string-parser/7.19.4: + resolution: {integrity: sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==} + engines: {node: '>=6.9.0'} + dev: false + + /@babel/helper-validator-identifier/7.19.1: + resolution: {integrity: sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==} + engines: {node: '>=6.9.0'} + dev: false + + /@babel/highlight/7.18.6: + resolution: {integrity: sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/helper-validator-identifier': 7.19.1 + chalk: 2.4.2 + js-tokens: 4.0.0 + dev: false + + /@babel/plugin-syntax-jsx/7.18.6: + resolution: {integrity: sha512-6mmljtAedFGTWu2p/8WIORGwy+61PLgOMPOdazc7YoJ9ZCWUyFy3A6CpPkRKLKD1ToAesxX8KGEViAiLo9N+7Q==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/helper-plugin-utils': 7.20.2 + dev: false + + /@babel/runtime/7.20.13: + resolution: {integrity: sha512-gt3PKXs0DBoL9xCvOIIZ2NEqAGZqHjAnmVbfQtB620V0uReIQutpel14KcneZuer7UioY8ALKZ7iocavvzTNFA==} + engines: {node: '>=6.9.0'} + dependencies: + regenerator-runtime: 0.13.11 + + /@babel/types/7.20.7: + resolution: {integrity: sha512-69OnhBxSSgK0OzTJai4kyPDiKTIe3j+ctaHdIGVbRahTLAT7L3R9oeXHC2aVSuGYt3cVnoAMDmOCgJ2yaiLMvg==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/helper-string-parser': 7.19.4 + '@babel/helper-validator-identifier': 7.19.1 + to-fast-properties: 2.0.0 + dev: false + + /@builder.io/react/2.0.13_biqbaboplfbrettd7655fr4n2y: + resolution: {integrity: sha512-z9LdFaM4kzTxT5OqgEF7O3oFsnzgEkthhRXaNASN3GB0XocxRU0gH42aAnv5pr2u6TPIvEFyIqwb+udJMSLIng==} + engines: {node: '>=6.0.0'} + peerDependencies: + react: '>=16.8.0' + react-dom: '>=16.8.0' + dependencies: + '@builder.io/sdk': 1.1.30 + '@emotion/core': 10.3.1_react@18.2.0 + hash-sum: 2.0.0 + preact: 10.11.3 + react: 18.2.0 + react-dom: 18.2.0_react@18.2.0 + vm2: 3.9.13 + optionalDependencies: + node-fetch: 2.6.8 + prop-types: 15.8.1 + transitivePeerDependencies: + - encoding + dev: false + + /@builder.io/sdk/1.1.30: + resolution: {integrity: sha512-HS5TSs/r7DsDFYaMQ8poXcMD/1jFjgrxulf1Ai/1y494QlxNyhQKQSZyhYJe2B+C2nZJTPfJjEFQMDSlACeoLA==} + dependencies: + hash-sum: 2.0.0 + node-fetch: 2.6.8 + tslib: 1.14.1 + transitivePeerDependencies: + - encoding + dev: false + + /@emotion/babel-plugin/11.10.5: + resolution: {integrity: sha512-xE7/hyLHJac7D2Ve9dKroBBZqBT7WuPQmWcq7HSGb84sUuP4mlOWoB8dvVfD9yk5DHkU1m6RW7xSoDtnQHNQeA==} + peerDependencies: + '@babel/core': ^7.0.0 + dependencies: + '@babel/helper-module-imports': 7.18.6 + '@babel/plugin-syntax-jsx': 7.18.6 + '@babel/runtime': 7.20.13 + '@emotion/hash': 0.9.0 + '@emotion/memoize': 0.8.0 + '@emotion/serialize': 1.1.1 + babel-plugin-macros: 3.1.0 + convert-source-map: 1.9.0 + escape-string-regexp: 4.0.0 + find-root: 1.1.0 + source-map: 0.5.7 + stylis: 4.1.3 + dev: false + + /@emotion/cache/10.0.29: + resolution: {integrity: sha512-fU2VtSVlHiF27empSbxi1O2JFdNWZO+2NFHfwO0pxgTep6Xa3uGb+3pVKfLww2l/IBGLNEZl5Xf/++A4wAYDYQ==} + dependencies: + '@emotion/sheet': 0.9.4 + '@emotion/stylis': 0.8.5 + '@emotion/utils': 0.11.3 + '@emotion/weak-memoize': 0.2.5 + dev: false + + /@emotion/cache/11.10.5: + resolution: {integrity: sha512-dGYHWyzTdmK+f2+EnIGBpkz1lKc4Zbj2KHd4cX3Wi8/OWr5pKslNjc3yABKH4adRGCvSX4VDC0i04mrrq0aiRA==} + dependencies: + '@emotion/memoize': 0.8.0 + '@emotion/sheet': 1.2.1 + '@emotion/utils': 1.2.0 + '@emotion/weak-memoize': 0.3.0 + stylis: 4.1.3 + dev: false + + /@emotion/core/10.3.1_react@18.2.0: + resolution: {integrity: sha512-447aUEjPIm0MnE6QYIaFz9VQOHSXf4Iu6EWOIqq11EAPqinkSZmfymPTmlOE3QjLv846lH4JVZBUOtwGbuQoww==} + peerDependencies: + react: '>=16.3.0' + dependencies: + '@babel/runtime': 7.20.13 + '@emotion/cache': 10.0.29 + '@emotion/css': 10.0.27 + '@emotion/serialize': 0.11.16 + '@emotion/sheet': 0.9.4 + '@emotion/utils': 0.11.3 + react: 18.2.0 + dev: false + + /@emotion/css/10.0.27: + resolution: {integrity: sha512-6wZjsvYeBhyZQYNrGoR5yPMYbMBNEnanDrqmsqS1mzDm1cOTu12shvl2j4QHNS36UaTE0USIJawCH9C8oW34Zw==} + dependencies: + '@emotion/serialize': 0.11.16 + '@emotion/utils': 0.11.3 + babel-plugin-emotion: 10.2.2 + dev: false + + /@emotion/hash/0.8.0: + resolution: {integrity: sha512-kBJtf7PH6aWwZ6fka3zQ0p6SBYzx4fl1LoZXE2RrnYST9Xljm7WfKJrU4g/Xr3Beg72MLrp1AWNUmuYJTL7Cow==} + dev: false + + /@emotion/hash/0.9.0: + resolution: {integrity: sha512-14FtKiHhy2QoPIzdTcvh//8OyBlknNs2nXRwIhG904opCby3l+9Xaf/wuPvICBF0rc1ZCNBd3nKe9cd2mecVkQ==} + dev: false + + /@emotion/is-prop-valid/1.2.0: + resolution: {integrity: sha512-3aDpDprjM0AwaxGE09bOPkNxHpBd+kA6jty3RnaEXdweX1DF1U3VQpPYb0g1IStAuK7SVQ1cy+bNBBKp4W3Fjg==} + dependencies: + '@emotion/memoize': 0.8.0 + dev: false + + /@emotion/memoize/0.7.4: + resolution: {integrity: sha512-Ja/Vfqe3HpuzRsG1oBtWTHk2PGZ7GR+2Vz5iYGelAw8dx32K0y7PjVuxK6z1nMpZOqAFsRUPCkK1YjJ56qJlgw==} + dev: false + + /@emotion/memoize/0.8.0: + resolution: {integrity: sha512-G/YwXTkv7Den9mXDO7AhLWkE3q+I92B+VqAE+dYG4NGPaHZGvt3G8Q0p9vmE+sq7rTGphUbAvmQ9YpbfMQGGlA==} + dev: false + + /@emotion/react/11.10.5_3stiutgnnbnfnf3uowm5cip22i: + resolution: {integrity: sha512-TZs6235tCJ/7iF6/rvTaOH4oxQg2gMAcdHemjwLKIjKz4rRuYe1HJ2TQJKnAcRAfOUDdU8XoDadCe1rl72iv8A==} + peerDependencies: + '@babel/core': ^7.0.0 + '@types/react': '*' + react: '>=16.8.0' + peerDependenciesMeta: + '@babel/core': + optional: true + '@types/react': + optional: true + dependencies: + '@babel/runtime': 7.20.13 + '@emotion/babel-plugin': 11.10.5 + '@emotion/cache': 11.10.5 + '@emotion/serialize': 1.1.1 + '@emotion/use-insertion-effect-with-fallbacks': 1.0.0_react@18.2.0 + '@emotion/utils': 1.2.0 + '@emotion/weak-memoize': 0.3.0 + '@types/react': 18.0.27 + hoist-non-react-statics: 3.3.2 + react: 18.2.0 + dev: false + + /@emotion/serialize/0.11.16: + resolution: {integrity: sha512-G3J4o8by0VRrO+PFeSc3js2myYNOXVJ3Ya+RGVxnshRYgsvErfAOglKAiy1Eo1vhzxqtUvjCyS5gtewzkmvSSg==} + dependencies: + '@emotion/hash': 0.8.0 + '@emotion/memoize': 0.7.4 + '@emotion/unitless': 0.7.5 + '@emotion/utils': 0.11.3 + csstype: 2.6.21 + dev: false + + /@emotion/serialize/1.1.1: + resolution: {integrity: sha512-Zl/0LFggN7+L1liljxXdsVSVlg6E/Z/olVWpfxUTxOAmi8NU7YoeWeLfi1RmnB2TATHoaWwIBRoL+FvAJiTUQA==} + dependencies: + '@emotion/hash': 0.9.0 + '@emotion/memoize': 0.8.0 + '@emotion/unitless': 0.8.0 + '@emotion/utils': 1.2.0 + csstype: 3.1.1 + dev: false + + /@emotion/sheet/0.9.4: + resolution: {integrity: sha512-zM9PFmgVSqBw4zL101Q0HrBVTGmpAxFZH/pYx/cjJT5advXguvcgjHFTCaIO3enL/xr89vK2bh0Mfyj9aa0ANA==} + dev: false + + /@emotion/sheet/1.2.1: + resolution: {integrity: sha512-zxRBwl93sHMsOj4zs+OslQKg/uhF38MB+OMKoCrVuS0nyTkqnau+BM3WGEoOptg9Oz45T/aIGs1qbVAsEFo3nA==} + dev: false + + /@emotion/styled/11.10.5_jrh5enlbqfbnumycmktdqgd6se: + resolution: {integrity: sha512-8EP6dD7dMkdku2foLoruPCNkRevzdcBaY6q0l0OsbyJK+x8D9HWjX27ARiSIKNF634hY9Zdoedh8bJCiva8yZw==} + peerDependencies: + '@babel/core': ^7.0.0 + '@emotion/react': ^11.0.0-rc.0 + '@types/react': '*' + react: '>=16.8.0' + peerDependenciesMeta: + '@babel/core': + optional: true + '@types/react': + optional: true + dependencies: + '@babel/runtime': 7.20.13 + '@emotion/babel-plugin': 11.10.5 + '@emotion/is-prop-valid': 1.2.0 + '@emotion/react': 11.10.5_3stiutgnnbnfnf3uowm5cip22i + '@emotion/serialize': 1.1.1 + '@emotion/use-insertion-effect-with-fallbacks': 1.0.0_react@18.2.0 + '@emotion/utils': 1.2.0 + '@types/react': 18.0.27 + react: 18.2.0 + dev: false + + /@emotion/stylis/0.8.5: + resolution: {integrity: sha512-h6KtPihKFn3T9fuIrwvXXUOwlx3rfUvfZIcP5a6rh8Y7zjE3O06hT5Ss4S/YI1AYhuZ1kjaE/5EaOOI2NqSylQ==} + dev: false + + /@emotion/unitless/0.7.5: + resolution: {integrity: sha512-OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg==} + dev: false + + /@emotion/unitless/0.8.0: + resolution: {integrity: sha512-VINS5vEYAscRl2ZUDiT3uMPlrFQupiKgHz5AA4bCH1miKBg4qtwkim1qPmJj/4WG6TreYMY111rEFsjupcOKHw==} + dev: false + + /@emotion/use-insertion-effect-with-fallbacks/1.0.0_react@18.2.0: + resolution: {integrity: sha512-1eEgUGmkaljiBnRMTdksDV1W4kUnmwgp7X9G8B++9GYwl1lUdqSndSriIrTJ0N7LQaoauY9JJ2yhiOYK5+NI4A==} + peerDependencies: + react: '>=16.8.0' + dependencies: + react: 18.2.0 + dev: false + + /@emotion/utils/0.11.3: + resolution: {integrity: sha512-0o4l6pZC+hI88+bzuaX/6BgOvQVhbt2PfmxauVaYOGgbsAw14wdKyvMCZXnsnsHys94iadcF+RG/wZyx6+ZZBw==} + dev: false + + /@emotion/utils/1.2.0: + resolution: {integrity: sha512-sn3WH53Kzpw8oQ5mgMmIzzyAaH2ZqFEbozVVBSYp538E06OSE6ytOp7pRAjNQR+Q/orwqdQYJSe2m3hCOeznkw==} + dev: false + + /@emotion/weak-memoize/0.2.5: + resolution: {integrity: sha512-6U71C2Wp7r5XtFtQzYrW5iKFT67OixrSxjI4MptCHzdSVlgabczzqLe0ZSgnub/5Kp4hSbpDB1tMytZY9pwxxA==} + dev: false + + /@emotion/weak-memoize/0.3.0: + resolution: {integrity: sha512-AHPmaAx+RYfZz0eYu6Gviiagpmiyw98ySSlQvCUhVGDRtDFe4DBS0x1bSjdF3gqUDYOczB+yYvBTtEylYSdRhg==} + dev: false + + /@eslint/eslintrc/1.4.1: + resolution: {integrity: sha512-XXrH9Uarn0stsyldqDYq8r++mROmWRI1xKMXa640Bb//SY1+ECYX6VzT6Lcx5frD0V30XieqJ0oX9I2Xj5aoMA==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + dependencies: + ajv: 6.12.6 + debug: 4.3.4 + espree: 9.4.1 + globals: 13.20.0 + ignore: 5.2.4 + import-fresh: 3.3.0 + js-yaml: 4.1.0 + minimatch: 3.1.2 + strip-json-comments: 3.1.1 + transitivePeerDependencies: + - supports-color + dev: true + + /@humanwhocodes/config-array/0.11.8: + resolution: {integrity: sha512-UybHIJzJnR5Qc/MsD9Kr+RpO2h+/P1GhOwdiLPXK5TWk5sgTdu88bTD9UP+CKbPPh5Rni1u0GjAdYQLemG8g+g==} + engines: {node: '>=10.10.0'} + dependencies: + '@humanwhocodes/object-schema': 1.2.1 + debug: 4.3.4 + minimatch: 3.1.2 + transitivePeerDependencies: + - supports-color + dev: true + + /@humanwhocodes/module-importer/1.0.1: + resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} + engines: {node: '>=12.22'} + dev: true + + /@humanwhocodes/object-schema/1.2.1: + resolution: {integrity: sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==} + dev: true + + /@icons/material/0.2.4_react@18.2.0: + resolution: {integrity: sha512-QPcGmICAPbGLGb6F/yNf/KzKqvFx8z5qx3D1yFqVAjoFmXK35EgyW+cJ57Te3CNsmzblwtzakLGFqHPqrfb4Tw==} + peerDependencies: + react: '*' + dependencies: + react: 18.2.0 + dev: false + + /@mui/base/5.0.0-alpha.115_5ndqzdd6t4rivxsukjv3i3ak2q: + resolution: {integrity: sha512-OGQ84whT/yNYd6xKCGGS6MxqEfjVjk5esXM7HP6bB2Rim7QICUapxZt4nm8q39fpT08rNDkv3xPVqDDwRdRg1g==} + engines: {node: '>=12.0.0'} + peerDependencies: + '@types/react': ^17.0.0 || ^18.0.0 + react: ^17.0.0 || ^18.0.0 + react-dom: ^17.0.0 || ^18.0.0 + peerDependenciesMeta: + '@types/react': + optional: true + dependencies: + '@babel/runtime': 7.20.13 + '@emotion/is-prop-valid': 1.2.0 + '@mui/types': 7.2.3_@types+react@18.0.27 + '@mui/utils': 5.11.2_react@18.2.0 + '@popperjs/core': 2.11.6 + '@types/react': 18.0.27 + clsx: 1.2.1 + prop-types: 15.8.1 + react: 18.2.0 + react-dom: 18.2.0_react@18.2.0 + react-is: 18.2.0 + dev: false + + /@mui/core-downloads-tracker/5.11.6: + resolution: {integrity: sha512-lbD3qdafBOf2dlqKhOcVRxaPAujX+9UlPC6v8iMugMeAXe0TCgU3QbGXY3zrJsu6ex64WYDpH4y1+WOOBmWMuA==} + dev: false + + /@mui/icons-material/5.11.0_3stiutgnnbnfnf3uowm5cip22i: + resolution: {integrity: sha512-I2LaOKqO8a0xcLGtIozC9xoXjZAto5G5gh0FYUMAlbsIHNHIjn4Xrw9rvjY20vZonyiGrZNMAlAXYkY6JvhF6A==} + engines: {node: '>=12.0.0'} + peerDependencies: + '@mui/material': ^5.0.0 + '@types/react': ^17.0.0 || ^18.0.0 + react: ^17.0.0 || ^18.0.0 + peerDependenciesMeta: + '@types/react': + optional: true + dependencies: + '@babel/runtime': 7.20.13 + '@types/react': 18.0.27 + react: 18.2.0 + dev: false + + /@mui/icons-material/5.11.0_j5wvuqirnhynb4halegp2mqooy: + resolution: {integrity: sha512-I2LaOKqO8a0xcLGtIozC9xoXjZAto5G5gh0FYUMAlbsIHNHIjn4Xrw9rvjY20vZonyiGrZNMAlAXYkY6JvhF6A==} + engines: {node: '>=12.0.0'} + peerDependencies: + '@mui/material': ^5.0.0 + '@types/react': ^17.0.0 || ^18.0.0 + react: ^17.0.0 || ^18.0.0 + peerDependenciesMeta: + '@types/react': + optional: true + dependencies: + '@babel/runtime': 7.20.13 + '@mui/material': 5.11.6_rqh7qj4464ntrqrt6banhaqg4q + '@types/react': 18.0.27 + react: 18.2.0 + dev: false + + /@mui/material/5.11.6_rqh7qj4464ntrqrt6banhaqg4q: + resolution: {integrity: sha512-MzkkL5KC2PCkFiv8cLpkzgLUPXSrAtnvJBR0emV7mLVWbkwV3n5832vjBx154B6R032fHjFTziTh7YEb50nK6Q==} + engines: {node: '>=12.0.0'} + peerDependencies: + '@emotion/react': ^11.5.0 + '@emotion/styled': ^11.3.0 + '@types/react': ^17.0.0 || ^18.0.0 + react: ^17.0.0 || ^18.0.0 + react-dom: ^17.0.0 || ^18.0.0 + peerDependenciesMeta: + '@emotion/react': + optional: true + '@emotion/styled': + optional: true + '@types/react': + optional: true + dependencies: + '@babel/runtime': 7.20.13 + '@emotion/react': 11.10.5_3stiutgnnbnfnf3uowm5cip22i + '@emotion/styled': 11.10.5_jrh5enlbqfbnumycmktdqgd6se + '@mui/base': 5.0.0-alpha.115_5ndqzdd6t4rivxsukjv3i3ak2q + '@mui/core-downloads-tracker': 5.11.6 + '@mui/system': 5.11.5_gzalmy7izvhol7vh4xfy3dq6ua + '@mui/types': 7.2.3_@types+react@18.0.27 + '@mui/utils': 5.11.2_react@18.2.0 + '@types/react': 18.0.27 + '@types/react-transition-group': 4.4.5 + clsx: 1.2.1 + csstype: 3.1.1 + prop-types: 15.8.1 + react: 18.2.0 + react-dom: 18.2.0_react@18.2.0 + react-is: 18.2.0 + react-transition-group: 4.4.5_biqbaboplfbrettd7655fr4n2y + dev: false + + /@mui/private-theming/5.11.2_3stiutgnnbnfnf3uowm5cip22i: + resolution: {integrity: sha512-qZwMaqRFPwlYmqwVKblKBGKtIjJRAj3nsvX93pOmatsXyorW7N/0IPE/swPgz1VwChXhHO75DwBEx8tB+aRMNg==} + engines: {node: '>=12.0.0'} + peerDependencies: + '@types/react': ^17.0.0 || ^18.0.0 + react: ^17.0.0 || ^18.0.0 + peerDependenciesMeta: + '@types/react': + optional: true + dependencies: + '@babel/runtime': 7.20.13 + '@mui/utils': 5.11.2_react@18.2.0 + '@types/react': 18.0.27 + prop-types: 15.8.1 + react: 18.2.0 + dev: false + + /@mui/styled-engine/5.11.0_dovxhg2tvkkxkdnqyoum6wzcxm: + resolution: {integrity: sha512-AF06K60Zc58qf0f7X+Y/QjaHaZq16znliLnGc9iVrV/+s8Ln/FCoeNuFvhlCbZZQ5WQcJvcy59zp0nXrklGGPQ==} + engines: {node: '>=12.0.0'} + peerDependencies: + '@emotion/react': ^11.4.1 + '@emotion/styled': ^11.3.0 + react: ^17.0.0 || ^18.0.0 + peerDependenciesMeta: + '@emotion/react': + optional: true + '@emotion/styled': + optional: true + dependencies: + '@babel/runtime': 7.20.13 + '@emotion/cache': 11.10.5 + '@emotion/react': 11.10.5_3stiutgnnbnfnf3uowm5cip22i + '@emotion/styled': 11.10.5_jrh5enlbqfbnumycmktdqgd6se + csstype: 3.1.1 + prop-types: 15.8.1 + react: 18.2.0 + dev: false + + /@mui/system/5.11.5_gzalmy7izvhol7vh4xfy3dq6ua: + resolution: {integrity: sha512-KNVsJ0sgRRp2XBqhh4wPS5aacteqjwxgiYTVwVnll2fgkgunZKo3DsDiGMrFlCg25ZHA3Ax58txWGE9w58zp0w==} + engines: {node: '>=12.0.0'} + peerDependencies: + '@emotion/react': ^11.5.0 + '@emotion/styled': ^11.3.0 + '@types/react': ^17.0.0 || ^18.0.0 + react: ^17.0.0 || ^18.0.0 + peerDependenciesMeta: + '@emotion/react': + optional: true + '@emotion/styled': + optional: true + '@types/react': + optional: true + dependencies: + '@babel/runtime': 7.20.13 + '@emotion/react': 11.10.5_3stiutgnnbnfnf3uowm5cip22i + '@emotion/styled': 11.10.5_jrh5enlbqfbnumycmktdqgd6se + '@mui/private-theming': 5.11.2_3stiutgnnbnfnf3uowm5cip22i + '@mui/styled-engine': 5.11.0_dovxhg2tvkkxkdnqyoum6wzcxm + '@mui/types': 7.2.3_@types+react@18.0.27 + '@mui/utils': 5.11.2_react@18.2.0 + '@types/react': 18.0.27 + clsx: 1.2.1 + csstype: 3.1.1 + prop-types: 15.8.1 + react: 18.2.0 + dev: false + + /@mui/types/7.2.3_@types+react@18.0.27: + resolution: {integrity: sha512-tZ+CQggbe9Ol7e/Fs5RcKwg/woU+o8DCtOnccX6KmbBc7YrfqMYEYuaIcXHuhpT880QwNkZZ3wQwvtlDFA2yOw==} + peerDependencies: + '@types/react': '*' + peerDependenciesMeta: + '@types/react': + optional: true + dependencies: + '@types/react': 18.0.27 + dev: false + + /@mui/utils/5.11.2_react@18.2.0: + resolution: {integrity: sha512-AyizuHHlGdAtH5hOOXBW3kriuIwUIKUIgg0P7LzMvzf6jPhoQbENYqY6zJqfoZ7fAWMNNYT8mgN5EftNGzwE2w==} + engines: {node: '>=12.0.0'} + peerDependencies: + react: ^17.0.0 || ^18.0.0 + dependencies: + '@babel/runtime': 7.20.13 + '@types/prop-types': 15.7.5 + '@types/react-is': 17.0.3 + prop-types: 15.8.1 + react: 18.2.0 + react-is: 18.2.0 + dev: false + + /@next/env/13.1.2: + resolution: {integrity: sha512-PpT4UZIX66VMTqXt4HKEJ+/PwbS+tWmmhZlazaws1a+dbUA5pPdjntQ46Jvj616i3ZKN9doS9LHx3y50RLjAWg==} + dev: false + + /@next/eslint-plugin-next/13.1.2: + resolution: {integrity: sha512-WGaNVvIYphdriesP6r7jq/8l7u38tzotnVQuxc1RYKLqYYApSsrebti3OCPoT3Gx0pw2smPIFHH98RzcsgW5GQ==} + dependencies: + glob: 7.1.7 + dev: true + + /@next/swc-android-arm-eabi/13.1.2: + resolution: {integrity: sha512-7mRz1owoGsbfIcdOJA3kk7KEwPZ+OvVT1z9DkR/yru4QdVLF69h/1SHy0vlUNQMxDRllabhxCfkoZCB34GOGAg==} + engines: {node: '>= 10'} + cpu: [arm] + os: [android] + requiresBuild: true + dev: false + optional: true + + /@next/swc-android-arm64/13.1.2: + resolution: {integrity: sha512-mgjZ2eJSayovQm1LcE54BLSI4jjnnnLtq5GY5g+DdPuUiCT644gKtjZ/w2BQvuIecCqqBO+Ph9yzo/wUTq7NLg==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [android] + requiresBuild: true + dev: false + optional: true + + /@next/swc-darwin-arm64/13.1.2: + resolution: {integrity: sha512-RikoQqy109r2222UJlyGs4dZw2BibkfPqpeFdW5JEGv+L2PStlHID8DwyVYbmHfQ0VIBGvbf/NAUtFakAWlhwg==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [darwin] + requiresBuild: true + dev: false + optional: true + + /@next/swc-darwin-x64/13.1.2: + resolution: {integrity: sha512-JbDZjaTvL8gyPC5TAH6OnD4jmXPkyUxRYPvu08ZmhT/XAFBb/Cso0BdXyDax/BPCG70mimP9d3hXNKNq+A0VtQ==} + engines: {node: '>= 10'} + cpu: [x64] + os: [darwin] + requiresBuild: true + dev: false + optional: true + + /@next/swc-freebsd-x64/13.1.2: + resolution: {integrity: sha512-ax4j8VrdFQ/xc3W7Om0u1vnDxVApQHKsChBbAMynCrnycZmpbqK4MZu4ZkycT+mx2eccCiqZROpbzDbEdPosEw==} + engines: {node: '>= 10'} + cpu: [x64] + os: [freebsd] + requiresBuild: true + dev: false + optional: true + + /@next/swc-linux-arm-gnueabihf/13.1.2: + resolution: {integrity: sha512-NcRHTesnCxnUvSJa637PQJffBBkmqi5XS/xVWGY7dI6nyJ+pC96Oj7kd+mcjnFUQI5lHKbg39qBWKtOzbezc4w==} + engines: {node: '>= 10'} + cpu: [arm] + os: [linux] + requiresBuild: true + dev: false + optional: true + + /@next/swc-linux-arm64-gnu/13.1.2: + resolution: {integrity: sha512-AxJdjocLtPrsBY4P2COSBIc3crT5bpjgGenNuINoensOlXhBkYM0aRDYZdydwXOhG+kN2ngUvfgitop9pa204w==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: false + optional: true + + /@next/swc-linux-arm64-musl/13.1.2: + resolution: {integrity: sha512-JmNimDkcCRq7P5zpkdqeaSZ69qKDntEPtyIaMNWqy5M0WUJxGim0Fs6Qzxayiyvuuh9Guxks4woQ/j/ZvX/c8Q==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: false + optional: true + + /@next/swc-linux-x64-gnu/13.1.2: + resolution: {integrity: sha512-TsLsjZwUlgmvI42neTuIoD6K9RlXCUzqPtvIClgXxVO0um0DiZwK+M+0zX/uVXhMVphfPY2c5YeR1zFSIONY4A==} + engines: {node: '>= 10'} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: false + optional: true + + /@next/swc-linux-x64-musl/13.1.2: + resolution: {integrity: sha512-eSkyXgCXydEFPTkcncQOGepafedPte6JT/OofB9uvruucrrMVBagCASOuPxodWEMrlfEKSXVnExMKIlfmQMD7A==} + engines: {node: '>= 10'} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: false + optional: true + + /@next/swc-win32-arm64-msvc/13.1.2: + resolution: {integrity: sha512-DmXFaRTgt2KrV9dmRLifDJE+cYiutHVFIw5/C9BtnwXH39uf3YbPxeD98vNrtqqqZVVLXY/1ySaSIwzYnqeY9g==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [win32] + requiresBuild: true + dev: false + optional: true + + /@next/swc-win32-ia32-msvc/13.1.2: + resolution: {integrity: sha512-3+nBkuFs/wT+lmRVQNH5SyDT7I4vUlNPntosEaEP63FuYQdPLaxz0GvcR66MdFSFh2fsvazpe4wciOwVS4FItQ==} + engines: {node: '>= 10'} + cpu: [ia32] + os: [win32] + requiresBuild: true + dev: false + optional: true + + /@next/swc-win32-x64-msvc/13.1.2: + resolution: {integrity: sha512-avsyveEvcvH42PvKjR4Pb8JlLttuGURr2H3ZhS2b85pHOiZ7yjH3rMUoGnNzuLMApyxYaCvd4MedPrLhnNhkog==} + engines: {node: '>= 10'} + cpu: [x64] + os: [win32] + requiresBuild: true + dev: false + optional: true + + /@nodelib/fs.scandir/2.1.5: + resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} + engines: {node: '>= 8'} + dependencies: + '@nodelib/fs.stat': 2.0.5 + run-parallel: 1.2.0 + dev: true + + /@nodelib/fs.stat/2.0.5: + resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} + engines: {node: '>= 8'} + dev: true + + /@nodelib/fs.walk/1.2.8: + resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} + engines: {node: '>= 8'} + dependencies: + '@nodelib/fs.scandir': 2.1.5 + fastq: 1.15.0 + dev: true + + /@pkgr/utils/2.3.1: + resolution: {integrity: sha512-wfzX8kc1PMyUILA+1Z/EqoE4UCXGy0iRGMhPwdfae1+f0OXlLqCk+By+aMzgJBzR9AzS4CDizioG6Ss1gvAFJw==} + engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0} + dependencies: + cross-spawn: 7.0.3 + is-glob: 4.0.3 + open: 8.4.0 + picocolors: 1.0.0 + tiny-glob: 0.2.9 + tslib: 2.5.0 + dev: true + + /@popperjs/core/2.11.6: + resolution: {integrity: sha512-50/17A98tWUfQ176raKiOGXuYpLyyVMkxxG6oylzL3BPOlA6ADGdK7EYunSa4I064xerltq9TGXs8HmOk5E+vw==} + dev: false + + /@prisma/client/4.9.0_prisma@4.9.0: + resolution: {integrity: sha512-bz6QARw54sWcbyR1lLnF2QHvRW5R/Jxnbbmwh3u+969vUKXtBkXgSgjDA85nji31ZBlf7+FrHDy5x+5ydGyQDg==} + engines: {node: '>=14.17'} + requiresBuild: true + peerDependencies: + prisma: '*' + peerDependenciesMeta: + prisma: + optional: true + dependencies: + '@prisma/engines-version': 4.9.0-42.ceb5c99003b99c9ee2c1d2e618e359c14aef2ea5 + prisma: 4.9.0 + dev: false + + /@prisma/engines-version/4.9.0-42.ceb5c99003b99c9ee2c1d2e618e359c14aef2ea5: + resolution: {integrity: sha512-M16aibbxi/FhW7z1sJCX8u+0DriyQYY5AyeTH7plQm9MLnURoiyn3CZBqAyIoQ+Z1pS77usCIibYJWSgleBMBA==} + dev: false + + /@prisma/engines/4.9.0: + resolution: {integrity: sha512-t1pt0Gsp+HcgPJrHFc+d/ZSAaKKWar2G/iakrE07yeKPNavDP3iVKPpfXP22OTCHZUWf7OelwKJxQgKAm5hkgw==} + requiresBuild: true + + /@react-dnd/asap/4.0.1: + resolution: {integrity: sha512-kLy0PJDDwvwwTXxqTFNAAllPHD73AycE9ypWeln/IguoGBEbvFcPDbCV03G52bEcC5E+YgupBE0VzHGdC8SIXg==} + dev: false + + /@react-dnd/invariant/3.0.1: + resolution: {integrity: sha512-blqduwV86oiKw2Gr44wbe3pj3Z/OsXirc7ybCv9F/pLAR+Aih8F3rjeJzK0ANgtYKv5lCpkGVoZAeKitKDaD/g==} + dev: false + + /@react-dnd/shallowequal/3.0.1: + resolution: {integrity: sha512-XjDVbs3ZU16CO1h5Q3Ew2RPJqmZBDE/EVf1LYp6ePEffs3V/MX9ZbL5bJr8qiK5SbGmUMuDoaFgyKacYz8prRA==} + dev: false + + /@react-page/editor/5.3.11_dzriung6lmr2oo5om3r73hnblq: + resolution: {integrity: sha512-9XaSMfSXssFDLXah0gcXUnKMGzgeCT/W662tm/i5iecNzPL7Rplxp5tGKcTzGNjtHGt0EGwoM2hROgY+wHa9Jw==} + peerDependencies: + react: '>= 16.14' + react-dom: '>= 16.14' + dependencies: + '@mui/icons-material': 5.11.0_j5wvuqirnhynb4halegp2mqooy + '@mui/material': 5.11.6_rqh7qj4464ntrqrt6banhaqg4q + '@welldone-software/why-did-you-render': 7.0.1_react@18.2.0 + ajv: 7.2.4 + classnames: 2.3.2 + color-parse: 1.4.2 + fast-deep-equal: 3.1.3 + invariant: 2.2.4 + is-hotkey: 0.2.0 + lodash.debounce: 4.0.8 + lodash.flatten: 4.4.0 + lodash.throttle: 4.1.1 + react: 18.2.0 + react-color: 2.19.3_react@18.2.0 + react-dnd: 15.1.2_h5q4hm4i2eggm7qg7xpzfdcdgq + react-dnd-html5-backend: 15.1.3 + react-dom: 18.2.0_react@18.2.0 + react-draggable: 4.4.5_biqbaboplfbrettd7655fr4n2y + react-lazy-with-preload: 2.2.1 + react-portal: 4.2.2_biqbaboplfbrettd7655fr4n2y + react-redux: 7.2.9_biqbaboplfbrettd7655fr4n2y + react-use: 17.4.0_biqbaboplfbrettd7655fr4n2y + redux: 4.2.0 + redux-thunk: 2.4.2_redux@4.2.0 + redux-undo: 1.0.1 + tslib: 2.5.0 + uniforms: 3.10.2_react@18.2.0 + uniforms-bridge-json-schema: 3.10.2_react@18.2.0 + transitivePeerDependencies: + - '@emotion/react' + - '@emotion/styled' + - '@types/hoist-non-react-statics' + - '@types/node' + - '@types/react' + - react-native + dev: false + + /@react-page/plugins-image/5.3.11_dzriung6lmr2oo5om3r73hnblq: + resolution: {integrity: sha512-bQH7E6v7jiQ1d1bwQe62VyeOPZOVkhylbnk+yBeURSVJMBR3NBSDtpDDBLA/mVSl03gO++6Znse7m3OBkcHiWQ==} + peerDependencies: + '@mui/material': '*' + react: '>= 16.14' + react-dom: '>= 16.14' + dependencies: + '@mui/icons-material': 5.11.0_3stiutgnnbnfnf3uowm5cip22i + '@react-page/editor': 5.3.11_dzriung6lmr2oo5om3r73hnblq + react: 18.2.0 + react-dom: 18.2.0_react@18.2.0 + transitivePeerDependencies: + - '@emotion/react' + - '@emotion/styled' + - '@types/hoist-non-react-statics' + - '@types/node' + - '@types/react' + - react-native + dev: false + + /@react-page/plugins-slate/5.3.11_dzriung6lmr2oo5om3r73hnblq: + resolution: {integrity: sha512-rsCY04AwIVtwl61puLIey/RFH8FgKmBcKScVVG9g6xNCl+64uLG/jJM0diqVo7NFPjCCFyBn1QyOw1YPPbNolw==} + peerDependencies: + '@mui/material': '*' + '@types/react': '*' + react: '>= 16.14' + react-dom: '>= 16.14' + dependencies: + '@emotion/is-prop-valid': 1.2.0 + '@mui/icons-material': 5.11.0_3stiutgnnbnfnf3uowm5cip22i + '@react-page/editor': 5.3.11_dzriung6lmr2oo5om3r73hnblq + '@types/react': 18.0.27 + '@xmldom/xmldom': 0.8.6 + cssstyle: 2.3.0 + deep-rename-keys: 0.2.1 + is-hotkey: 0.2.0 + lodash.clonedeep: 4.5.0 + lodash.debounce: 4.0.8 + lodash.flatten: 4.4.0 + lodash.isempty: 4.4.0 + lodash.isobject: 3.0.2 + lodash.throttle: 4.1.1 + react: 18.2.0 + react-dom: 18.2.0_react@18.2.0 + react-portal: 4.2.2_biqbaboplfbrettd7655fr4n2y + redux-undo: 1.0.1 + slate: 0.78.0 + slate-hyperscript: 0.77.0_slate@0.78.0 + slate-react: 0.79.0_6ju7s5epj2rvc7lvaohr2as5hq + slate-react-presentation: 0.1.1_react@18.2.0 + transitivePeerDependencies: + - '@emotion/react' + - '@emotion/styled' + - '@types/hoist-non-react-statics' + - '@types/node' + - react-native + dev: false + + /@rushstack/eslint-patch/1.2.0: + resolution: {integrity: sha512-sXo/qW2/pAcmT43VoRKOJbDOfV3cYpq3szSVfIThQXNt+E4DfKj361vaAt3c88U5tPUxzEswam7GW48PJqtKAg==} + dev: true + + /@swc/helpers/0.4.14: + resolution: {integrity: sha512-4C7nX/dvpzB7za4Ql9K81xK3HPxCpHMgwTZVyf+9JQ6VUbn9jjZVN7/Nkdz/Ugzs2CSjqnL/UPXroiVBVHUWUw==} + dependencies: + tslib: 2.5.0 + dev: false + + /@tanstack/query-core/4.22.4: + resolution: {integrity: sha512-t79CMwlbBnj+yL82tEcmRN93bL4U3pae2ota4t5NN2z3cIeWw74pzdWrKRwOfTvLcd+b30tC+ciDlfYOKFPGUw==} + dev: false + + /@tanstack/react-query/4.23.0_biqbaboplfbrettd7655fr4n2y: + resolution: {integrity: sha512-cfQsrecZQjYYueiow4WcK8ItokXJnv+b2OrK8Lf5kF7lM9uCo1ilyygFB8wo4MfxchUBVM6Cs8wq4Ed7fouwkA==} + peerDependencies: + react: ^16.8.0 || ^17.0.0 || ^18.0.0 + react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 + react-native: '*' + peerDependenciesMeta: + react-dom: + optional: true + react-native: + optional: true + dependencies: + '@tanstack/query-core': 4.22.4 + react: 18.2.0 + react-dom: 18.2.0_react@18.2.0 + use-sync-external-store: 1.2.0_react@18.2.0 + dev: false + + /@trpc/client/10.9.0_@trpc+server@10.9.0: + resolution: {integrity: sha512-id6318qpgqllNOuBp7nuciXFPXCe+zae5d4r1hze6Eyp5fFFNO58TqA+4Q44KIcHgpfWyW2egs6iPeql3PrdKA==} + peerDependencies: + '@trpc/server': 10.9.0 + dependencies: + '@trpc/server': 10.9.0 + dev: false + + /@trpc/next/10.9.0_agcdofckp5bsojf5gpkxjg6zzq: + resolution: {integrity: sha512-h/W8VHMki/fw7vHNMs1Ku7bLqccjpiKCE1wkqbvHfBOO1ARDmarRbuK6dLqJilip/f7jkFXcrxwB+eNgK4+6Wg==} + peerDependencies: + '@tanstack/react-query': ^4.3.8 + '@trpc/client': 10.9.0 + '@trpc/react-query': ^10.8.0 + '@trpc/server': 10.9.0 + next: '*' + react: '>=16.8.0' + react-dom: '>=16.8.0' + dependencies: + '@tanstack/react-query': 4.23.0_biqbaboplfbrettd7655fr4n2y + '@trpc/client': 10.9.0_@trpc+server@10.9.0 + '@trpc/react-query': 10.9.0_22wgxldzdfxutowffn2dykkd3i + '@trpc/server': 10.9.0 + next: 13.1.2_biqbaboplfbrettd7655fr4n2y + react: 18.2.0 + react-dom: 18.2.0_react@18.2.0 + react-ssr-prepass: 1.5.0_react@18.2.0 + dev: false + + /@trpc/react-query/10.9.0_22wgxldzdfxutowffn2dykkd3i: + resolution: {integrity: sha512-I7xtdFj/AETwc9HfY2bGxKINij39r26LvfIiTBfz2pBj1ELrcgucWmPeI2eS6pon/uI1E9Nqa6fQCg/zkg764Q==} + peerDependencies: + '@tanstack/react-query': ^4.3.8 + '@trpc/client': 10.9.0 + '@trpc/server': 10.9.0 + react: '>=16.8.0' + react-dom: '>=16.8.0' + dependencies: + '@tanstack/react-query': 4.23.0_biqbaboplfbrettd7655fr4n2y + '@trpc/client': 10.9.0_@trpc+server@10.9.0 + '@trpc/server': 10.9.0 + react: 18.2.0 + react-dom: 18.2.0_react@18.2.0 + dev: false + + /@trpc/server/10.9.0: + resolution: {integrity: sha512-5psyZgbvy29pJND32hwkWTMbv6s86IbsPOeDopsgNF0VegZT6Dsijmb7Ub/TDhuJVQVq5u4u5briMXi3SxmBkw==} + dev: false + + /@types/hoist-non-react-statics/3.3.1: + resolution: {integrity: sha512-iMIqiko6ooLrTh1joXodJK5X9xeEALT1kM5G3ZLhD3hszxBdIEd5C75U834D9mLcINgD4OyZf5uQXjkuYydWvA==} + dependencies: + '@types/react': 18.0.27 + hoist-non-react-statics: 3.3.2 + dev: false + + /@types/is-hotkey/0.1.7: + resolution: {integrity: sha512-yB5C7zcOM7idwYZZ1wKQ3pTfjA9BbvFqRWvKB46GFddxnJtHwi/b9y84ykQtxQPg5qhdpg4Q/kWU3EGoCTmLzQ==} + dev: false + + /@types/js-cookie/2.2.7: + resolution: {integrity: sha512-aLkWa0C0vO5b4Sr798E26QgOkss68Un0bLjs7u9qxzPT5CG+8DuNTffWES58YzJs3hrVAOs1wonycqEBqNJubA==} + dev: false + + /@types/json-schema/7.0.11: + resolution: {integrity: sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==} + dev: true + + /@types/json5/0.0.29: + resolution: {integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==} + dev: true + + /@types/lodash/4.14.191: + resolution: {integrity: sha512-BdZ5BCCvho3EIXw6wUCXHe7rS53AIDPLE+JzwgT+OsJk53oBfbSmZZ7CX4VaRoN78N+TJpFi9QPlfIVNmJYWxQ==} + dev: false + + /@types/node/18.11.18: + resolution: {integrity: sha512-DHQpWGjyQKSHj3ebjFI/wRKcqQcdR+MoFBygntYOZytCqNfkd2ZC4ARDJ2DQqhjH5p85Nnd3jhUJIXrszFX/JA==} + + /@types/parse-json/4.0.0: + resolution: {integrity: sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==} + dev: false + + /@types/prettier/2.7.2: + resolution: {integrity: sha512-KufADq8uQqo1pYKVIYzfKbJfBAc0sOeXqGbFaSpv8MRmC/zXgowNZmFcbngndGk922QDmOASEXUZCaY48gs4cg==} + dev: true + + /@types/prop-types/15.7.5: + resolution: {integrity: sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==} + + /@types/react-dom/18.0.10: + resolution: {integrity: sha512-E42GW/JA4Qv15wQdqJq8DL4JhNpB3prJgjgapN3qJT9K2zO5IIAQh4VXvCEDupoqAwnz0cY4RlXeC/ajX5SFHg==} + dependencies: + '@types/react': 18.0.27 + dev: true + + /@types/react-is/17.0.3: + resolution: {integrity: sha512-aBTIWg1emtu95bLTLx0cpkxwGW3ueZv71nE2YFBpL8k/z5czEW8yYpOo8Dp+UUAFAtKwNaOsh/ioSeQnWlZcfw==} + dependencies: + '@types/react': 18.0.27 + dev: false + + /@types/react-redux/7.1.25: + resolution: {integrity: sha512-bAGh4e+w5D8dajd6InASVIyCo4pZLJ66oLb80F9OBLO1gKESbZcRCJpTT6uLXX+HAB57zw1WTdwJdAsewuTweg==} + dependencies: + '@types/hoist-non-react-statics': 3.3.1 + '@types/react': 18.0.27 + hoist-non-react-statics: 3.3.2 + redux: 4.2.0 + dev: false + + /@types/react-transition-group/4.4.5: + resolution: {integrity: sha512-juKD/eiSM3/xZYzjuzH6ZwpP+/lejltmiS3QEzV/vmb/Q8+HfDmxu+Baga8UEMGBqV88Nbg4l2hY/K2DkyaLLA==} + dependencies: + '@types/react': 18.0.27 + dev: false + + /@types/react/18.0.27: + resolution: {integrity: sha512-3vtRKHgVxu3Jp9t718R9BuzoD4NcQ8YJ5XRzsSKxNDiDonD2MXIT1TmSkenxuCycZJoQT5d2vE8LwWJxBC1gmA==} + dependencies: + '@types/prop-types': 15.7.5 + '@types/scheduler': 0.16.2 + csstype: 3.1.1 + + /@types/scheduler/0.16.2: + resolution: {integrity: sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew==} + + /@types/semver/7.3.13: + resolution: {integrity: sha512-21cFJr9z3g5dW8B0CVI9g2O9beqaThGQ6ZFBqHfwhzLDKUxaqTIy3vnfah/UPkfOiF2pLq+tGz+W8RyCskuslw==} + dev: true + + /@typescript-eslint/eslint-plugin/5.49.0_iu322prlnwsygkcra5kbpy22si: + resolution: {integrity: sha512-IhxabIpcf++TBaBa1h7jtOWyon80SXPRLDq0dVz5SLFC/eW6tofkw/O7Ar3lkx5z5U6wzbKDrl2larprp5kk5Q==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + '@typescript-eslint/parser': ^5.0.0 + eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + dependencies: + '@typescript-eslint/parser': 5.49.0_7uibuqfxkfaozanbtbziikiqje + '@typescript-eslint/scope-manager': 5.49.0 + '@typescript-eslint/type-utils': 5.49.0_7uibuqfxkfaozanbtbziikiqje + '@typescript-eslint/utils': 5.49.0_7uibuqfxkfaozanbtbziikiqje + debug: 4.3.4 + eslint: 8.32.0 + ignore: 5.2.4 + natural-compare-lite: 1.4.0 + regexpp: 3.2.0 + semver: 7.3.8 + tsutils: 3.21.0_typescript@4.9.4 + typescript: 4.9.4 + transitivePeerDependencies: + - supports-color + dev: true + + /@typescript-eslint/parser/5.49.0_7uibuqfxkfaozanbtbziikiqje: + resolution: {integrity: sha512-veDlZN9mUhGqU31Qiv2qEp+XrJj5fgZpJ8PW30sHU+j/8/e5ruAhLaVDAeznS7A7i4ucb/s8IozpDtt9NqCkZg==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + dependencies: + '@typescript-eslint/scope-manager': 5.49.0 + '@typescript-eslint/types': 5.49.0 + '@typescript-eslint/typescript-estree': 5.49.0_typescript@4.9.4 + debug: 4.3.4 + eslint: 8.32.0 + typescript: 4.9.4 + transitivePeerDependencies: + - supports-color + dev: true + + /@typescript-eslint/scope-manager/5.49.0: + resolution: {integrity: sha512-clpROBOiMIzpbWNxCe1xDK14uPZh35u4QaZO1GddilEzoCLAEz4szb51rBpdgurs5k2YzPtJeTEN3qVbG+LRUQ==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + dependencies: + '@typescript-eslint/types': 5.49.0 + '@typescript-eslint/visitor-keys': 5.49.0 + dev: true + + /@typescript-eslint/type-utils/5.49.0_7uibuqfxkfaozanbtbziikiqje: + resolution: {integrity: sha512-eUgLTYq0tR0FGU5g1YHm4rt5H/+V2IPVkP0cBmbhRyEmyGe4XvJ2YJ6sYTmONfjmdMqyMLad7SB8GvblbeESZA==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: '*' + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + dependencies: + '@typescript-eslint/typescript-estree': 5.49.0_typescript@4.9.4 + '@typescript-eslint/utils': 5.49.0_7uibuqfxkfaozanbtbziikiqje + debug: 4.3.4 + eslint: 8.32.0 + tsutils: 3.21.0_typescript@4.9.4 + typescript: 4.9.4 + transitivePeerDependencies: + - supports-color + dev: true + + /@typescript-eslint/types/5.49.0: + resolution: {integrity: sha512-7If46kusG+sSnEpu0yOz2xFv5nRz158nzEXnJFCGVEHWnuzolXKwrH5Bsf9zsNlOQkyZuk0BZKKoJQI+1JPBBg==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + dev: true + + /@typescript-eslint/typescript-estree/5.49.0_typescript@4.9.4: + resolution: {integrity: sha512-PBdx+V7deZT/3GjNYPVQv1Nc0U46dAHbIuOG8AZ3on3vuEKiPDwFE/lG1snN2eUB9IhF7EyF7K1hmTcLztNIsA==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + dependencies: + '@typescript-eslint/types': 5.49.0 + '@typescript-eslint/visitor-keys': 5.49.0 + debug: 4.3.4 + globby: 11.1.0 + is-glob: 4.0.3 + semver: 7.3.8 + tsutils: 3.21.0_typescript@4.9.4 + typescript: 4.9.4 + transitivePeerDependencies: + - supports-color + dev: true + + /@typescript-eslint/utils/5.49.0_7uibuqfxkfaozanbtbziikiqje: + resolution: {integrity: sha512-cPJue/4Si25FViIb74sHCLtM4nTSBXtLx1d3/QT6mirQ/c65bV8arBEebBJJizfq8W2YyMoPI/WWPFWitmNqnQ==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 + dependencies: + '@types/json-schema': 7.0.11 + '@types/semver': 7.3.13 + '@typescript-eslint/scope-manager': 5.49.0 + '@typescript-eslint/types': 5.49.0 + '@typescript-eslint/typescript-estree': 5.49.0_typescript@4.9.4 + eslint: 8.32.0 + eslint-scope: 5.1.1 + eslint-utils: 3.0.0_eslint@8.32.0 + semver: 7.3.8 + transitivePeerDependencies: + - supports-color + - typescript + dev: true + + /@typescript-eslint/visitor-keys/5.49.0: + resolution: {integrity: sha512-v9jBMjpNWyn8B6k/Mjt6VbUS4J1GvUlR4x3Y+ibnP1z7y7V4n0WRz+50DY6+Myj0UaXVSuUlHohO+eZ8IJEnkg==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + dependencies: + '@typescript-eslint/types': 5.49.0 + eslint-visitor-keys: 3.3.0 + dev: true + + /@welldone-software/why-did-you-render/7.0.1_react@18.2.0: + resolution: {integrity: sha512-Qe/8Xxa2G+LMdI6VoazescPzjjkHYduCDa8aHOJR50e9Bgs8ihkfMBY+ev7B4oc3N59Zm547Sgjf8h5y0FOyoA==} + peerDependencies: + react: ^16 || ^17 || ^18 + dependencies: + lodash: 4.17.21 + react: 18.2.0 + dev: false + + /@xmldom/xmldom/0.8.6: + resolution: {integrity: sha512-uRjjusqpoqfmRkTaNuLJ2VohVr67Q5YwDATW3VU7PfzTj6IRaihGrYI7zckGZjxQPBIp63nfvJbM+Yu5ICh0Bg==} + engines: {node: '>=10.0.0'} + dev: false + + /@xobotyi/scrollbar-width/1.9.5: + resolution: {integrity: sha512-N8tkAACJx2ww8vFMneJmaAgmjAG1tnVBZJRLRcx061tmsLRZHSEZSLuGWnwPtunsSLvSqXQ2wfp7Mgqg1I+2dQ==} + dev: false + + /acorn-jsx/5.3.2_acorn@8.8.2: + resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} + peerDependencies: + acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 + dependencies: + acorn: 8.8.2 + dev: true + + /acorn-node/1.8.2: + resolution: {integrity: sha512-8mt+fslDufLYntIoPAaIMUe/lrbrehIiwmR3t2k9LljIzoigEPF27eLk2hy8zSGzmR/ogr7zbRKINMo1u0yh5A==} + dependencies: + acorn: 7.4.1 + acorn-walk: 7.2.0 + xtend: 4.0.2 + dev: true + + /acorn-walk/7.2.0: + resolution: {integrity: sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==} + engines: {node: '>=0.4.0'} + dev: true + + /acorn-walk/8.2.0: + resolution: {integrity: sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==} + engines: {node: '>=0.4.0'} + dev: false + + /acorn/7.4.1: + resolution: {integrity: sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==} + engines: {node: '>=0.4.0'} + hasBin: true + dev: true + + /acorn/8.8.2: + resolution: {integrity: sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==} + engines: {node: '>=0.4.0'} + hasBin: true + + /add/2.0.6: + resolution: {integrity: sha512-j5QzrmsokwWWp6kUcJQySpbG+xfOBqqKnup3OIk1pz+kB/80SLorZ9V8zHFLO92Lcd+hbvq8bT+zOGoPkmBV0Q==} + dev: false + + /ajv/6.12.6: + resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} + dependencies: + fast-deep-equal: 3.1.3 + fast-json-stable-stringify: 2.1.0 + json-schema-traverse: 0.4.1 + uri-js: 4.4.1 + dev: true + + /ajv/7.2.4: + resolution: {integrity: sha512-nBeQgg/ZZA3u3SYxyaDvpvDtgZ/EZPF547ARgZBrG9Bhu1vKDwAIjtIf+sDtJUKa2zOcEbmRLBRSyMraS/Oy1A==} + dependencies: + fast-deep-equal: 3.1.3 + json-schema-traverse: 1.0.0 + require-from-string: 2.0.2 + uri-js: 4.4.1 + dev: false + + /ansi-regex/5.0.1: + resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} + engines: {node: '>=8'} + dev: true + + /ansi-styles/3.2.1: + resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==} + engines: {node: '>=4'} + dependencies: + color-convert: 1.9.3 + dev: false + + /ansi-styles/4.3.0: + resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} + engines: {node: '>=8'} + dependencies: + color-convert: 2.0.1 + dev: true + + /anymatch/3.1.3: + resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} + engines: {node: '>= 8'} + dependencies: + normalize-path: 3.0.0 + picomatch: 2.3.1 + dev: true + + /arg/5.0.2: + resolution: {integrity: sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==} + dev: true + + /argparse/2.0.1: + resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} + dev: true + + /aria-query/5.1.3: + resolution: {integrity: sha512-R5iJ5lkuHybztUfuOAznmboyjWq8O6sqNqtK7CLOqdydi54VNbORp49mb14KbWgG1QD3JFO9hJdZ+y4KutfdOQ==} + dependencies: + deep-equal: 2.2.0 + dev: true + + /array-includes/3.1.6: + resolution: {integrity: sha512-sgTbLvL6cNnw24FnbaDyjmvddQ2ML8arZsgaJhoABMoplz/4QRhtrYS+alr1BUM1Bwp6dhx8vVCBSLG+StwOFw==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.2 + define-properties: 1.1.4 + es-abstract: 1.21.1 + get-intrinsic: 1.2.0 + is-string: 1.0.7 + dev: true + + /array-union/2.1.0: + resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} + engines: {node: '>=8'} + dev: true + + /array.prototype.flat/1.3.1: + resolution: {integrity: sha512-roTU0KWIOmJ4DRLmwKd19Otg0/mT3qPNt0Qb3GWW8iObuZXxrjB/pzn0R3hqpRSWg4HCwqx+0vwOnWnvlOyeIA==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.2 + define-properties: 1.1.4 + es-abstract: 1.21.1 + es-shim-unscopables: 1.0.0 + dev: true + + /array.prototype.flatmap/1.3.1: + resolution: {integrity: sha512-8UGn9O1FDVvMNB0UlLv4voxRMze7+FpHyF5mSMRjWHUMlpoDViniy05870VlxhfgTnLbpuwTzvD76MTtWxB/mQ==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.2 + define-properties: 1.1.4 + es-abstract: 1.21.1 + es-shim-unscopables: 1.0.0 + dev: true + + /array.prototype.tosorted/1.1.1: + resolution: {integrity: sha512-pZYPXPRl2PqWcsUs6LOMn+1f1532nEoPTYowBtqLwAW+W8vSVhkIGnmOX1t/UQjD6YGI0vcD2B1U7ZFGQH9jnQ==} + dependencies: + call-bind: 1.0.2 + define-properties: 1.1.4 + es-abstract: 1.21.1 + es-shim-unscopables: 1.0.0 + get-intrinsic: 1.2.0 + dev: true + + /ast-types-flow/0.0.7: + resolution: {integrity: sha512-eBvWn1lvIApYMhzQMsu9ciLfkBY499mFZlNqG+/9WR7PVlroQw0vG30cOQQbaKz3sCEc44TAOu2ykzqXSNnwag==} + dev: true + + /autoprefixer/10.4.13_postcss@8.4.21: + resolution: {integrity: sha512-49vKpMqcZYsJjwotvt4+h/BCjJVnhGwcLpDt5xkcaOG3eLrG/HUYLagrihYsQ+qrIBgIzX1Rw7a6L8I/ZA1Atg==} + engines: {node: ^10 || ^12 || >=14} + hasBin: true + peerDependencies: + postcss: ^8.1.0 + dependencies: + browserslist: 4.21.4 + caniuse-lite: 1.0.30001449 + fraction.js: 4.2.0 + normalize-range: 0.1.2 + picocolors: 1.0.0 + postcss: 8.4.21 + postcss-value-parser: 4.2.0 + dev: true + + /available-typed-arrays/1.0.5: + resolution: {integrity: sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==} + engines: {node: '>= 0.4'} + dev: true + + /axe-core/4.6.3: + resolution: {integrity: sha512-/BQzOX780JhsxDnPpH4ZiyrJAzcd8AfzFPkv+89veFSr1rcMjuq2JDCwypKaPeB6ljHp9KjXhPpjgCvQlWYuqg==} + engines: {node: '>=4'} + dev: true + + /axobject-query/3.1.1: + resolution: {integrity: sha512-goKlv8DZrK9hUh975fnHzhNIO4jUnFCfv/dszV5VwUGDFjI6vQ2VwoyjYjYNEbBE8AH87TduWP5uyDR1D+Iteg==} + dependencies: + deep-equal: 2.2.0 + dev: true + + /babel-plugin-emotion/10.2.2: + resolution: {integrity: sha512-SMSkGoqTbTyUTDeuVuPIWifPdUGkTk1Kf9BWRiXIOIcuyMfsdp2EjeiiFvOzX8NOBvEh/ypKYvUh2rkgAJMCLA==} + dependencies: + '@babel/helper-module-imports': 7.18.6 + '@emotion/hash': 0.8.0 + '@emotion/memoize': 0.7.4 + '@emotion/serialize': 0.11.16 + babel-plugin-macros: 2.8.0 + babel-plugin-syntax-jsx: 6.18.0 + convert-source-map: 1.9.0 + escape-string-regexp: 1.0.5 + find-root: 1.1.0 + source-map: 0.5.7 + dev: false + + /babel-plugin-macros/2.8.0: + resolution: {integrity: sha512-SEP5kJpfGYqYKpBrj5XU3ahw5p5GOHJ0U5ssOSQ/WBVdwkD2Dzlce95exQTs3jOVWPPKLBN2rlEWkCK7dSmLvg==} + dependencies: + '@babel/runtime': 7.20.13 + cosmiconfig: 6.0.0 + resolve: 1.22.1 + dev: false + + /babel-plugin-macros/3.1.0: + resolution: {integrity: sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg==} + engines: {node: '>=10', npm: '>=6'} + dependencies: + '@babel/runtime': 7.20.13 + cosmiconfig: 7.1.0 + resolve: 1.22.1 + dev: false + + /babel-plugin-syntax-jsx/6.18.0: + resolution: {integrity: sha512-qrPaCSo9c8RHNRHIotaufGbuOBN8rtdC4QrrFFc43vyWCCz7Kl7GL1PGaXtMGQZUXrkCjNEgxDfmAuAabr/rlw==} + dev: false + + /balanced-match/1.0.2: + resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} + dev: true + + /binary-extensions/2.2.0: + resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==} + engines: {node: '>=8'} + dev: true + + /brace-expansion/1.1.11: + resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} + dependencies: + balanced-match: 1.0.2 + concat-map: 0.0.1 + dev: true + + /braces/3.0.2: + resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==} + engines: {node: '>=8'} + dependencies: + fill-range: 7.0.1 + dev: true + + /browserslist/4.21.4: + resolution: {integrity: sha512-CBHJJdDmgjl3daYjN5Cp5kbTf1mUhZoS+beLklHIvkOWscs83YAhLlF3Wsh/lciQYAcbBJgTOD44VtG31ZM4Hw==} + engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} + hasBin: true + dependencies: + caniuse-lite: 1.0.30001449 + electron-to-chromium: 1.4.284 + node-releases: 2.0.8 + update-browserslist-db: 1.0.10_browserslist@4.21.4 + dev: true + + /call-bind/1.0.2: + resolution: {integrity: sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==} + dependencies: + function-bind: 1.1.1 + get-intrinsic: 1.2.0 + dev: true + + /callsites/3.1.0: + resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} + engines: {node: '>=6'} + + /camelcase-css/2.0.1: + resolution: {integrity: sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==} + engines: {node: '>= 6'} + dev: true + + /caniuse-lite/1.0.30001449: + resolution: {integrity: sha512-CPB+UL9XMT/Av+pJxCKGhdx+yg1hzplvFJQlJ2n68PyQGMz9L/E2zCyLdOL8uasbouTUgnPl+y0tccI/se+BEw==} + + /chalk/2.4.2: + resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} + engines: {node: '>=4'} + dependencies: + ansi-styles: 3.2.1 + escape-string-regexp: 1.0.5 + supports-color: 5.5.0 + dev: false + + /chalk/4.1.2: + resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} + engines: {node: '>=10'} + dependencies: + ansi-styles: 4.3.0 + supports-color: 7.2.0 + dev: true + + /chokidar/3.5.3: + resolution: {integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==} + engines: {node: '>= 8.10.0'} + dependencies: + anymatch: 3.1.3 + braces: 3.0.2 + glob-parent: 5.1.2 + is-binary-path: 2.1.0 + is-glob: 4.0.3 + normalize-path: 3.0.0 + readdirp: 3.6.0 + optionalDependencies: + fsevents: 2.3.2 + dev: true + + /classnames/2.3.2: + resolution: {integrity: sha512-CSbhY4cFEJRe6/GQzIk5qXZ4Jeg5pcsP7b5peFSDpffpe1cqjASH/n9UTjBwOp6XpMSTwQ8Za2K5V02ueA7Tmw==} + dev: false + + /client-only/0.0.1: + resolution: {integrity: sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==} + dev: false + + /clsx/1.2.1: + resolution: {integrity: sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==} + engines: {node: '>=6'} + dev: false + + /color-convert/1.9.3: + resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} + dependencies: + color-name: 1.1.3 + dev: false + + /color-convert/2.0.1: + resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} + engines: {node: '>=7.0.0'} + dependencies: + color-name: 1.1.4 + dev: true + + /color-name/1.1.3: + resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==} + dev: false + + /color-name/1.1.4: + resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} + + /color-parse/1.4.2: + resolution: {integrity: sha512-RI7s49/8yqDj3fECFZjUI1Yi0z/Gq1py43oNJivAIIDSyJiOZLfYCRQEgn8HEVAj++PcRe8AnL2XF0fRJ3BTnA==} + dependencies: + color-name: 1.1.4 + dev: false + + /compute-scroll-into-view/1.0.20: + resolution: {integrity: sha512-UCB0ioiyj8CRjtrvaceBLqqhZCVP+1B8+NWQhmdsm0VXOJtobBCf1dBQmebCCo34qZmUwZfIH2MZLqNHazrfjg==} + dev: false + + /concat-map/0.0.1: + resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} + dev: true + + /convert-source-map/1.9.0: + resolution: {integrity: sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==} + dev: false + + /copy-anything/3.0.3: + resolution: {integrity: sha512-fpW2W/BqEzqPp29QS+MwwfisHCQZtiduTe/m8idFo0xbti9fIZ2WVhAsCv4ggFVH3AgCkVdpoOCtQC6gBrdhjw==} + engines: {node: '>=12.13'} + dependencies: + is-what: 4.1.8 + dev: false + + /copy-to-clipboard/3.3.3: + resolution: {integrity: sha512-2KV8NhB5JqC3ky0r9PMCAZKbUHSwtEo4CwCs0KXgruG43gX5PMqDEBbVU4OUzw2MuAWUfsuFmWvEKG5QRfSnJA==} + dependencies: + toggle-selection: 1.0.6 + dev: false + + /cosmiconfig/6.0.0: + resolution: {integrity: sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg==} + engines: {node: '>=8'} + dependencies: + '@types/parse-json': 4.0.0 + import-fresh: 3.3.0 + parse-json: 5.2.0 + path-type: 4.0.0 + yaml: 1.10.2 + dev: false + + /cosmiconfig/7.1.0: + resolution: {integrity: sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==} + engines: {node: '>=10'} + dependencies: + '@types/parse-json': 4.0.0 + import-fresh: 3.3.0 + parse-json: 5.2.0 + path-type: 4.0.0 + yaml: 1.10.2 + dev: false + + /cross-spawn/7.0.3: + resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==} + engines: {node: '>= 8'} + dependencies: + path-key: 3.1.1 + shebang-command: 2.0.0 + which: 2.0.2 + dev: true + + /css-in-js-utils/3.1.0: + resolution: {integrity: sha512-fJAcud6B3rRu+KHYk+Bwf+WFL2MDCJJ1XG9x137tJQ0xYxor7XziQtuGFbWNdqrvF4Tk26O3H73nfVqXt/fW1A==} + dependencies: + hyphenate-style-name: 1.0.4 + dev: false + + /css-tree/1.1.3: + resolution: {integrity: sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==} + engines: {node: '>=8.0.0'} + dependencies: + mdn-data: 2.0.14 + source-map: 0.6.1 + dev: false + + /cssesc/3.0.0: + resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==} + engines: {node: '>=4'} + hasBin: true + dev: true + + /cssom/0.3.8: + resolution: {integrity: sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==} + dev: false + + /cssstyle/2.3.0: + resolution: {integrity: sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==} + engines: {node: '>=8'} + dependencies: + cssom: 0.3.8 + dev: false + + /csstype/2.6.21: + resolution: {integrity: sha512-Z1PhmomIfypOpoMjRQB70jfvy/wxT50qW08YXO5lMIJkrdq4yOTR+AW7FqutScmB9NkLwxo+jU+kZLbofZZq/w==} + dev: false + + /csstype/3.1.1: + resolution: {integrity: sha512-DJR/VvkAvSZW9bTouZue2sSxDwdTN92uHjqeKVm+0dAqdfNykRzQ95tay8aXMBAAPpUiq4Qcug2L7neoRh2Egw==} + + /damerau-levenshtein/1.0.8: + resolution: {integrity: sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==} + dev: true + + /debug/3.2.7: + resolution: {integrity: sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true + dependencies: + ms: 2.1.3 + dev: true + + /debug/4.3.4: + resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} + engines: {node: '>=6.0'} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true + dependencies: + ms: 2.1.2 + dev: true + + /deep-equal/2.2.0: + resolution: {integrity: sha512-RdpzE0Hv4lhowpIUKKMJfeH6C1pXdtT1/it80ubgWqwI3qpuxUBpC1S4hnHg+zjnuOoDkzUtUCEEkG+XG5l3Mw==} + dependencies: + call-bind: 1.0.2 + es-get-iterator: 1.1.3 + get-intrinsic: 1.2.0 + is-arguments: 1.1.1 + is-array-buffer: 3.0.1 + is-date-object: 1.0.5 + is-regex: 1.1.4 + is-shared-array-buffer: 1.0.2 + isarray: 2.0.5 + object-is: 1.1.5 + object-keys: 1.1.1 + object.assign: 4.1.4 + regexp.prototype.flags: 1.4.3 + side-channel: 1.0.4 + which-boxed-primitive: 1.0.2 + which-collection: 1.0.1 + which-typed-array: 1.1.9 + dev: true + + /deep-is/0.1.4: + resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} + dev: true + + /deep-rename-keys/0.2.1: + resolution: {integrity: sha512-RHd9ABw4Fvk+gYDWqwOftG849x0bYOySl/RgX0tLI9i27ZIeSO91mLZJEp7oPHOMFqHvpgu21YptmDt0FYD/0A==} + engines: {node: '>=0.10.0'} + dependencies: + kind-of: 3.2.2 + rename-keys: 1.2.0 + dev: false + + /define-lazy-prop/2.0.0: + resolution: {integrity: sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==} + engines: {node: '>=8'} + dev: true + + /define-properties/1.1.4: + resolution: {integrity: sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==} + engines: {node: '>= 0.4'} + dependencies: + has-property-descriptors: 1.0.0 + object-keys: 1.1.1 + dev: true + + /defined/1.0.1: + resolution: {integrity: sha512-hsBd2qSVCRE+5PmNdHt1uzyrFu5d3RwmFDKzyNZMFq/EwDNJF7Ee5+D5oEKF0hU6LhtoUF1macFvOe4AskQC1Q==} + dev: true + + /detective/5.2.1: + resolution: {integrity: sha512-v9XE1zRnz1wRtgurGu0Bs8uHKFSTdteYZNbIPFVhUZ39L/S79ppMpdmVOZAnoz1jfEFodc48n6MX483Xo3t1yw==} + engines: {node: '>=0.8.0'} + hasBin: true + dependencies: + acorn-node: 1.8.2 + defined: 1.0.1 + minimist: 1.2.7 + dev: true + + /didyoumean/1.2.2: + resolution: {integrity: sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==} + dev: true + + /dir-glob/3.0.1: + resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} + engines: {node: '>=8'} + dependencies: + path-type: 4.0.0 + dev: true + + /direction/1.0.4: + resolution: {integrity: sha512-GYqKi1aH7PJXxdhTeZBFrg8vUBeKXi+cNprXsC1kpJcbcVnV9wBsrOu1cQEdG0WeQwlfHiy3XvnKfIrJ2R0NzQ==} + hasBin: true + dev: false + + /dlv/1.1.3: + resolution: {integrity: sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==} + dev: true + + /dnd-core/15.1.2: + resolution: {integrity: sha512-EOec1LyJUuGRFg0LDa55rSRAUe97uNVKVkUo8iyvzQlcECYTuPblVQfRWXWj1OyPseFIeebWpNmKFy0h6BcF1A==} + dependencies: + '@react-dnd/asap': 4.0.1 + '@react-dnd/invariant': 3.0.1 + redux: 4.2.0 + dev: false + + /doctrine/2.1.0: + resolution: {integrity: sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==} + engines: {node: '>=0.10.0'} + dependencies: + esutils: 2.0.3 + dev: true + + /doctrine/3.0.0: + resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==} + engines: {node: '>=6.0.0'} + dependencies: + esutils: 2.0.3 + dev: true + + /dom-helpers/5.2.1: + resolution: {integrity: sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA==} + dependencies: + '@babel/runtime': 7.20.13 + csstype: 3.1.1 + dev: false + + /electron-to-chromium/1.4.284: + resolution: {integrity: sha512-M8WEXFuKXMYMVr45fo8mq0wUrrJHheiKZf6BArTKk9ZBYCKJEOU5H8cdWgDT+qCVZf7Na4lVUaZsA+h6uA9+PA==} + dev: true + + /emoji-regex/9.2.2: + resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} + dev: true + + /enhanced-resolve/5.12.0: + resolution: {integrity: sha512-QHTXI/sZQmko1cbDoNAa3mJ5qhWUUNAq3vR0/YiD379fWQrcfuoX1+HW2S0MTt7XmoPLapdaDKUtelUSPic7hQ==} + engines: {node: '>=10.13.0'} + dependencies: + graceful-fs: 4.2.10 + tapable: 2.2.1 + dev: true + + /error-ex/1.3.2: + resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==} + dependencies: + is-arrayish: 0.2.1 + dev: false + + /error-stack-parser/2.1.4: + resolution: {integrity: sha512-Sk5V6wVazPhq5MhpO+AUxJn5x7XSXGl1R93Vn7i+zS15KDVxQijejNCrz8340/2bgLBjR9GtEG8ZVKONDjcqGQ==} + dependencies: + stackframe: 1.3.4 + dev: false + + /es-abstract/1.21.1: + resolution: {integrity: sha512-QudMsPOz86xYz/1dG1OuGBKOELjCh99IIWHLzy5znUB6j8xG2yMA7bfTV86VSqKF+Y/H08vQPR+9jyXpuC6hfg==} + engines: {node: '>= 0.4'} + dependencies: + available-typed-arrays: 1.0.5 + call-bind: 1.0.2 + es-set-tostringtag: 2.0.1 + es-to-primitive: 1.2.1 + function-bind: 1.1.1 + function.prototype.name: 1.1.5 + get-intrinsic: 1.2.0 + get-symbol-description: 1.0.0 + globalthis: 1.0.3 + gopd: 1.0.1 + has: 1.0.3 + has-property-descriptors: 1.0.0 + has-proto: 1.0.1 + has-symbols: 1.0.3 + internal-slot: 1.0.4 + is-array-buffer: 3.0.1 + is-callable: 1.2.7 + is-negative-zero: 2.0.2 + is-regex: 1.1.4 + is-shared-array-buffer: 1.0.2 + is-string: 1.0.7 + is-typed-array: 1.1.10 + is-weakref: 1.0.2 + object-inspect: 1.12.3 + object-keys: 1.1.1 + object.assign: 4.1.4 + regexp.prototype.flags: 1.4.3 + safe-regex-test: 1.0.0 + string.prototype.trimend: 1.0.6 + string.prototype.trimstart: 1.0.6 + typed-array-length: 1.0.4 + unbox-primitive: 1.0.2 + which-typed-array: 1.1.9 + dev: true + + /es-get-iterator/1.1.3: + resolution: {integrity: sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw==} + dependencies: + call-bind: 1.0.2 + get-intrinsic: 1.2.0 + has-symbols: 1.0.3 + is-arguments: 1.1.1 + is-map: 2.0.2 + is-set: 2.0.2 + is-string: 1.0.7 + isarray: 2.0.5 + stop-iteration-iterator: 1.0.0 + dev: true + + /es-set-tostringtag/2.0.1: + resolution: {integrity: sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==} + engines: {node: '>= 0.4'} + dependencies: + get-intrinsic: 1.2.0 + has: 1.0.3 + has-tostringtag: 1.0.0 + dev: true + + /es-shim-unscopables/1.0.0: + resolution: {integrity: sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==} + dependencies: + has: 1.0.3 + dev: true + + /es-to-primitive/1.2.1: + resolution: {integrity: sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==} + engines: {node: '>= 0.4'} + dependencies: + is-callable: 1.2.7 + is-date-object: 1.0.5 + is-symbol: 1.0.4 + dev: true + + /escalade/3.1.1: + resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==} + engines: {node: '>=6'} + dev: true + + /escape-string-regexp/1.0.5: + resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==} + engines: {node: '>=0.8.0'} + dev: false + + /escape-string-regexp/4.0.0: + resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} + engines: {node: '>=10'} + + /eslint-config-next/13.1.2_7uibuqfxkfaozanbtbziikiqje: + resolution: {integrity: sha512-zdRAQOr8v69ZwJRtBrGqAqm160ONqKxU/pV1FB1KlgfyqveGsLZmlQ7l31otwtw763901J7xdiTVkj2y3YxXZA==} + peerDependencies: + eslint: ^7.23.0 || ^8.0.0 + typescript: '>=3.3.1' + peerDependenciesMeta: + typescript: + optional: true + dependencies: + '@next/eslint-plugin-next': 13.1.2 + '@rushstack/eslint-patch': 1.2.0 + '@typescript-eslint/parser': 5.49.0_7uibuqfxkfaozanbtbziikiqje + eslint: 8.32.0 + eslint-import-resolver-node: 0.3.7 + eslint-import-resolver-typescript: 3.5.3_ps7hf4l2dvbuxvtusmrfhmzsba + eslint-plugin-import: 2.27.5_tto3jvfrcbe7ndbi56p7uxhaki + eslint-plugin-jsx-a11y: 6.7.1_eslint@8.32.0 + eslint-plugin-react: 7.32.1_eslint@8.32.0 + eslint-plugin-react-hooks: 4.6.0_eslint@8.32.0 + typescript: 4.9.4 + transitivePeerDependencies: + - eslint-import-resolver-webpack + - supports-color + dev: true + + /eslint-import-resolver-node/0.3.7: + resolution: {integrity: sha512-gozW2blMLJCeFpBwugLTGyvVjNoeo1knonXAcatC6bjPBZitotxdWf7Gimr25N4c0AAOo4eOUfaG82IJPDpqCA==} + dependencies: + debug: 3.2.7 + is-core-module: 2.11.0 + resolve: 1.22.1 + transitivePeerDependencies: + - supports-color + dev: true + + /eslint-import-resolver-typescript/3.5.3_ps7hf4l2dvbuxvtusmrfhmzsba: + resolution: {integrity: sha512-njRcKYBc3isE42LaTcJNVANR3R99H9bAxBDMNDr2W7yq5gYPxbU3MkdhsQukxZ/Xg9C2vcyLlDsbKfRDg0QvCQ==} + engines: {node: ^14.18.0 || >=16.0.0} + peerDependencies: + eslint: '*' + eslint-plugin-import: '*' + dependencies: + debug: 4.3.4 + enhanced-resolve: 5.12.0 + eslint: 8.32.0 + eslint-plugin-import: 2.27.5_tto3jvfrcbe7ndbi56p7uxhaki + get-tsconfig: 4.3.0 + globby: 13.1.3 + is-core-module: 2.11.0 + is-glob: 4.0.3 + synckit: 0.8.5 + transitivePeerDependencies: + - supports-color + dev: true + + /eslint-module-utils/2.7.4_xoxtsypck35xtelm3fn5dkquvy: + resolution: {integrity: sha512-j4GT+rqzCoRKHwURX7pddtIPGySnX9Si/cgMI5ztrcqOPtk5dDEeZ34CQVPphnqkJytlc97Vuk05Um2mJ3gEQA==} + engines: {node: '>=4'} + peerDependencies: + '@typescript-eslint/parser': '*' + eslint: '*' + eslint-import-resolver-node: '*' + eslint-import-resolver-typescript: '*' + eslint-import-resolver-webpack: '*' + peerDependenciesMeta: + '@typescript-eslint/parser': + optional: true + eslint: + optional: true + eslint-import-resolver-node: + optional: true + eslint-import-resolver-typescript: + optional: true + eslint-import-resolver-webpack: + optional: true + dependencies: + '@typescript-eslint/parser': 5.49.0_7uibuqfxkfaozanbtbziikiqje + debug: 3.2.7 + eslint: 8.32.0 + eslint-import-resolver-node: 0.3.7 + eslint-import-resolver-typescript: 3.5.3_ps7hf4l2dvbuxvtusmrfhmzsba + transitivePeerDependencies: + - supports-color + dev: true + + /eslint-plugin-import/2.27.5_tto3jvfrcbe7ndbi56p7uxhaki: + resolution: {integrity: sha512-LmEt3GVofgiGuiE+ORpnvP+kAm3h6MLZJ4Q5HCyHADofsb4VzXFsRiWj3c0OFiV+3DWFh0qg3v9gcPlfc3zRow==} + engines: {node: '>=4'} + peerDependencies: + '@typescript-eslint/parser': '*' + eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 + peerDependenciesMeta: + '@typescript-eslint/parser': + optional: true + dependencies: + '@typescript-eslint/parser': 5.49.0_7uibuqfxkfaozanbtbziikiqje + array-includes: 3.1.6 + array.prototype.flat: 1.3.1 + array.prototype.flatmap: 1.3.1 + debug: 3.2.7 + doctrine: 2.1.0 + eslint: 8.32.0 + eslint-import-resolver-node: 0.3.7 + eslint-module-utils: 2.7.4_xoxtsypck35xtelm3fn5dkquvy + has: 1.0.3 + is-core-module: 2.11.0 + is-glob: 4.0.3 + minimatch: 3.1.2 + object.values: 1.1.6 + resolve: 1.22.1 + semver: 6.3.0 + tsconfig-paths: 3.14.1 + transitivePeerDependencies: + - eslint-import-resolver-typescript + - eslint-import-resolver-webpack + - supports-color + dev: true + + /eslint-plugin-jsx-a11y/6.7.1_eslint@8.32.0: + resolution: {integrity: sha512-63Bog4iIethyo8smBklORknVjB0T2dwB8Mr/hIC+fBS0uyHdYYpzM/Ed+YC8VxTjlXHEWFOdmgwcDn1U2L9VCA==} + engines: {node: '>=4.0'} + peerDependencies: + eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 + dependencies: + '@babel/runtime': 7.20.13 + aria-query: 5.1.3 + array-includes: 3.1.6 + array.prototype.flatmap: 1.3.1 + ast-types-flow: 0.0.7 + axe-core: 4.6.3 + axobject-query: 3.1.1 + damerau-levenshtein: 1.0.8 + emoji-regex: 9.2.2 + eslint: 8.32.0 + has: 1.0.3 + jsx-ast-utils: 3.3.3 + language-tags: 1.0.5 + minimatch: 3.1.2 + object.entries: 1.1.6 + object.fromentries: 2.0.6 + semver: 6.3.0 + dev: true + + /eslint-plugin-react-hooks/4.6.0_eslint@8.32.0: + resolution: {integrity: sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g==} + engines: {node: '>=10'} + peerDependencies: + eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 + dependencies: + eslint: 8.32.0 + dev: true + + /eslint-plugin-react/7.32.1_eslint@8.32.0: + resolution: {integrity: sha512-vOjdgyd0ZHBXNsmvU+785xY8Bfe57EFbTYYk8XrROzWpr9QBvpjITvAXt9xqcE6+8cjR/g1+mfumPToxsl1www==} + engines: {node: '>=4'} + peerDependencies: + eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 + dependencies: + array-includes: 3.1.6 + array.prototype.flatmap: 1.3.1 + array.prototype.tosorted: 1.1.1 + doctrine: 2.1.0 + eslint: 8.32.0 + estraverse: 5.3.0 + jsx-ast-utils: 3.3.3 + minimatch: 3.1.2 + object.entries: 1.1.6 + object.fromentries: 2.0.6 + object.hasown: 1.1.2 + object.values: 1.1.6 + prop-types: 15.8.1 + resolve: 2.0.0-next.4 + semver: 6.3.0 + string.prototype.matchall: 4.0.8 + dev: true + + /eslint-scope/5.1.1: + resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==} + engines: {node: '>=8.0.0'} + dependencies: + esrecurse: 4.3.0 + estraverse: 4.3.0 + dev: true + + /eslint-scope/7.1.1: + resolution: {integrity: sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + dependencies: + esrecurse: 4.3.0 + estraverse: 5.3.0 + dev: true + + /eslint-utils/3.0.0_eslint@8.32.0: + resolution: {integrity: sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==} + engines: {node: ^10.0.0 || ^12.0.0 || >= 14.0.0} + peerDependencies: + eslint: '>=5' + dependencies: + eslint: 8.32.0 + eslint-visitor-keys: 2.1.0 + dev: true + + /eslint-visitor-keys/2.1.0: + resolution: {integrity: sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==} + engines: {node: '>=10'} + dev: true + + /eslint-visitor-keys/3.3.0: + resolution: {integrity: sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + dev: true + + /eslint/8.32.0: + resolution: {integrity: sha512-nETVXpnthqKPFyuY2FNjz/bEd6nbosRgKbkgS/y1C7LJop96gYHWpiguLecMHQ2XCPxn77DS0P+68WzG6vkZSQ==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + hasBin: true + dependencies: + '@eslint/eslintrc': 1.4.1 + '@humanwhocodes/config-array': 0.11.8 + '@humanwhocodes/module-importer': 1.0.1 + '@nodelib/fs.walk': 1.2.8 + ajv: 6.12.6 + chalk: 4.1.2 + cross-spawn: 7.0.3 + debug: 4.3.4 + doctrine: 3.0.0 + escape-string-regexp: 4.0.0 + eslint-scope: 7.1.1 + eslint-utils: 3.0.0_eslint@8.32.0 + eslint-visitor-keys: 3.3.0 + espree: 9.4.1 + esquery: 1.4.0 + esutils: 2.0.3 + fast-deep-equal: 3.1.3 + file-entry-cache: 6.0.1 + find-up: 5.0.0 + glob-parent: 6.0.2 + globals: 13.20.0 + grapheme-splitter: 1.0.4 + ignore: 5.2.4 + import-fresh: 3.3.0 + imurmurhash: 0.1.4 + is-glob: 4.0.3 + is-path-inside: 3.0.3 + js-sdsl: 4.3.0 + js-yaml: 4.1.0 + json-stable-stringify-without-jsonify: 1.0.1 + levn: 0.4.1 + lodash.merge: 4.6.2 + minimatch: 3.1.2 + natural-compare: 1.4.0 + optionator: 0.9.1 + regexpp: 3.2.0 + strip-ansi: 6.0.1 + strip-json-comments: 3.1.1 + text-table: 0.2.0 + transitivePeerDependencies: + - supports-color + dev: true + + /espree/9.4.1: + resolution: {integrity: sha512-XwctdmTO6SIvCzd9810yyNzIrOrqNYV9Koizx4C/mRhf9uq0o4yHoCEU/670pOxOL/MSraektvSAji79kX90Vg==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + dependencies: + acorn: 8.8.2 + acorn-jsx: 5.3.2_acorn@8.8.2 + eslint-visitor-keys: 3.3.0 + dev: true + + /esquery/1.4.0: + resolution: {integrity: sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==} + engines: {node: '>=0.10'} + dependencies: + estraverse: 5.3.0 + dev: true + + /esrecurse/4.3.0: + resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} + engines: {node: '>=4.0'} + dependencies: + estraverse: 5.3.0 + dev: true + + /estraverse/4.3.0: + resolution: {integrity: sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==} + engines: {node: '>=4.0'} + dev: true + + /estraverse/5.3.0: + resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} + engines: {node: '>=4.0'} + dev: true + + /esutils/2.0.3: + resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} + engines: {node: '>=0.10.0'} + dev: true + + /fast-deep-equal/3.1.3: + resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} + + /fast-glob/3.2.12: + resolution: {integrity: sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==} + engines: {node: '>=8.6.0'} + 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.5 + dev: true + + /fast-json-stable-stringify/2.1.0: + resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} + dev: true + + /fast-levenshtein/2.0.6: + resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} + dev: true + + /fast-loops/1.1.3: + resolution: {integrity: sha512-8EZzEP0eKkEEVX+drtd9mtuQ+/QrlfW/5MlwcwK5Nds6EkZ/tRzEexkzUY2mIssnAyVLT+TKHuRXmFNNXYUd6g==} + dev: false + + /fast-shallow-equal/1.0.0: + resolution: {integrity: sha512-HPtaa38cPgWvaCFmRNhlc6NG7pv6NUHqjPgVAkWGoB9mQMwYB27/K0CvOM5Czy+qpT3e8XJ6Q4aPAnzpNpzNaw==} + dev: false + + /fastest-stable-stringify/2.0.2: + resolution: {integrity: sha512-bijHueCGd0LqqNK9b5oCMHc0MluJAx0cwqASgbWMvkO01lCYgIhacVRLcaDz3QnyYIRNJRDwMb41VuT6pHJ91Q==} + dev: false + + /fastq/1.15.0: + resolution: {integrity: sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==} + dependencies: + reusify: 1.0.4 + dev: true + + /file-entry-cache/6.0.1: + resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==} + engines: {node: ^10.12.0 || >=12.0.0} + dependencies: + flat-cache: 3.0.4 + dev: true + + /fill-range/7.0.1: + resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==} + engines: {node: '>=8'} + dependencies: + to-regex-range: 5.0.1 + dev: true + + /find-root/1.1.0: + resolution: {integrity: sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==} + dev: false + + /find-up/5.0.0: + resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} + engines: {node: '>=10'} + dependencies: + locate-path: 6.0.0 + path-exists: 4.0.0 + dev: true + + /flat-cache/3.0.4: + resolution: {integrity: sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==} + engines: {node: ^10.12.0 || >=12.0.0} + dependencies: + flatted: 3.2.7 + rimraf: 3.0.2 + dev: true + + /flatted/3.2.7: + resolution: {integrity: sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==} + dev: true + + /for-each/0.3.3: + resolution: {integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==} + dependencies: + is-callable: 1.2.7 + dev: true + + /fraction.js/4.2.0: + resolution: {integrity: sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==} + dev: true + + /fs.realpath/1.0.0: + resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} + dev: true + + /fsevents/2.3.2: + resolution: {integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==} + engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} + os: [darwin] + requiresBuild: true + dev: true + optional: true + + /function-bind/1.1.1: + resolution: {integrity: sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==} + + /function.prototype.name/1.1.5: + resolution: {integrity: sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.2 + define-properties: 1.1.4 + es-abstract: 1.21.1 + functions-have-names: 1.2.3 + dev: true + + /functions-have-names/1.2.3: + resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==} + dev: true + + /get-intrinsic/1.2.0: + resolution: {integrity: sha512-L049y6nFOuom5wGyRc3/gdTLO94dySVKRACj1RmJZBQXlbTMhtNIgkWkUHq+jYmZvKf14EW1EoJnnjbmoHij0Q==} + dependencies: + function-bind: 1.1.1 + has: 1.0.3 + has-symbols: 1.0.3 + dev: true + + /get-symbol-description/1.0.0: + resolution: {integrity: sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.2 + get-intrinsic: 1.2.0 + dev: true + + /get-tsconfig/4.3.0: + resolution: {integrity: sha512-YCcF28IqSay3fqpIu5y3Krg/utCBHBeoflkZyHj/QcqI2nrLPC3ZegS9CmIo+hJb8K7aiGsuUl7PwWVjNG2HQQ==} + dev: true + + /glob-parent/5.1.2: + resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} + engines: {node: '>= 6'} + dependencies: + is-glob: 4.0.3 + dev: true + + /glob-parent/6.0.2: + resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} + engines: {node: '>=10.13.0'} + dependencies: + is-glob: 4.0.3 + dev: true + + /glob/7.1.7: + resolution: {integrity: sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==} + dependencies: + fs.realpath: 1.0.0 + inflight: 1.0.6 + inherits: 2.0.4 + minimatch: 3.1.2 + once: 1.4.0 + path-is-absolute: 1.0.1 + dev: true + + /glob/7.2.3: + resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} + dependencies: + fs.realpath: 1.0.0 + inflight: 1.0.6 + inherits: 2.0.4 + minimatch: 3.1.2 + once: 1.4.0 + path-is-absolute: 1.0.1 + dev: true + + /globals/13.20.0: + resolution: {integrity: sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==} + engines: {node: '>=8'} + dependencies: + type-fest: 0.20.2 + dev: true + + /globalthis/1.0.3: + resolution: {integrity: sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==} + engines: {node: '>= 0.4'} + dependencies: + define-properties: 1.1.4 + dev: true + + /globalyzer/0.1.0: + resolution: {integrity: sha512-40oNTM9UfG6aBmuKxk/giHn5nQ8RVz/SS4Ir6zgzOv9/qC3kKZ9v4etGTcJbEl/NyVQH7FGU7d+X1egr57Md2Q==} + dev: true + + /globby/11.1.0: + resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==} + engines: {node: '>=10'} + dependencies: + array-union: 2.1.0 + dir-glob: 3.0.1 + fast-glob: 3.2.12 + ignore: 5.2.4 + merge2: 1.4.1 + slash: 3.0.0 + dev: true + + /globby/13.1.3: + resolution: {integrity: sha512-8krCNHXvlCgHDpegPzleMq07yMYTO2sXKASmZmquEYWEmCx6J5UTRbp5RwMJkTJGtcQ44YpiUYUiN0b9mzy8Bw==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dependencies: + dir-glob: 3.0.1 + fast-glob: 3.2.12 + ignore: 5.2.4 + merge2: 1.4.1 + slash: 4.0.0 + dev: true + + /globrex/0.1.2: + resolution: {integrity: sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==} + dev: true + + /gopd/1.0.1: + resolution: {integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==} + dependencies: + get-intrinsic: 1.2.0 + dev: true + + /graceful-fs/4.2.10: + resolution: {integrity: sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==} + dev: true + + /grapheme-splitter/1.0.4: + resolution: {integrity: sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==} + dev: true + + /has-bigints/1.0.2: + resolution: {integrity: sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==} + dev: true + + /has-flag/3.0.0: + resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==} + engines: {node: '>=4'} + dev: false + + /has-flag/4.0.0: + resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} + engines: {node: '>=8'} + dev: true + + /has-property-descriptors/1.0.0: + resolution: {integrity: sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==} + dependencies: + get-intrinsic: 1.2.0 + dev: true + + /has-proto/1.0.1: + resolution: {integrity: sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==} + engines: {node: '>= 0.4'} + dev: true + + /has-symbols/1.0.3: + resolution: {integrity: sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==} + engines: {node: '>= 0.4'} + dev: true + + /has-tostringtag/1.0.0: + resolution: {integrity: sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==} + engines: {node: '>= 0.4'} + dependencies: + has-symbols: 1.0.3 + dev: true + + /has/1.0.3: + resolution: {integrity: sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==} + engines: {node: '>= 0.4.0'} + dependencies: + function-bind: 1.1.1 + + /hash-sum/2.0.0: + resolution: {integrity: sha512-WdZTbAByD+pHfl/g9QSsBIIwy8IT+EsPiKDs0KNX+zSHhdDLFKdZu0BQHljvO+0QI/BasbMSUa8wYNCZTvhslg==} + dev: false + + /hoist-non-react-statics/3.3.2: + resolution: {integrity: sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==} + dependencies: + react-is: 16.13.1 + dev: false + + /hyphenate-style-name/1.0.4: + resolution: {integrity: sha512-ygGZLjmXfPHj+ZWh6LwbC37l43MhfztxetbFCoYTM2VjkIUpeHgSNn7QIyVFj7YQ1Wl9Cbw5sholVJPzWvC2MQ==} + dev: false + + /ignore/5.2.4: + resolution: {integrity: sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==} + engines: {node: '>= 4'} + dev: true + + /immer/9.0.19: + resolution: {integrity: sha512-eY+Y0qcsB4TZKwgQzLaE/lqYMlKhv5J9dyd2RhhtGhNo2njPXDqU9XPfcNfa3MIDsdtZt5KlkIsirlo4dHsWdQ==} + dev: false + + /import-fresh/3.3.0: + resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} + engines: {node: '>=6'} + dependencies: + parent-module: 1.0.1 + resolve-from: 4.0.0 + + /imurmurhash/0.1.4: + resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} + engines: {node: '>=0.8.19'} + dev: true + + /inflight/1.0.6: + resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} + dependencies: + once: 1.4.0 + wrappy: 1.0.2 + dev: true + + /inherits/2.0.4: + resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} + dev: true + + /inline-style-prefixer/6.0.4: + resolution: {integrity: sha512-FwXmZC2zbeeS7NzGjJ6pAiqRhXR0ugUShSNb6GApMl6da0/XGc4MOJsoWAywia52EEWbXNSy0pzkwz/+Y+swSg==} + dependencies: + css-in-js-utils: 3.1.0 + fast-loops: 1.1.3 + dev: false + + /internal-slot/1.0.4: + resolution: {integrity: sha512-tA8URYccNzMo94s5MQZgH8NB/XTa6HsOo0MLfXTKKEnHVVdegzaQoFZ7Jp44bdvLvY2waT5dc+j5ICEswhi7UQ==} + engines: {node: '>= 0.4'} + dependencies: + get-intrinsic: 1.2.0 + has: 1.0.3 + side-channel: 1.0.4 + dev: true + + /invariant/2.2.4: + resolution: {integrity: sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==} + dependencies: + loose-envify: 1.4.0 + dev: false + + /is-arguments/1.1.1: + resolution: {integrity: sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.2 + has-tostringtag: 1.0.0 + dev: true + + /is-array-buffer/3.0.1: + resolution: {integrity: sha512-ASfLknmY8Xa2XtB4wmbz13Wu202baeA18cJBCeCy0wXUHZF0IPyVEXqKEcd+t2fNSLLL1vC6k7lxZEojNbISXQ==} + dependencies: + call-bind: 1.0.2 + get-intrinsic: 1.2.0 + is-typed-array: 1.1.10 + dev: true + + /is-arrayish/0.2.1: + resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==} + dev: false + + /is-bigint/1.0.4: + resolution: {integrity: sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==} + dependencies: + has-bigints: 1.0.2 + dev: true + + /is-binary-path/2.1.0: + resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} + engines: {node: '>=8'} + dependencies: + binary-extensions: 2.2.0 + dev: true + + /is-boolean-object/1.1.2: + resolution: {integrity: sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.2 + has-tostringtag: 1.0.0 + dev: true + + /is-buffer/1.1.6: + resolution: {integrity: sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==} + dev: false + + /is-callable/1.2.7: + resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==} + engines: {node: '>= 0.4'} + dev: true + + /is-core-module/2.11.0: + resolution: {integrity: sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==} + dependencies: + has: 1.0.3 + + /is-date-object/1.0.5: + resolution: {integrity: sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==} + engines: {node: '>= 0.4'} + dependencies: + has-tostringtag: 1.0.0 + dev: true + + /is-docker/2.2.1: + resolution: {integrity: sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==} + engines: {node: '>=8'} + hasBin: true + dev: true + + /is-extglob/2.1.1: + resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} + engines: {node: '>=0.10.0'} + dev: true + + /is-glob/4.0.3: + resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} + engines: {node: '>=0.10.0'} + dependencies: + is-extglob: 2.1.1 + dev: true + + /is-hotkey/0.1.8: + resolution: {integrity: sha512-qs3NZ1INIS+H+yeo7cD9pDfwYV/jqRh1JG9S9zYrNudkoUQg7OL7ziXqRKu+InFjUIDoP2o6HIkLYMh1pcWgyQ==} + dev: false + + /is-hotkey/0.2.0: + resolution: {integrity: sha512-UknnZK4RakDmTgz4PI1wIph5yxSs/mvChWs9ifnlXsKuXgWmOkY/hAE0H/k2MIqH0RlRye0i1oC07MCRSD28Mw==} + dev: false + + /is-map/2.0.2: + resolution: {integrity: sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg==} + dev: true + + /is-negative-zero/2.0.2: + resolution: {integrity: sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==} + engines: {node: '>= 0.4'} + dev: true + + /is-number-object/1.0.7: + resolution: {integrity: sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==} + engines: {node: '>= 0.4'} + dependencies: + has-tostringtag: 1.0.0 + dev: true + + /is-number/7.0.0: + resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} + engines: {node: '>=0.12.0'} + dev: true + + /is-path-inside/3.0.3: + resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==} + engines: {node: '>=8'} + dev: true + + /is-plain-object/5.0.0: + resolution: {integrity: sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==} + engines: {node: '>=0.10.0'} + dev: false + + /is-regex/1.1.4: + resolution: {integrity: sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.2 + has-tostringtag: 1.0.0 + dev: true + + /is-set/2.0.2: + resolution: {integrity: sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g==} + dev: true + + /is-shared-array-buffer/1.0.2: + resolution: {integrity: sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==} + dependencies: + call-bind: 1.0.2 + dev: true + + /is-string/1.0.7: + resolution: {integrity: sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==} + engines: {node: '>= 0.4'} + dependencies: + has-tostringtag: 1.0.0 + dev: true + + /is-symbol/1.0.4: + resolution: {integrity: sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==} + engines: {node: '>= 0.4'} + dependencies: + has-symbols: 1.0.3 + dev: true + + /is-typed-array/1.1.10: + resolution: {integrity: sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A==} + engines: {node: '>= 0.4'} + dependencies: + available-typed-arrays: 1.0.5 + call-bind: 1.0.2 + for-each: 0.3.3 + gopd: 1.0.1 + has-tostringtag: 1.0.0 + dev: true + + /is-weakmap/2.0.1: + resolution: {integrity: sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA==} + dev: true + + /is-weakref/1.0.2: + resolution: {integrity: sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==} + dependencies: + call-bind: 1.0.2 + dev: true + + /is-weakset/2.0.2: + resolution: {integrity: sha512-t2yVvttHkQktwnNNmBQ98AhENLdPUTDTE21uPqAQ0ARwQfGeQKRVS0NNurH7bTf7RrvcVn1OOge45CnBeHCSmg==} + dependencies: + call-bind: 1.0.2 + get-intrinsic: 1.2.0 + dev: true + + /is-what/4.1.8: + resolution: {integrity: sha512-yq8gMao5upkPoGEU9LsB2P+K3Kt8Q3fQFCGyNCWOAnJAMzEXVV9drYb0TXr42TTliLLhKIBvulgAXgtLLnwzGA==} + engines: {node: '>=12.13'} + dev: false + + /is-wsl/2.2.0: + resolution: {integrity: sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==} + engines: {node: '>=8'} + dependencies: + is-docker: 2.2.1 + dev: true + + /isarray/2.0.5: + resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==} + dev: true + + /isexe/2.0.0: + resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} + dev: true + + /js-cookie/2.2.1: + resolution: {integrity: sha512-HvdH2LzI/EAZcUwA8+0nKNtWHqS+ZmijLA30RwZA0bo7ToCckjK5MkGhjED9KoRcXO6BaGI3I9UIzSA1FKFPOQ==} + dev: false + + /js-sdsl/4.3.0: + resolution: {integrity: sha512-mifzlm2+5nZ+lEcLJMoBK0/IH/bDg8XnJfd/Wq6IP+xoCjLZsTOnV2QpxlVbX9bMnkl5PdEjNtBJ9Cj1NjifhQ==} + dev: true + + /js-tokens/4.0.0: + resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} + + /js-yaml/4.1.0: + resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} + hasBin: true + dependencies: + argparse: 2.0.1 + dev: true + + /json-parse-even-better-errors/2.3.1: + resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==} + dev: false + + /json-schema-traverse/0.4.1: + resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} + dev: true + + /json-schema-traverse/1.0.0: + resolution: {integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==} + dev: false + + /json-stable-stringify-without-jsonify/1.0.1: + resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} + dev: true + + /json5/1.0.2: + resolution: {integrity: sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==} + hasBin: true + dependencies: + minimist: 1.2.7 + dev: true + + /jsx-ast-utils/3.3.3: + resolution: {integrity: sha512-fYQHZTZ8jSfmWZ0iyzfwiU4WDX4HpHbMCZ3gPlWYiCl3BoeOTsqKBqnTVfH2rYT7eP5c3sVbeSPHnnJOaTrWiw==} + engines: {node: '>=4.0'} + dependencies: + array-includes: 3.1.6 + object.assign: 4.1.4 + dev: true + + /kind-of/3.2.2: + resolution: {integrity: sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==} + engines: {node: '>=0.10.0'} + dependencies: + is-buffer: 1.1.6 + dev: false + + /language-subtag-registry/0.3.22: + resolution: {integrity: sha512-tN0MCzyWnoz/4nHS6uxdlFWoUZT7ABptwKPQ52Ea7URk6vll88bWBVhodtnlfEuCcKWNGoc+uGbw1cwa9IKh/w==} + dev: true + + /language-tags/1.0.5: + resolution: {integrity: sha512-qJhlO9cGXi6hBGKoxEG/sKZDAHD5Hnu9Hs4WbOY3pCWXDhw0N8x1NenNzm2EnNLkLkk7J2SdxAkDSbb6ftT+UQ==} + dependencies: + language-subtag-registry: 0.3.22 + dev: true + + /levn/0.4.1: + resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} + engines: {node: '>= 0.8.0'} + dependencies: + prelude-ls: 1.2.1 + type-check: 0.4.0 + dev: true + + /lilconfig/2.0.6: + resolution: {integrity: sha512-9JROoBW7pobfsx+Sq2JsASvCo6Pfo6WWoUW79HuB1BCoBXD4PLWJPqDF6fNj67pqBYTbAHkE57M1kS/+L1neOg==} + engines: {node: '>=10'} + dev: true + + /lines-and-columns/1.2.4: + resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} + dev: false + + /locate-path/6.0.0: + resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} + engines: {node: '>=10'} + dependencies: + p-locate: 5.0.0 + dev: true + + /lodash-es/4.17.21: + resolution: {integrity: sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==} + dev: false + + /lodash.clonedeep/4.5.0: + resolution: {integrity: sha512-H5ZhCF25riFd9uB5UCkVKo61m3S/xZk1x4wA6yp/L3RFP6Z/eHH1ymQcGLo7J3GMPfm0V/7m1tryHuGVxpqEBQ==} + dev: false + + /lodash.debounce/4.0.8: + resolution: {integrity: sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==} + dev: false + + /lodash.flatten/4.4.0: + resolution: {integrity: sha512-C5N2Z3DgnnKr0LOpv/hKCgKdb7ZZwafIrsesve6lmzvZIRZRGaZ/l6Q8+2W7NaT+ZwO3fFlSCzCzrDCFdJfZ4g==} + dev: false + + /lodash.isempty/4.4.0: + resolution: {integrity: sha512-oKMuF3xEeqDltrGMfDxAPGIVMSSRv8tbRSODbrs4KGsRRLEhrW8N8Rd4DRgB2+621hY8A8XwwrTVhXWpxFvMzg==} + dev: false + + /lodash.isobject/3.0.2: + resolution: {integrity: sha512-3/Qptq2vr7WeJbB4KHUSKlq8Pl7ASXi3UG6CMbBm8WRtXi8+GHm7mKaU3urfpSEzWe2wCIChs6/sdocUsTKJiA==} + dev: false + + /lodash.merge/4.6.2: + resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} + dev: true + + /lodash.throttle/4.1.1: + resolution: {integrity: sha512-wIkUCfVKpVsWo3JSZlc+8MB5it+2AN5W8J7YVMST30UrvcQNZ1Okbj+rbVniijTWE6FGYy4XJq/rHkas8qJMLQ==} + dev: false + + /lodash/4.17.21: + resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} + dev: false + + /loose-envify/1.4.0: + resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==} + hasBin: true + dependencies: + js-tokens: 4.0.0 + + /lru-cache/6.0.0: + resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==} + engines: {node: '>=10'} + dependencies: + yallist: 4.0.0 + dev: true + + /material-colors/1.2.6: + resolution: {integrity: sha512-6qE4B9deFBIa9YSpOc9O0Sgc43zTeVYbgDT5veRKSlB2+ZuHNoVVxA1L/ckMUayV9Ay9y7Z/SZCLcGteW9i7bg==} + dev: false + + /mdn-data/2.0.14: + resolution: {integrity: sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==} + dev: false + + /merge2/1.4.1: + resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} + engines: {node: '>= 8'} + dev: true + + /micromatch/4.0.5: + resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==} + engines: {node: '>=8.6'} + dependencies: + braces: 3.0.2 + picomatch: 2.3.1 + dev: true + + /minimatch/3.1.2: + resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} + dependencies: + brace-expansion: 1.1.11 + dev: true + + /minimist/1.2.7: + resolution: {integrity: sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==} + dev: true + + /ms/2.1.2: + resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} + dev: true + + /ms/2.1.3: + resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} + dev: true + + /nano-css/5.3.5_biqbaboplfbrettd7655fr4n2y: + resolution: {integrity: sha512-vSB9X12bbNu4ALBu7nigJgRViZ6ja3OU7CeuiV1zMIbXOdmkLahgtPmh3GBOlDxbKY0CitqlPdOReGlBLSp+yg==} + peerDependencies: + react: '*' + react-dom: '*' + dependencies: + css-tree: 1.1.3 + csstype: 3.1.1 + fastest-stable-stringify: 2.0.2 + inline-style-prefixer: 6.0.4 + react: 18.2.0 + react-dom: 18.2.0_react@18.2.0 + rtl-css-js: 1.16.1 + sourcemap-codec: 1.4.8 + stacktrace-js: 2.0.2 + stylis: 4.1.3 + dev: false + + /nanoid/3.3.4: + resolution: {integrity: sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==} + engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} + hasBin: true + + /natural-compare-lite/1.4.0: + resolution: {integrity: sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==} + dev: true + + /natural-compare/1.4.0: + resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} + dev: true + + /next/13.1.2_biqbaboplfbrettd7655fr4n2y: + resolution: {integrity: sha512-Rdnnb2YH///w78FEOR/IQ6TXga+qpth4OqFSem48ng1PYYKr6XBsIk1XVaRcIGM3o6iiHnun0nJvkJHDf+ICyQ==} + engines: {node: '>=14.6.0'} + hasBin: true + peerDependencies: + fibers: '>= 3.1.0' + node-sass: ^6.0.0 || ^7.0.0 + react: ^18.2.0 + react-dom: ^18.2.0 + sass: ^1.3.0 + peerDependenciesMeta: + fibers: + optional: true + node-sass: + optional: true + sass: + optional: true + dependencies: + '@next/env': 13.1.2 + '@swc/helpers': 0.4.14 + caniuse-lite: 1.0.30001449 + postcss: 8.4.14 + react: 18.2.0 + react-dom: 18.2.0_react@18.2.0 + styled-jsx: 5.1.1_react@18.2.0 + optionalDependencies: + '@next/swc-android-arm-eabi': 13.1.2 + '@next/swc-android-arm64': 13.1.2 + '@next/swc-darwin-arm64': 13.1.2 + '@next/swc-darwin-x64': 13.1.2 + '@next/swc-freebsd-x64': 13.1.2 + '@next/swc-linux-arm-gnueabihf': 13.1.2 + '@next/swc-linux-arm64-gnu': 13.1.2 + '@next/swc-linux-arm64-musl': 13.1.2 + '@next/swc-linux-x64-gnu': 13.1.2 + '@next/swc-linux-x64-musl': 13.1.2 + '@next/swc-win32-arm64-msvc': 13.1.2 + '@next/swc-win32-ia32-msvc': 13.1.2 + '@next/swc-win32-x64-msvc': 13.1.2 + transitivePeerDependencies: + - '@babel/core' + - babel-plugin-macros + dev: false + + /node-fetch/2.6.8: + resolution: {integrity: sha512-RZ6dBYuj8dRSfxpUSu+NsdF1dpPpluJxwOp+6IoDp/sH2QNDSvurYsAa+F1WxY2RjA1iP93xhcsUoYbF2XBqVg==} + engines: {node: 4.x || >=6.0.0} + peerDependencies: + encoding: ^0.1.0 + peerDependenciesMeta: + encoding: + optional: true + dependencies: + whatwg-url: 5.0.0 + dev: false + + /node-releases/2.0.8: + resolution: {integrity: sha512-dFSmB8fFHEH/s81Xi+Y/15DQY6VHW81nXRj86EMSL3lmuTmK1e+aT4wrFCkTbm+gSwkw4KpX+rT/pMM2c1mF+A==} + dev: true + + /normalize-path/3.0.0: + resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} + engines: {node: '>=0.10.0'} + dev: true + + /normalize-range/0.1.2: + resolution: {integrity: sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==} + engines: {node: '>=0.10.0'} + dev: true + + /object-assign/4.1.1: + resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} + engines: {node: '>=0.10.0'} + + /object-hash/3.0.0: + resolution: {integrity: sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==} + engines: {node: '>= 6'} + dev: true + + /object-inspect/1.12.3: + resolution: {integrity: sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==} + dev: true + + /object-is/1.1.5: + resolution: {integrity: sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.2 + define-properties: 1.1.4 + dev: true + + /object-keys/1.1.1: + resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==} + engines: {node: '>= 0.4'} + dev: true + + /object.assign/4.1.4: + resolution: {integrity: sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.2 + define-properties: 1.1.4 + has-symbols: 1.0.3 + object-keys: 1.1.1 + dev: true + + /object.entries/1.1.6: + resolution: {integrity: sha512-leTPzo4Zvg3pmbQ3rDK69Rl8GQvIqMWubrkxONG9/ojtFE2rD9fjMKfSI5BxW3osRH1m6VdzmqK8oAY9aT4x5w==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.2 + define-properties: 1.1.4 + es-abstract: 1.21.1 + dev: true + + /object.fromentries/2.0.6: + resolution: {integrity: sha512-VciD13dswC4j1Xt5394WR4MzmAQmlgN72phd/riNp9vtD7tp4QQWJ0R4wvclXcafgcYK8veHRed2W6XeGBvcfg==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.2 + define-properties: 1.1.4 + es-abstract: 1.21.1 + dev: true + + /object.hasown/1.1.2: + resolution: {integrity: sha512-B5UIT3J1W+WuWIU55h0mjlwaqxiE5vYENJXIXZ4VFe05pNYrkKuK0U/6aFcb0pKywYJh7IhfoqUfKVmrJJHZHw==} + dependencies: + define-properties: 1.1.4 + es-abstract: 1.21.1 + dev: true + + /object.values/1.1.6: + resolution: {integrity: sha512-FVVTkD1vENCsAcwNs9k6jea2uHC/X0+JcjG8YA60FN5CMaJmG95wT9jek/xX9nornqGRrBkKtzuAu2wuHpKqvw==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.2 + define-properties: 1.1.4 + es-abstract: 1.21.1 + dev: true + + /once/1.4.0: + resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} + dependencies: + wrappy: 1.0.2 + dev: true + + /open/8.4.0: + resolution: {integrity: sha512-XgFPPM+B28FtCCgSb9I+s9szOC1vZRSwgWsRUA5ylIxRTgKozqjOCrVOqGsYABPYK5qnfqClxZTFBa8PKt2v6Q==} + engines: {node: '>=12'} + dependencies: + define-lazy-prop: 2.0.0 + is-docker: 2.2.1 + is-wsl: 2.2.0 + dev: true + + /optionator/0.9.1: + resolution: {integrity: sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==} + engines: {node: '>= 0.8.0'} + dependencies: + deep-is: 0.1.4 + fast-levenshtein: 2.0.6 + levn: 0.4.1 + prelude-ls: 1.2.1 + type-check: 0.4.0 + word-wrap: 1.2.3 + dev: true + + /p-limit/3.1.0: + resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} + engines: {node: '>=10'} + dependencies: + yocto-queue: 0.1.0 + dev: true + + /p-locate/5.0.0: + resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} + engines: {node: '>=10'} + dependencies: + p-limit: 3.1.0 + dev: true + + /parent-module/1.0.1: + resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} + engines: {node: '>=6'} + dependencies: + callsites: 3.1.0 + + /parse-json/5.2.0: + resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==} + engines: {node: '>=8'} + dependencies: + '@babel/code-frame': 7.18.6 + error-ex: 1.3.2 + json-parse-even-better-errors: 2.3.1 + lines-and-columns: 1.2.4 + dev: false + + /path-exists/4.0.0: + resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} + engines: {node: '>=8'} + dev: true + + /path-is-absolute/1.0.1: + resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} + engines: {node: '>=0.10.0'} + dev: true + + /path-key/3.1.1: + resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} + engines: {node: '>=8'} + dev: true + + /path-parse/1.0.7: + resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} + + /path-type/4.0.0: + resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} + engines: {node: '>=8'} + + /picocolors/1.0.0: + resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==} + + /picomatch/2.3.1: + resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} + engines: {node: '>=8.6'} + dev: true + + /pify/2.3.0: + resolution: {integrity: sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==} + engines: {node: '>=0.10.0'} + dev: true + + /postcss-import/14.1.0_postcss@8.4.21: + resolution: {integrity: sha512-flwI+Vgm4SElObFVPpTIT7SU7R3qk2L7PyduMcokiaVKuWv9d/U+Gm/QAd8NDLuykTWTkcrjOeD2Pp1rMeBTGw==} + engines: {node: '>=10.0.0'} + peerDependencies: + postcss: ^8.0.0 + dependencies: + postcss: 8.4.21 + postcss-value-parser: 4.2.0 + read-cache: 1.0.0 + resolve: 1.22.1 + dev: true + + /postcss-js/4.0.0_postcss@8.4.21: + resolution: {integrity: sha512-77QESFBwgX4irogGVPgQ5s07vLvFqWr228qZY+w6lW599cRlK/HmnlivnnVUxkjHnCu4J16PDMHcH+e+2HbvTQ==} + engines: {node: ^12 || ^14 || >= 16} + peerDependencies: + postcss: ^8.3.3 + dependencies: + camelcase-css: 2.0.1 + postcss: 8.4.21 + dev: true + + /postcss-load-config/3.1.4_postcss@8.4.21: + resolution: {integrity: sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==} + engines: {node: '>= 10'} + peerDependencies: + postcss: '>=8.0.9' + ts-node: '>=9.0.0' + peerDependenciesMeta: + postcss: + optional: true + ts-node: + optional: true + dependencies: + lilconfig: 2.0.6 + postcss: 8.4.21 + yaml: 1.10.2 + dev: true + + /postcss-nested/6.0.0_postcss@8.4.21: + resolution: {integrity: sha512-0DkamqrPcmkBDsLn+vQDIrtkSbNkv5AD/M322ySo9kqFkCIYklym2xEmWkwo+Y3/qZo34tzEPNUw4y7yMCdv5w==} + engines: {node: '>=12.0'} + peerDependencies: + postcss: ^8.2.14 + dependencies: + postcss: 8.4.21 + postcss-selector-parser: 6.0.11 + dev: true + + /postcss-selector-parser/6.0.11: + resolution: {integrity: sha512-zbARubNdogI9j7WY4nQJBiNqQf3sLS3wCP4WfOidu+p28LofJqDH1tcXypGrcmMHhDk2t9wGhCsYe/+szLTy1g==} + engines: {node: '>=4'} + dependencies: + cssesc: 3.0.0 + util-deprecate: 1.0.2 + dev: true + + /postcss-value-parser/4.2.0: + resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==} + dev: true + + /postcss/8.4.14: + resolution: {integrity: sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==} + engines: {node: ^10 || ^12 || >=14} + dependencies: + nanoid: 3.3.4 + picocolors: 1.0.0 + source-map-js: 1.0.2 + dev: false + + /postcss/8.4.21: + resolution: {integrity: sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg==} + engines: {node: ^10 || ^12 || >=14} + dependencies: + nanoid: 3.3.4 + picocolors: 1.0.0 + source-map-js: 1.0.2 + dev: true + + /preact/10.11.3: + resolution: {integrity: sha512-eY93IVpod/zG3uMF22Unl8h9KkrcKIRs2EGar8hwLZZDU1lkjph303V9HZBwufh2s736U6VXuhD109LYqPoffg==} + dev: false + + /prelude-ls/1.2.1: + resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} + engines: {node: '>= 0.8.0'} + dev: true + + /prettier-plugin-tailwindcss/0.2.2_prettier@2.8.3: + resolution: {integrity: sha512-5RjUbWRe305pUpc48MosoIp6uxZvZxrM6GyOgsbGLTce+ehePKNm7ziW2dLG2air9aXbGuXlHVSQQw4Lbosq3w==} + engines: {node: '>=12.17.0'} + peerDependencies: + '@prettier/plugin-php': '*' + '@prettier/plugin-pug': '*' + '@shopify/prettier-plugin-liquid': '*' + '@shufo/prettier-plugin-blade': '*' + '@trivago/prettier-plugin-sort-imports': '*' + prettier: '>=2.2.0' + prettier-plugin-astro: '*' + prettier-plugin-css-order: '*' + prettier-plugin-import-sort: '*' + prettier-plugin-jsdoc: '*' + prettier-plugin-organize-attributes: '*' + prettier-plugin-organize-imports: '*' + prettier-plugin-style-order: '*' + prettier-plugin-svelte: '*' + prettier-plugin-twig-melody: '*' + peerDependenciesMeta: + '@prettier/plugin-php': + optional: true + '@prettier/plugin-pug': + optional: true + '@shopify/prettier-plugin-liquid': + optional: true + '@shufo/prettier-plugin-blade': + optional: true + '@trivago/prettier-plugin-sort-imports': + optional: true + prettier-plugin-astro: + optional: true + prettier-plugin-css-order: + optional: true + prettier-plugin-import-sort: + optional: true + prettier-plugin-jsdoc: + optional: true + prettier-plugin-organize-attributes: + optional: true + prettier-plugin-organize-imports: + optional: true + prettier-plugin-style-order: + optional: true + prettier-plugin-svelte: + optional: true + prettier-plugin-twig-melody: + optional: true + dependencies: + prettier: 2.8.3 + dev: true + + /prettier/2.8.3: + resolution: {integrity: sha512-tJ/oJ4amDihPoufT5sM0Z1SKEuKay8LfVAMlbbhnnkvt6BUserZylqo2PN+p9KeljLr0OHa2rXHU1T8reeoTrw==} + engines: {node: '>=10.13.0'} + hasBin: true + dev: true + + /prisma/4.9.0: + resolution: {integrity: sha512-bS96oZ5oDFXYgoF2l7PJ3Mp1wWWfLOo8B/jAfbA2Pn0Wm5Z/owBHzaMQKS3i1CzVBDWWPVnOohmbJmjvkcHS5w==} + engines: {node: '>=14.17'} + hasBin: true + requiresBuild: true + dependencies: + '@prisma/engines': 4.9.0 + + /prop-types/15.8.1: + resolution: {integrity: sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==} + dependencies: + loose-envify: 1.4.0 + object-assign: 4.1.1 + react-is: 16.13.1 + + /punycode/2.3.0: + resolution: {integrity: sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==} + engines: {node: '>=6'} + + /queue-microtask/1.2.3: + resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} + dev: true + + /quick-lru/5.1.1: + resolution: {integrity: sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==} + engines: {node: '>=10'} + dev: true + + /react-color/2.19.3_react@18.2.0: + resolution: {integrity: sha512-LEeGE/ZzNLIsFWa1TMe8y5VYqr7bibneWmvJwm1pCn/eNmrabWDh659JSPn9BuaMpEfU83WTOJfnCcjDZwNQTA==} + peerDependencies: + react: '*' + dependencies: + '@icons/material': 0.2.4_react@18.2.0 + lodash: 4.17.21 + lodash-es: 4.17.21 + material-colors: 1.2.6 + prop-types: 15.8.1 + react: 18.2.0 + reactcss: 1.2.3_react@18.2.0 + tinycolor2: 1.5.2 + dev: false + + /react-dnd-html5-backend/15.1.3: + resolution: {integrity: sha512-HH/8nOEmrrcRGHMqJR91FOwhnLlx5SRLXmsQwZT3IPcBjx88WT+0pWC5A4tDOYDdoooh9k+KMPvWfxooR5TcOA==} + dependencies: + dnd-core: 15.1.2 + dev: false + + /react-dnd/15.1.2_h5q4hm4i2eggm7qg7xpzfdcdgq: + resolution: {integrity: sha512-EaSbMD9iFJDY/o48T3c8wn3uWU+2uxfFojhesZN3LhigJoAIvH2iOjxofSA9KbqhAKP6V9P853G6XG8JngKVtA==} + peerDependencies: + '@types/hoist-non-react-statics': '>= 3.3.1' + '@types/node': '>= 12' + '@types/react': '>= 16' + react: '>= 16.14' + peerDependenciesMeta: + '@types/hoist-non-react-statics': + optional: true + '@types/node': + optional: true + '@types/react': + optional: true + dependencies: + '@react-dnd/invariant': 3.0.1 + '@react-dnd/shallowequal': 3.0.1 + '@types/node': 18.11.18 + '@types/react': 18.0.27 + dnd-core: 15.1.2 + fast-deep-equal: 3.1.3 + hoist-non-react-statics: 3.3.2 + react: 18.2.0 + dev: false + + /react-dom/18.2.0_react@18.2.0: + resolution: {integrity: sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==} + peerDependencies: + react: ^18.2.0 + dependencies: + loose-envify: 1.4.0 + react: 18.2.0 + scheduler: 0.23.0 + dev: false + + /react-draggable/4.4.5_biqbaboplfbrettd7655fr4n2y: + resolution: {integrity: sha512-OMHzJdyJbYTZo4uQE393fHcqqPYsEtkjfMgvCHr6rejT+Ezn4OZbNyGH50vv+SunC1RMvwOTSWkEODQLzw1M9g==} + peerDependencies: + react: '>= 16.3.0' + react-dom: '>= 16.3.0' + dependencies: + clsx: 1.2.1 + prop-types: 15.8.1 + react: 18.2.0 + react-dom: 18.2.0_react@18.2.0 + dev: false + + /react-icons/4.7.1_react@18.2.0: + resolution: {integrity: sha512-yHd3oKGMgm7zxo3EA7H2n7vxSoiGmHk5t6Ou4bXsfcgWyhfDKMpyKfhHR6Bjnn63c+YXBLBPUql9H4wPJM6sXw==} + peerDependencies: + react: '*' + dependencies: + react: 18.2.0 + dev: false + + /react-is/16.13.1: + resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==} + + /react-is/17.0.2: + resolution: {integrity: sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==} + dev: false + + /react-is/18.2.0: + resolution: {integrity: sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==} + dev: false + + /react-lazy-with-preload/2.2.1: + resolution: {integrity: sha512-ONSb8gizLE5jFpdHAclZ6EAAKuFX2JydnFXPPPjoUImZlLjGtKzyBS8SJgJq7CpLgsGKh9QCZdugJyEEOVC16Q==} + dev: false + + /react-portal/4.2.2_biqbaboplfbrettd7655fr4n2y: + resolution: {integrity: sha512-vS18idTmevQxyQpnde0Td6ZcUlv+pD8GTyR42n3CHUQq9OHi1C4jDE4ZWEbEsrbrLRhSECYiao58cvocwMtP7Q==} + peerDependencies: + react: ^16.0.0-0 || ^17.0.0-0 || ^18.0.0-0 + react-dom: ^16.0.0-0 || ^17.0.0-0 || ^18.0.0-0 + dependencies: + prop-types: 15.8.1 + react: 18.2.0 + react-dom: 18.2.0_react@18.2.0 + dev: false + + /react-redux/7.2.9_biqbaboplfbrettd7655fr4n2y: + resolution: {integrity: sha512-Gx4L3uM182jEEayZfRbI/G11ZpYdNAnBs70lFVMNdHJI76XYtR+7m0MN+eAs7UHBPhWXcnFPaS+9owSCJQHNpQ==} + peerDependencies: + react: ^16.8.3 || ^17 || ^18 + react-dom: '*' + react-native: '*' + peerDependenciesMeta: + react-dom: + optional: true + react-native: + optional: true + dependencies: + '@babel/runtime': 7.20.13 + '@types/react-redux': 7.1.25 + hoist-non-react-statics: 3.3.2 + loose-envify: 1.4.0 + prop-types: 15.8.1 + react: 18.2.0 + react-dom: 18.2.0_react@18.2.0 + react-is: 17.0.2 + dev: false + + /react-ssr-prepass/1.5.0_react@18.2.0: + resolution: {integrity: sha512-yFNHrlVEReVYKsLI5lF05tZoHveA5pGzjFbFJY/3pOqqjGOmMmqx83N4hIjN2n6E1AOa+eQEUxs3CgRnPmT0RQ==} + peerDependencies: + react: ^16.8.0 || ^17.0.0 || ^18.0.0 + dependencies: + react: 18.2.0 + dev: false + + /react-transition-group/4.4.5_biqbaboplfbrettd7655fr4n2y: + resolution: {integrity: sha512-pZcd1MCJoiKiBR2NRxeCRg13uCXbydPnmB4EOeRrY7480qNWO8IIgQG6zlDkm6uRMsURXPuKq0GWtiM59a5Q6g==} + peerDependencies: + react: '>=16.6.0' + react-dom: '>=16.6.0' + dependencies: + '@babel/runtime': 7.20.13 + dom-helpers: 5.2.1 + loose-envify: 1.4.0 + prop-types: 15.8.1 + react: 18.2.0 + react-dom: 18.2.0_react@18.2.0 + dev: false + + /react-universal-interface/0.6.2_react@18.2.0+tslib@2.5.0: + resolution: {integrity: sha512-dg8yXdcQmvgR13RIlZbTRQOoUrDciFVoSBZILwjE2LFISxZZ8loVJKAkuzswl5js8BHda79bIb2b84ehU8IjXw==} + peerDependencies: + react: '*' + tslib: '*' + dependencies: + react: 18.2.0 + tslib: 2.5.0 + dev: false + + /react-use/17.4.0_biqbaboplfbrettd7655fr4n2y: + resolution: {integrity: sha512-TgbNTCA33Wl7xzIJegn1HndB4qTS9u03QUwyNycUnXaweZkE4Kq2SB+Yoxx8qbshkZGYBDvUXbXWRUmQDcZZ/Q==} + peerDependencies: + react: ^16.8.0 || ^17.0.0 || ^18.0.0 + react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 + dependencies: + '@types/js-cookie': 2.2.7 + '@xobotyi/scrollbar-width': 1.9.5 + copy-to-clipboard: 3.3.3 + fast-deep-equal: 3.1.3 + fast-shallow-equal: 1.0.0 + js-cookie: 2.2.1 + nano-css: 5.3.5_biqbaboplfbrettd7655fr4n2y + react: 18.2.0 + react-dom: 18.2.0_react@18.2.0 + react-universal-interface: 0.6.2_react@18.2.0+tslib@2.5.0 + resize-observer-polyfill: 1.5.1 + screenfull: 5.2.0 + set-harmonic-interval: 1.0.1 + throttle-debounce: 3.0.1 + ts-easing: 0.2.0 + tslib: 2.5.0 + dev: false + + /react/18.2.0: + resolution: {integrity: sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==} + engines: {node: '>=0.10.0'} + dependencies: + loose-envify: 1.4.0 + dev: false + + /reactcss/1.2.3_react@18.2.0: + resolution: {integrity: sha512-KiwVUcFu1RErkI97ywr8nvx8dNOpT03rbnma0SSalTYjkrPYaEajR4a/MRt6DZ46K6arDRbWMNHF+xH7G7n/8A==} + peerDependencies: + react: '*' + dependencies: + lodash: 4.17.21 + react: 18.2.0 + dev: false + + /read-cache/1.0.0: + resolution: {integrity: sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==} + dependencies: + pify: 2.3.0 + dev: true + + /readdirp/3.6.0: + resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} + engines: {node: '>=8.10.0'} + dependencies: + picomatch: 2.3.1 + dev: true + + /redux-thunk/2.4.2_redux@4.2.0: + resolution: {integrity: sha512-+P3TjtnP0k/FEjcBL5FZpoovtvrTNT/UXd4/sluaSyrURlSlhLSzEdfsTBW7WsKB6yPvgd7q/iZPICFjW4o57Q==} + peerDependencies: + redux: ^4 + dependencies: + redux: 4.2.0 + dev: false + + /redux-undo/1.0.1: + resolution: {integrity: sha512-0yFPT+FUgwxCEiS0Mg5T1S4tkgjR8h6sJRY9CW4EMsbJOf1SxO289TbJmlzhRouCHacdDF+powPjrjLHoJYxWQ==} + dev: false + + /redux/4.2.0: + resolution: {integrity: sha512-oSBmcKKIuIR4ME29/AeNUnl5L+hvBq7OaJWzaptTQJAntaPvxIJqfnjbaEiCzzaIz+XmVILfqAM3Ob0aXLPfjA==} + dependencies: + '@babel/runtime': 7.20.13 + dev: false + + /regenerator-runtime/0.13.11: + resolution: {integrity: sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==} + + /regexp.prototype.flags/1.4.3: + resolution: {integrity: sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.2 + define-properties: 1.1.4 + functions-have-names: 1.2.3 + dev: true + + /regexpp/3.2.0: + resolution: {integrity: sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==} + engines: {node: '>=8'} + dev: true + + /rename-keys/1.2.0: + resolution: {integrity: sha512-U7XpAktpbSgHTRSNRrjKSrjYkZKuhUukfoBlXWXUExCAqhzh1TU3BDRAfJmarcl5voKS+pbKU9MvyLWKZ4UEEg==} + engines: {node: '>= 0.8.0'} + dev: false + + /require-from-string/2.0.2: + resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==} + engines: {node: '>=0.10.0'} + dev: false + + /resize-observer-polyfill/1.5.1: + resolution: {integrity: sha512-LwZrotdHOo12nQuZlHEmtuXdqGoOD0OhaxopaNFxWzInpEgaLWoVuAMbTzixuosCx2nEG58ngzW3vxdWoxIgdg==} + dev: false + + /resolve-from/4.0.0: + resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} + engines: {node: '>=4'} + + /resolve/1.22.1: + resolution: {integrity: sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==} + hasBin: true + dependencies: + is-core-module: 2.11.0 + path-parse: 1.0.7 + supports-preserve-symlinks-flag: 1.0.0 + + /resolve/2.0.0-next.4: + resolution: {integrity: sha512-iMDbmAWtfU+MHpxt/I5iWI7cY6YVEZUQ3MBgPQ++XD1PELuJHIl82xBmObyP2KyQmkNB2dsqF7seoQQiAn5yDQ==} + hasBin: true + dependencies: + is-core-module: 2.11.0 + path-parse: 1.0.7 + supports-preserve-symlinks-flag: 1.0.0 + dev: true + + /reusify/1.0.4: + resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} + engines: {iojs: '>=1.0.0', node: '>=0.10.0'} + dev: true + + /rimraf/3.0.2: + resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} + hasBin: true + dependencies: + glob: 7.2.3 + dev: true + + /rtl-css-js/1.16.1: + resolution: {integrity: sha512-lRQgou1mu19e+Ya0LsTvKrVJ5TYUbqCVPAiImX3UfLTenarvPUl1QFdvu5Z3PYmHT9RCcwIfbjRQBntExyj3Zg==} + dependencies: + '@babel/runtime': 7.20.13 + dev: false + + /run-parallel/1.2.0: + resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} + dependencies: + queue-microtask: 1.2.3 + dev: true + + /safe-regex-test/1.0.0: + resolution: {integrity: sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==} + dependencies: + call-bind: 1.0.2 + get-intrinsic: 1.2.0 + is-regex: 1.1.4 + dev: true + + /scheduler/0.23.0: + resolution: {integrity: sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==} + dependencies: + loose-envify: 1.4.0 + dev: false + + /screenfull/5.2.0: + resolution: {integrity: sha512-9BakfsO2aUQN2K9Fdbj87RJIEZ82Q9IGim7FqM5OsebfoFC6ZHXgDq/KvniuLTPdeM8wY2o6Dj3WQ7KeQCj3cA==} + engines: {node: '>=0.10.0'} + dev: false + + /scroll-into-view-if-needed/2.2.31: + resolution: {integrity: sha512-dGCXy99wZQivjmjIqihaBQNjryrz5rueJY7eHfTdyWEiR4ttYpsajb14rn9s5d4DY4EcY6+4+U/maARBXJedkA==} + dependencies: + compute-scroll-into-view: 1.0.20 + dev: false + + /semver/6.3.0: + resolution: {integrity: sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==} + hasBin: true + dev: true + + /semver/7.3.8: + resolution: {integrity: sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==} + engines: {node: '>=10'} + hasBin: true + dependencies: + lru-cache: 6.0.0 + dev: true + + /set-harmonic-interval/1.0.1: + resolution: {integrity: sha512-AhICkFV84tBP1aWqPwLZqFvAwqEoVA9kxNMniGEUvzOlm4vLmOFLiTT3UZ6bziJTy4bOVpzWGTfSCbmaayGx8g==} + engines: {node: '>=6.9'} + dev: false + + /shebang-command/2.0.0: + resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} + engines: {node: '>=8'} + dependencies: + shebang-regex: 3.0.0 + dev: true + + /shebang-regex/3.0.0: + resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} + engines: {node: '>=8'} + dev: true + + /side-channel/1.0.4: + resolution: {integrity: sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==} + dependencies: + call-bind: 1.0.2 + get-intrinsic: 1.2.0 + object-inspect: 1.12.3 + dev: true + + /slash/3.0.0: + resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} + engines: {node: '>=8'} + dev: true + + /slash/4.0.0: + resolution: {integrity: sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==} + engines: {node: '>=12'} + dev: true + + /slate-hyperscript/0.77.0_slate@0.78.0: + resolution: {integrity: sha512-M6uRpttwKnosniQORNPYQABHQ9XWC7qaSr/127LWWPjTOR5MSSwrHGrghN81BhZVqpICHrI7jkPA2813cWdHNA==} + peerDependencies: + slate: '>=0.65.3' + dependencies: + is-plain-object: 5.0.0 + slate: 0.78.0 + dev: false + + /slate-react-presentation/0.1.1_react@18.2.0: + resolution: {integrity: sha512-kXbK6sHDl3empqgAlIpzZlPAW697TgUqtgRFCl3ssa5wetoHS/63jVGesWJJ1xdhDZgAuhK/UkOBgG7Hl0j2TA==} + peerDependencies: + react: ^16.12.0 + dependencies: + react: 18.2.0 + dev: false + + /slate-react/0.79.0_6ju7s5epj2rvc7lvaohr2as5hq: + resolution: {integrity: sha512-uPzYArGwHKq4QvpzRvP/DVvsDgB2Zw6x9Som/hJWaydu18r0Vp2vmgHL0Dbc4EU6pUNV6o83XbBJLLEwISzBHQ==} + peerDependencies: + react: '>=16.8.0' + react-dom: '>=16.8.0' + slate: '>=0.65.3' + dependencies: + '@types/is-hotkey': 0.1.7 + '@types/lodash': 4.14.191 + direction: 1.0.4 + is-hotkey: 0.1.8 + is-plain-object: 5.0.0 + lodash: 4.17.21 + react: 18.2.0 + react-dom: 18.2.0_react@18.2.0 + scroll-into-view-if-needed: 2.2.31 + slate: 0.78.0 + tiny-invariant: 1.0.6 + dev: false + + /slate/0.78.0: + resolution: {integrity: sha512-VwQ0RafT3JPf9SFrXI02Dh3S4Iz9en7d1nn50C/LJjjqjfgv+a2ORbgWMdYjhycPYldaxJwcI3OpP9D1g4SXEg==} + dependencies: + immer: 9.0.19 + is-plain-object: 5.0.0 + tiny-warning: 1.0.3 + dev: false + + /source-map-js/1.0.2: + resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==} + engines: {node: '>=0.10.0'} + + /source-map/0.5.6: + resolution: {integrity: sha512-MjZkVp0NHr5+TPihLcadqnlVoGIoWo4IBHptutGh9wI3ttUYvCG26HkSuDi+K6lsZ25syXJXcctwgyVCt//xqA==} + engines: {node: '>=0.10.0'} + dev: false + + /source-map/0.5.7: + resolution: {integrity: sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==} + engines: {node: '>=0.10.0'} + dev: false + + /source-map/0.6.1: + resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==} + engines: {node: '>=0.10.0'} + dev: false + + /sourcemap-codec/1.4.8: + resolution: {integrity: sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==} + deprecated: Please use @jridgewell/sourcemap-codec instead + dev: false + + /stack-generator/2.0.10: + resolution: {integrity: sha512-mwnua/hkqM6pF4k8SnmZ2zfETsRUpWXREfA/goT8SLCV4iOFa4bzOX2nDipWAZFPTjLvQB82f5yaodMVhK0yJQ==} + dependencies: + stackframe: 1.3.4 + dev: false + + /stackframe/1.3.4: + resolution: {integrity: sha512-oeVtt7eWQS+Na6F//S4kJ2K2VbRlS9D43mAlMyVpVWovy9o+jfgH8O9agzANzaiLjclA0oYzUXEM4PurhSUChw==} + dev: false + + /stacktrace-gps/3.1.2: + resolution: {integrity: sha512-GcUgbO4Jsqqg6RxfyTHFiPxdPqF+3LFmQhm7MgCuYQOYuWyqxo5pwRPz5d/u6/WYJdEnWfK4r+jGbyD8TSggXQ==} + dependencies: + source-map: 0.5.6 + stackframe: 1.3.4 + dev: false + + /stacktrace-js/2.0.2: + resolution: {integrity: sha512-Je5vBeY4S1r/RnLydLl0TBTi3F2qdfWmYsGvtfZgEI+SCprPppaIhQf5nGcal4gI4cGpCV/duLcAzT1np6sQqg==} + dependencies: + error-stack-parser: 2.1.4 + stack-generator: 2.0.10 + stacktrace-gps: 3.1.2 + dev: false + + /stop-iteration-iterator/1.0.0: + resolution: {integrity: sha512-iCGQj+0l0HOdZ2AEeBADlsRC+vsnDsZsbdSiH1yNSjcfKM7fdpCMfqAL/dwF5BLiw/XhRft/Wax6zQbhq2BcjQ==} + engines: {node: '>= 0.4'} + dependencies: + internal-slot: 1.0.4 + dev: true + + /string.prototype.matchall/4.0.8: + resolution: {integrity: sha512-6zOCOcJ+RJAQshcTvXPHoxoQGONa3e/Lqx90wUA+wEzX78sg5Bo+1tQo4N0pohS0erG9qtCqJDjNCQBjeWVxyg==} + dependencies: + call-bind: 1.0.2 + define-properties: 1.1.4 + es-abstract: 1.21.1 + get-intrinsic: 1.2.0 + has-symbols: 1.0.3 + internal-slot: 1.0.4 + regexp.prototype.flags: 1.4.3 + side-channel: 1.0.4 + dev: true + + /string.prototype.trimend/1.0.6: + resolution: {integrity: sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==} + dependencies: + call-bind: 1.0.2 + define-properties: 1.1.4 + es-abstract: 1.21.1 + dev: true + + /string.prototype.trimstart/1.0.6: + resolution: {integrity: sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==} + dependencies: + call-bind: 1.0.2 + define-properties: 1.1.4 + es-abstract: 1.21.1 + dev: true + + /strip-ansi/6.0.1: + resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} + engines: {node: '>=8'} + dependencies: + ansi-regex: 5.0.1 + dev: true + + /strip-bom/3.0.0: + resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==} + engines: {node: '>=4'} + dev: true + + /strip-json-comments/3.1.1: + resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} + engines: {node: '>=8'} + dev: true + + /styled-jsx/5.1.1_react@18.2.0: + resolution: {integrity: sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw==} + engines: {node: '>= 12.0.0'} + peerDependencies: + '@babel/core': '*' + babel-plugin-macros: '*' + react: '>= 16.8.0 || 17.x.x || ^18.0.0-0' + peerDependenciesMeta: + '@babel/core': + optional: true + babel-plugin-macros: + optional: true + dependencies: + client-only: 0.0.1 + react: 18.2.0 + dev: false + + /stylis/4.1.3: + resolution: {integrity: sha512-GP6WDNWf+o403jrEp9c5jibKavrtLW+/qYGhFxFrG8maXhwTBI7gLLhiBb0o7uFccWN+EOS9aMO6cGHWAO07OA==} + dev: false + + /superjson/1.9.1: + resolution: {integrity: sha512-oT3HA2nPKlU1+5taFgz/HDy+GEaY+CWEbLzaRJVD4gZ7zMVVC4GDNFdgvAZt6/VuIk6D2R7RtPAiCHwmdzlMmg==} + engines: {node: '>=10'} + dependencies: + copy-anything: 3.0.3 + dev: false + + /supports-color/5.5.0: + resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==} + engines: {node: '>=4'} + dependencies: + has-flag: 3.0.0 + dev: false + + /supports-color/7.2.0: + resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} + engines: {node: '>=8'} + dependencies: + has-flag: 4.0.0 + dev: true + + /supports-preserve-symlinks-flag/1.0.0: + resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} + engines: {node: '>= 0.4'} + + /synckit/0.8.5: + resolution: {integrity: sha512-L1dapNV6vu2s/4Sputv8xGsCdAVlb5nRDMFU/E27D44l5U6cw1g0dGd45uLc+OXjNMmF4ntiMdCimzcjFKQI8Q==} + engines: {node: ^14.18.0 || >=16.0.0} + dependencies: + '@pkgr/utils': 2.3.1 + tslib: 2.5.0 + dev: true + + /tailwindcss/3.2.4: + resolution: {integrity: sha512-AhwtHCKMtR71JgeYDaswmZXhPcW9iuI9Sp2LvZPo9upDZ7231ZJ7eA9RaURbhpXGVlrjX4cFNlB4ieTetEb7hQ==} + engines: {node: '>=12.13.0'} + hasBin: true + dependencies: + arg: 5.0.2 + chokidar: 3.5.3 + color-name: 1.1.4 + detective: 5.2.1 + didyoumean: 1.2.2 + dlv: 1.1.3 + fast-glob: 3.2.12 + glob-parent: 6.0.2 + is-glob: 4.0.3 + lilconfig: 2.0.6 + micromatch: 4.0.5 + normalize-path: 3.0.0 + object-hash: 3.0.0 + picocolors: 1.0.0 + postcss: 8.4.21 + postcss-import: 14.1.0_postcss@8.4.21 + postcss-js: 4.0.0_postcss@8.4.21 + postcss-load-config: 3.1.4_postcss@8.4.21 + postcss-nested: 6.0.0_postcss@8.4.21 + postcss-selector-parser: 6.0.11 + postcss-value-parser: 4.2.0 + quick-lru: 5.1.1 + resolve: 1.22.1 + transitivePeerDependencies: + - ts-node + dev: true + + /tapable/2.2.1: + resolution: {integrity: sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==} + engines: {node: '>=6'} + dev: true + + /text-table/0.2.0: + resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==} + dev: true + + /throttle-debounce/3.0.1: + resolution: {integrity: sha512-dTEWWNu6JmeVXY0ZYoPuH5cRIwc0MeGbJwah9KUNYSJwommQpCzTySTpEe8Gs1J23aeWEuAobe4Ag7EHVt/LOg==} + engines: {node: '>=10'} + dev: false + + /tiny-glob/0.2.9: + resolution: {integrity: sha512-g/55ssRPUjShh+xkfx9UPDXqhckHEsHr4Vd9zX55oSdGZc/MD0m3sferOkwWtp98bv+kcVfEHtRJgBVJzelrzg==} + dependencies: + globalyzer: 0.1.0 + globrex: 0.1.2 + dev: true + + /tiny-invariant/1.0.6: + resolution: {integrity: sha512-FOyLWWVjG+aC0UqG76V53yAWdXfH8bO6FNmyZOuUrzDzK8DI3/JRY25UD7+g49JWM1LXwymsKERB+DzI0dTEQA==} + dev: false + + /tiny-warning/1.0.3: + resolution: {integrity: sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA==} + dev: false + + /tinycolor2/1.5.2: + resolution: {integrity: sha512-h80m9GPFGbcLzZByXlNSEhp1gf8Dy+VX/2JCGUZsWLo7lV1mnE/XlxGYgRBoMLJh1lIDXP0EMC4RPTjlRaV+Bg==} + dev: false + + /to-fast-properties/2.0.0: + resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==} + engines: {node: '>=4'} + dev: false + + /to-regex-range/5.0.1: + resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} + engines: {node: '>=8.0'} + dependencies: + is-number: 7.0.0 + dev: true + + /toggle-selection/1.0.6: + resolution: {integrity: sha512-BiZS+C1OS8g/q2RRbJmy59xpyghNBqrr6k5L/uKBGRsTfxmu3ffiRnd8mlGPUVayg8pvfi5urfnu8TU7DVOkLQ==} + dev: false + + /tr46/0.0.3: + resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==} + dev: false + + /ts-easing/0.2.0: + resolution: {integrity: sha512-Z86EW+fFFh/IFB1fqQ3/+7Zpf9t2ebOAxNI/V6Wo7r5gqiqtxmgTlQ1qbqQcjLKYeSHPTsEmvlJUDg/EuL0uHQ==} + dev: false + + /tsconfig-paths/3.14.1: + resolution: {integrity: sha512-fxDhWnFSLt3VuTwtvJt5fpwxBHg5AdKWMsgcPOOIilyjymcYVZoCQF8fvFRezCNfblEXmi+PcM1eYHeOAgXCOQ==} + dependencies: + '@types/json5': 0.0.29 + json5: 1.0.2 + minimist: 1.2.7 + strip-bom: 3.0.0 + dev: true + + /tslib/1.14.1: + resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==} + + /tslib/2.5.0: + resolution: {integrity: sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==} + + /tsutils/3.21.0_typescript@4.9.4: + resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==} + engines: {node: '>= 6'} + peerDependencies: + typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta' + dependencies: + tslib: 1.14.1 + typescript: 4.9.4 + dev: true + + /type-check/0.4.0: + resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} + engines: {node: '>= 0.8.0'} + dependencies: + prelude-ls: 1.2.1 + dev: true + + /type-fest/0.20.2: + resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==} + engines: {node: '>=10'} + dev: true + + /typed-array-length/1.0.4: + resolution: {integrity: sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==} + dependencies: + call-bind: 1.0.2 + for-each: 0.3.3 + is-typed-array: 1.1.10 + dev: true + + /typescript/4.9.4: + resolution: {integrity: sha512-Uz+dTXYzxXXbsFpM86Wh3dKCxrQqUcVMxwU54orwlJjOpO3ao8L7j5lH+dWfTwgCwIuM9GQ2kvVotzYJMXTBZg==} + engines: {node: '>=4.2.0'} + hasBin: true + dev: true + + /unbox-primitive/1.0.2: + resolution: {integrity: sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==} + dependencies: + call-bind: 1.0.2 + has-bigints: 1.0.2 + has-symbols: 1.0.3 + which-boxed-primitive: 1.0.2 + dev: true + + /uniforms-bridge-json-schema/3.10.2_react@18.2.0: + resolution: {integrity: sha512-J2RG0WQrMH39M9124lhopXnbR/ycuLJk9IkA/ix9Dxpk1dQ7EuHLg/CeXTeZTeQiF2KZrKMYXxUswEmFh7kIMQ==} + dependencies: + invariant: 2.2.4 + lodash: 4.17.21 + tslib: 2.5.0 + uniforms: 3.10.2_react@18.2.0 + transitivePeerDependencies: + - react + dev: false + + /uniforms/3.10.2_react@18.2.0: + resolution: {integrity: sha512-5FIqpAqyWDmDhaNkmXOxuz8dJ09jPg0gTpn13O6WiqtCY+nmVtHK4yGSpFU1UIjwBt9KfbRPFFmCAbYlCyV4bw==} + peerDependencies: + react: ^18.0.0 || ^17.0.0 || ^16.8.0 + dependencies: + invariant: 2.2.4 + lodash: 4.17.21 + react: 18.2.0 + tslib: 2.5.0 + dev: false + + /update-browserslist-db/1.0.10_browserslist@4.21.4: + resolution: {integrity: sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==} + hasBin: true + peerDependencies: + browserslist: '>= 4.21.0' + dependencies: + browserslist: 4.21.4 + escalade: 3.1.1 + picocolors: 1.0.0 + dev: true + + /uri-js/4.4.1: + resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} + dependencies: + punycode: 2.3.0 + + /use-sync-external-store/1.2.0_react@18.2.0: + resolution: {integrity: sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA==} + peerDependencies: + react: ^16.8.0 || ^17.0.0 || ^18.0.0 + dependencies: + react: 18.2.0 + dev: false + + /util-deprecate/1.0.2: + resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} + dev: true + + /vm2/3.9.13: + resolution: {integrity: sha512-0rvxpB8P8Shm4wX2EKOiMp7H2zq+HUE/UwodY0pCZXs9IffIKZq6vUti5OgkVCTakKo9e/fgO4X1fkwfjWxE3Q==} + engines: {node: '>=6.0'} + hasBin: true + dependencies: + acorn: 8.8.2 + acorn-walk: 8.2.0 + dev: false + + /webidl-conversions/3.0.1: + resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==} + dev: false + + /whatwg-url/5.0.0: + resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==} + dependencies: + tr46: 0.0.3 + webidl-conversions: 3.0.1 + dev: false + + /which-boxed-primitive/1.0.2: + resolution: {integrity: sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==} + dependencies: + is-bigint: 1.0.4 + is-boolean-object: 1.1.2 + is-number-object: 1.0.7 + is-string: 1.0.7 + is-symbol: 1.0.4 + dev: true + + /which-collection/1.0.1: + resolution: {integrity: sha512-W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A==} + dependencies: + is-map: 2.0.2 + is-set: 2.0.2 + is-weakmap: 2.0.1 + is-weakset: 2.0.2 + dev: true + + /which-typed-array/1.1.9: + resolution: {integrity: sha512-w9c4xkx6mPidwp7180ckYWfMmvxpjlZuIudNtDf4N/tTAUB8VJbX25qZoAsrtGuYNnGw3pa0AXgbGKRB8/EceA==} + engines: {node: '>= 0.4'} + dependencies: + available-typed-arrays: 1.0.5 + call-bind: 1.0.2 + for-each: 0.3.3 + gopd: 1.0.1 + has-tostringtag: 1.0.0 + is-typed-array: 1.1.10 + dev: true + + /which/2.0.2: + resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} + engines: {node: '>= 8'} + hasBin: true + dependencies: + isexe: 2.0.0 + dev: true + + /word-wrap/1.2.3: + resolution: {integrity: sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==} + engines: {node: '>=0.10.0'} + dev: true + + /wrappy/1.0.2: + resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} + dev: true + + /xtend/4.0.2: + resolution: {integrity: sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==} + engines: {node: '>=0.4'} + dev: true + + /yallist/4.0.0: + resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} + dev: true + + /yaml/1.10.2: + resolution: {integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==} + engines: {node: '>= 6'} + + /yocto-queue/0.1.0: + resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} + engines: {node: '>=10'} + dev: true + + /zod/3.20.2: + resolution: {integrity: sha512-1MzNQdAvO+54H+EaK5YpyEy0T+Ejo/7YLHS93G3RnYWh5gaotGHwGeN/ZO687qEDU2y4CdStQYXVHIgrUl5UVQ==} + dev: false diff --git a/postcss.config.cjs b/postcss.config.cjs new file mode 100644 index 0000000..12a703d --- /dev/null +++ b/postcss.config.cjs @@ -0,0 +1,6 @@ +module.exports = { + plugins: { + tailwindcss: {}, + autoprefixer: {}, + }, +}; diff --git a/prettier.config.cjs b/prettier.config.cjs new file mode 100644 index 0000000..58b0aee --- /dev/null +++ b/prettier.config.cjs @@ -0,0 +1,4 @@ +/** @type {import("prettier").Config} */ +module.exports = { + plugins: [require.resolve("prettier-plugin-tailwindcss")], +}; diff --git a/prisma/schema.prisma b/prisma/schema.prisma new file mode 100644 index 0000000..6d43fd2 --- /dev/null +++ b/prisma/schema.prisma @@ -0,0 +1,17 @@ +// This is your Prisma schema file, +// learn more about it in the docs: https://pris.ly/d/prisma-schema + +generator client { + provider = "prisma-client-js" +} + +datasource db { + provider = "sqlite" + url = env("DATABASE_URL") +} + +model Example { + id String @id @default(cuid()) + createdAt DateTime @default(now()) + updatedAt DateTime @updatedAt +} diff --git a/public/favicon.ico b/public/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..efd76f16a3593544115c9a60576374dc3660b9f1 GIT binary patch literal 15406 zcmeI2No*BI5QZm86t3iuyH62ECx@JK#R3TwFxMayCm2~AIIu{Z0U>rH7K4Gl1e>G&-CBbRn^ti?RnpL-+Dub zdRpdqe}CtBzj~gRlk@3**bkmps?TzB9-Z zP{cRNh01NAKJ--{NV~qz126aO+b5GJPnPlH$IGNilVtn$?Sb|CzU=Pqmizbb%e8CQ zBo>Rw$B!TTRtdasZEcmSSFg&A8#kn`u1;>=yct;E|B|-Ad-Uj0xpL)-T)uo+9z1y9 zuM&9u^5sjZudkQKj~`1-O^uv7btB9zA+w z*pUPH!_bQtFQl@vQg-j&EqCtRk>=*+FrQmp#_q$14>o@MFD!L+by+`zkM3gfC_`~3jc%O#1GDxF{2l+S+hpYoH--ZiHewe z^7Hd$`0(LLdF05EQc+P6Rr7+3J32aS4&JtHoA|l5wpQN0eQR|h1K`MykwY?$8s4i{ zuVnAuy)t|DY&m)Iq?|r|S~hRqESolMGG4oOtz5cvDKZ!7$lG1iRl)2B~O?`WH~1GdLCj30dS z=1mmM+y7ZNFa}SaJQ4IA1`~b84@B8Mooa7ym$PTj+WbcO@Zm$*vSo{~9$`MjCd019 z1|lqUZ0gjh!a8#9+`0A(Fhr^Qew-ICUNn90?Ci90p=2EJ1F0Z%A79HHoLEQUlbCl? zMXcM-ojWHdPMom5qZ?VuObMv(O6&SV+pkNP zzk_lDU&}l4B$}f2{!s2mo@9vX%g@SXD#KRglmr z=H=zdgb5R*u&_|bb&+Rqfsp5{S+iu+s8IsO|H}g>o{tzYLZ(ljZu^cd;3tQ{nwkAO z_D+{BU25xj*7SZRw~owNYqHjL(H4*=xPsUPnP)M$CjrhckUwD`AA7*3awdUX9?$*E zGjhBx5Wbuo*t~i3Wbxv~vT)%-S-*b0Y}~lfa&qM7{Cw!pAv-TX-pU0cXT4;}63bmK zSg=4AEm~wUCx@3{a;@}{{5p9}_O)E0va&LhcX@fatX#R$a?s>o6WGD}`t@te$&#OD zpOQSG3q;NuJe;zf5^dOw_wF~k$D3DyLazC zj|KU0SFkhweer{hcmiF=-;hU6?5UC8rLQhgGW_g+u=lfU*)l6R!Rve)NPrTx8DKFk)2vDc3I0^XJcH*REZ%eED+o@qYZVSj=RPts;BkJ9LV5 z0sTlfVV~$V`_l9QpALS;1Nk36eq7iy$A^NQXZRuN^KH6`J#X|Q5g)L(4}OR_b@l4i zvSY^%+j|3hqEF1bQJzETuUv@Tj~qE-Ye25?FW?6!u|#!swa`b1XPhZyOkBYaCVV}( z(GUDPexH~Jokz#ndu(WEF#AQv&^K4`BUkj8`4+sKQNTXgvtz#&AH#f$%!xCx55|jU z^w$+acaS@Na@w?M))(|>+_-TvWy%zTi5_t-mp643uT=9{_ z&e#KX0b{S|J@bPL^VXMS#~jNU4(2WxyCD8yp34*hD`Nn&=5keMGDV(QoLLD3NWh(7 zBmiWxSLzp_jNU)heyvN^w+wm4S%_R612-1bA%v!wIm^MBlkb)P)O$A)!Tsn%9BYAA k^`Ak>)%$gfg|c%&7MPUK6V7XZ)v$AhCQDff3{(RD0`^Hap8x;= literal 0 HcmV?d00001 diff --git a/public/logo.png b/public/logo.png new file mode 100755 index 0000000000000000000000000000000000000000..b5a49b8d8788afd05fd3e8b559e1271bb6ce5370 GIT binary patch literal 65843 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 W_9A>=LHy=~w*K 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%0A{-4^qOz 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 UjtEOW2LQdK#N,string>} */ + errors, +) => + Object.entries(errors) + .map(([name, value]) => { + if (value && "_errors" in value) + return `${name}: ${value._errors.join(", ")}\n`; + }) + .filter(Boolean); + +if (!_clientEnv.success) { + console.error( + "❌ Invalid environment variables:\n", + ...formatErrors(_clientEnv.error.format()), + ); + throw new Error("Invalid environment variables"); +} + +for (let key of Object.keys(_clientEnv.data)) { + if (!key.startsWith("NEXT_PUBLIC_")) { + console.warn( + `❌ Invalid public environment variable name: ${key}. It must begin with 'NEXT_PUBLIC_'`, + ); + + throw new Error("Invalid public environment variable name"); + } +} + +export const env = _clientEnv.data; diff --git a/src/env/schema.mjs b/src/env/schema.mjs new file mode 100644 index 0000000..f2a36da --- /dev/null +++ b/src/env/schema.mjs @@ -0,0 +1,40 @@ +// @ts-check +import { z } from "zod"; + +/** + * Specify your server-side environment variables schema here. + * This way you can ensure the app isn't built with invalid env vars. + */ +export const serverSchema = z.object({ + DATABASE_URL: z.string().url(), + NODE_ENV: z.enum(["development", "test", "production"]), +}); + +/** + * You can't destruct `process.env` as a regular object in the Next.js + * middleware, so you have to do it manually here. + * @type {{ [k in keyof z.infer]: z.infer[k] | undefined }} + */ +export const serverEnv = { + DATABASE_URL: process.env.DATABASE_URL, + NODE_ENV: process.env.NODE_ENV, +}; + +/** + * Specify your client-side environment variables schema here. + * This way you can ensure the app isn't built with invalid env vars. + * To expose them to the client, prefix them with `NEXT_PUBLIC_`. + */ +export const clientSchema = z.object({ + // NEXT_PUBLIC_CLIENTVAR: z.string(), +}); + +/** + * You can't destruct `process.env` as a regular object, so you have to do + * it manually here. This is because Next.js evaluates this at build time, + * and only used environment variables are included in the build. + * @type {{ [k in keyof z.infer]: z.infer[k] | undefined }} + */ +export const clientEnv = { + // NEXT_PUBLIC_CLIENTVAR: process.env.NEXT_PUBLIC_CLIENTVAR, +}; diff --git a/src/env/server.mjs b/src/env/server.mjs new file mode 100644 index 0000000..c04b5ae --- /dev/null +++ b/src/env/server.mjs @@ -0,0 +1,27 @@ +// @ts-check +/** + * This file is included in `/next.config.mjs` which ensures the app isn't built with invalid env vars. + * It has to be a `.mjs`-file to be imported there. + */ +import { serverSchema, serverEnv } from "./schema.mjs"; +import { env as clientEnv, formatErrors } from "./client.mjs"; + +const _serverEnv = serverSchema.safeParse(serverEnv); + +if (!_serverEnv.success) { + console.error( + "❌ Invalid environment variables:\n", + ...formatErrors(_serverEnv.error.format()), + ); + throw new Error("Invalid environment variables"); +} + +for (let key of Object.keys(_serverEnv.data)) { + if (key.startsWith("NEXT_PUBLIC_")) { + console.warn("❌ You are exposing a server-side env-variable:", key); + + throw new Error("You are exposing a server-side env-variable"); + } +} + +export const env = { ..._serverEnv.data, ...clientEnv }; diff --git a/src/pages/[...page].tsx b/src/pages/[...page].tsx new file mode 100644 index 0000000..c297f87 --- /dev/null +++ b/src/pages/[...page].tsx @@ -0,0 +1,115 @@ +import { useRouter } from 'next/router'; +import DefaultErrorPage from 'next/error'; +import Head from 'next/head'; +import React from 'react'; +import { BuilderComponent, builder, useIsPreviewing, Builder } from '@builder.io/react'; + + +// Initialize the Builder SDK with your organization's API Key +// Find the API Key on: https://builder.io/account/settings +builder.init("37b11147aa464a4d9525b2ab66c319f7"); + +export async function getStaticProps({ params }) { + // Fetch the first page from Builder that matches the current URL. + // Use the `userAttributes` field for targeting content. + // For more, see https://www.builder.io/c/docs/targeting-with-builder + const page = await builder + .get('page', { + userAttributes: { + urlPath: '/' + (params?.page?.join('/') || ''), + }, + }) + .toPromise(); + + return { + props: { + page: page || null, + }, + revalidate: 5, + }; +} + +export async function getStaticPaths() { + // Fetch all published pages for the current model. + // Using the `fields` option will limit the size of the response + // and only return the `data.url` field from the matching pages. + const pages = await builder.getAll('page', { + fields: 'data.url', // only request the `data.url` field + options: { noTargeting: true }, + limit: 0, + }); + + return { + paths: pages.map(page => `${page.data?.url}`), + fallback: true, + }; +} + +export default function Page({ page }) { + const router = useRouter(); + // This flag indicates if you are viewing the page in the Builder editor. + const isPreviewing = useIsPreviewing(); + + if (router.isFallback) { + return

Loading...

; + } + + // Add your error page here to return if there are no matching + // content entries published in Builder. + if (!page && !isPreviewing) { + return ; + } + + return ( + <> + + {/* Add any relevant SEO metadata or open graph tags here */} + {page?.data.title} + + +
+ {/* Put your header or main layout here */} + Your header +
+ + {/* Render the Builder page */} + + +
+ {/* Put your footer or main layout here */} + Your footer +
+ + ); +} + +// This is an example of registering a custom component to be used in Builder.io. +// You would typically do this in the file where the component is defined. + +const MyCustomComponent = props => ( +
+

{props.title}

+

{props.description}

+
+); + +// This is a minimal example of a custom component, you can view more complex input types here: +// https://www.builder.io/c/docs/custom-react-components#input-types +Builder.registerComponent(MyCustomComponent, { + name: 'ExampleCustomComponent', + inputs: [ + { name: 'title', type: 'string', defaultValue: 'I am a React component!' }, + { + name: 'description', + type: 'string', + defaultValue: 'Find my source in /pages/[...page].js', + }, + ], +}); + +// Register a custom insert menu to organize your custom componnets +// https://www.builder.io/c/docs/custom-components-visual-editor#:~:text=than%20this%20screenshot.-,organizing%20your%20components%20in%20custom%20sections,-You%20can%20create +Builder.register('insertMenu', { + name: 'My Components', + items: [{ item: 'ExampleCustomComponent', name: 'My React Component' }], +}); diff --git a/src/pages/_app.tsx b/src/pages/_app.tsx new file mode 100644 index 0000000..2db4e20 --- /dev/null +++ b/src/pages/_app.tsx @@ -0,0 +1,12 @@ +import { type AppType } from "next/app"; + +import { api } from "../utils/api"; + +import "../styles/globals.css"; +import '@react-page/editor/lib/index.css'; + +const MyApp: AppType = ({ Component, pageProps }) => { + return ; +}; + +export default api.withTRPC(MyApp); diff --git a/src/pages/api/trpc/[trpc].ts b/src/pages/api/trpc/[trpc].ts new file mode 100644 index 0000000..8ec828b --- /dev/null +++ b/src/pages/api/trpc/[trpc].ts @@ -0,0 +1,19 @@ +import { createNextApiHandler } from "@trpc/server/adapters/next"; + +import { env } from "../../../env/server.mjs"; +import { createTRPCContext } from "../../../server/api/trpc"; +import { appRouter } from "../../../server/api/root"; + +// export API handler +export default createNextApiHandler({ + router: appRouter, + createContext: createTRPCContext, + onError: + env.NODE_ENV === "development" + ? ({ path, error }) => { + console.error( + `❌ tRPC failed on ${path ?? ""}: ${error.message}`, + ); + } + : undefined, +}); diff --git a/src/pages/index.tsx b/src/pages/index.tsx new file mode 100644 index 0000000..44cdc39 --- /dev/null +++ b/src/pages/index.tsx @@ -0,0 +1,95 @@ +import Image from "next/image"; +import Link from "next/link"; +import { FaGithub } from "react-icons/fa"; + +function Header() { + return ( +
+ + My Site Logo + + +
+ ); +} + +function Footer() { + return ( +
+
+
+
+
+ My Site Logo +
+
+ + © 2023 Photo Club de Haute Lozère + + Tous droits réservés +
+
+ Développé par + + + polynux + + +
+
+
+
+
+ ); +} + +function Layout({ children }: { children: React.ReactNode }) { + return ( +
+
+ {children} +
+
+ ); +} + +function Home() { + return ( + +

My Site

+
+ ); +} + +export default Home; + +export { Layout }; diff --git a/src/server/api/root.ts b/src/server/api/root.ts new file mode 100644 index 0000000..c3f288e --- /dev/null +++ b/src/server/api/root.ts @@ -0,0 +1,14 @@ +import { createTRPCRouter } from "./trpc"; +import { exampleRouter } from "./routers/example"; + +/** + * This is the primary router for your server. + * + * All routers added in /api/routers should be manually added here + */ +export const appRouter = createTRPCRouter({ + example: exampleRouter, +}); + +// export type definition of API +export type AppRouter = typeof appRouter; diff --git a/src/server/api/routers/example.ts b/src/server/api/routers/example.ts new file mode 100644 index 0000000..7e9b9a3 --- /dev/null +++ b/src/server/api/routers/example.ts @@ -0,0 +1,16 @@ +import { z } from "zod"; + +import { createTRPCRouter, publicProcedure } from "../trpc"; + +export const exampleRouter = createTRPCRouter({ + hello: publicProcedure + .input(z.object({ text: z.string() })) + .query(({ input }) => { + return { + greeting: `Hello ${input.text}`, + }; + }), + getAll: publicProcedure.query(({ ctx }) => { + return ctx.prisma.example.findMany(); + }), +}); diff --git a/src/server/api/trpc.ts b/src/server/api/trpc.ts new file mode 100644 index 0000000..933b493 --- /dev/null +++ b/src/server/api/trpc.ts @@ -0,0 +1,85 @@ +/** + * YOU PROBABLY DON'T NEED TO EDIT THIS FILE, UNLESS: + * 1. You want to modify request context (see Part 1) + * 2. You want to create a new middleware or type of procedure (see Part 3) + * + * tl;dr - this is where all the tRPC server stuff is created and plugged in. + * The pieces you will need to use are documented accordingly near the end + */ + +/** + * 1. CONTEXT + * + * This section defines the "contexts" that are available in the backend API + * + * These allow you to access things like the database, the session, etc, when + * processing a request + * + */ +import { type CreateNextContextOptions } from "@trpc/server/adapters/next"; + +import { prisma } from "../db"; + +type CreateContextOptions = Record; + +/** + * This helper generates the "internals" for a tRPC context. If you need to use + * it, you can export it from here + * + * Examples of things you may need it for: + * - testing, so we dont have to mock Next.js' req/res + * - trpc's `createSSGHelpers` where we don't have req/res + * @see https://create.t3.gg/en/usage/trpc#-servertrpccontextts + */ +const createInnerTRPCContext = (_opts: CreateContextOptions) => { + return { + prisma, + }; +}; + +/** + * This is the actual context you'll use in your router. It will be used to + * process every request that goes through your tRPC endpoint + * @link https://trpc.io/docs/context + */ +export const createTRPCContext = (_opts: CreateNextContextOptions) => { + return createInnerTRPCContext({}); +}; + +/** + * 2. INITIALIZATION + * + * This is where the trpc api is initialized, connecting the context and + * transformer + */ +import { initTRPC } from "@trpc/server"; +import superjson from "superjson"; + +const t = initTRPC.context().create({ + transformer: superjson, + errorFormatter({ shape }) { + return shape; + }, +}); + +/** + * 3. ROUTER & PROCEDURE (THE IMPORTANT BIT) + * + * These are the pieces you use to build your tRPC API. You should import these + * a lot in the /src/server/api/routers folder + */ + +/** + * This is how you create new routers and subrouters in your tRPC API + * @see https://trpc.io/docs/router + */ +export const createTRPCRouter = t.router; + +/** + * Public (unauthed) procedure + * + * This is the base piece you use to build new queries and mutations on your + * tRPC API. It does not guarantee that a user querying is authorized, but you + * can still access user session data if they are logged in + */ +export const publicProcedure = t.procedure; diff --git a/src/server/db.ts b/src/server/db.ts new file mode 100644 index 0000000..5df917c --- /dev/null +++ b/src/server/db.ts @@ -0,0 +1,19 @@ +import { PrismaClient } from "@prisma/client"; + +import { env } from "../env/server.mjs"; + +declare global { + // eslint-disable-next-line no-var + var prisma: PrismaClient | undefined; +} + +export const prisma = + global.prisma || + new PrismaClient({ + log: + env.NODE_ENV === "development" ? ["query", "error", "warn"] : ["error"], + }); + +if (env.NODE_ENV !== "production") { + global.prisma = prisma; +} diff --git a/src/styles/globals.css b/src/styles/globals.css new file mode 100644 index 0000000..dcac7bf --- /dev/null +++ b/src/styles/globals.css @@ -0,0 +1,9 @@ +@tailwind base; +@tailwind components; +@tailwind utilities; + +@import url('https://fonts.googleapis.com/css2?family=Lato:wght@100;300;400;700;900&display=swap'); + +body { + font-family: 'Lato', sans-serif; +} \ No newline at end of file diff --git a/src/utils/api.ts b/src/utils/api.ts new file mode 100644 index 0000000..c99a366 --- /dev/null +++ b/src/utils/api.ts @@ -0,0 +1,65 @@ +/** + * This is the client-side entrypoint for your tRPC API. + * It's used to create the `api` object which contains the Next.js App-wrapper + * as well as your typesafe react-query hooks. + * + * We also create a few inference helpers for input and output types + */ +import { httpBatchLink, loggerLink } from "@trpc/client"; +import { createTRPCNext } from "@trpc/next"; +import { type inferRouterInputs, type inferRouterOutputs } from "@trpc/server"; +import superjson from "superjson"; + +import { type AppRouter } from "../server/api/root"; + +const getBaseUrl = () => { + if (typeof window !== "undefined") return ""; // browser should use relative url + if (process.env.VERCEL_URL) return `https://${process.env.VERCEL_URL}`; // SSR should use vercel url + return `http://localhost:${process.env.PORT ?? 3000}`; // dev SSR should use localhost +}; + +/** + * A set of typesafe react-query hooks for your tRPC API + */ +export const api = createTRPCNext({ + config() { + return { + /** + * Transformer used for data de-serialization from the server + * @see https://trpc.io/docs/data-transformers + **/ + transformer: superjson, + + /** + * Links used to determine request flow from client to server + * @see https://trpc.io/docs/links + * */ + links: [ + loggerLink({ + enabled: (opts) => + process.env.NODE_ENV === "development" || + (opts.direction === "down" && opts.result instanceof Error), + }), + httpBatchLink({ + url: `${getBaseUrl()}/api/trpc`, + }), + ], + }; + }, + /** + * Whether tRPC should await queries when server rendering pages + * @see https://trpc.io/docs/nextjs#ssr-boolean-default-false + */ + ssr: false, +}); + +/** + * Inference helper for inputs + * @example type HelloInput = RouterInputs['example']['hello'] + **/ +export type RouterInputs = inferRouterInputs; +/** + * Inference helper for outputs + * @example type HelloOutput = RouterOutputs['example']['hello'] + **/ +export type RouterOutputs = inferRouterOutputs; diff --git a/tailwind.config.cjs b/tailwind.config.cjs new file mode 100644 index 0000000..54331dc --- /dev/null +++ b/tailwind.config.cjs @@ -0,0 +1,8 @@ +/** @type {import('tailwindcss').Config} */ +module.exports = { + content: ["./src/**/*.{js,ts,jsx,tsx}"], + theme: { + extend: {}, + }, + plugins: [], +}; diff --git a/tsconfig.json b/tsconfig.json new file mode 100644 index 0000000..658068a --- /dev/null +++ b/tsconfig.json @@ -0,0 +1,21 @@ +{ + "compilerOptions": { + "target": "es2017", + "lib": ["dom", "dom.iterable", "esnext"], + "allowJs": true, + "skipLibCheck": true, + "strict": true, + "forceConsistentCasingInFileNames": true, + "noEmit": true, + "esModuleInterop": true, + "module": "esnext", + "moduleResolution": "node", + "resolveJsonModule": true, + "isolatedModules": true, + "jsx": "preserve", + "incremental": true, + "noUncheckedIndexedAccess": true + }, + "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", "**/*.cjs", "**/*.mjs"], + "exclude": ["node_modules"] +}