diff --git a/.prettierrc b/.prettierrc index 19916822..487f5a3f 100644 --- a/.prettierrc +++ b/.prettierrc @@ -3,5 +3,10 @@ "printWidth": 100, "tabWidth": 2, "jsxSingleQuote": false, - "singleQuote": false + "singleQuote": false, + + "plugins": ["@pandabox/prettier-plugin"], + "pandaFirstProps": ["as", "className", "layerStyle", "textStyle"], + "pandaStylePropsFirst": true, + "pandaSortOtherProps": true } diff --git a/client/.gitignore b/client/.gitignore index a547bf36..fa147c3e 100644 --- a/client/.gitignore +++ b/client/.gitignore @@ -22,3 +22,7 @@ dist-ssr *.njsproj *.sln *.sw? + +## Panda +styled-system +styled-system-studio \ No newline at end of file diff --git a/client/eslint.config.js b/client/eslint.config.js index 3b19b9eb..3f8b4d44 100644 --- a/client/eslint.config.js +++ b/client/eslint.config.js @@ -4,6 +4,8 @@ import jsxA11y from "eslint-plugin-jsx-a11y"; import { fileURLToPath } from "url"; import { dirname, resolve } from "path"; import rootConfig from "../eslint.config.js"; +import panda from "@pandacss/eslint-plugin"; +import pandabox from "@pandabox/prettier-plugin"; const __filename = fileURLToPath(import.meta.url); const __dirname = dirname(__filename); @@ -14,10 +16,13 @@ export default [ { files: ["src/**/*.{ts,tsx}"], + ignores: ["styled-system"], plugins: { react, "react-hooks": reactHooks, "jsx-a11y": jsxA11y, + "@pandacss": panda, + "@pandabox": pandabox, }, languageOptions: { parserOptions: { @@ -70,17 +75,54 @@ export default [ "jsx-a11y/click-events-have-key-events": "warn", "jsx-a11y/no-static-element-interactions": "warn", "jsx-a11y/label-has-associated-control": "warn", + + // import 순서 + "import/order": [ + "error", + { + groups: [ + "builtin", + "external", + "internal", + "parent", + "sibling", + "index", + "object", + "type", + ], + pathGroups: [ + { + pattern: "@/**", + group: "internal", + }, + ], + alphabetize: { + order: "asc", + }, + }, + ], + + ...panda.configs.recommended.rules, + "@pandacss/no-config-function-in-source": "off", + "@pandacss/prefer-longhand-properties": "error", }, settings: { "import/resolver": { typescript: { alwaysTryTypes: true, - project: resolve(__dirname, "./tsconfig.json"), + project: "./tsconfig.json", }, }, react: { version: "detect", }, + node: { + extensions: [".js", ".jsx", ".ts", ".tsx"], + }, + "import/parsers": { + "@typescript-eslint/parser": [".ts", ".tsx"], + }, + "import/internal-regex": "^@/", }, }, ]; diff --git a/client/package.json b/client/package.json index 3f46b692..29a4a505 100644 --- a/client/package.json +++ b/client/package.json @@ -7,14 +7,19 @@ "dev": "vite --host", "build": "tsc -b && vite build", "lint": "eslint \"src/**/*.{ts,tsx}\" --fix", - "preview": "vite preview" + "preview": "vite preview", + "prepare": "panda codegen" }, "dependencies": { + "@pandabox/panda-plugins": "^0.0.8", "react": "^18.3.1", "react-dom": "^18.3.1", "socket.io-client": "^4.8.1" }, "devDependencies": { + "@pandabox/prettier-plugin": "^0.1.3", + "@pandacss/dev": "^0.47.1", + "@pandacss/eslint-plugin": "^0.2.0", "@types/react": "^18.3.12", "@types/react-dom": "^18.3.1", "@vitejs/plugin-react": "^4.3.3", @@ -23,6 +28,7 @@ "eslint-plugin-react": "^7.33.2", "eslint-plugin-react-hooks": "^4.6.0", "eslint-plugin-react-refresh": "^0.4.14", + "prettier": "^3.0.0", "vite": "^5.4.10", "vite-tsconfig-paths": "^5.1.0" } diff --git a/client/panda.config.ts b/client/panda.config.ts new file mode 100644 index 00000000..47290d06 --- /dev/null +++ b/client/panda.config.ts @@ -0,0 +1,30 @@ +import { defineConfig } from "@pandacss/dev"; +import { radii } from "@styles/tokens/radii"; +import { colors } from "@styles/tokens/color"; +import { shadows } from "@styles/tokens/shadow"; +import { spacing } from "@styles/tokens/spacing"; +import { textStyles } from "@styles/typography"; +import { globalStyles } from "@styles/global"; +import { glassContainerRecipe } from "@styles/recipes/glassContainerRecipe"; + +export default defineConfig({ + preflight: true, + include: ["./src/**/*.{js,jsx,ts,tsx}", "./pages/**/*.{js,jsx,ts,tsx}"], + exclude: [], + globalCss: globalStyles, + theme: { + extend: { + tokens: { + colors, + radii, + shadows, + spacing, + }, + recipes: { + glassContainer: glassContainerRecipe, + }, + textStyles, + }, + }, + outdir: "styled-system", +}); diff --git a/client/postcss.config.cjs b/client/postcss.config.cjs new file mode 100644 index 00000000..573efad2 --- /dev/null +++ b/client/postcss.config.cjs @@ -0,0 +1,5 @@ +module.exports = { + plugins: { + '@pandacss/dev/postcss': {}, + }, +} \ No newline at end of file diff --git a/client/public/vite.svg b/client/public/vite.svg deleted file mode 100644 index e7b8dfb1..00000000 --- a/client/public/vite.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/client/src/App.css b/client/src/App.css deleted file mode 100644 index b9d355df..00000000 --- a/client/src/App.css +++ /dev/null @@ -1,42 +0,0 @@ -#root { - max-width: 1280px; - margin: 0 auto; - padding: 2rem; - text-align: center; -} - -.logo { - height: 6em; - padding: 1.5em; - will-change: filter; - transition: filter 300ms; -} -.logo:hover { - filter: drop-shadow(0 0 2em #646cffaa); -} -.logo.react:hover { - filter: drop-shadow(0 0 2em #61dafbaa); -} - -@keyframes logo-spin { - from { - transform: rotate(0deg); - } - to { - transform: rotate(360deg); - } -} - -@media (prefers-reduced-motion: no-preference) { - a:nth-of-type(2) .logo { - animation: logo-spin infinite 20s linear; - } -} - -.card { - padding: 2em; -} - -.read-the-docs { - color: #888; -} diff --git a/client/src/App.tsx b/client/src/App.tsx index a91840d3..8ac9712b 100644 --- a/client/src/App.tsx +++ b/client/src/App.tsx @@ -1,29 +1,11 @@ -import { useState } from "react"; -import reactLogo from "./assets/react.svg"; -import viteLogo from "/vite.svg"; -import "./App.css"; +import WorkSpace from "@features/workSpace/WorkSpace"; const App = () => { - const [count, setCount] = useState(0); + // TODO 라우터, react query 설정 return ( <> -
- - Vite logo - - - React logo - -
-

Vite + React

-
- -

- Edit src/App.tsx and save to test HMR -

-
-

Click on the Vite and React logos to learn more

