From a24f1d4638309f4a4cbe555d941a1fc66fd07bb0 Mon Sep 17 00:00:00 2001 From: BangDori <44726494+BangDori@users.noreply.github.com> Date: Tue, 28 May 2024 16:49:10 +0900 Subject: [PATCH] update v1.1.0 (#15) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * chore: svgr library * feat: update version 1.1.0 * chore: 이미지 복사 * chore: build formats 수정 * chore: add start scripts * chore: yarn cache clean 추가 * chore: exclude playground * chore: npmignore 수정 * feat: gitignore 수정 * feat: index.html 추가 --- .gitignore | 3 +- .npmignore | 5 +- package.json | 6 +- playground/.gitignore | 3 +- playground/index.html | 13 + src/lib/hooks/index.ts | 1 - src/lib/ui/IPhoneLayout.tsx | 51 --- src/lib/ui/control-box/ControlBox.css | 55 +++ src/lib/ui/control-box/ControlBox.tsx | 77 ++++ src/lib/ui/control-box/Position.css | 58 +++ src/lib/ui/control-box/assets/iPhone.svg | 14 + src/lib/ui/control-box/assets/laptop.svg | 19 + src/lib/ui/control-box/assets/minus.svg | 4 + src/lib/ui/control-box/assets/plus.svg | 5 + .../control-box/hooks/useResize.tsx} | 23 +- src/lib/ui/control-box/index.ts | 1 + .../ui/{ => iPhone-layout}/IPhoneLayout.css | 2 +- src/lib/ui/iPhone-layout/IPhoneLayout.tsx | 58 +++ .../{ => ui/iPhone-layout}/assets/iPhone.png | Bin .../iPhone-layout}/assets/iPhone_status.png | Bin .../ui/iPhone-layout/hooks/useInitIPhone.tsx | 15 + .../ui/iPhone-layout/hooks/useLaoyutMode.tsx | 11 + src/lib/ui/iPhone-layout/index.ts | 1 + src/lib/ui/index.ts | 2 +- src/vite-env.d.ts | 1 + vite.config.ts | 6 +- yarn.lock | 365 +++++++++++++++++- 27 files changed, 716 insertions(+), 83 deletions(-) create mode 100644 playground/index.html delete mode 100644 src/lib/hooks/index.ts delete mode 100644 src/lib/ui/IPhoneLayout.tsx create mode 100644 src/lib/ui/control-box/ControlBox.css create mode 100644 src/lib/ui/control-box/ControlBox.tsx create mode 100644 src/lib/ui/control-box/Position.css create mode 100644 src/lib/ui/control-box/assets/iPhone.svg create mode 100644 src/lib/ui/control-box/assets/laptop.svg create mode 100644 src/lib/ui/control-box/assets/minus.svg create mode 100644 src/lib/ui/control-box/assets/plus.svg rename src/lib/{hooks/useUtilityIPhone.tsx => ui/control-box/hooks/useResize.tsx} (58%) create mode 100644 src/lib/ui/control-box/index.ts rename src/lib/ui/{ => iPhone-layout}/IPhoneLayout.css (95%) create mode 100644 src/lib/ui/iPhone-layout/IPhoneLayout.tsx rename src/lib/{ => ui/iPhone-layout}/assets/iPhone.png (100%) rename src/lib/{ => ui/iPhone-layout}/assets/iPhone_status.png (100%) create mode 100644 src/lib/ui/iPhone-layout/hooks/useInitIPhone.tsx create mode 100644 src/lib/ui/iPhone-layout/hooks/useLaoyutMode.tsx create mode 100644 src/lib/ui/iPhone-layout/index.ts diff --git a/.gitignore b/.gitignore index 8816c97..54f07af 100644 --- a/.gitignore +++ b/.gitignore @@ -21,5 +21,4 @@ dist-ssr *.ntvs* *.njsproj *.sln -*.sw? -index.html \ No newline at end of file +*.sw? \ No newline at end of file diff --git a/.npmignore b/.npmignore index c050567..7c2c4e1 100644 --- a/.npmignore +++ b/.npmignore @@ -6,4 +6,7 @@ vite.config.ts yarn.lock node_modules .gitignore -*.tgz \ No newline at end of file +*.tgz +playground +.github +.yarn-error.log \ No newline at end of file diff --git a/package.json b/package.json index 638247d..ada2226 100644 --- a/package.json +++ b/package.json @@ -42,8 +42,9 @@ "./dist/ReactIPhoneLayout.css": "./dist/ReactIPhoneLayout.css" }, "scripts": { + "start": "cd playground && yarn dev", "dev": "vite", - "build": "tsc && vite build && cp -r src/lib/assets dist/lib/assets", + "build": "yarn cache clean && tsc && vite build && cp -r src/lib/ui/iPhone-layout/assets dist/lib/ui/iPhone-layout/assets", "lint": "eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0", "preview": "vite preview", "prepare": "tsc && vite build", @@ -65,6 +66,7 @@ "eslint-plugin-react-refresh": "^0.4.6", "typescript": "^5.2.2", "vite": "^5.2.0", - "vite-plugin-dts": "^3.9.1" + "vite-plugin-dts": "^3.9.1", + "vite-plugin-svgr": "^4.2.0" } } diff --git a/playground/.gitignore b/playground/.gitignore index 8816c97..54f07af 100644 --- a/playground/.gitignore +++ b/playground/.gitignore @@ -21,5 +21,4 @@ dist-ssr *.ntvs* *.njsproj *.sln -*.sw? -index.html \ No newline at end of file +*.sw? \ No newline at end of file diff --git a/playground/index.html b/playground/index.html new file mode 100644 index 0000000..a4e52c8 --- /dev/null +++ b/playground/index.html @@ -0,0 +1,13 @@ + + + + + + + React iPhone Layout + + +
+ + + diff --git a/src/lib/hooks/index.ts b/src/lib/hooks/index.ts deleted file mode 100644 index 5aeadda..0000000 --- a/src/lib/hooks/index.ts +++ /dev/null @@ -1 +0,0 @@ -export { useUtilityIPhone } from "./useUtilityIPhone"; diff --git a/src/lib/ui/IPhoneLayout.tsx b/src/lib/ui/IPhoneLayout.tsx deleted file mode 100644 index 8778b78..0000000 --- a/src/lib/ui/IPhoneLayout.tsx +++ /dev/null @@ -1,51 +0,0 @@ -import { useUtilityIPhone } from "../hooks/useUtilityIPhone"; - -import iPhoneStatus from "../assets/iPhone_status.png"; -import "./IPhoneLayout.css"; - -interface IPhoneLayoutProps { - children: React.ReactNode; - isStatusBar?: boolean; - - isDynamicSize?: boolean; - minSize?: number; - defaultSize?: number; - maxSize?: number; -} - -export function IPhoneLayout({ - children, - isStatusBar = true, - isDynamicSize = false, - minSize = 60, - defaultSize = 75, - maxSize = 100, -}: IPhoneLayoutProps) { - const { iPhoneLayoutRef, handleSizeDown, handleSizeUp } = useUtilityIPhone( - minSize, - defaultSize, - maxSize - ); - - return ( -
-
-
- {isStatusBar && } - {children} -
- - {isDynamicSize && ( -
- - -
- )} -
-
- ); -} diff --git a/src/lib/ui/control-box/ControlBox.css b/src/lib/ui/control-box/ControlBox.css new file mode 100644 index 0000000..95a8442 --- /dev/null +++ b/src/lib/ui/control-box/ControlBox.css @@ -0,0 +1,55 @@ +:root { + --ril-control-bg: #313a46; + --ril-control-basic: #b3b9c4; + --ril-control-hover: #bccee4; + --ril-control-focus: #fff; +} + +.ril-control-box { + padding: 16px 12px; + + width: 40px; + + background-color: var(--ril-control-bg); + border-radius: 8px; +} + +.ril-control-box .ril-control-list { + display: flex; + flex-direction: column; + gap: 20px; +} + +.ril-control-list .ril-control-item { + width: 40px; + height: 40px; + + border: 1px solid var(--ril-control-basic); + border-radius: 50%; + + cursor: pointer; +} + +.iPhone_focus_mode path, +.iphone-icon:hover path { + fill: var(--ril-control-focus); +} + +.laptop-icon:hover rect { + fill: var(--ril-control-focus); +} + +.plus-icon:hover rect, +.plus-icon:hover line, +.minus-icon:hover rect, +.minus-icon:hover line { + stroke: var(--ril-control-focus); +} + +.ril-control-list, +.ril-control-item { + list-style-type: none; + list-style: none; + padding: 0; + margin: 0; +} diff --git a/src/lib/ui/control-box/ControlBox.tsx b/src/lib/ui/control-box/ControlBox.tsx new file mode 100644 index 0000000..b5a039e --- /dev/null +++ b/src/lib/ui/control-box/ControlBox.tsx @@ -0,0 +1,77 @@ +import IPhoneIcon from "./assets/iPhone.svg?react"; +import LaptopIcon from "./assets/laptop.svg?react"; +import PlusIcon from "./assets/plus.svg?react"; +import MinusIcon from "./assets/minus.svg?react"; + +import "./ControlBox.css"; +import "./Position.css"; +import { useResize } from "./hooks/useResize"; + +interface ControlBoxProps { + position: "top" | "right" | "bottom" | "left"; + mode: "iPhone" | "laptop"; + iPhoneLayoutRef: React.RefObject; + iPhoneSizeRef: React.MutableRefObject; + minSize: number; + maxSize: number; + handleChangeMode: (newMode: "iPhone" | "laptop") => void; +} + +export const ControlBox: React.FC = ({ + position, + mode, + iPhoneLayoutRef, + iPhoneSizeRef, + minSize, + maxSize, + handleChangeMode, +}) => { + const { handleSizeUp, handleSizeDown } = useResize( + iPhoneLayoutRef, + iPhoneSizeRef, + minSize, + maxSize + ); + + if (mode === "laptop") { + return ( +
+ +
+ ); + } + + return ( + + ); +}; diff --git a/src/lib/ui/control-box/Position.css b/src/lib/ui/control-box/Position.css new file mode 100644 index 0000000..34dc2c2 --- /dev/null +++ b/src/lib/ui/control-box/Position.css @@ -0,0 +1,58 @@ +.position__top { + position: absolute; + top: 20px; + left: 50%; + + transform: translate(-50%, -40%) rotate(270deg); + + & svg { + transform: rotate(90deg); + } +} + +.position__bottom { + position: absolute; + bottom: 20px; + left: 50%; + + transform: translate(-50%, 40%) rotate(270deg); + + & svg { + transform: rotate(90deg); + } +} + +.position__left { + position: absolute; + top: 50%; + left: 20px; + + transform: translateY(-50%); +} + +.position__right { + position: absolute; + top: 50%; + right: 20px; + + transform: translateY(-50%); +} + +.laptop__mode { + position: absolute; + left: 8px; + bottom: 8px; +} + +.laptop__mode .iPhone-active-btn { + background: var(--ril-control-bg); + padding: 0; + margin: 0; + + width: 64px; + height: 64px; + border-radius: 50%; + border: 0; + + cursor: pointer; +} diff --git a/src/lib/ui/control-box/assets/iPhone.svg b/src/lib/ui/control-box/assets/iPhone.svg new file mode 100644 index 0000000..66deb9a --- /dev/null +++ b/src/lib/ui/control-box/assets/iPhone.svg @@ -0,0 +1,14 @@ + + + + + diff --git a/src/lib/ui/control-box/assets/laptop.svg b/src/lib/ui/control-box/assets/laptop.svg new file mode 100644 index 0000000..bb0a3f7 --- /dev/null +++ b/src/lib/ui/control-box/assets/laptop.svg @@ -0,0 +1,19 @@ + + + + + diff --git a/src/lib/ui/control-box/assets/minus.svg b/src/lib/ui/control-box/assets/minus.svg new file mode 100644 index 0000000..5fafc0f --- /dev/null +++ b/src/lib/ui/control-box/assets/minus.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/lib/ui/control-box/assets/plus.svg b/src/lib/ui/control-box/assets/plus.svg new file mode 100644 index 0000000..5c9ce16 --- /dev/null +++ b/src/lib/ui/control-box/assets/plus.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/lib/hooks/useUtilityIPhone.tsx b/src/lib/ui/control-box/hooks/useResize.tsx similarity index 58% rename from src/lib/hooks/useUtilityIPhone.tsx rename to src/lib/ui/control-box/hooks/useResize.tsx index 873dce1..6c4a531 100644 --- a/src/lib/hooks/useUtilityIPhone.tsx +++ b/src/lib/ui/control-box/hooks/useResize.tsx @@ -1,20 +1,9 @@ -import { useEffect, useRef } from "react"; - -export function useUtilityIPhone( +export const useResize = ( + iPhoneLayoutRef: React.RefObject, + iPhoneSizeRef: React.MutableRefObject, minSize: number, - defaultSize: number, maxSize: number -) { - const iPhoneSizeRef = useRef(defaultSize); - const iPhoneLayoutRef = useRef(null); - - useEffect(() => { - document.documentElement.style.setProperty( - "--iphone-size", - `${defaultSize}%` - ); - }, [defaultSize]); - +) => { const changeStyle = () => { if (iPhoneLayoutRef.current) { iPhoneLayoutRef.current.style.height = `${iPhoneSizeRef.current}%`; @@ -39,5 +28,5 @@ export function useUtilityIPhone( changeStyle(); }; - return { iPhoneLayoutRef, handleSizeUp, handleSizeDown }; -} + return { handleSizeUp, handleSizeDown }; +}; diff --git a/src/lib/ui/control-box/index.ts b/src/lib/ui/control-box/index.ts new file mode 100644 index 0000000..0bfc589 --- /dev/null +++ b/src/lib/ui/control-box/index.ts @@ -0,0 +1 @@ +export { ControlBox } from "./ControlBox"; diff --git a/src/lib/ui/IPhoneLayout.css b/src/lib/ui/iPhone-layout/IPhoneLayout.css similarity index 95% rename from src/lib/ui/IPhoneLayout.css rename to src/lib/ui/iPhone-layout/IPhoneLayout.css index 93eb516..eac19f1 100644 --- a/src/lib/ui/IPhoneLayout.css +++ b/src/lib/ui/iPhone-layout/IPhoneLayout.css @@ -14,7 +14,7 @@ .ril-iphone { position: relative; - background-image: url("../assets/iPhone.png"); + background-image: url("./assets/iPhone.png"); background-size: cover; background-repeat: no-repeat; background-position: center center; diff --git a/src/lib/ui/iPhone-layout/IPhoneLayout.tsx b/src/lib/ui/iPhone-layout/IPhoneLayout.tsx new file mode 100644 index 0000000..6dab710 --- /dev/null +++ b/src/lib/ui/iPhone-layout/IPhoneLayout.tsx @@ -0,0 +1,58 @@ +import { useInitIPhone } from "./hooks/useInitIPhone"; + +import iPhoneStatus from "./assets/iPhone_status.png"; +import { ControlBox } from "../control-box"; +import "./IPhoneLayout.css"; +import { useLaoyutMode } from "./hooks/useLaoyutMode"; + +interface IPhoneLayoutProps { + children: React.ReactNode; + isStatusBar?: boolean; + position?: "top" | "right" | "bottom" | "left"; + mode?: "iPhone" | "laptop"; + + minSize?: number; + defaultSize?: number; + maxSize?: number; +} + +export function IPhoneLayout({ + children, + isStatusBar = true, + position = "right", + mode = "iPhone", + minSize = 60, + defaultSize = 75, + maxSize = 100, +}: IPhoneLayoutProps) { + const { iPhoneLayoutRef, iPhoneSizeRef } = useInitIPhone(defaultSize); + const { currentMode, handleChangeMode } = useLaoyutMode(mode); + + return ( + <> + {currentMode === "iPhone" ? ( +
+
+
+ {isStatusBar && ( + + )} + {children} +
+
+
+ ) : ( + children + )} + + + ); +} diff --git a/src/lib/assets/iPhone.png b/src/lib/ui/iPhone-layout/assets/iPhone.png similarity index 100% rename from src/lib/assets/iPhone.png rename to src/lib/ui/iPhone-layout/assets/iPhone.png diff --git a/src/lib/assets/iPhone_status.png b/src/lib/ui/iPhone-layout/assets/iPhone_status.png similarity index 100% rename from src/lib/assets/iPhone_status.png rename to src/lib/ui/iPhone-layout/assets/iPhone_status.png diff --git a/src/lib/ui/iPhone-layout/hooks/useInitIPhone.tsx b/src/lib/ui/iPhone-layout/hooks/useInitIPhone.tsx new file mode 100644 index 0000000..eefd8fb --- /dev/null +++ b/src/lib/ui/iPhone-layout/hooks/useInitIPhone.tsx @@ -0,0 +1,15 @@ +import { useEffect, useRef } from "react"; + +export function useInitIPhone(defaultSize: number) { + const iPhoneSizeRef = useRef(defaultSize); + const iPhoneLayoutRef = useRef(null); + + useEffect(() => { + document.documentElement.style.setProperty( + "--iphone-size", + `${defaultSize}%` + ); + }, [defaultSize]); + + return { iPhoneLayoutRef, iPhoneSizeRef }; +} diff --git a/src/lib/ui/iPhone-layout/hooks/useLaoyutMode.tsx b/src/lib/ui/iPhone-layout/hooks/useLaoyutMode.tsx new file mode 100644 index 0000000..13e1e32 --- /dev/null +++ b/src/lib/ui/iPhone-layout/hooks/useLaoyutMode.tsx @@ -0,0 +1,11 @@ +import { useState } from "react"; + +export const useLaoyutMode = (mode: "iPhone" | "laptop") => { + const [currentMode, setCurrentMode] = useState<"iPhone" | "laptop">(mode); + + const handleChangeMode = (newMode: "iPhone" | "laptop") => { + setCurrentMode(newMode); + }; + + return { currentMode, handleChangeMode }; +}; diff --git a/src/lib/ui/iPhone-layout/index.ts b/src/lib/ui/iPhone-layout/index.ts new file mode 100644 index 0000000..099d727 --- /dev/null +++ b/src/lib/ui/iPhone-layout/index.ts @@ -0,0 +1 @@ +export { IPhoneLayout } from "./IPhoneLayout"; diff --git a/src/lib/ui/index.ts b/src/lib/ui/index.ts index 099d727..99e8489 100644 --- a/src/lib/ui/index.ts +++ b/src/lib/ui/index.ts @@ -1 +1 @@ -export { IPhoneLayout } from "./IPhoneLayout"; +export { IPhoneLayout } from "./iPhone-layout"; diff --git a/src/vite-env.d.ts b/src/vite-env.d.ts index 11f02fe..b1f45c7 100644 --- a/src/vite-env.d.ts +++ b/src/vite-env.d.ts @@ -1 +1,2 @@ /// +/// diff --git a/vite.config.ts b/vite.config.ts index 848c2f8..26f50c4 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -2,23 +2,25 @@ import { defineConfig } from "vite"; import react from "@vitejs/plugin-react"; import dts from "vite-plugin-dts"; import path from "path"; +import svgr from "vite-plugin-svgr"; // https://vitejs.dev/config/ export default defineConfig({ plugins: [ react(), dts({ insertTypesEntry: true, tsconfigPath: "./tsconfig.json" }), + svgr({ include: "**/*.svg?react" }), ], build: { cssMinify: "esbuild", lib: { entry: path.resolve(__dirname, "src/index.ts"), name: "React-iPhone-Layout", - fileName: (format) => `iphone-layout.${format}.js`, + fileName: (format) => `react-iphone-layout.${format}.js`, formats: ["es", "cjs"], }, rollupOptions: { - external: ["react", "react-dom"], + external: ["react", "react-dom", "playground/**"], output: { assetFileNames: (assetInfo) => { if (assetInfo.name === "style.css") return "ReactIPhoneLayout.css"; diff --git a/yarn.lock b/yarn.lock index 3bd76b8..0d67db2 100644 --- a/yarn.lock +++ b/yarn.lock @@ -10,6 +10,14 @@ "@jridgewell/gen-mapping" "^0.3.5" "@jridgewell/trace-mapping" "^0.3.24" +"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.24.6.tgz#ab88da19344445c3d8889af2216606d3329f3ef2" + integrity sha512-ZJhac6FkEd1yhG2AHOmfcXG4ceoLltoCVJjN5XsWN9BifBQr+cHJbWi0h68HZuSORq+3WtJ2z0hwF2NG1b5kcA== + dependencies: + "@babel/highlight" "^7.24.6" + picocolors "^1.0.0" + "@babel/code-frame@^7.23.5", "@babel/code-frame@^7.24.2": version "7.24.2" resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.24.2.tgz#718b4b19841809a58b29b68cde80bc5e1aa6d9ae" @@ -23,6 +31,32 @@ resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.24.4.tgz#6f102372e9094f25d908ca0d34fc74c74606059a" integrity sha512-vg8Gih2MLK+kOkHJp4gBEIkyaIi00jgWot2D9QOmmfLC8jINSOzmCLta6Bvz/JSBCqnegV0L80jhxkol5GWNfQ== +"@babel/compat-data@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.24.6.tgz#b3600217688cabb26e25f8e467019e66d71b7ae2" + integrity sha512-aC2DGhBq5eEdyXWqrDInSqQjO0k8xtPRf5YylULqx8MCd6jBtzqfta/3ETMRpuKIc5hyswfO80ObyA1MvkCcUQ== + +"@babel/core@^7.21.3": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.24.6.tgz#8650e0e4b03589ebe886c4e4a60398db0a7ec787" + integrity sha512-qAHSfAdVyFmIvl0VHELib8xar7ONuSHrE2hLnsaWkYNTI68dmi1x8GYDhJjMI/e7XWal9QBlZkwbOnkcw7Z8gQ== + dependencies: + "@ampproject/remapping" "^2.2.0" + "@babel/code-frame" "^7.24.6" + "@babel/generator" "^7.24.6" + "@babel/helper-compilation-targets" "^7.24.6" + "@babel/helper-module-transforms" "^7.24.6" + "@babel/helpers" "^7.24.6" + "@babel/parser" "^7.24.6" + "@babel/template" "^7.24.6" + "@babel/traverse" "^7.24.6" + "@babel/types" "^7.24.6" + convert-source-map "^2.0.0" + debug "^4.1.0" + gensync "^1.0.0-beta.2" + json5 "^2.2.3" + semver "^6.3.1" + "@babel/core@^7.23.5": version "7.24.5" resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.24.5.tgz#15ab5b98e101972d171aeef92ac70d8d6718f06a" @@ -54,6 +88,16 @@ "@jridgewell/trace-mapping" "^0.3.25" jsesc "^2.5.1" +"@babel/generator@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.24.6.tgz#dfac82a228582a9d30c959fe50ad28951d4737a7" + integrity sha512-S7m4eNa6YAPJRHmKsLHIDJhNAGNKoWNiWefz1MBbpnt8g9lvMDl1hir4P9bo/57bQEmuwEhnRU/AMWsD0G/Fbg== + dependencies: + "@babel/types" "^7.24.6" + "@jridgewell/gen-mapping" "^0.3.5" + "@jridgewell/trace-mapping" "^0.3.25" + jsesc "^2.5.1" + "@babel/helper-compilation-targets@^7.23.6": version "7.23.6" resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.23.6.tgz#4d79069b16cbcf1461289eccfbbd81501ae39991" @@ -65,11 +109,27 @@ lru-cache "^5.1.1" semver "^6.3.1" +"@babel/helper-compilation-targets@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.24.6.tgz#4a51d681f7680043d38e212715e2a7b1ad29cb51" + integrity sha512-VZQ57UsDGlX/5fFA7GkVPplZhHsVc+vuErWgdOiysI9Ksnw0Pbbd6pnPiR/mmJyKHgyIW0c7KT32gmhiF+cirg== + dependencies: + "@babel/compat-data" "^7.24.6" + "@babel/helper-validator-option" "^7.24.6" + browserslist "^4.22.2" + lru-cache "^5.1.1" + semver "^6.3.1" + "@babel/helper-environment-visitor@^7.22.20": version "7.22.20" resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz#96159db61d34a29dba454c959f5ae4a649ba9167" integrity sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA== +"@babel/helper-environment-visitor@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.24.6.tgz#ac7ad5517821641550f6698dd5468f8cef78620d" + integrity sha512-Y50Cg3k0LKLMjxdPjIl40SdJgMB85iXn27Vk/qbHZCFx/o5XO3PSnpi675h1KEmmDb6OFArfd5SCQEQ5Q4H88g== + "@babel/helper-function-name@^7.23.0": version "7.23.0" resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz#1f9a3cdbd5b2698a670c30d2735f9af95ed52759" @@ -78,6 +138,14 @@ "@babel/template" "^7.22.15" "@babel/types" "^7.23.0" +"@babel/helper-function-name@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.24.6.tgz#cebdd063386fdb95d511d84b117e51fc68fec0c8" + integrity sha512-xpeLqeeRkbxhnYimfr2PC+iA0Q7ljX/d1eZ9/inYbmfG2jpl8Lu3DyXvpOAnrS5kxkfOWJjioIMQsaMBXFI05w== + dependencies: + "@babel/template" "^7.24.6" + "@babel/types" "^7.24.6" + "@babel/helper-hoist-variables@^7.22.5": version "7.22.5" resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz#c01a007dac05c085914e8fb652b339db50d823bb" @@ -85,6 +153,13 @@ dependencies: "@babel/types" "^7.22.5" +"@babel/helper-hoist-variables@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.24.6.tgz#8a7ece8c26756826b6ffcdd0e3cf65de275af7f9" + integrity sha512-SF/EMrC3OD7dSta1bLJIlrsVxwtd0UpjRJqLno6125epQMJ/kyFmpTT4pbvPbdQHzCHg+biQ7Syo8lnDtbR+uA== + dependencies: + "@babel/types" "^7.24.6" + "@babel/helper-module-imports@^7.24.3": version "7.24.3" resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.24.3.tgz#6ac476e6d168c7c23ff3ba3cf4f7841d46ac8128" @@ -92,6 +167,13 @@ dependencies: "@babel/types" "^7.24.0" +"@babel/helper-module-imports@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.24.6.tgz#65e54ffceed6a268dc4ce11f0433b82cfff57852" + integrity sha512-a26dmxFJBF62rRO9mmpgrfTLsAuyHk4e1hKTUkD/fcMfynt8gvEKwQPQDVxWhca8dHoDck+55DFt42zV0QMw5g== + dependencies: + "@babel/types" "^7.24.6" + "@babel/helper-module-transforms@^7.24.5": version "7.24.5" resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.24.5.tgz#ea6c5e33f7b262a0ae762fd5986355c45f54a545" @@ -103,6 +185,17 @@ "@babel/helper-split-export-declaration" "^7.24.5" "@babel/helper-validator-identifier" "^7.24.5" +"@babel/helper-module-transforms@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.24.6.tgz#22346ed9df44ce84dee850d7433c5b73fab1fe4e" + integrity sha512-Y/YMPm83mV2HJTbX1Qh2sjgjqcacvOlhbzdCCsSlblOKjSYmQqEbO6rUniWQyRo9ncyfjT8hnUjlG06RXDEmcA== + dependencies: + "@babel/helper-environment-visitor" "^7.24.6" + "@babel/helper-module-imports" "^7.24.6" + "@babel/helper-simple-access" "^7.24.6" + "@babel/helper-split-export-declaration" "^7.24.6" + "@babel/helper-validator-identifier" "^7.24.6" + "@babel/helper-plugin-utils@^7.24.0", "@babel/helper-plugin-utils@^7.24.5": version "7.24.5" resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.5.tgz#a924607dd254a65695e5bd209b98b902b3b2f11a" @@ -115,6 +208,13 @@ dependencies: "@babel/types" "^7.24.5" +"@babel/helper-simple-access@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.24.6.tgz#1d6e04d468bba4fc963b4906f6dac6286cfedff1" + integrity sha512-nZzcMMD4ZhmB35MOOzQuiGO5RzL6tJbsT37Zx8M5L/i9KSrukGXWTjLe1knIbb/RmxoJE9GON9soq0c0VEMM5g== + dependencies: + "@babel/types" "^7.24.6" + "@babel/helper-split-export-declaration@^7.24.5": version "7.24.5" resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.5.tgz#b9a67f06a46b0b339323617c8c6213b9055a78b6" @@ -122,21 +222,43 @@ dependencies: "@babel/types" "^7.24.5" +"@babel/helper-split-export-declaration@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.6.tgz#e830068f7ba8861c53b7421c284da30ae656d7a3" + integrity sha512-CvLSkwXGWnYlF9+J3iZUvwgAxKiYzK3BWuo+mLzD/MDGOZDj7Gq8+hqaOkMxmJwmlv0iu86uH5fdADd9Hxkymw== + dependencies: + "@babel/types" "^7.24.6" + "@babel/helper-string-parser@^7.24.1": version "7.24.1" resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz#f99c36d3593db9540705d0739a1f10b5e20c696e" integrity sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ== +"@babel/helper-string-parser@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.24.6.tgz#28583c28b15f2a3339cfafafeaad42f9a0e828df" + integrity sha512-WdJjwMEkmBicq5T9fm/cHND3+UlFa2Yj8ALLgmoSQAJZysYbBjw+azChSGPN4DSPLXOcooGRvDwZWMcF/mLO2Q== + "@babel/helper-validator-identifier@^7.24.5": version "7.24.5" resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.5.tgz#918b1a7fa23056603506370089bd990d8720db62" integrity sha512-3q93SSKX2TWCG30M2G2kwaKeTYgEUp5Snjuj8qm729SObL6nbtUldAi37qbxkD5gg3xnBio+f9nqpSepGZMvxA== +"@babel/helper-validator-identifier@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.6.tgz#08bb6612b11bdec78f3feed3db196da682454a5e" + integrity sha512-4yA7s865JHaqUdRbnaxarZREuPTHrjpDT+pXoAZ1yhyo6uFnIEpS8VMu16siFOHDpZNKYv5BObhsB//ycbICyw== + "@babel/helper-validator-option@^7.23.5": version "7.23.5" resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.23.5.tgz#907a3fbd4523426285365d1206c423c4c5520307" integrity sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw== +"@babel/helper-validator-option@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.24.6.tgz#59d8e81c40b7d9109ab7e74457393442177f460a" + integrity sha512-Jktc8KkF3zIkePb48QO+IapbXlSapOW9S+ogZZkcO6bABgYAxtZcjZ/O005111YLf+j4M84uEgwYoidDkXbCkQ== + "@babel/helpers@^7.24.5": version "7.24.5" resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.24.5.tgz#fedeb87eeafa62b621160402181ad8585a22a40a" @@ -146,6 +268,14 @@ "@babel/traverse" "^7.24.5" "@babel/types" "^7.24.5" +"@babel/helpers@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.24.6.tgz#cd124245299e494bd4e00edda0e4ea3545c2c176" + integrity sha512-V2PI+NqnyFu1i0GyTd/O/cTpxzQCYioSkUIRmgo7gFEHKKCg5w46+r/A6WeUR1+P3TeQ49dspGPNd/E3n9AnnA== + dependencies: + "@babel/template" "^7.24.6" + "@babel/types" "^7.24.6" + "@babel/highlight@^7.24.2": version "7.24.5" resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.24.5.tgz#bc0613f98e1dd0720e99b2a9ee3760194a704b6e" @@ -156,11 +286,26 @@ js-tokens "^4.0.0" picocolors "^1.0.0" +"@babel/highlight@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.24.6.tgz#6d610c1ebd2c6e061cade0153bf69b0590b7b3df" + integrity sha512-2YnuOp4HAk2BsBrJJvYCbItHx0zWscI1C3zgWkz+wDyD9I7GIVrfnLyrR4Y1VR+7p+chAEcrgRQYZAGIKMV7vQ== + dependencies: + "@babel/helper-validator-identifier" "^7.24.6" + chalk "^2.4.2" + js-tokens "^4.0.0" + picocolors "^1.0.0" + "@babel/parser@^7.1.0", "@babel/parser@^7.20.7", "@babel/parser@^7.24.0", "@babel/parser@^7.24.4", "@babel/parser@^7.24.5": version "7.24.5" resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.24.5.tgz#4a4d5ab4315579e5398a82dcf636ca80c3392790" integrity sha512-EOv5IK8arwh3LI47dz1b0tKUb/1uhHAnHJOrjgtQMIpu1uXd9mlFrJg9IUgGUgZ41Ch0K8REPTYpO7B76b4vJg== +"@babel/parser@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.24.6.tgz#5e030f440c3c6c78d195528c3b688b101a365328" + integrity sha512-eNZXdfU35nJC2h24RznROuOpO94h6x8sg9ju0tT9biNtLZ2vuP8SduLqqV+/8+cebSLV9SJEAN5Z3zQbJG/M+Q== + "@babel/plugin-transform-react-jsx-self@^7.23.3": version "7.24.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.24.5.tgz#22cc7572947895c8e4cd034462e65d8ecf857756" @@ -184,6 +329,15 @@ "@babel/parser" "^7.24.0" "@babel/types" "^7.24.0" +"@babel/template@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.24.6.tgz#048c347b2787a6072b24c723664c8d02b67a44f9" + integrity sha512-3vgazJlLwNXi9jhrR1ef8qiB65L1RK90+lEQwv4OxveHnqC3BfmnHdgySwRLzf6akhlOYenT+b7AfWq+a//AHw== + dependencies: + "@babel/code-frame" "^7.24.6" + "@babel/parser" "^7.24.6" + "@babel/types" "^7.24.6" + "@babel/traverse@^7.24.5": version "7.24.5" resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.24.5.tgz#972aa0bc45f16983bf64aa1f877b2dd0eea7e6f8" @@ -200,6 +354,22 @@ debug "^4.3.1" globals "^11.1.0" +"@babel/traverse@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.24.6.tgz#0941ec50cdeaeacad0911eb67ae227a4f8424edc" + integrity sha512-OsNjaJwT9Zn8ozxcfoBc+RaHdj3gFmCmYoQLUII1o6ZrUwku0BMg80FoOTPx+Gi6XhcQxAYE4xyjPTo4SxEQqw== + dependencies: + "@babel/code-frame" "^7.24.6" + "@babel/generator" "^7.24.6" + "@babel/helper-environment-visitor" "^7.24.6" + "@babel/helper-function-name" "^7.24.6" + "@babel/helper-hoist-variables" "^7.24.6" + "@babel/helper-split-export-declaration" "^7.24.6" + "@babel/parser" "^7.24.6" + "@babel/types" "^7.24.6" + debug "^4.3.1" + globals "^11.1.0" + "@babel/types@^7.0.0", "@babel/types@^7.20.7", "@babel/types@^7.22.5", "@babel/types@^7.23.0", "@babel/types@^7.24.0", "@babel/types@^7.24.5": version "7.24.5" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.24.5.tgz#7661930afc638a5383eb0c4aee59b74f38db84d7" @@ -209,6 +379,15 @@ "@babel/helper-validator-identifier" "^7.24.5" to-fast-properties "^2.0.0" +"@babel/types@^7.21.3", "@babel/types@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.24.6.tgz#ba4e1f59870c10dc2fa95a274ac4feec23b21912" + integrity sha512-WaMsgi6Q8zMgMth93GvWPXkhAIEobfsIkLTacoVZoK1J0CevIPGYY2Vo5YvJGqyHqXM6P4ppOYGsIRU8MM9pFQ== + dependencies: + "@babel/helper-string-parser" "^7.24.6" + "@babel/helper-validator-identifier" "^7.24.6" + to-fast-properties "^2.0.0" + "@esbuild/aix-ppc64@0.20.2": version "0.20.2" resolved "https://registry.yarnpkg.com/@esbuild/aix-ppc64/-/aix-ppc64-0.20.2.tgz#a70f4ac11c6a1dfc18b8bbb13284155d933b9537" @@ -471,7 +650,7 @@ "@nodelib/fs.scandir" "2.1.5" fastq "^1.6.0" -"@rollup/pluginutils@^5.1.0": +"@rollup/pluginutils@^5.0.5", "@rollup/pluginutils@^5.1.0": version "5.1.0" resolved "https://registry.yarnpkg.com/@rollup/pluginutils/-/pluginutils-5.1.0.tgz#7e53eddc8c7f483a4ad0b94afb1f7f5fd3c771e0" integrity sha512-XTIWOPPcpvyKI6L1NHo0lFlCyznUEyPmPY1mc3KpPVDYulHSTvyeLNVW00QTLIAFNhR3kYnJTQHeGqU4M3n09g== @@ -598,6 +777,89 @@ argparse "~1.0.9" string-argv "~0.3.1" +"@svgr/babel-plugin-add-jsx-attribute@8.0.0": + version "8.0.0" + resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-add-jsx-attribute/-/babel-plugin-add-jsx-attribute-8.0.0.tgz#4001f5d5dd87fa13303e36ee106e3ff3a7eb8b22" + integrity sha512-b9MIk7yhdS1pMCZM8VeNfUlSKVRhsHZNMl5O9SfaX0l0t5wjdgu4IDzGB8bpnGBBOjGST3rRFVsaaEtI4W6f7g== + +"@svgr/babel-plugin-remove-jsx-attribute@8.0.0": + version "8.0.0" + resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-remove-jsx-attribute/-/babel-plugin-remove-jsx-attribute-8.0.0.tgz#69177f7937233caca3a1afb051906698f2f59186" + integrity sha512-BcCkm/STipKvbCl6b7QFrMh/vx00vIP63k2eM66MfHJzPr6O2U0jYEViXkHJWqXqQYjdeA9cuCl5KWmlwjDvbA== + +"@svgr/babel-plugin-remove-jsx-empty-expression@8.0.0": + version "8.0.0" + resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-remove-jsx-empty-expression/-/babel-plugin-remove-jsx-empty-expression-8.0.0.tgz#c2c48104cfd7dcd557f373b70a56e9e3bdae1d44" + integrity sha512-5BcGCBfBxB5+XSDSWnhTThfI9jcO5f0Ai2V24gZpG+wXF14BzwxxdDb4g6trdOux0rhibGs385BeFMSmxtS3uA== + +"@svgr/babel-plugin-replace-jsx-attribute-value@8.0.0": + version "8.0.0" + resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-replace-jsx-attribute-value/-/babel-plugin-replace-jsx-attribute-value-8.0.0.tgz#8fbb6b2e91fa26ac5d4aa25c6b6e4f20f9c0ae27" + integrity sha512-KVQ+PtIjb1BuYT3ht8M5KbzWBhdAjjUPdlMtpuw/VjT8coTrItWX6Qafl9+ji831JaJcu6PJNKCV0bp01lBNzQ== + +"@svgr/babel-plugin-svg-dynamic-title@8.0.0": + version "8.0.0" + resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-svg-dynamic-title/-/babel-plugin-svg-dynamic-title-8.0.0.tgz#1d5ba1d281363fc0f2f29a60d6d936f9bbc657b0" + integrity sha512-omNiKqwjNmOQJ2v6ge4SErBbkooV2aAWwaPFs2vUY7p7GhVkzRkJ00kILXQvRhA6miHnNpXv7MRnnSjdRjK8og== + +"@svgr/babel-plugin-svg-em-dimensions@8.0.0": + version "8.0.0" + resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-svg-em-dimensions/-/babel-plugin-svg-em-dimensions-8.0.0.tgz#35e08df300ea8b1d41cb8f62309c241b0369e501" + integrity sha512-mURHYnu6Iw3UBTbhGwE/vsngtCIbHE43xCRK7kCw4t01xyGqb2Pd+WXekRRoFOBIY29ZoOhUCTEweDMdrjfi9g== + +"@svgr/babel-plugin-transform-react-native-svg@8.1.0": + version "8.1.0" + resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-transform-react-native-svg/-/babel-plugin-transform-react-native-svg-8.1.0.tgz#90a8b63998b688b284f255c6a5248abd5b28d754" + integrity sha512-Tx8T58CHo+7nwJ+EhUwx3LfdNSG9R2OKfaIXXs5soiy5HtgoAEkDay9LIimLOcG8dJQH1wPZp/cnAv6S9CrR1Q== + +"@svgr/babel-plugin-transform-svg-component@8.0.0": + version "8.0.0" + resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-transform-svg-component/-/babel-plugin-transform-svg-component-8.0.0.tgz#013b4bfca88779711f0ed2739f3f7efcefcf4f7e" + integrity sha512-DFx8xa3cZXTdb/k3kfPeaixecQLgKh5NVBMwD0AQxOzcZawK4oo1Jh9LbrcACUivsCA7TLG8eeWgrDXjTMhRmw== + +"@svgr/babel-preset@8.1.0": + version "8.1.0" + resolved "https://registry.yarnpkg.com/@svgr/babel-preset/-/babel-preset-8.1.0.tgz#0e87119aecdf1c424840b9d4565b7137cabf9ece" + integrity sha512-7EYDbHE7MxHpv4sxvnVPngw5fuR6pw79SkcrILHJ/iMpuKySNCl5W1qcwPEpU+LgyRXOaAFgH0KhwD18wwg6ug== + dependencies: + "@svgr/babel-plugin-add-jsx-attribute" "8.0.0" + "@svgr/babel-plugin-remove-jsx-attribute" "8.0.0" + "@svgr/babel-plugin-remove-jsx-empty-expression" "8.0.0" + "@svgr/babel-plugin-replace-jsx-attribute-value" "8.0.0" + "@svgr/babel-plugin-svg-dynamic-title" "8.0.0" + "@svgr/babel-plugin-svg-em-dimensions" "8.0.0" + "@svgr/babel-plugin-transform-react-native-svg" "8.1.0" + "@svgr/babel-plugin-transform-svg-component" "8.0.0" + +"@svgr/core@^8.1.0": + version "8.1.0" + resolved "https://registry.yarnpkg.com/@svgr/core/-/core-8.1.0.tgz#41146f9b40b1a10beaf5cc4f361a16a3c1885e88" + integrity sha512-8QqtOQT5ACVlmsvKOJNEaWmRPmcojMOzCz4Hs2BGG/toAp/K38LcsMRyLp349glq5AzJbCEeimEoxaX6v/fLrA== + dependencies: + "@babel/core" "^7.21.3" + "@svgr/babel-preset" "8.1.0" + camelcase "^6.2.0" + cosmiconfig "^8.1.3" + snake-case "^3.0.4" + +"@svgr/hast-util-to-babel-ast@8.0.0": + version "8.0.0" + resolved "https://registry.yarnpkg.com/@svgr/hast-util-to-babel-ast/-/hast-util-to-babel-ast-8.0.0.tgz#6952fd9ce0f470e1aded293b792a2705faf4ffd4" + integrity sha512-EbDKwO9GpfWP4jN9sGdYwPBU0kdomaPIL2Eu4YwmgP+sJeXT+L7bMwJUBnhzfH8Q2qMBqZ4fJwpCyYsAN3mt2Q== + dependencies: + "@babel/types" "^7.21.3" + entities "^4.4.0" + +"@svgr/plugin-jsx@^8.1.0": + version "8.1.0" + resolved "https://registry.yarnpkg.com/@svgr/plugin-jsx/-/plugin-jsx-8.1.0.tgz#96969f04a24b58b174ee4cd974c60475acbd6928" + integrity sha512-0xiIyBsLlr8quN+WyuxooNW9RJ0Dpr8uOnH/xrCVO8GLUcwHISwj1AG0k+LFzteTkAA0GbX0kj9q6Dk70PTiPA== + dependencies: + "@babel/core" "^7.21.3" + "@svgr/babel-preset" "8.1.0" + "@svgr/hast-util-to-babel-ast" "8.0.0" + svg-parser "^2.0.4" + "@types/argparse@1.0.38": version "1.0.38" resolved "https://registry.yarnpkg.com/@types/argparse/-/argparse-1.0.38.tgz#a81fd8606d481f873a3800c6ebae4f1d768a56a9" @@ -924,6 +1186,11 @@ callsites@^3.0.0: resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== +camelcase@^6.2.0: + version "6.3.0" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a" + integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== + caniuse-lite@^1.0.30001587: version "1.0.30001620" resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001620.tgz#78bb6f35b8fe315b96b8590597094145d0b146b4" @@ -990,6 +1257,16 @@ convert-source-map@^2.0.0: resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-2.0.0.tgz#4b560f649fc4e918dd0ab75cf4961e8bc882d82a" integrity sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg== +cosmiconfig@^8.1.3: + version "8.3.6" + resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-8.3.6.tgz#060a2b871d66dba6c8538ea1118ba1ac16f5fae3" + integrity sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA== + dependencies: + import-fresh "^3.3.0" + js-yaml "^4.1.0" + parse-json "^5.2.0" + path-type "^4.0.0" + cross-spawn@^7.0.2: version "7.0.3" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" @@ -1035,16 +1312,31 @@ doctrine@^3.0.0: dependencies: esutils "^2.0.2" +dot-case@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/dot-case/-/dot-case-3.0.4.tgz#9b2b670d00a431667a8a75ba29cd1b98809ce751" + integrity sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w== + dependencies: + no-case "^3.0.4" + tslib "^2.0.3" + electron-to-chromium@^1.4.668: version "1.4.774" resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.774.tgz#1017d1758aaeeefe5423aa9d67b4b1e5d1d0a856" integrity sha512-132O1XCd7zcTkzS3FgkAzKmnBuNJjK8WjcTtNuoylj7MYbqw5eXehjQ5OK91g0zm7OTKIPeaAG4CPoRfD9M1Mg== -entities@^4.5.0: +entities@^4.4.0, entities@^4.5.0: version "4.5.0" resolved "https://registry.yarnpkg.com/entities/-/entities-4.5.0.tgz#5d268ea5e7113ec74c4d033b79ea5a35a488fb48" integrity sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw== +error-ex@^1.3.1: + version "1.3.2" + resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" + integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== + dependencies: + is-arrayish "^0.2.1" + esbuild@^0.20.1: version "0.20.2" resolved "https://registry.yarnpkg.com/esbuild/-/esbuild-0.20.2.tgz#9d6b2386561766ee6b5a55196c6d766d28c87ea1" @@ -1379,7 +1671,7 @@ ignore@^5.2.0, ignore@^5.3.1: resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.3.1.tgz#5073e554cd42c5b33b394375f538b8593e34d4ef" integrity sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw== -import-fresh@^3.2.1: +import-fresh@^3.2.1, import-fresh@^3.3.0: version "3.3.0" resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.0.tgz#37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b" integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw== @@ -1410,6 +1702,11 @@ inherits@2: resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== +is-arrayish@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" + integrity sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg== + is-core-module@^2.1.0, is-core-module@^2.13.0: version "2.13.1" resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.13.1.tgz#ad0d7532c6fea9da1ebdc82742d74525c6273384" @@ -1471,6 +1768,11 @@ json-buffer@3.0.1: resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.1.tgz#9338802a30d3b6605fbe0613e094008ca8c05a13" integrity sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ== +json-parse-even-better-errors@^2.3.0: + version "2.3.1" + resolved "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d" + integrity sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w== + json-schema-traverse@^0.4.1: version "0.4.1" resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" @@ -1513,6 +1815,11 @@ levn@^0.4.1: prelude-ls "^1.2.1" type-check "~0.4.0" +lines-and-columns@^1.1.6: + version "1.2.4" + resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632" + integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg== + locate-path@^6.0.0: version "6.0.0" resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-6.0.0.tgz#55321eb309febbc59c4801d931a72452a681d286" @@ -1547,6 +1854,13 @@ loose-envify@^1.1.0: dependencies: js-tokens "^3.0.0 || ^4.0.0" +lower-case@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/lower-case/-/lower-case-2.0.2.tgz#6fa237c63dbdc4a82ca0fd882e4722dc5e634e28" + integrity sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg== + dependencies: + tslib "^2.0.3" + lru-cache@^5.1.1: version "5.1.1" resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920" @@ -1622,6 +1936,14 @@ natural-compare@^1.4.0: resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" integrity sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw== +no-case@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/no-case/-/no-case-3.0.4.tgz#d361fd5c9800f558551a8369fc0dcd4662b6124d" + integrity sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg== + dependencies: + lower-case "^2.0.2" + tslib "^2.0.3" + node-releases@^2.0.14: version "2.0.14" resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.14.tgz#2ffb053bceb8b2be8495ece1ab6ce600c4461b0b" @@ -1667,6 +1989,16 @@ parent-module@^1.0.0: dependencies: callsites "^3.0.0" +parse-json@^5.2.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-5.2.0.tgz#c76fc66dee54231c962b22bcc8a72cf2f99753cd" + integrity sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg== + dependencies: + "@babel/code-frame" "^7.0.0" + error-ex "^1.3.1" + json-parse-even-better-errors "^2.3.0" + lines-and-columns "^1.1.6" + path-browserify@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/path-browserify/-/path-browserify-1.0.1.tgz#d98454a9c3753d5790860f16f68867b9e46be1fd" @@ -1858,6 +2190,14 @@ slash@^3.0.0: resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== +snake-case@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/snake-case/-/snake-case-3.0.4.tgz#4f2bbd568e9935abdfd593f34c691dadb49c452c" + integrity sha512-LAOh4z89bGQvl9pFfNF8V146i7o7/CqFPbqzYgP+yYzDIDeS9HaNFtXABamRW+AQzEVODcvE79ljJ+8a9YSdMg== + dependencies: + dot-case "^3.0.4" + tslib "^2.0.3" + source-map-js@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.2.0.tgz#16b809c162517b5b8c3e7dcd315a2a5c2612b2af" @@ -1916,6 +2256,11 @@ supports-preserve-symlinks-flag@^1.0.0: resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== +svg-parser@^2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/svg-parser/-/svg-parser-2.0.4.tgz#fdc2e29e13951736140b76cb122c8ee6630eb6b5" + integrity sha512-e4hG1hRwoOdRb37cIMSgzNsxyzKfayW6VOflrwvR+/bzrkyxY/31WkbgnQpgtrNp1SdpJvpUAGTa/ZoiPNDuRQ== + text-table@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" @@ -1938,6 +2283,11 @@ ts-api-utils@^1.3.0: resolved "https://registry.yarnpkg.com/ts-api-utils/-/ts-api-utils-1.3.0.tgz#4b490e27129f1e8e686b45cc4ab63714dc60eea1" integrity sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ== +tslib@^2.0.3: + version "2.6.2" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.6.2.tgz#703ac29425e7b37cd6fd456e92404d46d1f3e4ae" + integrity sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q== + type-check@^0.4.0, type-check@~0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1" @@ -2003,6 +2353,15 @@ vite-plugin-dts@^3.9.1: magic-string "^0.30.8" vue-tsc "^1.8.27" +vite-plugin-svgr@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/vite-plugin-svgr/-/vite-plugin-svgr-4.2.0.tgz#9f3bf5206b0ec510287e56d16f1915e729bb4e6b" + integrity sha512-SC7+FfVtNQk7So0XMjrrtLAbEC8qjFPifyD7+fs/E6aaNdVde6umlVVh0QuwDLdOMu7vp5RiGFsB70nj5yo0XA== + dependencies: + "@rollup/pluginutils" "^5.0.5" + "@svgr/core" "^8.1.0" + "@svgr/plugin-jsx" "^8.1.0" + vite@^5.2.0: version "5.2.11" resolved "https://registry.yarnpkg.com/vite/-/vite-5.2.11.tgz#726ec05555431735853417c3c0bfb36003ca0cbd"