diff --git a/.web/.gitignore b/.web/.gitignore deleted file mode 100644 index 534bc86..0000000 --- a/.web/.gitignore +++ /dev/null @@ -1,39 +0,0 @@ -# See https://help.github.com/articles/ignoring-files/ for more about ignoring files. - -/_static - -# dependencies -/node_modules -/.pnp -.pnp.js - -# testing -/coverage - -# next.js -/.next/ -/out/ - -# production -/build - -# misc -.DS_Store -*.pem - -# debug -npm-debug.log* -yarn-debug.log* -yarn-error.log* - -# local env files -.env.local -.env.development.local -.env.test.local -.env.production.local - -# vercel -.vercel - -# DS_Store -.DS_Store \ No newline at end of file diff --git a/.web/components/reflex/chakra_color_mode_provider.js b/.web/components/reflex/chakra_color_mode_provider.js deleted file mode 100644 index f897522..0000000 --- a/.web/components/reflex/chakra_color_mode_provider.js +++ /dev/null @@ -1,21 +0,0 @@ -import { useColorMode as chakraUseColorMode } from "@chakra-ui/react" -import { useTheme } from "next-themes" -import { useEffect } from "react" -import { ColorModeContext } from "/utils/context.js" - -export default function ChakraColorModeProvider({ children }) { - const {colorMode, toggleColorMode} = chakraUseColorMode() - const {theme, setTheme} = useTheme() - - useEffect(() => { - if (colorMode != theme) { - toggleColorMode() - } - }, [theme]) - - return ( - - {children} - - ) -} \ No newline at end of file diff --git a/.web/components/reflex/radix_themes_color_mode_provider.js b/.web/components/reflex/radix_themes_color_mode_provider.js deleted file mode 100644 index 3664e12..0000000 --- a/.web/components/reflex/radix_themes_color_mode_provider.js +++ /dev/null @@ -1,20 +0,0 @@ -import { useTheme } from "next-themes" -import { useEffect, useState } from "react" -import { ColorModeContext } from "/utils/context.js" - - -export default function RadixThemesColorModeProvider({ children }) { - const {theme, setTheme} = useTheme() - const [colorMode, setColorMode] = useState("light") - - useEffect(() => setColorMode(theme), [theme]) - - const toggleColorMode = () => { - setTheme(theme === "light" ? "dark" : "light") - } - return ( - - {children} - - ) - } \ No newline at end of file diff --git a/.web/env.json b/.web/env.json deleted file mode 100644 index e8ba464..0000000 --- a/.web/env.json +++ /dev/null @@ -1 +0,0 @@ -{"PING": "http://localhost:8000/ping", "EVENT": "ws://localhost:8000/_event", "UPLOAD": "http://localhost:8000/_upload"} \ No newline at end of file diff --git a/.web/jsconfig.json b/.web/jsconfig.json deleted file mode 100644 index 3c8a325..0000000 --- a/.web/jsconfig.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "compilerOptions": { - "baseUrl": ".", - "paths": { - "@/*": ["public/*"] - } - } -} \ No newline at end of file diff --git a/.web/next.config.js b/.web/next.config.js deleted file mode 100644 index 65c4f4f..0000000 --- a/.web/next.config.js +++ /dev/null @@ -1,6 +0,0 @@ -module.exports = { - basePath: "", - compress: true, - reactStrictMode: true, - trailingSlash: true, -}; diff --git a/.web/package-lock.json b/.web/package-lock.json deleted file mode 100644 index a531035..0000000 --- a/.web/package-lock.json +++ /dev/null @@ -1,3686 +0,0 @@ -{ - "name": "reflex", - "lockfileVersion": 3, - "requires": true, - "packages": { - "": { - "name": "reflex", - "dependencies": { - "@chakra-ui/icons": "^2.0.19", - "@chakra-ui/react": "^2.6.1", - "@chakra-ui/system": "^2.5.7", - "@emotion/react": "^11.11.0", - "@emotion/styled": "^11.11.0", - "axios": "1.4.0", - "focus-visible": "5.2.0", - "framer-motion": "^10.16.4", - "json5": "2.2.3", - "next": "13.5.4", - "next-sitemap": "4.1.8", - "next-themes": "0.2.0", - "react": "18.2.0", - "react-dom": "18.2.0", - "react-dropzone": "^14.2.3", - "socket.io-client": "4.6.1", - "tailwindcss": "^3.3.2", - "universal-cookie": "4.0.4" - }, - "devDependencies": { - "autoprefixer": "10.4.14", - "postcss": "8.4.24" - } - }, - "node_modules/@alloc/quick-lru": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@alloc/quick-lru/-/quick-lru-5.2.0.tgz", - "integrity": "sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@babel/code-frame": { - "version": "7.22.13", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.13.tgz", - "integrity": "sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w==", - "dependencies": { - "@babel/highlight": "^7.22.13", - "chalk": "^2.4.2" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-module-imports": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.15.tgz", - "integrity": "sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==", - "dependencies": { - "@babel/types": "^7.22.15" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-string-parser": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz", - "integrity": "sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-validator-identifier": { - "version": "7.22.20", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz", - "integrity": "sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/highlight": { - "version": "7.22.20", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.20.tgz", - "integrity": "sha512-dkdMCN3py0+ksCgYmGG8jKeGA/8Tk+gJwSYYlFGxG5lmhfKNoAy004YpLxpS1W2J8m/EK2Ew+yOs9pVRwO89mg==", - "dependencies": { - "@babel/helper-validator-identifier": "^7.22.20", - "chalk": "^2.4.2", - "js-tokens": "^4.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/runtime": { - "version": "7.23.2", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.23.2.tgz", - "integrity": "sha512-mM8eg4yl5D6i3lu2QKPuPH4FArvJ8KhTofbE7jwMUv9KX5mBvwPAqnV3MlyBNqdp9RyRKP6Yck8TrfYrPvX3bg==", - "dependencies": { - "regenerator-runtime": "^0.14.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/types": { - "version": "7.23.3", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.3.tgz", - "integrity": "sha512-OZnvoH2l8PK5eUvEcUyCt/sXgr/h+UWpVuBbOljwcrAgUl6lpchoQ++PHGyQy1AtYnVA6CEq3y5xeEI10brpXw==", - "dependencies": { - "@babel/helper-string-parser": "^7.22.5", - "@babel/helper-validator-identifier": "^7.22.20", - "to-fast-properties": "^2.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@chakra-ui/accordion": { - "version": "2.1.11", - "resolved": "https://registry.npmjs.org/@chakra-ui/accordion/-/accordion-2.1.11.tgz", - "integrity": "sha512-mfVPmqETp9pyRDHJ33AdF19oHv/LyxVzQJtlxUByuvs8Cj9QQZ2LQLg5kejm+b3mj03A7A6yfbuo3RNaI4Bhsg==", - "dependencies": { - "@chakra-ui/descendant": "3.0.14", - "@chakra-ui/icon": "3.0.16", - "@chakra-ui/react-context": "2.0.8", - "@chakra-ui/react-use-controllable-state": "2.0.8", - "@chakra-ui/react-use-merge-refs": "2.0.7", - "@chakra-ui/shared-utils": "2.0.5", - "@chakra-ui/transition": "2.0.16" - }, - "peerDependencies": { - "@chakra-ui/system": ">=2.0.0", - "framer-motion": ">=4.0.0", - "react": ">=18" - } - }, - "node_modules/@chakra-ui/alert": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@chakra-ui/alert/-/alert-2.1.0.tgz", - "integrity": "sha512-OcfHwoXI5VrmM+tHJTHT62Bx6TfyfCxSa0PWUOueJzSyhlUOKBND5we6UtrOB7D0jwX45qKKEDJOLG5yCG21jQ==", - "dependencies": { - "@chakra-ui/icon": "3.0.16", - "@chakra-ui/react-context": "2.0.8", - "@chakra-ui/shared-utils": "2.0.5", - "@chakra-ui/spinner": "2.0.13" - }, - "peerDependencies": { - "@chakra-ui/system": ">=2.0.0", - "react": ">=18" - } - }, - "node_modules/@chakra-ui/anatomy": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@chakra-ui/anatomy/-/anatomy-2.1.2.tgz", - "integrity": "sha512-pKfOS/mztc4sUXHNc8ypJ1gPWSolWT770jrgVRfolVbYlki8y5Y+As996zMF6k5lewTu6j9DQequ7Cc9a69IVQ==" - }, - "node_modules/@chakra-ui/avatar": { - "version": "2.2.10", - "resolved": "https://registry.npmjs.org/@chakra-ui/avatar/-/avatar-2.2.10.tgz", - "integrity": "sha512-Scc0qJtJcxoGOaSS4TkoC2PhVLMacrBcfaNfLqV6wES56BcsjegHvpxREFunZkgVNph/XRHW6J1xOclnsZiPBQ==", - "dependencies": { - "@chakra-ui/image": "2.0.16", - "@chakra-ui/react-children-utils": "2.0.6", - "@chakra-ui/react-context": "2.0.8", - "@chakra-ui/shared-utils": "2.0.5" - }, - "peerDependencies": { - "@chakra-ui/system": ">=2.0.0", - "react": ">=18" - } - }, - "node_modules/@chakra-ui/breadcrumb": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@chakra-ui/breadcrumb/-/breadcrumb-2.1.5.tgz", - "integrity": "sha512-p3eQQrHQBkRB69xOmNyBJqEdfCrMt+e0eOH+Pm/DjFWfIVIbnIaFbmDCeWClqlLa21Ypc6h1hR9jEmvg8kmOog==", - "dependencies": { - "@chakra-ui/react-children-utils": "2.0.6", - "@chakra-ui/react-context": "2.0.8", - "@chakra-ui/shared-utils": "2.0.5" - }, - "peerDependencies": { - "@chakra-ui/system": ">=2.0.0", - "react": ">=18" - } - }, - "node_modules/@chakra-ui/breakpoint-utils": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/@chakra-ui/breakpoint-utils/-/breakpoint-utils-2.0.8.tgz", - "integrity": "sha512-Pq32MlEX9fwb5j5xx8s18zJMARNHlQZH2VH1RZgfgRDpp7DcEgtRW5AInfN5CfqdHLO1dGxA7I3MqEuL5JnIsA==", - "dependencies": { - "@chakra-ui/shared-utils": "2.0.5" - } - }, - "node_modules/@chakra-ui/button": { - "version": "2.0.18", - "resolved": "https://registry.npmjs.org/@chakra-ui/button/-/button-2.0.18.tgz", - "integrity": "sha512-E3c99+lOm6ou4nQVOTLkG+IdOPMjsQK+Qe7VyP8A/xeAMFONuibrWPRPpprr4ZkB4kEoLMfNuyH2+aEza3ScUA==", - "dependencies": { - "@chakra-ui/react-context": "2.0.8", - "@chakra-ui/react-use-merge-refs": "2.0.7", - "@chakra-ui/shared-utils": "2.0.5", - "@chakra-ui/spinner": "2.0.13" - }, - "peerDependencies": { - "@chakra-ui/system": ">=2.0.0", - "react": ">=18" - } - }, - "node_modules/@chakra-ui/card": { - "version": "2.1.6", - "resolved": "https://registry.npmjs.org/@chakra-ui/card/-/card-2.1.6.tgz", - "integrity": "sha512-fFd/WAdRNVY/WOSQv4skpy0WeVhhI0f7dTY1Sm0jVl0KLmuP/GnpsWtKtqWjNcV00K963EXDyhlk6+9oxbP4gw==", - "dependencies": { - "@chakra-ui/shared-utils": "2.0.5" - }, - "peerDependencies": { - "@chakra-ui/system": ">=2.0.0", - "react": ">=18" - } - }, - "node_modules/@chakra-ui/checkbox": { - "version": "2.2.15", - "resolved": "https://registry.npmjs.org/@chakra-ui/checkbox/-/checkbox-2.2.15.tgz", - "integrity": "sha512-Ju2yQjX8azgFa5f6VLPuwdGYobZ+rdbcYqjiks848JvPc75UsPhpS05cb4XlrKT7M16I8txDA5rPJdqqFicHCA==", - "dependencies": { - "@chakra-ui/form-control": "2.0.18", - "@chakra-ui/react-context": "2.0.8", - "@chakra-ui/react-types": "2.0.7", - "@chakra-ui/react-use-callback-ref": "2.0.7", - "@chakra-ui/react-use-controllable-state": "2.0.8", - "@chakra-ui/react-use-merge-refs": "2.0.7", - "@chakra-ui/react-use-safe-layout-effect": "2.0.5", - "@chakra-ui/react-use-update-effect": "2.0.7", - "@chakra-ui/shared-utils": "2.0.5", - "@chakra-ui/visually-hidden": "2.0.15", - "@zag-js/focus-visible": "0.2.2" - }, - "peerDependencies": { - "@chakra-ui/system": ">=2.0.0", - "react": ">=18" - } - }, - "node_modules/@chakra-ui/clickable": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/@chakra-ui/clickable/-/clickable-2.0.14.tgz", - "integrity": "sha512-jfsM1qaD74ZykLHmvmsKRhDyokLUxEfL8Il1VoZMNX5RBI0xW/56vKpLTFF/v/+vLPLS+Te2cZdD4+2O+G6ulA==", - "dependencies": { - "@chakra-ui/react-use-merge-refs": "2.0.7", - "@chakra-ui/shared-utils": "2.0.5" - }, - "peerDependencies": { - "react": ">=18" - } - }, - "node_modules/@chakra-ui/close-button": { - "version": "2.0.17", - "resolved": "https://registry.npmjs.org/@chakra-ui/close-button/-/close-button-2.0.17.tgz", - "integrity": "sha512-05YPXk456t1Xa3KpqTrvm+7smx+95dmaPiwjiBN3p7LHUQVHJd8ZXSDB0V+WKi419k3cVQeJUdU/azDO2f40sw==", - "dependencies": { - "@chakra-ui/icon": "3.0.16" - }, - "peerDependencies": { - "@chakra-ui/system": ">=2.0.0", - "react": ">=18" - } - }, - "node_modules/@chakra-ui/color-mode": { - "version": "2.1.12", - "resolved": "https://registry.npmjs.org/@chakra-ui/color-mode/-/color-mode-2.1.12.tgz", - "integrity": "sha512-sYyfJGDoJSLYO+V2hxV9r033qhte5Nw/wAn5yRGGZnEEN1dKPEdWQ3XZvglWSDTNd0w9zkoH2w6vP4FBBYb/iw==", - "dependencies": { - "@chakra-ui/react-use-safe-layout-effect": "2.0.5" - }, - "peerDependencies": { - "react": ">=18" - } - }, - "node_modules/@chakra-ui/control-box": { - "version": "2.0.13", - "resolved": "https://registry.npmjs.org/@chakra-ui/control-box/-/control-box-2.0.13.tgz", - "integrity": "sha512-FEyrU4crxati80KUF/+1Z1CU3eZK6Sa0Yv7Z/ydtz9/tvGblXW9NFanoomXAOvcIFLbaLQPPATm9Gmpr7VG05A==", - "peerDependencies": { - "@chakra-ui/system": ">=2.0.0", - "react": ">=18" - } - }, - "node_modules/@chakra-ui/counter": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/@chakra-ui/counter/-/counter-2.0.14.tgz", - "integrity": "sha512-KxcSRfUbb94dP77xTip2myoE7P2HQQN4V5fRJmNAGbzcyLciJ+aDylUU/UxgNcEjawUp6Q242NbWb1TSbKoqog==", - "dependencies": { - "@chakra-ui/number-utils": "2.0.7", - "@chakra-ui/react-use-callback-ref": "2.0.7", - "@chakra-ui/shared-utils": "2.0.5" - }, - "peerDependencies": { - "react": ">=18" - } - }, - "node_modules/@chakra-ui/css-reset": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/@chakra-ui/css-reset/-/css-reset-2.1.1.tgz", - "integrity": "sha512-jwEOfIAWmQsnChHQTW/eRE+dfE4MjmhvSvoUug5nkV1pI7veC/20noFlIZxzi82EbiQI8Fs0+Jnusgxr2yaOHA==", - "peerDependencies": { - "@emotion/react": ">=10.0.35", - "react": ">=18" - } - }, - "node_modules/@chakra-ui/descendant": { - "version": "3.0.14", - "resolved": "https://registry.npmjs.org/@chakra-ui/descendant/-/descendant-3.0.14.tgz", - "integrity": "sha512-+Ahvp9H4HMpfScIv9w1vaecGz7qWAaK1YFHHolz/SIsGLaLGlbdp+5UNabQC7L6TUnzzJDQDxzwif78rTD7ang==", - "dependencies": { - "@chakra-ui/react-context": "2.0.8", - "@chakra-ui/react-use-merge-refs": "2.0.7" - }, - "peerDependencies": { - "react": ">=18" - } - }, - "node_modules/@chakra-ui/dom-utils": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/@chakra-ui/dom-utils/-/dom-utils-2.0.6.tgz", - "integrity": "sha512-PVtDkPrDD5b8aoL6Atg7SLjkwhWb7BwMcLOF1L449L3nZN+DAO3nyAh6iUhZVJyunELj9d0r65CDlnMREyJZmA==" - }, - "node_modules/@chakra-ui/editable": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@chakra-ui/editable/-/editable-3.0.0.tgz", - "integrity": "sha512-q/7C/TM3iLaoQKlEiM8AY565i9NoaXtS6N6N4HWIEL5mZJPbMeHKxrCHUZlHxYuQJqFOGc09ZPD9fAFx1GkYwQ==", - "dependencies": { - "@chakra-ui/react-context": "2.0.8", - "@chakra-ui/react-types": "2.0.7", - "@chakra-ui/react-use-callback-ref": "2.0.7", - "@chakra-ui/react-use-controllable-state": "2.0.8", - "@chakra-ui/react-use-focus-on-pointer-down": "2.0.6", - "@chakra-ui/react-use-merge-refs": "2.0.7", - "@chakra-ui/react-use-safe-layout-effect": "2.0.5", - "@chakra-ui/react-use-update-effect": "2.0.7", - "@chakra-ui/shared-utils": "2.0.5" - }, - "peerDependencies": { - "@chakra-ui/system": ">=2.0.0", - "react": ">=18" - } - }, - "node_modules/@chakra-ui/event-utils": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/@chakra-ui/event-utils/-/event-utils-2.0.8.tgz", - "integrity": "sha512-IGM/yGUHS+8TOQrZGpAKOJl/xGBrmRYJrmbHfUE7zrG3PpQyXvbLDP1M+RggkCFVgHlJi2wpYIf0QtQlU0XZfw==" - }, - "node_modules/@chakra-ui/focus-lock": { - "version": "2.0.16", - "resolved": "https://registry.npmjs.org/@chakra-ui/focus-lock/-/focus-lock-2.0.16.tgz", - "integrity": "sha512-UuAdGCPVrCa1lecoAvpOQD7JFT7a9RdmhKWhFt5ioIcekSLJcerdLHuuL3w0qz//8kd1/SOt7oP0aJqdAJQrCw==", - "dependencies": { - "@chakra-ui/dom-utils": "2.0.6", - "react-focus-lock": "^2.9.2" - }, - "peerDependencies": { - "react": ">=18" - } - }, - "node_modules/@chakra-ui/form-control": { - "version": "2.0.18", - "resolved": "https://registry.npmjs.org/@chakra-ui/form-control/-/form-control-2.0.18.tgz", - "integrity": "sha512-I0a0jG01IAtRPccOXSNugyRdUAe8Dy40ctqedZvznMweOXzbMCF1m+sHPLdWeWC/VI13VoAispdPY0/zHOdjsQ==", - "dependencies": { - "@chakra-ui/icon": "3.0.16", - "@chakra-ui/react-context": "2.0.8", - "@chakra-ui/react-types": "2.0.7", - "@chakra-ui/react-use-merge-refs": "2.0.7", - "@chakra-ui/shared-utils": "2.0.5" - }, - "peerDependencies": { - "@chakra-ui/system": ">=2.0.0", - "react": ">=18" - } - }, - "node_modules/@chakra-ui/hooks": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@chakra-ui/hooks/-/hooks-2.2.0.tgz", - "integrity": "sha512-GZE64mcr20w+3KbCUPqQJHHmiFnX5Rcp8jS3YntGA4D5X2qU85jka7QkjfBwv/iduZ5Ei0YpCMYGCpi91dhD1Q==", - "dependencies": { - "@chakra-ui/react-utils": "2.0.12", - "@chakra-ui/utils": "2.0.15", - "compute-scroll-into-view": "1.0.20", - "copy-to-clipboard": "3.3.3" - }, - "peerDependencies": { - "react": ">=18" - } - }, - "node_modules/@chakra-ui/icon": { - "version": "3.0.16", - "resolved": "https://registry.npmjs.org/@chakra-ui/icon/-/icon-3.0.16.tgz", - "integrity": "sha512-RpA1X5Ptz8Mt39HSyEIW1wxAz2AXyf9H0JJ5HVx/dBdMZaGMDJ0HyyPBVci0m4RCoJuyG1HHG/DXJaVfUTVAeg==", - "dependencies": { - "@chakra-ui/shared-utils": "2.0.5" - }, - "peerDependencies": { - "@chakra-ui/system": ">=2.0.0", - "react": ">=18" - } - }, - "node_modules/@chakra-ui/icons": { - "version": "2.0.19", - "resolved": "https://registry.npmjs.org/@chakra-ui/icons/-/icons-2.0.19.tgz", - "integrity": "sha512-0A6U1ZBZhLIxh3QgdjuvIEhAZi3B9v8g6Qvlfa3mu6vSnXQn2CHBZXmJwxpXxO40NK/2gj/gKXrLeUaFR6H/Qw==", - "dependencies": { - "@chakra-ui/icon": "3.0.16" - }, - "peerDependencies": { - "@chakra-ui/system": ">=2.0.0", - "react": ">=18" - } - }, - "node_modules/@chakra-ui/image": { - "version": "2.0.16", - "resolved": "https://registry.npmjs.org/@chakra-ui/image/-/image-2.0.16.tgz", - "integrity": "sha512-iFypk1slgP3OK7VIPOtkB0UuiqVxNalgA59yoRM43xLIeZAEZpKngUVno4A2kFS61yKN0eIY4hXD3Xjm+25EJA==", - "dependencies": { - "@chakra-ui/react-use-safe-layout-effect": "2.0.5", - "@chakra-ui/shared-utils": "2.0.5" - }, - "peerDependencies": { - "@chakra-ui/system": ">=2.0.0", - "react": ">=18" - } - }, - "node_modules/@chakra-ui/input": { - "version": "2.0.22", - "resolved": "https://registry.npmjs.org/@chakra-ui/input/-/input-2.0.22.tgz", - "integrity": "sha512-dCIC0/Q7mjZf17YqgoQsnXn0bus6vgriTRn8VmxOc+WcVl+KBSTBWujGrS5yu85WIFQ0aeqQvziDnDQybPqAbA==", - "dependencies": { - "@chakra-ui/form-control": "2.0.18", - "@chakra-ui/object-utils": "2.1.0", - "@chakra-ui/react-children-utils": "2.0.6", - "@chakra-ui/react-context": "2.0.8", - "@chakra-ui/shared-utils": "2.0.5" - }, - "peerDependencies": { - "@chakra-ui/system": ">=2.0.0", - "react": ">=18" - } - }, - "node_modules/@chakra-ui/layout": { - "version": "2.1.19", - "resolved": "https://registry.npmjs.org/@chakra-ui/layout/-/layout-2.1.19.tgz", - "integrity": "sha512-g7xMVKbQFCODwKCkEF4/OmdPsr/fAavWUV+DGc1ZWVPdroUlg1FGTpK9bOTwkC/gnko7cMClILA+BIPR3Ylu9Q==", - "dependencies": { - "@chakra-ui/breakpoint-utils": "2.0.8", - "@chakra-ui/icon": "3.0.16", - "@chakra-ui/object-utils": "2.1.0", - "@chakra-ui/react-children-utils": "2.0.6", - "@chakra-ui/react-context": "2.0.8", - "@chakra-ui/shared-utils": "2.0.5" - }, - "peerDependencies": { - "@chakra-ui/system": ">=2.0.0", - "react": ">=18" - } - }, - "node_modules/@chakra-ui/lazy-utils": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@chakra-ui/lazy-utils/-/lazy-utils-2.0.5.tgz", - "integrity": "sha512-UULqw7FBvcckQk2n3iPO56TMJvDsNv0FKZI6PlUNJVaGsPbsYxK/8IQ60vZgaTVPtVcjY6BE+y6zg8u9HOqpyg==" - }, - "node_modules/@chakra-ui/live-region": { - "version": "2.0.13", - "resolved": "https://registry.npmjs.org/@chakra-ui/live-region/-/live-region-2.0.13.tgz", - "integrity": "sha512-Ja+Slk6ZkxSA5oJzU2VuGU7TpZpbMb/4P4OUhIf2D30ctmIeXkxTWw1Bs1nGJAVtAPcGS5sKA+zb89i8g+0cTQ==", - "peerDependencies": { - "react": ">=18" - } - }, - "node_modules/@chakra-ui/media-query": { - "version": "3.2.12", - "resolved": "https://registry.npmjs.org/@chakra-ui/media-query/-/media-query-3.2.12.tgz", - "integrity": "sha512-8pSLDf3oxxhFrhd40rs7vSeIBfvOmIKHA7DJlGUC/y+9irD24ZwgmCtFnn+y3gI47hTJsopbSX+wb8nr7XPswA==", - "dependencies": { - "@chakra-ui/breakpoint-utils": "2.0.8", - "@chakra-ui/react-env": "3.0.0", - "@chakra-ui/shared-utils": "2.0.5" - }, - "peerDependencies": { - "@chakra-ui/system": ">=2.0.0", - "react": ">=18" - } - }, - "node_modules/@chakra-ui/menu": { - "version": "2.1.14", - "resolved": "https://registry.npmjs.org/@chakra-ui/menu/-/menu-2.1.14.tgz", - "integrity": "sha512-z4YzlY/ub1hr4Ee2zCnZDs4t43048yLTf5GhEVYDO+SI92WlOfHlP9gYEzR+uj/CiRZglVFwUDKb3UmFtmKPyg==", - "dependencies": { - "@chakra-ui/clickable": "2.0.14", - "@chakra-ui/descendant": "3.0.14", - "@chakra-ui/lazy-utils": "2.0.5", - "@chakra-ui/popper": "3.0.14", - "@chakra-ui/react-children-utils": "2.0.6", - "@chakra-ui/react-context": "2.0.8", - "@chakra-ui/react-use-animation-state": "2.0.8", - "@chakra-ui/react-use-controllable-state": "2.0.8", - "@chakra-ui/react-use-disclosure": "2.0.8", - "@chakra-ui/react-use-focus-effect": "2.0.10", - "@chakra-ui/react-use-merge-refs": "2.0.7", - "@chakra-ui/react-use-outside-click": "2.1.0", - "@chakra-ui/react-use-update-effect": "2.0.7", - "@chakra-ui/shared-utils": "2.0.5", - "@chakra-ui/transition": "2.0.16" - }, - "peerDependencies": { - "@chakra-ui/system": ">=2.0.0", - "framer-motion": ">=4.0.0", - "react": ">=18" - } - }, - "node_modules/@chakra-ui/modal": { - "version": "2.2.11", - "resolved": "https://registry.npmjs.org/@chakra-ui/modal/-/modal-2.2.11.tgz", - "integrity": "sha512-2J0ZUV5tEzkPiawdkgPz6bmex7NXAde1VXooMwdvK+vuT8PV3U61yorTJOZVLdw7TjjI1Yo94mzsp6UwBud43Q==", - "dependencies": { - "@chakra-ui/close-button": "2.0.17", - "@chakra-ui/focus-lock": "2.0.16", - "@chakra-ui/portal": "2.0.16", - "@chakra-ui/react-context": "2.0.8", - "@chakra-ui/react-types": "2.0.7", - "@chakra-ui/react-use-merge-refs": "2.0.7", - "@chakra-ui/shared-utils": "2.0.5", - "@chakra-ui/transition": "2.0.16", - "aria-hidden": "^1.2.2", - "react-remove-scroll": "^2.5.5" - }, - "peerDependencies": { - "@chakra-ui/system": ">=2.0.0", - "framer-motion": ">=4.0.0", - "react": ">=18", - "react-dom": ">=18" - } - }, - "node_modules/@chakra-ui/number-input": { - "version": "2.0.19", - "resolved": "https://registry.npmjs.org/@chakra-ui/number-input/-/number-input-2.0.19.tgz", - "integrity": "sha512-HDaITvtMEqOauOrCPsARDxKD9PSHmhWywpcyCSOX0lMe4xx2aaGhU0QQFhsJsykj8Er6pytMv6t0KZksdDv3YA==", - "dependencies": { - "@chakra-ui/counter": "2.0.14", - "@chakra-ui/form-control": "2.0.18", - "@chakra-ui/icon": "3.0.16", - "@chakra-ui/react-context": "2.0.8", - "@chakra-ui/react-types": "2.0.7", - "@chakra-ui/react-use-callback-ref": "2.0.7", - "@chakra-ui/react-use-event-listener": "2.0.7", - "@chakra-ui/react-use-interval": "2.0.5", - "@chakra-ui/react-use-merge-refs": "2.0.7", - "@chakra-ui/react-use-safe-layout-effect": "2.0.5", - "@chakra-ui/react-use-update-effect": "2.0.7", - "@chakra-ui/shared-utils": "2.0.5" - }, - "peerDependencies": { - "@chakra-ui/system": ">=2.0.0", - "react": ">=18" - } - }, - "node_modules/@chakra-ui/number-utils": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/@chakra-ui/number-utils/-/number-utils-2.0.7.tgz", - "integrity": "sha512-yOGxBjXNvLTBvQyhMDqGU0Oj26s91mbAlqKHiuw737AXHt0aPllOthVUqQMeaYLwLCjGMg0jtI7JReRzyi94Dg==" - }, - "node_modules/@chakra-ui/object-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@chakra-ui/object-utils/-/object-utils-2.1.0.tgz", - "integrity": "sha512-tgIZOgLHaoti5PYGPTwK3t/cqtcycW0owaiOXoZOcpwwX/vlVb+H1jFsQyWiiwQVPt9RkoSLtxzXamx+aHH+bQ==" - }, - "node_modules/@chakra-ui/pin-input": { - "version": "2.0.20", - "resolved": "https://registry.npmjs.org/@chakra-ui/pin-input/-/pin-input-2.0.20.tgz", - "integrity": "sha512-IHVmerrtHN8F+jRB3W1HnMir1S1TUCWhI7qDInxqPtoRffHt6mzZgLZ0izx8p1fD4HkW4c1d4/ZLEz9uH9bBRg==", - "dependencies": { - "@chakra-ui/descendant": "3.0.14", - "@chakra-ui/react-children-utils": "2.0.6", - "@chakra-ui/react-context": "2.0.8", - "@chakra-ui/react-use-controllable-state": "2.0.8", - "@chakra-ui/react-use-merge-refs": "2.0.7", - "@chakra-ui/shared-utils": "2.0.5" - }, - "peerDependencies": { - "@chakra-ui/system": ">=2.0.0", - "react": ">=18" - } - }, - "node_modules/@chakra-ui/popover": { - "version": "2.1.11", - "resolved": "https://registry.npmjs.org/@chakra-ui/popover/-/popover-2.1.11.tgz", - "integrity": "sha512-ntFMKojU+ZIofwSw5IJ+Ur8pN5o+5kf/Fx5r5tCjFZd0DSkrEeJw9i00/UWJ6kYZb+zlpswxriv0FmxBlAF66w==", - "dependencies": { - "@chakra-ui/close-button": "2.0.17", - "@chakra-ui/lazy-utils": "2.0.5", - "@chakra-ui/popper": "3.0.14", - "@chakra-ui/react-context": "2.0.8", - "@chakra-ui/react-types": "2.0.7", - "@chakra-ui/react-use-animation-state": "2.0.8", - "@chakra-ui/react-use-disclosure": "2.0.8", - "@chakra-ui/react-use-focus-effect": "2.0.10", - "@chakra-ui/react-use-focus-on-pointer-down": "2.0.6", - "@chakra-ui/react-use-merge-refs": "2.0.7", - "@chakra-ui/shared-utils": "2.0.5" - }, - "peerDependencies": { - "@chakra-ui/system": ">=2.0.0", - "framer-motion": ">=4.0.0", - "react": ">=18" - } - }, - "node_modules/@chakra-ui/popper": { - "version": "3.0.14", - "resolved": "https://registry.npmjs.org/@chakra-ui/popper/-/popper-3.0.14.tgz", - "integrity": "sha512-RDMmmSfjsmHJbVn2agDyoJpTbQK33fxx//njwJdeyM0zTG/3/4xjI/Cxru3acJ2Y+1jFGmPqhO81stFjnbtfIw==", - "dependencies": { - "@chakra-ui/react-types": "2.0.7", - "@chakra-ui/react-use-merge-refs": "2.0.7", - "@popperjs/core": "^2.9.3" - }, - "peerDependencies": { - "react": ">=18" - } - }, - "node_modules/@chakra-ui/portal": { - "version": "2.0.16", - "resolved": "https://registry.npmjs.org/@chakra-ui/portal/-/portal-2.0.16.tgz", - "integrity": "sha512-bVID0qbQ0l4xq38LdqAN4EKD4/uFkDnXzFwOlviC9sl0dNhzICDb1ltuH/Adl1d2HTMqyN60O3GO58eHy7plnQ==", - "dependencies": { - "@chakra-ui/react-context": "2.0.8", - "@chakra-ui/react-use-safe-layout-effect": "2.0.5" - }, - "peerDependencies": { - "react": ">=18", - "react-dom": ">=18" - } - }, - "node_modules/@chakra-ui/progress": { - "version": "2.1.6", - "resolved": "https://registry.npmjs.org/@chakra-ui/progress/-/progress-2.1.6.tgz", - "integrity": "sha512-hHh5Ysv4z6bK+j2GJbi/FT9CVyto2PtNUNwBmr3oNMVsoOUMoRjczfXvvYqp0EHr9PCpxqrq7sRwgQXUzhbDSw==", - "dependencies": { - "@chakra-ui/react-context": "2.0.8" - }, - "peerDependencies": { - "@chakra-ui/system": ">=2.0.0", - "react": ">=18" - } - }, - "node_modules/@chakra-ui/provider": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/@chakra-ui/provider/-/provider-2.2.4.tgz", - "integrity": "sha512-vz/WMEWhwoITCAkennRNYCeQHsJ6YwB/UjVaAK+61jWY42J7uCsRZ+3nB5rDjQ4m+aqPfTUPof8KLJBrtYrJbw==", - "dependencies": { - "@chakra-ui/css-reset": "2.1.1", - "@chakra-ui/portal": "2.0.16", - "@chakra-ui/react-env": "3.0.0", - "@chakra-ui/system": "2.5.7", - "@chakra-ui/utils": "2.0.15" - }, - "peerDependencies": { - "@emotion/react": "^11.0.0", - "@emotion/styled": "^11.0.0", - "react": ">=18", - "react-dom": ">=18" - } - }, - "node_modules/@chakra-ui/radio": { - "version": "2.0.22", - "resolved": "https://registry.npmjs.org/@chakra-ui/radio/-/radio-2.0.22.tgz", - "integrity": "sha512-GsQ5WAnLwivWl6gPk8P1x+tCcpVakCt5R5T0HumF7DGPXKdJbjS+RaFySrbETmyTJsKY4QrfXn+g8CWVrMjPjw==", - "dependencies": { - "@chakra-ui/form-control": "2.0.18", - "@chakra-ui/react-context": "2.0.8", - "@chakra-ui/react-types": "2.0.7", - "@chakra-ui/react-use-merge-refs": "2.0.7", - "@chakra-ui/shared-utils": "2.0.5", - "@zag-js/focus-visible": "0.2.2" - }, - "peerDependencies": { - "@chakra-ui/system": ">=2.0.0", - "react": ">=18" - } - }, - "node_modules/@chakra-ui/react": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/@chakra-ui/react/-/react-2.6.1.tgz", - "integrity": "sha512-Lt8c8pLPTz59xxdSuL2FlE7le9MXx4zgjr60UnEc3yjAMjXNTqUAoWHyT4Zn1elCGUPWOedS3rMvp4KTshT+5w==", - "dependencies": { - "@chakra-ui/accordion": "2.1.11", - "@chakra-ui/alert": "2.1.0", - "@chakra-ui/avatar": "2.2.10", - "@chakra-ui/breadcrumb": "2.1.5", - "@chakra-ui/button": "2.0.18", - "@chakra-ui/card": "2.1.6", - "@chakra-ui/checkbox": "2.2.15", - "@chakra-ui/close-button": "2.0.17", - "@chakra-ui/control-box": "2.0.13", - "@chakra-ui/counter": "2.0.14", - "@chakra-ui/css-reset": "2.1.1", - "@chakra-ui/editable": "3.0.0", - "@chakra-ui/focus-lock": "2.0.16", - "@chakra-ui/form-control": "2.0.18", - "@chakra-ui/hooks": "2.2.0", - "@chakra-ui/icon": "3.0.16", - "@chakra-ui/image": "2.0.16", - "@chakra-ui/input": "2.0.22", - "@chakra-ui/layout": "2.1.19", - "@chakra-ui/live-region": "2.0.13", - "@chakra-ui/media-query": "3.2.12", - "@chakra-ui/menu": "2.1.14", - "@chakra-ui/modal": "2.2.11", - "@chakra-ui/number-input": "2.0.19", - "@chakra-ui/pin-input": "2.0.20", - "@chakra-ui/popover": "2.1.11", - "@chakra-ui/popper": "3.0.14", - "@chakra-ui/portal": "2.0.16", - "@chakra-ui/progress": "2.1.6", - "@chakra-ui/provider": "2.2.4", - "@chakra-ui/radio": "2.0.22", - "@chakra-ui/react-env": "3.0.0", - "@chakra-ui/select": "2.0.19", - "@chakra-ui/skeleton": "2.0.24", - "@chakra-ui/slider": "2.0.24", - "@chakra-ui/spinner": "2.0.13", - "@chakra-ui/stat": "2.0.18", - "@chakra-ui/stepper": "2.2.0", - "@chakra-ui/styled-system": "2.9.0", - "@chakra-ui/switch": "2.0.27", - "@chakra-ui/system": "2.5.7", - "@chakra-ui/table": "2.0.17", - "@chakra-ui/tabs": "2.1.9", - "@chakra-ui/tag": "3.0.0", - "@chakra-ui/textarea": "2.0.19", - "@chakra-ui/theme": "3.1.1", - "@chakra-ui/theme-utils": "2.0.17", - "@chakra-ui/toast": "6.1.3", - "@chakra-ui/tooltip": "2.2.8", - "@chakra-ui/transition": "2.0.16", - "@chakra-ui/utils": "2.0.15", - "@chakra-ui/visually-hidden": "2.0.15" - }, - "peerDependencies": { - "@emotion/react": "^11.0.0", - "@emotion/styled": "^11.0.0", - "framer-motion": ">=4.0.0", - "react": ">=18", - "react-dom": ">=18" - } - }, - "node_modules/@chakra-ui/react-children-utils": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/@chakra-ui/react-children-utils/-/react-children-utils-2.0.6.tgz", - "integrity": "sha512-QVR2RC7QsOsbWwEnq9YduhpqSFnZGvjjGREV8ygKi8ADhXh93C8azLECCUVgRJF2Wc+So1fgxmjLcbZfY2VmBA==", - "peerDependencies": { - "react": ">=18" - } - }, - "node_modules/@chakra-ui/react-context": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/@chakra-ui/react-context/-/react-context-2.0.8.tgz", - "integrity": "sha512-tRTKdn6lCTXM6WPjSokAAKCw2ioih7Eg8cNgaYRSwKBck8nkz9YqxgIIEj3dJD7MGtpl24S/SNI98iRWkRwR/A==", - "peerDependencies": { - "react": ">=18" - } - }, - "node_modules/@chakra-ui/react-env": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@chakra-ui/react-env/-/react-env-3.0.0.tgz", - "integrity": "sha512-tfMRO2v508HQWAqSADFrwZgR9oU10qC97oV6zGbjHh9ALP0/IcFR+Bi71KRTveDTm85fMeAzZYGj57P3Dsipkw==", - "dependencies": { - "@chakra-ui/react-use-safe-layout-effect": "2.0.5" - }, - "peerDependencies": { - "react": ">=18" - } - }, - "node_modules/@chakra-ui/react-types": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/@chakra-ui/react-types/-/react-types-2.0.7.tgz", - "integrity": "sha512-12zv2qIZ8EHwiytggtGvo4iLT0APris7T0qaAWqzpUGS0cdUtR8W+V1BJ5Ocq+7tA6dzQ/7+w5hmXih61TuhWQ==", - "peerDependencies": { - "react": ">=18" - } - }, - "node_modules/@chakra-ui/react-use-animation-state": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/@chakra-ui/react-use-animation-state/-/react-use-animation-state-2.0.8.tgz", - "integrity": "sha512-xv9zSF2Rd1mHWQ+m5DLBWeh4atF8qrNvsOs3MNrvxKYBS3f79N3pqcQGrWAEvirXWXfiCeje2VAkEggqFRIo+Q==", - "dependencies": { - "@chakra-ui/dom-utils": "2.0.6", - "@chakra-ui/react-use-event-listener": "2.0.7" - }, - "peerDependencies": { - "react": ">=18" - } - }, - "node_modules/@chakra-ui/react-use-callback-ref": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/@chakra-ui/react-use-callback-ref/-/react-use-callback-ref-2.0.7.tgz", - "integrity": "sha512-YjT76nTpfHAK5NxplAlZsQwNju5KmQExnqsWNPFeOR6vvbC34+iPSTr+r91i1Hdy7gBSbevsOsd5Wm6RN3GuMw==", - "peerDependencies": { - "react": ">=18" - } - }, - "node_modules/@chakra-ui/react-use-controllable-state": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/@chakra-ui/react-use-controllable-state/-/react-use-controllable-state-2.0.8.tgz", - "integrity": "sha512-F7rdCbLEmRjwwODqWZ3y+mKgSSHPcLQxeUygwk1BkZPXbKkJJKymOIjIynil2cbH7ku3hcSIWRvuhpCcfQWJ7Q==", - "dependencies": { - "@chakra-ui/react-use-callback-ref": "2.0.7" - }, - "peerDependencies": { - "react": ">=18" - } - }, - "node_modules/@chakra-ui/react-use-disclosure": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/@chakra-ui/react-use-disclosure/-/react-use-disclosure-2.0.8.tgz", - "integrity": "sha512-2ir/mHe1YND40e+FyLHnDsnDsBQPwzKDLzfe9GZri7y31oU83JSbHdlAXAhp3bpjohslwavtRCp+S/zRxfO9aQ==", - "dependencies": { - "@chakra-ui/react-use-callback-ref": "2.0.7" - }, - "peerDependencies": { - "react": ">=18" - } - }, - "node_modules/@chakra-ui/react-use-event-listener": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/@chakra-ui/react-use-event-listener/-/react-use-event-listener-2.0.7.tgz", - "integrity": "sha512-4wvpx4yudIO3B31pOrXuTHDErawmwiXnvAN7gLEOVREi16+YGNcFnRJ5X5nRrmB7j2MDUtsEDpRBFfw5Z9xQ5g==", - "dependencies": { - "@chakra-ui/react-use-callback-ref": "2.0.7" - }, - "peerDependencies": { - "react": ">=18" - } - }, - "node_modules/@chakra-ui/react-use-focus-effect": { - "version": "2.0.10", - "resolved": "https://registry.npmjs.org/@chakra-ui/react-use-focus-effect/-/react-use-focus-effect-2.0.10.tgz", - "integrity": "sha512-HswfpzjP8gCQM3/fbeR+8wrYqt0B3ChnVTqssnYXqp9Fa/5Y1Kx1ZADUWW93zMs5SF7hIEuNt8uKeh1/3HTcqQ==", - "dependencies": { - "@chakra-ui/dom-utils": "2.0.6", - "@chakra-ui/react-use-event-listener": "2.0.7", - "@chakra-ui/react-use-safe-layout-effect": "2.0.5", - "@chakra-ui/react-use-update-effect": "2.0.7" - }, - "peerDependencies": { - "react": ">=18" - } - }, - "node_modules/@chakra-ui/react-use-focus-on-pointer-down": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/@chakra-ui/react-use-focus-on-pointer-down/-/react-use-focus-on-pointer-down-2.0.6.tgz", - "integrity": "sha512-OigXiLRVySn3tyVqJ/rn57WGuukW8TQe8fJYiLwXbcNyAMuYYounvRxvCy2b53sQ7QIZamza0N0jhirbH5FNoQ==", - "dependencies": { - "@chakra-ui/react-use-event-listener": "2.0.7" - }, - "peerDependencies": { - "react": ">=18" - } - }, - "node_modules/@chakra-ui/react-use-interval": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@chakra-ui/react-use-interval/-/react-use-interval-2.0.5.tgz", - "integrity": "sha512-1nbdwMi2K87V6p5f5AseOKif2CkldLaJlq1TOqaPRwb7v3aU9rltBtYdf+fIyuHSToNJUV6wd9budCFdLCl3Fg==", - "dependencies": { - "@chakra-ui/react-use-callback-ref": "2.0.7" - }, - "peerDependencies": { - "react": ">=18" - } - }, - "node_modules/@chakra-ui/react-use-latest-ref": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@chakra-ui/react-use-latest-ref/-/react-use-latest-ref-2.0.5.tgz", - "integrity": "sha512-3mIuFzMyIo3Ok/D8uhV9voVg7KkrYVO/pwVvNPJOHsDQqCA6DpYE4WDsrIx+fVcwad3Ta7SupexR5PoI+kq6QQ==", - "peerDependencies": { - "react": ">=18" - } - }, - "node_modules/@chakra-ui/react-use-merge-refs": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/@chakra-ui/react-use-merge-refs/-/react-use-merge-refs-2.0.7.tgz", - "integrity": "sha512-zds4Uhsc+AMzdH8JDDkLVet9baUBgtOjPbhC5r3A0ZXjZvGhCztFAVE3aExYiVoMPoHLKbLcqvCWE6ioFKz1lw==", - "peerDependencies": { - "react": ">=18" - } - }, - "node_modules/@chakra-ui/react-use-outside-click": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@chakra-ui/react-use-outside-click/-/react-use-outside-click-2.1.0.tgz", - "integrity": "sha512-JanCo4QtWvMl9ZZUpKJKV62RlMWDFdPCE0Q64a7eWTOQgWWcpyBW7TOYRunQTqrK30FqkYFJCOlAWOtn+6Rw7A==", - "dependencies": { - "@chakra-ui/react-use-callback-ref": "2.0.7" - }, - "peerDependencies": { - "react": ">=18" - } - }, - "node_modules/@chakra-ui/react-use-pan-event": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/@chakra-ui/react-use-pan-event/-/react-use-pan-event-2.0.9.tgz", - "integrity": "sha512-xu35QXkiyrgsHUOnctl+SwNcwf9Rl62uYE5y8soKOZdBm8E+FvZIt2hxUzK1EoekbJCMzEZ0Yv1ZQCssVkSLaQ==", - "dependencies": { - "@chakra-ui/event-utils": "2.0.8", - "@chakra-ui/react-use-latest-ref": "2.0.5", - "framesync": "6.1.2" - }, - "peerDependencies": { - "react": ">=18" - } - }, - "node_modules/@chakra-ui/react-use-previous": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@chakra-ui/react-use-previous/-/react-use-previous-2.0.5.tgz", - "integrity": "sha512-BIZgjycPE4Xr+MkhKe0h67uHXzQQkBX/u5rYPd65iMGdX1bCkbE0oorZNfOHLKdTmnEb4oVsNvfN6Rfr+Mnbxw==", - "peerDependencies": { - "react": ">=18" - } - }, - "node_modules/@chakra-ui/react-use-safe-layout-effect": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@chakra-ui/react-use-safe-layout-effect/-/react-use-safe-layout-effect-2.0.5.tgz", - "integrity": "sha512-MwAQBz3VxoeFLaesaSEN87reVNVbjcQBDex2WGexAg6hUB6n4gc1OWYH/iXp4tzp4kuggBNhEHkk9BMYXWfhJQ==", - "peerDependencies": { - "react": ">=18" - } - }, - "node_modules/@chakra-ui/react-use-size": { - "version": "2.0.10", - "resolved": "https://registry.npmjs.org/@chakra-ui/react-use-size/-/react-use-size-2.0.10.tgz", - "integrity": "sha512-fdIkH14GDnKQrtQfxX8N3gxbXRPXEl67Y3zeD9z4bKKcQUAYIMqs0MsPZY+FMpGQw8QqafM44nXfL038aIrC5w==", - "dependencies": { - "@zag-js/element-size": "0.3.2" - }, - "peerDependencies": { - "react": ">=18" - } - }, - "node_modules/@chakra-ui/react-use-timeout": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@chakra-ui/react-use-timeout/-/react-use-timeout-2.0.5.tgz", - "integrity": "sha512-QqmB+jVphh3h/CS60PieorpY7UqSPkrQCB7f7F+i9vwwIjtP8fxVHMmkb64K7VlzQiMPzv12nlID5dqkzlv0mw==", - "dependencies": { - "@chakra-ui/react-use-callback-ref": "2.0.7" - }, - "peerDependencies": { - "react": ">=18" - } - }, - "node_modules/@chakra-ui/react-use-update-effect": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/@chakra-ui/react-use-update-effect/-/react-use-update-effect-2.0.7.tgz", - "integrity": "sha512-vBM2bmmM83ZdDtasWv3PXPznpTUd+FvqBC8J8rxoRmvdMEfrxTiQRBJhiGHLpS9BPLLPQlosN6KdFU97csB6zg==", - "peerDependencies": { - "react": ">=18" - } - }, - "node_modules/@chakra-ui/react-utils": { - "version": "2.0.12", - "resolved": "https://registry.npmjs.org/@chakra-ui/react-utils/-/react-utils-2.0.12.tgz", - "integrity": "sha512-GbSfVb283+YA3kA8w8xWmzbjNWk14uhNpntnipHCftBibl0lxtQ9YqMFQLwuFOO0U2gYVocszqqDWX+XNKq9hw==", - "dependencies": { - "@chakra-ui/utils": "2.0.15" - }, - "peerDependencies": { - "react": ">=18" - } - }, - "node_modules/@chakra-ui/select": { - "version": "2.0.19", - "resolved": "https://registry.npmjs.org/@chakra-ui/select/-/select-2.0.19.tgz", - "integrity": "sha512-eAlFh+JhwtJ17OrB6fO6gEAGOMH18ERNrXLqWbYLrs674Le7xuREgtuAYDoxUzvYXYYTTdOJtVbcHGriI3o6rA==", - "dependencies": { - "@chakra-ui/form-control": "2.0.18", - "@chakra-ui/shared-utils": "2.0.5" - }, - "peerDependencies": { - "@chakra-ui/system": ">=2.0.0", - "react": ">=18" - } - }, - "node_modules/@chakra-ui/shared-utils": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@chakra-ui/shared-utils/-/shared-utils-2.0.5.tgz", - "integrity": "sha512-4/Wur0FqDov7Y0nCXl7HbHzCg4aq86h+SXdoUeuCMD3dSj7dpsVnStLYhng1vxvlbUnLpdF4oz5Myt3i/a7N3Q==" - }, - "node_modules/@chakra-ui/skeleton": { - "version": "2.0.24", - "resolved": "https://registry.npmjs.org/@chakra-ui/skeleton/-/skeleton-2.0.24.tgz", - "integrity": "sha512-1jXtVKcl/jpbrJlc/TyMsFyI651GTXY5ma30kWyTXoby2E+cxbV6OR8GB/NMZdGxbQBax8/VdtYVjI0n+OBqWA==", - "dependencies": { - "@chakra-ui/media-query": "3.2.12", - "@chakra-ui/react-use-previous": "2.0.5", - "@chakra-ui/shared-utils": "2.0.5" - }, - "peerDependencies": { - "@chakra-ui/system": ">=2.0.0", - "react": ">=18" - } - }, - "node_modules/@chakra-ui/slider": { - "version": "2.0.24", - "resolved": "https://registry.npmjs.org/@chakra-ui/slider/-/slider-2.0.24.tgz", - "integrity": "sha512-o3hOaIiTzPMG8yf+HYWbrTmhxABicDViVOvOajRSXDodbZSCk1rZy1nmUeahjVtfVUB1IyJoNcXdn76IqJmhdg==", - "dependencies": { - "@chakra-ui/number-utils": "2.0.7", - "@chakra-ui/react-context": "2.0.8", - "@chakra-ui/react-types": "2.0.7", - "@chakra-ui/react-use-callback-ref": "2.0.7", - "@chakra-ui/react-use-controllable-state": "2.0.8", - "@chakra-ui/react-use-latest-ref": "2.0.5", - "@chakra-ui/react-use-merge-refs": "2.0.7", - "@chakra-ui/react-use-pan-event": "2.0.9", - "@chakra-ui/react-use-size": "2.0.10", - "@chakra-ui/react-use-update-effect": "2.0.7" - }, - "peerDependencies": { - "@chakra-ui/system": ">=2.0.0", - "react": ">=18" - } - }, - "node_modules/@chakra-ui/spinner": { - "version": "2.0.13", - "resolved": "https://registry.npmjs.org/@chakra-ui/spinner/-/spinner-2.0.13.tgz", - "integrity": "sha512-T1/aSkVpUIuiYyrjfn1+LsQEG7Onbi1UE9ccS/evgf61Dzy4GgTXQUnDuWFSgpV58owqirqOu6jn/9eCwDlzlg==", - "dependencies": { - "@chakra-ui/shared-utils": "2.0.5" - }, - "peerDependencies": { - "@chakra-ui/system": ">=2.0.0", - "react": ">=18" - } - }, - "node_modules/@chakra-ui/stat": { - "version": "2.0.18", - "resolved": "https://registry.npmjs.org/@chakra-ui/stat/-/stat-2.0.18.tgz", - "integrity": "sha512-wKyfBqhVlIs9bkSerUc6F9KJMw0yTIEKArW7dejWwzToCLPr47u+CtYO6jlJHV6lRvkhi4K4Qc6pyvtJxZ3VpA==", - "dependencies": { - "@chakra-ui/icon": "3.0.16", - "@chakra-ui/react-context": "2.0.8", - "@chakra-ui/shared-utils": "2.0.5" - }, - "peerDependencies": { - "@chakra-ui/system": ">=2.0.0", - "react": ">=18" - } - }, - "node_modules/@chakra-ui/stepper": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@chakra-ui/stepper/-/stepper-2.2.0.tgz", - "integrity": "sha512-8ZLxV39oghSVtOUGK8dX8Z6sWVSQiKVmsK4c3OQDa8y2TvxP0VtFD0Z5U1xJlOjQMryZRWhGj9JBc3iQLukuGg==", - "dependencies": { - "@chakra-ui/icon": "3.0.16", - "@chakra-ui/react-context": "2.0.8", - "@chakra-ui/shared-utils": "2.0.5" - }, - "peerDependencies": { - "@chakra-ui/system": ">=2.0.0", - "react": ">=18" - } - }, - "node_modules/@chakra-ui/styled-system": { - "version": "2.9.0", - "resolved": "https://registry.npmjs.org/@chakra-ui/styled-system/-/styled-system-2.9.0.tgz", - "integrity": "sha512-rToN30eOezrTZ5qBHmWqEwsYPenHtc3WU6ODAfMUwNnmCJQiu2erRGv8JwIjmRJnKSOEnNKccI2UXe2EwI6+JA==", - "dependencies": { - "@chakra-ui/shared-utils": "2.0.5", - "csstype": "^3.0.11", - "lodash.mergewith": "4.6.2" - } - }, - "node_modules/@chakra-ui/switch": { - "version": "2.0.27", - "resolved": "https://registry.npmjs.org/@chakra-ui/switch/-/switch-2.0.27.tgz", - "integrity": "sha512-z76y2fxwMlvRBrC5W8xsZvo3gP+zAEbT3Nqy5P8uh/IPd5OvDsGeac90t5cgnQTyxMOpznUNNK+1eUZqtLxWnQ==", - "dependencies": { - "@chakra-ui/checkbox": "2.2.15", - "@chakra-ui/shared-utils": "2.0.5" - }, - "peerDependencies": { - "@chakra-ui/system": ">=2.0.0", - "framer-motion": ">=4.0.0", - "react": ">=18" - } - }, - "node_modules/@chakra-ui/system": { - "version": "2.5.7", - "resolved": "https://registry.npmjs.org/@chakra-ui/system/-/system-2.5.7.tgz", - "integrity": "sha512-yB6en7YdJPxKvKY2jJROVwkBE2CLFmHS4ZDx27VdYs0Fa4kGiyDFhJAfnMtLBNDVsTy1NhUHL9aqR63u56QqFg==", - "dependencies": { - "@chakra-ui/color-mode": "2.1.12", - "@chakra-ui/object-utils": "2.1.0", - "@chakra-ui/react-utils": "2.0.12", - "@chakra-ui/styled-system": "2.9.0", - "@chakra-ui/theme-utils": "2.0.17", - "@chakra-ui/utils": "2.0.15", - "react-fast-compare": "3.2.1" - }, - "peerDependencies": { - "@emotion/react": "^11.0.0", - "@emotion/styled": "^11.0.0", - "react": ">=18" - } - }, - "node_modules/@chakra-ui/table": { - "version": "2.0.17", - "resolved": "https://registry.npmjs.org/@chakra-ui/table/-/table-2.0.17.tgz", - "integrity": "sha512-OScheTEp1LOYvTki2NFwnAYvac8siAhW9BI5RKm5f5ORL2gVJo4I72RUqE0aKe1oboxgm7CYt5afT5PS5cG61A==", - "dependencies": { - "@chakra-ui/react-context": "2.0.8", - "@chakra-ui/shared-utils": "2.0.5" - }, - "peerDependencies": { - "@chakra-ui/system": ">=2.0.0", - "react": ">=18" - } - }, - "node_modules/@chakra-ui/tabs": { - "version": "2.1.9", - "resolved": "https://registry.npmjs.org/@chakra-ui/tabs/-/tabs-2.1.9.tgz", - "integrity": "sha512-Yf8e0kRvaGM6jfkJum0aInQ0U3ZlCafmrYYni2lqjcTtThqu+Yosmo3iYlnullXxCw5MVznfrkb9ySvgQowuYg==", - "dependencies": { - "@chakra-ui/clickable": "2.0.14", - "@chakra-ui/descendant": "3.0.14", - "@chakra-ui/lazy-utils": "2.0.5", - "@chakra-ui/react-children-utils": "2.0.6", - "@chakra-ui/react-context": "2.0.8", - "@chakra-ui/react-use-controllable-state": "2.0.8", - "@chakra-ui/react-use-merge-refs": "2.0.7", - "@chakra-ui/react-use-safe-layout-effect": "2.0.5", - "@chakra-ui/shared-utils": "2.0.5" - }, - "peerDependencies": { - "@chakra-ui/system": ">=2.0.0", - "react": ">=18" - } - }, - "node_modules/@chakra-ui/tag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@chakra-ui/tag/-/tag-3.0.0.tgz", - "integrity": "sha512-YWdMmw/1OWRwNkG9pX+wVtZio+B89odaPj6XeMn5nfNN8+jyhIEpouWv34+CO9G0m1lupJTxPSfgLAd7cqXZMA==", - "dependencies": { - "@chakra-ui/icon": "3.0.16", - "@chakra-ui/react-context": "2.0.8" - }, - "peerDependencies": { - "@chakra-ui/system": ">=2.0.0", - "react": ">=18" - } - }, - "node_modules/@chakra-ui/textarea": { - "version": "2.0.19", - "resolved": "https://registry.npmjs.org/@chakra-ui/textarea/-/textarea-2.0.19.tgz", - "integrity": "sha512-adJk+qVGsFeJDvfn56CcJKKse8k7oMGlODrmpnpTdF+xvlsiTM+1GfaJvgNSpHHuQFdz/A0z1uJtfGefk0G2ZA==", - "dependencies": { - "@chakra-ui/form-control": "2.0.18", - "@chakra-ui/shared-utils": "2.0.5" - }, - "peerDependencies": { - "@chakra-ui/system": ">=2.0.0", - "react": ">=18" - } - }, - "node_modules/@chakra-ui/theme": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/@chakra-ui/theme/-/theme-3.1.1.tgz", - "integrity": "sha512-VHcG0CPLd9tgvWnajpAGqrAYhx4HwgfK0E9VOrdwa/3bN+AgY/0EAAXzfe0Q0W2MBWzSgaYqZcQ5cDRpYbiYPA==", - "dependencies": { - "@chakra-ui/anatomy": "2.1.2", - "@chakra-ui/shared-utils": "2.0.5", - "@chakra-ui/theme-tools": "2.0.17" - }, - "peerDependencies": { - "@chakra-ui/styled-system": ">=2.8.0" - } - }, - "node_modules/@chakra-ui/theme-tools": { - "version": "2.0.17", - "resolved": "https://registry.npmjs.org/@chakra-ui/theme-tools/-/theme-tools-2.0.17.tgz", - "integrity": "sha512-Auu38hnihlJZQcPok6itRDBbwof3TpXGYtDPnOvrq4Xp7jnab36HLt7KEXSDPXbtOk3ZqU99pvI1en5LbDrdjg==", - "dependencies": { - "@chakra-ui/anatomy": "2.1.2", - "@chakra-ui/shared-utils": "2.0.5", - "color2k": "^2.0.0" - }, - "peerDependencies": { - "@chakra-ui/styled-system": ">=2.0.0" - } - }, - "node_modules/@chakra-ui/theme-utils": { - "version": "2.0.17", - "resolved": "https://registry.npmjs.org/@chakra-ui/theme-utils/-/theme-utils-2.0.17.tgz", - "integrity": "sha512-aUaVLFIU1Rs8m+5WVOUvqHKapOX8nSgUVGaeRWS4odxBM95dG4j15f4L88LEMw4D4+WWd0CSAS139OnRgj1rCw==", - "dependencies": { - "@chakra-ui/shared-utils": "2.0.5", - "@chakra-ui/styled-system": "2.9.0", - "@chakra-ui/theme": "3.1.1", - "lodash.mergewith": "4.6.2" - } - }, - "node_modules/@chakra-ui/toast": { - "version": "6.1.3", - "resolved": "https://registry.npmjs.org/@chakra-ui/toast/-/toast-6.1.3.tgz", - "integrity": "sha512-dsg/Sdkuq+SCwdOeyzrnBO1ecDA7VKfLFjUtj9QBc/SFEN8r+FQrygy79TNo+QWr7zdjI8icbl8nsp59lpb8ag==", - "dependencies": { - "@chakra-ui/alert": "2.1.0", - "@chakra-ui/close-button": "2.0.17", - "@chakra-ui/portal": "2.0.16", - "@chakra-ui/react-context": "2.0.8", - "@chakra-ui/react-use-timeout": "2.0.5", - "@chakra-ui/react-use-update-effect": "2.0.7", - "@chakra-ui/shared-utils": "2.0.5", - "@chakra-ui/styled-system": "2.9.0", - "@chakra-ui/theme": "3.1.1" - }, - "peerDependencies": { - "@chakra-ui/system": "2.5.7", - "framer-motion": ">=4.0.0", - "react": ">=18", - "react-dom": ">=18" - } - }, - "node_modules/@chakra-ui/tooltip": { - "version": "2.2.8", - "resolved": "https://registry.npmjs.org/@chakra-ui/tooltip/-/tooltip-2.2.8.tgz", - "integrity": "sha512-AqtrCkalADrqqd1SgII4n8F0dDABxqxL3e8uj3yC3HDzT3BU/0NSwSQRA2bp9eoJHk07ZMs9kyzvkkBLc0pr2A==", - "dependencies": { - "@chakra-ui/popper": "3.0.14", - "@chakra-ui/portal": "2.0.16", - "@chakra-ui/react-types": "2.0.7", - "@chakra-ui/react-use-disclosure": "2.0.8", - "@chakra-ui/react-use-event-listener": "2.0.7", - "@chakra-ui/react-use-merge-refs": "2.0.7", - "@chakra-ui/shared-utils": "2.0.5" - }, - "peerDependencies": { - "@chakra-ui/system": ">=2.0.0", - "framer-motion": ">=4.0.0", - "react": ">=18", - "react-dom": ">=18" - } - }, - "node_modules/@chakra-ui/transition": { - "version": "2.0.16", - "resolved": "https://registry.npmjs.org/@chakra-ui/transition/-/transition-2.0.16.tgz", - "integrity": "sha512-E+RkwlPc3H7P1crEXmXwDXMB2lqY2LLia2P5siQ4IEnRWIgZXlIw+8Em+NtHNgusel2N+9yuB0wT9SeZZeZ3CQ==", - "dependencies": { - "@chakra-ui/shared-utils": "2.0.5" - }, - "peerDependencies": { - "framer-motion": ">=4.0.0", - "react": ">=18" - } - }, - "node_modules/@chakra-ui/utils": { - "version": "2.0.15", - "resolved": "https://registry.npmjs.org/@chakra-ui/utils/-/utils-2.0.15.tgz", - "integrity": "sha512-El4+jL0WSaYYs+rJbuYFDbjmfCcfGDmRY95GO4xwzit6YAPZBLcR65rOEwLps+XWluZTy1xdMrusg/hW0c1aAA==", - "dependencies": { - "@types/lodash.mergewith": "4.6.7", - "css-box-model": "1.2.1", - "framesync": "6.1.2", - "lodash.mergewith": "4.6.2" - } - }, - "node_modules/@chakra-ui/visually-hidden": { - "version": "2.0.15", - "resolved": "https://registry.npmjs.org/@chakra-ui/visually-hidden/-/visually-hidden-2.0.15.tgz", - "integrity": "sha512-WWULIiucYRBIewHKFA7BssQ2ABLHLVd9lrUo3N3SZgR0u4ZRDDVEUNOy+r+9ruDze8+36dGbN9wsN1IdELtdOw==", - "peerDependencies": { - "@chakra-ui/system": ">=2.0.0", - "react": ">=18" - } - }, - "node_modules/@corex/deepmerge": { - "version": "4.0.43", - "resolved": "https://registry.npmjs.org/@corex/deepmerge/-/deepmerge-4.0.43.tgz", - "integrity": "sha512-N8uEMrMPL0cu/bdboEWpQYb/0i2K5Qn8eCsxzOmxSggJbbQte7ljMRoXm917AbntqTGOzdTu+vP3KOOzoC70HQ==" - }, - "node_modules/@emotion/babel-plugin": { - "version": "11.11.0", - "resolved": "https://registry.npmjs.org/@emotion/babel-plugin/-/babel-plugin-11.11.0.tgz", - "integrity": "sha512-m4HEDZleaaCH+XgDDsPF15Ht6wTLsgDTeR3WYj9Q/k76JtWhrJjcP4+/XlG8LGT/Rol9qUfOIztXeA84ATpqPQ==", - "dependencies": { - "@babel/helper-module-imports": "^7.16.7", - "@babel/runtime": "^7.18.3", - "@emotion/hash": "^0.9.1", - "@emotion/memoize": "^0.8.1", - "@emotion/serialize": "^1.1.2", - "babel-plugin-macros": "^3.1.0", - "convert-source-map": "^1.5.0", - "escape-string-regexp": "^4.0.0", - "find-root": "^1.1.0", - "source-map": "^0.5.7", - "stylis": "4.2.0" - } - }, - "node_modules/@emotion/babel-plugin/node_modules/@emotion/memoize": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.8.1.tgz", - "integrity": "sha512-W2P2c/VRW1/1tLox0mVUalvnWXxavmv/Oum2aPsRcoDJuob75FC3Y8FbpfLwUegRcxINtGUMPq0tFCvYNTBXNA==" - }, - "node_modules/@emotion/cache": { - "version": "11.11.0", - "resolved": "https://registry.npmjs.org/@emotion/cache/-/cache-11.11.0.tgz", - "integrity": "sha512-P34z9ssTCBi3e9EI1ZsWpNHcfY1r09ZO0rZbRO2ob3ZQMnFI35jB536qoXbkdesr5EUhYi22anuEJuyxifaqAQ==", - "dependencies": { - "@emotion/memoize": "^0.8.1", - "@emotion/sheet": "^1.2.2", - "@emotion/utils": "^1.2.1", - "@emotion/weak-memoize": "^0.3.1", - "stylis": "4.2.0" - } - }, - "node_modules/@emotion/cache/node_modules/@emotion/memoize": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.8.1.tgz", - "integrity": "sha512-W2P2c/VRW1/1tLox0mVUalvnWXxavmv/Oum2aPsRcoDJuob75FC3Y8FbpfLwUegRcxINtGUMPq0tFCvYNTBXNA==" - }, - "node_modules/@emotion/hash": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/@emotion/hash/-/hash-0.9.1.tgz", - "integrity": "sha512-gJB6HLm5rYwSLI6PQa+X1t5CFGrv1J1TWG+sOyMCeKz2ojaj6Fnl/rZEspogG+cvqbt4AE/2eIyD2QfLKTBNlQ==" - }, - "node_modules/@emotion/is-prop-valid": { - "version": "0.8.8", - "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-0.8.8.tgz", - "integrity": "sha512-u5WtneEAr5IDG2Wv65yhunPSMLIpuKsbuOktRojfrEiEvRyC85LgPMZI63cr7NUqT8ZIGdSVg8ZKGxIug4lXcA==", - "optional": true, - "dependencies": { - "@emotion/memoize": "0.7.4" - } - }, - "node_modules/@emotion/memoize": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.7.4.tgz", - "integrity": "sha512-Ja/Vfqe3HpuzRsG1oBtWTHk2PGZ7GR+2Vz5iYGelAw8dx32K0y7PjVuxK6z1nMpZOqAFsRUPCkK1YjJ56qJlgw==", - "optional": true - }, - "node_modules/@emotion/react": { - "version": "11.11.0", - "resolved": "https://registry.npmjs.org/@emotion/react/-/react-11.11.0.tgz", - "integrity": "sha512-ZSK3ZJsNkwfjT3JpDAWJZlrGD81Z3ytNDsxw1LKq1o+xkmO5pnWfr6gmCC8gHEFf3nSSX/09YrG67jybNPxSUw==", - "dependencies": { - "@babel/runtime": "^7.18.3", - "@emotion/babel-plugin": "^11.11.0", - "@emotion/cache": "^11.11.0", - "@emotion/serialize": "^1.1.2", - "@emotion/use-insertion-effect-with-fallbacks": "^1.0.1", - "@emotion/utils": "^1.2.1", - "@emotion/weak-memoize": "^0.3.1", - "hoist-non-react-statics": "^3.3.1" - }, - "peerDependencies": { - "react": ">=16.8.0" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/@emotion/serialize": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@emotion/serialize/-/serialize-1.1.2.tgz", - "integrity": "sha512-zR6a/fkFP4EAcCMQtLOhIgpprZOwNmCldtpaISpvz348+DP4Mz8ZoKaGGCQpbzepNIUWbq4w6hNZkwDyKoS+HA==", - "dependencies": { - "@emotion/hash": "^0.9.1", - "@emotion/memoize": "^0.8.1", - "@emotion/unitless": "^0.8.1", - "@emotion/utils": "^1.2.1", - "csstype": "^3.0.2" - } - }, - "node_modules/@emotion/serialize/node_modules/@emotion/memoize": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.8.1.tgz", - "integrity": "sha512-W2P2c/VRW1/1tLox0mVUalvnWXxavmv/Oum2aPsRcoDJuob75FC3Y8FbpfLwUegRcxINtGUMPq0tFCvYNTBXNA==" - }, - "node_modules/@emotion/sheet": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/@emotion/sheet/-/sheet-1.2.2.tgz", - "integrity": "sha512-0QBtGvaqtWi+nx6doRwDdBIzhNdZrXUppvTM4dtZZWEGTXL/XE/yJxLMGlDT1Gt+UHH5IX1n+jkXyytE/av7OA==" - }, - "node_modules/@emotion/styled": { - "version": "11.11.0", - "resolved": "https://registry.npmjs.org/@emotion/styled/-/styled-11.11.0.tgz", - "integrity": "sha512-hM5Nnvu9P3midq5aaXj4I+lnSfNi7Pmd4EWk1fOZ3pxookaQTNew6bp4JaCBYM4HVFZF9g7UjJmsUmC2JlxOng==", - "dependencies": { - "@babel/runtime": "^7.18.3", - "@emotion/babel-plugin": "^11.11.0", - "@emotion/is-prop-valid": "^1.2.1", - "@emotion/serialize": "^1.1.2", - "@emotion/use-insertion-effect-with-fallbacks": "^1.0.1", - "@emotion/utils": "^1.2.1" - }, - "peerDependencies": { - "@emotion/react": "^11.0.0-rc.0", - "react": ">=16.8.0" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/@emotion/styled/node_modules/@emotion/is-prop-valid": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-1.2.1.tgz", - "integrity": "sha512-61Mf7Ufx4aDxx1xlDeOm8aFFigGHE4z+0sKCa+IHCeZKiyP9RLD0Mmx7m8b9/Cf37f7NAvQOOJAbQQGVr5uERw==", - "dependencies": { - "@emotion/memoize": "^0.8.1" - } - }, - "node_modules/@emotion/styled/node_modules/@emotion/memoize": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.8.1.tgz", - "integrity": "sha512-W2P2c/VRW1/1tLox0mVUalvnWXxavmv/Oum2aPsRcoDJuob75FC3Y8FbpfLwUegRcxINtGUMPq0tFCvYNTBXNA==" - }, - "node_modules/@emotion/unitless": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.8.1.tgz", - "integrity": "sha512-KOEGMu6dmJZtpadb476IsZBclKvILjopjUii3V+7MnXIQCYh8W3NgNcgwo21n9LXZX6EDIKvqfjYxXebDwxKmQ==" - }, - "node_modules/@emotion/use-insertion-effect-with-fallbacks": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.0.1.tgz", - "integrity": "sha512-jT/qyKZ9rzLErtrjGgdkMBn2OP8wl0G3sQlBb3YPryvKHsjvINUhVaPFfP+fpBcOkmrVOVEEHQFJ7nbj2TH2gw==", - "peerDependencies": { - "react": ">=16.8.0" - } - }, - "node_modules/@emotion/utils": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@emotion/utils/-/utils-1.2.1.tgz", - "integrity": "sha512-Y2tGf3I+XVnajdItskUCn6LX+VUDmP6lTL4fcqsXAv43dnlbZiuW4MWQW38rW/BVWSE7Q/7+XQocmpnRYILUmg==" - }, - "node_modules/@emotion/weak-memoize": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/@emotion/weak-memoize/-/weak-memoize-0.3.1.tgz", - "integrity": "sha512-EsBwpc7hBUJWAsNPBmJy4hxWx12v6bshQsldrVmjxJoc3isbxhOrF2IcCpaXxfvq03NwkI7sbsOLXbYuqF/8Ww==" - }, - "node_modules/@jridgewell/gen-mapping": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", - "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", - "dependencies": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/resolve-uri": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz", - "integrity": "sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==", - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/set-array": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", - "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.15", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", - "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==" - }, - "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.20", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.20.tgz", - "integrity": "sha512-R8LcPeWZol2zR8mmH3JeKQ6QRCFb7XgUhV9ZlGhHLGyg4wpPiPZNQOOWhFZhxKw8u//yTbNGI42Bx/3paXEQ+Q==", - "dependencies": { - "@jridgewell/resolve-uri": "^3.1.0", - "@jridgewell/sourcemap-codec": "^1.4.14" - } - }, - "node_modules/@next/env": { - "version": "13.5.4", - "resolved": "https://registry.npmjs.org/@next/env/-/env-13.5.4.tgz", - "integrity": "sha512-LGegJkMvRNw90WWphGJ3RMHMVplYcOfRWf2Be3td3sUa+1AaxmsYyANsA+znrGCBjXJNi4XAQlSoEfUxs/4kIQ==" - }, - "node_modules/@next/swc-darwin-arm64": { - "version": "13.5.4", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-13.5.4.tgz", - "integrity": "sha512-Df8SHuXgF1p+aonBMcDPEsaahNo2TCwuie7VXED4FVyECvdXfRT9unapm54NssV9tF3OQFKBFOdlje4T43VO0w==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-darwin-x64": { - "version": "13.5.4", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-13.5.4.tgz", - "integrity": "sha512-siPuUwO45PnNRMeZnSa8n/Lye5ZX93IJom9wQRB5DEOdFrw0JjOMu1GINB8jAEdwa7Vdyn1oJ2xGNaQpdQQ9Pw==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-linux-arm64-gnu": { - "version": "13.5.4", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-13.5.4.tgz", - "integrity": "sha512-l/k/fvRP/zmB2jkFMfefmFkyZbDkYW0mRM/LB+tH5u9pB98WsHXC0WvDHlGCYp3CH/jlkJPL7gN8nkTQVrQ/2w==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-linux-arm64-musl": { - "version": "13.5.4", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-13.5.4.tgz", - "integrity": "sha512-YYGb7SlLkI+XqfQa8VPErljb7k9nUnhhRrVaOdfJNCaQnHBcvbT7cx/UjDQLdleJcfyg1Hkn5YSSIeVfjgmkTg==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-linux-x64-gnu": { - "version": "13.5.4", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-13.5.4.tgz", - "integrity": "sha512-uE61vyUSClnCH18YHjA8tE1prr/PBFlBFhxBZis4XBRJoR+txAky5d7gGNUIbQ8sZZ7LVkSVgm/5Fc7mwXmRAg==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-linux-x64-musl": { - "version": "13.5.4", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-13.5.4.tgz", - "integrity": "sha512-qVEKFYML/GvJSy9CfYqAdUexA6M5AklYcQCW+8JECmkQHGoPxCf04iMh7CPR7wkHyWWK+XLt4Ja7hhsPJtSnhg==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-win32-arm64-msvc": { - "version": "13.5.4", - "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-13.5.4.tgz", - "integrity": "sha512-mDSQfqxAlfpeZOLPxLymZkX0hYF3juN57W6vFHTvwKlnHfmh12Pt7hPIRLYIShk8uYRsKPtMTth/EzpwRI+u8w==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-win32-ia32-msvc": { - "version": "13.5.4", - "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-13.5.4.tgz", - "integrity": "sha512-aoqAT2XIekIWoriwzOmGFAvTtVY5O7JjV21giozBTP5c6uZhpvTWRbmHXbmsjZqY4HnEZQRXWkSAppsIBweKqw==", - "cpu": [ - "ia32" - ], - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-win32-x64-msvc": { - "version": "13.5.4", - "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-13.5.4.tgz", - "integrity": "sha512-cyRvlAxwlddlqeB9xtPSfNSCRy8BOa4wtMo0IuI9P7Y0XT2qpDrpFKRyZ7kUngZis59mPVla5k8X1oOJ8RxDYg==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@nodelib/fs.scandir": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", - "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", - "dependencies": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.stat": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", - "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.walk": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", - "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", - "dependencies": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@popperjs/core": { - "version": "2.11.8", - "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz", - "integrity": "sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/popperjs" - } - }, - "node_modules/@socket.io/component-emitter": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@socket.io/component-emitter/-/component-emitter-3.1.0.tgz", - "integrity": "sha512-+9jVqKhRSpsc591z5vX+X5Yyw+he/HCB4iQ/RYxw35CEPaY1gnsNE43nf9n9AaYjAQrTiI/mOwKUKdUs9vf7Xg==" - }, - "node_modules/@swc/helpers": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.2.tgz", - "integrity": "sha512-E4KcWTpoLHqwPHLxidpOqQbcrZVgi0rsmmZXUle1jXmJfuIf/UWpczUJ7MZZ5tlxytgJXyp0w4PGkkeLiuIdZw==", - "dependencies": { - "tslib": "^2.4.0" - } - }, - "node_modules/@types/cookie": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/@types/cookie/-/cookie-0.3.3.tgz", - "integrity": "sha512-LKVP3cgXBT9RYj+t+9FDKwS5tdI+rPBXaNSkma7hvqy35lc7mAokC2zsqWJH0LaqIt3B962nuYI77hsJoT1gow==" - }, - "node_modules/@types/lodash": { - "version": "4.14.201", - "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.201.tgz", - "integrity": "sha512-y9euML0cim1JrykNxADLfaG0FgD1g/yTHwUs/Jg9ZIU7WKj2/4IW9Lbb1WZbvck78W/lfGXFfe+u2EGfIJXdLQ==" - }, - "node_modules/@types/lodash.mergewith": { - "version": "4.6.7", - "resolved": "https://registry.npmjs.org/@types/lodash.mergewith/-/lodash.mergewith-4.6.7.tgz", - "integrity": "sha512-3m+lkO5CLRRYU0fhGRp7zbsGi6+BZj0uTVSwvcKU+nSlhjA9/QRNfuSGnD2mX6hQA7ZbmcCkzk5h4ZYGOtk14A==", - "dependencies": { - "@types/lodash": "*" - } - }, - "node_modules/@types/parse-json": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.2.tgz", - "integrity": "sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==" - }, - "node_modules/@zag-js/element-size": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@zag-js/element-size/-/element-size-0.3.2.tgz", - "integrity": "sha512-bVvvigUGvAuj7PCkE5AbzvTJDTw5f3bg9nQdv+ErhVN8SfPPppLJEmmWdxqsRzrHXgx8ypJt/+Ty0kjtISVDsQ==" - }, - "node_modules/@zag-js/focus-visible": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/@zag-js/focus-visible/-/focus-visible-0.2.2.tgz", - "integrity": "sha512-0j2gZq8HiZ51z4zNnSkF1iSkqlwRDvdH+son3wHdoz+7IUdMN/5Exd4TxMJ+gq2Of1DiXReYLL9qqh2PdQ4wgA==" - }, - "node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/any-promise": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", - "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==" - }, - "node_modules/anymatch": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", - "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", - "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/arg": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz", - "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==" - }, - "node_modules/aria-hidden": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/aria-hidden/-/aria-hidden-1.2.3.tgz", - "integrity": "sha512-xcLxITLe2HYa1cnYnwCjkOO1PqUHQpozB8x9AR0OgWN2woOBi5kSDVxKfd0b7sb1hw5qFeJhXm9H1nu3xSfLeQ==", - "dependencies": { - "tslib": "^2.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" - }, - "node_modules/attr-accept": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/attr-accept/-/attr-accept-2.2.2.tgz", - "integrity": "sha512-7prDjvt9HmqiZ0cl5CRjtS84sEyhsHP2coDkaZKRKVfCDo9s7iw7ChVmar78Gu9pC4SoR/28wFu/G5JJhTnqEg==", - "engines": { - "node": ">=4" - } - }, - "node_modules/autoprefixer": { - "version": "10.4.14", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.14.tgz", - "integrity": "sha512-FQzyfOsTlwVzjHxKEqRIAdJx9niO6VCBCoEwax/VLSoQF29ggECcPuBqUMZ+u8jCZOPSy8b8/8KnuFbp0SaFZQ==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/autoprefixer" - } - ], - "dependencies": { - "browserslist": "^4.21.5", - "caniuse-lite": "^1.0.30001464", - "fraction.js": "^4.2.0", - "normalize-range": "^0.1.2", - "picocolors": "^1.0.0", - "postcss-value-parser": "^4.2.0" - }, - "bin": { - "autoprefixer": "bin/autoprefixer" - }, - "engines": { - "node": "^10 || ^12 || >=14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/axios": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/axios/-/axios-1.4.0.tgz", - "integrity": "sha512-S4XCWMEmzvo64T9GfvQDOXgYRDJ/wsSZc7Jvdgx5u1sd0JwsuPLqb3SYmusag+edF6ziyMensPVqLTSc1PiSEA==", - "dependencies": { - "follow-redirects": "^1.15.0", - "form-data": "^4.0.0", - "proxy-from-env": "^1.1.0" - } - }, - "node_modules/babel-plugin-macros": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-3.1.0.tgz", - "integrity": "sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg==", - "dependencies": { - "@babel/runtime": "^7.12.5", - "cosmiconfig": "^7.0.0", - "resolve": "^1.19.0" - }, - "engines": { - "node": ">=10", - "npm": ">=6" - } - }, - "node_modules/balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" - }, - "node_modules/binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", - "engines": { - "node": ">=8" - } - }, - "node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dependencies": { - "fill-range": "^7.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/browserslist": { - "version": "4.22.1", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.22.1.tgz", - "integrity": "sha512-FEVc202+2iuClEhZhrWy6ZiAcRLvNMyYcxZ8raemul1DYVOVdFsbqckWLdsixQZCpJlwe77Z3UTalE7jsjnKfQ==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "dependencies": { - "caniuse-lite": "^1.0.30001541", - "electron-to-chromium": "^1.4.535", - "node-releases": "^2.0.13", - "update-browserslist-db": "^1.0.13" - }, - "bin": { - "browserslist": "cli.js" - }, - "engines": { - "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" - } - }, - "node_modules/busboy": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/busboy/-/busboy-1.6.0.tgz", - "integrity": "sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==", - "dependencies": { - "streamsearch": "^1.1.0" - }, - "engines": { - "node": ">=10.16.0" - } - }, - "node_modules/callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "engines": { - "node": ">=6" - } - }, - "node_modules/camelcase-css": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz", - "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==", - "engines": { - "node": ">= 6" - } - }, - "node_modules/caniuse-lite": { - "version": "1.0.30001563", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001563.tgz", - "integrity": "sha512-na2WUmOxnwIZtwnFI2CZ/3er0wdNzU7hN+cPYz/z2ajHThnkWjNBOpEPP4n+4r2WPM847JaMotaJE3bnfzjyKw==", - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/caniuse-lite" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ] - }, - "node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/chalk/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/chokidar": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", - "funding": [ - { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - ], - "dependencies": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - }, - "engines": { - "node": ">= 8.10.0" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" - } - }, - "node_modules/client-only": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/client-only/-/client-only-0.0.1.tgz", - "integrity": "sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==" - }, - "node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" - }, - "node_modules/color2k": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/color2k/-/color2k-2.0.2.tgz", - "integrity": "sha512-kJhwH5nAwb34tmyuqq/lgjEKzlFXn1U99NlnB6Ws4qVaERcRUYeYP1cBw6BJ4vxaWStAUEef4WMr7WjOCnBt8w==" - }, - "node_modules/combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "dependencies": { - "delayed-stream": "~1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/commander": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", - "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", - "engines": { - "node": ">= 6" - } - }, - "node_modules/compute-scroll-into-view": { - "version": "1.0.20", - "resolved": "https://registry.npmjs.org/compute-scroll-into-view/-/compute-scroll-into-view-1.0.20.tgz", - "integrity": "sha512-UCB0ioiyj8CRjtrvaceBLqqhZCVP+1B8+NWQhmdsm0VXOJtobBCf1dBQmebCCo34qZmUwZfIH2MZLqNHazrfjg==" - }, - "node_modules/concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" - }, - "node_modules/convert-source-map": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", - "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==" - }, - "node_modules/cookie": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz", - "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/copy-to-clipboard": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/copy-to-clipboard/-/copy-to-clipboard-3.3.3.tgz", - "integrity": "sha512-2KV8NhB5JqC3ky0r9PMCAZKbUHSwtEo4CwCs0KXgruG43gX5PMqDEBbVU4OUzw2MuAWUfsuFmWvEKG5QRfSnJA==", - "dependencies": { - "toggle-selection": "^1.0.6" - } - }, - "node_modules/cosmiconfig": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", - "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==", - "dependencies": { - "@types/parse-json": "^4.0.0", - "import-fresh": "^3.2.1", - "parse-json": "^5.0.0", - "path-type": "^4.0.0", - "yaml": "^1.10.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/cosmiconfig/node_modules/yaml": { - "version": "1.10.2", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", - "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", - "engines": { - "node": ">= 6" - } - }, - "node_modules/css-box-model": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/css-box-model/-/css-box-model-1.2.1.tgz", - "integrity": "sha512-a7Vr4Q/kd/aw96bnJG332W9V9LkJO69JRcaCYDUqjp6/z0w6VcZjgAcTbgFxEPfBgdnAwlh3iwu+hLopa+flJw==", - "dependencies": { - "tiny-invariant": "^1.0.6" - } - }, - "node_modules/cssesc": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", - "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", - "bin": { - "cssesc": "bin/cssesc" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/csstype": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.2.tgz", - "integrity": "sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ==" - }, - "node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/detect-node-es": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/detect-node-es/-/detect-node-es-1.1.0.tgz", - "integrity": "sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ==" - }, - "node_modules/didyoumean": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz", - "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==" - }, - "node_modules/dlv": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz", - "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==" - }, - "node_modules/electron-to-chromium": { - "version": "1.4.588", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.588.tgz", - "integrity": "sha512-soytjxwbgcCu7nh5Pf4S2/4wa6UIu+A3p03U2yVr53qGxi1/VTR3ENI+p50v+UxqqZAfl48j3z55ud7VHIOr9w==", - "dev": true - }, - "node_modules/engine.io-client": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-6.4.0.tgz", - "integrity": "sha512-GyKPDyoEha+XZ7iEqam49vz6auPnNJ9ZBfy89f+rMMas8AuiMWOZ9PVzu8xb9ZC6rafUqiGHSCfu22ih66E+1g==", - "dependencies": { - "@socket.io/component-emitter": "~3.1.0", - "debug": "~4.3.1", - "engine.io-parser": "~5.0.3", - "ws": "~8.11.0", - "xmlhttprequest-ssl": "~2.0.0" - } - }, - "node_modules/engine.io-parser": { - "version": "5.0.7", - "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.0.7.tgz", - "integrity": "sha512-P+jDFbvK6lE3n1OL+q9KuzdOFWkkZ/cMV9gol/SbVfpyqfvrfrFTOFJ6fQm2VC3PZHlU3QPhVwmbsCnauHF2MQ==", - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/error-ex": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", - "dependencies": { - "is-arrayish": "^0.2.1" - } - }, - "node_modules/escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/fast-glob": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", - "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", - "dependencies": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.4" - }, - "engines": { - "node": ">=8.6.0" - } - }, - "node_modules/fastq": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", - "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", - "dependencies": { - "reusify": "^1.0.4" - } - }, - "node_modules/file-selector": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/file-selector/-/file-selector-0.6.0.tgz", - "integrity": "sha512-QlZ5yJC0VxHxQQsQhXvBaC7VRJ2uaxTf+Tfpu4Z/OcVQJVpZO+DGU0rkoVW5ce2SccxugvpBJoMvUs59iILYdw==", - "dependencies": { - "tslib": "^2.4.0" - }, - "engines": { - "node": ">= 12" - } - }, - "node_modules/fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/find-root": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz", - "integrity": "sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==" - }, - "node_modules/focus-lock": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/focus-lock/-/focus-lock-1.0.0.tgz", - "integrity": "sha512-a8Ge6cdKh9za/GZR/qtigTAk7SrGore56EFcoMshClsh7FLk1zwszc/ltuMfKhx56qeuyL/jWQ4J4axou0iJ9w==", - "dependencies": { - "tslib": "^2.0.3" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/focus-visible": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/focus-visible/-/focus-visible-5.2.0.tgz", - "integrity": "sha512-Rwix9pBtC1Nuy5wysTmKy+UjbDJpIfg8eHjw0rjZ1mX4GNLz1Bmd16uDpI3Gk1i70Fgcs8Csg2lPm8HULFg9DQ==" - }, - "node_modules/follow-redirects": { - "version": "1.15.3", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.3.tgz", - "integrity": "sha512-1VzOtuEM8pC9SFU1E+8KfTjZyMztRsgEfwQl44z8A25uy13jSzTj6dyK2Df52iV0vgHCfBwLhDWevLn95w5v6Q==", - "funding": [ - { - "type": "individual", - "url": "https://github.com/sponsors/RubenVerborgh" - } - ], - "engines": { - "node": ">=4.0" - }, - "peerDependenciesMeta": { - "debug": { - "optional": true - } - } - }, - "node_modules/form-data": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", - "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", - "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/fraction.js": { - "version": "4.3.7", - "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.3.7.tgz", - "integrity": "sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==", - "dev": true, - "engines": { - "node": "*" - }, - "funding": { - "type": "patreon", - "url": "https://github.com/sponsors/rawify" - } - }, - "node_modules/framer-motion": { - "version": "10.16.4", - "resolved": "https://registry.npmjs.org/framer-motion/-/framer-motion-10.16.4.tgz", - "integrity": "sha512-p9V9nGomS3m6/CALXqv6nFGMuFOxbWsmaOrdmhyQimMIlLl3LC7h7l86wge/Js/8cRu5ktutS/zlzgR7eBOtFA==", - "dependencies": { - "tslib": "^2.4.0" - }, - "optionalDependencies": { - "@emotion/is-prop-valid": "^0.8.2" - }, - "peerDependencies": { - "react": "^18.0.0", - "react-dom": "^18.0.0" - }, - "peerDependenciesMeta": { - "react": { - "optional": true - }, - "react-dom": { - "optional": true - } - } - }, - "node_modules/framesync": { - "version": "6.1.2", - "resolved": "https://registry.npmjs.org/framesync/-/framesync-6.1.2.tgz", - "integrity": "sha512-jBTqhX6KaQVDyus8muwZbBeGGP0XgujBRbQ7gM7BRdS3CadCZIHiawyzYLnafYcvZIh5j8WE7cxZKFn7dXhu9g==", - "dependencies": { - "tslib": "2.4.0" - } - }, - "node_modules/framesync/node_modules/tslib": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz", - "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==" - }, - "node_modules/fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" - }, - "node_modules/fsevents": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", - "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", - "hasInstallScript": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, - "node_modules/function-bind": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", - "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/get-nonce": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/get-nonce/-/get-nonce-1.0.1.tgz", - "integrity": "sha512-FJhYRoDaiatfEkUK8HKlicmu/3SGFD51q3itKDGoSTysQJBnfOcxU5GxnhE1E6soB76MbT0MBtnKJuXyAx+96Q==", - "engines": { - "node": ">=6" - } - }, - "node_modules/glob": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", - "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/glob-to-regexp": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", - "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==" - }, - "node_modules/graceful-fs": { - "version": "4.2.11", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", - "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==" - }, - "node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", - "engines": { - "node": ">=4" - } - }, - "node_modules/hasown": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz", - "integrity": "sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==", - "dependencies": { - "function-bind": "^1.1.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/hoist-non-react-statics": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz", - "integrity": "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==", - "dependencies": { - "react-is": "^16.7.0" - } - }, - "node_modules/import-fresh": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", - "dependencies": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", - "dependencies": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "node_modules/inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" - }, - "node_modules/invariant": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", - "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", - "dependencies": { - "loose-envify": "^1.0.0" - } - }, - "node_modules/is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==" - }, - "node_modules/is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dependencies": { - "binary-extensions": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-core-module": { - "version": "2.13.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", - "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", - "dependencies": { - "hasown": "^2.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "dependencies": { - "is-extglob": "^2.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/jiti": { - "version": "1.21.0", - "resolved": "https://registry.npmjs.org/jiti/-/jiti-1.21.0.tgz", - "integrity": "sha512-gFqAIbuKyyso/3G2qhiO2OM6shY6EPP/R0+mkDbyspxKazh8BXDC5FiFsUjlczgdNz/vfra0da2y+aHrusLG/Q==", - "bin": { - "jiti": "bin/jiti.js" - } - }, - "node_modules/js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" - }, - "node_modules/json-parse-even-better-errors": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", - "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==" - }, - "node_modules/json5": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", - "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", - "bin": { - "json5": "lib/cli.js" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/lilconfig": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.1.0.tgz", - "integrity": "sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==", - "engines": { - "node": ">=10" - } - }, - "node_modules/lines-and-columns": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", - "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==" - }, - "node_modules/lodash.mergewith": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/lodash.mergewith/-/lodash.mergewith-4.6.2.tgz", - "integrity": "sha512-GK3g5RPZWTRSeLSpgP8Xhra+pnjBC56q9FZYe1d5RN3TJ35dbkGy3YqBSMbyCrlbi+CM9Z3Jk5yTL7RCsqboyQ==" - }, - "node_modules/loose-envify": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", - "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", - "dependencies": { - "js-tokens": "^3.0.0 || ^4.0.0" - }, - "bin": { - "loose-envify": "cli.js" - } - }, - "node_modules/merge2": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", - "engines": { - "node": ">= 8" - } - }, - "node_modules/micromatch": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", - "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", - "dependencies": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "dependencies": { - "mime-db": "1.52.0" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/minimist": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", - "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - }, - "node_modules/mz": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz", - "integrity": "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==", - "dependencies": { - "any-promise": "^1.0.0", - "object-assign": "^4.0.1", - "thenify-all": "^1.0.0" - } - }, - "node_modules/nanoid": { - "version": "3.3.7", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", - "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "bin": { - "nanoid": "bin/nanoid.cjs" - }, - "engines": { - "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" - } - }, - "node_modules/next": { - "version": "13.5.4", - "resolved": "https://registry.npmjs.org/next/-/next-13.5.4.tgz", - "integrity": "sha512-+93un5S779gho8y9ASQhb/bTkQF17FNQOtXLKAj3lsNgltEcF0C5PMLLncDmH+8X1EnJH1kbqAERa29nRXqhjA==", - "dependencies": { - "@next/env": "13.5.4", - "@swc/helpers": "0.5.2", - "busboy": "1.6.0", - "caniuse-lite": "^1.0.30001406", - "postcss": "8.4.31", - "styled-jsx": "5.1.1", - "watchpack": "2.4.0" - }, - "bin": { - "next": "dist/bin/next" - }, - "engines": { - "node": ">=16.14.0" - }, - "optionalDependencies": { - "@next/swc-darwin-arm64": "13.5.4", - "@next/swc-darwin-x64": "13.5.4", - "@next/swc-linux-arm64-gnu": "13.5.4", - "@next/swc-linux-arm64-musl": "13.5.4", - "@next/swc-linux-x64-gnu": "13.5.4", - "@next/swc-linux-x64-musl": "13.5.4", - "@next/swc-win32-arm64-msvc": "13.5.4", - "@next/swc-win32-ia32-msvc": "13.5.4", - "@next/swc-win32-x64-msvc": "13.5.4" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.1.0", - "react": "^18.2.0", - "react-dom": "^18.2.0", - "sass": "^1.3.0" - }, - "peerDependenciesMeta": { - "@opentelemetry/api": { - "optional": true - }, - "sass": { - "optional": true - } - } - }, - "node_modules/next-sitemap": { - "version": "4.1.8", - "resolved": "https://registry.npmjs.org/next-sitemap/-/next-sitemap-4.1.8.tgz", - "integrity": "sha512-XAXpBHX4o89JfMgvrm0zimlZwpu2iBPXHpimJMUrqOZSc4C2oB1Lv89mxuVON9IE8HOezaM+w4GjJxcYCuGPTQ==", - "funding": [ - { - "url": "https://github.com/iamvishnusankar/next-sitemap.git" - } - ], - "dependencies": { - "@corex/deepmerge": "^4.0.43", - "@next/env": "^13.4.3", - "fast-glob": "^3.2.12", - "minimist": "^1.2.8" - }, - "bin": { - "next-sitemap": "bin/next-sitemap.mjs", - "next-sitemap-cjs": "bin/next-sitemap.cjs" - }, - "engines": { - "node": ">=14.18" - }, - "peerDependencies": { - "next": "*" - } - }, - "node_modules/next-themes": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/next-themes/-/next-themes-0.2.0.tgz", - "integrity": "sha512-myhpDL4vadBD9YDSHiewqvzorGzB03N84e+3LxCwHRlM/hiBOaW+UsKsQojQAzC7fdcJA0l2ppveXcYaVV+hxQ==", - "peerDependencies": { - "next": "*", - "react": "*", - "react-dom": "*" - } - }, - "node_modules/next/node_modules/postcss": { - "version": "8.4.31", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz", - "integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==", - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/postcss" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "dependencies": { - "nanoid": "^3.3.6", - "picocolors": "^1.0.0", - "source-map-js": "^1.0.2" - }, - "engines": { - "node": "^10 || ^12 || >=14" - } - }, - "node_modules/node-releases": { - "version": "2.0.13", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.13.tgz", - "integrity": "sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==", - "dev": true - }, - "node_modules/normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/normalize-range": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", - "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object-hash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-3.0.0.tgz", - "integrity": "sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==", - "engines": { - "node": ">= 6" - } - }, - "node_modules/once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", - "dependencies": { - "wrappy": "1" - } - }, - "node_modules/parent-module": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", - "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", - "dependencies": { - "callsites": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/parse-json": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", - "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", - "dependencies": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-even-better-errors": "^2.3.0", - "lines-and-columns": "^1.1.6" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" - }, - "node_modules/path-type": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", - "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", - "engines": { - "node": ">=8" - } - }, - "node_modules/picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" - }, - "node_modules/picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "engines": { - "node": ">=8.6" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "node_modules/pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/pirates": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", - "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==", - "engines": { - "node": ">= 6" - } - }, - "node_modules/postcss": { - "version": "8.4.24", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.24.tgz", - "integrity": "sha512-M0RzbcI0sO/XJNucsGjvWU9ERWxb/ytp1w6dKtxTKgixdtQDq4rmx/g8W1hnaheq9jgwL/oyEdH5Bc4WwJKMqg==", - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/postcss" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "dependencies": { - "nanoid": "^3.3.6", - "picocolors": "^1.0.0", - "source-map-js": "^1.0.2" - }, - "engines": { - "node": "^10 || ^12 || >=14" - } - }, - "node_modules/postcss-import": { - "version": "15.1.0", - "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-15.1.0.tgz", - "integrity": "sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==", - "dependencies": { - "postcss-value-parser": "^4.0.0", - "read-cache": "^1.0.0", - "resolve": "^1.1.7" - }, - "engines": { - "node": ">=14.0.0" - }, - "peerDependencies": { - "postcss": "^8.0.0" - } - }, - "node_modules/postcss-js": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/postcss-js/-/postcss-js-4.0.1.tgz", - "integrity": "sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==", - "dependencies": { - "camelcase-css": "^2.0.1" - }, - "engines": { - "node": "^12 || ^14 || >= 16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - "peerDependencies": { - "postcss": "^8.4.21" - } - }, - "node_modules/postcss-load-config": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-4.0.1.tgz", - "integrity": "sha512-vEJIc8RdiBRu3oRAI0ymerOn+7rPuMvRXslTvZUKZonDHFIczxztIyJ1urxM1x9JXEikvpWWTUUqal5j/8QgvA==", - "dependencies": { - "lilconfig": "^2.0.5", - "yaml": "^2.1.1" - }, - "engines": { - "node": ">= 14" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - "peerDependencies": { - "postcss": ">=8.0.9", - "ts-node": ">=9.0.0" - }, - "peerDependenciesMeta": { - "postcss": { - "optional": true - }, - "ts-node": { - "optional": true - } - } - }, - "node_modules/postcss-nested": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-6.0.1.tgz", - "integrity": "sha512-mEp4xPMi5bSWiMbsgoPfcP74lsWLHkQbZc3sY+jWYd65CUwXrUaTp0fmNpa01ZcETKlIgUdFN/MpS2xZtqL9dQ==", - "dependencies": { - "postcss-selector-parser": "^6.0.11" - }, - "engines": { - "node": ">=12.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - "peerDependencies": { - "postcss": "^8.2.14" - } - }, - "node_modules/postcss-selector-parser": { - "version": "6.0.13", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.13.tgz", - "integrity": "sha512-EaV1Gl4mUEV4ddhDnv/xtj7sxwrwxdetHdWUGnT4VJQf+4d05v6lHYZr8N573k5Z0BViss7BDhfWtKS3+sfAqQ==", - "dependencies": { - "cssesc": "^3.0.0", - "util-deprecate": "^1.0.2" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss-value-parser": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", - "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==" - }, - "node_modules/prop-types": { - "version": "15.8.1", - "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", - "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", - "dependencies": { - "loose-envify": "^1.4.0", - "object-assign": "^4.1.1", - "react-is": "^16.13.1" - } - }, - "node_modules/proxy-from-env": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", - "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==" - }, - "node_modules/queue-microtask": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", - "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/react": { - "version": "18.2.0", - "resolved": "https://registry.npmjs.org/react/-/react-18.2.0.tgz", - "integrity": "sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==", - "dependencies": { - "loose-envify": "^1.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/react-clientside-effect": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/react-clientside-effect/-/react-clientside-effect-1.2.6.tgz", - "integrity": "sha512-XGGGRQAKY+q25Lz9a/4EPqom7WRjz3z9R2k4jhVKA/puQFH/5Nt27vFZYql4m4NVNdUvX8PS3O7r/Zzm7cjUlg==", - "dependencies": { - "@babel/runtime": "^7.12.13" - }, - "peerDependencies": { - "react": "^15.3.0 || ^16.0.0 || ^17.0.0 || ^18.0.0" - } - }, - "node_modules/react-dom": { - "version": "18.2.0", - "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz", - "integrity": "sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==", - "dependencies": { - "loose-envify": "^1.1.0", - "scheduler": "^0.23.0" - }, - "peerDependencies": { - "react": "^18.2.0" - } - }, - "node_modules/react-dropzone": { - "version": "14.2.3", - "resolved": "https://registry.npmjs.org/react-dropzone/-/react-dropzone-14.2.3.tgz", - "integrity": "sha512-O3om8I+PkFKbxCukfIR3QAGftYXDZfOE2N1mr/7qebQJHs7U+/RSL/9xomJNpRg9kM5h9soQSdf0Gc7OHF5Fug==", - "dependencies": { - "attr-accept": "^2.2.2", - "file-selector": "^0.6.0", - "prop-types": "^15.8.1" - }, - "engines": { - "node": ">= 10.13" - }, - "peerDependencies": { - "react": ">= 16.8 || 18.0.0" - } - }, - "node_modules/react-fast-compare": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/react-fast-compare/-/react-fast-compare-3.2.1.tgz", - "integrity": "sha512-xTYf9zFim2pEif/Fw16dBiXpe0hoy5PxcD8+OwBnTtNLfIm3g6WxhKNurY+6OmdH1u6Ta/W/Vl6vjbYP1MFnDg==" - }, - "node_modules/react-focus-lock": { - "version": "2.9.6", - "resolved": "https://registry.npmjs.org/react-focus-lock/-/react-focus-lock-2.9.6.tgz", - "integrity": "sha512-B7gYnCjHNrNYwY2juS71dHbf0+UpXXojt02svxybj8N5bxceAkzPChKEncHuratjUHkIFNCn06k2qj1DRlzTug==", - "dependencies": { - "@babel/runtime": "^7.0.0", - "focus-lock": "^1.0.0", - "prop-types": "^15.6.2", - "react-clientside-effect": "^1.2.6", - "use-callback-ref": "^1.3.0", - "use-sidecar": "^1.1.2" - }, - "peerDependencies": { - "@types/react": "^16.8.0 || ^17.0.0 || ^18.0.0", - "react": "^16.8.0 || ^17.0.0 || ^18.0.0" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/react-is": { - "version": "16.13.1", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", - "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" - }, - "node_modules/react-remove-scroll": { - "version": "2.5.7", - "resolved": "https://registry.npmjs.org/react-remove-scroll/-/react-remove-scroll-2.5.7.tgz", - "integrity": "sha512-FnrTWO4L7/Bhhf3CYBNArEG/yROV0tKmTv7/3h9QCFvH6sndeFf1wPqOcbFVu5VAulS5dV1wGT3GZZ/1GawqiA==", - "dependencies": { - "react-remove-scroll-bar": "^2.3.4", - "react-style-singleton": "^2.2.1", - "tslib": "^2.1.0", - "use-callback-ref": "^1.3.0", - "use-sidecar": "^1.1.2" - }, - "engines": { - "node": ">=10" - }, - "peerDependencies": { - "@types/react": "^16.8.0 || ^17.0.0 || ^18.0.0", - "react": "^16.8.0 || ^17.0.0 || ^18.0.0" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/react-remove-scroll-bar": { - "version": "2.3.4", - "resolved": "https://registry.npmjs.org/react-remove-scroll-bar/-/react-remove-scroll-bar-2.3.4.tgz", - "integrity": "sha512-63C4YQBUt0m6ALadE9XV56hV8BgJWDmmTPY758iIJjfQKt2nYwoUrPk0LXRXcB/yIj82T1/Ixfdpdk68LwIB0A==", - "dependencies": { - "react-style-singleton": "^2.2.1", - "tslib": "^2.0.0" - }, - "engines": { - "node": ">=10" - }, - "peerDependencies": { - "@types/react": "^16.8.0 || ^17.0.0 || ^18.0.0", - "react": "^16.8.0 || ^17.0.0 || ^18.0.0" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/react-style-singleton": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/react-style-singleton/-/react-style-singleton-2.2.1.tgz", - "integrity": "sha512-ZWj0fHEMyWkHzKYUr2Bs/4zU6XLmq9HsgBURm7g5pAVfyn49DgUiNgY2d4lXRlYSiCif9YBGpQleewkcqddc7g==", - "dependencies": { - "get-nonce": "^1.0.0", - "invariant": "^2.2.4", - "tslib": "^2.0.0" - }, - "engines": { - "node": ">=10" - }, - "peerDependencies": { - "@types/react": "^16.8.0 || ^17.0.0 || ^18.0.0", - "react": "^16.8.0 || ^17.0.0 || ^18.0.0" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/read-cache": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", - "integrity": "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==", - "dependencies": { - "pify": "^2.3.0" - } - }, - "node_modules/readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "dependencies": { - "picomatch": "^2.2.1" - }, - "engines": { - "node": ">=8.10.0" - } - }, - "node_modules/regenerator-runtime": { - "version": "0.14.0", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.0.tgz", - "integrity": "sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA==" - }, - "node_modules/resolve": { - "version": "1.22.8", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", - "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", - "dependencies": { - "is-core-module": "^2.13.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "engines": { - "node": ">=4" - } - }, - "node_modules/reusify": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", - "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", - "engines": { - "iojs": ">=1.0.0", - "node": ">=0.10.0" - } - }, - "node_modules/run-parallel": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", - "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "dependencies": { - "queue-microtask": "^1.2.2" - } - }, - "node_modules/scheduler": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.0.tgz", - "integrity": "sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==", - "dependencies": { - "loose-envify": "^1.1.0" - } - }, - "node_modules/socket.io-client": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-4.6.1.tgz", - "integrity": "sha512-5UswCV6hpaRsNg5kkEHVcbBIXEYoVbMQaHJBXJCyEQ+CiFPV1NIOY0XOFWG4XR4GZcB8Kn6AsRs/9cy9TbqVMQ==", - "dependencies": { - "@socket.io/component-emitter": "~3.1.0", - "debug": "~4.3.2", - "engine.io-client": "~6.4.0", - "socket.io-parser": "~4.2.1" - }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/socket.io-parser": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.2.4.tgz", - "integrity": "sha512-/GbIKmo8ioc+NIWIhwdecY0ge+qVBSMdgxGygevmdHj24bsfgtCmcUUcQ5ZzcylGFHsN3k4HB4Cgkl96KVnuew==", - "dependencies": { - "@socket.io/component-emitter": "~3.1.0", - "debug": "~4.3.1" - }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/source-map-js": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", - "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/streamsearch": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/streamsearch/-/streamsearch-1.1.0.tgz", - "integrity": "sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==", - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/styled-jsx": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/styled-jsx/-/styled-jsx-5.1.1.tgz", - "integrity": "sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw==", - "dependencies": { - "client-only": "0.0.1" - }, - "engines": { - "node": ">= 12.0.0" - }, - "peerDependencies": { - "react": ">= 16.8.0 || 17.x.x || ^18.0.0-0" - }, - "peerDependenciesMeta": { - "@babel/core": { - "optional": true - }, - "babel-plugin-macros": { - "optional": true - } - } - }, - "node_modules/stylis": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.2.0.tgz", - "integrity": "sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw==" - }, - "node_modules/sucrase": { - "version": "3.34.0", - "resolved": "https://registry.npmjs.org/sucrase/-/sucrase-3.34.0.tgz", - "integrity": "sha512-70/LQEZ07TEcxiU2dz51FKaE6hCTWC6vr7FOk3Gr0U60C3shtAN+H+BFr9XlYe5xqf3RA8nrc+VIwzCfnxuXJw==", - "dependencies": { - "@jridgewell/gen-mapping": "^0.3.2", - "commander": "^4.0.0", - "glob": "7.1.6", - "lines-and-columns": "^1.1.6", - "mz": "^2.7.0", - "pirates": "^4.0.1", - "ts-interface-checker": "^0.1.9" - }, - "bin": { - "sucrase": "bin/sucrase", - "sucrase-node": "bin/sucrase-node" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/tailwindcss": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.3.2.tgz", - "integrity": "sha512-9jPkMiIBXvPc2KywkraqsUfbfj+dHDb+JPWtSJa9MLFdrPyazI7q6WX2sUrm7R9eVR7qqv3Pas7EvQFzxKnI6w==", - "dependencies": { - "@alloc/quick-lru": "^5.2.0", - "arg": "^5.0.2", - "chokidar": "^3.5.3", - "didyoumean": "^1.2.2", - "dlv": "^1.1.3", - "fast-glob": "^3.2.12", - "glob-parent": "^6.0.2", - "is-glob": "^4.0.3", - "jiti": "^1.18.2", - "lilconfig": "^2.1.0", - "micromatch": "^4.0.5", - "normalize-path": "^3.0.0", - "object-hash": "^3.0.0", - "picocolors": "^1.0.0", - "postcss": "^8.4.23", - "postcss-import": "^15.1.0", - "postcss-js": "^4.0.1", - "postcss-load-config": "^4.0.1", - "postcss-nested": "^6.0.1", - "postcss-selector-parser": "^6.0.11", - "postcss-value-parser": "^4.2.0", - "resolve": "^1.22.2", - "sucrase": "^3.32.0" - }, - "bin": { - "tailwind": "lib/cli.js", - "tailwindcss": "lib/cli.js" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/tailwindcss/node_modules/glob-parent": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", - "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", - "dependencies": { - "is-glob": "^4.0.3" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/thenify": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.1.tgz", - "integrity": "sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==", - "dependencies": { - "any-promise": "^1.0.0" - } - }, - "node_modules/thenify-all": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz", - "integrity": "sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==", - "dependencies": { - "thenify": ">= 3.1.0 < 4" - }, - "engines": { - "node": ">=0.8" - } - }, - "node_modules/tiny-invariant": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/tiny-invariant/-/tiny-invariant-1.3.1.tgz", - "integrity": "sha512-AD5ih2NlSssTCwsMznbvwMZpJ1cbhkGd2uueNxzv2jDlEeZdU04JQfRnggJQ8DrcVBGjAsCKwFBbDlVNtEMlzw==" - }, - "node_modules/to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", - "engines": { - "node": ">=4" - } - }, - "node_modules/to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/toggle-selection": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/toggle-selection/-/toggle-selection-1.0.6.tgz", - "integrity": "sha512-BiZS+C1OS8g/q2RRbJmy59xpyghNBqrr6k5L/uKBGRsTfxmu3ffiRnd8mlGPUVayg8pvfi5urfnu8TU7DVOkLQ==" - }, - "node_modules/ts-interface-checker": { - "version": "0.1.13", - "resolved": "https://registry.npmjs.org/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz", - "integrity": "sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==" - }, - "node_modules/tslib": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", - "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==" - }, - "node_modules/universal-cookie": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/universal-cookie/-/universal-cookie-4.0.4.tgz", - "integrity": "sha512-lbRVHoOMtItjWbM7TwDLdl8wug7izB0tq3/YVKhT/ahB4VDvWMyvnADfnJI8y6fSvsjh51Ix7lTGC6Tn4rMPhw==", - "dependencies": { - "@types/cookie": "^0.3.3", - "cookie": "^0.4.0" - } - }, - "node_modules/update-browserslist-db": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", - "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "dependencies": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" - }, - "bin": { - "update-browserslist-db": "cli.js" - }, - "peerDependencies": { - "browserslist": ">= 4.21.0" - } - }, - "node_modules/use-callback-ref": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/use-callback-ref/-/use-callback-ref-1.3.0.tgz", - "integrity": "sha512-3FT9PRuRdbB9HfXhEq35u4oZkvpJ5kuYbpqhCfmiZyReuRgpnhDlbr2ZEnnuS0RrJAPn6l23xjFg9kpDM+Ms7w==", - "dependencies": { - "tslib": "^2.0.0" - }, - "engines": { - "node": ">=10" - }, - "peerDependencies": { - "@types/react": "^16.8.0 || ^17.0.0 || ^18.0.0", - "react": "^16.8.0 || ^17.0.0 || ^18.0.0" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/use-sidecar": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/use-sidecar/-/use-sidecar-1.1.2.tgz", - "integrity": "sha512-epTbsLuzZ7lPClpz2TyryBfztm7m+28DlEv2ZCQ3MDr5ssiwyOwGH/e5F9CkfWjJ1t4clvI58yF822/GUkjjhw==", - "dependencies": { - "detect-node-es": "^1.1.0", - "tslib": "^2.0.0" - }, - "engines": { - "node": ">=10" - }, - "peerDependencies": { - "@types/react": "^16.9.0 || ^17.0.0 || ^18.0.0", - "react": "^16.8.0 || ^17.0.0 || ^18.0.0" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" - }, - "node_modules/watchpack": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", - "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", - "dependencies": { - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.1.2" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" - }, - "node_modules/ws": { - "version": "8.11.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.11.0.tgz", - "integrity": "sha512-HPG3wQd9sNQoT9xHyNCXoDUa+Xw/VevmY9FoHyQ+g+rrMn4j6FB4np7Z0OhdTgjx6MgQLK7jwSy1YecU1+4Asg==", - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": "^5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - }, - "node_modules/xmlhttprequest-ssl": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/xmlhttprequest-ssl/-/xmlhttprequest-ssl-2.0.0.tgz", - "integrity": "sha512-QKxVRxiRACQcVuQEYFsI1hhkrMlrXHPegbbd1yn9UHOmRxY+si12nQYzri3vbzt8VdTTRviqcKxcyllFas5z2A==", - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/yaml": { - "version": "2.3.4", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.3.4.tgz", - "integrity": "sha512-8aAvwVUSHpfEqTQ4w/KMlf3HcRdt50E5ODIQJBw1fQ5RL34xabzxtUlzTXVqc4rkZsPbvrXKWnABCD7kWSmocA==", - "engines": { - "node": ">= 14" - } - } - } -} diff --git a/.web/package.json b/.web/package.json deleted file mode 100644 index 630e27d..0000000 --- a/.web/package.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "name": "reflex", - "scripts": { - "dev": "next dev", - "export": "next build && next export -o _static", - "export-sitemap": "next build && next-sitemap && next export -o _static", - "prod": "next start" - }, - "dependencies": { - "@chakra-ui/icons": "^2.0.19", - "@chakra-ui/react": "^2.6.1", - "@chakra-ui/system": "^2.5.7", - "@emotion/react": "^11.11.0", - "@emotion/styled": "^11.11.0", - "axios": "1.4.0", - "focus-visible": "5.2.0", - "framer-motion": "^10.16.4", - "json5": "2.2.3", - "next": "13.5.4", - "next-sitemap": "4.1.8", - "next-themes": "0.2.0", - "react": "18.2.0", - "react-dom": "18.2.0", - "react-dropzone": "^14.2.3", - "socket.io-client": "4.6.1", - "tailwindcss": "^3.3.2", - "universal-cookie": "4.0.4" - }, - "devDependencies": { - "autoprefixer": "10.4.14", - "postcss": "8.4.24" - } -} diff --git a/.web/pages/404.js b/.web/pages/404.js deleted file mode 100644 index f76066b..0000000 --- a/.web/pages/404.js +++ /dev/null @@ -1,88 +0,0 @@ -import { Fragment, useContext, useEffect, useRef, useState } from "react" -import { useRouter } from "next/router" -import { Event, getAllLocalStorageItems, getRefValue, getRefValues, isTrue, preventDefault, refs, spreadArraysOrObjects, uploadFiles, useEventLoop } from "/utils/state" -import { ColorModeContext, EventLoopContext, initialEvents, StateContext } from "/utils/context.js" -import "focus-visible/dist/focus-visible" -import { Modal, ModalBody, ModalContent, ModalHeader, ModalOverlay, Text } from "@chakra-ui/react" -import { getEventURL } from "/utils/state.js" -import { useClientSideRouting } from "/utils/client_side_routing" -import Error from "next/error" -import NextHead from "next/head" - - - -export default function Component() { - const state = useContext(StateContext) - const router = useRouter() - const [ colorMode, toggleColorMode ] = useContext(ColorModeContext) - const focusRef = useRef(); - - // Main event loop. - const [addEvents, connectError] = useContext(EventLoopContext) - - // Set focus to the specified element. - useEffect(() => { - if (focusRef.current) { - focusRef.current.focus(); - } - }) - - // Route after the initial page hydration. - useEffect(() => { - const change_complete = () => addEvents(initialEvents()) - router.events.on('routeChangeComplete', change_complete) - return () => { - router.events.off('routeChangeComplete', change_complete) - } - }, [router]) - - const routeNotFound = useClientSideRouting() - - return ( - - - {isTrue(connectError !== null) ? ( - - - - - - {`Connection Error`} - - - - {`Cannot connect to server: `} - {(connectError !== null) ? connectError.message : ''} - {`. Check if server is reachable at `} - {getEventURL().href} - - - - - - -) : ( - -)} - - - {isTrue(routeNotFound) ? ( - - - -) : ( - - - -)} - - - - {`404 - Not Found`} - - - - - - ) -} diff --git a/.web/pages/_app.js b/.web/pages/_app.js deleted file mode 100644 index 9b1155c..0000000 --- a/.web/pages/_app.js +++ /dev/null @@ -1,46 +0,0 @@ -import { ChakraProvider, extendTheme } from "@chakra-ui/react" -import theme from "/utils/theme.js" -import { css, Global } from "@emotion/react" -import ChakraColorModeProvider from "/components/reflex/chakra_color_mode_provider.js" - - -import { EventLoopProvider } from "/utils/context.js"; -import { ThemeProvider } from 'next-themes' - - -import '/styles/styles.css' - -const GlobalStyles = css` - /* Hide the blue border around Chakra components. */ - .js-focus-visible :focus:not([data-focus-visible-added]) { - outline: none; - box-shadow: none; - } -`; - - -function AppWrap({children}) { - - - return ( - - - - {children} - - - ) -} - -export default function MyApp({ Component, pageProps }) { - return ( - - - - - - - - ); -} - diff --git a/.web/pages/_document.js b/.web/pages/_document.js deleted file mode 100644 index b164f71..0000000 --- a/.web/pages/_document.js +++ /dev/null @@ -1,15 +0,0 @@ -import { Head, Html, Main, NextScript } from "next/document" - - - -export default function Document() { - return ( - - - -
- - - - ) -} diff --git a/.web/pages/about.js b/.web/pages/about.js deleted file mode 100644 index 27a2260..0000000 --- a/.web/pages/about.js +++ /dev/null @@ -1,146 +0,0 @@ -import { Fragment, useContext, useEffect, useRef, useState } from "react" -import { useRouter } from "next/router" -import { Event, getAllLocalStorageItems, getRefValue, getRefValues, isTrue, preventDefault, refs, spreadArraysOrObjects, uploadFiles, useEventLoop } from "/utils/state" -import { ColorModeContext, EventLoopContext, initialEvents, StateContext } from "/utils/context.js" -import "focus-visible/dist/focus-visible" -import { Box, Button, Code, Heading, HStack, Image, Link, Modal, ModalBody, ModalContent, ModalHeader, ModalOverlay, Spacer, Text, VStack } from "@chakra-ui/react" -import { getEventURL } from "/utils/state.js" -import NextLink from "next/link" -import { MoonIcon } from "@chakra-ui/icons" -import NextHead from "next/head" - - - -export default function Component() { - const state = useContext(StateContext) - const router = useRouter() - const [ colorMode, toggleColorMode ] = useContext(ColorModeContext) - const focusRef = useRef(); - - // Main event loop. - const [addEvents, connectError] = useContext(EventLoopContext) - - // Set focus to the specified element. - useEffect(() => { - if (focusRef.current) { - focusRef.current.focus(); - } - }) - - // Route after the initial page hydration. - useEffect(() => { - const change_complete = () => addEvents(initialEvents()) - router.events.on('routeChangeComplete', change_complete) - return () => { - router.events.off('routeChangeComplete', change_complete) - } - }, [router]) - - - return ( - - - {isTrue(connectError !== null) ? ( - - - - - - {`Connection Error`} - - - - {`Cannot connect to server: `} - {(connectError !== null) ? connectError.message : ''} - {`. Check if server is reachable at `} - {getEventURL().href} - - - - - - -) : ( - -)} - - - - - - - - - - - - - - {`Strona główna`} - - - - - - - - {`O autorach`} - - - - - - - - {`Kontakt`} - - - - - - - - {`Zdjęcie`} - - - - - - - - - - - - - {`O autorach`} - - - {`Welcome to Reflex!`} - - - {`You can edit this page in `} - - {`{your_app}/pages/about.py`} - - - - - - - - - - - - {`O autorach`} - - - - - - - ) -} diff --git a/.web/pages/dashboard.js b/.web/pages/dashboard.js deleted file mode 100644 index 294ca2a..0000000 --- a/.web/pages/dashboard.js +++ /dev/null @@ -1,146 +0,0 @@ -import { Fragment, useContext, useEffect, useRef, useState } from "react" -import { useRouter } from "next/router" -import { Event, getAllLocalStorageItems, getRefValue, getRefValues, isTrue, preventDefault, refs, spreadArraysOrObjects, uploadFiles, useEventLoop } from "/utils/state" -import { ColorModeContext, EventLoopContext, initialEvents, StateContext } from "/utils/context.js" -import "focus-visible/dist/focus-visible" -import { Box, Button, Code, Heading, HStack, Image, Link, Modal, ModalBody, ModalContent, ModalHeader, ModalOverlay, Spacer, Text, VStack } from "@chakra-ui/react" -import { getEventURL } from "/utils/state.js" -import NextLink from "next/link" -import { MoonIcon } from "@chakra-ui/icons" -import NextHead from "next/head" - - - -export default function Component() { - const state = useContext(StateContext) - const router = useRouter() - const [ colorMode, toggleColorMode ] = useContext(ColorModeContext) - const focusRef = useRef(); - - // Main event loop. - const [addEvents, connectError] = useContext(EventLoopContext) - - // Set focus to the specified element. - useEffect(() => { - if (focusRef.current) { - focusRef.current.focus(); - } - }) - - // Route after the initial page hydration. - useEffect(() => { - const change_complete = () => addEvents(initialEvents()) - router.events.on('routeChangeComplete', change_complete) - return () => { - router.events.off('routeChangeComplete', change_complete) - } - }, [router]) - - - return ( - - - {isTrue(connectError !== null) ? ( - - - - - - {`Connection Error`} - - - - {`Cannot connect to server: `} - {(connectError !== null) ? connectError.message : ''} - {`. Check if server is reachable at `} - {getEventURL().href} - - - - - - -) : ( - -)} - - - - - - - - - - - - - - {`Strona główna`} - - - - - - - - {`O autorach`} - - - - - - - - {`Kontakt`} - - - - - - - - {`Zdjęcie`} - - - - - - - - - - - - - {`Dashboard`} - - - {`Welcome to Reflex!`} - - - {`You can edit this page in `} - - {`{your_app}/pages/dashboard.py`} - - - - - - - - - - - - {`Kontakt`} - - - - - - - ) -} diff --git a/.web/pages/index.js b/.web/pages/index.js deleted file mode 100644 index ae7449b..0000000 --- a/.web/pages/index.js +++ /dev/null @@ -1,258 +0,0 @@ -import { Fragment, useContext, useEffect, useRef, useState } from "react" -import { useRouter } from "next/router" -import { Event, getAllLocalStorageItems, getRefValue, getRefValues, isTrue, preventDefault, refs, spreadArraysOrObjects, uploadFiles, useEventLoop } from "/utils/state" -import { ColorModeContext, EventLoopContext, initialEvents, StateContext } from "/utils/context.js" -import "focus-visible/dist/focus-visible" -import { Box, Button, Flex, Heading, HStack, Image, Link, List, ListItem, Modal, ModalBody, ModalContent, ModalHeader, ModalOverlay, Spacer, Text, VStack, Wrap } from "@chakra-ui/react" -import { getEventURL } from "/utils/state.js" -import NextLink from "next/link" -import { MoonIcon } from "@chakra-ui/icons" -import NextHead from "next/head" - - - -export default function Component() { - const state = useContext(StateContext) - const router = useRouter() - const [ colorMode, toggleColorMode ] = useContext(ColorModeContext) - const focusRef = useRef(); - - // Main event loop. - const [addEvents, connectError] = useContext(EventLoopContext) - - // Set focus to the specified element. - useEffect(() => { - if (focusRef.current) { - focusRef.current.focus(); - } - }) - - // Route after the initial page hydration. - useEffect(() => { - const change_complete = () => addEvents(initialEvents()) - router.events.on('routeChangeComplete', change_complete) - return () => { - router.events.off('routeChangeComplete', change_complete) - } - }, [router]) - - - return ( - - - {isTrue(connectError !== null) ? ( - - - - - - {`Connection Error`} - - - - {`Cannot connect to server: `} - {(connectError !== null) ? connectError.message : ''} - {`. Check if server is reachable at `} - {getEventURL().href} - - - - - - -) : ( - -)} - - - - - - - - - - - - - - {`Strona główna`} - - - - - - - - {`O autorach`} - - - - - - - - {`Kontakt`} - - - - - - - - {`Zdjęcie`} - - - - - - - - - - - - - {`Witaj w BlurMe!`} - - - - - - {`Aplikacja do anonimizacji zdjęć: usunięcie wybranych informacji identyfikujących ze zdjęć z wydarzeń i miejsc publicznych nigdy nie było tak proste!`} - - - - - - - - - - {` `} - - - - {`Jak to działa?`} - - - - - {`1. Wgraj Zdjęcie `} - - - {`Prosty proces rozpoczyna się od dodania zdjęcia, które chcesz anonimizować.`} - - - - - {`2. Zaznacz Twarz do Ochrony `} - - - {`Oznacz twarz, którą chcesz zachować.`} - - - - - {`3. Anonimizuj Resztę `} - - - {`Naciśnij przycisk, a Blurme automatycznie zastosuje efekt rozmycia do wszystkich obszarów poza zaznaczoną twarzą.`} - - - - - {`4. Pobierz i Podziel Się `} - - - {`Gotowe! Pobierz anonimizowane zdjęcie i dziel się nim bez obaw o prywatność.`} - - - - - - - {`Dlaczego Blurme?`} - - - - - {`Prywatność`} - - - {`Nasza aplikacja zapewnia pełną ochronę prywatności, eliminując ryzyko identyfikacji osób niezwiązanych z anonimizacją.`} - - - - - {`Elastyczność`} - - - {`Wybierz, która twarz na zdjęciu ma pozostać niezmieniona, a my zadbamy o resztę.`} - - - - - {`Prosta obsługa`} - - - {`Intuicyjny interfejs użytkownika sprawia, że korzystanie z Blurme jest łatwe dla każdego.`} - - - - - - - {`Do Czego?`} - - - - - - {`Ochrona Tożsamości`} - - - {`Idealne do usuwania twarzy nieznajomych lub przypadkowych przechodniów z tła.`} - - - - - {`Zachowanie Prywatności`} - - - {`Przydatne w sytuacjach, gdy chcesz udostępnić zdjęcia publicznie, ale z zachowaniem prywatności pewnych osób.`} - - - - - {`Kreatywność`} - - - {`Wyraź swoją kreatywność, zachowując jednocześnie istotne elementy na zdjęciach.`} - - - - - - - - - - - - - - - {`Strona główna`} - - - - - - - ) -} diff --git a/.web/pages/settings.js b/.web/pages/settings.js deleted file mode 100644 index 9242054..0000000 --- a/.web/pages/settings.js +++ /dev/null @@ -1,152 +0,0 @@ -import { Fragment, useContext, useEffect, useRef, useState } from "react" -import { useRouter } from "next/router" -import { Event, getAllLocalStorageItems, getRefValue, getRefValues, isTrue, preventDefault, refs, set_val, spreadArraysOrObjects, uploadFiles, useEventLoop } from "/utils/state" -import { ColorModeContext, EventLoopContext, initialEvents, StateContext } from "/utils/context.js" -import "focus-visible/dist/focus-visible" -import { Box, Button, Heading, HStack, Image, Input, Link, Modal, ModalBody, ModalContent, ModalHeader, ModalOverlay, Spacer, Text, VStack } from "@chakra-ui/react" -import { getEventURL } from "/utils/state.js" -import NextLink from "next/link" -import ReactDropzone from "react-dropzone" -import { MoonIcon } from "@chakra-ui/icons" -import NextHead from "next/head" - - - -export default function Component() { - const state = useContext(StateContext) - const router = useRouter() - const [ colorMode, toggleColorMode ] = useContext(ColorModeContext) - const focusRef = useRef(); - - // Main event loop. - const [addEvents, connectError] = useContext(EventLoopContext) - - // Set focus to the specified element. - useEffect(() => { - if (focusRef.current) { - focusRef.current.focus(); - } - }) - - // Route after the initial page hydration. - useEffect(() => { - const change_complete = () => addEvents(initialEvents()) - router.events.on('routeChangeComplete', change_complete) - return () => { - router.events.off('routeChangeComplete', change_complete) - } - }, [router]) - - const [files, setFiles] = useState([]); - - return ( - - - {isTrue(connectError !== null) ? ( - - - - - - {`Connection Error`} - - - - {`Cannot connect to server: `} - {(connectError !== null) ? connectError.message : ''} - {`. Check if server is reachable at `} - {getEventURL().href} - - - - - - -) : ( - -)} - - - - - - - - - - - - - - {`Strona główna`} - - - - - - - - {`O autorach`} - - - - - - - - {`Kontakt`} - - - - - - - - {`Zdjęcie`} - - - - - - - - - - - - - {`BlurMe`} - - - {`Dodaj zdjęcie, które chcesz zanonimizować`} - - setFiles((files) => e)}> - {({ getRootProps, getInputProps }) => ( - - - - {`Drag and drop files here or click to select files`} - - - )} - - - - - - - - - - - {`Zdjęcie`} - - - - - - - ) -} diff --git a/.web/postcss.config.js b/.web/postcss.config.js deleted file mode 100644 index 33ad091..0000000 --- a/.web/postcss.config.js +++ /dev/null @@ -1,6 +0,0 @@ -module.exports = { - plugins: { - tailwindcss: {}, - autoprefixer: {}, - }, -} diff --git a/.web/public/about-icon.png b/.web/public/about-icon.png deleted file mode 100644 index be1d9d4..0000000 Binary files a/.web/public/about-icon.png and /dev/null differ diff --git a/.web/public/contact-icon.png b/.web/public/contact-icon.png deleted file mode 100644 index dbaf919..0000000 Binary files a/.web/public/contact-icon.png and /dev/null differ diff --git a/.web/public/favicon.ico b/.web/public/favicon.ico deleted file mode 100644 index e5357af..0000000 Binary files a/.web/public/favicon.ico and /dev/null differ diff --git a/.web/public/github.svg b/.web/public/github.svg deleted file mode 100644 index 61c9d79..0000000 --- a/.web/public/github.svg +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - - diff --git a/.web/public/home-icon.png b/.web/public/home-icon.png deleted file mode 100644 index a1d6ebc..0000000 Binary files a/.web/public/home-icon.png and /dev/null differ diff --git a/.web/public/icon.png b/.web/public/icon.png deleted file mode 100644 index b3cd718..0000000 Binary files a/.web/public/icon.png and /dev/null differ diff --git a/.web/public/image-icon.png b/.web/public/image-icon.png deleted file mode 100644 index 584a56d..0000000 Binary files a/.web/public/image-icon.png and /dev/null differ diff --git a/.web/public/logo.png b/.web/public/logo.png deleted file mode 100644 index 805e0ae..0000000 Binary files a/.web/public/logo.png and /dev/null differ diff --git a/.web/public/obraz1.png b/.web/public/obraz1.png deleted file mode 100644 index be1f149..0000000 Binary files a/.web/public/obraz1.png and /dev/null differ diff --git a/.web/public/paneleft.svg b/.web/public/paneleft.svg deleted file mode 100644 index ac9c504..0000000 --- a/.web/public/paneleft.svg +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - - - - - - diff --git a/.web/reflex.json b/.web/reflex.json deleted file mode 100644 index bb232c6..0000000 --- a/.web/reflex.json +++ /dev/null @@ -1 +0,0 @@ -{"version": "0.3.2", "project_hash": 1621688126486964296617671581898320309} \ No newline at end of file diff --git a/.web/styles/code/prism.js b/.web/styles/code/prism.js deleted file mode 100644 index 5568cf2..0000000 --- a/.web/styles/code/prism.js +++ /dev/null @@ -1,1015 +0,0 @@ -export const light = { - 'code[class*="language-"]': { - background: "hsl(230, 1%, 98%)", - color: "hsl(230, 8%, 24%)", - fontFamily: - '"Fira Code", "Fira Mono", Menlo, Consolas, "DejaVu Sans Mono", monospace', - direction: "ltr", - textAlign: "left", - whiteSpace: "pre", - wordSpacing: "normal", - wordBreak: "normal", - lineHeight: "1.5", - MozTabSize: "2", - OTabSize: "2", - tabSize: "2", - WebkitHyphens: "none", - MozHyphens: "none", - msHyphens: "none", - hyphens: "none", - }, - 'pre[class*="language-"]': { - background: "hsl(230, 1%, 98%)", - color: "hsl(230, 8%, 24%)", - fontFamily: - '"Fira Code", "Fira Mono", Menlo, Consolas, "DejaVu Sans Mono", monospace', - direction: "ltr", - textAlign: "left", - whiteSpace: "pre", - wordSpacing: "normal", - wordBreak: "normal", - lineHeight: "1.5", - MozTabSize: "2", - OTabSize: "2", - tabSize: "2", - WebkitHyphens: "none", - MozHyphens: "none", - msHyphens: "none", - hyphens: "none", - padding: "1em", - margin: "0.5em 0", - overflow: "auto", - borderRadius: "0.3em", - }, - 'code[class*="language-"]::-moz-selection': { - background: "hsl(230, 1%, 90%)", - color: "inherit", - }, - 'code[class*="language-"] *::-moz-selection': { - background: "hsl(230, 1%, 90%)", - color: "inherit", - }, - 'pre[class*="language-"] *::-moz-selection': { - background: "hsl(230, 1%, 90%)", - color: "inherit", - }, - 'code[class*="language-"]::selection': { - background: "hsl(230, 1%, 90%)", - color: "inherit", - }, - 'code[class*="language-"] *::selection': { - background: "hsl(230, 1%, 90%)", - color: "inherit", - }, - 'pre[class*="language-"] *::selection': { - background: "hsl(230, 1%, 90%)", - color: "inherit", - }, - ':not(pre) > code[class*="language-"]': { - padding: "0.2em 0.3em", - borderRadius: "0.3em", - whiteSpace: "normal", - }, - comment: { - color: "hsl(230, 4%, 64%)", - fontStyle: "italic", - }, - prolog: { - color: "hsl(230, 4%, 64%)", - }, - cdata: { - color: "hsl(230, 4%, 64%)", - }, - doctype: { - color: "hsl(230, 8%, 24%)", - }, - punctuation: { - color: "hsl(230, 8%, 24%)", - }, - entity: { - color: "hsl(230, 8%, 24%)", - cursor: "help", - }, - "attr-name": { - color: "hsl(35, 99%, 36%)", - }, - "class-name": { - color: "hsl(35, 99%, 36%)", - }, - boolean: { - color: "hsl(35, 99%, 36%)", - }, - constant: { - color: "hsl(35, 99%, 36%)", - }, - number: { - color: "hsl(35, 99%, 36%)", - }, - atrule: { - color: "hsl(35, 99%, 36%)", - }, - keyword: { - color: "hsl(301, 63%, 40%)", - }, - property: { - color: "hsl(5, 74%, 59%)", - }, - tag: { - color: "hsl(5, 74%, 59%)", - }, - symbol: { - color: "hsl(5, 74%, 59%)", - }, - deleted: { - color: "hsl(5, 74%, 59%)", - }, - important: { - color: "hsl(5, 74%, 59%)", - }, - selector: { - color: "hsl(119, 34%, 47%)", - }, - string: { - color: "hsl(119, 34%, 47%)", - }, - char: { - color: "hsl(119, 34%, 47%)", - }, - builtin: { - color: "hsl(119, 34%, 47%)", - }, - inserted: { - color: "hsl(119, 34%, 47%)", - }, - regex: { - color: "hsl(119, 34%, 47%)", - }, - "attr-value": { - color: "hsl(119, 34%, 47%)", - }, - "attr-value > .token.punctuation": { - color: "hsl(119, 34%, 47%)", - }, - variable: { - color: "hsl(221, 87%, 60%)", - }, - operator: { - color: "hsl(221, 87%, 60%)", - }, - function: { - color: "hsl(221, 87%, 60%)", - }, - url: { - color: "hsl(198, 99%, 37%)", - }, - "attr-value > .token.punctuation.attr-equals": { - color: "hsl(230, 8%, 24%)", - }, - "special-attr > .token.attr-value > .token.value.css": { - color: "hsl(230, 8%, 24%)", - }, - ".language-css .token.selector": { - color: "hsl(5, 74%, 59%)", - }, - ".language-css .token.property": { - color: "hsl(230, 8%, 24%)", - }, - ".language-css .token.function": { - color: "hsl(198, 99%, 37%)", - }, - ".language-css .token.url > .token.function": { - color: "hsl(198, 99%, 37%)", - }, - ".language-css .token.url > .token.string.url": { - color: "hsl(119, 34%, 47%)", - }, - ".language-css .token.important": { - color: "hsl(301, 63%, 40%)", - }, - ".language-css .token.atrule .token.rule": { - color: "hsl(301, 63%, 40%)", - }, - ".language-javascript .token.operator": { - color: "hsl(301, 63%, 40%)", - }, - ".language-javascript .token.template-string > .token.interpolation > .token.interpolation-punctuation.punctuation": - { - color: "hsl(344, 84%, 43%)", - }, - ".language-json .token.operator": { - color: "hsl(230, 8%, 24%)", - }, - ".language-json .token.null.keyword": { - color: "hsl(35, 99%, 36%)", - }, - ".language-markdown .token.url": { - color: "hsl(230, 8%, 24%)", - }, - ".language-markdown .token.url > .token.operator": { - color: "hsl(230, 8%, 24%)", - }, - ".language-markdown .token.url-reference.url > .token.string": { - color: "hsl(230, 8%, 24%)", - }, - ".language-markdown .token.url > .token.content": { - color: "hsl(221, 87%, 60%)", - }, - ".language-markdown .token.url > .token.url": { - color: "hsl(198, 99%, 37%)", - }, - ".language-markdown .token.url-reference.url": { - color: "hsl(198, 99%, 37%)", - }, - ".language-markdown .token.blockquote.punctuation": { - color: "hsl(230, 4%, 64%)", - fontStyle: "italic", - }, - ".language-markdown .token.hr.punctuation": { - color: "hsl(230, 4%, 64%)", - fontStyle: "italic", - }, - ".language-markdown .token.code-snippet": { - color: "hsl(119, 34%, 47%)", - }, - ".language-markdown .token.bold .token.content": { - color: "hsl(35, 99%, 36%)", - }, - ".language-markdown .token.italic .token.content": { - color: "hsl(301, 63%, 40%)", - }, - ".language-markdown .token.strike .token.content": { - color: "hsl(5, 74%, 59%)", - }, - ".language-markdown .token.strike .token.punctuation": { - color: "hsl(5, 74%, 59%)", - }, - ".language-markdown .token.list.punctuation": { - color: "hsl(5, 74%, 59%)", - }, - ".language-markdown .token.title.important > .token.punctuation": { - color: "hsl(5, 74%, 59%)", - }, - bold: { - fontWeight: "bold", - }, - italic: { - fontStyle: "italic", - }, - namespace: { - Opacity: "0.8", - }, - "token.tab:not(:empty):before": { - color: "hsla(230, 8%, 24%, 0.2)", - }, - "token.cr:before": { - color: "hsla(230, 8%, 24%, 0.2)", - }, - "token.lf:before": { - color: "hsla(230, 8%, 24%, 0.2)", - }, - "token.space:before": { - color: "hsla(230, 8%, 24%, 0.2)", - }, - "div.code-toolbar > .toolbar.toolbar > .toolbar-item": { - marginRight: "0.4em", - }, - "div.code-toolbar > .toolbar.toolbar > .toolbar-item > button": { - background: "hsl(230, 1%, 90%)", - color: "hsl(230, 6%, 44%)", - padding: "0.1em 0.4em", - borderRadius: "0.3em", - }, - "div.code-toolbar > .toolbar.toolbar > .toolbar-item > a": { - background: "hsl(230, 1%, 90%)", - color: "hsl(230, 6%, 44%)", - padding: "0.1em 0.4em", - borderRadius: "0.3em", - }, - "div.code-toolbar > .toolbar.toolbar > .toolbar-item > span": { - background: "hsl(230, 1%, 90%)", - color: "hsl(230, 6%, 44%)", - padding: "0.1em 0.4em", - borderRadius: "0.3em", - }, - "div.code-toolbar > .toolbar.toolbar > .toolbar-item > button:hover": { - background: "hsl(230, 1%, 78%)", - color: "hsl(230, 8%, 24%)", - }, - "div.code-toolbar > .toolbar.toolbar > .toolbar-item > button:focus": { - background: "hsl(230, 1%, 78%)", - color: "hsl(230, 8%, 24%)", - }, - "div.code-toolbar > .toolbar.toolbar > .toolbar-item > a:hover": { - background: "hsl(230, 1%, 78%)", - color: "hsl(230, 8%, 24%)", - }, - "div.code-toolbar > .toolbar.toolbar > .toolbar-item > a:focus": { - background: "hsl(230, 1%, 78%)", - color: "hsl(230, 8%, 24%)", - }, - "div.code-toolbar > .toolbar.toolbar > .toolbar-item > span:hover": { - background: "hsl(230, 1%, 78%)", - color: "hsl(230, 8%, 24%)", - }, - "div.code-toolbar > .toolbar.toolbar > .toolbar-item > span:focus": { - background: "hsl(230, 1%, 78%)", - color: "hsl(230, 8%, 24%)", - }, - ".line-highlight.line-highlight": { - background: "hsla(230, 8%, 24%, 0.05)", - }, - ".line-highlight.line-highlight:before": { - background: "hsl(230, 1%, 90%)", - color: "hsl(230, 8%, 24%)", - padding: "0.1em 0.6em", - borderRadius: "0.3em", - boxShadow: "0 2px 0 0 rgba(0, 0, 0, 0.2)", - }, - ".line-highlight.line-highlight[data-end]:after": { - background: "hsl(230, 1%, 90%)", - color: "hsl(230, 8%, 24%)", - padding: "0.1em 0.6em", - borderRadius: "0.3em", - boxShadow: "0 2px 0 0 rgba(0, 0, 0, 0.2)", - }, - "pre[id].linkable-line-numbers.linkable-line-numbers span.line-numbers-rows > span:hover:before": - { - backgroundColor: "hsla(230, 8%, 24%, 0.05)", - }, - ".line-numbers.line-numbers .line-numbers-rows": { - borderRightColor: "hsla(230, 8%, 24%, 0.2)", - }, - ".command-line .command-line-prompt": { - borderRightColor: "hsla(230, 8%, 24%, 0.2)", - }, - ".line-numbers .line-numbers-rows > span:before": { - color: "hsl(230, 1%, 62%)", - }, - ".command-line .command-line-prompt > span:before": { - color: "hsl(230, 1%, 62%)", - }, - ".rainbow-braces .token.token.punctuation.brace-level-1": { - color: "hsl(5, 74%, 59%)", - }, - ".rainbow-braces .token.token.punctuation.brace-level-5": { - color: "hsl(5, 74%, 59%)", - }, - ".rainbow-braces .token.token.punctuation.brace-level-9": { - color: "hsl(5, 74%, 59%)", - }, - ".rainbow-braces .token.token.punctuation.brace-level-2": { - color: "hsl(119, 34%, 47%)", - }, - ".rainbow-braces .token.token.punctuation.brace-level-6": { - color: "hsl(119, 34%, 47%)", - }, - ".rainbow-braces .token.token.punctuation.brace-level-10": { - color: "hsl(119, 34%, 47%)", - }, - ".rainbow-braces .token.token.punctuation.brace-level-3": { - color: "hsl(221, 87%, 60%)", - }, - ".rainbow-braces .token.token.punctuation.brace-level-7": { - color: "hsl(221, 87%, 60%)", - }, - ".rainbow-braces .token.token.punctuation.brace-level-11": { - color: "hsl(221, 87%, 60%)", - }, - ".rainbow-braces .token.token.punctuation.brace-level-4": { - color: "hsl(301, 63%, 40%)", - }, - ".rainbow-braces .token.token.punctuation.brace-level-8": { - color: "hsl(301, 63%, 40%)", - }, - ".rainbow-braces .token.token.punctuation.brace-level-12": { - color: "hsl(301, 63%, 40%)", - }, - "pre.diff-highlight > code .token.token.deleted:not(.prefix)": { - backgroundColor: "hsla(353, 100%, 66%, 0.15)", - }, - "pre > code.diff-highlight .token.token.deleted:not(.prefix)": { - backgroundColor: "hsla(353, 100%, 66%, 0.15)", - }, - "pre.diff-highlight > code .token.token.deleted:not(.prefix)::-moz-selection": - { - backgroundColor: "hsla(353, 95%, 66%, 0.25)", - }, - "pre.diff-highlight > code .token.token.deleted:not(.prefix) *::-moz-selection": - { - backgroundColor: "hsla(353, 95%, 66%, 0.25)", - }, - "pre > code.diff-highlight .token.token.deleted:not(.prefix)::-moz-selection": - { - backgroundColor: "hsla(353, 95%, 66%, 0.25)", - }, - "pre > code.diff-highlight .token.token.deleted:not(.prefix) *::-moz-selection": - { - backgroundColor: "hsla(353, 95%, 66%, 0.25)", - }, - "pre.diff-highlight > code .token.token.deleted:not(.prefix)::selection": { - backgroundColor: "hsla(353, 95%, 66%, 0.25)", - }, - "pre.diff-highlight > code .token.token.deleted:not(.prefix) *::selection": { - backgroundColor: "hsla(353, 95%, 66%, 0.25)", - }, - "pre > code.diff-highlight .token.token.deleted:not(.prefix)::selection": { - backgroundColor: "hsla(353, 95%, 66%, 0.25)", - }, - "pre > code.diff-highlight .token.token.deleted:not(.prefix) *::selection": { - backgroundColor: "hsla(353, 95%, 66%, 0.25)", - }, - "pre.diff-highlight > code .token.token.inserted:not(.prefix)": { - backgroundColor: "hsla(137, 100%, 55%, 0.15)", - }, - "pre > code.diff-highlight .token.token.inserted:not(.prefix)": { - backgroundColor: "hsla(137, 100%, 55%, 0.15)", - }, - "pre.diff-highlight > code .token.token.inserted:not(.prefix)::-moz-selection": - { - backgroundColor: "hsla(135, 73%, 55%, 0.25)", - }, - "pre.diff-highlight > code .token.token.inserted:not(.prefix) *::-moz-selection": - { - backgroundColor: "hsla(135, 73%, 55%, 0.25)", - }, - "pre > code.diff-highlight .token.token.inserted:not(.prefix)::-moz-selection": - { - backgroundColor: "hsla(135, 73%, 55%, 0.25)", - }, - "pre > code.diff-highlight .token.token.inserted:not(.prefix) *::-moz-selection": - { - backgroundColor: "hsla(135, 73%, 55%, 0.25)", - }, - "pre.diff-highlight > code .token.token.inserted:not(.prefix)::selection": { - backgroundColor: "hsla(135, 73%, 55%, 0.25)", - }, - "pre.diff-highlight > code .token.token.inserted:not(.prefix) *::selection": { - backgroundColor: "hsla(135, 73%, 55%, 0.25)", - }, - "pre > code.diff-highlight .token.token.inserted:not(.prefix)::selection": { - backgroundColor: "hsla(135, 73%, 55%, 0.25)", - }, - "pre > code.diff-highlight .token.token.inserted:not(.prefix) *::selection": { - backgroundColor: "hsla(135, 73%, 55%, 0.25)", - }, - ".prism-previewer.prism-previewer:before": { - borderColor: "hsl(0, 0, 95%)", - }, - ".prism-previewer-gradient.prism-previewer-gradient div": { - borderColor: "hsl(0, 0, 95%)", - borderRadius: "0.3em", - }, - ".prism-previewer-color.prism-previewer-color:before": { - borderRadius: "0.3em", - }, - ".prism-previewer-easing.prism-previewer-easing:before": { - borderRadius: "0.3em", - }, - ".prism-previewer.prism-previewer:after": { - borderTopColor: "hsl(0, 0, 95%)", - }, - ".prism-previewer-flipped.prism-previewer-flipped.after": { - borderBottomColor: "hsl(0, 0, 95%)", - }, - ".prism-previewer-angle.prism-previewer-angle:before": { - background: "hsl(0, 0%, 100%)", - }, - ".prism-previewer-time.prism-previewer-time:before": { - background: "hsl(0, 0%, 100%)", - }, - ".prism-previewer-easing.prism-previewer-easing": { - background: "hsl(0, 0%, 100%)", - }, - ".prism-previewer-angle.prism-previewer-angle circle": { - stroke: "hsl(230, 8%, 24%)", - strokeOpacity: "1", - }, - ".prism-previewer-time.prism-previewer-time circle": { - stroke: "hsl(230, 8%, 24%)", - strokeOpacity: "1", - }, - ".prism-previewer-easing.prism-previewer-easing circle": { - stroke: "hsl(230, 8%, 24%)", - fill: "transparent", - }, - ".prism-previewer-easing.prism-previewer-easing path": { - stroke: "hsl(230, 8%, 24%)", - }, - ".prism-previewer-easing.prism-previewer-easing line": { - stroke: "hsl(230, 8%, 24%)", - }, -}; - -export const dark = { - 'code[class*="language-"]': { - background: "hsl(220, 13%, 18%)", - color: "hsl(220, 14%, 71%)", - textShadow: "0 1px rgba(0, 0, 0, 0.3)", - fontFamily: - '"Fira Code", "Fira Mono", Menlo, Consolas, "DejaVu Sans Mono", monospace', - direction: "ltr", - textAlign: "left", - whiteSpace: "pre", - wordSpacing: "normal", - wordBreak: "normal", - lineHeight: "1.5", - MozTabSize: "2", - OTabSize: "2", - tabSize: "2", - WebkitHyphens: "none", - MozHyphens: "none", - msHyphens: "none", - hyphens: "none", - }, - 'pre[class*="language-"]': { - background: "hsl(220, 13%, 18%)", - color: "hsl(220, 14%, 71%)", - textShadow: "0 1px rgba(0, 0, 0, 0.3)", - fontFamily: - '"Fira Code", "Fira Mono", Menlo, Consolas, "DejaVu Sans Mono", monospace', - direction: "ltr", - textAlign: "left", - whiteSpace: "pre", - wordSpacing: "normal", - wordBreak: "normal", - lineHeight: "1.5", - MozTabSize: "2", - OTabSize: "2", - tabSize: "2", - WebkitHyphens: "none", - MozHyphens: "none", - msHyphens: "none", - hyphens: "none", - padding: "1em", - margin: "0.5em 0", - overflow: "auto", - borderRadius: "0.3em", - }, - 'code[class*="language-"]::-moz-selection': { - background: "hsl(220, 13%, 28%)", - color: "inherit", - textShadow: "none", - }, - 'code[class*="language-"] *::-moz-selection': { - background: "hsl(220, 13%, 28%)", - color: "inherit", - textShadow: "none", - }, - 'pre[class*="language-"] *::-moz-selection': { - background: "hsl(220, 13%, 28%)", - color: "inherit", - textShadow: "none", - }, - 'code[class*="language-"]::selection': { - background: "hsl(220, 13%, 28%)", - color: "inherit", - textShadow: "none", - }, - 'code[class*="language-"] *::selection': { - background: "hsl(220, 13%, 28%)", - color: "inherit", - textShadow: "none", - }, - 'pre[class*="language-"] *::selection': { - background: "hsl(220, 13%, 28%)", - color: "inherit", - textShadow: "none", - }, - ':not(pre) > code[class*="language-"]': { - padding: "0.2em 0.3em", - borderRadius: "0.3em", - whiteSpace: "normal", - }, - comment: { - color: "hsl(220, 10%, 40%)", - fontStyle: "italic", - }, - prolog: { - color: "hsl(220, 10%, 40%)", - }, - cdata: { - color: "hsl(220, 10%, 40%)", - }, - doctype: { - color: "hsl(220, 14%, 71%)", - }, - punctuation: { - color: "hsl(220, 14%, 71%)", - }, - entity: { - color: "hsl(220, 14%, 71%)", - cursor: "help", - }, - "attr-name": { - color: "hsl(29, 54%, 61%)", - }, - "class-name": { - color: "hsl(29, 54%, 61%)", - }, - boolean: { - color: "hsl(29, 54%, 61%)", - }, - constant: { - color: "hsl(29, 54%, 61%)", - }, - number: { - color: "hsl(29, 54%, 61%)", - }, - atrule: { - color: "hsl(29, 54%, 61%)", - }, - keyword: { - color: "hsl(286, 60%, 67%)", - }, - property: { - color: "hsl(355, 65%, 65%)", - }, - tag: { - color: "hsl(355, 65%, 65%)", - }, - symbol: { - color: "hsl(355, 65%, 65%)", - }, - deleted: { - color: "hsl(355, 65%, 65%)", - }, - important: { - color: "hsl(355, 65%, 65%)", - }, - selector: { - color: "hsl(95, 38%, 62%)", - }, - string: { - color: "hsl(95, 38%, 62%)", - }, - char: { - color: "hsl(95, 38%, 62%)", - }, - builtin: { - color: "hsl(95, 38%, 62%)", - }, - inserted: { - color: "hsl(95, 38%, 62%)", - }, - regex: { - color: "hsl(95, 38%, 62%)", - }, - "attr-value": { - color: "hsl(95, 38%, 62%)", - }, - "attr-value > .token.punctuation": { - color: "hsl(95, 38%, 62%)", - }, - variable: { - color: "hsl(207, 82%, 66%)", - }, - operator: { - color: "hsl(207, 82%, 66%)", - }, - function: { - color: "hsl(207, 82%, 66%)", - }, - url: { - color: "hsl(187, 47%, 55%)", - }, - "attr-value > .token.punctuation.attr-equals": { - color: "hsl(220, 14%, 71%)", - }, - "special-attr > .token.attr-value > .token.value.css": { - color: "hsl(220, 14%, 71%)", - }, - ".language-css .token.selector": { - color: "hsl(355, 65%, 65%)", - }, - ".language-css .token.property": { - color: "hsl(220, 14%, 71%)", - }, - ".language-css .token.function": { - color: "hsl(187, 47%, 55%)", - }, - ".language-css .token.url > .token.function": { - color: "hsl(187, 47%, 55%)", - }, - ".language-css .token.url > .token.string.url": { - color: "hsl(95, 38%, 62%)", - }, - ".language-css .token.important": { - color: "hsl(286, 60%, 67%)", - }, - ".language-css .token.atrule .token.rule": { - color: "hsl(286, 60%, 67%)", - }, - ".language-javascript .token.operator": { - color: "hsl(286, 60%, 67%)", - }, - ".language-javascript .token.template-string > .token.interpolation > .token.interpolation-punctuation.punctuation": - { - color: "hsl(5, 48%, 51%)", - }, - ".language-json .token.operator": { - color: "hsl(220, 14%, 71%)", - }, - ".language-json .token.null.keyword": { - color: "hsl(29, 54%, 61%)", - }, - ".language-markdown .token.url": { - color: "hsl(220, 14%, 71%)", - }, - ".language-markdown .token.url > .token.operator": { - color: "hsl(220, 14%, 71%)", - }, - ".language-markdown .token.url-reference.url > .token.string": { - color: "hsl(220, 14%, 71%)", - }, - ".language-markdown .token.url > .token.content": { - color: "hsl(207, 82%, 66%)", - }, - ".language-markdown .token.url > .token.url": { - color: "hsl(187, 47%, 55%)", - }, - ".language-markdown .token.url-reference.url": { - color: "hsl(187, 47%, 55%)", - }, - ".language-markdown .token.blockquote.punctuation": { - color: "hsl(220, 10%, 40%)", - fontStyle: "italic", - }, - ".language-markdown .token.hr.punctuation": { - color: "hsl(220, 10%, 40%)", - fontStyle: "italic", - }, - ".language-markdown .token.code-snippet": { - color: "hsl(95, 38%, 62%)", - }, - ".language-markdown .token.bold .token.content": { - color: "hsl(29, 54%, 61%)", - }, - ".language-markdown .token.italic .token.content": { - color: "hsl(286, 60%, 67%)", - }, - ".language-markdown .token.strike .token.content": { - color: "hsl(355, 65%, 65%)", - }, - ".language-markdown .token.strike .token.punctuation": { - color: "hsl(355, 65%, 65%)", - }, - ".language-markdown .token.list.punctuation": { - color: "hsl(355, 65%, 65%)", - }, - ".language-markdown .token.title.important > .token.punctuation": { - color: "hsl(355, 65%, 65%)", - }, - bold: { - fontWeight: "bold", - }, - italic: { - fontStyle: "italic", - }, - namespace: { - Opacity: "0.8", - }, - "token.tab:not(:empty):before": { - color: "hsla(220, 14%, 71%, 0.15)", - textShadow: "none", - }, - "token.cr:before": { - color: "hsla(220, 14%, 71%, 0.15)", - textShadow: "none", - }, - "token.lf:before": { - color: "hsla(220, 14%, 71%, 0.15)", - textShadow: "none", - }, - "token.space:before": { - color: "hsla(220, 14%, 71%, 0.15)", - textShadow: "none", - }, - "div.code-toolbar > .toolbar.toolbar > .toolbar-item": { - marginRight: "0.4em", - }, - "div.code-toolbar > .toolbar.toolbar > .toolbar-item > button": { - background: "hsl(220, 13%, 26%)", - color: "hsl(220, 9%, 55%)", - padding: "0.1em 0.4em", - borderRadius: "0.3em", - }, - "div.code-toolbar > .toolbar.toolbar > .toolbar-item > a": { - background: "hsl(220, 13%, 26%)", - color: "hsl(220, 9%, 55%)", - padding: "0.1em 0.4em", - borderRadius: "0.3em", - }, - "div.code-toolbar > .toolbar.toolbar > .toolbar-item > span": { - background: "hsl(220, 13%, 26%)", - color: "hsl(220, 9%, 55%)", - padding: "0.1em 0.4em", - borderRadius: "0.3em", - }, - "div.code-toolbar > .toolbar.toolbar > .toolbar-item > button:hover": { - background: "hsl(220, 13%, 28%)", - color: "hsl(220, 14%, 71%)", - }, - "div.code-toolbar > .toolbar.toolbar > .toolbar-item > button:focus": { - background: "hsl(220, 13%, 28%)", - color: "hsl(220, 14%, 71%)", - }, - "div.code-toolbar > .toolbar.toolbar > .toolbar-item > a:hover": { - background: "hsl(220, 13%, 28%)", - color: "hsl(220, 14%, 71%)", - }, - "div.code-toolbar > .toolbar.toolbar > .toolbar-item > a:focus": { - background: "hsl(220, 13%, 28%)", - color: "hsl(220, 14%, 71%)", - }, - "div.code-toolbar > .toolbar.toolbar > .toolbar-item > span:hover": { - background: "hsl(220, 13%, 28%)", - color: "hsl(220, 14%, 71%)", - }, - "div.code-toolbar > .toolbar.toolbar > .toolbar-item > span:focus": { - background: "hsl(220, 13%, 28%)", - color: "hsl(220, 14%, 71%)", - }, - ".line-highlight.line-highlight": { - background: "hsla(220, 100%, 80%, 0.04)", - }, - ".line-highlight.line-highlight:before": { - background: "hsl(220, 13%, 26%)", - color: "hsl(220, 14%, 71%)", - padding: "0.1em 0.6em", - borderRadius: "0.3em", - boxShadow: "0 2px 0 0 rgba(0, 0, 0, 0.2)", - }, - ".line-highlight.line-highlight[data-end]:after": { - background: "hsl(220, 13%, 26%)", - color: "hsl(220, 14%, 71%)", - padding: "0.1em 0.6em", - borderRadius: "0.3em", - boxShadow: "0 2px 0 0 rgba(0, 0, 0, 0.2)", - }, - "pre[id].linkable-line-numbers.linkable-line-numbers span.line-numbers-rows > span:hover:before": - { - backgroundColor: "hsla(220, 100%, 80%, 0.04)", - }, - ".line-numbers.line-numbers .line-numbers-rows": { - borderRightColor: "hsla(220, 14%, 71%, 0.15)", - }, - ".command-line .command-line-prompt": { - borderRightColor: "hsla(220, 14%, 71%, 0.15)", - }, - ".line-numbers .line-numbers-rows > span:before": { - color: "hsl(220, 14%, 45%)", - }, - ".command-line .command-line-prompt > span:before": { - color: "hsl(220, 14%, 45%)", - }, - ".rainbow-braces .token.token.punctuation.brace-level-1": { - color: "hsl(355, 65%, 65%)", - }, - ".rainbow-braces .token.token.punctuation.brace-level-5": { - color: "hsl(355, 65%, 65%)", - }, - ".rainbow-braces .token.token.punctuation.brace-level-9": { - color: "hsl(355, 65%, 65%)", - }, - ".rainbow-braces .token.token.punctuation.brace-level-2": { - color: "hsl(95, 38%, 62%)", - }, - ".rainbow-braces .token.token.punctuation.brace-level-6": { - color: "hsl(95, 38%, 62%)", - }, - ".rainbow-braces .token.token.punctuation.brace-level-10": { - color: "hsl(95, 38%, 62%)", - }, - ".rainbow-braces .token.token.punctuation.brace-level-3": { - color: "hsl(207, 82%, 66%)", - }, - ".rainbow-braces .token.token.punctuation.brace-level-7": { - color: "hsl(207, 82%, 66%)", - }, - ".rainbow-braces .token.token.punctuation.brace-level-11": { - color: "hsl(207, 82%, 66%)", - }, - ".rainbow-braces .token.token.punctuation.brace-level-4": { - color: "hsl(286, 60%, 67%)", - }, - ".rainbow-braces .token.token.punctuation.brace-level-8": { - color: "hsl(286, 60%, 67%)", - }, - ".rainbow-braces .token.token.punctuation.brace-level-12": { - color: "hsl(286, 60%, 67%)", - }, - "pre.diff-highlight > code .token.token.deleted:not(.prefix)": { - backgroundColor: "hsla(353, 100%, 66%, 0.15)", - }, - "pre > code.diff-highlight .token.token.deleted:not(.prefix)": { - backgroundColor: "hsla(353, 100%, 66%, 0.15)", - }, - "pre.diff-highlight > code .token.token.deleted:not(.prefix)::-moz-selection": - { - backgroundColor: "hsla(353, 95%, 66%, 0.25)", - }, - "pre.diff-highlight > code .token.token.deleted:not(.prefix) *::-moz-selection": - { - backgroundColor: "hsla(353, 95%, 66%, 0.25)", - }, - "pre > code.diff-highlight .token.token.deleted:not(.prefix)::-moz-selection": - { - backgroundColor: "hsla(353, 95%, 66%, 0.25)", - }, - "pre > code.diff-highlight .token.token.deleted:not(.prefix) *::-moz-selection": - { - backgroundColor: "hsla(353, 95%, 66%, 0.25)", - }, - "pre.diff-highlight > code .token.token.deleted:not(.prefix)::selection": { - backgroundColor: "hsla(353, 95%, 66%, 0.25)", - }, - "pre.diff-highlight > code .token.token.deleted:not(.prefix) *::selection": { - backgroundColor: "hsla(353, 95%, 66%, 0.25)", - }, - "pre > code.diff-highlight .token.token.deleted:not(.prefix)::selection": { - backgroundColor: "hsla(353, 95%, 66%, 0.25)", - }, - "pre > code.diff-highlight .token.token.deleted:not(.prefix) *::selection": { - backgroundColor: "hsla(353, 95%, 66%, 0.25)", - }, - "pre.diff-highlight > code .token.token.inserted:not(.prefix)": { - backgroundColor: "hsla(137, 100%, 55%, 0.15)", - }, - "pre > code.diff-highlight .token.token.inserted:not(.prefix)": { - backgroundColor: "hsla(137, 100%, 55%, 0.15)", - }, - "pre.diff-highlight > code .token.token.inserted:not(.prefix)::-moz-selection": - { - backgroundColor: "hsla(135, 73%, 55%, 0.25)", - }, - "pre.diff-highlight > code .token.token.inserted:not(.prefix) *::-moz-selection": - { - backgroundColor: "hsla(135, 73%, 55%, 0.25)", - }, - "pre > code.diff-highlight .token.token.inserted:not(.prefix)::-moz-selection": - { - backgroundColor: "hsla(135, 73%, 55%, 0.25)", - }, - "pre > code.diff-highlight .token.token.inserted:not(.prefix) *::-moz-selection": - { - backgroundColor: "hsla(135, 73%, 55%, 0.25)", - }, - "pre.diff-highlight > code .token.token.inserted:not(.prefix)::selection": { - backgroundColor: "hsla(135, 73%, 55%, 0.25)", - }, - "pre.diff-highlight > code .token.token.inserted:not(.prefix) *::selection": { - backgroundColor: "hsla(135, 73%, 55%, 0.25)", - }, - "pre > code.diff-highlight .token.token.inserted:not(.prefix)::selection": { - backgroundColor: "hsla(135, 73%, 55%, 0.25)", - }, - "pre > code.diff-highlight .token.token.inserted:not(.prefix) *::selection": { - backgroundColor: "hsla(135, 73%, 55%, 0.25)", - }, - ".prism-previewer.prism-previewer:before": { - borderColor: "hsl(224, 13%, 17%)", - }, - ".prism-previewer-gradient.prism-previewer-gradient div": { - borderColor: "hsl(224, 13%, 17%)", - borderRadius: "0.3em", - }, - ".prism-previewer-color.prism-previewer-color:before": { - borderRadius: "0.3em", - }, - ".prism-previewer-easing.prism-previewer-easing:before": { - borderRadius: "0.3em", - }, - ".prism-previewer.prism-previewer:after": { - borderTopColor: "hsl(224, 13%, 17%)", - }, - ".prism-previewer-flipped.prism-previewer-flipped.after": { - borderBottomColor: "hsl(224, 13%, 17%)", - }, - ".prism-previewer-angle.prism-previewer-angle:before": { - background: "hsl(219, 13%, 22%)", - }, - ".prism-previewer-time.prism-previewer-time:before": { - background: "hsl(219, 13%, 22%)", - }, - ".prism-previewer-easing.prism-previewer-easing": { - background: "hsl(219, 13%, 22%)", - }, - ".prism-previewer-angle.prism-previewer-angle circle": { - stroke: "hsl(220, 14%, 71%)", - strokeOpacity: "1", - }, - ".prism-previewer-time.prism-previewer-time circle": { - stroke: "hsl(220, 14%, 71%)", - strokeOpacity: "1", - }, - ".prism-previewer-easing.prism-previewer-easing circle": { - stroke: "hsl(220, 14%, 71%)", - fill: "transparent", - }, - ".prism-previewer-easing.prism-previewer-easing path": { - stroke: "hsl(220, 14%, 71%)", - }, - ".prism-previewer-easing.prism-previewer-easing line": { - stroke: "hsl(220, 14%, 71%)", - }, -}; diff --git a/.web/styles/styles.css b/.web/styles/styles.css deleted file mode 100644 index de434e0..0000000 --- a/.web/styles/styles.css +++ /dev/null @@ -1 +0,0 @@ -@import url('./tailwind.css'); diff --git a/.web/styles/tailwind.css b/.web/styles/tailwind.css deleted file mode 100644 index b5c61c9..0000000 --- a/.web/styles/tailwind.css +++ /dev/null @@ -1,3 +0,0 @@ -@tailwind base; -@tailwind components; -@tailwind utilities; diff --git a/.web/tailwind.config.js b/.web/tailwind.config.js deleted file mode 100644 index 918443e..0000000 --- a/.web/tailwind.config.js +++ /dev/null @@ -1,7 +0,0 @@ -/** @type {import('tailwindcss').Config} */ -module.exports = { - content: ["./pages/**/*.{js,ts,jsx,tsx}"], - theme: null, - plugins: [ - ], -}; \ No newline at end of file diff --git a/.web/utils/client_side_routing.js b/.web/utils/client_side_routing.js deleted file mode 100644 index 75fb581..0000000 --- a/.web/utils/client_side_routing.js +++ /dev/null @@ -1,36 +0,0 @@ -import { useEffect, useRef, useState } from "react"; -import { useRouter } from "next/router"; - -/** - * React hook for use in /404 page to enable client-side routing. - * - * Uses the next/router to redirect to the provided URL when loading - * the 404 page (for example as a fallback in static hosting situations). - * - * @returns {boolean} routeNotFound - true if the current route is an actual 404 - */ -export const useClientSideRouting = () => { - const [routeNotFound, setRouteNotFound] = useState(false) - const didRedirect = useRef(false) - const router = useRouter() - useEffect(() => { - if ( - router.isReady && - !didRedirect.current // have not tried redirecting yet - ) { - didRedirect.current = true // never redirect twice to avoid "Hard Navigate" error - // attempt to redirect to the route in the browser address bar once - router.replace({ - pathname: window.location.pathname, - query: window.location.search.slice(1), - }) - .catch((e) => { - setRouteNotFound(true) // navigation failed, so this is a real 404 - }) - } - }, [router.isReady]); - - // Return the reactive bool, to avoid flashing 404 page until we know for sure - // the route is not found. - return routeNotFound -} \ No newline at end of file diff --git a/.web/utils/components.js b/.web/utils/components.js deleted file mode 100644 index 475a8e6..0000000 --- a/.web/utils/components.js +++ /dev/null @@ -1,5 +0,0 @@ -import { memo } from "react" -import { E, isTrue } from "/utils/state" - - - diff --git a/.web/utils/context.js b/.web/utils/context.js deleted file mode 100644 index ea24c9d..0000000 --- a/.web/utils/context.js +++ /dev/null @@ -1,30 +0,0 @@ -import { createContext, useState } from "react" -import { Event, hydrateClientStorage, useEventLoop } from "/utils/state.js" - -export const initialState = {"is_hydrated": false, "router": {"session": {"client_token": "", "client_ip": "", "session_id": ""}, "headers": {"host": "", "origin": "", "upgrade": "", "connection": "", "pragma": "", "cache_control": "", "user_agent": "", "sec_websocket_version": "", "sec_websocket_key": "", "sec_websocket_extensions": "", "accept_encoding": "", "accept_language": ""}, "page": {"host": "", "path": "", "raw_path": "", "full_path": "", "full_raw_path": "", "params": {}}}} - -export const ColorModeContext = createContext(null); -export const StateContext = createContext(null); -export const EventLoopContext = createContext(null); -export const clientStorage = {"cookies": {}, "local_storage": {}} - -export const initialEvents = () => [ - Event('state.hydrate', hydrateClientStorage(clientStorage)), -] - -export const isDevMode = true - -export function EventLoopProvider({ children }) { - const [state, addEvents, connectError] = useEventLoop( - initialState, - initialEvents, - clientStorage, - ) - return ( - - - {children} - - - ) -} \ No newline at end of file diff --git a/.web/utils/helpers/dataeditor.js b/.web/utils/helpers/dataeditor.js deleted file mode 100644 index 5861d60..0000000 --- a/.web/utils/helpers/dataeditor.js +++ /dev/null @@ -1,67 +0,0 @@ -import { GridCellKind } from "@glideapps/glide-data-grid" - -export function getDEColumn(columns, col) { - let c = columns[col]; - c.pos = col; - return c; -} - -export function getDERow(data, row) { - return data[row]; -} - -export function locateCell(row, column) { - if (Array.isArray(row)) { - return row[column.pos]; - } else { - return row[column.id]; - } -} - -export function formatCell(value, column) { - const editable = column.editable || true - switch (column.type) { - case "int": - case "float": - return { - kind: GridCellKind.Number, - data: value, - displayData: value + "", - readonly: !editable, - allowOverlay: editable, - } - case "datetime": - // value = moment format? - case "str": - return { - kind: GridCellKind.Text, - data: value, - displayData: value, - readonly: !editable, - allowOverlay: editable, - } - case "bool": - return { - kind: GridCellKind.Boolean, - data: value, - readonly: !editable, - } - default: - console.log("Warning: column.type is undefined for column.title=" + column.title) - return { - kind: GridCellKind.Text, - data: value, - displayData: column.type - } - }; -}; - -export function formatDataEditorCells(col, row, columns, data) { - if (row < data.length && col < columns.length) { - const column = getDEColumn(columns, col); - const rowData = getDERow(data, row); - const cellData = locateCell(rowData, column); - return formatCell(cellData, column); - } - return { kind: GridCellKind.Loading }; -} \ No newline at end of file diff --git a/.web/utils/state.js b/.web/utils/state.js deleted file mode 100644 index 2a41bc3..0000000 --- a/.web/utils/state.js +++ /dev/null @@ -1,589 +0,0 @@ -// State management for Reflex web apps. -import axios from "axios"; -import io from "socket.io-client"; -import JSON5 from "json5"; -import env from "env.json"; -import Cookies from "universal-cookie"; -import { useEffect, useReducer, useRef, useState } from "react"; -import Router, { useRouter } from "next/router"; -import { initialEvents } from "utils/context.js" - -// Endpoint URLs. -const EVENTURL = env.EVENT -const UPLOADURL = env.UPLOAD - -// Global variable to hold the token. -let token; - -// Key for the token in the session storage. -const TOKEN_KEY = "token"; - -// create cookie instance -const cookies = new Cookies(); - -// Dictionary holding component references. -export const refs = {}; - -// Flag ensures that only one event is processing on the backend concurrently. -let event_processing = false -// Array holding pending events to be processed. -const event_queue = []; - -/** - * Generate a UUID (Used for session tokens). - * Taken from: https://stackoverflow.com/questions/105034/how-do-i-create-a-guid-uuid - * @returns A UUID. - */ -const generateUUID = () => { - let d = new Date().getTime(), - d2 = (performance && performance.now && performance.now() * 1000) || 0; - return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, (c) => { - let r = Math.random() * 16; - if (d > 0) { - r = (d + r) % 16 | 0; - d = Math.floor(d / 16); - } else { - r = (d2 + r) % 16 | 0; - d2 = Math.floor(d2 / 16); - } - return (c == "x" ? r : (r & 0x7) | 0x8).toString(16); - }); -}; - -/** - * Get the token for the current session. - * @returns The token. - */ -export const getToken = () => { - if (token) { - return token; - } - if (window) { - if (!window.sessionStorage.getItem(TOKEN_KEY)) { - window.sessionStorage.setItem(TOKEN_KEY, generateUUID()); - } - token = window.sessionStorage.getItem(TOKEN_KEY); - } - return token; -}; - -/** - * Get the URL for the websocket connection - * @returns The websocket URL object. - */ -export const getEventURL = () => { - // Get backend URL object from the endpoint. - const endpoint = new URL(EVENTURL); - if (endpoint.hostname === "localhost") { - // If the backend URL references localhost, and the frontend is not on localhost, - // then use the frontend host. - const frontend_hostname = window.location.hostname; - if (frontend_hostname !== "localhost") { - endpoint.hostname = frontend_hostname; - } - } - return endpoint -} - -/** - * Apply a delta to the state. - * @param state The state to apply the delta to. - * @param delta The delta to apply. - */ -export const applyDelta = (state, delta) => { - const new_state = { ...state } - for (const substate in delta) { - let s = new_state; - const path = substate.split(".").slice(1); - while (path.length > 0) { - s = s[path.shift()]; - } - for (const key in delta[substate]) { - s[key] = delta[substate][key]; - } - } - return new_state -}; - - -/** - * Get all local storage items in a key-value object. - * @returns object of items in local storage. - */ -export const getAllLocalStorageItems = () => { - var localStorageItems = {}; - - for (var i = 0, len = localStorage.length; i < len; i++) { - var key = localStorage.key(i); - localStorageItems[key] = localStorage.getItem(key); - } - - return localStorageItems; -} - - -/** - * Handle frontend event or send the event to the backend via Websocket. - * @param event The event to send. - * @param socket The socket object to send the event on. - * - * @returns True if the event was sent, false if it was handled locally. - */ -export const applyEvent = async (event, socket) => { - // Handle special events - if (event.name == "_redirect") { - if (event.payload.external) - window.open(event.payload.path, "_blank"); - else - Router.push(event.payload.path); - return false; - } - - if (event.name == "_console") { - console.log(event.payload.message); - return false; - } - - if (event.name == "_remove_cookie") { - cookies.remove(event.payload.key, { ...event.payload.options }) - queueEvents(initialEvents(), socket) - return false; - } - - if (event.name == "_clear_local_storage") { - localStorage.clear(); - queueEvents(initialEvents(), socket) - return false; - } - - if (event.name == "_remove_local_storage") { - localStorage.removeItem(event.payload.key); - queueEvents(initialEvents(), socket) - return false; - } - - if (event.name == "_set_clipboard") { - const content = event.payload.content; - navigator.clipboard.writeText(content); - return false; - } - if (event.name == "_download") { - const a = document.createElement('a'); - a.hidden = true; - a.href = event.payload.url; - if (event.payload.filename) - a.download = event.payload.filename; - a.click(); - a.remove(); - return false; - } - - if (event.name == "_alert") { - alert(event.payload.message); - return false; - } - - if (event.name == "_set_focus") { - const ref = - event.payload.ref in refs ? refs[event.payload.ref] : event.payload.ref; - ref.current.focus(); - return false; - } - - if (event.name == "_set_value") { - const ref = - event.payload.ref in refs ? refs[event.payload.ref] : event.payload.ref; - ref.current.value = event.payload.value; - return false; - } - - if (event.name == "_call_script") { - try { - const eval_result = eval(event.payload.javascript_code); - if (event.payload.callback) { - if (!!eval_result && typeof eval_result.then === 'function') { - eval(event.payload.callback)(await eval_result) - } else { - eval(event.payload.callback)(eval_result) - } - } - } catch (e) { - console.log("_call_script", e); - } - return false; - } - - // Update token and router data (if missing). - event.token = getToken() - if (event.router_data === undefined || Object.keys(event.router_data).length === 0) { - event.router_data = (({ pathname, query, asPath }) => ({ pathname, query, asPath }))(Router) - } - - // Send the event to the server. - if (socket) { - socket.emit("event", JSON.stringify(event, (k, v) => v === undefined ? null : v)); - return true; - } - - return false; -}; - -/** - * Send an event to the server via REST. - * @param event The current event. - * @param state The state with the event queue. - * - * @returns Whether the event was sent. - */ -export const applyRestEvent = async (event) => { - let eventSent = false; - if (event.handler == "uploadFiles") { - eventSent = await uploadFiles(event.name, event.payload.files); - } - return eventSent; -}; - -/** - * Queue events to be processed and trigger processing of queue. - * @param events Array of events to queue. - * @param socket The socket object to send the event on. - */ -export const queueEvents = async (events, socket) => { - event_queue.push(...events) - await processEvent(socket.current) -} - -/** - * Process an event off the event queue. - * @param socket The socket object to send the event on. - */ -export const processEvent = async ( - socket -) => { - // Only proceed if the socket is up, otherwise we throw the event into the void - if (!socket) { - return; - } - - // Only proceed if we're not already processing an event. - if (event_queue.length === 0 || event_processing) { - return; - } - - // Set processing to true to block other events from being processed. - event_processing = true - - // Apply the next event in the queue. - const event = event_queue.shift(); - - let eventSent = false - // Process events with handlers via REST and all others via websockets. - if (event.handler) { - eventSent = await applyRestEvent(event); - } else { - eventSent = await applyEvent(event, socket); - } - // If no event was sent, set processing to false. - if (!eventSent) { - event_processing = false; - // recursively call processEvent to drain the queue, since there is - // no state update to trigger the useEffect event loop. - await processEvent(socket) - } -} - -/** - * Connect to a websocket and set the handlers. - * @param socket The socket object to connect. - * @param dispatch The function to queue state update - * @param transports The transports to use. - * @param setConnectError The function to update connection error value. - * @param client_storage The client storage object from context.js - */ -export const connect = async ( - socket, - dispatch, - transports, - setConnectError, - client_storage = {}, -) => { - // Get backend URL object from the endpoint. - const endpoint = getEventURL() - - // Create the socket. - socket.current = io(endpoint.href, { - path: endpoint["pathname"], - transports: transports, - autoUnref: false, - }); - - // Once the socket is open, hydrate the page. - socket.current.on("connect", () => { - setConnectError(null) - }); - - socket.current.on('connect_error', (error) => { - setConnectError(error) - }); - - // On each received message, queue the updates and events. - socket.current.on("event", message => { - const update = JSON5.parse(message) - dispatch(update.delta) - applyClientStorageDelta(client_storage, update.delta) - event_processing = !update.final - if (update.events) { - queueEvents(update.events, socket) - } - }); -}; - -/** - * Upload files to the server. - * - * @param state The state to apply the delta to. - * @param handler The handler to use. - * - * @returns Whether the files were uploaded. - */ -export const uploadFiles = async (handler, files) => { - // return if there's no file to upload - if (files.length == 0) { - return false; - } - - const headers = { - "Content-Type": files[0].type, - }; - const formdata = new FormData(); - - // Add the token and handler to the file name. - for (let i = 0; i < files.length; i++) { - formdata.append( - "files", - files[i], - getToken() + ":" + handler + ":" + files[i].name - ); - } - - // Send the file to the server. - await axios.post(UPLOADURL, formdata, headers) - .then(() => { return true; }) - .catch( - error => { - if (error.response) { - // The request was made and the server responded with a status code - // that falls out of the range of 2xx - console.log(error.response.data); - } else if (error.request) { - // The request was made but no response was received - // `error.request` is an instance of XMLHttpRequest in the browser and an instance of - // http.ClientRequest in node.js - console.log(error.request); - } else { - // Something happened in setting up the request that triggered an Error - console.log(error.message); - } - return false; - } - ) -}; - -/** - * Create an event object. - * @param name The name of the event. - * @param payload The payload of the event. - * @param handler The client handler to process event. - * @returns The event object. - */ -export const Event = (name, payload = {}, handler = null) => { - return { name, payload, handler }; -}; - -/** - * Package client-side storage values as payload to send to the - * backend with the hydrate event - * @param client_storage The client storage object from context.js - * @returns payload dict of client storage values - */ -export const hydrateClientStorage = (client_storage) => { - const client_storage_values = { - "cookies": {}, - "local_storage": {} - } - if (client_storage.cookies) { - for (const state_key in client_storage.cookies) { - const cookie_options = client_storage.cookies[state_key] - const cookie_name = cookie_options.name || state_key - const cookie_value = cookies.get(cookie_name) - if (cookie_value !== undefined) { - client_storage_values.cookies[state_key] = cookies.get(cookie_name) - } - } - } - if (client_storage.local_storage && (typeof window !== 'undefined')) { - for (const state_key in client_storage.local_storage) { - const options = client_storage.local_storage[state_key] - const local_storage_value = localStorage.getItem(options.name || state_key) - if (local_storage_value !== null) { - client_storage_values.local_storage[state_key] = local_storage_value - } - } - } - if (client_storage.cookies || client_storage.local_storage) { - return client_storage_values - } - return {} -}; - -/** - * Update client storage values based on backend state delta. - * @param client_storage The client storage object from context.js - * @param delta The state update from the backend - */ -const applyClientStorageDelta = (client_storage, delta) => { - // find the main state and check for is_hydrated - const unqualified_states = Object.keys(delta).filter((key) => key.split(".").length === 1); - if (unqualified_states.length === 1) { - const main_state = delta[unqualified_states[0]] - if (main_state.is_hydrated !== undefined && !main_state.is_hydrated) { - // skip if the state is not hydrated yet, since all client storage - // values are sent in the hydrate event - return; - } - } - // Save known client storage values to cookies and localStorage. - for (const substate in delta) { - for (const key in delta[substate]) { - const state_key = `${substate}.${key}` - if (client_storage.cookies && state_key in client_storage.cookies) { - const cookie_options = { ...client_storage.cookies[state_key] } - const cookie_name = cookie_options.name || state_key - delete cookie_options.name // name is not a valid cookie option - cookies.set(cookie_name, delta[substate][key], cookie_options); - } else if (client_storage.local_storage && state_key in client_storage.local_storage && (typeof window !== 'undefined')) { - const options = client_storage.local_storage[state_key] - localStorage.setItem(options.name || state_key, delta[substate][key]); - } - } - } -} - -/** - * Establish websocket event loop for a NextJS page. - * @param initial_state The initial app state. - * @param initial_events Function that returns the initial app events. - * @param client_storage The client storage object from context.js - * - * @returns [state, addEvents, connectError] - - * state is a reactive dict, - * addEvents is used to queue an event, and - * connectError is a reactive js error from the websocket connection (or null if connected). - */ -export const useEventLoop = ( - initial_state = {}, - initial_events = () => [], - client_storage = {}, -) => { - const socket = useRef(null) - const router = useRouter() - const [state, dispatch] = useReducer(applyDelta, initial_state) - const [connectError, setConnectError] = useState(null) - - // Function to add new events to the event queue. - const addEvents = (events, _e, event_actions) => { - if (event_actions?.preventDefault && _e?.preventDefault) { - _e.preventDefault(); - } - if (event_actions?.stopPropagation && _e?.stopPropagation) { - _e.stopPropagation(); - } - queueEvents(events, socket) - } - - const sentHydrate = useRef(false); // Avoid double-hydrate due to React strict-mode - // initial state hydrate - useEffect(() => { - if (router.isReady && !sentHydrate.current) { - addEvents(initial_events()) - sentHydrate.current = true - } - }, [router.isReady]) - - // Main event loop. - useEffect(() => { - // Skip if the router is not ready. - if (!router.isReady) { - return; - } - // only use websockets if state is present - if (Object.keys(state).length > 0) { - // Initialize the websocket connection. - if (!socket.current) { - connect(socket, dispatch, ['websocket', 'polling'], setConnectError, client_storage) - } - (async () => { - // Process all outstanding events. - while (event_queue.length > 0 && !event_processing) { - await processEvent(socket.current) - } - })() - } - }) - return [state, addEvents, connectError] -} - -/*** - * Check if a value is truthy in python. - * @param val The value to check. - * @returns True if the value is truthy, false otherwise. - */ -export const isTrue = (val) => { - return Array.isArray(val) ? val.length > 0 : !!val; -}; - -/** - * Get the value from a ref. - * @param ref The ref to get the value from. - * @returns The value. - */ -export const getRefValue = (ref) => { - if (!ref || !ref.current) { - return; - } - if (ref.current.type == "checkbox") { - return ref.current.checked; - } else { - //querySelector(":checked") is needed to get value from radio_group - return ref.current.value || (ref.current.querySelector(':checked') && ref.current.querySelector(':checked').value); - } -} - -/** - * Get the values from a ref array. - * @param refs The refs to get the values from. - * @returns The values array. - */ -export const getRefValues = (refs) => { - if (!refs) { - return; - } - // getAttribute is used by RangeSlider because it doesn't assign value - return refs.map((ref) => ref.current.value || ref.current.getAttribute("aria-valuenow")); -} - -/** -* Spread two arrays or two objects. -* @param first The first array or object. -* @param second The second array or object. -* @returns The final merged array or object. -*/ -export const spreadArraysOrObjects = (first, second) => { - if (Array.isArray(first) && Array.isArray(second)) { - return [...first, ...second]; - } else if (typeof first === 'object' && typeof second === 'object') { - return { ...first, ...second }; - } else { - throw new Error('Both parameters must be either arrays or objects.'); - } -} diff --git a/.web/utils/theme.js b/.web/utils/theme.js deleted file mode 100644 index 5958f4c..0000000 --- a/.web/utils/theme.js +++ /dev/null @@ -1 +0,0 @@ -export default {"styles": {"global": {"body": {}}}} \ No newline at end of file