+ ); }; diff --git a/client/src/assets/icons/plusIcon.svg b/client/src/assets/icons/plusIcon.svg new file mode 100644 index 00000000..fd43a111 --- /dev/null +++ b/client/src/assets/icons/plusIcon.svg @@ -0,0 +1,4 @@ + + + + diff --git a/client/src/assets/images/background.png b/client/src/assets/images/background.png new file mode 100644 index 00000000..9b9ee52b Binary files /dev/null and b/client/src/assets/images/background.png differ diff --git a/client/src/assets/react.svg b/client/src/assets/react.svg deleted file mode 100644 index 6c87de9b..00000000 --- a/client/src/assets/react.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/client/src/components/bottomNavigator/BottomNavigator.style.ts b/client/src/components/bottomNavigator/BottomNavigator.style.ts new file mode 100644 index 00000000..8046a859 --- /dev/null +++ b/client/src/components/bottomNavigator/BottomNavigator.style.ts @@ -0,0 +1,24 @@ +import { css, cx } from "@styled-system/css"; +import { glassContainer } from "@styled-system/recipes"; + +export const bottomNavigatorContainer = cx( + glassContainer({ + borderRadius: "top", + }), + css({ + display: "flex", + zIndex: 1000, + position: "fixed", + left: "50%", + bottom: 0, + transform: "translateX(-50%)", + gap: "lg", + justifyContent: "center", + alignItems: "center", + minWidth: "360px", + height: "88px", + padding: "sm", + paddingBottom: "lg", + background: "white/60", + }), +); diff --git a/client/src/components/bottomNavigator/BottomNavigator.tsx b/client/src/components/bottomNavigator/BottomNavigator.tsx new file mode 100644 index 00000000..36ff1eac --- /dev/null +++ b/client/src/components/bottomNavigator/BottomNavigator.tsx @@ -0,0 +1,30 @@ +import { IconButton } from "@components/button/IconButton"; +import { bottomNavigatorContainer } from "./BottomNavigator.style"; + +interface NavItem { + id: number; + icon: string; +} + +export const BottomNavigator = () => { + const items: NavItem[] = [ + { + id: 1, + icon: "🏠", + }, + { + id: 2, + icon: "🔍", + }, + { + id: 3, + icon: "📚", + }, + ]; + + return ( +
+ {items?.map(({ id, icon }) => )} +
+ ); +}; diff --git a/client/src/components/button/IconButton.style.ts b/client/src/components/button/IconButton.style.ts new file mode 100644 index 00000000..12d4a222 --- /dev/null +++ b/client/src/components/button/IconButton.style.ts @@ -0,0 +1,48 @@ +import { cva } from "@styled-system/css"; + +export const iconButtonContainer = cva({ + base: { + display: "flex", + + justifyContent: "center", + alignItems: "center", + borderRadius: "xs", + background: "white", + "&:hover": { + cursor: "pointer", + }, + }, + variants: { + size: { + sm: { + width: "44px", + height: "44px", + boxShadow: "sm", + }, + md: { + width: "52px", + height: "52px", + boxShadow: "md", + }, + }, + }, + defaultVariants: { + size: "md", + }, +}); + +export const iconBox = cva({ + variants: { + size: { + sm: { + fontSize: "24px", + }, + md: { + fontSize: "30px", + }, + }, + }, + defaultVariants: { + size: "md", + }, +}); diff --git a/client/src/components/button/IconButton.tsx b/client/src/components/button/IconButton.tsx new file mode 100644 index 00000000..9dd405b7 --- /dev/null +++ b/client/src/components/button/IconButton.tsx @@ -0,0 +1,16 @@ +import { iconButtonContainer, iconBox } from "./IconButton.style"; + +interface IconButtonProps { + icon: string; + size: "sm" | "md"; + onClick?: () => void; +} + +export const IconButton = ({ icon, size, onClick }: IconButtonProps) => { + // TODO 추후 svg 파일을 받아올 수 있도록 수정 (사이드바 - 페이지 추가 버튼) + return ( + + ); +}; diff --git a/client/src/components/sidebar/MenuButton.style.ts b/client/src/components/sidebar/MenuButton.style.ts new file mode 100644 index 00000000..72859892 --- /dev/null +++ b/client/src/components/sidebar/MenuButton.style.ts @@ -0,0 +1,23 @@ +import { css } from "@styled-system/css"; + +export const menuItemWrapper = css({ + display: "flex", + gap: "lg", + alignItems: "center", + borderRightRadius: "md", + width: "300px", + padding: "md", + boxShadow: "sm", +}); + +export const imageBox = css({ + borderRadius: "sm", + width: "50px", + height: "50px", + overflow: "hidden", +}); + +export const textBox = css({ + textStyle: "display-medium20", + color: "gray.900", +}); diff --git a/client/src/components/sidebar/MenuButton.tsx b/client/src/components/sidebar/MenuButton.tsx new file mode 100644 index 00000000..8402c5a2 --- /dev/null +++ b/client/src/components/sidebar/MenuButton.tsx @@ -0,0 +1,12 @@ +import { menuItemWrapper, imageBox, textBox } from "./MenuButton.style"; + +export const MenuButton = () => { + return ( +
+
+ +
+

Noctturn

+
+ ); +}; diff --git a/client/src/components/sidebar/PageItem.style.ts b/client/src/components/sidebar/PageItem.style.ts new file mode 100644 index 00000000..5ee503aa --- /dev/null +++ b/client/src/components/sidebar/PageItem.style.ts @@ -0,0 +1,29 @@ +import { css } from "@styled-system/css"; + +export const pageItemContainer = css({ + display: "flex", + gap: "sm", + alignItems: "center", + width: "100%", + paddingInline: "md", + "&:hover": { + background: "white/50", + cursor: "pointer", + }, +}); + +export const iconBox = css({ + display: "flex", + justifyContent: "center", + alignItems: "center", + borderRadius: "xs", + width: "44px", + height: "44px", + fontSize: "24px", + background: "white", +}); + +export const textBox = css({ + textStyle: "display-medium20", + color: "gray.700", +}); diff --git a/client/src/components/sidebar/PageItem.tsx b/client/src/components/sidebar/PageItem.tsx new file mode 100644 index 00000000..8e15b652 --- /dev/null +++ b/client/src/components/sidebar/PageItem.tsx @@ -0,0 +1,16 @@ +import { pageItemContainer, iconBox, textBox } from "./PageItem.style"; + +interface PageItemProps { + id: number; + page: string; + icon?: string; +} + +export const PageItem = ({ icon, page }: PageItemProps) => { + return ( +
+ {icon} + {page} +
+ ); +}; diff --git a/client/src/components/sidebar/Sidebar.style.ts b/client/src/components/sidebar/Sidebar.style.ts new file mode 100644 index 00000000..0c41a92f --- /dev/null +++ b/client/src/components/sidebar/Sidebar.style.ts @@ -0,0 +1,20 @@ +import { css, cx } from "@styled-system/css"; +import { glassContainer } from "@styled-system/recipes"; + +export const sidebarContainer = cx( + glassContainer({ border: "md", borderRadius: "right" }), + css({ + display: "flex", + gap: "lg", + flexDirection: "column", + width: "300px", + height: "calc(100vh - 16px)", + marginBlock: "8px", + }), +); +export const navWrapper = css({ + display: "flex", + gap: "md", + flexDirection: "column", + width: "100%", +}); diff --git a/client/src/components/sidebar/Sidebar.tsx b/client/src/components/sidebar/Sidebar.tsx new file mode 100644 index 00000000..c46ced6e --- /dev/null +++ b/client/src/components/sidebar/Sidebar.tsx @@ -0,0 +1,26 @@ +import { MenuButton } from "./MenuButton"; +import { PageItem } from "./PageItem"; +import { sidebarContainer, navWrapper } from "./Sidebar.style"; + +interface NavItem { + id: number; + page: string; + icon: string; +} + +export const Sidebar = () => { + const navItems: NavItem[] = [ + { id: 1, page: "Page 1", icon: "🏠" }, + { id: 2, page: "Page 2", icon: "🔍" }, + { id: 3, page: "Page 3", icon: "📚" }, + ]; + + return ( + + ); +}; diff --git a/client/src/features/editor/Editor.tsx b/client/src/features/editor/Editor.tsx new file mode 100644 index 00000000..ab4d8132 --- /dev/null +++ b/client/src/features/editor/Editor.tsx @@ -0,0 +1,7 @@ +export const Editor = () => { + return ( +
+

마크다운 에디터

+
+ ); +}; diff --git a/client/src/features/page/Page.style.ts b/client/src/features/page/Page.style.ts new file mode 100644 index 00000000..2f1a6173 --- /dev/null +++ b/client/src/features/page/Page.style.ts @@ -0,0 +1,27 @@ +import { css, cx } from "@styled-system/css"; +import { glassContainer } from "@styled-system/recipes"; + +export const pageContainer = cx( + glassContainer({ border: "lg" }), + css({ + position: "absolute", + width: "450px", + height: "400px", + }), +); + +export const pageHeader = css({ + display: "flex", + justifyContent: "space-between", + alignItems: "center", + borderTopRadius: "md", + height: "60px", + padding: "sm", + boxShadow: "xs", + backdropFilter: "blur(30px)", +}); + +export const pageTitle = css({ + textStyle: "display-medium24", + color: "gray.500", +}); diff --git a/client/src/features/page/Page.tsx b/client/src/features/page/Page.tsx new file mode 100644 index 00000000..64584c47 --- /dev/null +++ b/client/src/features/page/Page.tsx @@ -0,0 +1,33 @@ +import { Editor } from "@features/editor/Editor"; +import { pageContainer, pageHeader, pageTitle } from "./Page.style"; +import { PageControlButton } from "./components/PageControlButton"; + +interface PageProps { + x?: number; + y?: number; +} + +export const Page = ({ x = 0, y = 0 }: PageProps) => { + const position = { + left: `${x}px`, + top: `${y}px`, + }; + + const handlePageMinimize = () => {}; + const handlePageMaximize = () => {}; + const handlePageClose = () => {}; + + return ( +
+
+

title

+ +
+ +
+ ); +}; diff --git a/client/src/features/page/components/PageControlButton.style.ts b/client/src/features/page/components/PageControlButton.style.ts new file mode 100644 index 00000000..1aa0c628 --- /dev/null +++ b/client/src/features/page/components/PageControlButton.style.ts @@ -0,0 +1,22 @@ +import { css, cva } from "@styled-system/css"; + +export const pageControlContainer = css({ + display: "flex", + gap: "sm", +}); + +export const pageControlButton = cva({ + base: { + borderRadius: "full", + width: "20px", + height: "20px", + cursor: "pointer", + }, + variants: { + color: { + yellow: { background: "yellow" }, + green: { background: "green" }, + red: { background: "red" }, + }, + }, +}); diff --git a/client/src/features/page/components/PageControlButton.tsx b/client/src/features/page/components/PageControlButton.tsx new file mode 100644 index 00000000..741a6f48 --- /dev/null +++ b/client/src/features/page/components/PageControlButton.tsx @@ -0,0 +1,23 @@ +import { pageControlContainer, pageControlButton } from "./PageControlButton.style"; + +interface PageControlButtonProps { + onPageMinimize?: () => void; + onPageMaximize?: () => void; + onPageClose?: () => void; +} + +export const PageControlButton = ({ + onPageMinimize, + onPageMaximize, + onPageClose, +}: PageControlButtonProps) => { + return ( +
+
+ ); +}; diff --git a/client/src/features/workSpace/WorkSpace.style.ts b/client/src/features/workSpace/WorkSpace.style.ts new file mode 100644 index 00000000..0ac53f29 --- /dev/null +++ b/client/src/features/workSpace/WorkSpace.style.ts @@ -0,0 +1,11 @@ +import { css } from "@styled-system/css"; + +export const container = css({ + display: "flex", + gap: "sm", +}); + +export const content = css({ + position: "relative", + width: "100%", +}); diff --git a/client/src/features/workSpace/WorkSpace.tsx b/client/src/features/workSpace/WorkSpace.tsx new file mode 100644 index 00000000..c249bc11 --- /dev/null +++ b/client/src/features/workSpace/WorkSpace.tsx @@ -0,0 +1,22 @@ +import { BottomNavigator } from "@components/bottomNavigator/BottomNavigator"; +import { Sidebar } from "@components/sidebar/Sidebar"; +import { Page } from "@features/page/Page"; +import { container, content } from "./WorkSpace.style"; + +const WorkSpace = () => { + // TODO 여러개의 Page 관리 + + return ( +
+ +
+ + + +
+ +
+ ); +}; + +export default WorkSpace; diff --git a/client/src/index.css b/client/src/index.css index 6119ad9a..e27a23b7 100644 --- a/client/src/index.css +++ b/client/src/index.css @@ -1,68 +1 @@ -:root { - font-family: Inter, system-ui, Avenir, Helvetica, Arial, sans-serif; - line-height: 1.5; - font-weight: 400; - - color-scheme: light dark; - color: rgba(255, 255, 255, 0.87); - background-color: #242424; - - font-synthesis: none; - text-rendering: optimizeLegibility; - -webkit-font-smoothing: antialiased; - -moz-osx-font-smoothing: grayscale; -} - -a { - font-weight: 500; - color: #646cff; - text-decoration: inherit; -} -a:hover { - color: #535bf2; -} - -body { - margin: 0; - display: flex; - place-items: center; - min-width: 320px; - min-height: 100vh; -} - -h1 { - font-size: 3.2em; - line-height: 1.1; -} - -button { - border-radius: 8px; - border: 1px solid transparent; - padding: 0.6em 1.2em; - font-size: 1em; - font-weight: 500; - font-family: inherit; - background-color: #1a1a1a; - cursor: pointer; - transition: border-color 0.25s; -} -button:hover { - border-color: #646cff; -} -button:focus, -button:focus-visible { - outline: 4px auto -webkit-focus-ring-color; -} - -@media (prefers-color-scheme: light) { - :root { - color: #213547; - background-color: #ffffff; - } - a:hover { - color: #747bff; - } - button { - background-color: #f9f9f9; - } -} +@layer reset, base, tokens, recipes, utilities; diff --git a/client/src/styles/global.ts b/client/src/styles/global.ts new file mode 100644 index 00000000..837bd8e5 --- /dev/null +++ b/client/src/styles/global.ts @@ -0,0 +1,9 @@ +import { defineGlobalStyles } from "@pandacss/dev"; + +export const globalStyles = defineGlobalStyles({ + body: { + backgroundImage: 'url("./assets/images/background.png")', + backgroundSize: "cover", + // TODO 폰트 설정 + }, +}); diff --git a/client/src/styles/recipes/glassContainerRecipe.ts b/client/src/styles/recipes/glassContainerRecipe.ts new file mode 100644 index 00000000..c9be1a8a --- /dev/null +++ b/client/src/styles/recipes/glassContainerRecipe.ts @@ -0,0 +1,36 @@ +import { defineRecipe } from "@pandacss/dev"; + +export const glassContainerRecipe = defineRecipe({ + className: "glassContainer", + base: { + borderRadius: "md", + background: "linear-gradient(180deg, token(colors.white/60), token(colors.white/0))", + boxShadow: "lg", + backdropFilter: "blur(20px)", + }, + variants: { + borderRadius: { + top: { + borderBottomRadius: "none", + }, + bottom: { + borderTopRadius: "none", + }, + right: { + borderLeftRadius: "none", + }, + left: { + borderRightRadius: "none", + }, + }, + + border: { + md: { + border: "1px solid token(colors.white/40)", + }, + lg: { + border: "2px solid token(colors.white/40)", + }, + }, + }, +}); diff --git a/client/src/styles/tokens/color.ts b/client/src/styles/tokens/color.ts new file mode 100644 index 00000000..a01454dd --- /dev/null +++ b/client/src/styles/tokens/color.ts @@ -0,0 +1,24 @@ +export const colors = { + white: { + value: "#FFFFFF", + }, + gray: { + 100: { value: "#C1D7F4" }, + 300: { value: "#99AFCA" }, + 500: { value: "#7388A2" }, + 700: { value: "#4E637C" }, + 900: { value: "#2B4158" }, + }, + shadow: { + value: "#004585", + }, + red: { + value: "#F24150", + }, + yellow: { + value: "#FEA642", + }, + green: { + value: "#1BBF44", + }, +}; diff --git a/client/src/styles/tokens/radii.ts b/client/src/styles/tokens/radii.ts new file mode 100644 index 00000000..491e228d --- /dev/null +++ b/client/src/styles/tokens/radii.ts @@ -0,0 +1,7 @@ +export const radii = { + none: { value: "0px" }, + xs: { value: "16px" }, + sm: { value: "20px" }, + md: { value: "24px" }, + full: { value: "9999px" }, +}; diff --git a/client/src/styles/tokens/shadow.ts b/client/src/styles/tokens/shadow.ts new file mode 100644 index 00000000..55c452e5 --- /dev/null +++ b/client/src/styles/tokens/shadow.ts @@ -0,0 +1,44 @@ +import { colors } from "./color"; + +export const shadows = { + xs: { + // page -> title 그림자 + value: { + offsetX: 0, + offsetY: 0, + blur: 15, + spread: 0, + color: `${colors.shadow.value}05`, + }, + }, + sm: { + // sidebar -> menuButton 그림자 + value: { + offsetX: 0, + offsetY: 3, + blur: 15, + spread: 0, + color: `${colors.shadow.value}10`, + }, + }, + md: { + // button 그림자 (bottomNavigator 버튼 + sidebar 페이지 추가 버튼) + value: { + offsetX: 0, + offsetY: 4, + blur: 15, + spread: 0, + color: `${colors.shadow.value}15`, + }, + }, + lg: { + // page 그림자 + value: { + offsetX: 0, + offsetY: 0, + blur: 15, + spread: 0, + color: `${colors.shadow.value}20`, + }, + }, +}; diff --git a/client/src/styles/tokens/spacing.ts b/client/src/styles/tokens/spacing.ts new file mode 100644 index 00000000..0846efbf --- /dev/null +++ b/client/src/styles/tokens/spacing.ts @@ -0,0 +1,5 @@ +export const spacing = { + sm: { value: "16px" }, + md: { value: "20px" }, + lg: { value: "24px" }, +}; diff --git a/client/src/styles/typography.ts b/client/src/styles/typography.ts new file mode 100644 index 00000000..c084aa58 --- /dev/null +++ b/client/src/styles/typography.ts @@ -0,0 +1,39 @@ +import { defineTextStyles } from "@pandacss/dev"; + +export const textStyles = defineTextStyles({ + "display-medium16": { + value: { + fontFamily: "Inter", + fontWeight: "500", + fontSize: "16px", + lineHeight: "24px", + letterSpacing: "0", + textDecoration: "None", + textTransform: "None", + }, + }, + + "display-medium20": { + value: { + fontFamily: "Inter", + fontWeight: "500", + fontSize: "20px", + lineHeight: "28px", + letterSpacing: "0", + textDecoration: "None", + textTransform: "None", + }, + }, + + "display-medium24": { + value: { + fontFamily: "Inter", + fontWeight: "500", + fontSize: "24px", + lineHeight: "32px", + letterSpacing: "0", + textDecoration: "None", + textTransform: "None", + }, + }, +}); diff --git a/client/tsconfig.json b/client/tsconfig.json index 27efab1d..d0a90532 100644 --- a/client/tsconfig.json +++ b/client/tsconfig.json @@ -17,12 +17,15 @@ "noFallthroughCasesInSwitch": true, "composite": true, "types": ["vite/client"], - "baseUrl": "src", + "baseUrl": ".", "paths": { - "@components/*": ["components/*"], - "@assets/*": ["assets/*"] + "@styled-system/*": ["styled-system/*"], + "@components/*": ["src/components/*"], + "@assets/*": ["src/assets/*"], + "@features/*": ["src/features/*"], + "@styles/*": ["src/styles/*"] } }, - "include": ["src/**/*", "*.ts", "*.tsx", "vite.config.ts"], + "include": ["src", "*.ts", "*.tsx", "vite.config.ts", "styled-system"], "exclude": ["node_modules"] } diff --git a/eslint.config.js b/eslint.config.js index ce577ea3..d7f1cf35 100644 --- a/eslint.config.js +++ b/eslint.config.js @@ -91,6 +91,7 @@ const config = [ "**/*.config.js", "**/src/**/*.test.js", "**/public/*", + "client/styled-system/", ], }, // 설정 파일에 대한 특별 규칙 diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 94ed4101..789a39b5 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -56,6 +56,9 @@ importers: client: dependencies: + '@pandabox/panda-plugins': + specifier: ^0.0.8 + version: 0.0.8 react: specifier: ^18.3.1 version: 18.3.1 @@ -66,6 +69,15 @@ importers: specifier: ^4.8.1 version: 4.8.1 devDependencies: + '@pandabox/prettier-plugin': + specifier: ^0.1.3 + version: 0.1.3(@pandacss/config@0.47.1)(@pandacss/core@0.47.1)(@pandacss/is-valid-prop@0.47.1)(@pandacss/node@0.47.1(typescript@5.3.3))(@pandacss/preset-base@0.47.1)(@pandacss/shared@0.47.1) + '@pandacss/dev': + specifier: ^0.47.1 + version: 0.47.1(typescript@5.3.3) + '@pandacss/eslint-plugin': + specifier: ^0.2.0 + version: 0.2.0(eslint@8.57.1)(typescript@5.3.3) '@types/react': specifier: ^18.3.12 version: 18.3.12 @@ -74,7 +86,7 @@ importers: version: 18.3.1 '@vitejs/plugin-react': specifier: ^4.3.3 - version: 4.3.3(vite@5.4.10(@types/node@20.17.6)(terser@5.36.0)) + version: 4.3.3(vite@5.4.10(@types/node@20.17.6)(lightningcss@1.25.1)(terser@5.36.0)) eslint-plugin-import: specifier: ^2.29.1 version: 2.31.0(@typescript-eslint/parser@7.18.0(eslint@8.57.1)(typescript@5.3.3))(eslint-import-resolver-typescript@3.6.3(@typescript-eslint/parser@7.18.0(eslint@8.57.1)(typescript@5.3.3))(eslint-plugin-import@2.31.0)(eslint@8.57.1))(eslint@8.57.1) @@ -90,12 +102,15 @@ importers: eslint-plugin-react-refresh: specifier: ^0.4.14 version: 0.4.14(eslint@8.57.1) + prettier: + specifier: ^3.0.0 + version: 3.3.3 vite: specifier: ^5.4.10 - version: 5.4.10(@types/node@20.17.6)(terser@5.36.0) + version: 5.4.10(@types/node@20.17.6)(lightningcss@1.25.1)(terser@5.36.0) vite-tsconfig-paths: specifier: ^5.1.0 - version: 5.1.0(typescript@5.3.3)(vite@5.4.10(@types/node@20.17.6)(terser@5.36.0)) + version: 5.1.0(typescript@5.3.3)(vite@5.4.10(@types/node@20.17.6)(lightningcss@1.25.1)(terser@5.36.0)) server: dependencies: @@ -383,6 +398,14 @@ packages: '@bcoe/v8-coverage@0.2.3': resolution: {integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==} + '@clack/core@0.3.4': + resolution: {integrity: sha512-H4hxZDXgHtWTwV3RAVenqcC4VbJZNegbBjlPvzOzCouXtS2y3sDvlO3IsbrPNWuLWPPlYVYPghQdSF64683Ldw==} + + '@clack/prompts@0.7.0': + resolution: {integrity: sha512-0MhX9/B4iL6Re04jPrttDm+BsP8y6mS7byuv0BvXgdXhbV5PdlsHt55dvNsuBCPZ7xq1oTAOOuotR9NFbQyMSA==} + bundledDependencies: + - is-unicode-supported + '@colors/colors@1.5.0': resolution: {integrity: sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==} engines: {node: '>=0.1.90'} @@ -391,138 +414,288 @@ packages: resolution: {integrity: sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==} engines: {node: '>=12'} + '@csstools/postcss-cascade-layers@4.0.6': + resolution: {integrity: sha512-Xt00qGAQyqAODFiFEJNkTpSUz5VfYqnDLECdlA/Vv17nl/OIV5QfTRHGAXrBGG5YcJyHpJ+GF9gF/RZvOQz4oA==} + engines: {node: ^14 || ^16 || >=18} + peerDependencies: + postcss: ^8.4 + + '@csstools/selector-specificity@3.1.1': + resolution: {integrity: sha512-a7cxGcJ2wIlMFLlh8z2ONm+715QkPHiyJcxwQlKOz/03GPw1COpfhcmC9wm4xlZfp//jWHNNMwzjtqHXVWU9KA==} + engines: {node: ^14 || ^16 || >=18} + peerDependencies: + postcss-selector-parser: ^6.0.13 + + '@esbuild/aix-ppc64@0.20.2': + resolution: {integrity: sha512-D+EBOJHXdNZcLJRBkhENNG8Wji2kgc9AZ9KiPr1JuZjsNtyHzrsfLRrY0tk2H2aoFu6RANO1y1iPPUCDYWkb5g==} + engines: {node: '>=12'} + cpu: [ppc64] + os: [aix] + '@esbuild/aix-ppc64@0.21.5': resolution: {integrity: sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==} engines: {node: '>=12'} cpu: [ppc64] os: [aix] + '@esbuild/android-arm64@0.20.2': + resolution: {integrity: sha512-mRzjLacRtl/tWU0SvD8lUEwb61yP9cqQo6noDZP/O8VkwafSYwZ4yWy24kan8jE/IMERpYncRt2dw438LP3Xmg==} + engines: {node: '>=12'} + cpu: [arm64] + os: [android] + '@esbuild/android-arm64@0.21.5': resolution: {integrity: sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==} engines: {node: '>=12'} cpu: [arm64] os: [android] + '@esbuild/android-arm@0.20.2': + resolution: {integrity: sha512-t98Ra6pw2VaDhqNWO2Oph2LXbz/EJcnLmKLGBJwEwXX/JAN83Fym1rU8l0JUWK6HkIbWONCSSatf4sf2NBRx/w==} + engines: {node: '>=12'} + cpu: [arm] + os: [android] + '@esbuild/android-arm@0.21.5': resolution: {integrity: sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==} engines: {node: '>=12'} cpu: [arm] os: [android] + '@esbuild/android-x64@0.20.2': + resolution: {integrity: sha512-btzExgV+/lMGDDa194CcUQm53ncxzeBrWJcncOBxuC6ndBkKxnHdFJn86mCIgTELsooUmwUm9FkhSp5HYu00Rg==} + engines: {node: '>=12'} + cpu: [x64] + os: [android] + '@esbuild/android-x64@0.21.5': resolution: {integrity: sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==} engines: {node: '>=12'} cpu: [x64] os: [android] + '@esbuild/darwin-arm64@0.20.2': + resolution: {integrity: sha512-4J6IRT+10J3aJH3l1yzEg9y3wkTDgDk7TSDFX+wKFiWjqWp/iCfLIYzGyasx9l0SAFPT1HwSCR+0w/h1ES/MjA==} + engines: {node: '>=12'} + cpu: [arm64] + os: [darwin] + '@esbuild/darwin-arm64@0.21.5': resolution: {integrity: sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==} engines: {node: '>=12'} cpu: [arm64] os: [darwin] + '@esbuild/darwin-x64@0.20.2': + resolution: {integrity: sha512-tBcXp9KNphnNH0dfhv8KYkZhjc+H3XBkF5DKtswJblV7KlT9EI2+jeA8DgBjp908WEuYll6pF+UStUCfEpdysA==} + engines: {node: '>=12'} + cpu: [x64] + os: [darwin] + '@esbuild/darwin-x64@0.21.5': resolution: {integrity: sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==} engines: {node: '>=12'} cpu: [x64] os: [darwin] + '@esbuild/freebsd-arm64@0.20.2': + resolution: {integrity: sha512-d3qI41G4SuLiCGCFGUrKsSeTXyWG6yem1KcGZVS+3FYlYhtNoNgYrWcvkOoaqMhwXSMrZRl69ArHsGJ9mYdbbw==} + engines: {node: '>=12'} + cpu: [arm64] + os: [freebsd] + '@esbuild/freebsd-arm64@0.21.5': resolution: {integrity: sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==} engines: {node: '>=12'} cpu: [arm64] os: [freebsd] + '@esbuild/freebsd-x64@0.20.2': + resolution: {integrity: sha512-d+DipyvHRuqEeM5zDivKV1KuXn9WeRX6vqSqIDgwIfPQtwMP4jaDsQsDncjTDDsExT4lR/91OLjRo8bmC1e+Cw==} + engines: {node: '>=12'} + cpu: [x64] + os: [freebsd] + '@esbuild/freebsd-x64@0.21.5': resolution: {integrity: sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==} engines: {node: '>=12'} cpu: [x64] os: [freebsd] + '@esbuild/linux-arm64@0.20.2': + resolution: {integrity: sha512-9pb6rBjGvTFNira2FLIWqDk/uaf42sSyLE8j1rnUpuzsODBq7FvpwHYZxQ/It/8b+QOS1RYfqgGFNLRI+qlq2A==} + engines: {node: '>=12'} + cpu: [arm64] + os: [linux] + '@esbuild/linux-arm64@0.21.5': resolution: {integrity: sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==} engines: {node: '>=12'} cpu: [arm64] os: [linux] + '@esbuild/linux-arm@0.20.2': + resolution: {integrity: sha512-VhLPeR8HTMPccbuWWcEUD1Az68TqaTYyj6nfE4QByZIQEQVWBB8vup8PpR7y1QHL3CpcF6xd5WVBU/+SBEvGTg==} + engines: {node: '>=12'} + cpu: [arm] + os: [linux] + '@esbuild/linux-arm@0.21.5': resolution: {integrity: sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==} engines: {node: '>=12'} cpu: [arm] os: [linux] + '@esbuild/linux-ia32@0.20.2': + resolution: {integrity: sha512-o10utieEkNPFDZFQm9CoP7Tvb33UutoJqg3qKf1PWVeeJhJw0Q347PxMvBgVVFgouYLGIhFYG0UGdBumROyiig==} + engines: {node: '>=12'} + cpu: [ia32] + os: [linux] + '@esbuild/linux-ia32@0.21.5': resolution: {integrity: sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==} engines: {node: '>=12'} cpu: [ia32] os: [linux] + '@esbuild/linux-loong64@0.20.2': + resolution: {integrity: sha512-PR7sp6R/UC4CFVomVINKJ80pMFlfDfMQMYynX7t1tNTeivQ6XdX5r2XovMmha/VjR1YN/HgHWsVcTRIMkymrgQ==} + engines: {node: '>=12'} + cpu: [loong64] + os: [linux] + '@esbuild/linux-loong64@0.21.5': resolution: {integrity: sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==} engines: {node: '>=12'} cpu: [loong64] os: [linux] + '@esbuild/linux-mips64el@0.20.2': + resolution: {integrity: sha512-4BlTqeutE/KnOiTG5Y6Sb/Hw6hsBOZapOVF6njAESHInhlQAghVVZL1ZpIctBOoTFbQyGW+LsVYZ8lSSB3wkjA==} + engines: {node: '>=12'} + cpu: [mips64el] + os: [linux] + '@esbuild/linux-mips64el@0.21.5': resolution: {integrity: sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==} engines: {node: '>=12'} cpu: [mips64el] os: [linux] + '@esbuild/linux-ppc64@0.20.2': + resolution: {integrity: sha512-rD3KsaDprDcfajSKdn25ooz5J5/fWBylaaXkuotBDGnMnDP1Uv5DLAN/45qfnf3JDYyJv/ytGHQaziHUdyzaAg==} + engines: {node: '>=12'} + cpu: [ppc64] + os: [linux] + '@esbuild/linux-ppc64@0.21.5': resolution: {integrity: sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==} engines: {node: '>=12'} cpu: [ppc64] os: [linux] + '@esbuild/linux-riscv64@0.20.2': + resolution: {integrity: sha512-snwmBKacKmwTMmhLlz/3aH1Q9T8v45bKYGE3j26TsaOVtjIag4wLfWSiZykXzXuE1kbCE+zJRmwp+ZbIHinnVg==} + engines: {node: '>=12'} + cpu: [riscv64] + os: [linux] + '@esbuild/linux-riscv64@0.21.5': resolution: {integrity: sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==} engines: {node: '>=12'} cpu: [riscv64] os: [linux] + '@esbuild/linux-s390x@0.20.2': + resolution: {integrity: sha512-wcWISOobRWNm3cezm5HOZcYz1sKoHLd8VL1dl309DiixxVFoFe/o8HnwuIwn6sXre88Nwj+VwZUvJf4AFxkyrQ==} + engines: {node: '>=12'} + cpu: [s390x] + os: [linux] + '@esbuild/linux-s390x@0.21.5': resolution: {integrity: sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==} engines: {node: '>=12'} cpu: [s390x] os: [linux] + '@esbuild/linux-x64@0.20.2': + resolution: {integrity: sha512-1MdwI6OOTsfQfek8sLwgyjOXAu+wKhLEoaOLTjbijk6E2WONYpH9ZU2mNtR+lZ2B4uwr+usqGuVfFT9tMtGvGw==} + engines: {node: '>=12'} + cpu: [x64] + os: [linux] + '@esbuild/linux-x64@0.21.5': resolution: {integrity: sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==} engines: {node: '>=12'} cpu: [x64] os: [linux] + '@esbuild/netbsd-x64@0.20.2': + resolution: {integrity: sha512-K8/DhBxcVQkzYc43yJXDSyjlFeHQJBiowJ0uVL6Tor3jGQfSGHNNJcWxNbOI8v5k82prYqzPuwkzHt3J1T1iZQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [netbsd] + '@esbuild/netbsd-x64@0.21.5': resolution: {integrity: sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==} engines: {node: '>=12'} cpu: [x64] os: [netbsd] + '@esbuild/openbsd-x64@0.20.2': + resolution: {integrity: sha512-eMpKlV0SThJmmJgiVyN9jTPJ2VBPquf6Kt/nAoo6DgHAoN57K15ZghiHaMvqjCye/uU4X5u3YSMgVBI1h3vKrQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [openbsd] + '@esbuild/openbsd-x64@0.21.5': resolution: {integrity: sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==} engines: {node: '>=12'} cpu: [x64] os: [openbsd] + '@esbuild/sunos-x64@0.20.2': + resolution: {integrity: sha512-2UyFtRC6cXLyejf/YEld4Hajo7UHILetzE1vsRcGL3earZEW77JxrFjH4Ez2qaTiEfMgAXxfAZCm1fvM/G/o8w==} + engines: {node: '>=12'} + cpu: [x64] + os: [sunos] + '@esbuild/sunos-x64@0.21.5': resolution: {integrity: sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==} engines: {node: '>=12'} cpu: [x64] os: [sunos] + '@esbuild/win32-arm64@0.20.2': + resolution: {integrity: sha512-GRibxoawM9ZCnDxnP3usoUDO9vUkpAxIIZ6GQI+IlVmr5kP3zUq+l17xELTHMWTWzjxa2guPNyrpq1GWmPvcGQ==} + engines: {node: '>=12'} + cpu: [arm64] + os: [win32] + '@esbuild/win32-arm64@0.21.5': resolution: {integrity: sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==} engines: {node: '>=12'} cpu: [arm64] os: [win32] + '@esbuild/win32-ia32@0.20.2': + resolution: {integrity: sha512-HfLOfn9YWmkSKRQqovpnITazdtquEW8/SoHW7pWpuEeguaZI4QnCRW6b+oZTztdBnZOS2hqJ6im/D5cPzBTTlQ==} + engines: {node: '>=12'} + cpu: [ia32] + os: [win32] + '@esbuild/win32-ia32@0.21.5': resolution: {integrity: sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==} engines: {node: '>=12'} cpu: [ia32] os: [win32] + '@esbuild/win32-x64@0.20.2': + resolution: {integrity: sha512-N49X4lJX27+l9jbLKSqZ6bKNjzQvHaT8IIFUy+YIqmXQdjYCToGWwOItDrfby14c78aDd5NHQl29xingXfCdLQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [win32] + '@esbuild/win32-x64@0.21.5': resolution: {integrity: sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==} engines: {node: '>=12'} @@ -792,6 +965,114 @@ packages: engines: {node: '>=8.0.0', npm: '>=5.0.0'} hasBin: true + '@pandabox/panda-plugins@0.0.8': + resolution: {integrity: sha512-rT2I3lxNG5c1XUwJH7hFrqVR3upkI8OpoxvW802OuLfPCg8j3nvG31VthzmeZ6SitRixxOY4J419HgChY20kRQ==} + + '@pandabox/postcss-plugins@0.0.2': + resolution: {integrity: sha512-sOhfLohVcjPmA6mgYElLiNwnolEiM7Wqk4OBPSYC/k1Rpx2QyNenwBuB4mRtN9oV21N29fgfNZfTqMbT/fwQpw==} + peerDependencies: + postcss: ^8.4.35 + + '@pandabox/prettier-plugin@0.1.3': + resolution: {integrity: sha512-EvwXOpFatVYloXvYEPTm2HL53k6SEUSHRYp+DUdSRIT/KivrFmkSGfl0j8WfdDtxc+4j9tYQNs0rBkSvvxuChA==} + peerDependencies: + '@pandacss/config': '>=0.36.1' + '@pandacss/core': '>=0.36.1' + '@pandacss/is-valid-prop': '>=0.36.1' + '@pandacss/node': '>=0.36.1' + '@pandacss/preset-base': '>=0.36.1' + '@pandacss/shared': '>=0.36.1' + + '@pandacss/config@0.40.1': + resolution: {integrity: sha512-Pzm0GpsrV8OoXgrBJ+V7aaKG39ytbLex1XsRKY6JThkAAz0rE2P8k4nbSQU8WXuG7mbOijBKYybi/cxRAIUL1w==} + + '@pandacss/config@0.47.1': + resolution: {integrity: sha512-a5xp88m96U27/pesBRDvCtqf0D28GOH/Pm+ygzqoPkDVBVTMsK3oaxQTnN7EokkbeVYzf1ErJKro+o9SBxlFUQ==} + + '@pandacss/core@0.40.1': + resolution: {integrity: sha512-12Eu6ReCYZYu6Y/cX5YvGUS8eJkCVJYR8njWAqJmSg+rg/vqmkAM+KL8qdYw95WiTzih1dPaSq+MqkiX3N9hUg==} + + '@pandacss/core@0.47.1': + resolution: {integrity: sha512-1ioS76qGnxQrCL1KkIz2H6yHV/nXlqbu43A3ST9dQ2G7YmIB3/Ri2aosduRDHF5qblPyG+dQeQosbue6UXH2Aw==} + + '@pandacss/dev@0.47.1': + resolution: {integrity: sha512-UVdpG+xq7PAxq676IoUxNtvni/p0ZcAWZo22XZKDSWAz+D1vRLC9kzlv6083OY78JSRpNstGEUFSsoyrXmgG0g==} + hasBin: true + + '@pandacss/eslint-plugin@0.2.0': + resolution: {integrity: sha512-TLcOZp/5PcPu67abTgmVNytyRX193sYaRt+tNrVETUPBGex8SqtuBvacq8zLh7AKWnG6cVkzbpANvL7pwRViug==} + peerDependencies: + eslint: '*' + + '@pandacss/extractor@0.40.1': + resolution: {integrity: sha512-eHTAiNBLPxOYsf4pqbwhxjqejzaYx6EGFvdxznKohO++ihPgoph4/zl6WZx+/Ncb/IcHKMXpIBghQmmE68LIyA==} + + '@pandacss/extractor@0.47.1': + resolution: {integrity: sha512-owSr4aSbiGIC9773nxsT0fQrwyzWpJ4kq0RwBjNZ9tmlZgS+FnOrHtX+4GjDnGbfNS5oP1KUxKqdpbd2q8HLZQ==} + + '@pandacss/generator@0.40.1': + resolution: {integrity: sha512-kidMyFPVuJYue4uah9uL4iNdhCPikTPCsc8j9IwrcrKPT6uhLqdeBQEF3Kxs0Pik8v+cMaDV0BSSceCujxHzhA==} + + '@pandacss/generator@0.47.1': + resolution: {integrity: sha512-RbPMTK3YPq2153DLIpEnVppyL1hZAjJLvDtLCFjm7vaKp++zpfRuJ7YDebtsUCF5gcMJcPAG4pYiA2cYmuhzmQ==} + + '@pandacss/is-valid-prop@0.40.1': + resolution: {integrity: sha512-YcWecr6zecEiCqRi/zoCONcokG64T2LiEOCEYZMhqX9ma/KsKNd4oZO6r001/1ZUSBSVD6ZIb95h/N4gctfayg==} + + '@pandacss/is-valid-prop@0.47.1': + resolution: {integrity: sha512-2KKISSWz6GmdLCxjXYrDaMq3Th8rvG4hCvzBsVqPAR7fCBML+m/IR0KHSNX/Darpar4tSSJqJzjqZikkR3mWkg==} + + '@pandacss/logger@0.40.1': + resolution: {integrity: sha512-UnxDZGWj4e2Cl9XJWBp5WTJiWmfXIbyYLXt0tOlVIGTiBfZtsqVnT/uD3g71QSJgyUCyYqCx/zHJTIsKIm2/HQ==} + + '@pandacss/logger@0.47.1': + resolution: {integrity: sha512-b+pk3yjnL3eBcXHvYLEWHc3GTsGGZMBugnK41b5YvqrphzgHKBMc8LmXulF7YbQ2//bPkP51+CGDj9YR/yHdpA==} + + '@pandacss/node@0.40.1': + resolution: {integrity: sha512-r00E85hAFmU49H0JgEwRqf2R5P6CIAydLcTTGrqYEvC8NrP2Y2vsnNENYwDT6PChAzjIZxtZK5myYki3qkfWTA==} + + '@pandacss/node@0.47.1': + resolution: {integrity: sha512-MSQ1TjE4Zyy3tcXWSAm5raMJg5GqRqKazYgYJbXOlNcH+5IG9gpOkgas5srYsXbSX8z5IAMcBlMgVrkfM0wHOw==} + + '@pandacss/parser@0.40.1': + resolution: {integrity: sha512-tcBw29Qzxe7BSyf3G76d4ux8rCnqzg4kIApOZQFPrPLGzkc6/TO59HQr3gz8YQbD0HhO2QzjnUkVwCuOpCJoOQ==} + + '@pandacss/parser@0.47.1': + resolution: {integrity: sha512-OTFxbviUfgA9J1KLTXDm7QmXilUiB71SUbQKihyV+YXDzMwvv7qObL8JoZtD3qAMGKDzIpyB79vQnR5pXs0UlA==} + + '@pandacss/postcss@0.47.1': + resolution: {integrity: sha512-jMzRax1VIvwCEpa0ustNh/GwoKCA34VLgDoHDaoPqkvENoA5hA/zrxrY2Bn2xRYr2Ajcckf6DKBg4yf/sNCtaw==} + + '@pandacss/preset-base@0.40.1': + resolution: {integrity: sha512-uPevTES6MonoCSLa5BLHcIkj0hJE6Nynlnaqyen4BPESJFh+ylzVjQa8K3RpOAtD6phVgWsjf21cjmKfnxo+0Q==} + + '@pandacss/preset-base@0.47.1': + resolution: {integrity: sha512-fV14fVKDiGoV3L9bFlbjCd8PnB664pqk9oE+wXQHZ8hBi8jJxPFG5VFaor18SIr4+/r7t5kRqhJq1RDqPZLdDA==} + + '@pandacss/preset-panda@0.40.1': + resolution: {integrity: sha512-rNw+mfU3rhQzOgUkKTZqQ6y0qRMua5Z8AVuWUrSPYCERsxmbdAVrdoOfkCjiZ+Kf+nWGumlDca9IWxI5vYlSMw==} + + '@pandacss/preset-panda@0.47.1': + resolution: {integrity: sha512-OBls3uSzHrBEN2bOvYjN1tUOkCCRP/V75dQZa7WWMJZKpKFcS1ppbBlWMT+wM/Sf4wqFYfhpVlqNYfvTHzYbUQ==} + + '@pandacss/shared@0.40.1': + resolution: {integrity: sha512-FBI2AaaYQZoA7TU/qa9z4FVGU3eQDC/cXobTOzmvewpVb+kFSjPo9hralYAViq+5EFRAJOFM7NMqQH0Enitjnw==} + + '@pandacss/shared@0.47.1': + resolution: {integrity: sha512-qZZisWDosqfzAejr6VMHiBy0nZG5Pn9bjzPKZfSqCEV86DqW4Chcq30bSsMbMZWhVCRZOmXhOgjeNw3vEkXQhg==} + + '@pandacss/token-dictionary@0.40.1': + resolution: {integrity: sha512-vpeGGJMd1dasGD2siEqSxtg9wAYNHVnafJSL+QCtarRSwVf9/ETw48md6CvGX7Iq6mfUpNJaa1JkBmhnQUVuNg==} + + '@pandacss/token-dictionary@0.47.1': + resolution: {integrity: sha512-UB40d8ea7gS9EnhaUeNkYkVkooOJoFw/WPHIrEpphZzQ9vx8QA8xYk/YKu9fTFFswj1xZNSucDkvcB61Hwp1SQ==} + + '@pandacss/types@0.40.1': + resolution: {integrity: sha512-znHd2Qc9zv/3e86CkM04Dv5b3dTymucfAvbvkUrvz4AT1KME7BQ1YEQRpaXgdE4UI5waV+Rv0Tx7Dmtt//4yWQ==} + + '@pandacss/types@0.47.1': + resolution: {integrity: sha512-btJWO8jBRVdrZrygnSV7QgtAfhzs3903/Qy9CnG2h5TcAqVFRmntciv0wE7PbkOJoKY+U9VT7y1+0d49x+syNw==} + '@pkgjs/parseargs@0.11.0': resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} engines: {node: '>=14'} @@ -905,6 +1186,9 @@ packages: '@socket.io/component-emitter@3.1.2': resolution: {integrity: sha512-9BCxFwvbGg/RsZK9tjXd8s4UcwR0MWeFQ1XEKIQVVvAGJyINdrqKMcTRyLoK8Rse1GjzLV9cwjWV1olXRWEXVA==} + '@ts-morph/common@0.22.0': + resolution: {integrity: sha512-HqNBuV/oIlMKdkLshXd1zKBqNQCsuPEsgQOkfFQ/eUKjRlwndXW1AjN9LVkBEIukm00gGXSRmfkl0Wv5VXLnlw==} + '@tsconfig/node10@1.0.11': resolution: {integrity: sha512-DcRjDCujK/kCk/cUe8Xz8ZSpm8mS3mNNpta+jGCA6USEDfktlNvm1+IuZ9eTcDbNk41BHwpHHeW+N1lKCz4zOw==} @@ -983,6 +1267,9 @@ packages: '@types/mime@1.3.5': resolution: {integrity: sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==} + '@types/node@17.0.45': + resolution: {integrity: sha512-w+tIMs3rq2afQdsPJlODhoUEKzFP1ayaoyl1CcnwtIlsVe7K7bA1NGm4s3PraqTLlXnbIN84zuBlxBWo1u9BLw==} + '@types/node@20.17.6': resolution: {integrity: sha512-VEI7OdvK2wP7XHnsuXbAJnEpEkF6NjSN45QJlL4VGqZSXsnicpesdTWsg9RISeSdYd3yeRj/y3k5KGjUXYnFwQ==} @@ -1001,6 +1288,9 @@ packages: '@types/react@18.3.12': resolution: {integrity: sha512-D2wOSq/d6Agt28q7rSI3jhU7G6aiuzljDGZ2hTZHIkrTLUI+AF3WMeKkEZ9nN2fkBAlcktT6vcZjDFiIhMYEQw==} + '@types/semver@7.5.8': + resolution: {integrity: sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==} + '@types/send@0.17.4': resolution: {integrity: sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA==} @@ -1049,6 +1339,10 @@ packages: typescript: optional: true + '@typescript-eslint/scope-manager@6.21.0': + resolution: {integrity: sha512-OwLUIWZJry80O99zvqXVEioyniJMa+d2GrqpUTqi5/v5D5rOrppJVBPa0yKCblcigC0/aYAzxxqQ1B+DS2RYsg==} + engines: {node: ^16.0.0 || >=18.0.0} + '@typescript-eslint/scope-manager@7.18.0': resolution: {integrity: sha512-jjhdIE/FPF2B7Z1uzc6i3oWKbGcHb87Qw7AWj6jmEqNOfDFbJWtjt/XfwCpvNkpGWlcJaog5vTR+VV8+w9JflA==} engines: {node: ^18.18.0 || >=20.0.0} @@ -1063,10 +1357,23 @@ packages: typescript: optional: true + '@typescript-eslint/types@6.21.0': + resolution: {integrity: sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg==} + engines: {node: ^16.0.0 || >=18.0.0} + '@typescript-eslint/types@7.18.0': resolution: {integrity: sha512-iZqi+Ds1y4EDYUtlOOC+aUmxnE9xS/yCigkjA7XpTKV6nCBd3Hp/PRGGmdwnfkV2ThMyYldP1wRpm/id99spTQ==} engines: {node: ^18.18.0 || >=20.0.0} + '@typescript-eslint/typescript-estree@6.21.0': + resolution: {integrity: sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ==} + engines: {node: ^16.0.0 || >=18.0.0} + peerDependencies: + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + '@typescript-eslint/typescript-estree@7.18.0': resolution: {integrity: sha512-aP1v/BSPnnyhMHts8cf1qQ6Q1IFwwRvAQGRvBFkWlo3/lH29OXA3Pts+c10nxRxIBrDnoMqzhgdwVe5f2D6OzA==} engines: {node: ^18.18.0 || >=20.0.0} @@ -1076,12 +1383,22 @@ packages: typescript: optional: true + '@typescript-eslint/utils@6.21.0': + resolution: {integrity: sha512-NfWVaC8HP9T8cbKQxHcsJBY5YE1O33+jpMwN45qzWWaPDZgLIbo12toGMWnmhvCpd3sIxkpDw3Wv1B3dYrbDQQ==} + engines: {node: ^16.0.0 || >=18.0.0} + peerDependencies: + eslint: ^7.0.0 || ^8.0.0 + '@typescript-eslint/utils@7.18.0': resolution: {integrity: sha512-kK0/rNa2j74XuHVcoCZxdFBMF+aq/vH83CXAOHieC+2Gis4mF8jJXT5eAfyD3K0sAxtPuwxaIOIOvhwzVDt/kw==} engines: {node: ^18.18.0 || >=20.0.0} peerDependencies: eslint: ^8.56.0 + '@typescript-eslint/visitor-keys@6.21.0': + resolution: {integrity: sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A==} + engines: {node: ^16.0.0 || >=18.0.0} + '@typescript-eslint/visitor-keys@7.18.0': resolution: {integrity: sha512-cDF0/Gf81QpY3xYyJKDV14Zwdmid5+uuENhjH2EqFaF0ni+yAyq/LzMaIJdhNJXZI7uLzwIlA+V7oWoyn6Curg==} engines: {node: ^18.18.0 || >=20.0.0} @@ -1095,6 +1412,21 @@ packages: peerDependencies: vite: ^4.2.0 || ^5.0.0 + '@vue/compiler-core@3.4.19': + resolution: {integrity: sha512-gj81785z0JNzRcU0Mq98E56e4ltO1yf8k5PQ+tV/7YHnbZkrM0fyFyuttnN8ngJZjbpofWE/m4qjKBiLl8Ju4w==} + + '@vue/compiler-dom@3.4.19': + resolution: {integrity: sha512-vm6+cogWrshjqEHTzIDCp72DKtea8Ry/QVpQRYoyTIg9k7QZDX6D8+HGURjtmatfgM8xgCFtJJaOlCaRYRK3QA==} + + '@vue/compiler-sfc@3.4.19': + resolution: {integrity: sha512-LQ3U4SN0DlvV0xhr1lUsgLCYlwQfUfetyPxkKYu7dkfvx7g3ojrGAkw0AERLOKYXuAGnqFsEuytkdcComei3Yg==} + + '@vue/compiler-ssr@3.4.19': + resolution: {integrity: sha512-P0PLKC4+u4OMJ8sinba/5Z/iDT84uMRRlrWzadgLA69opCpI1gG4N55qDSC+dedwq2fJtzmGald05LWR5TFfLw==} + + '@vue/shared@3.4.19': + resolution: {integrity: sha512-/KliRRHMF6LoiThEy+4c1Z4KB/gbPrGjWwJR+crg2otgrf/egKzRaCPvJ51S5oetgsgXLfc4Rm5ZgrKHZrtMSw==} + '@webassemblyjs/ast@1.12.1': resolution: {integrity: sha512-EKfMUOPRRUTy5UII4qJDGPpqfwjOmZ5jeGFwid9mnoqIFK+e0vqoi1qH56JpmZSzEL53jKnNzScdmftJyG5xWg==} @@ -1358,6 +1690,16 @@ packages: resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} engines: {node: '>=8'} + browserslist@4.23.0: + resolution: {integrity: sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==} + engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} + hasBin: true + + browserslist@4.23.3: + resolution: {integrity: sha512-btwCFJVjI4YWDNfau8RhZ+B1Q/VLoUITrm3RlP6y1tYGWIOa+InuYiRGXUBXo8nA1qKmHMyLB/iVQg5TT4eFoA==} + engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} + hasBin: true + browserslist@4.24.2: resolution: {integrity: sha512-ZIc+Q62revdMcqC6aChtW4jz3My3klmCO1fEmINZY/8J3EpBg5/A/D0AKmBveUh6pgoeycoMkVMko84tuYS+Gg==} engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} @@ -1380,6 +1722,9 @@ packages: buffer@5.7.1: resolution: {integrity: sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==} + bundle-n-require@1.1.1: + resolution: {integrity: sha512-EB2wFjXF106LQLe/CYnKCMCdLeTW47AtcEtUfiqAOgr2a08k0+YgRklur2aLfEYHlhz6baMskZ8L2U92Hh0vyA==} + busboy@1.6.0: resolution: {integrity: sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==} engines: {node: '>=10.16.0'} @@ -1388,6 +1733,10 @@ packages: resolution: {integrity: sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==} engines: {node: '>= 0.8'} + cac@6.7.14: + resolution: {integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==} + engines: {node: '>=8'} + call-bind@1.0.7: resolution: {integrity: sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==} engines: {node: '>= 0.4'} @@ -1404,6 +1753,9 @@ packages: resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==} engines: {node: '>=10'} + caniuse-api@3.0.0: + resolution: {integrity: sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==} + caniuse-lite@1.0.30001677: resolution: {integrity: sha512-fmfjsOlJUpMWu+mAAtZZZHz7UEwsUxIIvu1TJfO1HqFQvB/B+ii0xr9B5HpbZY/mC4XZ8SvjHJqtAY6pDPQEog==} @@ -1469,6 +1821,9 @@ packages: resolution: {integrity: sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==} engines: {iojs: '>= 1.0.0', node: '>= 0.12.0'} + code-block-writer@12.0.0: + resolution: {integrity: sha512-q4dMFMlXtKR3XNBHyMHt/3pwYNA69EDk00lloMOaaUMKPUXBw6lpXtbu3MMVG6/uOihGnRDOlkyqsONEUj60+w==} + collect-v8-coverage@1.0.2: resolution: {integrity: sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q==} @@ -1504,6 +1859,9 @@ packages: resolution: {integrity: sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==} engines: {'0': node >= 0.8} + confbox@0.1.8: + resolution: {integrity: sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w==} + confusing-browser-globals@1.0.11: resolution: {integrity: sha512-JsPKdmh8ZkmnHxDk55FZ1TqVLvEQTvoByJZRN9jzI0UjxK/QgAmsphz7PGtqgPieQZ/CQcHWXCR7ATDNhGe+YA==} @@ -1563,6 +1921,21 @@ packages: resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==} engines: {node: '>= 8'} + crosspath@2.0.0: + resolution: {integrity: sha512-ju88BYCQ2uvjO2bR+SsgLSTwTSctU+6Vp2ePbKPgSCZyy4MWZxYsT738DlKVRE5utUjobjPRm1MkTYKJxCmpTA==} + engines: {node: '>=14.9.0'} + + cssesc@3.0.0: + resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==} + engines: {node: '>=4'} + hasBin: true + + cssnano-utils@5.0.0: + resolution: {integrity: sha512-Uij0Xdxc24L6SirFr25MlwC2rCFX6scyUmuKpzI+JQ7cyqDEwD42fJ0xfB3yLfOnRDU5LKGgjQ9FA6LYh76GWQ==} + engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} + peerDependencies: + postcss: ^8.4.31 + csstype@3.1.3: resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==} @@ -1644,6 +2017,11 @@ packages: resolution: {integrity: sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==} engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16} + detect-libc@1.0.3: + resolution: {integrity: sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==} + engines: {node: '>=0.10'} + hasBin: true + detect-newline@3.1.0: resolution: {integrity: sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==} engines: {node: '>=8'} @@ -1718,6 +2096,10 @@ packages: resolution: {integrity: sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg==} engines: {node: '>=10.13.0'} + entities@4.5.0: + resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==} + engines: {node: '>=0.12'} + error-ex@1.3.2: resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==} @@ -1755,11 +2137,20 @@ packages: resolution: {integrity: sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==} engines: {node: '>= 0.4'} + esbuild@0.20.2: + resolution: {integrity: sha512-WdOOppmUNU+IbZ0PaDiTst80zjnrOkyJNHoKupIcVyU8Lvla3Ugx94VzkQ32Ijqd7UhHJy75gNWDMUekcrSJ6g==} + engines: {node: '>=12'} + hasBin: true + esbuild@0.21.5: resolution: {integrity: sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==} engines: {node: '>=12'} hasBin: true + escalade@3.1.2: + resolution: {integrity: sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==} + engines: {node: '>=6'} + escalade@3.2.0: resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==} engines: {node: '>=6'} @@ -1936,6 +2327,9 @@ packages: resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} engines: {node: '>=4.0'} + estree-walker@2.0.2: + resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==} + esutils@2.0.3: resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} engines: {node: '>=0.10.0'} @@ -2001,9 +2395,20 @@ packages: resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==} engines: {node: ^10.12.0 || >=12.0.0} + file-size@1.0.0: + resolution: {integrity: sha512-tLIdonWTpABkU6Axg2yGChYdrOsy4V8xcm0IcyAP8fSsu6jiXLm5pgs083e4sq5fzNRZuAYolUbZyYmPvCKfwQ==} + filelist@1.0.4: resolution: {integrity: sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q==} + filesize@10.1.2: + resolution: {integrity: sha512-Dx770ai81ohflojxhU+oG+Z2QGvKdYxgEr9OSA8UVrqhwNHjfH9A8f5NKfg83fEH8ZFA5N5llJo5T3PIoZ4CRA==} + engines: {node: '>= 10.4.0'} + + filesize@10.1.6: + resolution: {integrity: sha512-sJslQKU2uM33qH5nqewAwVB2QgR6w1aMNsYUp3aN5rMRyXEwJGmZvaWzeJFNTOXWlHQyBFCWrdj3fV/fsTOX8w==} + engines: {node: '>= 10.4.0'} + fill-range@7.1.1: resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} engines: {node: '>=8'} @@ -2020,6 +2425,9 @@ packages: resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} engines: {node: '>=10'} + find-yarn-workspace-root2@1.2.16: + resolution: {integrity: sha512-hr6hb1w8ePMpPVUK39S4RlwJzi+xPLuVuG8XlwXU3KD5Yn3qgBWVfy3AzNlDhWvE1EORCE65/Qm26rFQt3VLVA==} + flat-cache@3.2.0: resolution: {integrity: sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==} engines: {node: ^10.12.0 || >=12.0.0} @@ -2060,6 +2468,10 @@ packages: resolution: {integrity: sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==} engines: {node: '>=12'} + fs-extra@11.2.0: + resolution: {integrity: sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw==} + engines: {node: '>=14.14'} + fs-monkey@1.0.6: resolution: {integrity: sha512-b1FMfwetIKymC0eioW7mTywihSQE4oLzQn1dB6rZB5fx/3NpNEdAWeCSMB+60/AeT0TCXsxzAlcYVEFCTAksWg==} @@ -2190,6 +2602,9 @@ packages: resolution: {integrity: sha512-qlspKUK7IlSQv2o+5I7yhUd7TxlOG2Vr5LTa3ve2XSNVKAL/n/u/7KLvKmFNimomDIKvZFXWHv0T12mv7rT8Aw==} engines: {node: '>=8'} + hookable@5.5.3: + resolution: {integrity: sha512-Yc+BQe8SvoXH1643Qez1zqLRmbA5rCL+sSmk6TVos0LWVfNIB7PGncdlId77WzLGSIB5KaWgTaNTs2lNVEI6VQ==} + html-escaper@2.0.2: resolution: {integrity: sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==} @@ -2379,6 +2794,10 @@ packages: resolution: {integrity: sha512-LvIm3/KWzS9oRFHugab7d+M/GcBXuXX5xZkzPmN+NxihdQlZUQ4dWuSV1xR/sq6upL1TJEDrfBgRepHFdBtSNQ==} engines: {node: '>= 0.4'} + is-what@4.1.16: + resolution: {integrity: sha512-ZhMwEosbFJkA0YhFnNDgTM4ZxDRsS6HqTo7qsZM08fehyRYIYa0yHu5R6mgo1n/8MgaPBXiPimPD77baVFYg+A==} + engines: {node: '>=12.13'} + isarray@1.0.0: resolution: {integrity: sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==} @@ -2428,6 +2847,9 @@ packages: engines: {node: '>=10'} hasBin: true + javascript-stringify@2.1.0: + resolution: {integrity: sha512-JVAfqNPTvNq3sB/VHQJAFxN/sPgKnsKrCwyRt15zwNCdrMMJDdcEOdubuy+DuJYYdm0ox1J4uzEuYKkN+9yhVg==} + jest-changed-files@29.7.0: resolution: {integrity: sha512-fEArFiwf1BpQ+4bXSprcDc3/x4HSzL4al2tozwVpDFpsxALjLYdyiIK4e5Vz66GQJIbXJ82+35PtysofptNX2w==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} @@ -2625,6 +3047,10 @@ packages: resolution: {integrity: sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==} engines: {node: '>=6'} + kleur@4.1.5: + resolution: {integrity: sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==} + engines: {node: '>=6'} + language-subtag-registry@0.3.23: resolution: {integrity: sha512-0K65Lea881pHotoGEa5gDlMxt3pctLi2RplBb7Ezh4rRdLEOtgi7n4EwK9lamnUCkKBqaeKRVebTq6BAxSkpXQ==} @@ -2640,9 +3066,129 @@ packages: resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} engines: {node: '>= 0.8.0'} + lightningcss-darwin-arm64@1.23.0: + resolution: {integrity: sha512-kl4Pk3Q2lnE6AJ7Qaij47KNEfY2/UXRZBT/zqGA24B8qwkgllr/j7rclKOf1axcslNXvvUdztjo4Xqh39Yq1aA==} + engines: {node: '>= 12.0.0'} + cpu: [arm64] + os: [darwin] + + lightningcss-darwin-arm64@1.25.1: + resolution: {integrity: sha512-G4Dcvv85bs5NLENcu/s1f7ehzE3D5ThnlWSDwE190tWXRQCQaqwcuHe+MGSVI/slm0XrxnaayXY+cNl3cSricw==} + engines: {node: '>= 12.0.0'} + cpu: [arm64] + os: [darwin] + + lightningcss-darwin-x64@1.23.0: + resolution: {integrity: sha512-KeRFCNoYfDdcolcFXvokVw+PXCapd2yHS1Diko1z1BhRz/nQuD5XyZmxjWdhmhN/zj5sH8YvWsp0/lPLVzqKpg==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [darwin] + + lightningcss-darwin-x64@1.25.1: + resolution: {integrity: sha512-dYWuCzzfqRueDSmto6YU5SoGHvZTMU1Em9xvhcdROpmtOQLorurUZz8+xFxZ51lCO2LnYbfdjZ/gCqWEkwixNg==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [darwin] + + lightningcss-freebsd-x64@1.23.0: + resolution: {integrity: sha512-xhnhf0bWPuZxcqknvMDRFFo2TInrmQRWZGB0f6YoAsZX8Y+epfjHeeOIGCfAmgF0DgZxHwYc8mIR5tQU9/+ROA==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [freebsd] + + lightningcss-freebsd-x64@1.25.1: + resolution: {integrity: sha512-hXoy2s9A3KVNAIoKz+Fp6bNeY+h9c3tkcx1J3+pS48CqAt+5bI/R/YY4hxGL57fWAIquRjGKW50arltD6iRt/w==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [freebsd] + + lightningcss-linux-arm-gnueabihf@1.23.0: + resolution: {integrity: sha512-fBamf/bULvmWft9uuX+bZske236pUZEoUlaHNBjnueaCTJ/xd8eXgb0cEc7S5o0Nn6kxlauMBnqJpF70Bgq3zg==} + engines: {node: '>= 12.0.0'} + cpu: [arm] + os: [linux] + + lightningcss-linux-arm-gnueabihf@1.25.1: + resolution: {integrity: sha512-tWyMgHFlHlp1e5iW3EpqvH5MvsgoN7ZkylBbG2R2LWxnvH3FuWCJOhtGcYx9Ks0Kv0eZOBud789odkYLhyf1ng==} + engines: {node: '>= 12.0.0'} + cpu: [arm] + os: [linux] + + lightningcss-linux-arm64-gnu@1.23.0: + resolution: {integrity: sha512-RS7sY77yVLOmZD6xW2uEHByYHhQi5JYWmgVumYY85BfNoVI3DupXSlzbw+b45A9NnVKq45+oXkiN6ouMMtTwfg==} + engines: {node: '>= 12.0.0'} + cpu: [arm64] + os: [linux] + + lightningcss-linux-arm64-gnu@1.25.1: + resolution: {integrity: sha512-Xjxsx286OT9/XSnVLIsFEDyDipqe4BcLeB4pXQ/FEA5+2uWCCuAEarUNQumRucnj7k6ftkAHUEph5r821KBccQ==} + engines: {node: '>= 12.0.0'} + cpu: [arm64] + os: [linux] + + lightningcss-linux-arm64-musl@1.23.0: + resolution: {integrity: sha512-cU00LGb6GUXCwof6ACgSMKo3q7XYbsyTj0WsKHLi1nw7pV0NCq8nFTn6ZRBYLoKiV8t+jWl0Hv8KkgymmK5L5g==} + engines: {node: '>= 12.0.0'} + cpu: [arm64] + os: [linux] + + lightningcss-linux-arm64-musl@1.25.1: + resolution: {integrity: sha512-IhxVFJoTW8wq6yLvxdPvyHv4NjzcpN1B7gjxrY3uaykQNXPHNIpChLB52+wfH+yS58zm1PL4LemUp8u9Cfp6Bw==} + engines: {node: '>= 12.0.0'} + cpu: [arm64] + os: [linux] + + lightningcss-linux-x64-gnu@1.23.0: + resolution: {integrity: sha512-q4jdx5+5NfB0/qMbXbOmuC6oo7caPnFghJbIAV90cXZqgV8Am3miZhC4p+sQVdacqxfd+3nrle4C8icR3p1AYw==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [linux] + + lightningcss-linux-x64-gnu@1.25.1: + resolution: {integrity: sha512-RXIaru79KrREPEd6WLXfKfIp4QzoppZvD3x7vuTKkDA64PwTzKJ2jaC43RZHRt8BmyIkRRlmywNhTRMbmkPYpA==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [linux] + + lightningcss-linux-x64-musl@1.23.0: + resolution: {integrity: sha512-G9Ri3qpmF4qef2CV/80dADHKXRAQeQXpQTLx7AiQrBYQHqBjB75oxqj06FCIe5g4hNCqLPnM9fsO4CyiT1sFSQ==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [linux] + + lightningcss-linux-x64-musl@1.25.1: + resolution: {integrity: sha512-TdcNqFsAENEEFr8fJWg0Y4fZ/nwuqTRsIr7W7t2wmDUlA8eSXVepeeONYcb+gtTj1RaXn/WgNLB45SFkz+XBZA==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [linux] + + lightningcss-win32-x64-msvc@1.23.0: + resolution: {integrity: sha512-1rcBDJLU+obPPJM6qR5fgBUiCdZwZLafZM5f9kwjFLkb/UBNIzmae39uCSmh71nzPCTXZqHbvwu23OWnWEz+eg==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [win32] + + lightningcss-win32-x64-msvc@1.25.1: + resolution: {integrity: sha512-9KZZkmmy9oGDSrnyHuxP6iMhbsgChUiu/NSgOx+U1I/wTngBStDf2i2aGRCHvFqj19HqqBEI4WuGVQBa2V6e0A==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [win32] + + lightningcss@1.23.0: + resolution: {integrity: sha512-SEArWKMHhqn/0QzOtclIwH5pXIYQOUEkF8DgICd/105O+GCgd7jxjNod/QPnBCSWvpRHQBGVz5fQ9uScby03zA==} + engines: {node: '>= 12.0.0'} + + lightningcss@1.25.1: + resolution: {integrity: sha512-V0RMVZzK1+rCHpymRv4URK2lNhIRyO8g7U7zOFwVAhJuat74HtkjIQpQRKNCwFEYkRGpafOpmXXLoaoBcyVtBg==} + engines: {node: '>= 12.0.0'} + lines-and-columns@1.2.4: resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} + load-yaml-file@0.2.0: + resolution: {integrity: sha512-OfCBkGEw4nN6JLtgRidPX6QxjBQGQf72q3si2uvqyFEMbycSFFHwAZeXx6cJgFM9wmLrf9zBwCP3Ivqa+LLZPw==} + engines: {node: '>=6'} + loader-runner@4.3.0: resolution: {integrity: sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==} engines: {node: '>=6.11.5'} @@ -2661,6 +3207,9 @@ packages: lodash.merge@4.6.2: resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} + lodash.uniq@4.5.0: + resolution: {integrity: sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==} + lodash@4.17.21: resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} @@ -2668,6 +3217,9 @@ packages: resolution: {integrity: sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==} engines: {node: '>=10'} + look-it-up@2.1.0: + resolution: {integrity: sha512-nMoGWW2HurtuJf6XAL56FWTDCWLOTSsanrgwOyaR5Y4e3zfG5N/0cU5xWZSEU3tBxhQugRbV1xL9jb+ug7yZww==} + loose-envify@1.4.0: resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==} hasBin: true @@ -2678,6 +3230,12 @@ packages: lru-cache@5.1.1: resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} + magic-string@0.30.10: + resolution: {integrity: sha512-iIRwTIf0QKV3UAnYK4PU8uiEc4SRh5jX0mwpIwETPpHdhVM4f53RSwS/vXvN1JhGX+Cs7B8qIq3d6AH49O5fAQ==} + + magic-string@0.30.12: + resolution: {integrity: sha512-Ea8I3sQMVXr8JhN4z+H/d8zwo+tYDgHE9+5G4Wnrwhs0gaK9fXTKx0Tw5Xwsd/bCPTTZNRAdpyzvoeORe9LYpw==} + magic-string@0.30.8: resolution: {integrity: sha512-ISQTe55T2ao7XtlAStud6qwYPZjE4GK1S/BeVPus4jrq6JuOnQ00YKQC581RWhR122W7msZV263KzVeLoqidyQ==} engines: {node: '>=12'} @@ -2703,6 +3261,10 @@ packages: memory-pager@1.5.0: resolution: {integrity: sha512-ZS4Bp4r/Zoeq6+NLJpP+0Zzm0pR8whtGPf1XExKLJBAczGMnSi3It14OiNCStjQjM6NU1okjQGSxgEZN8eBYKg==} + merge-anything@5.1.7: + resolution: {integrity: sha512-eRtbOb1N5iyH0tkQDAoQ4Ipsp/5qSR79Dzrz8hEPxRX10RWWR/iQXdoKmBSRCThY1Fh5EhISDtpSc93fpxUniQ==} + engines: {node: '>=12.13'} + merge-descriptors@1.0.3: resolution: {integrity: sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==} @@ -2717,6 +3279,9 @@ packages: resolution: {integrity: sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==} engines: {node: '>= 0.6'} + microdiff@1.3.2: + resolution: {integrity: sha512-pKy60S2febliZIbwdfEQKTtL5bLNxOyiRRmD400gueYl9XcHyNGxzHSlJWn9IMHwYXT0yohPYL08+bGozVk8cQ==} + micromatch@4.0.8: resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==} engines: {node: '>=8.6'} @@ -2750,6 +3315,10 @@ packages: resolution: {integrity: sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==} engines: {node: '>=10'} + minimatch@9.0.3: + resolution: {integrity: sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==} + engines: {node: '>=16 || 14 >=14.17'} + minimatch@9.0.5: resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==} engines: {node: '>=16 || 14 >=14.17'} @@ -2765,6 +3334,14 @@ packages: resolution: {integrity: sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==} hasBin: true + mkdirp@3.0.1: + resolution: {integrity: sha512-+NsyUUAZDmo6YVHzL/stxSu3t9YS1iljliy3BSDrXJ/dkn1KYdmtZODGGjLcc9XLgVVpH4KshHB8XmZgMhaBXg==} + engines: {node: '>=10'} + hasBin: true + + mlly@1.7.2: + resolution: {integrity: sha512-tN3dvVHYVz4DhSXinXIk7u9syPYaJvio118uomkovAtWBT+RdbP6Lfh/5Lvo519YMmwBafwlh20IPTXIStscpA==} + mongodb-connection-string-url@3.0.1: resolution: {integrity: sha512-XqMGwRX0Lgn05TDB4PyG2h2kKO/FfWJyCzYQbIhXUxz7ETt0I/FqHjUeqj37irJ+Dl1ZtU82uYyj14u2XsZKfg==} @@ -2845,6 +3422,10 @@ packages: node-emoji@1.11.0: resolution: {integrity: sha512-wo2DpQkQp7Sjm2A0cq+sN7EHKO6Sl0ctXeBdFZrL9T9+UywORbufTcTZxom8YqpLQt/FqNMUkOpkZrJVYSKD3A==} + node-eval@2.0.0: + resolution: {integrity: sha512-Ap+L9HznXAVeJj3TJ1op6M6bg5xtTq8L5CU/PJxtkhea/DrIxdTknGKIECKd/v/Lgql95iuMAYvIzBNd0pmcMg==} + engines: {node: '>= 4'} + node-fetch@2.7.0: resolution: {integrity: sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==} engines: {node: 4.x || >=6.0.0} @@ -2884,6 +3465,10 @@ packages: resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==} engines: {node: '>= 0.4'} + object-path@0.11.8: + resolution: {integrity: sha512-YJjNZrlXJFM42wTBn6zgOJVar9KFJvzx6sTWDte8sWZF//cnjl0BxHNpfZx+ZffXX63A9q0b1zsFiBX4g4X5KA==} + engines: {node: '>= 10.12.0'} + object.assign@4.1.5: resolution: {integrity: sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==} engines: {node: '>= 0.4'} @@ -2927,6 +3512,9 @@ packages: resolution: {integrity: sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==} engines: {node: '>=0.10.0'} + outdent@0.8.0: + resolution: {integrity: sha512-KiOAIsdpUTcAXuykya5fnVVT+/5uS0Q1mrkRHcF89tpieSmY33O/tmc54CqwA+bfhbtEfZUNLHaPUiB9X3jt1A==} + p-limit@2.3.0: resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==} engines: {node: '>=6'} @@ -2950,6 +3538,9 @@ packages: package-json-from-dist@1.0.1: resolution: {integrity: sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==} + package-manager-detector@0.1.0: + resolution: {integrity: sha512-qRwvZgEE7geMY6xPChI3T0qrM0PL4s/AKiLnNVjhg3GdN2/fUUSrpGA5Z8mejMXauT1BS6RJIgWvSGAdqg8NnQ==} + parent-module@1.0.1: resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} engines: {node: '>=6'} @@ -2962,6 +3553,9 @@ packages: resolution: {integrity: sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==} engines: {node: '>= 0.8'} + path-browserify@1.0.1: + resolution: {integrity: sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==} + path-exists@4.0.0: resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} engines: {node: '>=8'} @@ -2991,6 +3585,12 @@ packages: resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} engines: {node: '>=8'} + pathe@1.1.2: + resolution: {integrity: sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==} + + perfect-debounce@1.0.0: + resolution: {integrity: sha512-xCy9V055GLEqoFaHoC1SoLIaLmWctgCUaBaWxDZ7/Zx4CTyX7cJQLJOok/orfjZAh9kEYpjJa4d0KcJmCbctZA==} + picocolors@1.1.1: resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==} @@ -3002,6 +3602,10 @@ packages: resolution: {integrity: sha512-xUXwsxNjwTQ8K3GnT4pCJm+xq3RUPQbmkYJTP5aFIfNIvbcc/4MUxgBaaRSZJ6yGJZiGSyYlM6MzwTsRk8SYCg==} engines: {node: '>=12'} + pify@4.0.1: + resolution: {integrity: sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==} + engines: {node: '>=6'} + pirates@4.0.6: resolution: {integrity: sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==} engines: {node: '>= 6'} @@ -3010,6 +3614,12 @@ packages: resolution: {integrity: sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==} engines: {node: '>=8'} + pkg-types@1.0.3: + resolution: {integrity: sha512-nN7pYi0AQqJnoLPC9eHFQ8AcyaixBUOwvqc5TDnIKCMEE6I0y8P7OKA7fPexsXGCGxQDl/cmrLAp26LhcwxZ4A==} + + pkg-types@1.2.1: + resolution: {integrity: sha512-sQoqa8alT3nHjGuTjuKgOnvjo4cljkufdtLMnO2LBP/wRwuDlo1tkaEdMxCRhyGRPacv/ztlZgDPm2b7FAmEvw==} + pluralize@8.0.0: resolution: {integrity: sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==} engines: {node: '>=4'} @@ -3018,10 +3628,83 @@ packages: resolution: {integrity: sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==} engines: {node: '>= 0.4'} + postcss-discard-duplicates@7.0.0: + resolution: {integrity: sha512-bAnSuBop5LpAIUmmOSsuvtKAAKREB6BBIYStWUTGq8oG5q9fClDMMuY8i4UPI/cEcDx2TN+7PMnXYIId20UVDw==} + engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} + peerDependencies: + postcss: ^8.4.31 + + postcss-discard-duplicates@7.0.1: + resolution: {integrity: sha512-oZA+v8Jkpu1ct/xbbrntHRsfLGuzoP+cpt0nJe5ED2FQF8n8bJtn7Bo28jSmBYwqgqnqkuSXJfSUEE7if4nClQ==} + engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} + peerDependencies: + postcss: ^8.4.31 + + postcss-discard-empty@7.0.0: + resolution: {integrity: sha512-e+QzoReTZ8IAwhnSdp/++7gBZ/F+nBq9y6PomfwORfP7q9nBpK5AMP64kOt0bA+lShBFbBDcgpJ3X4etHg4lzA==} + engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} + peerDependencies: + postcss: ^8.4.31 + + postcss-merge-rules@7.0.0: + resolution: {integrity: sha512-Zty3VlOsD6VSjBMu6PiHCVpLegtBT/qtZRVBcSeyEZ6q1iU5qTYT0WtEoLRV+YubZZguS5/ycfP+NRiKfjv6aw==} + engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} + peerDependencies: + postcss: ^8.4.31 + + postcss-merge-rules@7.0.4: + resolution: {integrity: sha512-ZsaamiMVu7uBYsIdGtKJ64PkcQt6Pcpep/uO90EpLS3dxJi6OXamIobTYcImyXGoW0Wpugh7DSD3XzxZS9JCPg==} + engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} + peerDependencies: + postcss: ^8.4.31 + + postcss-minify-selectors@7.0.0: + resolution: {integrity: sha512-f00CExZhD6lNw2vTZbcnmfxVgaVKzUw6IRsIFX3JTT8GdsoABc1WnhhGwL1i8YPJ3sSWw39fv7XPtvLb+3Uitw==} + engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} + peerDependencies: + postcss: ^8.4.31 + + postcss-minify-selectors@7.0.4: + resolution: {integrity: sha512-JG55VADcNb4xFCf75hXkzc1rNeURhlo7ugf6JjiiKRfMsKlDzN9CXHZDyiG6x/zGchpjQS+UAgb1d4nqXqOpmA==} + engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} + peerDependencies: + postcss: ^8.4.31 + + postcss-nested@6.0.1: + resolution: {integrity: sha512-mEp4xPMi5bSWiMbsgoPfcP74lsWLHkQbZc3sY+jWYd65CUwXrUaTp0fmNpa01ZcETKlIgUdFN/MpS2xZtqL9dQ==} + engines: {node: '>=12.0'} + peerDependencies: + postcss: ^8.2.14 + + postcss-normalize-whitespace@7.0.0: + resolution: {integrity: sha512-37/toN4wwZErqohedXYqWgvcHUGlT8O/m2jVkAfAe9Bd4MzRqlBmXrJRePH0e9Wgnz2X7KymTgTOaaFizQe3AQ==} + engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} + peerDependencies: + postcss: ^8.4.31 + + postcss-selector-parser@6.0.16: + resolution: {integrity: sha512-A0RVJrX+IUkVZbW3ClroRWurercFhieevHB38sr2+l9eUClMqome3LmEmnhlNy+5Mr2EYN6B2Kaw9wYdd+VHiw==} + engines: {node: '>=4'} + + postcss-selector-parser@6.1.2: + resolution: {integrity: sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==} + engines: {node: '>=4'} + + postcss-value-parser@4.2.0: + resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==} + + postcss@8.4.38: + resolution: {integrity: sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==} + engines: {node: ^10 || ^12 || >=14} + postcss@8.4.47: resolution: {integrity: sha512-56rxCq7G/XfB4EkXq9Egn5GCqugWvDFjafDOThIdMBsI15iqPqR5r15TfSr1YPYeEI19YeaXMCbY6u88Y76GLQ==} engines: {node: ^10 || ^12 || >=14} + preferred-pm@3.1.2: + resolution: {integrity: sha512-nk7dKrcW8hfCZ4H6klWcdRknBOXWzNQByJ0oJyX97BOupsYD+FzLS4hflgEu/uPUEHZCuRfMxzCBsuWd7OzT8Q==} + engines: {node: '>=10'} + prelude-ls@1.2.1: resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} engines: {node: '>= 0.8.0'} @@ -3030,6 +3713,11 @@ packages: resolution: {integrity: sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==} engines: {node: '>=6.0.0'} + prettier@3.2.5: + resolution: {integrity: sha512-3/GWa9aOC0YeD7LUfvOG2NiDyhOWRvt1k+rcKhOuYnMY24iiCphgneUfJDyFXd6rZCAnuLBv6UeAULtrhT/F4A==} + engines: {node: '>=14'} + hasBin: true + prettier@3.3.3: resolution: {integrity: sha512-i2tDNA0O5IrMO757lfrdQZCc2jPNDVntV0m/+4whiDfWaTKfMNgR7Qz0NAeGz/nRqF4m5/6CLzbP4/liHt12Ew==} engines: {node: '>=14'} @@ -3488,6 +4176,16 @@ packages: peerDependencies: typescript: '>=4.2.0' + ts-evaluator@1.2.0: + resolution: {integrity: sha512-ncSGek1p92bj2ifB7s9UBgryHCkU9vwC5d+Lplt12gT9DH+e41X8dMoHRQjIMeAvyG7j9dEnuHmwgOtuRIQL+Q==} + engines: {node: '>=14.19.0'} + peerDependencies: + jsdom: '>=14.x || >=15.x || >=16.x || >=17.x || >=18.x || >=19.x || >=20.x || >=21.x || >=22.x' + typescript: '>=3.2.x || >= 4.x || >= 5.x' + peerDependenciesMeta: + jsdom: + optional: true + ts-jest@29.2.5: resolution: {integrity: sha512-KD8zB2aAZrcKIdGk4OwpJggeLcH1FgrICqDSROWqlnJXGCXK4Mn6FcdK2B6670Xr73lHMG1kHw8R87A0ecZ+vA==} engines: {node: ^14.15.0 || ^16.10.0 || ^18.0.0 || >=20.0.0} @@ -3519,6 +4217,9 @@ packages: typescript: '*' webpack: ^5.0.0 + ts-morph@21.0.1: + resolution: {integrity: sha512-dbDtVdEAncKctzrVZ+Nr7kHpHkv+0JDJb2MjjpBaj8bFeCkePU9rHfMklmhuLFnpeq/EJZk2IhStY6NzqgjOkg==} + ts-node@10.9.2: resolution: {integrity: sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==} hasBin: true @@ -3533,6 +4234,19 @@ packages: '@swc/wasm': optional: true + ts-pattern@5.0.8: + resolution: {integrity: sha512-aafbuAQOTEeWmA7wtcL94w6I89EgLD7F+IlWkr596wYxeb0oveWDO5dQpv85YP0CGbxXT/qXBIeV6IYLcoZ2uA==} + + tsconfck@3.0.2: + resolution: {integrity: sha512-6lWtFjwuhS3XI4HsX4Zg0izOI3FU/AI9EGVlPEUMDIhvLPMD4wkiof0WCoDgW7qY+Dy198g4d9miAqUHWHFH6Q==} + engines: {node: ^18 || >=20} + hasBin: true + peerDependencies: + typescript: ^5.0.0 + peerDependenciesMeta: + typescript: + optional: true + tsconfck@3.1.4: resolution: {integrity: sha512-kdqWFGVJqe+KGYvlSO9NIaWn9jT1Ny4oKVzAJsKii5eoE9snzTJzL4+MMVOMn+fikWGFmKEylcXL710V/kIPJQ==} engines: {node: ^18 || >=20} @@ -3604,6 +4318,9 @@ packages: engines: {node: '>=14.17'} hasBin: true + ufo@1.5.4: + resolution: {integrity: sha512-UsUk3byDzKd04EyoZ7U4DOlxQaD14JUKQl6/P7wiX4FNvUfm3XL246n9W5AmqwW5RSFJ27NAuM0iLscAOYUiGQ==} + uid@2.0.2: resolution: {integrity: sha512-u3xV3X7uzvi5b1MncmZo3i2Aw222Zk1keqLA1YkHldREkAhAqi65wuPfe7lHx8H/Wzy+8CE7S7uS3jekIM5s8g==} engines: {node: '>=8'} @@ -3741,6 +4458,10 @@ packages: resolution: {integrity: sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==} engines: {node: '>= 0.4'} + which-pm@2.0.0: + resolution: {integrity: sha512-Lhs9Pmyph0p5n5Z3mVnN0yWcbQYUAD7rbQUiMsQxOJ3T57k7RFe35SUwWMf7dsbDZks1uOmw4AecB/JMDj3v/w==} + engines: {node: '>=8.15'} + which-typed-array@1.1.15: resolution: {integrity: sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA==} engines: {node: '>= 0.4'} @@ -4073,6 +4794,17 @@ snapshots: '@bcoe/v8-coverage@0.2.3': {} + '@clack/core@0.3.4': + dependencies: + picocolors: 1.1.1 + sisteransi: 1.0.5 + + '@clack/prompts@0.7.0': + dependencies: + '@clack/core': 0.3.4 + picocolors: 1.1.1 + sisteransi: 1.0.5 + '@colors/colors@1.5.0': optional: true @@ -4080,72 +4812,157 @@ snapshots: dependencies: '@jridgewell/trace-mapping': 0.3.9 + '@csstools/postcss-cascade-layers@4.0.6(postcss@8.4.38)': + dependencies: + '@csstools/selector-specificity': 3.1.1(postcss-selector-parser@6.1.2) + postcss: 8.4.38 + postcss-selector-parser: 6.1.2 + + '@csstools/postcss-cascade-layers@4.0.6(postcss@8.4.47)': + dependencies: + '@csstools/selector-specificity': 3.1.1(postcss-selector-parser@6.1.2) + postcss: 8.4.47 + postcss-selector-parser: 6.1.2 + + '@csstools/selector-specificity@3.1.1(postcss-selector-parser@6.1.2)': + dependencies: + postcss-selector-parser: 6.1.2 + + '@esbuild/aix-ppc64@0.20.2': + optional: true + '@esbuild/aix-ppc64@0.21.5': optional: true + '@esbuild/android-arm64@0.20.2': + optional: true + '@esbuild/android-arm64@0.21.5': optional: true + '@esbuild/android-arm@0.20.2': + optional: true + '@esbuild/android-arm@0.21.5': optional: true + '@esbuild/android-x64@0.20.2': + optional: true + '@esbuild/android-x64@0.21.5': optional: true + '@esbuild/darwin-arm64@0.20.2': + optional: true + '@esbuild/darwin-arm64@0.21.5': optional: true + '@esbuild/darwin-x64@0.20.2': + optional: true + '@esbuild/darwin-x64@0.21.5': optional: true + '@esbuild/freebsd-arm64@0.20.2': + optional: true + '@esbuild/freebsd-arm64@0.21.5': optional: true + '@esbuild/freebsd-x64@0.20.2': + optional: true + '@esbuild/freebsd-x64@0.21.5': optional: true + '@esbuild/linux-arm64@0.20.2': + optional: true + '@esbuild/linux-arm64@0.21.5': optional: true + '@esbuild/linux-arm@0.20.2': + optional: true + '@esbuild/linux-arm@0.21.5': optional: true + '@esbuild/linux-ia32@0.20.2': + optional: true + '@esbuild/linux-ia32@0.21.5': optional: true + '@esbuild/linux-loong64@0.20.2': + optional: true + '@esbuild/linux-loong64@0.21.5': optional: true + '@esbuild/linux-mips64el@0.20.2': + optional: true + '@esbuild/linux-mips64el@0.21.5': optional: true + '@esbuild/linux-ppc64@0.20.2': + optional: true + '@esbuild/linux-ppc64@0.21.5': optional: true + '@esbuild/linux-riscv64@0.20.2': + optional: true + '@esbuild/linux-riscv64@0.21.5': optional: true + '@esbuild/linux-s390x@0.20.2': + optional: true + '@esbuild/linux-s390x@0.21.5': optional: true + '@esbuild/linux-x64@0.20.2': + optional: true + '@esbuild/linux-x64@0.21.5': optional: true + '@esbuild/netbsd-x64@0.20.2': + optional: true + '@esbuild/netbsd-x64@0.21.5': optional: true + '@esbuild/openbsd-x64@0.20.2': + optional: true + '@esbuild/openbsd-x64@0.21.5': optional: true + '@esbuild/sunos-x64@0.20.2': + optional: true + '@esbuild/sunos-x64@0.21.5': optional: true + '@esbuild/win32-arm64@0.20.2': + optional: true + '@esbuild/win32-arm64@0.21.5': optional: true + '@esbuild/win32-ia32@0.20.2': + optional: true + '@esbuild/win32-ia32@0.21.5': optional: true + '@esbuild/win32-x64@0.20.2': + optional: true + '@esbuild/win32-x64@0.21.5': optional: true @@ -4524,20 +5341,350 @@ snapshots: '@nodelib/fs.stat@2.0.5': {} - '@nodelib/fs.walk@1.2.8': + '@nodelib/fs.walk@1.2.8': + dependencies: + '@nodelib/fs.scandir': 2.1.5 + fastq: 1.17.1 + + '@nolyfill/is-core-module@1.0.39': {} + + '@nuxtjs/opencollective@0.3.2': + dependencies: + chalk: 4.1.2 + consola: 2.15.3 + node-fetch: 2.7.0 + transitivePeerDependencies: + - encoding + + '@pandabox/panda-plugins@0.0.8': + dependencies: + '@pandabox/postcss-plugins': 0.0.2(postcss@8.4.47) + postcss: 8.4.47 + + '@pandabox/postcss-plugins@0.0.2(postcss@8.4.47)': + dependencies: + postcss: 8.4.47 + + '@pandabox/prettier-plugin@0.1.3(@pandacss/config@0.47.1)(@pandacss/core@0.47.1)(@pandacss/is-valid-prop@0.47.1)(@pandacss/node@0.47.1(typescript@5.3.3))(@pandacss/preset-base@0.47.1)(@pandacss/shared@0.47.1)': + dependencies: + '@pandacss/config': 0.47.1 + '@pandacss/core': 0.47.1 + '@pandacss/is-valid-prop': 0.47.1 + '@pandacss/node': 0.47.1(typescript@5.3.3) + '@pandacss/preset-base': 0.47.1 + '@pandacss/shared': 0.47.1 + micromatch: 4.0.8 + + '@pandacss/config@0.40.1': + dependencies: + '@pandacss/logger': 0.40.1 + '@pandacss/preset-base': 0.40.1 + '@pandacss/preset-panda': 0.40.1 + '@pandacss/shared': 0.40.1 + '@pandacss/types': 0.40.1 + bundle-n-require: 1.1.1 + escalade: 3.1.2 + merge-anything: 5.1.7 + microdiff: 1.3.2 + typescript: 5.3.3 + + '@pandacss/config@0.47.1': + dependencies: + '@pandacss/logger': 0.47.1 + '@pandacss/preset-base': 0.47.1 + '@pandacss/preset-panda': 0.47.1 + '@pandacss/shared': 0.47.1 + '@pandacss/types': 0.47.1 + bundle-n-require: 1.1.1 + escalade: 3.1.2 + merge-anything: 5.1.7 + microdiff: 1.3.2 + typescript: 5.3.3 + + '@pandacss/core@0.40.1': + dependencies: + '@csstools/postcss-cascade-layers': 4.0.6(postcss@8.4.38) + '@pandacss/is-valid-prop': 0.40.1 + '@pandacss/logger': 0.40.1 + '@pandacss/shared': 0.40.1 + '@pandacss/token-dictionary': 0.40.1 + '@pandacss/types': 0.40.1 + browserslist: 4.23.0 + hookable: 5.5.3 + lightningcss: 1.23.0 + lodash.merge: 4.6.2 + outdent: 0.8.0 + postcss: 8.4.38 + postcss-discard-duplicates: 7.0.0(postcss@8.4.38) + postcss-discard-empty: 7.0.0(postcss@8.4.38) + postcss-merge-rules: 7.0.0(postcss@8.4.38) + postcss-minify-selectors: 7.0.0(postcss@8.4.38) + postcss-nested: 6.0.1(postcss@8.4.38) + postcss-normalize-whitespace: 7.0.0(postcss@8.4.38) + postcss-selector-parser: 6.0.16 + ts-pattern: 5.0.8 + + '@pandacss/core@0.47.1': + dependencies: + '@csstools/postcss-cascade-layers': 4.0.6(postcss@8.4.47) + '@pandacss/is-valid-prop': 0.47.1 + '@pandacss/logger': 0.47.1 + '@pandacss/shared': 0.47.1 + '@pandacss/token-dictionary': 0.47.1 + '@pandacss/types': 0.47.1 + browserslist: 4.23.3 + hookable: 5.5.3 + lightningcss: 1.25.1 + lodash.merge: 4.6.2 + outdent: 0.8.0 + postcss: 8.4.47 + postcss-discard-duplicates: 7.0.1(postcss@8.4.47) + postcss-discard-empty: 7.0.0(postcss@8.4.47) + postcss-merge-rules: 7.0.4(postcss@8.4.47) + postcss-minify-selectors: 7.0.4(postcss@8.4.47) + postcss-nested: 6.0.1(postcss@8.4.47) + postcss-normalize-whitespace: 7.0.0(postcss@8.4.47) + postcss-selector-parser: 6.1.2 + ts-pattern: 5.0.8 + + '@pandacss/dev@0.47.1(typescript@5.3.3)': + dependencies: + '@clack/prompts': 0.7.0 + '@pandacss/config': 0.47.1 + '@pandacss/logger': 0.47.1 + '@pandacss/node': 0.47.1(typescript@5.3.3) + '@pandacss/postcss': 0.47.1(typescript@5.3.3) + '@pandacss/preset-panda': 0.47.1 + '@pandacss/shared': 0.47.1 + '@pandacss/token-dictionary': 0.47.1 + '@pandacss/types': 0.47.1 + cac: 6.7.14 + transitivePeerDependencies: + - jsdom + - typescript + + '@pandacss/eslint-plugin@0.2.0(eslint@8.57.1)(typescript@5.3.3)': + dependencies: + '@pandacss/config': 0.40.1 + '@pandacss/generator': 0.40.1 + '@pandacss/node': 0.40.1(typescript@5.3.3) + '@pandacss/shared': 0.40.1 + '@typescript-eslint/utils': 6.21.0(eslint@8.57.1)(typescript@5.3.3) + eslint: 8.57.1 + hookable: 5.5.3 + synckit: 0.9.2 + transitivePeerDependencies: + - jsdom + - supports-color + - typescript + + '@pandacss/extractor@0.40.1(typescript@5.3.3)': + dependencies: + '@pandacss/shared': 0.40.1 + ts-evaluator: 1.2.0(typescript@5.3.3) + ts-morph: 21.0.1 + transitivePeerDependencies: + - jsdom + - typescript + + '@pandacss/extractor@0.47.1(typescript@5.3.3)': + dependencies: + '@pandacss/shared': 0.47.1 + ts-evaluator: 1.2.0(typescript@5.3.3) + ts-morph: 21.0.1 + transitivePeerDependencies: + - jsdom + - typescript + + '@pandacss/generator@0.40.1': + dependencies: + '@pandacss/core': 0.40.1 + '@pandacss/is-valid-prop': 0.40.1 + '@pandacss/logger': 0.40.1 + '@pandacss/shared': 0.40.1 + '@pandacss/token-dictionary': 0.40.1 + '@pandacss/types': 0.40.1 + javascript-stringify: 2.1.0 + outdent: 0.8.0 + pluralize: 8.0.0 + postcss: 8.4.38 + ts-pattern: 5.0.8 + + '@pandacss/generator@0.47.1': + dependencies: + '@pandacss/core': 0.47.1 + '@pandacss/is-valid-prop': 0.47.1 + '@pandacss/logger': 0.47.1 + '@pandacss/shared': 0.47.1 + '@pandacss/token-dictionary': 0.47.1 + '@pandacss/types': 0.47.1 + javascript-stringify: 2.1.0 + outdent: 0.8.0 + pluralize: 8.0.0 + postcss: 8.4.47 + ts-pattern: 5.0.8 + + '@pandacss/is-valid-prop@0.40.1': {} + + '@pandacss/is-valid-prop@0.47.1': {} + + '@pandacss/logger@0.40.1': + dependencies: + '@pandacss/types': 0.40.1 + kleur: 4.1.5 + + '@pandacss/logger@0.47.1': + dependencies: + '@pandacss/types': 0.47.1 + kleur: 4.1.5 + + '@pandacss/node@0.40.1(typescript@5.3.3)': + dependencies: + '@pandacss/config': 0.40.1 + '@pandacss/core': 0.40.1 + '@pandacss/extractor': 0.40.1(typescript@5.3.3) + '@pandacss/generator': 0.40.1 + '@pandacss/logger': 0.40.1 + '@pandacss/parser': 0.40.1(typescript@5.3.3) + '@pandacss/shared': 0.40.1 + '@pandacss/token-dictionary': 0.40.1 + '@pandacss/types': 0.40.1 + browserslist: 4.23.0 + chokidar: 3.6.0 + fast-glob: 3.3.2 + file-size: 1.0.0 + filesize: 10.1.2 + fs-extra: 11.2.0 + glob-parent: 6.0.2 + is-glob: 4.0.3 + lodash.merge: 4.6.2 + look-it-up: 2.1.0 + outdent: 0.8.0 + perfect-debounce: 1.0.0 + pkg-types: 1.0.3 + pluralize: 8.0.0 + postcss: 8.4.38 + preferred-pm: 3.1.2 + prettier: 3.2.5 + ts-morph: 21.0.1 + ts-pattern: 5.0.8 + tsconfck: 3.0.2(typescript@5.3.3) + transitivePeerDependencies: + - jsdom + - typescript + + '@pandacss/node@0.47.1(typescript@5.3.3)': + dependencies: + '@pandacss/config': 0.47.1 + '@pandacss/core': 0.47.1 + '@pandacss/extractor': 0.47.1(typescript@5.3.3) + '@pandacss/generator': 0.47.1 + '@pandacss/logger': 0.47.1 + '@pandacss/parser': 0.47.1(typescript@5.3.3) + '@pandacss/shared': 0.47.1 + '@pandacss/token-dictionary': 0.47.1 + '@pandacss/types': 0.47.1 + browserslist: 4.23.3 + chokidar: 3.6.0 + fast-glob: 3.3.2 + file-size: 1.0.0 + filesize: 10.1.6 + fs-extra: 11.2.0 + glob-parent: 6.0.2 + is-glob: 4.0.3 + lodash.merge: 4.6.2 + look-it-up: 2.1.0 + outdent: 0.8.0 + package-manager-detector: 0.1.0 + perfect-debounce: 1.0.0 + pkg-types: 1.0.3 + pluralize: 8.0.0 + postcss: 8.4.47 + prettier: 3.2.5 + ts-morph: 21.0.1 + ts-pattern: 5.0.8 + tsconfck: 3.0.2(typescript@5.3.3) + transitivePeerDependencies: + - jsdom + - typescript + + '@pandacss/parser@0.40.1(typescript@5.3.3)': + dependencies: + '@pandacss/config': 0.40.1 + '@pandacss/core': 0.40.1 + '@pandacss/extractor': 0.40.1(typescript@5.3.3) + '@pandacss/logger': 0.40.1 + '@pandacss/shared': 0.40.1 + '@pandacss/types': 0.40.1 + '@vue/compiler-sfc': 3.4.19 + magic-string: 0.30.10 + ts-morph: 21.0.1 + ts-pattern: 5.0.8 + transitivePeerDependencies: + - jsdom + - typescript + + '@pandacss/parser@0.47.1(typescript@5.3.3)': + dependencies: + '@pandacss/config': 0.47.1 + '@pandacss/core': 0.47.1 + '@pandacss/extractor': 0.47.1(typescript@5.3.3) + '@pandacss/logger': 0.47.1 + '@pandacss/shared': 0.47.1 + '@pandacss/types': 0.47.1 + '@vue/compiler-sfc': 3.4.19 + magic-string: 0.30.12 + ts-morph: 21.0.1 + ts-pattern: 5.0.8 + transitivePeerDependencies: + - jsdom + - typescript + + '@pandacss/postcss@0.47.1(typescript@5.3.3)': + dependencies: + '@pandacss/node': 0.47.1(typescript@5.3.3) + postcss: 8.4.47 + transitivePeerDependencies: + - jsdom + - typescript + + '@pandacss/preset-base@0.40.1': + dependencies: + '@pandacss/types': 0.40.1 + + '@pandacss/preset-base@0.47.1': + dependencies: + '@pandacss/types': 0.47.1 + + '@pandacss/preset-panda@0.40.1': + dependencies: + '@pandacss/types': 0.40.1 + + '@pandacss/preset-panda@0.47.1': + dependencies: + '@pandacss/types': 0.47.1 + + '@pandacss/shared@0.40.1': {} + + '@pandacss/shared@0.47.1': {} + + '@pandacss/token-dictionary@0.40.1': + dependencies: + '@pandacss/logger': 0.40.1 + '@pandacss/shared': 0.40.1 + '@pandacss/types': 0.40.1 + ts-pattern: 5.0.8 + + '@pandacss/token-dictionary@0.47.1': dependencies: - '@nodelib/fs.scandir': 2.1.5 - fastq: 1.17.1 + '@pandacss/logger': 0.47.1 + '@pandacss/shared': 0.47.1 + '@pandacss/types': 0.47.1 + ts-pattern: 5.0.8 - '@nolyfill/is-core-module@1.0.39': {} + '@pandacss/types@0.40.1': {} - '@nuxtjs/opencollective@0.3.2': - dependencies: - chalk: 4.1.2 - consola: 2.15.3 - node-fetch: 2.7.0 - transitivePeerDependencies: - - encoding + '@pandacss/types@0.47.1': {} '@pkgjs/parseargs@0.11.0': optional: true @@ -4612,6 +5759,13 @@ snapshots: '@socket.io/component-emitter@3.1.2': {} + '@ts-morph/common@0.22.0': + dependencies: + fast-glob: 3.3.2 + minimatch: 9.0.5 + mkdirp: 3.0.1 + path-browserify: 1.0.1 + '@tsconfig/node10@1.0.11': {} '@tsconfig/node12@1.0.11': {} @@ -4703,6 +5857,8 @@ snapshots: '@types/mime@1.3.5': {} + '@types/node@17.0.45': {} + '@types/node@20.17.6': dependencies: undici-types: 6.19.8 @@ -4722,6 +5878,8 @@ snapshots: '@types/prop-types': 15.7.13 csstype: 3.1.3 + '@types/semver@7.5.8': {} + '@types/send@0.17.4': dependencies: '@types/mime': 1.3.5 @@ -4790,6 +5948,11 @@ snapshots: transitivePeerDependencies: - supports-color + '@typescript-eslint/scope-manager@6.21.0': + dependencies: + '@typescript-eslint/types': 6.21.0 + '@typescript-eslint/visitor-keys': 6.21.0 + '@typescript-eslint/scope-manager@7.18.0': dependencies: '@typescript-eslint/types': 7.18.0 @@ -4807,8 +5970,25 @@ snapshots: transitivePeerDependencies: - supports-color + '@typescript-eslint/types@6.21.0': {} + '@typescript-eslint/types@7.18.0': {} + '@typescript-eslint/typescript-estree@6.21.0(typescript@5.3.3)': + dependencies: + '@typescript-eslint/types': 6.21.0 + '@typescript-eslint/visitor-keys': 6.21.0 + debug: 4.3.7 + globby: 11.1.0 + is-glob: 4.0.3 + minimatch: 9.0.3 + semver: 7.6.3 + ts-api-utils: 1.4.0(typescript@5.3.3) + optionalDependencies: + typescript: 5.3.3 + transitivePeerDependencies: + - supports-color + '@typescript-eslint/typescript-estree@7.18.0(typescript@5.3.3)': dependencies: '@typescript-eslint/types': 7.18.0 @@ -4824,6 +6004,20 @@ snapshots: transitivePeerDependencies: - supports-color + '@typescript-eslint/utils@6.21.0(eslint@8.57.1)(typescript@5.3.3)': + dependencies: + '@eslint-community/eslint-utils': 4.4.1(eslint@8.57.1) + '@types/json-schema': 7.0.15 + '@types/semver': 7.5.8 + '@typescript-eslint/scope-manager': 6.21.0 + '@typescript-eslint/types': 6.21.0 + '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.3.3) + eslint: 8.57.1 + semver: 7.6.3 + transitivePeerDependencies: + - supports-color + - typescript + '@typescript-eslint/utils@7.18.0(eslint@8.57.1)(typescript@5.3.3)': dependencies: '@eslint-community/eslint-utils': 4.4.1(eslint@8.57.1) @@ -4835,6 +6029,11 @@ snapshots: - supports-color - typescript + '@typescript-eslint/visitor-keys@6.21.0': + dependencies: + '@typescript-eslint/types': 6.21.0 + eslint-visitor-keys: 3.4.3 + '@typescript-eslint/visitor-keys@7.18.0': dependencies: '@typescript-eslint/types': 7.18.0 @@ -4842,17 +6041,49 @@ snapshots: '@ungap/structured-clone@1.2.0': {} - '@vitejs/plugin-react@4.3.3(vite@5.4.10(@types/node@20.17.6)(terser@5.36.0))': + '@vitejs/plugin-react@4.3.3(vite@5.4.10(@types/node@20.17.6)(lightningcss@1.25.1)(terser@5.36.0))': dependencies: '@babel/core': 7.26.0 '@babel/plugin-transform-react-jsx-self': 7.25.9(@babel/core@7.26.0) '@babel/plugin-transform-react-jsx-source': 7.25.9(@babel/core@7.26.0) '@types/babel__core': 7.20.5 react-refresh: 0.14.2 - vite: 5.4.10(@types/node@20.17.6)(terser@5.36.0) + vite: 5.4.10(@types/node@20.17.6)(lightningcss@1.25.1)(terser@5.36.0) transitivePeerDependencies: - supports-color + '@vue/compiler-core@3.4.19': + dependencies: + '@babel/parser': 7.26.2 + '@vue/shared': 3.4.19 + entities: 4.5.0 + estree-walker: 2.0.2 + source-map-js: 1.2.1 + + '@vue/compiler-dom@3.4.19': + dependencies: + '@vue/compiler-core': 3.4.19 + '@vue/shared': 3.4.19 + + '@vue/compiler-sfc@3.4.19': + dependencies: + '@babel/parser': 7.26.2 + '@vue/compiler-core': 3.4.19 + '@vue/compiler-dom': 3.4.19 + '@vue/compiler-ssr': 3.4.19 + '@vue/shared': 3.4.19 + estree-walker: 2.0.2 + magic-string: 0.30.12 + postcss: 8.4.47 + source-map-js: 1.2.1 + + '@vue/compiler-ssr@3.4.19': + dependencies: + '@vue/compiler-dom': 3.4.19 + '@vue/shared': 3.4.19 + + '@vue/shared@3.4.19': {} + '@webassemblyjs/ast@1.12.1': dependencies: '@webassemblyjs/helper-numbers': 1.11.6 @@ -5195,6 +6426,20 @@ snapshots: dependencies: fill-range: 7.1.1 + browserslist@4.23.0: + dependencies: + caniuse-lite: 1.0.30001677 + electron-to-chromium: 1.5.50 + node-releases: 2.0.18 + update-browserslist-db: 1.1.1(browserslist@4.23.0) + + browserslist@4.23.3: + dependencies: + caniuse-lite: 1.0.30001677 + electron-to-chromium: 1.5.50 + node-releases: 2.0.18 + update-browserslist-db: 1.1.1(browserslist@4.23.3) + browserslist@4.24.2: dependencies: caniuse-lite: 1.0.30001677 @@ -5219,12 +6464,19 @@ snapshots: base64-js: 1.5.1 ieee754: 1.2.1 + bundle-n-require@1.1.1: + dependencies: + esbuild: 0.20.2 + node-eval: 2.0.0 + busboy@1.6.0: dependencies: streamsearch: 1.1.0 bytes@3.1.2: {} + cac@6.7.14: {} + call-bind@1.0.7: dependencies: es-define-property: 1.0.0 @@ -5239,6 +6491,13 @@ snapshots: camelcase@6.3.0: {} + caniuse-api@3.0.0: + dependencies: + browserslist: 4.24.2 + caniuse-lite: 1.0.30001677 + lodash.memoize: 4.1.2 + lodash.uniq: 4.5.0 + caniuse-lite@1.0.30001677: {} chalk@4.1.2: @@ -5296,6 +6555,8 @@ snapshots: co@4.6.0: {} + code-block-writer@12.0.0: {} + collect-v8-coverage@1.0.2: {} color-convert@2.0.1: @@ -5331,6 +6592,8 @@ snapshots: readable-stream: 2.3.8 typedarray: 0.0.6 + confbox@0.1.8: {} + confusing-browser-globals@1.0.11: {} consola@2.15.3: {} @@ -5390,6 +6653,20 @@ snapshots: shebang-command: 2.0.0 which: 2.0.2 + crosspath@2.0.0: + dependencies: + '@types/node': 17.0.45 + + cssesc@3.0.0: {} + + cssnano-utils@5.0.0(postcss@8.4.38): + dependencies: + postcss: 8.4.38 + + cssnano-utils@5.0.0(postcss@8.4.47): + dependencies: + postcss: 8.4.47 + csstype@3.1.3: {} damerau-levenshtein@1.0.8: {} @@ -5452,6 +6729,8 @@ snapshots: destroy@1.2.0: {} + detect-libc@1.0.3: {} + detect-newline@3.1.0: {} dezalgo@1.0.4: @@ -5531,6 +6810,8 @@ snapshots: graceful-fs: 4.2.11 tapable: 2.2.1 + entities@4.5.0: {} + error-ex@1.3.2: dependencies: is-arrayish: 0.2.1 @@ -5629,6 +6910,32 @@ snapshots: is-date-object: 1.0.5 is-symbol: 1.0.4 + esbuild@0.20.2: + optionalDependencies: + '@esbuild/aix-ppc64': 0.20.2 + '@esbuild/android-arm': 0.20.2 + '@esbuild/android-arm64': 0.20.2 + '@esbuild/android-x64': 0.20.2 + '@esbuild/darwin-arm64': 0.20.2 + '@esbuild/darwin-x64': 0.20.2 + '@esbuild/freebsd-arm64': 0.20.2 + '@esbuild/freebsd-x64': 0.20.2 + '@esbuild/linux-arm': 0.20.2 + '@esbuild/linux-arm64': 0.20.2 + '@esbuild/linux-ia32': 0.20.2 + '@esbuild/linux-loong64': 0.20.2 + '@esbuild/linux-mips64el': 0.20.2 + '@esbuild/linux-ppc64': 0.20.2 + '@esbuild/linux-riscv64': 0.20.2 + '@esbuild/linux-s390x': 0.20.2 + '@esbuild/linux-x64': 0.20.2 + '@esbuild/netbsd-x64': 0.20.2 + '@esbuild/openbsd-x64': 0.20.2 + '@esbuild/sunos-x64': 0.20.2 + '@esbuild/win32-arm64': 0.20.2 + '@esbuild/win32-ia32': 0.20.2 + '@esbuild/win32-x64': 0.20.2 + esbuild@0.21.5: optionalDependencies: '@esbuild/aix-ppc64': 0.21.5 @@ -5655,6 +6962,8 @@ snapshots: '@esbuild/win32-ia32': 0.21.5 '@esbuild/win32-x64': 0.21.5 + escalade@3.1.2: {} + escalade@3.2.0: {} escape-html@1.0.3: {} @@ -5898,6 +7207,8 @@ snapshots: estraverse@5.3.0: {} + estree-walker@2.0.2: {} + esutils@2.0.3: {} etag@1.8.1: {} @@ -6002,10 +7313,16 @@ snapshots: dependencies: flat-cache: 3.2.0 + file-size@1.0.0: {} + filelist@1.0.4: dependencies: minimatch: 5.1.6 + filesize@10.1.2: {} + + filesize@10.1.6: {} + fill-range@7.1.1: dependencies: to-regex-range: 5.0.1 @@ -6032,6 +7349,11 @@ snapshots: locate-path: 6.0.0 path-exists: 4.0.0 + find-yarn-workspace-root2@1.2.16: + dependencies: + micromatch: 4.0.8 + pkg-dir: 4.2.0 + flat-cache@3.2.0: dependencies: flatted: 3.3.1 @@ -6088,6 +7410,12 @@ snapshots: jsonfile: 6.1.0 universalify: 2.0.1 + fs-extra@11.2.0: + dependencies: + graceful-fs: 4.2.11 + jsonfile: 6.1.0 + universalify: 2.0.1 + fs-monkey@1.0.6: {} fs.realpath@1.0.0: {} @@ -6214,6 +7542,8 @@ snapshots: hexoid@2.0.0: {} + hookable@5.5.3: {} + html-escaper@2.0.2: {} http-errors@2.0.0: @@ -6409,6 +7739,8 @@ snapshots: call-bind: 1.0.7 get-intrinsic: 1.2.4 + is-what@4.1.16: {} + isarray@1.0.0: {} isarray@2.0.5: {} @@ -6479,6 +7811,8 @@ snapshots: filelist: 1.0.4 minimatch: 3.1.2 + javascript-stringify@2.1.0: {} + jest-changed-files@29.7.0: dependencies: execa: 5.1.1 @@ -6848,6 +8182,8 @@ snapshots: kleur@3.0.3: {} + kleur@4.1.5: {} + language-subtag-registry@0.3.23: {} language-tags@1.0.9: @@ -6861,8 +8197,97 @@ snapshots: prelude-ls: 1.2.1 type-check: 0.4.0 + lightningcss-darwin-arm64@1.23.0: + optional: true + + lightningcss-darwin-arm64@1.25.1: + optional: true + + lightningcss-darwin-x64@1.23.0: + optional: true + + lightningcss-darwin-x64@1.25.1: + optional: true + + lightningcss-freebsd-x64@1.23.0: + optional: true + + lightningcss-freebsd-x64@1.25.1: + optional: true + + lightningcss-linux-arm-gnueabihf@1.23.0: + optional: true + + lightningcss-linux-arm-gnueabihf@1.25.1: + optional: true + + lightningcss-linux-arm64-gnu@1.23.0: + optional: true + + lightningcss-linux-arm64-gnu@1.25.1: + optional: true + + lightningcss-linux-arm64-musl@1.23.0: + optional: true + + lightningcss-linux-arm64-musl@1.25.1: + optional: true + + lightningcss-linux-x64-gnu@1.23.0: + optional: true + + lightningcss-linux-x64-gnu@1.25.1: + optional: true + + lightningcss-linux-x64-musl@1.23.0: + optional: true + + lightningcss-linux-x64-musl@1.25.1: + optional: true + + lightningcss-win32-x64-msvc@1.23.0: + optional: true + + lightningcss-win32-x64-msvc@1.25.1: + optional: true + + lightningcss@1.23.0: + dependencies: + detect-libc: 1.0.3 + optionalDependencies: + lightningcss-darwin-arm64: 1.23.0 + lightningcss-darwin-x64: 1.23.0 + lightningcss-freebsd-x64: 1.23.0 + lightningcss-linux-arm-gnueabihf: 1.23.0 + lightningcss-linux-arm64-gnu: 1.23.0 + lightningcss-linux-arm64-musl: 1.23.0 + lightningcss-linux-x64-gnu: 1.23.0 + lightningcss-linux-x64-musl: 1.23.0 + lightningcss-win32-x64-msvc: 1.23.0 + + lightningcss@1.25.1: + dependencies: + detect-libc: 1.0.3 + optionalDependencies: + lightningcss-darwin-arm64: 1.25.1 + lightningcss-darwin-x64: 1.25.1 + lightningcss-freebsd-x64: 1.25.1 + lightningcss-linux-arm-gnueabihf: 1.25.1 + lightningcss-linux-arm64-gnu: 1.25.1 + lightningcss-linux-arm64-musl: 1.25.1 + lightningcss-linux-x64-gnu: 1.25.1 + lightningcss-linux-x64-musl: 1.25.1 + lightningcss-win32-x64-msvc: 1.25.1 + lines-and-columns@1.2.4: {} + load-yaml-file@0.2.0: + dependencies: + graceful-fs: 4.2.11 + js-yaml: 3.14.1 + pify: 4.0.1 + strip-bom: 3.0.0 + loader-runner@4.3.0: {} locate-path@5.0.0: @@ -6877,6 +8302,8 @@ snapshots: lodash.merge@4.6.2: {} + lodash.uniq@4.5.0: {} + lodash@4.17.21: {} log-symbols@4.1.0: @@ -6884,6 +8311,8 @@ snapshots: chalk: 4.1.2 is-unicode-supported: 0.1.0 + look-it-up@2.1.0: {} + loose-envify@1.4.0: dependencies: js-tokens: 4.0.0 @@ -6894,6 +8323,14 @@ snapshots: dependencies: yallist: 3.1.1 + magic-string@0.30.10: + dependencies: + '@jridgewell/sourcemap-codec': 1.5.0 + + magic-string@0.30.12: + dependencies: + '@jridgewell/sourcemap-codec': 1.5.0 + magic-string@0.30.8: dependencies: '@jridgewell/sourcemap-codec': 1.5.0 @@ -6916,6 +8353,10 @@ snapshots: memory-pager@1.5.0: {} + merge-anything@5.1.7: + dependencies: + is-what: 4.1.16 + merge-descriptors@1.0.3: {} merge-stream@2.0.0: {} @@ -6924,6 +8365,8 @@ snapshots: methods@1.1.2: {} + microdiff@1.3.2: {} + micromatch@4.0.8: dependencies: braces: 3.0.3 @@ -6949,6 +8392,10 @@ snapshots: dependencies: brace-expansion: 2.0.1 + minimatch@9.0.3: + dependencies: + brace-expansion: 2.0.1 + minimatch@9.0.5: dependencies: brace-expansion: 2.0.1 @@ -6961,6 +8408,15 @@ snapshots: dependencies: minimist: 1.2.8 + mkdirp@3.0.1: {} + + mlly@1.7.2: + dependencies: + acorn: 8.14.0 + pathe: 1.1.2 + pkg-types: 1.2.1 + ufo: 1.5.4 + mongodb-connection-string-url@3.0.1: dependencies: '@types/whatwg-url': 11.0.5 @@ -7031,6 +8487,10 @@ snapshots: dependencies: lodash: 4.17.21 + node-eval@2.0.0: + dependencies: + path-is-absolute: 1.0.1 + node-fetch@2.7.0: dependencies: whatwg-url: 5.0.0 @@ -7053,6 +8513,8 @@ snapshots: object-keys@1.1.1: {} + object-path@0.11.8: {} + object.assign@4.1.5: dependencies: call-bind: 1.0.7 @@ -7120,6 +8582,8 @@ snapshots: os-tmpdir@1.0.2: {} + outdent@0.8.0: {} + p-limit@2.3.0: dependencies: p-try: 2.2.0 @@ -7140,6 +8604,8 @@ snapshots: package-json-from-dist@1.0.1: {} + package-manager-detector@0.1.0: {} + parent-module@1.0.1: dependencies: callsites: 3.1.0 @@ -7153,6 +8619,8 @@ snapshots: parseurl@1.3.3: {} + path-browserify@1.0.1: {} + path-exists@4.0.0: {} path-is-absolute@1.0.1: {} @@ -7172,34 +8640,142 @@ snapshots: path-type@4.0.0: {} + pathe@1.1.2: {} + + perfect-debounce@1.0.0: {} + picocolors@1.1.1: {} picomatch@2.3.1: {} picomatch@4.0.1: {} + pify@4.0.1: {} + pirates@4.0.6: {} pkg-dir@4.2.0: dependencies: find-up: 4.1.0 + pkg-types@1.0.3: + dependencies: + jsonc-parser: 3.3.1 + mlly: 1.7.2 + pathe: 1.1.2 + + pkg-types@1.2.1: + dependencies: + confbox: 0.1.8 + mlly: 1.7.2 + pathe: 1.1.2 + pluralize@8.0.0: {} possible-typed-array-names@1.0.0: {} + postcss-discard-duplicates@7.0.0(postcss@8.4.38): + dependencies: + postcss: 8.4.38 + + postcss-discard-duplicates@7.0.1(postcss@8.4.47): + dependencies: + postcss: 8.4.47 + + postcss-discard-empty@7.0.0(postcss@8.4.38): + dependencies: + postcss: 8.4.38 + + postcss-discard-empty@7.0.0(postcss@8.4.47): + dependencies: + postcss: 8.4.47 + + postcss-merge-rules@7.0.0(postcss@8.4.38): + dependencies: + browserslist: 4.24.2 + caniuse-api: 3.0.0 + cssnano-utils: 5.0.0(postcss@8.4.38) + postcss: 8.4.38 + postcss-selector-parser: 6.1.2 + + postcss-merge-rules@7.0.4(postcss@8.4.47): + dependencies: + browserslist: 4.24.2 + caniuse-api: 3.0.0 + cssnano-utils: 5.0.0(postcss@8.4.47) + postcss: 8.4.47 + postcss-selector-parser: 6.1.2 + + postcss-minify-selectors@7.0.0(postcss@8.4.38): + dependencies: + postcss: 8.4.38 + postcss-selector-parser: 6.1.2 + + postcss-minify-selectors@7.0.4(postcss@8.4.47): + dependencies: + cssesc: 3.0.0 + postcss: 8.4.47 + postcss-selector-parser: 6.1.2 + + postcss-nested@6.0.1(postcss@8.4.38): + dependencies: + postcss: 8.4.38 + postcss-selector-parser: 6.1.2 + + postcss-nested@6.0.1(postcss@8.4.47): + dependencies: + postcss: 8.4.47 + postcss-selector-parser: 6.1.2 + + postcss-normalize-whitespace@7.0.0(postcss@8.4.38): + dependencies: + postcss: 8.4.38 + postcss-value-parser: 4.2.0 + + postcss-normalize-whitespace@7.0.0(postcss@8.4.47): + dependencies: + postcss: 8.4.47 + postcss-value-parser: 4.2.0 + + postcss-selector-parser@6.0.16: + dependencies: + cssesc: 3.0.0 + util-deprecate: 1.0.2 + + postcss-selector-parser@6.1.2: + dependencies: + cssesc: 3.0.0 + util-deprecate: 1.0.2 + + postcss-value-parser@4.2.0: {} + + postcss@8.4.38: + dependencies: + nanoid: 3.3.7 + picocolors: 1.1.1 + source-map-js: 1.2.1 + postcss@8.4.47: dependencies: nanoid: 3.3.7 picocolors: 1.1.1 source-map-js: 1.2.1 + preferred-pm@3.1.2: + dependencies: + find-up: 5.0.0 + find-yarn-workspace-root2: 1.2.16 + path-exists: 4.0.0 + which-pm: 2.0.0 + prelude-ls@1.2.1: {} prettier-linter-helpers@1.0.0: dependencies: fast-diff: 1.3.0 + prettier@3.2.5: {} + prettier@3.3.3: {} pretty-format@29.7.0: @@ -7747,6 +9323,13 @@ snapshots: dependencies: typescript: 5.3.3 + ts-evaluator@1.2.0(typescript@5.3.3): + dependencies: + ansi-colors: 4.1.3 + crosspath: 2.0.0 + object-path: 0.11.8 + typescript: 5.3.3 + ts-jest@29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(jest@29.7.0(@types/node@20.17.6)(ts-node@10.9.2(@types/node@20.17.6)(typescript@5.3.3)))(typescript@5.3.3): dependencies: bs-logger: 0.2.6 @@ -7776,6 +9359,11 @@ snapshots: typescript: 5.3.3 webpack: 5.94.0 + ts-morph@21.0.1: + dependencies: + '@ts-morph/common': 0.22.0 + code-block-writer: 12.0.0 + ts-node@10.9.2(@types/node@20.17.6)(typescript@5.3.3): dependencies: '@cspotcode/source-map-support': 0.8.1 @@ -7794,6 +9382,12 @@ snapshots: v8-compile-cache-lib: 3.0.1 yn: 3.1.1 + ts-pattern@5.0.8: {} + + tsconfck@3.0.2(typescript@5.3.3): + optionalDependencies: + typescript: 5.3.3 + tsconfck@3.1.4(typescript@5.3.3): optionalDependencies: typescript: 5.3.3 @@ -7872,6 +9466,8 @@ snapshots: typescript@5.3.3: {} + ufo@1.5.4: {} + uid@2.0.2: dependencies: '@lukeed/csprng': 1.1.0 @@ -7889,6 +9485,18 @@ snapshots: unpipe@1.0.0: {} + update-browserslist-db@1.1.1(browserslist@4.23.0): + dependencies: + browserslist: 4.23.0 + escalade: 3.2.0 + picocolors: 1.1.1 + + update-browserslist-db@1.1.1(browserslist@4.23.3): + dependencies: + browserslist: 4.23.3 + escalade: 3.2.0 + picocolors: 1.1.1 + update-browserslist-db@1.1.1(browserslist@4.24.2): dependencies: browserslist: 4.24.2 @@ -7913,18 +9521,18 @@ snapshots: vary@1.1.2: {} - vite-tsconfig-paths@5.1.0(typescript@5.3.3)(vite@5.4.10(@types/node@20.17.6)(terser@5.36.0)): + vite-tsconfig-paths@5.1.0(typescript@5.3.3)(vite@5.4.10(@types/node@20.17.6)(lightningcss@1.25.1)(terser@5.36.0)): dependencies: debug: 4.3.7 globrex: 0.1.2 tsconfck: 3.1.4(typescript@5.3.3) optionalDependencies: - vite: 5.4.10(@types/node@20.17.6)(terser@5.36.0) + vite: 5.4.10(@types/node@20.17.6)(lightningcss@1.25.1)(terser@5.36.0) transitivePeerDependencies: - supports-color - typescript - vite@5.4.10(@types/node@20.17.6)(terser@5.36.0): + vite@5.4.10(@types/node@20.17.6)(lightningcss@1.25.1)(terser@5.36.0): dependencies: esbuild: 0.21.5 postcss: 8.4.47 @@ -7932,6 +9540,7 @@ snapshots: optionalDependencies: '@types/node': 20.17.6 fsevents: 2.3.3 + lightningcss: 1.25.1 terser: 5.36.0 walker@1.0.8: @@ -8025,6 +9634,11 @@ snapshots: is-weakmap: 2.0.2 is-weakset: 2.0.3 + which-pm@2.0.0: + dependencies: + load-yaml-file: 0.2.0 + path-exists: 4.0.0 + which-typed-array@1.1.15: dependencies: available-typed-arrays: 1.0.7