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 + 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 (
+
+ );
+};
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