From 49795451a122935a705631ae3ef395efb7ae139d Mon Sep 17 00:00:00 2001 From: jinsoo Date: Mon, 14 Apr 2025 22:26:15 +0900 Subject: [PATCH 1/4] =?UTF-8?q?fix:=20=EB=92=A4=EB=A1=9C=EA=B0=80=EA=B8=B0?= =?UTF-8?q?=20=ED=9B=84=20=EC=9E=AC=20=EC=A7=84=EC=9E=85=20=EC=8B=9C=20Ima?= =?UTF-8?q?ge=20=EC=95=88=EB=82=98=EC=98=A4=EB=8A=94=20=ED=98=84=EC=83=81?= =?UTF-8?q?=20FIX?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/components/Renderer/components/Image/Image.tsx | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/packages/notion-to-jsx/src/components/Renderer/components/Image/Image.tsx b/packages/notion-to-jsx/src/components/Renderer/components/Image/Image.tsx index 3a5bd90..895f6cd 100644 --- a/packages/notion-to-jsx/src/components/Renderer/components/Image/Image.tsx +++ b/packages/notion-to-jsx/src/components/Renderer/components/Image/Image.tsx @@ -1,4 +1,4 @@ -import React, { useState, useEffect } from 'react'; +import React, { useState } from 'react'; import { MemoizedRichText } from '../MemoizedComponents'; import { imageContainer, @@ -74,10 +74,6 @@ const Image: React.FC = ({ }) => { const [isLoaded, setIsLoaded] = useState(false); - useEffect(() => { - setIsLoaded(false); - }, [src]); - return (
Date: Mon, 14 Apr 2025 22:41:17 +0900 Subject: [PATCH 2/4] fix: Change paragraph font weight from medium to normal --- .../src/components/Renderer/components/Typography/styles.css.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/notion-to-jsx/src/components/Renderer/components/Typography/styles.css.ts b/packages/notion-to-jsx/src/components/Renderer/components/Typography/styles.css.ts index f70efab..e05bfab 100644 --- a/packages/notion-to-jsx/src/components/Renderer/components/Typography/styles.css.ts +++ b/packages/notion-to-jsx/src/components/Renderer/components/Typography/styles.css.ts @@ -19,7 +19,7 @@ export const paragraph = style({ ...baseTypography, padding: `${vars.spacing.xs} ${vars.spacing.xxs}`, fontSize: vars.typography.fontSize.base, - fontWeight: vars.typography.fontWeight.medium, + fontWeight: vars.typography.fontWeight.normal, whiteSpace: 'pre-wrap', // 줄바꿈 }); From 78e07c18db6351f9787ab2d86ee939d5ba53d903 Mon Sep 17 00:00:00 2001 From: jinsoo Date: Mon, 14 Apr 2025 23:15:11 +0900 Subject: [PATCH 3/4] feat: Add open-graph-scraper dependency and update sample data --- .../scripts/fetchNotionBlocks.ts | 2 +- .../src/sample-data/notionBlocks.json | 7859 +++++++++++---- .../components/Block/BlockRenderer.tsx | 7 +- .../Renderer/components/Bookmark/Bookmark.tsx | 84 +- .../Renderer/components/Code/styles.css.ts | 2 +- packages/notion-to-utils/package.json | 1 + .../src/client/getPageBlocks.ts | 52 + pnpm-lock.yaml | 8867 ++++++++--------- 8 files changed, 10322 insertions(+), 6552 deletions(-) diff --git a/apps/renderer-storybook/scripts/fetchNotionBlocks.ts b/apps/renderer-storybook/scripts/fetchNotionBlocks.ts index d73058a..2d64d00 100644 --- a/apps/renderer-storybook/scripts/fetchNotionBlocks.ts +++ b/apps/renderer-storybook/scripts/fetchNotionBlocks.ts @@ -12,7 +12,7 @@ const __dirname = dirname(__filename); dotenv.config({ path: resolve(__dirname, '../.env.local') }); // 페이지 ID -const PAGE_ID = '16e9c6bf2b17807aa496fc37fac0fb1b'; +const PAGE_ID = '56874170f8d44bcc996ebe4e43f67930'; // ? using this script : pnpx tsx scripts/fetchNotionBlocks.ts async function fetchAndSaveBlocks() { diff --git a/apps/renderer-storybook/src/sample-data/notionBlocks.json b/apps/renderer-storybook/src/sample-data/notionBlocks.json index 1c526f2..f6c47a1 100644 --- a/apps/renderer-storybook/src/sample-data/notionBlocks.json +++ b/apps/renderer-storybook/src/sample-data/notionBlocks.json @@ -1,13 +1,13 @@ [ { "object": "block", - "id": "1399c6bf-2b17-808a-8dbe-e828b4a00702", + "id": "4c17d007-359d-4942-a28c-212a1e8e3019", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T12:12:00.000Z", - "last_edited_time": "2024-11-09T14:18:00.000Z", + "created_time": "2023-09-11T11:30:00.000Z", + "last_edited_time": "2023-12-01T11:46:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -25,7 +25,7 @@ { "type": "text", "text": { - "content": "얼마 전에 Notion 관련 유틸을 만들면서 npm에 라이브러리를 배포했는데, 수동으로 버전 관리를 하는 것이 번거로웠다. 그래서 이를 해결하기 위해 changeset과 GitHub Action을 도입하게 되었다.\n한글로 된 포스팅이 많지 않아, 이번 기회에 공유하고자 한다.", + "content": "요즘 React, Next에서 상태 관리를 위한 라이브러리나 Context API를 사용하는 것은 거의 필수적이다.\n하지만 왜 Context API 대신 다른 상태 관리 라이브러리를 쓰는 지, 각 라이브러리가 어떠한 컨셉을 가지고 있는 지에 대해 정리해 본 적이 없어서 이번 기회에 정리해보려 한다.", "link": null }, "annotations": { @@ -36,7 +36,7 @@ "code": false, "color": "default" }, - "plain_text": "얼마 전에 Notion 관련 유틸을 만들면서 npm에 라이브러리를 배포했는데, 수동으로 버전 관리를 하는 것이 번거로웠다. 그래서 이를 해결하기 위해 changeset과 GitHub Action을 도입하게 되었다.\n한글로 된 포스팅이 많지 않아, 이번 기회에 공유하고자 한다.", + "plain_text": "요즘 React, Next에서 상태 관리를 위한 라이브러리나 Context API를 사용하는 것은 거의 필수적이다.\n하지만 왜 Context API 대신 다른 상태 관리 라이브러리를 쓰는 지, 각 라이브러리가 어떠한 컨셉을 가지고 있는 지에 대해 정리해 본 적이 없어서 이번 기회에 정리해보려 한다.", "href": null } ], @@ -45,13 +45,13 @@ }, { "object": "block", - "id": "1399c6bf-2b17-800f-8043-edb0e4cdfba8", + "id": "8d169f29-e4aa-452f-8ef1-4c74bb7face9", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T12:19:00.000Z", - "last_edited_time": "2024-11-09T12:19:00.000Z", + "created_time": "2023-11-30T02:05:00.000Z", + "last_edited_time": "2023-11-30T07:13:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -63,58 +63,13 @@ "has_children": false, "archived": false, "in_trash": false, - "type": "heading_2", - "heading_2": { - "rich_text": [ - { - "type": "text", - "text": { - "content": "버전 관리", - "link": null - }, - "annotations": { - "bold": false, - "italic": false, - "strikethrough": false, - "underline": false, - "code": false, - "color": "default" - }, - "plain_text": "버전 관리", - "href": null - } - ], - "is_toggleable": false, - "color": "default" - } - }, - { - "object": "block", - "id": "1399c6bf-2b17-80a1-80a9-e690b781bb6c", - "parent": { - "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" - }, - "created_time": "2024-11-09T12:19:00.000Z", - "last_edited_time": "2024-11-09T12:19:00.000Z", - "created_by": { - "object": "user", - "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" - }, - "last_edited_by": { - "object": "user", - "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" - }, - "has_children": false, - "archived": false, - "in_trash": false, - "type": "heading_3", - "heading_3": { + "type": "heading_1", + "heading_1": { "rich_text": [ { "type": "text", "text": { - "content": "Semver", + "content": "Context API", "link": null }, "annotations": { @@ -125,7 +80,7 @@ "code": false, "color": "default" }, - "plain_text": "Semver", + "plain_text": "Context API", "href": null } ], @@ -135,13 +90,13 @@ }, { "object": "block", - "id": "1399c6bf-2b17-80ca-a76d-e0c47863d66e", + "id": "804242d8-bab5-447f-9ec6-1b06f1fc28d9", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T12:19:00.000Z", - "last_edited_time": "2024-11-09T14:25:00.000Z", + "created_time": "2023-11-30T02:12:00.000Z", + "last_edited_time": "2023-11-30T02:12:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -153,47 +108,30 @@ "has_children": false, "archived": false, "in_trash": false, - "type": "paragraph", - "paragraph": { + "type": "quote", + "quote": { "rich_text": [ { "type": "text", "text": { - "content": "Semver(Semantic Versioning)는 버전 번호를 의미 있게 관리하기 위한 규칙으로, ", + "content": "Context", "link": null }, "annotations": { "bold": false, - "italic": false, + "italic": true, "strikethrough": false, "underline": false, "code": false, "color": "default" }, - "plain_text": "Semver(Semantic Versioning)는 버전 번호를 의미 있게 관리하기 위한 규칙으로, ", - "href": null - }, - { - "type": "text", - "text": { - "content": "주.부.수", - "link": null - }, - "annotations": { - "bold": false, - "italic": false, - "strikethrough": false, - "underline": false, - "code": true, - "color": "default" - }, - "plain_text": "주.부.수", + "plain_text": "Context", "href": null }, { "type": "text", "text": { - "content": " 형식으로 표현된다.", + "content": " lets the parent component make some information available to any component in the tree below it—no matter how deep—without passing it explicitly through props.", "link": null }, "annotations": { @@ -204,7 +142,7 @@ "code": false, "color": "default" }, - "plain_text": " 형식으로 표현된다.", + "plain_text": " lets the parent component make some information available to any component in the tree below it—no matter how deep—without passing it explicitly through props.", "href": null } ], @@ -213,13 +151,13 @@ }, { "object": "block", - "id": "1399c6bf-2b17-80f8-a064-cec3758f0efb", + "id": "99c24ce0-c364-4350-a1f0-64c22b707d08", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T14:25:00.000Z", - "last_edited_time": "2024-11-09T14:25:00.000Z", + "created_time": "2023-11-30T02:12:00.000Z", + "last_edited_time": "2023-12-01T11:47:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -237,7 +175,7 @@ { "type": "text", "text": { - "content": "주요 버전(major)은 호환되지 않는 변경 사항이 있을 때, 부 버전(minor)은 호환되는 새로운 기능이 추가될 때, 수 버전(patch)은 버그 수정 등 하위 호환 가능한 변경이 있을 때 업데이트한다.", + "content": "공식 문서를 보면 Context는 상위 컴포넌트에서 하위컴포넌트로 사용할 수 있는 정보를 전달해 주는 역할을 한다고 적혀있다.", "link": null }, "annotations": { @@ -248,7 +186,7 @@ "code": false, "color": "default" }, - "plain_text": "주요 버전(major)은 호환되지 않는 변경 사항이 있을 때, 부 버전(minor)은 호환되는 새로운 기능이 추가될 때, 수 버전(patch)은 버그 수정 등 하위 호환 가능한 변경이 있을 때 업데이트한다.", + "plain_text": "공식 문서를 보면 Context는 상위 컴포넌트에서 하위컴포넌트로 사용할 수 있는 정보를 전달해 주는 역할을 한다고 적혀있다.", "href": null } ], @@ -257,13 +195,13 @@ }, { "object": "block", - "id": "1399c6bf-2b17-8014-a833-c7544380165d", + "id": "dd5fb2a8-ba45-41e6-9380-3ad86b121b39", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T14:25:00.000Z", - "last_edited_time": "2024-11-09T14:25:00.000Z", + "created_time": "2023-11-30T02:15:00.000Z", + "last_edited_time": "2023-12-01T11:47:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -281,7 +219,7 @@ { "type": "text", "text": { - "content": "이러한 SemVer 규칙을 사용하면 버전 번호만 보고도 변경의 성격을 쉽게 파악할 수 있어 개발자와 사용자 모두에게 큰 도움이 된다.", + "content": "정보를 전달하는 방법으로는 “props drilling”이 있을 텐데 Depth가 매우 깊은 컴포넌트면 props를 계속 하위로 넘겨줘야 한다. 하지만 Context를 사용하면 props drilling이 아니라 다른 방식으로 정보를 전달할 수 있다.", "link": null }, "annotations": { @@ -292,7 +230,7 @@ "code": false, "color": "default" }, - "plain_text": "이러한 SemVer 규칙을 사용하면 버전 번호만 보고도 변경의 성격을 쉽게 파악할 수 있어 개발자와 사용자 모두에게 큰 도움이 된다.", + "plain_text": "정보를 전달하는 방법으로는 “props drilling”이 있을 텐데 Depth가 매우 깊은 컴포넌트면 props를 계속 하위로 넘겨줘야 한다. 하지만 Context를 사용하면 props drilling이 아니라 다른 방식으로 정보를 전달할 수 있다.", "href": null } ], @@ -301,13 +239,13 @@ }, { "object": "block", - "id": "1399c6bf-2b17-809f-814b-d8ae3418f622", + "id": "cbf325da-f845-470a-8d99-3dbe6889d422", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T14:51:00.000Z", - "last_edited_time": "2024-11-09T14:51:00.000Z", + "created_time": "2023-11-30T02:18:00.000Z", + "last_edited_time": "2025-04-14T14:09:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -319,39 +257,30 @@ "has_children": false, "archived": false, "in_trash": false, - "type": "paragraph", - "paragraph": { - "rich_text": [ - { - "type": "text", - "text": { - "content": "모든 라이브러리는 위 규칙으로 관리된다.", - "link": null - }, - "annotations": { - "bold": false, - "italic": false, - "strikethrough": false, - "underline": false, - "code": false, - "color": "default" - }, - "plain_text": "모든 라이브러리는 위 규칙으로 관리된다.", - "href": null - } - ], - "color": "default" + "type": "image", + "image": { + "caption": [], + "type": "file", + "file": { + "url": "https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2Fcd7314a5-d906-43b0-81e7-42eff82c02a3%2F5e43b581-9173-4898-85e7-1addb7cf754b%2FUntitled.png?table=block&id=cbf325da-f845-470a-8d99-3dbe6889d422&cache=v2", + "expiry_time": "2025-04-14T15:12:43.676Z" + }, + "format": { + "block_width": 1100, + "block_height": 449, + "block_aspect_ratio": 2.4498886414253898 + } } }, { "object": "block", - "id": "1399c6bf-2b17-803b-b80d-e5c164eb72ce", + "id": "9b36c383-f5bf-46cd-9ac3-063367d337a1", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T12:21:00.000Z", - "last_edited_time": "2024-11-09T14:17:00.000Z", + "created_time": "2023-11-30T02:19:00.000Z", + "last_edited_time": "2023-11-30T07:13:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -369,7 +298,7 @@ { "type": "text", "text": { - "content": "changeset", + "content": "사용법", "link": null }, "annotations": { @@ -380,7 +309,7 @@ "code": false, "color": "default" }, - "plain_text": "changeset", + "plain_text": "사용법", "href": null } ], @@ -390,13 +319,13 @@ }, { "object": "block", - "id": "1399c6bf-2b17-80b9-bad1-dc006f7889a4", + "id": "17fbaaa0-e82c-476b-8d54-b1e8b917a4c5", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T12:24:00.000Z", - "last_edited_time": "2024-11-09T12:24:00.000Z", + "created_time": "2023-11-30T02:19:00.000Z", + "last_edited_time": "2023-12-05T05:13:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -405,16 +334,16 @@ "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" }, - "has_children": false, + "has_children": true, "archived": false, "in_trash": false, - "type": "quote", - "quote": { + "type": "numbered_list_item", + "numbered_list_item": { "rich_text": [ { "type": "text", "text": { - "content": "A tool to manage versioning and changelogs with a focus on multi-package repositories", + "content": "Context를 생성하고 export한다.", "link": null }, "annotations": { @@ -425,47 +354,68 @@ "code": false, "color": "default" }, - "plain_text": "A tool to manage versioning and changelogs with a focus on multi-package repositories", + "plain_text": "Context를 생성하고 export한다.", "href": null } ], "color": "default" - } - }, - { - "object": "block", - "id": "1399c6bf-2b17-801b-a2b1-cc5d6a5b626a", - "parent": { - "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" - }, - "created_time": "2024-11-09T12:25:00.000Z", - "last_edited_time": "2025-04-13T13:59:00.000Z", - "created_by": { - "object": "user", - "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" - }, - "last_edited_by": { - "object": "user", - "id": "553d6fc6-e170-4227-8810-0540e2142f82" }, - "has_children": false, - "archived": false, - "in_trash": false, - "type": "link_preview", - "link_preview": { - "url": "https://github.com/changesets/changesets" - } + "children": [ + { + "object": "block", + "id": "54b83f83-7eac-4585-a5f5-112cbb8735e9", + "parent": { + "type": "block_id", + "block_id": "17fbaaa0-e82c-476b-8d54-b1e8b917a4c5" + }, + "created_time": "2023-12-01T11:47:00.000Z", + "last_edited_time": "2023-12-05T05:13:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "paragraph", + "paragraph": { + "rich_text": [ + { + "type": "text", + "text": { + "content": "export const MyContext = createContext(defaultValue)", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": true, + "color": "default" + }, + "plain_text": "export const MyContext = createContext(defaultValue)", + "href": null + } + ], + "color": "default" + } + } + ] }, { "object": "block", - "id": "1399c6bf-2b17-8087-a9fd-d2c032d4b326", + "id": "9ced63c1-83cb-46ee-9e23-a28dd142ade3", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T12:25:00.000Z", - "last_edited_time": "2024-11-09T14:17:00.000Z", + "created_time": "2023-11-30T02:21:00.000Z", + "last_edited_time": "2023-11-30T02:22:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -477,13 +427,47 @@ "has_children": false, "archived": false, "in_trash": false, - "type": "paragraph", - "paragraph": { + "type": "numbered_list_item", + "numbered_list_item": { "rich_text": [ { "type": "text", "text": { - "content": "changeset은 코드 변경 사항을 기록하고, 이를 기반으로 패키지의 버전을 효율적으로 관리할 수 있게 해주는 도구이다. 보통 라이브러리나 모노레포(monorepo) 환경에서 많이 사용되며, 여러 패키지의 변경 사항을 관리하거나 여러 개발자가 협업하는 상황에서 특히 유용하다.", + "content": "자식 컴포넌트에 ", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "자식 컴포넌트에 ", + "href": null + }, + { + "type": "text", + "text": { + "content": "useContext(MyContext)", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": true, + "color": "default" + }, + "plain_text": "useContext(MyContext)", + "href": null + }, + { + "type": "text", + "text": { + "content": " 훅을 전달한다.", "link": null }, "annotations": { @@ -494,7 +478,7 @@ "code": false, "color": "default" }, - "plain_text": "changeset은 코드 변경 사항을 기록하고, 이를 기반으로 패키지의 버전을 효율적으로 관리할 수 있게 해주는 도구이다. 보통 라이브러리나 모노레포(monorepo) 환경에서 많이 사용되며, 여러 패키지의 변경 사항을 관리하거나 여러 개발자가 협업하는 상황에서 특히 유용하다.", + "plain_text": " 훅을 전달한다.", "href": null } ], @@ -503,13 +487,13 @@ }, { "object": "block", - "id": "1399c6bf-2b17-801a-86e5-c0ce6809930e", + "id": "0fc8c66c-99f9-4214-b00e-5ce8688a31a3", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T12:27:00.000Z", - "last_edited_time": "2024-11-09T14:17:00.000Z", + "created_time": "2023-11-30T02:22:00.000Z", + "last_edited_time": "2023-11-30T02:23:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -521,13 +505,13 @@ "has_children": false, "archived": false, "in_trash": false, - "type": "paragraph", - "paragraph": { + "type": "numbered_list_item", + "numbered_list_item": { "rich_text": [ { "type": "text", "text": { - "content": "changeset의 장점 중 하나는 ", + "content": "부모 컴포넌트에서 ", "link": null }, "annotations": { @@ -538,30 +522,30 @@ "code": false, "color": "default" }, - "plain_text": "changeset의 장점 중 하나는 ", + "plain_text": "부모 컴포넌트에서 ", "href": null }, { "type": "text", "text": { - "content": "다중 패키지 관리", + "content": "children", "link": null }, "annotations": { - "bold": true, + "bold": false, "italic": false, "strikethrough": false, "underline": false, - "code": false, + "code": true, "color": "default" }, - "plain_text": "다중 패키지 관리", + "plain_text": "children", "href": null }, { "type": "text", "text": { - "content": "를 쉽게 할 수 있다는 점이다.\n모노레포에서는 여러 패키지가 하나의 저장소에 포함되어 있어 각 패키지의 변경 사항을 관리하는 것이 까다로울 수 있는데, changeset은 이를 간단하게 만들어 준다.\n또한 ", + "content": " 을 ", "link": null }, "annotations": { @@ -572,30 +556,30 @@ "code": false, "color": "default" }, - "plain_text": "를 쉽게 할 수 있다는 점이다.\n모노레포에서는 여러 패키지가 하나의 저장소에 포함되어 있어 각 패키지의 변경 사항을 관리하는 것이 까다로울 수 있는데, changeset은 이를 간단하게 만들어 준다.\n또한 ", + "plain_text": " 을 ", "href": null }, { "type": "text", "text": { - "content": "GitHub와의 통합", + "content": "", "link": null }, "annotations": { - "bold": true, + "bold": false, "italic": false, "strikethrough": false, "underline": false, - "code": false, + "code": true, "color": "default" }, - "plain_text": "GitHub와의 통합", + "plain_text": "", "href": null }, { "type": "text", "text": { - "content": "을 통해 CI/CD 파이프라인에서 자동으로 버전 관리 및 배포 과정을 수행할 수 있어, 개발자들이 수동으로 버전을 관리하는 번거로움을 줄여준다.", + "content": " 로 감싼다.", "link": null }, "annotations": { @@ -606,7 +590,7 @@ "code": false, "color": "default" }, - "plain_text": "을 통해 CI/CD 파이프라인에서 자동으로 버전 관리 및 배포 과정을 수행할 수 있어, 개발자들이 수동으로 버전을 관리하는 번거로움을 줄여준다.", + "plain_text": " 로 감싼다.", "href": null } ], @@ -615,13 +599,13 @@ }, { "object": "block", - "id": "1399c6bf-2b17-804e-8710-ec7dcfe2cf9a", + "id": "39e3e989-0d8c-4287-aa31-ada7fddbc47e", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T12:31:00.000Z", - "last_edited_time": "2024-11-09T14:52:00.000Z", + "created_time": "2023-11-30T05:26:00.000Z", + "last_edited_time": "2023-11-30T07:13:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -633,13 +617,13 @@ "has_children": false, "archived": false, "in_trash": false, - "type": "heading_3", - "heading_3": { + "type": "heading_2", + "heading_2": { "rich_text": [ { "type": "text", "text": { - "content": "사용 방법", + "content": "예시", "link": null }, "annotations": { @@ -650,7 +634,7 @@ "code": false, "color": "default" }, - "plain_text": "사용 방법", + "plain_text": "예시", "href": null } ], @@ -660,13 +644,13 @@ }, { "object": "block", - "id": "1399c6bf-2b17-809f-8ef9-c9c1c29d210e", + "id": "daac85e7-8528-40ae-96c2-501a556f91d0", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T12:31:00.000Z", - "last_edited_time": "2024-11-09T14:26:00.000Z", + "created_time": "2023-11-30T04:58:00.000Z", + "last_edited_time": "2023-12-02T07:08:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -678,39 +662,21 @@ "has_children": false, "archived": false, "in_trash": false, - "type": "paragraph", - "paragraph": { - "rich_text": [ - { - "type": "text", - "text": { - "content": "changeset을 프로젝트에 설정하는 과정은 비교적 간단하다. 다음 단계들을 통해 changeset을 설정할 수 있다. (pnpm 기준으로 설명한다! npm, yarn과 별다른 차이는 없다)", - "link": null - }, - "annotations": { - "bold": false, - "italic": false, - "strikethrough": false, - "underline": false, - "code": false, - "color": "default" - }, - "plain_text": "changeset을 프로젝트에 설정하는 과정은 비교적 간단하다. 다음 단계들을 통해 changeset을 설정할 수 있다. (pnpm 기준으로 설명한다! npm, yarn과 별다른 차이는 없다)", - "href": null - } - ], - "color": "default" + "type": "embed", + "embed": { + "caption": [], + "url": "https://codesandbox.io/embed/yww5jw?view=Editor+%2B+Preview&module=%2Fsrc%2FApp.js&hidenavigation=1&expanddevtools=1" } }, { "object": "block", - "id": "1399c6bf-2b17-804a-860d-e1a5331bb050", + "id": "5bf62c7f-10c6-4e7d-8972-1c7f24db31c5", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T14:36:00.000Z", - "last_edited_time": "2024-11-09T14:37:00.000Z", + "created_time": "2023-11-30T03:30:00.000Z", + "last_edited_time": "2023-11-30T07:13:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -722,13 +688,13 @@ "has_children": false, "archived": false, "in_trash": false, - "type": "paragraph", - "paragraph": { + "type": "heading_3", + "heading_3": { "rich_text": [ { "type": "text", "text": { - "content": "1. changeset 설치", + "content": "전체 코드", "link": null }, "annotations": { @@ -739,39 +705,23 @@ "code": false, "color": "default" }, - "plain_text": "1. changeset 설치", - "href": null - }, - { - "type": "text", - "text": { - "content": ": 먼저 프로젝트에 changeset을 설치해야 한다. pnpm을 사용해 changeset을 설치할 수 있다.", - "link": null - }, - "annotations": { - "bold": false, - "italic": false, - "strikethrough": false, - "underline": false, - "code": false, - "color": "default" - }, - "plain_text": ": 먼저 프로젝트에 changeset을 설치해야 한다. pnpm을 사용해 changeset을 설치할 수 있다.", + "plain_text": "전체 코드", "href": null } ], + "is_toggleable": false, "color": "default" } }, { "object": "block", - "id": "1399c6bf-2b17-80ca-aea1-d35271303ad9", + "id": "4cb55a7e-482d-42f8-9e29-95f28da9bf15", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T12:32:00.000Z", - "last_edited_time": "2024-11-09T14:36:00.000Z", + "created_time": "2023-09-11T11:30:00.000Z", + "last_edited_time": "2023-11-30T06:17:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -790,7 +740,7 @@ { "type": "text", "text": { - "content": "pnpm add -D @changesets/cli", + "content": "// context.js\nimport { createContext, useContext, useMemo, useState } from \"react\";\n\nconst initialState = {\n name: \"binary\",\n};\n\nconst MyContext = createContext(null);\n\nexport const MyProvider = ({ children }) => {\n const [state, setState] = useState(initialState);\n\n const value = useMemo(() => ({ state, setState }), [state, setState]);\n\n return {children};\n};\n\nexport const useMyContext = () => {\n const context = useContext(MyContext);\n if (context === null) {\n throw new Error();\n }\n return context;\n};", "link": null }, "annotations": { @@ -801,22 +751,22 @@ "code": false, "color": "default" }, - "plain_text": "pnpm add -D @changesets/cli", + "plain_text": "// context.js\nimport { createContext, useContext, useMemo, useState } from \"react\";\n\nconst initialState = {\n name: \"binary\",\n};\n\nconst MyContext = createContext(null);\n\nexport const MyProvider = ({ children }) => {\n const [state, setState] = useState(initialState);\n\n const value = useMemo(() => ({ state, setState }), [state, setState]);\n\n return {children};\n};\n\nexport const useMyContext = () => {\n const context = useContext(MyContext);\n if (context === null) {\n throw new Error();\n }\n return context;\n};", "href": null } ], - "language": "bash" + "language": "typescript" } }, { "object": "block", - "id": "1399c6bf-2b17-8027-bd7e-f25e9a6e4080", + "id": "a506d9cc-3c89-4c88-ab0e-f7958ad510f7", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T12:32:00.000Z", - "last_edited_time": "2024-11-09T14:36:00.000Z", + "created_time": "2023-11-30T02:24:00.000Z", + "last_edited_time": "2023-11-30T06:17:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -828,13 +778,14 @@ "has_children": false, "archived": false, "in_trash": false, - "type": "paragraph", - "paragraph": { + "type": "code", + "code": { + "caption": [], "rich_text": [ { "type": "text", "text": { - "content": "설치 후, changeset을 초기화한다.", + "content": "// App.js\nimport { useState } from \"react\";\nimport { MyProvider, useMyContext } from \"./context\";\n\nexport default function App() {\n const [count, setCount] = useState(0);\n\n return (\n
\n \n \n \n\n \n
\n );\n}\n\nconst MyComponent = () => {\n console.log(\"MyComponent render\");\n const { state } = useMyContext();\n\n return (\n
\n

name : {state.name}

\n
\n );\n};", "link": null }, "annotations": { @@ -845,22 +796,22 @@ "code": false, "color": "default" }, - "plain_text": "설치 후, changeset을 초기화한다.", + "plain_text": "// App.js\nimport { useState } from \"react\";\nimport { MyProvider, useMyContext } from \"./context\";\n\nexport default function App() {\n const [count, setCount] = useState(0);\n\n return (\n
\n \n \n \n\n \n
\n );\n}\n\nconst MyComponent = () => {\n console.log(\"MyComponent render\");\n const { state } = useMyContext();\n\n return (\n
\n

name : {state.name}

\n
\n );\n};", "href": null } ], - "color": "default" + "language": "typescript" } }, { "object": "block", - "id": "1399c6bf-2b17-8056-99ca-fd9b260ac977", + "id": "8bbdd5ee-9eab-4903-a849-9e88a7e18e13", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T12:32:00.000Z", - "last_edited_time": "2024-11-09T14:52:00.000Z", + "created_time": "2023-09-24T08:11:00.000Z", + "last_edited_time": "2023-12-01T11:50:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -872,14 +823,13 @@ "has_children": false, "archived": false, "in_trash": false, - "type": "code", - "code": { - "caption": [], + "type": "paragraph", + "paragraph": { "rich_text": [ { "type": "text", "text": { - "content": "pnpm changeset init", + "content": "위 코드에서 버튼을 누르면 ", "link": null }, "annotations": { @@ -890,40 +840,13 @@ "code": false, "color": "default" }, - "plain_text": "pnpm changeset init", + "plain_text": "위 코드에서 버튼을 누르면 ", "href": null - } - ], - "language": "bash" - } - }, - { - "object": "block", - "id": "1399c6bf-2b17-8000-8e40-e79d2340a134", - "parent": { - "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" - }, - "created_time": "2024-11-09T12:32:00.000Z", - "last_edited_time": "2024-11-09T14:37:00.000Z", - "created_by": { - "object": "user", - "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" - }, - "last_edited_by": { - "object": "user", - "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" - }, - "has_children": false, - "archived": false, - "in_trash": false, - "type": "paragraph", - "paragraph": { - "rich_text": [ + }, { "type": "text", "text": { - "content": "이 명령을 실행하면 프로젝트 루트에 ", + "content": "App", "link": null }, "annotations": { @@ -931,16 +854,16 @@ "italic": false, "strikethrough": false, "underline": false, - "code": false, + "code": true, "color": "default" }, - "plain_text": "이 명령을 실행하면 프로젝트 루트에 ", + "plain_text": "App", "href": null }, { "type": "text", "text": { - "content": ".changeset", + "content": " 컴포넌트가 리렌더링되는 것이기 때문에 당연히 자식 컴포넌트인\n", "link": null }, "annotations": { @@ -948,16 +871,16 @@ "italic": false, "strikethrough": false, "underline": false, - "code": true, + "code": false, "color": "default" }, - "plain_text": ".changeset", + "plain_text": " 컴포넌트가 리렌더링되는 것이기 때문에 당연히 자식 컴포넌트인\n", "href": null }, { "type": "text", "text": { - "content": " 폴더가 생성되고, 기본적인 설정 파일들이 만들어진다.", + "content": "MyProvider", "link": null }, "annotations": { @@ -965,60 +888,33 @@ "italic": false, "strikethrough": false, "underline": false, - "code": false, + "code": true, "color": "default" }, - "plain_text": " 폴더가 생성되고, 기본적인 설정 파일들이 만들어진다.", + "plain_text": "MyProvider", "href": null - } - ], - "color": "default" - } - }, - { - "object": "block", - "id": "1399c6bf-2b17-808e-84f1-cb33cc23b310", - "parent": { - "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" - }, - "created_time": "2024-11-09T14:37:00.000Z", - "last_edited_time": "2024-11-09T14:37:00.000Z", - "created_by": { - "object": "user", - "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" - }, - "last_edited_by": { - "object": "user", - "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" - }, - "has_children": false, - "archived": false, - "in_trash": false, - "type": "paragraph", - "paragraph": { - "rich_text": [ + }, { "type": "text", "text": { - "content": "2. 변경 사항 기록하기", + "content": " , ", "link": null }, "annotations": { - "bold": true, + "bold": false, "italic": false, "strikethrough": false, "underline": false, "code": false, "color": "default" }, - "plain_text": "2. 변경 사항 기록하기", + "plain_text": " , ", "href": null }, { "type": "text", "text": { - "content": ": 새로운 기능 추가나 버그 수정 등의 변경 사항이 있을 때, changeset을 통해 변경 사항을 기록한다.", + "content": "MyComponent", "link": null }, "annotations": { @@ -1026,44 +922,16 @@ "italic": false, "strikethrough": false, "underline": false, - "code": false, + "code": true, "color": "default" }, - "plain_text": ": 새로운 기능 추가나 버그 수정 등의 변경 사항이 있을 때, changeset을 통해 변경 사항을 기록한다.", + "plain_text": "MyComponent", "href": null - } - ], - "color": "default" - } - }, - { - "object": "block", - "id": "1399c6bf-2b17-80d4-8d4d-ddb29064bae6", - "parent": { - "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" - }, - "created_time": "2024-11-09T12:32:00.000Z", - "last_edited_time": "2024-11-09T14:37:00.000Z", - "created_by": { - "object": "user", - "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" - }, - "last_edited_by": { - "object": "user", - "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" - }, - "has_children": false, - "archived": false, - "in_trash": false, - "type": "code", - "code": { - "caption": [], - "rich_text": [ + }, { "type": "text", "text": { - "content": "pnpm changeset", + "content": " 가 리렌더링된다. ", "link": null }, "annotations": { @@ -1074,22 +942,22 @@ "code": false, "color": "default" }, - "plain_text": "pnpm changeset", + "plain_text": " 가 리렌더링된다. ", "href": null } ], - "language": "bash" + "color": "default" } }, { "object": "block", - "id": "1399c6bf-2b17-8011-ad66-e8416bec259c", + "id": "13876262-cc6b-4cdf-8336-2c0fe7757632", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T12:32:00.000Z", - "last_edited_time": "2024-11-09T14:37:00.000Z", + "created_time": "2023-11-30T03:21:00.000Z", + "last_edited_time": "2023-12-01T11:50:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -1107,7 +975,7 @@ { "type": "text", "text": { - "content": "이 명령을 실행하면 아래 사진과 같이 변경의 유형(major, minor, patch)과 변경된 패키지에 대해 설명을 입력하는 인터페이스가 나타난다. 이를 통해 변경 사항을 문서화할 수 있다.", + "content": "이를 해결하려면 ", "link": null }, "annotations": { @@ -1118,145 +986,13 @@ "code": false, "color": "default" }, - "plain_text": "이 명령을 실행하면 아래 사진과 같이 변경의 유형(major, minor, patch)과 변경된 패키지에 대해 설명을 입력하는 인터페이스가 나타난다. 이를 통해 변경 사항을 문서화할 수 있다.", + "plain_text": "이를 해결하려면 ", "href": null - } - ], - "color": "default" - } - }, - { - "object": "block", - "id": "1399c6bf-2b17-80c7-a4f7-f91da99aeca1", - "parent": { - "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" - }, - "created_time": "2024-11-09T12:36:00.000Z", - "last_edited_time": "2024-11-09T14:37:00.000Z", - "created_by": { - "object": "user", - "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" - }, - "last_edited_by": { - "object": "user", - "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" - }, - "has_children": false, - "archived": false, - "in_trash": false, - "type": "image", - "image": { - "caption": [], - "type": "file", - "file": { - "url": "https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2Fcd7314a5-d906-43b0-81e7-42eff82c02a3%2Fb9b51852-66bc-4b72-98ca-a28928ac3fc0%2Fimage.png?table=block&id=1399c6bf-2b17-80c7-a4f7-f91da99aeca1&cache=v2", - "expiry_time": "2025-04-13T15:03:20.677Z" - }, - "format": { - "block_width": 393, - "block_height": 116, - "block_aspect_ratio": 3.3879310344827585 - } - } - }, - { - "object": "block", - "id": "1399c6bf-2b17-8091-b9fb-fb10f21b4526", - "parent": { - "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" - }, - "created_time": "2024-11-09T12:36:00.000Z", - "last_edited_time": "2024-11-09T14:37:00.000Z", - "created_by": { - "object": "user", - "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" - }, - "last_edited_by": { - "object": "user", - "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" - }, - "has_children": false, - "archived": false, - "in_trash": false, - "type": "image", - "image": { - "caption": [], - "type": "file", - "file": { - "url": "https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2Fcd7314a5-d906-43b0-81e7-42eff82c02a3%2Fd5010257-2bcb-49a3-ba8a-c7560b5d1060%2Fimage.png?table=block&id=1399c6bf-2b17-8091-b9fb-fb10f21b4526&cache=v2", - "expiry_time": "2025-04-13T15:03:20.700Z" - }, - "format": { - "block_width": 874, - "block_height": 263, - "block_aspect_ratio": 3.32319391634981 - } - } - }, - { - "object": "block", - "id": "1399c6bf-2b17-8044-8dfd-dfbbe359d987", - "parent": { - "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" - }, - "created_time": "2024-11-09T12:38:00.000Z", - "last_edited_time": "2024-11-09T14:37:00.000Z", - "created_by": { - "object": "user", - "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" - }, - "last_edited_by": { - "object": "user", - "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" - }, - "has_children": false, - "archived": false, - "in_trash": false, - "type": "image", - "image": { - "caption": [], - "type": "file", - "file": { - "url": "https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2Fcd7314a5-d906-43b0-81e7-42eff82c02a3%2F8df2da0b-0c0a-46ce-9747-014f1a334fcd%2Fimage.png?table=block&id=1399c6bf-2b17-8044-8dfd-dfbbe359d987&cache=v2", - "expiry_time": "2025-04-13T15:03:20.674Z" - }, - "format": { - "block_width": 577, - "block_height": 198, - "block_aspect_ratio": 2.914141414141414 - } - } - }, - { - "object": "block", - "id": "1399c6bf-2b17-8010-88e7-cac491e155d5", - "parent": { - "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" - }, - "created_time": "2024-11-09T12:38:00.000Z", - "last_edited_time": "2024-11-09T14:54:00.000Z", - "created_by": { - "object": "user", - "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" - }, - "last_edited_by": { - "object": "user", - "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" - }, - "has_children": false, - "archived": false, - "in_trash": false, - "type": "paragraph", - "paragraph": { - "rich_text": [ + }, { "type": "text", "text": { - "content": "변경사항이 임의의 파일명을 가진 md에 기록되었다.", + "content": "MyComponent", "link": null }, "annotations": { @@ -1264,60 +1000,33 @@ "italic": false, "strikethrough": false, "underline": false, - "code": false, + "code": true, "color": "default" }, - "plain_text": "변경사항이 임의의 파일명을 가진 md에 기록되었다.", + "plain_text": "MyComponent", "href": null - } - ], - "color": "default" - } - }, - { - "object": "block", - "id": "1399c6bf-2b17-8005-9fe9-e2f4c5a52160", - "parent": { - "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" - }, - "created_time": "2024-11-09T12:32:00.000Z", - "last_edited_time": "2024-11-09T14:54:00.000Z", - "created_by": { - "object": "user", - "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" - }, - "last_edited_by": { - "object": "user", - "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" - }, - "has_children": false, - "archived": false, - "in_trash": false, - "type": "paragraph", - "paragraph": { - "rich_text": [ + }, { "type": "text", "text": { - "content": "3. 버전 업데이트 및 변경 로그 생성", + "content": " 를 메모이제이션 해주면 될 것 같다!\n", "link": null }, "annotations": { - "bold": true, + "bold": false, "italic": false, "strikethrough": false, "underline": false, "code": false, "color": "default" }, - "plain_text": "3. 버전 업데이트 및 변경 로그 생성", + "plain_text": " 를 메모이제이션 해주면 될 것 같다!\n", "href": null }, { "type": "text", "text": { - "content": ": 모든 변경 사항이 기록되면, changeset은 이를 기반으로 버전을 업데이트하고 변경 로그를 생성한다. 로컬에서 수동으로 실행할 경우 다음 명령을 사용한다.", + "content": "const MyMemoComponent = memo(MyComponent);", "link": null }, "annotations": { @@ -1325,10 +1034,10 @@ "italic": false, "strikethrough": false, "underline": false, - "code": false, + "code": true, "color": "default" }, - "plain_text": ": 모든 변경 사항이 기록되면, changeset은 이를 기반으로 버전을 업데이트하고 변경 로그를 생성한다. 로컬에서 수동으로 실행할 경우 다음 명령을 사용한다.", + "plain_text": "const MyMemoComponent = memo(MyComponent);", "href": null } ], @@ -1337,13 +1046,13 @@ }, { "object": "block", - "id": "1399c6bf-2b17-80c9-b951-c965738ca15f", + "id": "570da78c-fb2d-49e1-b019-ee2a4dfb4314", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T12:32:00.000Z", - "last_edited_time": "2024-11-09T14:41:00.000Z", + "created_time": "2023-11-30T03:34:00.000Z", + "last_edited_time": "2023-12-01T11:53:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -1355,14 +1064,13 @@ "has_children": false, "archived": false, "in_trash": false, - "type": "code", - "code": { - "caption": [], + "type": "paragraph", + "paragraph": { "rich_text": [ { "type": "text", "text": { - "content": "pnpm changeset version", + "content": "위 코드에서 이제 이름을 바꿀 수 있는 컴포넌트를 만들어 보자!", "link": null }, "annotations": { @@ -1373,57 +1081,22 @@ "code": false, "color": "default" }, - "plain_text": "pnpm changeset version", + "plain_text": "위 코드에서 이제 이름을 바꿀 수 있는 컴포넌트를 만들어 보자!", "href": null } ], - "language": "bash" - } - }, - { - "object": "block", - "id": "1399c6bf-2b17-806d-8581-ff3f4505e61c", - "parent": { - "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" - }, - "created_time": "2024-11-09T12:43:00.000Z", - "last_edited_time": "2024-11-09T14:41:00.000Z", - "created_by": { - "object": "user", - "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" - }, - "last_edited_by": { - "object": "user", - "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" - }, - "has_children": false, - "archived": false, - "in_trash": false, - "type": "image", - "image": { - "caption": [], - "type": "file", - "file": { - "url": "https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2Fcd7314a5-d906-43b0-81e7-42eff82c02a3%2F466b6f64-7855-437b-9c8f-d60626376894%2F%25E1%2584%2589%25E1%2585%25B3%25E1%2584%258F%25E1%2585%25B3%25E1%2584%2585%25E1%2585%25B5%25E1%2586%25AB%25E1%2584%2589%25E1%2585%25A3%25E1%2586%25BA_2024-11-09_%25E1%2584%258B%25E1%2585%25A9%25E1%2584%2592%25E1%2585%25AE_9.40.41.png?table=block&id=1399c6bf-2b17-806d-8581-ff3f4505e61c&cache=v2", - "expiry_time": "2025-04-13T15:03:20.648Z" - }, - "format": { - "block_width": 823, - "block_height": 220, - "block_aspect_ratio": 3.7409090909090907 - } + "color": "default" } }, { "object": "block", - "id": "1399c6bf-2b17-80bc-92fd-de420f1cac1d", + "id": "45b31d11-c961-4ab5-9fe0-56a1f9ae48a4", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T12:43:00.000Z", - "last_edited_time": "2024-11-09T14:41:00.000Z", + "created_time": "2023-11-30T03:34:00.000Z", + "last_edited_time": "2023-11-30T06:17:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -1435,30 +1108,40 @@ "has_children": false, "archived": false, "in_trash": false, - "type": "image", - "image": { + "type": "code", + "code": { "caption": [], - "type": "file", - "file": { - "url": "https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2Fcd7314a5-d906-43b0-81e7-42eff82c02a3%2F4184da3f-63c2-447b-bdce-c9b6f35dd996%2Fimage.png?table=block&id=1399c6bf-2b17-80bc-92fd-de420f1cac1d&cache=v2", - "expiry_time": "2025-04-13T15:03:20.675Z" - }, - "format": { - "block_width": 750, - "block_height": 203, - "block_aspect_ratio": 3.6945812807881775 - } + "rich_text": [ + { + "type": "text", + "text": { + "content": "const NameChangeComponent = () => {\n console.log(\"NameChangeComponent render\");\n const { setState } = useMyContext();\n\n return (\n
\n \n
\n );\n};", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "const NameChangeComponent = () => {\n console.log(\"NameChangeComponent render\");\n const { setState } = useMyContext();\n\n return (\n
\n \n
\n );\n};", + "href": null + } + ], + "language": "typescript" } }, { "object": "block", - "id": "1399c6bf-2b17-8053-b1d4-d467335f75b3", + "id": "7b7407a7-3f33-485a-97d3-e51eadd99d2f", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T12:45:00.000Z", - "last_edited_time": "2024-11-09T14:54:00.000Z", + "created_time": "2023-11-30T04:46:00.000Z", + "last_edited_time": "2023-11-30T04:54:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -1476,7 +1159,7 @@ { "type": "text", "text": { - "content": "위 커맨드를 입력하니 기존 md이 사라지고, CHANGELOG.md에 변경 사항이 버전과 함께 기록되고 ", + "content": "위 컴포넌트를 ", "link": null }, "annotations": { @@ -1487,13 +1170,13 @@ "code": false, "color": "default" }, - "plain_text": "위 커맨드를 입력하니 기존 md이 사라지고, CHANGELOG.md에 변경 사항이 버전과 함께 기록되고 ", + "plain_text": "위 컴포넌트를 ", "href": null }, { "type": "text", "text": { - "content": "package.json", + "content": "MyProvider", "link": null }, "annotations": { @@ -1504,13 +1187,13 @@ "code": true, "color": "default" }, - "plain_text": "package.json", + "plain_text": "MyProvider", "href": null }, { "type": "text", "text": { - "content": " 에 버전도 자동으로 올라갔다. ", + "content": " 하위로 추가하고 Change Name 버튼을 클릭하면 ", "link": null }, "annotations": { @@ -1521,57 +1204,64 @@ "code": false, "color": "default" }, - "plain_text": " 에 버전도 자동으로 올라갔다. ", + "plain_text": " 하위로 추가하고 Change Name 버튼을 클릭하면 ", "href": null - } - ], - "color": "default" - } - }, - { - "object": "block", - "id": "1399c6bf-2b17-8091-9f47-e417987855d8", - "parent": { - "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" - }, - "created_time": "2024-11-09T12:32:00.000Z", - "last_edited_time": "2024-11-09T14:41:00.000Z", - "created_by": { - "object": "user", - "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" - }, - "last_edited_by": { - "object": "user", - "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" - }, - "has_children": false, - "archived": false, - "in_trash": false, - "type": "paragraph", - "paragraph": { - "rich_text": [ + }, { "type": "text", "text": { - "content": "4. 배포", + "content": "NameChangeComponent", "link": null }, "annotations": { - "bold": true, + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": true, + "color": "default" + }, + "plain_text": "NameChangeComponent", + "href": null + }, + { + "type": "text", + "text": { + "content": " , ", + "link": null + }, + "annotations": { + "bold": false, "italic": false, "strikethrough": false, "underline": false, "code": false, "color": "default" }, - "plain_text": "4. 배포", + "plain_text": " , ", + "href": null + }, + { + "type": "text", + "text": { + "content": "MyComponent", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": true, + "color": "default" + }, + "plain_text": "MyComponent", "href": null }, { "type": "text", "text": { - "content": ": changeset을 사용해 변경 사항을 기록하고 버전을 업데이트한 후, 다음 명령으로 배포할 수 있다.", + "content": " 둘 다 리렌더가 일어나는 것을 확인할 수 있다.", "link": null }, "annotations": { @@ -1582,7 +1272,7 @@ "code": false, "color": "default" }, - "plain_text": ": changeset을 사용해 변경 사항을 기록하고 버전을 업데이트한 후, 다음 명령으로 배포할 수 있다.", + "plain_text": " 둘 다 리렌더가 일어나는 것을 확인할 수 있다.", "href": null } ], @@ -1591,13 +1281,13 @@ }, { "object": "block", - "id": "1399c6bf-2b17-805c-9f68-f7561f392b7d", + "id": "a6316958-3c64-47e2-8b8c-caa95fa73ab6", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T12:49:00.000Z", - "last_edited_time": "2024-11-09T14:40:00.000Z", + "created_time": "2023-11-30T06:18:00.000Z", + "last_edited_time": "2023-11-30T07:13:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -1609,14 +1299,13 @@ "has_children": false, "archived": false, "in_trash": false, - "type": "code", - "code": { - "caption": [], + "type": "heading_2", + "heading_2": { "rich_text": [ { "type": "text", "text": { - "content": "pnpm changeset publish", + "content": "문제점", "link": null }, "annotations": { @@ -1627,22 +1316,23 @@ "code": false, "color": "default" }, - "plain_text": "pnpm changeset publish", + "plain_text": "문제점", "href": null } ], - "language": "bash" + "is_toggleable": false, + "color": "default" } }, { "object": "block", - "id": "1399c6bf-2b17-802e-a76a-d41ef36376ec", + "id": "e97de952-9ce8-4e0b-a00d-1fb3785aa352", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T12:52:00.000Z", - "last_edited_time": "2024-11-09T14:41:00.000Z", + "created_time": "2023-11-30T04:54:00.000Z", + "last_edited_time": "2023-11-30T04:57:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -1660,7 +1350,109 @@ { "type": "text", "text": { - "content": "이 명령을 실행하면 새로운 버전이 npm에 자동으로 배포된다.", + "content": "Context value를 메모이제이션해도 ", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "Context value를 메모이제이션해도 ", + "href": null + }, + { + "type": "text", + "text": { + "content": "state", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": true, + "color": "default" + }, + "plain_text": "state", + "href": null + }, + { + "type": "text", + "text": { + "content": " 또는 ", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": " 또는 ", + "href": null + }, + { + "type": "text", + "text": { + "content": "setState", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": true, + "color": "default" + }, + "plain_text": "setState", + "href": null + }, + { + "type": "text", + "text": { + "content": " 가 변경되면 value의 Reference 값이 바뀌기 때문에 ", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": " 가 변경되면 value의 Reference 값이 바뀌기 때문에 ", + "href": null + }, + { + "type": "text", + "text": { + "content": "useMyContext", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": true, + "color": "default" + }, + "plain_text": "useMyContext", + "href": null + }, + { + "type": "text", + "text": { + "content": " 를 사용하는 Component는 모두 리렌더가 일어나는 것이다.", "link": null }, "annotations": { @@ -1671,7 +1463,7 @@ "code": false, "color": "default" }, - "plain_text": "이 명령을 실행하면 새로운 버전이 npm에 자동으로 배포된다.", + "plain_text": " 를 사용하는 Component는 모두 리렌더가 일어나는 것이다.", "href": null } ], @@ -1680,13 +1472,13 @@ }, { "object": "block", - "id": "1399c6bf-2b17-8066-b1d0-d3157ebd8d68", + "id": "d2482a2c-f737-4792-8d13-550536a5284e", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T12:32:00.000Z", - "last_edited_time": "2024-11-09T14:17:00.000Z", + "created_time": "2023-11-30T05:04:00.000Z", + "last_edited_time": "2023-11-30T06:21:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -1704,7 +1496,7 @@ { "type": "text", "text": { - "content": "이렇게 changeset을 설정하면, 프로젝트 내의 모든 변경 사항을 체계적으로 관리하고, 자동으로 버전 및 변경 로그를 생성할 수 있어 협업과 유지보수가 훨씬 수월해진다.", + "content": "리렌더를 회피하기 위해 아래처럼 Context를 분리할 수 있지만 이는 Provider Hell을 야기한다.", "link": null }, "annotations": { @@ -1715,7 +1507,7 @@ "code": false, "color": "default" }, - "plain_text": "이렇게 changeset을 설정하면, 프로젝트 내의 모든 변경 사항을 체계적으로 관리하고, 자동으로 버전 및 변경 로그를 생성할 수 있어 협업과 유지보수가 훨씬 수월해진다.", + "plain_text": "리렌더를 회피하기 위해 아래처럼 Context를 분리할 수 있지만 이는 Provider Hell을 야기한다.", "href": null } ], @@ -1724,13 +1516,13 @@ }, { "object": "block", - "id": "1399c6bf-2b17-80bb-9591-f980f64e21a9", + "id": "6595b98f-62fb-4a7c-bfc2-4b20ea2d9503", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T12:52:00.000Z", - "last_edited_time": "2024-11-09T14:55:00.000Z", + "created_time": "2023-11-30T05:04:00.000Z", + "last_edited_time": "2023-11-30T06:17:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -1742,13 +1534,14 @@ "has_children": false, "archived": false, "in_trash": false, - "type": "paragraph", - "paragraph": { + "type": "code", + "code": { + "caption": [], "rich_text": [ { "type": "text", "text": { - "content": "여기까지 다 좋은데 패키지의 기능을 추가 및 수정하고 커밋 후, changeset를 통해 배포를 하면 CHANGELOG에 변경사항이 생겨서 또 커밋을 해야 한다. 그리고 아래와 같이 생각보다 입력해야 할 커맨드 양이 꽤 있다.", + "content": "const Provider = ({ children }) => {\n const [state, setState] = useState('a');\n \n return (\n \n \n {children}\n \n \n )\n}", "link": null }, "annotations": { @@ -1759,22 +1552,22 @@ "code": false, "color": "default" }, - "plain_text": "여기까지 다 좋은데 패키지의 기능을 추가 및 수정하고 커밋 후, changeset를 통해 배포를 하면 CHANGELOG에 변경사항이 생겨서 또 커밋을 해야 한다. 그리고 아래와 같이 생각보다 입력해야 할 커맨드 양이 꽤 있다.", + "plain_text": "const Provider = ({ children }) => {\n const [state, setState] = useState('a');\n \n return (\n \n \n {children}\n \n \n )\n}", "href": null } ], - "color": "default" + "language": "typescript" } }, { "object": "block", - "id": "1399c6bf-2b17-802f-9222-cf25e0e6980e", + "id": "b5c5c3e3-2fb4-48b0-8474-07350d397b92", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T12:54:00.000Z", - "last_edited_time": "2024-11-09T13:02:00.000Z", + "created_time": "2023-11-30T05:02:00.000Z", + "last_edited_time": "2023-11-30T06:20:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -1786,14 +1579,13 @@ "has_children": false, "archived": false, "in_trash": false, - "type": "code", - "code": { - "caption": [], + "type": "paragraph", + "paragraph": { "rich_text": [ { "type": "text", "text": { - "content": "git commit -m \"기능 추가 블라블라~\"\npnpm changeset\n---\npnpm changeset version\npnpm changeset publish\ngit commit -m \"version: x.x.x\"\ngit push origin 브랜치\n---", + "content": "이러한 문제는 리액트 커뮤니티(RFC 등)에서도 활발하게 논의되고 있지만 아직 리액트에 반영되지는 않았다. (4년째..)", "link": null }, "annotations": { @@ -1804,22 +1596,22 @@ "code": false, "color": "default" }, - "plain_text": "git commit -m \"기능 추가 블라블라~\"\npnpm changeset\n---\npnpm changeset version\npnpm changeset publish\ngit commit -m \"version: x.x.x\"\ngit push origin 브랜치\n---", + "plain_text": "이러한 문제는 리액트 커뮤니티(RFC 등)에서도 활발하게 논의되고 있지만 아직 리액트에 반영되지는 않았다. (4년째..)", "href": null } ], - "language": "bash" + "color": "default" } }, { "object": "block", - "id": "1399c6bf-2b17-8050-8487-f1f897f2cee9", + "id": "aee09a6f-2f72-4f21-b86d-28e35c415a89", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T13:00:00.000Z", - "last_edited_time": "2024-11-09T13:02:00.000Z", + "created_time": "2023-11-30T05:02:00.000Z", + "last_edited_time": "2023-11-30T05:03:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -1837,24 +1629,24 @@ { "type": "text", "text": { - "content": "다행히 changeset에서 github action workflow를 만들어 놓아서 ", + "content": "RFC:", "link": null }, "annotations": { - "bold": false, + "bold": true, "italic": false, "strikethrough": false, "underline": false, "code": false, "color": "default" }, - "plain_text": "다행히 changeset에서 github action workflow를 만들어 놓아서 ", + "plain_text": "RFC:", "href": null }, { "type": "text", "text": { - "content": "---", + "content": " ", "link": null }, "annotations": { @@ -1862,27 +1654,27 @@ "italic": false, "strikethrough": false, "underline": false, - "code": true, + "code": false, "color": "default" }, - "plain_text": "---", + "plain_text": " ", "href": null }, { "type": "text", "text": { - "content": " 로 시작해서 끝나는 커맨드들을 workflow과 pull request를 통해 자동화할 수 있다.", + "content": "Context Selectors", "link": null }, "annotations": { - "bold": false, + "bold": true, "italic": false, "strikethrough": false, "underline": false, "code": false, "color": "default" }, - "plain_text": " 로 시작해서 끝나는 커맨드들을 workflow과 pull request를 통해 자동화할 수 있다.", + "plain_text": "Context Selectors", "href": null } ], @@ -1891,13 +1683,38 @@ }, { "object": "block", - "id": "1399c6bf-2b17-80f7-b1be-f4055f09f308", + "id": "2a7d38ae-5d5f-4d44-a245-03e010547d34", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-11-30T05:02:00.000Z", + "last_edited_time": "2025-04-14T14:09:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "553d6fc6-e170-4227-8810-0540e2142f82" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "link_preview", + "link_preview": { + "url": "https://github.com/reactjs/rfcs/pull/119" + } + }, + { + "object": "block", + "id": "e3742aa9-02c3-4d77-b33f-51e7c86161d6", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T13:05:00.000Z", - "last_edited_time": "2024-11-09T14:17:00.000Z", + "created_time": "2023-11-30T06:18:00.000Z", + "last_edited_time": "2023-11-30T07:13:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -1915,7 +1732,7 @@ { "type": "text", "text": { - "content": "changeset과 GitHub Action의 통합", + "content": "해결 방안", "link": null }, "annotations": { @@ -1926,7 +1743,7 @@ "code": false, "color": "default" }, - "plain_text": "changeset과 GitHub Action의 통합", + "plain_text": "해결 방안", "href": null } ], @@ -1936,13 +1753,13 @@ }, { "object": "block", - "id": "1399c6bf-2b17-80d2-ad8a-db83ca61f064", + "id": "044098f5-eeeb-40c0-9d4e-d1ad1a0985a7", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T13:06:00.000Z", - "last_edited_time": "2024-11-09T13:06:00.000Z", + "created_time": "2023-09-11T11:30:00.000Z", + "last_edited_time": "2023-11-30T05:53:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -1954,13 +1771,30 @@ "has_children": false, "archived": false, "in_trash": false, - "type": "heading_3", - "heading_3": { + "type": "paragraph", + "paragraph": { "rich_text": [ { "type": "text", "text": { - "content": "Github Action", + "content": "use-context-selector", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": true, + "color": "default" + }, + "plain_text": "use-context-selector", + "href": null + }, + { + "type": "text", + "text": { + "content": " 는 Selector를 통해 값을 가져오는 방식으로 문제를 해결한다.", "link": null }, "annotations": { @@ -1971,23 +1805,56 @@ "code": false, "color": "default" }, - "plain_text": "Github Action", + "plain_text": " 는 Selector를 통해 값을 가져오는 방식으로 문제를 해결한다.", "href": null } ], - "is_toggleable": false, "color": "default" } }, { "object": "block", - "id": "1399c6bf-2b17-80f9-a393-f95f78ad4e2e", + "id": "6d4f7b3f-abb4-4926-ab3a-755677ce28b7", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-11-30T05:27:00.000Z", + "last_edited_time": "2023-11-30T05:27:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "bookmark", + "bookmark": { + "caption": [], + "url": "https://www.npmjs.com/package/use-context-selector", + "metadata": { + "title": "use-context-selector", + "description": "React useContextSelector hook in userland. Latest version: 2.0.0, last published: a year ago. Start using use-context-selector in your project by running `npm i use-context-selector`. There are 194 other projects in the npm registry using use-context-selector.", + "image": "https://static-production.npmjs.com/338e4905a2684ca96e08c7780fc68412.png", + "siteName": "npm", + "url": "https://www.npmjs.com/package/use-context-selector", + "favicon": "https://www.google.com/s2/favicons?domain=www.npmjs.com&sz=64" + } + } + }, + { + "object": "block", + "id": "1ea38e6b-cff4-4811-9559-303b5138135e", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T13:06:00.000Z", - "last_edited_time": "2024-11-09T13:06:00.000Z", + "created_time": "2023-09-11T11:30:00.000Z", + "last_edited_time": "2023-11-30T06:22:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -2005,7 +1872,7 @@ { "type": "text", "text": { - "content": "GitHub Action은 GitHub 저장소에서 빌드, 테스트, 배포 같은 작업을 자동화할 수 있는 도구이다. 이를 통해 개발자는 반복적인 작업을 자동으로 처리하고, CI/CD 파이프라인을 쉽게 구성할 수 있다.\n(GitHub Action은 짧게만 설명하고 넘어간다..)", + "content": "위 라이브러리와 Context API 사용하여 문제를 해결할 수도 있지만 같은 문제를 해결할 수 있으며 더 많은 기능을 제공하는 상태 관리 라이브러리를 사용하지 않을 이유는 없다.", "link": null }, "annotations": { @@ -2016,7 +1883,7 @@ "code": false, "color": "default" }, - "plain_text": "GitHub Action은 GitHub 저장소에서 빌드, 테스트, 배포 같은 작업을 자동화할 수 있는 도구이다. 이를 통해 개발자는 반복적인 작업을 자동으로 처리하고, CI/CD 파이프라인을 쉽게 구성할 수 있다.\n(GitHub Action은 짧게만 설명하고 넘어간다..)", + "plain_text": "위 라이브러리와 Context API 사용하여 문제를 해결할 수도 있지만 같은 문제를 해결할 수 있으며 더 많은 기능을 제공하는 상태 관리 라이브러리를 사용하지 않을 이유는 없다.", "href": null } ], @@ -2025,13 +1892,13 @@ }, { "object": "block", - "id": "1399c6bf-2b17-8009-95e0-caea31667a78", + "id": "93c97068-fb1c-481b-837c-0c9b42eb702c", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T13:08:00.000Z", - "last_edited_time": "2024-11-09T13:11:00.000Z", + "created_time": "2023-11-30T05:28:00.000Z", + "last_edited_time": "2023-11-30T07:13:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -2043,13 +1910,13 @@ "has_children": false, "archived": false, "in_trash": false, - "type": "heading_3", - "heading_3": { + "type": "heading_1", + "heading_1": { "rich_text": [ { "type": "text", "text": { - "content": "npm 토큰 발급", + "content": "전역 상태 관리 라이브러리", "link": null }, "annotations": { @@ -2060,7 +1927,7 @@ "code": false, "color": "default" }, - "plain_text": "npm 토큰 발급", + "plain_text": "전역 상태 관리 라이브러리", "href": null } ], @@ -2070,13 +1937,13 @@ }, { "object": "block", - "id": "1399c6bf-2b17-806e-aeb5-c24fabf16aee", + "id": "54b7a0be-b7be-49a1-9d39-b608ef463437", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T13:12:00.000Z", - "last_edited_time": "2024-11-09T13:12:00.000Z", + "created_time": "2023-11-30T05:36:00.000Z", + "last_edited_time": "2023-12-01T11:54:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -2085,143 +1952,42 @@ "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" }, - "has_children": true, + "has_children": false, "archived": false, "in_trash": false, - "type": "column_list", - "column_list": {}, - "children": [ - { - "object": "block", - "id": "1399c6bf-2b17-8095-b39d-cb5eccc69c45", - "parent": { - "type": "block_id", - "block_id": "1399c6bf-2b17-806e-aeb5-c24fabf16aee" - }, - "created_time": "2024-11-09T13:12:00.000Z", - "last_edited_time": "2024-11-09T13:34:00.000Z", - "created_by": { - "object": "user", - "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" - }, - "last_edited_by": { - "object": "user", - "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" - }, - "has_children": true, - "archived": false, - "in_trash": false, - "type": "column", - "column": {}, - "children": [ - { - "object": "block", - "id": "1399c6bf-2b17-80b4-947e-dcf7bc4c2906", - "parent": { - "type": "block_id", - "block_id": "1399c6bf-2b17-8095-b39d-cb5eccc69c45" - }, - "created_time": "2024-11-09T13:08:00.000Z", - "last_edited_time": "2024-11-09T13:12:00.000Z", - "created_by": { - "object": "user", - "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" - }, - "last_edited_by": { - "object": "user", - "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" - }, - "has_children": false, - "archived": false, - "in_trash": false, - "type": "image", - "image": { - "caption": [], - "type": "file", - "file": { - "url": "https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2Fcd7314a5-d906-43b0-81e7-42eff82c02a3%2Fb299fd76-3951-4b29-a4c1-015eeb7ca9b8%2Fimage.png?table=block&id=1399c6bf-2b17-80b4-947e-dcf7bc4c2906&cache=v2", - "expiry_time": "2025-04-13T15:03:22.727Z" - }, - "format": { - "block_width": 261, - "block_height": 330, - "block_aspect_ratio": 0.7909090909090909 - } - } - } - ] - }, - { - "object": "block", - "id": "1399c6bf-2b17-8045-90d7-e0f8a3747d6d", - "parent": { - "type": "block_id", - "block_id": "1399c6bf-2b17-806e-aeb5-c24fabf16aee" - }, - "created_time": "2024-11-09T13:12:00.000Z", - "last_edited_time": "2024-11-09T14:28:00.000Z", - "created_by": { - "object": "user", - "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" - }, - "last_edited_by": { - "object": "user", - "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" - }, - "has_children": true, - "archived": false, - "in_trash": false, - "type": "column", - "column": {}, - "children": [ - { - "object": "block", - "id": "1399c6bf-2b17-80a6-bb59-c9531614b273", - "parent": { - "type": "block_id", - "block_id": "1399c6bf-2b17-8045-90d7-e0f8a3747d6d" - }, - "created_time": "2024-11-09T13:09:00.000Z", - "last_edited_time": "2024-11-09T13:13:00.000Z", - "created_by": { - "object": "user", - "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" - }, - "last_edited_by": { - "object": "user", - "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" - }, - "has_children": false, - "archived": false, - "in_trash": false, - "type": "image", - "image": { - "caption": [], - "type": "file", - "file": { - "url": "https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2Fcd7314a5-d906-43b0-81e7-42eff82c02a3%2Fc0552328-c359-4c1e-8acd-99b6cbeb69b5%2Fimage.png?table=block&id=1399c6bf-2b17-80a6-bb59-c9531614b273&cache=v2", - "expiry_time": "2025-04-13T15:03:25.220Z" - }, - "format": { - "block_width": 552, - "block_height": 278, - "block_aspect_ratio": 1.985611510791367 - } - } - } - ] - } - ] + "type": "paragraph", + "paragraph": { + "rich_text": [ + { + "type": "text", + "text": { + "content": "전역 상태 관리 라이브러리는 웹 애플리케이션에서 상태를 중앙에서 관리하기 위해 사용되는 도구이다. 여러 컴포넌트가 있고 이 컴포넌트 간에 데이터를 공유해야 할 때 전역 상태 관리 라이브러리가 유용하게 사용될 수 있다.", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "전역 상태 관리 라이브러리는 웹 애플리케이션에서 상태를 중앙에서 관리하기 위해 사용되는 도구이다. 여러 컴포넌트가 있고 이 컴포넌트 간에 데이터를 공유해야 할 때 전역 상태 관리 라이브러리가 유용하게 사용될 수 있다.", + "href": null + } + ], + "color": "default" + } }, { "object": "block", - "id": "1399c6bf-2b17-8096-8bcd-ec4084dce1ea", + "id": "0caf3bdf-d96b-4ee1-bfb3-5780dc35446a", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T13:11:00.000Z", - "last_edited_time": "2024-11-09T14:22:00.000Z", + "created_time": "2023-11-30T05:51:00.000Z", + "last_edited_time": "2023-11-30T07:14:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -2233,13 +1999,13 @@ "has_children": false, "archived": false, "in_trash": false, - "type": "paragraph", - "paragraph": { + "type": "heading_2", + "heading_2": { "rich_text": [ { "type": "text", "text": { - "content": "우선 npm 토큰을 발급받아야 한다. 위 사진처럼 Access Tokens를 클릭해서 Generate New Token → Classic Token를 클릭하자!", + "content": "Trends", "link": null }, "annotations": { @@ -2250,22 +2016,23 @@ "code": false, "color": "default" }, - "plain_text": "우선 npm 토큰을 발급받아야 한다. 위 사진처럼 Access Tokens를 클릭해서 Generate New Token → Classic Token를 클릭하자!", + "plain_text": "Trends", "href": null } ], + "is_toggleable": false, "color": "default" } }, { "object": "block", - "id": "1399c6bf-2b17-80d7-8c95-e827c6a980d3", + "id": "437a15d3-c6f8-44b5-baac-52a5c91e4de9", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T13:10:00.000Z", - "last_edited_time": "2024-11-09T13:14:00.000Z", + "created_time": "2023-11-30T07:57:00.000Z", + "last_edited_time": "2025-04-14T14:09:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -2282,25 +2049,25 @@ "caption": [], "type": "file", "file": { - "url": "https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2Fcd7314a5-d906-43b0-81e7-42eff82c02a3%2F64a778fc-5ca5-4687-a4b8-fd0a3cc3b1fb%2Fimage.png?table=block&id=1399c6bf-2b17-80d7-8c95-e827c6a980d3&cache=v2", - "expiry_time": "2025-04-13T15:03:20.648Z" + "url": "https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2Fcd7314a5-d906-43b0-81e7-42eff82c02a3%2F35cb51f8-eeca-4c21-8951-ee9f8358cbb6%2FUntitled.png?table=block&id=437a15d3-c6f8-44b5-baac-52a5c91e4de9&cache=v2", + "expiry_time": "2025-04-14T15:12:43.726Z" }, "format": { - "block_width": 796, - "block_height": 867, - "block_aspect_ratio": 0.9181084198385236 + "block_width": 1200, + "block_height": 675, + "block_aspect_ratio": 1.7777777777777777 } } }, { "object": "block", - "id": "1399c6bf-2b17-80ec-9eef-d1a2a5d87824", + "id": "3c8ed758-8132-4660-997d-1d8074c8b7d9", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T13:10:00.000Z", - "last_edited_time": "2024-11-09T13:15:00.000Z", + "created_time": "2023-11-30T05:51:00.000Z", + "last_edited_time": "2025-04-14T14:09:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -2317,25 +2084,25 @@ "caption": [], "type": "file", "file": { - "url": "https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2Fcd7314a5-d906-43b0-81e7-42eff82c02a3%2F9f949340-e845-4122-be6c-3cde0f3a1c73%2Fimage.png?table=block&id=1399c6bf-2b17-80ec-9eef-d1a2a5d87824&cache=v2", - "expiry_time": "2025-04-13T15:03:20.675Z" + "url": "https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2Fcd7314a5-d906-43b0-81e7-42eff82c02a3%2F8fe2c22b-50c8-4ec2-bb8e-419f891c32d7%2FUntitled.png?table=block&id=3c8ed758-8132-4660-997d-1d8074c8b7d9&cache=v2", + "expiry_time": "2025-04-14T15:12:43.729Z" }, "format": { - "block_width": 569, - "block_height": 258, - "block_aspect_ratio": 2.205426356589147 + "block_width": 940, + "block_height": 450, + "block_aspect_ratio": 2.088888888888889 } } }, { "object": "block", - "id": "1399c6bf-2b17-80f8-b152-e20d48aa66fe", + "id": "09bd31e9-0624-40bf-9227-7889e99805ca", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T13:14:00.000Z", - "last_edited_time": "2024-11-09T14:57:00.000Z", + "created_time": "2023-11-30T05:36:00.000Z", + "last_edited_time": "2023-12-01T11:54:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -2353,7 +2120,7 @@ { "type": "text", "text": { - "content": "type를 Automation으로 선택해 토큰을 발급받고 복사하자.\n(잃어버리면 안 된다.. 위 테스트용 토큰은 발급받자마자 지웠다.) ", + "content": "많은 라이브러리가 있지만 주류인 Flux, Atomic 패턴을 가진(혹은 유사한) 라이브러리에 대해 설명한다.\n(Proxy (Mobx, Valtio)는 다음 기회에..)", "link": null }, "annotations": { @@ -2364,7 +2131,7 @@ "code": false, "color": "default" }, - "plain_text": "type를 Automation으로 선택해 토큰을 발급받고 복사하자.\n(잃어버리면 안 된다.. 위 테스트용 토큰은 발급받자마자 지웠다.) ", + "plain_text": "많은 라이브러리가 있지만 주류인 Flux, Atomic 패턴을 가진(혹은 유사한) 라이브러리에 대해 설명한다.\n(Proxy (Mobx, Valtio)는 다음 기회에..)", "href": null } ], @@ -2373,13 +2140,13 @@ }, { "object": "block", - "id": "1399c6bf-2b17-800a-97c2-eee554e14912", + "id": "b4f81a39-6247-44a4-957c-ffc25455dae8", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T13:15:00.000Z", - "last_edited_time": "2024-11-09T14:22:00.000Z", + "created_time": "2023-11-30T05:28:00.000Z", + "last_edited_time": "2023-11-30T07:14:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -2391,13 +2158,13 @@ "has_children": false, "archived": false, "in_trash": false, - "type": "paragraph", - "paragraph": { + "type": "heading_2", + "heading_2": { "rich_text": [ { "type": "text", "text": { - "content": "그리고 github로 이동해서 발급받은 토큰을 원하는 Repository에 설정해준다.", + "content": "Flux (Redux, Zustand)", "link": null }, "annotations": { @@ -2408,57 +2175,23 @@ "code": false, "color": "default" }, - "plain_text": "그리고 github로 이동해서 발급받은 토큰을 원하는 Repository에 설정해준다.", + "plain_text": "Flux (Redux, Zustand)", "href": null } ], + "is_toggleable": false, "color": "default" } }, { "object": "block", - "id": "1399c6bf-2b17-80f5-82dc-c5704598364c", - "parent": { - "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" - }, - "created_time": "2024-11-09T13:18:00.000Z", - "last_edited_time": "2024-11-09T13:18:00.000Z", - "created_by": { - "object": "user", - "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" - }, - "last_edited_by": { - "object": "user", - "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" - }, - "has_children": false, - "archived": false, - "in_trash": false, - "type": "image", - "image": { - "caption": [], - "type": "file", - "file": { - "url": "https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2Fcd7314a5-d906-43b0-81e7-42eff82c02a3%2F448ca753-8fcf-459e-9f91-faf741c27f6e%2Fimage.png?table=block&id=1399c6bf-2b17-80f5-82dc-c5704598364c&cache=v2", - "expiry_time": "2025-04-13T15:03:20.661Z" - }, - "format": { - "block_width": 1147, - "block_height": 718, - "block_aspect_ratio": 1.5974930362116992 - } - } - }, - { - "object": "block", - "id": "1399c6bf-2b17-8098-8d68-d353fe671e0c", + "id": "5e4f6bea-67c3-44db-84eb-8f971efe690c", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T13:18:00.000Z", - "last_edited_time": "2024-11-09T13:35:00.000Z", + "created_time": "2023-11-30T05:52:00.000Z", + "last_edited_time": "2023-12-02T07:10:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -2476,41 +2209,7 @@ { "type": "text", "text": { - "content": "위 사진에서 New repository secret를 눌러 아래와 같이 설정하고 추가한다.\nName: ", - "link": null - }, - "annotations": { - "bold": false, - "italic": false, - "strikethrough": false, - "underline": false, - "code": false, - "color": "default" - }, - "plain_text": "위 사진에서 New repository secret를 눌러 아래와 같이 설정하고 추가한다.\nName: ", - "href": null - }, - { - "type": "text", - "text": { - "content": "NPM_TOKEN", - "link": null - }, - "annotations": { - "bold": false, - "italic": false, - "strikethrough": false, - "underline": false, - "code": true, - "color": "default" - }, - "plain_text": "NPM_TOKEN", - "href": null - }, - { - "type": "text", - "text": { - "content": ", Secret: ", + "content": "Flux 패턴은 2014년 페이스북 컨퍼런스에서 발표된 Architecture이다.\n기존의 MVC 패턴은 데이터 흐름이 양방향이기 때문에 복잡성과 예측 불가능성이 증가하는 문제가 있었다.\n이를 해결하기 위해 나온 Flux 패턴은 단방향 데이터 흐름을 도입하여 상태 관리를 간소화하고 예측할 수 있는 방식으로 처리할 수 있도록 설계되었다.", "link": null }, "annotations": { @@ -2521,24 +2220,7 @@ "code": false, "color": "default" }, - "plain_text": ", Secret: ", - "href": null - }, - { - "type": "text", - "text": { - "content": "발급 받은 토큰", - "link": null - }, - "annotations": { - "bold": false, - "italic": false, - "strikethrough": false, - "underline": false, - "code": true, - "color": "default" - }, - "plain_text": "발급 받은 토큰", + "plain_text": "Flux 패턴은 2014년 페이스북 컨퍼런스에서 발표된 Architecture이다.\n기존의 MVC 패턴은 데이터 흐름이 양방향이기 때문에 복잡성과 예측 불가능성이 증가하는 문제가 있었다.\n이를 해결하기 위해 나온 Flux 패턴은 단방향 데이터 흐름을 도입하여 상태 관리를 간소화하고 예측할 수 있는 방식으로 처리할 수 있도록 설계되었다.", "href": null } ], @@ -2547,13 +2229,13 @@ }, { "object": "block", - "id": "1399c6bf-2b17-80d9-84fe-ed1cae23d610", + "id": "40ab6b16-87d8-428d-b7c0-ccb87772ff85", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T13:18:00.000Z", - "last_edited_time": "2024-11-09T14:57:00.000Z", + "created_time": "2023-11-30T06:02:00.000Z", + "last_edited_time": "2025-04-14T14:09:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -2570,25 +2252,25 @@ "caption": [], "type": "file", "file": { - "url": "https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2Fcd7314a5-d906-43b0-81e7-42eff82c02a3%2F0430f6ee-fbb5-404d-9013-52739b74e097%2Fimage.png?table=block&id=1399c6bf-2b17-80d9-84fe-ed1cae23d610&cache=v2", - "expiry_time": "2025-04-13T15:03:20.785Z" + "url": "https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2Fcd7314a5-d906-43b0-81e7-42eff82c02a3%2F081953e4-865d-4692-89ff-22c747d5df87%2FUntitled.png?table=block&id=40ab6b16-87d8-428d-b7c0-ccb87772ff85&cache=v2", + "expiry_time": "2025-04-14T15:12:43.676Z" }, "format": { - "block_width": 786, - "block_height": 311, - "block_aspect_ratio": 2.527331189710611 + "block_width": 720, + "block_height": 218, + "block_aspect_ratio": 3.302752293577982 } } }, { "object": "block", - "id": "1399c6bf-2b17-803b-9937-fe5881ea84ef", + "id": "0bcbecde-f586-4694-b015-d7a39c338e36", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T13:20:00.000Z", - "last_edited_time": "2024-11-09T14:23:00.000Z", + "created_time": "2023-11-30T05:29:00.000Z", + "last_edited_time": "2023-11-30T06:04:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -2606,7 +2288,7 @@ { "type": "text", "text": { - "content": "Workflow permission에 위와 같은 권한이 없으면 PR 생성이 안되니 위 설정도 확인해 보자!", + "content": "Flux 패턴은 아래와 같은 주요 개념으로 구성된다.", "link": null }, "annotations": { @@ -2617,7 +2299,7 @@ "code": false, "color": "default" }, - "plain_text": "Workflow permission에 위와 같은 권한이 없으면 PR 생성이 안되니 위 설정도 확인해 보자!", + "plain_text": "Flux 패턴은 아래와 같은 주요 개념으로 구성된다.", "href": null } ], @@ -2626,13 +2308,13 @@ }, { "object": "block", - "id": "1399c6bf-2b17-8063-ad06-def65eeeaef8", + "id": "287f9b00-55d9-48be-aa47-7491f3854d9c", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T13:21:00.000Z", - "last_edited_time": "2024-11-09T14:58:00.000Z", + "created_time": "2023-11-30T06:04:00.000Z", + "last_edited_time": "2023-11-30T06:13:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -2641,50 +2323,16 @@ "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" }, - "has_children": false, + "has_children": true, "archived": false, "in_trash": false, - "type": "paragraph", - "paragraph": { + "type": "bulleted_list_item", + "bulleted_list_item": { "rich_text": [ { "type": "text", "text": { - "content": "다음으로 배포를 자동화하기 위한 Github Action을 설정한다.\n아래는 GitHub Action 설정 파일(", - "link": null - }, - "annotations": { - "bold": false, - "italic": false, - "strikethrough": false, - "underline": false, - "code": false, - "color": "default" - }, - "plain_text": "다음으로 배포를 자동화하기 위한 Github Action을 설정한다.\n아래는 GitHub Action 설정 파일(", - "href": null - }, - { - "type": "text", - "text": { - "content": ".github/workflows/release.yml", - "link": null - }, - "annotations": { - "bold": false, - "italic": false, - "strikethrough": false, - "underline": false, - "code": true, - "color": "default" - }, - "plain_text": ".github/workflows/release.yml", - "href": null - }, - { - "type": "text", - "text": { - "content": ")의 예시이다.\n(각 라인의 설명도 함께 추가하였다.)", + "content": "액션(Action): 애플리케이션에서 발생하는 어떠한 사건이다.", "link": null }, "annotations": { @@ -2695,22 +2343,68 @@ "code": false, "color": "default" }, - "plain_text": ")의 예시이다.\n(각 라인의 설명도 함께 추가하였다.)", + "plain_text": "액션(Action): 애플리케이션에서 발생하는 어떠한 사건이다.", "href": null } ], "color": "default" - } + }, + "children": [ + { + "object": "block", + "id": "6f00e28b-7b01-4e36-bdc6-9c8b63cd428f", + "parent": { + "type": "block_id", + "block_id": "287f9b00-55d9-48be-aa47-7491f3854d9c" + }, + "created_time": "2023-11-30T06:13:00.000Z", + "last_edited_time": "2023-12-01T11:55:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "bulleted_list_item", + "bulleted_list_item": { + "rich_text": [ + { + "type": "text", + "text": { + "content": "예를 들어 버튼 클릭, 입력값 변경 등이 액션에 해당한다.", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "예를 들어 버튼 클릭, 입력값 변경 등이 액션에 해당한다.", + "href": null + } + ], + "color": "default" + } + } + ] }, { "object": "block", - "id": "1399c6bf-2b17-801d-8f17-ca9e3a2abb1c", + "id": "f8945c25-c7bc-44a7-bad7-fdb47563ef3a", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T13:27:00.000Z", - "last_edited_time": "2024-11-09T13:27:00.000Z", + "created_time": "2023-11-30T06:05:00.000Z", + "last_edited_time": "2023-11-30T06:12:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -2722,13 +2416,13 @@ "has_children": false, "archived": false, "in_trash": false, - "type": "paragraph", - "paragraph": { + "type": "bulleted_list_item", + "bulleted_list_item": { "rich_text": [ { "type": "text", "text": { - "content": "release.yml", + "content": "디스패처(Dispatcher): 액션을 전달받아 등록된 스토어에 액션을 분배하는 역할을 한다.", "link": null }, "annotations": { @@ -2736,10 +2430,10 @@ "italic": false, "strikethrough": false, "underline": false, - "code": true, + "code": false, "color": "default" }, - "plain_text": "release.yml", + "plain_text": "디스패처(Dispatcher): 액션을 전달받아 등록된 스토어에 액션을 분배하는 역할을 한다.", "href": null } ], @@ -2748,13 +2442,13 @@ }, { "object": "block", - "id": "1399c6bf-2b17-808d-bbc7-fa5ac9b952f7", + "id": "61d057bc-993b-4736-91b4-971d70e6b971", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T13:22:00.000Z", - "last_edited_time": "2024-11-09T14:17:00.000Z", + "created_time": "2023-11-30T06:05:00.000Z", + "last_edited_time": "2023-11-30T06:13:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -2763,17 +2457,16 @@ "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" }, - "has_children": false, + "has_children": true, "archived": false, "in_trash": false, - "type": "code", - "code": { - "caption": [], + "type": "bulleted_list_item", + "bulleted_list_item": { "rich_text": [ { "type": "text", "text": { - "content": "name: Release\n# 워크플로우 이름 설정. 배포 관련 작업을 수행함\n\non:\n push:\n branches:\n - main\n# main 브랜치에 푸시될 때마다 이 워크플로우가 실행됨\n\nconcurrency: ${{ github.workflow }}-${{ github.ref }}\n# 동시에 여러 워크플로우가 실행되지 않도록 방지\n\njobs:\n release:\n name: Release\n runs-on: ubuntu-latest\n # 배포 작업을 위한 실행 환경을 ubuntu-latest로 설정\n\n steps:\n - name: Checkout Repo\n uses: actions/checkout@v3\n # 저장소를 체크아웃하여 GitHub Actions가 코드를 사용할 수 있도록 함\n\n - name: Setup Node.js 20.x\n uses: actions/setup-node@v3\n with:\n node-version: 20.x\n # Node.js 20.x 버전을 설정하여 Node 환경 준비\n\n - name: Install pnpm\n uses: pnpm/action-setup@v2\n with:\n version: 9\n # pnpm 버전 9 설치\n # pnpm이 아니라 다른 package manager를 사용한다면 바꿔주면 된다\n\t\t\t\t\n - name: Install Dependencies\n run: pnpm install --frozen-lockfile\n # 프로젝트의 모든 의존성을 설치. lockfile을 변경하지 않음\n\n - name: Build packages\n run: pnpm build\n # 패키지를 빌드함\n\n - name: Creating .npmrc\n run: |\n cat << EOF > \"$HOME/.npmrc\"\n //registry.npmjs.org/:_authToken=$NPM_TOKEN\n EOF\n env:\n NPM_TOKEN: ${{ secrets.NPM_TOKEN }}\n # npm 인증 토큰을 포함한 .npmrc 파일 생성\n\n - name: Create Release Pull Request or Publish to npm\n id: changesets\n uses: changesets/action@v1\n with:\n version: pnpm packages-version\n publish: pnpm release\n env:\n GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}\n NPM_TOKEN: ${{ secrets.NPM_TOKEN }}\n # changeset을 사용해 릴리즈 Pull Request를 생성하거나 npm에 배포", + "content": "스토어(Store): 애플리케이션의 상태를 저장하고 관리한다.", "link": null }, "annotations": { @@ -2784,22 +2477,112 @@ "code": false, "color": "default" }, - "plain_text": "name: Release\n# 워크플로우 이름 설정. 배포 관련 작업을 수행함\n\non:\n push:\n branches:\n - main\n# main 브랜치에 푸시될 때마다 이 워크플로우가 실행됨\n\nconcurrency: ${{ github.workflow }}-${{ github.ref }}\n# 동시에 여러 워크플로우가 실행되지 않도록 방지\n\njobs:\n release:\n name: Release\n runs-on: ubuntu-latest\n # 배포 작업을 위한 실행 환경을 ubuntu-latest로 설정\n\n steps:\n - name: Checkout Repo\n uses: actions/checkout@v3\n # 저장소를 체크아웃하여 GitHub Actions가 코드를 사용할 수 있도록 함\n\n - name: Setup Node.js 20.x\n uses: actions/setup-node@v3\n with:\n node-version: 20.x\n # Node.js 20.x 버전을 설정하여 Node 환경 준비\n\n - name: Install pnpm\n uses: pnpm/action-setup@v2\n with:\n version: 9\n # pnpm 버전 9 설치\n # pnpm이 아니라 다른 package manager를 사용한다면 바꿔주면 된다\n\t\t\t\t\n - name: Install Dependencies\n run: pnpm install --frozen-lockfile\n # 프로젝트의 모든 의존성을 설치. lockfile을 변경하지 않음\n\n - name: Build packages\n run: pnpm build\n # 패키지를 빌드함\n\n - name: Creating .npmrc\n run: |\n cat << EOF > \"$HOME/.npmrc\"\n //registry.npmjs.org/:_authToken=$NPM_TOKEN\n EOF\n env:\n NPM_TOKEN: ${{ secrets.NPM_TOKEN }}\n # npm 인증 토큰을 포함한 .npmrc 파일 생성\n\n - name: Create Release Pull Request or Publish to npm\n id: changesets\n uses: changesets/action@v1\n with:\n version: pnpm packages-version\n publish: pnpm release\n env:\n GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}\n NPM_TOKEN: ${{ secrets.NPM_TOKEN }}\n # changeset을 사용해 릴리즈 Pull Request를 생성하거나 npm에 배포", + "plain_text": "스토어(Store): 애플리케이션의 상태를 저장하고 관리한다.", "href": null } ], - "language": "yaml" - } + "color": "default" + }, + "children": [ + { + "object": "block", + "id": "5f3defd3-3c8e-4819-9b8c-26a63fcf2c25", + "parent": { + "type": "block_id", + "block_id": "61d057bc-993b-4736-91b4-971d70e6b971" + }, + "created_time": "2023-11-30T06:13:00.000Z", + "last_edited_time": "2023-11-30T06:13:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "bulleted_list_item", + "bulleted_list_item": { + "rich_text": [ + { + "type": "text", + "text": { + "content": "변경된 상태를 뷰에 알린다.", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "변경된 상태를 뷰에 알린다.", + "href": null + } + ], + "color": "default" + } + }, + { + "object": "block", + "id": "15946176-74db-4d14-9d5d-0123f9e3e03f", + "parent": { + "type": "block_id", + "block_id": "61d057bc-993b-4736-91b4-971d70e6b971" + }, + "created_time": "2023-11-30T06:13:00.000Z", + "last_edited_time": "2023-11-30T06:13:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "bulleted_list_item", + "bulleted_list_item": { + "rich_text": [ + { + "type": "text", + "text": { + "content": "상태 변경에 대한 로직을 포함하고 있으며, 디스패처로부터 전달받은 액션을 처리한다.", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "상태 변경에 대한 로직을 포함하고 있으며, 디스패처로부터 전달받은 액션을 처리한다.", + "href": null + } + ], + "color": "default" + } + } + ] }, { "object": "block", - "id": "1399c6bf-2b17-80dd-bb34-f48ac10e8213", + "id": "8d083742-175b-460c-8bc5-007ea36fedb3", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T13:24:00.000Z", - "last_edited_time": "2024-11-09T14:58:00.000Z", + "created_time": "2023-11-30T06:05:00.000Z", + "last_edited_time": "2023-11-30T06:14:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -2808,16 +2591,16 @@ "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" }, - "has_children": false, + "has_children": true, "archived": false, "in_trash": false, - "type": "paragraph", - "paragraph": { + "type": "bulleted_list_item", + "bulleted_list_item": { "rich_text": [ { "type": "text", "text": { - "content": "위 yml파일의 마지막 step에서 아래와 같이 ", + "content": "뷰(View): 사용자에게 데이터를 표시하고 사용자 입력을 받는 역할을 한다.", "link": null }, "annotations": { @@ -2828,13 +2611,86 @@ "code": false, "color": "default" }, - "plain_text": "위 yml파일의 마지막 step에서 아래와 같이 ", + "plain_text": "뷰(View): 사용자에게 데이터를 표시하고 사용자 입력을 받는 역할을 한다.", "href": null + } + ], + "color": "default" + }, + "children": [ + { + "object": "block", + "id": "f28162e9-d5b1-485b-8dcd-a66b095f5ced", + "parent": { + "type": "block_id", + "block_id": "8d083742-175b-460c-8bc5-007ea36fedb3" }, - { - "type": "text", + "created_time": "2023-11-30T06:14:00.000Z", + "last_edited_time": "2023-11-30T06:14:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "bulleted_list_item", + "bulleted_list_item": { + "rich_text": [ + { + "type": "text", + "text": { + "content": "뷰는 스토어의 상태를 구독하고, 상태가 변경될 때마다 업데이트된다.", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "뷰는 스토어의 상태를 구독하고, 상태가 변경될 때마다 업데이트된다.", + "href": null + } + ], + "color": "default" + } + } + ] + }, + { + "object": "block", + "id": "67674908-7bea-4860-9843-8f5737dd392f", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-11-30T06:14:00.000Z", + "last_edited_time": "2023-12-01T11:55:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "paragraph", + "paragraph": { + "rich_text": [ + { + "type": "text", "text": { - "content": "version, publish", + "content": "Flux 패턴은 단방향 데이터 흐름으로써, 액션 → 디스패처 → 스토어 → 뷰의 순서로 데이터가 흘러간다.\n이러한 방식은 상태 변화를 추적하고 예측할 수 있는 방식으로 처리할 수 있게 해준다.", "link": null }, "annotations": { @@ -2842,16 +2698,78 @@ "italic": false, "strikethrough": false, "underline": false, - "code": true, + "code": false, "color": "default" }, - "plain_text": "version, publish", + "plain_text": "Flux 패턴은 단방향 데이터 흐름으로써, 액션 → 디스패처 → 스토어 → 뷰의 순서로 데이터가 흘러간다.\n이러한 방식은 상태 변화를 추적하고 예측할 수 있는 방식으로 처리할 수 있게 해준다.", "href": null - }, + } + ], + "color": "default" + } + }, + { + "object": "block", + "id": "1bbcd6e7-fc7a-4f66-a6d1-631c8f6e75bb", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-11-30T06:32:00.000Z", + "last_edited_time": "2023-11-30T06:33:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "image", + "image": { + "caption": [], + "type": "file", + "file": { + "url": "https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2Fcd7314a5-d906-43b0-81e7-42eff82c02a3%2F09824e82-6f2f-4e9c-9758-32637cf14148%2FUntitled.png?table=block&id=1bbcd6e7-fc7a-4f66-a6d1-631c8f6e75bb&cache=v2", + "expiry_time": "2025-04-14T15:12:43.676Z" + }, + "format": { + "block_width": 755, + "block_height": 875, + "block_aspect_ratio": 0.8628571428571429 + } + } + }, + { + "object": "block", + "id": "bbb7ff57-55db-456d-933a-fb2c78eccb05", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-11-30T06:14:00.000Z", + "last_edited_time": "2023-11-30T07:15:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "paragraph", + "paragraph": { + "rich_text": [ { "type": "text", "text": { - "content": " 설정을 해주는데, 이건 나의 ", + "content": "Flux 패턴의 구현체인 ", "link": null }, "annotations": { @@ -2862,13 +2780,30 @@ "code": false, "color": "default" }, - "plain_text": " 설정을 해주는데, 이건 나의 ", + "plain_text": "Flux 패턴의 구현체인 ", + "href": null + }, + { + "type": "text", + "text": { + "content": "Redux", + "link": null + }, + "annotations": { + "bold": true, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "Redux", "href": null }, { "type": "text", "text": { - "content": "package.json", + "content": ", Flux 패턴의 구현체는 아니지만 Redux와 유사한 목적을 가지는 ", "link": null }, "annotations": { @@ -2876,16 +2811,33 @@ "italic": false, "strikethrough": false, "underline": false, - "code": true, + "code": false, + "color": "default" + }, + "plain_text": ", Flux 패턴의 구현체는 아니지만 Redux와 유사한 목적을 가지는 ", + "href": null + }, + { + "type": "text", + "text": { + "content": "Zustand", + "link": null + }, + "annotations": { + "bold": true, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, "color": "default" }, - "plain_text": "package.json", + "plain_text": "Zustand", "href": null }, { "type": "text", "text": { - "content": " script에 추가해 준 changeset 관련 명령어다.", + "content": "는 하향식 (Top-Down) 접근법을 가지고 있다.", "link": null }, "annotations": { @@ -2896,7 +2848,7 @@ "code": false, "color": "default" }, - "plain_text": " script에 추가해 준 changeset 관련 명령어다.", + "plain_text": "는 하향식 (Top-Down) 접근법을 가지고 있다.", "href": null } ], @@ -2905,13 +2857,13 @@ }, { "object": "block", - "id": "1399c6bf-2b17-807c-805a-d47bca5455b1", + "id": "4a680b25-fe4b-4245-8c62-6d4fbcad8334", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T13:25:00.000Z", - "last_edited_time": "2024-11-09T13:25:00.000Z", + "created_time": "2023-11-30T06:50:00.000Z", + "last_edited_time": "2023-11-30T06:54:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -2920,189 +2872,42 @@ "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" }, - "has_children": true, + "has_children": false, "archived": false, "in_trash": false, - "type": "column_list", - "column_list": {}, - "children": [ - { - "object": "block", - "id": "1399c6bf-2b17-809f-92ec-fb29d4981cc7", - "parent": { - "type": "block_id", - "block_id": "1399c6bf-2b17-807c-805a-d47bca5455b1" - }, - "created_time": "2024-11-09T13:25:00.000Z", - "last_edited_time": "2024-11-09T14:29:00.000Z", - "created_by": { - "object": "user", - "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" - }, - "last_edited_by": { - "object": "user", - "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" - }, - "has_children": true, - "archived": false, - "in_trash": false, - "type": "column", - "column": {}, - "children": [ - { - "object": "block", - "id": "1399c6bf-2b17-80dd-817a-d0b56736ef74", - "parent": { - "type": "block_id", - "block_id": "1399c6bf-2b17-809f-92ec-fb29d4981cc7" - }, - "created_time": "2024-11-09T13:24:00.000Z", - "last_edited_time": "2024-11-09T13:25:00.000Z", - "created_by": { - "object": "user", - "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" - }, - "last_edited_by": { - "object": "user", - "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" - }, - "has_children": false, - "archived": false, - "in_trash": false, - "type": "code", - "code": { - "caption": [], - "rich_text": [ - { - "type": "text", - "text": { - "content": "version: pnpm packages-version\npublish: pnpm release", - "link": null - }, - "annotations": { - "bold": false, - "italic": false, - "strikethrough": false, - "underline": false, - "code": false, - "color": "default" - }, - "plain_text": "version: pnpm packages-version\npublish: pnpm release", - "href": null - } - ], - "language": "yaml" - } + "type": "paragraph", + "paragraph": { + "rich_text": [ + { + "type": "text", + "text": { + "content": "하향식 (Top-Down) 접근법 : 컴포넌트 외부에 Store가 상태를 가지고 컴포넌트에서 상태를 가져다 쓰는 방식", + "link": null }, - { - "object": "block", - "id": "1399c6bf-2b17-80ed-972c-f8f93605eb20", - "parent": { - "type": "block_id", - "block_id": "1399c6bf-2b17-809f-92ec-fb29d4981cc7" - }, - "created_time": "2024-11-09T13:25:00.000Z", - "last_edited_time": "2024-11-09T13:25:00.000Z", - "created_by": { - "object": "user", - "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" - }, - "last_edited_by": { - "object": "user", - "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" - }, - "has_children": false, - "archived": false, - "in_trash": false, - "type": "paragraph", - "paragraph": { - "rich_text": [], - "color": "default" - } - } - ] - }, - { - "object": "block", - "id": "1399c6bf-2b17-8010-8b83-d3c9286dbce9", - "parent": { - "type": "block_id", - "block_id": "1399c6bf-2b17-807c-805a-d47bca5455b1" - }, - "created_time": "2024-11-09T13:25:00.000Z", - "last_edited_time": "2024-11-09T14:29:00.000Z", - "created_by": { - "object": "user", - "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" - }, - "last_edited_by": { - "object": "user", - "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" - }, - "has_children": true, - "archived": false, - "in_trash": false, - "type": "column", - "column": {}, - "children": [ - { - "object": "block", - "id": "1399c6bf-2b17-807a-b7bf-ea370c778400", - "parent": { - "type": "block_id", - "block_id": "1399c6bf-2b17-8010-8b83-d3c9286dbce9" - }, - "created_time": "2024-11-09T13:25:00.000Z", - "last_edited_time": "2024-11-09T13:25:00.000Z", - "created_by": { - "object": "user", - "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" - }, - "last_edited_by": { - "object": "user", - "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" - }, - "has_children": false, - "archived": false, - "in_trash": false, - "type": "code", - "code": { - "caption": [], - "rich_text": [ - { - "type": "text", - "text": { - "content": " \"scripts\": {\n\t\t...\n \"packages-version\": \"changeset version\",\n \"release\": \"changeset publish\"\n },", - "link": null - }, - "annotations": { - "bold": false, - "italic": false, - "strikethrough": false, - "underline": false, - "code": false, - "color": "default" - }, - "plain_text": " \"scripts\": {\n\t\t...\n \"packages-version\": \"changeset version\",\n \"release\": \"changeset publish\"\n },", - "href": null - } - ], - "language": "json" - } - } - ] - } - ] + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "하향식 (Top-Down) 접근법 : 컴포넌트 외부에 Store가 상태를 가지고 컴포넌트에서 상태를 가져다 쓰는 방식", + "href": null + } + ], + "color": "default" + } }, { "object": "block", - "id": "1399c6bf-2b17-8033-a1ed-c62b187f2f44", + "id": "fc7f2609-d465-4452-bf16-c17b7b782f56", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T13:31:00.000Z", - "last_edited_time": "2024-11-09T13:31:00.000Z", + "created_time": "2023-11-30T06:14:00.000Z", + "last_edited_time": "2023-11-30T07:14:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -3120,18 +2925,18 @@ { "type": "text", "text": { - "content": "직접 해보기", + "content": "Redux", "link": null }, "annotations": { - "bold": false, + "bold": true, "italic": false, "strikethrough": false, "underline": false, "code": false, "color": "default" }, - "plain_text": "직접 해보기", + "plain_text": "Redux", "href": null } ], @@ -3141,13 +2946,13 @@ }, { "object": "block", - "id": "1399c6bf-2b17-805e-bcb8-d4fa46a424d8", + "id": "d56c78aa-01dd-423b-a8c7-f3fdae24f504", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T13:31:00.000Z", - "last_edited_time": "2024-11-09T14:58:00.000Z", + "created_time": "2024-01-06T12:32:00.000Z", + "last_edited_time": "2024-01-06T12:32:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -3159,39 +2964,29 @@ "has_children": false, "archived": false, "in_trash": false, - "type": "paragraph", - "paragraph": { - "rich_text": [ - { - "type": "text", - "text": { - "content": "자! 이제 세팅은 다 끝났다. 그럼 위 github action은 어떻게 작동할까? 직접 해보자!", - "link": null - }, - "annotations": { - "bold": false, - "italic": false, - "strikethrough": false, - "underline": false, - "code": false, - "color": "default" - }, - "plain_text": "자! 이제 세팅은 다 끝났다. 그럼 위 github action은 어떻게 작동할까? 직접 해보자!", - "href": null - } - ], - "color": "default" + "type": "image", + "image": { + "caption": [], + "type": "external", + "external": { + "url": "https://www.notion.so/image/https%3A%2F%2Fres.cloudinary.com%2Fpracticaldev%2Fimage%2Ffetch%2Fs--_N4G6Upo--%2Fc_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_800%2Fhttps%3A%2F%2Fi.imgur.com%2FriadAin.gif?table=block&id=d56c78aa-01dd-423b-a8c7-f3fdae24f504&cache=v2" + }, + "format": { + "block_width": 800, + "block_height": 600, + "block_aspect_ratio": 1.3333333333333333 + } } }, { "object": "block", - "id": "1399c6bf-2b17-802a-b0d0-d398c9e15753", + "id": "34c57947-872a-4ae0-b8b8-9ae9b1415bbe", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T13:43:00.000Z", - "last_edited_time": "2024-11-09T13:44:00.000Z", + "created_time": "2023-11-30T06:15:00.000Z", + "last_edited_time": "2023-12-02T07:11:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -3203,14 +2998,13 @@ "has_children": false, "archived": false, "in_trash": false, - "type": "code", - "code": { - "caption": [], + "type": "paragraph", + "paragraph": { "rich_text": [ { "type": "text", "text": { - "content": "gaa\ngcmsg \"build: github action 자동화 Test\"\npnpm changeset\ngcmsg \"chore: 임시 md 추가\"\nggp", + "content": "프론트엔드 개발자라면 한 번쯤은 본 영상이다. Redux는 기본적으로 위와 같이 단방향으로 데이터가 흐른다.", "link": null }, "annotations": { @@ -3221,22 +3015,22 @@ "code": false, "color": "default" }, - "plain_text": "gaa\ngcmsg \"build: github action 자동화 Test\"\npnpm changeset\ngcmsg \"chore: 임시 md 추가\"\nggp", + "plain_text": "프론트엔드 개발자라면 한 번쯤은 본 영상이다. Redux는 기본적으로 위와 같이 단방향으로 데이터가 흐른다.", "href": null } ], - "language": "bash" + "color": "default" } }, { "object": "block", - "id": "1399c6bf-2b17-80e8-a4d9-e81d1f54210e", + "id": "395097ab-6de3-4541-abfb-deba48fc8ec7", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T13:44:00.000Z", - "last_edited_time": "2024-11-09T13:45:00.000Z", + "created_time": "2023-11-30T07:45:00.000Z", + "last_edited_time": "2023-11-30T07:45:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -3254,43 +3048,7 @@ { "type": "text", "text": { - "content": "위 커맨드는 ", - "link": null - }, - "annotations": { - "bold": false, - "italic": false, - "strikethrough": false, - "underline": false, - "code": false, - "color": "default" - }, - "plain_text": "위 커맨드는 ", - "href": null - }, - { - "type": "text", - "text": { - "content": "git alias", - "link": { - "url": "https://www.hansschnedlitz.com/git-aliases/" - } - }, - "annotations": { - "bold": false, - "italic": false, - "strikethrough": false, - "underline": false, - "code": false, - "color": "default" - }, - "plain_text": "git alias", - "href": "https://www.hansschnedlitz.com/git-aliases/" - }, - { - "type": "text", - "text": { - "content": "를 사용한 커맨드다! (그냥 add, commit, push다)", + "content": "바로 Redux를 사용한 예제를 보겠다.", "link": null }, "annotations": { @@ -3301,7 +3059,7 @@ "code": false, "color": "default" }, - "plain_text": "를 사용한 커맨드다! (그냥 add, commit, push다)", + "plain_text": "바로 Redux를 사용한 예제를 보겠다.", "href": null } ], @@ -3310,13 +3068,13 @@ }, { "object": "block", - "id": "1399c6bf-2b17-806b-9544-d67837652d4a", + "id": "57054668-ec2a-4e5e-8c0e-5db02fccc8b5", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T13:46:00.000Z", - "last_edited_time": "2024-11-09T13:50:00.000Z", + "created_time": "2023-11-30T07:15:00.000Z", + "last_edited_time": "2023-11-30T07:15:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -3334,18 +3092,18 @@ { "type": "text", "text": { - "content": "push를 하면 workflow 실행되면서 PR이 생성된다.", + "content": "Counter 예제", "link": null }, "annotations": { - "bold": false, + "bold": true, "italic": false, "strikethrough": false, "underline": false, "code": false, "color": "default" }, - "plain_text": "push를 하면 workflow 실행되면서 PR이 생성된다.", + "plain_text": "Counter 예제", "href": null } ], @@ -3354,13 +3112,13 @@ }, { "object": "block", - "id": "1399c6bf-2b17-801f-bf40-d08216c807fc", + "id": "b37807cb-938a-4c4f-9bfa-ff7f16ae524f", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T13:44:00.000Z", - "last_edited_time": "2024-11-09T14:30:00.000Z", + "created_time": "2023-11-30T07:07:00.000Z", + "last_edited_time": "2023-12-02T07:11:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -3372,30 +3130,21 @@ "has_children": false, "archived": false, "in_trash": false, - "type": "image", - "image": { + "type": "embed", + "embed": { "caption": [], - "type": "file", - "file": { - "url": "https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2Fcd7314a5-d906-43b0-81e7-42eff82c02a3%2F14e3f710-f1a2-4fc0-aefc-d33dc74e6dcb%2Fimage.png?table=block&id=1399c6bf-2b17-801f-bf40-d08216c807fc&cache=v2", - "expiry_time": "2025-04-13T15:03:20.788Z" - }, - "format": { - "block_width": 1301, - "block_height": 91, - "block_aspect_ratio": 14.296703296703297 - } + "url": "https://codesandbox.io/embed/wq9yjp?view=Editor+%2B+Preview&module=%2Fsrc%2Ffeatures%2Fcounter%2FCounter.js" } }, { "object": "block", - "id": "1399c6bf-2b17-8078-a648-eb26e62f9478", + "id": "1ca3f033-2672-4bb3-aff5-fb87110eb592", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T13:49:00.000Z", - "last_edited_time": "2024-11-09T13:49:00.000Z", + "created_time": "2023-11-30T07:10:00.000Z", + "last_edited_time": "2023-11-30T07:16:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -3407,30 +3156,39 @@ "has_children": false, "archived": false, "in_trash": false, - "type": "image", - "image": { - "caption": [], - "type": "file", - "file": { - "url": "https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2Fcd7314a5-d906-43b0-81e7-42eff82c02a3%2Fdefe3fdd-7f31-40bb-a1a1-121b33d72edc%2Fimage.png?table=block&id=1399c6bf-2b17-8078-a648-eb26e62f9478&cache=v2", - "expiry_time": "2025-04-13T15:03:20.785Z" - }, - "format": { - "block_width": 706, - "block_height": 686, - "block_aspect_ratio": 1.0291545189504374 - } + "type": "paragraph", + "paragraph": { + "rich_text": [ + { + "type": "text", + "text": { + "content": "코드", + "link": null + }, + "annotations": { + "bold": true, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "코드", + "href": null + } + ], + "color": "default" } }, { "object": "block", - "id": "1399c6bf-2b17-802d-9a06-c6ae7beed5cc", + "id": "14d2ff54-2b54-45be-8fc1-bf34f3785ffc", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T13:47:00.000Z", - "last_edited_time": "2024-11-09T13:47:00.000Z", + "created_time": "2023-11-30T07:10:00.000Z", + "last_edited_time": "2023-11-30T07:37:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -3442,30 +3200,40 @@ "has_children": false, "archived": false, "in_trash": false, - "type": "image", - "image": { + "type": "code", + "code": { "caption": [], - "type": "file", - "file": { - "url": "https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2Fcd7314a5-d906-43b0-81e7-42eff82c02a3%2F0ef32fb5-9f44-4635-b15d-098dde53e05f%2Fimage.png?table=block&id=1399c6bf-2b17-802d-9a06-c6ae7beed5cc&cache=v2", - "expiry_time": "2025-04-13T15:03:20.785Z" - }, - "format": { - "block_width": 1297, - "block_height": 869, - "block_aspect_ratio": 1.4925201380897584 - } + "rich_text": [ + { + "type": "text", + "text": { + "content": "// slice.js\nimport { createSlice } from '@reduxjs/toolkit'\n\nexport const counterSlice = createSlice({\n name: 'counter',\n initialState: {\n value: 0,\n },\n reducers: {\n increment: (state) => {\n state.value += 1\n },\n decrement: (state) => {\n state.value -= 1\n },\n incrementByAmount: (state, action) => {\n state.value += action.payload\n },\n },\n})\n\nexport const { increment, decrement, incrementByAmount } = counterSlice.actions\n\nexport const selectCount = (state) => state.counter.value\n\nexport default counterSlice.reducer\n\n// store.js\nimport { configureStore } from '@reduxjs/toolkit';\nimport counterReducer from '../features/counter/counterSlice';\n\nexport default configureStore({\n reducer: {\n counter: counterReducer,\n },\n});\n\n// Counter.js\nimport React, { useState } from 'react';\nimport { useSelector, useDispatch } from 'react-redux';\nimport {\n decrement,\n increment,\n incrementByAmount,\n selectCount,\n} from './counterSlice';\nimport styles from './Counter.module.css';\n\nexport function Counter() {\n const count = useSelector(selectCount);\n const dispatch = useDispatch();\n const [incrementAmount, setIncrementAmount] = useState('2');\n\n return (\n
\n
\n dispatch(increment())}\n >\n +\n \n {count}\n dispatch(decrement())}\n >\n -\n \n
\n
\n setIncrementAmount(e.target.value)}\n />\n \n dispatch(incrementByAmount(Number(incrementAmount) || 0))\n }\n >\n Add Amount\n \n
\n
\n );\n}", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "// slice.js\nimport { createSlice } from '@reduxjs/toolkit'\n\nexport const counterSlice = createSlice({\n name: 'counter',\n initialState: {\n value: 0,\n },\n reducers: {\n increment: (state) => {\n state.value += 1\n },\n decrement: (state) => {\n state.value -= 1\n },\n incrementByAmount: (state, action) => {\n state.value += action.payload\n },\n },\n})\n\nexport const { increment, decrement, incrementByAmount } = counterSlice.actions\n\nexport const selectCount = (state) => state.counter.value\n\nexport default counterSlice.reducer\n\n// store.js\nimport { configureStore } from '@reduxjs/toolkit';\nimport counterReducer from '../features/counter/counterSlice';\n\nexport default configureStore({\n reducer: {\n counter: counterReducer,\n },\n});\n\n// Counter.js\nimport React, { useState } from 'react';\nimport { useSelector, useDispatch } from 'react-redux';\nimport {\n decrement,\n increment,\n incrementByAmount,\n selectCount,\n} from './counterSlice';\nimport styles from './Counter.module.css';\n\nexport function Counter() {\n const count = useSelector(selectCount);\n const dispatch = useDispatch();\n const [incrementAmount, setIncrementAmount] = useState('2');\n\n return (\n
\n
\n dispatch(increment())}\n >\n +\n \n {count}\n dispatch(decrement())}\n >\n -\n \n
\n
\n setIncrementAmount(e.target.value)}\n />\n \n dispatch(incrementByAmount(Number(incrementAmount) || 0))\n }\n >\n Add Amount\n \n
\n
\n );\n}", + "href": null + } + ], + "language": "typescript" } }, { "object": "block", - "id": "1399c6bf-2b17-8058-8473-d44e16e61bfe", + "id": "e4fc39b5-082e-4e8d-91df-80e9bd521adc", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T13:58:00.000Z", - "last_edited_time": "2024-11-09T13:59:00.000Z", + "created_time": "2023-11-30T06:15:00.000Z", + "last_edited_time": "2023-12-01T11:56:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -3477,13 +3245,13 @@ "has_children": false, "archived": false, "in_trash": false, - "type": "image", - "image": { - "caption": [ + "type": "paragraph", + "paragraph": { + "rich_text": [ { "type": "text", "text": { - "content": "자동으로 생성된 file changed", + "content": "Redux를 사용하는 Counter 관련 코드만 가져왔다. 그럼에도 여전히 코드(보일러 플레이트)는 많다.\nredux-toolkit 사용 전에는 reselect, immer 등도 추가로 사용해야 했다.. 그나마 redux-toolkit를 사용하며 많이 준거다.\n여기에 비동기 통신을 위한 라이브러리 (redux-saga, rtk-query, redux-thunk)까지 덧붙이면 얼마나 코드가 많아질지 상상이 안 된다.", "link": null }, "annotations": { @@ -3494,31 +3262,22 @@ "code": false, "color": "default" }, - "plain_text": "자동으로 생성된 file changed", + "plain_text": "Redux를 사용하는 Counter 관련 코드만 가져왔다. 그럼에도 여전히 코드(보일러 플레이트)는 많다.\nredux-toolkit 사용 전에는 reselect, immer 등도 추가로 사용해야 했다.. 그나마 redux-toolkit를 사용하며 많이 준거다.\n여기에 비동기 통신을 위한 라이브러리 (redux-saga, rtk-query, redux-thunk)까지 덧붙이면 얼마나 코드가 많아질지 상상이 안 된다.", "href": null } ], - "type": "file", - "file": { - "url": "https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2Fcd7314a5-d906-43b0-81e7-42eff82c02a3%2F31f50215-e6b1-4360-ad40-a562c68ceab0%2Fimage.png?table=block&id=1399c6bf-2b17-8058-8473-d44e16e61bfe&cache=v2", - "expiry_time": "2025-04-13T15:03:20.781Z" - }, - "format": { - "block_width": 934, - "block_height": 858, - "block_aspect_ratio": 1.0885780885780887 - } + "color": "default" } }, { "object": "block", - "id": "1399c6bf-2b17-80bc-b9c4-c16a52e5d2cc", + "id": "48d330d1-50ba-4424-bdc4-d144a70cef6b", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T13:47:00.000Z", - "last_edited_time": "2024-11-09T14:59:00.000Z", + "created_time": "2023-11-30T06:15:00.000Z", + "last_edited_time": "2023-11-30T09:23:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -3530,39 +3289,40 @@ "has_children": false, "archived": false, "in_trash": false, - "type": "paragraph", - "paragraph": { + "type": "heading_3", + "heading_3": { "rich_text": [ { "type": "text", "text": { - "content": "github-actions 봇이 자동으로 PR을 생성했고 위와 같이 내용도 친절하게 적어준다.\n마지막으로 해당 PR를 머지하면 아래와 같이 다시 workflow가 실행되며 npm에 배포된다.", + "content": "Zustand", "link": null }, "annotations": { - "bold": false, + "bold": true, "italic": false, "strikethrough": false, "underline": false, "code": false, "color": "default" }, - "plain_text": "github-actions 봇이 자동으로 PR을 생성했고 위와 같이 내용도 친절하게 적어준다.\n마지막으로 해당 PR를 머지하면 아래와 같이 다시 workflow가 실행되며 npm에 배포된다.", + "plain_text": "Zustand", "href": null } ], + "is_toggleable": false, "color": "default" } }, { "object": "block", - "id": "1399c6bf-2b17-80f0-9f6c-f3c73a34c74b", + "id": "0b56d248-d97c-4275-b47b-e29f51f4827a", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T13:51:00.000Z", - "last_edited_time": "2024-11-09T13:51:00.000Z", + "created_time": "2023-11-30T07:45:00.000Z", + "last_edited_time": "2023-11-30T07:53:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -3579,25 +3339,25 @@ "caption": [], "type": "file", "file": { - "url": "https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2Fcd7314a5-d906-43b0-81e7-42eff82c02a3%2Ffbd25f7c-0d0f-40ee-ae3f-1bb1d670425d%2Fimage.png?table=block&id=1399c6bf-2b17-80f0-9f6c-f3c73a34c74b&cache=v2", - "expiry_time": "2025-04-13T15:03:20.785Z" + "url": "https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2Fcd7314a5-d906-43b0-81e7-42eff82c02a3%2F4b59f38e-5374-411c-bbdd-91543d0484fd%2FUntitled.png?table=block&id=0b56d248-d97c-4275-b47b-e29f51f4827a&cache=v2", + "expiry_time": "2025-04-14T15:12:43.815Z" }, "format": { - "block_width": 1169, - "block_height": 78, - "block_aspect_ratio": 14.987179487179487 + "block_width": 1200, + "block_height": 600, + "block_aspect_ratio": 2 } } }, { "object": "block", - "id": "1399c6bf-2b17-8094-8705-e5d0f3b5c544", + "id": "f2eff5f1-a998-4287-981b-da15d380fa66", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T13:50:00.000Z", - "last_edited_time": "2024-11-09T13:50:00.000Z", + "created_time": "2023-11-30T07:46:00.000Z", + "last_edited_time": "2023-11-30T07:46:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -3609,30 +3369,39 @@ "has_children": false, "archived": false, "in_trash": false, - "type": "image", - "image": { - "caption": [], - "type": "file", - "file": { - "url": "https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2Fcd7314a5-d906-43b0-81e7-42eff82c02a3%2F9abfa5eb-f3cd-43ba-9adc-e7706b2fed8c%2Fimage.png?table=block&id=1399c6bf-2b17-8094-8705-e5d0f3b5c544&cache=v2", - "expiry_time": "2025-04-13T15:03:20.795Z" - }, - "format": { - "block_width": 881, - "block_height": 521, - "block_aspect_ratio": 1.690978886756238 - } + "type": "quote", + "quote": { + "rich_text": [ + { + "type": "text", + "text": { + "content": "A small, fast, and scalable bearbones state management solution.", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "A small, fast, and scalable bearbones state management solution.", + "href": null + } + ], + "color": "default" } }, { "object": "block", - "id": "1399c6bf-2b17-8002-8790-c152d40836f4", + "id": "56d1ac99-6342-4c10-b1be-fb1d8b8a87a9", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T14:03:00.000Z", - "last_edited_time": "2024-11-09T14:31:00.000Z", + "created_time": "2023-11-30T07:46:00.000Z", + "last_edited_time": "2023-12-01T11:57:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -3644,13 +3413,13 @@ "has_children": false, "archived": false, "in_trash": false, - "type": "image", - "image": { - "caption": [ + "type": "paragraph", + "paragraph": { + "rich_text": [ { "type": "text", "text": { - "content": "npm에 배포된 결과", + "content": "공식 문서 첫 문장에서 “Zustand는 작고, 빠르며 확장할 수 있는 bearbones 상태 솔루션이다” 라고 말한다.\nZustand는 독일어로 “상태”라는 뜻이고 Redux와 마찬가지로 특정 라이브러리에 종속되지 않아 여러 라이브러리, 프레임워크에서 사용할 수 있다.", "link": null }, "annotations": { @@ -3661,31 +3430,22 @@ "code": false, "color": "default" }, - "plain_text": "npm에 배포된 결과", + "plain_text": "공식 문서 첫 문장에서 “Zustand는 작고, 빠르며 확장할 수 있는 bearbones 상태 솔루션이다” 라고 말한다.\nZustand는 독일어로 “상태”라는 뜻이고 Redux와 마찬가지로 특정 라이브러리에 종속되지 않아 여러 라이브러리, 프레임워크에서 사용할 수 있다.", "href": null } ], - "type": "file", - "file": { - "url": "https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2Fcd7314a5-d906-43b0-81e7-42eff82c02a3%2F88661d90-5e2f-4239-ab05-5ffead8d3638%2Fimage.png?table=block&id=1399c6bf-2b17-8002-8790-c152d40836f4&cache=v2", - "expiry_time": "2025-04-13T15:03:20.791Z" - }, - "format": { - "block_width": 790, - "block_height": 318, - "block_aspect_ratio": 2.4842767295597485 - } + "color": "default" } }, { "object": "block", - "id": "1399c6bf-2b17-809b-84e7-d56ffac89fa2", + "id": "8d69c7c6-5893-49ea-97ad-8db328dd6ac8", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T13:51:00.000Z", - "last_edited_time": "2024-11-09T14:09:00.000Z", + "created_time": "2023-11-30T07:37:00.000Z", + "last_edited_time": "2023-11-30T08:05:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -3703,41 +3463,52 @@ { "type": "text", "text": { - "content": "위 실행 결과를 보면 알겠지만 같은 ", + "content": "Counter 예제 코드", "link": null }, "annotations": { - "bold": false, + "bold": true, "italic": false, "strikethrough": false, "underline": false, "code": false, "color": "default" }, - "plain_text": "위 실행 결과를 보면 알겠지만 같은 ", + "plain_text": "Counter 예제 코드", "href": null - }, - { - "type": "text", - "text": { - "content": "Create Release Pull Request or Publish to npm", - "link": null - }, - "annotations": { - "bold": false, - "italic": false, - "strikethrough": false, - "underline": false, - "code": true, - "color": "default" - }, - "plain_text": "Create Release Pull Request or Publish to npm", - "href": null - }, + } + ], + "color": "default" + } + }, + { + "object": "block", + "id": "b22b5c7b-84d2-407b-bbcc-aeda014930ec", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-11-30T07:37:00.000Z", + "last_edited_time": "2023-11-30T07:44:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "code", + "code": { + "caption": [], + "rich_text": [ { "type": "text", "text": { - "content": " action이 수행되는데 어떤 경우는 PR이 생성되고 어떤 경우는 npm에 배포되며 release tag가 생성된다.", + "content": "import { create } from 'zustand'\n\nconst useStore = create((set) => ({\n count: 1,\n inc: () => set((state) => ({ count: state.count + 1 })),\n\tdes: () => set((state) => ({ count: state.count - 1 })),\n\tincrementByAmount: (value) => set(() => ({ count: value })),\n}))\n\nfunction Counter() {\n const { count, inc, incrementByAmount } = useStore()\n\tconst [incrementAmount, setIncrementAmount] = useState('2');\n\n return (\n
\n
\n \n +\n \n {count}\n \n -\n \n
\n
\n setIncrementAmount(e.target.value)}\n />\n \n Add Amount\n \n
\n
\n );\n}", "link": null }, "annotations": { @@ -3748,22 +3519,22 @@ "code": false, "color": "default" }, - "plain_text": " action이 수행되는데 어떤 경우는 PR이 생성되고 어떤 경우는 npm에 배포되며 release tag가 생성된다.", + "plain_text": "import { create } from 'zustand'\n\nconst useStore = create((set) => ({\n count: 1,\n inc: () => set((state) => ({ count: state.count + 1 })),\n\tdes: () => set((state) => ({ count: state.count - 1 })),\n\tincrementByAmount: (value) => set(() => ({ count: value })),\n}))\n\nfunction Counter() {\n const { count, inc, incrementByAmount } = useStore()\n\tconst [incrementAmount, setIncrementAmount] = useState('2');\n\n return (\n
\n
\n \n +\n \n {count}\n \n -\n \n
\n
\n setIncrementAmount(e.target.value)}\n />\n \n Add Amount\n \n
\n
\n );\n}", "href": null } ], - "color": "default" + "language": "typescript" } }, { "object": "block", - "id": "1399c6bf-2b17-804f-93d3-ee85c673a46c", + "id": "cd2858f4-9953-496a-bd4e-f1397b4f6ce1", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T13:53:00.000Z", - "last_edited_time": "2024-11-09T13:55:00.000Z", + "created_time": "2023-11-30T05:29:00.000Z", + "last_edited_time": "2023-11-30T08:17:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -3781,7 +3552,7 @@ { "type": "text", "text": { - "content": "그 이유는 ", + "content": "Zustand는 Pub/Sub 모델을 기반으로 하며 스토어의 상태 변경이 일어날 때 해당 상태를 구독하는 리스너들에게 상태가 변경되었다고 전파한다. ", "link": null }, "annotations": { @@ -3792,30 +3563,40 @@ "code": false, "color": "default" }, - "plain_text": "그 이유는 ", - "href": null - }, - { - "type": "text", - "text": { - "content": "changesets/action@v1", - "link": null - }, - "annotations": { - "bold": false, - "italic": false, - "strikethrough": false, - "underline": false, - "code": true, - "color": "default" - }, - "plain_text": "changesets/action@v1", + "plain_text": "Zustand는 Pub/Sub 모델을 기반으로 하며 스토어의 상태 변경이 일어날 때 해당 상태를 구독하는 리스너들에게 상태가 변경되었다고 전파한다. ", "href": null - }, + } + ], + "color": "default" + } + }, + { + "object": "block", + "id": "102f5e8f-2295-4df1-8d26-1b79d53d1a1a", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-11-30T08:16:00.000Z", + "last_edited_time": "2023-12-01T11:57:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "paragraph", + "paragraph": { + "rich_text": [ { "type": "text", "text": { - "content": " 의 내부 코드를 보면 알 수 있다.", + "content": "Zustand의 Core 코드는 짧고 이해하기도 쉽다고 들었는데 한번 읽어보자!", "link": null }, "annotations": { @@ -3826,7 +3607,7 @@ "code": false, "color": "default" }, - "plain_text": " 의 내부 코드를 보면 알 수 있다.", + "plain_text": "Zustand의 Core 코드는 짧고 이해하기도 쉽다고 들었는데 한번 읽어보자!", "href": null } ], @@ -3835,13 +3616,13 @@ }, { "object": "block", - "id": "1399c6bf-2b17-802e-be34-f6048cccddaa", + "id": "2c8c4293-6b74-47da-b206-d79bc8a17891", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T13:55:00.000Z", - "last_edited_time": "2024-11-09T13:55:00.000Z", + "created_time": "2023-12-01T05:37:00.000Z", + "last_edited_time": "2023-12-01T07:20:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -3850,44 +3631,91 @@ "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" }, - "has_children": false, + "has_children": true, "archived": false, "in_trash": false, - "type": "paragraph", - "paragraph": { + "type": "toggle", + "toggle": { "rich_text": [ { - "type": "mention", - "mention": { - "type": "link_preview", - "link_preview": { - "url": "https://github.com/changesets/action/blob/main/src/index.ts" + "type": "text", + "text": { + "content": "Zustand의 Core 코드", + "link": { + "url": "https://github.com/pmndrs/zustand/blob/main/src/vanilla.ts" } }, "annotations": { - "bold": false, + "bold": true, "italic": false, "strikethrough": false, "underline": false, "code": false, "color": "default" }, - "plain_text": "https://github.com/changesets/action/blob/main/src/index.ts", - "href": "https://github.com/changesets/action/blob/main/src/index.ts" + "plain_text": "Zustand의 Core 코드", + "href": "https://github.com/pmndrs/zustand/blob/main/src/vanilla.ts" } ], "color": "default" - } + }, + "children": [ + { + "object": "block", + "id": "1f8eac51-7a2c-4cb0-a836-13b779d81853", + "parent": { + "type": "block_id", + "block_id": "2c8c4293-6b74-47da-b206-d79bc8a17891" + }, + "created_time": "2023-11-30T08:09:00.000Z", + "last_edited_time": "2023-12-01T05:37:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "code", + "code": { + "caption": [], + "rich_text": [ + { + "type": "text", + "text": { + "content": "...\n\nconst createStoreImpl = (createState) => {\n let state;\n const listeners = new Set();\n\n const setState = (partial, replace) => {\n const nextState = typeof partial === \"function\" ? partial(state) : partial;\n if (!Object.is(nextState, state)) {\n const previousState = state;\n state =\n replace ?? (typeof nextState !== \"object\" || nextState === null)\n ? nextState\n : Object.assign({}, state, nextState);\n listeners.forEach((listener) => listener(state, previousState));\n }\n };\n\n const getState = () => state;\n\n const subscribe = (listener) => {\n listeners.add(listener);\n // Unsubscribe\n return () => listeners.delete(listener);\n };\n\n const api = { setState, getState, subscribe };\n state = createState(setState, getState, api);\n return api;\n};\n\nconst create = (createState) =>\n createState ? createStoreImpl(createState) : createStoreImpl;\n\nconst subscribeWithSelector = (fn) => (set, get, api) => {\n const origSubscribe = api.subscribe;\n api.subscribe = (selector, optListener, options) => {\n let listener = selector; // if no selector\n if (optListener) {\n const equalityFn = options?.equalityFn || Object.is;\n let currentSlice = selector(api.getState());\n listener = (state) => {\n const nextSlice = selector(state);\n if (!equalityFn(currentSlice, nextSlice)) {\n const previousSlice = currentSlice;\n optListener((currentSlice = nextSlice), previousSlice);\n }\n };\n if (options?.fireImmediately) {\n optListener(currentSlice, currentSlice);\n }\n }\n return origSubscribe(listener);\n };\n const initialState = fn(set, get, api);\n return initialState;\n};\n\n...", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "...\n\nconst createStoreImpl = (createState) => {\n let state;\n const listeners = new Set();\n\n const setState = (partial, replace) => {\n const nextState = typeof partial === \"function\" ? partial(state) : partial;\n if (!Object.is(nextState, state)) {\n const previousState = state;\n state =\n replace ?? (typeof nextState !== \"object\" || nextState === null)\n ? nextState\n : Object.assign({}, state, nextState);\n listeners.forEach((listener) => listener(state, previousState));\n }\n };\n\n const getState = () => state;\n\n const subscribe = (listener) => {\n listeners.add(listener);\n // Unsubscribe\n return () => listeners.delete(listener);\n };\n\n const api = { setState, getState, subscribe };\n state = createState(setState, getState, api);\n return api;\n};\n\nconst create = (createState) =>\n createState ? createStoreImpl(createState) : createStoreImpl;\n\nconst subscribeWithSelector = (fn) => (set, get, api) => {\n const origSubscribe = api.subscribe;\n api.subscribe = (selector, optListener, options) => {\n let listener = selector; // if no selector\n if (optListener) {\n const equalityFn = options?.equalityFn || Object.is;\n let currentSlice = selector(api.getState());\n listener = (state) => {\n const nextSlice = selector(state);\n if (!equalityFn(currentSlice, nextSlice)) {\n const previousSlice = currentSlice;\n optListener((currentSlice = nextSlice), previousSlice);\n }\n };\n if (options?.fireImmediately) {\n optListener(currentSlice, currentSlice);\n }\n }\n return origSubscribe(listener);\n };\n const initialState = fn(set, get, api);\n return initialState;\n};\n\n...", + "href": null + } + ], + "language": "typescript" + } + } + ] }, { "object": "block", - "id": "1399c6bf-2b17-8088-afdc-f1bcd78dea89", + "id": "a6502247-273c-43fb-95f6-c75d5e8268e8", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T14:01:00.000Z", - "last_edited_time": "2024-11-09T14:18:00.000Z", + "created_time": "2023-11-30T08:16:00.000Z", + "last_edited_time": "2023-12-01T05:25:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -3905,7 +3733,7 @@ { "type": "text", "text": { - "content": "간단하게 설명하면 동작을 결정하는 기준은 ", + "content": "타입들은 제거했다. 복잡해보일수도 있지만 ", "link": null }, "annotations": { @@ -3916,30 +3744,30 @@ "code": false, "color": "default" }, - "plain_text": "간단하게 설명하면 동작을 결정하는 기준은 ", + "plain_text": "타입들은 제거했다. 복잡해보일수도 있지만 ", "href": null }, { "type": "text", "text": { - "content": "changeset 상태", + "content": "listeners", "link": null }, "annotations": { - "bold": true, + "bold": false, "italic": false, "strikethrough": false, "underline": false, - "code": false, + "code": true, "color": "default" }, - "plain_text": "changeset 상태", + "plain_text": "listeners", "href": null }, { "type": "text", "text": { - "content": "와 ", + "content": " , ", "link": null }, "annotations": { @@ -3950,30 +3778,30 @@ "code": false, "color": "default" }, - "plain_text": "와 ", + "plain_text": " , ", "href": null }, { "type": "text", "text": { - "content": "트리거된 변경 사항", + "content": "setState", "link": null }, "annotations": { - "bold": true, + "bold": false, "italic": false, "strikethrough": false, "underline": false, - "code": false, + "code": true, "color": "default" }, - "plain_text": "트리거된 변경 사항", + "plain_text": "setState", "href": null }, { "type": "text", "text": { - "content": "에 따라 달라진다.", + "content": " , ", "link": null }, "annotations": { @@ -3984,57 +3812,98 @@ "code": false, "color": "default" }, - "plain_text": "에 따라 달라진다.", + "plain_text": " , ", "href": null - } - ], - "color": "default" - } - }, - { - "object": "block", - "id": "1399c6bf-2b17-8080-820e-f5de1a6a8602", - "parent": { - "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" - }, - "created_time": "2024-11-09T14:02:00.000Z", - "last_edited_time": "2024-11-09T14:18:00.000Z", - "created_by": { - "object": "user", - "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" - }, - "last_edited_by": { - "object": "user", - "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" - }, - "has_children": false, - "archived": false, - "in_trash": false, - "type": "bulleted_list_item", - "bulleted_list_item": { - "rich_text": [ + }, { "type": "text", "text": { - "content": "PR 생성", + "content": "getState", "link": null }, "annotations": { - "bold": true, + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": true, + "color": "default" + }, + "plain_text": "getState", + "href": null + }, + { + "type": "text", + "text": { + "content": " , ", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": " , ", + "href": null + }, + { + "type": "text", + "text": { + "content": "subscribe", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": true, + "color": "default" + }, + "plain_text": "subscribe", + "href": null + }, + { + "type": "text", + "text": { + "content": " , ", + "link": null + }, + "annotations": { + "bold": false, "italic": false, "strikethrough": false, "underline": false, "code": false, "color": "default" }, - "plain_text": "PR 생성", + "plain_text": " , ", + "href": null + }, + { + "type": "text", + "text": { + "content": "subscribeWithSelector ", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": true, + "color": "default" + }, + "plain_text": "subscribeWithSelector ", "href": null }, { "type": "text", "text": { - "content": ": changeset 파일이 새롭게 추가되고, 아직 버전 업데이트 및 Release 승인이 이루어지지 않은 경우", + "content": "에 각각 포커스를 해가며 읽어보자", "link": null }, "annotations": { @@ -4045,7 +3914,7 @@ "code": false, "color": "default" }, - "plain_text": ": changeset 파일이 새롭게 추가되고, 아직 버전 업데이트 및 Release 승인이 이루어지지 않은 경우", + "plain_text": "에 각각 포커스를 해가며 읽어보자", "href": null } ], @@ -4054,13 +3923,13 @@ }, { "object": "block", - "id": "1399c6bf-2b17-80c9-abd8-cedb55b305a8", + "id": "7ebedad8-08d3-4630-a889-b17f4a7e10d7", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T14:02:00.000Z", - "last_edited_time": "2024-11-09T14:02:00.000Z", + "created_time": "2023-11-30T08:21:00.000Z", + "last_edited_time": "2023-12-01T11:59:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -4072,30 +3941,30 @@ "has_children": false, "archived": false, "in_trash": false, - "type": "bulleted_list_item", - "bulleted_list_item": { + "type": "paragraph", + "paragraph": { "rich_text": [ { "type": "text", "text": { - "content": "npm 배포", + "content": "const listeners = new Set()", "link": null }, "annotations": { - "bold": true, + "bold": false, "italic": false, "strikethrough": false, "underline": false, - "code": false, + "code": true, "color": "default" }, - "plain_text": "npm 배포", + "plain_text": "const listeners = new Set()", "href": null }, { "type": "text", "text": { - "content": ": Release PR이 ", + "content": " : 구독하는 리스너를 자료구조 Set으로 관리한다.", "link": null }, "annotations": { @@ -4106,13 +3975,41 @@ "code": false, "color": "default" }, - "plain_text": ": Release PR이 ", + "plain_text": " : 구독하는 리스너를 자료구조 Set으로 관리한다.", "href": null - }, + } + ], + "color": "default" + } + }, + { + "object": "block", + "id": "5ea26bb0-9e47-4595-a083-069273a78ac0", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-11-30T08:22:00.000Z", + "last_edited_time": "2023-12-14T12:12:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "code", + "code": { + "caption": [], + "rich_text": [ { "type": "text", "text": { - "content": "main", + "content": "const setState = (partial, replace) => {\n // partial이 함수면 함수형 업데이트, 함수가 아닌 경우 partial을 다음 State로 한다.\n const nextState = typeof partial === \"function\" ? partial(state) : partial;\n\n // Object.is로 기존 상태와 다음 상태의 얕은 비교를 수행한다.\n if (!Object.is(nextState, state)) {\n const previousState = state;\n // replace 값이 truthy인 경우, nextState를 그대로 할당하여 현재 상태를 교체한다.\n // replace 값이 falsy인 경우, state와 nextState를 합친 새로운 객체를 현재 상태로 교체한다.\n // replace 값이 undefined 또는 null인 경우, nextState가 object가 아니거나, null인 경우\n // nextState를 그대로 할당 현재 상태를 교체,\n // 그 외의 경우 state와 nextState를 합친 새로운 객체를 현재 상태로 교체한다.\n state =\n replace ?? (typeof nextState !== \"object\" || nextState === null)\n ? nextState\n : Object.assign({}, state, nextState);\n\n // Loop를 돌며, listener에 인자을 넣어준다.\n listeners.forEach((listener) => listener(state, previousState));\n }\n};", "link": null }, "annotations": { @@ -4120,16 +4017,44 @@ "italic": false, "strikethrough": false, "underline": false, - "code": true, + "code": false, "color": "default" }, - "plain_text": "main", + "plain_text": "const setState = (partial, replace) => {\n // partial이 함수면 함수형 업데이트, 함수가 아닌 경우 partial을 다음 State로 한다.\n const nextState = typeof partial === \"function\" ? partial(state) : partial;\n\n // Object.is로 기존 상태와 다음 상태의 얕은 비교를 수행한다.\n if (!Object.is(nextState, state)) {\n const previousState = state;\n // replace 값이 truthy인 경우, nextState를 그대로 할당하여 현재 상태를 교체한다.\n // replace 값이 falsy인 경우, state와 nextState를 합친 새로운 객체를 현재 상태로 교체한다.\n // replace 값이 undefined 또는 null인 경우, nextState가 object가 아니거나, null인 경우\n // nextState를 그대로 할당 현재 상태를 교체,\n // 그 외의 경우 state와 nextState를 합친 새로운 객체를 현재 상태로 교체한다.\n state =\n replace ?? (typeof nextState !== \"object\" || nextState === null)\n ? nextState\n : Object.assign({}, state, nextState);\n\n // Loop를 돌며, listener에 인자을 넣어준다.\n listeners.forEach((listener) => listener(state, previousState));\n }\n};", "href": null - }, + } + ], + "language": "typescript" + } + }, + { + "object": "block", + "id": "9dffd65b-248f-414c-af89-af8877b11274", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-11-30T08:51:00.000Z", + "last_edited_time": "2023-12-14T12:13:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "code", + "code": { + "caption": [], + "rich_text": [ { "type": "text", "text": { - "content": " 브랜치에 병합되어 모든 준비가 완료된 경우", + "content": "const subscribe = (listener) => {\n // 상태를 구독하는 함수를 등록한다.\n listeners.add(listener)\n // Unsubscribe\n return () => listeners.delete(listener)\n}", "link": null }, "annotations": { @@ -4140,22 +4065,22 @@ "code": false, "color": "default" }, - "plain_text": " 브랜치에 병합되어 모든 준비가 완료된 경우", + "plain_text": "const subscribe = (listener) => {\n // 상태를 구독하는 함수를 등록한다.\n listeners.add(listener)\n // Unsubscribe\n return () => listeners.delete(listener)\n}", "href": null } ], - "color": "default" + "language": "typescript" } }, { "object": "block", - "id": "1399c6bf-2b17-8063-b113-c8837af2eb4d", + "id": "eabf6c81-871d-4b51-a8ac-0325f8586b03", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T14:08:00.000Z", - "last_edited_time": "2024-11-09T14:08:00.000Z", + "created_time": "2023-11-30T08:23:00.000Z", + "last_edited_time": "2023-12-01T11:59:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -4167,13 +4092,30 @@ "has_children": false, "archived": false, "in_trash": false, - "type": "heading_2", - "heading_2": { + "type": "paragraph", + "paragraph": { "rich_text": [ { "type": "text", "text": { - "content": "마무리", + "content": "const getState = () => state", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": true, + "color": "default" + }, + "plain_text": "const getState = () => state", + "href": null + }, + { + "type": "text", + "text": { + "content": " : State를 반환한다.", "link": null }, "annotations": { @@ -4184,23 +4126,22 @@ "code": false, "color": "default" }, - "plain_text": "마무리", + "plain_text": " : State를 반환한다.", "href": null } ], - "is_toggleable": false, "color": "default" } }, { "object": "block", - "id": "1399c6bf-2b17-80a3-8600-f228fd325105", + "id": "97a053fe-35b2-4beb-8f76-1431c91bba05", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T14:08:00.000Z", - "last_edited_time": "2024-11-09T15:00:00.000Z", + "created_time": "2023-12-01T05:26:00.000Z", + "last_edited_time": "2023-12-01T08:35:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -4212,13 +4153,14 @@ "has_children": false, "archived": false, "in_trash": false, - "type": "paragraph", - "paragraph": { + "type": "code", + "code": { + "caption": [], "rich_text": [ { "type": "text", "text": { - "content": "이로써 changeset과 github action을 활용해 버전 관리를 자동화하는 방법을 모두 설명했다.\n추가, 수정할 내용만 커밋하고 changeset를 활용해 버전의 ", + "content": "const subscribeWithSelector = (fn) => (set, get, api) => {\n const origSubscribe = api.subscribe;\n api.subscribe = (selector, optListener, options) => {\n let listener = selector; // if no selector\n if (optListener) {\n const equalityFn = options?.equalityFn || Object.is;\n let currentSlice = selector(api.getState());\n listener = (state) => {\n const nextSlice = selector(state);\n if (!equalityFn(currentSlice, nextSlice)) {\n const previousSlice = currentSlice;\n optListener((currentSlice = nextSlice), previousSlice);\n }\n };\n if (options?.fireImmediately) {\n optListener(currentSlice, currentSlice);\n }\n }\n return origSubscribe(listener);\n };\n const initialState = fn(set, get, api);\n return initialState;\n};", "link": null }, "annotations": { @@ -4229,13 +4171,40 @@ "code": false, "color": "default" }, - "plain_text": "이로써 changeset과 github action을 활용해 버전 관리를 자동화하는 방법을 모두 설명했다.\n추가, 수정할 내용만 커밋하고 changeset를 활용해 버전의 ", + "plain_text": "const subscribeWithSelector = (fn) => (set, get, api) => {\n const origSubscribe = api.subscribe;\n api.subscribe = (selector, optListener, options) => {\n let listener = selector; // if no selector\n if (optListener) {\n const equalityFn = options?.equalityFn || Object.is;\n let currentSlice = selector(api.getState());\n listener = (state) => {\n const nextSlice = selector(state);\n if (!equalityFn(currentSlice, nextSlice)) {\n const previousSlice = currentSlice;\n optListener((currentSlice = nextSlice), previousSlice);\n }\n };\n if (options?.fireImmediately) {\n optListener(currentSlice, currentSlice);\n }\n }\n return origSubscribe(listener);\n };\n const initialState = fn(set, get, api);\n return initialState;\n};", "href": null - }, + } + ], + "language": "typescript" + } + }, + { + "object": "block", + "id": "da109a5f-cef7-41ea-8d4f-d62e4eef545c", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-12-01T05:37:00.000Z", + "last_edited_time": "2023-12-05T05:22:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "paragraph", + "paragraph": { + "rich_text": [ { "type": "text", "text": { - "content": "주.부.수", + "content": "간단하게 설명하면 store를 만들 때 위 함수를 사용하면 어떠한 상태를 구독할 때 해당 상태의 이전, 이후 값을 비교하는 로직이 추가된다.", "link": null }, "annotations": { @@ -4243,27 +4212,54 @@ "italic": false, "strikethrough": false, "underline": false, - "code": true, + "code": false, "color": "default" }, - "plain_text": "주.부.수", + "plain_text": "간단하게 설명하면 store를 만들 때 위 함수를 사용하면 어떠한 상태를 구독할 때 해당 상태의 이전, 이후 값을 비교하는 로직이 추가된다.", "href": null - }, + } + ], + "color": "default" + } + }, + { + "object": "block", + "id": "4d42436c-be70-4754-949a-553da046a6f6", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-11-30T09:19:00.000Z", + "last_edited_time": "2023-11-30T09:19:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "paragraph", + "paragraph": { + "rich_text": [ { "type": "text", "text": { - "content": " 를 선택하고 push하면 PR 생성과 npm 배포, release tag까지 자동으로 수행해 준다. 버전 관리는 특히 여러 사람과 협업할 때 매우 중요한데 PR를 통해 다른 사람들이 편하게 확인할 수 있어 더욱 큰 장점이 된다!", + "content": "사용법", "link": null }, "annotations": { - "bold": false, + "bold": true, "italic": false, "strikethrough": false, "underline": false, "code": false, "color": "default" }, - "plain_text": " 를 선택하고 push하면 PR 생성과 npm 배포, release tag까지 자동으로 수행해 준다. 버전 관리는 특히 여러 사람과 협업할 때 매우 중요한데 PR를 통해 다른 사람들이 편하게 확인할 수 있어 더욱 큰 장점이 된다!", + "plain_text": "사용법", "href": null } ], @@ -4272,13 +4268,13 @@ }, { "object": "block", - "id": "1399c6bf-2b17-809c-b5e8-d61242eb2e67", + "id": "16ffc92b-1409-446f-a29c-0c85462b81b7", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T14:12:00.000Z", - "last_edited_time": "2024-11-09T15:01:00.000Z", + "created_time": "2023-11-30T09:19:00.000Z", + "last_edited_time": "2023-12-14T12:12:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -4290,13 +4286,14 @@ "has_children": false, "archived": false, "in_trash": false, - "type": "paragraph", - "paragraph": { + "type": "code", + "code": { + "caption": [], "rich_text": [ { "type": "text", "text": { - "content": "주제에 대한 설명을 여기까지 하고, 이번에 글또 10기를 시작하며 처음 쓰는 글인데 거의 5개월 만의 글이라 익숙지 않았지만 AI를 활용해서 자료 찾기와 글쓰기가 조금 더 빨라졌다! 글또 10기 파이팅~", + "content": "const store = create(\n subscribeWithSelector((set) => ({\n count: 0,\n text: \"\",\n inc: () => set((state) => ({ count: state.count + 1 })),\n setText: (text) => set({ text }),\n }))\n);\n\nstore.subscribe((state) => console.log(\"State is changed: \", state));\n\nstore.subscribe(\n (state) => state.count,\n (count) => console.log(\"Count is changed: \", count)\n);\n\nstore.subscribe(\n (state) => state.text,\n (text) => console.log(\"Text is changed: \", text)\n);\n\nstore.getState().inc();\nstore.getState().setText('Changed');", "link": null }, "annotations": { @@ -4307,22 +4304,22 @@ "code": false, "color": "default" }, - "plain_text": "주제에 대한 설명을 여기까지 하고, 이번에 글또 10기를 시작하며 처음 쓰는 글인데 거의 5개월 만의 글이라 익숙지 않았지만 AI를 활용해서 자료 찾기와 글쓰기가 조금 더 빨라졌다! 글또 10기 파이팅~", + "plain_text": "const store = create(\n subscribeWithSelector((set) => ({\n count: 0,\n text: \"\",\n inc: () => set((state) => ({ count: state.count + 1 })),\n setText: (text) => set({ text }),\n }))\n);\n\nstore.subscribe((state) => console.log(\"State is changed: \", state));\n\nstore.subscribe(\n (state) => state.count,\n (count) => console.log(\"Count is changed: \", count)\n);\n\nstore.subscribe(\n (state) => state.text,\n (text) => console.log(\"Text is changed: \", text)\n);\n\nstore.getState().inc();\nstore.getState().setText('Changed');", "href": null } ], - "color": "default" + "language": "typescript" } }, { "object": "block", - "id": "1399c6bf-2b17-8093-847e-e279e67c38a6", + "id": "bb09f34a-9db9-4de6-a82e-d118701b227f", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T12:20:00.000Z", - "last_edited_time": "2024-11-09T12:20:00.000Z", + "created_time": "2023-11-30T05:29:00.000Z", + "last_edited_time": "2023-11-30T09:27:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -4334,40 +4331,39 @@ "has_children": false, "archived": false, "in_trash": false, - "type": "heading_2", - "heading_2": { + "type": "paragraph", + "paragraph": { "rich_text": [ { "type": "text", "text": { - "content": "Reference", + "content": "리액트와 같이 사용하기", "link": null }, "annotations": { - "bold": false, + "bold": true, "italic": false, "strikethrough": false, "underline": false, "code": false, "color": "default" }, - "plain_text": "Reference", + "plain_text": "리액트와 같이 사용하기", "href": null } ], - "is_toggleable": false, "color": "default" } }, { "object": "block", - "id": "1399c6bf-2b17-8069-8579-fbaf0f9dd001", + "id": "38e2b342-5173-4609-9eac-aaeda5811b92", "parent": { "type": "page_id", - "page_id": "1399c6bf-2b17-80f4-bfcf-e81ca24d2c5d" + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" }, - "created_time": "2024-11-09T12:20:00.000Z", - "last_edited_time": "2024-11-09T12:20:00.000Z", + "created_time": "2023-11-30T12:10:00.000Z", + "last_edited_time": "2023-12-01T12:00:00.000Z", "created_by": { "object": "user", "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" @@ -4379,10 +4375,4497 @@ "has_children": false, "archived": false, "in_trash": false, - "type": "bookmark", - "bookmark": { - "caption": [], - "url": "https://semver.org/lang/ko/" + "type": "paragraph", + "paragraph": { + "rich_text": [ + { + "type": "text", + "text": { + "content": "현재 최신버전 (v4.4.7)의 Zustand는 React의 ", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "현재 최신버전 (v4.4.7)의 Zustand는 React의 ", + "href": null + }, + { + "type": "text", + "text": { + "content": "useSyncExternalStore", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": true, + "color": "default" + }, + "plain_text": "useSyncExternalStore", + "href": null + }, + { + "type": "text", + "text": { + "content": "을 활용해 React Component에서 사용할 수 있는 방법을 제공한다.", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "을 활용해 React Component에서 사용할 수 있는 방법을 제공한다.", + "href": null + } + ], + "color": "default" + } + }, + { + "object": "block", + "id": "5a2feb8f-b454-47e7-b62c-28c1f30cbe7d", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-11-30T12:11:00.000Z", + "last_edited_time": "2023-12-05T05:20:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "code", + "code": { + "caption": [], + "rich_text": [ + { + "type": "text", + "text": { + "content": "import ReactExports from 'react'\nimport useSyncExternalStoreExports from 'use-sync-external-store/shim/with-selector'\nimport { createStore } from './vanilla.ts'\n\nconst { useSyncExternalStoreWithSelector } = useSyncExternalStoreExports\n\nlet didWarnAboutEqualityFn = false\n\n...\n\nexport function useStore(\n api: WithReact>,\n selector: (state: TState) => StateSlice = api.getState as any,\n equalityFn?: (a: StateSlice, b: StateSlice) => boolean,\n) {\n\t...\n const slice = useSyncExternalStoreWithSelector(\n api.subscribe,\n api.getState,\n api.getServerState || api.getState,\n selector,\n equalityFn,\n )\n return slice\n}\n\nconst createImpl = (createState: StateCreator) => {\n const api =\n typeof createState === 'function' ? createStore(createState) : createState\n\n const useBoundStore: any = (selector?: any, equalityFn?: any) =>\n useStore(api, selector, equalityFn)\n\n Object.assign(useBoundStore, api)\n\n return useBoundStore\n}\n\n...", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "import ReactExports from 'react'\nimport useSyncExternalStoreExports from 'use-sync-external-store/shim/with-selector'\nimport { createStore } from './vanilla.ts'\n\nconst { useSyncExternalStoreWithSelector } = useSyncExternalStoreExports\n\nlet didWarnAboutEqualityFn = false\n\n...\n\nexport function useStore(\n api: WithReact>,\n selector: (state: TState) => StateSlice = api.getState as any,\n equalityFn?: (a: StateSlice, b: StateSlice) => boolean,\n) {\n\t...\n const slice = useSyncExternalStoreWithSelector(\n api.subscribe,\n api.getState,\n api.getServerState || api.getState,\n selector,\n equalityFn,\n )\n return slice\n}\n\nconst createImpl = (createState: StateCreator) => {\n const api =\n typeof createState === 'function' ? createStore(createState) : createState\n\n const useBoundStore: any = (selector?: any, equalityFn?: any) =>\n useStore(api, selector, equalityFn)\n\n Object.assign(useBoundStore, api)\n\n return useBoundStore\n}\n\n...", + "href": null + } + ], + "language": "javascript" + } + }, + { + "object": "block", + "id": "2e96b19f-4ecb-4d1b-879d-b0abcef93311", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-11-30T12:29:00.000Z", + "last_edited_time": "2023-12-05T05:22:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "paragraph", + "paragraph": { + "rich_text": [ + { + "type": "text", + "text": { + "content": "이전 Zustand 버전에서는 ", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "이전 Zustand 버전에서는 ", + "href": null + }, + { + "type": "text", + "text": { + "content": "useEffect, useLayoutEffect, useReducer, useRef", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": true, + "color": "default" + }, + "plain_text": "useEffect, useLayoutEffect, useReducer, useRef", + "href": null + }, + { + "type": "text", + "text": { + "content": " 등 hooks를 활용해서 ", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": " 등 hooks를 활용해서 ", + "href": null + }, + { + "type": "text", + "text": { + "content": "useStore", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": true, + "color": "default" + }, + "plain_text": "useStore", + "href": null + }, + { + "type": "text", + "text": { + "content": " 를 구현하였는데 최신버전은 React 18에서 사용할 수 있는 ", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": " 를 구현하였는데 최신버전은 React 18에서 사용할 수 있는 ", + "href": null + }, + { + "type": "text", + "text": { + "content": "useSyncExternalStore", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": true, + "color": "default" + }, + "plain_text": "useSyncExternalStore", + "href": null + }, + { + "type": "text", + "text": { + "content": " 를 사용했다.", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": " 를 사용했다.", + "href": null + } + ], + "color": "default" + } + }, + { + "object": "block", + "id": "a0f48eb2-e67a-48f5-be0f-92692eeb9a5b", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-12-05T05:22:00.000Z", + "last_edited_time": "2023-12-05T05:29:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "paragraph", + "paragraph": { + "rich_text": [ + { + "type": "text", + "text": { + "content": "Counter 예제코드의 ", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "Counter 예제코드의 ", + "href": null + }, + { + "type": "text", + "text": { + "content": "import { create } from 'zustand'", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": true, + "color": "default" + }, + "plain_text": "import { create } from 'zustand'", + "href": null + }, + { + "type": "text", + "text": { + "content": " 에서 ", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": " 에서 ", + "href": null + }, + { + "type": "text", + "text": { + "content": "create", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": true, + "color": "default" + }, + "plain_text": "create", + "href": null + }, + { + "type": "text", + "text": { + "content": " 는 ", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": " 는 ", + "href": null + }, + { + "type": "text", + "text": { + "content": "createImpl", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": true, + "color": "default" + }, + "plain_text": "createImpl", + "href": null + }, + { + "type": "text", + "text": { + "content": " 에 해당한다.\n", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": " 에 해당한다.\n", + "href": null + }, + { + "type": "text", + "text": { + "content": "createStore", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": true, + "color": "default" + }, + "plain_text": "createStore", + "href": null + }, + { + "type": "text", + "text": { + "content": " 함수를 실행하고 ", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": " 함수를 실행하고 ", + "href": null + }, + { + "type": "text", + "text": { + "content": "useBoundStore", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": true, + "color": "default" + }, + "plain_text": "useBoundStore", + "href": null + }, + { + "type": "text", + "text": { + "content": " 를 반환한다. (", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": " 를 반환한다. (", + "href": null + }, + { + "type": "text", + "text": { + "content": "useBoundStore", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": true, + "color": "default" + }, + "plain_text": "useBoundStore", + "href": null + }, + { + "type": "text", + "text": { + "content": " 가 상태 변화를 감지한다.)", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": " 가 상태 변화를 감지한다.)", + "href": null + } + ], + "color": "default" + } + }, + { + "object": "block", + "id": "10b0112c-c641-4a02-aec4-61806c7e83e7", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-11-30T05:29:00.000Z", + "last_edited_time": "2023-11-30T09:23:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "heading_2", + "heading_2": { + "rich_text": [ + { + "type": "text", + "text": { + "content": "Atomic (Recoil, Jotai)", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "Atomic (Recoil, Jotai)", + "href": null + } + ], + "is_toggleable": false, + "color": "default" + } + }, + { + "object": "block", + "id": "6df603e1-0c51-4c42-ae2a-219641b2bf7e", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-12-01T06:00:00.000Z", + "last_edited_time": "2023-12-02T07:19:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "paragraph", + "paragraph": { + "rich_text": [ + { + "type": "text", + "text": { + "content": "Atomic 패턴은 어디서 기인한 것인지는 명확하지 않지만, 디자인 시스템에서의 Atomic", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "Atomic 패턴은 어디서 기인한 것인지는 명확하지 않지만, 디자인 시스템에서의 Atomic", + "href": null + }, + { + "type": "text", + "text": { + "content": " ", + "link": null + }, + "annotations": { + "bold": true, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": " ", + "href": null + }, + { + "type": "text", + "text": { + "content": "디자인, 함수형 언어 클로저의 Atom 패턴과 거의 동일하다고 생각될 수 있다.", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "디자인, 함수형 언어 클로저의 Atom 패턴과 거의 동일하다고 생각될 수 있다.", + "href": null + } + ], + "color": "default" + } + }, + { + "object": "block", + "id": "ceaee7c7-e0a2-47be-ae10-0f380dc064b6", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-12-01T06:02:00.000Z", + "last_edited_time": "2023-12-01T06:03:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "paragraph", + "paragraph": { + "rich_text": [ + { + "type": "text", + "text": { + "content": "Recoil의 Atom은 불변성과 원자성을 가진 상태 관리를 위한 데이터 구조이다.", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "Recoil의 Atom은 불변성과 원자성을 가진 상태 관리를 위한 데이터 구조이다.", + "href": null + } + ], + "color": "default" + } + }, + { + "object": "block", + "id": "0bdabf37-09bd-4a84-acc2-5c17d409ae27", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-11-30T07:58:00.000Z", + "last_edited_time": "2023-12-01T05:46:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "image", + "image": { + "caption": [], + "type": "file", + "file": { + "url": "https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2Fcd7314a5-d906-43b0-81e7-42eff82c02a3%2F2c74df21-ee44-4c8b-b67b-c640c694a22f%2FUntitled.png?table=block&id=0bdabf37-09bd-4a84-acc2-5c17d409ae27&cache=v2", + "expiry_time": "2025-04-14T15:12:43.852Z" + }, + "format": { + "block_width": 1024, + "block_height": 678, + "block_aspect_ratio": 1.5103244837758112 + } + } + }, + { + "object": "block", + "id": "026e9ff6-461e-4474-b1cc-d38f69b96bfa", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-12-01T06:03:00.000Z", + "last_edited_time": "2023-12-01T06:13:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "paragraph", + "paragraph": { + "rich_text": [ + { + "type": "text", + "text": { + "content": "Recoil은 아래와 같은 주요 개념으로 구성된다.", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "Recoil은 아래와 같은 주요 개념으로 구성된다.", + "href": null + } + ], + "color": "default" + } + }, + { + "object": "block", + "id": "b8c36242-f851-4b5e-9dd8-03b02edd5fb1", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-12-01T06:04:00.000Z", + "last_edited_time": "2023-12-01T12:01:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "bulleted_list_item", + "bulleted_list_item": { + "rich_text": [ + { + "type": "text", + "text": { + "content": "Atom : 상태의 단위이며, 업데이트와 구독이 가능하다. atom이 업데이트되면 각각 구독된 컴포넌트는 새로운 값을 반영하여 다시 렌더링 된다. atoms는 런타임에서 생성될 수도 있다. Atoms는 React의 로컬 컴포넌트의 상태 대신 사용할 수 있다. 동일한 atom이 여러 컴포넌트에서 사용되는 경우 모든 컴포넌트는 상태를 공유한다. atom의 키 값은 전역적으로 고유해야 한다. (Jotai는 별도 키가 필요 없다.)", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "Atom : 상태의 단위이며, 업데이트와 구독이 가능하다. atom이 업데이트되면 각각 구독된 컴포넌트는 새로운 값을 반영하여 다시 렌더링 된다. atoms는 런타임에서 생성될 수도 있다. Atoms는 React의 로컬 컴포넌트의 상태 대신 사용할 수 있다. 동일한 atom이 여러 컴포넌트에서 사용되는 경우 모든 컴포넌트는 상태를 공유한다. atom의 키 값은 전역적으로 고유해야 한다. (Jotai는 별도 키가 필요 없다.)", + "href": null + } + ], + "color": "default" + } + }, + { + "object": "block", + "id": "d568a01b-a6a9-4afe-a499-e2f963c20d8b", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-12-01T06:05:00.000Z", + "last_edited_time": "2023-12-01T06:21:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "bulleted_list_item", + "bulleted_list_item": { + "rich_text": [ + { + "type": "text", + "text": { + "content": "Selectors : atoms나 다른 selectors를 입력으로 받아들이는 순수 함수(pure function)다. 상위의 atoms 또는 selectors가 업데이트되면 하위의 selector 함수도 다시 실행된다. 컴포넌트들은 selectors를 atoms처럼 구독할 수 있으며 selectors가 변경되면 컴포넌트들도 다시 렌더링 된다. Selectors는 상태를 기반으로 하는 파생 데이터를 계산하는 데 사용된다.", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "Selectors : atoms나 다른 selectors를 입력으로 받아들이는 순수 함수(pure function)다. 상위의 atoms 또는 selectors가 업데이트되면 하위의 selector 함수도 다시 실행된다. 컴포넌트들은 selectors를 atoms처럼 구독할 수 있으며 selectors가 변경되면 컴포넌트들도 다시 렌더링 된다. Selectors는 상태를 기반으로 하는 파생 데이터를 계산하는 데 사용된다.", + "href": null + } + ], + "color": "default" + } + }, + { + "object": "block", + "id": "0e26beb0-1aba-409a-b576-46828dfe8959", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-11-30T06:58:00.000Z", + "last_edited_time": "2023-11-30T06:59:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "image", + "image": { + "caption": [], + "type": "file", + "file": { + "url": "https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2Fcd7314a5-d906-43b0-81e7-42eff82c02a3%2F1b9439e3-55a2-4fc7-a43a-3ada96d230cd%2FUntitled.png?table=block&id=0e26beb0-1aba-409a-b576-46828dfe8959&cache=v2", + "expiry_time": "2025-04-14T15:12:43.853Z" + }, + "format": { + "block_width": 819, + "block_height": 887, + "block_aspect_ratio": 0.923337091319053 + } + } + }, + { + "object": "block", + "id": "029de32e-1a77-4cbb-8f87-51c6e00daf26", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-12-01T06:24:00.000Z", + "last_edited_time": "2023-12-01T06:25:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "paragraph", + "paragraph": { + "rich_text": [ + { + "type": "text", + "text": { + "content": "Atom 패턴을 가지고 있는 ", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "Atom 패턴을 가지고 있는 ", + "href": null + }, + { + "type": "text", + "text": { + "content": "Recoil", + "link": null + }, + "annotations": { + "bold": true, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "Recoil", + "href": null + }, + { + "type": "text", + "text": { + "content": ", ", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": ", ", + "href": null + }, + { + "type": "text", + "text": { + "content": "Jotai", + "link": null + }, + "annotations": { + "bold": true, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "Jotai", + "href": null + }, + { + "type": "text", + "text": { + "content": "는 상향식 (Bottom-Up) 접근법을 가지고 있다.", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "는 상향식 (Bottom-Up) 접근법을 가지고 있다.", + "href": null + } + ], + "color": "default" + } + }, + { + "object": "block", + "id": "ce6c577f-4332-41e3-b00e-7e3f248e1527", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-12-01T06:24:00.000Z", + "last_edited_time": "2023-12-02T07:20:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "paragraph", + "paragraph": { + "rich_text": [ + { + "type": "text", + "text": { + "content": "상향식 (Bottom-Up) 접근법 : 상태를 원자 단위로 가지며, 상태와 셀렉터들을 조합하여 상태를 확장하는 방식", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "상향식 (Bottom-Up) 접근법 : 상태를 원자 단위로 가지며, 상태와 셀렉터들을 조합하여 상태를 확장하는 방식", + "href": null + } + ], + "color": "default" + } + }, + { + "object": "block", + "id": "725a3ffc-d827-4d51-a6e7-a73526ca44fc", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-11-30T06:15:00.000Z", + "last_edited_time": "2023-12-01T06:35:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "heading_3", + "heading_3": { + "rich_text": [ + { + "type": "text", + "text": { + "content": "Recoil", + "link": null + }, + "annotations": { + "bold": true, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "Recoil", + "href": null + } + ], + "is_toggleable": false, + "color": "default" + } + }, + { + "object": "block", + "id": "38250a68-06da-4a19-9beb-6d74a989b950", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-12-01T06:34:00.000Z", + "last_edited_time": "2023-12-01T12:00:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "paragraph", + "paragraph": { + "rich_text": [ + { + "type": "text", + "text": { + "content": "Recoil", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "Recoil", + "href": null + }, + { + "type": "text", + "text": { + "content": "은", + "link": null + }, + "annotations": { + "bold": true, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "은", + "href": null + }, + { + "type": "text", + "text": { + "content": " 현재 마지막 업데이트가 된 지 약 9개월이며 Major 버전이 0이다.\n또한 다음에서 소개할 ", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": " 현재 마지막 업데이트가 된 지 약 9개월이며 Major 버전이 0이다.\n또한 다음에서 소개할 ", + "href": null + }, + { + "type": "text", + "text": { + "content": "Jotai", + "link": null + }, + "annotations": { + "bold": true, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "Jotai", + "href": null + }, + { + "type": "text", + "text": { + "content": "와 컨셉, 사용법이 매우 유사하기 때문에 Recoil은", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "와 컨셉, 사용법이 매우 유사하기 때문에 Recoil은", + "href": null + }, + { + "type": "text", + "text": { + "content": " ", + "link": null + }, + "annotations": { + "bold": true, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": " ", + "href": null + }, + { + "type": "text", + "text": { + "content": "다루지 않겠다.", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "다루지 않겠다.", + "href": null + } + ], + "color": "default" + } + }, + { + "object": "block", + "id": "82322597-e8b7-467d-aea4-a83d34b5607e", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-11-30T06:15:00.000Z", + "last_edited_time": "2023-12-01T06:35:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "heading_3", + "heading_3": { + "rich_text": [ + { + "type": "text", + "text": { + "content": "Jotai", + "link": null + }, + "annotations": { + "bold": true, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "Jotai", + "href": null + } + ], + "is_toggleable": false, + "color": "default" + } + }, + { + "object": "block", + "id": "5279accf-85a3-44c5-914d-410b8ea59cbd", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-12-01T06:44:00.000Z", + "last_edited_time": "2023-12-01T06:44:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "image", + "image": { + "caption": [], + "type": "file", + "file": { + "url": "https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2Fcd7314a5-d906-43b0-81e7-42eff82c02a3%2F87fe978b-a6a8-415d-9b8c-243e96326358%2FUntitled.png?table=block&id=5279accf-85a3-44c5-914d-410b8ea59cbd&cache=v2", + "expiry_time": "2025-04-14T15:12:43.849Z" + }, + "format": { + "block_width": 429, + "block_height": 208, + "block_aspect_ratio": 2.0625 + } + } + }, + { + "object": "block", + "id": "70b6302e-f219-4a1e-b88c-ff4bba54a4fb", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-12-01T06:45:00.000Z", + "last_edited_time": "2023-12-01T06:45:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "quote", + "quote": { + "rich_text": [ + { + "type": "text", + "text": { + "content": "Primitive and flexible state management for React", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "Primitive and flexible state management for React", + "href": null + } + ], + "color": "default" + } + }, + { + "object": "block", + "id": "4e309685-71c0-4830-a519-990c0be15b78", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-12-01T06:45:00.000Z", + "last_edited_time": "2023-12-01T07:10:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "paragraph", + "paragraph": { + "rich_text": [ + { + "type": "text", + "text": { + "content": "소개처럼 Zustand, Redux와 달리 Jotai는 리액트를 위해 만들어진 라이브러리이다.\nRecoil의 Atomic 패턴에 영감을 받아 만든 라이브러리로 컨셉과 사용법이 매우 유사하다.", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "소개처럼 Zustand, Redux와 달리 Jotai는 리액트를 위해 만들어진 라이브러리이다.\nRecoil의 Atomic 패턴에 영감을 받아 만든 라이브러리로 컨셉과 사용법이 매우 유사하다.", + "href": null + } + ], + "color": "default" + } + }, + { + "object": "block", + "id": "8df3deef-99f2-4dce-8b35-c715439e64f2", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-12-01T06:57:00.000Z", + "last_edited_time": "2023-12-01T07:11:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "paragraph", + "paragraph": { + "rich_text": [ + { + "type": "text", + "text": { + "content": "한 가지 특이한 점은 Zustand, Valtio 등을 만든 개발자가 Jotai를 만들었다는 것이다. 그래서 코드를 보면 폴더 구조 등이 유사한 것을 알 수 있다.", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "한 가지 특이한 점은 Zustand, Valtio 등을 만든 개발자가 Jotai를 만들었다는 것이다. 그래서 코드를 보면 폴더 구조 등이 유사한 것을 알 수 있다.", + "href": null + } + ], + "color": "default" + } + }, + { + "object": "block", + "id": "a66b11b2-a836-4fb6-93d4-2477e761e21f", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-12-01T07:11:00.000Z", + "last_edited_time": "2023-12-01T07:11:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "paragraph", + "paragraph": { + "rich_text": [ + { + "type": "text", + "text": { + "content": "아래 링크를 보면 해당 그룹에서 ", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "아래 링크를 보면 해당 그룹에서 ", + "href": null + }, + { + "type": "text", + "text": { + "content": "react-spring, react-three-fiber", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": true, + "color": "default" + }, + "plain_text": "react-spring, react-three-fiber", + "href": null + }, + { + "type": "text", + "text": { + "content": " 등을 만들었다. 이 그룹을 팔로잉하면 현재 개발 트렌드 등을 알 수 있을 것이다.", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": " 등을 만들었다. 이 그룹을 팔로잉하면 현재 개발 트렌드 등을 알 수 있을 것이다.", + "href": null + } + ], + "color": "default" + } + }, + { + "object": "block", + "id": "ab14a3e2-5e33-4867-9b7b-0e01098b01ad", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-12-01T06:48:00.000Z", + "last_edited_time": "2023-12-01T06:48:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "bookmark", + "bookmark": { + "caption": [], + "url": "https://github.com/pmndrs", + "metadata": { + "title": "Poimandres", + "description": "Open source developer collective. Poimandres has 84 repositories available. Follow their code on GitHub.", + "image": "https://avatars.githubusercontent.com/u/45790596?s=280&v=4", + "siteName": "GitHub", + "url": "https://github.com/pmndrs", + "favicon": "https://www.google.com/s2/favicons?domain=github.com&sz=64" + } + } + }, + { + "object": "block", + "id": "866d7537-d6b9-439e-a3cc-8a12db7425dc", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-12-01T06:45:00.000Z", + "last_edited_time": "2023-12-01T07:00:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "paragraph", + "paragraph": { + "rich_text": [ + { + "type": "text", + "text": { + "content": "Counter 예제 코드", + "link": null + }, + "annotations": { + "bold": true, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "Counter 예제 코드", + "href": null + } + ], + "color": "default" + } + }, + { + "object": "block", + "id": "3314cd2d-b0f1-4017-bd23-b880dbf7a8e2", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-12-01T06:52:00.000Z", + "last_edited_time": "2023-12-05T05:30:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "code", + "code": { + "caption": [], + "rich_text": [ + { + "type": "text", + "text": { + "content": "import { atom, useAtom } from 'jotai';\n\nconst countAtom = atom(0);\n\nfunction Counter() {\n const [count, setCount] = useAtom(countAtom);\n return (\n

\n {count}\n \n

);\n}", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "import { atom, useAtom } from 'jotai';\n\nconst countAtom = atom(0);\n\nfunction Counter() {\n const [count, setCount] = useAtom(countAtom);\n return (\n

\n {count}\n \n

);\n}", + "href": null + } + ], + "language": "typescript" + } + }, + { + "object": "block", + "id": "8e6abe44-113b-4832-bea1-bf9f721b3515", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-12-01T08:24:00.000Z", + "last_edited_time": "2023-12-02T07:22:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "paragraph", + "paragraph": { + "rich_text": [ + { + "type": "text", + "text": { + "content": "Jotai는 리액트를 위한 라이브러리이지만 atom과 store는 vanilla로 작성되어 있다. 또한 Zustand와 마찬가지로 Pub/Sub 모델을 가지고 있다.", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "Jotai는 리액트를 위한 라이브러리이지만 atom과 store는 vanilla로 작성되어 있다. 또한 Zustand와 마찬가지로 Pub/Sub 모델을 가지고 있다.", + "href": null + } + ], + "color": "default" + } + }, + { + "object": "block", + "id": "97675d15-8a30-4b0d-9986-88d89515ecb4", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-12-01T09:37:00.000Z", + "last_edited_time": "2023-12-01T12:02:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "paragraph", + "paragraph": { + "rich_text": [ + { + "type": "text", + "text": { + "content": "Jotai 내부 코드를 보며 이해해 보자!", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "Jotai 내부 코드를 보며 이해해 보자!", + "href": null + } + ], + "color": "default" + } + }, + { + "object": "block", + "id": "ded91e3b-91d0-4d74-b997-2713d22127c1", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-12-01T08:37:00.000Z", + "last_edited_time": "2023-12-01T08:37:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "paragraph", + "paragraph": { + "rich_text": [ + { + "type": "text", + "text": { + "content": "atom", + "link": null + }, + "annotations": { + "bold": true, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "atom", + "href": null + } + ], + "color": "default" + } + }, + { + "object": "block", + "id": "9041cc82-54b9-43ef-a92c-42bbada302a6", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-12-01T08:37:00.000Z", + "last_edited_time": "2023-12-01T08:37:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "code", + "code": { + "caption": [], + "rich_text": [ + { + "type": "text", + "text": { + "content": "function atom(\n read,\n write,\n ) {\n const key = `atom${++keyCount}`\n const config = {\n toString: () => key,\n }\n if (typeof read === 'function') {\n config.read = read\n } else {\n config.init = read\n config.read = function (get) {\n return get(this)\n }\n config.write = function (\n this,\n get,\n set,\n arg,\n ) {\n return set(\n this,\n typeof arg === 'function'\n ? (arg)(get(this))\n : arg,\n )\n }\n }\n if (write) {\n config.write = write\n }\n return config\n }", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "function atom(\n read,\n write,\n ) {\n const key = `atom${++keyCount}`\n const config = {\n toString: () => key,\n }\n if (typeof read === 'function') {\n config.read = read\n } else {\n config.init = read\n config.read = function (get) {\n return get(this)\n }\n config.write = function (\n this,\n get,\n set,\n arg,\n ) {\n return set(\n this,\n typeof arg === 'function'\n ? (arg)(get(this))\n : arg,\n )\n }\n }\n if (write) {\n config.write = write\n }\n return config\n }", + "href": null + } + ], + "language": "typescript" + } + }, + { + "object": "block", + "id": "b07a3009-2bda-4693-a2d8-b01e58ec31f5", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-12-01T08:38:00.000Z", + "last_edited_time": "2023-12-02T07:23:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "paragraph", + "paragraph": { + "rich_text": [ + { + "type": "text", + "text": { + "content": "atom", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": true, + "color": "default" + }, + "plain_text": "atom", + "href": null + }, + { + "type": "text", + "text": { + "content": " 함수가 반환하는 ", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": " 함수가 반환하는 ", + "href": null + }, + { + "type": "text", + "text": { + "content": "config", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": true, + "color": "default" + }, + "plain_text": "config", + "href": null + }, + { + "type": "text", + "text": { + "content": " 는 ", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": " 는 ", + "href": null + }, + { + "type": "text", + "text": { + "content": "read, write, init", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": true, + "color": "default" + }, + "plain_text": "read, write, init", + "href": null + }, + { + "type": "text", + "text": { + "content": " 함수를 가지고 있다.\n또한 atom이 생성될 때마다 ", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": " 함수를 가지고 있다.\n또한 atom이 생성될 때마다 ", + "href": null + }, + { + "type": "text", + "text": { + "content": "keyCount", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": true, + "color": "default" + }, + "plain_text": "keyCount", + "href": null + }, + { + "type": "text", + "text": { + "content": " 를 늘려주면서 키 값이 중복되지 않게 한다. ", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": " 를 늘려주면서 키 값이 중복되지 않게 한다. ", + "href": null + } + ], + "color": "default" + } + }, + { + "object": "block", + "id": "52f24b11-8131-4724-8b94-77b35e17adc7", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-12-01T08:50:00.000Z", + "last_edited_time": "2023-12-01T12:03:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "paragraph", + "paragraph": { + "rich_text": [ + { + "type": "text", + "text": { + "content": "read", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": true, + "color": "default" + }, + "plain_text": "read", + "href": null + }, + { + "type": "text", + "text": { + "content": " : ", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": " : ", + "href": null + }, + { + "type": "text", + "text": { + "content": "atom", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": true, + "color": "default" + }, + "plain_text": "atom", + "href": null + }, + { + "type": "text", + "text": { + "content": " 을 읽을 때마다 평가되는 함수다. Dependency를 추적해서 ", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": " 을 읽을 때마다 평가되는 함수다. Dependency를 추적해서 ", + "href": null + }, + { + "type": "text", + "text": { + "content": "atom", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": true, + "color": "default" + }, + "plain_text": "atom", + "href": null + }, + { + "type": "text", + "text": { + "content": " 에 대해 한 번이라도 ", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": " 에 대해 한 번이라도 ", + "href": null + }, + { + "type": "text", + "text": { + "content": "get", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": true, + "color": "default" + }, + "plain_text": "get", + "href": null + }, + { + "type": "text", + "text": { + "content": " 을 호출했다면 ", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": " 을 호출했다면 ", + "href": null + }, + { + "type": "text", + "text": { + "content": "atom", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": true, + "color": "default" + }, + "plain_text": "atom", + "href": null + }, + { + "type": "text", + "text": { + "content": " 값이 변경될 때마다 ", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": " 값이 변경될 때마다 ", + "href": null + }, + { + "type": "text", + "text": { + "content": "read", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": true, + "color": "default" + }, + "plain_text": "read", + "href": null + }, + { + "type": "text", + "text": { + "content": " 는 평가된다.", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": " 는 평가된다.", + "href": null + } + ], + "color": "default" + } + }, + { + "object": "block", + "id": "4c602630-679c-4a47-a314-e91b653d5ed1", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-12-01T08:53:00.000Z", + "last_edited_time": "2023-12-01T09:05:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "paragraph", + "paragraph": { + "rich_text": [ + { + "type": "text", + "text": { + "content": "write", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": true, + "color": "default" + }, + "plain_text": "write", + "href": null + }, + { + "type": "text", + "text": { + "content": " : ", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": " : ", + "href": null + }, + { + "type": "text", + "text": { + "content": "useAtom", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": true, + "color": "default" + }, + "plain_text": "useAtom", + "href": null + }, + { + "type": "text", + "text": { + "content": " 의 ", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": " 의 ", + "href": null + }, + { + "type": "text", + "text": { + "content": "[, set]", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": true, + "color": "default" + }, + "plain_text": "[, set]", + "href": null + }, + { + "type": "text", + "text": { + "content": " 에서 set이 호출될 때마다 write가 실행된다. ", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": " 에서 set이 호출될 때마다 write가 실행된다. ", + "href": null + }, + { + "type": "text", + "text": { + "content": "atom", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": true, + "color": "default" + }, + "plain_text": "atom", + "href": null + }, + { + "type": "text", + "text": { + "content": " 값을 바꾸는 역할을 한다.", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": " 값을 바꾸는 역할을 한다.", + "href": null + } + ], + "color": "default" + } + }, + { + "object": "block", + "id": "a7e13ff9-aa45-4aad-8133-60276dda8d2f", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-12-01T09:07:00.000Z", + "last_edited_time": "2023-12-01T09:07:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "paragraph", + "paragraph": { + "rich_text": [ + { + "type": "text", + "text": { + "content": "Provider", + "link": null + }, + "annotations": { + "bold": true, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "Provider", + "href": null + } + ], + "color": "default" + } + }, + { + "object": "block", + "id": "b032aa84-2d46-46ca-bd42-22c1fdeeb995", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-12-01T09:07:00.000Z", + "last_edited_time": "2023-12-01T09:08:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": true, + "archived": false, + "in_trash": false, + "type": "quote", + "quote": { + "rich_text": [ + { + "type": "text", + "text": { + "content": "The ", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "The ", + "href": null + }, + { + "type": "text", + "text": { + "content": "Provider", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": true, + "color": "default" + }, + "plain_text": "Provider", + "href": null + }, + { + "type": "text", + "text": { + "content": " component is to provide state for a component sub tree. Multiple Providers can be used for multiple subtrees, and they can even be nested. This works just like React Context.", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": " component is to provide state for a component sub tree. Multiple Providers can be used for multiple subtrees, and they can even be nested. This works just like React Context.", + "href": null + } + ], + "color": "default" + }, + "children": [ + { + "object": "block", + "id": "8e7c3fb3-0ae3-40a1-a73a-36879d825894", + "parent": { + "type": "block_id", + "block_id": "b032aa84-2d46-46ca-bd42-22c1fdeeb995" + }, + "created_time": "2023-12-01T09:07:00.000Z", + "last_edited_time": "2023-12-01T09:08:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "paragraph", + "paragraph": { + "rich_text": [ + { + "type": "text", + "text": { + "content": "If an atom is used in a tree without a Provider, it will use the default state. This is so-called provider-less mode.", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "If an atom is used in a tree without a Provider, it will use the default state. This is so-called provider-less mode.", + "href": null + } + ], + "color": "default" + } + } + ] + }, + { + "object": "block", + "id": "f34a330f-5e80-460c-9c70-976a2dfb0783", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-12-01T09:07:00.000Z", + "last_edited_time": "2023-12-01T09:22:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "paragraph", + "paragraph": { + "rich_text": [ + { + "type": "text", + "text": { + "content": "원문 그대로 쉽게 받아들일 수 있다. ", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "원문 그대로 쉽게 받아들일 수 있다. ", + "href": null + }, + { + "type": "text", + "text": { + "content": "Provider", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": true, + "color": "default" + }, + "plain_text": "Provider", + "href": null + }, + { + "type": "text", + "text": { + "content": " 가 있다면 하나의 store 가지고 되는 셈이다. 없다면 Jotai에서 제공하는 기본 store를 사용한다.", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": " 가 있다면 하나의 store 가지고 되는 셈이다. 없다면 Jotai에서 제공하는 기본 store를 사용한다.", + "href": null + } + ], + "color": "default" + } + }, + { + "object": "block", + "id": "c52b9348-540e-4103-b85a-154f61bf981f", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-12-01T09:24:00.000Z", + "last_edited_time": "2023-12-01T09:24:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "image", + "image": { + "caption": [], + "type": "file", + "file": { + "url": "https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2Fcd7314a5-d906-43b0-81e7-42eff82c02a3%2Fc3afddad-67c2-4035-b70a-74ace650fd4a%2FUntitled.png?table=block&id=c52b9348-540e-4103-b85a-154f61bf981f&cache=v2", + "expiry_time": "2025-04-14T15:12:44.389Z" + }, + "format": { + "block_width": 837, + "block_height": 551, + "block_aspect_ratio": 1.5190562613430127 + } + } + }, + { + "object": "block", + "id": "c616b72e-8b1f-4449-8a6a-38f57737fdd8", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-12-01T09:22:00.000Z", + "last_edited_time": "2023-12-01T09:24:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "paragraph", + "paragraph": { + "rich_text": [ + { + "type": "text", + "text": { + "content": "s", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "s", + "href": null + }, + { + "type": "text", + "text": { + "content": "tore", + "link": null + }, + "annotations": { + "bold": true, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "tore", + "href": null + } + ], + "color": "default" + } + }, + { + "object": "block", + "id": "f23cbb0d-cc9d-4332-a501-dd7f2e0cbe0a", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-12-01T07:25:00.000Z", + "last_edited_time": "2023-12-02T07:27:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "paragraph", + "paragraph": { + "rich_text": [ + { + "type": "text", + "text": { + "content": "Jotai의 Core(store) 코드", + "link": { + "url": "https://github.com/pmndrs/jotai/blob/main/src/vanilla/store.ts" + } + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "Jotai의 Core(store) 코드", + "href": "https://github.com/pmndrs/jotai/blob/main/src/vanilla/store.ts" + }, + { + "type": "text", + "text": { + "content": "는 너무 길어서 생략하고 간단히 설명한다.", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "는 너무 길어서 생략하고 간단히 설명한다.", + "href": null + } + ], + "color": "default" + } + }, + { + "object": "block", + "id": "e962c492-8dc8-40d2-84cc-0cd1f074e62d", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-12-01T09:24:00.000Z", + "last_edited_time": "2023-12-01T09:40:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "paragraph", + "paragraph": { + "rich_text": [ + { + "type": "text", + "text": { + "content": "Zustand의 ", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "Zustand의 ", + "href": null + }, + { + "type": "text", + "text": { + "content": "createStoreImpl", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": true, + "color": "default" + }, + "plain_text": "createStoreImpl", + "href": null + }, + { + "type": "text", + "text": { + "content": " 의 반환값과 동일하게 Jotai도 ", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": " 의 반환값과 동일하게 Jotai도 ", + "href": null + }, + { + "type": "text", + "text": { + "content": "createStore", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": true, + "color": "default" + }, + "plain_text": "createStore", + "href": null + }, + { + "type": "text", + "text": { + "content": " 가 ", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": " 가 ", + "href": null + }, + { + "type": "text", + "text": { + "content": "get, set, sub", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": true, + "color": "default" + }, + "plain_text": "get, set, sub", + "href": null + }, + { + "type": "text", + "text": { + "content": " 를 반환한다.", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": " 를 반환한다.", + "href": null + } + ], + "color": "default" + } + }, + { + "object": "block", + "id": "0b349e05-5de5-4e0a-ba9d-b14f326b6b25", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-12-01T09:36:00.000Z", + "last_edited_time": "2023-12-01T10:08:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "code", + "code": { + "caption": [], + "rich_text": [ + { + "type": "text", + "text": { + "content": "const createStore = () => {\n\n\t...\n\n\treturn {\n\t get: readAtom, // atom의 값을 읽어온다.\n\t set: writeAtom, // atom의 값을 변경한다.\n\t sub: subscribeAtom,\n\t }\n}", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "const createStore = () => {\n\n\t...\n\n\treturn {\n\t get: readAtom, // atom의 값을 읽어온다.\n\t set: writeAtom, // atom의 값을 변경한다.\n\t sub: subscribeAtom,\n\t }\n}", + "href": null + } + ], + "language": "typescript" + } + }, + { + "object": "block", + "id": "2d8c4fd0-394f-4b5c-b3d6-a5577ab758d7", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-12-01T09:39:00.000Z", + "last_edited_time": "2023-12-01T09:42:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "paragraph", + "paragraph": { + "rich_text": [ + { + "type": "text", + "text": { + "content": "subscribeAtom", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": true, + "color": "default" + }, + "plain_text": "subscribeAtom", + "href": null + } + ], + "color": "default" + } + }, + { + "object": "block", + "id": "726f392f-5e38-4b45-bd98-31e2a65db6e7", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-12-01T09:42:00.000Z", + "last_edited_time": "2023-12-05T05:31:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "code", + "code": { + "caption": [], + "rich_text": [ + { + "type": "text", + "text": { + "content": "const subscribeAtom = (atom, listener) => {\n const mounted = addAtom(atom);\n\t\tconst flushed = flushPending();\n const listeners = mounted.l;\n listeners.add(listener);\n\n return () => {\n listeners.delete(listener);\n delAtom(atom);\n };\n };\n\nconst flushPending = () => {\n ...\n\n mounted.l.forEach((listener) => listener())\n\n ...\n}", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "const subscribeAtom = (atom, listener) => {\n const mounted = addAtom(atom);\n\t\tconst flushed = flushPending();\n const listeners = mounted.l;\n listeners.add(listener);\n\n return () => {\n listeners.delete(listener);\n delAtom(atom);\n };\n };\n\nconst flushPending = () => {\n ...\n\n mounted.l.forEach((listener) => listener())\n\n ...\n}", + "href": null + } + ], + "language": "typescript" + } + }, + { + "object": "block", + "id": "c936117d-14a0-4a75-9b27-5658a886e800", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-12-01T09:44:00.000Z", + "last_edited_time": "2023-12-01T12:04:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "paragraph", + "paragraph": { + "rich_text": [ + { + "type": "text", + "text": { + "content": "어디서 많이 본 패턴이다. 바로 Zustand에서 사용하는 구독 모델과 거의 유사하다.", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "어디서 많이 본 패턴이다. 바로 Zustand에서 사용하는 구독 모델과 거의 유사하다.", + "href": null + } + ], + "color": "default" + } + }, + { + "object": "block", + "id": "243449dc-eabe-433e-b179-be4671d16876", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-12-01T09:56:00.000Z", + "last_edited_time": "2023-12-01T09:56:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "paragraph", + "paragraph": { + "rich_text": [ + { + "type": "text", + "text": { + "content": "리액트와 같이 사용하기", + "link": null + }, + "annotations": { + "bold": true, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "리액트와 같이 사용하기", + "href": null + } + ], + "color": "default" + } + }, + { + "object": "block", + "id": "7f86ca29-02c3-4c11-b050-42513385d6ba", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-12-01T09:56:00.000Z", + "last_edited_time": "2023-12-01T09:56:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "code", + "code": { + "caption": [], + "rich_text": [ + { + "type": "text", + "text": { + "content": "export function useAtom(\n atom,\n options,\n) {\n return [\n useAtomValue(atom, options),\n // We do wrong type assertion here, which results in throwing an error.\n useSetAtom(atom),\n ]\n}", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "export function useAtom(\n atom,\n options,\n) {\n return [\n useAtomValue(atom, options),\n // We do wrong type assertion here, which results in throwing an error.\n useSetAtom(atom),\n ]\n}", + "href": null + } + ], + "language": "typescript" + } + }, + { + "object": "block", + "id": "eaf4bec8-8a76-40ec-a768-af3e206cb659", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-12-01T09:57:00.000Z", + "last_edited_time": "2023-12-01T12:04:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "paragraph", + "paragraph": { + "rich_text": [ + { + "type": "text", + "text": { + "content": "밥 먹듯 사용하는 Jotai의 ", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "밥 먹듯 사용하는 Jotai의 ", + "href": null + }, + { + "type": "text", + "text": { + "content": "useAtom", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": true, + "color": "default" + }, + "plain_text": "useAtom", + "href": null + }, + { + "type": "text", + "text": { + "content": "은 ", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "은 ", + "href": null + }, + { + "type": "text", + "text": { + "content": "useAtomValue, useSetAtom", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": true, + "color": "default" + }, + "plain_text": "useAtomValue, useSetAtom", + "href": null + }, + { + "type": "text", + "text": { + "content": " 을 반환한다.", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": " 을 반환한다.", + "href": null + } + ], + "color": "default" + } + }, + { + "object": "block", + "id": "d0c8b22c-d167-45cf-9366-cff2f6b8202a", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-12-01T09:57:00.000Z", + "last_edited_time": "2024-01-04T13:53:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "code", + "code": { + "caption": [], + "rich_text": [ + { + "type": "text", + "text": { + "content": "export const useAtomValue(atom, options) {\n\tconst store = useStore(options)\n\n\t...\n\n\tconst [[valueFromReducer, storeFromReducer, atomFromReducer], rerender] =\n\t useReducer(\n\t (prev) => {\n\t const nextValue = store.get(atom)\n\t if (\n\t Object.is(prev[0], nextValue) &&\n\t prev[1] === store &&\n\t prev[2] === atom\n\t ) {\n\t return prev\n\t }\n\t return [nextValue, store, atom]\n\t },\n\t undefined,\n\t () => [store.get(atom), store, atom]\n\t )\n\n\tlet value = valueFromReducer;\n\n\tvalue = store.get(atom)\n\n\t...\n\n\tuseEffect(() => {\n\t const unsub = store.sub(atom, () => {\n\t if (typeof delay === 'number') {\n\t // delay rerendering to wait a promise possibly to resolve\n\t setTimeout(rerender, delay)\n\t return\n\t }\n\t rerender()\n\t })\n\t rerender()\n\t return unsub\n\t }, [store, atom, delay])\n\n\treturn isPromiseLike(value) ? use(value) : (value)\n}", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "export const useAtomValue(atom, options) {\n\tconst store = useStore(options)\n\n\t...\n\n\tconst [[valueFromReducer, storeFromReducer, atomFromReducer], rerender] =\n\t useReducer(\n\t (prev) => {\n\t const nextValue = store.get(atom)\n\t if (\n\t Object.is(prev[0], nextValue) &&\n\t prev[1] === store &&\n\t prev[2] === atom\n\t ) {\n\t return prev\n\t }\n\t return [nextValue, store, atom]\n\t },\n\t undefined,\n\t () => [store.get(atom), store, atom]\n\t )\n\n\tlet value = valueFromReducer;\n\n\tvalue = store.get(atom)\n\n\t...\n\n\tuseEffect(() => {\n\t const unsub = store.sub(atom, () => {\n\t if (typeof delay === 'number') {\n\t // delay rerendering to wait a promise possibly to resolve\n\t setTimeout(rerender, delay)\n\t return\n\t }\n\t rerender()\n\t })\n\t rerender()\n\t return unsub\n\t }, [store, atom, delay])\n\n\treturn isPromiseLike(value) ? use(value) : (value)\n}", + "href": null + } + ], + "language": "typescript" + } + }, + { + "object": "block", + "id": "c7f8b247-27c6-4529-acb9-368f19863524", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-12-01T10:07:00.000Z", + "last_edited_time": "2023-12-01T10:08:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "paragraph", + "paragraph": { + "rich_text": [ + { + "type": "text", + "text": { + "content": "createStore", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": true, + "color": "default" + }, + "plain_text": "createStore", + "href": null + }, + { + "type": "text", + "text": { + "content": " 의 반환 값인 ", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": " 의 반환 값인 ", + "href": null + }, + { + "type": "text", + "text": { + "content": "get, sub", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": true, + "color": "default" + }, + "plain_text": "get, sub", + "href": null + }, + { + "type": "text", + "text": { + "content": " 를 사용하는 것을 알 수 있다.", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": " 를 사용하는 것을 알 수 있다.", + "href": null + } + ], + "color": "default" + } + }, + { + "object": "block", + "id": "03c000a6-c039-433b-a548-6d61bc5d6f0e", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-12-01T10:08:00.000Z", + "last_edited_time": "2023-12-01T10:09:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "paragraph", + "paragraph": { + "rich_text": [ + { + "type": "text", + "text": { + "content": "추가로 ", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "추가로 ", + "href": null + }, + { + "type": "text", + "text": { + "content": "store.sub", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": true, + "color": "default" + }, + "plain_text": "store.sub", + "href": null + }, + { + "type": "text", + "text": { + "content": " 으로 ", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": " 으로 ", + "href": null + }, + { + "type": "text", + "text": { + "content": "atom", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": true, + "color": "default" + }, + "plain_text": "atom", + "href": null + }, + { + "type": "text", + "text": { + "content": " 를 구독하며 변경되면 ", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": " 를 구독하며 변경되면 ", + "href": null + }, + { + "type": "text", + "text": { + "content": "rerender()", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": true, + "color": "default" + }, + "plain_text": "rerender()", + "href": null + }, + { + "type": "text", + "text": { + "content": " 을 호출하는 것을 볼 수 있다. ", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": " 을 호출하는 것을 볼 수 있다. ", + "href": null + } + ], + "color": "default" + } + }, + { + "object": "block", + "id": "48e18ff9-ad96-49c1-abb0-a5a5710d3fe2", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-12-01T11:16:00.000Z", + "last_edited_time": "2025-04-14T14:09:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "image", + "image": { + "caption": [], + "type": "file", + "file": { + "url": "https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2Fcd7314a5-d906-43b0-81e7-42eff82c02a3%2F54bd93f9-a001-4580-9b57-5a40e3c1cf72%2FUntitled.png?table=block&id=48e18ff9-ad96-49c1-abb0-a5a5710d3fe2&cache=v2", + "expiry_time": "2025-04-14T15:12:44.381Z" + }, + "format": { + "block_width": 917, + "block_height": 607, + "block_aspect_ratio": 1.5107084019769357 + } + } + }, + { + "object": "block", + "id": "74179ef2-deb1-4f32-82e1-4234077ad619", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-12-01T06:40:00.000Z", + "last_edited_time": "2023-12-01T12:04:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "paragraph", + "paragraph": { + "rich_text": [ + { + "type": "text", + "text": { + "content": "“2) useEffect Execute and Subscribe Store”가 위 코드의 useEffect 절에 해당하는 것을 알 수 있다.", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "“2) useEffect Execute and Subscribe Store”가 위 코드의 useEffect 절에 해당하는 것을 알 수 있다.", + "href": null + } + ], + "color": "default" + } + }, + { + "object": "block", + "id": "3566112f-fea1-42a9-a833-a5267f3e51e1", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-12-01T11:18:00.000Z", + "last_edited_time": "2023-12-01T11:18:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "paragraph", + "paragraph": { + "rich_text": [], + "color": "default" + } + }, + { + "object": "block", + "id": "96c10502-1c64-4d78-b7af-2c16effeb716", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-12-01T11:17:00.000Z", + "last_edited_time": "2023-12-01T11:19:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "code", + "code": { + "caption": [], + "rich_text": [ + { + "type": "text", + "text": { + "content": "export function useSetAtom(\n atom,\n options,\n) {\n const store = useStore(options)\n const setAtom = useCallback(\n (...args: Args) => {\n return store.set(atom, ...args)\n },\n [store, atom],\n )\n return setAtom\n}", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "export function useSetAtom(\n atom,\n options,\n) {\n const store = useStore(options)\n const setAtom = useCallback(\n (...args: Args) => {\n return store.set(atom, ...args)\n },\n [store, atom],\n )\n return setAtom\n}", + "href": null + } + ], + "language": "typescript" + } + }, + { + "object": "block", + "id": "04a726bd-6fe0-40c5-8866-1838530e7a9d", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-12-01T11:19:00.000Z", + "last_edited_time": "2023-12-01T11:19:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "paragraph", + "paragraph": { + "rich_text": [ + { + "type": "text", + "text": { + "content": "예상했듯이 ", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "예상했듯이 ", + "href": null + }, + { + "type": "text", + "text": { + "content": "useSetAtom", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": true, + "color": "default" + }, + "plain_text": "useSetAtom", + "href": null + }, + { + "type": "text", + "text": { + "content": " 은 ", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": " 은 ", + "href": null + }, + { + "type": "text", + "text": { + "content": "createStore", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": true, + "color": "default" + }, + "plain_text": "createStore", + "href": null + }, + { + "type": "text", + "text": { + "content": " 의 ", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": " 의 ", + "href": null + }, + { + "type": "text", + "text": { + "content": "set", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": true, + "color": "default" + }, + "plain_text": "set", + "href": null + }, + { + "type": "text", + "text": { + "content": " 을 사용한다.", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": " 을 사용한다.", + "href": null + } + ], + "color": "default" + } + }, + { + "object": "block", + "id": "a19ee5b3-699e-4105-8231-b9cbfc8987cd", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-12-01T11:18:00.000Z", + "last_edited_time": "2025-04-14T14:09:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "image", + "image": { + "caption": [], + "type": "file", + "file": { + "url": "https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2Fcd7314a5-d906-43b0-81e7-42eff82c02a3%2F72b6c885-fc4f-4399-9dd2-0d41601ccc66%2FUntitled.png?table=block&id=a19ee5b3-699e-4105-8231-b9cbfc8987cd&cache=v2", + "expiry_time": "2025-04-14T15:12:44.404Z" + }, + "format": { + "block_width": 1112, + "block_height": 666, + "block_aspect_ratio": 1.6696696696696696 + } + } + }, + { + "object": "block", + "id": "853ae1ae-9c65-41c1-8998-853399a572dd", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-12-01T06:40:00.000Z", + "last_edited_time": "2023-12-01T11:25:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "paragraph", + "paragraph": { + "rich_text": [ + { + "type": "text", + "text": { + "content": "마지막으로 ", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "마지막으로 ", + "href": null + }, + { + "type": "text", + "text": { + "content": "atom, Provider, Store, Component", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": true, + "color": "default" + }, + "plain_text": "atom, Provider, Store, Component", + "href": null + }, + { + "type": "text", + "text": { + "content": " 간의 연관 관계를 보여주는 그림이다.", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": " 간의 연관 관계를 보여주는 그림이다.", + "href": null + } + ], + "color": "default" + } + }, + { + "object": "block", + "id": "73514eff-07fb-4893-85bf-d676a3170f48", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-12-01T06:40:00.000Z", + "last_edited_time": "2023-12-01T11:41:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "heading_1", + "heading_1": { + "rich_text": [ + { + "type": "text", + "text": { + "content": "정리", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "정리", + "href": null + } + ], + "is_toggleable": false, + "color": "default" + } + }, + { + "object": "block", + "id": "625ebf31-08c1-425c-92d7-eb3ddca98e56", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-12-01T11:25:00.000Z", + "last_edited_time": "2023-12-02T07:27:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "paragraph", + "paragraph": { + "rich_text": [ + { + "type": "text", + "text": { + "content": "짧게 쓰려고 했는데 코어한 부분까지 보려고 하다 보니 생각보다 길어졌다..\n개인적으로는 상태를 원자 단위로 관리하며 그 원자들을 조합하며 확장하는 방식에 좀 더 공감하지만, \n“무엇이 더 우월하다”라고 말하기는 힘든 것 같다.\n자신(팀)의 현재 상황, 프로젝트의 구조, 규모 등 상황에 따라 적용하면 좋을 상태 관리 라이브러리는 달라진다고 생각한다. ", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "짧게 쓰려고 했는데 코어한 부분까지 보려고 하다 보니 생각보다 길어졌다..\n개인적으로는 상태를 원자 단위로 관리하며 그 원자들을 조합하며 확장하는 방식에 좀 더 공감하지만, \n“무엇이 더 우월하다”라고 말하기는 힘든 것 같다.\n자신(팀)의 현재 상황, 프로젝트의 구조, 규모 등 상황에 따라 적용하면 좋을 상태 관리 라이브러리는 달라진다고 생각한다. ", + "href": null + } + ], + "color": "default" + } + }, + { + "object": "block", + "id": "4bd6789e-fd8a-4309-8163-75f9860bb6f5", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-09-12T02:50:00.000Z", + "last_edited_time": "2023-12-01T11:42:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "heading_1", + "heading_1": { + "rich_text": [ + { + "type": "text", + "text": { + "content": "Reference", + "link": null + }, + "annotations": { + "bold": false, + "italic": false, + "strikethrough": false, + "underline": false, + "code": false, + "color": "default" + }, + "plain_text": "Reference", + "href": null + } + ], + "is_toggleable": false, + "color": "default" + } + }, + { + "object": "block", + "id": "ee4fcdad-d263-412c-8b90-283f0d9b2158", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-11-30T02:19:00.000Z", + "last_edited_time": "2023-12-01T11:42:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "bookmark", + "bookmark": { + "caption": [], + "url": "https://react.dev/learn/passing-data-deeply-with-context", + "metadata": { + "title": "Passing Data Deeply with Context – React", + "description": "The library for web and native user interfaces", + "image": "https://react.dev/images/og-learn.png", + "siteName": "react.dev", + "url": "https://react.dev/learn/passing-data-deeply-with-context", + "favicon": "https://www.google.com/s2/favicons?domain=react.dev&sz=64" + } + } + }, + { + "object": "block", + "id": "8480d3cf-5bbb-4968-96d6-8ecb8e598221", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-09-24T08:21:00.000Z", + "last_edited_time": "2023-12-01T11:42:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "bookmark", + "bookmark": { + "caption": [], + "url": "https://velog.io/@ckstn0777/Context-API의-최대-단점은-무엇일까#context-api의-최대-단점", + "metadata": { + "title": "Context API의 최대 단점은 무엇일까", + "description": "이번 시간에는 Context API에 대해 좀 더 자세히 알아보고 왜 Context API 대신 Redux나 Recoil 같은 전역 상태 라이브러리를 많이 사용하는지 알아보도록 하겠습니다.", + "image": "https://velog.velcdn.com/images/ckstn0777/post/a07b295b-2b00-42b4-baf4-afa2b000e444/image.png", + "siteName": "velog.io", + "url": "https://velog.io/@ckstn0777/Context-API의-최대-단점은-무엇일까#context-api의-최대-단점", + "favicon": "https://www.google.com/s2/favicons?domain=velog.io&sz=64" + } + } + }, + { + "object": "block", + "id": "758b4d92-3372-4f74-9e70-4e0ecf12450c", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-11-30T07:16:00.000Z", + "last_edited_time": "2023-12-01T11:42:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "bookmark", + "bookmark": { + "caption": [], + "url": "https://redux-toolkit.js.org/tutorials/quick-start", + "metadata": { + "title": "Quick Start | Redux Toolkit", + "description": " ", + "image": "https://redux-toolkit.js.org/img/redux-logo-landscape.png", + "siteName": "redux-toolkit.js.org", + "url": "https://redux-toolkit.js.org/tutorials/quick-start", + "favicon": "https://www.google.com/s2/favicons?domain=redux-toolkit.js.org&sz=64" + } + } + }, + { + "object": "block", + "id": "877f0942-4950-41a2-bc70-a64064265490", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-11-30T06:42:00.000Z", + "last_edited_time": "2023-12-01T11:42:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "bookmark", + "bookmark": { + "caption": [], + "url": "https://ui.toast.com/weekly-pick/ko_20210812", + "metadata": { + "title": "React 상태 관리 라이브러리 Zustand의 코드를 파헤쳐보자", + "description": "TOAST UI Calendar의 새로운 상태 관리 방법을 도입하기 위해 참고한 라이브러리 Zustand의 코드를 분석해본다.", + "image": "https://user-images.githubusercontent.com/14539203/129129813-75f8b592-edae-4629-879a-f63a25b91195.jpeg", + "siteName": "ui.toast.com", + "url": "https://ui.toast.com/weekly-pick/ko_20210812", + "favicon": "https://www.google.com/s2/favicons?domain=ui.toast.com&sz=64" + } + } + }, + { + "object": "block", + "id": "5e93f6fe-71c3-4433-b03a-49df2694ad87", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-12-01T06:13:00.000Z", + "last_edited_time": "2023-12-01T11:42:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "bookmark", + "bookmark": { + "caption": [], + "url": "https://recoiljs.org/ko/docs/introduction/core-concepts", + "metadata": { + "title": "주요 개념 | Recoil", + "description": "개요", + "image": "https://recoiljs.org/ko/img/og-image.png", + "siteName": "recoiljs.org", + "url": "https://recoiljs.org/ko/docs/introduction/core-concepts", + "favicon": "https://www.google.com/s2/favicons?domain=recoiljs.org&sz=64" + } + } + }, + { + "object": "block", + "id": "ba656867-9c86-4c79-a9d9-cfe82e8180bd", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-12-01T06:07:00.000Z", + "last_edited_time": "2023-12-01T11:42:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "bookmark", + "bookmark": { + "caption": [], + "url": "https://techblog.yogiyo.co.kr/recoil을-이용한-손쉬운-상태관리-b70b32650582", + "metadata": { + "title": "Recoil을 이용한 손쉬운 상태관리", + "description": "Recoil의 장단점과 함께 효과적으로 상태관리 할 수 있는 방법을 소개하려고 합니다!", + "image": "https://miro.medium.com/v2/resize:fit:1200/1*IRLxvbUTy-UIjhot2vdO6Q.jpeg", + "siteName": "Medium", + "url": "https://techblog.yogiyo.co.kr/recoil을-이용한-손쉬운-상태관리-b70b32650582", + "favicon": "https://www.google.com/s2/favicons?domain=techblog.yogiyo.co.kr&sz=64" + } + } + }, + { + "object": "block", + "id": "6337cf47-04c9-469f-b393-d3129e4b6ddb", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-09-12T02:50:00.000Z", + "last_edited_time": "2023-12-01T11:42:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "bookmark", + "bookmark": { + "caption": [], + "url": "https://jotai.org/docs/introduction", + "metadata": { + "title": "Documentation — Jotai", + "description": "Table of contents", + "image": "https://cdn.candycode.com/jotai/jotai-opengraph-v2.png", + "siteName": "Jotai", + "url": "https://jotai.org/docs/introduction", + "favicon": "https://www.google.com/s2/favicons?domain=jotai.org&sz=64" + } + } + }, + { + "object": "block", + "id": "88cc8634-ab24-4e99-aa6f-34ac8bd3c8d2", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-09-12T02:50:00.000Z", + "last_edited_time": "2023-12-01T11:42:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "bookmark", + "bookmark": { + "caption": [], + "url": "https://blog.hwahae.co.kr/all/tech/tech-tech/6099", + "metadata": { + "title": "Atomic state management - Jotai – 화해 블로그 | 기술 블로그", + "description": "상태 관리 jotai 과거에는 상태 관리를 위해 당연하듯 Redux를 고려했었는데 리액트 v16.8의 hook의 등장 이후로 많은 선택지가 생겨나게 되었고 이에 따라 저희 역시 새로운 시도에 대한 고민을 해왔습니다. 자료를 조사해가던 중 Jotai라는 상태 관리를 언급한 문장을 보았습니다.", + "image": "https://blog-wp.hwahae.co.kr/wp-content/uploads/2021/06/210630_fin_00_cover.jpg", + "siteName": "화해 블로그 | 기술 블로그", + "url": "https://blog.hwahae.co.kr/all/tech/tech-tech/6099", + "favicon": "https://www.google.com/s2/favicons?domain=blog.hwahae.co.kr&sz=64" + } + } + }, + { + "object": "block", + "id": "0b8ee069-5d2c-407b-a65c-5ed5ab1f5f44", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-11-30T06:26:00.000Z", + "last_edited_time": "2023-12-01T11:42:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "bookmark", + "bookmark": { + "caption": [], + "url": "https://seungahhong.github.io/blog/2023/09/2023-09-10-react-state/", + "metadata": { + "title": "seungahhong.github.io", + "description": "", + "image": "", + "siteName": "seungahhong.github.io", + "url": "https://seungahhong.github.io/blog/2023/09/2023-09-10-react-state/", + "favicon": "https://www.google.com/s2/favicons?domain=seungahhong.github.io&sz=64" + } + } + }, + { + "object": "block", + "id": "98d93999-bebc-427f-bf7f-121a59ee7d01", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-11-30T08:09:00.000Z", + "last_edited_time": "2023-12-01T11:42:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "bookmark", + "bookmark": { + "caption": [], + "url": "https://github.com/pmndrs/zustand/blob/main/src/vanilla.ts", + "metadata": { + "title": "zustand/src/vanilla.ts at main · pmndrs/zustand", + "description": "🐻 Bear necessities for state management in React. Contribute to pmndrs/zustand development by creating an account on GitHub.", + "image": "https://repository-images.githubusercontent.com/180328715/fca49300-e7f1-11ea-9f51-cfd949b31560", + "siteName": "GitHub", + "url": "https://github.com/pmndrs/zustand/blob/main/src/vanilla.ts", + "favicon": "https://www.google.com/s2/favicons?domain=github.com&sz=64" + } + } + }, + { + "object": "block", + "id": "06fe1a8c-48a2-425c-8c51-04c39bde3151", + "parent": { + "type": "page_id", + "page_id": "56874170-f8d4-4bcc-996e-be4e43f67930" + }, + "created_time": "2023-12-01T07:13:00.000Z", + "last_edited_time": "2023-12-01T11:42:00.000Z", + "created_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "last_edited_by": { + "object": "user", + "id": "5146391e-8b65-47f2-83b6-2bfe81194f32" + }, + "has_children": false, + "archived": false, + "in_trash": false, + "type": "bookmark", + "bookmark": { + "caption": [], + "url": "https://github.com/pmndrs/jotai/blob/main/src/vanilla/store.ts", + "metadata": { + "title": "jotai/src/vanilla/store.ts at main · pmndrs/jotai", + "description": "👻 Primitive and flexible state management for React - pmndrs/jotai", + "image": "https://repository-images.githubusercontent.com/286867459/2588acf7-7c1d-46d1-923b-83dc335230e6", + "siteName": "GitHub", + "url": "https://github.com/pmndrs/jotai/blob/main/src/vanilla/store.ts", + "favicon": "https://www.google.com/s2/favicons?domain=github.com&sz=64" + } } } -] +] \ No newline at end of file diff --git a/packages/notion-to-jsx/src/components/Renderer/components/Block/BlockRenderer.tsx b/packages/notion-to-jsx/src/components/Renderer/components/Block/BlockRenderer.tsx index d5b3656..8d2d06c 100644 --- a/packages/notion-to-jsx/src/components/Renderer/components/Block/BlockRenderer.tsx +++ b/packages/notion-to-jsx/src/components/Renderer/components/Block/BlockRenderer.tsx @@ -91,7 +91,12 @@ const BlockRenderer: React.FC = ({ ); case 'bookmark': - return ; + return ( + + ); case 'column_list': return ; diff --git a/packages/notion-to-jsx/src/components/Renderer/components/Bookmark/Bookmark.tsx b/packages/notion-to-jsx/src/components/Renderer/components/Bookmark/Bookmark.tsx index 6ba6390..33779f9 100644 --- a/packages/notion-to-jsx/src/components/Renderer/components/Bookmark/Bookmark.tsx +++ b/packages/notion-to-jsx/src/components/Renderer/components/Bookmark/Bookmark.tsx @@ -1,4 +1,4 @@ -import React, { useState, useEffect } from 'react'; +import React from 'react'; import { link, card, @@ -23,93 +23,31 @@ interface OpenGraphData { export interface BookmarkProps { url: string; + metadata?: OpenGraphData; } -// OpenGraph 데이터를 가져오는 함수 -const fetchOpenGraphData = async (url: string): Promise => { - try { - const apiUrl = `https://api.microlink.io/?url=${encodeURIComponent(url)}`; - const response = await fetch(apiUrl); - const data = await response.json(); - - if (!response.ok) { - throw new Error('Failed to fetch metadata'); - } - - const { status, data: metaData, statusCode } = data; - - if (status !== 'success' || statusCode !== 200) { - throw new Error('API returned error status'); - } - - const parsedUrl = new URL(url); - const domain = parsedUrl.hostname; - - return { - title: metaData.title || domain, - description: metaData.description || 'No description available', - image: metaData.image?.url || '', - siteName: metaData.publisher || domain, - url: metaData.url || '', - favicon: - metaData.logo?.url || - `https://www.google.com/s2/favicons?domain=${domain}&sz=64`, - }; - } catch (error) { - console.error('Error fetching OpenGraph data:', error); - - const parsedUrl = new URL(url); - const domain = parsedUrl.hostname; - - return { - title: domain, - description: 'No description available', - image: '', - url: '', - siteName: domain, - favicon: `https://www.google.com/s2/favicons?domain=${domain}&sz=64`, - }; - } -}; - -const Bookmark: React.FC = ({ url }) => { - const [ogData, setOgData] = useState(null); - const [error, setError] = useState(false); - - useEffect(() => { - const loadOgData = async () => { - try { - const data = await fetchOpenGraphData(url); - setOgData(data); - } catch (err) { - setError(true); - } - }; - - loadOgData(); - }, [url]); - +const Bookmark: React.FC = ({ url, metadata }) => { return (
-

{ogData?.title || url}

-

{ogData?.description || ''}

+

{metadata?.title || url}

+

{metadata?.description || ''}

- {ogData?.favicon && ( - + {metadata?.favicon && ( + )} - {ogData?.url || ''} + {metadata?.url || ''}
- {ogData?.image && ( + {metadata?.image && (
{ogData.title} { // 이미지 로드 실패 시 처리 diff --git a/packages/notion-to-jsx/src/components/Renderer/components/Code/styles.css.ts b/packages/notion-to-jsx/src/components/Renderer/components/Code/styles.css.ts index 08cf4e1..ebf3c95 100644 --- a/packages/notion-to-jsx/src/components/Renderer/components/Code/styles.css.ts +++ b/packages/notion-to-jsx/src/components/Renderer/components/Code/styles.css.ts @@ -8,7 +8,7 @@ export const codeBlock = style({ borderRadius: vars.borderRadius.md, overflow: 'auto', fontFamily: vars.typography.fontFamily.code, - fontSize: '0.85em !important', + fontSize: '0.85rem', lineHeight: vars.typography.lineHeight.relaxed, margin: `${vars.spacing.sm} 0`, }); diff --git a/packages/notion-to-utils/package.json b/packages/notion-to-utils/package.json index fb72d25..5c7e7aa 100644 --- a/packages/notion-to-utils/package.json +++ b/packages/notion-to-utils/package.json @@ -53,6 +53,7 @@ "dependencies": { "@notionhq/client": "^2.2.15", "lqip-modern": "^2.2.1", + "open-graph-scraper": "^6.9.0", "probe-image-size": "^7.2.3" } } diff --git a/packages/notion-to-utils/src/client/getPageBlocks.ts b/packages/notion-to-utils/src/client/getPageBlocks.ts index 48338d1..6521841 100644 --- a/packages/notion-to-utils/src/client/getPageBlocks.ts +++ b/packages/notion-to-utils/src/client/getPageBlocks.ts @@ -6,6 +6,7 @@ import { } from '@notionhq/client/build/src/api-endpoints'; import { formatNotionImageUrl } from './formatNotionImageUrl'; import { addMetadataToImageBlock } from '../utils'; +import ogs from 'open-graph-scraper'; // 블록 타입 정의 export type NotionBlock = BlockObjectResponse | PartialBlockObjectResponse; @@ -90,6 +91,57 @@ async function fetchBlockChildren( } } + // Bookmark 블록인 경우 URL 처리 + if ('type' in block && block.type === 'bookmark') { + try { + const bookmarkBlock = block as any; + const bookmarkUrl = bookmarkBlock.bookmark.url; + + // open-graph-scraper를 이용한 메타데이터 추출 + const { result } = await ogs({ url: bookmarkUrl }); + + const parsedUrl = new URL(bookmarkUrl); + const domain = parsedUrl.hostname; + + // 추출한 메타데이터를 블록에 추가 + bookmarkBlock.bookmark.metadata = { + title: result.ogTitle || result.twitterTitle || domain, + description: + result.ogDescription || result.twitterDescription || '', + image: + result.ogImage?.[0]?.url || result.twitterImage?.[0]?.url || '', + siteName: result.ogSiteName || domain, + url: bookmarkUrl, + favicon: `https://www.google.com/s2/favicons?domain=${domain}&sz=64`, + }; + } catch (error) { + console.error('북마크 메타데이터 추출 중 오류:', error); + + // 오류 발생 시 기본 메타데이터 설정 + try { + const domain = new URL(block.bookmark.url).hostname; + blockWithChildren.bookmark.metadata = { + title: domain, + description: '', + image: '', + siteName: domain, + url: block.bookmark.url, + favicon: `https://www.google.com/s2/favicons?domain=${domain}&sz=64`, + }; + } catch (urlError) { + console.error('URL 파싱 중 오류:', urlError); + blockWithChildren.bookmark.metadata = { + title: block.bookmark.url, + description: '', + image: '', + siteName: '', + url: block.bookmark.url, + favicon: '', + }; + } + } + } + // 타입 가드를 사용하여 has_children 속성 확인 if (hasChildren(block)) { // 하위 블록 가져오기 diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 916f704..3e6d070 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -1,4 +1,4 @@ -lockfileVersion: '9.0' +lockfileVersion: '6.0' settings: autoInstallPeers: true @@ -201,6 +201,9 @@ importers: lqip-modern: specifier: ^2.2.1 version: 2.2.1 + open-graph-scraper: + specifier: ^6.9.0 + version: 6.9.0 probe-image-size: specifier: ^7.2.3 version: 7.2.3 @@ -232,683 +235,1259 @@ importers: packages: - '@adobe/css-tools@4.4.2': + /@adobe/css-tools@4.4.2: resolution: {integrity: sha512-baYZExFpsdkBNuvGKTKWCwKH57HRZLVtycZS05WTQNVOiXVSeAki3nU35zlRbToeMW8aHlJfyS+1C4BOv27q0A==} + dev: true - '@ampproject/remapping@2.3.0': + /@ampproject/remapping@2.3.0: resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==} engines: {node: '>=6.0.0'} + dependencies: + '@jridgewell/gen-mapping': 0.3.8 + '@jridgewell/trace-mapping': 0.3.25 + dev: true - '@asamuzakjp/css-color@2.8.3': + /@asamuzakjp/css-color@2.8.3: resolution: {integrity: sha512-GIc76d9UI1hCvOATjZPyHFmE5qhRccp3/zGfMPapK3jBi+yocEzp6BBB0UnfRYP9NP4FANqUZYb0hnfs3TM3hw==} + dependencies: + '@csstools/css-calc': 2.1.1(@csstools/css-parser-algorithms@3.0.4)(@csstools/css-tokenizer@3.0.3) + '@csstools/css-color-parser': 3.0.7(@csstools/css-parser-algorithms@3.0.4)(@csstools/css-tokenizer@3.0.3) + '@csstools/css-parser-algorithms': 3.0.4(@csstools/css-tokenizer@3.0.3) + '@csstools/css-tokenizer': 3.0.3 + lru-cache: 10.4.3 + dev: true - '@babel/code-frame@7.26.2': + /@babel/code-frame@7.26.2: resolution: {integrity: sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==} engines: {node: '>=6.9.0'} + dependencies: + '@babel/helper-validator-identifier': 7.25.9 + js-tokens: 4.0.0 + picocolors: 1.1.1 + dev: true - '@babel/compat-data@7.26.8': + /@babel/compat-data@7.26.8: resolution: {integrity: sha512-oH5UPLMWR3L2wEFLnFJ1TZXqHufiTKAiLfqw5zkhS4dKXLJ10yVztfil/twG8EDTA4F/tvVNw9nOl4ZMslB8rQ==} engines: {node: '>=6.9.0'} + dev: true - '@babel/core@7.26.9': + /@babel/core@7.26.9: resolution: {integrity: sha512-lWBYIrF7qK5+GjY5Uy+/hEgp8OJWOD/rpy74GplYRhEauvbHDeFB8t5hPOZxCZ0Oxf4Cc36tK51/l3ymJysrKw==} engines: {node: '>=6.9.0'} + dependencies: + '@ampproject/remapping': 2.3.0 + '@babel/code-frame': 7.26.2 + '@babel/generator': 7.26.9 + '@babel/helper-compilation-targets': 7.26.5 + '@babel/helper-module-transforms': 7.26.0(@babel/core@7.26.9) + '@babel/helpers': 7.26.9 + '@babel/parser': 7.26.9 + '@babel/template': 7.26.9 + '@babel/traverse': 7.26.9 + '@babel/types': 7.26.9 + convert-source-map: 2.0.0 + debug: 4.4.0 + gensync: 1.0.0-beta.2 + json5: 2.2.3 + semver: 6.3.1 + transitivePeerDependencies: + - supports-color + dev: true - '@babel/eslint-parser@7.26.8': + /@babel/eslint-parser@7.26.8(@babel/core@7.26.9)(eslint@8.57.1): resolution: {integrity: sha512-3tBctaHRW6xSub26z7n8uyOTwwUsCdvIug/oxBH9n6yCO5hMj2vwDJAo7RbBMKrM7P+W2j61zLKviJQFGOYKMg==} engines: {node: ^10.13.0 || ^12.13.0 || >=14.0.0} peerDependencies: '@babel/core': ^7.11.0 eslint: ^7.5.0 || ^8.0.0 || ^9.0.0 + dependencies: + '@babel/core': 7.26.9 + '@nicolo-ribaudo/eslint-scope-5-internals': 5.1.1-v1 + eslint: 8.57.1 + eslint-visitor-keys: 2.1.0 + semver: 6.3.1 + dev: true - '@babel/generator@7.26.9': + /@babel/generator@7.26.9: resolution: {integrity: sha512-kEWdzjOAUMW4hAyrzJ0ZaTOu9OmpyDIQicIh0zg0EEcEkYXZb2TjtBhnHi2ViX7PKwZqF4xwqfAm299/QMP3lg==} engines: {node: '>=6.9.0'} + dependencies: + '@babel/parser': 7.26.9 + '@babel/types': 7.26.9 + '@jridgewell/gen-mapping': 0.3.8 + '@jridgewell/trace-mapping': 0.3.25 + jsesc: 3.1.0 + dev: true - '@babel/helper-compilation-targets@7.26.5': + /@babel/helper-compilation-targets@7.26.5: resolution: {integrity: sha512-IXuyn5EkouFJscIDuFF5EsiSolseme1s0CZB+QxVugqJLYmKdxI1VfIBOst0SUu4rnk2Z7kqTwmoO1lp3HIfnA==} engines: {node: '>=6.9.0'} + dependencies: + '@babel/compat-data': 7.26.8 + '@babel/helper-validator-option': 7.25.9 + browserslist: 4.24.4 + lru-cache: 5.1.1 + semver: 6.3.1 + dev: true - '@babel/helper-module-imports@7.25.9': + /@babel/helper-module-imports@7.25.9: resolution: {integrity: sha512-tnUA4RsrmflIM6W6RFTLFSXITtl0wKjgpnLgXyowocVPrbYrLUXSBXDgTs8BlbmIzIdlBySRQjINYs2BAkiLtw==} engines: {node: '>=6.9.0'} + dependencies: + '@babel/traverse': 7.26.9 + '@babel/types': 7.26.9 + transitivePeerDependencies: + - supports-color + dev: true - '@babel/helper-module-transforms@7.26.0': + /@babel/helper-module-transforms@7.26.0(@babel/core@7.26.9): resolution: {integrity: sha512-xO+xu6B5K2czEnQye6BHA7DolFFmS3LB7stHZFaOLb1pAwO1HWLS8fXA+eh0A2yIvltPVmx3eNNDBJA2SLHXFw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 + dependencies: + '@babel/core': 7.26.9 + '@babel/helper-module-imports': 7.25.9 + '@babel/helper-validator-identifier': 7.25.9 + '@babel/traverse': 7.26.9 + transitivePeerDependencies: + - supports-color + dev: true - '@babel/helper-plugin-utils@7.26.5': + /@babel/helper-plugin-utils@7.26.5: resolution: {integrity: sha512-RS+jZcRdZdRFzMyr+wcsaqOmld1/EqTghfaBGQQd/WnRdzdlvSZ//kF7U8VQTxf1ynZ4cjUcYgjVGx13ewNPMg==} engines: {node: '>=6.9.0'} + dev: true - '@babel/helper-string-parser@7.25.9': + /@babel/helper-string-parser@7.25.9: resolution: {integrity: sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA==} engines: {node: '>=6.9.0'} + dev: true - '@babel/helper-validator-identifier@7.25.9': + /@babel/helper-validator-identifier@7.25.9: resolution: {integrity: sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==} engines: {node: '>=6.9.0'} + dev: true - '@babel/helper-validator-option@7.25.9': + /@babel/helper-validator-option@7.25.9: resolution: {integrity: sha512-e/zv1co8pp55dNdEcCynfj9X7nyUKUXoUEwfXqaZt0omVOmDe9oOTdKStH4GmAw6zxMFs50ZayuMfHDKlO7Tfw==} engines: {node: '>=6.9.0'} + dev: true - '@babel/helpers@7.26.9': + /@babel/helpers@7.26.9: resolution: {integrity: sha512-Mz/4+y8udxBKdmzt/UjPACs4G3j5SshJJEFFKxlCGPydG4JAHXxjWjAwjd09tf6oINvl1VfMJo+nB7H2YKQ0dA==} engines: {node: '>=6.9.0'} + dependencies: + '@babel/template': 7.26.9 + '@babel/types': 7.26.9 + dev: true - '@babel/parser@7.26.9': + /@babel/parser@7.26.9: resolution: {integrity: sha512-81NWa1njQblgZbQHxWHpxxCzNsa3ZwvFqpUg7P+NNUU6f3UU2jBEg4OlF/J6rl8+PQGh1q6/zWScd001YwcA5A==} engines: {node: '>=6.0.0'} hasBin: true + dependencies: + '@babel/types': 7.26.9 + dev: true - '@babel/plugin-syntax-typescript@7.25.9': + /@babel/plugin-syntax-typescript@7.25.9(@babel/core@7.26.9): resolution: {integrity: sha512-hjMgRy5hb8uJJjUcdWunWVcoi9bGpJp8p5Ol1229PoN6aytsLwNMgmdftO23wnCLMfVmTwZDWMPNq/D1SY60JQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.26.9 + '@babel/helper-plugin-utils': 7.26.5 + dev: true - '@babel/plugin-transform-react-jsx-self@7.25.9': + /@babel/plugin-transform-react-jsx-self@7.25.9(@babel/core@7.26.9): resolution: {integrity: sha512-y8quW6p0WHkEhmErnfe58r7x0A70uKphQm8Sp8cV7tjNQwK56sNVK0M73LK3WuYmsuyrftut4xAkjjgU0twaMg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.26.9 + '@babel/helper-plugin-utils': 7.26.5 + dev: true - '@babel/plugin-transform-react-jsx-source@7.25.9': + /@babel/plugin-transform-react-jsx-source@7.25.9(@babel/core@7.26.9): resolution: {integrity: sha512-+iqjT8xmXhhYv4/uiYd8FNQsraMFZIfxVSqxxVSZP0WbbSAWvBXAul0m/zu+7Vv4O/3WtApy9pmaTMiumEZgfg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.26.9 + '@babel/helper-plugin-utils': 7.26.5 + dev: true - '@babel/runtime@7.26.9': + /@babel/runtime@7.26.9: resolution: {integrity: sha512-aA63XwOkcl4xxQa3HjPMqOP6LiK0ZDv3mUPYEFXkpHbaFjtGggE1A61FjFzJnB+p7/oy2gA8E+rcBNl/zC1tMg==} engines: {node: '>=6.9.0'} + dependencies: + regenerator-runtime: 0.14.1 - '@babel/template@7.26.9': + /@babel/template@7.26.9: resolution: {integrity: sha512-qyRplbeIpNZhmzOysF/wFMuP9sctmh2cFzRAZOn1YapxBsE1i9bJIY586R/WBLfLcmcBlM8ROBiQURnnNy+zfA==} engines: {node: '>=6.9.0'} + dependencies: + '@babel/code-frame': 7.26.2 + '@babel/parser': 7.26.9 + '@babel/types': 7.26.9 + dev: true - '@babel/traverse@7.26.9': + /@babel/traverse@7.26.9: resolution: {integrity: sha512-ZYW7L+pL8ahU5fXmNbPF+iZFHCv5scFak7MZ9bwaRPLUhHh7QQEMjZUg0HevihoqCM5iSYHN61EyCoZvqC+bxg==} engines: {node: '>=6.9.0'} + dependencies: + '@babel/code-frame': 7.26.2 + '@babel/generator': 7.26.9 + '@babel/parser': 7.26.9 + '@babel/template': 7.26.9 + '@babel/types': 7.26.9 + debug: 4.4.0 + globals: 11.12.0 + transitivePeerDependencies: + - supports-color + dev: true - '@babel/types@7.26.9': + /@babel/types@7.26.9: resolution: {integrity: sha512-Y3IR1cRnOxOCDvMmNiym7XpXQ93iGDDPHx+Zj+NM+rg0fBaShfQLkg+hKPaZCEvg5N/LeCo4+Rj/i3FuJsIQaw==} engines: {node: '>=6.9.0'} + dependencies: + '@babel/helper-string-parser': 7.25.9 + '@babel/helper-validator-identifier': 7.25.9 + dev: true - '@bcoe/v8-coverage@0.2.3': + /@bcoe/v8-coverage@0.2.3: resolution: {integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==} + dev: true - '@changesets/apply-release-plan@7.0.10': + /@changesets/apply-release-plan@7.0.10: resolution: {integrity: sha512-wNyeIJ3yDsVspYvHnEz1xQDq18D9ifed3lI+wxRQRK4pArUcuHgCTrHv0QRnnwjhVCQACxZ+CBih3wgOct6UXw==} + dependencies: + '@changesets/config': 3.1.1 + '@changesets/get-version-range-type': 0.4.0 + '@changesets/git': 3.0.2 + '@changesets/should-skip-package': 0.1.2 + '@changesets/types': 6.1.0 + '@manypkg/get-packages': 1.1.3 + detect-indent: 6.1.0 + fs-extra: 7.0.1 + lodash.startcase: 4.4.0 + outdent: 0.5.0 + prettier: 2.8.8 + resolve-from: 5.0.0 + semver: 7.7.1 + dev: true - '@changesets/assemble-release-plan@6.0.6': + /@changesets/assemble-release-plan@6.0.6: resolution: {integrity: sha512-Frkj8hWJ1FRZiY3kzVCKzS0N5mMwWKwmv9vpam7vt8rZjLL1JMthdh6pSDVSPumHPshTTkKZ0VtNbE0cJHZZUg==} + dependencies: + '@changesets/errors': 0.2.0 + '@changesets/get-dependents-graph': 2.1.3 + '@changesets/should-skip-package': 0.1.2 + '@changesets/types': 6.1.0 + '@manypkg/get-packages': 1.1.3 + semver: 7.7.1 + dev: true - '@changesets/changelog-git@0.2.1': + /@changesets/changelog-git@0.2.1: resolution: {integrity: sha512-x/xEleCFLH28c3bQeQIyeZf8lFXyDFVn1SgcBiR2Tw/r4IAWlk1fzxCEZ6NxQAjF2Nwtczoen3OA2qR+UawQ8Q==} + dependencies: + '@changesets/types': 6.1.0 + dev: true - '@changesets/cli@2.28.1': + /@changesets/cli@2.28.1: resolution: {integrity: sha512-PiIyGRmSc6JddQJe/W1hRPjiN4VrMvb2VfQ6Uydy2punBioQrsxppyG5WafinKcW1mT0jOe/wU4k9Zy5ff21AA==} hasBin: true + dependencies: + '@changesets/apply-release-plan': 7.0.10 + '@changesets/assemble-release-plan': 6.0.6 + '@changesets/changelog-git': 0.2.1 + '@changesets/config': 3.1.1 + '@changesets/errors': 0.2.0 + '@changesets/get-dependents-graph': 2.1.3 + '@changesets/get-release-plan': 4.0.8 + '@changesets/git': 3.0.2 + '@changesets/logger': 0.1.1 + '@changesets/pre': 2.0.2 + '@changesets/read': 0.6.3 + '@changesets/should-skip-package': 0.1.2 + '@changesets/types': 6.1.0 + '@changesets/write': 0.4.0 + '@manypkg/get-packages': 1.1.3 + ansi-colors: 4.1.3 + ci-info: 3.9.0 + enquirer: 2.4.1 + external-editor: 3.1.0 + fs-extra: 7.0.1 + mri: 1.2.0 + p-limit: 2.3.0 + package-manager-detector: 0.2.9 + picocolors: 1.1.1 + resolve-from: 5.0.0 + semver: 7.7.1 + spawndamnit: 3.0.1 + term-size: 2.2.1 + dev: true - '@changesets/config@3.1.1': + /@changesets/config@3.1.1: resolution: {integrity: sha512-bd+3Ap2TKXxljCggI0mKPfzCQKeV/TU4yO2h2C6vAihIo8tzseAn2e7klSuiyYYXvgu53zMN1OeYMIQkaQoWnA==} + dependencies: + '@changesets/errors': 0.2.0 + '@changesets/get-dependents-graph': 2.1.3 + '@changesets/logger': 0.1.1 + '@changesets/types': 6.1.0 + '@manypkg/get-packages': 1.1.3 + fs-extra: 7.0.1 + micromatch: 4.0.8 + dev: true - '@changesets/errors@0.2.0': + /@changesets/errors@0.2.0: resolution: {integrity: sha512-6BLOQUscTpZeGljvyQXlWOItQyU71kCdGz7Pi8H8zdw6BI0g3m43iL4xKUVPWtG+qrrL9DTjpdn8eYuCQSRpow==} + dependencies: + extendable-error: 0.1.7 + dev: true - '@changesets/get-dependents-graph@2.1.3': + /@changesets/get-dependents-graph@2.1.3: resolution: {integrity: sha512-gphr+v0mv2I3Oxt19VdWRRUxq3sseyUpX9DaHpTUmLj92Y10AGy+XOtV+kbM6L/fDcpx7/ISDFK6T8A/P3lOdQ==} + dependencies: + '@changesets/types': 6.1.0 + '@manypkg/get-packages': 1.1.3 + picocolors: 1.1.1 + semver: 7.7.1 + dev: true - '@changesets/get-release-plan@4.0.8': + /@changesets/get-release-plan@4.0.8: resolution: {integrity: sha512-MM4mq2+DQU1ZT7nqxnpveDMTkMBLnwNX44cX7NSxlXmr7f8hO6/S2MXNiXG54uf/0nYnefv0cfy4Czf/ZL/EKQ==} + dependencies: + '@changesets/assemble-release-plan': 6.0.6 + '@changesets/config': 3.1.1 + '@changesets/pre': 2.0.2 + '@changesets/read': 0.6.3 + '@changesets/types': 6.1.0 + '@manypkg/get-packages': 1.1.3 + dev: true - '@changesets/get-version-range-type@0.4.0': + /@changesets/get-version-range-type@0.4.0: resolution: {integrity: sha512-hwawtob9DryoGTpixy1D3ZXbGgJu1Rhr+ySH2PvTLHvkZuQ7sRT4oQwMh0hbqZH1weAooedEjRsbrWcGLCeyVQ==} + dev: true - '@changesets/git@3.0.2': + /@changesets/git@3.0.2: resolution: {integrity: sha512-r1/Kju9Y8OxRRdvna+nxpQIsMsRQn9dhhAZt94FLDeu0Hij2hnOozW8iqnHBgvu+KdnJppCveQwK4odwfw/aWQ==} + dependencies: + '@changesets/errors': 0.2.0 + '@manypkg/get-packages': 1.1.3 + is-subdir: 1.2.0 + micromatch: 4.0.8 + spawndamnit: 3.0.1 + dev: true - '@changesets/logger@0.1.1': + /@changesets/logger@0.1.1: resolution: {integrity: sha512-OQtR36ZlnuTxKqoW4Sv6x5YIhOmClRd5pWsjZsddYxpWs517R0HkyiefQPIytCVh4ZcC5x9XaG8KTdd5iRQUfg==} + dependencies: + picocolors: 1.1.1 + dev: true - '@changesets/parse@0.4.1': + /@changesets/parse@0.4.1: resolution: {integrity: sha512-iwksMs5Bf/wUItfcg+OXrEpravm5rEd9Bf4oyIPL4kVTmJQ7PNDSd6MDYkpSJR1pn7tz/k8Zf2DhTCqX08Ou+Q==} + dependencies: + '@changesets/types': 6.1.0 + js-yaml: 3.14.1 + dev: true - '@changesets/pre@2.0.2': + /@changesets/pre@2.0.2: resolution: {integrity: sha512-HaL/gEyFVvkf9KFg6484wR9s0qjAXlZ8qWPDkTyKF6+zqjBe/I2mygg3MbpZ++hdi0ToqNUF8cjj7fBy0dg8Ug==} + dependencies: + '@changesets/errors': 0.2.0 + '@changesets/types': 6.1.0 + '@manypkg/get-packages': 1.1.3 + fs-extra: 7.0.1 + dev: true - '@changesets/read@0.6.3': + /@changesets/read@0.6.3: resolution: {integrity: sha512-9H4p/OuJ3jXEUTjaVGdQEhBdqoT2cO5Ts95JTFsQyawmKzpL8FnIeJSyhTDPW1MBRDnwZlHFEM9SpPwJDY5wIg==} + dependencies: + '@changesets/git': 3.0.2 + '@changesets/logger': 0.1.1 + '@changesets/parse': 0.4.1 + '@changesets/types': 6.1.0 + fs-extra: 7.0.1 + p-filter: 2.1.0 + picocolors: 1.1.1 + dev: true - '@changesets/should-skip-package@0.1.2': + /@changesets/should-skip-package@0.1.2: resolution: {integrity: sha512-qAK/WrqWLNCP22UDdBTMPH5f41elVDlsNyat180A33dWxuUDyNpg6fPi/FyTZwRriVjg0L8gnjJn2F9XAoF0qw==} + dependencies: + '@changesets/types': 6.1.0 + '@manypkg/get-packages': 1.1.3 + dev: true - '@changesets/types@4.1.0': + /@changesets/types@4.1.0: resolution: {integrity: sha512-LDQvVDv5Kb50ny2s25Fhm3d9QSZimsoUGBsUioj6MC3qbMUCuC8GPIvk/M6IvXx3lYhAs0lwWUQLb+VIEUCECw==} + dev: true - '@changesets/types@6.1.0': + /@changesets/types@6.1.0: resolution: {integrity: sha512-rKQcJ+o1nKNgeoYRHKOS07tAMNd3YSN0uHaJOZYjBAgxfV7TUE7JE+z4BzZdQwb5hKaYbayKN5KrYV7ODb2rAA==} + dev: true - '@changesets/write@0.4.0': + /@changesets/write@0.4.0: resolution: {integrity: sha512-CdTLvIOPiCNuH71pyDu3rA+Q0n65cmAbXnwWH84rKGiFumFzkmHNT8KHTMEchcxN+Kl8I54xGUhJ7l3E7X396Q==} + dependencies: + '@changesets/types': 6.1.0 + fs-extra: 7.0.1 + human-id: 4.1.1 + prettier: 2.8.8 + dev: true - '@chromatic-com/storybook@3.2.4': + /@chromatic-com/storybook@3.2.4(react@18.3.1)(storybook@8.6.0-alpha.0): resolution: {integrity: sha512-5/bOOYxfwZ2BktXeqcCpOVAoR6UCoeART5t9FVy22hoo8F291zOuX4y3SDgm10B1GVU/ZTtJWPT2X9wZFlxYLg==} engines: {node: '>=16.0.0', yarn: '>=1.22.18'} peerDependencies: storybook: ^8.2.0 || ^8.3.0-0 || ^8.4.0-0 || ^8.5.0-0 || ^8.6.0-0 + dependencies: + chromatic: 11.25.2 + filesize: 10.1.6 + jsonfile: 6.1.0 + react-confetti: 6.2.2(react@18.3.1) + storybook: 8.6.0-alpha.0(prettier@3.5.2) + strip-ansi: 7.1.0 + transitivePeerDependencies: + - '@chromatic-com/cypress' + - '@chromatic-com/playwright' + - react + dev: true - '@csstools/color-helpers@5.0.1': + /@csstools/color-helpers@5.0.1: resolution: {integrity: sha512-MKtmkA0BX87PKaO1NFRTFH+UnkgnmySQOvNxJubsadusqPEC2aJ9MOQiMceZJJ6oitUl/i0L6u0M1IrmAOmgBA==} engines: {node: '>=18'} + dev: true - '@csstools/css-calc@2.1.1': + /@csstools/css-calc@2.1.1(@csstools/css-parser-algorithms@3.0.4)(@csstools/css-tokenizer@3.0.3): resolution: {integrity: sha512-rL7kaUnTkL9K+Cvo2pnCieqNpTKgQzy5f+N+5Iuko9HAoasP+xgprVh7KN/MaJVvVL1l0EzQq2MoqBHKSrDrag==} engines: {node: '>=18'} peerDependencies: '@csstools/css-parser-algorithms': ^3.0.4 '@csstools/css-tokenizer': ^3.0.3 + dependencies: + '@csstools/css-parser-algorithms': 3.0.4(@csstools/css-tokenizer@3.0.3) + '@csstools/css-tokenizer': 3.0.3 + dev: true - '@csstools/css-color-parser@3.0.7': + /@csstools/css-color-parser@3.0.7(@csstools/css-parser-algorithms@3.0.4)(@csstools/css-tokenizer@3.0.3): resolution: {integrity: sha512-nkMp2mTICw32uE5NN+EsJ4f5N+IGFeCFu4bGpiKgb2Pq/7J/MpyLBeQ5ry4KKtRFZaYs6sTmcMYrSRIyj5DFKA==} engines: {node: '>=18'} peerDependencies: '@csstools/css-parser-algorithms': ^3.0.4 '@csstools/css-tokenizer': ^3.0.3 + dependencies: + '@csstools/color-helpers': 5.0.1 + '@csstools/css-calc': 2.1.1(@csstools/css-parser-algorithms@3.0.4)(@csstools/css-tokenizer@3.0.3) + '@csstools/css-parser-algorithms': 3.0.4(@csstools/css-tokenizer@3.0.3) + '@csstools/css-tokenizer': 3.0.3 + dev: true - '@csstools/css-parser-algorithms@3.0.4': + /@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3): resolution: {integrity: sha512-Up7rBoV77rv29d3uKHUIVubz1BTcgyUK72IvCQAbfbMv584xHcGKCKbWh7i8hPrRJ7qU4Y8IO3IY9m+iTB7P3A==} engines: {node: '>=18'} peerDependencies: '@csstools/css-tokenizer': ^3.0.3 + dependencies: + '@csstools/css-tokenizer': 3.0.3 + dev: true - '@csstools/css-tokenizer@3.0.3': + /@csstools/css-tokenizer@3.0.3: resolution: {integrity: sha512-UJnjoFsmxfKUdNYdWgOB0mWUypuLvAfQPH1+pyvRJs6euowbFkFC6P13w1l8mJyi3vxYMxc9kld5jZEGRQs6bw==} engines: {node: '>=18'} + dev: true - '@emnapi/runtime@1.3.1': + /@emnapi/runtime@1.3.1: resolution: {integrity: sha512-kEBmG8KyqtxJZv+ygbEim+KCGtIq1fC22Ms3S4ziXmYKm8uyoLX0MHONVKwp+9opg390VaKRNt4a7A9NwmpNhw==} + requiresBuild: true + dependencies: + tslib: 2.8.1 + dev: false + optional: true - '@emotion/hash@0.9.2': + /@emotion/hash@0.9.2: resolution: {integrity: sha512-MyqliTZGuOm3+5ZRSaaBGP3USLw6+EGykkwZns2EPC5g8jJ4z9OrdZY9apkl3+UP9+sdz76YYkwCKP5gh8iY3g==} - '@esbuild/aix-ppc64@0.21.5': + /@esbuild/aix-ppc64@0.21.5: resolution: {integrity: sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==} engines: {node: '>=12'} cpu: [ppc64] os: [aix] + requiresBuild: true + dev: true + optional: true - '@esbuild/aix-ppc64@0.24.2': + /@esbuild/aix-ppc64@0.24.2: resolution: {integrity: sha512-thpVCb/rhxE/BnMLQ7GReQLLN8q9qbHmI55F4489/ByVg2aQaQ6kbcLb6FHkocZzQhxc4gx0sCk0tJkKBFzDhA==} engines: {node: '>=18'} cpu: [ppc64] os: [aix] + requiresBuild: true + dev: true + optional: true - '@esbuild/android-arm64@0.21.5': + /@esbuild/android-arm64@0.21.5: resolution: {integrity: sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==} engines: {node: '>=12'} cpu: [arm64] os: [android] + requiresBuild: true + dev: true + optional: true - '@esbuild/android-arm64@0.24.2': + /@esbuild/android-arm64@0.24.2: resolution: {integrity: sha512-cNLgeqCqV8WxfcTIOeL4OAtSmL8JjcN6m09XIgro1Wi7cF4t/THaWEa7eL5CMoMBdjoHOTh/vwTO/o2TRXIyzg==} engines: {node: '>=18'} cpu: [arm64] os: [android] + requiresBuild: true + dev: true + optional: true - '@esbuild/android-arm@0.21.5': + /@esbuild/android-arm@0.21.5: resolution: {integrity: sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==} engines: {node: '>=12'} cpu: [arm] os: [android] + requiresBuild: true + dev: true + optional: true - '@esbuild/android-arm@0.24.2': + /@esbuild/android-arm@0.24.2: resolution: {integrity: sha512-tmwl4hJkCfNHwFB3nBa8z1Uy3ypZpxqxfTQOcHX+xRByyYgunVbZ9MzUUfb0RxaHIMnbHagwAxuTL+tnNM+1/Q==} engines: {node: '>=18'} cpu: [arm] os: [android] + requiresBuild: true + dev: true + optional: true - '@esbuild/android-x64@0.21.5': + /@esbuild/android-x64@0.21.5: resolution: {integrity: sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==} engines: {node: '>=12'} cpu: [x64] os: [android] + requiresBuild: true + dev: true + optional: true - '@esbuild/android-x64@0.24.2': + /@esbuild/android-x64@0.24.2: resolution: {integrity: sha512-B6Q0YQDqMx9D7rvIcsXfmJfvUYLoP722bgfBlO5cGvNVb5V/+Y7nhBE3mHV9OpxBf4eAS2S68KZztiPaWq4XYw==} engines: {node: '>=18'} cpu: [x64] os: [android] + requiresBuild: true + dev: true + optional: true - '@esbuild/darwin-arm64@0.21.5': + /@esbuild/darwin-arm64@0.21.5: resolution: {integrity: sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==} engines: {node: '>=12'} cpu: [arm64] os: [darwin] + requiresBuild: true + dev: true + optional: true - '@esbuild/darwin-arm64@0.24.2': + /@esbuild/darwin-arm64@0.24.2: resolution: {integrity: sha512-kj3AnYWc+CekmZnS5IPu9D+HWtUI49hbnyqk0FLEJDbzCIQt7hg7ucF1SQAilhtYpIujfaHr6O0UHlzzSPdOeA==} engines: {node: '>=18'} cpu: [arm64] os: [darwin] + requiresBuild: true + dev: true + optional: true - '@esbuild/darwin-x64@0.21.5': + /@esbuild/darwin-x64@0.21.5: resolution: {integrity: sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==} engines: {node: '>=12'} cpu: [x64] os: [darwin] + requiresBuild: true + dev: true + optional: true - '@esbuild/darwin-x64@0.24.2': + /@esbuild/darwin-x64@0.24.2: resolution: {integrity: sha512-WeSrmwwHaPkNR5H3yYfowhZcbriGqooyu3zI/3GGpF8AyUdsrrP0X6KumITGA9WOyiJavnGZUwPGvxvwfWPHIA==} engines: {node: '>=18'} cpu: [x64] os: [darwin] + requiresBuild: true + dev: true + optional: true - '@esbuild/freebsd-arm64@0.21.5': + /@esbuild/freebsd-arm64@0.21.5: resolution: {integrity: sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==} engines: {node: '>=12'} cpu: [arm64] os: [freebsd] + requiresBuild: true + dev: true + optional: true - '@esbuild/freebsd-arm64@0.24.2': + /@esbuild/freebsd-arm64@0.24.2: resolution: {integrity: sha512-UN8HXjtJ0k/Mj6a9+5u6+2eZ2ERD7Edt1Q9IZiB5UZAIdPnVKDoG7mdTVGhHJIeEml60JteamR3qhsr1r8gXvg==} engines: {node: '>=18'} cpu: [arm64] os: [freebsd] + requiresBuild: true + dev: true + optional: true - '@esbuild/freebsd-x64@0.21.5': + /@esbuild/freebsd-x64@0.21.5: resolution: {integrity: sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==} engines: {node: '>=12'} cpu: [x64] os: [freebsd] + requiresBuild: true + dev: true + optional: true - '@esbuild/freebsd-x64@0.24.2': + /@esbuild/freebsd-x64@0.24.2: resolution: {integrity: sha512-TvW7wE/89PYW+IevEJXZ5sF6gJRDY/14hyIGFXdIucxCsbRmLUcjseQu1SyTko+2idmCw94TgyaEZi9HUSOe3Q==} engines: {node: '>=18'} cpu: [x64] os: [freebsd] + requiresBuild: true + dev: true + optional: true - '@esbuild/linux-arm64@0.21.5': + /@esbuild/linux-arm64@0.21.5: resolution: {integrity: sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==} engines: {node: '>=12'} cpu: [arm64] os: [linux] + requiresBuild: true + dev: true + optional: true - '@esbuild/linux-arm64@0.24.2': + /@esbuild/linux-arm64@0.24.2: resolution: {integrity: sha512-7HnAD6074BW43YvvUmE/35Id9/NB7BeX5EoNkK9obndmZBUk8xmJJeU7DwmUeN7tkysslb2eSl6CTrYz6oEMQg==} engines: {node: '>=18'} cpu: [arm64] os: [linux] + requiresBuild: true + dev: true + optional: true - '@esbuild/linux-arm@0.21.5': + /@esbuild/linux-arm@0.21.5: resolution: {integrity: sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==} engines: {node: '>=12'} cpu: [arm] os: [linux] + requiresBuild: true + dev: true + optional: true - '@esbuild/linux-arm@0.24.2': + /@esbuild/linux-arm@0.24.2: resolution: {integrity: sha512-n0WRM/gWIdU29J57hJyUdIsk0WarGd6To0s+Y+LwvlC55wt+GT/OgkwoXCXvIue1i1sSNWblHEig00GBWiJgfA==} engines: {node: '>=18'} cpu: [arm] os: [linux] + requiresBuild: true + dev: true + optional: true - '@esbuild/linux-ia32@0.21.5': + /@esbuild/linux-ia32@0.21.5: resolution: {integrity: sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==} engines: {node: '>=12'} cpu: [ia32] os: [linux] + requiresBuild: true + dev: true + optional: true - '@esbuild/linux-ia32@0.24.2': + /@esbuild/linux-ia32@0.24.2: resolution: {integrity: sha512-sfv0tGPQhcZOgTKO3oBE9xpHuUqguHvSo4jl+wjnKwFpapx+vUDcawbwPNuBIAYdRAvIDBfZVvXprIj3HA+Ugw==} engines: {node: '>=18'} cpu: [ia32] os: [linux] + requiresBuild: true + dev: true + optional: true - '@esbuild/linux-loong64@0.21.5': + /@esbuild/linux-loong64@0.21.5: resolution: {integrity: sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==} engines: {node: '>=12'} cpu: [loong64] os: [linux] + requiresBuild: true + dev: true + optional: true - '@esbuild/linux-loong64@0.24.2': + /@esbuild/linux-loong64@0.24.2: resolution: {integrity: sha512-CN9AZr8kEndGooS35ntToZLTQLHEjtVB5n7dl8ZcTZMonJ7CCfStrYhrzF97eAecqVbVJ7APOEe18RPI4KLhwQ==} engines: {node: '>=18'} cpu: [loong64] os: [linux] + requiresBuild: true + dev: true + optional: true - '@esbuild/linux-mips64el@0.21.5': + /@esbuild/linux-mips64el@0.21.5: resolution: {integrity: sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==} engines: {node: '>=12'} cpu: [mips64el] os: [linux] + requiresBuild: true + dev: true + optional: true - '@esbuild/linux-mips64el@0.24.2': + /@esbuild/linux-mips64el@0.24.2: resolution: {integrity: sha512-iMkk7qr/wl3exJATwkISxI7kTcmHKE+BlymIAbHO8xanq/TjHaaVThFF6ipWzPHryoFsesNQJPE/3wFJw4+huw==} engines: {node: '>=18'} cpu: [mips64el] os: [linux] + requiresBuild: true + dev: true + optional: true - '@esbuild/linux-ppc64@0.21.5': + /@esbuild/linux-ppc64@0.21.5: resolution: {integrity: sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==} engines: {node: '>=12'} cpu: [ppc64] os: [linux] + requiresBuild: true + dev: true + optional: true - '@esbuild/linux-ppc64@0.24.2': + /@esbuild/linux-ppc64@0.24.2: resolution: {integrity: sha512-shsVrgCZ57Vr2L8mm39kO5PPIb+843FStGt7sGGoqiiWYconSxwTiuswC1VJZLCjNiMLAMh34jg4VSEQb+iEbw==} engines: {node: '>=18'} cpu: [ppc64] os: [linux] + requiresBuild: true + dev: true + optional: true - '@esbuild/linux-riscv64@0.21.5': + /@esbuild/linux-riscv64@0.21.5: resolution: {integrity: sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==} engines: {node: '>=12'} cpu: [riscv64] os: [linux] + requiresBuild: true + dev: true + optional: true - '@esbuild/linux-riscv64@0.24.2': + /@esbuild/linux-riscv64@0.24.2: resolution: {integrity: sha512-4eSFWnU9Hhd68fW16GD0TINewo1L6dRrB+oLNNbYyMUAeOD2yCK5KXGK1GH4qD/kT+bTEXjsyTCiJGHPZ3eM9Q==} engines: {node: '>=18'} cpu: [riscv64] os: [linux] + requiresBuild: true + dev: true + optional: true - '@esbuild/linux-s390x@0.21.5': + /@esbuild/linux-s390x@0.21.5: resolution: {integrity: sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==} engines: {node: '>=12'} cpu: [s390x] os: [linux] + requiresBuild: true + dev: true + optional: true - '@esbuild/linux-s390x@0.24.2': + /@esbuild/linux-s390x@0.24.2: resolution: {integrity: sha512-S0Bh0A53b0YHL2XEXC20bHLuGMOhFDO6GN4b3YjRLK//Ep3ql3erpNcPlEFed93hsQAjAQDNsvcK+hV90FubSw==} engines: {node: '>=18'} cpu: [s390x] os: [linux] + requiresBuild: true + dev: true + optional: true - '@esbuild/linux-x64@0.21.5': + /@esbuild/linux-x64@0.21.5: resolution: {integrity: sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==} engines: {node: '>=12'} cpu: [x64] os: [linux] + requiresBuild: true + dev: true + optional: true - '@esbuild/linux-x64@0.24.2': + /@esbuild/linux-x64@0.24.2: resolution: {integrity: sha512-8Qi4nQcCTbLnK9WoMjdC9NiTG6/E38RNICU6sUNqK0QFxCYgoARqVqxdFmWkdonVsvGqWhmm7MO0jyTqLqwj0Q==} engines: {node: '>=18'} cpu: [x64] os: [linux] + requiresBuild: true + dev: true + optional: true - '@esbuild/netbsd-arm64@0.24.2': + /@esbuild/netbsd-arm64@0.24.2: resolution: {integrity: sha512-wuLK/VztRRpMt9zyHSazyCVdCXlpHkKm34WUyinD2lzK07FAHTq0KQvZZlXikNWkDGoT6x3TD51jKQ7gMVpopw==} engines: {node: '>=18'} cpu: [arm64] os: [netbsd] + requiresBuild: true + dev: true + optional: true - '@esbuild/netbsd-x64@0.21.5': + /@esbuild/netbsd-x64@0.21.5: resolution: {integrity: sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==} engines: {node: '>=12'} cpu: [x64] os: [netbsd] + requiresBuild: true + dev: true + optional: true - '@esbuild/netbsd-x64@0.24.2': + /@esbuild/netbsd-x64@0.24.2: resolution: {integrity: sha512-VefFaQUc4FMmJuAxmIHgUmfNiLXY438XrL4GDNV1Y1H/RW3qow68xTwjZKfj/+Plp9NANmzbH5R40Meudu8mmw==} engines: {node: '>=18'} cpu: [x64] os: [netbsd] + requiresBuild: true + dev: true + optional: true - '@esbuild/openbsd-arm64@0.24.2': + /@esbuild/openbsd-arm64@0.24.2: resolution: {integrity: sha512-YQbi46SBct6iKnszhSvdluqDmxCJA+Pu280Av9WICNwQmMxV7nLRHZfjQzwbPs3jeWnuAhE9Jy0NrnJ12Oz+0A==} engines: {node: '>=18'} cpu: [arm64] os: [openbsd] + requiresBuild: true + dev: true + optional: true - '@esbuild/openbsd-x64@0.21.5': + /@esbuild/openbsd-x64@0.21.5: resolution: {integrity: sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==} engines: {node: '>=12'} cpu: [x64] os: [openbsd] + requiresBuild: true + dev: true + optional: true - '@esbuild/openbsd-x64@0.24.2': + /@esbuild/openbsd-x64@0.24.2: resolution: {integrity: sha512-+iDS6zpNM6EnJyWv0bMGLWSWeXGN/HTaF/LXHXHwejGsVi+ooqDfMCCTerNFxEkM3wYVcExkeGXNqshc9iMaOA==} engines: {node: '>=18'} cpu: [x64] os: [openbsd] + requiresBuild: true + dev: true + optional: true - '@esbuild/sunos-x64@0.21.5': + /@esbuild/sunos-x64@0.21.5: resolution: {integrity: sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==} engines: {node: '>=12'} cpu: [x64] os: [sunos] + requiresBuild: true + dev: true + optional: true - '@esbuild/sunos-x64@0.24.2': + /@esbuild/sunos-x64@0.24.2: resolution: {integrity: sha512-hTdsW27jcktEvpwNHJU4ZwWFGkz2zRJUz8pvddmXPtXDzVKTTINmlmga3ZzwcuMpUvLw7JkLy9QLKyGpD2Yxig==} engines: {node: '>=18'} cpu: [x64] os: [sunos] + requiresBuild: true + dev: true + optional: true - '@esbuild/win32-arm64@0.21.5': + /@esbuild/win32-arm64@0.21.5: resolution: {integrity: sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==} engines: {node: '>=12'} cpu: [arm64] os: [win32] + requiresBuild: true + dev: true + optional: true - '@esbuild/win32-arm64@0.24.2': + /@esbuild/win32-arm64@0.24.2: resolution: {integrity: sha512-LihEQ2BBKVFLOC9ZItT9iFprsE9tqjDjnbulhHoFxYQtQfai7qfluVODIYxt1PgdoyQkz23+01rzwNwYfutxUQ==} engines: {node: '>=18'} cpu: [arm64] os: [win32] + requiresBuild: true + dev: true + optional: true - '@esbuild/win32-ia32@0.21.5': + /@esbuild/win32-ia32@0.21.5: resolution: {integrity: sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==} engines: {node: '>=12'} cpu: [ia32] os: [win32] + requiresBuild: true + dev: true + optional: true - '@esbuild/win32-ia32@0.24.2': + /@esbuild/win32-ia32@0.24.2: resolution: {integrity: sha512-q+iGUwfs8tncmFC9pcnD5IvRHAzmbwQ3GPS5/ceCyHdjXubwQWI12MKWSNSMYLJMq23/IUCvJMS76PDqXe1fxA==} engines: {node: '>=18'} cpu: [ia32] os: [win32] + requiresBuild: true + dev: true + optional: true - '@esbuild/win32-x64@0.21.5': + /@esbuild/win32-x64@0.21.5: resolution: {integrity: sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==} engines: {node: '>=12'} cpu: [x64] os: [win32] + requiresBuild: true + dev: true + optional: true - '@esbuild/win32-x64@0.24.2': + /@esbuild/win32-x64@0.24.2: resolution: {integrity: sha512-7VTgWzgMGvup6aSqDPLiW5zHaxYJGTO4OokMjIlrCtf+VpEL+cXKtCvg723iguPYI5oaUNdS+/V7OU2gvXVWEg==} engines: {node: '>=18'} cpu: [x64] os: [win32] + requiresBuild: true + dev: true + optional: true - '@eslint-community/eslint-utils@4.4.1': + /@eslint-community/eslint-utils@4.4.1(eslint@8.57.1): resolution: {integrity: sha512-s3O3waFUrMV8P/XaF/+ZTp1X9XBZW1a4B97ZnjQF2KYWaFD2A8KyFBsrsfSjEmjn3RGWAIuvlneuZm3CUK3jbA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 + dependencies: + eslint: 8.57.1 + eslint-visitor-keys: 3.4.3 + dev: true + + /@eslint-community/eslint-utils@4.4.1(eslint@9.21.0): + resolution: {integrity: sha512-s3O3waFUrMV8P/XaF/+ZTp1X9XBZW1a4B97ZnjQF2KYWaFD2A8KyFBsrsfSjEmjn3RGWAIuvlneuZm3CUK3jbA==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 + dependencies: + eslint: 9.21.0 + eslint-visitor-keys: 3.4.3 + dev: true - '@eslint-community/regexpp@4.12.1': + /@eslint-community/regexpp@4.12.1: resolution: {integrity: sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==} engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} + dev: true - '@eslint/config-array@0.19.2': + /@eslint/config-array@0.19.2: resolution: {integrity: sha512-GNKqxfHG2ySmJOBSHg7LxeUx4xpuCoFjacmlCoYWEbaPXLwvfIjixRI12xCQZeULksQb23uiA8F40w5TojpV7w==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + dependencies: + '@eslint/object-schema': 2.1.6 + debug: 4.4.0 + minimatch: 3.1.2 + transitivePeerDependencies: + - supports-color + dev: true - '@eslint/core@0.12.0': + /@eslint/core@0.12.0: resolution: {integrity: sha512-cmrR6pytBuSMTaBweKoGMwu3EiHiEC+DoyupPmlZ0HxBJBtIxwe+j/E4XPIKNx+Q74c8lXKPwYawBf5glsTkHg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + dependencies: + '@types/json-schema': 7.0.15 + dev: true - '@eslint/eslintrc@2.1.4': + /@eslint/eslintrc@2.1.4: resolution: {integrity: sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + dependencies: + ajv: 6.12.6 + debug: 4.4.0 + espree: 9.6.1 + globals: 13.24.0 + ignore: 5.3.2 + import-fresh: 3.3.1 + js-yaml: 4.1.0 + minimatch: 3.1.2 + strip-json-comments: 3.1.1 + transitivePeerDependencies: + - supports-color + dev: true - '@eslint/eslintrc@3.3.0': + /@eslint/eslintrc@3.3.0: resolution: {integrity: sha512-yaVPAiNAalnCZedKLdR21GOGILMLKPyqSLWaAjQFvYA2i/ciDi8ArYVr69Anohb6cH2Ukhqti4aFnYyPm8wdwQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + dependencies: + ajv: 6.12.6 + debug: 4.4.0 + espree: 10.3.0 + globals: 14.0.0 + ignore: 5.3.2 + import-fresh: 3.3.1 + js-yaml: 4.1.0 + minimatch: 3.1.2 + strip-json-comments: 3.1.1 + transitivePeerDependencies: + - supports-color + dev: true - '@eslint/js@8.57.1': + /@eslint/js@8.57.1: resolution: {integrity: sha512-d9zaMRSTIKDLhctzH12MtXvJKSSUhaHcjV+2Z+GK+EEY7XKpP5yR4x+N3TAcHTcu963nIr+TMcCb4DBCYX1z6Q==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + dev: true - '@eslint/js@9.21.0': + /@eslint/js@9.21.0: resolution: {integrity: sha512-BqStZ3HX8Yz6LvsF5ByXYrtigrV5AXADWLAGc7PH/1SxOb7/FIYYMszZZWiUou/GB9P2lXWk2SV4d+Z8h0nknw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + dev: true - '@eslint/object-schema@2.1.6': + /@eslint/object-schema@2.1.6: resolution: {integrity: sha512-RBMg5FRL0I0gs51M/guSAj5/e14VQ4tpZnQNWwuDT66P14I43ItmPfIZRhO9fUVIPOAQXU47atlywZ/czoqFPA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + dev: true - '@eslint/plugin-kit@0.2.7': + /@eslint/plugin-kit@0.2.7: resolution: {integrity: sha512-JubJ5B2pJ4k4yGxaNLdbjrnk9d/iDz6/q8wOilpIowd6PJPgaxCuHBnBszq7Ce2TyMrywm5r4PnKm6V3iiZF+g==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + dependencies: + '@eslint/core': 0.12.0 + levn: 0.4.1 + dev: true - '@humanfs/core@0.19.1': + /@humanfs/core@0.19.1: resolution: {integrity: sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==} engines: {node: '>=18.18.0'} + dev: true - '@humanfs/node@0.16.6': + /@humanfs/node@0.16.6: resolution: {integrity: sha512-YuI2ZHQL78Q5HbhDiBA1X4LmYdXCKCMQIfw0pw7piHJwyREFebJUvrQN4cMssyES6x+vfUbx1CIpaQUKYdQZOw==} engines: {node: '>=18.18.0'} + dependencies: + '@humanfs/core': 0.19.1 + '@humanwhocodes/retry': 0.3.1 + dev: true - '@humanwhocodes/config-array@0.13.0': + /@humanwhocodes/config-array@0.13.0: resolution: {integrity: sha512-DZLEEqFWQFiyK6h5YIeynKx7JlvCYWL0cImfSRXZ9l4Sg2efkFGTuFf6vzXjK1cq6IYkU+Eg/JizXw+TD2vRNw==} engines: {node: '>=10.10.0'} deprecated: Use @eslint/config-array instead + dependencies: + '@humanwhocodes/object-schema': 2.0.3 + debug: 4.4.0 + minimatch: 3.1.2 + transitivePeerDependencies: + - supports-color + dev: true - '@humanwhocodes/module-importer@1.0.1': + /@humanwhocodes/module-importer@1.0.1: resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} engines: {node: '>=12.22'} + dev: true - '@humanwhocodes/object-schema@2.0.3': + /@humanwhocodes/object-schema@2.0.3: resolution: {integrity: sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==} deprecated: Use @eslint/object-schema instead + dev: true - '@humanwhocodes/retry@0.3.1': + /@humanwhocodes/retry@0.3.1: resolution: {integrity: sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA==} engines: {node: '>=18.18'} + dev: true - '@humanwhocodes/retry@0.4.2': + /@humanwhocodes/retry@0.4.2: resolution: {integrity: sha512-xeO57FpIu4p1Ri3Jq/EXq4ClRm86dVF2z/+kvFnyqVYRavTZmaFaUBbWCOuuTh0o/g7DSsk6kc2vrS4Vl5oPOQ==} engines: {node: '>=18.18'} + dev: true - '@img/sharp-darwin-arm64@0.33.5': + /@img/sharp-darwin-arm64@0.33.5: resolution: {integrity: sha512-UT4p+iz/2H4twwAoLCqfA9UH5pI6DggwKEGuaPy7nCVQ8ZsiY5PIcrRvD1DzuY3qYL07NtIQcWnBSY/heikIFQ==} engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} cpu: [arm64] os: [darwin] + requiresBuild: true + optionalDependencies: + '@img/sharp-libvips-darwin-arm64': 1.0.4 + dev: false + optional: true - '@img/sharp-darwin-x64@0.33.5': + /@img/sharp-darwin-x64@0.33.5: resolution: {integrity: sha512-fyHac4jIc1ANYGRDxtiqelIbdWkIuQaI84Mv45KvGRRxSAa7o7d1ZKAOBaYbnepLC1WqxfpimdeWfvqqSGwR2Q==} engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} cpu: [x64] os: [darwin] + requiresBuild: true + optionalDependencies: + '@img/sharp-libvips-darwin-x64': 1.0.4 + dev: false + optional: true - '@img/sharp-libvips-darwin-arm64@1.0.4': + /@img/sharp-libvips-darwin-arm64@1.0.4: resolution: {integrity: sha512-XblONe153h0O2zuFfTAbQYAX2JhYmDHeWikp1LM9Hul9gVPjFY427k6dFEcOL72O01QxQsWi761svJ/ev9xEDg==} cpu: [arm64] os: [darwin] + requiresBuild: true + dev: false + optional: true - '@img/sharp-libvips-darwin-x64@1.0.4': + /@img/sharp-libvips-darwin-x64@1.0.4: resolution: {integrity: sha512-xnGR8YuZYfJGmWPvmlunFaWJsb9T/AO2ykoP3Fz/0X5XV2aoYBPkX6xqCQvUTKKiLddarLaxpzNe+b1hjeWHAQ==} cpu: [x64] os: [darwin] + requiresBuild: true + dev: false + optional: true - '@img/sharp-libvips-linux-arm64@1.0.4': + /@img/sharp-libvips-linux-arm64@1.0.4: resolution: {integrity: sha512-9B+taZ8DlyyqzZQnoeIvDVR/2F4EbMepXMc/NdVbkzsJbzkUjhXv/70GQJ7tdLA4YJgNP25zukcxpX2/SueNrA==} cpu: [arm64] os: [linux] + requiresBuild: true + dev: false + optional: true - '@img/sharp-libvips-linux-arm@1.0.5': + /@img/sharp-libvips-linux-arm@1.0.5: resolution: {integrity: sha512-gvcC4ACAOPRNATg/ov8/MnbxFDJqf/pDePbBnuBDcjsI8PssmjoKMAz4LtLaVi+OnSb5FK/yIOamqDwGmXW32g==} cpu: [arm] os: [linux] + requiresBuild: true + dev: false + optional: true - '@img/sharp-libvips-linux-s390x@1.0.4': + /@img/sharp-libvips-linux-s390x@1.0.4: resolution: {integrity: sha512-u7Wz6ntiSSgGSGcjZ55im6uvTrOxSIS8/dgoVMoiGE9I6JAfU50yH5BoDlYA1tcuGS7g/QNtetJnxA6QEsCVTA==} cpu: [s390x] os: [linux] + requiresBuild: true + dev: false + optional: true - '@img/sharp-libvips-linux-x64@1.0.4': + /@img/sharp-libvips-linux-x64@1.0.4: resolution: {integrity: sha512-MmWmQ3iPFZr0Iev+BAgVMb3ZyC4KeFc3jFxnNbEPas60e1cIfevbtuyf9nDGIzOaW9PdnDciJm+wFFaTlj5xYw==} cpu: [x64] os: [linux] + requiresBuild: true + dev: false + optional: true - '@img/sharp-libvips-linuxmusl-arm64@1.0.4': + /@img/sharp-libvips-linuxmusl-arm64@1.0.4: resolution: {integrity: sha512-9Ti+BbTYDcsbp4wfYib8Ctm1ilkugkA/uscUn6UXK1ldpC1JjiXbLfFZtRlBhjPZ5o1NCLiDbg8fhUPKStHoTA==} cpu: [arm64] os: [linux] + requiresBuild: true + dev: false + optional: true - '@img/sharp-libvips-linuxmusl-x64@1.0.4': + /@img/sharp-libvips-linuxmusl-x64@1.0.4: resolution: {integrity: sha512-viYN1KX9m+/hGkJtvYYp+CCLgnJXwiQB39damAO7WMdKWlIhmYTfHjwSbQeUK/20vY154mwezd9HflVFM1wVSw==} cpu: [x64] os: [linux] + requiresBuild: true + dev: false + optional: true - '@img/sharp-linux-arm64@0.33.5': + /@img/sharp-linux-arm64@0.33.5: resolution: {integrity: sha512-JMVv+AMRyGOHtO1RFBiJy/MBsgz0x4AWrT6QoEVVTyh1E39TrCUpTRI7mx9VksGX4awWASxqCYLCV4wBZHAYxA==} engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} cpu: [arm64] os: [linux] + requiresBuild: true + optionalDependencies: + '@img/sharp-libvips-linux-arm64': 1.0.4 + dev: false + optional: true - '@img/sharp-linux-arm@0.33.5': + /@img/sharp-linux-arm@0.33.5: resolution: {integrity: sha512-JTS1eldqZbJxjvKaAkxhZmBqPRGmxgu+qFKSInv8moZ2AmT5Yib3EQ1c6gp493HvrvV8QgdOXdyaIBrhvFhBMQ==} engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} cpu: [arm] os: [linux] + requiresBuild: true + optionalDependencies: + '@img/sharp-libvips-linux-arm': 1.0.5 + dev: false + optional: true - '@img/sharp-linux-s390x@0.33.5': + /@img/sharp-linux-s390x@0.33.5: resolution: {integrity: sha512-y/5PCd+mP4CA/sPDKl2961b+C9d+vPAveS33s6Z3zfASk2j5upL6fXVPZi7ztePZ5CuH+1kW8JtvxgbuXHRa4Q==} engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} cpu: [s390x] os: [linux] + requiresBuild: true + optionalDependencies: + '@img/sharp-libvips-linux-s390x': 1.0.4 + dev: false + optional: true - '@img/sharp-linux-x64@0.33.5': + /@img/sharp-linux-x64@0.33.5: resolution: {integrity: sha512-opC+Ok5pRNAzuvq1AG0ar+1owsu842/Ab+4qvU879ippJBHvyY5n2mxF1izXqkPYlGuP/M556uh53jRLJmzTWA==} engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} cpu: [x64] os: [linux] + requiresBuild: true + optionalDependencies: + '@img/sharp-libvips-linux-x64': 1.0.4 + dev: false + optional: true - '@img/sharp-linuxmusl-arm64@0.33.5': + /@img/sharp-linuxmusl-arm64@0.33.5: resolution: {integrity: sha512-XrHMZwGQGvJg2V/oRSUfSAfjfPxO+4DkiRh6p2AFjLQztWUuY/o8Mq0eMQVIY7HJ1CDQUJlxGGZRw1a5bqmd1g==} engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} cpu: [arm64] os: [linux] + requiresBuild: true + optionalDependencies: + '@img/sharp-libvips-linuxmusl-arm64': 1.0.4 + dev: false + optional: true - '@img/sharp-linuxmusl-x64@0.33.5': + /@img/sharp-linuxmusl-x64@0.33.5: resolution: {integrity: sha512-WT+d/cgqKkkKySYmqoZ8y3pxx7lx9vVejxW/W4DOFMYVSkErR+w7mf2u8m/y4+xHe7yY9DAXQMWQhpnMuFfScw==} engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} cpu: [x64] os: [linux] + requiresBuild: true + optionalDependencies: + '@img/sharp-libvips-linuxmusl-x64': 1.0.4 + dev: false + optional: true - '@img/sharp-wasm32@0.33.5': + /@img/sharp-wasm32@0.33.5: resolution: {integrity: sha512-ykUW4LVGaMcU9lu9thv85CbRMAwfeadCJHRsg2GmeRa/cJxsVY9Rbd57JcMxBkKHag5U/x7TSBpScF4U8ElVzg==} engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} cpu: [wasm32] + requiresBuild: true + dependencies: + '@emnapi/runtime': 1.3.1 + dev: false + optional: true - '@img/sharp-win32-ia32@0.33.5': + /@img/sharp-win32-ia32@0.33.5: resolution: {integrity: sha512-T36PblLaTwuVJ/zw/LaH0PdZkRz5rd3SmMHX8GSmR7vtNSP5Z6bQkExdSK7xGWyxLw4sUknBuugTelgw2faBbQ==} engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} cpu: [ia32] os: [win32] + requiresBuild: true + dev: false + optional: true - '@img/sharp-win32-x64@0.33.5': + /@img/sharp-win32-x64@0.33.5: resolution: {integrity: sha512-MpY/o8/8kj+EcnxwvrP4aTJSWw/aZ7JIGR4aBeZkZw5B7/Jn+tY9/VNwtcoGmdT7GfggGIU4kygOMSbYnOrAbg==} engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} cpu: [x64] os: [win32] + requiresBuild: true + dev: false + optional: true - '@isaacs/cliui@8.0.2': + /@isaacs/cliui@8.0.2: resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} engines: {node: '>=12'} + dependencies: + string-width: 5.1.2 + string-width-cjs: /string-width@4.2.3 + strip-ansi: 7.1.0 + strip-ansi-cjs: /strip-ansi@6.0.1 + wrap-ansi: 8.1.0 + wrap-ansi-cjs: /wrap-ansi@7.0.0 + dev: true - '@istanbuljs/schema@0.1.3': + /@istanbuljs/schema@0.1.3: resolution: {integrity: sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==} engines: {node: '>=8'} + dev: true - '@joshwooding/vite-plugin-react-docgen-typescript@0.4.2': + /@joshwooding/vite-plugin-react-docgen-typescript@0.4.2(typescript@5.6.3)(vite@6.1.1): resolution: {integrity: sha512-feQ+ntr+8hbVudnsTUapiMN9q8T90XA1d5jn9QzY09sNoj4iD9wi0PY1vsBFTda4ZjEaxRK9S81oarR2nj7TFQ==} peerDependencies: typescript: '>= 4.3.x' @@ -916,4054 +1495,319 @@ packages: peerDependenciesMeta: typescript: optional: true + dependencies: + magic-string: 0.27.0 + react-docgen-typescript: 2.2.2(typescript@5.6.3) + typescript: 5.6.3 + vite: 6.1.1 + dev: true - '@jridgewell/gen-mapping@0.3.8': + /@jridgewell/gen-mapping@0.3.8: resolution: {integrity: sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==} engines: {node: '>=6.0.0'} + dependencies: + '@jridgewell/set-array': 1.2.1 + '@jridgewell/sourcemap-codec': 1.5.0 + '@jridgewell/trace-mapping': 0.3.25 + dev: true - '@jridgewell/resolve-uri@3.1.2': + /@jridgewell/resolve-uri@3.1.2: resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} engines: {node: '>=6.0.0'} + dev: true - '@jridgewell/set-array@1.2.1': + /@jridgewell/set-array@1.2.1: resolution: {integrity: sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==} engines: {node: '>=6.0.0'} + dev: true - '@jridgewell/sourcemap-codec@1.5.0': + /@jridgewell/sourcemap-codec@1.5.0: resolution: {integrity: sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==} + dev: true - '@jridgewell/trace-mapping@0.3.25': + /@jridgewell/trace-mapping@0.3.25: resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==} + dependencies: + '@jridgewell/resolve-uri': 3.1.2 + '@jridgewell/sourcemap-codec': 1.5.0 + dev: true - '@manypkg/find-root@1.1.0': + /@manypkg/find-root@1.1.0: resolution: {integrity: sha512-mki5uBvhHzO8kYYix/WRy2WX8S3B5wdVSc9D6KcU5lQNglP2yt58/VfLuAK49glRXChosY8ap2oJ1qgma3GUVA==} + dependencies: + '@babel/runtime': 7.26.9 + '@types/node': 12.20.55 + find-up: 4.1.0 + fs-extra: 8.1.0 + dev: true - '@manypkg/get-packages@1.1.3': + /@manypkg/get-packages@1.1.3: resolution: {integrity: sha512-fo+QhuU3qE/2TQMQmbVMqaQ6EWbMhi4ABWP+O4AM1NqPBuy0OrApV5LO6BrrgnhtAHS2NH6RrVk9OL181tTi8A==} + dependencies: + '@babel/runtime': 7.26.9 + '@changesets/types': 4.1.0 + '@manypkg/find-root': 1.1.0 + fs-extra: 8.1.0 + globby: 11.1.0 + read-yaml-file: 1.1.0 + dev: true - '@mdx-js/react@3.1.0': + /@mdx-js/react@3.1.0(@types/react@18.3.18)(react@18.3.1): resolution: {integrity: sha512-QjHtSaoameoalGnKDT3FoIl4+9RwyTmo9ZJGBdLOks/YOiWHoRDI3PUwEzOE7kEmGcV3AFcp9K6dYu9rEuKLAQ==} peerDependencies: '@types/react': '>=16' - react: '>=16' - - '@microsoft/tsdoc-config@0.16.2': - resolution: {integrity: sha512-OGiIzzoBLgWWR0UdRJX98oYO+XKGf7tiK4Zk6tQ/E4IJqGCe7dvkTvgDZV5cFJUzLGDOjeAXrnZoA6QkVySuxw==} - - '@microsoft/tsdoc@0.14.2': - resolution: {integrity: sha512-9b8mPpKrfeGRuhFH5iO1iwCLeIIsV6+H1sRfxbkoGXIyQE2BTsPd9zqSqQJ+pv5sJ/hT5M1zvOFL02MnEezFug==} - - '@nicolo-ribaudo/eslint-scope-5-internals@5.1.1-v1': - resolution: {integrity: sha512-54/JRvkLIzzDWshCWfuhadfrfZVPiElY8Fcgmg1HroEly/EDSszzhBAsarCux+D/kOslTRquNzuyGSmUSTTHGg==} - - '@nodelib/fs.scandir@2.1.5': - resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} - engines: {node: '>= 8'} - - '@nodelib/fs.stat@2.0.5': - resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} - engines: {node: '>= 8'} - - '@nodelib/fs.walk@1.2.8': - resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} - engines: {node: '>= 8'} - - '@nolyfill/is-core-module@1.0.39': - resolution: {integrity: sha512-nn5ozdjYQpUCZlWGuxcJY/KpxkWQs4DcbMCmKojjyrYDEAGy4Ce19NN4v5MduafTwJlbKc99UA8YhSVqq9yPZA==} - engines: {node: '>=12.4.0'} - - '@notionhq/client@2.2.16': - resolution: {integrity: sha512-3GlkfhLw8+Jw8U2iFEmHA6WfCgYhZCXLxgPdqDJkYMFotELNpQO+yGSy2QWURsG8ndu21sLt+FEOfDbNcCtFMg==} - engines: {node: '>=12'} - - '@pkgjs/parseargs@0.11.0': - resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} - engines: {node: '>=14'} - - '@pkgr/core@0.1.1': - resolution: {integrity: sha512-cq8o4cWH0ibXh9VGi5P20Tu9XF/0fFXl9EUinr9QfTM7a7p0oTA4iJRCQWppXR1Pg8dSM0UCItCkPwsk9qWWYA==} - engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0} - - '@rollup/pluginutils@5.1.4': - resolution: {integrity: sha512-USm05zrsFxYLPdWWq+K3STlWiT/3ELn3RcV5hJMghpeAIhxfsUIg6mt12CBJBInWMV4VneoV7SfGv8xIwo2qNQ==} - engines: {node: '>=14.0.0'} - peerDependencies: - rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0 - peerDependenciesMeta: - rollup: - optional: true - - '@rollup/rollup-android-arm-eabi@4.34.8': - resolution: {integrity: sha512-q217OSE8DTp8AFHuNHXo0Y86e1wtlfVrXiAlwkIvGRQv9zbc6mE3sjIVfwI8sYUyNxwOg0j/Vm1RKM04JcWLJw==} - cpu: [arm] - os: [android] - - '@rollup/rollup-android-arm64@4.34.8': - resolution: {integrity: sha512-Gigjz7mNWaOL9wCggvoK3jEIUUbGul656opstjaUSGC3eT0BM7PofdAJaBfPFWWkXNVAXbaQtC99OCg4sJv70Q==} - cpu: [arm64] - os: [android] - - '@rollup/rollup-darwin-arm64@4.34.8': - resolution: {integrity: sha512-02rVdZ5tgdUNRxIUrFdcMBZQoaPMrxtwSb+/hOfBdqkatYHR3lZ2A2EGyHq2sGOd0Owk80oV3snlDASC24He3Q==} - cpu: [arm64] - os: [darwin] - - '@rollup/rollup-darwin-x64@4.34.8': - resolution: {integrity: sha512-qIP/elwR/tq/dYRx3lgwK31jkZvMiD6qUtOycLhTzCvrjbZ3LjQnEM9rNhSGpbLXVJYQ3rq39A6Re0h9tU2ynw==} - cpu: [x64] - os: [darwin] - - '@rollup/rollup-freebsd-arm64@4.34.8': - resolution: {integrity: sha512-IQNVXL9iY6NniYbTaOKdrlVP3XIqazBgJOVkddzJlqnCpRi/yAeSOa8PLcECFSQochzqApIOE1GHNu3pCz+BDA==} - cpu: [arm64] - os: [freebsd] - - '@rollup/rollup-freebsd-x64@4.34.8': - resolution: {integrity: sha512-TYXcHghgnCqYFiE3FT5QwXtOZqDj5GmaFNTNt3jNC+vh22dc/ukG2cG+pi75QO4kACohZzidsq7yKTKwq/Jq7Q==} - cpu: [x64] - os: [freebsd] - - '@rollup/rollup-linux-arm-gnueabihf@4.34.8': - resolution: {integrity: sha512-A4iphFGNkWRd+5m3VIGuqHnG3MVnqKe7Al57u9mwgbyZ2/xF9Jio72MaY7xxh+Y87VAHmGQr73qoKL9HPbXj1g==} - cpu: [arm] - os: [linux] - - '@rollup/rollup-linux-arm-musleabihf@4.34.8': - resolution: {integrity: sha512-S0lqKLfTm5u+QTxlFiAnb2J/2dgQqRy/XvziPtDd1rKZFXHTyYLoVL58M/XFwDI01AQCDIevGLbQrMAtdyanpA==} - cpu: [arm] - os: [linux] - - '@rollup/rollup-linux-arm64-gnu@4.34.8': - resolution: {integrity: sha512-jpz9YOuPiSkL4G4pqKrus0pn9aYwpImGkosRKwNi+sJSkz+WU3anZe6hi73StLOQdfXYXC7hUfsQlTnjMd3s1A==} - cpu: [arm64] - os: [linux] - - '@rollup/rollup-linux-arm64-musl@4.34.8': - resolution: {integrity: sha512-KdSfaROOUJXgTVxJNAZ3KwkRc5nggDk+06P6lgi1HLv1hskgvxHUKZ4xtwHkVYJ1Rep4GNo+uEfycCRRxht7+Q==} - cpu: [arm64] - os: [linux] - - '@rollup/rollup-linux-loongarch64-gnu@4.34.8': - resolution: {integrity: sha512-NyF4gcxwkMFRjgXBM6g2lkT58OWztZvw5KkV2K0qqSnUEqCVcqdh2jN4gQrTn/YUpAcNKyFHfoOZEer9nwo6uQ==} - cpu: [loong64] - os: [linux] - - '@rollup/rollup-linux-powerpc64le-gnu@4.34.8': - resolution: {integrity: sha512-LMJc999GkhGvktHU85zNTDImZVUCJ1z/MbAJTnviiWmmjyckP5aQsHtcujMjpNdMZPT2rQEDBlJfubhs3jsMfw==} - cpu: [ppc64] - os: [linux] - - '@rollup/rollup-linux-riscv64-gnu@4.34.8': - resolution: {integrity: sha512-xAQCAHPj8nJq1PI3z8CIZzXuXCstquz7cIOL73HHdXiRcKk8Ywwqtx2wrIy23EcTn4aZ2fLJNBB8d0tQENPCmw==} - cpu: [riscv64] - os: [linux] - - '@rollup/rollup-linux-s390x-gnu@4.34.8': - resolution: {integrity: sha512-DdePVk1NDEuc3fOe3dPPTb+rjMtuFw89gw6gVWxQFAuEqqSdDKnrwzZHrUYdac7A7dXl9Q2Vflxpme15gUWQFA==} - cpu: [s390x] - os: [linux] - - '@rollup/rollup-linux-x64-gnu@4.34.8': - resolution: {integrity: sha512-8y7ED8gjxITUltTUEJLQdgpbPh1sUQ0kMTmufRF/Ns5tI9TNMNlhWtmPKKHCU0SilX+3MJkZ0zERYYGIVBYHIA==} - cpu: [x64] - os: [linux] - - '@rollup/rollup-linux-x64-musl@4.34.8': - resolution: {integrity: sha512-SCXcP0ZpGFIe7Ge+McxY5zKxiEI5ra+GT3QRxL0pMMtxPfpyLAKleZODi1zdRHkz5/BhueUrYtYVgubqe9JBNQ==} - cpu: [x64] - os: [linux] - - '@rollup/rollup-win32-arm64-msvc@4.34.8': - resolution: {integrity: sha512-YHYsgzZgFJzTRbth4h7Or0m5O74Yda+hLin0irAIobkLQFRQd1qWmnoVfwmKm9TXIZVAD0nZ+GEb2ICicLyCnQ==} - cpu: [arm64] - os: [win32] - - '@rollup/rollup-win32-ia32-msvc@4.34.8': - resolution: {integrity: sha512-r3NRQrXkHr4uWy5TOjTpTYojR9XmF0j/RYgKCef+Ag46FWUTltm5ziticv8LdNsDMehjJ543x/+TJAek/xBA2w==} - cpu: [ia32] - os: [win32] - - '@rollup/rollup-win32-x64-msvc@4.34.8': - resolution: {integrity: sha512-U0FaE5O1BCpZSeE6gBl3c5ObhePQSfk9vDRToMmTkbhCOgW4jqvtS5LGyQ76L1fH8sM0keRp4uDTsbjiUyjk0g==} - cpu: [x64] - os: [win32] - - '@rtsao/scc@1.1.0': - resolution: {integrity: sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==} - - '@rushstack/eslint-patch@1.10.5': - resolution: {integrity: sha512-kkKUDVlII2DQiKy7UstOR1ErJP8kUKAQ4oa+SQtM0K+lPdmmjj0YnnxBgtTVYH7mUKtbsxeFC9y0AmK7Yb78/A==} - - '@storybook/addon-actions@8.6.0-alpha.0': - resolution: {integrity: sha512-ebY4n9twI05gWuu3Qv1o6LscFAY7pBbt3Ted22SfGH5YTvRvdstcU/4M7kqXt26X5LZeDfKCtIddnIvv/wMXsw==} - peerDependencies: - storybook: ^8.6.0-alpha.0 - - '@storybook/addon-backgrounds@8.6.0-alpha.0': - resolution: {integrity: sha512-RcHwcu9bYNhoCGm1nZpo1KknPyHTlR+MhbFkKTkJrL31AImvCBPHRNiU5jXEm0i0qIG+eWpMu/Vh+YmJR47WRw==} - peerDependencies: - storybook: ^8.6.0-alpha.0 - - '@storybook/addon-controls@8.6.0-alpha.0': - resolution: {integrity: sha512-7yuYwTwNjM6I4LM8RWjM3+iQDDLU80ZRl3MiQmuNHUHzRa4KkW7W1yvxQ/pvyuZNM+vxNIEm9I8/gxUtOxt3YA==} - peerDependencies: - storybook: ^8.6.0-alpha.0 - - '@storybook/addon-docs@8.6.0-alpha.0': - resolution: {integrity: sha512-7es3uWYKS50puboWAQvapGbknMg/dSxnG+BwRunIvebbAfzW4V/eRSYWB/3n/7Hs8Z1/CmJDWf5Nzu7rxWxSNQ==} - peerDependencies: - storybook: ^8.6.0-alpha.0 - - '@storybook/addon-essentials@8.6.0-alpha.0': - resolution: {integrity: sha512-RoI4xv7mWtN0EHgFkxcOjvwum4/1sqLnN4pXcPo/cECRwnEll6g2fsmYYWXUdiCsC7ZImNdZrVK8ivuRFy3fvw==} - peerDependencies: - storybook: ^8.6.0-alpha.0 - - '@storybook/addon-highlight@8.6.0-alpha.0': - resolution: {integrity: sha512-2KxpKEK8Pqy3BiPgFJgtAliVROEu5mNfxwzXTsA90UTRkAoV+SM1hWdIHjn/ItFTXZ+iTJ5qPQjV+hG/ZWQGNQ==} - peerDependencies: - storybook: ^8.6.0-alpha.0 - - '@storybook/addon-interactions@8.6.0-alpha.0': - resolution: {integrity: sha512-BMnWeKIqLwNx27BuY6h48Wdey5PqYLDLHLdUUwJ+7z8c+133WjmQzFhT6wOfTdnL9ykKwJMjJfHF1g8p2FFMug==} - peerDependencies: - storybook: ^8.6.0-alpha.0 - - '@storybook/addon-measure@8.6.0-alpha.0': - resolution: {integrity: sha512-dw/H5aWVWTpOiq6Ur+fMCvdVleeU/MmtrENwIX3xC5FIMYO28g3Bv4lLgdKG1xHhCZSwnF9T1vYqbP5D+PH8Pg==} - peerDependencies: - storybook: ^8.6.0-alpha.0 - - '@storybook/addon-onboarding@8.6.0-alpha.0': - resolution: {integrity: sha512-UKjMrLqCoUorb3wU/hsDxpGnVAc6Ec6Sc/N844bwHDxzMh4B4zCVJdYhEchGaDhz35fz4XCOlzEYlkzuaWGdZw==} - peerDependencies: - storybook: ^8.6.0-alpha.0 - - '@storybook/addon-outline@8.6.0-alpha.0': - resolution: {integrity: sha512-qMGNwBERWOP/UDAxCVKmJKjfm46/2vL7umnuMtKAdNmMbH3hEj7FZnDAiFsQz+UCJqCVP9D7EeAlA0PTjm1UAQ==} - peerDependencies: - storybook: ^8.6.0-alpha.0 - - '@storybook/addon-toolbars@8.6.0-alpha.0': - resolution: {integrity: sha512-5O9AGxd0SBavi8FCbRSPJVrm1VVs973VgHU9ZDyqPp6oqQaLVYDlYeCGAGGdYgTHhc5tdkIOL2cXu+HaH+zxQg==} - peerDependencies: - storybook: ^8.6.0-alpha.0 - - '@storybook/addon-viewport@8.6.0-alpha.0': - resolution: {integrity: sha512-p01+oR2z9Dx08aqA1OxrhuaMHPx0Vtugo3r7wOWyFVL+FOshhUeJDoowRmHX6JokmmzjcHfIWXTYF05pHmQAbg==} - peerDependencies: - storybook: ^8.6.0-alpha.0 - - '@storybook/blocks@8.6.0-alpha.0': - resolution: {integrity: sha512-fUM8vJnHbQjDYm1oU18/SZUDk/ibSYD8CBvgsvP7lt5k+u00cfSMEz2cuv4sMeJnPv7klaWw+Vz/0E9G9M7DuQ==} - peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta - react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta - storybook: ^8.6.0-alpha.0 - peerDependenciesMeta: - react: - optional: true - react-dom: - optional: true - - '@storybook/builder-vite@8.6.0-alpha.0': - resolution: {integrity: sha512-31OJfaS6Aj3vFO/0pJE6iz3sDkQU6TB0m6/WfZ+i80Re4OG1pu5GCvP8bqOFuEAQpyc2sFKs6B+wOBvZuuSskg==} - peerDependencies: - storybook: ^8.6.0-alpha.0 - vite: ^4.0.0 || ^5.0.0 || ^6.0.0 - - '@storybook/components@8.6.0-alpha.0': - resolution: {integrity: sha512-yyySSxOuzNZLOFxdpU3lhw/RG+/79AH/eiCUu9tSn/2lHPBuf+whYlmciP9r7Gdy88lrpurX9GUf89jINIpLRw==} - peerDependencies: - storybook: ^8.2.0 || ^8.3.0-0 || ^8.4.0-0 || ^8.5.0-0 || ^8.6.0-0 - - '@storybook/core@8.6.0-alpha.0': - resolution: {integrity: sha512-6/okb7hD/2AAarYOCAACwuxR/0LQq6NWSNi+Eo7NEWjq+aliOGe3Vc/yUQekq+h3Uwls+AT/HANLo8t3sYbPrg==} - peerDependencies: - prettier: ^2 || ^3 - peerDependenciesMeta: - prettier: - optional: true - - '@storybook/csf-plugin@8.6.0-alpha.0': - resolution: {integrity: sha512-FkI3YW7ObEAFBQokJ04uPIQnBbnsfUKf08jriZ/nB03dcUNVDkl1GjPHONXJK8IwUKfKsiXRVqmrqJPSkK6xvQ==} - peerDependencies: - storybook: ^8.6.0-alpha.0 - - '@storybook/csf@0.1.12': - resolution: {integrity: sha512-9/exVhabisyIVL0VxTCxo01Tdm8wefIXKXfltAPTSr8cbLn5JAxGQ6QV3mjdecLGEOucfoVhAKtJfVHxEK1iqw==} - - '@storybook/csf@0.1.13': - resolution: {integrity: sha512-7xOOwCLGB3ebM87eemep89MYRFTko+D8qE7EdAAq74lgdqRR5cOUtYWJLjO2dLtP94nqoOdHJo6MdLLKzg412Q==} - - '@storybook/global@5.0.0': - resolution: {integrity: sha512-FcOqPAXACP0I3oJ/ws6/rrPT9WGhu915Cg8D02a9YxLo0DE9zI+a9A5gRGvmQ09fiWPukqI8ZAEoQEdWUKMQdQ==} - - '@storybook/icons@1.3.2': - resolution: {integrity: sha512-t3xcbCKkPvqyef8urBM0j/nP6sKtnlRkVgC+8JTbTAZQjaTmOjes3byEgzs89p4B/K6cJsg9wLW2k3SknLtYJw==} - engines: {node: '>=14.0.0'} - peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta - react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta - - '@storybook/instrumenter@8.6.0-alpha.0': - resolution: {integrity: sha512-x4ey6Pmpri0VlHoVSw4XczHR6iQe7KZHL+M5+/DGrz5hQZf83puA+OVQEsqasBO0bTsTw/IdVqeP2ggUUVN2Cg==} - peerDependencies: - storybook: ^8.6.0-alpha.0 - - '@storybook/manager-api@8.6.0-alpha.0': - resolution: {integrity: sha512-LGox/VTfBCa/uhN9+eUE8jwzUcivQFIzubFGAOf3125BMAF65sYYYxp+iJJ6oz6sXskJ4GEqxsu3LLfDGfZrEw==} - peerDependencies: - storybook: ^8.2.0 || ^8.3.0-0 || ^8.4.0-0 || ^8.5.0-0 || ^8.6.0-0 - - '@storybook/preview-api@8.6.0-alpha.0': - resolution: {integrity: sha512-NcR/mhCalultNg7mNB+jGz5Z9cC5zKe21O5s285y6fxLkaN9LRTvZzebJ2ShSbD4taLGZ+tL61XKqv5e9/DdbQ==} - peerDependencies: - storybook: ^8.2.0 || ^8.3.0-0 || ^8.4.0-0 || ^8.5.0-0 || ^8.6.0-0 - - '@storybook/react-dom-shim@8.6.0-alpha.0': - resolution: {integrity: sha512-hdEzyyqzfE72FydLRiqKJ+QONNznHGHv3NdAUi0Xt0gFzSPbHOrBNaLhiq53aBEK4Sgo2mMluigQW80LWdGu+w==} - peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta - react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta - storybook: ^8.6.0-alpha.0 - - '@storybook/react-vite@8.6.0-alpha.0': - resolution: {integrity: sha512-7BB4ZcLFS4XgIwfsGyauW1uHtuooS+7SopD0iWm/jTq88/OMkppZjvzxXBBYOUWg1EH90G1I7q+vUvEfE+IPDg==} - engines: {node: '>=18.0.0'} - peerDependencies: - '@storybook/test': 8.6.0-alpha.0 - react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta - react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta - storybook: ^8.6.0-alpha.0 - vite: ^4.0.0 || ^5.0.0 || ^6.0.0 - peerDependenciesMeta: - '@storybook/test': - optional: true - - '@storybook/react@8.6.0-alpha.0': - resolution: {integrity: sha512-GLvY+o0NW57U+Gfm0uZhln9CVmLo33l4MF0RlQ172DtfU8u4CGZSYOjnvsLTKszSqhPA7OvhfjZnhR6CYSvg4g==} - engines: {node: '>=18.0.0'} - peerDependencies: - '@storybook/test': 8.6.0-alpha.0 - react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta - react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta - storybook: ^8.6.0-alpha.0 - typescript: '>= 4.2.x' - peerDependenciesMeta: - '@storybook/test': - optional: true - typescript: - optional: true - - '@storybook/test@8.6.0-alpha.0': - resolution: {integrity: sha512-pojaHEUoSJT0egqupQtohsvjyTsiDjLrZKkl7D9Sa6FWRMUoiNia6Hfglm0Qo9M4rxz4YVIvGJ3QQbkYnxTOXQ==} - peerDependencies: - storybook: ^8.6.0-alpha.0 - - '@storybook/theming@8.6.0-alpha.0': - resolution: {integrity: sha512-VrT5TpHonLN1xJac4FKtrqM3u66CQX/B+Jk+68Id2M8008gLw14KltL3pV2k8RUGwoJj75T17mDZHUoW7z+vuw==} - peerDependencies: - storybook: ^8.2.0 || ^8.3.0-0 || ^8.4.0-0 || ^8.5.0-0 || ^8.6.0-0 - - '@testing-library/dom@10.4.0': - resolution: {integrity: sha512-pemlzrSESWbdAloYml3bAJMEfNh1Z7EduzqPKprCH5S341frlpYnUEW0H72dLxa6IsYr+mPno20GiSm+h9dEdQ==} - engines: {node: '>=18'} - - '@testing-library/jest-dom@6.5.0': - resolution: {integrity: sha512-xGGHpBXYSHUUr6XsKBfs85TWlYKpTc37cSBBVrXcib2MkHLboWlkClhWF37JKlDb9KEq3dHs+f2xR7XJEWGBxA==} - engines: {node: '>=14', npm: '>=6', yarn: '>=1'} - - '@testing-library/user-event@14.5.2': - resolution: {integrity: sha512-YAh82Wh4TIrxYLmfGcixwD18oIjyC1pFQC2Y01F2lzV2HTMiYrI0nze0FD0ocB//CKS/7jIUgae+adPqxK5yCQ==} - engines: {node: '>=12', npm: '>=6'} - peerDependencies: - '@testing-library/dom': '>=7.21.4' - - '@types/aria-query@5.0.4': - resolution: {integrity: sha512-rfT93uj5s0PRL7EzccGMs3brplhcrghnDoV26NqKhCAS1hVo+WdNsPvE/yb6ilfr5hi2MEk6d5EWJTKdxg8jVw==} - - '@types/babel__core@7.20.5': - resolution: {integrity: sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==} - - '@types/babel__generator@7.6.8': - resolution: {integrity: sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw==} - - '@types/babel__template@7.4.4': - resolution: {integrity: sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==} - - '@types/babel__traverse@7.20.6': - resolution: {integrity: sha512-r1bzfrm0tomOI8g1SzvCaQHo6Lcv6zu0EA+W2kHrt8dyrHQxGzBBL4kdkzIS+jBMV+EYcMAEAqXqYaLJq5rOZg==} - - '@types/doctrine@0.0.9': - resolution: {integrity: sha512-eOIHzCUSH7SMfonMG1LsC2f8vxBFtho6NGBznK41R84YzPuvSBzrhEps33IsQiOW9+VL6NQ9DbjQJznk/S4uRA==} - - '@types/estree@1.0.6': - resolution: {integrity: sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==} - - '@types/json-schema@7.0.15': - resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} - - '@types/json5@0.0.29': - resolution: {integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==} - - '@types/lqip-modern@1.1.7': - resolution: {integrity: sha512-TwC2Z1aDkT7TQNTkYbg1KqgqIAri1U3TTUVgc65HAG6EpuJTHLOi6VrMAVq2f+jDhhEqFXpnvRc3ZAljSI8ibw==} - - '@types/mdx@2.0.13': - resolution: {integrity: sha512-+OWZQfAYyio6YkJb3HLxDrvnx6SWWDbC0zVPfBRzUk0/nqoDyf6dNxQi3eArPe8rJ473nobTMQ/8Zk+LxJ+Yuw==} - - '@types/needle@3.3.0': - resolution: {integrity: sha512-UFIuc1gdyzAqeVUYpSL+cliw2MmU/ZUhVZKE7Zo4wPbgc8hbljeKSnn6ls6iG8r5jpegPXLUIhJ+Wb2kLVs8cg==} - - '@types/node-fetch@2.6.12': - resolution: {integrity: sha512-8nneRWKCg3rMtF69nLQJnOYUcbafYeFSjqkw3jCRLsqkWFlHaoQrr5mXmofFGOx3DKn7UfmBMyov8ySvLRVldA==} - - '@types/node@12.20.55': - resolution: {integrity: sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==} - - '@types/node@22.13.5': - resolution: {integrity: sha512-+lTU0PxZXn0Dr1NBtC7Y8cR21AJr87dLLU953CWA6pMxxv/UDc7jYAY90upcrie1nRcD6XNG5HOYEDtgW5TxAg==} - - '@types/normalize-package-data@2.4.4': - resolution: {integrity: sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==} - - '@types/prismjs@1.26.5': - resolution: {integrity: sha512-AUZTa7hQ2KY5L7AmtSiqxlhWxb4ina0yd8hNbl4TWuqnv/pFP0nDMb3YrfSBf4hJVGLh2YEIBfKaBW/9UEl6IQ==} - - '@types/probe-image-size@7.2.5': - resolution: {integrity: sha512-9Bg6d/GNnjmhMMxadDstwrSlquuuLf0jQuPszbU6n3QUfybif3V/ryD3J2i9iaiC5JB/FU/8E41n88SM/UB+Tg==} - - '@types/prop-types@15.7.14': - resolution: {integrity: sha512-gNMvNH49DJ7OJYv+KAKn0Xp45p8PLl6zo2YnvDIbTd4J6MER2BmWN49TG7n9LvkyihINxeKW8+3bfS2yDC9dzQ==} - - '@types/react-dom@18.3.5': - resolution: {integrity: sha512-P4t6saawp+b/dFrUr2cvkVsfvPguwsxtH6dNIYRllMsefqFzkZk5UIjzyDOv5g1dXIPdG4Sp1yCR4Z6RCUsG/Q==} - peerDependencies: - '@types/react': ^18.0.0 - - '@types/react@18.3.18': - resolution: {integrity: sha512-t4yC+vtgnkYjNSKlFx1jkAhH8LgTo2N/7Qvi83kdEaUtMDiwpbLAktKDaAMlRcJ5eSxZkH74eEGt1ky31d7kfQ==} - - '@types/resolve@1.20.6': - resolution: {integrity: sha512-A4STmOXPhMUtHH+S6ymgE2GiBSMqf4oTvcQZMcHzokuTLVYzXTB8ttjcgxOVaAp2lGwEdzZ0J+cRbbeevQj1UQ==} - - '@types/semver@7.5.8': - resolution: {integrity: sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==} - - '@types/sharp@0.31.1': - resolution: {integrity: sha512-5nWwamN9ZFHXaYEincMSuza8nNfOof8nmO+mcI+Agx1uMUk4/pQnNIcix+9rLPXzKrm1pS34+6WRDbDV0Jn7ag==} - - '@types/uuid@9.0.8': - resolution: {integrity: sha512-jg+97EGIcY9AGHJJRaaPVgetKDsrTgbRjQ5Msgjh/DQKEFl0DtyRr/VCOyD1T2R1MNeWPK/u7JoGhlDZnKBAfA==} - - '@typescript-eslint/eslint-plugin@6.21.0': - resolution: {integrity: sha512-oy9+hTPCUFpngkEZUSzbf9MxI65wbKFoQYsgPdILTfbUldp5ovUuphZVe4i30emU9M/kP+T64Di0mxl7dSw3MA==} - engines: {node: ^16.0.0 || >=18.0.0} - peerDependencies: - '@typescript-eslint/parser': ^6.0.0 || ^6.0.0-alpha - eslint: ^7.0.0 || ^8.0.0 - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - - '@typescript-eslint/eslint-plugin@7.18.0': - resolution: {integrity: sha512-94EQTWZ40mzBc42ATNIBimBEDltSJ9RQHCC8vc/PDbxi4k8dVwUAv4o98dk50M1zB+JGFxp43FP7f8+FP8R6Sw==} - engines: {node: ^18.18.0 || >=20.0.0} - peerDependencies: - '@typescript-eslint/parser': ^7.0.0 - eslint: ^8.56.0 - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - - '@typescript-eslint/eslint-plugin@8.24.1': - resolution: {integrity: sha512-ll1StnKtBigWIGqvYDVuDmXJHVH4zLVot1yQ4fJtLpL7qacwkxJc1T0bptqw+miBQ/QfUbhl1TcQ4accW5KUyA==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - peerDependencies: - '@typescript-eslint/parser': ^8.0.0 || ^8.0.0-alpha.0 - eslint: ^8.57.0 || ^9.0.0 - typescript: '>=4.8.4 <5.8.0' - - '@typescript-eslint/parser@6.21.0': - resolution: {integrity: sha512-tbsV1jPne5CkFQCgPBcDOt30ItF7aJoZL997JSF7MhGQqOeT3svWRYxiqlfA5RUdlHN6Fi+EI9bxqbdyAUZjYQ==} - engines: {node: ^16.0.0 || >=18.0.0} - peerDependencies: - eslint: ^7.0.0 || ^8.0.0 - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - - '@typescript-eslint/parser@7.18.0': - resolution: {integrity: sha512-4Z+L8I2OqhZV8qA132M4wNL30ypZGYOQVBfMgxDH/K5UX0PNqTu1c6za9ST5r9+tavvHiTWmBnKzpCJ/GlVFtg==} - engines: {node: ^18.18.0 || >=20.0.0} - peerDependencies: - eslint: ^8.56.0 - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - - '@typescript-eslint/parser@8.24.1': - resolution: {integrity: sha512-Tqoa05bu+t5s8CTZFaGpCH2ub3QeT9YDkXbPd3uQ4SfsLoh1/vv2GEYAioPoxCWJJNsenXlC88tRjwoHNts1oQ==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - peerDependencies: - eslint: ^8.57.0 || ^9.0.0 - typescript: '>=4.8.4 <5.8.0' - - '@typescript-eslint/scope-manager@5.62.0': - resolution: {integrity: sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - - '@typescript-eslint/scope-manager@6.21.0': - resolution: {integrity: sha512-OwLUIWZJry80O99zvqXVEioyniJMa+d2GrqpUTqi5/v5D5rOrppJVBPa0yKCblcigC0/aYAzxxqQ1B+DS2RYsg==} - engines: {node: ^16.0.0 || >=18.0.0} - - '@typescript-eslint/scope-manager@7.18.0': - resolution: {integrity: sha512-jjhdIE/FPF2B7Z1uzc6i3oWKbGcHb87Qw7AWj6jmEqNOfDFbJWtjt/XfwCpvNkpGWlcJaog5vTR+VV8+w9JflA==} - engines: {node: ^18.18.0 || >=20.0.0} - - '@typescript-eslint/scope-manager@8.24.1': - resolution: {integrity: sha512-OdQr6BNBzwRjNEXMQyaGyZzgg7wzjYKfX2ZBV3E04hUCBDv3GQCHiz9RpqdUIiVrMgJGkXm3tcEh4vFSHreS2Q==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - - '@typescript-eslint/type-utils@6.21.0': - resolution: {integrity: sha512-rZQI7wHfao8qMX3Rd3xqeYSMCL3SoiSQLBATSiVKARdFGCYSRvmViieZjqc58jKgs8Y8i9YvVVhRbHSTA4VBag==} - engines: {node: ^16.0.0 || >=18.0.0} - peerDependencies: - eslint: ^7.0.0 || ^8.0.0 - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - - '@typescript-eslint/type-utils@7.18.0': - resolution: {integrity: sha512-XL0FJXuCLaDuX2sYqZUUSOJ2sG5/i1AAze+axqmLnSkNEVMVYLF+cbwlB2w8D1tinFuSikHmFta+P+HOofrLeA==} - engines: {node: ^18.18.0 || >=20.0.0} - peerDependencies: - eslint: ^8.56.0 - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - - '@typescript-eslint/type-utils@8.24.1': - resolution: {integrity: sha512-/Do9fmNgCsQ+K4rCz0STI7lYB4phTtEXqqCAs3gZW0pnK7lWNkvWd5iW545GSmApm4AzmQXmSqXPO565B4WVrw==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - peerDependencies: - eslint: ^8.57.0 || ^9.0.0 - typescript: '>=4.8.4 <5.8.0' - - '@typescript-eslint/types@5.62.0': - resolution: {integrity: sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - - '@typescript-eslint/types@6.21.0': - resolution: {integrity: sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg==} - engines: {node: ^16.0.0 || >=18.0.0} - - '@typescript-eslint/types@7.18.0': - resolution: {integrity: sha512-iZqi+Ds1y4EDYUtlOOC+aUmxnE9xS/yCigkjA7XpTKV6nCBd3Hp/PRGGmdwnfkV2ThMyYldP1wRpm/id99spTQ==} - engines: {node: ^18.18.0 || >=20.0.0} - - '@typescript-eslint/types@8.24.1': - resolution: {integrity: sha512-9kqJ+2DkUXiuhoiYIUvIYjGcwle8pcPpdlfkemGvTObzgmYfJ5d0Qm6jwb4NBXP9W1I5tss0VIAnWFumz3mC5A==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - - '@typescript-eslint/typescript-estree@5.62.0': - resolution: {integrity: sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - peerDependencies: - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - - '@typescript-eslint/typescript-estree@6.21.0': - resolution: {integrity: sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ==} - engines: {node: ^16.0.0 || >=18.0.0} - peerDependencies: - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - - '@typescript-eslint/typescript-estree@7.18.0': - resolution: {integrity: sha512-aP1v/BSPnnyhMHts8cf1qQ6Q1IFwwRvAQGRvBFkWlo3/lH29OXA3Pts+c10nxRxIBrDnoMqzhgdwVe5f2D6OzA==} - engines: {node: ^18.18.0 || >=20.0.0} - peerDependencies: - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - - '@typescript-eslint/typescript-estree@8.24.1': - resolution: {integrity: sha512-UPyy4MJ/0RE648DSKQe9g0VDSehPINiejjA6ElqnFaFIhI6ZEiZAkUI0D5MCk0bQcTf/LVqZStvQ6K4lPn/BRg==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - peerDependencies: - typescript: '>=4.8.4 <5.8.0' - - '@typescript-eslint/utils@5.62.0': - resolution: {integrity: sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - peerDependencies: - eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 - - '@typescript-eslint/utils@6.21.0': - resolution: {integrity: sha512-NfWVaC8HP9T8cbKQxHcsJBY5YE1O33+jpMwN45qzWWaPDZgLIbo12toGMWnmhvCpd3sIxkpDw3Wv1B3dYrbDQQ==} - engines: {node: ^16.0.0 || >=18.0.0} - peerDependencies: - eslint: ^7.0.0 || ^8.0.0 - - '@typescript-eslint/utils@7.18.0': - resolution: {integrity: sha512-kK0/rNa2j74XuHVcoCZxdFBMF+aq/vH83CXAOHieC+2Gis4mF8jJXT5eAfyD3K0sAxtPuwxaIOIOvhwzVDt/kw==} - engines: {node: ^18.18.0 || >=20.0.0} - peerDependencies: - eslint: ^8.56.0 - - '@typescript-eslint/utils@8.24.1': - resolution: {integrity: sha512-OOcg3PMMQx9EXspId5iktsI3eMaXVwlhC8BvNnX6B5w9a4dVgpkQZuU8Hy67TolKcl+iFWq0XX+jbDGN4xWxjQ==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - peerDependencies: - eslint: ^8.57.0 || ^9.0.0 - typescript: '>=4.8.4 <5.8.0' - - '@typescript-eslint/visitor-keys@5.62.0': - resolution: {integrity: sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - - '@typescript-eslint/visitor-keys@6.21.0': - resolution: {integrity: sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A==} - engines: {node: ^16.0.0 || >=18.0.0} - - '@typescript-eslint/visitor-keys@7.18.0': - resolution: {integrity: sha512-cDF0/Gf81QpY3xYyJKDV14Zwdmid5+uuENhjH2EqFaF0ni+yAyq/LzMaIJdhNJXZI7uLzwIlA+V7oWoyn6Curg==} - engines: {node: ^18.18.0 || >=20.0.0} - - '@typescript-eslint/visitor-keys@8.24.1': - resolution: {integrity: sha512-EwVHlp5l+2vp8CoqJm9KikPZgi3gbdZAtabKT9KPShGeOcJhsv4Zdo3oc8T8I0uKEmYoU4ItyxbptjF08enaxg==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - - '@ungap/structured-clone@1.3.0': - resolution: {integrity: sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==} - - '@vanilla-extract/babel-plugin-debug-ids@1.2.0': - resolution: {integrity: sha512-z5nx2QBnOhvmlmBKeRX5sPVLz437wV30u+GJL+Hzj1rGiJYVNvgIIlzUpRNjVQ0MgAgiQIqIUbqPnmMc6HmDlQ==} - - '@vanilla-extract/compiler@0.1.2': - resolution: {integrity: sha512-B4T5P+Fz2Big0GRspQSi4BIyPF3cJ2/+/NWSI6Lw5Tq2JXv9nzjTGU4gKlWzyvaxt/0CLPE+Zo40fUsUv5lttQ==} - - '@vanilla-extract/css@1.17.1': - resolution: {integrity: sha512-tOHQXHm10FrJeXKFeWE09JfDGN/tvV6mbjwoNB9k03u930Vg021vTnbrCwVLkECj9Zvh/SHLBHJ4r2flGqfovw==} - - '@vanilla-extract/esbuild-plugin@2.3.15': - resolution: {integrity: sha512-Kgq86janU5KwAfHy4DuPYhY/WJQN5yRht3OntnKpC7NUL4R5BJeiLcmTY6oeRUlcGnrrDfWEfc4fbxJxD8PDXQ==} - peerDependencies: - esbuild: '>=0.17.6' - peerDependenciesMeta: - esbuild: - optional: true - - '@vanilla-extract/integration@8.0.1': - resolution: {integrity: sha512-ag64t+AM96XGOiloc5ryZHP5rbfleFyfoPKa42QqOuyAlLx/UpW5epSY+RUldizP4P/uLy5WFRiYlNddK1eQUQ==} - - '@vanilla-extract/private@1.0.6': - resolution: {integrity: sha512-ytsG/JLweEjw7DBuZ/0JCN4WAQgM9erfSTdS1NQY778hFQSZ6cfCDEZZ0sgVm4k54uNz6ImKB33AYvSR//fjxw==} - - '@vanilla-extract/recipes@0.5.5': - resolution: {integrity: sha512-VadU7+IFUwLNLMgks29AHav/K5h7DOEfTU91RItn5vwdPfzduodNg317YbgWCcpm7FSXkuR3B3X8ZOi95UOozA==} - peerDependencies: - '@vanilla-extract/css': ^1.0.0 - - '@vanilla-extract/sprinkles@1.6.3': - resolution: {integrity: sha512-oCHlQeYOBIJIA2yWy2GnY5wE2A7hGHDyJplJo4lb+KEIBcJWRnDJDg8ywDwQS5VfWJrBBO3drzYZPFpWQjAMiQ==} - peerDependencies: - '@vanilla-extract/css': ^1.0.0 - - '@vanilla-extract/vite-plugin@5.0.1': - resolution: {integrity: sha512-65IhqaNEAv/KjO1jJ52hSXiKUJqeFPlyY/hpRT71Y6bFoasHhzOcZKIQ/ze4fQovjjDL4US565rEiIn1I2qhFA==} - peerDependencies: - vite: ^5.0.0 || ^6.0.0 - - '@vercel/style-guide@5.2.0': - resolution: {integrity: sha512-fNSKEaZvSkiBoF6XEefs8CcgAV9K9e+MbcsDZjUsktHycKdA0jvjAzQi1W/FzLS+Nr5zZ6oejCwq/97dHUKe0g==} - engines: {node: '>=16'} - peerDependencies: - '@next/eslint-plugin-next': '>=12.3.0 <15' - eslint: '>=8.48.0 <9' - prettier: '>=3.0.0 <4' - typescript: '>=4.8.0 <6' - peerDependenciesMeta: - '@next/eslint-plugin-next': - optional: true - eslint: - optional: true - prettier: - optional: true - typescript: - optional: true - - '@vitejs/plugin-react@4.3.4': - resolution: {integrity: sha512-SCCPBJtYLdE8PX/7ZQAs1QAZ8Jqwih+0VBLum1EGqmCCQal+MIUqLCzj3ZUy8ufbC0cAM4LRlSTm7IQJwWT4ug==} - engines: {node: ^14.18.0 || >=16.0.0} - peerDependencies: - vite: ^4.2.0 || ^5.0.0 || ^6.0.0 - - '@vitest/coverage-v8@2.1.2': - resolution: {integrity: sha512-b7kHrFrs2urS0cOk5N10lttI8UdJ/yP3nB4JYTREvR5o18cR99yPpK4gK8oQgI42BVv0ILWYUSYB7AXkAUDc0g==} - peerDependencies: - '@vitest/browser': 2.1.2 - vitest: 2.1.2 - peerDependenciesMeta: - '@vitest/browser': - optional: true - - '@vitest/expect@2.0.5': - resolution: {integrity: sha512-yHZtwuP7JZivj65Gxoi8upUN2OzHTi3zVfjwdpu2WrvCZPLwsJ2Ey5ILIPccoW23dd/zQBlJ4/dhi7DWNyXCpA==} - - '@vitest/expect@2.1.2': - resolution: {integrity: sha512-FEgtlN8mIUSEAAnlvn7mP8vzaWhEaAEvhSXCqrsijM7K6QqjB11qoRZYEd4AKSCDz8p0/+yH5LzhZ47qt+EyPg==} - - '@vitest/mocker@2.1.2': - resolution: {integrity: sha512-ExElkCGMS13JAJy+812fw1aCv2QO/LBK6CyO4WOPAzLTmve50gydOlWhgdBJPx2ztbADUq3JVI0C5U+bShaeEA==} - peerDependencies: - '@vitest/spy': 2.1.2 - msw: ^2.3.5 - vite: ^5.0.0 - peerDependenciesMeta: - msw: - optional: true - vite: - optional: true - - '@vitest/pretty-format@2.0.5': - resolution: {integrity: sha512-h8k+1oWHfwTkyTkb9egzwNMfJAEx4veaPSnMeKbVSjp4euqGSbQlm5+6VHwTr7u4FJslVVsUG5nopCaAYdOmSQ==} - - '@vitest/pretty-format@2.1.2': - resolution: {integrity: sha512-FIoglbHrSUlOJPDGIrh2bjX1sNars5HbxlcsFKCtKzu4+5lpsRhOCVcuzp0fEhAGHkPZRIXVNzPcpSlkoZ3LuA==} - - '@vitest/pretty-format@2.1.9': - resolution: {integrity: sha512-KhRIdGV2U9HOUzxfiHmY8IFHTdqtOhIzCpd8WRdJiE7D/HUcZVD0EgQCVjm+Q9gkUXWgBvMmTtZgIG48wq7sOQ==} - - '@vitest/runner@2.1.2': - resolution: {integrity: sha512-UCsPtvluHO3u7jdoONGjOSil+uON5SSvU9buQh3lP7GgUXHp78guN1wRmZDX4wGK6J10f9NUtP6pO+SFquoMlw==} - - '@vitest/snapshot@2.1.2': - resolution: {integrity: sha512-xtAeNsZ++aRIYIUsek7VHzry/9AcxeULlegBvsdLncLmNCR6tR8SRjn8BbDP4naxtccvzTqZ+L1ltZlRCfBZFA==} - - '@vitest/spy@2.0.5': - resolution: {integrity: sha512-c/jdthAhvJdpfVuaexSrnawxZz6pywlTPe84LUB2m/4t3rl2fTo9NFGBG4oWgaD+FTgDDV8hJ/nibT7IfH3JfA==} - - '@vitest/spy@2.1.2': - resolution: {integrity: sha512-GSUi5zoy+abNRJwmFhBDC0yRuVUn8WMlQscvnbbXdKLXX9dE59YbfwXxuJ/mth6eeqIzofU8BB5XDo/Ns/qK2A==} - - '@vitest/utils@2.0.5': - resolution: {integrity: sha512-d8HKbqIcya+GR67mkZbrzhS5kKhtp8dQLcmRZLGTscGVg7yImT82cIrhtn2L8+VujWcy6KZweApgNmPsTAO/UQ==} - - '@vitest/utils@2.1.2': - resolution: {integrity: sha512-zMO2KdYy6mx56btx9JvAqAZ6EyS3g49krMPPrgOp1yxGZiA93HumGk+bZ5jIZtOg5/VBYl5eBmGRQHqq4FG6uQ==} - - '@vitest/utils@2.1.9': - resolution: {integrity: sha512-v0psaMSkNJ3A2NMrUEHFRzJtDPFn+/VWZ5WxImB21T9fjucJRmS7xCS3ppEnARb9y11OAzaD+P2Ps+b+BGX5iQ==} - - acorn-jsx@5.3.2: - resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} - peerDependencies: - acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 - - acorn@8.14.0: - resolution: {integrity: sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==} - engines: {node: '>=0.4.0'} - hasBin: true - - agent-base@7.1.3: - resolution: {integrity: sha512-jRR5wdylq8CkOe6hei19GGZnxM6rBGwFl3Bg0YItGDimvjGtAvdZk4Pu6Cl4u4Igsws4a1fd1Vq3ezrhn4KmFw==} - engines: {node: '>= 14'} - - ajv@6.12.6: - resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} - - ansi-colors@4.1.3: - resolution: {integrity: sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==} - engines: {node: '>=6'} - - ansi-regex@5.0.1: - resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} - engines: {node: '>=8'} - - ansi-regex@6.1.0: - resolution: {integrity: sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==} - engines: {node: '>=12'} - - ansi-styles@4.3.0: - resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} - engines: {node: '>=8'} - - ansi-styles@5.2.0: - resolution: {integrity: sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==} - engines: {node: '>=10'} - - ansi-styles@6.2.1: - resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==} - engines: {node: '>=12'} - - any-promise@1.3.0: - resolution: {integrity: sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==} - - argparse@1.0.10: - resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==} - - argparse@2.0.1: - resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} - - aria-query@5.3.0: - resolution: {integrity: sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==} - - aria-query@5.3.2: - resolution: {integrity: sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw==} - engines: {node: '>= 0.4'} - - array-buffer-byte-length@1.0.2: - resolution: {integrity: sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==} - engines: {node: '>= 0.4'} - - array-includes@3.1.8: - resolution: {integrity: sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ==} - engines: {node: '>= 0.4'} - - array-union@2.1.0: - resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} - engines: {node: '>=8'} - - array.prototype.findlast@1.2.5: - resolution: {integrity: sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==} - engines: {node: '>= 0.4'} - - array.prototype.findlastindex@1.2.5: - resolution: {integrity: sha512-zfETvRFA8o7EiNn++N5f/kaCw221hrpGsDmcpndVupkPzEc1Wuf3VgC0qby1BbHs7f5DVYjgtEU2LLh5bqeGfQ==} - engines: {node: '>= 0.4'} - - array.prototype.flat@1.3.3: - resolution: {integrity: sha512-rwG/ja1neyLqCuGZ5YYrznA62D4mZXg0i1cIskIUKSiqF3Cje9/wXAls9B9s1Wa2fomMsIv8czB8jZcPmxCXFg==} - engines: {node: '>= 0.4'} - - array.prototype.flatmap@1.3.3: - resolution: {integrity: sha512-Y7Wt51eKJSyi80hFrJCePGGNo5ktJCslFuboqJsbf57CCPcm5zztluPlc4/aD8sWsKvlwatezpV4U1efk8kpjg==} - engines: {node: '>= 0.4'} - - array.prototype.tosorted@1.1.4: - resolution: {integrity: sha512-p6Fx8B7b7ZhL/gmUsAy0D15WhvDccw3mnGNbZpi3pmeJdxtWsj2jEaI4Y6oo3XiHfzuSgPwKc04MYt6KgvC/wA==} - engines: {node: '>= 0.4'} - - arraybuffer.prototype.slice@1.0.4: - resolution: {integrity: sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==} - engines: {node: '>= 0.4'} - - assertion-error@2.0.1: - resolution: {integrity: sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA==} - engines: {node: '>=12'} - - ast-types-flow@0.0.8: - resolution: {integrity: sha512-OH/2E5Fg20h2aPrbe+QL8JZQFko0YZaF+j4mnQ7BGhfavO7OpSLa8a0y9sBwomHdSbkhTS8TQNayBfnW5DwbvQ==} - - ast-types@0.16.1: - resolution: {integrity: sha512-6t10qk83GOG8p0vKmaCr8eiilZwO171AvbROMtvvNiwrTly62t+7XkA8RdIIVbpMhCASAsxgAzdRSwh6nw/5Dg==} - engines: {node: '>=4'} - - async-function@1.0.0: - resolution: {integrity: sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA==} - engines: {node: '>= 0.4'} - - asynckit@0.4.0: - resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} - - available-typed-arrays@1.0.7: - resolution: {integrity: sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==} - engines: {node: '>= 0.4'} - - axe-core@4.10.2: - resolution: {integrity: sha512-RE3mdQ7P3FRSe7eqCWoeQ/Z9QXrtniSjp1wUjt5nRC3WIpz5rSCve6o3fsZ2aCpJtrZjSZgjwXAoTO5k4tEI0w==} - engines: {node: '>=4'} - - axobject-query@4.1.0: - resolution: {integrity: sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==} - engines: {node: '>= 0.4'} - - balanced-match@1.0.2: - resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} - - better-opn@3.0.2: - resolution: {integrity: sha512-aVNobHnJqLiUelTaHat9DZ1qM2w0C0Eym4LPI/3JxOnSokGVdsl1T1kN7TFvsEAD8G47A6VKQ0TVHqbBnYMJlQ==} - engines: {node: '>=12.0.0'} - - better-path-resolve@1.0.0: - resolution: {integrity: sha512-pbnl5XzGBdrFU/wT4jqmJVPn2B6UHPBOhzMQkY/SPUPB6QtUXtmBHBIwCbXJol93mOpGMnQyP/+BB19q04xj7g==} - engines: {node: '>=4'} - - brace-expansion@1.1.11: - resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} - - brace-expansion@2.0.1: - resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==} - - braces@3.0.3: - resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} - engines: {node: '>=8'} - - browser-assert@1.2.1: - resolution: {integrity: sha512-nfulgvOR6S4gt9UKCeGJOuSGBPGiFT6oQ/2UBnvTY/5aQ1PnksW72fhZkM30DzoRRv2WpwZf1vHHEr3mtuXIWQ==} - - browserslist@4.24.4: - resolution: {integrity: sha512-KDi1Ny1gSePi1vm0q4oxSF8b4DR44GF4BbmS2YdhPLOEqd8pDviZOGH/GsmRwoWJ2+5Lr085X7naowMwKHDG1A==} - engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} - hasBin: true - - builtin-modules@3.3.0: - resolution: {integrity: sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==} - engines: {node: '>=6'} - - bundle-require@5.1.0: - resolution: {integrity: sha512-3WrrOuZiyaaZPWiEt4G3+IffISVC9HYlWueJEBWED4ZH4aIAC2PnkdnuRrR94M+w6yGWn4AglWtJtBI8YqvgoA==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - peerDependencies: - esbuild: '>=0.18' - - cac@6.7.14: - resolution: {integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==} - engines: {node: '>=8'} - - call-bind-apply-helpers@1.0.2: - resolution: {integrity: sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==} - engines: {node: '>= 0.4'} - - call-bind@1.0.8: - resolution: {integrity: sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==} - engines: {node: '>= 0.4'} - - call-bound@1.0.3: - resolution: {integrity: sha512-YTd+6wGlNlPxSuri7Y6X8tY2dmm12UMH66RpKMhiX6rsk5wXXnYgbUcOt8kiS31/AjfoTOvCsE+w8nZQLQnzHA==} - engines: {node: '>= 0.4'} - - callsites@3.1.0: - resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} - engines: {node: '>=6'} - - caniuse-lite@1.0.30001700: - resolution: {integrity: sha512-2S6XIXwaE7K7erT8dY+kLQcpa5ms63XlRkMkReXjle+kf6c5g38vyMl+Z5y8dSxOFDhcFe+nxnn261PLxBSQsQ==} - - chai@5.2.0: - resolution: {integrity: sha512-mCuXncKXk5iCLhfhwTc0izo0gtEmpz5CtG2y8GiOINBlMVS6v8TMRc5TaLWKS6692m9+dVVfzgeVxR5UxWHTYw==} - engines: {node: '>=12'} - - chalk@3.0.0: - resolution: {integrity: sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==} - engines: {node: '>=8'} - - chalk@4.1.2: - resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} - engines: {node: '>=10'} - - chardet@0.7.0: - resolution: {integrity: sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==} - - check-error@2.1.1: - resolution: {integrity: sha512-OAlb+T7V4Op9OwdkjmguYRqncdlx5JiofwOAUkmTF+jNdHwzTaTs4sRAGpzLF3oOz5xAyDGrPgeIDFQmDOTiJw==} - engines: {node: '>= 16'} - - chokidar@4.0.3: - resolution: {integrity: sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==} - engines: {node: '>= 14.16.0'} - - chromatic@11.25.2: - resolution: {integrity: sha512-/9eQWn6BU1iFsop86t8Au21IksTRxwXAl7if8YHD05L2AbuMjClLWZo5cZojqrJHGKDhTqfrC2X2xE4uSm0iKw==} - hasBin: true - peerDependencies: - '@chromatic-com/cypress': ^0.*.* || ^1.0.0 - '@chromatic-com/playwright': ^0.*.* || ^1.0.0 - peerDependenciesMeta: - '@chromatic-com/cypress': - optional: true - '@chromatic-com/playwright': - optional: true - - ci-info@3.9.0: - resolution: {integrity: sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==} - engines: {node: '>=8'} - - clean-regexp@1.0.0: - resolution: {integrity: sha512-GfisEZEJvzKrmGWkvfhgzcz/BllN1USeqD2V6tg14OAOgaCD2Z/PUEuxnAZ/nPvmaHRG7a8y77p1T/IRQ4D1Hw==} - engines: {node: '>=4'} - - color-convert@2.0.1: - resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} - engines: {node: '>=7.0.0'} - - color-name@1.1.4: - resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} - - color-string@1.9.1: - resolution: {integrity: sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==} - - color@4.2.3: - resolution: {integrity: sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==} - engines: {node: '>=12.5.0'} - - combined-stream@1.0.8: - resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==} - engines: {node: '>= 0.8'} - - commander@4.1.1: - resolution: {integrity: sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==} - engines: {node: '>= 6'} - - concat-map@0.0.1: - resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} - - confbox@0.1.8: - resolution: {integrity: sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w==} - - consola@3.4.0: - resolution: {integrity: sha512-EiPU8G6dQG0GFHNR8ljnZFki/8a+cQwEQ+7wpxdChl02Q8HXlwEZWD5lqAF8vC2sEC3Tehr8hy7vErz88LHyUA==} - engines: {node: ^14.18.0 || >=16.10.0} - - convert-source-map@2.0.0: - resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} - - cross-spawn@7.0.6: - resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==} - engines: {node: '>= 8'} - - css-what@6.1.0: - resolution: {integrity: sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==} - engines: {node: '>= 6'} - - css.escape@1.5.1: - resolution: {integrity: sha512-YUifsXXuknHlUsmlgyY0PKzgPOr7/FjCePfHNt0jxm83wHZi44VDMQ7/fGNkjY3/jV1MC+1CmZbaHzugyeRtpg==} - - cssesc@3.0.0: - resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==} - engines: {node: '>=4'} - hasBin: true - - cssstyle@4.2.1: - resolution: {integrity: sha512-9+vem03dMXG7gDmZ62uqmRiMRNtinIZ9ZyuF6BdxzfOD+FdN5hretzynkn0ReS2DO2GSw76RWHs0UmJPI2zUjw==} - engines: {node: '>=18'} - - csstype@3.1.3: - resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==} - - damerau-levenshtein@1.0.8: - resolution: {integrity: sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==} - - data-urls@5.0.0: - resolution: {integrity: sha512-ZYP5VBHshaDAiVZxjbRVcFJpc+4xGgT0bK3vzy1HLN8jTO975HEbuYzZJcHoQEY5K1a0z8YayJkyVETa08eNTg==} - engines: {node: '>=18'} - - data-view-buffer@1.0.2: - resolution: {integrity: sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==} - engines: {node: '>= 0.4'} - - data-view-byte-length@1.0.2: - resolution: {integrity: sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ==} - engines: {node: '>= 0.4'} - - data-view-byte-offset@1.0.1: - resolution: {integrity: sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==} - engines: {node: '>= 0.4'} - - debug@2.6.9: - resolution: {integrity: sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==} - peerDependencies: - supports-color: '*' - peerDependenciesMeta: - supports-color: - optional: true - - debug@3.2.7: - resolution: {integrity: sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==} - peerDependencies: - supports-color: '*' - peerDependenciesMeta: - supports-color: - optional: true - - debug@4.4.0: - resolution: {integrity: sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==} - engines: {node: '>=6.0'} - peerDependencies: - supports-color: '*' - peerDependenciesMeta: - supports-color: - optional: true - - decimal.js@10.5.0: - resolution: {integrity: sha512-8vDa8Qxvr/+d94hSh5P3IJwI5t8/c0KsMp+g8bNw9cY2icONa5aPfvKeieW1WlG0WQYwwhJ7mjui2xtiePQSXw==} - - dedent@1.5.3: - resolution: {integrity: sha512-NHQtfOOW68WD8lgypbLA5oT+Bt0xXJhiYvoR6SmmNXZfpzOGXwdKWmcwG8N7PwVVWV3eF/68nmD9BaJSsTBhyQ==} - peerDependencies: - babel-plugin-macros: ^3.1.0 - peerDependenciesMeta: - babel-plugin-macros: - optional: true - - deep-eql@5.0.2: - resolution: {integrity: sha512-h5k/5U50IJJFpzfL6nO9jaaumfjO/f2NjK/oYB2Djzm4p9L+3T9qWpZqZ2hAbLPuuYq9wrU08WQyBTL5GbPk5Q==} - engines: {node: '>=6'} - - deep-is@0.1.4: - resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} - - deep-object-diff@1.1.9: - resolution: {integrity: sha512-Rn+RuwkmkDwCi2/oXOFS9Gsr5lJZu/yTGpK7wAaAIE75CC+LCGEZHpY6VQJa/RoJcrmaA/docWJZvYohlNkWPA==} - - deepmerge@4.3.1: - resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==} - engines: {node: '>=0.10.0'} - - define-data-property@1.1.4: - resolution: {integrity: sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==} - engines: {node: '>= 0.4'} - - define-lazy-prop@2.0.0: - resolution: {integrity: sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==} - engines: {node: '>=8'} - - define-properties@1.2.1: - resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==} - engines: {node: '>= 0.4'} - - delayed-stream@1.0.0: - resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==} - engines: {node: '>=0.4.0'} - - dequal@2.0.3: - resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==} - engines: {node: '>=6'} - - detect-indent@6.1.0: - resolution: {integrity: sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA==} - engines: {node: '>=8'} - - detect-indent@7.0.1: - resolution: {integrity: sha512-Mc7QhQ8s+cLrnUfU/Ji94vG/r8M26m8f++vyres4ZoojaRDpZ1eSIh/EpzLNwlWuvzSZ3UbDFspjFvTDXe6e/g==} - engines: {node: '>=12.20'} - - detect-libc@2.0.3: - resolution: {integrity: sha512-bwy0MGW55bG41VqxxypOsdSdGqLwXPI/focwgTYCFMbdUiBAxLg9CFzG08sz2aqzknwiX7Hkl0bQENjg8iLByw==} - engines: {node: '>=8'} - - detect-newline@4.0.1: - resolution: {integrity: sha512-qE3Veg1YXzGHQhlA6jzebZN2qVf6NX+A7m7qlhCGG30dJixrAQhYOsJjsnBjJkCSmuOPpCk30145fr8FV0bzog==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - - dir-glob@3.0.1: - resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} - engines: {node: '>=8'} - - doctrine@2.1.0: - resolution: {integrity: sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==} - engines: {node: '>=0.10.0'} - - doctrine@3.0.0: - resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==} - engines: {node: '>=6.0.0'} - - dom-accessibility-api@0.5.16: - resolution: {integrity: sha512-X7BJ2yElsnOJ30pZF4uIIDfBEVgF4XEBxL9Bxhy6dnrm5hkzqmsWHGTiHqRiITNhMyFLyAiWndIJP7Z1NTteDg==} - - dom-accessibility-api@0.6.3: - resolution: {integrity: sha512-7ZgogeTnjuHbo+ct10G9Ffp0mif17idi0IyWNVA/wcwcm7NPOD/WEHVP3n7n3MhXqxoIYm8d6MuZohYWIZ4T3w==} - - dotenv@16.0.3: - resolution: {integrity: sha512-7GO6HghkA5fYG9TYnNxi14/7K9f5occMlp3zXAuSxn7CKCxt9xbNWG7yF8hTCSUchlfWSe3uLmlPfigevRItzQ==} - engines: {node: '>=12'} - - dotenv@16.4.7: - resolution: {integrity: sha512-47qPchRCykZC03FhkYAhrvwU4xDBFIj1QPqaarj6mdM/hgUzfPHcpkHJOn3mJAufFeeAxAzeGsr5X0M4k6fLZQ==} - engines: {node: '>=12'} - - dunder-proto@1.0.1: - resolution: {integrity: sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==} - engines: {node: '>= 0.4'} - - eastasianwidth@0.2.0: - resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} - - electron-to-chromium@1.5.103: - resolution: {integrity: sha512-P6+XzIkfndgsrjROJWfSvVEgNHtPgbhVyTkwLjUM2HU/h7pZRORgaTlHqfAikqxKmdJMLW8fftrdGWbd/Ds0FA==} - - emoji-regex@8.0.0: - resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} - - emoji-regex@9.2.2: - resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} - - enhanced-resolve@5.18.1: - resolution: {integrity: sha512-ZSW3ma5GkcQBIpwZTSRAI8N71Uuwgs93IezB7mf7R60tC8ZbJideoDNKjHn2O9KIlx6rkGTTEk1xUCK2E1Y2Yg==} - engines: {node: '>=10.13.0'} - - enquirer@2.4.1: - resolution: {integrity: sha512-rRqJg/6gd538VHvR3PSrdRBb/1Vy2YfzHqzvbhGIQpDRKIa4FgV/54b5Q1xYSxOOwKvjXweS26E0Q+nAMwp2pQ==} - engines: {node: '>=8.6'} - - entities@4.5.0: - resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==} - engines: {node: '>=0.12'} - - error-ex@1.3.2: - resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==} - - es-abstract@1.23.9: - resolution: {integrity: sha512-py07lI0wjxAC/DcfK1S6G7iANonniZwTISvdPzk9hzeH0IZIshbuuFxLIU96OyF89Yb9hiqWn8M/bY83KY5vzA==} - engines: {node: '>= 0.4'} - - es-define-property@1.0.1: - resolution: {integrity: sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==} - engines: {node: '>= 0.4'} - - es-errors@1.3.0: - resolution: {integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==} - engines: {node: '>= 0.4'} - - es-iterator-helpers@1.2.1: - resolution: {integrity: sha512-uDn+FE1yrDzyC0pCo961B2IHbdM8y/ACZsKD4dG6WqrjV53BADjwa7D+1aom2rsNVfLyDgU/eigvlJGJ08OQ4w==} - engines: {node: '>= 0.4'} - - es-module-lexer@1.6.0: - resolution: {integrity: sha512-qqnD1yMU6tk/jnaMosogGySTZP8YtUgAffA9nMN+E/rjxcfRQ6IEk7IiozUjgxKoFHBGjTLnrHB/YC45r/59EQ==} - - es-object-atoms@1.1.1: - resolution: {integrity: sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==} - engines: {node: '>= 0.4'} - - es-set-tostringtag@2.1.0: - resolution: {integrity: sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==} - engines: {node: '>= 0.4'} - - es-shim-unscopables@1.1.0: - resolution: {integrity: sha512-d9T8ucsEhh8Bi1woXCf+TIKDIROLG5WCkxg8geBCbvk22kzwC5G2OnXVMO6FUsvQlgUUXQ2itephWDLqDzbeCw==} - engines: {node: '>= 0.4'} - - es-to-primitive@1.3.0: - resolution: {integrity: sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==} - engines: {node: '>= 0.4'} - - esbuild-register@3.6.0: - resolution: {integrity: sha512-H2/S7Pm8a9CL1uhp9OvjwrBh5Pvx0H8qVOxNu8Wed9Y7qv56MPtq+GGM8RJpq6glYJn9Wspr8uw7l55uyinNeg==} - peerDependencies: - esbuild: '>=0.12 <1' - - esbuild@0.21.5: - resolution: {integrity: sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==} - engines: {node: '>=12'} - hasBin: true - - esbuild@0.24.2: - resolution: {integrity: sha512-+9egpBW8I3CD5XPe0n6BfT5fxLzxrlDzqydF3aviG+9ni1lDC/OvMHcxqEFV0+LANZG5R1bFMWfUrjVsdwxJvA==} - engines: {node: '>=18'} - hasBin: true - - escalade@3.2.0: - resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==} - engines: {node: '>=6'} - - escape-string-regexp@1.0.5: - resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==} - engines: {node: '>=0.8.0'} - - escape-string-regexp@4.0.0: - resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} - engines: {node: '>=10'} - - eslint-config-prettier@9.1.0: - resolution: {integrity: sha512-NSWl5BFQWEPi1j4TjVNItzYV7dZXZ+wP6I6ZhrBGpChQhZRUaElihE9uRRkcbRnNb76UMKDF3r+WTmNcGPKsqw==} - hasBin: true - peerDependencies: - eslint: '>=7.0.0' - - eslint-config-turbo@2.4.2: - resolution: {integrity: sha512-yPiW5grffSWETp/3bVPUXWQkHfiLoOBb3wuBbM90HlKkLOhggySn9C6/yUccprqRguMgR5OzXIuzDuUnX6bulw==} - peerDependencies: - eslint: '>6.6.0' - turbo: '>2.0.0' - - eslint-import-resolver-alias@1.1.2: - resolution: {integrity: sha512-WdviM1Eu834zsfjHtcGHtGfcu+F30Od3V7I9Fi57uhBEwPkjDcii7/yW8jAT+gOhn4P/vOxxNAXbFAKsrrc15w==} - engines: {node: '>= 4'} - peerDependencies: - eslint-plugin-import: '>=1.4.0' - - eslint-import-resolver-node@0.3.9: - resolution: {integrity: sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==} - - eslint-import-resolver-typescript@3.8.3: - resolution: {integrity: sha512-A0bu4Ks2QqDWNpeEgTQMPTngaMhuDu4yv6xpftBMAf+1ziXnpx+eSR1WRfoPTe2BAiAjHFZ7kSNx1fvr5g5pmQ==} - engines: {node: ^14.18.0 || >=16.0.0} - peerDependencies: - eslint: '*' - eslint-plugin-import: '*' - eslint-plugin-import-x: '*' - peerDependenciesMeta: - eslint-plugin-import: - optional: true - eslint-plugin-import-x: - optional: true - - eslint-module-utils@2.12.0: - resolution: {integrity: sha512-wALZ0HFoytlyh/1+4wuZ9FJCD/leWHQzzrxJ8+rebyReSLk7LApMyd3WJaLVoN+D5+WIdJyDK1c6JnE65V4Zyg==} - engines: {node: '>=4'} - peerDependencies: - '@typescript-eslint/parser': '*' - eslint: '*' - eslint-import-resolver-node: '*' - eslint-import-resolver-typescript: '*' - eslint-import-resolver-webpack: '*' - peerDependenciesMeta: - '@typescript-eslint/parser': - optional: true - eslint: - optional: true - eslint-import-resolver-node: - optional: true - eslint-import-resolver-typescript: - optional: true - eslint-import-resolver-webpack: - optional: true - - eslint-plugin-eslint-comments@3.2.0: - resolution: {integrity: sha512-0jkOl0hfojIHHmEHgmNdqv4fmh7300NdpA9FFpF7zaoLvB/QeXOGNLIo86oAveJFrfB1p05kC8hpEMHM8DwWVQ==} - engines: {node: '>=6.5.0'} - peerDependencies: - eslint: '>=4.19.1' - - eslint-plugin-import@2.31.0: - resolution: {integrity: sha512-ixmkI62Rbc2/w8Vfxyh1jQRTdRTF52VxwRVHl/ykPAmqG+Nb7/kNn+byLP0LxPgI7zWA16Jt82SybJInmMia3A==} - engines: {node: '>=4'} - peerDependencies: - '@typescript-eslint/parser': '*' - eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 || ^9 - peerDependenciesMeta: - '@typescript-eslint/parser': - optional: true - - eslint-plugin-jest@27.9.0: - resolution: {integrity: sha512-QIT7FH7fNmd9n4se7FFKHbsLKGQiw885Ds6Y/sxKgCZ6natwCsXdgPOADnYVxN2QrRweF0FZWbJ6S7Rsn7llug==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - peerDependencies: - '@typescript-eslint/eslint-plugin': ^5.0.0 || ^6.0.0 || ^7.0.0 - eslint: ^7.0.0 || ^8.0.0 - jest: '*' - peerDependenciesMeta: - '@typescript-eslint/eslint-plugin': - optional: true - jest: - optional: true - - eslint-plugin-jsx-a11y@6.10.2: - resolution: {integrity: sha512-scB3nz4WmG75pV8+3eRUQOHZlNSUhFNq37xnpgRkCCELU3XMvXAxLk1eqWWyE22Ki4Q01Fnsw9BA3cJHDPgn2Q==} - engines: {node: '>=4.0'} - peerDependencies: - eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9 - - eslint-plugin-only-warn@1.1.0: - resolution: {integrity: sha512-2tktqUAT+Q3hCAU0iSf4xAN1k9zOpjK5WO8104mB0rT/dGhOa09582HN5HlbxNbPRZ0THV7nLGvzugcNOSjzfA==} - engines: {node: '>=6'} - - eslint-plugin-playwright@0.16.0: - resolution: {integrity: sha512-DcHpF0SLbNeh9MT4pMzUGuUSnJ7q5MWbP8sSEFIMS6j7Ggnduq8ghNlfhURgty4c1YFny7Ge9xYTO1FSAoV2Vw==} - peerDependencies: - eslint: '>=7' - eslint-plugin-jest: '>=25' - peerDependenciesMeta: - eslint-plugin-jest: - optional: true - - eslint-plugin-react-hooks@4.6.2: - resolution: {integrity: sha512-QzliNJq4GinDBcD8gPB5v0wh6g8q3SUi6EFF0x8N/BL9PoVs0atuGc47ozMRyOWAKdwaZ5OnbOEa3WR+dSGKuQ==} - engines: {node: '>=10'} - peerDependencies: - eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 - - eslint-plugin-react-hooks@5.1.0: - resolution: {integrity: sha512-mpJRtPgHN2tNAvZ35AMfqeB3Xqeo273QxrHJsbBEPWODRM4r0yB6jfoROqKEYrOn27UtRPpcpHc2UqyBSuUNTw==} - engines: {node: '>=10'} - peerDependencies: - eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 || ^9.0.0 - - eslint-plugin-react-refresh@0.4.19: - resolution: {integrity: sha512-eyy8pcr/YxSYjBoqIFSrlbn9i/xvxUFa8CjzAYo9cFjgGXqq1hyjihcpZvxRLalpaWmueWR81xn7vuKmAFijDQ==} - peerDependencies: - eslint: '>=8.40' - - eslint-plugin-react@7.37.4: - resolution: {integrity: sha512-BGP0jRmfYyvOyvMoRX/uoUeW+GqNj9y16bPQzqAHf3AYII/tDs+jMN0dBVkl88/OZwNGwrVFxE7riHsXVfy/LQ==} - engines: {node: '>=4'} - peerDependencies: - eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7 - - eslint-plugin-storybook@0.11.3: - resolution: {integrity: sha512-gDBnBZiyk4ZG7OMSJRaHBcuJ8TMCXgMIQ3HB/XvtN0SvSio2ZOIeYD3yGj39g/DbyCe/Bg02j/ip9tWlDEs82A==} - engines: {node: '>= 18'} - peerDependencies: - eslint: '>=8' - typescript: '>=4.8.4 <5.8.0' - - eslint-plugin-testing-library@6.5.0: - resolution: {integrity: sha512-Ls5TUfLm5/snocMAOlofSOJxNN0aKqwTlco7CrNtMjkTdQlkpSMaeTCDHCuXfzrI97xcx2rSCNeKeJjtpkNC1w==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0, npm: '>=6'} - peerDependencies: - eslint: ^7.5.0 || ^8.0.0 || ^9.0.0 - - eslint-plugin-tsdoc@0.2.17: - resolution: {integrity: sha512-xRmVi7Zx44lOBuYqG8vzTXuL6IdGOeF9nHX17bjJ8+VE6fsxpdGem0/SBTmAwgYMKYB1WBkqRJVQ+n8GK041pA==} - - eslint-plugin-turbo@2.4.2: - resolution: {integrity: sha512-67IZtvOFaWDnUmYMV3luRIE1kqL+ok5MxPEsIPUqH2vQggML7jmZFZx/P9jhXAoFH+pViEz5QEzDa2DBLHqzQg==} - peerDependencies: - eslint: '>6.6.0' - turbo: '>2.0.0' - - eslint-plugin-unicorn@48.0.1: - resolution: {integrity: sha512-FW+4r20myG/DqFcCSzoumaddKBicIPeFnTrifon2mWIzlfyvzwyqZjqVP7m4Cqr/ZYisS2aiLghkUWaPg6vtCw==} - engines: {node: '>=16'} - peerDependencies: - eslint: '>=8.44.0' - - eslint-scope@5.1.1: - resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==} - engines: {node: '>=8.0.0'} - - eslint-scope@7.2.2: - resolution: {integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - - eslint-scope@8.2.0: - resolution: {integrity: sha512-PHlWUfG6lvPc3yvP5A4PNyBL1W8fkDUccmI21JUu/+GKZBoH/W5u6usENXUrWFRsyoW5ACUjFGgAFQp5gUlb/A==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - - eslint-visitor-keys@2.1.0: - resolution: {integrity: sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==} - engines: {node: '>=10'} - - eslint-visitor-keys@3.4.3: - resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - - eslint-visitor-keys@4.2.0: - resolution: {integrity: sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - - eslint@8.57.1: - resolution: {integrity: sha512-ypowyDxpVSYpkXr9WPv2PAZCtNip1Mv5KTW0SCurXv/9iOpcrH9PaqUElksqEB6pChqHGDRCFTyrZlGhnLNGiA==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - deprecated: This version is no longer supported. Please see https://eslint.org/version-support for other options. - hasBin: true - - eslint@9.21.0: - resolution: {integrity: sha512-KjeihdFqTPhOMXTt7StsDxriV4n66ueuF/jfPNC3j/lduHwr/ijDwJMsF+wyMJethgiKi5wniIE243vi07d3pg==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - hasBin: true - peerDependencies: - jiti: '*' - peerDependenciesMeta: - jiti: - optional: true - - espree@10.3.0: - resolution: {integrity: sha512-0QYC8b24HWY8zjRnDTL6RiHfDbAWn63qb4LMj1Z4b076A4une81+z03Kg7l7mn/48PUTqoLptSXez8oknU8Clg==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - - espree@9.6.1: - resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - - esprima@4.0.1: - resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==} - engines: {node: '>=4'} - hasBin: true - - esquery@1.6.0: - resolution: {integrity: sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==} - engines: {node: '>=0.10'} - - esrecurse@4.3.0: - resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} - engines: {node: '>=4.0'} - - estraverse@4.3.0: - resolution: {integrity: sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==} - engines: {node: '>=4.0'} - - estraverse@5.3.0: - resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} - engines: {node: '>=4.0'} - - estree-walker@2.0.2: - resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==} - - estree-walker@3.0.3: - resolution: {integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==} - - esutils@2.0.3: - resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} - engines: {node: '>=0.10.0'} - - eval@0.1.8: - resolution: {integrity: sha512-EzV94NYKoO09GLXGjXj9JIlXijVck4ONSr5wiCWDvhsvj5jxSrzTmRU/9C1DyB6uToszLs8aifA6NQ7lEQdvFw==} - engines: {node: '>= 0.8'} - - extendable-error@0.1.7: - resolution: {integrity: sha512-UOiS2in6/Q0FK0R0q6UY9vYpQ21mr/Qn1KOnte7vsACuNJf514WvCCUHSRCPcgjPT2bAhNIJdlE6bVap1GKmeg==} - - external-editor@3.1.0: - resolution: {integrity: sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==} - engines: {node: '>=4'} - - fast-deep-equal@3.1.3: - resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} - - fast-glob@3.3.3: - resolution: {integrity: sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==} - engines: {node: '>=8.6.0'} - - fast-json-stable-stringify@2.1.0: - resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} - - fast-levenshtein@2.0.6: - resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} - - fastq@1.19.0: - resolution: {integrity: sha512-7SFSRCNjBQIZH/xZR3iy5iQYR8aGBE0h3VG6/cwlbrpdciNYBMotQav8c1XI3HjHH+NikUpP53nPdlZSdWmFzA==} - - fdir@6.4.3: - resolution: {integrity: sha512-PMXmW2y1hDDfTSRc9gaXIuCCRpuoz3Kaz8cUelp3smouvfT632ozg2vrT6lJsHKKOF59YLbOGfAWGUcKEfRMQw==} - peerDependencies: - picomatch: ^3 || ^4 - peerDependenciesMeta: - picomatch: - optional: true - - file-entry-cache@6.0.1: - resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==} - engines: {node: ^10.12.0 || >=12.0.0} - - file-entry-cache@8.0.0: - resolution: {integrity: sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==} - engines: {node: '>=16.0.0'} - - filesize@10.1.6: - resolution: {integrity: sha512-sJslQKU2uM33qH5nqewAwVB2QgR6w1aMNsYUp3aN5rMRyXEwJGmZvaWzeJFNTOXWlHQyBFCWrdj3fV/fsTOX8w==} - engines: {node: '>= 10.4.0'} - - fill-range@7.1.1: - resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} - engines: {node: '>=8'} - - find-up@4.1.0: - resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==} - engines: {node: '>=8'} - - find-up@5.0.0: - resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} - engines: {node: '>=10'} - - flat-cache@3.2.0: - resolution: {integrity: sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==} - engines: {node: ^10.12.0 || >=12.0.0} - - flat-cache@4.0.1: - resolution: {integrity: sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==} - engines: {node: '>=16'} - - flatted@3.3.3: - resolution: {integrity: sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==} - - for-each@0.3.5: - resolution: {integrity: sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==} - engines: {node: '>= 0.4'} - - foreground-child@3.3.0: - resolution: {integrity: sha512-Ld2g8rrAyMYFXBhEqMz8ZAHBi4J4uS1i/CxGMDnjyFWddMXLVcDp051DZfu+t7+ab7Wv6SMqpWmyFIj5UbfFvg==} - engines: {node: '>=14'} - - form-data@4.0.2: - resolution: {integrity: sha512-hGfm/slu0ZabnNt4oaRZ6uREyfCj6P4fT/n6A1rGV+Z0VdGXjfOhVUpkn6qVQONHGIFwmveGXyDs75+nr6FM8w==} - engines: {node: '>= 6'} - - fs-extra@7.0.1: - resolution: {integrity: sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==} - engines: {node: '>=6 <7 || >=8'} - - fs-extra@8.1.0: - resolution: {integrity: sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==} - engines: {node: '>=6 <7 || >=8'} - - fs.realpath@1.0.0: - resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} - - fsevents@2.3.3: - resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} - engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} - os: [darwin] - - function-bind@1.1.2: - resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} - - function.prototype.name@1.1.8: - resolution: {integrity: sha512-e5iwyodOHhbMr/yNrc7fDYG4qlbIvI5gajyzPnb5TCwyhjApznQh1BMFou9b30SevY43gCJKXycoCBjMbsuW0Q==} - engines: {node: '>= 0.4'} - - functions-have-names@1.2.3: - resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==} - - gensync@1.0.0-beta.2: - resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==} - engines: {node: '>=6.9.0'} - - get-intrinsic@1.2.7: - resolution: {integrity: sha512-VW6Pxhsrk0KAOqs3WEd0klDiF/+V7gQOpAvY1jVU/LHmaD/kQO4523aiJuikX/QAKYiW6x8Jh+RJej1almdtCA==} - engines: {node: '>= 0.4'} - - get-proto@1.0.1: - resolution: {integrity: sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==} - engines: {node: '>= 0.4'} - - get-stdin@9.0.0: - resolution: {integrity: sha512-dVKBjfWisLAicarI2Sf+JuBE/DghV4UzNAVe9yhEJuzeREd3JhOTE9cUaJTeSa77fsbQUK3pcOpJfM59+VKZaA==} - engines: {node: '>=12'} - - get-symbol-description@1.1.0: - resolution: {integrity: sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==} - engines: {node: '>= 0.4'} - - get-tsconfig@4.10.0: - resolution: {integrity: sha512-kGzZ3LWWQcGIAmg6iWvXn0ei6WDtV26wzHRMwDSzmAbcXrTEXxHy6IehI6/4eT6VRKyMP1eF1VqwrVUmE/LR7A==} - - git-hooks-list@3.2.0: - resolution: {integrity: sha512-ZHG9a1gEhUMX1TvGrLdyWb9kDopCBbTnI8z4JgRMYxsijWipgjSEYoPWqBuIB0DnRnvqlQSEeVmzpeuPm7NdFQ==} - - glob-parent@5.1.2: - resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} - engines: {node: '>= 6'} - - glob-parent@6.0.2: - resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} - engines: {node: '>=10.13.0'} - - glob@10.4.5: - resolution: {integrity: sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==} - hasBin: true - - glob@7.2.3: - resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} - deprecated: Glob versions prior to v9 are no longer supported - - globals@11.12.0: - resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==} - engines: {node: '>=4'} - - globals@13.24.0: - resolution: {integrity: sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==} - engines: {node: '>=8'} - - globals@14.0.0: - resolution: {integrity: sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==} - engines: {node: '>=18'} - - globals@15.15.0: - resolution: {integrity: sha512-7ACyT3wmyp3I61S4fG682L0VA2RGD9otkqGJIwNUMF1SWUombIIk+af1unuDYgMm082aHYwD+mzJvv9Iu8dsgg==} - engines: {node: '>=18'} - - globalthis@1.0.4: - resolution: {integrity: sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==} - engines: {node: '>= 0.4'} - - globby@11.1.0: - resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==} - engines: {node: '>=10'} - - gopd@1.2.0: - resolution: {integrity: sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==} - engines: {node: '>= 0.4'} - - graceful-fs@4.2.11: - resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} - - graphemer@1.4.0: - resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} - - has-bigints@1.1.0: - resolution: {integrity: sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==} - engines: {node: '>= 0.4'} - - has-flag@4.0.0: - resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} - engines: {node: '>=8'} - - has-property-descriptors@1.0.2: - resolution: {integrity: sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==} - - has-proto@1.2.0: - resolution: {integrity: sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==} - engines: {node: '>= 0.4'} - - has-symbols@1.1.0: - resolution: {integrity: sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==} - engines: {node: '>= 0.4'} - - has-tostringtag@1.0.2: - resolution: {integrity: sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==} - engines: {node: '>= 0.4'} - - hasown@2.0.2: - resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} - engines: {node: '>= 0.4'} - - hosted-git-info@2.8.9: - resolution: {integrity: sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==} - - html-encoding-sniffer@4.0.0: - resolution: {integrity: sha512-Y22oTqIU4uuPgEemfz7NDJz6OeKf12Lsu+QC+s3BVpda64lTiMYCyGwg5ki4vFxkMwQdeZDl2adZoqUgdFuTgQ==} - engines: {node: '>=18'} - - html-escaper@2.0.2: - resolution: {integrity: sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==} - - http-proxy-agent@7.0.2: - resolution: {integrity: sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==} - engines: {node: '>= 14'} - - https-proxy-agent@7.0.6: - resolution: {integrity: sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==} - engines: {node: '>= 14'} - - human-id@4.1.1: - resolution: {integrity: sha512-3gKm/gCSUipeLsRYZbbdA1BD83lBoWUkZ7G9VFrhWPAU76KwYo5KR8V28bpoPm/ygy0x5/GCbpRQdY7VLYCoIg==} - hasBin: true - - iconv-lite@0.4.24: - resolution: {integrity: sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==} - engines: {node: '>=0.10.0'} - - iconv-lite@0.6.3: - resolution: {integrity: sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==} - engines: {node: '>=0.10.0'} - - ignore@5.3.2: - resolution: {integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==} - engines: {node: '>= 4'} - - import-fresh@3.3.1: - resolution: {integrity: sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==} - engines: {node: '>=6'} - - imurmurhash@0.1.4: - resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} - engines: {node: '>=0.8.19'} - - indent-string@4.0.0: - resolution: {integrity: sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==} - engines: {node: '>=8'} - - inflight@1.0.6: - resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} - deprecated: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful. - - inherits@2.0.4: - resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} - - internal-slot@1.1.0: - resolution: {integrity: sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==} - engines: {node: '>= 0.4'} - - is-arguments@1.2.0: - resolution: {integrity: sha512-7bVbi0huj/wrIAOzb8U1aszg9kdi3KN/CyU19CTI7tAoZYEZoL9yCDXpbXN+uPsuWnP02cyug1gleqq+TU+YCA==} - engines: {node: '>= 0.4'} - - is-array-buffer@3.0.5: - resolution: {integrity: sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==} - engines: {node: '>= 0.4'} - - is-arrayish@0.2.1: - resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==} - - is-arrayish@0.3.2: - resolution: {integrity: sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==} - - is-async-function@2.1.1: - resolution: {integrity: sha512-9dgM/cZBnNvjzaMYHVoxxfPj2QXt22Ev7SuuPrs+xav0ukGB0S6d4ydZdEiM48kLx5kDV+QBPrpVnFyefL8kkQ==} - engines: {node: '>= 0.4'} - - is-bigint@1.1.0: - resolution: {integrity: sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==} - engines: {node: '>= 0.4'} - - is-boolean-object@1.2.2: - resolution: {integrity: sha512-wa56o2/ElJMYqjCjGkXri7it5FbebW5usLw/nPmCMs5DeZ7eziSYZhSmPRn0txqeW4LnAmQQU7FgqLpsEFKM4A==} - engines: {node: '>= 0.4'} - - is-builtin-module@3.2.1: - resolution: {integrity: sha512-BSLE3HnV2syZ0FK0iMA/yUGplUeMmNz4AW5fnTunbCIqZi4vG3WjJT9FHMy5D69xmAYBHXQhJdALdpwVxV501A==} - engines: {node: '>=6'} - - is-bun-module@1.3.0: - resolution: {integrity: sha512-DgXeu5UWI0IsMQundYb5UAOzm6G2eVnarJ0byP6Tm55iZNKceD59LNPA2L4VvsScTtHcw0yEkVwSf7PC+QoLSA==} - - is-callable@1.2.7: - resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==} - engines: {node: '>= 0.4'} - - is-core-module@2.16.1: - resolution: {integrity: sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==} - engines: {node: '>= 0.4'} - - is-data-view@1.0.2: - resolution: {integrity: sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==} - engines: {node: '>= 0.4'} - - is-date-object@1.1.0: - resolution: {integrity: sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==} - engines: {node: '>= 0.4'} - - is-docker@2.2.1: - resolution: {integrity: sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==} - engines: {node: '>=8'} - hasBin: true - - is-extglob@2.1.1: - resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} - engines: {node: '>=0.10.0'} - - is-finalizationregistry@1.1.1: - resolution: {integrity: sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==} - engines: {node: '>= 0.4'} - - is-fullwidth-code-point@3.0.0: - resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} - engines: {node: '>=8'} - - is-generator-function@1.1.0: - resolution: {integrity: sha512-nPUB5km40q9e8UfN/Zc24eLlzdSf9OfKByBw9CIdw4H1giPMeA0OIJvbchsCu4npfI2QcMVBsGEBHKZ7wLTWmQ==} - engines: {node: '>= 0.4'} - - is-glob@4.0.3: - resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} - engines: {node: '>=0.10.0'} - - is-map@2.0.3: - resolution: {integrity: sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==} - engines: {node: '>= 0.4'} - - is-number-object@1.1.1: - resolution: {integrity: sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==} - engines: {node: '>= 0.4'} - - is-number@7.0.0: - resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} - engines: {node: '>=0.12.0'} - - is-path-inside@3.0.3: - resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==} - engines: {node: '>=8'} - - is-plain-obj@4.1.0: - resolution: {integrity: sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==} - engines: {node: '>=12'} - - is-potential-custom-element-name@1.0.1: - resolution: {integrity: sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==} - - is-regex@1.2.1: - resolution: {integrity: sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==} - engines: {node: '>= 0.4'} - - is-set@2.0.3: - resolution: {integrity: sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==} - engines: {node: '>= 0.4'} - - is-shared-array-buffer@1.0.4: - resolution: {integrity: sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==} - engines: {node: '>= 0.4'} - - is-string@1.1.1: - resolution: {integrity: sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==} - engines: {node: '>= 0.4'} - - is-subdir@1.2.0: - resolution: {integrity: sha512-2AT6j+gXe/1ueqbW6fLZJiIw3F8iXGJtt0yDrZaBhAZEG1raiTxKWU+IPqMCzQAXOUCKdA4UDMgacKH25XG2Cw==} - engines: {node: '>=4'} - - is-symbol@1.1.1: - resolution: {integrity: sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==} - engines: {node: '>= 0.4'} - - is-typed-array@1.1.15: - resolution: {integrity: sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==} - engines: {node: '>= 0.4'} - - is-weakmap@2.0.2: - resolution: {integrity: sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==} - engines: {node: '>= 0.4'} - - is-weakref@1.1.1: - resolution: {integrity: sha512-6i9mGWSlqzNMEqpCp93KwRS1uUOodk2OJ6b+sq7ZPDSy2WuI5NFIxp/254TytR8ftefexkWn5xNiHUNpPOfSew==} - engines: {node: '>= 0.4'} - - is-weakset@2.0.4: - resolution: {integrity: sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==} - engines: {node: '>= 0.4'} - - is-windows@1.0.2: - resolution: {integrity: sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==} - engines: {node: '>=0.10.0'} - - is-wsl@2.2.0: - resolution: {integrity: sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==} - engines: {node: '>=8'} - - isarray@2.0.5: - resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==} - - isexe@2.0.0: - resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} - - istanbul-lib-coverage@3.2.2: - resolution: {integrity: sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==} - engines: {node: '>=8'} - - istanbul-lib-report@3.0.1: - resolution: {integrity: sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==} - engines: {node: '>=10'} - - istanbul-lib-source-maps@5.0.6: - resolution: {integrity: sha512-yg2d+Em4KizZC5niWhQaIomgf5WlL4vOOjZ5xGCmF8SnPE/mDWWXgvRExdcpCgh9lLRRa1/fSYp2ymmbJ1pI+A==} - engines: {node: '>=10'} - - istanbul-reports@3.1.7: - resolution: {integrity: sha512-BewmUXImeuRk2YY0PVbxgKAysvhRPUQE0h5QRM++nVWyubKGV0l8qQ5op8+B2DOmwSe63Jivj0BjkPQVf8fP5g==} - engines: {node: '>=8'} - - iterator.prototype@1.1.5: - resolution: {integrity: sha512-H0dkQoCa3b2VEeKQBOxFph+JAbcrQdE7KC0UkqwpLmv2EC4P41QXP+rqo9wYodACiG5/WM5s9oDApTU8utwj9g==} - engines: {node: '>= 0.4'} - - jackspeak@3.4.3: - resolution: {integrity: sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==} - - javascript-stringify@2.1.0: - resolution: {integrity: sha512-JVAfqNPTvNq3sB/VHQJAFxN/sPgKnsKrCwyRt15zwNCdrMMJDdcEOdubuy+DuJYYdm0ox1J4uzEuYKkN+9yhVg==} - - jju@1.4.0: - resolution: {integrity: sha512-8wb9Yw966OSxApiCt0K3yNJL8pnNeIv+OEq2YMidz4FKP6nonSRoOXc80iXY4JaN2FC11B9qsNmDsm+ZOfMROA==} - - joycon@3.1.1: - resolution: {integrity: sha512-34wB/Y7MW7bzjKRjUKTa46I2Z7eV62Rkhva+KkopW7Qvv/OSWBqvkSY7vusOPrNuZcUG3tApvdVgNB8POj3SPw==} - engines: {node: '>=10'} - - js-tokens@4.0.0: - resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} - - js-yaml@3.14.1: - resolution: {integrity: sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==} - hasBin: true - - js-yaml@4.1.0: - resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} - hasBin: true - - jsdoc-type-pratt-parser@4.1.0: - resolution: {integrity: sha512-Hicd6JK5Njt2QB6XYFS7ok9e37O8AYk3jTcppG4YVQnYjOemymvTcmc7OWsmq/Qqj5TdRFO5/x/tIPmBeRtGHg==} - engines: {node: '>=12.0.0'} - - jsdom@26.0.0: - resolution: {integrity: sha512-BZYDGVAIriBWTpIxYzrXjv3E/4u8+/pSG5bQdIYCbNCGOvsPkDQfTVLAIXAf9ETdCpduCVTkDe2NNZ8NIwUVzw==} - engines: {node: '>=18'} - peerDependencies: - canvas: ^3.0.0 - peerDependenciesMeta: - canvas: - optional: true - - jsesc@0.5.0: - resolution: {integrity: sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==} - hasBin: true - - jsesc@3.1.0: - resolution: {integrity: sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==} - engines: {node: '>=6'} - hasBin: true - - json-buffer@3.0.1: - resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} - - json-parse-even-better-errors@2.3.1: - resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==} - - json-schema-traverse@0.4.1: - resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} - - json-stable-stringify-without-jsonify@1.0.1: - resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} - - json5@1.0.2: - resolution: {integrity: sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==} - hasBin: true - - json5@2.2.3: - resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==} - engines: {node: '>=6'} - hasBin: true - - jsonfile@4.0.0: - resolution: {integrity: sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==} - - jsonfile@6.1.0: - resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==} - - jsx-ast-utils@3.3.5: - resolution: {integrity: sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==} - engines: {node: '>=4.0'} - - keyv@4.5.4: - resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} - - language-subtag-registry@0.3.23: - resolution: {integrity: sha512-0K65Lea881pHotoGEa5gDlMxt3pctLi2RplBb7Ezh4rRdLEOtgi7n4EwK9lamnUCkKBqaeKRVebTq6BAxSkpXQ==} - - language-tags@1.0.9: - resolution: {integrity: sha512-MbjN408fEndfiQXbFQ1vnd+1NoLDsnQW41410oQBXiyXDMYH5z505juWa4KUE1LqxRC7DgOgZDbKLxHIwm27hA==} - engines: {node: '>=0.10'} - - levn@0.4.1: - resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} - engines: {node: '>= 0.8.0'} - - lilconfig@3.1.3: - resolution: {integrity: sha512-/vlFKAoH5Cgt3Ie+JLhRbwOsCQePABiU3tJ1egGvyQ+33R/vcwM2Zl2QR/LzjsBeItPt3oSVXapn+m4nQDvpzw==} - engines: {node: '>=14'} - - lines-and-columns@1.2.4: - resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} - - load-tsconfig@0.2.5: - resolution: {integrity: sha512-IXO6OCs9yg8tMKzfPZ1YmheJbZCiEsnBdcB03l0OcfK9prKnJb96siuHCr5Fl37/yo9DnKU+TLpxzTUspw9shg==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - - locate-path@5.0.0: - resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==} - engines: {node: '>=8'} - - locate-path@6.0.0: - resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} - engines: {node: '>=10'} - - lodash.merge@4.6.2: - resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} - - lodash.sortby@4.7.0: - resolution: {integrity: sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA==} - - lodash.startcase@4.4.0: - resolution: {integrity: sha512-+WKqsK294HMSc2jEbNgpHpd0JfIBhp7rEV4aqXWqFr6AlXov+SlcgB1Fv01y2kGe3Gc8nMW7VA0SrGuSkRfIEg==} - - lodash@4.17.21: - resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} - - loose-envify@1.4.0: - resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==} - hasBin: true - - loupe@3.1.3: - resolution: {integrity: sha512-kkIp7XSkP78ZxJEsSxW3712C6teJVoeHHwgo9zJ380de7IYyJ2ISlxojcH2pC5OFLewESmnRi/+XCDIEEVyoug==} - - lqip-modern@2.2.1: - resolution: {integrity: sha512-5XlvR9zczhDiNstMztH5kF3xs2cVbvPu7xmGWpgd4Qwb7UastgplSihZt2PHX9CBkZ241En9miZEDXyy0TgdiQ==} - engines: {node: '>=18'} - - lru-cache@10.4.3: - resolution: {integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==} - - lru-cache@5.1.1: - resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} - - lz-string@1.5.0: - resolution: {integrity: sha512-h5bgJWpxJNswbU7qCrV0tIKQCaS3blPDrqKWx+QxzuzL1zGUzij9XCWLrSLsJPu5t+eWA/ycetzYAO5IOMcWAQ==} - hasBin: true - - magic-string@0.27.0: - resolution: {integrity: sha512-8UnnX2PeRAPZuN12svgR9j7M1uWMovg/CEnIwIG0LFkXSJJe4PdfUGiTGl8V9bsBHFUtfVINcSyYxd7q+kx9fA==} - engines: {node: '>=12'} - - magic-string@0.30.17: - resolution: {integrity: sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==} - - magicast@0.3.5: - resolution: {integrity: sha512-L0WhttDl+2BOsybvEOLK7fW3UA0OQ0IQ2d6Zl2x/a6vVRs3bAY0ECOSHHeL5jD+SbOpOCUEi0y1DgHEn9Qn1AQ==} - - make-dir@4.0.0: - resolution: {integrity: sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==} - engines: {node: '>=10'} - - map-or-similar@1.5.0: - resolution: {integrity: sha512-0aF7ZmVon1igznGI4VS30yugpduQW3y3GkcgGJOp7d8x8QrizhigUxjI/m2UojsXXto+jLAH3KSz+xOJTiORjg==} - - math-intrinsics@1.1.0: - resolution: {integrity: sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==} - engines: {node: '>= 0.4'} - - media-query-parser@2.0.2: - resolution: {integrity: sha512-1N4qp+jE0pL5Xv4uEcwVUhIkwdUO3S/9gML90nqKA7v7FcOS5vUtatfzok9S9U1EJU8dHWlcv95WLnKmmxZI9w==} - - memoizerific@1.11.3: - resolution: {integrity: sha512-/EuHYwAPdLtXwAwSZkh/Gutery6pD2KYd44oQLhAvQp/50mpyduZh8Q7PYHXTCJ+wuXxt7oij2LXyIJOOYFPog==} - - merge2@1.4.1: - resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} - engines: {node: '>= 8'} - - micromatch@4.0.8: - resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==} - engines: {node: '>=8.6'} - - mime-db@1.52.0: - resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} - engines: {node: '>= 0.6'} - - mime-types@2.1.35: - resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==} - engines: {node: '>= 0.6'} - - min-indent@1.0.1: - resolution: {integrity: sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==} - engines: {node: '>=4'} - - minimatch@3.1.2: - resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} - - minimatch@9.0.3: - resolution: {integrity: sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==} - engines: {node: '>=16 || 14 >=14.17'} - - minimatch@9.0.5: - resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==} - engines: {node: '>=16 || 14 >=14.17'} - - minimist@1.2.8: - resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} - - minipass@7.1.2: - resolution: {integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==} - engines: {node: '>=16 || 14 >=14.17'} - - mlly@1.7.4: - resolution: {integrity: sha512-qmdSIPC4bDJXgZTCR7XosJiNKySV7O215tsPtDN9iEO/7q/76b/ijtgRu/+epFXSJhijtTCCGp3DWS549P3xKw==} - - modern-ahocorasick@1.1.0: - resolution: {integrity: sha512-sEKPVl2rM+MNVkGQt3ChdmD8YsigmXdn5NifZn6jiwn9LRJpWm8F3guhaqrJT/JOat6pwpbXEk6kv+b9DMIjsQ==} - - mri@1.2.0: - resolution: {integrity: sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==} - engines: {node: '>=4'} - - ms@2.0.0: - resolution: {integrity: sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==} - - ms@2.1.3: - resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} - - mz@2.7.0: - resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==} - - nanoid@3.3.8: - resolution: {integrity: sha512-WNLf5Sd8oZxOm+TzppcYk8gVOgP+l58xNy58D0nbUnOxOWRWvlcCV4kUF7ltmI6PsrLl/BgKEyS4mqsGChFN0w==} - engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} - hasBin: true - - natural-compare@1.4.0: - resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} - - needle@2.9.1: - resolution: {integrity: sha512-6R9fqJ5Zcmf+uYaFgdIHmLwNldn5HbK8L5ybn7Uz+ylX/rnOsSp1AHcvQSrCaFN+qNM1wpymHqD7mVasEOlHGQ==} - engines: {node: '>= 4.4.x'} - hasBin: true - - node-fetch@2.7.0: - resolution: {integrity: sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==} - engines: {node: 4.x || >=6.0.0} - peerDependencies: - encoding: ^0.1.0 - peerDependenciesMeta: - encoding: - optional: true - - node-releases@2.0.19: - resolution: {integrity: sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==} - - normalize-package-data@2.5.0: - resolution: {integrity: sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==} - - nwsapi@2.2.16: - resolution: {integrity: sha512-F1I/bimDpj3ncaNDhfyMWuFqmQDBwDB0Fogc2qpL3BWvkQteFD/8BzWuIRl83rq0DXfm8SGt/HFhLXZyljTXcQ==} - - object-assign@4.1.1: - resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} - engines: {node: '>=0.10.0'} - - object-inspect@1.13.4: - resolution: {integrity: sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==} - engines: {node: '>= 0.4'} - - object-keys@1.1.1: - resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==} - engines: {node: '>= 0.4'} - - object.assign@4.1.7: - resolution: {integrity: sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==} - engines: {node: '>= 0.4'} - - object.entries@1.1.8: - resolution: {integrity: sha512-cmopxi8VwRIAw/fkijJohSfpef5PdN0pMQJN6VC/ZKvn0LIknWD8KtgY6KlQdEc4tIjcQ3HxSMmnvtzIscdaYQ==} - engines: {node: '>= 0.4'} - - object.fromentries@2.0.8: - resolution: {integrity: sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==} - engines: {node: '>= 0.4'} - - object.groupby@1.0.3: - resolution: {integrity: sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ==} - engines: {node: '>= 0.4'} - - object.values@1.2.1: - resolution: {integrity: sha512-gXah6aZrcUxjWg2zR2MwouP2eHlCBzdV4pygudehaKXSGW4v2AsRQUK+lwwXhii6KFZcunEnmSUoYp5CXibxtA==} - engines: {node: '>= 0.4'} - - once@1.4.0: - resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} - - open@8.4.2: - resolution: {integrity: sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==} - engines: {node: '>=12'} - - optionator@0.9.4: - resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==} - engines: {node: '>= 0.8.0'} - - os-tmpdir@1.0.2: - resolution: {integrity: sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==} - engines: {node: '>=0.10.0'} - - outdent@0.5.0: - resolution: {integrity: sha512-/jHxFIzoMXdqPzTaCpFzAAWhpkSjZPF4Vsn6jAfNpmbH/ymsmd7Qc6VE9BGn0L6YMj6uwpQLxCECpus4ukKS9Q==} - - own-keys@1.0.1: - resolution: {integrity: sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg==} - engines: {node: '>= 0.4'} - - p-filter@2.1.0: - resolution: {integrity: sha512-ZBxxZ5sL2HghephhpGAQdoskxplTwr7ICaehZwLIlfL6acuVgZPm8yBNuRAFBGEqtD/hmUeq9eqLg2ys9Xr/yw==} - engines: {node: '>=8'} - - p-limit@2.3.0: - resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==} - engines: {node: '>=6'} - - p-limit@3.1.0: - resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} - engines: {node: '>=10'} - - p-locate@4.1.0: - resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==} - engines: {node: '>=8'} - - p-locate@5.0.0: - resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} - engines: {node: '>=10'} - - p-map@2.1.0: - resolution: {integrity: sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==} - engines: {node: '>=6'} - - p-map@7.0.3: - resolution: {integrity: sha512-VkndIv2fIB99swvQoA65bm+fsmt6UNdGeIB0oxBs+WhAhdh08QA04JXpI7rbB9r08/nkbysKoya9rtDERYOYMA==} - engines: {node: '>=18'} - - p-try@2.2.0: - resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==} - engines: {node: '>=6'} - - package-json-from-dist@1.0.1: - resolution: {integrity: sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==} - - package-manager-detector@0.2.9: - resolution: {integrity: sha512-+vYvA/Y31l8Zk8dwxHhL3JfTuHPm6tlxM2A3GeQyl7ovYnSp1+mzAxClxaOr0qO1TtPxbQxetI7v5XqKLJZk7Q==} - - parent-module@1.0.1: - resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} - engines: {node: '>=6'} - - parse-json@5.2.0: - resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==} - engines: {node: '>=8'} - - parse5@7.2.1: - resolution: {integrity: sha512-BuBYQYlv1ckiPdQi/ohiivi9Sagc9JG+Ozs0r7b/0iK3sKmrb0b9FdWdBbOdx6hBCM/F9Ir82ofnBhtZOjCRPQ==} - - path-exists@4.0.0: - resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} - engines: {node: '>=8'} - - path-is-absolute@1.0.1: - resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} - engines: {node: '>=0.10.0'} - - path-key@3.1.1: - resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} - engines: {node: '>=8'} - - path-parse@1.0.7: - resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} - - path-scurry@1.11.1: - resolution: {integrity: sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==} - engines: {node: '>=16 || 14 >=14.18'} - - path-type@4.0.0: - resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} - engines: {node: '>=8'} - - pathe@1.1.2: - resolution: {integrity: sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==} - - pathe@2.0.3: - resolution: {integrity: sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==} - - pathval@2.0.0: - resolution: {integrity: sha512-vE7JKRyES09KiunauX7nd2Q9/L7lhok4smP9RZTDeD4MVs72Dp2qNFVz39Nz5a0FVEW0BJR6C0DYrq6unoziZA==} - engines: {node: '>= 14.16'} - - picocolors@1.1.1: - resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==} - - picomatch@2.3.1: - resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} - engines: {node: '>=8.6'} - - picomatch@4.0.2: - resolution: {integrity: sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==} - engines: {node: '>=12'} - - pify@4.0.1: - resolution: {integrity: sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==} - engines: {node: '>=6'} - - pirates@4.0.6: - resolution: {integrity: sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==} - engines: {node: '>= 6'} - - pkg-types@1.3.1: - resolution: {integrity: sha512-/Jm5M4RvtBFVkKWRu2BLUTNP8/M2a+UwuAX+ae4770q1qVGtfjG+WTCupoZixokjmHiry8uI+dlY8KXYV5HVVQ==} - - pluralize@8.0.0: - resolution: {integrity: sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==} - engines: {node: '>=4'} - - polished@4.3.1: - resolution: {integrity: sha512-OBatVyC/N7SCW/FaDHrSd+vn0o5cS855TOmYi4OkdWUMSJCET/xip//ch8xGUvtr3i44X9LVyWwQlRMTN3pwSA==} - engines: {node: '>=10'} - - possible-typed-array-names@1.1.0: - resolution: {integrity: sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==} - engines: {node: '>= 0.4'} - - postcss-load-config@6.0.1: - resolution: {integrity: sha512-oPtTM4oerL+UXmx+93ytZVN82RrlY/wPUV8IeDxFrzIjXOLF1pN+EmKPLbubvKHT2HC20xXsCAH2Z+CKV6Oz/g==} - engines: {node: '>= 18'} - peerDependencies: - jiti: '>=1.21.0' - postcss: '>=8.0.9' - tsx: ^4.8.1 - yaml: ^2.4.2 - peerDependenciesMeta: - jiti: - optional: true - postcss: - optional: true - tsx: - optional: true - yaml: - optional: true - - postcss@8.5.3: - resolution: {integrity: sha512-dle9A3yYxlBSrt8Fu+IpjGT8SY8hN0mlaA6GY8t0P5PjIOZemULz/E2Bnm/2dcUOena75OTNkHI76uZBNUUq3A==} - engines: {node: ^10 || ^12 || >=14} - - prelude-ls@1.2.1: - resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} - engines: {node: '>= 0.8.0'} - - prettier-plugin-packagejson@2.5.8: - resolution: {integrity: sha512-BaGOF63I0IJZoudxpuQe17naV93BRtK8b3byWktkJReKEMX9CC4qdGUzThPDVO/AUhPzlqDiAXbp18U6X8wLKA==} - peerDependencies: - prettier: '>= 1.16.0' - peerDependenciesMeta: - prettier: - optional: true - - prettier@2.8.8: - resolution: {integrity: sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==} - engines: {node: '>=10.13.0'} - hasBin: true - - prettier@3.5.2: - resolution: {integrity: sha512-lc6npv5PH7hVqozBR7lkBNOGXV9vMwROAPlumdBkX0wTbbzPu/U1hk5yL8p2pt4Xoc+2mkT8t/sow2YrV/M5qg==} - engines: {node: '>=14'} - hasBin: true - - pretty-format@27.5.1: - resolution: {integrity: sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} - - prismjs@1.29.0: - resolution: {integrity: sha512-Kx/1w86q/epKcmte75LNrEoT+lX8pBpavuAbvJWRXar7Hz8jrtF+e3vY751p0R8H9HdArwaCTNDDzHg/ScJK1Q==} - engines: {node: '>=6'} - - probe-image-size@7.2.3: - resolution: {integrity: sha512-HubhG4Rb2UH8YtV4ba0Vp5bQ7L78RTONYu/ujmCu5nBI8wGv24s4E9xSKBi0N1MowRpxk76pFCpJtW0KPzOK0w==} - - process@0.11.10: - resolution: {integrity: sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==} - engines: {node: '>= 0.6.0'} - - prop-types@15.8.1: - resolution: {integrity: sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==} - - punycode@2.3.1: - resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} - engines: {node: '>=6'} - - queue-microtask@1.2.3: - resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} - - react-confetti@6.2.2: - resolution: {integrity: sha512-K+kTyOPgX+ZujMZ+Rmb7pZdHBvg+DzinG/w4Eh52WOB8/pfO38efnnrtEZNJmjTvLxc16RBYO+tPM68Fg8viBA==} - engines: {node: '>=16'} - peerDependencies: - react: ^16.3.0 || ^17.0.1 || ^18.0.0 || ^19.0.0 - - react-docgen-typescript@2.2.2: - resolution: {integrity: sha512-tvg2ZtOpOi6QDwsb3GZhOjDkkX0h8Z2gipvTg6OVMUyoYoURhEiRNePT8NZItTVCDh39JJHnLdfCOkzoLbFnTg==} - peerDependencies: - typescript: '>= 4.3.x' - - react-docgen@7.1.1: - resolution: {integrity: sha512-hlSJDQ2synMPKFZOsKo9Hi8WWZTC7POR8EmWvTSjow+VDgKzkmjQvFm2fk0tmRw+f0vTOIYKlarR0iL4996pdg==} - engines: {node: '>=16.14.0'} - - react-dom@18.3.1: - resolution: {integrity: sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==} - peerDependencies: - react: ^18.3.1 - - react-is@16.13.1: - resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==} - - react-is@17.0.2: - resolution: {integrity: sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==} - - react-refresh@0.14.2: - resolution: {integrity: sha512-jCvmsr+1IUSMUyzOkRcvnVbX3ZYC6g9TDrDbFuFmRDq7PD4yaGbLKNQL6k2jnArV8hjYxh7hVhAZB6s9HDGpZA==} - engines: {node: '>=0.10.0'} - - react@18.3.1: - resolution: {integrity: sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==} - engines: {node: '>=0.10.0'} - - read-pkg-up@7.0.1: - resolution: {integrity: sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==} - engines: {node: '>=8'} - - read-pkg@5.2.0: - resolution: {integrity: sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==} - engines: {node: '>=8'} - - read-yaml-file@1.1.0: - resolution: {integrity: sha512-VIMnQi/Z4HT2Fxuwg5KrY174U1VdUIASQVWXXyqtNRtxSr9IYkn1rsI6Tb6HsrHCmB7gVpNwX6JxPTHcH6IoTA==} - engines: {node: '>=6'} - - readdirp@4.1.2: - resolution: {integrity: sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==} - engines: {node: '>= 14.18.0'} - - recast@0.23.9: - resolution: {integrity: sha512-Hx/BGIbwj+Des3+xy5uAtAbdCyqK9y9wbBcDFDYanLS9JnMqf7OeF87HQwUimE87OEc72mr6tkKUKMBBL+hF9Q==} - engines: {node: '>= 4'} - - redent@3.0.0: - resolution: {integrity: sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==} - engines: {node: '>=8'} - - reflect.getprototypeof@1.0.10: - resolution: {integrity: sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==} - engines: {node: '>= 0.4'} - - regenerator-runtime@0.14.1: - resolution: {integrity: sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==} - - regexp-tree@0.1.27: - resolution: {integrity: sha512-iETxpjK6YoRWJG5o6hXLwvjYAoW+FEZn9os0PD/b6AP6xQwsa/Y7lCVgIixBbUPMfhu+i2LtdeAqVTgGlQarfA==} - hasBin: true - - regexp.prototype.flags@1.5.4: - resolution: {integrity: sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==} - engines: {node: '>= 0.4'} - - regjsparser@0.10.0: - resolution: {integrity: sha512-qx+xQGZVsy55CH0a1hiVwHmqjLryfh7wQyF5HO07XJ9f7dQMY/gPQHhlyDkIzJKC+x2fUCpCcUODUUUFrm7SHA==} - hasBin: true - - require-like@0.1.2: - resolution: {integrity: sha512-oyrU88skkMtDdauHDuKVrgR+zuItqr6/c//FXzvmxRGMexSDc6hNvJInGW3LL46n+8b50RykrvwSUIIQH2LQ5A==} - - resolve-from@4.0.0: - resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} - engines: {node: '>=4'} - - resolve-from@5.0.0: - resolution: {integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==} - engines: {node: '>=8'} - - resolve-pkg-maps@1.0.0: - resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==} - - resolve@1.19.0: - resolution: {integrity: sha512-rArEXAgsBG4UgRGcynxWIWKFvh/XZCcS8UJdHhwy91zwAvCZIbcs+vAbflgBnNjYMs/i/i+/Ux6IZhML1yPvxg==} - - resolve@1.22.10: - resolution: {integrity: sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w==} - engines: {node: '>= 0.4'} - hasBin: true - - resolve@2.0.0-next.5: - resolution: {integrity: sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==} - hasBin: true - - reusify@1.0.4: - resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} - engines: {iojs: '>=1.0.0', node: '>=0.10.0'} - - rimraf@3.0.2: - resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} - deprecated: Rimraf versions prior to v4 are no longer supported - hasBin: true - - rollup@4.34.8: - resolution: {integrity: sha512-489gTVMzAYdiZHFVA/ig/iYFllCcWFHMvUHI1rpFmkoUtRlQxqh6/yiNqnYibjMZ2b/+FUQwldG+aLsEt6bglQ==} - engines: {node: '>=18.0.0', npm: '>=8.0.0'} - hasBin: true - - rrweb-cssom@0.8.0: - resolution: {integrity: sha512-guoltQEx+9aMf2gDZ0s62EcV8lsXR+0w8915TC3ITdn2YueuNjdAYh/levpU9nFaoChh9RUS5ZdQMrKfVEN9tw==} - - run-parallel@1.2.0: - resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} - - safe-array-concat@1.1.3: - resolution: {integrity: sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q==} - engines: {node: '>=0.4'} - - safe-push-apply@1.0.0: - resolution: {integrity: sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA==} - engines: {node: '>= 0.4'} - - safe-regex-test@1.1.0: - resolution: {integrity: sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==} - engines: {node: '>= 0.4'} - - safer-buffer@2.1.2: - resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} - - sax@1.4.1: - resolution: {integrity: sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg==} - - saxes@6.0.0: - resolution: {integrity: sha512-xAg7SOnEhrm5zI3puOOKyy1OMcMlIJZYNJY7xLBwSze0UjhPLnWfj2GF2EpT0jmzaJKIWKHLsaSSajf35bcYnA==} - engines: {node: '>=v12.22.7'} - - scheduler@0.23.2: - resolution: {integrity: sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==} - - semver@5.7.2: - resolution: {integrity: sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==} - hasBin: true - - semver@6.3.1: - resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} - hasBin: true - - semver@7.7.1: - resolution: {integrity: sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==} - engines: {node: '>=10'} - hasBin: true - - set-function-length@1.2.2: - resolution: {integrity: sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==} - engines: {node: '>= 0.4'} - - set-function-name@2.0.2: - resolution: {integrity: sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==} - engines: {node: '>= 0.4'} - - set-proto@1.0.0: - resolution: {integrity: sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==} - engines: {node: '>= 0.4'} - - sharp@0.33.5: - resolution: {integrity: sha512-haPVm1EkS9pgvHrQ/F3Xy+hgcuMV0Wm9vfIBSiwZ05k+xgb0PkBQpGsAA/oWdDobNaZTH5ppvHtzCFbnSEwHVw==} - engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} - - shebang-command@2.0.0: - resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} - engines: {node: '>=8'} - - shebang-regex@3.0.0: - resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} - engines: {node: '>=8'} - - side-channel-list@1.0.0: - resolution: {integrity: sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==} - engines: {node: '>= 0.4'} - - side-channel-map@1.0.1: - resolution: {integrity: sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==} - engines: {node: '>= 0.4'} - - side-channel-weakmap@1.0.2: - resolution: {integrity: sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==} - engines: {node: '>= 0.4'} - - side-channel@1.1.0: - resolution: {integrity: sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==} - engines: {node: '>= 0.4'} - - siginfo@2.0.0: - resolution: {integrity: sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==} - - signal-exit@4.1.0: - resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} - engines: {node: '>=14'} - - simple-swizzle@0.2.2: - resolution: {integrity: sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==} - - slash@3.0.0: - resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} - engines: {node: '>=8'} - - sort-object-keys@1.1.3: - resolution: {integrity: sha512-855pvK+VkU7PaKYPc+Jjnmt4EzejQHyhhF33q31qG8x7maDzkeFhAAThdCYay11CISO+qAMwjOBP+fPZe0IPyg==} - - sort-package-json@2.14.0: - resolution: {integrity: sha512-xBRdmMjFB/KW3l51mP31dhlaiFmqkHLfWTfZAno8prb/wbDxwBPWFpxB16GZbiPbYr3wL41H8Kx22QIDWRe8WQ==} - hasBin: true - - source-map-js@1.2.1: - resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==} - engines: {node: '>=0.10.0'} - - source-map@0.6.1: - resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==} - engines: {node: '>=0.10.0'} - - source-map@0.8.0-beta.0: - resolution: {integrity: sha512-2ymg6oRBpebeZi9UUNsgQ89bhx01TcTkmNTGnNO88imTmbSgy4nfujrgVEFKWpMTEGA11EDkTt7mqObTPdigIA==} - engines: {node: '>= 8'} - - spawndamnit@3.0.1: - resolution: {integrity: sha512-MmnduQUuHCoFckZoWnXsTg7JaiLBJrKFj9UI2MbRPGaJeVpsLcVBu6P/IGZovziM/YBsellCmsprgNA+w0CzVg==} - - spdx-correct@3.2.0: - resolution: {integrity: sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==} - - spdx-exceptions@2.5.0: - resolution: {integrity: sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==} - - spdx-expression-parse@3.0.1: - resolution: {integrity: sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==} - - spdx-license-ids@3.0.21: - resolution: {integrity: sha512-Bvg/8F5XephndSK3JffaRqdT+gyhfqIPwDHpX80tJrF8QQRYMo8sNMeaZ2Dp5+jhwKnUmIOyFFQfHRkjJm5nXg==} - - sprintf-js@1.0.3: - resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==} - - stable-hash@0.0.4: - resolution: {integrity: sha512-LjdcbuBeLcdETCrPn9i8AYAZ1eCtu4ECAWtP7UleOiZ9LzVxRzzUZEoZ8zB24nhkQnDWyET0I+3sWokSDS3E7g==} - - stackback@0.0.2: - resolution: {integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==} - - std-env@3.8.0: - resolution: {integrity: sha512-Bc3YwwCB+OzldMxOXJIIvC6cPRWr/LxOp48CdQTOkPyk/t4JWWJbrilwBd7RJzKV8QW7tJkcgAmeuLLJugl5/w==} - - storybook@8.6.0-alpha.0: - resolution: {integrity: sha512-7M1UAEBT59Fh3Pplny+uheacGJZvsrHt/aM9ogthzulhCB8VVbN+b8fz4Kzc+QV3Ni/ohcyUOd+m+LJfP6hriw==} - hasBin: true - peerDependencies: - prettier: ^2 || ^3 - peerDependenciesMeta: - prettier: - optional: true - - stream-parser@0.3.1: - resolution: {integrity: sha512-bJ/HgKq41nlKvlhccD5kaCr/P+Hu0wPNKPJOH7en+YrJu/9EgqUF+88w5Jb6KNcjOFMhfX4B2asfeAtIGuHObQ==} - - string-width@4.2.3: - resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} - engines: {node: '>=8'} - - string-width@5.1.2: - resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==} - engines: {node: '>=12'} - - string.prototype.includes@2.0.1: - resolution: {integrity: sha512-o7+c9bW6zpAdJHTtujeePODAhkuicdAryFsfVKwA+wGw89wJ4GTY484WTucM9hLtDEOpOvI+aHnzqnC5lHp4Rg==} - engines: {node: '>= 0.4'} - - string.prototype.matchall@4.0.12: - resolution: {integrity: sha512-6CC9uyBL+/48dYizRf7H7VAYCMCNTBeM78x/VTUe9bFEaxBepPJDa1Ow99LqI/1yF7kuy7Q3cQsYMrcjGUcskA==} - engines: {node: '>= 0.4'} - - string.prototype.repeat@1.0.0: - resolution: {integrity: sha512-0u/TldDbKD8bFCQ/4f5+mNRrXwZ8hg2w7ZR8wa16e8z9XpePWl3eGEcUD0OXpEH/VJH/2G3gjUtR3ZOiBe2S/w==} - - string.prototype.trim@1.2.10: - resolution: {integrity: sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA==} - engines: {node: '>= 0.4'} - - string.prototype.trimend@1.0.9: - resolution: {integrity: sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ==} - engines: {node: '>= 0.4'} - - string.prototype.trimstart@1.0.8: - resolution: {integrity: sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==} - engines: {node: '>= 0.4'} - - strip-ansi@6.0.1: - resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} - engines: {node: '>=8'} - - strip-ansi@7.1.0: - resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==} - engines: {node: '>=12'} - - strip-bom@3.0.0: - resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==} - engines: {node: '>=4'} - - strip-indent@3.0.0: - resolution: {integrity: sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==} - engines: {node: '>=8'} - - strip-indent@4.0.0: - resolution: {integrity: sha512-mnVSV2l+Zv6BLpSD/8V87CW/y9EmmbYzGCIavsnsI6/nwn26DwffM/yztm30Z/I2DY9wdS3vXVCMnHDgZaVNoA==} - engines: {node: '>=12'} - - strip-json-comments@3.1.1: - resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} - engines: {node: '>=8'} - - sucrase@3.35.0: - resolution: {integrity: sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==} - engines: {node: '>=16 || 14 >=14.17'} - hasBin: true - - supports-color@7.2.0: - resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} - engines: {node: '>=8'} - - supports-preserve-symlinks-flag@1.0.0: - resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} - engines: {node: '>= 0.4'} - - symbol-tree@3.2.4: - resolution: {integrity: sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==} - - synckit@0.9.2: - resolution: {integrity: sha512-vrozgXDQwYO72vHjUb/HnFbQx1exDjoKzqx23aXEg2a9VIg2TSFZ8FmeZpTjUCFMYw7mpX4BE2SFu8wI7asYsw==} - engines: {node: ^14.18.0 || >=16.0.0} - - tapable@2.2.1: - resolution: {integrity: sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==} - engines: {node: '>=6'} - - term-size@2.2.1: - resolution: {integrity: sha512-wK0Ri4fOGjv/XPy8SBHZChl8CM7uMc5VML7SqiQ0zG7+J5Vr+RMQDoHa2CNT6KHUnTGIXH34UDMkPzAUyapBZg==} - engines: {node: '>=8'} - - test-exclude@7.0.1: - resolution: {integrity: sha512-pFYqmTw68LXVjeWJMST4+borgQP2AyMNbg1BpZh9LbyhUeNkeaPF9gzfPGUAnSMV3qPYdWUwDIjjCLiSDOl7vg==} - engines: {node: '>=18'} - - text-table@0.2.0: - resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==} - - thenify-all@1.6.0: - resolution: {integrity: sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==} - engines: {node: '>=0.8'} - - thenify@3.3.1: - resolution: {integrity: sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==} - - tiny-invariant@1.3.3: - resolution: {integrity: sha512-+FbBPE1o9QAYvviau/qC5SE3caw21q3xkvWKBtja5vgqOWIHHJ3ioaq1VPfn/Szqctz2bU/oYeKd9/z5BL+PVg==} - - tinybench@2.9.0: - resolution: {integrity: sha512-0+DUvqWMValLmha6lr4kD8iAMK1HzV0/aKnCtWb9v9641TnP/MFb7Pc2bxoxQjTXAErryXVgUOfv2YqNllqGeg==} - - tinyexec@0.3.2: - resolution: {integrity: sha512-KQQR9yN7R5+OSwaK0XQoj22pwHoTlgYqmUscPYoknOoWCWfj/5/ABTMRi69FrKU5ffPVh5QcFikpWJI/P1ocHA==} - - tinyglobby@0.2.12: - resolution: {integrity: sha512-qkf4trmKSIiMTs/E63cxH+ojC2unam7rJ0WrauAzpT3ECNTxGRMlaXxVbfxMUC/w0LaYk6jQ4y/nGR9uBO3tww==} - engines: {node: '>=12.0.0'} - - tinypool@1.0.2: - resolution: {integrity: sha512-al6n+QEANGFOMf/dmUMsuS5/r9B06uwlyNjZZql/zv8J7ybHCgoihBNORZCY2mzUuAnomQa2JdhyHKzZxPCrFA==} - engines: {node: ^18.0.0 || >=20.0.0} - - tinyrainbow@1.2.0: - resolution: {integrity: sha512-weEDEq7Z5eTHPDh4xjX789+fHfF+P8boiFB+0vbWzpbnbsEr/GRaohi/uMKxg8RZMXnl1ItAi/IUHWMsjDV7kQ==} - engines: {node: '>=14.0.0'} - - tinyspy@3.0.2: - resolution: {integrity: sha512-n1cw8k1k0x4pgA2+9XrOkFydTerNcJ1zWCO5Nn9scWHTD+5tp8dghT2x1uduQePZTZgd3Tupf+x9BxJjeJi77Q==} - engines: {node: '>=14.0.0'} - - tldts-core@6.1.78: - resolution: {integrity: sha512-jS0svNsB99jR6AJBmfmEWuKIgz91Haya91Z43PATaeHJ24BkMoNRb/jlaD37VYjb0mYf6gRL/HOnvS1zEnYBiw==} - - tldts@6.1.78: - resolution: {integrity: sha512-fSgYrW0ITH0SR/CqKMXIruYIPpNu5aDgUp22UhYoSrnUQwc7SBqifEBFNce7AAcygUPBo6a/gbtcguWdmko4RQ==} - hasBin: true - - tmp@0.0.33: - resolution: {integrity: sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==} - engines: {node: '>=0.6.0'} - - to-regex-range@5.0.1: - resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} - engines: {node: '>=8.0'} - - tough-cookie@5.1.1: - resolution: {integrity: sha512-Ek7HndSVkp10hmHP9V4qZO1u+pn1RU5sI0Fw+jCU3lyvuMZcgqsNgc6CmJJZyByK4Vm/qotGRJlfgAX8q+4JiA==} - engines: {node: '>=16'} - - tr46@0.0.3: - resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==} - - tr46@1.0.1: - resolution: {integrity: sha512-dTpowEjclQ7Kgx5SdBkqRzVhERQXov8/l9Ft9dVM9fmg0W0KQSVaXX9T4i6twCPNtYiZM53lpSSUAwJbFPOHxA==} - - tr46@5.0.0: - resolution: {integrity: sha512-tk2G5R2KRwBd+ZN0zaEXpmzdKyOYksXwywulIX95MBODjSzMIuQnQ3m8JxgbhnL1LeVo7lqQKsYa1O3Htl7K5g==} - engines: {node: '>=18'} - - tree-kill@1.2.2: - resolution: {integrity: sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==} - hasBin: true - - ts-api-utils@1.4.3: - resolution: {integrity: sha512-i3eMG77UTMD0hZhgRS562pv83RC6ukSAC2GMNWc+9dieh/+jDM5u5YG+NHX6VNDRHQcHwmsTHctP9LhbC3WxVw==} - engines: {node: '>=16'} - peerDependencies: - typescript: '>=4.2.0' - - ts-api-utils@2.0.1: - resolution: {integrity: sha512-dnlgjFSVetynI8nzgJ+qF62efpglpWRk8isUEWZGWlJYySCTD6aKvbUDu+zbPeDakk3bg5H4XpitHukgfL1m9w==} - engines: {node: '>=18.12'} - peerDependencies: - typescript: '>=4.8.4' - - ts-dedent@2.2.0: - resolution: {integrity: sha512-q5W7tVM71e2xjHZTlgfTDoPF/SmqKG5hddq9SzR49CH2hayqRKJtQ4mtRlSxKaJlR/+9rEM+mnBHf7I2/BQcpQ==} - engines: {node: '>=6.10'} - - ts-interface-checker@0.1.13: - resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==} - - tsconfig-paths@3.15.0: - resolution: {integrity: sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==} - - tsconfig-paths@4.2.0: - resolution: {integrity: sha512-NoZ4roiN7LnbKn9QqE1amc9DJfzvZXxF4xDavcOWt1BPkdx+m+0gJuPM+S0vCe7zTJMYUP0R8pO2XMr+Y8oLIg==} - engines: {node: '>=6'} - - tslib@1.14.1: - resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==} - - tslib@2.8.1: - resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==} - - tsup@8.3.6: - resolution: {integrity: sha512-XkVtlDV/58S9Ye0JxUUTcrQk4S+EqlOHKzg6Roa62rdjL1nGWNUstG0xgI4vanHdfIpjP448J8vlN0oK6XOJ5g==} - engines: {node: '>=18'} - hasBin: true - peerDependencies: - '@microsoft/api-extractor': ^7.36.0 - '@swc/core': ^1 - postcss: ^8.4.12 - typescript: '>=4.5.0' - peerDependenciesMeta: - '@microsoft/api-extractor': - optional: true - '@swc/core': - optional: true - postcss: - optional: true - typescript: - optional: true - - tsutils@3.21.0: - resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==} - engines: {node: '>= 6'} - peerDependencies: - typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta' - - turbo-darwin-64@2.4.2: - resolution: {integrity: sha512-HFfemyWB60CJtEvVQj9yby5rkkWw9fLAdLtAPGtPQoU3tKh8t/uzCAZKso2aPVbib9vGUuGbPGoGpaRXdVhj5g==} - cpu: [x64] - os: [darwin] - - turbo-darwin-arm64@2.4.2: - resolution: {integrity: sha512-uwSx1dsBSSFeEC0nxyx2O219FEsS/haiESaWwE9JI8mHkQK61s6w6fN2G586krKxyNam4AIxRltleL+O2Em94g==} - cpu: [arm64] - os: [darwin] - - turbo-linux-64@2.4.2: - resolution: {integrity: sha512-Fy/uL8z/LAYcPbm7a1LwFnTY9pIi5FAi12iuHsgB7zHjdh4eeIKS2NIg4nroAmTcUTUZ0/cVTo4bDOCUcS3aKw==} - cpu: [x64] - os: [linux] - - turbo-linux-arm64@2.4.2: - resolution: {integrity: sha512-AEA0d8h5W/K6iiXfEgiNwWt0yqRL1NpBs8zQCLdc4/L7WeYeJW3sORWX8zt7xhutF/KW9gTm8ehKpiK6cCIsAA==} - cpu: [arm64] - os: [linux] - - turbo-windows-64@2.4.2: - resolution: {integrity: sha512-CybtIZ9wRgnnNFVN9En9G+rxsO+mwU81fvW4RpE8BWyNEkhQ8J28qYf4PaimueMxGHHp/28i/G7Kcdn2GAWG0g==} - cpu: [x64] - os: [win32] - - turbo-windows-arm64@2.4.2: - resolution: {integrity: sha512-7V0yneVPL8Y3TgrkUIjw7Odmwu1tHnyIiPHFM7eFcA7U+H6hPXyCxge7nC3wOKfjhKCQqUm+Vf/k6kjmLz5G4g==} - cpu: [arm64] - os: [win32] - - turbo@2.4.2: - resolution: {integrity: sha512-Qxi0ioQCxMRUCcHKHZkTnYH8e7XCpNfg9QiJcyfWIc+ZXeaCjzV5rCGlbQlTXMAtI8qgfP8fZADv3CFtPwqdPQ==} - hasBin: true - - tween-functions@1.2.0: - resolution: {integrity: sha512-PZBtLYcCLtEcjL14Fzb1gSxPBeL7nWvGhO5ZFPGqziCcr8uvHp0NDmdjBchp6KHL+tExcg0m3NISmKxhU394dA==} - - type-check@0.4.0: - resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} - engines: {node: '>= 0.8.0'} - - type-fest@0.20.2: - resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==} - engines: {node: '>=10'} - - type-fest@0.6.0: - resolution: {integrity: sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==} - engines: {node: '>=8'} - - type-fest@0.8.1: - resolution: {integrity: sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==} - engines: {node: '>=8'} - - type-fest@2.19.0: - resolution: {integrity: sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==} - engines: {node: '>=12.20'} - - typed-array-buffer@1.0.3: - resolution: {integrity: sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==} - engines: {node: '>= 0.4'} - - typed-array-byte-length@1.0.3: - resolution: {integrity: sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg==} - engines: {node: '>= 0.4'} - - typed-array-byte-offset@1.0.4: - resolution: {integrity: sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ==} - engines: {node: '>= 0.4'} - - typed-array-length@1.0.7: - resolution: {integrity: sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg==} - engines: {node: '>= 0.4'} - - typescript-eslint@8.24.1: - resolution: {integrity: sha512-cw3rEdzDqBs70TIcb0Gdzbt6h11BSs2pS0yaq7hDWDBtCCSei1pPSUXE9qUdQ/Wm9NgFg8mKtMt1b8fTHIl1jA==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - peerDependencies: - eslint: ^8.57.0 || ^9.0.0 - typescript: '>=4.8.4 <5.8.0' - - typescript@5.6.3: - resolution: {integrity: sha512-hjcS1mhfuyi4WW8IWtjP7brDrG2cuDZukyrYrSauoXGNgx0S7zceP07adYkJycEr56BOUTNPzbInooiN3fn1qw==} - engines: {node: '>=14.17'} - hasBin: true - - ufo@1.5.4: - resolution: {integrity: sha512-UsUk3byDzKd04EyoZ7U4DOlxQaD14JUKQl6/P7wiX4FNvUfm3XL246n9W5AmqwW5RSFJ27NAuM0iLscAOYUiGQ==} - - unbox-primitive@1.1.0: - resolution: {integrity: sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==} - engines: {node: '>= 0.4'} - - undici-types@6.20.0: - resolution: {integrity: sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg==} - - universalify@0.1.2: - resolution: {integrity: sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==} - engines: {node: '>= 4.0.0'} - - universalify@2.0.1: - resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==} - engines: {node: '>= 10.0.0'} - - unplugin@1.16.1: - resolution: {integrity: sha512-4/u/j4FrCKdi17jaxuJA0jClGxB1AvU2hw/IuayPc4ay1XGaJs/rbb4v5WKwAjNifjmXK9PIFyuPiaK8azyR9w==} - engines: {node: '>=14.0.0'} - - update-browserslist-db@1.1.2: - resolution: {integrity: sha512-PPypAm5qvlD7XMZC3BujecnaOxwhrtoFR+Dqkk5Aa/6DssiH0ibKoketaj9w8LP7Bont1rYeoV5plxD7RTEPRg==} - hasBin: true - peerDependencies: - browserslist: '>= 4.21.0' - - uri-js@4.4.1: - resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} - - util@0.12.5: - resolution: {integrity: sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA==} - - uuid@9.0.1: - resolution: {integrity: sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==} - hasBin: true - - validate-npm-package-license@3.0.4: - resolution: {integrity: sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==} - - vite-node@2.1.2: - resolution: {integrity: sha512-HPcGNN5g/7I2OtPjLqgOtCRu/qhVvBxTUD3qzitmL0SrG1cWFzxzhMDWussxSbrRYWqnKf8P2jiNhPMSN+ymsQ==} - engines: {node: ^18.0.0 || >=20.0.0} - hasBin: true - - vite-node@3.0.6: - resolution: {integrity: sha512-s51RzrTkXKJrhNbUzQRsarjmAae7VmMPAsRT7lppVpIg6mK3zGthP9Hgz0YQQKuNcF+Ii7DfYk3Fxz40jRmePw==} - engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0} - hasBin: true - - vite@5.4.14: - resolution: {integrity: sha512-EK5cY7Q1D8JNhSaPKVK4pwBFvaTmZxEnoKXLG/U9gmdDcihQGNzFlgIvaxezFR4glP1LsuiedwMBqCXH3wZccA==} - engines: {node: ^18.0.0 || >=20.0.0} - hasBin: true - peerDependencies: - '@types/node': ^18.0.0 || >=20.0.0 - less: '*' - lightningcss: ^1.21.0 - sass: '*' - sass-embedded: '*' - stylus: '*' - sugarss: '*' - terser: ^5.4.0 - peerDependenciesMeta: - '@types/node': - optional: true - less: - optional: true - lightningcss: - optional: true - sass: - optional: true - sass-embedded: - optional: true - stylus: - optional: true - sugarss: - optional: true - terser: - optional: true - - vite@6.1.1: - resolution: {integrity: sha512-4GgM54XrwRfrOp297aIYspIti66k56v16ZnqHvrIM7mG+HjDlAwS7p+Srr7J6fGvEdOJ5JcQ/D9T7HhtdXDTzA==} - engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0} - hasBin: true - peerDependencies: - '@types/node': ^18.0.0 || ^20.0.0 || >=22.0.0 - jiti: '>=1.21.0' - less: '*' - lightningcss: ^1.21.0 - sass: '*' - sass-embedded: '*' - stylus: '*' - sugarss: '*' - terser: ^5.16.0 - tsx: ^4.8.1 - yaml: ^2.4.2 - peerDependenciesMeta: - '@types/node': - optional: true - jiti: - optional: true - less: - optional: true - lightningcss: - optional: true - sass: - optional: true - sass-embedded: - optional: true - stylus: - optional: true - sugarss: - optional: true - terser: - optional: true - tsx: - optional: true - yaml: - optional: true - - vitest@2.1.2: - resolution: {integrity: sha512-veNjLizOMkRrJ6xxb+pvxN6/QAWg95mzcRjtmkepXdN87FNfxAss9RKe2far/G9cQpipfgP2taqg0KiWsquj8A==} - engines: {node: ^18.0.0 || >=20.0.0} - hasBin: true - peerDependencies: - '@edge-runtime/vm': '*' - '@types/node': ^18.0.0 || >=20.0.0 - '@vitest/browser': 2.1.2 - '@vitest/ui': 2.1.2 - happy-dom: '*' - jsdom: '*' - peerDependenciesMeta: - '@edge-runtime/vm': - optional: true - '@types/node': - optional: true - '@vitest/browser': - optional: true - '@vitest/ui': - optional: true - happy-dom: - optional: true - jsdom: - optional: true - - w3c-xmlserializer@5.0.0: - resolution: {integrity: sha512-o8qghlI8NZHU1lLPrpi2+Uq7abh4GGPpYANlalzWxyWteJOCsr/P+oPBA49TOLu5FTZO4d3F9MnWJfiMo4BkmA==} - engines: {node: '>=18'} - - webidl-conversions@3.0.1: - resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==} - - webidl-conversions@4.0.2: - resolution: {integrity: sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==} - - webidl-conversions@7.0.0: - resolution: {integrity: sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==} - engines: {node: '>=12'} - - webpack-virtual-modules@0.6.2: - resolution: {integrity: sha512-66/V2i5hQanC51vBQKPH4aI8NMAcBW59FVBs+rC7eGHupMyfn34q7rZIE+ETlJ+XTevqfUhVVBgSUNSW2flEUQ==} - - whatwg-encoding@3.1.1: - resolution: {integrity: sha512-6qN4hJdMwfYBtE3YBTTHhoeuUrDBPZmbQaxWAqSALV/MeEnR5z1xd8UKud2RAkFoPkmB+hli1TZSnyi84xz1vQ==} - engines: {node: '>=18'} - - whatwg-mimetype@4.0.0: - resolution: {integrity: sha512-QaKxh0eNIi2mE9p2vEdzfagOKHCcj1pJ56EEHGQOVxp8r9/iszLUUV7v89x9O1p/T+NlTM5W7jW6+cz4Fq1YVg==} - engines: {node: '>=18'} - - whatwg-url@14.1.1: - resolution: {integrity: sha512-mDGf9diDad/giZ/Sm9Xi2YcyzaFpbdLpJPr+E9fSkyQ7KpQD4SdFcugkRQYzhmfI4KeV4Qpnn2sKPdo+kmsgRQ==} - engines: {node: '>=18'} - - whatwg-url@5.0.0: - resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==} - - whatwg-url@7.1.0: - resolution: {integrity: sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==} - - which-boxed-primitive@1.1.1: - resolution: {integrity: sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==} - engines: {node: '>= 0.4'} - - which-builtin-type@1.2.1: - resolution: {integrity: sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==} - engines: {node: '>= 0.4'} - - which-collection@1.0.2: - resolution: {integrity: sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==} - engines: {node: '>= 0.4'} - - which-typed-array@1.1.18: - resolution: {integrity: sha512-qEcY+KJYlWyLH9vNbsr6/5j59AXk5ni5aakf8ldzBvGde6Iz4sxZGkJyWSAueTG7QhOvNRYb1lDdFmL5Td0QKA==} - engines: {node: '>= 0.4'} - - which@2.0.2: - resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} - engines: {node: '>= 8'} - hasBin: true - - why-is-node-running@2.3.0: - resolution: {integrity: sha512-hUrmaWBdVDcxvYqnyh09zunKzROWjbZTiNy8dBEjkS7ehEDQibXJ7XvlmtbwuTclUiIyN+CyXQD4Vmko8fNm8w==} - engines: {node: '>=8'} - hasBin: true - - word-wrap@1.2.5: - resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==} - engines: {node: '>=0.10.0'} - - wrap-ansi@7.0.0: - resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} - engines: {node: '>=10'} - - wrap-ansi@8.1.0: - resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==} - engines: {node: '>=12'} - - wrappy@1.0.2: - resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} - - ws@8.18.1: - resolution: {integrity: sha512-RKW2aJZMXeMxVpnZ6bck+RswznaxmzdULiBr6KY7XkTnW8uvt0iT9H5DkHUChXrc+uurzwa0rVI16n/Xzjdz1w==} - engines: {node: '>=10.0.0'} - peerDependencies: - bufferutil: ^4.0.1 - utf-8-validate: '>=5.0.2' - peerDependenciesMeta: - bufferutil: - optional: true - utf-8-validate: - optional: true - - xml-name-validator@5.0.0: - resolution: {integrity: sha512-EvGK8EJ3DhaHfbRlETOWAS5pO9MZITeauHKJyb8wyajUfQUenkIg2MvLDTZ4T/TgIcm3HU0TFBgWWboAZ30UHg==} - engines: {node: '>=18'} - - xmlchars@2.2.0: - resolution: {integrity: sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==} - - yallist@3.1.1: - resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} - - yocto-queue@0.1.0: - resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} - engines: {node: '>=10'} - -snapshots: - - '@adobe/css-tools@4.4.2': {} - - '@ampproject/remapping@2.3.0': - dependencies: - '@jridgewell/gen-mapping': 0.3.8 - '@jridgewell/trace-mapping': 0.3.25 - - '@asamuzakjp/css-color@2.8.3': - dependencies: - '@csstools/css-calc': 2.1.1(@csstools/css-parser-algorithms@3.0.4)(@csstools/css-tokenizer@3.0.3) - '@csstools/css-color-parser': 3.0.7(@csstools/css-parser-algorithms@3.0.4)(@csstools/css-tokenizer@3.0.3) - '@csstools/css-parser-algorithms': 3.0.4(@csstools/css-tokenizer@3.0.3) - '@csstools/css-tokenizer': 3.0.3 - lru-cache: 10.4.3 - - '@babel/code-frame@7.26.2': - dependencies: - '@babel/helper-validator-identifier': 7.25.9 - js-tokens: 4.0.0 - picocolors: 1.1.1 - - '@babel/compat-data@7.26.8': {} - - '@babel/core@7.26.9': - dependencies: - '@ampproject/remapping': 2.3.0 - '@babel/code-frame': 7.26.2 - '@babel/generator': 7.26.9 - '@babel/helper-compilation-targets': 7.26.5 - '@babel/helper-module-transforms': 7.26.0(@babel/core@7.26.9) - '@babel/helpers': 7.26.9 - '@babel/parser': 7.26.9 - '@babel/template': 7.26.9 - '@babel/traverse': 7.26.9 - '@babel/types': 7.26.9 - convert-source-map: 2.0.0 - debug: 4.4.0 - gensync: 1.0.0-beta.2 - json5: 2.2.3 - semver: 6.3.1 - transitivePeerDependencies: - - supports-color - - '@babel/eslint-parser@7.26.8(@babel/core@7.26.9)(eslint@8.57.1)': - dependencies: - '@babel/core': 7.26.9 - '@nicolo-ribaudo/eslint-scope-5-internals': 5.1.1-v1 - eslint: 8.57.1 - eslint-visitor-keys: 2.1.0 - semver: 6.3.1 - - '@babel/generator@7.26.9': - dependencies: - '@babel/parser': 7.26.9 - '@babel/types': 7.26.9 - '@jridgewell/gen-mapping': 0.3.8 - '@jridgewell/trace-mapping': 0.3.25 - jsesc: 3.1.0 - - '@babel/helper-compilation-targets@7.26.5': - dependencies: - '@babel/compat-data': 7.26.8 - '@babel/helper-validator-option': 7.25.9 - browserslist: 4.24.4 - lru-cache: 5.1.1 - semver: 6.3.1 - - '@babel/helper-module-imports@7.25.9': - dependencies: - '@babel/traverse': 7.26.9 - '@babel/types': 7.26.9 - transitivePeerDependencies: - - supports-color - - '@babel/helper-module-transforms@7.26.0(@babel/core@7.26.9)': - dependencies: - '@babel/core': 7.26.9 - '@babel/helper-module-imports': 7.25.9 - '@babel/helper-validator-identifier': 7.25.9 - '@babel/traverse': 7.26.9 - transitivePeerDependencies: - - supports-color - - '@babel/helper-plugin-utils@7.26.5': {} - - '@babel/helper-string-parser@7.25.9': {} - - '@babel/helper-validator-identifier@7.25.9': {} - - '@babel/helper-validator-option@7.25.9': {} - - '@babel/helpers@7.26.9': - dependencies: - '@babel/template': 7.26.9 - '@babel/types': 7.26.9 - - '@babel/parser@7.26.9': - dependencies: - '@babel/types': 7.26.9 - - '@babel/plugin-syntax-typescript@7.25.9(@babel/core@7.26.9)': - dependencies: - '@babel/core': 7.26.9 - '@babel/helper-plugin-utils': 7.26.5 - - '@babel/plugin-transform-react-jsx-self@7.25.9(@babel/core@7.26.9)': - dependencies: - '@babel/core': 7.26.9 - '@babel/helper-plugin-utils': 7.26.5 - - '@babel/plugin-transform-react-jsx-source@7.25.9(@babel/core@7.26.9)': - dependencies: - '@babel/core': 7.26.9 - '@babel/helper-plugin-utils': 7.26.5 - - '@babel/runtime@7.26.9': - dependencies: - regenerator-runtime: 0.14.1 - - '@babel/template@7.26.9': - dependencies: - '@babel/code-frame': 7.26.2 - '@babel/parser': 7.26.9 - '@babel/types': 7.26.9 - - '@babel/traverse@7.26.9': - dependencies: - '@babel/code-frame': 7.26.2 - '@babel/generator': 7.26.9 - '@babel/parser': 7.26.9 - '@babel/template': 7.26.9 - '@babel/types': 7.26.9 - debug: 4.4.0 - globals: 11.12.0 - transitivePeerDependencies: - - supports-color - - '@babel/types@7.26.9': - dependencies: - '@babel/helper-string-parser': 7.25.9 - '@babel/helper-validator-identifier': 7.25.9 - - '@bcoe/v8-coverage@0.2.3': {} - - '@changesets/apply-release-plan@7.0.10': - dependencies: - '@changesets/config': 3.1.1 - '@changesets/get-version-range-type': 0.4.0 - '@changesets/git': 3.0.2 - '@changesets/should-skip-package': 0.1.2 - '@changesets/types': 6.1.0 - '@manypkg/get-packages': 1.1.3 - detect-indent: 6.1.0 - fs-extra: 7.0.1 - lodash.startcase: 4.4.0 - outdent: 0.5.0 - prettier: 2.8.8 - resolve-from: 5.0.0 - semver: 7.7.1 - - '@changesets/assemble-release-plan@6.0.6': - dependencies: - '@changesets/errors': 0.2.0 - '@changesets/get-dependents-graph': 2.1.3 - '@changesets/should-skip-package': 0.1.2 - '@changesets/types': 6.1.0 - '@manypkg/get-packages': 1.1.3 - semver: 7.7.1 - - '@changesets/changelog-git@0.2.1': - dependencies: - '@changesets/types': 6.1.0 - - '@changesets/cli@2.28.1': - dependencies: - '@changesets/apply-release-plan': 7.0.10 - '@changesets/assemble-release-plan': 6.0.6 - '@changesets/changelog-git': 0.2.1 - '@changesets/config': 3.1.1 - '@changesets/errors': 0.2.0 - '@changesets/get-dependents-graph': 2.1.3 - '@changesets/get-release-plan': 4.0.8 - '@changesets/git': 3.0.2 - '@changesets/logger': 0.1.1 - '@changesets/pre': 2.0.2 - '@changesets/read': 0.6.3 - '@changesets/should-skip-package': 0.1.2 - '@changesets/types': 6.1.0 - '@changesets/write': 0.4.0 - '@manypkg/get-packages': 1.1.3 - ansi-colors: 4.1.3 - ci-info: 3.9.0 - enquirer: 2.4.1 - external-editor: 3.1.0 - fs-extra: 7.0.1 - mri: 1.2.0 - p-limit: 2.3.0 - package-manager-detector: 0.2.9 - picocolors: 1.1.1 - resolve-from: 5.0.0 - semver: 7.7.1 - spawndamnit: 3.0.1 - term-size: 2.2.1 - - '@changesets/config@3.1.1': - dependencies: - '@changesets/errors': 0.2.0 - '@changesets/get-dependents-graph': 2.1.3 - '@changesets/logger': 0.1.1 - '@changesets/types': 6.1.0 - '@manypkg/get-packages': 1.1.3 - fs-extra: 7.0.1 - micromatch: 4.0.8 - - '@changesets/errors@0.2.0': - dependencies: - extendable-error: 0.1.7 - - '@changesets/get-dependents-graph@2.1.3': - dependencies: - '@changesets/types': 6.1.0 - '@manypkg/get-packages': 1.1.3 - picocolors: 1.1.1 - semver: 7.7.1 - - '@changesets/get-release-plan@4.0.8': - dependencies: - '@changesets/assemble-release-plan': 6.0.6 - '@changesets/config': 3.1.1 - '@changesets/pre': 2.0.2 - '@changesets/read': 0.6.3 - '@changesets/types': 6.1.0 - '@manypkg/get-packages': 1.1.3 - - '@changesets/get-version-range-type@0.4.0': {} - - '@changesets/git@3.0.2': - dependencies: - '@changesets/errors': 0.2.0 - '@manypkg/get-packages': 1.1.3 - is-subdir: 1.2.0 - micromatch: 4.0.8 - spawndamnit: 3.0.1 - - '@changesets/logger@0.1.1': - dependencies: - picocolors: 1.1.1 - - '@changesets/parse@0.4.1': - dependencies: - '@changesets/types': 6.1.0 - js-yaml: 3.14.1 - - '@changesets/pre@2.0.2': - dependencies: - '@changesets/errors': 0.2.0 - '@changesets/types': 6.1.0 - '@manypkg/get-packages': 1.1.3 - fs-extra: 7.0.1 - - '@changesets/read@0.6.3': - dependencies: - '@changesets/git': 3.0.2 - '@changesets/logger': 0.1.1 - '@changesets/parse': 0.4.1 - '@changesets/types': 6.1.0 - fs-extra: 7.0.1 - p-filter: 2.1.0 - picocolors: 1.1.1 - - '@changesets/should-skip-package@0.1.2': - dependencies: - '@changesets/types': 6.1.0 - '@manypkg/get-packages': 1.1.3 - - '@changesets/types@4.1.0': {} - - '@changesets/types@6.1.0': {} - - '@changesets/write@0.4.0': - dependencies: - '@changesets/types': 6.1.0 - fs-extra: 7.0.1 - human-id: 4.1.1 - prettier: 2.8.8 - - '@chromatic-com/storybook@3.2.4(react@18.3.1)(storybook@8.6.0-alpha.0)': - dependencies: - chromatic: 11.25.2 - filesize: 10.1.6 - jsonfile: 6.1.0 - react-confetti: 6.2.2(react@18.3.1) - storybook: 8.6.0-alpha.0(prettier@3.5.2) - strip-ansi: 7.1.0 - transitivePeerDependencies: - - '@chromatic-com/cypress' - - '@chromatic-com/playwright' - - react - - '@csstools/color-helpers@5.0.1': {} - - '@csstools/css-calc@2.1.1(@csstools/css-parser-algorithms@3.0.4)(@csstools/css-tokenizer@3.0.3)': - dependencies: - '@csstools/css-parser-algorithms': 3.0.4(@csstools/css-tokenizer@3.0.3) - '@csstools/css-tokenizer': 3.0.3 - - '@csstools/css-color-parser@3.0.7(@csstools/css-parser-algorithms@3.0.4)(@csstools/css-tokenizer@3.0.3)': - dependencies: - '@csstools/color-helpers': 5.0.1 - '@csstools/css-calc': 2.1.1(@csstools/css-parser-algorithms@3.0.4)(@csstools/css-tokenizer@3.0.3) - '@csstools/css-parser-algorithms': 3.0.4(@csstools/css-tokenizer@3.0.3) - '@csstools/css-tokenizer': 3.0.3 - - '@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3)': - dependencies: - '@csstools/css-tokenizer': 3.0.3 - - '@csstools/css-tokenizer@3.0.3': {} - - '@emnapi/runtime@1.3.1': - dependencies: - tslib: 2.8.1 - optional: true - - '@emotion/hash@0.9.2': {} - - '@esbuild/aix-ppc64@0.21.5': - optional: true - - '@esbuild/aix-ppc64@0.24.2': - optional: true - - '@esbuild/android-arm64@0.21.5': - optional: true - - '@esbuild/android-arm64@0.24.2': - optional: true - - '@esbuild/android-arm@0.21.5': - optional: true - - '@esbuild/android-arm@0.24.2': - optional: true - - '@esbuild/android-x64@0.21.5': - optional: true - - '@esbuild/android-x64@0.24.2': - optional: true - - '@esbuild/darwin-arm64@0.21.5': - optional: true - - '@esbuild/darwin-arm64@0.24.2': - optional: true - - '@esbuild/darwin-x64@0.21.5': - optional: true - - '@esbuild/darwin-x64@0.24.2': - optional: true - - '@esbuild/freebsd-arm64@0.21.5': - optional: true - - '@esbuild/freebsd-arm64@0.24.2': - optional: true - - '@esbuild/freebsd-x64@0.21.5': - optional: true - - '@esbuild/freebsd-x64@0.24.2': - optional: true - - '@esbuild/linux-arm64@0.21.5': - optional: true - - '@esbuild/linux-arm64@0.24.2': - optional: true - - '@esbuild/linux-arm@0.21.5': - optional: true - - '@esbuild/linux-arm@0.24.2': - optional: true - - '@esbuild/linux-ia32@0.21.5': - optional: true - - '@esbuild/linux-ia32@0.24.2': - optional: true - - '@esbuild/linux-loong64@0.21.5': - optional: true - - '@esbuild/linux-loong64@0.24.2': - optional: true - - '@esbuild/linux-mips64el@0.21.5': - optional: true - - '@esbuild/linux-mips64el@0.24.2': - optional: true - - '@esbuild/linux-ppc64@0.21.5': - optional: true - - '@esbuild/linux-ppc64@0.24.2': - optional: true - - '@esbuild/linux-riscv64@0.21.5': - optional: true - - '@esbuild/linux-riscv64@0.24.2': - optional: true - - '@esbuild/linux-s390x@0.21.5': - optional: true - - '@esbuild/linux-s390x@0.24.2': - optional: true - - '@esbuild/linux-x64@0.21.5': - optional: true - - '@esbuild/linux-x64@0.24.2': - optional: true - - '@esbuild/netbsd-arm64@0.24.2': - optional: true - - '@esbuild/netbsd-x64@0.21.5': - optional: true - - '@esbuild/netbsd-x64@0.24.2': - optional: true - - '@esbuild/openbsd-arm64@0.24.2': - optional: true - - '@esbuild/openbsd-x64@0.21.5': - optional: true - - '@esbuild/openbsd-x64@0.24.2': - optional: true - - '@esbuild/sunos-x64@0.21.5': - optional: true - - '@esbuild/sunos-x64@0.24.2': - optional: true - - '@esbuild/win32-arm64@0.21.5': - optional: true - - '@esbuild/win32-arm64@0.24.2': - optional: true - - '@esbuild/win32-ia32@0.21.5': - optional: true - - '@esbuild/win32-ia32@0.24.2': - optional: true - - '@esbuild/win32-x64@0.21.5': - optional: true - - '@esbuild/win32-x64@0.24.2': - optional: true - - '@eslint-community/eslint-utils@4.4.1(eslint@8.57.1)': - dependencies: - eslint: 8.57.1 - eslint-visitor-keys: 3.4.3 - - '@eslint-community/eslint-utils@4.4.1(eslint@9.21.0)': - dependencies: - eslint: 9.21.0 - eslint-visitor-keys: 3.4.3 - - '@eslint-community/regexpp@4.12.1': {} - - '@eslint/config-array@0.19.2': - dependencies: - '@eslint/object-schema': 2.1.6 - debug: 4.4.0 - minimatch: 3.1.2 - transitivePeerDependencies: - - supports-color - - '@eslint/core@0.12.0': - dependencies: - '@types/json-schema': 7.0.15 - - '@eslint/eslintrc@2.1.4': - dependencies: - ajv: 6.12.6 - debug: 4.4.0 - espree: 9.6.1 - globals: 13.24.0 - ignore: 5.3.2 - import-fresh: 3.3.1 - js-yaml: 4.1.0 - minimatch: 3.1.2 - strip-json-comments: 3.1.1 - transitivePeerDependencies: - - supports-color - - '@eslint/eslintrc@3.3.0': - dependencies: - ajv: 6.12.6 - debug: 4.4.0 - espree: 10.3.0 - globals: 14.0.0 - ignore: 5.3.2 - import-fresh: 3.3.1 - js-yaml: 4.1.0 - minimatch: 3.1.2 - strip-json-comments: 3.1.1 - transitivePeerDependencies: - - supports-color - - '@eslint/js@8.57.1': {} - - '@eslint/js@9.21.0': {} - - '@eslint/object-schema@2.1.6': {} - - '@eslint/plugin-kit@0.2.7': - dependencies: - '@eslint/core': 0.12.0 - levn: 0.4.1 - - '@humanfs/core@0.19.1': {} - - '@humanfs/node@0.16.6': - dependencies: - '@humanfs/core': 0.19.1 - '@humanwhocodes/retry': 0.3.1 - - '@humanwhocodes/config-array@0.13.0': - dependencies: - '@humanwhocodes/object-schema': 2.0.3 - debug: 4.4.0 - minimatch: 3.1.2 - transitivePeerDependencies: - - supports-color - - '@humanwhocodes/module-importer@1.0.1': {} - - '@humanwhocodes/object-schema@2.0.3': {} - - '@humanwhocodes/retry@0.3.1': {} - - '@humanwhocodes/retry@0.4.2': {} - - '@img/sharp-darwin-arm64@0.33.5': - optionalDependencies: - '@img/sharp-libvips-darwin-arm64': 1.0.4 - optional: true - - '@img/sharp-darwin-x64@0.33.5': - optionalDependencies: - '@img/sharp-libvips-darwin-x64': 1.0.4 - optional: true - - '@img/sharp-libvips-darwin-arm64@1.0.4': - optional: true - - '@img/sharp-libvips-darwin-x64@1.0.4': - optional: true - - '@img/sharp-libvips-linux-arm64@1.0.4': - optional: true - - '@img/sharp-libvips-linux-arm@1.0.5': - optional: true - - '@img/sharp-libvips-linux-s390x@1.0.4': - optional: true - - '@img/sharp-libvips-linux-x64@1.0.4': - optional: true - - '@img/sharp-libvips-linuxmusl-arm64@1.0.4': - optional: true - - '@img/sharp-libvips-linuxmusl-x64@1.0.4': - optional: true - - '@img/sharp-linux-arm64@0.33.5': - optionalDependencies: - '@img/sharp-libvips-linux-arm64': 1.0.4 - optional: true - - '@img/sharp-linux-arm@0.33.5': - optionalDependencies: - '@img/sharp-libvips-linux-arm': 1.0.5 - optional: true - - '@img/sharp-linux-s390x@0.33.5': - optionalDependencies: - '@img/sharp-libvips-linux-s390x': 1.0.4 - optional: true - - '@img/sharp-linux-x64@0.33.5': - optionalDependencies: - '@img/sharp-libvips-linux-x64': 1.0.4 - optional: true - - '@img/sharp-linuxmusl-arm64@0.33.5': - optionalDependencies: - '@img/sharp-libvips-linuxmusl-arm64': 1.0.4 - optional: true - - '@img/sharp-linuxmusl-x64@0.33.5': - optionalDependencies: - '@img/sharp-libvips-linuxmusl-x64': 1.0.4 - optional: true - - '@img/sharp-wasm32@0.33.5': - dependencies: - '@emnapi/runtime': 1.3.1 - optional: true - - '@img/sharp-win32-ia32@0.33.5': - optional: true - - '@img/sharp-win32-x64@0.33.5': - optional: true - - '@isaacs/cliui@8.0.2': - dependencies: - string-width: 5.1.2 - string-width-cjs: string-width@4.2.3 - strip-ansi: 7.1.0 - strip-ansi-cjs: strip-ansi@6.0.1 - wrap-ansi: 8.1.0 - wrap-ansi-cjs: wrap-ansi@7.0.0 - - '@istanbuljs/schema@0.1.3': {} - - '@joshwooding/vite-plugin-react-docgen-typescript@0.4.2(typescript@5.6.3)(vite@6.1.1)': - dependencies: - magic-string: 0.27.0 - react-docgen-typescript: 2.2.2(typescript@5.6.3) - typescript: 5.6.3 - vite: 6.1.1 - - '@jridgewell/gen-mapping@0.3.8': - dependencies: - '@jridgewell/set-array': 1.2.1 - '@jridgewell/sourcemap-codec': 1.5.0 - '@jridgewell/trace-mapping': 0.3.25 - - '@jridgewell/resolve-uri@3.1.2': {} - - '@jridgewell/set-array@1.2.1': {} - - '@jridgewell/sourcemap-codec@1.5.0': {} - - '@jridgewell/trace-mapping@0.3.25': - dependencies: - '@jridgewell/resolve-uri': 3.1.2 - '@jridgewell/sourcemap-codec': 1.5.0 - - '@manypkg/find-root@1.1.0': - dependencies: - '@babel/runtime': 7.26.9 - '@types/node': 12.20.55 - find-up: 4.1.0 - fs-extra: 8.1.0 - - '@manypkg/get-packages@1.1.3': - dependencies: - '@babel/runtime': 7.26.9 - '@changesets/types': 4.1.0 - '@manypkg/find-root': 1.1.0 - fs-extra: 8.1.0 - globby: 11.1.0 - read-yaml-file: 1.1.0 - - '@mdx-js/react@3.1.0(@types/react@18.3.18)(react@18.3.1)': + react: '>=16' dependencies: '@types/mdx': 2.0.13 '@types/react': 18.3.18 react: 18.3.1 + dev: true - '@microsoft/tsdoc-config@0.16.2': + /@microsoft/tsdoc-config@0.16.2: + resolution: {integrity: sha512-OGiIzzoBLgWWR0UdRJX98oYO+XKGf7tiK4Zk6tQ/E4IJqGCe7dvkTvgDZV5cFJUzLGDOjeAXrnZoA6QkVySuxw==} dependencies: '@microsoft/tsdoc': 0.14.2 ajv: 6.12.6 jju: 1.4.0 resolve: 1.19.0 + dev: true - '@microsoft/tsdoc@0.14.2': {} + /@microsoft/tsdoc@0.14.2: + resolution: {integrity: sha512-9b8mPpKrfeGRuhFH5iO1iwCLeIIsV6+H1sRfxbkoGXIyQE2BTsPd9zqSqQJ+pv5sJ/hT5M1zvOFL02MnEezFug==} + dev: true - '@nicolo-ribaudo/eslint-scope-5-internals@5.1.1-v1': + /@nicolo-ribaudo/eslint-scope-5-internals@5.1.1-v1: + resolution: {integrity: sha512-54/JRvkLIzzDWshCWfuhadfrfZVPiElY8Fcgmg1HroEly/EDSszzhBAsarCux+D/kOslTRquNzuyGSmUSTTHGg==} dependencies: eslint-scope: 5.1.1 + dev: true - '@nodelib/fs.scandir@2.1.5': + /@nodelib/fs.scandir@2.1.5: + resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} + engines: {node: '>= 8'} dependencies: '@nodelib/fs.stat': 2.0.5 run-parallel: 1.2.0 + dev: true - '@nodelib/fs.stat@2.0.5': {} + /@nodelib/fs.stat@2.0.5: + resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} + engines: {node: '>= 8'} + dev: true - '@nodelib/fs.walk@1.2.8': + /@nodelib/fs.walk@1.2.8: + resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} + engines: {node: '>= 8'} dependencies: '@nodelib/fs.scandir': 2.1.5 fastq: 1.19.0 + dev: true - '@nolyfill/is-core-module@1.0.39': {} + /@nolyfill/is-core-module@1.0.39: + resolution: {integrity: sha512-nn5ozdjYQpUCZlWGuxcJY/KpxkWQs4DcbMCmKojjyrYDEAGy4Ce19NN4v5MduafTwJlbKc99UA8YhSVqq9yPZA==} + engines: {node: '>=12.4.0'} + dev: true - '@notionhq/client@2.2.16': + /@notionhq/client@2.2.16: + resolution: {integrity: sha512-3GlkfhLw8+Jw8U2iFEmHA6WfCgYhZCXLxgPdqDJkYMFotELNpQO+yGSy2QWURsG8ndu21sLt+FEOfDbNcCtFMg==} + engines: {node: '>=12'} dependencies: '@types/node-fetch': 2.6.12 node-fetch: 2.7.0 transitivePeerDependencies: - encoding + dev: false - '@pkgjs/parseargs@0.11.0': + /@pkgjs/parseargs@0.11.0: + resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} + engines: {node: '>=14'} + requiresBuild: true + dev: true optional: true - '@pkgr/core@0.1.1': {} + /@pkgr/core@0.1.1: + resolution: {integrity: sha512-cq8o4cWH0ibXh9VGi5P20Tu9XF/0fFXl9EUinr9QfTM7a7p0oTA4iJRCQWppXR1Pg8dSM0UCItCkPwsk9qWWYA==} + engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0} + dev: true - '@rollup/pluginutils@5.1.4': + /@rollup/pluginutils@5.1.4: + resolution: {integrity: sha512-USm05zrsFxYLPdWWq+K3STlWiT/3ELn3RcV5hJMghpeAIhxfsUIg6mt12CBJBInWMV4VneoV7SfGv8xIwo2qNQ==} + engines: {node: '>=14.0.0'} + peerDependencies: + rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0 + peerDependenciesMeta: + rollup: + optional: true dependencies: '@types/estree': 1.0.6 estree-walker: 2.0.2 picomatch: 4.0.2 + dev: true - '@rollup/rollup-android-arm-eabi@4.34.8': + /@rollup/rollup-android-arm-eabi@4.34.8: + resolution: {integrity: sha512-q217OSE8DTp8AFHuNHXo0Y86e1wtlfVrXiAlwkIvGRQv9zbc6mE3sjIVfwI8sYUyNxwOg0j/Vm1RKM04JcWLJw==} + cpu: [arm] + os: [android] + requiresBuild: true + dev: true optional: true - '@rollup/rollup-android-arm64@4.34.8': + /@rollup/rollup-android-arm64@4.34.8: + resolution: {integrity: sha512-Gigjz7mNWaOL9wCggvoK3jEIUUbGul656opstjaUSGC3eT0BM7PofdAJaBfPFWWkXNVAXbaQtC99OCg4sJv70Q==} + cpu: [arm64] + os: [android] + requiresBuild: true + dev: true optional: true - '@rollup/rollup-darwin-arm64@4.34.8': + /@rollup/rollup-darwin-arm64@4.34.8: + resolution: {integrity: sha512-02rVdZ5tgdUNRxIUrFdcMBZQoaPMrxtwSb+/hOfBdqkatYHR3lZ2A2EGyHq2sGOd0Owk80oV3snlDASC24He3Q==} + cpu: [arm64] + os: [darwin] + requiresBuild: true + dev: true optional: true - '@rollup/rollup-darwin-x64@4.34.8': + /@rollup/rollup-darwin-x64@4.34.8: + resolution: {integrity: sha512-qIP/elwR/tq/dYRx3lgwK31jkZvMiD6qUtOycLhTzCvrjbZ3LjQnEM9rNhSGpbLXVJYQ3rq39A6Re0h9tU2ynw==} + cpu: [x64] + os: [darwin] + requiresBuild: true + dev: true optional: true - '@rollup/rollup-freebsd-arm64@4.34.8': + /@rollup/rollup-freebsd-arm64@4.34.8: + resolution: {integrity: sha512-IQNVXL9iY6NniYbTaOKdrlVP3XIqazBgJOVkddzJlqnCpRi/yAeSOa8PLcECFSQochzqApIOE1GHNu3pCz+BDA==} + cpu: [arm64] + os: [freebsd] + requiresBuild: true + dev: true optional: true - '@rollup/rollup-freebsd-x64@4.34.8': + /@rollup/rollup-freebsd-x64@4.34.8: + resolution: {integrity: sha512-TYXcHghgnCqYFiE3FT5QwXtOZqDj5GmaFNTNt3jNC+vh22dc/ukG2cG+pi75QO4kACohZzidsq7yKTKwq/Jq7Q==} + cpu: [x64] + os: [freebsd] + requiresBuild: true + dev: true optional: true - '@rollup/rollup-linux-arm-gnueabihf@4.34.8': + /@rollup/rollup-linux-arm-gnueabihf@4.34.8: + resolution: {integrity: sha512-A4iphFGNkWRd+5m3VIGuqHnG3MVnqKe7Al57u9mwgbyZ2/xF9Jio72MaY7xxh+Y87VAHmGQr73qoKL9HPbXj1g==} + cpu: [arm] + os: [linux] + requiresBuild: true + dev: true optional: true - '@rollup/rollup-linux-arm-musleabihf@4.34.8': + /@rollup/rollup-linux-arm-musleabihf@4.34.8: + resolution: {integrity: sha512-S0lqKLfTm5u+QTxlFiAnb2J/2dgQqRy/XvziPtDd1rKZFXHTyYLoVL58M/XFwDI01AQCDIevGLbQrMAtdyanpA==} + cpu: [arm] + os: [linux] + requiresBuild: true + dev: true optional: true - '@rollup/rollup-linux-arm64-gnu@4.34.8': + /@rollup/rollup-linux-arm64-gnu@4.34.8: + resolution: {integrity: sha512-jpz9YOuPiSkL4G4pqKrus0pn9aYwpImGkosRKwNi+sJSkz+WU3anZe6hi73StLOQdfXYXC7hUfsQlTnjMd3s1A==} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: true optional: true - '@rollup/rollup-linux-arm64-musl@4.34.8': + /@rollup/rollup-linux-arm64-musl@4.34.8: + resolution: {integrity: sha512-KdSfaROOUJXgTVxJNAZ3KwkRc5nggDk+06P6lgi1HLv1hskgvxHUKZ4xtwHkVYJ1Rep4GNo+uEfycCRRxht7+Q==} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: true optional: true - '@rollup/rollup-linux-loongarch64-gnu@4.34.8': + /@rollup/rollup-linux-loongarch64-gnu@4.34.8: + resolution: {integrity: sha512-NyF4gcxwkMFRjgXBM6g2lkT58OWztZvw5KkV2K0qqSnUEqCVcqdh2jN4gQrTn/YUpAcNKyFHfoOZEer9nwo6uQ==} + cpu: [loong64] + os: [linux] + requiresBuild: true + dev: true optional: true - '@rollup/rollup-linux-powerpc64le-gnu@4.34.8': + /@rollup/rollup-linux-powerpc64le-gnu@4.34.8: + resolution: {integrity: sha512-LMJc999GkhGvktHU85zNTDImZVUCJ1z/MbAJTnviiWmmjyckP5aQsHtcujMjpNdMZPT2rQEDBlJfubhs3jsMfw==} + cpu: [ppc64] + os: [linux] + requiresBuild: true + dev: true optional: true - '@rollup/rollup-linux-riscv64-gnu@4.34.8': + /@rollup/rollup-linux-riscv64-gnu@4.34.8: + resolution: {integrity: sha512-xAQCAHPj8nJq1PI3z8CIZzXuXCstquz7cIOL73HHdXiRcKk8Ywwqtx2wrIy23EcTn4aZ2fLJNBB8d0tQENPCmw==} + cpu: [riscv64] + os: [linux] + requiresBuild: true + dev: true optional: true - '@rollup/rollup-linux-s390x-gnu@4.34.8': + /@rollup/rollup-linux-s390x-gnu@4.34.8: + resolution: {integrity: sha512-DdePVk1NDEuc3fOe3dPPTb+rjMtuFw89gw6gVWxQFAuEqqSdDKnrwzZHrUYdac7A7dXl9Q2Vflxpme15gUWQFA==} + cpu: [s390x] + os: [linux] + requiresBuild: true + dev: true optional: true - '@rollup/rollup-linux-x64-gnu@4.34.8': + /@rollup/rollup-linux-x64-gnu@4.34.8: + resolution: {integrity: sha512-8y7ED8gjxITUltTUEJLQdgpbPh1sUQ0kMTmufRF/Ns5tI9TNMNlhWtmPKKHCU0SilX+3MJkZ0zERYYGIVBYHIA==} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: true optional: true - '@rollup/rollup-linux-x64-musl@4.34.8': + /@rollup/rollup-linux-x64-musl@4.34.8: + resolution: {integrity: sha512-SCXcP0ZpGFIe7Ge+McxY5zKxiEI5ra+GT3QRxL0pMMtxPfpyLAKleZODi1zdRHkz5/BhueUrYtYVgubqe9JBNQ==} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: true optional: true - '@rollup/rollup-win32-arm64-msvc@4.34.8': + /@rollup/rollup-win32-arm64-msvc@4.34.8: + resolution: {integrity: sha512-YHYsgzZgFJzTRbth4h7Or0m5O74Yda+hLin0irAIobkLQFRQd1qWmnoVfwmKm9TXIZVAD0nZ+GEb2ICicLyCnQ==} + cpu: [arm64] + os: [win32] + requiresBuild: true + dev: true optional: true - '@rollup/rollup-win32-ia32-msvc@4.34.8': + /@rollup/rollup-win32-ia32-msvc@4.34.8: + resolution: {integrity: sha512-r3NRQrXkHr4uWy5TOjTpTYojR9XmF0j/RYgKCef+Ag46FWUTltm5ziticv8LdNsDMehjJ543x/+TJAek/xBA2w==} + cpu: [ia32] + os: [win32] + requiresBuild: true + dev: true optional: true - '@rollup/rollup-win32-x64-msvc@4.34.8': + /@rollup/rollup-win32-x64-msvc@4.34.8: + resolution: {integrity: sha512-U0FaE5O1BCpZSeE6gBl3c5ObhePQSfk9vDRToMmTkbhCOgW4jqvtS5LGyQ76L1fH8sM0keRp4uDTsbjiUyjk0g==} + cpu: [x64] + os: [win32] + requiresBuild: true + dev: true optional: true - '@rtsao/scc@1.1.0': {} + /@rtsao/scc@1.1.0: + resolution: {integrity: sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==} + dev: true - '@rushstack/eslint-patch@1.10.5': {} + /@rushstack/eslint-patch@1.10.5: + resolution: {integrity: sha512-kkKUDVlII2DQiKy7UstOR1ErJP8kUKAQ4oa+SQtM0K+lPdmmjj0YnnxBgtTVYH7mUKtbsxeFC9y0AmK7Yb78/A==} + dev: true - '@storybook/addon-actions@8.6.0-alpha.0(storybook@8.6.0-alpha.0)': + /@storybook/addon-actions@8.6.0-alpha.0(storybook@8.6.0-alpha.0): + resolution: {integrity: sha512-ebY4n9twI05gWuu3Qv1o6LscFAY7pBbt3Ted22SfGH5YTvRvdstcU/4M7kqXt26X5LZeDfKCtIddnIvv/wMXsw==} + peerDependencies: + storybook: ^8.6.0-alpha.0 dependencies: '@storybook/global': 5.0.0 '@types/uuid': 9.0.8 @@ -4971,22 +1815,34 @@ snapshots: polished: 4.3.1 storybook: 8.6.0-alpha.0(prettier@3.5.2) uuid: 9.0.1 + dev: true - '@storybook/addon-backgrounds@8.6.0-alpha.0(storybook@8.6.0-alpha.0)': + /@storybook/addon-backgrounds@8.6.0-alpha.0(storybook@8.6.0-alpha.0): + resolution: {integrity: sha512-RcHwcu9bYNhoCGm1nZpo1KknPyHTlR+MhbFkKTkJrL31AImvCBPHRNiU5jXEm0i0qIG+eWpMu/Vh+YmJR47WRw==} + peerDependencies: + storybook: ^8.6.0-alpha.0 dependencies: '@storybook/global': 5.0.0 memoizerific: 1.11.3 storybook: 8.6.0-alpha.0(prettier@3.5.2) ts-dedent: 2.2.0 + dev: true - '@storybook/addon-controls@8.6.0-alpha.0(storybook@8.6.0-alpha.0)': + /@storybook/addon-controls@8.6.0-alpha.0(storybook@8.6.0-alpha.0): + resolution: {integrity: sha512-7yuYwTwNjM6I4LM8RWjM3+iQDDLU80ZRl3MiQmuNHUHzRa4KkW7W1yvxQ/pvyuZNM+vxNIEm9I8/gxUtOxt3YA==} + peerDependencies: + storybook: ^8.6.0-alpha.0 dependencies: '@storybook/global': 5.0.0 dequal: 2.0.3 storybook: 8.6.0-alpha.0(prettier@3.5.2) ts-dedent: 2.2.0 + dev: true - '@storybook/addon-docs@8.6.0-alpha.0(@types/react@18.3.18)(storybook@8.6.0-alpha.0)': + /@storybook/addon-docs@8.6.0-alpha.0(@types/react@18.3.18)(storybook@8.6.0-alpha.0): + resolution: {integrity: sha512-7es3uWYKS50puboWAQvapGbknMg/dSxnG+BwRunIvebbAfzW4V/eRSYWB/3n/7Hs8Z1/CmJDWf5Nzu7rxWxSNQ==} + peerDependencies: + storybook: ^8.6.0-alpha.0 dependencies: '@mdx-js/react': 3.1.0(@types/react@18.3.18)(react@18.3.1) '@storybook/blocks': 8.6.0-alpha.0(react-dom@18.3.1)(react@18.3.1)(storybook@8.6.0-alpha.0) @@ -4998,8 +1854,12 @@ snapshots: ts-dedent: 2.2.0 transitivePeerDependencies: - '@types/react' + dev: true - '@storybook/addon-essentials@8.6.0-alpha.0(@types/react@18.3.18)(storybook@8.6.0-alpha.0)': + /@storybook/addon-essentials@8.6.0-alpha.0(@types/react@18.3.18)(storybook@8.6.0-alpha.0): + resolution: {integrity: sha512-RoI4xv7mWtN0EHgFkxcOjvwum4/1sqLnN4pXcPo/cECRwnEll6g2fsmYYWXUdiCsC7ZImNdZrVK8ivuRFy3fvw==} + peerDependencies: + storybook: ^8.6.0-alpha.0 dependencies: '@storybook/addon-actions': 8.6.0-alpha.0(storybook@8.6.0-alpha.0) '@storybook/addon-backgrounds': 8.6.0-alpha.0(storybook@8.6.0-alpha.0) @@ -5014,13 +1874,21 @@ snapshots: ts-dedent: 2.2.0 transitivePeerDependencies: - '@types/react' + dev: true - '@storybook/addon-highlight@8.6.0-alpha.0(storybook@8.6.0-alpha.0)': + /@storybook/addon-highlight@8.6.0-alpha.0(storybook@8.6.0-alpha.0): + resolution: {integrity: sha512-2KxpKEK8Pqy3BiPgFJgtAliVROEu5mNfxwzXTsA90UTRkAoV+SM1hWdIHjn/ItFTXZ+iTJ5qPQjV+hG/ZWQGNQ==} + peerDependencies: + storybook: ^8.6.0-alpha.0 dependencies: '@storybook/global': 5.0.0 storybook: 8.6.0-alpha.0(prettier@3.5.2) + dev: true - '@storybook/addon-interactions@8.6.0-alpha.0(storybook@8.6.0-alpha.0)': + /@storybook/addon-interactions@8.6.0-alpha.0(storybook@8.6.0-alpha.0): + resolution: {integrity: sha512-BMnWeKIqLwNx27BuY6h48Wdey5PqYLDLHLdUUwJ+7z8c+133WjmQzFhT6wOfTdnL9ykKwJMjJfHF1g8p2FFMug==} + peerDependencies: + storybook: ^8.6.0-alpha.0 dependencies: '@storybook/global': 5.0.0 '@storybook/instrumenter': 8.6.0-alpha.0(storybook@8.6.0-alpha.0) @@ -5028,33 +1896,64 @@ snapshots: polished: 4.3.1 storybook: 8.6.0-alpha.0(prettier@3.5.2) ts-dedent: 2.2.0 + dev: true - '@storybook/addon-measure@8.6.0-alpha.0(storybook@8.6.0-alpha.0)': + /@storybook/addon-measure@8.6.0-alpha.0(storybook@8.6.0-alpha.0): + resolution: {integrity: sha512-dw/H5aWVWTpOiq6Ur+fMCvdVleeU/MmtrENwIX3xC5FIMYO28g3Bv4lLgdKG1xHhCZSwnF9T1vYqbP5D+PH8Pg==} + peerDependencies: + storybook: ^8.6.0-alpha.0 dependencies: '@storybook/global': 5.0.0 storybook: 8.6.0-alpha.0(prettier@3.5.2) tiny-invariant: 1.3.3 + dev: true - '@storybook/addon-onboarding@8.6.0-alpha.0(storybook@8.6.0-alpha.0)': + /@storybook/addon-onboarding@8.6.0-alpha.0(storybook@8.6.0-alpha.0): + resolution: {integrity: sha512-UKjMrLqCoUorb3wU/hsDxpGnVAc6Ec6Sc/N844bwHDxzMh4B4zCVJdYhEchGaDhz35fz4XCOlzEYlkzuaWGdZw==} + peerDependencies: + storybook: ^8.6.0-alpha.0 dependencies: storybook: 8.6.0-alpha.0(prettier@3.5.2) + dev: true - '@storybook/addon-outline@8.6.0-alpha.0(storybook@8.6.0-alpha.0)': + /@storybook/addon-outline@8.6.0-alpha.0(storybook@8.6.0-alpha.0): + resolution: {integrity: sha512-qMGNwBERWOP/UDAxCVKmJKjfm46/2vL7umnuMtKAdNmMbH3hEj7FZnDAiFsQz+UCJqCVP9D7EeAlA0PTjm1UAQ==} + peerDependencies: + storybook: ^8.6.0-alpha.0 dependencies: '@storybook/global': 5.0.0 storybook: 8.6.0-alpha.0(prettier@3.5.2) ts-dedent: 2.2.0 + dev: true - '@storybook/addon-toolbars@8.6.0-alpha.0(storybook@8.6.0-alpha.0)': + /@storybook/addon-toolbars@8.6.0-alpha.0(storybook@8.6.0-alpha.0): + resolution: {integrity: sha512-5O9AGxd0SBavi8FCbRSPJVrm1VVs973VgHU9ZDyqPp6oqQaLVYDlYeCGAGGdYgTHhc5tdkIOL2cXu+HaH+zxQg==} + peerDependencies: + storybook: ^8.6.0-alpha.0 dependencies: storybook: 8.6.0-alpha.0(prettier@3.5.2) + dev: true - '@storybook/addon-viewport@8.6.0-alpha.0(storybook@8.6.0-alpha.0)': + /@storybook/addon-viewport@8.6.0-alpha.0(storybook@8.6.0-alpha.0): + resolution: {integrity: sha512-p01+oR2z9Dx08aqA1OxrhuaMHPx0Vtugo3r7wOWyFVL+FOshhUeJDoowRmHX6JokmmzjcHfIWXTYF05pHmQAbg==} + peerDependencies: + storybook: ^8.6.0-alpha.0 dependencies: memoizerific: 1.11.3 storybook: 8.6.0-alpha.0(prettier@3.5.2) + dev: true - '@storybook/blocks@8.6.0-alpha.0(react-dom@18.3.1)(react@18.3.1)(storybook@8.6.0-alpha.0)': + /@storybook/blocks@8.6.0-alpha.0(react-dom@18.3.1)(react@18.3.1)(storybook@8.6.0-alpha.0): + resolution: {integrity: sha512-fUM8vJnHbQjDYm1oU18/SZUDk/ibSYD8CBvgsvP7lt5k+u00cfSMEz2cuv4sMeJnPv7klaWw+Vz/0E9G9M7DuQ==} + peerDependencies: + react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta + react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta + storybook: ^8.6.0-alpha.0 + peerDependenciesMeta: + react: + optional: true + react-dom: + optional: true dependencies: '@storybook/csf': 0.1.12 '@storybook/icons': 1.3.2(react-dom@18.3.1)(react@18.3.1) @@ -5062,20 +1961,36 @@ snapshots: react-dom: 18.3.1(react@18.3.1) storybook: 8.6.0-alpha.0(prettier@3.5.2) ts-dedent: 2.2.0 + dev: true - '@storybook/builder-vite@8.6.0-alpha.0(storybook@8.6.0-alpha.0)(vite@6.1.1)': + /@storybook/builder-vite@8.6.0-alpha.0(storybook@8.6.0-alpha.0)(vite@6.1.1): + resolution: {integrity: sha512-31OJfaS6Aj3vFO/0pJE6iz3sDkQU6TB0m6/WfZ+i80Re4OG1pu5GCvP8bqOFuEAQpyc2sFKs6B+wOBvZuuSskg==} + peerDependencies: + storybook: ^8.6.0-alpha.0 + vite: ^4.0.0 || ^5.0.0 || ^6.0.0 dependencies: '@storybook/csf-plugin': 8.6.0-alpha.0(storybook@8.6.0-alpha.0) browser-assert: 1.2.1 storybook: 8.6.0-alpha.0(prettier@3.5.2) ts-dedent: 2.2.0 vite: 6.1.1 + dev: true - '@storybook/components@8.6.0-alpha.0(storybook@8.6.0-alpha.0)': + /@storybook/components@8.6.0-alpha.0(storybook@8.6.0-alpha.0): + resolution: {integrity: sha512-yyySSxOuzNZLOFxdpU3lhw/RG+/79AH/eiCUu9tSn/2lHPBuf+whYlmciP9r7Gdy88lrpurX9GUf89jINIpLRw==} + peerDependencies: + storybook: ^8.2.0 || ^8.3.0-0 || ^8.4.0-0 || ^8.5.0-0 || ^8.6.0-0 dependencies: storybook: 8.6.0-alpha.0(prettier@3.5.2) + dev: true - '@storybook/core@8.6.0-alpha.0(prettier@3.5.2)': + /@storybook/core@8.6.0-alpha.0(prettier@3.5.2): + resolution: {integrity: sha512-6/okb7hD/2AAarYOCAACwuxR/0LQq6NWSNi+Eo7NEWjq+aliOGe3Vc/yUQekq+h3Uwls+AT/HANLo8t3sYbPrg==} + peerDependencies: + prettier: ^2 || ^3 + peerDependenciesMeta: + prettier: + optional: true dependencies: '@storybook/csf': 0.1.12 better-opn: 3.0.2 @@ -5093,48 +2008,94 @@ snapshots: - bufferutil - supports-color - utf-8-validate + dev: true - '@storybook/csf-plugin@8.6.0-alpha.0(storybook@8.6.0-alpha.0)': + /@storybook/csf-plugin@8.6.0-alpha.0(storybook@8.6.0-alpha.0): + resolution: {integrity: sha512-FkI3YW7ObEAFBQokJ04uPIQnBbnsfUKf08jriZ/nB03dcUNVDkl1GjPHONXJK8IwUKfKsiXRVqmrqJPSkK6xvQ==} + peerDependencies: + storybook: ^8.6.0-alpha.0 dependencies: storybook: 8.6.0-alpha.0(prettier@3.5.2) unplugin: 1.16.1 + dev: true - '@storybook/csf@0.1.12': + /@storybook/csf@0.1.12: + resolution: {integrity: sha512-9/exVhabisyIVL0VxTCxo01Tdm8wefIXKXfltAPTSr8cbLn5JAxGQ6QV3mjdecLGEOucfoVhAKtJfVHxEK1iqw==} dependencies: type-fest: 2.19.0 + dev: true - '@storybook/csf@0.1.13': + /@storybook/csf@0.1.13: + resolution: {integrity: sha512-7xOOwCLGB3ebM87eemep89MYRFTko+D8qE7EdAAq74lgdqRR5cOUtYWJLjO2dLtP94nqoOdHJo6MdLLKzg412Q==} dependencies: type-fest: 2.19.0 + dev: true - '@storybook/global@5.0.0': {} + /@storybook/global@5.0.0: + resolution: {integrity: sha512-FcOqPAXACP0I3oJ/ws6/rrPT9WGhu915Cg8D02a9YxLo0DE9zI+a9A5gRGvmQ09fiWPukqI8ZAEoQEdWUKMQdQ==} + dev: true - '@storybook/icons@1.3.2(react-dom@18.3.1)(react@18.3.1)': + /@storybook/icons@1.3.2(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-t3xcbCKkPvqyef8urBM0j/nP6sKtnlRkVgC+8JTbTAZQjaTmOjes3byEgzs89p4B/K6cJsg9wLW2k3SknLtYJw==} + engines: {node: '>=14.0.0'} + peerDependencies: + react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta + react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta dependencies: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) + dev: true - '@storybook/instrumenter@8.6.0-alpha.0(storybook@8.6.0-alpha.0)': + /@storybook/instrumenter@8.6.0-alpha.0(storybook@8.6.0-alpha.0): + resolution: {integrity: sha512-x4ey6Pmpri0VlHoVSw4XczHR6iQe7KZHL+M5+/DGrz5hQZf83puA+OVQEsqasBO0bTsTw/IdVqeP2ggUUVN2Cg==} + peerDependencies: + storybook: ^8.6.0-alpha.0 dependencies: '@storybook/global': 5.0.0 '@vitest/utils': 2.1.9 storybook: 8.6.0-alpha.0(prettier@3.5.2) + dev: true - '@storybook/manager-api@8.6.0-alpha.0(storybook@8.6.0-alpha.0)': + /@storybook/manager-api@8.6.0-alpha.0(storybook@8.6.0-alpha.0): + resolution: {integrity: sha512-LGox/VTfBCa/uhN9+eUE8jwzUcivQFIzubFGAOf3125BMAF65sYYYxp+iJJ6oz6sXskJ4GEqxsu3LLfDGfZrEw==} + peerDependencies: + storybook: ^8.2.0 || ^8.3.0-0 || ^8.4.0-0 || ^8.5.0-0 || ^8.6.0-0 dependencies: storybook: 8.6.0-alpha.0(prettier@3.5.2) + dev: true - '@storybook/preview-api@8.6.0-alpha.0(storybook@8.6.0-alpha.0)': + /@storybook/preview-api@8.6.0-alpha.0(storybook@8.6.0-alpha.0): + resolution: {integrity: sha512-NcR/mhCalultNg7mNB+jGz5Z9cC5zKe21O5s285y6fxLkaN9LRTvZzebJ2ShSbD4taLGZ+tL61XKqv5e9/DdbQ==} + peerDependencies: + storybook: ^8.2.0 || ^8.3.0-0 || ^8.4.0-0 || ^8.5.0-0 || ^8.6.0-0 dependencies: storybook: 8.6.0-alpha.0(prettier@3.5.2) + dev: true - '@storybook/react-dom-shim@8.6.0-alpha.0(react-dom@18.3.1)(react@18.3.1)(storybook@8.6.0-alpha.0)': + /@storybook/react-dom-shim@8.6.0-alpha.0(react-dom@18.3.1)(react@18.3.1)(storybook@8.6.0-alpha.0): + resolution: {integrity: sha512-hdEzyyqzfE72FydLRiqKJ+QONNznHGHv3NdAUi0Xt0gFzSPbHOrBNaLhiq53aBEK4Sgo2mMluigQW80LWdGu+w==} + peerDependencies: + react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta + react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta + storybook: ^8.6.0-alpha.0 dependencies: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) storybook: 8.6.0-alpha.0(prettier@3.5.2) + dev: true - '@storybook/react-vite@8.6.0-alpha.0(@storybook/test@8.6.0-alpha.0)(react-dom@18.3.1)(react@18.3.1)(storybook@8.6.0-alpha.0)(typescript@5.6.3)(vite@6.1.1)': + /@storybook/react-vite@8.6.0-alpha.0(@storybook/test@8.6.0-alpha.0)(react-dom@18.3.1)(react@18.3.1)(storybook@8.6.0-alpha.0)(typescript@5.6.3)(vite@6.1.1): + resolution: {integrity: sha512-7BB4ZcLFS4XgIwfsGyauW1uHtuooS+7SopD0iWm/jTq88/OMkppZjvzxXBBYOUWg1EH90G1I7q+vUvEfE+IPDg==} + engines: {node: '>=18.0.0'} + peerDependencies: + '@storybook/test': 8.6.0-alpha.0 + react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta + react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta + storybook: ^8.6.0-alpha.0 + vite: ^4.0.0 || ^5.0.0 || ^6.0.0 + peerDependenciesMeta: + '@storybook/test': + optional: true dependencies: '@joshwooding/vite-plugin-react-docgen-typescript': 0.4.2(typescript@5.6.3)(vite@6.1.1) '@rollup/pluginutils': 5.1.4 @@ -5154,8 +2115,22 @@ snapshots: - rollup - supports-color - typescript + dev: true - '@storybook/react@8.6.0-alpha.0(@storybook/test@8.6.0-alpha.0)(react-dom@18.3.1)(react@18.3.1)(storybook@8.6.0-alpha.0)(typescript@5.6.3)': + /@storybook/react@8.6.0-alpha.0(@storybook/test@8.6.0-alpha.0)(react-dom@18.3.1)(react@18.3.1)(storybook@8.6.0-alpha.0)(typescript@5.6.3): + resolution: {integrity: sha512-GLvY+o0NW57U+Gfm0uZhln9CVmLo33l4MF0RlQ172DtfU8u4CGZSYOjnvsLTKszSqhPA7OvhfjZnhR6CYSvg4g==} + engines: {node: '>=18.0.0'} + peerDependencies: + '@storybook/test': 8.6.0-alpha.0 + react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta + react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta + storybook: ^8.6.0-alpha.0 + typescript: '>= 4.2.x' + peerDependenciesMeta: + '@storybook/test': + optional: true + typescript: + optional: true dependencies: '@storybook/components': 8.6.0-alpha.0(storybook@8.6.0-alpha.0) '@storybook/global': 5.0.0 @@ -5168,8 +2143,12 @@ snapshots: react-dom: 18.3.1(react@18.3.1) storybook: 8.6.0-alpha.0(prettier@3.5.2) typescript: 5.6.3 + dev: true - '@storybook/test@8.6.0-alpha.0(storybook@8.6.0-alpha.0)': + /@storybook/test@8.6.0-alpha.0(storybook@8.6.0-alpha.0): + resolution: {integrity: sha512-pojaHEUoSJT0egqupQtohsvjyTsiDjLrZKkl7D9Sa6FWRMUoiNia6Hfglm0Qo9M4rxz4YVIvGJ3QQbkYnxTOXQ==} + peerDependencies: + storybook: ^8.6.0-alpha.0 dependencies: '@storybook/csf': 0.1.12 '@storybook/global': 5.0.0 @@ -5180,12 +2159,19 @@ snapshots: '@vitest/expect': 2.0.5 '@vitest/spy': 2.0.5 storybook: 8.6.0-alpha.0(prettier@3.5.2) + dev: true - '@storybook/theming@8.6.0-alpha.0(storybook@8.6.0-alpha.0)': + /@storybook/theming@8.6.0-alpha.0(storybook@8.6.0-alpha.0): + resolution: {integrity: sha512-VrT5TpHonLN1xJac4FKtrqM3u66CQX/B+Jk+68Id2M8008gLw14KltL3pV2k8RUGwoJj75T17mDZHUoW7z+vuw==} + peerDependencies: + storybook: ^8.2.0 || ^8.3.0-0 || ^8.4.0-0 || ^8.5.0-0 || ^8.6.0-0 dependencies: storybook: 8.6.0-alpha.0(prettier@3.5.2) + dev: true - '@testing-library/dom@10.4.0': + /@testing-library/dom@10.4.0: + resolution: {integrity: sha512-pemlzrSESWbdAloYml3bAJMEfNh1Z7EduzqPKprCH5S341frlpYnUEW0H72dLxa6IsYr+mPno20GiSm+h9dEdQ==} + engines: {node: '>=18'} dependencies: '@babel/code-frame': 7.26.2 '@babel/runtime': 7.26.9 @@ -5195,8 +2181,11 @@ snapshots: dom-accessibility-api: 0.5.16 lz-string: 1.5.0 pretty-format: 27.5.1 + dev: true - '@testing-library/jest-dom@6.5.0': + /@testing-library/jest-dom@6.5.0: + resolution: {integrity: sha512-xGGHpBXYSHUUr6XsKBfs85TWlYKpTc37cSBBVrXcib2MkHLboWlkClhWF37JKlDb9KEq3dHs+f2xR7XJEWGBxA==} + engines: {node: '>=14', npm: '>=6', yarn: '>=1'} dependencies: '@adobe/css-tools': 4.4.2 aria-query: 5.3.2 @@ -5205,95 +2194,161 @@ snapshots: dom-accessibility-api: 0.6.3 lodash: 4.17.21 redent: 3.0.0 + dev: true - '@testing-library/user-event@14.5.2(@testing-library/dom@10.4.0)': + /@testing-library/user-event@14.5.2(@testing-library/dom@10.4.0): + resolution: {integrity: sha512-YAh82Wh4TIrxYLmfGcixwD18oIjyC1pFQC2Y01F2lzV2HTMiYrI0nze0FD0ocB//CKS/7jIUgae+adPqxK5yCQ==} + engines: {node: '>=12', npm: '>=6'} + peerDependencies: + '@testing-library/dom': '>=7.21.4' dependencies: '@testing-library/dom': 10.4.0 + dev: true - '@types/aria-query@5.0.4': {} + /@types/aria-query@5.0.4: + resolution: {integrity: sha512-rfT93uj5s0PRL7EzccGMs3brplhcrghnDoV26NqKhCAS1hVo+WdNsPvE/yb6ilfr5hi2MEk6d5EWJTKdxg8jVw==} + dev: true - '@types/babel__core@7.20.5': + /@types/babel__core@7.20.5: + resolution: {integrity: sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==} dependencies: '@babel/parser': 7.26.9 '@babel/types': 7.26.9 '@types/babel__generator': 7.6.8 '@types/babel__template': 7.4.4 '@types/babel__traverse': 7.20.6 + dev: true - '@types/babel__generator@7.6.8': + /@types/babel__generator@7.6.8: + resolution: {integrity: sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw==} dependencies: '@babel/types': 7.26.9 + dev: true - '@types/babel__template@7.4.4': + /@types/babel__template@7.4.4: + resolution: {integrity: sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==} dependencies: '@babel/parser': 7.26.9 '@babel/types': 7.26.9 + dev: true - '@types/babel__traverse@7.20.6': + /@types/babel__traverse@7.20.6: + resolution: {integrity: sha512-r1bzfrm0tomOI8g1SzvCaQHo6Lcv6zu0EA+W2kHrt8dyrHQxGzBBL4kdkzIS+jBMV+EYcMAEAqXqYaLJq5rOZg==} dependencies: '@babel/types': 7.26.9 + dev: true - '@types/doctrine@0.0.9': {} + /@types/doctrine@0.0.9: + resolution: {integrity: sha512-eOIHzCUSH7SMfonMG1LsC2f8vxBFtho6NGBznK41R84YzPuvSBzrhEps33IsQiOW9+VL6NQ9DbjQJznk/S4uRA==} + dev: true - '@types/estree@1.0.6': {} + /@types/estree@1.0.6: + resolution: {integrity: sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==} + dev: true - '@types/json-schema@7.0.15': {} + /@types/json-schema@7.0.15: + resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} + dev: true - '@types/json5@0.0.29': {} + /@types/json5@0.0.29: + resolution: {integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==} + dev: true - '@types/lqip-modern@1.1.7': + /@types/lqip-modern@1.1.7: + resolution: {integrity: sha512-TwC2Z1aDkT7TQNTkYbg1KqgqIAri1U3TTUVgc65HAG6EpuJTHLOi6VrMAVq2f+jDhhEqFXpnvRc3ZAljSI8ibw==} dependencies: '@types/node': 22.13.5 '@types/sharp': 0.31.1 + dev: true - '@types/mdx@2.0.13': {} + /@types/mdx@2.0.13: + resolution: {integrity: sha512-+OWZQfAYyio6YkJb3HLxDrvnx6SWWDbC0zVPfBRzUk0/nqoDyf6dNxQi3eArPe8rJ473nobTMQ/8Zk+LxJ+Yuw==} + dev: true - '@types/needle@3.3.0': + /@types/needle@3.3.0: + resolution: {integrity: sha512-UFIuc1gdyzAqeVUYpSL+cliw2MmU/ZUhVZKE7Zo4wPbgc8hbljeKSnn6ls6iG8r5jpegPXLUIhJ+Wb2kLVs8cg==} dependencies: '@types/node': 22.13.5 + dev: true - '@types/node-fetch@2.6.12': + /@types/node-fetch@2.6.12: + resolution: {integrity: sha512-8nneRWKCg3rMtF69nLQJnOYUcbafYeFSjqkw3jCRLsqkWFlHaoQrr5mXmofFGOx3DKn7UfmBMyov8ySvLRVldA==} dependencies: '@types/node': 22.13.5 form-data: 4.0.2 + dev: false - '@types/node@12.20.55': {} + /@types/node@12.20.55: + resolution: {integrity: sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==} + dev: true - '@types/node@22.13.5': + /@types/node@22.13.5: + resolution: {integrity: sha512-+lTU0PxZXn0Dr1NBtC7Y8cR21AJr87dLLU953CWA6pMxxv/UDc7jYAY90upcrie1nRcD6XNG5HOYEDtgW5TxAg==} dependencies: undici-types: 6.20.0 - '@types/normalize-package-data@2.4.4': {} + /@types/normalize-package-data@2.4.4: + resolution: {integrity: sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==} + dev: true - '@types/prismjs@1.26.5': {} + /@types/prismjs@1.26.5: + resolution: {integrity: sha512-AUZTa7hQ2KY5L7AmtSiqxlhWxb4ina0yd8hNbl4TWuqnv/pFP0nDMb3YrfSBf4hJVGLh2YEIBfKaBW/9UEl6IQ==} + dev: true - '@types/probe-image-size@7.2.5': + /@types/probe-image-size@7.2.5: + resolution: {integrity: sha512-9Bg6d/GNnjmhMMxadDstwrSlquuuLf0jQuPszbU6n3QUfybif3V/ryD3J2i9iaiC5JB/FU/8E41n88SM/UB+Tg==} dependencies: '@types/needle': 3.3.0 '@types/node': 22.13.5 + dev: true - '@types/prop-types@15.7.14': {} + /@types/prop-types@15.7.14: + resolution: {integrity: sha512-gNMvNH49DJ7OJYv+KAKn0Xp45p8PLl6zo2YnvDIbTd4J6MER2BmWN49TG7n9LvkyihINxeKW8+3bfS2yDC9dzQ==} + dev: true - '@types/react-dom@18.3.5(@types/react@18.3.18)': + /@types/react-dom@18.3.5(@types/react@18.3.18): + resolution: {integrity: sha512-P4t6saawp+b/dFrUr2cvkVsfvPguwsxtH6dNIYRllMsefqFzkZk5UIjzyDOv5g1dXIPdG4Sp1yCR4Z6RCUsG/Q==} + peerDependencies: + '@types/react': ^18.0.0 dependencies: '@types/react': 18.3.18 + dev: true - '@types/react@18.3.18': + /@types/react@18.3.18: + resolution: {integrity: sha512-t4yC+vtgnkYjNSKlFx1jkAhH8LgTo2N/7Qvi83kdEaUtMDiwpbLAktKDaAMlRcJ5eSxZkH74eEGt1ky31d7kfQ==} dependencies: '@types/prop-types': 15.7.14 csstype: 3.1.3 + dev: true - '@types/resolve@1.20.6': {} + /@types/resolve@1.20.6: + resolution: {integrity: sha512-A4STmOXPhMUtHH+S6ymgE2GiBSMqf4oTvcQZMcHzokuTLVYzXTB8ttjcgxOVaAp2lGwEdzZ0J+cRbbeevQj1UQ==} + dev: true - '@types/semver@7.5.8': {} + /@types/semver@7.5.8: + resolution: {integrity: sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==} + dev: true - '@types/sharp@0.31.1': + /@types/sharp@0.31.1: + resolution: {integrity: sha512-5nWwamN9ZFHXaYEincMSuza8nNfOof8nmO+mcI+Agx1uMUk4/pQnNIcix+9rLPXzKrm1pS34+6WRDbDV0Jn7ag==} dependencies: '@types/node': 22.13.5 + dev: true - '@types/uuid@9.0.8': {} + /@types/uuid@9.0.8: + resolution: {integrity: sha512-jg+97EGIcY9AGHJJRaaPVgetKDsrTgbRjQ5Msgjh/DQKEFl0DtyRr/VCOyD1T2R1MNeWPK/u7JoGhlDZnKBAfA==} + dev: true - '@typescript-eslint/eslint-plugin@6.21.0(@typescript-eslint/parser@6.21.0)(eslint@8.57.1)(typescript@5.6.3)': + /@typescript-eslint/eslint-plugin@6.21.0(@typescript-eslint/parser@6.21.0)(eslint@8.57.1)(typescript@5.6.3): + resolution: {integrity: sha512-oy9+hTPCUFpngkEZUSzbf9MxI65wbKFoQYsgPdILTfbUldp5ovUuphZVe4i30emU9M/kP+T64Di0mxl7dSw3MA==} + engines: {node: ^16.0.0 || >=18.0.0} + peerDependencies: + '@typescript-eslint/parser': ^6.0.0 || ^6.0.0-alpha + eslint: ^7.0.0 || ^8.0.0 + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true dependencies: '@eslint-community/regexpp': 4.12.1 '@typescript-eslint/parser': 6.21.0(eslint@8.57.1)(typescript@5.6.3) @@ -5311,8 +2366,18 @@ snapshots: typescript: 5.6.3 transitivePeerDependencies: - supports-color + dev: true - '@typescript-eslint/eslint-plugin@7.18.0(@typescript-eslint/parser@7.18.0)(eslint@8.57.1)(typescript@5.6.3)': + /@typescript-eslint/eslint-plugin@7.18.0(@typescript-eslint/parser@7.18.0)(eslint@8.57.1)(typescript@5.6.3): + resolution: {integrity: sha512-94EQTWZ40mzBc42ATNIBimBEDltSJ9RQHCC8vc/PDbxi4k8dVwUAv4o98dk50M1zB+JGFxp43FP7f8+FP8R6Sw==} + engines: {node: ^18.18.0 || >=20.0.0} + peerDependencies: + '@typescript-eslint/parser': ^7.0.0 + eslint: ^8.56.0 + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true dependencies: '@eslint-community/regexpp': 4.12.1 '@typescript-eslint/parser': 7.18.0(eslint@8.57.1)(typescript@5.6.3) @@ -5328,8 +2393,15 @@ snapshots: typescript: 5.6.3 transitivePeerDependencies: - supports-color + dev: true - '@typescript-eslint/eslint-plugin@8.24.1(@typescript-eslint/parser@8.24.1)(eslint@9.21.0)(typescript@5.6.3)': + /@typescript-eslint/eslint-plugin@8.24.1(@typescript-eslint/parser@8.24.1)(eslint@9.21.0)(typescript@5.6.3): + resolution: {integrity: sha512-ll1StnKtBigWIGqvYDVuDmXJHVH4zLVot1yQ4fJtLpL7qacwkxJc1T0bptqw+miBQ/QfUbhl1TcQ4accW5KUyA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + '@typescript-eslint/parser': ^8.0.0 || ^8.0.0-alpha.0 + eslint: ^8.57.0 || ^9.0.0 + typescript: '>=4.8.4 <5.8.0' dependencies: '@eslint-community/regexpp': 4.12.1 '@typescript-eslint/parser': 8.24.1(eslint@9.21.0)(typescript@5.6.3) @@ -5345,8 +2417,17 @@ snapshots: typescript: 5.6.3 transitivePeerDependencies: - supports-color + dev: true - '@typescript-eslint/parser@6.21.0(eslint@8.57.1)(typescript@5.6.3)': + /@typescript-eslint/parser@6.21.0(eslint@8.57.1)(typescript@5.6.3): + resolution: {integrity: sha512-tbsV1jPne5CkFQCgPBcDOt30ItF7aJoZL997JSF7MhGQqOeT3svWRYxiqlfA5RUdlHN6Fi+EI9bxqbdyAUZjYQ==} + engines: {node: ^16.0.0 || >=18.0.0} + peerDependencies: + eslint: ^7.0.0 || ^8.0.0 + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true dependencies: '@typescript-eslint/scope-manager': 6.21.0 '@typescript-eslint/types': 6.21.0 @@ -5357,8 +2438,17 @@ snapshots: typescript: 5.6.3 transitivePeerDependencies: - supports-color + dev: true - '@typescript-eslint/parser@7.18.0(eslint@8.57.1)(typescript@5.6.3)': + /@typescript-eslint/parser@7.18.0(eslint@8.57.1)(typescript@5.6.3): + resolution: {integrity: sha512-4Z+L8I2OqhZV8qA132M4wNL30ypZGYOQVBfMgxDH/K5UX0PNqTu1c6za9ST5r9+tavvHiTWmBnKzpCJ/GlVFtg==} + engines: {node: ^18.18.0 || >=20.0.0} + peerDependencies: + eslint: ^8.56.0 + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true dependencies: '@typescript-eslint/scope-manager': 7.18.0 '@typescript-eslint/types': 7.18.0 @@ -5369,8 +2459,14 @@ snapshots: typescript: 5.6.3 transitivePeerDependencies: - supports-color + dev: true - '@typescript-eslint/parser@8.24.1(eslint@9.21.0)(typescript@5.6.3)': + /@typescript-eslint/parser@8.24.1(eslint@9.21.0)(typescript@5.6.3): + resolution: {integrity: sha512-Tqoa05bu+t5s8CTZFaGpCH2ub3QeT9YDkXbPd3uQ4SfsLoh1/vv2GEYAioPoxCWJJNsenXlC88tRjwoHNts1oQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 + typescript: '>=4.8.4 <5.8.0' dependencies: '@typescript-eslint/scope-manager': 8.24.1 '@typescript-eslint/types': 8.24.1 @@ -5381,28 +2477,49 @@ snapshots: typescript: 5.6.3 transitivePeerDependencies: - supports-color + dev: true - '@typescript-eslint/scope-manager@5.62.0': + /@typescript-eslint/scope-manager@5.62.0: + resolution: {integrity: sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dependencies: '@typescript-eslint/types': 5.62.0 '@typescript-eslint/visitor-keys': 5.62.0 + dev: true - '@typescript-eslint/scope-manager@6.21.0': + /@typescript-eslint/scope-manager@6.21.0: + resolution: {integrity: sha512-OwLUIWZJry80O99zvqXVEioyniJMa+d2GrqpUTqi5/v5D5rOrppJVBPa0yKCblcigC0/aYAzxxqQ1B+DS2RYsg==} + engines: {node: ^16.0.0 || >=18.0.0} dependencies: '@typescript-eslint/types': 6.21.0 '@typescript-eslint/visitor-keys': 6.21.0 + dev: true - '@typescript-eslint/scope-manager@7.18.0': + /@typescript-eslint/scope-manager@7.18.0: + resolution: {integrity: sha512-jjhdIE/FPF2B7Z1uzc6i3oWKbGcHb87Qw7AWj6jmEqNOfDFbJWtjt/XfwCpvNkpGWlcJaog5vTR+VV8+w9JflA==} + engines: {node: ^18.18.0 || >=20.0.0} dependencies: '@typescript-eslint/types': 7.18.0 '@typescript-eslint/visitor-keys': 7.18.0 + dev: true - '@typescript-eslint/scope-manager@8.24.1': + /@typescript-eslint/scope-manager@8.24.1: + resolution: {integrity: sha512-OdQr6BNBzwRjNEXMQyaGyZzgg7wzjYKfX2ZBV3E04hUCBDv3GQCHiz9RpqdUIiVrMgJGkXm3tcEh4vFSHreS2Q==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} dependencies: '@typescript-eslint/types': 8.24.1 '@typescript-eslint/visitor-keys': 8.24.1 + dev: true - '@typescript-eslint/type-utils@6.21.0(eslint@8.57.1)(typescript@5.6.3)': + /@typescript-eslint/type-utils@6.21.0(eslint@8.57.1)(typescript@5.6.3): + resolution: {integrity: sha512-rZQI7wHfao8qMX3Rd3xqeYSMCL3SoiSQLBATSiVKARdFGCYSRvmViieZjqc58jKgs8Y8i9YvVVhRbHSTA4VBag==} + engines: {node: ^16.0.0 || >=18.0.0} + peerDependencies: + eslint: ^7.0.0 || ^8.0.0 + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true dependencies: '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.6.3) '@typescript-eslint/utils': 6.21.0(eslint@8.57.1)(typescript@5.6.3) @@ -5412,8 +2529,17 @@ snapshots: typescript: 5.6.3 transitivePeerDependencies: - supports-color + dev: true - '@typescript-eslint/type-utils@7.18.0(eslint@8.57.1)(typescript@5.6.3)': + /@typescript-eslint/type-utils@7.18.0(eslint@8.57.1)(typescript@5.6.3): + resolution: {integrity: sha512-XL0FJXuCLaDuX2sYqZUUSOJ2sG5/i1AAze+axqmLnSkNEVMVYLF+cbwlB2w8D1tinFuSikHmFta+P+HOofrLeA==} + engines: {node: ^18.18.0 || >=20.0.0} + peerDependencies: + eslint: ^8.56.0 + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true dependencies: '@typescript-eslint/typescript-estree': 7.18.0(typescript@5.6.3) '@typescript-eslint/utils': 7.18.0(eslint@8.57.1)(typescript@5.6.3) @@ -5423,8 +2549,14 @@ snapshots: typescript: 5.6.3 transitivePeerDependencies: - supports-color + dev: true - '@typescript-eslint/type-utils@8.24.1(eslint@9.21.0)(typescript@5.6.3)': + /@typescript-eslint/type-utils@8.24.1(eslint@9.21.0)(typescript@5.6.3): + resolution: {integrity: sha512-/Do9fmNgCsQ+K4rCz0STI7lYB4phTtEXqqCAs3gZW0pnK7lWNkvWd5iW545GSmApm4AzmQXmSqXPO565B4WVrw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 + typescript: '>=4.8.4 <5.8.0' dependencies: '@typescript-eslint/typescript-estree': 8.24.1(typescript@5.6.3) '@typescript-eslint/utils': 8.24.1(eslint@9.21.0)(typescript@5.6.3) @@ -5434,16 +2566,36 @@ snapshots: typescript: 5.6.3 transitivePeerDependencies: - supports-color + dev: true - '@typescript-eslint/types@5.62.0': {} + /@typescript-eslint/types@5.62.0: + resolution: {integrity: sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + dev: true - '@typescript-eslint/types@6.21.0': {} + /@typescript-eslint/types@6.21.0: + resolution: {integrity: sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg==} + engines: {node: ^16.0.0 || >=18.0.0} + dev: true - '@typescript-eslint/types@7.18.0': {} + /@typescript-eslint/types@7.18.0: + resolution: {integrity: sha512-iZqi+Ds1y4EDYUtlOOC+aUmxnE9xS/yCigkjA7XpTKV6nCBd3Hp/PRGGmdwnfkV2ThMyYldP1wRpm/id99spTQ==} + engines: {node: ^18.18.0 || >=20.0.0} + dev: true - '@typescript-eslint/types@8.24.1': {} + /@typescript-eslint/types@8.24.1: + resolution: {integrity: sha512-9kqJ+2DkUXiuhoiYIUvIYjGcwle8pcPpdlfkemGvTObzgmYfJ5d0Qm6jwb4NBXP9W1I5tss0VIAnWFumz3mC5A==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + dev: true - '@typescript-eslint/typescript-estree@5.62.0(typescript@5.6.3)': + /@typescript-eslint/typescript-estree@5.62.0(typescript@5.6.3): + resolution: {integrity: sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true dependencies: '@typescript-eslint/types': 5.62.0 '@typescript-eslint/visitor-keys': 5.62.0 @@ -5455,8 +2607,16 @@ snapshots: typescript: 5.6.3 transitivePeerDependencies: - supports-color + dev: true - '@typescript-eslint/typescript-estree@6.21.0(typescript@5.6.3)': + /@typescript-eslint/typescript-estree@6.21.0(typescript@5.6.3): + resolution: {integrity: sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ==} + engines: {node: ^16.0.0 || >=18.0.0} + peerDependencies: + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true dependencies: '@typescript-eslint/types': 6.21.0 '@typescript-eslint/visitor-keys': 6.21.0 @@ -5469,8 +2629,16 @@ snapshots: typescript: 5.6.3 transitivePeerDependencies: - supports-color + dev: true - '@typescript-eslint/typescript-estree@7.18.0(typescript@5.6.3)': + /@typescript-eslint/typescript-estree@7.18.0(typescript@5.6.3): + resolution: {integrity: sha512-aP1v/BSPnnyhMHts8cf1qQ6Q1IFwwRvAQGRvBFkWlo3/lH29OXA3Pts+c10nxRxIBrDnoMqzhgdwVe5f2D6OzA==} + engines: {node: ^18.18.0 || >=20.0.0} + peerDependencies: + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true dependencies: '@typescript-eslint/types': 7.18.0 '@typescript-eslint/visitor-keys': 7.18.0 @@ -5483,8 +2651,13 @@ snapshots: typescript: 5.6.3 transitivePeerDependencies: - supports-color + dev: true - '@typescript-eslint/typescript-estree@8.24.1(typescript@5.6.3)': + /@typescript-eslint/typescript-estree@8.24.1(typescript@5.6.3): + resolution: {integrity: sha512-UPyy4MJ/0RE648DSKQe9g0VDSehPINiejjA6ElqnFaFIhI6ZEiZAkUI0D5MCk0bQcTf/LVqZStvQ6K4lPn/BRg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + typescript: '>=4.8.4 <5.8.0' dependencies: '@typescript-eslint/types': 8.24.1 '@typescript-eslint/visitor-keys': 8.24.1 @@ -5497,8 +2670,13 @@ snapshots: typescript: 5.6.3 transitivePeerDependencies: - supports-color + dev: true - '@typescript-eslint/utils@5.62.0(eslint@8.57.1)(typescript@5.6.3)': + /@typescript-eslint/utils@5.62.0(eslint@8.57.1)(typescript@5.6.3): + resolution: {integrity: sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 dependencies: '@eslint-community/eslint-utils': 4.4.1(eslint@8.57.1) '@types/json-schema': 7.0.15 @@ -5512,8 +2690,13 @@ snapshots: transitivePeerDependencies: - supports-color - typescript + dev: true - '@typescript-eslint/utils@6.21.0(eslint@8.57.1)(typescript@5.6.3)': + /@typescript-eslint/utils@6.21.0(eslint@8.57.1)(typescript@5.6.3): + resolution: {integrity: sha512-NfWVaC8HP9T8cbKQxHcsJBY5YE1O33+jpMwN45qzWWaPDZgLIbo12toGMWnmhvCpd3sIxkpDw3Wv1B3dYrbDQQ==} + engines: {node: ^16.0.0 || >=18.0.0} + peerDependencies: + eslint: ^7.0.0 || ^8.0.0 dependencies: '@eslint-community/eslint-utils': 4.4.1(eslint@8.57.1) '@types/json-schema': 7.0.15 @@ -5526,8 +2709,13 @@ snapshots: transitivePeerDependencies: - supports-color - typescript + dev: true - '@typescript-eslint/utils@7.18.0(eslint@8.57.1)(typescript@5.6.3)': + /@typescript-eslint/utils@7.18.0(eslint@8.57.1)(typescript@5.6.3): + resolution: {integrity: sha512-kK0/rNa2j74XuHVcoCZxdFBMF+aq/vH83CXAOHieC+2Gis4mF8jJXT5eAfyD3K0sAxtPuwxaIOIOvhwzVDt/kw==} + engines: {node: ^18.18.0 || >=20.0.0} + peerDependencies: + eslint: ^8.56.0 dependencies: '@eslint-community/eslint-utils': 4.4.1(eslint@8.57.1) '@typescript-eslint/scope-manager': 7.18.0 @@ -5537,8 +2725,14 @@ snapshots: transitivePeerDependencies: - supports-color - typescript + dev: true - '@typescript-eslint/utils@8.24.1(eslint@9.21.0)(typescript@5.6.3)': + /@typescript-eslint/utils@8.24.1(eslint@9.21.0)(typescript@5.6.3): + resolution: {integrity: sha512-OOcg3PMMQx9EXspId5iktsI3eMaXVwlhC8BvNnX6B5w9a4dVgpkQZuU8Hy67TolKcl+iFWq0XX+jbDGN4xWxjQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 + typescript: '>=4.8.4 <5.8.0' dependencies: '@eslint-community/eslint-utils': 4.4.1(eslint@9.21.0) '@typescript-eslint/scope-manager': 8.24.1 @@ -5548,36 +2742,54 @@ snapshots: typescript: 5.6.3 transitivePeerDependencies: - supports-color + dev: true - '@typescript-eslint/visitor-keys@5.62.0': + /@typescript-eslint/visitor-keys@5.62.0: + resolution: {integrity: sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dependencies: '@typescript-eslint/types': 5.62.0 eslint-visitor-keys: 3.4.3 + dev: true - '@typescript-eslint/visitor-keys@6.21.0': + /@typescript-eslint/visitor-keys@6.21.0: + resolution: {integrity: sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A==} + engines: {node: ^16.0.0 || >=18.0.0} dependencies: '@typescript-eslint/types': 6.21.0 eslint-visitor-keys: 3.4.3 + dev: true - '@typescript-eslint/visitor-keys@7.18.0': + /@typescript-eslint/visitor-keys@7.18.0: + resolution: {integrity: sha512-cDF0/Gf81QpY3xYyJKDV14Zwdmid5+uuENhjH2EqFaF0ni+yAyq/LzMaIJdhNJXZI7uLzwIlA+V7oWoyn6Curg==} + engines: {node: ^18.18.0 || >=20.0.0} dependencies: '@typescript-eslint/types': 7.18.0 eslint-visitor-keys: 3.4.3 + dev: true - '@typescript-eslint/visitor-keys@8.24.1': + /@typescript-eslint/visitor-keys@8.24.1: + resolution: {integrity: sha512-EwVHlp5l+2vp8CoqJm9KikPZgi3gbdZAtabKT9KPShGeOcJhsv4Zdo3oc8T8I0uKEmYoU4ItyxbptjF08enaxg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} dependencies: '@typescript-eslint/types': 8.24.1 eslint-visitor-keys: 4.2.0 + dev: true - '@ungap/structured-clone@1.3.0': {} + /@ungap/structured-clone@1.3.0: + resolution: {integrity: sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==} + dev: true - '@vanilla-extract/babel-plugin-debug-ids@1.2.0': + /@vanilla-extract/babel-plugin-debug-ids@1.2.0: + resolution: {integrity: sha512-z5nx2QBnOhvmlmBKeRX5sPVLz437wV30u+GJL+Hzj1rGiJYVNvgIIlzUpRNjVQ0MgAgiQIqIUbqPnmMc6HmDlQ==} dependencies: '@babel/core': 7.26.9 transitivePeerDependencies: - supports-color + dev: true - '@vanilla-extract/compiler@0.1.2': + /@vanilla-extract/compiler@0.1.2: + resolution: {integrity: sha512-B4T5P+Fz2Big0GRspQSi4BIyPF3cJ2/+/NWSI6Lw5Tq2JXv9nzjTGU4gKlWzyvaxt/0CLPE+Zo40fUsUv5lttQ==} dependencies: '@vanilla-extract/css': 1.17.1 '@vanilla-extract/integration': 8.0.1 @@ -5597,8 +2809,10 @@ snapshots: - terser - tsx - yaml + dev: true - '@vanilla-extract/css@1.17.1': + /@vanilla-extract/css@1.17.1: + resolution: {integrity: sha512-tOHQXHm10FrJeXKFeWE09JfDGN/tvV6mbjwoNB9k03u930Vg021vTnbrCwVLkECj9Zvh/SHLBHJ4r2flGqfovw==} dependencies: '@emotion/hash': 0.9.2 '@vanilla-extract/private': 1.0.6 @@ -5615,15 +2829,23 @@ snapshots: transitivePeerDependencies: - babel-plugin-macros - '@vanilla-extract/esbuild-plugin@2.3.15(esbuild@0.24.2)': + /@vanilla-extract/esbuild-plugin@2.3.15(esbuild@0.24.2): + resolution: {integrity: sha512-Kgq86janU5KwAfHy4DuPYhY/WJQN5yRht3OntnKpC7NUL4R5BJeiLcmTY6oeRUlcGnrrDfWEfc4fbxJxD8PDXQ==} + peerDependencies: + esbuild: '>=0.17.6' + peerDependenciesMeta: + esbuild: + optional: true dependencies: '@vanilla-extract/integration': 8.0.1 esbuild: 0.24.2 transitivePeerDependencies: - babel-plugin-macros - supports-color + dev: true - '@vanilla-extract/integration@8.0.1': + /@vanilla-extract/integration@8.0.1: + resolution: {integrity: sha512-ag64t+AM96XGOiloc5ryZHP5rbfleFyfoPKa42QqOuyAlLx/UpW5epSY+RUldizP4P/uLy5WFRiYlNddK1eQUQ==} dependencies: '@babel/core': 7.26.9 '@babel/plugin-syntax-typescript': 7.25.9(@babel/core@7.26.9) @@ -5638,18 +2860,31 @@ snapshots: transitivePeerDependencies: - babel-plugin-macros - supports-color + dev: true - '@vanilla-extract/private@1.0.6': {} + /@vanilla-extract/private@1.0.6: + resolution: {integrity: sha512-ytsG/JLweEjw7DBuZ/0JCN4WAQgM9erfSTdS1NQY778hFQSZ6cfCDEZZ0sgVm4k54uNz6ImKB33AYvSR//fjxw==} - '@vanilla-extract/recipes@0.5.5(@vanilla-extract/css@1.17.1)': + /@vanilla-extract/recipes@0.5.5(@vanilla-extract/css@1.17.1): + resolution: {integrity: sha512-VadU7+IFUwLNLMgks29AHav/K5h7DOEfTU91RItn5vwdPfzduodNg317YbgWCcpm7FSXkuR3B3X8ZOi95UOozA==} + peerDependencies: + '@vanilla-extract/css': ^1.0.0 dependencies: '@vanilla-extract/css': 1.17.1 + dev: false - '@vanilla-extract/sprinkles@1.6.3(@vanilla-extract/css@1.17.1)': + /@vanilla-extract/sprinkles@1.6.3(@vanilla-extract/css@1.17.1): + resolution: {integrity: sha512-oCHlQeYOBIJIA2yWy2GnY5wE2A7hGHDyJplJo4lb+KEIBcJWRnDJDg8ywDwQS5VfWJrBBO3drzYZPFpWQjAMiQ==} + peerDependencies: + '@vanilla-extract/css': ^1.0.0 dependencies: '@vanilla-extract/css': 1.17.1 + dev: false - '@vanilla-extract/vite-plugin@5.0.1(vite@6.1.1)': + /@vanilla-extract/vite-plugin@5.0.1(vite@6.1.1): + resolution: {integrity: sha512-65IhqaNEAv/KjO1jJ52hSXiKUJqeFPlyY/hpRT71Y6bFoasHhzOcZKIQ/ze4fQovjjDL4US565rEiIn1I2qhFA==} + peerDependencies: + vite: ^5.0.0 || ^6.0.0 dependencies: '@vanilla-extract/compiler': 0.1.2 '@vanilla-extract/integration': 8.0.1 @@ -5668,8 +2903,25 @@ snapshots: - terser - tsx - yaml + dev: true - '@vercel/style-guide@5.2.0(eslint@8.57.1)(prettier@3.5.2)(typescript@5.6.3)': + /@vercel/style-guide@5.2.0(eslint@8.57.1)(prettier@3.5.2)(typescript@5.6.3): + resolution: {integrity: sha512-fNSKEaZvSkiBoF6XEefs8CcgAV9K9e+MbcsDZjUsktHycKdA0jvjAzQi1W/FzLS+Nr5zZ6oejCwq/97dHUKe0g==} + engines: {node: '>=16'} + peerDependencies: + '@next/eslint-plugin-next': '>=12.3.0 <15' + eslint: '>=8.48.0 <9' + prettier: '>=3.0.0 <4' + typescript: '>=4.8.0 <6' + peerDependenciesMeta: + '@next/eslint-plugin-next': + optional: true + eslint: + optional: true + prettier: + optional: true + typescript: + optional: true dependencies: '@babel/core': 7.26.9 '@babel/eslint-parser': 7.26.8(@babel/core@7.26.9)(eslint@8.57.1) @@ -5698,8 +2950,13 @@ snapshots: - eslint-plugin-import-x - jest - supports-color + dev: true - '@vitejs/plugin-react@4.3.4(vite@6.1.1)': + /@vitejs/plugin-react@4.3.4(vite@6.1.1): + resolution: {integrity: sha512-SCCPBJtYLdE8PX/7ZQAs1QAZ8Jqwih+0VBLum1EGqmCCQal+MIUqLCzj3ZUy8ufbC0cAM4LRlSTm7IQJwWT4ug==} + engines: {node: ^14.18.0 || >=16.0.0} + peerDependencies: + vite: ^4.2.0 || ^5.0.0 || ^6.0.0 dependencies: '@babel/core': 7.26.9 '@babel/plugin-transform-react-jsx-self': 7.25.9(@babel/core@7.26.9) @@ -5709,8 +2966,16 @@ snapshots: vite: 6.1.1 transitivePeerDependencies: - supports-color + dev: true - '@vitest/coverage-v8@2.1.2(vitest@2.1.2)': + /@vitest/coverage-v8@2.1.2(vitest@2.1.2): + resolution: {integrity: sha512-b7kHrFrs2urS0cOk5N10lttI8UdJ/yP3nB4JYTREvR5o18cR99yPpK4gK8oQgI42BVv0ILWYUSYB7AXkAUDc0g==} + peerDependencies: + '@vitest/browser': 2.1.2 + vitest: 2.1.2 + peerDependenciesMeta: + '@vitest/browser': + optional: true dependencies: '@ampproject/remapping': 2.3.0 '@bcoe/v8-coverage': 0.2.3 @@ -5727,127 +2992,210 @@ snapshots: vitest: 2.1.2(jsdom@26.0.0) transitivePeerDependencies: - supports-color + dev: true - '@vitest/expect@2.0.5': + /@vitest/expect@2.0.5: + resolution: {integrity: sha512-yHZtwuP7JZivj65Gxoi8upUN2OzHTi3zVfjwdpu2WrvCZPLwsJ2Ey5ILIPccoW23dd/zQBlJ4/dhi7DWNyXCpA==} dependencies: '@vitest/spy': 2.0.5 '@vitest/utils': 2.0.5 chai: 5.2.0 tinyrainbow: 1.2.0 + dev: true - '@vitest/expect@2.1.2': + /@vitest/expect@2.1.2: + resolution: {integrity: sha512-FEgtlN8mIUSEAAnlvn7mP8vzaWhEaAEvhSXCqrsijM7K6QqjB11qoRZYEd4AKSCDz8p0/+yH5LzhZ47qt+EyPg==} dependencies: '@vitest/spy': 2.1.2 '@vitest/utils': 2.1.2 chai: 5.2.0 tinyrainbow: 1.2.0 + dev: true - '@vitest/mocker@2.1.2(@vitest/spy@2.1.2)(vite@5.4.14)': + /@vitest/mocker@2.1.2(@vitest/spy@2.1.2)(vite@5.4.14): + resolution: {integrity: sha512-ExElkCGMS13JAJy+812fw1aCv2QO/LBK6CyO4WOPAzLTmve50gydOlWhgdBJPx2ztbADUq3JVI0C5U+bShaeEA==} + peerDependencies: + '@vitest/spy': 2.1.2 + msw: ^2.3.5 + vite: ^5.0.0 + peerDependenciesMeta: + msw: + optional: true + vite: + optional: true dependencies: '@vitest/spy': 2.1.2 estree-walker: 3.0.3 magic-string: 0.30.17 vite: 5.4.14 + dev: true - '@vitest/pretty-format@2.0.5': + /@vitest/pretty-format@2.0.5: + resolution: {integrity: sha512-h8k+1oWHfwTkyTkb9egzwNMfJAEx4veaPSnMeKbVSjp4euqGSbQlm5+6VHwTr7u4FJslVVsUG5nopCaAYdOmSQ==} dependencies: tinyrainbow: 1.2.0 + dev: true - '@vitest/pretty-format@2.1.2': + /@vitest/pretty-format@2.1.2: + resolution: {integrity: sha512-FIoglbHrSUlOJPDGIrh2bjX1sNars5HbxlcsFKCtKzu4+5lpsRhOCVcuzp0fEhAGHkPZRIXVNzPcpSlkoZ3LuA==} dependencies: tinyrainbow: 1.2.0 + dev: true - '@vitest/pretty-format@2.1.9': + /@vitest/pretty-format@2.1.9: + resolution: {integrity: sha512-KhRIdGV2U9HOUzxfiHmY8IFHTdqtOhIzCpd8WRdJiE7D/HUcZVD0EgQCVjm+Q9gkUXWgBvMmTtZgIG48wq7sOQ==} dependencies: tinyrainbow: 1.2.0 + dev: true - '@vitest/runner@2.1.2': + /@vitest/runner@2.1.2: + resolution: {integrity: sha512-UCsPtvluHO3u7jdoONGjOSil+uON5SSvU9buQh3lP7GgUXHp78guN1wRmZDX4wGK6J10f9NUtP6pO+SFquoMlw==} dependencies: '@vitest/utils': 2.1.2 pathe: 1.1.2 + dev: true - '@vitest/snapshot@2.1.2': + /@vitest/snapshot@2.1.2: + resolution: {integrity: sha512-xtAeNsZ++aRIYIUsek7VHzry/9AcxeULlegBvsdLncLmNCR6tR8SRjn8BbDP4naxtccvzTqZ+L1ltZlRCfBZFA==} dependencies: '@vitest/pretty-format': 2.1.2 magic-string: 0.30.17 pathe: 1.1.2 + dev: true - '@vitest/spy@2.0.5': + /@vitest/spy@2.0.5: + resolution: {integrity: sha512-c/jdthAhvJdpfVuaexSrnawxZz6pywlTPe84LUB2m/4t3rl2fTo9NFGBG4oWgaD+FTgDDV8hJ/nibT7IfH3JfA==} dependencies: tinyspy: 3.0.2 + dev: true - '@vitest/spy@2.1.2': + /@vitest/spy@2.1.2: + resolution: {integrity: sha512-GSUi5zoy+abNRJwmFhBDC0yRuVUn8WMlQscvnbbXdKLXX9dE59YbfwXxuJ/mth6eeqIzofU8BB5XDo/Ns/qK2A==} dependencies: tinyspy: 3.0.2 + dev: true - '@vitest/utils@2.0.5': + /@vitest/utils@2.0.5: + resolution: {integrity: sha512-d8HKbqIcya+GR67mkZbrzhS5kKhtp8dQLcmRZLGTscGVg7yImT82cIrhtn2L8+VujWcy6KZweApgNmPsTAO/UQ==} dependencies: '@vitest/pretty-format': 2.0.5 estree-walker: 3.0.3 loupe: 3.1.3 tinyrainbow: 1.2.0 + dev: true - '@vitest/utils@2.1.2': + /@vitest/utils@2.1.2: + resolution: {integrity: sha512-zMO2KdYy6mx56btx9JvAqAZ6EyS3g49krMPPrgOp1yxGZiA93HumGk+bZ5jIZtOg5/VBYl5eBmGRQHqq4FG6uQ==} dependencies: '@vitest/pretty-format': 2.1.2 loupe: 3.1.3 tinyrainbow: 1.2.0 + dev: true - '@vitest/utils@2.1.9': + /@vitest/utils@2.1.9: + resolution: {integrity: sha512-v0psaMSkNJ3A2NMrUEHFRzJtDPFn+/VWZ5WxImB21T9fjucJRmS7xCS3ppEnARb9y11OAzaD+P2Ps+b+BGX5iQ==} dependencies: '@vitest/pretty-format': 2.1.9 loupe: 3.1.3 tinyrainbow: 1.2.0 + dev: true - acorn-jsx@5.3.2(acorn@8.14.0): + /acorn-jsx@5.3.2(acorn@8.14.0): + resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} + peerDependencies: + acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 dependencies: acorn: 8.14.0 + dev: true - acorn@8.14.0: {} + /acorn@8.14.0: + resolution: {integrity: sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==} + engines: {node: '>=0.4.0'} + hasBin: true + dev: true - agent-base@7.1.3: {} + /agent-base@7.1.3: + resolution: {integrity: sha512-jRR5wdylq8CkOe6hei19GGZnxM6rBGwFl3Bg0YItGDimvjGtAvdZk4Pu6Cl4u4Igsws4a1fd1Vq3ezrhn4KmFw==} + engines: {node: '>= 14'} + dev: true - ajv@6.12.6: + /ajv@6.12.6: + resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} dependencies: fast-deep-equal: 3.1.3 fast-json-stable-stringify: 2.1.0 json-schema-traverse: 0.4.1 uri-js: 4.4.1 + dev: true - ansi-colors@4.1.3: {} + /ansi-colors@4.1.3: + resolution: {integrity: sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==} + engines: {node: '>=6'} + dev: true - ansi-regex@5.0.1: {} + /ansi-regex@5.0.1: + resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} + engines: {node: '>=8'} + dev: true - ansi-regex@6.1.0: {} + /ansi-regex@6.1.0: + resolution: {integrity: sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==} + engines: {node: '>=12'} + dev: true - ansi-styles@4.3.0: + /ansi-styles@4.3.0: + resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} + engines: {node: '>=8'} dependencies: color-convert: 2.0.1 + dev: true - ansi-styles@5.2.0: {} + /ansi-styles@5.2.0: + resolution: {integrity: sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==} + engines: {node: '>=10'} + dev: true - ansi-styles@6.2.1: {} + /ansi-styles@6.2.1: + resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==} + engines: {node: '>=12'} + dev: true - any-promise@1.3.0: {} + /any-promise@1.3.0: + resolution: {integrity: sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==} + dev: true - argparse@1.0.10: + /argparse@1.0.10: + resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==} dependencies: sprintf-js: 1.0.3 + dev: true - argparse@2.0.1: {} + /argparse@2.0.1: + resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} + dev: true - aria-query@5.3.0: + /aria-query@5.3.0: + resolution: {integrity: sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==} dependencies: dequal: 2.0.3 + dev: true - aria-query@5.3.2: {} + /aria-query@5.3.2: + resolution: {integrity: sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw==} + engines: {node: '>= 0.4'} + dev: true - array-buffer-byte-length@1.0.2: + /array-buffer-byte-length@1.0.2: + resolution: {integrity: sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==} + engines: {node: '>= 0.4'} dependencies: call-bound: 1.0.3 is-array-buffer: 3.0.5 + dev: true - array-includes@3.1.8: + /array-includes@3.1.8: + resolution: {integrity: sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ==} + engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.8 define-properties: 1.2.1 @@ -5855,10 +3203,16 @@ snapshots: es-object-atoms: 1.1.1 get-intrinsic: 1.2.7 is-string: 1.1.1 + dev: true - array-union@2.1.0: {} + /array-union@2.1.0: + resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} + engines: {node: '>=8'} + dev: true - array.prototype.findlast@1.2.5: + /array.prototype.findlast@1.2.5: + resolution: {integrity: sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==} + engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.8 define-properties: 1.2.1 @@ -5866,8 +3220,11 @@ snapshots: es-errors: 1.3.0 es-object-atoms: 1.1.1 es-shim-unscopables: 1.1.0 + dev: true - array.prototype.findlastindex@1.2.5: + /array.prototype.findlastindex@1.2.5: + resolution: {integrity: sha512-zfETvRFA8o7EiNn++N5f/kaCw221hrpGsDmcpndVupkPzEc1Wuf3VgC0qby1BbHs7f5DVYjgtEU2LLh5bqeGfQ==} + engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.8 define-properties: 1.2.1 @@ -5875,30 +3232,42 @@ snapshots: es-errors: 1.3.0 es-object-atoms: 1.1.1 es-shim-unscopables: 1.1.0 + dev: true - array.prototype.flat@1.3.3: + /array.prototype.flat@1.3.3: + resolution: {integrity: sha512-rwG/ja1neyLqCuGZ5YYrznA62D4mZXg0i1cIskIUKSiqF3Cje9/wXAls9B9s1Wa2fomMsIv8czB8jZcPmxCXFg==} + engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.8 define-properties: 1.2.1 es-abstract: 1.23.9 es-shim-unscopables: 1.1.0 + dev: true - array.prototype.flatmap@1.3.3: + /array.prototype.flatmap@1.3.3: + resolution: {integrity: sha512-Y7Wt51eKJSyi80hFrJCePGGNo5ktJCslFuboqJsbf57CCPcm5zztluPlc4/aD8sWsKvlwatezpV4U1efk8kpjg==} + engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.8 define-properties: 1.2.1 es-abstract: 1.23.9 es-shim-unscopables: 1.1.0 + dev: true - array.prototype.tosorted@1.1.4: + /array.prototype.tosorted@1.1.4: + resolution: {integrity: sha512-p6Fx8B7b7ZhL/gmUsAy0D15WhvDccw3mnGNbZpi3pmeJdxtWsj2jEaI4Y6oo3XiHfzuSgPwKc04MYt6KgvC/wA==} + engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.8 define-properties: 1.2.1 es-abstract: 1.23.9 es-errors: 1.3.0 es-shim-unscopables: 1.1.0 + dev: true - arraybuffer.prototype.slice@1.0.4: + /arraybuffer.prototype.slice@1.0.4: + resolution: {integrity: sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==} + engines: {node: '>= 0.4'} dependencies: array-buffer-byte-length: 1.0.2 call-bind: 1.0.8 @@ -5907,298 +3276,633 @@ snapshots: es-errors: 1.3.0 get-intrinsic: 1.2.7 is-array-buffer: 3.0.5 + dev: true - assertion-error@2.0.1: {} + /assertion-error@2.0.1: + resolution: {integrity: sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA==} + engines: {node: '>=12'} + dev: true - ast-types-flow@0.0.8: {} + /ast-types-flow@0.0.8: + resolution: {integrity: sha512-OH/2E5Fg20h2aPrbe+QL8JZQFko0YZaF+j4mnQ7BGhfavO7OpSLa8a0y9sBwomHdSbkhTS8TQNayBfnW5DwbvQ==} + dev: true - ast-types@0.16.1: + /ast-types@0.16.1: + resolution: {integrity: sha512-6t10qk83GOG8p0vKmaCr8eiilZwO171AvbROMtvvNiwrTly62t+7XkA8RdIIVbpMhCASAsxgAzdRSwh6nw/5Dg==} + engines: {node: '>=4'} dependencies: tslib: 2.8.1 + dev: true - async-function@1.0.0: {} + /async-function@1.0.0: + resolution: {integrity: sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA==} + engines: {node: '>= 0.4'} + dev: true - asynckit@0.4.0: {} + /asynckit@0.4.0: + resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} - available-typed-arrays@1.0.7: + /available-typed-arrays@1.0.7: + resolution: {integrity: sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==} + engines: {node: '>= 0.4'} dependencies: possible-typed-array-names: 1.1.0 + dev: true - axe-core@4.10.2: {} + /axe-core@4.10.2: + resolution: {integrity: sha512-RE3mdQ7P3FRSe7eqCWoeQ/Z9QXrtniSjp1wUjt5nRC3WIpz5rSCve6o3fsZ2aCpJtrZjSZgjwXAoTO5k4tEI0w==} + engines: {node: '>=4'} + dev: true - axobject-query@4.1.0: {} + /axobject-query@4.1.0: + resolution: {integrity: sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==} + engines: {node: '>= 0.4'} + dev: true - balanced-match@1.0.2: {} + /balanced-match@1.0.2: + resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} + dev: true - better-opn@3.0.2: + /better-opn@3.0.2: + resolution: {integrity: sha512-aVNobHnJqLiUelTaHat9DZ1qM2w0C0Eym4LPI/3JxOnSokGVdsl1T1kN7TFvsEAD8G47A6VKQ0TVHqbBnYMJlQ==} + engines: {node: '>=12.0.0'} dependencies: open: 8.4.2 + dev: true - better-path-resolve@1.0.0: + /better-path-resolve@1.0.0: + resolution: {integrity: sha512-pbnl5XzGBdrFU/wT4jqmJVPn2B6UHPBOhzMQkY/SPUPB6QtUXtmBHBIwCbXJol93mOpGMnQyP/+BB19q04xj7g==} + engines: {node: '>=4'} dependencies: is-windows: 1.0.2 + dev: true + + /boolbase@1.0.0: + resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==} + dev: false - brace-expansion@1.1.11: + /brace-expansion@1.1.11: + resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} dependencies: balanced-match: 1.0.2 concat-map: 0.0.1 + dev: true - brace-expansion@2.0.1: + /brace-expansion@2.0.1: + resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==} dependencies: balanced-match: 1.0.2 + dev: true - braces@3.0.3: + /braces@3.0.3: + resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} + engines: {node: '>=8'} dependencies: fill-range: 7.1.1 + dev: true - browser-assert@1.2.1: {} + /browser-assert@1.2.1: + resolution: {integrity: sha512-nfulgvOR6S4gt9UKCeGJOuSGBPGiFT6oQ/2UBnvTY/5aQ1PnksW72fhZkM30DzoRRv2WpwZf1vHHEr3mtuXIWQ==} + dev: true - browserslist@4.24.4: + /browserslist@4.24.4: + resolution: {integrity: sha512-KDi1Ny1gSePi1vm0q4oxSF8b4DR44GF4BbmS2YdhPLOEqd8pDviZOGH/GsmRwoWJ2+5Lr085X7naowMwKHDG1A==} + engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} + hasBin: true dependencies: caniuse-lite: 1.0.30001700 electron-to-chromium: 1.5.103 node-releases: 2.0.19 update-browserslist-db: 1.1.2(browserslist@4.24.4) + dev: true - builtin-modules@3.3.0: {} + /builtin-modules@3.3.0: + resolution: {integrity: sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==} + engines: {node: '>=6'} + dev: true - bundle-require@5.1.0(esbuild@0.24.2): + /bundle-require@5.1.0(esbuild@0.24.2): + resolution: {integrity: sha512-3WrrOuZiyaaZPWiEt4G3+IffISVC9HYlWueJEBWED4ZH4aIAC2PnkdnuRrR94M+w6yGWn4AglWtJtBI8YqvgoA==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + peerDependencies: + esbuild: '>=0.18' dependencies: esbuild: 0.24.2 load-tsconfig: 0.2.5 + dev: true - cac@6.7.14: {} + /cac@6.7.14: + resolution: {integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==} + engines: {node: '>=8'} + dev: true - call-bind-apply-helpers@1.0.2: + /call-bind-apply-helpers@1.0.2: + resolution: {integrity: sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==} + engines: {node: '>= 0.4'} dependencies: es-errors: 1.3.0 function-bind: 1.1.2 - call-bind@1.0.8: + /call-bind@1.0.8: + resolution: {integrity: sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==} + engines: {node: '>= 0.4'} dependencies: call-bind-apply-helpers: 1.0.2 es-define-property: 1.0.1 get-intrinsic: 1.2.7 set-function-length: 1.2.2 + dev: true - call-bound@1.0.3: + /call-bound@1.0.3: + resolution: {integrity: sha512-YTd+6wGlNlPxSuri7Y6X8tY2dmm12UMH66RpKMhiX6rsk5wXXnYgbUcOt8kiS31/AjfoTOvCsE+w8nZQLQnzHA==} + engines: {node: '>= 0.4'} dependencies: call-bind-apply-helpers: 1.0.2 get-intrinsic: 1.2.7 + dev: true - callsites@3.1.0: {} + /callsites@3.1.0: + resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} + engines: {node: '>=6'} + dev: true - caniuse-lite@1.0.30001700: {} + /caniuse-lite@1.0.30001700: + resolution: {integrity: sha512-2S6XIXwaE7K7erT8dY+kLQcpa5ms63XlRkMkReXjle+kf6c5g38vyMl+Z5y8dSxOFDhcFe+nxnn261PLxBSQsQ==} + dev: true - chai@5.2.0: + /chai@5.2.0: + resolution: {integrity: sha512-mCuXncKXk5iCLhfhwTc0izo0gtEmpz5CtG2y8GiOINBlMVS6v8TMRc5TaLWKS6692m9+dVVfzgeVxR5UxWHTYw==} + engines: {node: '>=12'} dependencies: assertion-error: 2.0.1 check-error: 2.1.1 deep-eql: 5.0.2 loupe: 3.1.3 pathval: 2.0.0 + dev: true - chalk@3.0.0: + /chalk@3.0.0: + resolution: {integrity: sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==} + engines: {node: '>=8'} dependencies: ansi-styles: 4.3.0 supports-color: 7.2.0 + dev: true - chalk@4.1.2: + /chalk@4.1.2: + resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} + engines: {node: '>=10'} dependencies: ansi-styles: 4.3.0 supports-color: 7.2.0 + dev: true + + /chardet@0.7.0: + resolution: {integrity: sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==} + dev: true + + /chardet@2.1.0: + resolution: {integrity: sha512-bNFETTG/pM5ryzQ9Ad0lJOTa6HWD/YsScAR3EnCPZRPlQh77JocYktSHOUHelyhm8IARL+o4c4F1bP5KVOjiRA==} + dev: false - chardet@0.7.0: {} + /check-error@2.1.1: + resolution: {integrity: sha512-OAlb+T7V4Op9OwdkjmguYRqncdlx5JiofwOAUkmTF+jNdHwzTaTs4sRAGpzLF3oOz5xAyDGrPgeIDFQmDOTiJw==} + engines: {node: '>= 16'} + dev: true - check-error@2.1.1: {} + /cheerio-select@2.1.0: + resolution: {integrity: sha512-9v9kG0LvzrlcungtnJtpGNxY+fzECQKhK4EGJX2vByejiMX84MFNQw4UxPJl3bFbTMw+Dfs37XaIkCwTZfLh4g==} + dependencies: + boolbase: 1.0.0 + css-select: 5.1.0 + css-what: 6.1.0 + domelementtype: 2.3.0 + domhandler: 5.0.3 + domutils: 3.2.2 + dev: false + + /cheerio@1.0.0: + resolution: {integrity: sha512-quS9HgjQpdaXOvsZz82Oz7uxtXiy6UIsIQcpBj7HRw2M63Skasm9qlDocAM7jNuaxdhpPU7c4kJN+gA5MCu4ww==} + engines: {node: '>=18.17'} + dependencies: + cheerio-select: 2.1.0 + dom-serializer: 2.0.0 + domhandler: 5.0.3 + domutils: 3.2.2 + encoding-sniffer: 0.2.0 + htmlparser2: 9.1.0 + parse5: 7.2.1 + parse5-htmlparser2-tree-adapter: 7.1.0 + parse5-parser-stream: 7.1.2 + undici: 6.21.2 + whatwg-mimetype: 4.0.0 + dev: false - chokidar@4.0.3: + /chokidar@4.0.3: + resolution: {integrity: sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==} + engines: {node: '>= 14.16.0'} dependencies: readdirp: 4.1.2 + dev: true - chromatic@11.25.2: {} + /chromatic@11.25.2: + resolution: {integrity: sha512-/9eQWn6BU1iFsop86t8Au21IksTRxwXAl7if8YHD05L2AbuMjClLWZo5cZojqrJHGKDhTqfrC2X2xE4uSm0iKw==} + hasBin: true + peerDependencies: + '@chromatic-com/cypress': ^0.*.* || ^1.0.0 + '@chromatic-com/playwright': ^0.*.* || ^1.0.0 + peerDependenciesMeta: + '@chromatic-com/cypress': + optional: true + '@chromatic-com/playwright': + optional: true + dev: true - ci-info@3.9.0: {} + /ci-info@3.9.0: + resolution: {integrity: sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==} + engines: {node: '>=8'} + dev: true - clean-regexp@1.0.0: + /clean-regexp@1.0.0: + resolution: {integrity: sha512-GfisEZEJvzKrmGWkvfhgzcz/BllN1USeqD2V6tg14OAOgaCD2Z/PUEuxnAZ/nPvmaHRG7a8y77p1T/IRQ4D1Hw==} + engines: {node: '>=4'} dependencies: escape-string-regexp: 1.0.5 + dev: true - color-convert@2.0.1: + /color-convert@2.0.1: + resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} + engines: {node: '>=7.0.0'} dependencies: color-name: 1.1.4 - color-name@1.1.4: {} + /color-name@1.1.4: + resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} - color-string@1.9.1: + /color-string@1.9.1: + resolution: {integrity: sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==} dependencies: color-name: 1.1.4 simple-swizzle: 0.2.2 + dev: false - color@4.2.3: + /color@4.2.3: + resolution: {integrity: sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==} + engines: {node: '>=12.5.0'} dependencies: color-convert: 2.0.1 color-string: 1.9.1 + dev: false - combined-stream@1.0.8: + /combined-stream@1.0.8: + resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==} + engines: {node: '>= 0.8'} dependencies: delayed-stream: 1.0.0 - commander@4.1.1: {} + /commander@4.1.1: + resolution: {integrity: sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==} + engines: {node: '>= 6'} + dev: true - concat-map@0.0.1: {} + /concat-map@0.0.1: + resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} + dev: true - confbox@0.1.8: {} + /confbox@0.1.8: + resolution: {integrity: sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w==} + dev: true - consola@3.4.0: {} + /consola@3.4.0: + resolution: {integrity: sha512-EiPU8G6dQG0GFHNR8ljnZFki/8a+cQwEQ+7wpxdChl02Q8HXlwEZWD5lqAF8vC2sEC3Tehr8hy7vErz88LHyUA==} + engines: {node: ^14.18.0 || >=16.10.0} + dev: true - convert-source-map@2.0.0: {} + /convert-source-map@2.0.0: + resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} + dev: true - cross-spawn@7.0.6: + /cross-spawn@7.0.6: + resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==} + engines: {node: '>= 8'} dependencies: path-key: 3.1.1 shebang-command: 2.0.0 which: 2.0.2 + dev: true + + /css-select@5.1.0: + resolution: {integrity: sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==} + dependencies: + boolbase: 1.0.0 + css-what: 6.1.0 + domhandler: 5.0.3 + domutils: 3.2.2 + nth-check: 2.1.1 + dev: false - css-what@6.1.0: {} + /css-what@6.1.0: + resolution: {integrity: sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==} + engines: {node: '>= 6'} - css.escape@1.5.1: {} + /css.escape@1.5.1: + resolution: {integrity: sha512-YUifsXXuknHlUsmlgyY0PKzgPOr7/FjCePfHNt0jxm83wHZi44VDMQ7/fGNkjY3/jV1MC+1CmZbaHzugyeRtpg==} + dev: true - cssesc@3.0.0: {} + /cssesc@3.0.0: + resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==} + engines: {node: '>=4'} + hasBin: true - cssstyle@4.2.1: + /cssstyle@4.2.1: + resolution: {integrity: sha512-9+vem03dMXG7gDmZ62uqmRiMRNtinIZ9ZyuF6BdxzfOD+FdN5hretzynkn0ReS2DO2GSw76RWHs0UmJPI2zUjw==} + engines: {node: '>=18'} dependencies: '@asamuzakjp/css-color': 2.8.3 rrweb-cssom: 0.8.0 + dev: true - csstype@3.1.3: {} + /csstype@3.1.3: + resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==} - damerau-levenshtein@1.0.8: {} + /damerau-levenshtein@1.0.8: + resolution: {integrity: sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==} + dev: true - data-urls@5.0.0: + /data-urls@5.0.0: + resolution: {integrity: sha512-ZYP5VBHshaDAiVZxjbRVcFJpc+4xGgT0bK3vzy1HLN8jTO975HEbuYzZJcHoQEY5K1a0z8YayJkyVETa08eNTg==} + engines: {node: '>=18'} dependencies: whatwg-mimetype: 4.0.0 whatwg-url: 14.1.1 + dev: true - data-view-buffer@1.0.2: + /data-view-buffer@1.0.2: + resolution: {integrity: sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==} + engines: {node: '>= 0.4'} dependencies: call-bound: 1.0.3 es-errors: 1.3.0 is-data-view: 1.0.2 + dev: true - data-view-byte-length@1.0.2: + /data-view-byte-length@1.0.2: + resolution: {integrity: sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ==} + engines: {node: '>= 0.4'} dependencies: call-bound: 1.0.3 es-errors: 1.3.0 is-data-view: 1.0.2 + dev: true - data-view-byte-offset@1.0.1: + /data-view-byte-offset@1.0.1: + resolution: {integrity: sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==} + engines: {node: '>= 0.4'} dependencies: call-bound: 1.0.3 es-errors: 1.3.0 is-data-view: 1.0.2 + dev: true - debug@2.6.9: + /debug@2.6.9: + resolution: {integrity: sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true dependencies: ms: 2.0.0 + dev: false - debug@3.2.7: + /debug@3.2.7: + resolution: {integrity: sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true dependencies: ms: 2.1.3 - debug@4.4.0: + /debug@4.4.0: + resolution: {integrity: sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==} + engines: {node: '>=6.0'} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true dependencies: ms: 2.1.3 + dev: true - decimal.js@10.5.0: {} + /decimal.js@10.5.0: + resolution: {integrity: sha512-8vDa8Qxvr/+d94hSh5P3IJwI5t8/c0KsMp+g8bNw9cY2icONa5aPfvKeieW1WlG0WQYwwhJ7mjui2xtiePQSXw==} + dev: true - dedent@1.5.3: {} + /dedent@1.5.3: + resolution: {integrity: sha512-NHQtfOOW68WD8lgypbLA5oT+Bt0xXJhiYvoR6SmmNXZfpzOGXwdKWmcwG8N7PwVVWV3eF/68nmD9BaJSsTBhyQ==} + peerDependencies: + babel-plugin-macros: ^3.1.0 + peerDependenciesMeta: + babel-plugin-macros: + optional: true - deep-eql@5.0.2: {} + /deep-eql@5.0.2: + resolution: {integrity: sha512-h5k/5U50IJJFpzfL6nO9jaaumfjO/f2NjK/oYB2Djzm4p9L+3T9qWpZqZ2hAbLPuuYq9wrU08WQyBTL5GbPk5Q==} + engines: {node: '>=6'} + dev: true - deep-is@0.1.4: {} + /deep-is@0.1.4: + resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} + dev: true - deep-object-diff@1.1.9: {} + /deep-object-diff@1.1.9: + resolution: {integrity: sha512-Rn+RuwkmkDwCi2/oXOFS9Gsr5lJZu/yTGpK7wAaAIE75CC+LCGEZHpY6VQJa/RoJcrmaA/docWJZvYohlNkWPA==} - deepmerge@4.3.1: {} + /deepmerge@4.3.1: + resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==} + engines: {node: '>=0.10.0'} - define-data-property@1.1.4: + /define-data-property@1.1.4: + resolution: {integrity: sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==} + engines: {node: '>= 0.4'} dependencies: es-define-property: 1.0.1 es-errors: 1.3.0 gopd: 1.2.0 + dev: true - define-lazy-prop@2.0.0: {} + /define-lazy-prop@2.0.0: + resolution: {integrity: sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==} + engines: {node: '>=8'} + dev: true - define-properties@1.2.1: + /define-properties@1.2.1: + resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==} + engines: {node: '>= 0.4'} dependencies: define-data-property: 1.1.4 has-property-descriptors: 1.0.2 object-keys: 1.1.1 + dev: true - delayed-stream@1.0.0: {} + /delayed-stream@1.0.0: + resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==} + engines: {node: '>=0.4.0'} - dequal@2.0.3: {} + /dequal@2.0.3: + resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==} + engines: {node: '>=6'} + dev: true - detect-indent@6.1.0: {} + /detect-indent@6.1.0: + resolution: {integrity: sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA==} + engines: {node: '>=8'} + dev: true - detect-indent@7.0.1: {} + /detect-indent@7.0.1: + resolution: {integrity: sha512-Mc7QhQ8s+cLrnUfU/Ji94vG/r8M26m8f++vyres4ZoojaRDpZ1eSIh/EpzLNwlWuvzSZ3UbDFspjFvTDXe6e/g==} + engines: {node: '>=12.20'} + dev: true - detect-libc@2.0.3: {} + /detect-libc@2.0.3: + resolution: {integrity: sha512-bwy0MGW55bG41VqxxypOsdSdGqLwXPI/focwgTYCFMbdUiBAxLg9CFzG08sz2aqzknwiX7Hkl0bQENjg8iLByw==} + engines: {node: '>=8'} + dev: false - detect-newline@4.0.1: {} + /detect-newline@4.0.1: + resolution: {integrity: sha512-qE3Veg1YXzGHQhlA6jzebZN2qVf6NX+A7m7qlhCGG30dJixrAQhYOsJjsnBjJkCSmuOPpCk30145fr8FV0bzog==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dev: true - dir-glob@3.0.1: + /dir-glob@3.0.1: + resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} + engines: {node: '>=8'} dependencies: path-type: 4.0.0 + dev: true - doctrine@2.1.0: + /doctrine@2.1.0: + resolution: {integrity: sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==} + engines: {node: '>=0.10.0'} dependencies: esutils: 2.0.3 + dev: true - doctrine@3.0.0: + /doctrine@3.0.0: + resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==} + engines: {node: '>=6.0.0'} dependencies: esutils: 2.0.3 + dev: true + + /dom-accessibility-api@0.5.16: + resolution: {integrity: sha512-X7BJ2yElsnOJ30pZF4uIIDfBEVgF4XEBxL9Bxhy6dnrm5hkzqmsWHGTiHqRiITNhMyFLyAiWndIJP7Z1NTteDg==} + dev: true + + /dom-accessibility-api@0.6.3: + resolution: {integrity: sha512-7ZgogeTnjuHbo+ct10G9Ffp0mif17idi0IyWNVA/wcwcm7NPOD/WEHVP3n7n3MhXqxoIYm8d6MuZohYWIZ4T3w==} + dev: true + + /dom-serializer@2.0.0: + resolution: {integrity: sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==} + dependencies: + domelementtype: 2.3.0 + domhandler: 5.0.3 + entities: 4.5.0 + dev: false + + /domelementtype@2.3.0: + resolution: {integrity: sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==} + dev: false - dom-accessibility-api@0.5.16: {} + /domhandler@5.0.3: + resolution: {integrity: sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==} + engines: {node: '>= 4'} + dependencies: + domelementtype: 2.3.0 + dev: false - dom-accessibility-api@0.6.3: {} + /domutils@3.2.2: + resolution: {integrity: sha512-6kZKyUajlDuqlHKVX1w7gyslj9MPIXzIFiz/rGu35uC1wMi+kMhQwGhl4lt9unC9Vb9INnY9Z3/ZA3+FhASLaw==} + dependencies: + dom-serializer: 2.0.0 + domelementtype: 2.3.0 + domhandler: 5.0.3 + dev: false - dotenv@16.0.3: {} + /dotenv@16.0.3: + resolution: {integrity: sha512-7GO6HghkA5fYG9TYnNxi14/7K9f5occMlp3zXAuSxn7CKCxt9xbNWG7yF8hTCSUchlfWSe3uLmlPfigevRItzQ==} + engines: {node: '>=12'} + dev: true - dotenv@16.4.7: {} + /dotenv@16.4.7: + resolution: {integrity: sha512-47qPchRCykZC03FhkYAhrvwU4xDBFIj1QPqaarj6mdM/hgUzfPHcpkHJOn3mJAufFeeAxAzeGsr5X0M4k6fLZQ==} + engines: {node: '>=12'} + dev: false - dunder-proto@1.0.1: + /dunder-proto@1.0.1: + resolution: {integrity: sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==} + engines: {node: '>= 0.4'} dependencies: call-bind-apply-helpers: 1.0.2 es-errors: 1.3.0 gopd: 1.2.0 - eastasianwidth@0.2.0: {} + /eastasianwidth@0.2.0: + resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} + dev: true + + /electron-to-chromium@1.5.103: + resolution: {integrity: sha512-P6+XzIkfndgsrjROJWfSvVEgNHtPgbhVyTkwLjUM2HU/h7pZRORgaTlHqfAikqxKmdJMLW8fftrdGWbd/Ds0FA==} + dev: true - electron-to-chromium@1.5.103: {} + /emoji-regex@8.0.0: + resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} + dev: true - emoji-regex@8.0.0: {} + /emoji-regex@9.2.2: + resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} + dev: true - emoji-regex@9.2.2: {} + /encoding-sniffer@0.2.0: + resolution: {integrity: sha512-ju7Wq1kg04I3HtiYIOrUrdfdDvkyO9s5XM8QAj/bN61Yo/Vb4vgJxy5vi4Yxk01gWHbrofpPtpxM8bKger9jhg==} + dependencies: + iconv-lite: 0.6.3 + whatwg-encoding: 3.1.1 + dev: false - enhanced-resolve@5.18.1: + /enhanced-resolve@5.18.1: + resolution: {integrity: sha512-ZSW3ma5GkcQBIpwZTSRAI8N71Uuwgs93IezB7mf7R60tC8ZbJideoDNKjHn2O9KIlx6rkGTTEk1xUCK2E1Y2Yg==} + engines: {node: '>=10.13.0'} dependencies: graceful-fs: 4.2.11 tapable: 2.2.1 + dev: true - enquirer@2.4.1: + /enquirer@2.4.1: + resolution: {integrity: sha512-rRqJg/6gd538VHvR3PSrdRBb/1Vy2YfzHqzvbhGIQpDRKIa4FgV/54b5Q1xYSxOOwKvjXweS26E0Q+nAMwp2pQ==} + engines: {node: '>=8.6'} dependencies: ansi-colors: 4.1.3 strip-ansi: 6.0.1 + dev: true - entities@4.5.0: {} + /entities@4.5.0: + resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==} + engines: {node: '>=0.12'} - error-ex@1.3.2: + /error-ex@1.3.2: + resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==} dependencies: is-arrayish: 0.2.1 + dev: true - es-abstract@1.23.9: + /es-abstract@1.23.9: + resolution: {integrity: sha512-py07lI0wjxAC/DcfK1S6G7iANonniZwTISvdPzk9hzeH0IZIshbuuFxLIU96OyF89Yb9hiqWn8M/bY83KY5vzA==} + engines: {node: '>= 0.4'} dependencies: array-buffer-byte-length: 1.0.2 arraybuffer.prototype.slice: 1.0.4 @@ -6251,12 +3955,19 @@ snapshots: typed-array-length: 1.0.7 unbox-primitive: 1.1.0 which-typed-array: 1.1.18 + dev: true - es-define-property@1.0.1: {} + /es-define-property@1.0.1: + resolution: {integrity: sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==} + engines: {node: '>= 0.4'} - es-errors@1.3.0: {} + /es-errors@1.3.0: + resolution: {integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==} + engines: {node: '>= 0.4'} - es-iterator-helpers@1.2.1: + /es-iterator-helpers@1.2.1: + resolution: {integrity: sha512-uDn+FE1yrDzyC0pCo961B2IHbdM8y/ACZsKD4dG6WqrjV53BADjwa7D+1aom2rsNVfLyDgU/eigvlJGJ08OQ4w==} + engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.8 call-bound: 1.0.3 @@ -6274,38 +3985,59 @@ snapshots: internal-slot: 1.1.0 iterator.prototype: 1.1.5 safe-array-concat: 1.1.3 + dev: true - es-module-lexer@1.6.0: {} + /es-module-lexer@1.6.0: + resolution: {integrity: sha512-qqnD1yMU6tk/jnaMosogGySTZP8YtUgAffA9nMN+E/rjxcfRQ6IEk7IiozUjgxKoFHBGjTLnrHB/YC45r/59EQ==} + dev: true - es-object-atoms@1.1.1: + /es-object-atoms@1.1.1: + resolution: {integrity: sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==} + engines: {node: '>= 0.4'} dependencies: es-errors: 1.3.0 - es-set-tostringtag@2.1.0: + /es-set-tostringtag@2.1.0: + resolution: {integrity: sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==} + engines: {node: '>= 0.4'} dependencies: es-errors: 1.3.0 get-intrinsic: 1.2.7 has-tostringtag: 1.0.2 hasown: 2.0.2 - es-shim-unscopables@1.1.0: + /es-shim-unscopables@1.1.0: + resolution: {integrity: sha512-d9T8ucsEhh8Bi1woXCf+TIKDIROLG5WCkxg8geBCbvk22kzwC5G2OnXVMO6FUsvQlgUUXQ2itephWDLqDzbeCw==} + engines: {node: '>= 0.4'} dependencies: hasown: 2.0.2 + dev: true - es-to-primitive@1.3.0: + /es-to-primitive@1.3.0: + resolution: {integrity: sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==} + engines: {node: '>= 0.4'} dependencies: is-callable: 1.2.7 is-date-object: 1.1.0 is-symbol: 1.1.1 + dev: true - esbuild-register@3.6.0(esbuild@0.24.2): + /esbuild-register@3.6.0(esbuild@0.24.2): + resolution: {integrity: sha512-H2/S7Pm8a9CL1uhp9OvjwrBh5Pvx0H8qVOxNu8Wed9Y7qv56MPtq+GGM8RJpq6glYJn9Wspr8uw7l55uyinNeg==} + peerDependencies: + esbuild: '>=0.12 <1' dependencies: debug: 4.4.0 esbuild: 0.24.2 transitivePeerDependencies: - supports-color + dev: true - esbuild@0.21.5: + /esbuild@0.21.5: + resolution: {integrity: sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==} + engines: {node: '>=12'} + hasBin: true + requiresBuild: true optionalDependencies: '@esbuild/aix-ppc64': 0.21.5 '@esbuild/android-arm': 0.21.5 @@ -6330,8 +4062,13 @@ snapshots: '@esbuild/win32-arm64': 0.21.5 '@esbuild/win32-ia32': 0.21.5 '@esbuild/win32-x64': 0.21.5 + dev: true - esbuild@0.24.2: + /esbuild@0.24.2: + resolution: {integrity: sha512-+9egpBW8I3CD5XPe0n6BfT5fxLzxrlDzqydF3aviG+9ni1lDC/OvMHcxqEFV0+LANZG5R1bFMWfUrjVsdwxJvA==} + engines: {node: '>=18'} + hasBin: true + requiresBuild: true optionalDependencies: '@esbuild/aix-ppc64': 0.24.2 '@esbuild/android-arm': 0.24.2 @@ -6358,36 +4095,74 @@ snapshots: '@esbuild/win32-arm64': 0.24.2 '@esbuild/win32-ia32': 0.24.2 '@esbuild/win32-x64': 0.24.2 + dev: true - escalade@3.2.0: {} + /escalade@3.2.0: + resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==} + engines: {node: '>=6'} + dev: true - escape-string-regexp@1.0.5: {} + /escape-string-regexp@1.0.5: + resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==} + engines: {node: '>=0.8.0'} + dev: true - escape-string-regexp@4.0.0: {} + /escape-string-regexp@4.0.0: + resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} + engines: {node: '>=10'} + dev: true - eslint-config-prettier@9.1.0(eslint@8.57.1): + /eslint-config-prettier@9.1.0(eslint@8.57.1): + resolution: {integrity: sha512-NSWl5BFQWEPi1j4TjVNItzYV7dZXZ+wP6I6ZhrBGpChQhZRUaElihE9uRRkcbRnNb76UMKDF3r+WTmNcGPKsqw==} + hasBin: true + peerDependencies: + eslint: '>=7.0.0' dependencies: eslint: 8.57.1 + dev: true - eslint-config-turbo@2.4.2(eslint@8.57.1)(turbo@2.4.2): + /eslint-config-turbo@2.4.2(eslint@8.57.1)(turbo@2.4.2): + resolution: {integrity: sha512-yPiW5grffSWETp/3bVPUXWQkHfiLoOBb3wuBbM90HlKkLOhggySn9C6/yUccprqRguMgR5OzXIuzDuUnX6bulw==} + peerDependencies: + eslint: '>6.6.0' + turbo: '>2.0.0' dependencies: eslint: 8.57.1 eslint-plugin-turbo: 2.4.2(eslint@8.57.1)(turbo@2.4.2) turbo: 2.4.2 + dev: true - eslint-import-resolver-alias@1.1.2(eslint-plugin-import@2.31.0): + /eslint-import-resolver-alias@1.1.2(eslint-plugin-import@2.31.0): + resolution: {integrity: sha512-WdviM1Eu834zsfjHtcGHtGfcu+F30Od3V7I9Fi57uhBEwPkjDcii7/yW8jAT+gOhn4P/vOxxNAXbFAKsrrc15w==} + engines: {node: '>= 4'} + peerDependencies: + eslint-plugin-import: '>=1.4.0' dependencies: eslint-plugin-import: 2.31.0(@typescript-eslint/parser@7.18.0)(eslint@8.57.1) + dev: true - eslint-import-resolver-node@0.3.9: + /eslint-import-resolver-node@0.3.9: + resolution: {integrity: sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==} dependencies: debug: 3.2.7 is-core-module: 2.16.1 resolve: 1.22.10 transitivePeerDependencies: - supports-color + dev: true - eslint-import-resolver-typescript@3.8.3(eslint-plugin-import@2.31.0)(eslint@8.57.1): + /eslint-import-resolver-typescript@3.8.3(eslint-plugin-import@2.31.0)(eslint@8.57.1): + resolution: {integrity: sha512-A0bu4Ks2QqDWNpeEgTQMPTngaMhuDu4yv6xpftBMAf+1ziXnpx+eSR1WRfoPTe2BAiAjHFZ7kSNx1fvr5g5pmQ==} + engines: {node: ^14.18.0 || >=16.0.0} + peerDependencies: + eslint: '*' + eslint-plugin-import: '*' + eslint-plugin-import-x: '*' + peerDependenciesMeta: + eslint-plugin-import: + optional: true + eslint-plugin-import-x: + optional: true dependencies: '@nolyfill/is-core-module': 1.0.39 debug: 4.4.0 @@ -6400,8 +4175,28 @@ snapshots: tinyglobby: 0.2.12 transitivePeerDependencies: - supports-color + dev: true - eslint-module-utils@2.12.0(@typescript-eslint/parser@7.18.0)(eslint-import-resolver-node@0.3.9)(eslint@8.57.1): + /eslint-module-utils@2.12.0(@typescript-eslint/parser@7.18.0)(eslint-import-resolver-node@0.3.9)(eslint@8.57.1): + resolution: {integrity: sha512-wALZ0HFoytlyh/1+4wuZ9FJCD/leWHQzzrxJ8+rebyReSLk7LApMyd3WJaLVoN+D5+WIdJyDK1c6JnE65V4Zyg==} + engines: {node: '>=4'} + peerDependencies: + '@typescript-eslint/parser': '*' + eslint: '*' + eslint-import-resolver-node: '*' + eslint-import-resolver-typescript: '*' + eslint-import-resolver-webpack: '*' + peerDependenciesMeta: + '@typescript-eslint/parser': + optional: true + eslint: + optional: true + eslint-import-resolver-node: + optional: true + eslint-import-resolver-typescript: + optional: true + eslint-import-resolver-webpack: + optional: true dependencies: '@typescript-eslint/parser': 7.18.0(eslint@8.57.1)(typescript@5.6.3) debug: 3.2.7 @@ -6409,14 +4204,28 @@ snapshots: eslint-import-resolver-node: 0.3.9 transitivePeerDependencies: - supports-color + dev: true - eslint-plugin-eslint-comments@3.2.0(eslint@8.57.1): + /eslint-plugin-eslint-comments@3.2.0(eslint@8.57.1): + resolution: {integrity: sha512-0jkOl0hfojIHHmEHgmNdqv4fmh7300NdpA9FFpF7zaoLvB/QeXOGNLIo86oAveJFrfB1p05kC8hpEMHM8DwWVQ==} + engines: {node: '>=6.5.0'} + peerDependencies: + eslint: '>=4.19.1' dependencies: escape-string-regexp: 1.0.5 eslint: 8.57.1 ignore: 5.3.2 + dev: true - eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0)(eslint@8.57.1): + /eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0)(eslint@8.57.1): + resolution: {integrity: sha512-ixmkI62Rbc2/w8Vfxyh1jQRTdRTF52VxwRVHl/ykPAmqG+Nb7/kNn+byLP0LxPgI7zWA16Jt82SybJInmMia3A==} + engines: {node: '>=4'} + peerDependencies: + '@typescript-eslint/parser': '*' + eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 || ^9 + peerDependenciesMeta: + '@typescript-eslint/parser': + optional: true dependencies: '@rtsao/scc': 1.1.0 '@typescript-eslint/parser': 7.18.0(eslint@8.57.1)(typescript@5.6.3) @@ -6443,8 +4252,20 @@ snapshots: - eslint-import-resolver-typescript - eslint-import-resolver-webpack - supports-color + dev: true - eslint-plugin-jest@27.9.0(@typescript-eslint/eslint-plugin@6.21.0)(eslint@8.57.1)(typescript@5.6.3): + /eslint-plugin-jest@27.9.0(@typescript-eslint/eslint-plugin@6.21.0)(eslint@8.57.1)(typescript@5.6.3): + resolution: {integrity: sha512-QIT7FH7fNmd9n4se7FFKHbsLKGQiw885Ds6Y/sxKgCZ6natwCsXdgPOADnYVxN2QrRweF0FZWbJ6S7Rsn7llug==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + peerDependencies: + '@typescript-eslint/eslint-plugin': ^5.0.0 || ^6.0.0 || ^7.0.0 + eslint: ^7.0.0 || ^8.0.0 + jest: '*' + peerDependenciesMeta: + '@typescript-eslint/eslint-plugin': + optional: true + jest: + optional: true dependencies: '@typescript-eslint/eslint-plugin': 6.21.0(@typescript-eslint/parser@6.21.0)(eslint@8.57.1)(typescript@5.6.3) '@typescript-eslint/utils': 5.62.0(eslint@8.57.1)(typescript@5.6.3) @@ -6452,8 +4273,13 @@ snapshots: transitivePeerDependencies: - supports-color - typescript + dev: true - eslint-plugin-jsx-a11y@6.10.2(eslint@8.57.1): + /eslint-plugin-jsx-a11y@6.10.2(eslint@8.57.1): + resolution: {integrity: sha512-scB3nz4WmG75pV8+3eRUQOHZlNSUhFNq37xnpgRkCCELU3XMvXAxLk1eqWWyE22Ki4Q01Fnsw9BA3cJHDPgn2Q==} + engines: {node: '>=4.0'} + peerDependencies: + eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9 dependencies: aria-query: 5.3.2 array-includes: 3.1.8 @@ -6471,27 +4297,57 @@ snapshots: object.fromentries: 2.0.8 safe-regex-test: 1.1.0 string.prototype.includes: 2.0.1 + dev: true - eslint-plugin-only-warn@1.1.0: {} + /eslint-plugin-only-warn@1.1.0: + resolution: {integrity: sha512-2tktqUAT+Q3hCAU0iSf4xAN1k9zOpjK5WO8104mB0rT/dGhOa09582HN5HlbxNbPRZ0THV7nLGvzugcNOSjzfA==} + engines: {node: '>=6'} + dev: true - eslint-plugin-playwright@0.16.0(eslint-plugin-jest@27.9.0)(eslint@8.57.1): + /eslint-plugin-playwright@0.16.0(eslint-plugin-jest@27.9.0)(eslint@8.57.1): + resolution: {integrity: sha512-DcHpF0SLbNeh9MT4pMzUGuUSnJ7q5MWbP8sSEFIMS6j7Ggnduq8ghNlfhURgty4c1YFny7Ge9xYTO1FSAoV2Vw==} + peerDependencies: + eslint: '>=7' + eslint-plugin-jest: '>=25' + peerDependenciesMeta: + eslint-plugin-jest: + optional: true dependencies: eslint: 8.57.1 eslint-plugin-jest: 27.9.0(@typescript-eslint/eslint-plugin@6.21.0)(eslint@8.57.1)(typescript@5.6.3) + dev: true - eslint-plugin-react-hooks@4.6.2(eslint@8.57.1): + /eslint-plugin-react-hooks@4.6.2(eslint@8.57.1): + resolution: {integrity: sha512-QzliNJq4GinDBcD8gPB5v0wh6g8q3SUi6EFF0x8N/BL9PoVs0atuGc47ozMRyOWAKdwaZ5OnbOEa3WR+dSGKuQ==} + engines: {node: '>=10'} + peerDependencies: + eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 dependencies: eslint: 8.57.1 + dev: true - eslint-plugin-react-hooks@5.1.0(eslint@9.21.0): + /eslint-plugin-react-hooks@5.1.0(eslint@9.21.0): + resolution: {integrity: sha512-mpJRtPgHN2tNAvZ35AMfqeB3Xqeo273QxrHJsbBEPWODRM4r0yB6jfoROqKEYrOn27UtRPpcpHc2UqyBSuUNTw==} + engines: {node: '>=10'} + peerDependencies: + eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 || ^9.0.0 dependencies: eslint: 9.21.0 + dev: true - eslint-plugin-react-refresh@0.4.19(eslint@9.21.0): + /eslint-plugin-react-refresh@0.4.19(eslint@9.21.0): + resolution: {integrity: sha512-eyy8pcr/YxSYjBoqIFSrlbn9i/xvxUFa8CjzAYo9cFjgGXqq1hyjihcpZvxRLalpaWmueWR81xn7vuKmAFijDQ==} + peerDependencies: + eslint: '>=8.40' dependencies: eslint: 9.21.0 + dev: true - eslint-plugin-react@7.37.4(eslint@8.57.1): + /eslint-plugin-react@7.37.4(eslint@8.57.1): + resolution: {integrity: sha512-BGP0jRmfYyvOyvMoRX/uoUeW+GqNj9y16bPQzqAHf3AYII/tDs+jMN0dBVkl88/OZwNGwrVFxE7riHsXVfy/LQ==} + engines: {node: '>=4'} + peerDependencies: + eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7 dependencies: array-includes: 3.1.8 array.prototype.findlast: 1.2.5 @@ -6512,8 +4368,14 @@ snapshots: semver: 6.3.1 string.prototype.matchall: 4.0.12 string.prototype.repeat: 1.0.0 + dev: true - eslint-plugin-storybook@0.11.3(eslint@9.21.0)(typescript@5.6.3): + /eslint-plugin-storybook@0.11.3(eslint@9.21.0)(typescript@5.6.3): + resolution: {integrity: sha512-gDBnBZiyk4ZG7OMSJRaHBcuJ8TMCXgMIQ3HB/XvtN0SvSio2ZOIeYD3yGj39g/DbyCe/Bg02j/ip9tWlDEs82A==} + engines: {node: '>= 18'} + peerDependencies: + eslint: '>=8' + typescript: '>=4.8.4 <5.8.0' dependencies: '@storybook/csf': 0.1.13 '@typescript-eslint/utils': 8.24.1(eslint@9.21.0)(typescript@5.6.3) @@ -6522,27 +4384,44 @@ snapshots: typescript: 5.6.3 transitivePeerDependencies: - supports-color + dev: true - eslint-plugin-testing-library@6.5.0(eslint@8.57.1)(typescript@5.6.3): + /eslint-plugin-testing-library@6.5.0(eslint@8.57.1)(typescript@5.6.3): + resolution: {integrity: sha512-Ls5TUfLm5/snocMAOlofSOJxNN0aKqwTlco7CrNtMjkTdQlkpSMaeTCDHCuXfzrI97xcx2rSCNeKeJjtpkNC1w==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0, npm: '>=6'} + peerDependencies: + eslint: ^7.5.0 || ^8.0.0 || ^9.0.0 dependencies: '@typescript-eslint/utils': 5.62.0(eslint@8.57.1)(typescript@5.6.3) eslint: 8.57.1 transitivePeerDependencies: - supports-color - typescript + dev: true - eslint-plugin-tsdoc@0.2.17: + /eslint-plugin-tsdoc@0.2.17: + resolution: {integrity: sha512-xRmVi7Zx44lOBuYqG8vzTXuL6IdGOeF9nHX17bjJ8+VE6fsxpdGem0/SBTmAwgYMKYB1WBkqRJVQ+n8GK041pA==} dependencies: '@microsoft/tsdoc': 0.14.2 '@microsoft/tsdoc-config': 0.16.2 + dev: true - eslint-plugin-turbo@2.4.2(eslint@8.57.1)(turbo@2.4.2): + /eslint-plugin-turbo@2.4.2(eslint@8.57.1)(turbo@2.4.2): + resolution: {integrity: sha512-67IZtvOFaWDnUmYMV3luRIE1kqL+ok5MxPEsIPUqH2vQggML7jmZFZx/P9jhXAoFH+pViEz5QEzDa2DBLHqzQg==} + peerDependencies: + eslint: '>6.6.0' + turbo: '>2.0.0' dependencies: dotenv: 16.0.3 eslint: 8.57.1 turbo: 2.4.2 + dev: true - eslint-plugin-unicorn@48.0.1(eslint@8.57.1): + /eslint-plugin-unicorn@48.0.1(eslint@8.57.1): + resolution: {integrity: sha512-FW+4r20myG/DqFcCSzoumaddKBicIPeFnTrifon2mWIzlfyvzwyqZjqVP7m4Cqr/ZYisS2aiLghkUWaPg6vtCw==} + engines: {node: '>=16'} + peerDependencies: + eslint: '>=8.44.0' dependencies: '@babel/helper-validator-identifier': 7.25.9 '@eslint-community/eslint-utils': 4.4.1(eslint@8.57.1) @@ -6560,29 +4439,52 @@ snapshots: regjsparser: 0.10.0 semver: 7.7.1 strip-indent: 3.0.0 + dev: true - eslint-scope@5.1.1: + /eslint-scope@5.1.1: + resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==} + engines: {node: '>=8.0.0'} dependencies: esrecurse: 4.3.0 estraverse: 4.3.0 + dev: true - eslint-scope@7.2.2: + /eslint-scope@7.2.2: + resolution: {integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dependencies: esrecurse: 4.3.0 estraverse: 5.3.0 + dev: true - eslint-scope@8.2.0: + /eslint-scope@8.2.0: + resolution: {integrity: sha512-PHlWUfG6lvPc3yvP5A4PNyBL1W8fkDUccmI21JUu/+GKZBoH/W5u6usENXUrWFRsyoW5ACUjFGgAFQp5gUlb/A==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} dependencies: esrecurse: 4.3.0 estraverse: 5.3.0 + dev: true - eslint-visitor-keys@2.1.0: {} + /eslint-visitor-keys@2.1.0: + resolution: {integrity: sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==} + engines: {node: '>=10'} + dev: true - eslint-visitor-keys@3.4.3: {} + /eslint-visitor-keys@3.4.3: + resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + dev: true - eslint-visitor-keys@4.2.0: {} + /eslint-visitor-keys@4.2.0: + resolution: {integrity: sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + dev: true - eslint@8.57.1: + /eslint@8.57.1: + resolution: {integrity: sha512-ypowyDxpVSYpkXr9WPv2PAZCtNip1Mv5KTW0SCurXv/9iOpcrH9PaqUElksqEB6pChqHGDRCFTyrZlGhnLNGiA==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + deprecated: This version is no longer supported. Please see https://eslint.org/version-support for other options. + hasBin: true dependencies: '@eslint-community/eslint-utils': 4.4.1(eslint@8.57.1) '@eslint-community/regexpp': 4.12.1 @@ -6624,8 +4526,17 @@ snapshots: text-table: 0.2.0 transitivePeerDependencies: - supports-color + dev: true - eslint@9.21.0: + /eslint@9.21.0: + resolution: {integrity: sha512-KjeihdFqTPhOMXTt7StsDxriV4n66ueuF/jfPNC3j/lduHwr/ijDwJMsF+wyMJethgiKi5wniIE243vi07d3pg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + hasBin: true + peerDependencies: + jiti: '*' + peerDependenciesMeta: + jiti: + optional: true dependencies: '@eslint-community/eslint-utils': 4.4.1(eslint@9.21.0) '@eslint-community/regexpp': 4.12.1 @@ -6663,149 +4574,255 @@ snapshots: optionator: 0.9.4 transitivePeerDependencies: - supports-color + dev: true - espree@10.3.0: + /espree@10.3.0: + resolution: {integrity: sha512-0QYC8b24HWY8zjRnDTL6RiHfDbAWn63qb4LMj1Z4b076A4une81+z03Kg7l7mn/48PUTqoLptSXez8oknU8Clg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} dependencies: acorn: 8.14.0 acorn-jsx: 5.3.2(acorn@8.14.0) eslint-visitor-keys: 4.2.0 + dev: true - espree@9.6.1: + /espree@9.6.1: + resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dependencies: acorn: 8.14.0 acorn-jsx: 5.3.2(acorn@8.14.0) eslint-visitor-keys: 3.4.3 + dev: true - esprima@4.0.1: {} + /esprima@4.0.1: + resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==} + engines: {node: '>=4'} + hasBin: true + dev: true - esquery@1.6.0: + /esquery@1.6.0: + resolution: {integrity: sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==} + engines: {node: '>=0.10'} dependencies: estraverse: 5.3.0 + dev: true - esrecurse@4.3.0: + /esrecurse@4.3.0: + resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} + engines: {node: '>=4.0'} dependencies: estraverse: 5.3.0 + dev: true - estraverse@4.3.0: {} + /estraverse@4.3.0: + resolution: {integrity: sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==} + engines: {node: '>=4.0'} + dev: true - estraverse@5.3.0: {} + /estraverse@5.3.0: + resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} + engines: {node: '>=4.0'} + dev: true - estree-walker@2.0.2: {} + /estree-walker@2.0.2: + resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==} + dev: true - estree-walker@3.0.3: + /estree-walker@3.0.3: + resolution: {integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==} dependencies: '@types/estree': 1.0.6 + dev: true - esutils@2.0.3: {} + /esutils@2.0.3: + resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} + engines: {node: '>=0.10.0'} + dev: true - eval@0.1.8: + /eval@0.1.8: + resolution: {integrity: sha512-EzV94NYKoO09GLXGjXj9JIlXijVck4ONSr5wiCWDvhsvj5jxSrzTmRU/9C1DyB6uToszLs8aifA6NQ7lEQdvFw==} + engines: {node: '>= 0.8'} dependencies: '@types/node': 22.13.5 require-like: 0.1.2 + dev: true - extendable-error@0.1.7: {} + /extendable-error@0.1.7: + resolution: {integrity: sha512-UOiS2in6/Q0FK0R0q6UY9vYpQ21mr/Qn1KOnte7vsACuNJf514WvCCUHSRCPcgjPT2bAhNIJdlE6bVap1GKmeg==} + dev: true - external-editor@3.1.0: + /external-editor@3.1.0: + resolution: {integrity: sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==} + engines: {node: '>=4'} dependencies: chardet: 0.7.0 iconv-lite: 0.4.24 tmp: 0.0.33 + dev: true - fast-deep-equal@3.1.3: {} + /fast-deep-equal@3.1.3: + resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} + dev: true - fast-glob@3.3.3: + /fast-glob@3.3.3: + resolution: {integrity: sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==} + engines: {node: '>=8.6.0'} dependencies: '@nodelib/fs.stat': 2.0.5 '@nodelib/fs.walk': 1.2.8 glob-parent: 5.1.2 merge2: 1.4.1 micromatch: 4.0.8 + dev: true - fast-json-stable-stringify@2.1.0: {} + /fast-json-stable-stringify@2.1.0: + resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} + dev: true - fast-levenshtein@2.0.6: {} + /fast-levenshtein@2.0.6: + resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} + dev: true - fastq@1.19.0: + /fastq@1.19.0: + resolution: {integrity: sha512-7SFSRCNjBQIZH/xZR3iy5iQYR8aGBE0h3VG6/cwlbrpdciNYBMotQav8c1XI3HjHH+NikUpP53nPdlZSdWmFzA==} dependencies: reusify: 1.0.4 + dev: true - fdir@6.4.3(picomatch@4.0.2): + /fdir@6.4.3(picomatch@4.0.2): + resolution: {integrity: sha512-PMXmW2y1hDDfTSRc9gaXIuCCRpuoz3Kaz8cUelp3smouvfT632ozg2vrT6lJsHKKOF59YLbOGfAWGUcKEfRMQw==} + peerDependencies: + picomatch: ^3 || ^4 + peerDependenciesMeta: + picomatch: + optional: true dependencies: picomatch: 4.0.2 + dev: true - file-entry-cache@6.0.1: + /file-entry-cache@6.0.1: + resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==} + engines: {node: ^10.12.0 || >=12.0.0} dependencies: flat-cache: 3.2.0 + dev: true - file-entry-cache@8.0.0: + /file-entry-cache@8.0.0: + resolution: {integrity: sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==} + engines: {node: '>=16.0.0'} dependencies: flat-cache: 4.0.1 + dev: true - filesize@10.1.6: {} + /filesize@10.1.6: + resolution: {integrity: sha512-sJslQKU2uM33qH5nqewAwVB2QgR6w1aMNsYUp3aN5rMRyXEwJGmZvaWzeJFNTOXWlHQyBFCWrdj3fV/fsTOX8w==} + engines: {node: '>= 10.4.0'} + dev: true - fill-range@7.1.1: + /fill-range@7.1.1: + resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} + engines: {node: '>=8'} dependencies: to-regex-range: 5.0.1 + dev: true - find-up@4.1.0: + /find-up@4.1.0: + resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==} + engines: {node: '>=8'} dependencies: locate-path: 5.0.0 path-exists: 4.0.0 + dev: true - find-up@5.0.0: + /find-up@5.0.0: + resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} + engines: {node: '>=10'} dependencies: locate-path: 6.0.0 path-exists: 4.0.0 + dev: true - flat-cache@3.2.0: + /flat-cache@3.2.0: + resolution: {integrity: sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==} + engines: {node: ^10.12.0 || >=12.0.0} dependencies: flatted: 3.3.3 keyv: 4.5.4 rimraf: 3.0.2 + dev: true - flat-cache@4.0.1: + /flat-cache@4.0.1: + resolution: {integrity: sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==} + engines: {node: '>=16'} dependencies: flatted: 3.3.3 keyv: 4.5.4 + dev: true - flatted@3.3.3: {} + /flatted@3.3.3: + resolution: {integrity: sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==} + dev: true - for-each@0.3.5: + /for-each@0.3.5: + resolution: {integrity: sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==} + engines: {node: '>= 0.4'} dependencies: is-callable: 1.2.7 + dev: true - foreground-child@3.3.0: + /foreground-child@3.3.0: + resolution: {integrity: sha512-Ld2g8rrAyMYFXBhEqMz8ZAHBi4J4uS1i/CxGMDnjyFWddMXLVcDp051DZfu+t7+ab7Wv6SMqpWmyFIj5UbfFvg==} + engines: {node: '>=14'} dependencies: cross-spawn: 7.0.6 signal-exit: 4.1.0 + dev: true - form-data@4.0.2: + /form-data@4.0.2: + resolution: {integrity: sha512-hGfm/slu0ZabnNt4oaRZ6uREyfCj6P4fT/n6A1rGV+Z0VdGXjfOhVUpkn6qVQONHGIFwmveGXyDs75+nr6FM8w==} + engines: {node: '>= 6'} dependencies: asynckit: 0.4.0 combined-stream: 1.0.8 es-set-tostringtag: 2.1.0 mime-types: 2.1.35 - fs-extra@7.0.1: + /fs-extra@7.0.1: + resolution: {integrity: sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==} + engines: {node: '>=6 <7 || >=8'} dependencies: graceful-fs: 4.2.11 jsonfile: 4.0.0 universalify: 0.1.2 + dev: true - fs-extra@8.1.0: + /fs-extra@8.1.0: + resolution: {integrity: sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==} + engines: {node: '>=6 <7 || >=8'} dependencies: graceful-fs: 4.2.11 jsonfile: 4.0.0 universalify: 0.1.2 + dev: true - fs.realpath@1.0.0: {} + /fs.realpath@1.0.0: + resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} + dev: true - fsevents@2.3.3: + /fsevents@2.3.3: + resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} + engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} + os: [darwin] + requiresBuild: true + dev: true optional: true - function-bind@1.1.2: {} + /function-bind@1.1.2: + resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} - function.prototype.name@1.1.8: + /function.prototype.name@1.1.8: + resolution: {integrity: sha512-e5iwyodOHhbMr/yNrc7fDYG4qlbIvI5gajyzPnb5TCwyhjApznQh1BMFou9b30SevY43gCJKXycoCBjMbsuW0Q==} + engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.8 call-bound: 1.0.3 @@ -6813,12 +4830,20 @@ snapshots: functions-have-names: 1.2.3 hasown: 2.0.2 is-callable: 1.2.7 + dev: true - functions-have-names@1.2.3: {} + /functions-have-names@1.2.3: + resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==} + dev: true - gensync@1.0.0-beta.2: {} + /gensync@1.0.0-beta.2: + resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==} + engines: {node: '>=6.9.0'} + dev: true - get-intrinsic@1.2.7: + /get-intrinsic@1.2.7: + resolution: {integrity: sha512-VW6Pxhsrk0KAOqs3WEd0klDiF/+V7gQOpAvY1jVU/LHmaD/kQO4523aiJuikX/QAKYiW6x8Jh+RJej1almdtCA==} + engines: {node: '>= 0.4'} dependencies: call-bind-apply-helpers: 1.0.2 es-define-property: 1.0.1 @@ -6831,34 +4856,54 @@ snapshots: hasown: 2.0.2 math-intrinsics: 1.1.0 - get-proto@1.0.1: + /get-proto@1.0.1: + resolution: {integrity: sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==} + engines: {node: '>= 0.4'} dependencies: dunder-proto: 1.0.1 es-object-atoms: 1.1.1 - get-stdin@9.0.0: {} + /get-stdin@9.0.0: + resolution: {integrity: sha512-dVKBjfWisLAicarI2Sf+JuBE/DghV4UzNAVe9yhEJuzeREd3JhOTE9cUaJTeSa77fsbQUK3pcOpJfM59+VKZaA==} + engines: {node: '>=12'} + dev: true - get-symbol-description@1.1.0: + /get-symbol-description@1.1.0: + resolution: {integrity: sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==} + engines: {node: '>= 0.4'} dependencies: call-bound: 1.0.3 es-errors: 1.3.0 get-intrinsic: 1.2.7 + dev: true - get-tsconfig@4.10.0: + /get-tsconfig@4.10.0: + resolution: {integrity: sha512-kGzZ3LWWQcGIAmg6iWvXn0ei6WDtV26wzHRMwDSzmAbcXrTEXxHy6IehI6/4eT6VRKyMP1eF1VqwrVUmE/LR7A==} dependencies: resolve-pkg-maps: 1.0.0 + dev: true - git-hooks-list@3.2.0: {} + /git-hooks-list@3.2.0: + resolution: {integrity: sha512-ZHG9a1gEhUMX1TvGrLdyWb9kDopCBbTnI8z4JgRMYxsijWipgjSEYoPWqBuIB0DnRnvqlQSEeVmzpeuPm7NdFQ==} + dev: true - glob-parent@5.1.2: + /glob-parent@5.1.2: + resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} + engines: {node: '>= 6'} dependencies: is-glob: 4.0.3 + dev: true - glob-parent@6.0.2: + /glob-parent@6.0.2: + resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} + engines: {node: '>=10.13.0'} dependencies: is-glob: 4.0.3 + dev: true - glob@10.4.5: + /glob@10.4.5: + resolution: {integrity: sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==} + hasBin: true dependencies: foreground-child: 3.3.0 jackspeak: 3.4.3 @@ -6866,8 +4911,11 @@ snapshots: minipass: 7.1.2 package-json-from-dist: 1.0.1 path-scurry: 1.11.1 + dev: true - glob@7.2.3: + /glob@7.2.3: + resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} + deprecated: Glob versions prior to v9 are no longer supported dependencies: fs.realpath: 1.0.0 inflight: 1.0.6 @@ -6875,23 +4923,41 @@ snapshots: minimatch: 3.1.2 once: 1.4.0 path-is-absolute: 1.0.1 + dev: true - globals@11.12.0: {} + /globals@11.12.0: + resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==} + engines: {node: '>=4'} + dev: true - globals@13.24.0: + /globals@13.24.0: + resolution: {integrity: sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==} + engines: {node: '>=8'} dependencies: type-fest: 0.20.2 + dev: true - globals@14.0.0: {} + /globals@14.0.0: + resolution: {integrity: sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==} + engines: {node: '>=18'} + dev: true - globals@15.15.0: {} + /globals@15.15.0: + resolution: {integrity: sha512-7ACyT3wmyp3I61S4fG682L0VA2RGD9otkqGJIwNUMF1SWUombIIk+af1unuDYgMm082aHYwD+mzJvv9Iu8dsgg==} + engines: {node: '>=18'} + dev: true - globalthis@1.0.4: + /globalthis@1.0.4: + resolution: {integrity: sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==} + engines: {node: '>= 0.4'} dependencies: define-properties: 1.2.1 gopd: 1.2.0 + dev: true - globby@11.1.0: + /globby@11.1.0: + resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==} + engines: {node: '>=10'} dependencies: array-union: 2.1.0 dir-glob: 3.0.1 @@ -6899,259 +4965,458 @@ snapshots: ignore: 5.3.2 merge2: 1.4.1 slash: 3.0.0 + dev: true - gopd@1.2.0: {} + /gopd@1.2.0: + resolution: {integrity: sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==} + engines: {node: '>= 0.4'} - graceful-fs@4.2.11: {} + /graceful-fs@4.2.11: + resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} + dev: true - graphemer@1.4.0: {} + /graphemer@1.4.0: + resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} + dev: true - has-bigints@1.1.0: {} + /has-bigints@1.1.0: + resolution: {integrity: sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==} + engines: {node: '>= 0.4'} + dev: true - has-flag@4.0.0: {} + /has-flag@4.0.0: + resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} + engines: {node: '>=8'} + dev: true - has-property-descriptors@1.0.2: + /has-property-descriptors@1.0.2: + resolution: {integrity: sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==} dependencies: es-define-property: 1.0.1 + dev: true - has-proto@1.2.0: + /has-proto@1.2.0: + resolution: {integrity: sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==} + engines: {node: '>= 0.4'} dependencies: dunder-proto: 1.0.1 + dev: true - has-symbols@1.1.0: {} + /has-symbols@1.1.0: + resolution: {integrity: sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==} + engines: {node: '>= 0.4'} - has-tostringtag@1.0.2: + /has-tostringtag@1.0.2: + resolution: {integrity: sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==} + engines: {node: '>= 0.4'} dependencies: has-symbols: 1.1.0 - hasown@2.0.2: + /hasown@2.0.2: + resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} + engines: {node: '>= 0.4'} dependencies: function-bind: 1.1.2 - hosted-git-info@2.8.9: {} + /hosted-git-info@2.8.9: + resolution: {integrity: sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==} + dev: true - html-encoding-sniffer@4.0.0: + /html-encoding-sniffer@4.0.0: + resolution: {integrity: sha512-Y22oTqIU4uuPgEemfz7NDJz6OeKf12Lsu+QC+s3BVpda64lTiMYCyGwg5ki4vFxkMwQdeZDl2adZoqUgdFuTgQ==} + engines: {node: '>=18'} dependencies: whatwg-encoding: 3.1.1 + dev: true + + /html-escaper@2.0.2: + resolution: {integrity: sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==} + dev: true - html-escaper@2.0.2: {} + /htmlparser2@9.1.0: + resolution: {integrity: sha512-5zfg6mHUoaer/97TxnGpxmbR7zJtPwIYFMZ/H5ucTlPZhKvtum05yiPK3Mgai3a0DyVxv7qYqoweaEd2nrYQzQ==} + dependencies: + domelementtype: 2.3.0 + domhandler: 5.0.3 + domutils: 3.2.2 + entities: 4.5.0 + dev: false - http-proxy-agent@7.0.2: + /http-proxy-agent@7.0.2: + resolution: {integrity: sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==} + engines: {node: '>= 14'} dependencies: agent-base: 7.1.3 debug: 4.4.0 transitivePeerDependencies: - supports-color + dev: true - https-proxy-agent@7.0.6: + /https-proxy-agent@7.0.6: + resolution: {integrity: sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==} + engines: {node: '>= 14'} dependencies: agent-base: 7.1.3 debug: 4.4.0 transitivePeerDependencies: - supports-color + dev: true - human-id@4.1.1: {} + /human-id@4.1.1: + resolution: {integrity: sha512-3gKm/gCSUipeLsRYZbbdA1BD83lBoWUkZ7G9VFrhWPAU76KwYo5KR8V28bpoPm/ygy0x5/GCbpRQdY7VLYCoIg==} + hasBin: true + dev: true - iconv-lite@0.4.24: + /iconv-lite@0.4.24: + resolution: {integrity: sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==} + engines: {node: '>=0.10.0'} dependencies: safer-buffer: 2.1.2 - iconv-lite@0.6.3: + /iconv-lite@0.6.3: + resolution: {integrity: sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==} + engines: {node: '>=0.10.0'} dependencies: safer-buffer: 2.1.2 - ignore@5.3.2: {} + /ignore@5.3.2: + resolution: {integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==} + engines: {node: '>= 4'} + dev: true - import-fresh@3.3.1: + /import-fresh@3.3.1: + resolution: {integrity: sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==} + engines: {node: '>=6'} dependencies: parent-module: 1.0.1 resolve-from: 4.0.0 + dev: true - imurmurhash@0.1.4: {} + /imurmurhash@0.1.4: + resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} + engines: {node: '>=0.8.19'} + dev: true - indent-string@4.0.0: {} + /indent-string@4.0.0: + resolution: {integrity: sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==} + engines: {node: '>=8'} + dev: true - inflight@1.0.6: + /inflight@1.0.6: + resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} + deprecated: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful. dependencies: once: 1.4.0 wrappy: 1.0.2 + dev: true - inherits@2.0.4: {} + /inherits@2.0.4: + resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} + dev: true - internal-slot@1.1.0: + /internal-slot@1.1.0: + resolution: {integrity: sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==} + engines: {node: '>= 0.4'} dependencies: es-errors: 1.3.0 hasown: 2.0.2 side-channel: 1.1.0 + dev: true - is-arguments@1.2.0: + /is-arguments@1.2.0: + resolution: {integrity: sha512-7bVbi0huj/wrIAOzb8U1aszg9kdi3KN/CyU19CTI7tAoZYEZoL9yCDXpbXN+uPsuWnP02cyug1gleqq+TU+YCA==} + engines: {node: '>= 0.4'} dependencies: call-bound: 1.0.3 has-tostringtag: 1.0.2 + dev: true - is-array-buffer@3.0.5: + /is-array-buffer@3.0.5: + resolution: {integrity: sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==} + engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.8 call-bound: 1.0.3 get-intrinsic: 1.2.7 + dev: true - is-arrayish@0.2.1: {} + /is-arrayish@0.2.1: + resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==} + dev: true - is-arrayish@0.3.2: {} + /is-arrayish@0.3.2: + resolution: {integrity: sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==} + dev: false - is-async-function@2.1.1: + /is-async-function@2.1.1: + resolution: {integrity: sha512-9dgM/cZBnNvjzaMYHVoxxfPj2QXt22Ev7SuuPrs+xav0ukGB0S6d4ydZdEiM48kLx5kDV+QBPrpVnFyefL8kkQ==} + engines: {node: '>= 0.4'} dependencies: async-function: 1.0.0 call-bound: 1.0.3 get-proto: 1.0.1 has-tostringtag: 1.0.2 safe-regex-test: 1.1.0 + dev: true - is-bigint@1.1.0: + /is-bigint@1.1.0: + resolution: {integrity: sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==} + engines: {node: '>= 0.4'} dependencies: has-bigints: 1.1.0 + dev: true - is-boolean-object@1.2.2: + /is-boolean-object@1.2.2: + resolution: {integrity: sha512-wa56o2/ElJMYqjCjGkXri7it5FbebW5usLw/nPmCMs5DeZ7eziSYZhSmPRn0txqeW4LnAmQQU7FgqLpsEFKM4A==} + engines: {node: '>= 0.4'} dependencies: call-bound: 1.0.3 has-tostringtag: 1.0.2 + dev: true - is-builtin-module@3.2.1: + /is-builtin-module@3.2.1: + resolution: {integrity: sha512-BSLE3HnV2syZ0FK0iMA/yUGplUeMmNz4AW5fnTunbCIqZi4vG3WjJT9FHMy5D69xmAYBHXQhJdALdpwVxV501A==} + engines: {node: '>=6'} dependencies: builtin-modules: 3.3.0 + dev: true - is-bun-module@1.3.0: + /is-bun-module@1.3.0: + resolution: {integrity: sha512-DgXeu5UWI0IsMQundYb5UAOzm6G2eVnarJ0byP6Tm55iZNKceD59LNPA2L4VvsScTtHcw0yEkVwSf7PC+QoLSA==} dependencies: semver: 7.7.1 + dev: true - is-callable@1.2.7: {} + /is-callable@1.2.7: + resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==} + engines: {node: '>= 0.4'} + dev: true - is-core-module@2.16.1: + /is-core-module@2.16.1: + resolution: {integrity: sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==} + engines: {node: '>= 0.4'} dependencies: hasown: 2.0.2 + dev: true - is-data-view@1.0.2: + /is-data-view@1.0.2: + resolution: {integrity: sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==} + engines: {node: '>= 0.4'} dependencies: call-bound: 1.0.3 get-intrinsic: 1.2.7 is-typed-array: 1.1.15 + dev: true - is-date-object@1.1.0: + /is-date-object@1.1.0: + resolution: {integrity: sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==} + engines: {node: '>= 0.4'} dependencies: call-bound: 1.0.3 has-tostringtag: 1.0.2 + dev: true - is-docker@2.2.1: {} + /is-docker@2.2.1: + resolution: {integrity: sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==} + engines: {node: '>=8'} + hasBin: true + dev: true - is-extglob@2.1.1: {} + /is-extglob@2.1.1: + resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} + engines: {node: '>=0.10.0'} + dev: true - is-finalizationregistry@1.1.1: + /is-finalizationregistry@1.1.1: + resolution: {integrity: sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==} + engines: {node: '>= 0.4'} dependencies: call-bound: 1.0.3 + dev: true - is-fullwidth-code-point@3.0.0: {} + /is-fullwidth-code-point@3.0.0: + resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} + engines: {node: '>=8'} + dev: true - is-generator-function@1.1.0: + /is-generator-function@1.1.0: + resolution: {integrity: sha512-nPUB5km40q9e8UfN/Zc24eLlzdSf9OfKByBw9CIdw4H1giPMeA0OIJvbchsCu4npfI2QcMVBsGEBHKZ7wLTWmQ==} + engines: {node: '>= 0.4'} dependencies: call-bound: 1.0.3 get-proto: 1.0.1 has-tostringtag: 1.0.2 safe-regex-test: 1.1.0 + dev: true - is-glob@4.0.3: + /is-glob@4.0.3: + resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} + engines: {node: '>=0.10.0'} dependencies: is-extglob: 2.1.1 + dev: true - is-map@2.0.3: {} + /is-map@2.0.3: + resolution: {integrity: sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==} + engines: {node: '>= 0.4'} + dev: true - is-number-object@1.1.1: + /is-number-object@1.1.1: + resolution: {integrity: sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==} + engines: {node: '>= 0.4'} dependencies: call-bound: 1.0.3 has-tostringtag: 1.0.2 + dev: true - is-number@7.0.0: {} + /is-number@7.0.0: + resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} + engines: {node: '>=0.12.0'} + dev: true - is-path-inside@3.0.3: {} + /is-path-inside@3.0.3: + resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==} + engines: {node: '>=8'} + dev: true - is-plain-obj@4.1.0: {} + /is-plain-obj@4.1.0: + resolution: {integrity: sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==} + engines: {node: '>=12'} + dev: true - is-potential-custom-element-name@1.0.1: {} + /is-potential-custom-element-name@1.0.1: + resolution: {integrity: sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==} + dev: true - is-regex@1.2.1: + /is-regex@1.2.1: + resolution: {integrity: sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==} + engines: {node: '>= 0.4'} dependencies: call-bound: 1.0.3 gopd: 1.2.0 has-tostringtag: 1.0.2 hasown: 2.0.2 + dev: true - is-set@2.0.3: {} + /is-set@2.0.3: + resolution: {integrity: sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==} + engines: {node: '>= 0.4'} + dev: true - is-shared-array-buffer@1.0.4: + /is-shared-array-buffer@1.0.4: + resolution: {integrity: sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==} + engines: {node: '>= 0.4'} dependencies: call-bound: 1.0.3 + dev: true - is-string@1.1.1: + /is-string@1.1.1: + resolution: {integrity: sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==} + engines: {node: '>= 0.4'} dependencies: call-bound: 1.0.3 has-tostringtag: 1.0.2 + dev: true - is-subdir@1.2.0: + /is-subdir@1.2.0: + resolution: {integrity: sha512-2AT6j+gXe/1ueqbW6fLZJiIw3F8iXGJtt0yDrZaBhAZEG1raiTxKWU+IPqMCzQAXOUCKdA4UDMgacKH25XG2Cw==} + engines: {node: '>=4'} dependencies: better-path-resolve: 1.0.0 + dev: true - is-symbol@1.1.1: + /is-symbol@1.1.1: + resolution: {integrity: sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==} + engines: {node: '>= 0.4'} dependencies: call-bound: 1.0.3 has-symbols: 1.1.0 safe-regex-test: 1.1.0 + dev: true - is-typed-array@1.1.15: + /is-typed-array@1.1.15: + resolution: {integrity: sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==} + engines: {node: '>= 0.4'} dependencies: which-typed-array: 1.1.18 + dev: true - is-weakmap@2.0.2: {} + /is-weakmap@2.0.2: + resolution: {integrity: sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==} + engines: {node: '>= 0.4'} + dev: true - is-weakref@1.1.1: + /is-weakref@1.1.1: + resolution: {integrity: sha512-6i9mGWSlqzNMEqpCp93KwRS1uUOodk2OJ6b+sq7ZPDSy2WuI5NFIxp/254TytR8ftefexkWn5xNiHUNpPOfSew==} + engines: {node: '>= 0.4'} dependencies: call-bound: 1.0.3 + dev: true - is-weakset@2.0.4: + /is-weakset@2.0.4: + resolution: {integrity: sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==} + engines: {node: '>= 0.4'} dependencies: call-bound: 1.0.3 get-intrinsic: 1.2.7 + dev: true - is-windows@1.0.2: {} + /is-windows@1.0.2: + resolution: {integrity: sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==} + engines: {node: '>=0.10.0'} + dev: true - is-wsl@2.2.0: + /is-wsl@2.2.0: + resolution: {integrity: sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==} + engines: {node: '>=8'} dependencies: is-docker: 2.2.1 + dev: true - isarray@2.0.5: {} + /isarray@2.0.5: + resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==} + dev: true - isexe@2.0.0: {} + /isexe@2.0.0: + resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} + dev: true - istanbul-lib-coverage@3.2.2: {} + /istanbul-lib-coverage@3.2.2: + resolution: {integrity: sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==} + engines: {node: '>=8'} + dev: true - istanbul-lib-report@3.0.1: + /istanbul-lib-report@3.0.1: + resolution: {integrity: sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==} + engines: {node: '>=10'} dependencies: istanbul-lib-coverage: 3.2.2 make-dir: 4.0.0 supports-color: 7.2.0 + dev: true - istanbul-lib-source-maps@5.0.6: + /istanbul-lib-source-maps@5.0.6: + resolution: {integrity: sha512-yg2d+Em4KizZC5niWhQaIomgf5WlL4vOOjZ5xGCmF8SnPE/mDWWXgvRExdcpCgh9lLRRa1/fSYp2ymmbJ1pI+A==} + engines: {node: '>=10'} dependencies: '@jridgewell/trace-mapping': 0.3.25 debug: 4.4.0 istanbul-lib-coverage: 3.2.2 transitivePeerDependencies: - supports-color + dev: true - istanbul-reports@3.1.7: + /istanbul-reports@3.1.7: + resolution: {integrity: sha512-BewmUXImeuRk2YY0PVbxgKAysvhRPUQE0h5QRM++nVWyubKGV0l8qQ5op8+B2DOmwSe63Jivj0BjkPQVf8fP5g==} + engines: {node: '>=8'} dependencies: html-escaper: 2.0.2 istanbul-lib-report: 3.0.1 + dev: true - iterator.prototype@1.1.5: + /iterator.prototype@1.1.5: + resolution: {integrity: sha512-H0dkQoCa3b2VEeKQBOxFph+JAbcrQdE7KC0UkqwpLmv2EC4P41QXP+rqo9wYodACiG5/WM5s9oDApTU8utwj9g==} + engines: {node: '>= 0.4'} dependencies: define-data-property: 1.1.4 es-object-atoms: 1.1.1 @@ -7159,33 +5424,60 @@ snapshots: get-proto: 1.0.1 has-symbols: 1.1.0 set-function-name: 2.0.2 + dev: true - jackspeak@3.4.3: + /jackspeak@3.4.3: + resolution: {integrity: sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==} dependencies: '@isaacs/cliui': 8.0.2 optionalDependencies: '@pkgjs/parseargs': 0.11.0 + dev: true - javascript-stringify@2.1.0: {} + /javascript-stringify@2.1.0: + resolution: {integrity: sha512-JVAfqNPTvNq3sB/VHQJAFxN/sPgKnsKrCwyRt15zwNCdrMMJDdcEOdubuy+DuJYYdm0ox1J4uzEuYKkN+9yhVg==} + dev: true - jju@1.4.0: {} + /jju@1.4.0: + resolution: {integrity: sha512-8wb9Yw966OSxApiCt0K3yNJL8pnNeIv+OEq2YMidz4FKP6nonSRoOXc80iXY4JaN2FC11B9qsNmDsm+ZOfMROA==} + dev: true - joycon@3.1.1: {} + /joycon@3.1.1: + resolution: {integrity: sha512-34wB/Y7MW7bzjKRjUKTa46I2Z7eV62Rkhva+KkopW7Qvv/OSWBqvkSY7vusOPrNuZcUG3tApvdVgNB8POj3SPw==} + engines: {node: '>=10'} + dev: true - js-tokens@4.0.0: {} + /js-tokens@4.0.0: + resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} - js-yaml@3.14.1: + /js-yaml@3.14.1: + resolution: {integrity: sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==} + hasBin: true dependencies: argparse: 1.0.10 esprima: 4.0.1 + dev: true - js-yaml@4.1.0: + /js-yaml@4.1.0: + resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} + hasBin: true dependencies: argparse: 2.0.1 + dev: true - jsdoc-type-pratt-parser@4.1.0: {} + /jsdoc-type-pratt-parser@4.1.0: + resolution: {integrity: sha512-Hicd6JK5Njt2QB6XYFS7ok9e37O8AYk3jTcppG4YVQnYjOemymvTcmc7OWsmq/Qqj5TdRFO5/x/tIPmBeRtGHg==} + engines: {node: '>=12.0.0'} + dev: true - jsdom@26.0.0: + /jsdom@26.0.0: + resolution: {integrity: sha512-BZYDGVAIriBWTpIxYzrXjv3E/4u8+/pSG5bQdIYCbNCGOvsPkDQfTVLAIXAf9ETdCpduCVTkDe2NNZ8NIwUVzw==} + engines: {node: '>=18'} + peerDependencies: + canvas: ^3.0.0 + peerDependenciesMeta: + canvas: + optional: true dependencies: cssstyle: 4.2.1 data-urls: 5.0.0 @@ -7212,214 +5504,383 @@ snapshots: - bufferutil - supports-color - utf-8-validate + dev: true - jsesc@0.5.0: {} + /jsesc@0.5.0: + resolution: {integrity: sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==} + hasBin: true + dev: true - jsesc@3.1.0: {} + /jsesc@3.1.0: + resolution: {integrity: sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==} + engines: {node: '>=6'} + hasBin: true + dev: true - json-buffer@3.0.1: {} + /json-buffer@3.0.1: + resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} + dev: true - json-parse-even-better-errors@2.3.1: {} + /json-parse-even-better-errors@2.3.1: + resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==} + dev: true - json-schema-traverse@0.4.1: {} + /json-schema-traverse@0.4.1: + resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} + dev: true - json-stable-stringify-without-jsonify@1.0.1: {} + /json-stable-stringify-without-jsonify@1.0.1: + resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} + dev: true - json5@1.0.2: + /json5@1.0.2: + resolution: {integrity: sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==} + hasBin: true dependencies: minimist: 1.2.8 + dev: true - json5@2.2.3: {} + /json5@2.2.3: + resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==} + engines: {node: '>=6'} + hasBin: true + dev: true - jsonfile@4.0.0: + /jsonfile@4.0.0: + resolution: {integrity: sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==} optionalDependencies: graceful-fs: 4.2.11 + dev: true - jsonfile@6.1.0: + /jsonfile@6.1.0: + resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==} dependencies: universalify: 2.0.1 optionalDependencies: graceful-fs: 4.2.11 + dev: true - jsx-ast-utils@3.3.5: + /jsx-ast-utils@3.3.5: + resolution: {integrity: sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==} + engines: {node: '>=4.0'} dependencies: array-includes: 3.1.8 array.prototype.flat: 1.3.3 object.assign: 4.1.7 object.values: 1.2.1 + dev: true - keyv@4.5.4: + /keyv@4.5.4: + resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} dependencies: json-buffer: 3.0.1 + dev: true - language-subtag-registry@0.3.23: {} + /language-subtag-registry@0.3.23: + resolution: {integrity: sha512-0K65Lea881pHotoGEa5gDlMxt3pctLi2RplBb7Ezh4rRdLEOtgi7n4EwK9lamnUCkKBqaeKRVebTq6BAxSkpXQ==} + dev: true - language-tags@1.0.9: + /language-tags@1.0.9: + resolution: {integrity: sha512-MbjN408fEndfiQXbFQ1vnd+1NoLDsnQW41410oQBXiyXDMYH5z505juWa4KUE1LqxRC7DgOgZDbKLxHIwm27hA==} + engines: {node: '>=0.10'} dependencies: language-subtag-registry: 0.3.23 + dev: true - levn@0.4.1: + /levn@0.4.1: + resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} + engines: {node: '>= 0.8.0'} dependencies: prelude-ls: 1.2.1 type-check: 0.4.0 + dev: true - lilconfig@3.1.3: {} + /lilconfig@3.1.3: + resolution: {integrity: sha512-/vlFKAoH5Cgt3Ie+JLhRbwOsCQePABiU3tJ1egGvyQ+33R/vcwM2Zl2QR/LzjsBeItPt3oSVXapn+m4nQDvpzw==} + engines: {node: '>=14'} + dev: true - lines-and-columns@1.2.4: {} + /lines-and-columns@1.2.4: + resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} + dev: true - load-tsconfig@0.2.5: {} + /load-tsconfig@0.2.5: + resolution: {integrity: sha512-IXO6OCs9yg8tMKzfPZ1YmheJbZCiEsnBdcB03l0OcfK9prKnJb96siuHCr5Fl37/yo9DnKU+TLpxzTUspw9shg==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dev: true - locate-path@5.0.0: + /locate-path@5.0.0: + resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==} + engines: {node: '>=8'} dependencies: p-locate: 4.1.0 + dev: true - locate-path@6.0.0: + /locate-path@6.0.0: + resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} + engines: {node: '>=10'} dependencies: p-locate: 5.0.0 + dev: true - lodash.merge@4.6.2: {} + /lodash.merge@4.6.2: + resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} - lodash.sortby@4.7.0: {} + /lodash.sortby@4.7.0: + resolution: {integrity: sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA==} + dev: true - lodash.startcase@4.4.0: {} + /lodash.startcase@4.4.0: + resolution: {integrity: sha512-+WKqsK294HMSc2jEbNgpHpd0JfIBhp7rEV4aqXWqFr6AlXov+SlcgB1Fv01y2kGe3Gc8nMW7VA0SrGuSkRfIEg==} + dev: true - lodash@4.17.21: {} + /lodash@4.17.21: + resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} + dev: true - loose-envify@1.4.0: + /loose-envify@1.4.0: + resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==} + hasBin: true dependencies: js-tokens: 4.0.0 - loupe@3.1.3: {} + /loupe@3.1.3: + resolution: {integrity: sha512-kkIp7XSkP78ZxJEsSxW3712C6teJVoeHHwgo9zJ380de7IYyJ2ISlxojcH2pC5OFLewESmnRi/+XCDIEEVyoug==} + dev: true - lqip-modern@2.2.1: + /lqip-modern@2.2.1: + resolution: {integrity: sha512-5XlvR9zczhDiNstMztH5kF3xs2cVbvPu7xmGWpgd4Qwb7UastgplSihZt2PHX9CBkZ241En9miZEDXyy0TgdiQ==} + engines: {node: '>=18'} dependencies: p-map: 7.0.3 sharp: 0.33.5 + dev: false - lru-cache@10.4.3: {} + /lru-cache@10.4.3: + resolution: {integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==} - lru-cache@5.1.1: + /lru-cache@5.1.1: + resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} dependencies: yallist: 3.1.1 + dev: true - lz-string@1.5.0: {} + /lz-string@1.5.0: + resolution: {integrity: sha512-h5bgJWpxJNswbU7qCrV0tIKQCaS3blPDrqKWx+QxzuzL1zGUzij9XCWLrSLsJPu5t+eWA/ycetzYAO5IOMcWAQ==} + hasBin: true + dev: true - magic-string@0.27.0: + /magic-string@0.27.0: + resolution: {integrity: sha512-8UnnX2PeRAPZuN12svgR9j7M1uWMovg/CEnIwIG0LFkXSJJe4PdfUGiTGl8V9bsBHFUtfVINcSyYxd7q+kx9fA==} + engines: {node: '>=12'} dependencies: '@jridgewell/sourcemap-codec': 1.5.0 + dev: true - magic-string@0.30.17: + /magic-string@0.30.17: + resolution: {integrity: sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==} dependencies: '@jridgewell/sourcemap-codec': 1.5.0 + dev: true - magicast@0.3.5: + /magicast@0.3.5: + resolution: {integrity: sha512-L0WhttDl+2BOsybvEOLK7fW3UA0OQ0IQ2d6Zl2x/a6vVRs3bAY0ECOSHHeL5jD+SbOpOCUEi0y1DgHEn9Qn1AQ==} dependencies: '@babel/parser': 7.26.9 '@babel/types': 7.26.9 source-map-js: 1.2.1 + dev: true - make-dir@4.0.0: + /make-dir@4.0.0: + resolution: {integrity: sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==} + engines: {node: '>=10'} dependencies: semver: 7.7.1 + dev: true - map-or-similar@1.5.0: {} + /map-or-similar@1.5.0: + resolution: {integrity: sha512-0aF7ZmVon1igznGI4VS30yugpduQW3y3GkcgGJOp7d8x8QrizhigUxjI/m2UojsXXto+jLAH3KSz+xOJTiORjg==} + dev: true - math-intrinsics@1.1.0: {} + /math-intrinsics@1.1.0: + resolution: {integrity: sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==} + engines: {node: '>= 0.4'} - media-query-parser@2.0.2: + /media-query-parser@2.0.2: + resolution: {integrity: sha512-1N4qp+jE0pL5Xv4uEcwVUhIkwdUO3S/9gML90nqKA7v7FcOS5vUtatfzok9S9U1EJU8dHWlcv95WLnKmmxZI9w==} dependencies: '@babel/runtime': 7.26.9 - memoizerific@1.11.3: + /memoizerific@1.11.3: + resolution: {integrity: sha512-/EuHYwAPdLtXwAwSZkh/Gutery6pD2KYd44oQLhAvQp/50mpyduZh8Q7PYHXTCJ+wuXxt7oij2LXyIJOOYFPog==} dependencies: map-or-similar: 1.5.0 + dev: true - merge2@1.4.1: {} + /merge2@1.4.1: + resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} + engines: {node: '>= 8'} + dev: true - micromatch@4.0.8: + /micromatch@4.0.8: + resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==} + engines: {node: '>=8.6'} dependencies: braces: 3.0.3 picomatch: 2.3.1 + dev: true - mime-db@1.52.0: {} + /mime-db@1.52.0: + resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} + engines: {node: '>= 0.6'} - mime-types@2.1.35: + /mime-types@2.1.35: + resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==} + engines: {node: '>= 0.6'} dependencies: mime-db: 1.52.0 - min-indent@1.0.1: {} + /min-indent@1.0.1: + resolution: {integrity: sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==} + engines: {node: '>=4'} + dev: true - minimatch@3.1.2: + /minimatch@3.1.2: + resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} dependencies: brace-expansion: 1.1.11 + dev: true - minimatch@9.0.3: + /minimatch@9.0.3: + resolution: {integrity: sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==} + engines: {node: '>=16 || 14 >=14.17'} dependencies: brace-expansion: 2.0.1 + dev: true - minimatch@9.0.5: + /minimatch@9.0.5: + resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==} + engines: {node: '>=16 || 14 >=14.17'} dependencies: brace-expansion: 2.0.1 + dev: true - minimist@1.2.8: {} + /minimist@1.2.8: + resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} + dev: true - minipass@7.1.2: {} + /minipass@7.1.2: + resolution: {integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==} + engines: {node: '>=16 || 14 >=14.17'} + dev: true - mlly@1.7.4: + /mlly@1.7.4: + resolution: {integrity: sha512-qmdSIPC4bDJXgZTCR7XosJiNKySV7O215tsPtDN9iEO/7q/76b/ijtgRu/+epFXSJhijtTCCGp3DWS549P3xKw==} dependencies: acorn: 8.14.0 pathe: 2.0.3 pkg-types: 1.3.1 ufo: 1.5.4 + dev: true - modern-ahocorasick@1.1.0: {} + /modern-ahocorasick@1.1.0: + resolution: {integrity: sha512-sEKPVl2rM+MNVkGQt3ChdmD8YsigmXdn5NifZn6jiwn9LRJpWm8F3guhaqrJT/JOat6pwpbXEk6kv+b9DMIjsQ==} - mri@1.2.0: {} + /mri@1.2.0: + resolution: {integrity: sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==} + engines: {node: '>=4'} + dev: true - ms@2.0.0: {} + /ms@2.0.0: + resolution: {integrity: sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==} + dev: false - ms@2.1.3: {} + /ms@2.1.3: + resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} - mz@2.7.0: + /mz@2.7.0: + resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==} dependencies: any-promise: 1.3.0 object-assign: 4.1.1 thenify-all: 1.6.0 + dev: true - nanoid@3.3.8: {} + /nanoid@3.3.8: + resolution: {integrity: sha512-WNLf5Sd8oZxOm+TzppcYk8gVOgP+l58xNy58D0nbUnOxOWRWvlcCV4kUF7ltmI6PsrLl/BgKEyS4mqsGChFN0w==} + engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} + hasBin: true + dev: true - natural-compare@1.4.0: {} + /natural-compare@1.4.0: + resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} + dev: true - needle@2.9.1: + /needle@2.9.1: + resolution: {integrity: sha512-6R9fqJ5Zcmf+uYaFgdIHmLwNldn5HbK8L5ybn7Uz+ylX/rnOsSp1AHcvQSrCaFN+qNM1wpymHqD7mVasEOlHGQ==} + engines: {node: '>= 4.4.x'} + hasBin: true dependencies: debug: 3.2.7 iconv-lite: 0.4.24 sax: 1.4.1 transitivePeerDependencies: - supports-color + dev: false - node-fetch@2.7.0: + /node-fetch@2.7.0: + resolution: {integrity: sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==} + engines: {node: 4.x || >=6.0.0} + peerDependencies: + encoding: ^0.1.0 + peerDependenciesMeta: + encoding: + optional: true dependencies: whatwg-url: 5.0.0 + dev: false - node-releases@2.0.19: {} + /node-releases@2.0.19: + resolution: {integrity: sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==} + dev: true - normalize-package-data@2.5.0: + /normalize-package-data@2.5.0: + resolution: {integrity: sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==} dependencies: hosted-git-info: 2.8.9 resolve: 1.22.10 semver: 5.7.2 validate-npm-package-license: 3.0.4 + dev: true - nwsapi@2.2.16: {} + /nth-check@2.1.1: + resolution: {integrity: sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==} + dependencies: + boolbase: 1.0.0 + dev: false + + /nwsapi@2.2.16: + resolution: {integrity: sha512-F1I/bimDpj3ncaNDhfyMWuFqmQDBwDB0Fogc2qpL3BWvkQteFD/8BzWuIRl83rq0DXfm8SGt/HFhLXZyljTXcQ==} + dev: true - object-assign@4.1.1: {} + /object-assign@4.1.1: + resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} + engines: {node: '>=0.10.0'} + dev: true - object-inspect@1.13.4: {} + /object-inspect@1.13.4: + resolution: {integrity: sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==} + engines: {node: '>= 0.4'} + dev: true - object-keys@1.1.1: {} + /object-keys@1.1.1: + resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==} + engines: {node: '>= 0.4'} + dev: true - object.assign@4.1.7: + /object.assign@4.1.7: + resolution: {integrity: sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==} + engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.8 call-bound: 1.0.3 @@ -7427,44 +5888,74 @@ snapshots: es-object-atoms: 1.1.1 has-symbols: 1.1.0 object-keys: 1.1.1 + dev: true - object.entries@1.1.8: + /object.entries@1.1.8: + resolution: {integrity: sha512-cmopxi8VwRIAw/fkijJohSfpef5PdN0pMQJN6VC/ZKvn0LIknWD8KtgY6KlQdEc4tIjcQ3HxSMmnvtzIscdaYQ==} + engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.8 define-properties: 1.2.1 es-object-atoms: 1.1.1 + dev: true - object.fromentries@2.0.8: + /object.fromentries@2.0.8: + resolution: {integrity: sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==} + engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.8 define-properties: 1.2.1 es-abstract: 1.23.9 es-object-atoms: 1.1.1 + dev: true - object.groupby@1.0.3: + /object.groupby@1.0.3: + resolution: {integrity: sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ==} + engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.8 define-properties: 1.2.1 es-abstract: 1.23.9 + dev: true - object.values@1.2.1: + /object.values@1.2.1: + resolution: {integrity: sha512-gXah6aZrcUxjWg2zR2MwouP2eHlCBzdV4pygudehaKXSGW4v2AsRQUK+lwwXhii6KFZcunEnmSUoYp5CXibxtA==} + engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.8 call-bound: 1.0.3 define-properties: 1.2.1 es-object-atoms: 1.1.1 + dev: true - once@1.4.0: + /once@1.4.0: + resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} dependencies: wrappy: 1.0.2 + dev: true + + /open-graph-scraper@6.9.0: + resolution: {integrity: sha512-1KoV5v6GT0/MqlryrVGQROhEAD4u8wC3VjYOxsnhj3mWeGJ6N6nF/rbrcZREFr+kiYm9I5LMrzdK9t9hBMbL2Q==} + engines: {node: '>=18.0.0'} + dependencies: + chardet: 2.1.0 + cheerio: 1.0.0 + iconv-lite: 0.6.3 + undici: 6.21.2 + dev: false - open@8.4.2: + /open@8.4.2: + resolution: {integrity: sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==} + engines: {node: '>=12'} dependencies: define-lazy-prop: 2.0.0 is-docker: 2.2.1 is-wsl: 2.2.0 + dev: true - optionator@0.9.4: + /optionator@0.9.4: + resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==} + engines: {node: '>= 0.8.0'} dependencies: deep-is: 0.1.4 fast-levenshtein: 2.0.6 @@ -7472,167 +5963,339 @@ snapshots: prelude-ls: 1.2.1 type-check: 0.4.0 word-wrap: 1.2.5 + dev: true - os-tmpdir@1.0.2: {} + /os-tmpdir@1.0.2: + resolution: {integrity: sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==} + engines: {node: '>=0.10.0'} + dev: true - outdent@0.5.0: {} + /outdent@0.5.0: + resolution: {integrity: sha512-/jHxFIzoMXdqPzTaCpFzAAWhpkSjZPF4Vsn6jAfNpmbH/ymsmd7Qc6VE9BGn0L6YMj6uwpQLxCECpus4ukKS9Q==} + dev: true - own-keys@1.0.1: + /own-keys@1.0.1: + resolution: {integrity: sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg==} + engines: {node: '>= 0.4'} dependencies: get-intrinsic: 1.2.7 object-keys: 1.1.1 safe-push-apply: 1.0.0 + dev: true - p-filter@2.1.0: + /p-filter@2.1.0: + resolution: {integrity: sha512-ZBxxZ5sL2HghephhpGAQdoskxplTwr7ICaehZwLIlfL6acuVgZPm8yBNuRAFBGEqtD/hmUeq9eqLg2ys9Xr/yw==} + engines: {node: '>=8'} dependencies: p-map: 2.1.0 + dev: true - p-limit@2.3.0: + /p-limit@2.3.0: + resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==} + engines: {node: '>=6'} dependencies: p-try: 2.2.0 + dev: true - p-limit@3.1.0: + /p-limit@3.1.0: + resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} + engines: {node: '>=10'} dependencies: yocto-queue: 0.1.0 + dev: true - p-locate@4.1.0: + /p-locate@4.1.0: + resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==} + engines: {node: '>=8'} dependencies: p-limit: 2.3.0 + dev: true - p-locate@5.0.0: + /p-locate@5.0.0: + resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} + engines: {node: '>=10'} dependencies: p-limit: 3.1.0 + dev: true - p-map@2.1.0: {} + /p-map@2.1.0: + resolution: {integrity: sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==} + engines: {node: '>=6'} + dev: true - p-map@7.0.3: {} + /p-map@7.0.3: + resolution: {integrity: sha512-VkndIv2fIB99swvQoA65bm+fsmt6UNdGeIB0oxBs+WhAhdh08QA04JXpI7rbB9r08/nkbysKoya9rtDERYOYMA==} + engines: {node: '>=18'} + dev: false - p-try@2.2.0: {} + /p-try@2.2.0: + resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==} + engines: {node: '>=6'} + dev: true - package-json-from-dist@1.0.1: {} + /package-json-from-dist@1.0.1: + resolution: {integrity: sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==} + dev: true - package-manager-detector@0.2.9: {} + /package-manager-detector@0.2.9: + resolution: {integrity: sha512-+vYvA/Y31l8Zk8dwxHhL3JfTuHPm6tlxM2A3GeQyl7ovYnSp1+mzAxClxaOr0qO1TtPxbQxetI7v5XqKLJZk7Q==} + dev: true - parent-module@1.0.1: + /parent-module@1.0.1: + resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} + engines: {node: '>=6'} dependencies: callsites: 3.1.0 + dev: true - parse-json@5.2.0: + /parse-json@5.2.0: + resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==} + engines: {node: '>=8'} dependencies: '@babel/code-frame': 7.26.2 error-ex: 1.3.2 json-parse-even-better-errors: 2.3.1 lines-and-columns: 1.2.4 + dev: true + + /parse5-htmlparser2-tree-adapter@7.1.0: + resolution: {integrity: sha512-ruw5xyKs6lrpo9x9rCZqZZnIUntICjQAd0Wsmp396Ul9lN/h+ifgVV1x1gZHi8euej6wTfpqX8j+BFQxF0NS/g==} + dependencies: + domhandler: 5.0.3 + parse5: 7.2.1 + dev: false + + /parse5-parser-stream@7.1.2: + resolution: {integrity: sha512-JyeQc9iwFLn5TbvvqACIF/VXG6abODeB3Fwmv/TGdLk2LfbWkaySGY72at4+Ty7EkPZj854u4CrICqNk2qIbow==} + dependencies: + parse5: 7.2.1 + dev: false - parse5@7.2.1: + /parse5@7.2.1: + resolution: {integrity: sha512-BuBYQYlv1ckiPdQi/ohiivi9Sagc9JG+Ozs0r7b/0iK3sKmrb0b9FdWdBbOdx6hBCM/F9Ir82ofnBhtZOjCRPQ==} dependencies: entities: 4.5.0 - path-exists@4.0.0: {} + /path-exists@4.0.0: + resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} + engines: {node: '>=8'} + dev: true - path-is-absolute@1.0.1: {} + /path-is-absolute@1.0.1: + resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} + engines: {node: '>=0.10.0'} + dev: true - path-key@3.1.1: {} + /path-key@3.1.1: + resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} + engines: {node: '>=8'} + dev: true - path-parse@1.0.7: {} + /path-parse@1.0.7: + resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} + dev: true - path-scurry@1.11.1: + /path-scurry@1.11.1: + resolution: {integrity: sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==} + engines: {node: '>=16 || 14 >=14.18'} dependencies: lru-cache: 10.4.3 minipass: 7.1.2 + dev: true - path-type@4.0.0: {} + /path-type@4.0.0: + resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} + engines: {node: '>=8'} + dev: true - pathe@1.1.2: {} + /pathe@1.1.2: + resolution: {integrity: sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==} + dev: true - pathe@2.0.3: {} + /pathe@2.0.3: + resolution: {integrity: sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==} + dev: true - pathval@2.0.0: {} + /pathval@2.0.0: + resolution: {integrity: sha512-vE7JKRyES09KiunauX7nd2Q9/L7lhok4smP9RZTDeD4MVs72Dp2qNFVz39Nz5a0FVEW0BJR6C0DYrq6unoziZA==} + engines: {node: '>= 14.16'} + dev: true - picocolors@1.1.1: {} + /picocolors@1.1.1: + resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==} - picomatch@2.3.1: {} + /picomatch@2.3.1: + resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} + engines: {node: '>=8.6'} + dev: true - picomatch@4.0.2: {} + /picomatch@4.0.2: + resolution: {integrity: sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==} + engines: {node: '>=12'} + dev: true - pify@4.0.1: {} + /pify@4.0.1: + resolution: {integrity: sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==} + engines: {node: '>=6'} + dev: true - pirates@4.0.6: {} + /pirates@4.0.6: + resolution: {integrity: sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==} + engines: {node: '>= 6'} + dev: true - pkg-types@1.3.1: + /pkg-types@1.3.1: + resolution: {integrity: sha512-/Jm5M4RvtBFVkKWRu2BLUTNP8/M2a+UwuAX+ae4770q1qVGtfjG+WTCupoZixokjmHiry8uI+dlY8KXYV5HVVQ==} dependencies: confbox: 0.1.8 mlly: 1.7.4 pathe: 2.0.3 + dev: true - pluralize@8.0.0: {} + /pluralize@8.0.0: + resolution: {integrity: sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==} + engines: {node: '>=4'} + dev: true - polished@4.3.1: + /polished@4.3.1: + resolution: {integrity: sha512-OBatVyC/N7SCW/FaDHrSd+vn0o5cS855TOmYi4OkdWUMSJCET/xip//ch8xGUvtr3i44X9LVyWwQlRMTN3pwSA==} + engines: {node: '>=10'} dependencies: '@babel/runtime': 7.26.9 + dev: true - possible-typed-array-names@1.1.0: {} + /possible-typed-array-names@1.1.0: + resolution: {integrity: sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==} + engines: {node: '>= 0.4'} + dev: true - postcss-load-config@6.0.1: + /postcss-load-config@6.0.1: + resolution: {integrity: sha512-oPtTM4oerL+UXmx+93ytZVN82RrlY/wPUV8IeDxFrzIjXOLF1pN+EmKPLbubvKHT2HC20xXsCAH2Z+CKV6Oz/g==} + engines: {node: '>= 18'} + peerDependencies: + jiti: '>=1.21.0' + postcss: '>=8.0.9' + tsx: ^4.8.1 + yaml: ^2.4.2 + peerDependenciesMeta: + jiti: + optional: true + postcss: + optional: true + tsx: + optional: true + yaml: + optional: true dependencies: lilconfig: 3.1.3 + dev: true - postcss@8.5.3: + /postcss@8.5.3: + resolution: {integrity: sha512-dle9A3yYxlBSrt8Fu+IpjGT8SY8hN0mlaA6GY8t0P5PjIOZemULz/E2Bnm/2dcUOena75OTNkHI76uZBNUUq3A==} + engines: {node: ^10 || ^12 || >=14} dependencies: nanoid: 3.3.8 picocolors: 1.1.1 source-map-js: 1.2.1 + dev: true - prelude-ls@1.2.1: {} + /prelude-ls@1.2.1: + resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} + engines: {node: '>= 0.8.0'} + dev: true - prettier-plugin-packagejson@2.5.8(prettier@3.5.2): + /prettier-plugin-packagejson@2.5.8(prettier@3.5.2): + resolution: {integrity: sha512-BaGOF63I0IJZoudxpuQe17naV93BRtK8b3byWktkJReKEMX9CC4qdGUzThPDVO/AUhPzlqDiAXbp18U6X8wLKA==} + peerDependencies: + prettier: '>= 1.16.0' + peerDependenciesMeta: + prettier: + optional: true dependencies: prettier: 3.5.2 sort-package-json: 2.14.0 synckit: 0.9.2 + dev: true - prettier@2.8.8: {} + /prettier@2.8.8: + resolution: {integrity: sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==} + engines: {node: '>=10.13.0'} + hasBin: true + dev: true - prettier@3.5.2: {} + /prettier@3.5.2: + resolution: {integrity: sha512-lc6npv5PH7hVqozBR7lkBNOGXV9vMwROAPlumdBkX0wTbbzPu/U1hk5yL8p2pt4Xoc+2mkT8t/sow2YrV/M5qg==} + engines: {node: '>=14'} + hasBin: true + dev: true - pretty-format@27.5.1: + /pretty-format@27.5.1: + resolution: {integrity: sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==} + engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} dependencies: ansi-regex: 5.0.1 ansi-styles: 5.2.0 react-is: 17.0.2 + dev: true - prismjs@1.29.0: {} + /prismjs@1.29.0: + resolution: {integrity: sha512-Kx/1w86q/epKcmte75LNrEoT+lX8pBpavuAbvJWRXar7Hz8jrtF+e3vY751p0R8H9HdArwaCTNDDzHg/ScJK1Q==} + engines: {node: '>=6'} + dev: false - probe-image-size@7.2.3: + /probe-image-size@7.2.3: + resolution: {integrity: sha512-HubhG4Rb2UH8YtV4ba0Vp5bQ7L78RTONYu/ujmCu5nBI8wGv24s4E9xSKBi0N1MowRpxk76pFCpJtW0KPzOK0w==} dependencies: lodash.merge: 4.6.2 needle: 2.9.1 stream-parser: 0.3.1 transitivePeerDependencies: - supports-color + dev: false - process@0.11.10: {} + /process@0.11.10: + resolution: {integrity: sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==} + engines: {node: '>= 0.6.0'} + dev: true - prop-types@15.8.1: + /prop-types@15.8.1: + resolution: {integrity: sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==} dependencies: loose-envify: 1.4.0 object-assign: 4.1.1 react-is: 16.13.1 + dev: true - punycode@2.3.1: {} + /punycode@2.3.1: + resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} + engines: {node: '>=6'} + dev: true - queue-microtask@1.2.3: {} + /queue-microtask@1.2.3: + resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} + dev: true - react-confetti@6.2.2(react@18.3.1): + /react-confetti@6.2.2(react@18.3.1): + resolution: {integrity: sha512-K+kTyOPgX+ZujMZ+Rmb7pZdHBvg+DzinG/w4Eh52WOB8/pfO38efnnrtEZNJmjTvLxc16RBYO+tPM68Fg8viBA==} + engines: {node: '>=16'} + peerDependencies: + react: ^16.3.0 || ^17.0.1 || ^18.0.0 || ^19.0.0 dependencies: react: 18.3.1 tween-functions: 1.2.0 + dev: true - react-docgen-typescript@2.2.2(typescript@5.6.3): + /react-docgen-typescript@2.2.2(typescript@5.6.3): + resolution: {integrity: sha512-tvg2ZtOpOi6QDwsb3GZhOjDkkX0h8Z2gipvTg6OVMUyoYoURhEiRNePT8NZItTVCDh39JJHnLdfCOkzoLbFnTg==} + peerDependencies: + typescript: '>= 4.3.x' dependencies: typescript: 5.6.3 + dev: true - react-docgen@7.1.1: + /react-docgen@7.1.1: + resolution: {integrity: sha512-hlSJDQ2synMPKFZOsKo9Hi8WWZTC7POR8EmWvTSjow+VDgKzkmjQvFm2fk0tmRw+f0vTOIYKlarR0iL4996pdg==} + engines: {node: '>=16.14.0'} dependencies: '@babel/core': 7.26.9 '@babel/traverse': 7.26.9 @@ -7646,59 +6309,92 @@ snapshots: strip-indent: 4.0.0 transitivePeerDependencies: - supports-color + dev: true - react-dom@18.3.1(react@18.3.1): + /react-dom@18.3.1(react@18.3.1): + resolution: {integrity: sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==} + peerDependencies: + react: ^18.3.1 dependencies: loose-envify: 1.4.0 react: 18.3.1 scheduler: 0.23.2 - react-is@16.13.1: {} + /react-is@16.13.1: + resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==} + dev: true - react-is@17.0.2: {} + /react-is@17.0.2: + resolution: {integrity: sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==} + dev: true - react-refresh@0.14.2: {} + /react-refresh@0.14.2: + resolution: {integrity: sha512-jCvmsr+1IUSMUyzOkRcvnVbX3ZYC6g9TDrDbFuFmRDq7PD4yaGbLKNQL6k2jnArV8hjYxh7hVhAZB6s9HDGpZA==} + engines: {node: '>=0.10.0'} + dev: true - react@18.3.1: + /react@18.3.1: + resolution: {integrity: sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==} + engines: {node: '>=0.10.0'} dependencies: loose-envify: 1.4.0 - read-pkg-up@7.0.1: + /read-pkg-up@7.0.1: + resolution: {integrity: sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==} + engines: {node: '>=8'} dependencies: find-up: 4.1.0 read-pkg: 5.2.0 type-fest: 0.8.1 + dev: true - read-pkg@5.2.0: + /read-pkg@5.2.0: + resolution: {integrity: sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==} + engines: {node: '>=8'} dependencies: '@types/normalize-package-data': 2.4.4 normalize-package-data: 2.5.0 parse-json: 5.2.0 type-fest: 0.6.0 + dev: true - read-yaml-file@1.1.0: + /read-yaml-file@1.1.0: + resolution: {integrity: sha512-VIMnQi/Z4HT2Fxuwg5KrY174U1VdUIASQVWXXyqtNRtxSr9IYkn1rsI6Tb6HsrHCmB7gVpNwX6JxPTHcH6IoTA==} + engines: {node: '>=6'} dependencies: graceful-fs: 4.2.11 js-yaml: 3.14.1 pify: 4.0.1 strip-bom: 3.0.0 + dev: true - readdirp@4.1.2: {} + /readdirp@4.1.2: + resolution: {integrity: sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==} + engines: {node: '>= 14.18.0'} + dev: true - recast@0.23.9: + /recast@0.23.9: + resolution: {integrity: sha512-Hx/BGIbwj+Des3+xy5uAtAbdCyqK9y9wbBcDFDYanLS9JnMqf7OeF87HQwUimE87OEc72mr6tkKUKMBBL+hF9Q==} + engines: {node: '>= 4'} dependencies: ast-types: 0.16.1 esprima: 4.0.1 source-map: 0.6.1 tiny-invariant: 1.3.3 tslib: 2.8.1 + dev: true - redent@3.0.0: + /redent@3.0.0: + resolution: {integrity: sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==} + engines: {node: '>=8'} dependencies: indent-string: 4.0.0 strip-indent: 3.0.0 + dev: true - reflect.getprototypeof@1.0.10: + /reflect.getprototypeof@1.0.10: + resolution: {integrity: sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==} + engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.8 define-properties: 1.2.1 @@ -7708,12 +6404,19 @@ snapshots: get-intrinsic: 1.2.7 get-proto: 1.0.1 which-builtin-type: 1.2.1 + dev: true - regenerator-runtime@0.14.1: {} + /regenerator-runtime@0.14.1: + resolution: {integrity: sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==} - regexp-tree@0.1.27: {} + /regexp-tree@0.1.27: + resolution: {integrity: sha512-iETxpjK6YoRWJG5o6hXLwvjYAoW+FEZn9os0PD/b6AP6xQwsa/Y7lCVgIixBbUPMfhu+i2LtdeAqVTgGlQarfA==} + hasBin: true + dev: true - regexp.prototype.flags@1.5.4: + /regexp.prototype.flags@1.5.4: + resolution: {integrity: sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==} + engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.8 define-properties: 1.2.1 @@ -7721,43 +6424,76 @@ snapshots: get-proto: 1.0.1 gopd: 1.2.0 set-function-name: 2.0.2 + dev: true - regjsparser@0.10.0: + /regjsparser@0.10.0: + resolution: {integrity: sha512-qx+xQGZVsy55CH0a1hiVwHmqjLryfh7wQyF5HO07XJ9f7dQMY/gPQHhlyDkIzJKC+x2fUCpCcUODUUUFrm7SHA==} + hasBin: true dependencies: jsesc: 0.5.0 + dev: true - require-like@0.1.2: {} + /require-like@0.1.2: + resolution: {integrity: sha512-oyrU88skkMtDdauHDuKVrgR+zuItqr6/c//FXzvmxRGMexSDc6hNvJInGW3LL46n+8b50RykrvwSUIIQH2LQ5A==} + dev: true - resolve-from@4.0.0: {} + /resolve-from@4.0.0: + resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} + engines: {node: '>=4'} + dev: true - resolve-from@5.0.0: {} + /resolve-from@5.0.0: + resolution: {integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==} + engines: {node: '>=8'} + dev: true - resolve-pkg-maps@1.0.0: {} + /resolve-pkg-maps@1.0.0: + resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==} + dev: true - resolve@1.19.0: + /resolve@1.19.0: + resolution: {integrity: sha512-rArEXAgsBG4UgRGcynxWIWKFvh/XZCcS8UJdHhwy91zwAvCZIbcs+vAbflgBnNjYMs/i/i+/Ux6IZhML1yPvxg==} dependencies: is-core-module: 2.16.1 path-parse: 1.0.7 + dev: true - resolve@1.22.10: + /resolve@1.22.10: + resolution: {integrity: sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w==} + engines: {node: '>= 0.4'} + hasBin: true dependencies: is-core-module: 2.16.1 path-parse: 1.0.7 supports-preserve-symlinks-flag: 1.0.0 + dev: true - resolve@2.0.0-next.5: + /resolve@2.0.0-next.5: + resolution: {integrity: sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==} + hasBin: true dependencies: is-core-module: 2.16.1 path-parse: 1.0.7 supports-preserve-symlinks-flag: 1.0.0 + dev: true - reusify@1.0.4: {} + /reusify@1.0.4: + resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} + engines: {iojs: '>=1.0.0', node: '>=0.10.0'} + dev: true - rimraf@3.0.2: + /rimraf@3.0.2: + resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} + deprecated: Rimraf versions prior to v4 are no longer supported + hasBin: true dependencies: glob: 7.2.3 + dev: true - rollup@4.34.8: + /rollup@4.34.8: + resolution: {integrity: sha512-489gTVMzAYdiZHFVA/ig/iYFllCcWFHMvUHI1rpFmkoUtRlQxqh6/yiNqnYibjMZ2b/+FUQwldG+aLsEt6bglQ==} + engines: {node: '>=18.0.0', npm: '>=8.0.0'} + hasBin: true dependencies: '@types/estree': 1.0.6 optionalDependencies: @@ -7781,51 +6517,83 @@ snapshots: '@rollup/rollup-win32-ia32-msvc': 4.34.8 '@rollup/rollup-win32-x64-msvc': 4.34.8 fsevents: 2.3.3 + dev: true - rrweb-cssom@0.8.0: {} + /rrweb-cssom@0.8.0: + resolution: {integrity: sha512-guoltQEx+9aMf2gDZ0s62EcV8lsXR+0w8915TC3ITdn2YueuNjdAYh/levpU9nFaoChh9RUS5ZdQMrKfVEN9tw==} + dev: true - run-parallel@1.2.0: + /run-parallel@1.2.0: + resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} dependencies: queue-microtask: 1.2.3 + dev: true - safe-array-concat@1.1.3: + /safe-array-concat@1.1.3: + resolution: {integrity: sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q==} + engines: {node: '>=0.4'} dependencies: call-bind: 1.0.8 call-bound: 1.0.3 get-intrinsic: 1.2.7 has-symbols: 1.1.0 isarray: 2.0.5 + dev: true - safe-push-apply@1.0.0: + /safe-push-apply@1.0.0: + resolution: {integrity: sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA==} + engines: {node: '>= 0.4'} dependencies: es-errors: 1.3.0 isarray: 2.0.5 + dev: true - safe-regex-test@1.1.0: + /safe-regex-test@1.1.0: + resolution: {integrity: sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==} + engines: {node: '>= 0.4'} dependencies: call-bound: 1.0.3 es-errors: 1.3.0 is-regex: 1.2.1 + dev: true - safer-buffer@2.1.2: {} + /safer-buffer@2.1.2: + resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} - sax@1.4.1: {} + /sax@1.4.1: + resolution: {integrity: sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg==} + dev: false - saxes@6.0.0: + /saxes@6.0.0: + resolution: {integrity: sha512-xAg7SOnEhrm5zI3puOOKyy1OMcMlIJZYNJY7xLBwSze0UjhPLnWfj2GF2EpT0jmzaJKIWKHLsaSSajf35bcYnA==} + engines: {node: '>=v12.22.7'} dependencies: xmlchars: 2.2.0 + dev: true - scheduler@0.23.2: + /scheduler@0.23.2: + resolution: {integrity: sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==} dependencies: loose-envify: 1.4.0 - semver@5.7.2: {} + /semver@5.7.2: + resolution: {integrity: sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==} + hasBin: true + dev: true - semver@6.3.1: {} + /semver@6.3.1: + resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} + hasBin: true + dev: true - semver@7.7.1: {} + /semver@7.7.1: + resolution: {integrity: sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==} + engines: {node: '>=10'} + hasBin: true - set-function-length@1.2.2: + /set-function-length@1.2.2: + resolution: {integrity: sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==} + engines: {node: '>= 0.4'} dependencies: define-data-property: 1.1.4 es-errors: 1.3.0 @@ -7833,21 +6601,31 @@ snapshots: get-intrinsic: 1.2.7 gopd: 1.2.0 has-property-descriptors: 1.0.2 + dev: true - set-function-name@2.0.2: + /set-function-name@2.0.2: + resolution: {integrity: sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==} + engines: {node: '>= 0.4'} dependencies: define-data-property: 1.1.4 es-errors: 1.3.0 functions-have-names: 1.2.3 has-property-descriptors: 1.0.2 + dev: true - set-proto@1.0.0: + /set-proto@1.0.0: + resolution: {integrity: sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==} + engines: {node: '>= 0.4'} dependencies: dunder-proto: 1.0.1 es-errors: 1.3.0 es-object-atoms: 1.1.1 + dev: true - sharp@0.33.5: + /sharp@0.33.5: + resolution: {integrity: sha512-haPVm1EkS9pgvHrQ/F3Xy+hgcuMV0Wm9vfIBSiwZ05k+xgb0PkBQpGsAA/oWdDobNaZTH5ppvHtzCFbnSEwHVw==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + requiresBuild: true dependencies: color: 4.2.3 detect-libc: 2.0.3 @@ -7872,54 +6650,87 @@ snapshots: '@img/sharp-wasm32': 0.33.5 '@img/sharp-win32-ia32': 0.33.5 '@img/sharp-win32-x64': 0.33.5 + dev: false - shebang-command@2.0.0: + /shebang-command@2.0.0: + resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} + engines: {node: '>=8'} dependencies: shebang-regex: 3.0.0 + dev: true - shebang-regex@3.0.0: {} + /shebang-regex@3.0.0: + resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} + engines: {node: '>=8'} + dev: true - side-channel-list@1.0.0: + /side-channel-list@1.0.0: + resolution: {integrity: sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==} + engines: {node: '>= 0.4'} dependencies: es-errors: 1.3.0 object-inspect: 1.13.4 + dev: true - side-channel-map@1.0.1: + /side-channel-map@1.0.1: + resolution: {integrity: sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==} + engines: {node: '>= 0.4'} dependencies: call-bound: 1.0.3 es-errors: 1.3.0 get-intrinsic: 1.2.7 object-inspect: 1.13.4 + dev: true - side-channel-weakmap@1.0.2: + /side-channel-weakmap@1.0.2: + resolution: {integrity: sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==} + engines: {node: '>= 0.4'} dependencies: call-bound: 1.0.3 es-errors: 1.3.0 get-intrinsic: 1.2.7 object-inspect: 1.13.4 side-channel-map: 1.0.1 + dev: true - side-channel@1.1.0: + /side-channel@1.1.0: + resolution: {integrity: sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==} + engines: {node: '>= 0.4'} dependencies: es-errors: 1.3.0 object-inspect: 1.13.4 side-channel-list: 1.0.0 side-channel-map: 1.0.1 side-channel-weakmap: 1.0.2 + dev: true - siginfo@2.0.0: {} + /siginfo@2.0.0: + resolution: {integrity: sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==} + dev: true - signal-exit@4.1.0: {} + /signal-exit@4.1.0: + resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} + engines: {node: '>=14'} + dev: true - simple-swizzle@0.2.2: + /simple-swizzle@0.2.2: + resolution: {integrity: sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==} dependencies: is-arrayish: 0.3.2 + dev: false - slash@3.0.0: {} + /slash@3.0.0: + resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} + engines: {node: '>=8'} + dev: true - sort-object-keys@1.1.3: {} + /sort-object-keys@1.1.3: + resolution: {integrity: sha512-855pvK+VkU7PaKYPc+Jjnmt4EzejQHyhhF33q31qG8x7maDzkeFhAAThdCYay11CISO+qAMwjOBP+fPZe0IPyg==} + dev: true - sort-package-json@2.14.0: + /sort-package-json@2.14.0: + resolution: {integrity: sha512-xBRdmMjFB/KW3l51mP31dhlaiFmqkHLfWTfZAno8prb/wbDxwBPWFpxB16GZbiPbYr3wL41H8Kx22QIDWRe8WQ==} + hasBin: true dependencies: detect-indent: 7.0.1 detect-newline: 4.0.1 @@ -7929,43 +6740,78 @@ snapshots: semver: 7.7.1 sort-object-keys: 1.1.3 tinyglobby: 0.2.12 + dev: true - source-map-js@1.2.1: {} + /source-map-js@1.2.1: + resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==} + engines: {node: '>=0.10.0'} + dev: true - source-map@0.6.1: {} + /source-map@0.6.1: + resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==} + engines: {node: '>=0.10.0'} + dev: true - source-map@0.8.0-beta.0: + /source-map@0.8.0-beta.0: + resolution: {integrity: sha512-2ymg6oRBpebeZi9UUNsgQ89bhx01TcTkmNTGnNO88imTmbSgy4nfujrgVEFKWpMTEGA11EDkTt7mqObTPdigIA==} + engines: {node: '>= 8'} dependencies: whatwg-url: 7.1.0 + dev: true - spawndamnit@3.0.1: + /spawndamnit@3.0.1: + resolution: {integrity: sha512-MmnduQUuHCoFckZoWnXsTg7JaiLBJrKFj9UI2MbRPGaJeVpsLcVBu6P/IGZovziM/YBsellCmsprgNA+w0CzVg==} dependencies: cross-spawn: 7.0.6 signal-exit: 4.1.0 + dev: true - spdx-correct@3.2.0: + /spdx-correct@3.2.0: + resolution: {integrity: sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==} dependencies: spdx-expression-parse: 3.0.1 spdx-license-ids: 3.0.21 + dev: true - spdx-exceptions@2.5.0: {} + /spdx-exceptions@2.5.0: + resolution: {integrity: sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==} + dev: true - spdx-expression-parse@3.0.1: + /spdx-expression-parse@3.0.1: + resolution: {integrity: sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==} dependencies: spdx-exceptions: 2.5.0 spdx-license-ids: 3.0.21 + dev: true - spdx-license-ids@3.0.21: {} + /spdx-license-ids@3.0.21: + resolution: {integrity: sha512-Bvg/8F5XephndSK3JffaRqdT+gyhfqIPwDHpX80tJrF8QQRYMo8sNMeaZ2Dp5+jhwKnUmIOyFFQfHRkjJm5nXg==} + dev: true - sprintf-js@1.0.3: {} + /sprintf-js@1.0.3: + resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==} + dev: true - stable-hash@0.0.4: {} + /stable-hash@0.0.4: + resolution: {integrity: sha512-LjdcbuBeLcdETCrPn9i8AYAZ1eCtu4ECAWtP7UleOiZ9LzVxRzzUZEoZ8zB24nhkQnDWyET0I+3sWokSDS3E7g==} + dev: true - stackback@0.0.2: {} + /stackback@0.0.2: + resolution: {integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==} + dev: true - std-env@3.8.0: {} + /std-env@3.8.0: + resolution: {integrity: sha512-Bc3YwwCB+OzldMxOXJIIvC6cPRWr/LxOp48CdQTOkPyk/t4JWWJbrilwBd7RJzKV8QW7tJkcgAmeuLLJugl5/w==} + dev: true - storybook@8.6.0-alpha.0(prettier@3.5.2): + /storybook@8.6.0-alpha.0(prettier@3.5.2): + resolution: {integrity: sha512-7M1UAEBT59Fh3Pplny+uheacGJZvsrHt/aM9ogthzulhCB8VVbN+b8fz4Kzc+QV3Ni/ohcyUOd+m+LJfP6hriw==} + hasBin: true + peerDependencies: + prettier: ^2 || ^3 + peerDependenciesMeta: + prettier: + optional: true dependencies: '@storybook/core': 8.6.0-alpha.0(prettier@3.5.2) prettier: 3.5.2 @@ -7973,32 +6819,46 @@ snapshots: - bufferutil - supports-color - utf-8-validate + dev: true - stream-parser@0.3.1: + /stream-parser@0.3.1: + resolution: {integrity: sha512-bJ/HgKq41nlKvlhccD5kaCr/P+Hu0wPNKPJOH7en+YrJu/9EgqUF+88w5Jb6KNcjOFMhfX4B2asfeAtIGuHObQ==} dependencies: debug: 2.6.9 transitivePeerDependencies: - supports-color + dev: false - string-width@4.2.3: + /string-width@4.2.3: + resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} + engines: {node: '>=8'} dependencies: emoji-regex: 8.0.0 is-fullwidth-code-point: 3.0.0 strip-ansi: 6.0.1 + dev: true - string-width@5.1.2: + /string-width@5.1.2: + resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==} + engines: {node: '>=12'} dependencies: eastasianwidth: 0.2.0 emoji-regex: 9.2.2 strip-ansi: 7.1.0 + dev: true - string.prototype.includes@2.0.1: + /string.prototype.includes@2.0.1: + resolution: {integrity: sha512-o7+c9bW6zpAdJHTtujeePODAhkuicdAryFsfVKwA+wGw89wJ4GTY484WTucM9hLtDEOpOvI+aHnzqnC5lHp4Rg==} + engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.8 define-properties: 1.2.1 es-abstract: 1.23.9 + dev: true - string.prototype.matchall@4.0.12: + /string.prototype.matchall@4.0.12: + resolution: {integrity: sha512-6CC9uyBL+/48dYizRf7H7VAYCMCNTBeM78x/VTUe9bFEaxBepPJDa1Ow99LqI/1yF7kuy7Q3cQsYMrcjGUcskA==} + engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.8 call-bound: 1.0.3 @@ -8013,13 +6873,18 @@ snapshots: regexp.prototype.flags: 1.5.4 set-function-name: 2.0.2 side-channel: 1.1.0 + dev: true - string.prototype.repeat@1.0.0: + /string.prototype.repeat@1.0.0: + resolution: {integrity: sha512-0u/TldDbKD8bFCQ/4f5+mNRrXwZ8hg2w7ZR8wa16e8z9XpePWl3eGEcUD0OXpEH/VJH/2G3gjUtR3ZOiBe2S/w==} dependencies: define-properties: 1.2.1 es-abstract: 1.23.9 + dev: true - string.prototype.trim@1.2.10: + /string.prototype.trim@1.2.10: + resolution: {integrity: sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA==} + engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.8 call-bound: 1.0.3 @@ -8028,41 +6893,69 @@ snapshots: es-abstract: 1.23.9 es-object-atoms: 1.1.1 has-property-descriptors: 1.0.2 + dev: true - string.prototype.trimend@1.0.9: + /string.prototype.trimend@1.0.9: + resolution: {integrity: sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ==} + engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.8 call-bound: 1.0.3 define-properties: 1.2.1 es-object-atoms: 1.1.1 + dev: true - string.prototype.trimstart@1.0.8: + /string.prototype.trimstart@1.0.8: + resolution: {integrity: sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==} + engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.8 define-properties: 1.2.1 es-object-atoms: 1.1.1 + dev: true - strip-ansi@6.0.1: + /strip-ansi@6.0.1: + resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} + engines: {node: '>=8'} dependencies: ansi-regex: 5.0.1 + dev: true - strip-ansi@7.1.0: + /strip-ansi@7.1.0: + resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==} + engines: {node: '>=12'} dependencies: ansi-regex: 6.1.0 + dev: true - strip-bom@3.0.0: {} + /strip-bom@3.0.0: + resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==} + engines: {node: '>=4'} + dev: true - strip-indent@3.0.0: + /strip-indent@3.0.0: + resolution: {integrity: sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==} + engines: {node: '>=8'} dependencies: min-indent: 1.0.1 + dev: true - strip-indent@4.0.0: + /strip-indent@4.0.0: + resolution: {integrity: sha512-mnVSV2l+Zv6BLpSD/8V87CW/y9EmmbYzGCIavsnsI6/nwn26DwffM/yztm30Z/I2DY9wdS3vXVCMnHDgZaVNoA==} + engines: {node: '>=12'} dependencies: min-indent: 1.0.1 + dev: true - strip-json-comments@3.1.1: {} + /strip-json-comments@3.1.1: + resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} + engines: {node: '>=8'} + dev: true - sucrase@3.35.0: + /sucrase@3.35.0: + resolution: {integrity: sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==} + engines: {node: '>=16 || 14 >=14.17'} + hasBin: true dependencies: '@jridgewell/gen-mapping': 0.3.8 commander: 4.1.1 @@ -8071,117 +6964,227 @@ snapshots: mz: 2.7.0 pirates: 4.0.6 ts-interface-checker: 0.1.13 + dev: true - supports-color@7.2.0: + /supports-color@7.2.0: + resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} + engines: {node: '>=8'} dependencies: has-flag: 4.0.0 + dev: true - supports-preserve-symlinks-flag@1.0.0: {} + /supports-preserve-symlinks-flag@1.0.0: + resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} + engines: {node: '>= 0.4'} + dev: true - symbol-tree@3.2.4: {} + /symbol-tree@3.2.4: + resolution: {integrity: sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==} + dev: true - synckit@0.9.2: + /synckit@0.9.2: + resolution: {integrity: sha512-vrozgXDQwYO72vHjUb/HnFbQx1exDjoKzqx23aXEg2a9VIg2TSFZ8FmeZpTjUCFMYw7mpX4BE2SFu8wI7asYsw==} + engines: {node: ^14.18.0 || >=16.0.0} dependencies: '@pkgr/core': 0.1.1 tslib: 2.8.1 + dev: true - tapable@2.2.1: {} + /tapable@2.2.1: + resolution: {integrity: sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==} + engines: {node: '>=6'} + dev: true - term-size@2.2.1: {} + /term-size@2.2.1: + resolution: {integrity: sha512-wK0Ri4fOGjv/XPy8SBHZChl8CM7uMc5VML7SqiQ0zG7+J5Vr+RMQDoHa2CNT6KHUnTGIXH34UDMkPzAUyapBZg==} + engines: {node: '>=8'} + dev: true - test-exclude@7.0.1: + /test-exclude@7.0.1: + resolution: {integrity: sha512-pFYqmTw68LXVjeWJMST4+borgQP2AyMNbg1BpZh9LbyhUeNkeaPF9gzfPGUAnSMV3qPYdWUwDIjjCLiSDOl7vg==} + engines: {node: '>=18'} dependencies: '@istanbuljs/schema': 0.1.3 glob: 10.4.5 minimatch: 9.0.5 + dev: true - text-table@0.2.0: {} + /text-table@0.2.0: + resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==} + dev: true - thenify-all@1.6.0: + /thenify-all@1.6.0: + resolution: {integrity: sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==} + engines: {node: '>=0.8'} dependencies: thenify: 3.3.1 + dev: true - thenify@3.3.1: + /thenify@3.3.1: + resolution: {integrity: sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==} dependencies: any-promise: 1.3.0 + dev: true - tiny-invariant@1.3.3: {} + /tiny-invariant@1.3.3: + resolution: {integrity: sha512-+FbBPE1o9QAYvviau/qC5SE3caw21q3xkvWKBtja5vgqOWIHHJ3ioaq1VPfn/Szqctz2bU/oYeKd9/z5BL+PVg==} + dev: true - tinybench@2.9.0: {} + /tinybench@2.9.0: + resolution: {integrity: sha512-0+DUvqWMValLmha6lr4kD8iAMK1HzV0/aKnCtWb9v9641TnP/MFb7Pc2bxoxQjTXAErryXVgUOfv2YqNllqGeg==} + dev: true - tinyexec@0.3.2: {} + /tinyexec@0.3.2: + resolution: {integrity: sha512-KQQR9yN7R5+OSwaK0XQoj22pwHoTlgYqmUscPYoknOoWCWfj/5/ABTMRi69FrKU5ffPVh5QcFikpWJI/P1ocHA==} + dev: true - tinyglobby@0.2.12: + /tinyglobby@0.2.12: + resolution: {integrity: sha512-qkf4trmKSIiMTs/E63cxH+ojC2unam7rJ0WrauAzpT3ECNTxGRMlaXxVbfxMUC/w0LaYk6jQ4y/nGR9uBO3tww==} + engines: {node: '>=12.0.0'} dependencies: fdir: 6.4.3(picomatch@4.0.2) picomatch: 4.0.2 + dev: true - tinypool@1.0.2: {} + /tinypool@1.0.2: + resolution: {integrity: sha512-al6n+QEANGFOMf/dmUMsuS5/r9B06uwlyNjZZql/zv8J7ybHCgoihBNORZCY2mzUuAnomQa2JdhyHKzZxPCrFA==} + engines: {node: ^18.0.0 || >=20.0.0} + dev: true - tinyrainbow@1.2.0: {} + /tinyrainbow@1.2.0: + resolution: {integrity: sha512-weEDEq7Z5eTHPDh4xjX789+fHfF+P8boiFB+0vbWzpbnbsEr/GRaohi/uMKxg8RZMXnl1ItAi/IUHWMsjDV7kQ==} + engines: {node: '>=14.0.0'} + dev: true - tinyspy@3.0.2: {} + /tinyspy@3.0.2: + resolution: {integrity: sha512-n1cw8k1k0x4pgA2+9XrOkFydTerNcJ1zWCO5Nn9scWHTD+5tp8dghT2x1uduQePZTZgd3Tupf+x9BxJjeJi77Q==} + engines: {node: '>=14.0.0'} + dev: true - tldts-core@6.1.78: {} + /tldts-core@6.1.78: + resolution: {integrity: sha512-jS0svNsB99jR6AJBmfmEWuKIgz91Haya91Z43PATaeHJ24BkMoNRb/jlaD37VYjb0mYf6gRL/HOnvS1zEnYBiw==} + dev: true - tldts@6.1.78: + /tldts@6.1.78: + resolution: {integrity: sha512-fSgYrW0ITH0SR/CqKMXIruYIPpNu5aDgUp22UhYoSrnUQwc7SBqifEBFNce7AAcygUPBo6a/gbtcguWdmko4RQ==} + hasBin: true dependencies: tldts-core: 6.1.78 + dev: true - tmp@0.0.33: + /tmp@0.0.33: + resolution: {integrity: sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==} + engines: {node: '>=0.6.0'} dependencies: os-tmpdir: 1.0.2 + dev: true - to-regex-range@5.0.1: + /to-regex-range@5.0.1: + resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} + engines: {node: '>=8.0'} dependencies: is-number: 7.0.0 + dev: true - tough-cookie@5.1.1: + /tough-cookie@5.1.1: + resolution: {integrity: sha512-Ek7HndSVkp10hmHP9V4qZO1u+pn1RU5sI0Fw+jCU3lyvuMZcgqsNgc6CmJJZyByK4Vm/qotGRJlfgAX8q+4JiA==} + engines: {node: '>=16'} dependencies: tldts: 6.1.78 + dev: true - tr46@0.0.3: {} + /tr46@0.0.3: + resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==} + dev: false - tr46@1.0.1: + /tr46@1.0.1: + resolution: {integrity: sha512-dTpowEjclQ7Kgx5SdBkqRzVhERQXov8/l9Ft9dVM9fmg0W0KQSVaXX9T4i6twCPNtYiZM53lpSSUAwJbFPOHxA==} dependencies: punycode: 2.3.1 + dev: true - tr46@5.0.0: + /tr46@5.0.0: + resolution: {integrity: sha512-tk2G5R2KRwBd+ZN0zaEXpmzdKyOYksXwywulIX95MBODjSzMIuQnQ3m8JxgbhnL1LeVo7lqQKsYa1O3Htl7K5g==} + engines: {node: '>=18'} dependencies: punycode: 2.3.1 + dev: true - tree-kill@1.2.2: {} + /tree-kill@1.2.2: + resolution: {integrity: sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==} + hasBin: true + dev: true - ts-api-utils@1.4.3(typescript@5.6.3): + /ts-api-utils@1.4.3(typescript@5.6.3): + resolution: {integrity: sha512-i3eMG77UTMD0hZhgRS562pv83RC6ukSAC2GMNWc+9dieh/+jDM5u5YG+NHX6VNDRHQcHwmsTHctP9LhbC3WxVw==} + engines: {node: '>=16'} + peerDependencies: + typescript: '>=4.2.0' dependencies: typescript: 5.6.3 + dev: true - ts-api-utils@2.0.1(typescript@5.6.3): + /ts-api-utils@2.0.1(typescript@5.6.3): + resolution: {integrity: sha512-dnlgjFSVetynI8nzgJ+qF62efpglpWRk8isUEWZGWlJYySCTD6aKvbUDu+zbPeDakk3bg5H4XpitHukgfL1m9w==} + engines: {node: '>=18.12'} + peerDependencies: + typescript: '>=4.8.4' dependencies: typescript: 5.6.3 + dev: true - ts-dedent@2.2.0: {} + /ts-dedent@2.2.0: + resolution: {integrity: sha512-q5W7tVM71e2xjHZTlgfTDoPF/SmqKG5hddq9SzR49CH2hayqRKJtQ4mtRlSxKaJlR/+9rEM+mnBHf7I2/BQcpQ==} + engines: {node: '>=6.10'} + dev: true - ts-interface-checker@0.1.13: {} + /ts-interface-checker@0.1.13: + resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==} + dev: true - tsconfig-paths@3.15.0: + /tsconfig-paths@3.15.0: + resolution: {integrity: sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==} dependencies: '@types/json5': 0.0.29 json5: 1.0.2 minimist: 1.2.8 strip-bom: 3.0.0 + dev: true - tsconfig-paths@4.2.0: + /tsconfig-paths@4.2.0: + resolution: {integrity: sha512-NoZ4roiN7LnbKn9QqE1amc9DJfzvZXxF4xDavcOWt1BPkdx+m+0gJuPM+S0vCe7zTJMYUP0R8pO2XMr+Y8oLIg==} + engines: {node: '>=6'} dependencies: json5: 2.2.3 minimist: 1.2.8 strip-bom: 3.0.0 + dev: true - tslib@1.14.1: {} + /tslib@1.14.1: + resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==} + dev: true - tslib@2.8.1: {} + /tslib@2.8.1: + resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==} - tsup@8.3.6(typescript@5.6.3): + /tsup@8.3.6(typescript@5.6.3): + resolution: {integrity: sha512-XkVtlDV/58S9Ye0JxUUTcrQk4S+EqlOHKzg6Roa62rdjL1nGWNUstG0xgI4vanHdfIpjP448J8vlN0oK6XOJ5g==} + engines: {node: '>=18'} + hasBin: true + peerDependencies: + '@microsoft/api-extractor': ^7.36.0 + '@swc/core': ^1 + postcss: ^8.4.12 + typescript: '>=4.5.0' + peerDependenciesMeta: + '@microsoft/api-extractor': + optional: true + '@swc/core': + optional: true + postcss: + optional: true + typescript: + optional: true dependencies: bundle-require: 5.1.0(esbuild@0.24.2) cac: 6.7.14 @@ -8205,31 +7208,69 @@ snapshots: - supports-color - tsx - yaml + dev: true - tsutils@3.21.0(typescript@5.6.3): + /tsutils@3.21.0(typescript@5.6.3): + resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==} + engines: {node: '>= 6'} + peerDependencies: + typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta' dependencies: tslib: 1.14.1 typescript: 5.6.3 + dev: true - turbo-darwin-64@2.4.2: + /turbo-darwin-64@2.4.2: + resolution: {integrity: sha512-HFfemyWB60CJtEvVQj9yby5rkkWw9fLAdLtAPGtPQoU3tKh8t/uzCAZKso2aPVbib9vGUuGbPGoGpaRXdVhj5g==} + cpu: [x64] + os: [darwin] + requiresBuild: true + dev: true optional: true - turbo-darwin-arm64@2.4.2: + /turbo-darwin-arm64@2.4.2: + resolution: {integrity: sha512-uwSx1dsBSSFeEC0nxyx2O219FEsS/haiESaWwE9JI8mHkQK61s6w6fN2G586krKxyNam4AIxRltleL+O2Em94g==} + cpu: [arm64] + os: [darwin] + requiresBuild: true + dev: true optional: true - turbo-linux-64@2.4.2: + /turbo-linux-64@2.4.2: + resolution: {integrity: sha512-Fy/uL8z/LAYcPbm7a1LwFnTY9pIi5FAi12iuHsgB7zHjdh4eeIKS2NIg4nroAmTcUTUZ0/cVTo4bDOCUcS3aKw==} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: true optional: true - turbo-linux-arm64@2.4.2: + /turbo-linux-arm64@2.4.2: + resolution: {integrity: sha512-AEA0d8h5W/K6iiXfEgiNwWt0yqRL1NpBs8zQCLdc4/L7WeYeJW3sORWX8zt7xhutF/KW9gTm8ehKpiK6cCIsAA==} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: true optional: true - turbo-windows-64@2.4.2: + /turbo-windows-64@2.4.2: + resolution: {integrity: sha512-CybtIZ9wRgnnNFVN9En9G+rxsO+mwU81fvW4RpE8BWyNEkhQ8J28qYf4PaimueMxGHHp/28i/G7Kcdn2GAWG0g==} + cpu: [x64] + os: [win32] + requiresBuild: true + dev: true optional: true - turbo-windows-arm64@2.4.2: + /turbo-windows-arm64@2.4.2: + resolution: {integrity: sha512-7V0yneVPL8Y3TgrkUIjw7Odmwu1tHnyIiPHFM7eFcA7U+H6hPXyCxge7nC3wOKfjhKCQqUm+Vf/k6kjmLz5G4g==} + cpu: [arm64] + os: [win32] + requiresBuild: true + dev: true optional: true - turbo@2.4.2: + /turbo@2.4.2: + resolution: {integrity: sha512-Qxi0ioQCxMRUCcHKHZkTnYH8e7XCpNfg9QiJcyfWIc+ZXeaCjzV5rCGlbQlTXMAtI8qgfP8fZADv3CFtPwqdPQ==} + hasBin: true optionalDependencies: turbo-darwin-64: 2.4.2 turbo-darwin-arm64: 2.4.2 @@ -8237,36 +7278,62 @@ snapshots: turbo-linux-arm64: 2.4.2 turbo-windows-64: 2.4.2 turbo-windows-arm64: 2.4.2 + dev: true - tween-functions@1.2.0: {} + /tween-functions@1.2.0: + resolution: {integrity: sha512-PZBtLYcCLtEcjL14Fzb1gSxPBeL7nWvGhO5ZFPGqziCcr8uvHp0NDmdjBchp6KHL+tExcg0m3NISmKxhU394dA==} + dev: true - type-check@0.4.0: + /type-check@0.4.0: + resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} + engines: {node: '>= 0.8.0'} dependencies: prelude-ls: 1.2.1 + dev: true - type-fest@0.20.2: {} + /type-fest@0.20.2: + resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==} + engines: {node: '>=10'} + dev: true - type-fest@0.6.0: {} + /type-fest@0.6.0: + resolution: {integrity: sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==} + engines: {node: '>=8'} + dev: true - type-fest@0.8.1: {} + /type-fest@0.8.1: + resolution: {integrity: sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==} + engines: {node: '>=8'} + dev: true - type-fest@2.19.0: {} + /type-fest@2.19.0: + resolution: {integrity: sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==} + engines: {node: '>=12.20'} + dev: true - typed-array-buffer@1.0.3: + /typed-array-buffer@1.0.3: + resolution: {integrity: sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==} + engines: {node: '>= 0.4'} dependencies: call-bound: 1.0.3 es-errors: 1.3.0 is-typed-array: 1.1.15 + dev: true - typed-array-byte-length@1.0.3: + /typed-array-byte-length@1.0.3: + resolution: {integrity: sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg==} + engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.8 for-each: 0.3.5 gopd: 1.2.0 has-proto: 1.2.0 is-typed-array: 1.1.15 + dev: true - typed-array-byte-offset@1.0.4: + /typed-array-byte-offset@1.0.4: + resolution: {integrity: sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ==} + engines: {node: '>= 0.4'} dependencies: available-typed-arrays: 1.0.7 call-bind: 1.0.8 @@ -8275,8 +7342,11 @@ snapshots: has-proto: 1.2.0 is-typed-array: 1.1.15 reflect.getprototypeof: 1.0.10 + dev: true - typed-array-length@1.0.7: + /typed-array-length@1.0.7: + resolution: {integrity: sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg==} + engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.8 for-each: 0.3.5 @@ -8284,8 +7354,14 @@ snapshots: is-typed-array: 1.1.15 possible-typed-array-names: 1.1.0 reflect.getprototypeof: 1.0.10 + dev: true - typescript-eslint@8.24.1(eslint@9.21.0)(typescript@5.6.3): + /typescript-eslint@8.24.1(eslint@9.21.0)(typescript@5.6.3): + resolution: {integrity: sha512-cw3rEdzDqBs70TIcb0Gdzbt6h11BSs2pS0yaq7hDWDBtCCSei1pPSUXE9qUdQ/Wm9NgFg8mKtMt1b8fTHIl1jA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 + typescript: '>=4.8.4 <5.8.0' dependencies: '@typescript-eslint/eslint-plugin': 8.24.1(@typescript-eslint/parser@8.24.1)(eslint@9.21.0)(typescript@5.6.3) '@typescript-eslint/parser': 8.24.1(eslint@9.21.0)(typescript@5.6.3) @@ -8294,55 +7370,97 @@ snapshots: typescript: 5.6.3 transitivePeerDependencies: - supports-color + dev: true - typescript@5.6.3: {} + /typescript@5.6.3: + resolution: {integrity: sha512-hjcS1mhfuyi4WW8IWtjP7brDrG2cuDZukyrYrSauoXGNgx0S7zceP07adYkJycEr56BOUTNPzbInooiN3fn1qw==} + engines: {node: '>=14.17'} + hasBin: true + dev: true - ufo@1.5.4: {} + /ufo@1.5.4: + resolution: {integrity: sha512-UsUk3byDzKd04EyoZ7U4DOlxQaD14JUKQl6/P7wiX4FNvUfm3XL246n9W5AmqwW5RSFJ27NAuM0iLscAOYUiGQ==} + dev: true - unbox-primitive@1.1.0: + /unbox-primitive@1.1.0: + resolution: {integrity: sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==} + engines: {node: '>= 0.4'} dependencies: call-bound: 1.0.3 has-bigints: 1.1.0 has-symbols: 1.1.0 which-boxed-primitive: 1.1.1 + dev: true + + /undici-types@6.20.0: + resolution: {integrity: sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg==} - undici-types@6.20.0: {} + /undici@6.21.2: + resolution: {integrity: sha512-uROZWze0R0itiAKVPsYhFov9LxrPMHLMEQFszeI2gCN6bnIIZ8twzBCJcN2LJrBBLfrP0t1FW0g+JmKVl8Vk1g==} + engines: {node: '>=18.17'} + dev: false - universalify@0.1.2: {} + /universalify@0.1.2: + resolution: {integrity: sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==} + engines: {node: '>= 4.0.0'} + dev: true - universalify@2.0.1: {} + /universalify@2.0.1: + resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==} + engines: {node: '>= 10.0.0'} + dev: true - unplugin@1.16.1: + /unplugin@1.16.1: + resolution: {integrity: sha512-4/u/j4FrCKdi17jaxuJA0jClGxB1AvU2hw/IuayPc4ay1XGaJs/rbb4v5WKwAjNifjmXK9PIFyuPiaK8azyR9w==} + engines: {node: '>=14.0.0'} dependencies: acorn: 8.14.0 webpack-virtual-modules: 0.6.2 + dev: true - update-browserslist-db@1.1.2(browserslist@4.24.4): + /update-browserslist-db@1.1.2(browserslist@4.24.4): + resolution: {integrity: sha512-PPypAm5qvlD7XMZC3BujecnaOxwhrtoFR+Dqkk5Aa/6DssiH0ibKoketaj9w8LP7Bont1rYeoV5plxD7RTEPRg==} + hasBin: true + peerDependencies: + browserslist: '>= 4.21.0' dependencies: browserslist: 4.24.4 escalade: 3.2.0 picocolors: 1.1.1 + dev: true - uri-js@4.4.1: + /uri-js@4.4.1: + resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} dependencies: punycode: 2.3.1 + dev: true - util@0.12.5: + /util@0.12.5: + resolution: {integrity: sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA==} dependencies: inherits: 2.0.4 is-arguments: 1.2.0 is-generator-function: 1.1.0 is-typed-array: 1.1.15 which-typed-array: 1.1.18 + dev: true - uuid@9.0.1: {} + /uuid@9.0.1: + resolution: {integrity: sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==} + hasBin: true + dev: true - validate-npm-package-license@3.0.4: + /validate-npm-package-license@3.0.4: + resolution: {integrity: sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==} dependencies: spdx-correct: 3.2.0 spdx-expression-parse: 3.0.1 + dev: true - vite-node@2.1.2: + /vite-node@2.1.2: + resolution: {integrity: sha512-HPcGNN5g/7I2OtPjLqgOtCRu/qhVvBxTUD3qzitmL0SrG1cWFzxzhMDWussxSbrRYWqnKf8P2jiNhPMSN+ymsQ==} + engines: {node: ^18.0.0 || >=20.0.0} + hasBin: true dependencies: cac: 6.7.14 debug: 4.4.0 @@ -8358,8 +7476,12 @@ snapshots: - sugarss - supports-color - terser + dev: true - vite-node@3.0.6: + /vite-node@3.0.6: + resolution: {integrity: sha512-s51RzrTkXKJrhNbUzQRsarjmAae7VmMPAsRT7lppVpIg6mK3zGthP9Hgz0YQQKuNcF+Ii7DfYk3Fxz40jRmePw==} + engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0} + hasBin: true dependencies: cac: 6.7.14 debug: 4.4.0 @@ -8379,24 +7501,117 @@ snapshots: - terser - tsx - yaml + dev: true - vite@5.4.14: + /vite@5.4.14: + resolution: {integrity: sha512-EK5cY7Q1D8JNhSaPKVK4pwBFvaTmZxEnoKXLG/U9gmdDcihQGNzFlgIvaxezFR4glP1LsuiedwMBqCXH3wZccA==} + engines: {node: ^18.0.0 || >=20.0.0} + hasBin: true + peerDependencies: + '@types/node': ^18.0.0 || >=20.0.0 + less: '*' + lightningcss: ^1.21.0 + sass: '*' + sass-embedded: '*' + stylus: '*' + sugarss: '*' + terser: ^5.4.0 + peerDependenciesMeta: + '@types/node': + optional: true + less: + optional: true + lightningcss: + optional: true + sass: + optional: true + sass-embedded: + optional: true + stylus: + optional: true + sugarss: + optional: true + terser: + optional: true dependencies: esbuild: 0.21.5 postcss: 8.5.3 rollup: 4.34.8 optionalDependencies: fsevents: 2.3.3 + dev: true - vite@6.1.1: + /vite@6.1.1: + resolution: {integrity: sha512-4GgM54XrwRfrOp297aIYspIti66k56v16ZnqHvrIM7mG+HjDlAwS7p+Srr7J6fGvEdOJ5JcQ/D9T7HhtdXDTzA==} + engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0} + hasBin: true + peerDependencies: + '@types/node': ^18.0.0 || ^20.0.0 || >=22.0.0 + jiti: '>=1.21.0' + less: '*' + lightningcss: ^1.21.0 + sass: '*' + sass-embedded: '*' + stylus: '*' + sugarss: '*' + terser: ^5.16.0 + tsx: ^4.8.1 + yaml: ^2.4.2 + peerDependenciesMeta: + '@types/node': + optional: true + jiti: + optional: true + less: + optional: true + lightningcss: + optional: true + sass: + optional: true + sass-embedded: + optional: true + stylus: + optional: true + sugarss: + optional: true + terser: + optional: true + tsx: + optional: true + yaml: + optional: true dependencies: esbuild: 0.24.2 postcss: 8.5.3 rollup: 4.34.8 optionalDependencies: fsevents: 2.3.3 + dev: true - vitest@2.1.2(jsdom@26.0.0): + /vitest@2.1.2(jsdom@26.0.0): + resolution: {integrity: sha512-veNjLizOMkRrJ6xxb+pvxN6/QAWg95mzcRjtmkepXdN87FNfxAss9RKe2far/G9cQpipfgP2taqg0KiWsquj8A==} + engines: {node: ^18.0.0 || >=20.0.0} + hasBin: true + peerDependencies: + '@edge-runtime/vm': '*' + '@types/node': ^18.0.0 || >=20.0.0 + '@vitest/browser': 2.1.2 + '@vitest/ui': 2.1.2 + happy-dom: '*' + jsdom: '*' + peerDependenciesMeta: + '@edge-runtime/vm': + optional: true + '@types/node': + optional: true + '@vitest/browser': + optional: true + '@vitest/ui': + optional: true + happy-dom: + optional: true + jsdom: + optional: true dependencies: '@vitest/expect': 2.1.2 '@vitest/mocker': 2.1.2(@vitest/spy@2.1.2)(vite@5.4.14) @@ -8428,50 +7643,79 @@ snapshots: - sugarss - supports-color - terser + dev: true - w3c-xmlserializer@5.0.0: + /w3c-xmlserializer@5.0.0: + resolution: {integrity: sha512-o8qghlI8NZHU1lLPrpi2+Uq7abh4GGPpYANlalzWxyWteJOCsr/P+oPBA49TOLu5FTZO4d3F9MnWJfiMo4BkmA==} + engines: {node: '>=18'} dependencies: xml-name-validator: 5.0.0 + dev: true - webidl-conversions@3.0.1: {} + /webidl-conversions@3.0.1: + resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==} + dev: false - webidl-conversions@4.0.2: {} + /webidl-conversions@4.0.2: + resolution: {integrity: sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==} + dev: true - webidl-conversions@7.0.0: {} + /webidl-conversions@7.0.0: + resolution: {integrity: sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==} + engines: {node: '>=12'} + dev: true - webpack-virtual-modules@0.6.2: {} + /webpack-virtual-modules@0.6.2: + resolution: {integrity: sha512-66/V2i5hQanC51vBQKPH4aI8NMAcBW59FVBs+rC7eGHupMyfn34q7rZIE+ETlJ+XTevqfUhVVBgSUNSW2flEUQ==} + dev: true - whatwg-encoding@3.1.1: + /whatwg-encoding@3.1.1: + resolution: {integrity: sha512-6qN4hJdMwfYBtE3YBTTHhoeuUrDBPZmbQaxWAqSALV/MeEnR5z1xd8UKud2RAkFoPkmB+hli1TZSnyi84xz1vQ==} + engines: {node: '>=18'} dependencies: iconv-lite: 0.6.3 - whatwg-mimetype@4.0.0: {} + /whatwg-mimetype@4.0.0: + resolution: {integrity: sha512-QaKxh0eNIi2mE9p2vEdzfagOKHCcj1pJ56EEHGQOVxp8r9/iszLUUV7v89x9O1p/T+NlTM5W7jW6+cz4Fq1YVg==} + engines: {node: '>=18'} - whatwg-url@14.1.1: + /whatwg-url@14.1.1: + resolution: {integrity: sha512-mDGf9diDad/giZ/Sm9Xi2YcyzaFpbdLpJPr+E9fSkyQ7KpQD4SdFcugkRQYzhmfI4KeV4Qpnn2sKPdo+kmsgRQ==} + engines: {node: '>=18'} dependencies: tr46: 5.0.0 webidl-conversions: 7.0.0 + dev: true - whatwg-url@5.0.0: + /whatwg-url@5.0.0: + resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==} dependencies: tr46: 0.0.3 webidl-conversions: 3.0.1 + dev: false - whatwg-url@7.1.0: + /whatwg-url@7.1.0: + resolution: {integrity: sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==} dependencies: lodash.sortby: 4.7.0 tr46: 1.0.1 webidl-conversions: 4.0.2 + dev: true - which-boxed-primitive@1.1.1: + /which-boxed-primitive@1.1.1: + resolution: {integrity: sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==} + engines: {node: '>= 0.4'} dependencies: is-bigint: 1.1.0 is-boolean-object: 1.2.2 is-number-object: 1.1.1 is-string: 1.1.1 is-symbol: 1.1.1 + dev: true - which-builtin-type@1.2.1: + /which-builtin-type@1.2.1: + resolution: {integrity: sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==} + engines: {node: '>= 0.4'} dependencies: call-bound: 1.0.3 function.prototype.name: 1.1.8 @@ -8486,15 +7730,21 @@ snapshots: which-boxed-primitive: 1.1.1 which-collection: 1.0.2 which-typed-array: 1.1.18 + dev: true - which-collection@1.0.2: + /which-collection@1.0.2: + resolution: {integrity: sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==} + engines: {node: '>= 0.4'} dependencies: is-map: 2.0.3 is-set: 2.0.3 is-weakmap: 2.0.2 is-weakset: 2.0.4 + dev: true - which-typed-array@1.1.18: + /which-typed-array@1.1.18: + resolution: {integrity: sha512-qEcY+KJYlWyLH9vNbsr6/5j59AXk5ni5aakf8ldzBvGde6Iz4sxZGkJyWSAueTG7QhOvNRYb1lDdFmL5Td0QKA==} + engines: {node: '>= 0.4'} dependencies: available-typed-arrays: 1.0.7 call-bind: 1.0.8 @@ -8502,38 +7752,79 @@ snapshots: for-each: 0.3.5 gopd: 1.2.0 has-tostringtag: 1.0.2 + dev: true - which@2.0.2: + /which@2.0.2: + resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} + engines: {node: '>= 8'} + hasBin: true dependencies: isexe: 2.0.0 + dev: true - why-is-node-running@2.3.0: + /why-is-node-running@2.3.0: + resolution: {integrity: sha512-hUrmaWBdVDcxvYqnyh09zunKzROWjbZTiNy8dBEjkS7ehEDQibXJ7XvlmtbwuTclUiIyN+CyXQD4Vmko8fNm8w==} + engines: {node: '>=8'} + hasBin: true dependencies: siginfo: 2.0.0 stackback: 0.0.2 + dev: true - word-wrap@1.2.5: {} + /word-wrap@1.2.5: + resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==} + engines: {node: '>=0.10.0'} + dev: true - wrap-ansi@7.0.0: + /wrap-ansi@7.0.0: + resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} + engines: {node: '>=10'} dependencies: ansi-styles: 4.3.0 string-width: 4.2.3 strip-ansi: 6.0.1 + dev: true - wrap-ansi@8.1.0: + /wrap-ansi@8.1.0: + resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==} + engines: {node: '>=12'} dependencies: ansi-styles: 6.2.1 string-width: 5.1.2 strip-ansi: 7.1.0 + dev: true - wrappy@1.0.2: {} + /wrappy@1.0.2: + resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} + dev: true - ws@8.18.1: {} + /ws@8.18.1: + resolution: {integrity: sha512-RKW2aJZMXeMxVpnZ6bck+RswznaxmzdULiBr6KY7XkTnW8uvt0iT9H5DkHUChXrc+uurzwa0rVI16n/Xzjdz1w==} + engines: {node: '>=10.0.0'} + peerDependencies: + bufferutil: ^4.0.1 + utf-8-validate: '>=5.0.2' + peerDependenciesMeta: + bufferutil: + optional: true + utf-8-validate: + optional: true + dev: true - xml-name-validator@5.0.0: {} + /xml-name-validator@5.0.0: + resolution: {integrity: sha512-EvGK8EJ3DhaHfbRlETOWAS5pO9MZITeauHKJyb8wyajUfQUenkIg2MvLDTZ4T/TgIcm3HU0TFBgWWboAZ30UHg==} + engines: {node: '>=18'} + dev: true - xmlchars@2.2.0: {} + /xmlchars@2.2.0: + resolution: {integrity: sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==} + dev: true - yallist@3.1.1: {} + /yallist@3.1.1: + resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} + dev: true - yocto-queue@0.1.0: {} + /yocto-queue@0.1.0: + resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} + engines: {node: '>=10'} + dev: true From e19f5230d59a39c2a69711e3b77cba1b450f0dd7 Mon Sep 17 00:00:00 2001 From: jinsoo Date: Mon, 14 Apr 2025 23:17:11 +0900 Subject: [PATCH 4/4] chore: changeset --- .changeset/angry-crews-relate.md | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 .changeset/angry-crews-relate.md diff --git a/.changeset/angry-crews-relate.md b/.changeset/angry-crews-relate.md new file mode 100644 index 0000000..d57dbcd --- /dev/null +++ b/.changeset/angry-crews-relate.md @@ -0,0 +1,6 @@ +--- +"notion-to-utils": patch +"notion-to-jsx": patch +--- + +fix: 뒤로가기 후 재 진입 시 Image 안나오는 현상 FIX