diff --git a/.github/workflows/deploy-docsite.yml b/.github/workflows/deploy-docsite.yml
index b4539f32f8..68857f62f1 100644
--- a/.github/workflows/deploy-docsite.yml
+++ b/.github/workflows/deploy-docsite.yml
@@ -1,6 +1,6 @@
-name: Docsite and Storybook CI/CD
+name: Docsite CI/CD
-run-name: ${{ github.event_name == 'push' && github.ref == 'refs/heads/main' && 'Build and Deploy' || 'Test Build' }} Docsite and Storybook
+run-name: ${{ github.event_name == 'push' && github.ref == 'refs/heads/main' && 'Build and Deploy' || 'Test Build' }} Docsite
env:
NODE_VERSION: 22
@@ -10,7 +10,7 @@ on:
branches:
- main
workflow_dispatch:
- # Also run any time a PR is opened targeting the docs or storybook resources
+ # Also run any time a PR is opened targeting the docs
pull_request:
branches:
- main
@@ -21,9 +21,6 @@ on:
- ready_for_review
paths:
- "docs/**"
- - "storybook/**"
- - "**/*.story.*"
- - "**/*.stories.*"
- ".github/workflows/deploy-docsite.yml"
- "Taskfile.yml"
diff --git a/.storybook/custom-addons/theme/register.ts b/.storybook/custom-addons/theme/register.ts
deleted file mode 100644
index c13a69b655..0000000000
--- a/.storybook/custom-addons/theme/register.ts
+++ /dev/null
@@ -1,18 +0,0 @@
-import { FORCE_RE_RENDER } from "@storybook/core-events";
-import { addons } from "@storybook/manager-api";
-import { UPDATE_DARK_MODE_EVENT_NAME } from "storybook-dark-mode";
-import { dark, light } from "../../theme";
-
-addons.register("theme-switcher", (api) => {
- const query = window.matchMedia("(prefers-color-scheme: dark)");
- const channel = addons.getChannel();
- const update = () => {
- const theme = query.matches ? dark : light;
- api.setOptions({ theme });
- channel.emit(FORCE_RE_RENDER);
- channel.emit(UPDATE_DARK_MODE_EVENT_NAME);
- };
-
- channel.on("storiesConfigured", update);
- query.addEventListener("change", update);
-});
diff --git a/.storybook/global.css b/.storybook/global.css
deleted file mode 100644
index 73464846c8..0000000000
--- a/.storybook/global.css
+++ /dev/null
@@ -1,20 +0,0 @@
-body {
- height: 100vh;
- padding: 0;
- overflow: auto;
-}
-
-#storybook-root {
- height: 100%;
-}
-
-.grid-item {
- background-color: aquamarine;
- border: 1px black solid;
-
- &.react-grid-placeholder {
- background-color: orange;
- }
-}
-
-@import "../frontend/tailwindsetup.css";
diff --git a/.storybook/main.ts b/.storybook/main.ts
deleted file mode 100644
index 75d3220ede..0000000000
--- a/.storybook/main.ts
+++ /dev/null
@@ -1,83 +0,0 @@
-import type { StorybookConfig } from "@storybook/react-vite";
-import type { ElectronViteConfig } from "electron-vite";
-import type { UserConfig } from "vite";
-
-const config: StorybookConfig = {
- stories: ["../frontend/**/*.mdx", "../frontend/**/*.stories.@(js|jsx|mjs|ts|tsx)"],
-
- addons: [
- "@storybook/addon-links",
- "@storybook/addon-essentials",
- "@chromatic-com/storybook",
- "@storybook/addon-interactions",
- "storybook-dark-mode",
- "./custom-addons/theme/register",
- ],
-
- core: { builder: "@storybook/builder-vite" },
-
- framework: {
- name: "@storybook/react-vite",
- options: {},
- },
-
- docs: {},
-
- typescript: {
- reactDocgen: "react-docgen-typescript",
- },
-
- async viteFinal(config) {
- const { mergeConfig } = await import("vite");
- const { tsImport } = await import("tsx/esm/api");
- const electronViteConfig = (await tsImport("../electron.vite.config.ts", import.meta.url))
- .default as ElectronViteConfig;
- const mergedConfig = mergeConfig(config, electronViteConfig.renderer as UserConfig);
- mergedConfig.build.outDir = "storybook-static";
- return mergedConfig;
- },
-
- staticDirs: [
- { from: "../assets", to: "/assets" },
- { from: "../public/fontawesome", to: "/fontawesome" },
- ],
- managerHead: (head) => `
- ${head}
-
-
- `,
- previewHead: (head) => `
- ${head}
-
-
-
-
-
-
- `,
-};
-export default config;
diff --git a/.storybook/preview.tsx b/.storybook/preview.tsx
deleted file mode 100644
index ba86add9f5..0000000000
--- a/.storybook/preview.tsx
+++ /dev/null
@@ -1,60 +0,0 @@
-// organize-imports-ignore
-import type { Preview } from "@storybook/react";
-import React from "react";
-import { DndProvider } from "react-dnd";
-import { HTML5Backend } from "react-dnd-html5-backend";
-import "../frontend/app/theme.scss";
-import "../frontend/app/app.scss";
-import "../frontend/app/reset.scss";
-import "./global.css";
-import { light, dark } from "./theme";
-import { DocsContainer } from "@storybook/addon-docs";
-import { addons } from "@storybook/preview-api";
-import { DARK_MODE_EVENT_NAME } from "storybook-dark-mode";
-
-const channel = addons.getChannel();
-
-const preview: Preview = {
- parameters: {
- controls: {
- matchers: {
- color: /(background|color)$/i,
- date: /Date$/i,
- },
- },
- darkMode: {
- dark,
- light,
- stylePreview: true,
- classTarget: "html",
- },
- docs: {
- container: (props) => {
- const [isDark, setDark] = React.useState();
-
- React.useEffect(() => {
- channel.on(DARK_MODE_EVENT_NAME, setDark);
- return () => channel.removeListener(DARK_MODE_EVENT_NAME, setDark);
- }, [channel, setDark]);
-
- return (
-
-
-
- );
- },
- },
- },
-
- decorators: [
- (Story) => (
-
-
-
- ),
- ],
-
- tags: ["autodocs"],
-};
-
-export default preview;
diff --git a/.storybook/theme.ts b/.storybook/theme.ts
deleted file mode 100644
index aa4f4b4cab..0000000000
--- a/.storybook/theme.ts
+++ /dev/null
@@ -1,17 +0,0 @@
-import { create } from "@storybook/theming";
-
-export const light = create({
- base: "light",
- brandTitle: "Wave Terminal Storybook",
- brandUrl: "https://docs.waveterm.dev/storybook/",
- brandImage: "./assets/wave-light.png",
- brandTarget: "_self",
-});
-
-export const dark = create({
- base: "dark",
- brandTitle: "Wave Terminal Storybook",
- brandUrl: "https://docs.waveterm.dev/storybook/",
- brandImage: "./assets/wave-dark.png",
- brandTarget: "_self",
-});
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index a5cf38e726..346c778302 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -39,12 +39,6 @@ We have a set of recommended Visual Studio Code extensions to enforce our style
To build and run Wave locally, see instructions at [Building Wave Terminal](./BUILD.md).
-### UI Component Library
-
-We are working to document all our UI components in [Storybook](https://storybook.js.org/docs) for easy reference and testing. If you would like to help us with this, we would be very grateful!
-
-Our Storybook site is hosted [docs.waveterm.dev/storybook](https://docs.waveterm.dev/storybook).
-
### Create a Pull Request
Guidelines:
@@ -62,8 +56,6 @@ The project is broken into four main components: frontend, emain, wavesrv, and w
Our frontend can be found in the [`/frontend`](./frontend/) directory. It is written in React Typescript. The main entrypoint is [`wave.ts`](./frontend/wave.ts) and the root for the React VDOM is [`app.tsx`](./frontend/app/app.tsx). If you are using `task dev` to run your dev instance of the app, the frontend will be loaded using Vite, which allows for Hot Module Reloading. This should work for most styling and simple component changes, but anything that affects the state of the app (the Jotai or layout code, for instance) may put the frontend into a bad state. If this happens, you can force reload the frontend using `Cmd:Shift:R` or `Ctrl:Shift:R`.
-We also have a Storybook project configured for testing our component library. We're still working to fill out the test cases for this, but it is useful for testing components in isolation. You can run this using `task storybook`.
-
### emain
emain can be found at [`/emain`](./emain/). It is the main NodeJS process and is first thing that is run when you start up the app and it forks off the process for the wavesrv backend and manages all the Electron interfaces, such as window and view management, context menus, and native UI calls. Its main entrypoint is [`emain.ts`](./emain/emain.ts). This process does not hot-reload, you will need to manually kill the dev instance and rerun it to apply changes.
diff --git a/README.md b/README.md
index 8d3c8f09c1..ad49c7c2b2 100644
--- a/README.md
+++ b/README.md
@@ -80,7 +80,6 @@ Find more information in our [Contributions Guide](CONTRIBUTING.md), which inclu
- [Ways to contribute](CONTRIBUTING.md#contributing-to-wave-terminal)
- [Contribution guidelines](CONTRIBUTING.md#before-you-start)
-- [Storybook](https://docs.waveterm.dev/storybook)
## License
diff --git a/Taskfile.yml b/Taskfile.yml
index 1874a2cbc2..a5f73417d7 100644
--- a/Taskfile.yml
+++ b/Taskfile.yml
@@ -54,20 +54,6 @@ tasks:
WCLOUD_ENDPOINT: "https://api-dev.waveterm.dev/central"
WCLOUD_WS_ENDPOINT: "wss://wsapi-dev.waveterm.dev/"
- storybook:
- desc: Start the Storybook server.
- cmd: npm run storybook
- deps:
- - npm:install
-
- storybook:build:
- desc: Build the Storybook static site.
- cmd: npm run build-storybook
- generates:
- - storybook-static/**/*
- deps:
- - npm:install
-
docs:npm:install:
desc: Runs `npm install` in docs directory
internal: true
@@ -93,7 +79,6 @@ tasks:
desc: Build the full docsite.
cmds:
- cd docs && npm run build
- - task: copyfiles:'storybook-static':'docs/build/storybook'
env:
USE_SIMPLE_CSS_MINIFIER: "true"
sources:
@@ -101,12 +86,10 @@ tasks:
- "docs/src/**/*"
- "docs/docs/**/*"
- "docs/static/**/*"
- - storybook-static/**/*
generates:
- "docs/build/**/*"
deps:
- docs:npm:install
- - storybook:build
package:
desc: Package the application for the current platform.
diff --git a/docs/README.md b/docs/README.md
index 6aebc0e886..f118e41d1f 100644
--- a/docs/README.md
+++ b/docs/README.md
@@ -17,11 +17,11 @@ This command starts a local development server and opens up a browser window. Mo
### Build
```sh
-task docsite:build:
+task docsite:build:public
```
This command generates static content into the `build` directory and can be served using any static contents hosting service.
### Deployment
-Deployments are handled automatically by the [Docsite and Storybook CI/CD workflow](../.github/workflows/deploy-docsite.yml)
+Deployments are handled automatically by the [Docsite CI/CD workflow](../.github/workflows/deploy-docsite.yml)
diff --git a/frontend/app/element/button.stories.tsx b/frontend/app/element/button.stories.tsx
deleted file mode 100644
index 9dcce99663..0000000000
--- a/frontend/app/element/button.stories.tsx
+++ /dev/null
@@ -1,121 +0,0 @@
-// Copyright 2025, Command Line Inc.
-// SPDX-License-Identifier: Apache-2.0
-
-import type { Meta, StoryObj } from "@storybook/react";
-import { fn } from "@storybook/test";
-import { Button } from "./button";
-
-const meta = {
- title: "Elements/Button",
- component: Button,
- args: {
- children: "Click Me",
- disabled: false,
- className: "",
- onClick: fn(),
- },
- argTypes: {
- onClick: {
- action: "clicked",
- description: "Click event handler",
- },
- children: {
- description: "Content inside the button",
- },
- disabled: {
- description: "Disables the button if true",
- },
- className: {
- description: "Additional class names to style the button",
- },
- },
-} satisfies Meta;
-
-export default meta;
-type Story = StoryObj;
-
-export const Default: Story = {};
-
-export const Disabled: Story = {
- args: {
- disabled: true,
- children: "Disabled Button",
- },
-};
-
-export const GreySolid: Story = {
- args: {
- className: "solid grey",
- children: "Grey Solid Button",
- },
-};
-
-export const RedSolid: Story = {
- args: {
- className: "solid red",
- children: "Red Solid Button",
- },
-};
-
-export const YellowSolid: Story = {
- args: {
- className: "solid yellow",
- children: "Yellow Solid Button",
- },
-};
-
-export const GreenOutlined: Story = {
- args: {
- className: "outlined green",
- children: "Green Outline Button",
- },
-};
-
-export const GreyOutlined: Story = {
- args: {
- className: "outlined grey",
- children: "Grey Outline Button",
- },
-};
-
-export const RedOutlined: Story = {
- args: {
- className: "outlined red",
- children: "Red Outline Button",
- },
-};
-
-export const YellowOutlined: Story = {
- args: {
- className: "outlined yellow",
- children: "Yellow Outline Button",
- },
-};
-
-export const GreenGhostText: Story = {
- args: {
- className: "ghost green",
- children: "Yellow Ghost Text Button",
- },
-};
-
-export const GreyGhostText: Story = {
- args: {
- className: "ghost grey",
- children: "Grey Ghost Text Button",
- },
-};
-
-export const RedGhost: Story = {
- args: {
- className: "ghost red",
- children: "Red Ghost Text Button",
- },
-};
-
-export const YellowGhostText: Story = {
- args: {
- className: "ghost yellow",
- children: "Yellow Ghost Text Button",
- },
-};
diff --git a/frontend/app/element/emojipalette.stories.tsx b/frontend/app/element/emojipalette.stories.tsx
deleted file mode 100644
index 3d5fe5c928..0000000000
--- a/frontend/app/element/emojipalette.stories.tsx
+++ /dev/null
@@ -1,34 +0,0 @@
-// Copyright 2025, Command Line Inc.
-// SPDX-License-Identifier: Apache-2.0
-
-import type { Meta, StoryObj } from "@storybook/react";
-import { EmojiPalette } from "./emojipalette";
-
-const meta: Meta = {
- title: "Elements/EmojiPalette",
- component: EmojiPalette,
- args: {
- className: "custom-emoji-palette-class",
- },
- argTypes: {
- className: {
- description: "Custom class for emoji palette styling",
- },
- },
-};
-
-export default meta;
-type Story = StoryObj;
-
-export const DefaultEmojiPalette: Story = {
- render: (args) => {
- return (
-
-
-
- );
- },
- args: {
- className: "custom-emoji-palette-class",
- },
-};
diff --git a/frontend/app/element/expandablemenu.stories.tsx b/frontend/app/element/expandablemenu.stories.tsx
deleted file mode 100644
index 2647067387..0000000000
--- a/frontend/app/element/expandablemenu.stories.tsx
+++ /dev/null
@@ -1,391 +0,0 @@
-// Copyright 2025, Command Line Inc.
-// SPDX-License-Identifier: Apache-2.0
-
-import { Meta, StoryObj } from "@storybook/react";
-import {
- ExpandableMenu,
- ExpandableMenuItem,
- ExpandableMenuItemGroup,
- ExpandableMenuItemGroupTitle,
- ExpandableMenuItemLeftElement,
- ExpandableMenuItemRightElement,
- type ExpandableMenuItemData,
-} from "./expandablemenu";
-
-const meta: Meta = {
- title: "Elements/ExpandableMenu",
- component: ExpandableMenu,
- tags: ["autodocs"],
-};
-
-export default meta;
-
-type Story = StoryObj;
-
-export const Default: Story = {
- render: () => (
-
-
- 🏠
- Dashboard
- Ctrl + D
-
-
- Settings
-
- 👤
- Profile
-
-
- 🔒
- Account
-
-
-
- More
-
- Submenu
-
- 📄
- Item 1
-
-
- 📄
- Item 2
-
-
-
-
- ),
-};
-
-export const NestedExpandableMenu: Story = {
- render: () => (
-
-
- 🏠
- Home
-
-
-
- 📁
- Categories
- {">"}
-
-
-
- 📱
- Electronics
-
-
-
- 📱
- Mobile Phones
-
-
-
- 🤖
- Android Phones
-
-
-
- 🔝
- High-End
-
-
- 📱
- Samsung Galaxy S Series
- Ctrl + 1
-
-
- 📱
- Google Pixel
- Ctrl + 2
-
-
-
- Budget
- Redmi Note Series
- Realme
-
-
-
- iPhones
- iPhone 14
- iPhone SE
-
-
-
- Laptops
- Gaming Laptops
- Ultrabooks
-
-
-
- Appliances
-
- Kitchen Appliances
- Microwaves
- Ovens
-
-
- Large Appliances
- Refrigerators
- Washing Machines
-
-
- Palette
-
- test
-
-
-
-
-
- ),
-};
-
-const menuData: ExpandableMenuItemData[] = [
- {
- type: "item",
- leftElement: "🏠",
- content: "Home",
- id: "16830f20-b3b9-42bb-8cc9-db6f409651d8",
- },
- {
- type: "group",
- title: {
- leftElement: "📁",
- label: "Categories",
- rightElement: ,
- },
- isOpen: true,
- id: "4564f119-645e-448c-80b7-2f40f887e670",
- children: [
- {
- type: "group",
- title: {
- leftElement: "📱",
- label: "Electronics",
- rightElement: ,
- },
- id: "596e76eb-d87d-425e-9f6e-1519069ee447",
- children: [
- {
- type: "group",
- title: {
- leftElement: "📱",
- label: "Mobile Phones",
- rightElement: ,
- },
- id: "0dbb9dff-dad3-4a5a-a6b1-53fea2d811c6",
- children: [
- {
- type: "group",
- title: {
- leftElement: "🤖",
- label: "Android Phones",
- rightElement: ,
- },
- id: "7cc2a2df-37d8-426e-9235-c1a0902d5843",
- children: [
- {
- type: "group",
- title: {
- leftElement: "🔝",
- label: "High-End",
- rightElement: ,
- },
- id: "75e709b9-d51b-4054-97e7-6fab33c2f88d",
- children: [
- {
- type: "item",
- leftElement: "📱",
- content: "Samsung Galaxy S Series",
- rightElement: "Ctrl + 1",
- id: "5aaa9050-3e58-4fe5-9ff5-638bded6a6e2",
- },
- {
- type: "item",
- leftElement: "📱",
- content: "Google Pixel",
- rightElement: "Ctrl + 2",
- id: "56e7f50f-78fc-4145-8294-e78b39de7501",
- },
- ],
- },
- {
- type: "group",
- title: {
- label: "Budget",
- rightElement: ,
- },
- id: "194d25a1-8cdd-41fa-a3a9-6f03d8a6ab37",
- children: [
- {
- type: "item",
- content: "Redmi Note Series",
- id: "c8b8248a-9c43-4eea-8725-33ae0c783858",
- },
- {
- type: "item",
- content: "Realme",
- id: "d61c762f-7d75-4f69-828c-24b41d2e0d9b",
- },
- ],
- },
- ],
- },
- {
- type: "group",
- title: {
- label: "iPhones",
- rightElement: ,
- },
- id: "51b05462-1677-4258-87ac-eb18edc0a76c",
- children: [
- {
- type: "item",
- content: "iPhone 14",
- id: "0f468f54-0118-4e04-a885-ed3f650fc290",
- },
- {
- type: "item",
- content: "iPhone SE",
- id: "96289d85-c2c5-424b-8157-6d39969ba118",
- },
- ],
- },
- ],
- },
- {
- type: "group",
- title: {
- label: "Laptops",
- rightElement: ,
- },
- id: "881e7d15-e8a0-4286-9004-ecde9a1a89f4",
- children: [
- {
- type: "item",
- content: "Gaming Laptops",
- id: "797859e1-50a2-4dca-93c9-1a630ef16498",
- },
- {
- type: "item",
- content: "Ultrabooks",
- id: "b90933d3-aaf1-4aa7-968c-fa3d25201585",
- },
- ],
- },
- ],
- },
- {
- type: "group",
- title: {
- label: "Appliances",
- rightElement: ,
- },
- id: "3c9d098e-a4c7-4dae-a350-557672041ebb",
- children: [
- {
- type: "group",
- title: {
- label: "Kitchen Appliances",
- rightElement: ,
- },
- id: "541c57e5-6247-4c97-a988-10af0f21c21d",
- children: [
- {
- type: "item",
- content: "Microwaves",
- id: "f785da1b-6f60-4411-8444-f928e7ed7e77",
- },
- {
- type: "item",
- content: "Ovens",
- id: "a4d3d2a7-bafa-4b4e-b7bd-88177f6515c3",
- },
- ],
- },
- {
- type: "group",
- title: {
- label: "Large Appliances",
- rightElement: ,
- },
- id: "c5a94ccc-1d42-45c4-aa22-db65816256a9",
- children: [
- {
- type: "item",
- content: "Refrigerators",
- id: "21b78bc0-5012-4f80-b552-00787654581e",
- },
- {
- type: "item",
- content: "Washing Machines",
- id: "2eb6eb7d-e624-4eba-88e2-521da1dc8a20",
- },
- ],
- },
- {
- type: "group",
- title: {
- label: "Palette",
- rightElement: ,
- },
- id: "34c52670-9267-47b6-a702-957c6f23a00b",
- children: [
- {
- type: "item",
- content: test
,
- id: "965c81bb-e08d-4b90-954b-ea69ce33cdce",
- },
- ],
- },
- ],
- },
- ],
- },
-];
-
-const renderExpandableMenu = (menuItems: ExpandableMenuItemData[]) => {
- return menuItems.map((item) => {
- if (item.type === "item") {
- return (
-
- {item.leftElement && (
- {item.leftElement}
- )}
- {item.content as any}
- {item.rightElement && (
- {item.rightElement}
- )}
-
- );
- } else if (item.type === "group") {
- return (
-
-
- {item.title.leftElement && (
- {item.title.leftElement}
- )}
- {item.title.label}
- {item.title.rightElement && (
- {item.title.rightElement}
- )}
-
- {item.children && renderExpandableMenu(item.children)}
-
- );
- }
- });
-};
-
-export const DynamicNestedExpandableMenu: Story = {
- render: () => {renderExpandableMenu(menuData)} ,
-};
-
-export const NoIndentExpandableMenu: Story = {
- render: () => {renderExpandableMenu(menuData)} ,
-};
diff --git a/frontend/app/element/flyoutmenu.stories.tsx b/frontend/app/element/flyoutmenu.stories.tsx
deleted file mode 100644
index 0e3a3c9dfa..0000000000
--- a/frontend/app/element/flyoutmenu.stories.tsx
+++ /dev/null
@@ -1,289 +0,0 @@
-import type { Meta, StoryObj } from "@storybook/react";
-import { useRef } from "react";
-import { Button } from "./button";
-import { FlyoutMenu } from "./flyoutmenu";
-
-const items = [
- { label: "Fruit", onClick: (e) => console.log("Clicked Option 1") },
- {
- label: "Vegetables",
- subItems: [
- { label: "Carrot", onClick: (e) => console.log("Clicked Option 2 -> 1") },
- { label: "Potato", onClick: (e) => console.log("Clicked Option 2 -> 2") },
- ],
- },
- {
- label: "Beverages",
- subItems: [
- { label: "Juice", onClick: (e) => console.log("Clicked Option 3 -> 1") },
- { label: "Tea", onClick: (e) => console.log("Clicked Option 3 -> 2") },
- {
- label: "Coffee",
- subItems: [
- { label: "Espresso", onClick: (e) => console.log("Clicked Option 3 -> 3 -> 1") },
- { label: "Latte", onClick: (e) => console.log("Clicked Option 3 -> 3 -> 2") },
- { label: "Cappuccino", onClick: (e) => console.log("Clicked Option 3 -> 3 -> 3") },
- {
- label: "Mocha",
- subItems: [
- { label: "Dark Chocolate", onClick: (e) => console.log("Clicked Option 3 -> 3 -> 4 -> 1") },
- {
- label: "White Chocolate",
- onClick: (e) => console.log("Clicked Option 3 -> 3 -> 4 -> 2"),
- },
- { label: "Milk Chocolate", onClick: (e) => console.log("Clicked Option 3 -> 3 -> 4 -> 3") },
- ],
- },
- ],
- },
- ],
- },
- {
- label: "Desserts",
- subItems: [
- { label: "Cake", onClick: (e) => console.log("Clicked Option 4 -> 1") },
- { label: "Ice Cream", onClick: (e) => console.log("Clicked Option 4 -> 2") },
- { label: "Cookies", onClick: (e) => console.log("Clicked Option 4 -> 3") },
- { label: "Brownies", onClick: (e) => console.log("Clicked Option 4 -> 4") },
- { label: "Cupcakes", onClick: (e) => console.log("Clicked Option 4 -> 5") },
- { label: "Donuts", onClick: (e) => console.log("Clicked Option 4 -> 6") },
- { label: "Pie", onClick: (e) => console.log("Clicked Option 4 -> 7") },
- ],
- },
-];
-
-const meta = {
- title: "Elements/FlyoutMenu",
- component: FlyoutMenu,
- args: {
- items: [],
- children: null,
- },
- argTypes: {
- items: {
- description: "Items of menu",
- },
- className: {
- description: "Custom className",
- },
- children: {
- description: "The contents of the menu anchor element",
- },
- },
-} satisfies Meta;
-
-export default meta;
-type Story = StoryObj;
-
-export const DefaultRendererLeftPositioned: Story = {
- render: (args) => {
- const mapItemsWithClick = (items: any[]) => {
- return items.map((item) => ({
- ...item,
- onClick: () => {
- if (item.onClick) {
- item.onClick();
- }
- },
- subItems: item.subItems ? mapItemsWithClick(item.subItems) : undefined,
- }));
- };
-
- const modifiedArgs = {
- ...args,
- items: mapItemsWithClick(args.items),
- };
-
- return (
-
-
-
-
- Anchor Element
-
-
-
-
-
- );
- },
- args: {
- items: items,
- },
-};
-
-export const DefaultRendererRightPositioned: Story = {
- render: (args) => {
- const mapItemsWithClick = (items: any[]) => {
- return items.map((item) => ({
- ...item,
- onClick: () => {
- if (item.onClick) {
- item.onClick();
- }
- },
- subItems: item.subItems ? mapItemsWithClick(item.subItems) : undefined,
- }));
- };
-
- const modifiedArgs = {
- ...args,
- items: mapItemsWithClick(args.items),
- };
-
- return (
-
-
-
-
- Anchor Element
-
-
-
-
-
- );
- },
- args: {
- items: items,
- },
-};
-
-export const DefaultRendererBottomRightPositioned: Story = {
- render: (args) => {
- const mapItemsWithClick = (items: any[]) => {
- return items.map((item) => ({
- ...item,
- onClick: () => {
- if (item.onClick) {
- item.onClick();
- }
- },
- subItems: item.subItems ? mapItemsWithClick(item.subItems) : undefined,
- }));
- };
-
- const modifiedArgs = {
- ...args,
- items: mapItemsWithClick(args.items),
- };
-
- return (
-
-
-
-
- Anchor Element
-
-
-
-
-
- );
- },
- args: {
- items: items,
- },
-};
-
-export const DefaultRendererBottomLeftPositioned: Story = {
- render: (args) => {
- const anchorRef = useRef(null);
- const scopeRef = useRef(null);
-
- const mapItemsWithClick = (items: any[]) => {
- return items.map((item) => ({
- ...item,
- onClick: () => {
- if (item.onClick) {
- item.onClick();
- }
- },
- subItems: item.subItems ? mapItemsWithClick(item.subItems) : undefined,
- }));
- };
-
- const modifiedArgs = {
- ...args,
- items: mapItemsWithClick(args.items),
- };
-
- return (
-
-
-
-
- Anchor Element
-
-
-
-
-
- );
- },
- args: {
- items: items,
- },
-};
-
-export const CustomRenderer: Story = {
- render: (args) => {
- const mapItemsWithClick = (items: any[]) => {
- return items.map((item) => ({
- ...item,
- onClick: () => {
- if (item.onClick) {
- item.onClick();
- }
- },
- subItems: item.subItems ? mapItemsWithClick(item.subItems) : undefined,
- }));
- };
-
- const renderMenuItem = (item: any, props: any) => (
-
- {item.label}
- {item.subItems && ▶ }
-
- );
-
- const renderMenu = (subMenu: React.ReactElement) => {subMenu}
;
-
- const modifiedArgs = {
- ...args,
- items: mapItemsWithClick(args.items),
- };
-
- return (
-
-
-
-
- Anchor Element
-
-
-
-
-
- );
- },
- args: {
- items: items,
- },
-};
diff --git a/frontend/app/element/input.stories.tsx b/frontend/app/element/input.stories.tsx
deleted file mode 100644
index ced811aab4..0000000000
--- a/frontend/app/element/input.stories.tsx
+++ /dev/null
@@ -1,72 +0,0 @@
-// Copyright 2025, Command Line Inc.
-// SPDX-License-Identifier: Apache-2.0
-
-import type { Meta, StoryObj } from "@storybook/react";
-import { Input, InputGroup, InputLeftElement, InputRightElement } from "./input";
-
-const meta: Meta = {
- title: "Elements/Input",
- component: InputGroup,
- args: {
- className: "custom-input-group-class",
- },
- argTypes: {
- className: {
- description: "Custom class for input group styling",
- },
- },
-};
-
-export default meta;
-
-type Story = StoryObj;
-
-export const DefaultInput: Story = {
- render: (args) => {
- return (
-
-
-
- );
- },
- args: {
- className: "custom-input-group-class",
- },
-};
-
-export const InputWithLeftElement: Story = {
- render: (args) => {
- return (
-
-
-
-
-
-
-
-
- );
- },
- args: {
- className: "custom-input-group-class",
- },
-};
-
-export const InputWithLeftAndRightElement: Story = {
- render: (args) => {
- return (
-
-
- $
-
-
-
-
-
-
- );
- },
- args: {
- className: "custom-input-group-class",
- },
-};
diff --git a/frontend/app/element/magnify.stories.tsx b/frontend/app/element/magnify.stories.tsx
deleted file mode 100644
index 5e7e1c8b78..0000000000
--- a/frontend/app/element/magnify.stories.tsx
+++ /dev/null
@@ -1,28 +0,0 @@
-// Copyright 2025, Command Line Inc.
-// SPDX-License-Identifier: Apache-2.0
-
-import type { Meta, StoryObj } from "@storybook/react";
-import { MagnifyIcon } from "./magnify";
-
-const meta = {
- title: "Icons/Magnify",
- component: MagnifyIcon,
- args: {
- enabled: true,
- },
-} satisfies Meta;
-
-export default meta;
-type Story = StoryObj;
-
-export const Enabled: Story = {
- args: {
- enabled: true,
- },
-};
-
-export const Disabled: Story = {
- args: {
- enabled: false,
- },
-};
diff --git a/frontend/app/element/menubutton.stories.tsx b/frontend/app/element/menubutton.stories.tsx
deleted file mode 100644
index 70ea4c50fd..0000000000
--- a/frontend/app/element/menubutton.stories.tsx
+++ /dev/null
@@ -1,103 +0,0 @@
-// Copyright 2025, Command Line Inc.
-// SPDX-License-Identifier: Apache-2.0
-
-import { Meta, StoryObj } from "@storybook/react";
-import { MenuButton } from "./menubutton";
-
-const items: MenuItem[] = [
- { label: "Fruit", onClick: (e) => console.log("Clicked Option 1") },
- {
- label: "Vegetables",
- subItems: [
- { label: "Carrot", onClick: (e) => console.log("Clicked Option 2 -> 1") },
- { label: "Potato", onClick: (e) => console.log("Clicked Option 2 -> 2") },
- ],
- },
- {
- label: "Beverages",
- subItems: [
- { label: "Juice", onClick: (e) => console.log("Clicked Option 3 -> 1") },
- { label: "Tea", onClick: (e) => console.log("Clicked Option 3 -> 2") },
- {
- label: "Coffee",
- subItems: [
- { label: "Espresso", onClick: (e) => console.log("Clicked Option 3 -> 3 -> 1") },
- { label: "Latte", onClick: (e) => console.log("Clicked Option 3 -> 3 -> 2") },
- { label: "Cappuccino", onClick: (e) => console.log("Clicked Option 3 -> 3 -> 3") },
- {
- label: "Mocha",
- subItems: [
- { label: "Dark Chocolate", onClick: (e) => console.log("Clicked Option 3 -> 3 -> 4 -> 1") },
- {
- label: "White Chocolate",
- onClick: (e) => console.log("Clicked Option 3 -> 3 -> 4 -> 2"),
- },
- { label: "Milk Chocolate", onClick: (e) => console.log("Clicked Option 3 -> 3 -> 4 -> 3") },
- ],
- },
- ],
- },
- ],
- },
- {
- label: "Desserts",
- subItems: [
- { label: "Cake", onClick: (e) => console.log("Clicked Option 4 -> 1") },
- { label: "Ice Cream", onClick: (e) => console.log("Clicked Option 4 -> 2") },
- { label: "Cookies", onClick: (e) => console.log("Clicked Option 4 -> 3") },
- { label: "Brownies", onClick: (e) => console.log("Clicked Option 4 -> 4") },
- { label: "Cupcakes", onClick: (e) => console.log("Clicked Option 4 -> 5") },
- { label: "Donuts", onClick: (e) => console.log("Clicked Option 4 -> 6") },
- { label: "Pie", onClick: (e) => console.log("Clicked Option 4 -> 7") },
- ],
- },
-];
-
-const meta: Meta = {
- title: "Elements/MenuButton", // Updated title to reflect the component name
- component: MenuButton,
- argTypes: {
- items: { control: "object" },
- text: { control: "text" },
- title: { control: "text" },
- className: { control: "text" },
- },
-};
-
-export default meta;
-type Story = StoryObj;
-
-const basicItems: MenuItem[] = [
- {
- label: "Profile",
- onClick: () => console.log("Profile clicked"),
- },
- {
- label: "Settings",
- onClick: () => console.log("Settings clicked"),
- },
- {
- label: "Logout",
- onClick: () => console.log("Logout clicked"),
- },
-];
-
-export const Default: Story = {
- args: {
- items: basicItems,
- text: "Menu",
- title: "Menu Button",
- className: "",
- },
- render: (args) => ,
-};
-
-export const WithMoreItems: Story = {
- args: {
- items: items,
- text: "Extended Menu",
- title: "Extended Menu Button",
- className: "",
- },
- render: (args) => ,
-};
diff --git a/frontend/app/element/multilineinput.stories.tsx b/frontend/app/element/multilineinput.stories.tsx
deleted file mode 100644
index 45b3f5e518..0000000000
--- a/frontend/app/element/multilineinput.stories.tsx
+++ /dev/null
@@ -1,112 +0,0 @@
-// Copyright 2025, Command Line Inc.
-// SPDX-License-Identifier: Apache-2.0
-
-import type { Meta, StoryObj } from "@storybook/react";
-import { useState } from "react";
-import { MultiLineInput } from "./multilineinput";
-
-const meta: Meta = {
- title: "Elements/MultiLineInput",
- component: MultiLineInput,
- argTypes: {
- value: {
- description: "The value of the textarea.",
- control: "text",
- },
- placeholder: {
- description: "The placeholder text for the textarea.",
- control: "text",
- defaultValue: "Type a message...",
- },
- maxRows: {
- description: "Maximum number of rows the textarea can expand to.",
- control: "number",
- defaultValue: 5,
- },
- rows: {
- description: "Initial number of rows for the textarea.",
- control: "number",
- defaultValue: 1,
- },
- maxLength: {
- description: "The maximum number of characters allowed.",
- control: "number",
- defaultValue: 200,
- },
- autoFocus: {
- description: "Autofocus the input when the component mounts.",
- control: "boolean",
- defaultValue: false,
- },
- disabled: {
- description: "Disables the textarea if set to true.",
- control: "boolean",
- defaultValue: false,
- },
- },
-};
-
-export default meta;
-type Story = StoryObj;
-
-// Default MultiLineInput Story
-export const DefaultMultiLineInput: Story = {
- render: (args) => {
- const [message, setMessage] = useState("");
-
- const handleChange = (e: React.ChangeEvent) => {
- setMessage(e.target.value);
- };
-
- return (
-
-
-
- );
- },
- args: {
- placeholder: "Type your message...",
- rows: 1,
- maxRows: 5,
- },
-};
-
-// MultiLineInput with long text
-export const MultiLineInputWithLongText: Story = {
- render: (args) => {
- const [message, setMessage] = useState("This is a long message that will expand the textarea.");
-
- const handleChange = (e: React.ChangeEvent) => {
- setMessage(e.target.value);
- };
-
- return (
-
-
-
- );
- },
- args: {
- placeholder: "Type a long message...",
- rows: 1,
- maxRows: 10,
- },
-};
diff --git a/frontend/app/element/popover.stories.tsx b/frontend/app/element/popover.stories.tsx
deleted file mode 100644
index e60b5b1cce..0000000000
--- a/frontend/app/element/popover.stories.tsx
+++ /dev/null
@@ -1,54 +0,0 @@
-// Copyright 2025, Command Line Inc.
-// SPDX-License-Identifier: Apache-2.0
-
-import type { Meta, StoryObj } from "@storybook/react";
-import { Popover, PopoverButton, PopoverContent } from "./popover";
-
-const meta: Meta = {
- title: "Elements/Popover",
- component: Popover,
- args: {
- className: "custom-popover-class",
- },
- argTypes: {
- className: {
- description: "Custom class for popover styling",
- },
- },
-};
-
-export default meta;
-type Story = StoryObj;
-
-export const DefaultPopover: Story = {
- render: (args) => {
- return (
-
-
-
-
-
-
-
-
- Empty
-
-
-
-
- );
- },
- args: {
- className: "custom-popover-class",
- },
-};
diff --git a/frontend/app/element/progressbar.stories.tsx b/frontend/app/element/progressbar.stories.tsx
deleted file mode 100644
index abdebc6912..0000000000
--- a/frontend/app/element/progressbar.stories.tsx
+++ /dev/null
@@ -1,52 +0,0 @@
-// Copyright 2025, Command Line Inc.
-// SPDX-License-Identifier: Apache-2.0
-
-import type { Meta, StoryObj } from "@storybook/react";
-import { ProgressBar } from "./progressbar";
-
-const meta: Meta = {
- title: "Elements/ProgressBar",
- component: ProgressBar,
- args: {
- progress: 0, // Default value
- label: "Progress",
- },
- argTypes: {
- progress: {
- description: "Percentage of progress (0-100)",
- control: { type: "range", min: 0, max: 100 },
- },
- label: {
- description: "Accessible label for the progress bar",
- control: "text",
- },
- },
-};
-
-export default meta;
-
-type Story = StoryObj;
-
-export const EmptyProgress: Story = {
- render: (args) => (
-
- ),
- args: {
- progress: 0, // No progress
- label: "Empty progress bar",
- },
-};
-
-export const FilledProgress: Story = {
- render: (args) => (
-
- ),
- args: {
- progress: 90, // Filled to 90%
- label: "Filled progress bar",
- },
-};
diff --git a/frontend/app/element/search.stories.tsx b/frontend/app/element/search.stories.tsx
deleted file mode 100644
index 89f0f90a1b..0000000000
--- a/frontend/app/element/search.stories.tsx
+++ /dev/null
@@ -1,152 +0,0 @@
-// Copyright 2025, Command Line Inc.
-// SPDX-License-Identifier: Apache-2.0
-
-import type { Meta, StoryObj } from "@storybook/react";
-import { useSetAtom } from "jotai";
-import { useEffect } from "react";
-import { Popover } from "./popover";
-import { Search, useSearch } from "./search";
-
-const meta: Meta = {
- title: "Elements/Search",
- component: Search,
- args: {},
-};
-
-export default meta;
-type Story = StoryObj;
-
-export const Default: Story = {
- render: (args) => {
- const props = useSearch();
- const setIsOpen = useSetAtom(props.isOpen);
- useEffect(() => {
- setIsOpen(true);
- }, []);
- return (
- }
- style={{
- border: "2px solid black",
- width: "100%",
- height: "200px",
- background: "var(--main-bg-color)",
- }}
- >
-
-
- );
- },
- args: {},
-};
-
-export const AdditionalButtons: Story = {
- render: (args) => {
- const props = useSearch({ regex: true, caseSensitive: true, wholeWord: true });
- const setIsOpen = useSetAtom(props.isOpen);
- useEffect(() => {
- setIsOpen(true);
- }, []);
- return (
- }
- style={{
- border: "2px solid black",
- width: "100%",
- height: "200px",
- background: "var(--main-bg-color)",
- }}
- >
-
-
- );
- },
- args: {},
-};
-
-export const Results10: Story = {
- render: (args) => {
- const props = useSearch();
- const setIsOpen = useSetAtom(props.isOpen);
- const setNumResults = useSetAtom(props.resultsCount);
- useEffect(() => {
- setIsOpen(true);
- setNumResults(10);
- }, []);
- return (
- }
- style={{
- border: "2px solid black",
- width: "100%",
- height: "200px",
- background: "var(--main-bg-color)",
- }}
- >
-
-
- );
- },
- args: {},
-};
-
-export const InputAndResults10: Story = {
- render: (args) => {
- const props = useSearch();
- const setIsOpen = useSetAtom(props.isOpen);
- const setNumResults = useSetAtom(props.resultsCount);
- const setSearch = useSetAtom(props.searchValue);
- useEffect(() => {
- setIsOpen(true);
- setSearch("search term");
- setTimeout(() => setNumResults(10), 10);
- }, []);
- return (
- }
- style={{
- border: "2px solid black",
- width: "100%",
- height: "200px",
- background: "var(--main-bg-color)",
- }}
- >
-
-
- );
- },
- args: {},
-};
-
-export const LongInputAndResults10: Story = {
- render: (args) => {
- const props = useSearch();
- const setIsOpen = useSetAtom(props.isOpen);
- const setNumResults = useSetAtom(props.resultsCount);
- const setSearch = useSetAtom(props.searchValue);
- useEffect(() => {
- setIsOpen(true);
- setSearch("search term ".repeat(10).trimEnd());
- setTimeout(() => setNumResults(10), 10);
- }, []);
- return (
- }
- style={{
- border: "2px solid black",
- width: "100%",
- height: "200px",
- background: "var(--main-bg-color)",
- }}
- >
-
-
- );
- },
- args: {},
-};
diff --git a/frontend/layout/lib/tilelayout.stories.scss b/frontend/layout/lib/tilelayout.stories.scss
deleted file mode 100644
index b179ffc8f5..0000000000
--- a/frontend/layout/lib/tilelayout.stories.scss
+++ /dev/null
@@ -1,9 +0,0 @@
-// Copyright 2024, Command Line Inc.
-// SPDX-License-Identifier: Apache-2.0
-
-.placeholder-visible {
- .overlay-container,
- .placeholder-container {
- transform: unset !important;
- }
-}
diff --git a/frontend/types/gotypes.d.ts b/frontend/types/gotypes.d.ts
index 71cb982254..8b80fe62af 100644
--- a/frontend/types/gotypes.d.ts
+++ b/frontend/types/gotypes.d.ts
@@ -1220,6 +1220,8 @@ declare global {
"count:views"?: {[key: string]: number};
"waveai:apitype"?: string;
"waveai:model"?: string;
+ "waveai:chatid"?: string;
+ "waveai:stepnum"?: number;
"waveai:inputtokens"?: number;
"waveai:outputtokens"?: number;
"waveai:nativewebsearchcount"?: number;
diff --git a/package-lock.json b/package-lock.json
index ef9616f849..b770d276d0 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1,12 +1,12 @@
{
"name": "waveterm",
- "version": "0.12.4-beta.2",
+ "version": "0.12.4",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "waveterm",
- "version": "0.12.4-beta.2",
+ "version": "0.12.4",
"hasInstallScript": true,
"license": "Apache-2.0",
"workspaces": [
@@ -87,18 +87,8 @@
"yaml": "^2.7.1"
},
"devDependencies": {
- "@chromatic-com/storybook": "^3.2.7",
"@eslint/js": "^8.57.0",
"@rollup/plugin-node-resolve": "^16.0.3",
- "@storybook/addon-essentials": "^8.6.14",
- "@storybook/addon-interactions": "^8.6.14",
- "@storybook/addon-links": "^8.6.14",
- "@storybook/blocks": "^8.6.14",
- "@storybook/builder-vite": "^8.6.14",
- "@storybook/react": "^8.6.14",
- "@storybook/react-vite": "^8.6.14",
- "@storybook/test": "^8.6.14",
- "@storybook/theming": "^8.6.14",
"@tailwindcss/vite": "^4.1.17",
"@types/color": "^4.2.0",
"@types/css-tree": "^2",
@@ -129,8 +119,6 @@
"prettier-plugin-jsdoc": "^1.5.0",
"prettier-plugin-organize-imports": "^4.3.0",
"sass": "1.91.0",
- "storybook": "^8.6.14",
- "storybook-dark-mode": "^4.0.2",
"tailwindcss": "^4.1.17",
"tailwindcss-animate": "^1.0.7",
"ts-node": "^10.9.2",
@@ -264,13 +252,6 @@
"@parcel/watcher": "^2.4.1"
}
},
- "node_modules/@adobe/css-tools": {
- "version": "4.4.4",
- "resolved": "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.4.4.tgz",
- "integrity": "sha512-Elp+iwUx5rN5+Y8xLt5/GRoG20WGoDCQ/1Fb+1LiGtvwbDavuSk0jhD/eZdckHAuzcDzccnkv+rEjyWfRx18gg==",
- "dev": true,
- "license": "MIT"
- },
"node_modules/@ai-sdk/gateway": {
"version": "2.0.11",
"resolved": "https://registry.npmjs.org/@ai-sdk/gateway/-/gateway-2.0.11.tgz",
@@ -2360,27 +2341,6 @@
"integrity": "sha512-YslZMgtJUyuMbZ+aKvfF3x1f5liK4mWNxghFRv7jqRR9C3R3fAOGTTKvxXDa2Y1s9zSbcpuO0cAxDYsc9SrXoQ==",
"license": "Apache-2.0"
},
- "node_modules/@chromatic-com/storybook": {
- "version": "3.2.7",
- "resolved": "https://registry.npmjs.org/@chromatic-com/storybook/-/storybook-3.2.7.tgz",
- "integrity": "sha512-fCGhk4cd3VA8RNg55MZL5CScdHqljsQcL9g6Ss7YuobHpSo9yytEWNdgMd5QxAHSPBlLGFHjnSmliM3G/BeBqw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "chromatic": "^11.15.0",
- "filesize": "^10.0.12",
- "jsonfile": "^6.1.0",
- "react-confetti": "^6.1.0",
- "strip-ansi": "^7.1.0"
- },
- "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"
- }
- },
"node_modules/@colors/colors": {
"version": "1.5.0",
"resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz",
@@ -6712,40 +6672,6 @@
"node": "^14.15.0 || ^16.10.0 || >=18.0.0"
}
},
- "node_modules/@joshwooding/vite-plugin-react-docgen-typescript": {
- "version": "0.5.0",
- "resolved": "https://registry.npmjs.org/@joshwooding/vite-plugin-react-docgen-typescript/-/vite-plugin-react-docgen-typescript-0.5.0.tgz",
- "integrity": "sha512-qYDdL7fPwLRI+bJNurVcis+tNgJmvWjH4YTBGXTA8xMuxFrnAz6E5o35iyzyKbq5J5Lr8mJGfrR5GXl+WGwhgQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "glob": "^10.0.0",
- "magic-string": "^0.27.0",
- "react-docgen-typescript": "^2.2.2"
- },
- "peerDependencies": {
- "typescript": ">= 4.3.x",
- "vite": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0"
- },
- "peerDependenciesMeta": {
- "typescript": {
- "optional": true
- }
- }
- },
- "node_modules/@joshwooding/vite-plugin-react-docgen-typescript/node_modules/magic-string": {
- "version": "0.27.0",
- "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.27.0.tgz",
- "integrity": "sha512-8UnnX2PeRAPZuN12svgR9j7M1uWMovg/CEnIwIG0LFkXSJJe4PdfUGiTGl8V9bsBHFUtfVINcSyYxd7q+kx9fA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@jridgewell/sourcemap-codec": "^1.4.13"
- },
- "engines": {
- "node": ">=12"
- }
- },
"node_modules/@jridgewell/gen-mapping": {
"version": "0.3.13",
"resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.13.tgz",
@@ -8572,569 +8498,6 @@
"integrity": "sha512-e7Mew686owMaPJVNNLs55PUvgz371nKgwsc4vxE49zsODpJEnxgxRo2y/OKrqueavXgZNMDVj3DdHFlaSAeU8g==",
"license": "MIT"
},
- "node_modules/@storybook/addon-actions": {
- "version": "8.6.14",
- "resolved": "https://registry.npmjs.org/@storybook/addon-actions/-/addon-actions-8.6.14.tgz",
- "integrity": "sha512-mDQxylxGGCQSK7tJPkD144J8jWh9IU9ziJMHfB84PKpI/V5ZgqMDnpr2bssTrUaGDqU5e1/z8KcRF+Melhs9pQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@storybook/global": "^5.0.0",
- "@types/uuid": "^9.0.1",
- "dequal": "^2.0.2",
- "polished": "^4.2.2",
- "uuid": "^9.0.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/storybook"
- },
- "peerDependencies": {
- "storybook": "^8.6.14"
- }
- },
- "node_modules/@storybook/addon-actions/node_modules/@types/uuid": {
- "version": "9.0.8",
- "resolved": "https://registry.npmjs.org/@types/uuid/-/uuid-9.0.8.tgz",
- "integrity": "sha512-jg+97EGIcY9AGHJJRaaPVgetKDsrTgbRjQ5Msgjh/DQKEFl0DtyRr/VCOyD1T2R1MNeWPK/u7JoGhlDZnKBAfA==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/@storybook/addon-backgrounds": {
- "version": "8.6.14",
- "resolved": "https://registry.npmjs.org/@storybook/addon-backgrounds/-/addon-backgrounds-8.6.14.tgz",
- "integrity": "sha512-l9xS8qWe5n4tvMwth09QxH2PmJbCctEvBAc1tjjRasAfrd69f7/uFK4WhwJAstzBTNgTc8VXI4w8ZR97i1sFbg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@storybook/global": "^5.0.0",
- "memoizerific": "^1.11.3",
- "ts-dedent": "^2.0.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/storybook"
- },
- "peerDependencies": {
- "storybook": "^8.6.14"
- }
- },
- "node_modules/@storybook/addon-controls": {
- "version": "8.6.14",
- "resolved": "https://registry.npmjs.org/@storybook/addon-controls/-/addon-controls-8.6.14.tgz",
- "integrity": "sha512-IiQpkNJdiRyA4Mq9mzjZlvQugL/aE7hNgVxBBGPiIZG6wb6Ht9hNnBYpap5ZXXFKV9p2qVI0FZK445ONmAa+Cw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@storybook/global": "^5.0.0",
- "dequal": "^2.0.2",
- "ts-dedent": "^2.0.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/storybook"
- },
- "peerDependencies": {
- "storybook": "^8.6.14"
- }
- },
- "node_modules/@storybook/addon-docs": {
- "version": "8.6.14",
- "resolved": "https://registry.npmjs.org/@storybook/addon-docs/-/addon-docs-8.6.14.tgz",
- "integrity": "sha512-Obpd0OhAF99JyU5pp5ci17YmpcQtMNgqW2pTXV8jAiiipWpwO++hNDeQmLmlSXB399XjtRDOcDVkoc7rc6JzdQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@mdx-js/react": "^3.0.0",
- "@storybook/blocks": "8.6.14",
- "@storybook/csf-plugin": "8.6.14",
- "@storybook/react-dom-shim": "8.6.14",
- "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0",
- "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0",
- "ts-dedent": "^2.0.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/storybook"
- },
- "peerDependencies": {
- "storybook": "^8.6.14"
- }
- },
- "node_modules/@storybook/addon-essentials": {
- "version": "8.6.14",
- "resolved": "https://registry.npmjs.org/@storybook/addon-essentials/-/addon-essentials-8.6.14.tgz",
- "integrity": "sha512-5ZZSHNaW9mXMOFkoPyc3QkoNGdJHETZydI62/OASR0lmPlJ1065TNigEo5dJddmZNn0/3bkE8eKMAzLnO5eIdA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@storybook/addon-actions": "8.6.14",
- "@storybook/addon-backgrounds": "8.6.14",
- "@storybook/addon-controls": "8.6.14",
- "@storybook/addon-docs": "8.6.14",
- "@storybook/addon-highlight": "8.6.14",
- "@storybook/addon-measure": "8.6.14",
- "@storybook/addon-outline": "8.6.14",
- "@storybook/addon-toolbars": "8.6.14",
- "@storybook/addon-viewport": "8.6.14",
- "ts-dedent": "^2.0.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/storybook"
- },
- "peerDependencies": {
- "storybook": "^8.6.14"
- }
- },
- "node_modules/@storybook/addon-highlight": {
- "version": "8.6.14",
- "resolved": "https://registry.npmjs.org/@storybook/addon-highlight/-/addon-highlight-8.6.14.tgz",
- "integrity": "sha512-4H19OJlapkofiE9tM6K/vsepf4ir9jMm9T+zw5L85blJZxhKZIbJ6FO0TCG9PDc4iPt3L6+aq5B0X29s9zicNQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@storybook/global": "^5.0.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/storybook"
- },
- "peerDependencies": {
- "storybook": "^8.6.14"
- }
- },
- "node_modules/@storybook/addon-interactions": {
- "version": "8.6.14",
- "resolved": "https://registry.npmjs.org/@storybook/addon-interactions/-/addon-interactions-8.6.14.tgz",
- "integrity": "sha512-8VmElhm2XOjh22l/dO4UmXxNOolGhNiSpBcls2pqWSraVh4a670EyYBZsHpkXqfNHo2YgKyZN3C91+9zfH79qQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@storybook/global": "^5.0.0",
- "@storybook/instrumenter": "8.6.14",
- "@storybook/test": "8.6.14",
- "polished": "^4.2.2",
- "ts-dedent": "^2.2.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/storybook"
- },
- "peerDependencies": {
- "storybook": "^8.6.14"
- }
- },
- "node_modules/@storybook/addon-links": {
- "version": "8.6.14",
- "resolved": "https://registry.npmjs.org/@storybook/addon-links/-/addon-links-8.6.14.tgz",
- "integrity": "sha512-DRlXHIyZzOruAZkxmXfVgTF+4d6K27pFcH4cUsm3KT1AXuZbr23lb5iZHpUZoG6lmU85Sru4xCEgewSTXBIe1w==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@storybook/global": "^5.0.0",
- "ts-dedent": "^2.0.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/storybook"
- },
- "peerDependencies": {
- "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta",
- "storybook": "^8.6.14"
- },
- "peerDependenciesMeta": {
- "react": {
- "optional": true
- }
- }
- },
- "node_modules/@storybook/addon-measure": {
- "version": "8.6.14",
- "resolved": "https://registry.npmjs.org/@storybook/addon-measure/-/addon-measure-8.6.14.tgz",
- "integrity": "sha512-1Tlyb72NX8aAqm6I6OICsUuGOP6hgnXcuFlXucyhKomPa6j3Eu2vKu561t/f0oGtAK2nO93Z70kVaEh5X+vaGw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@storybook/global": "^5.0.0",
- "tiny-invariant": "^1.3.1"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/storybook"
- },
- "peerDependencies": {
- "storybook": "^8.6.14"
- }
- },
- "node_modules/@storybook/addon-outline": {
- "version": "8.6.14",
- "resolved": "https://registry.npmjs.org/@storybook/addon-outline/-/addon-outline-8.6.14.tgz",
- "integrity": "sha512-CW857JvN6OxGWElqjlzJO2S69DHf+xO3WsEfT5mT3ZtIjmsvRDukdWfDU9bIYUFyA2lFvYjncBGjbK+I91XR7w==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@storybook/global": "^5.0.0",
- "ts-dedent": "^2.0.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/storybook"
- },
- "peerDependencies": {
- "storybook": "^8.6.14"
- }
- },
- "node_modules/@storybook/addon-toolbars": {
- "version": "8.6.14",
- "resolved": "https://registry.npmjs.org/@storybook/addon-toolbars/-/addon-toolbars-8.6.14.tgz",
- "integrity": "sha512-W/wEXT8h3VyZTVfWK/84BAcjAxTdtRiAkT2KAN0nbSHxxB5KEM1MjKpKu2upyzzMa3EywITqbfy4dP6lpkVTwQ==",
- "dev": true,
- "license": "MIT",
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/storybook"
- },
- "peerDependencies": {
- "storybook": "^8.6.14"
- }
- },
- "node_modules/@storybook/addon-viewport": {
- "version": "8.6.14",
- "resolved": "https://registry.npmjs.org/@storybook/addon-viewport/-/addon-viewport-8.6.14.tgz",
- "integrity": "sha512-gNzVQbMqRC+/4uQTPI2ZrWuRHGquTMZpdgB9DrD88VTEjNudP+J6r8myLfr2VvGksBbUMHkGHMXHuIhrBEnXYA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "memoizerific": "^1.11.3"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/storybook"
- },
- "peerDependencies": {
- "storybook": "^8.6.14"
- }
- },
- "node_modules/@storybook/blocks": {
- "version": "8.6.14",
- "resolved": "https://registry.npmjs.org/@storybook/blocks/-/blocks-8.6.14.tgz",
- "integrity": "sha512-rBMHAfA39AGHgkrDze4RmsnQTMw1ND5fGWobr9pDcJdnDKWQWNRD7Nrlxj0gFlN3n4D9lEZhWGdFrCbku7FVAQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@storybook/icons": "^1.2.12",
- "ts-dedent": "^2.0.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/storybook"
- },
- "peerDependencies": {
- "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0",
- "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0",
- "storybook": "^8.6.14"
- },
- "peerDependenciesMeta": {
- "react": {
- "optional": true
- },
- "react-dom": {
- "optional": true
- }
- }
- },
- "node_modules/@storybook/builder-vite": {
- "version": "8.6.14",
- "resolved": "https://registry.npmjs.org/@storybook/builder-vite/-/builder-vite-8.6.14.tgz",
- "integrity": "sha512-ajWYhy32ksBWxwWHrjwZzyC0Ii5ZTeu5lsqA95Q/EQBB0P5qWlHWGM3AVyv82Mz/ND03ebGy123uVwgf6olnYQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@storybook/csf-plugin": "8.6.14",
- "browser-assert": "^1.2.1",
- "ts-dedent": "^2.0.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/storybook"
- },
- "peerDependencies": {
- "storybook": "^8.6.14",
- "vite": "^4.0.0 || ^5.0.0 || ^6.0.0"
- }
- },
- "node_modules/@storybook/components": {
- "version": "8.6.14",
- "resolved": "https://registry.npmjs.org/@storybook/components/-/components-8.6.14.tgz",
- "integrity": "sha512-HNR2mC5I4Z5ek8kTrVZlIY/B8gJGs5b3XdZPBPBopTIN6U/YHXiDyOjY3JlaS4fSG1fVhp/Qp1TpMn1w/9m1pw==",
- "dev": true,
- "license": "MIT",
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/storybook"
- },
- "peerDependencies": {
- "storybook": "^8.2.0 || ^8.3.0-0 || ^8.4.0-0 || ^8.5.0-0 || ^8.6.0-0"
- }
- },
- "node_modules/@storybook/core": {
- "version": "8.6.14",
- "resolved": "https://registry.npmjs.org/@storybook/core/-/core-8.6.14.tgz",
- "integrity": "sha512-1P/w4FSNRqP8j3JQBOi3yGt8PVOgSRbP66Ok520T78eJBeqx9ukCfl912PQZ7SPbW3TIunBwLXMZOjZwBB/JmA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@storybook/theming": "8.6.14",
- "better-opn": "^3.0.2",
- "browser-assert": "^1.2.1",
- "esbuild": "^0.18.0 || ^0.19.0 || ^0.20.0 || ^0.21.0 || ^0.22.0 || ^0.23.0 || ^0.24.0 || ^0.25.0",
- "esbuild-register": "^3.5.0",
- "jsdoc-type-pratt-parser": "^4.0.0",
- "process": "^0.11.10",
- "recast": "^0.23.5",
- "semver": "^7.6.2",
- "util": "^0.12.5",
- "ws": "^8.2.3"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/storybook"
- },
- "peerDependencies": {
- "prettier": "^2 || ^3"
- },
- "peerDependenciesMeta": {
- "prettier": {
- "optional": true
- }
- }
- },
- "node_modules/@storybook/core-events": {
- "version": "8.6.14",
- "resolved": "https://registry.npmjs.org/@storybook/core-events/-/core-events-8.6.14.tgz",
- "integrity": "sha512-RrJ95u3HuIE4Nk8VmZP0tc/u0vYoE2v9fYlMw6K2GUSExzKDITs3voy6WMIY7Q3qbQun8XUXVlmqkuFzTEy/pA==",
- "dev": true,
- "license": "MIT",
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/storybook"
- },
- "peerDependencies": {
- "storybook": "^8.2.0 || ^8.3.0-0 || ^8.4.0-0 || ^8.5.0-0 || ^8.6.0-0"
- }
- },
- "node_modules/@storybook/csf-plugin": {
- "version": "8.6.14",
- "resolved": "https://registry.npmjs.org/@storybook/csf-plugin/-/csf-plugin-8.6.14.tgz",
- "integrity": "sha512-dErtc9teAuN+eelN8FojzFE635xlq9cNGGGEu0WEmMUQ4iJ8pingvBO1N8X3scz4Ry7KnxX++NNf3J3gpxS8qQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "unplugin": "^1.3.1"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/storybook"
- },
- "peerDependencies": {
- "storybook": "^8.6.14"
- }
- },
- "node_modules/@storybook/global": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/@storybook/global/-/global-5.0.0.tgz",
- "integrity": "sha512-FcOqPAXACP0I3oJ/ws6/rrPT9WGhu915Cg8D02a9YxLo0DE9zI+a9A5gRGvmQ09fiWPukqI8ZAEoQEdWUKMQdQ==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/@storybook/icons": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/@storybook/icons/-/icons-1.4.0.tgz",
- "integrity": "sha512-Td73IeJxOyalzvjQL+JXx72jlIYHgs+REaHiREOqfpo3A2AYYG71AUbcv+lg7mEDIweKVCxsMQ0UKo634c8XeA==",
- "dev": true,
- "license": "MIT",
- "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"
- }
- },
- "node_modules/@storybook/instrumenter": {
- "version": "8.6.14",
- "resolved": "https://registry.npmjs.org/@storybook/instrumenter/-/instrumenter-8.6.14.tgz",
- "integrity": "sha512-iG4MlWCcz1L7Yu8AwgsnfVAmMbvyRSk700Mfy2g4c8y5O+Cv1ejshE1LBBsCwHgkuqU0H4R0qu4g23+6UnUemQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@storybook/global": "^5.0.0",
- "@vitest/utils": "^2.1.1"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/storybook"
- },
- "peerDependencies": {
- "storybook": "^8.6.14"
- }
- },
- "node_modules/@storybook/manager-api": {
- "version": "8.6.14",
- "resolved": "https://registry.npmjs.org/@storybook/manager-api/-/manager-api-8.6.14.tgz",
- "integrity": "sha512-ez0Zihuy17udLbfHZQXkGqwtep0mSGgHcNzGN7iZrMP1m+VmNo+7aGCJJdvXi7+iU3yq8weXSQFWg5DqWgLS7g==",
- "dev": true,
- "license": "MIT",
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/storybook"
- },
- "peerDependencies": {
- "storybook": "^8.2.0 || ^8.3.0-0 || ^8.4.0-0 || ^8.5.0-0 || ^8.6.0-0"
- }
- },
- "node_modules/@storybook/preview-api": {
- "version": "8.6.14",
- "resolved": "https://registry.npmjs.org/@storybook/preview-api/-/preview-api-8.6.14.tgz",
- "integrity": "sha512-2GhcCd4dNMrnD7eooEfvbfL4I83qAqEyO0CO7JQAmIO6Rxb9BsOLLI/GD5HkvQB73ArTJ+PT50rfaO820IExOQ==",
- "dev": true,
- "license": "MIT",
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/storybook"
- },
- "peerDependencies": {
- "storybook": "^8.2.0 || ^8.3.0-0 || ^8.4.0-0 || ^8.5.0-0 || ^8.6.0-0"
- }
- },
- "node_modules/@storybook/react": {
- "version": "8.6.14",
- "resolved": "https://registry.npmjs.org/@storybook/react/-/react-8.6.14.tgz",
- "integrity": "sha512-BOepx5bBFwl/CPI+F+LnmMmsG1wQYmrX/UQXgUbHQUU9Tj7E2ndTnNbpIuSLc8IrM03ru+DfwSg1Co3cxWtT+g==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@storybook/components": "8.6.14",
- "@storybook/global": "^5.0.0",
- "@storybook/manager-api": "8.6.14",
- "@storybook/preview-api": "8.6.14",
- "@storybook/react-dom-shim": "8.6.14",
- "@storybook/theming": "8.6.14"
- },
- "engines": {
- "node": ">=18.0.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/storybook"
- },
- "peerDependencies": {
- "@storybook/test": "8.6.14",
- "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.14",
- "typescript": ">= 4.2.x"
- },
- "peerDependenciesMeta": {
- "@storybook/test": {
- "optional": true
- },
- "typescript": {
- "optional": true
- }
- }
- },
- "node_modules/@storybook/react-dom-shim": {
- "version": "8.6.14",
- "resolved": "https://registry.npmjs.org/@storybook/react-dom-shim/-/react-dom-shim-8.6.14.tgz",
- "integrity": "sha512-0hixr3dOy3f3M+HBofp3jtMQMS+sqzjKNgl7Arfuj3fvjmyXOks/yGjDImySR4imPtEllvPZfhiQNlejheaInw==",
- "dev": true,
- "license": "MIT",
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/storybook"
- },
- "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.14"
- }
- },
- "node_modules/@storybook/react-vite": {
- "version": "8.6.14",
- "resolved": "https://registry.npmjs.org/@storybook/react-vite/-/react-vite-8.6.14.tgz",
- "integrity": "sha512-FZU0xMPxa4/TO87FgcWwappOxLBHZV5HSRK5K+2bJD7rFJAoNorbHvB4Q1zvIAk7eCMjkr2GPCPHx9PRB9vJFg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@joshwooding/vite-plugin-react-docgen-typescript": "0.5.0",
- "@rollup/pluginutils": "^5.0.2",
- "@storybook/builder-vite": "8.6.14",
- "@storybook/react": "8.6.14",
- "find-up": "^5.0.0",
- "magic-string": "^0.30.0",
- "react-docgen": "^7.0.0",
- "resolve": "^1.22.8",
- "tsconfig-paths": "^4.2.0"
- },
- "engines": {
- "node": ">=18.0.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/storybook"
- },
- "peerDependencies": {
- "@storybook/test": "8.6.14",
- "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.14",
- "vite": "^4.0.0 || ^5.0.0 || ^6.0.0"
- },
- "peerDependenciesMeta": {
- "@storybook/test": {
- "optional": true
- }
- }
- },
- "node_modules/@storybook/test": {
- "version": "8.6.14",
- "resolved": "https://registry.npmjs.org/@storybook/test/-/test-8.6.14.tgz",
- "integrity": "sha512-GkPNBbbZmz+XRdrhMtkxPotCLOQ1BaGNp/gFZYdGDk2KmUWBKmvc5JxxOhtoXM2703IzNFlQHSSNnhrDZYuLlw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@storybook/global": "^5.0.0",
- "@storybook/instrumenter": "8.6.14",
- "@testing-library/dom": "10.4.0",
- "@testing-library/jest-dom": "6.5.0",
- "@testing-library/user-event": "14.5.2",
- "@vitest/expect": "2.0.5",
- "@vitest/spy": "2.0.5"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/storybook"
- },
- "peerDependencies": {
- "storybook": "^8.6.14"
- }
- },
- "node_modules/@storybook/theming": {
- "version": "8.6.14",
- "resolved": "https://registry.npmjs.org/@storybook/theming/-/theming-8.6.14.tgz",
- "integrity": "sha512-r4y+LsiB37V5hzpQo+BM10PaCsp7YlZ0YcZzQP1OCkPlYXmUAFy2VvDKaFRpD8IeNPKug2u4iFm/laDEbs03dg==",
- "dev": true,
- "license": "MIT",
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/storybook"
- },
- "peerDependencies": {
- "storybook": "^8.2.0 || ^8.3.0-0 || ^8.4.0-0 || ^8.5.0-0 || ^8.6.0-0"
- }
- },
"node_modules/@svgr/babel-plugin-add-jsx-attribute": {
"version": "8.0.0",
"resolved": "https://registry.npmjs.org/@svgr/babel-plugin-add-jsx-attribute/-/babel-plugin-add-jsx-attribute-8.0.0.tgz",
@@ -10093,82 +9456,6 @@
"url": "https://github.com/sponsors/tannerlinsley"
}
},
- "node_modules/@testing-library/dom": {
- "version": "10.4.0",
- "resolved": "https://registry.npmjs.org/@testing-library/dom/-/dom-10.4.0.tgz",
- "integrity": "sha512-pemlzrSESWbdAloYml3bAJMEfNh1Z7EduzqPKprCH5S341frlpYnUEW0H72dLxa6IsYr+mPno20GiSm+h9dEdQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/code-frame": "^7.10.4",
- "@babel/runtime": "^7.12.5",
- "@types/aria-query": "^5.0.1",
- "aria-query": "5.3.0",
- "chalk": "^4.1.0",
- "dom-accessibility-api": "^0.5.9",
- "lz-string": "^1.5.0",
- "pretty-format": "^27.0.2"
- },
- "engines": {
- "node": ">=18"
- }
- },
- "node_modules/@testing-library/jest-dom": {
- "version": "6.5.0",
- "resolved": "https://registry.npmjs.org/@testing-library/jest-dom/-/jest-dom-6.5.0.tgz",
- "integrity": "sha512-xGGHpBXYSHUUr6XsKBfs85TWlYKpTc37cSBBVrXcib2MkHLboWlkClhWF37JKlDb9KEq3dHs+f2xR7XJEWGBxA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@adobe/css-tools": "^4.4.0",
- "aria-query": "^5.0.0",
- "chalk": "^3.0.0",
- "css.escape": "^1.5.1",
- "dom-accessibility-api": "^0.6.3",
- "lodash": "^4.17.21",
- "redent": "^3.0.0"
- },
- "engines": {
- "node": ">=14",
- "npm": ">=6",
- "yarn": ">=1"
- }
- },
- "node_modules/@testing-library/jest-dom/node_modules/chalk": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz",
- "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/@testing-library/jest-dom/node_modules/dom-accessibility-api": {
- "version": "0.6.3",
- "resolved": "https://registry.npmjs.org/dom-accessibility-api/-/dom-accessibility-api-0.6.3.tgz",
- "integrity": "sha512-7ZgogeTnjuHbo+ct10G9Ffp0mif17idi0IyWNVA/wcwcm7NPOD/WEHVP3n7n3MhXqxoIYm8d6MuZohYWIZ4T3w==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/@testing-library/user-event": {
- "version": "14.5.2",
- "resolved": "https://registry.npmjs.org/@testing-library/user-event/-/user-event-14.5.2.tgz",
- "integrity": "sha512-YAh82Wh4TIrxYLmfGcixwD18oIjyC1pFQC2Y01F2lzV2HTMiYrI0nze0FD0ocB//CKS/7jIUgae+adPqxK5yCQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=12",
- "npm": ">=6"
- },
- "peerDependencies": {
- "@testing-library/dom": ">=7.21.4"
- }
- },
"node_modules/@tootallnate/once": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz",
@@ -10216,58 +9503,6 @@
"dev": true,
"license": "MIT"
},
- "node_modules/@types/aria-query": {
- "version": "5.0.4",
- "resolved": "https://registry.npmjs.org/@types/aria-query/-/aria-query-5.0.4.tgz",
- "integrity": "sha512-rfT93uj5s0PRL7EzccGMs3brplhcrghnDoV26NqKhCAS1hVo+WdNsPvE/yb6ilfr5hi2MEk6d5EWJTKdxg8jVw==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/@types/babel__core": {
- "version": "7.20.5",
- "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz",
- "integrity": "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/parser": "^7.20.7",
- "@babel/types": "^7.20.7",
- "@types/babel__generator": "*",
- "@types/babel__template": "*",
- "@types/babel__traverse": "*"
- }
- },
- "node_modules/@types/babel__generator": {
- "version": "7.27.0",
- "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.27.0.tgz",
- "integrity": "sha512-ufFd2Xi92OAVPYsy+P4n7/U7e68fex0+Ee8gSG9KX7eo084CWiQ4sdxktvdl0bOPupXtVJPY19zk6EwWqUQ8lg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/types": "^7.0.0"
- }
- },
- "node_modules/@types/babel__template": {
- "version": "7.4.4",
- "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz",
- "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/parser": "^7.1.0",
- "@babel/types": "^7.0.0"
- }
- },
- "node_modules/@types/babel__traverse": {
- "version": "7.28.0",
- "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.28.0.tgz",
- "integrity": "sha512-8PvcXf70gTDZBgt9ptxJ8elBeBjcLOAcOtoO/mPJjtji1+CdGbHgm77om1GrsPxsiE+uXIpNSK64UYaIwQXd4Q==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/types": "^7.28.2"
- }
- },
"node_modules/@types/body-parser": {
"version": "1.19.6",
"resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.6.tgz",
@@ -10642,13 +9877,6 @@
"dev": true,
"license": "MIT"
},
- "node_modules/@types/doctrine": {
- "version": "0.0.9",
- "resolved": "https://registry.npmjs.org/@types/doctrine/-/doctrine-0.0.9.tgz",
- "integrity": "sha512-eOIHzCUSH7SMfonMG1LsC2f8vxBFtho6NGBznK41R84YzPuvSBzrhEps33IsQiOW9+VL6NQ9DbjQJznk/S4uRA==",
- "dev": true,
- "license": "MIT"
- },
"node_modules/@types/eslint": {
"version": "9.6.1",
"resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-9.6.1.tgz",
@@ -11514,61 +10742,6 @@
"vitest": "3.2.4"
}
},
- "node_modules/@vitest/expect": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-2.0.5.tgz",
- "integrity": "sha512-yHZtwuP7JZivj65Gxoi8upUN2OzHTi3zVfjwdpu2WrvCZPLwsJ2Ey5ILIPccoW23dd/zQBlJ4/dhi7DWNyXCpA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@vitest/spy": "2.0.5",
- "@vitest/utils": "2.0.5",
- "chai": "^5.1.1",
- "tinyrainbow": "^1.2.0"
- },
- "funding": {
- "url": "https://opencollective.com/vitest"
- }
- },
- "node_modules/@vitest/expect/node_modules/@vitest/pretty-format": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-2.0.5.tgz",
- "integrity": "sha512-h8k+1oWHfwTkyTkb9egzwNMfJAEx4veaPSnMeKbVSjp4euqGSbQlm5+6VHwTr7u4FJslVVsUG5nopCaAYdOmSQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "tinyrainbow": "^1.2.0"
- },
- "funding": {
- "url": "https://opencollective.com/vitest"
- }
- },
- "node_modules/@vitest/expect/node_modules/@vitest/utils": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-2.0.5.tgz",
- "integrity": "sha512-d8HKbqIcya+GR67mkZbrzhS5kKhtp8dQLcmRZLGTscGVg7yImT82cIrhtn2L8+VujWcy6KZweApgNmPsTAO/UQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@vitest/pretty-format": "2.0.5",
- "estree-walker": "^3.0.3",
- "loupe": "^3.1.1",
- "tinyrainbow": "^1.2.0"
- },
- "funding": {
- "url": "https://opencollective.com/vitest"
- }
- },
- "node_modules/@vitest/expect/node_modules/tinyrainbow": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/tinyrainbow/-/tinyrainbow-1.2.0.tgz",
- "integrity": "sha512-weEDEq7Z5eTHPDh4xjX789+fHfF+P8boiFB+0vbWzpbnbsEr/GRaohi/uMKxg8RZMXnl1ItAi/IUHWMsjDV7kQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=14.0.0"
- }
- },
"node_modules/@vitest/mocker": {
"version": "3.2.4",
"resolved": "https://registry.npmjs.org/@vitest/mocker/-/mocker-3.2.4.tgz",
@@ -11619,29 +10792,6 @@
"node": ">=14.0.0"
}
},
- "node_modules/@vitest/pretty-format": {
- "version": "2.1.9",
- "resolved": "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-2.1.9.tgz",
- "integrity": "sha512-KhRIdGV2U9HOUzxfiHmY8IFHTdqtOhIzCpd8WRdJiE7D/HUcZVD0EgQCVjm+Q9gkUXWgBvMmTtZgIG48wq7sOQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "tinyrainbow": "^1.2.0"
- },
- "funding": {
- "url": "https://opencollective.com/vitest"
- }
- },
- "node_modules/@vitest/pretty-format/node_modules/tinyrainbow": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/tinyrainbow/-/tinyrainbow-1.2.0.tgz",
- "integrity": "sha512-weEDEq7Z5eTHPDh4xjX789+fHfF+P8boiFB+0vbWzpbnbsEr/GRaohi/uMKxg8RZMXnl1ItAi/IUHWMsjDV7kQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=14.0.0"
- }
- },
"node_modules/@vitest/runner": {
"version": "3.2.4",
"resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-3.2.4.tgz",
@@ -11713,44 +10863,6 @@
"url": "https://opencollective.com/vitest"
}
},
- "node_modules/@vitest/spy": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-2.0.5.tgz",
- "integrity": "sha512-c/jdthAhvJdpfVuaexSrnawxZz6pywlTPe84LUB2m/4t3rl2fTo9NFGBG4oWgaD+FTgDDV8hJ/nibT7IfH3JfA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "tinyspy": "^3.0.0"
- },
- "funding": {
- "url": "https://opencollective.com/vitest"
- }
- },
- "node_modules/@vitest/utils": {
- "version": "2.1.9",
- "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-2.1.9.tgz",
- "integrity": "sha512-v0psaMSkNJ3A2NMrUEHFRzJtDPFn+/VWZ5WxImB21T9fjucJRmS7xCS3ppEnARb9y11OAzaD+P2Ps+b+BGX5iQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@vitest/pretty-format": "2.1.9",
- "loupe": "^3.1.2",
- "tinyrainbow": "^1.2.0"
- },
- "funding": {
- "url": "https://opencollective.com/vitest"
- }
- },
- "node_modules/@vitest/utils/node_modules/tinyrainbow": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/tinyrainbow/-/tinyrainbow-1.2.0.tgz",
- "integrity": "sha512-weEDEq7Z5eTHPDh4xjX789+fHfF+P8boiFB+0vbWzpbnbsEr/GRaohi/uMKxg8RZMXnl1ItAi/IUHWMsjDV7kQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=14.0.0"
- }
- },
"node_modules/@volar/language-core": {
"version": "2.4.23",
"resolved": "https://registry.npmjs.org/@volar/language-core/-/language-core-2.4.23.tgz",
@@ -12539,16 +11651,6 @@
"integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==",
"license": "Python-2.0"
},
- "node_modules/aria-query": {
- "version": "5.3.0",
- "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.3.0.tgz",
- "integrity": "sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==",
- "dev": true,
- "license": "Apache-2.0",
- "dependencies": {
- "dequal": "^2.0.3"
- }
- },
"node_modules/array-flatten": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz",
@@ -12585,19 +11687,6 @@
"node": ">=12"
}
},
- "node_modules/ast-types": {
- "version": "0.16.1",
- "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.16.1.tgz",
- "integrity": "sha512-6t10qk83GOG8p0vKmaCr8eiilZwO171AvbROMtvvNiwrTly62t+7XkA8RdIIVbpMhCASAsxgAzdRSwh6nw/5Dg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "tslib": "^2.0.1"
- },
- "engines": {
- "node": ">=4"
- }
- },
"node_modules/astral-regex": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz",
@@ -12688,22 +11777,6 @@
"postcss": "^8.1.0"
}
},
- "node_modules/available-typed-arrays": {
- "version": "1.0.7",
- "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz",
- "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "possible-typed-array-names": "^1.0.0"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
"node_modules/b4a": {
"version": "1.7.1",
"resolved": "https://registry.npmjs.org/b4a/-/b4a-1.7.1.tgz",
@@ -12927,19 +12000,6 @@
"integrity": "sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==",
"license": "MIT"
},
- "node_modules/better-opn": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/better-opn/-/better-opn-3.0.2.tgz",
- "integrity": "sha512-aVNobHnJqLiUelTaHat9DZ1qM2w0C0Eym4LPI/3JxOnSokGVdsl1T1kN7TFvsEAD8G47A6VKQ0TVHqbBnYMJlQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "open": "^8.0.4"
- },
- "engines": {
- "node": ">=12.0.0"
- }
- },
"node_modules/big.js": {
"version": "5.2.2",
"resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz",
@@ -13114,12 +12174,6 @@
"node": ">=8"
}
},
- "node_modules/browser-assert": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/browser-assert/-/browser-assert-1.2.1.tgz",
- "integrity": "sha512-nfulgvOR6S4gt9UKCeGJOuSGBPGiFT6oQ/2UBnvTY/5aQ1PnksW72fhZkM30DzoRRv2WpwZf1vHHEr3mtuXIWQ==",
- "dev": true
- },
"node_modules/browserslist": {
"version": "4.26.0",
"resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.26.0.tgz",
@@ -13753,30 +12807,6 @@
"node": ">=10"
}
},
- "node_modules/chromatic": {
- "version": "11.29.0",
- "resolved": "https://registry.npmjs.org/chromatic/-/chromatic-11.29.0.tgz",
- "integrity": "sha512-yisBlntp9hHVj19lIQdpTlcYIXuU9H/DbFuu6tyWHmj6hWT2EtukCCcxYXL78XdQt1vm2GfIrtgtKpj/Rzmo4A==",
- "dev": true,
- "license": "MIT",
- "bin": {
- "chroma": "dist/bin.js",
- "chromatic": "dist/bin.js",
- "chromatic-cli": "dist/bin.js"
- },
- "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
- }
- }
- },
"node_modules/chrome-trace-event": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.4.tgz",
@@ -14955,13 +13985,6 @@
"url": "https://github.com/sponsors/fb55"
}
},
- "node_modules/css.escape": {
- "version": "1.5.1",
- "resolved": "https://registry.npmjs.org/css.escape/-/css.escape-1.5.1.tgz",
- "integrity": "sha512-YUifsXXuknHlUsmlgyY0PKzgPOr7/FjCePfHNt0jxm83wHZi44VDMQ7/fGNkjY3/jV1MC+1CmZbaHzugyeRtpg==",
- "dev": true,
- "license": "MIT"
- },
"node_modules/cssdb": {
"version": "8.4.0",
"resolved": "https://registry.npmjs.org/cssdb/-/cssdb-8.4.0.tgz",
@@ -16072,13 +15095,6 @@
"sass": "^1.30.0"
}
},
- "node_modules/dom-accessibility-api": {
- "version": "0.5.16",
- "resolved": "https://registry.npmjs.org/dom-accessibility-api/-/dom-accessibility-api-0.5.16.tgz",
- "integrity": "sha512-X7BJ2yElsnOJ30pZF4uIIDfBEVgF4XEBxL9Bxhy6dnrm5hkzqmsWHGTiHqRiITNhMyFLyAiWndIJP7Z1NTteDg==",
- "dev": true,
- "license": "MIT"
- },
"node_modules/dom-converter": {
"version": "0.2.0",
"resolved": "https://registry.npmjs.org/dom-converter/-/dom-converter-0.2.0.tgz",
@@ -16767,19 +15783,6 @@
"@esbuild/win32-x64": "0.25.9"
}
},
- "node_modules/esbuild-register": {
- "version": "3.6.0",
- "resolved": "https://registry.npmjs.org/esbuild-register/-/esbuild-register-3.6.0.tgz",
- "integrity": "sha512-H2/S7Pm8a9CL1uhp9OvjwrBh5Pvx0H8qVOxNu8Wed9Y7qv56MPtq+GGM8RJpq6glYJn9Wspr8uw7l55uyinNeg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "debug": "^4.3.4"
- },
- "peerDependencies": {
- "esbuild": ">=0.12 <1"
- }
- },
"node_modules/escalade": {
"version": "3.2.0",
"resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz",
@@ -17739,16 +16742,6 @@
"node": ">=10"
}
},
- "node_modules/filesize": {
- "version": "10.1.6",
- "resolved": "https://registry.npmjs.org/filesize/-/filesize-10.1.6.tgz",
- "integrity": "sha512-sJslQKU2uM33qH5nqewAwVB2QgR6w1aMNsYUp3aN5rMRyXEwJGmZvaWzeJFNTOXWlHQyBFCWrdj3fV/fsTOX8w==",
- "dev": true,
- "license": "BSD-3-Clause",
- "engines": {
- "node": ">= 10.4.0"
- }
- },
"node_modules/fill-range": {
"version": "7.1.1",
"resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz",
@@ -17884,22 +16877,6 @@
}
}
},
- "node_modules/for-each": {
- "version": "0.3.5",
- "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.5.tgz",
- "integrity": "sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "is-callable": "^1.2.7"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
"node_modules/foreground-child": {
"version": "3.3.1",
"resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.1.tgz",
@@ -19611,23 +18588,6 @@
"url": "https://github.com/sponsors/wooorm"
}
},
- "node_modules/is-arguments": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.2.0.tgz",
- "integrity": "sha512-7bVbi0huj/wrIAOzb8U1aszg9kdi3KN/CyU19CTI7tAoZYEZoL9yCDXpbXN+uPsuWnP02cyug1gleqq+TU+YCA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bound": "^1.0.2",
- "has-tostringtag": "^1.0.2"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
"node_modules/is-arrayish": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz",
@@ -19646,19 +18606,6 @@
"node": ">=8"
}
},
- "node_modules/is-callable": {
- "version": "1.2.7",
- "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz",
- "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
"node_modules/is-ci": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/is-ci/-/is-ci-3.0.1.tgz",
@@ -19745,25 +18692,6 @@
"node": ">=8"
}
},
- "node_modules/is-generator-function": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.1.0.tgz",
- "integrity": "sha512-nPUB5km40q9e8UfN/Zc24eLlzdSf9OfKByBw9CIdw4H1giPMeA0OIJvbchsCu4npfI2QcMVBsGEBHKZ7wLTWmQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bound": "^1.0.3",
- "get-proto": "^1.0.0",
- "has-tostringtag": "^1.0.2",
- "safe-regex-test": "^1.1.0"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
"node_modules/is-glob": {
"version": "4.0.3",
"resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz",
@@ -19889,25 +18817,6 @@
"node": ">=0.10.0"
}
},
- "node_modules/is-regex": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.2.1.tgz",
- "integrity": "sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bound": "^1.0.2",
- "gopd": "^1.2.0",
- "has-tostringtag": "^1.0.2",
- "hasown": "^2.0.2"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
"node_modules/is-regexp": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/is-regexp/-/is-regexp-1.0.0.tgz",
@@ -19929,22 +18838,6 @@
"url": "https://github.com/sponsors/sindresorhus"
}
},
- "node_modules/is-typed-array": {
- "version": "1.1.15",
- "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.15.tgz",
- "integrity": "sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "which-typed-array": "^1.1.16"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
"node_modules/is-typedarray": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz",
@@ -20250,16 +19143,6 @@
"js-yaml": "bin/js-yaml.js"
}
},
- "node_modules/jsdoc-type-pratt-parser": {
- "version": "4.8.0",
- "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-4.8.0.tgz",
- "integrity": "sha512-iZ8Bdb84lWRuGHamRXFyML07r21pcwBrLkHEuHgEY5UbCouBwv7ECknDRKzsQIXMiqpPymqtIf8TC/shYKB5rw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=12.0.0"
- }
- },
"node_modules/jsesc": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz",
@@ -21026,16 +19909,6 @@
"react": "^16.5.1 || ^17.0.0 || ^18.0.0 || ^19.0.0"
}
},
- "node_modules/lz-string": {
- "version": "1.5.0",
- "resolved": "https://registry.npmjs.org/lz-string/-/lz-string-1.5.0.tgz",
- "integrity": "sha512-h5bgJWpxJNswbU7qCrV0tIKQCaS3blPDrqKWx+QxzuzL1zGUzij9XCWLrSLsJPu5t+eWA/ycetzYAO5IOMcWAQ==",
- "dev": true,
- "license": "MIT",
- "bin": {
- "lz-string": "bin/bin.js"
- }
- },
"node_modules/magic-string": {
"version": "0.30.21",
"resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.21.tgz",
@@ -21181,13 +20054,6 @@
"dev": true,
"license": "ISC"
},
- "node_modules/map-or-similar": {
- "version": "1.5.0",
- "resolved": "https://registry.npmjs.org/map-or-similar/-/map-or-similar-1.5.0.tgz",
- "integrity": "sha512-0aF7ZmVon1igznGI4VS30yugpduQW3y3GkcgGJOp7d8x8QrizhigUxjI/m2UojsXXto+jLAH3KSz+xOJTiORjg==",
- "dev": true,
- "license": "MIT"
- },
"node_modules/markdown-extensions": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/markdown-extensions/-/markdown-extensions-2.0.0.tgz",
@@ -21729,16 +20595,6 @@
"node": ">= 4.0.0"
}
},
- "node_modules/memoizerific": {
- "version": "1.11.3",
- "resolved": "https://registry.npmjs.org/memoizerific/-/memoizerific-1.11.3.tgz",
- "integrity": "sha512-/EuHYwAPdLtXwAwSZkh/Gutery6pD2KYd44oQLhAvQp/50mpyduZh8Q7PYHXTCJ+wuXxt7oij2LXyIJOOYFPog==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "map-or-similar": "^1.5.0"
- }
- },
"node_modules/merge-descriptors": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.3.tgz",
@@ -23750,16 +22606,6 @@
"node": ">=4"
}
},
- "node_modules/min-indent": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz",
- "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=4"
- }
- },
"node_modules/mini-css-extract-plugin": {
"version": "2.9.4",
"resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-2.9.4.tgz",
@@ -25527,29 +24373,6 @@
"points-on-curve": "0.2.0"
}
},
- "node_modules/polished": {
- "version": "4.3.1",
- "resolved": "https://registry.npmjs.org/polished/-/polished-4.3.1.tgz",
- "integrity": "sha512-OBatVyC/N7SCW/FaDHrSd+vn0o5cS855TOmYi4OkdWUMSJCET/xip//ch8xGUvtr3i44X9LVyWwQlRMTN3pwSA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/runtime": "^7.17.8"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/possible-typed-array-names": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.1.0.tgz",
- "integrity": "sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.4"
- }
- },
"node_modules/postcss": {
"version": "8.5.6",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.6.tgz",
@@ -27242,41 +26065,6 @@
"renderkid": "^3.0.0"
}
},
- "node_modules/pretty-format": {
- "version": "27.5.1",
- "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz",
- "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ansi-regex": "^5.0.1",
- "ansi-styles": "^5.0.0",
- "react-is": "^17.0.1"
- },
- "engines": {
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
- }
- },
- "node_modules/pretty-format/node_modules/ansi-styles": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz",
- "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
- "node_modules/pretty-format/node_modules/react-is": {
- "version": "17.0.2",
- "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz",
- "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==",
- "dev": true,
- "license": "MIT"
- },
"node_modules/pretty-time": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/pretty-time/-/pretty-time-1.1.0.tgz",
@@ -27318,16 +26106,6 @@
"node": "^12.13.0 || ^14.15.0 || >=16.0.0"
}
},
- "node_modules/process": {
- "version": "0.11.10",
- "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz",
- "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.6.0"
- }
- },
"node_modules/process-nextick-args": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz",
@@ -27617,22 +26395,6 @@
"node": ">=0.10.0"
}
},
- "node_modules/react-confetti": {
- "version": "6.4.0",
- "resolved": "https://registry.npmjs.org/react-confetti/-/react-confetti-6.4.0.tgz",
- "integrity": "sha512-5MdGUcqxrTU26I2EU7ltkWPwxvucQTuqMm8dUz72z2YMqTD6s9vMcDUysk7n9jnC+lXuCPeJJ7Knf98VEYE9Rg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "tween-functions": "^1.2.0"
- },
- "engines": {
- "node": ">=16"
- },
- "peerDependencies": {
- "react": "^16.3.0 || ^17.0.1 || ^18.0.0 || ^19.0.0"
- }
- },
"node_modules/react-dnd": {
"version": "16.0.1",
"resolved": "https://registry.npmjs.org/react-dnd/-/react-dnd-16.0.1.tgz",
@@ -27672,38 +26434,6 @@
"dnd-core": "^16.0.1"
}
},
- "node_modules/react-docgen": {
- "version": "7.1.1",
- "resolved": "https://registry.npmjs.org/react-docgen/-/react-docgen-7.1.1.tgz",
- "integrity": "sha512-hlSJDQ2synMPKFZOsKo9Hi8WWZTC7POR8EmWvTSjow+VDgKzkmjQvFm2fk0tmRw+f0vTOIYKlarR0iL4996pdg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/core": "^7.18.9",
- "@babel/traverse": "^7.18.9",
- "@babel/types": "^7.18.9",
- "@types/babel__core": "^7.18.0",
- "@types/babel__traverse": "^7.18.0",
- "@types/doctrine": "^0.0.9",
- "@types/resolve": "^1.20.2",
- "doctrine": "^3.0.0",
- "resolve": "^1.22.1",
- "strip-indent": "^4.0.0"
- },
- "engines": {
- "node": ">=16.14.0"
- }
- },
- "node_modules/react-docgen-typescript": {
- "version": "2.4.0",
- "resolved": "https://registry.npmjs.org/react-docgen-typescript/-/react-docgen-typescript-2.4.0.tgz",
- "integrity": "sha512-ZtAp5XTO5HRzQctjPU0ybY0RRCQO19X/8fxn3w7y2VVTUbGHDKULPTL4ky3vB05euSgG5NpALhEhDPvQ56wvXg==",
- "dev": true,
- "license": "MIT",
- "peerDependencies": {
- "typescript": ">= 4.3.x"
- }
- },
"node_modules/react-dom": {
"version": "19.2.0",
"resolved": "https://registry.npmjs.org/react-dom/-/react-dom-19.2.0.tgz",
@@ -28024,33 +26754,6 @@
"url": "https://paulmillr.com/funding/"
}
},
- "node_modules/recast": {
- "version": "0.23.11",
- "resolved": "https://registry.npmjs.org/recast/-/recast-0.23.11.tgz",
- "integrity": "sha512-YTUo+Flmw4ZXiWfQKGcwwc11KnoRAYgzAE2E7mXKCjSviTKShtxBsN6YUUBB2gtaBzKzeKunxhUwNHQuRryhWA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ast-types": "^0.16.1",
- "esprima": "~4.0.0",
- "source-map": "~0.6.1",
- "tiny-invariant": "^1.3.3",
- "tslib": "^2.0.1"
- },
- "engines": {
- "node": ">= 4"
- }
- },
- "node_modules/recast/node_modules/source-map": {
- "version": "0.6.1",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
- "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
- "dev": true,
- "license": "BSD-3-Clause",
- "engines": {
- "node": ">=0.10.0"
- }
- },
"node_modules/recharts": {
"version": "2.15.4",
"resolved": "https://registry.npmjs.org/recharts/-/recharts-2.15.4.tgz",
@@ -28156,33 +26859,6 @@
"url": "https://opencollective.com/unified"
}
},
- "node_modules/redent": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz",
- "integrity": "sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "indent-string": "^4.0.0",
- "strip-indent": "^3.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/redent/node_modules/strip-indent": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz",
- "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "min-indent": "^1.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
"node_modules/redux": {
"version": "4.2.1",
"resolved": "https://registry.npmjs.org/redux/-/redux-4.2.1.tgz",
@@ -29817,24 +28493,6 @@
],
"license": "MIT"
},
- "node_modules/safe-regex-test": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.1.0.tgz",
- "integrity": "sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bound": "^1.0.2",
- "es-errors": "^1.3.0",
- "is-regex": "^1.2.1"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
"node_modules/safe-stable-stringify": {
"version": "2.5.0",
"resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.5.0.tgz",
@@ -31031,50 +29689,6 @@
"integrity": "sha512-UGvjygr6F6tpH7o2qyqR6QYpwraIjKSdtzyBdyytFOHmPZY917kwdwLG0RbOjWOnKmnm3PeHjaoLLMie7kPLQw==",
"license": "MIT"
},
- "node_modules/storybook": {
- "version": "8.6.14",
- "resolved": "https://registry.npmjs.org/storybook/-/storybook-8.6.14.tgz",
- "integrity": "sha512-sVKbCj/OTx67jhmauhxc2dcr1P+yOgz/x3h0krwjyMgdc5Oubvxyg4NYDZmzAw+ym36g/lzH8N0Ccp4dwtdfxw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@storybook/core": "8.6.14"
- },
- "bin": {
- "getstorybook": "bin/index.cjs",
- "sb": "bin/index.cjs",
- "storybook": "bin/index.cjs"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/storybook"
- },
- "peerDependencies": {
- "prettier": "^2 || ^3"
- },
- "peerDependenciesMeta": {
- "prettier": {
- "optional": true
- }
- }
- },
- "node_modules/storybook-dark-mode": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/storybook-dark-mode/-/storybook-dark-mode-4.0.2.tgz",
- "integrity": "sha512-zjcwwQ01R5t1VsakA6alc2JDIRVtavryW8J3E3eKLDIlAMcvsgtpxlelWkZs2cuNspk6Z10XzhQVrUWtYc3F0w==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@storybook/components": "^8.0.0",
- "@storybook/core-events": "^8.0.0",
- "@storybook/global": "^5.0.0",
- "@storybook/icons": "^1.2.5",
- "@storybook/manager-api": "^8.0.0",
- "@storybook/theming": "^8.0.0",
- "fast-deep-equal": "^3.1.3",
- "memoizerific": "^1.11.3"
- }
- },
"node_modules/streamdown": {
"version": "1.3.0",
"resolved": "https://registry.npmjs.org/streamdown/-/streamdown-1.3.0.tgz",
@@ -31282,16 +29896,6 @@
"url": "https://github.com/chalk/ansi-regex?sponsor=1"
}
},
- "node_modules/strip-bom": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz",
- "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=4"
- }
- },
"node_modules/strip-bom-string": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/strip-bom-string/-/strip-bom-string-1.0.0.tgz",
@@ -31310,19 +29914,6 @@
"node": ">=6"
}
},
- "node_modules/strip-indent": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-4.1.0.tgz",
- "integrity": "sha512-OA95x+JPmL7kc7zCu+e+TeYxEiaIyndRx0OrBcK2QPPH09oAndr2ALvymxWA+Lx1PYYvFUm4O63pRkdJAaW96w==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
"node_modules/strip-json-comments": {
"version": "3.1.1",
"resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz",
@@ -31956,16 +30547,6 @@
"node": ">=14.0.0"
}
},
- "node_modules/tinyspy": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/tinyspy/-/tinyspy-3.0.2.tgz",
- "integrity": "sha512-n1cw8k1k0x4pgA2+9XrOkFydTerNcJ1zWCO5Nn9scWHTD+5tp8dghT2x1uduQePZTZgd3Tupf+x9BxJjeJi77Q==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=14.0.0"
- }
- },
"node_modules/tmp": {
"version": "0.2.5",
"resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.5.tgz",
@@ -32149,21 +30730,6 @@
}
}
},
- "node_modules/tsconfig-paths": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-4.2.0.tgz",
- "integrity": "sha512-NoZ4roiN7LnbKn9QqE1amc9DJfzvZXxF4xDavcOWt1BPkdx+m+0gJuPM+S0vCe7zTJMYUP0R8pO2XMr+Y8oLIg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "json5": "^2.2.2",
- "minimist": "^1.2.6",
- "strip-bom": "^3.0.0"
- },
- "engines": {
- "node": ">=6"
- }
- },
"node_modules/tslib": {
"version": "2.8.1",
"resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz",
@@ -32206,13 +30772,6 @@
"node": "*"
}
},
- "node_modules/tween-functions": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/tween-functions/-/tween-functions-1.2.0.tgz",
- "integrity": "sha512-PZBtLYcCLtEcjL14Fzb1gSxPBeL7nWvGhO5ZFPGqziCcr8uvHp0NDmdjBchp6KHL+tExcg0m3NISmKxhU394dA==",
- "dev": true,
- "license": "BSD"
- },
"node_modules/type-check": {
"version": "0.4.0",
"resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz",
@@ -32815,20 +31374,6 @@
"node": ">= 0.8"
}
},
- "node_modules/unplugin": {
- "version": "1.16.1",
- "resolved": "https://registry.npmjs.org/unplugin/-/unplugin-1.16.1.tgz",
- "integrity": "sha512-4/u/j4FrCKdi17jaxuJA0jClGxB1AvU2hw/IuayPc4ay1XGaJs/rbb4v5WKwAjNifjmXK9PIFyuPiaK8azyR9w==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "acorn": "^8.14.0",
- "webpack-virtual-modules": "^0.6.2"
- },
- "engines": {
- "node": ">=14.0.0"
- }
- },
"node_modules/update-browserslist-db": {
"version": "1.1.3",
"resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.3.tgz",
@@ -33012,20 +31557,6 @@
"dev": true,
"license": "(WTFPL OR MIT)"
},
- "node_modules/util": {
- "version": "0.12.5",
- "resolved": "https://registry.npmjs.org/util/-/util-0.12.5.tgz",
- "integrity": "sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "inherits": "^2.0.3",
- "is-arguments": "^1.0.4",
- "is-generator-function": "^1.0.7",
- "is-typed-array": "^1.1.3",
- "which-typed-array": "^1.1.2"
- }
- },
"node_modules/util-deprecate": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
@@ -33056,20 +31587,6 @@
"node": ">= 0.4.0"
}
},
- "node_modules/uuid": {
- "version": "9.0.1",
- "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz",
- "integrity": "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==",
- "dev": true,
- "funding": [
- "https://github.com/sponsors/broofa",
- "https://github.com/sponsors/ctavan"
- ],
- "license": "MIT",
- "bin": {
- "uuid": "dist/bin/uuid"
- }
- },
"node_modules/uvu": {
"version": "0.5.6",
"resolved": "https://registry.npmjs.org/uvu/-/uvu-0.5.6.tgz",
@@ -34091,13 +32608,6 @@
"node": ">=10.13.0"
}
},
- "node_modules/webpack-virtual-modules": {
- "version": "0.6.2",
- "resolved": "https://registry.npmjs.org/webpack-virtual-modules/-/webpack-virtual-modules-0.6.2.tgz",
- "integrity": "sha512-66/V2i5hQanC51vBQKPH4aI8NMAcBW59FVBs+rC7eGHupMyfn34q7rZIE+ETlJ+XTevqfUhVVBgSUNSW2flEUQ==",
- "dev": true,
- "license": "MIT"
- },
"node_modules/webpack/node_modules/eslint-scope": {
"version": "5.1.1",
"resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz",
@@ -34242,28 +32752,6 @@
"node": ">= 8"
}
},
- "node_modules/which-typed-array": {
- "version": "1.1.19",
- "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.19.tgz",
- "integrity": "sha512-rEvr90Bck4WZt9HHFC4DJMsjvu7x+r6bImz0/BrbWb7A2djJ8hnZMrWnHo9F8ssv0OMErasDhftrfROTyqSDrw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "available-typed-arrays": "^1.0.7",
- "call-bind": "^1.0.8",
- "call-bound": "^1.0.4",
- "for-each": "^0.3.5",
- "get-proto": "^1.0.1",
- "gopd": "^1.2.0",
- "has-tostringtag": "^1.0.2"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
"node_modules/why-is-node-running": {
"version": "2.3.0",
"resolved": "https://registry.npmjs.org/why-is-node-running/-/why-is-node-running-2.3.0.tgz",
diff --git a/package.json b/package.json
index 373a614b5b..5011858648 100644
--- a/package.json
+++ b/package.json
@@ -23,25 +23,13 @@
"start": "electron-vite preview",
"build:dev": "electron-vite build --mode development",
"build:prod": "electron-vite build --mode production",
- "storybook": "storybook dev -p 6006 --no-open",
- "build-storybook": "storybook build",
"coverage": "vitest run --coverage",
"test": "vitest",
"postinstall": "electron-builder install-app-deps"
},
"devDependencies": {
- "@chromatic-com/storybook": "^3.2.7",
"@eslint/js": "^8.57.0",
"@rollup/plugin-node-resolve": "^16.0.3",
- "@storybook/addon-essentials": "^8.6.14",
- "@storybook/addon-interactions": "^8.6.14",
- "@storybook/addon-links": "^8.6.14",
- "@storybook/blocks": "^8.6.14",
- "@storybook/builder-vite": "^8.6.14",
- "@storybook/react": "^8.6.14",
- "@storybook/react-vite": "^8.6.14",
- "@storybook/test": "^8.6.14",
- "@storybook/theming": "^8.6.14",
"@tailwindcss/vite": "^4.1.17",
"@types/color": "^4.2.0",
"@types/css-tree": "^2",
@@ -72,8 +60,6 @@
"prettier-plugin-jsdoc": "^1.5.0",
"prettier-plugin-organize-imports": "^4.3.0",
"sass": "1.91.0",
- "storybook": "^8.6.14",
- "storybook-dark-mode": "^4.0.2",
"tailwindcss": "^4.1.17",
"tailwindcss-animate": "^1.0.7",
"ts-node": "^10.9.2",