From b35a5a3f1d18248e531a0c0122b6e3a8de23071b Mon Sep 17 00:00:00 2001 From: Mijin Sim <80371353+azure-553@users.noreply.github.com> Date: Tue, 27 Aug 2024 20:25:41 +0900 Subject: [PATCH 1/7] =?UTF-8?q?feat:=20QuizProblemStopModal=20=EC=B6=94?= =?UTF-8?q?=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/shared/QuizProblemStopModal/index.tsx | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 src/components/shared/QuizProblemStopModal/index.tsx diff --git a/src/components/shared/QuizProblemStopModal/index.tsx b/src/components/shared/QuizProblemStopModal/index.tsx new file mode 100644 index 00000000..eb003721 --- /dev/null +++ b/src/components/shared/QuizProblemStopModal/index.tsx @@ -0,0 +1,5 @@ +import React from 'react' + +export default function QuizProblemStopModal() { + return
QuizProblemStopModal
+} From 977d2583840aa8a4309c3a24e9d711a9d58e4a71 Mon Sep 17 00:00:00 2001 From: Mijin Sim <80371353+azure-553@users.noreply.github.com> Date: Tue, 27 Aug 2024 21:33:11 +0900 Subject: [PATCH 2/7] =?UTF-8?q?feat:=20Modal=20storybook=20=EC=B6=94?= =?UTF-8?q?=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/common/Modal/Modal.stories.tsx | 23 +++++++++++++++++++ src/components/common/Modal/index.tsx | 5 ++++ 2 files changed, 28 insertions(+) create mode 100644 src/components/common/Modal/Modal.stories.tsx create mode 100644 src/components/common/Modal/index.tsx diff --git a/src/components/common/Modal/Modal.stories.tsx b/src/components/common/Modal/Modal.stories.tsx new file mode 100644 index 00000000..53b1ad95 --- /dev/null +++ b/src/components/common/Modal/Modal.stories.tsx @@ -0,0 +1,23 @@ +import type { Meta, StoryObj } from '@storybook/react' +import Modal from '.' + +const meta: Meta = { + title: 'components/common/Modal', + component: Modal, + tags: ['autodocs'], + argTypes: { + children: { + description: 'Modal type에 맞는 형태의 내용을 전달합니다', + }, + }, +} + +export default meta + +type Story = StoryObj + +export const Default: Story = { + args: { + children: 'Modal', + }, +} diff --git a/src/components/common/Modal/index.tsx b/src/components/common/Modal/index.tsx new file mode 100644 index 00000000..4b12770e --- /dev/null +++ b/src/components/common/Modal/index.tsx @@ -0,0 +1,5 @@ +import React from 'react' + +export default function Modal() { + return
Modal
+} From e582d0cf89ade34443f628aba11c11a976948fda Mon Sep 17 00:00:00 2001 From: Mijin Sim <80371353+azure-553@users.noreply.github.com> Date: Thu, 5 Sep 2024 03:46:40 +0900 Subject: [PATCH 3/7] =?UTF-8?q?feat:=20=ED=80=B4=EC=A6=88=20=EC=A4=91?= =?UTF-8?q?=EA=B0=84=EC=97=90=20=EB=82=98=EA=B0=88=EA=B2=BD=EC=9A=B0=20?= =?UTF-8?q?=EB=82=98=ED=83=80=EB=82=98=EB=8A=94=20Modal=20=EC=B6=94?= =?UTF-8?q?=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/common/Modal/index.tsx | 14 +++++-- .../shared/QuizProblemStopModal/index.tsx | 37 +++++++++++++++++-- 2 files changed, 45 insertions(+), 6 deletions(-) diff --git a/src/components/common/Modal/index.tsx b/src/components/common/Modal/index.tsx index 4b12770e..4500bea5 100644 --- a/src/components/common/Modal/index.tsx +++ b/src/components/common/Modal/index.tsx @@ -1,5 +1,13 @@ -import React from 'react' +type ModalType = { + children: React.ReactNode +} -export default function Modal() { - return
Modal
+export default function Modal({ children }: ModalType) { + return ( +
+
+ {children} +
+
+ ) } diff --git a/src/components/shared/QuizProblemStopModal/index.tsx b/src/components/shared/QuizProblemStopModal/index.tsx index eb003721..f2b45f27 100644 --- a/src/components/shared/QuizProblemStopModal/index.tsx +++ b/src/components/shared/QuizProblemStopModal/index.tsx @@ -1,5 +1,36 @@ -import React from 'react' +import Button from '@/components/common/Button' +import Modal from '@/components/common/Modal' -export default function QuizProblemStopModal() { - return
QuizProblemStopModal
+interface QuizProblemStopModalProps { + isModalOpen: boolean + totalProblem: number + currentProblem: number +} + +export default function QuizProblemStopModal({ + isModalOpen, + totalProblem, + currentProblem, +}: QuizProblemStopModalProps) { + if (!isModalOpen) return null + + return ( + +
+

퀴즈를 그만두시겠어요?

+
+

{totalProblem - currentProblem}

+

문제밖에 남지 않았어요!

+
+

+ 지금 그만두면 다시 처음부터 진행해야해요. +

+
+ +
+ + +
+
+ ) } From 5ee3674554dd4004eeab0fd6d4a61878365a4c8a Mon Sep 17 00:00:00 2001 From: Mijin Sim <80371353+azure-553@users.noreply.github.com> Date: Sat, 7 Sep 2024 19:09:52 +0900 Subject: [PATCH 4/7] =?UTF-8?q?feat:=20QuizProblemStopModal=20story=20?= =?UTF-8?q?=EC=9E=91=EC=84=B1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/common/Modal/Modal.stories.tsx | 16 ++++++++++++++++ .../shared/QuizProblemStopModal/index.tsx | 4 +++- 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/src/components/common/Modal/Modal.stories.tsx b/src/components/common/Modal/Modal.stories.tsx index 53b1ad95..6a48b982 100644 --- a/src/components/common/Modal/Modal.stories.tsx +++ b/src/components/common/Modal/Modal.stories.tsx @@ -1,4 +1,6 @@ +import React from 'react' import type { Meta, StoryObj } from '@storybook/react' +import QuizProblemStopModal from '@/components/shared/QuizProblemStopModal' import Modal from '.' const meta: Meta = { @@ -21,3 +23,17 @@ export const Default: Story = { children: 'Modal', }, } + +export const QuizProblemStopModalStory: Story = { + render: () => { + return ( + <> + + + ) + }, +} diff --git a/src/components/shared/QuizProblemStopModal/index.tsx b/src/components/shared/QuizProblemStopModal/index.tsx index f2b45f27..8545e928 100644 --- a/src/components/shared/QuizProblemStopModal/index.tsx +++ b/src/components/shared/QuizProblemStopModal/index.tsx @@ -28,7 +28,9 @@ export default function QuizProblemStopModal({
- +
From 342dbb25ddad5d8a658791bc5303c4f58ec9bc6d Mon Sep 17 00:00:00 2001 From: Mijin Sim <80371353+azure-553@users.noreply.github.com> Date: Sun, 8 Sep 2024 17:22:07 +0900 Subject: [PATCH 5/7] =?UTF-8?q?chore:=20=EA=B0=84=EA=B2=A9=EC=88=98?= =?UTF-8?q?=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/shared/QuizProblemStopModal/index.tsx | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/components/shared/QuizProblemStopModal/index.tsx b/src/components/shared/QuizProblemStopModal/index.tsx index 8545e928..043cecab 100644 --- a/src/components/shared/QuizProblemStopModal/index.tsx +++ b/src/components/shared/QuizProblemStopModal/index.tsx @@ -16,7 +16,7 @@ export default function QuizProblemStopModal({ return ( -
+

퀴즈를 그만두시겠어요?

{totalProblem - currentProblem}

@@ -27,11 +27,13 @@ export default function QuizProblemStopModal({

-
- - +
) From 80a7e257f9f66fb0dcb4636504c299ddc16499f4 Mon Sep 17 00:00:00 2001 From: Mijin Sim <80371353+azure-553@users.noreply.github.com> Date: Tue, 17 Sep 2024 23:47:18 +0900 Subject: [PATCH 6/7] =?UTF-8?q?chore:=20=EC=84=A0=EC=96=B8=EC=A0=81=20?= =?UTF-8?q?=EB=AA=A8=EB=8B=AC=EB=A1=9C=20=EB=B3=80=EA=B2=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package-lock.json | 960 +++++++++++++++++- package.json | 1 + src/components/common/Modal/index.tsx | 1 + .../shared/QuizProblemStopModal/index.tsx | 43 +- 4 files changed, 984 insertions(+), 21 deletions(-) diff --git a/package-lock.json b/package-lock.json index ade901f3..c85e466d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,6 +8,7 @@ "name": "space-d", "version": "0.1.0", "dependencies": { + "@ark-ui/react": "^3.12.0", "@tanstack/react-query": "^5.52.0", "@tanstack/react-query-devtools": "^5.52.0", "axios": "^1.7.4", @@ -77,6 +78,66 @@ "node": ">=6.0.0" } }, + "node_modules/@ark-ui/react": { + "version": "3.12.0", + "resolved": "https://registry.npmjs.org/@ark-ui/react/-/react-3.12.0.tgz", + "integrity": "sha512-4Hbgn0nWspNPxIhagRuBY+7qiNtaH7WEIoqJR4mYQ/6sdN4sw8rg0XwJpfIw5quyxDDqpUv3O72vQgZr/4eFBQ==", + "license": "MIT", + "dependencies": { + "@internationalized/date": "3.5.5", + "@zag-js/accordion": "0.68.0", + "@zag-js/anatomy": "0.68.0", + "@zag-js/avatar": "0.68.0", + "@zag-js/carousel": "0.68.0", + "@zag-js/checkbox": "0.68.0", + "@zag-js/clipboard": "0.68.0", + "@zag-js/collapsible": "0.68.0", + "@zag-js/color-picker": "0.68.0", + "@zag-js/color-utils": "0.68.0", + "@zag-js/combobox": "0.68.0", + "@zag-js/core": "0.68.0", + "@zag-js/date-picker": "0.68.0", + "@zag-js/date-utils": "0.68.0", + "@zag-js/dialog": "0.68.0", + "@zag-js/dom-query": "0.68.0", + "@zag-js/editable": "0.68.0", + "@zag-js/file-upload": "0.68.0", + "@zag-js/file-utils": "0.68.0", + "@zag-js/highlight-word": "0.68.0", + "@zag-js/hover-card": "0.68.0", + "@zag-js/i18n-utils": "0.68.0", + "@zag-js/menu": "0.68.0", + "@zag-js/number-input": "0.68.0", + "@zag-js/pagination": "0.68.0", + "@zag-js/pin-input": "0.68.0", + "@zag-js/popover": "0.68.0", + "@zag-js/presence": "0.68.0", + "@zag-js/progress": "0.68.0", + "@zag-js/qr-code": "0.68.0", + "@zag-js/radio-group": "0.68.0", + "@zag-js/rating-group": "0.68.0", + "@zag-js/react": "0.68.0", + "@zag-js/select": "0.68.0", + "@zag-js/signature-pad": "0.68.0", + "@zag-js/slider": "0.68.0", + "@zag-js/splitter": "0.68.0", + "@zag-js/steps": "0.68.0", + "@zag-js/switch": "0.68.0", + "@zag-js/tabs": "0.68.0", + "@zag-js/tags-input": "0.68.0", + "@zag-js/time-picker": "0.68.0", + "@zag-js/timer": "0.68.0", + "@zag-js/toast": "0.68.0", + "@zag-js/toggle-group": "0.68.0", + "@zag-js/tooltip": "0.68.0", + "@zag-js/tree-view": "0.68.0", + "@zag-js/types": "0.68.0" + }, + "peerDependencies": { + "react": ">=18.0.0", + "react-dom": ">=18.0.0" + } + }, "node_modules/@babel/code-frame": { "version": "7.24.7", "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.7.tgz", @@ -2962,6 +3023,31 @@ "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, + "node_modules/@floating-ui/core": { + "version": "1.6.8", + "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.6.8.tgz", + "integrity": "sha512-7XJ9cPU+yI2QeLS+FCSlqNFZJq8arvswefkZrYI1yQBbftw6FyrZOxYSh+9S7z7TpeWlRt9zJ5IhM1WIL334jA==", + "license": "MIT", + "dependencies": { + "@floating-ui/utils": "^0.2.8" + } + }, + "node_modules/@floating-ui/dom": { + "version": "1.6.10", + "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.6.10.tgz", + "integrity": "sha512-fskgCFv8J8OamCmyun8MfjB1Olfn+uZKjOKZ0vhYF3gRmEUXcGOjxWL8bBr7i4kIuPZ2KD2S3EUIOxnjC8kl2A==", + "license": "MIT", + "dependencies": { + "@floating-ui/core": "^1.6.0", + "@floating-ui/utils": "^0.2.7" + } + }, + "node_modules/@floating-ui/utils": { + "version": "0.2.8", + "resolved": "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.2.8.tgz", + "integrity": "sha512-kym7SodPp8/wloecOpcmSnWJsK7M0E5Wg8UcFA+uO4B9s5d0ywXOEro/8HM9x0rW+TljRzul/14UYz3TleT3ig==", + "license": "MIT" + }, "node_modules/@humanwhocodes/config-array": { "version": "0.11.14", "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.14.tgz", @@ -3469,6 +3555,24 @@ "url": "https://opencollective.com/libvips" } }, + "node_modules/@internationalized/date": { + "version": "3.5.5", + "resolved": "https://registry.npmjs.org/@internationalized/date/-/date-3.5.5.tgz", + "integrity": "sha512-H+CfYvOZ0LTJeeLOqm19E3uj/4YjrmOFtBufDHPfvtI80hFAMqtrp7oCACpe4Cil5l8S0Qu/9dYfZc/5lY8WQQ==", + "license": "Apache-2.0", + "dependencies": { + "@swc/helpers": "^0.5.0" + } + }, + "node_modules/@internationalized/number": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/@internationalized/number/-/number-3.5.3.tgz", + "integrity": "sha512-rd1wA3ebzlp0Mehj5YTuTI50AQEx80gWFyHcQu+u91/5NgdwBecO8BH6ipPfE+lmQ9d63vpB3H9SHoIUiupllw==", + "license": "Apache-2.0", + "dependencies": { + "@swc/helpers": "^0.5.0" + } + }, "node_modules/@isaacs/cliui": { "version": "8.0.2", "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", @@ -5913,6 +6017,806 @@ "dev": true, "license": "0BSD" }, + "node_modules/@zag-js/accordion": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/accordion/-/accordion-0.68.0.tgz", + "integrity": "sha512-9hpNCyXYNy2mumM+bTb9R+dQw4thQoyNjB9VHH2CeIgHTRwlW62dZdfDQboPcvknkDEIKkiLTTPyS3Enp4BqUw==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "0.68.0", + "@zag-js/core": "0.68.0", + "@zag-js/dom-event": "0.68.0", + "@zag-js/dom-query": "0.68.0", + "@zag-js/types": "0.68.0", + "@zag-js/utils": "0.68.0" + } + }, + "node_modules/@zag-js/anatomy": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/anatomy/-/anatomy-0.68.0.tgz", + "integrity": "sha512-8/DGqjNAlTgmRKqFrkcs2TDY71xEaLtdaTr+mFi25xW+3nTVpCNB/3bhORMs8MIIvXyOKZAnbIvPQOjJZDuKFQ==", + "license": "MIT" + }, + "node_modules/@zag-js/aria-hidden": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/aria-hidden/-/aria-hidden-0.68.0.tgz", + "integrity": "sha512-ed8VB8l8wliMdmJO8t03NeZFILcH+HadeU1UeGyse6CAtdQiizrhBKPVVMCJ9bdTXyONJNpD71eWLhDcx1jRZA==", + "license": "MIT", + "dependencies": { + "aria-hidden": "1.2.4" + } + }, + "node_modules/@zag-js/auto-resize": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/auto-resize/-/auto-resize-0.68.0.tgz", + "integrity": "sha512-HDo4UmKgAKtZX43JUaG0Nd/5fhU6NI894hqaR/uKJ3fN9nSmBPN6o3m3ic5jcg/ffjvyQfh330Lbm3Sn1njpEQ==", + "license": "MIT", + "dependencies": { + "@zag-js/dom-query": "0.68.0" + } + }, + "node_modules/@zag-js/avatar": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/avatar/-/avatar-0.68.0.tgz", + "integrity": "sha512-T+Et4hFCqthVVgPsfAbApl0giMcg7+Pg7p9RNnSZi4LkBITX3bHPQpKdLkLILr/EAK6Sdhp5lCgOAJN66CmxPg==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "0.68.0", + "@zag-js/core": "0.68.0", + "@zag-js/dom-query": "0.68.0", + "@zag-js/types": "0.68.0", + "@zag-js/utils": "0.68.0" + } + }, + "node_modules/@zag-js/carousel": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/carousel/-/carousel-0.68.0.tgz", + "integrity": "sha512-a2Nx/DDcW02H1jtwllA4xAqerAldkMBwwr4CuYdMHaupxxnJNyFxWyE/ShXOIXnefc6bnXkj6SaRxuOJu8Gx1g==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "0.68.0", + "@zag-js/core": "0.68.0", + "@zag-js/dom-query": "0.68.0", + "@zag-js/types": "0.68.0", + "@zag-js/utils": "0.68.0" + } + }, + "node_modules/@zag-js/checkbox": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/checkbox/-/checkbox-0.68.0.tgz", + "integrity": "sha512-ZeMP0j66UHgbRAV1J6UhCpiZf00yUfxbXER2LflBafMnMmO6nY6LFn9Kvcn+Fd41vhuNWiNTeLazw+g/35bYVg==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "0.68.0", + "@zag-js/core": "0.68.0", + "@zag-js/dom-event": "0.68.0", + "@zag-js/dom-query": "0.68.0", + "@zag-js/form-utils": "0.68.0", + "@zag-js/types": "0.68.0", + "@zag-js/utils": "0.68.0" + } + }, + "node_modules/@zag-js/clipboard": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/clipboard/-/clipboard-0.68.0.tgz", + "integrity": "sha512-szbBU+1zfu2TfKFVTAyrSVc6ppoSyEHmMa1qAcuok73r7w7ZFSv4+kWZzuG1Iqm8aWo5HDqhrUQWjmZLlsXRUQ==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "0.68.0", + "@zag-js/core": "0.68.0", + "@zag-js/dom-query": "0.68.0", + "@zag-js/types": "0.68.0", + "@zag-js/utils": "0.68.0" + } + }, + "node_modules/@zag-js/collapsible": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/collapsible/-/collapsible-0.68.0.tgz", + "integrity": "sha512-CDanyfWjAQTfPJkkeTFjrZHTrqu6DcS1VJr2HckMjODJqxkBGFBtkIi2cJNz2hs7pPSktGBKB3Zfbi24X45ezw==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "0.68.0", + "@zag-js/core": "0.68.0", + "@zag-js/dom-query": "0.68.0", + "@zag-js/types": "0.68.0", + "@zag-js/utils": "0.68.0" + } + }, + "node_modules/@zag-js/collection": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/collection/-/collection-0.68.0.tgz", + "integrity": "sha512-5yfXxiXzNa5acm7rhn1qSfOfe6hlTDzzMFvLiWQzheTowv6yusBdU0OZ/7633ym/tpyDURsQXWJrEzbW015Wgg==", + "license": "MIT", + "dependencies": { + "@zag-js/utils": "0.68.0" + } + }, + "node_modules/@zag-js/color-picker": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/color-picker/-/color-picker-0.68.0.tgz", + "integrity": "sha512-ys6HBtzfNnWm5t2uNkjH13MiRPz8idOB/oYT022kJ91uHz9TTzbkeM4lx4cmuTPSXSjsU3u25Z5c9AZ5KLotDA==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "0.68.0", + "@zag-js/color-utils": "0.68.0", + "@zag-js/core": "0.68.0", + "@zag-js/dismissable": "0.68.0", + "@zag-js/dom-event": "0.68.0", + "@zag-js/dom-query": "0.68.0", + "@zag-js/form-utils": "0.68.0", + "@zag-js/popper": "0.68.0", + "@zag-js/text-selection": "0.68.0", + "@zag-js/types": "0.68.0", + "@zag-js/utils": "0.68.0" + } + }, + "node_modules/@zag-js/color-utils": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/color-utils/-/color-utils-0.68.0.tgz", + "integrity": "sha512-xmWLBIGJEsQPcIbbP+fAxkr/FsFLasbfbUww5TWMAvYRzx3bjakU5zLBVfgC5egGlkeYYg90+I3FonCJIEnvqA==", + "license": "MIT", + "dependencies": { + "@zag-js/numeric-range": "0.68.0" + } + }, + "node_modules/@zag-js/combobox": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/combobox/-/combobox-0.68.0.tgz", + "integrity": "sha512-g4ErXk1L7xzQ2Web9p5kH2sNqywJxM1d4IWDbcX6FlpglW5EcSfRPQt9qCQ6Rv8g8/mff5hetcr8szcT5Ha+BA==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "0.68.0", + "@zag-js/aria-hidden": "0.68.0", + "@zag-js/collection": "0.68.0", + "@zag-js/core": "0.68.0", + "@zag-js/dismissable": "0.68.0", + "@zag-js/dom-event": "0.68.0", + "@zag-js/dom-query": "0.68.0", + "@zag-js/popper": "0.68.0", + "@zag-js/types": "0.68.0", + "@zag-js/utils": "0.68.0" + } + }, + "node_modules/@zag-js/core": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/core/-/core-0.68.0.tgz", + "integrity": "sha512-80iiLDum3/3Dxv6/i3VGQ0/BbR7e4VTtXZoKhaTEx7PCG75M05HyAeFHYG3qhdWW1gDabDt4j3sMjoja7c+9xg==", + "license": "MIT", + "dependencies": { + "@zag-js/store": "0.68.0", + "klona": "2.0.6" + } + }, + "node_modules/@zag-js/date-picker": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/date-picker/-/date-picker-0.68.0.tgz", + "integrity": "sha512-lzelTebdr3wgLlCIFUmQMJ95hVzN2A318EiSQqem5EbSWqnBbBOEU14qGNU3LIzr1mSSCEE4lofkwhK/WNuWXA==", + "license": "MIT", + "dependencies": { + "@internationalized/date": "3.5.5", + "@zag-js/anatomy": "0.68.0", + "@zag-js/core": "0.68.0", + "@zag-js/date-utils": "0.68.0", + "@zag-js/dismissable": "0.68.0", + "@zag-js/dom-event": "0.68.0", + "@zag-js/dom-query": "0.68.0", + "@zag-js/form-utils": "0.68.0", + "@zag-js/live-region": "0.68.0", + "@zag-js/popper": "0.68.0", + "@zag-js/text-selection": "0.68.0", + "@zag-js/types": "0.68.0", + "@zag-js/utils": "0.68.0" + } + }, + "node_modules/@zag-js/date-utils": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/date-utils/-/date-utils-0.68.0.tgz", + "integrity": "sha512-nEiG+BzQSSnMWaR5HYM1DldKgUpjnXL4z7bv6eR5xXvlqpHWD/nW73bvPDFTUnlZqLCsHpsh4dNiZYrFmZ5AkQ==", + "license": "MIT", + "peerDependencies": { + "@internationalized/date": ">=3.0.0" + } + }, + "node_modules/@zag-js/dialog": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/dialog/-/dialog-0.68.0.tgz", + "integrity": "sha512-+UZQcZ/fCXGECWwsfor/zigLc0Y90aqq0gdo08rID/hpKVc8JTIMypnPahY0TrpfOlI1fi5wYfS4nK4CWBUGyw==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "0.68.0", + "@zag-js/aria-hidden": "0.68.0", + "@zag-js/core": "0.68.0", + "@zag-js/dismissable": "0.68.0", + "@zag-js/dom-query": "0.68.0", + "@zag-js/remove-scroll": "0.68.0", + "@zag-js/types": "0.68.0", + "@zag-js/utils": "0.68.0", + "focus-trap": "7.5.4" + } + }, + "node_modules/@zag-js/dismissable": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/dismissable/-/dismissable-0.68.0.tgz", + "integrity": "sha512-RAwTgSZA4EJcw0YlSwEOKEpf9WvwpIyC66dTIF+e36U572yoUk8/eL7IYrDkxN5GH4YWLqTX6CgWynmJdhLy7g==", + "license": "MIT", + "dependencies": { + "@zag-js/dom-event": "0.68.0", + "@zag-js/dom-query": "0.68.0", + "@zag-js/interact-outside": "0.68.0", + "@zag-js/utils": "0.68.0" + } + }, + "node_modules/@zag-js/dom-event": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/dom-event/-/dom-event-0.68.0.tgz", + "integrity": "sha512-06UGXJBzLDdnfaZM/APt4YJ5jOZ7VeFsMDYBhJZuaYNT4uTPLKbrdf5393HH/PmaIM7MGf+rCy2P79W3HaFj4g==", + "license": "MIT", + "dependencies": { + "@zag-js/dom-query": "0.68.0", + "@zag-js/text-selection": "0.68.0", + "@zag-js/types": "0.68.0" + } + }, + "node_modules/@zag-js/dom-query": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/dom-query/-/dom-query-0.68.0.tgz", + "integrity": "sha512-kt+EYKgcmOF5Xsfc9Hx/6Y6e2ocVmUPzCdUdeO9hB1dPFoWLOvH3WS/KfAztPDeUWORM48YPZ31Q3QqyPuIjlQ==", + "license": "MIT" + }, + "node_modules/@zag-js/editable": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/editable/-/editable-0.68.0.tgz", + "integrity": "sha512-HlxP2gSGA8iHXu/mfm6BRrc8LCgCsZAf8OYgZWaUWQFi1T4gtGpkZE6u1U2/u8o+bKCtra2xCwg4x4UPaocQTw==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "0.68.0", + "@zag-js/core": "0.68.0", + "@zag-js/dom-event": "0.68.0", + "@zag-js/dom-query": "0.68.0", + "@zag-js/form-utils": "0.68.0", + "@zag-js/interact-outside": "0.68.0", + "@zag-js/types": "0.68.0", + "@zag-js/utils": "0.68.0" + } + }, + "node_modules/@zag-js/element-rect": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/element-rect/-/element-rect-0.68.0.tgz", + "integrity": "sha512-XHP3diCMfRlpmld81w0j32E2KPaJBEahgbQX/RDtSD5uFSh8rTJzBCLnYgGyHU2xQwBEsK9dyEr7VqmaBESXkA==", + "license": "MIT" + }, + "node_modules/@zag-js/element-size": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/element-size/-/element-size-0.68.0.tgz", + "integrity": "sha512-5Vd0T4WPmjt6EgKNm+iVYcfBH64F9qfPKTYYOZnRjBXUSqHZMqYEJkgzPS/XWMI1XSIs2yEQmr0zMVyFC1hNcw==", + "license": "MIT" + }, + "node_modules/@zag-js/file-upload": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/file-upload/-/file-upload-0.68.0.tgz", + "integrity": "sha512-8anzRj8bqUvJN6wiqHLTP8+uyxY/sYoh5s6TTF3AjtcksgIDtxITUvWBnKqaghymY+3ldQMkS0KCnALmjCnCIw==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "0.68.0", + "@zag-js/core": "0.68.0", + "@zag-js/dom-query": "0.68.0", + "@zag-js/file-utils": "0.68.0", + "@zag-js/i18n-utils": "0.68.0", + "@zag-js/types": "0.68.0", + "@zag-js/utils": "0.68.0" + } + }, + "node_modules/@zag-js/file-utils": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/file-utils/-/file-utils-0.68.0.tgz", + "integrity": "sha512-H5Kc+vm5rfqCoOlWEvVL7mHVcYMud8faNP5ACacKxPQY8fUV09GMuHzwUuskb2ArvCpwx4aYQkJ5MjF+nkK97g==", + "license": "MIT", + "dependencies": { + "@zag-js/i18n-utils": "0.68.0" + } + }, + "node_modules/@zag-js/form-utils": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/form-utils/-/form-utils-0.68.0.tgz", + "integrity": "sha512-zidEhGap+m4P9WNHIbSsJ8lDd4fT1+pFMhE12ierDSKvQN3dpjDJiqpxUO/Q45RDZfnXTXL9ddv18ZWwp7pUQg==", + "license": "MIT" + }, + "node_modules/@zag-js/highlight-word": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/highlight-word/-/highlight-word-0.68.0.tgz", + "integrity": "sha512-piRd7mH4lonUh+Lz0vMTFnMDHfNO8xyslhI4Q8resRAlh8KG1CVmDXDi2IdMUcPLaM57qMcsPpzgu7YU7aqCVQ==", + "license": "MIT" + }, + "node_modules/@zag-js/hover-card": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/hover-card/-/hover-card-0.68.0.tgz", + "integrity": "sha512-bMAnjMJ/d1/YKOiSjLSsgNt37fLB49Ke9H/Gy5gOIczZfhDekawrRVWLzg+LV55qzM9XRx8gs5k7nRcxeKdJTA==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "0.68.0", + "@zag-js/core": "0.68.0", + "@zag-js/dismissable": "0.68.0", + "@zag-js/dom-query": "0.68.0", + "@zag-js/popper": "0.68.0", + "@zag-js/types": "0.68.0", + "@zag-js/utils": "0.68.0" + } + }, + "node_modules/@zag-js/i18n-utils": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/i18n-utils/-/i18n-utils-0.68.0.tgz", + "integrity": "sha512-wXQBiUJ+zJG20T4wgXQ5uFvMJ0z2JaykWPiM1sTNnhXYFGEWM/IfM5dmwMJVYZhB8xLSsE1P21+T9nKYl9pl8w==", + "license": "MIT", + "dependencies": { + "@zag-js/dom-query": "0.68.0" + } + }, + "node_modules/@zag-js/interact-outside": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/interact-outside/-/interact-outside-0.68.0.tgz", + "integrity": "sha512-UAreOChnzUI2W2dL0tc4uNJgGhOt021NFWwpPJcahdZ65cllQsbgXm6JauEfo15mP9CwxIfCw1I1qNk+4aNRaQ==", + "license": "MIT", + "dependencies": { + "@zag-js/dom-event": "0.68.0", + "@zag-js/dom-query": "0.68.0", + "@zag-js/utils": "0.68.0" + } + }, + "node_modules/@zag-js/live-region": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/live-region/-/live-region-0.68.0.tgz", + "integrity": "sha512-ED9munpHEiTqzisVHVIfQnyUWo0zXY/0Ly7bvtJjRlJrU3Z+h2Sd8uayjoM/uXv26pLfK+5JSaxCGy6ccCqByw==", + "license": "MIT" + }, + "node_modules/@zag-js/menu": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/menu/-/menu-0.68.0.tgz", + "integrity": "sha512-mr5uhVH4Eq/jcTa0zd8JPaLUTZvxekDxCaIqYMFXCM/oiPbLfmjZjgOtbkbbo0dOIkQePuDeW5f7TecgZ7UGtg==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "0.68.0", + "@zag-js/core": "0.68.0", + "@zag-js/dismissable": "0.68.0", + "@zag-js/dom-event": "0.68.0", + "@zag-js/dom-query": "0.68.0", + "@zag-js/popper": "0.68.0", + "@zag-js/rect-utils": "0.68.0", + "@zag-js/types": "0.68.0", + "@zag-js/utils": "0.68.0" + } + }, + "node_modules/@zag-js/number-input": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/number-input/-/number-input-0.68.0.tgz", + "integrity": "sha512-6gE7tAUh/PJ4BPgVe+qLr8CFUiA5eXuWhrMr1W8R3h8adNyRsVer4cGdPWysV0/eFlnwnSKBNCRWhCPdYJRwsQ==", + "license": "MIT", + "dependencies": { + "@internationalized/number": "3.5.3", + "@zag-js/anatomy": "0.68.0", + "@zag-js/core": "0.68.0", + "@zag-js/dom-event": "0.68.0", + "@zag-js/dom-query": "0.68.0", + "@zag-js/form-utils": "0.68.0", + "@zag-js/number-utils": "0.68.0", + "@zag-js/types": "0.68.0", + "@zag-js/utils": "0.68.0" + } + }, + "node_modules/@zag-js/number-utils": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/number-utils/-/number-utils-0.68.0.tgz", + "integrity": "sha512-m+kGPRZ8eXAkVDB9KuDxCNIQ+1pQ46fn6nFnJaXET7Hf7FHtA/7BzVPNQJudvOhh9xiW0C8kkOGKlmuk24eCNg==", + "license": "MIT" + }, + "node_modules/@zag-js/numeric-range": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/numeric-range/-/numeric-range-0.68.0.tgz", + "integrity": "sha512-2/70H0r4kfnut7JSWVse8qXEVY8ukv8LGyyqHHAjVFwl5+nTBOEKytH4u6eDScRFrwS6zwDZd5UJXqwPImEC/w==", + "license": "MIT" + }, + "node_modules/@zag-js/pagination": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/pagination/-/pagination-0.68.0.tgz", + "integrity": "sha512-je0UguDcgRBSiG6GfSAky00485nZw4KyX+7FJx8iT/e3sUleX/3qKrlkQfHjIrm/toedB127xrL/pCKf5FzODg==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "0.68.0", + "@zag-js/core": "0.68.0", + "@zag-js/dom-query": "0.68.0", + "@zag-js/types": "0.68.0", + "@zag-js/utils": "0.68.0" + } + }, + "node_modules/@zag-js/pin-input": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/pin-input/-/pin-input-0.68.0.tgz", + "integrity": "sha512-hyqZN+e8+0AlRPExAS2rIlup6LCRSqQ5/SXUL8J9EQUXpG+MfxcwDX8qE8pqG0DfRj44oYsO7yLwGk+N6ZCU2Q==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "0.68.0", + "@zag-js/core": "0.68.0", + "@zag-js/dom-event": "0.68.0", + "@zag-js/dom-query": "0.68.0", + "@zag-js/form-utils": "0.68.0", + "@zag-js/types": "0.68.0", + "@zag-js/utils": "0.68.0" + } + }, + "node_modules/@zag-js/popover": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/popover/-/popover-0.68.0.tgz", + "integrity": "sha512-FR6KEV1L+AQfGpCrhXIDoxr/hgeWKX+AlSd+0Ht/i8XMVGxsvlaZFfCXXgiKw8etHbdFeuYgKoP+muP9xt13xg==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "0.68.0", + "@zag-js/aria-hidden": "0.68.0", + "@zag-js/core": "0.68.0", + "@zag-js/dismissable": "0.68.0", + "@zag-js/dom-query": "0.68.0", + "@zag-js/popper": "0.68.0", + "@zag-js/remove-scroll": "0.68.0", + "@zag-js/types": "0.68.0", + "@zag-js/utils": "0.68.0", + "focus-trap": "7.5.4" + } + }, + "node_modules/@zag-js/popper": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/popper/-/popper-0.68.0.tgz", + "integrity": "sha512-Lt0xtTegKntoQiDdeMVmW2n+SY/tk7mflUFY6ywUORLyVCQCNGZSaubOEEbBcXtSXGt53cRmmbj0oYcjbH0qww==", + "license": "MIT", + "dependencies": { + "@floating-ui/dom": "1.6.10", + "@zag-js/dom-query": "0.68.0", + "@zag-js/utils": "0.68.0" + } + }, + "node_modules/@zag-js/presence": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/presence/-/presence-0.68.0.tgz", + "integrity": "sha512-FADH+IZrGo9sbib8T6qrctWCZHUq99kfT9ohQMslb9CCOQATsTVhPaMQGc/HEsBCtdlXY7alrprnwYSngDQulw==", + "license": "MIT", + "dependencies": { + "@zag-js/core": "0.68.0", + "@zag-js/types": "0.68.0" + } + }, + "node_modules/@zag-js/progress": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/progress/-/progress-0.68.0.tgz", + "integrity": "sha512-WHtsJWqKfONvzjz/MrARE3swRemMA3XGsKLsSaXiukVd3yzzUYBri7UQdnczHZ7T4C55Glh+O1YVdyL7A4c2KA==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "0.68.0", + "@zag-js/core": "0.68.0", + "@zag-js/dom-query": "0.68.0", + "@zag-js/types": "0.68.0", + "@zag-js/utils": "0.68.0" + } + }, + "node_modules/@zag-js/qr-code": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/qr-code/-/qr-code-0.68.0.tgz", + "integrity": "sha512-ajooo4N9L+LPIxo4Ay2vDofQbJdHbuuPlFSNklfoNE3IhFm1ipMXb836Mg12W6pLhZPETWkdWXto+2N0seD3kQ==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "0.68.0", + "@zag-js/core": "0.68.0", + "@zag-js/dom-query": "0.68.0", + "@zag-js/types": "0.68.0", + "@zag-js/utils": "0.68.0", + "proxy-memoize": "3.0.1", + "uqr": "0.1.2" + } + }, + "node_modules/@zag-js/radio-group": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/radio-group/-/radio-group-0.68.0.tgz", + "integrity": "sha512-bYRyndGVA2U8LMdCsrd8hLpP3hh2kgfTtxHUfKS+vInZvC/t9d9bPfuK97NOPQXDw480TXxzOBKApmea+qXljQ==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "0.68.0", + "@zag-js/core": "0.68.0", + "@zag-js/dom-query": "0.68.0", + "@zag-js/element-rect": "0.68.0", + "@zag-js/form-utils": "0.68.0", + "@zag-js/types": "0.68.0", + "@zag-js/utils": "0.68.0" + } + }, + "node_modules/@zag-js/rating-group": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/rating-group/-/rating-group-0.68.0.tgz", + "integrity": "sha512-zHFNqoanpVFAPSvRaOFgXN6KYtRD9x0A50Y7gejKj6hTATqqIUZN94oQL/VZ3Yo8kVFyuzNE+EJgCw5+DoblHg==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "0.68.0", + "@zag-js/core": "0.68.0", + "@zag-js/dom-event": "0.68.0", + "@zag-js/dom-query": "0.68.0", + "@zag-js/form-utils": "0.68.0", + "@zag-js/types": "0.68.0", + "@zag-js/utils": "0.68.0" + } + }, + "node_modules/@zag-js/react": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/react/-/react-0.68.0.tgz", + "integrity": "sha512-H/crQlHWqLyZAV2VSKGXAYrghxXqxDxuN55xjNZgizKLrTO4fggRq68OlRDdzePcj3akbcqG3rKc9aRFJI2c8A==", + "license": "MIT", + "dependencies": { + "@zag-js/core": "0.68.0", + "@zag-js/store": "0.68.0", + "@zag-js/types": "0.68.0", + "proxy-compare": "3.0.0" + }, + "peerDependencies": { + "react": ">=18.0.0", + "react-dom": ">=18.0.0" + } + }, + "node_modules/@zag-js/rect-utils": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/rect-utils/-/rect-utils-0.68.0.tgz", + "integrity": "sha512-4cDm2oyG0iT8LapeMFt1E71BGHOLIFNY5ocNcs0iOiTghRZ1nzgY2tNy5MBHWCHTiqy0DacTfDG/2TPgmdW0xA==", + "license": "MIT" + }, + "node_modules/@zag-js/remove-scroll": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/remove-scroll/-/remove-scroll-0.68.0.tgz", + "integrity": "sha512-ghnaV7Q+Z6StKO33vYu3lz67HPnGNXRMXME4bh5x4Db+lmpZFSQUACqP5upZinUd6WCBFCd+RHu30qTc2PJK+Q==", + "license": "MIT", + "dependencies": { + "@zag-js/dom-query": "0.68.0" + } + }, + "node_modules/@zag-js/select": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/select/-/select-0.68.0.tgz", + "integrity": "sha512-84jhHO+MVhdW/GTINb9X2Vy/gnonO6b+3inM5R/iqhTXjlTs6AriDpWaWZAkZw7DXawDKgl20ywidrehUCER/Q==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "0.68.0", + "@zag-js/collection": "0.68.0", + "@zag-js/core": "0.68.0", + "@zag-js/dismissable": "0.68.0", + "@zag-js/dom-event": "0.68.0", + "@zag-js/dom-query": "0.68.0", + "@zag-js/form-utils": "0.68.0", + "@zag-js/popper": "0.68.0", + "@zag-js/types": "0.68.0", + "@zag-js/utils": "0.68.0" + } + }, + "node_modules/@zag-js/signature-pad": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/signature-pad/-/signature-pad-0.68.0.tgz", + "integrity": "sha512-ScoxXNLliU4YRLXtDDNTVqe1xWnmVUeexvQkxWxlzOBDowb8VtG2/Fvny2ezab/KgNSTpGk7RTVm4gNWIvWR4Q==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "0.68.0", + "@zag-js/core": "0.68.0", + "@zag-js/dom-event": "0.68.0", + "@zag-js/dom-query": "0.68.0", + "@zag-js/types": "0.68.0", + "@zag-js/utils": "0.68.0", + "perfect-freehand": "^1.2.2" + } + }, + "node_modules/@zag-js/slider": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/slider/-/slider-0.68.0.tgz", + "integrity": "sha512-gG6TwEZMY18sjDEZvAPFqj7PZrzu4gOcR9t41nfmo8f8jZLO+6g6z8xfRtooBO88gXN46v4oAbjB7WKk10p+Eg==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "0.68.0", + "@zag-js/core": "0.68.0", + "@zag-js/dom-event": "0.68.0", + "@zag-js/dom-query": "0.68.0", + "@zag-js/element-size": "0.68.0", + "@zag-js/form-utils": "0.68.0", + "@zag-js/numeric-range": "0.68.0", + "@zag-js/types": "0.68.0", + "@zag-js/utils": "0.68.0" + } + }, + "node_modules/@zag-js/splitter": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/splitter/-/splitter-0.68.0.tgz", + "integrity": "sha512-xVgoSU+vy4a7EjmH+aEzPaId8MVKgJfB58BCyufnhh5rKrh98j1gisQbIuB39+uF4ZihMSZGM0tVCdg4XZ2NYA==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "0.68.0", + "@zag-js/core": "0.68.0", + "@zag-js/dom-event": "0.68.0", + "@zag-js/dom-query": "0.68.0", + "@zag-js/number-utils": "0.68.0", + "@zag-js/types": "0.68.0", + "@zag-js/utils": "0.68.0" + } + }, + "node_modules/@zag-js/steps": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/steps/-/steps-0.68.0.tgz", + "integrity": "sha512-SzhJpdo3Gni4RX8sfxp8LM/jcR0DV36p2je3JvlQh0xVhQTrwpXGitSbO9IWEB2gmpJtdum6lKe/VW35i9LUPQ==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "0.68.0", + "@zag-js/core": "0.68.0", + "@zag-js/dom-query": "0.68.0", + "@zag-js/types": "0.68.0", + "@zag-js/utils": "0.68.0" + } + }, + "node_modules/@zag-js/store": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/store/-/store-0.68.0.tgz", + "integrity": "sha512-AGaeGALFvvl276I4b6Dg7StmpHh5/fY3NbdnVeWyK68Nwtwwqq0kb+kxYCkA6/r4jWhZY5NfqSDZqJXQiu8W4A==", + "license": "MIT", + "dependencies": { + "proxy-compare": "3.0.0" + } + }, + "node_modules/@zag-js/switch": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/switch/-/switch-0.68.0.tgz", + "integrity": "sha512-Hlikf23L0owd6rkRBqnGmMojp/E4d3GyBqCM3cTEytDmk2tTl85vyonwU4QQgHOzkosx/5GaJdL+3f2cvXJNJQ==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "0.68.0", + "@zag-js/core": "0.68.0", + "@zag-js/dom-event": "0.68.0", + "@zag-js/dom-query": "0.68.0", + "@zag-js/form-utils": "0.68.0", + "@zag-js/types": "0.68.0", + "@zag-js/utils": "0.68.0" + } + }, + "node_modules/@zag-js/tabs": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/tabs/-/tabs-0.68.0.tgz", + "integrity": "sha512-2/IWzCAp5lmhCZG25O9ASAnnBZe+InZ7MCaOxwp42i/ePudOeVqNh8hk+EK+XWwFlunwYI54xYU+D25mqTmApA==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "0.68.0", + "@zag-js/core": "0.68.0", + "@zag-js/dom-event": "0.68.0", + "@zag-js/dom-query": "0.68.0", + "@zag-js/element-rect": "0.68.0", + "@zag-js/types": "0.68.0", + "@zag-js/utils": "0.68.0" + } + }, + "node_modules/@zag-js/tags-input": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/tags-input/-/tags-input-0.68.0.tgz", + "integrity": "sha512-yaul6zETPlLTySWEkA7ZZavH76vPtTnqjI4kQExs/lg7La5ekxiQaOcofGKtyJMJ4VhRYHPVTTHQjb9kDQN5hw==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "0.68.0", + "@zag-js/auto-resize": "0.68.0", + "@zag-js/core": "0.68.0", + "@zag-js/dom-event": "0.68.0", + "@zag-js/dom-query": "0.68.0", + "@zag-js/form-utils": "0.68.0", + "@zag-js/interact-outside": "0.68.0", + "@zag-js/live-region": "0.68.0", + "@zag-js/types": "0.68.0", + "@zag-js/utils": "0.68.0" + } + }, + "node_modules/@zag-js/text-selection": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/text-selection/-/text-selection-0.68.0.tgz", + "integrity": "sha512-0Oc+HcHojnGsxqZ3DmwQd+sc0mJytDd/7vckm0aQ7zAe8zYpgDpvk/4Jf4A7WHulrer2xnPgdDzJVRY7IurXLQ==", + "license": "MIT", + "dependencies": { + "@zag-js/dom-query": "0.68.0" + } + }, + "node_modules/@zag-js/time-picker": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/time-picker/-/time-picker-0.68.0.tgz", + "integrity": "sha512-sm+/QJ94dEaNhC8VMKZJkZIgEMG3UDq2bb3FQPZwuh/lVmu/DaTLRIoosdWaIosTsgrn/kFYcl2fw9rvNQ2WyQ==", + "license": "MIT", + "dependencies": { + "@internationalized/date": "3.5.5", + "@zag-js/anatomy": "0.68.0", + "@zag-js/core": "0.68.0", + "@zag-js/dismissable": "0.68.0", + "@zag-js/dom-event": "^0.68.0", + "@zag-js/dom-query": "0.68.0", + "@zag-js/popper": "0.68.0", + "@zag-js/types": "0.68.0", + "@zag-js/utils": "0.68.0" + } + }, + "node_modules/@zag-js/timer": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/timer/-/timer-0.68.0.tgz", + "integrity": "sha512-tS2Ai5rSSl/A4Qjacx+/umlguQNoksrhj15Uu7fuLDSIzP9SMK9/l27Gll8Uc/twSr0q7U8/j3z9lggC68sExw==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "0.68.0", + "@zag-js/core": "0.68.0", + "@zag-js/dom-query": "0.68.0", + "@zag-js/types": "0.68.0", + "@zag-js/utils": "0.68.0" + } + }, + "node_modules/@zag-js/toast": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/toast/-/toast-0.68.0.tgz", + "integrity": "sha512-2KBgbPcOreDmyNVzkIWiOi/6bgqXSBBHa+w6KiZ1BTbAMD0OMZNM/Vu/dP4h1nQMzT0bf0JT0i82qWfNrkSCgg==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "0.68.0", + "@zag-js/core": "0.68.0", + "@zag-js/dismissable": "0.68.0", + "@zag-js/dom-event": "0.68.0", + "@zag-js/dom-query": "0.68.0", + "@zag-js/types": "0.68.0", + "@zag-js/utils": "0.68.0" + } + }, + "node_modules/@zag-js/toggle-group": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/toggle-group/-/toggle-group-0.68.0.tgz", + "integrity": "sha512-vaT/TW8Ns2PRGlGZREj3aqSNupz8XZpMt+Bxe0aakpIF7+dprH8G9XxGvxzhvPv6Zt7pu5AHQ/mjYiy/I0nA9Q==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "0.68.0", + "@zag-js/core": "0.68.0", + "@zag-js/dom-event": "0.68.0", + "@zag-js/dom-query": "0.68.0", + "@zag-js/types": "0.68.0", + "@zag-js/utils": "0.68.0" + } + }, + "node_modules/@zag-js/tooltip": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/tooltip/-/tooltip-0.68.0.tgz", + "integrity": "sha512-SUSsakaJqTwXz5Pv+gbbiEjQeFMiJPm7hNUKxytaLUb6pl8e8iDN6VXxNXtL3RFknz5ncXnknJn6QEMQoCvpdQ==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "0.68.0", + "@zag-js/core": "0.68.0", + "@zag-js/dom-event": "0.68.0", + "@zag-js/dom-query": "0.68.0", + "@zag-js/popper": "0.68.0", + "@zag-js/types": "0.68.0", + "@zag-js/utils": "0.68.0" + } + }, + "node_modules/@zag-js/tree-view": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/tree-view/-/tree-view-0.68.0.tgz", + "integrity": "sha512-k3MJhk+kAL/LTTdan0W2D9wEkQYRiQMZEqpmOLDySyT94YyO6fYPKX/BDJ+Q6n1YMnruM1O+UGNuSsep7EVMxw==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "0.68.0", + "@zag-js/core": "0.68.0", + "@zag-js/dom-event": "0.68.0", + "@zag-js/dom-query": "0.68.0", + "@zag-js/types": "0.68.0", + "@zag-js/utils": "0.68.0" + } + }, + "node_modules/@zag-js/types": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/types/-/types-0.68.0.tgz", + "integrity": "sha512-TFsF9oQR/04NMvFaQR4EiDsaRHU9abajN2F59PxAmUCVNKJgEvv5645QOLBjB6aK2j47VHZODMF8vaWh8AVfUQ==", + "license": "MIT", + "dependencies": { + "csstype": "3.1.3" + } + }, + "node_modules/@zag-js/utils": { + "version": "0.68.0", + "resolved": "https://registry.npmjs.org/@zag-js/utils/-/utils-0.68.0.tgz", + "integrity": "sha512-i/OqFZVEqA6g1K0Mq7JwHmMglmm/vOAgceu5rfKO6z/+KzD0Re+oxDPEWCNQnZuBpJrDHgFgnuCQDMyrf/LHAQ==", + "license": "MIT" + }, "node_modules/abort-controller": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", @@ -6181,6 +7085,18 @@ "dev": true, "license": "Python-2.0" }, + "node_modules/aria-hidden": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/aria-hidden/-/aria-hidden-1.2.4.tgz", + "integrity": "sha512-y+CcFFwelSXpLZk/7fMB2mUbGtX9lKycf1MWJ7CaTIERyitVlyQx6C+sxcROU2BAJ24OiZyK+8wj2i8AlBoS3A==", + "license": "MIT", + "dependencies": { + "tslib": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/aria-query": { "version": "5.1.3", "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.1.3.tgz", @@ -7902,7 +8818,6 @@ "version": "3.1.3", "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==", - "devOptional": true, "license": "MIT" }, "node_modules/damerau-levenshtein": { @@ -9724,6 +10639,15 @@ "node": ">=0.4.0" } }, + "node_modules/focus-trap": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/focus-trap/-/focus-trap-7.5.4.tgz", + "integrity": "sha512-N7kHdlgsO/v+iD/dMoJKtsSqs5Dz/dXZVebRgJw23LDk+jMi/974zyiOYDziY2JPp8xivq9BmUGwIJMiuSBi7w==", + "license": "MIT", + "dependencies": { + "tabbable": "^6.2.0" + } + }, "node_modules/follow-redirects": { "version": "1.15.6", "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.6.tgz", @@ -11489,7 +12413,6 @@ "version": "2.0.6", "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.6.tgz", "integrity": "sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==", - "dev": true, "license": "MIT", "engines": { "node": ">= 8" @@ -12919,6 +13842,12 @@ "node": ">=0.12" } }, + "node_modules/perfect-freehand": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/perfect-freehand/-/perfect-freehand-1.2.2.tgz", + "integrity": "sha512-eh31l019WICQ03pkF3FSzHxB8n07ItqIQ++G5UV8JX0zVOXzgTGCqnRR0jJ2h9U8/2uW4W4mtGJELt9kEV0CFQ==", + "license": "MIT" + }, "node_modules/picocolors": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.1.tgz", @@ -13496,12 +14425,27 @@ "node": ">= 0.10" } }, + "node_modules/proxy-compare": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/proxy-compare/-/proxy-compare-3.0.0.tgz", + "integrity": "sha512-y44MCkgtZUCT9tZGuE278fB7PWVf7fRYy0vbRXAts2o5F0EfC4fIQrvQQGBJo1WJbFcVLXzApOscyJuZqHQc1w==", + "license": "MIT" + }, "node_modules/proxy-from-env": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==", "license": "MIT" }, + "node_modules/proxy-memoize": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/proxy-memoize/-/proxy-memoize-3.0.1.tgz", + "integrity": "sha512-VDdG/VYtOgdGkWJx7y0o7p+zArSf2383Isci8C+BP3YXgMYDoPd3cCBjw0JdWb6YBb9sFiOPbAADDVTPJnh+9g==", + "license": "MIT", + "dependencies": { + "proxy-compare": "^3.0.0" + } + }, "node_modules/public-encrypt": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", @@ -15342,6 +16286,12 @@ "url": "https://opencollective.com/unts" } }, + "node_modules/tabbable": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/tabbable/-/tabbable-6.2.0.tgz", + "integrity": "sha512-Cat63mxsVJlzYvN51JmVXIgNoUokrIaT2zLclCXjRd8boZ0004U4KCs/sToJ75C6sdlByWxpYnb5Boif1VSFew==", + "license": "MIT" + }, "node_modules/tailwind-merge": { "version": "2.4.0", "resolved": "https://registry.npmjs.org/tailwind-merge/-/tailwind-merge-2.4.0.tgz", @@ -16215,6 +17165,12 @@ "browserslist": ">= 4.21.0" } }, + "node_modules/uqr": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/uqr/-/uqr-0.1.2.tgz", + "integrity": "sha512-MJu7ypHq6QasgF5YRTjqscSzQp/W11zoUk6kvmlH+fmWEs63Y0Eib13hYFwAzagRJcVY8WVnlV+eBDUGMJ5IbA==", + "license": "MIT" + }, "node_modules/uri-js": { "version": "4.4.1", "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", diff --git a/package.json b/package.json index 0d653c9c..a3229c12 100644 --- a/package.json +++ b/package.json @@ -11,6 +11,7 @@ "build-storybook": "storybook build" }, "dependencies": { + "@ark-ui/react": "^3.12.0", "@tanstack/react-query": "^5.52.0", "@tanstack/react-query-devtools": "^5.52.0", "axios": "^1.7.4", diff --git a/src/components/common/Modal/index.tsx b/src/components/common/Modal/index.tsx index 4500bea5..8c35f16c 100644 --- a/src/components/common/Modal/index.tsx +++ b/src/components/common/Modal/index.tsx @@ -5,6 +5,7 @@ type ModalType = { export default function Modal({ children }: ModalType) { return (
+
{children}
diff --git a/src/components/shared/QuizProblemStopModal/index.tsx b/src/components/shared/QuizProblemStopModal/index.tsx index 043cecab..372ac8bb 100644 --- a/src/components/shared/QuizProblemStopModal/index.tsx +++ b/src/components/shared/QuizProblemStopModal/index.tsx @@ -1,40 +1,45 @@ import Button from '@/components/common/Button' import Modal from '@/components/common/Modal' +import { Dialog } from '@ark-ui/react' interface QuizProblemStopModalProps { isModalOpen: boolean + closeModal: () => void totalProblem: number currentProblem: number } export default function QuizProblemStopModal({ isModalOpen, + closeModal, totalProblem, currentProblem, }: QuizProblemStopModalProps) { if (!isModalOpen) return null return ( - -
-

퀴즈를 그만두시겠어요?

-
-

{totalProblem - currentProblem}

-

문제밖에 남지 않았어요!

+ + +
+

퀴즈를 그만두시겠어요?

+
+

{totalProblem - currentProblem}

+

문제밖에 남지 않았어요!

+
+

+ 지금 그만두면 다시 처음부터 진행해야해요. +

-

- 지금 그만두면 다시 처음부터 진행해야해요. -

-
-
- - -
- +
+ + +
+ + ) } From bc978233b65a8a982c5b5a1aa7837bcd2b6eee66 Mon Sep 17 00:00:00 2001 From: Mijin Sim <80371353+azure-553@users.noreply.github.com> Date: Wed, 18 Sep 2024 22:49:59 +0900 Subject: [PATCH 7/7] =?UTF-8?q?chore:=20=EB=AA=A8=EB=8B=AC=EC=B0=BD=20?= =?UTF-8?q?=EB=B0=B1=EA=B7=B8=EB=9D=BC=EC=9A=B4=EB=93=9C=20=EB=B0=8F=20?= =?UTF-8?q?=EA=B0=84=EA=B2=A9=20=EC=88=98=EC=A0=95=20=EC=99=84=EB=A3=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/common/Modal/Modal.stories.tsx | 39 ++++++++++++++-- src/components/common/Modal/index.tsx | 24 +++++++--- .../shared/QuizProblemStopModal/index.tsx | 46 ++++++++++--------- 3 files changed, 77 insertions(+), 32 deletions(-) diff --git a/src/components/common/Modal/Modal.stories.tsx b/src/components/common/Modal/Modal.stories.tsx index 6a48b982..8c15a35a 100644 --- a/src/components/common/Modal/Modal.stories.tsx +++ b/src/components/common/Modal/Modal.stories.tsx @@ -1,7 +1,9 @@ -import React from 'react' +import React, { useState } from 'react' import type { Meta, StoryObj } from '@storybook/react' import QuizProblemStopModal from '@/components/shared/QuizProblemStopModal' import Modal from '.' +import Image from 'next/image' +import Button from '../Button' const meta: Meta = { title: 'components/common/Modal', @@ -19,19 +21,48 @@ export default meta type Story = StoryObj export const Default: Story = { - args: { - children: 'Modal', + render: () => { + const [isModalOpen, setIsModalOpen] = useState(false) + + const closeModal = () => { + setIsModalOpen(false) + } + + return ( + <> + + + 모달의 내용 부분입니다 + + + ) }, } export const QuizProblemStopModalStory: Story = { render: () => { + const [isModalOpen, setIsModalOpen] = useState(false) + + const closeModal = () => { + setIsModalOpen(false) + } + return ( <> + corss.svg setIsModalOpen(true)} + width={20} + height={20} + /> ) diff --git a/src/components/common/Modal/index.tsx b/src/components/common/Modal/index.tsx index 8c35f16c..43406e6d 100644 --- a/src/components/common/Modal/index.tsx +++ b/src/components/common/Modal/index.tsx @@ -1,14 +1,26 @@ type ModalType = { children: React.ReactNode + isModalOpen: boolean + closeModal: () => void } -export default function Modal({ children }: ModalType) { +export default function Modal({ + children, + isModalOpen, + closeModal, +}: ModalType) { + if (!isModalOpen) return null return ( -
-
-
- {children} + <> +
+
+
+ {children} +
-
+ ) } diff --git a/src/components/shared/QuizProblemStopModal/index.tsx b/src/components/shared/QuizProblemStopModal/index.tsx index 372ac8bb..86e64c7c 100644 --- a/src/components/shared/QuizProblemStopModal/index.tsx +++ b/src/components/shared/QuizProblemStopModal/index.tsx @@ -1,6 +1,6 @@ +import { Dialog } from '@ark-ui/react' import Button from '@/components/common/Button' import Modal from '@/components/common/Modal' -import { Dialog } from '@ark-ui/react' interface QuizProblemStopModalProps { isModalOpen: boolean @@ -15,31 +15,33 @@ export default function QuizProblemStopModal({ totalProblem, currentProblem, }: QuizProblemStopModalProps) { - if (!isModalOpen) return null - return ( - -
-

퀴즈를 그만두시겠어요?

-
-

{totalProblem - currentProblem}

-

문제밖에 남지 않았어요!

+ + +
+

퀴즈를 그만두시겠어요?

+
+

+ {totalProblem - currentProblem} +

+

문제밖에 남지 않았어요!

+
+

+ 지금 그만두면 다시 처음부터 진행해야해요. +

-

- 지금 그만두면 다시 처음부터 진행해야해요. -

-
-
- - -
- +
+ + +
+ + ) }