) => {
47 | const prevSlice = prevState[config.name];
48 | const nextSlice = actionFn(...args)(prevSlice);
49 | if (Object.is(prevSlice, nextSlice)) {
50 | return prevState;
51 | }
52 | return { [config.name]: nextSlice };
53 | }) as never);
54 | };
55 | }
56 | }
57 | return state as never;
58 | };
59 | }
60 |
--------------------------------------------------------------------------------
/docs/guides/02_combine-slices-into-single-store.md:
--------------------------------------------------------------------------------
1 | ## Combine slices into single store
2 |
3 | `withSlices` is a utility that allows you to combine multiple slices into a single Zustand store. By using `withSlices`, you can merge different slices of state, each with its own set of actions, into a unified store.
4 |
5 | ```jsx
6 | import { create } from 'zustand';
7 | import { createSlice, withSlices } from 'zustand-slices';
8 |
9 | const countSlice = createSlice({
10 | name: 'count',
11 | value: 0,
12 | actions: {
13 | inc: () => (prev) => prev + 1,
14 | reset: () => () => 0,
15 | },
16 | });
17 |
18 | const textSlice = createSlice({
19 | name: 'text',
20 | value: 'Hello',
21 | actions: {
22 | updateText: (newText: string) => () => newText,
23 | reset: () => () => 'Hello',
24 | },
25 | });
26 |
27 | const useCountStore = create(withSlices(countSlice, textSlice));
28 | ```
29 |
30 | `withSlices` extracts and incorporates the actions defined within each individual slice, enabling access and utilization of all slice-specific actions from the combined store. Additionally, it provides the ability to simultaneously update multiple slices using a single action. As presented in the code snippet above, the `reset` action can reset both `count` and `text` slices. Finally, the `useCountStore` hook can be utilized in any of your components for accessing the store:
31 |
32 | ```jsx
33 | const Counter = () => {
34 | const count = useCountStore((state) => state.count);
35 | const text = useCountStore((state) => state.text);
36 | const { inc, updateText, reset } = useCountStore.getState();
37 | return (
38 | <>
39 |
40 | Count: {count}
41 |
44 |
45 |
46 | updateText(e.target.value)} />
47 |
48 |
49 |
52 |
53 | >
54 | );
55 | };
56 | ```
57 |
58 | Store-level actions can also be attached, in addition to slice-level actions using the `withActions` util. A detailed guide can be found [here](../guides/03_attaching-store-level-actions.md).
59 |
60 | You can also try this example in a codesandbox.io [demo](https://codesandbox.io/s/github/zustandjs/zustand-slices/tree/main/examples/01_counter).
61 |
--------------------------------------------------------------------------------
/docs/guides/03_attaching-store-level-actions.md:
--------------------------------------------------------------------------------
1 | ## Attaching store-level actions
2 |
3 | `withActions` provides the ability to attach store-level actions, in addition to slice-level actions. Furthermore, these actions can utilize individual slice actions.
4 |
5 | Once you've defined your slices, simply integrate `withSlices` with `withActions` to merge your additional store-level actions.
6 |
7 | ```jsx
8 | import { create } from 'zustand';
9 | import { createSlice, withSlices, withActions } from 'zustand-slices';
10 |
11 | const countSlice = createSlice({
12 | name: 'count',
13 | value: 0,
14 | actions: {
15 | 'count/inc': () => (prev) => prev + 1,
16 | 'count/set': (newCount: number) => () => newCount,
17 | reset: () => () => 0,
18 | },
19 | });
20 |
21 | const textSlice = createSlice({
22 | name: 'text',
23 | value: 'Hello',
24 | actions: {
25 | 'text/set': (newText: string) => () => newText,
26 | reset: () => () => 'Hello',
27 | },
28 | });
29 |
30 | const useCountStore = create(
31 | withActions(withSlices(countSlice, textSlice), {
32 | setCountWithTextLength: () => (state) => {
33 | state['count/set'](state.text.length);
34 | },
35 | }),
36 | );
37 | ```
38 |
39 | `withActions` combines the extracted actions defined within each individual slice with your additional store-level actions. The `useCountStore` hook can then be utilized in any of your components for accessing the store:
40 |
41 | ```jsx
42 | const Counter = () => {
43 | const count = useCountStore((state) => state.count);
44 | const text = useCountStore((state) => state.text);
45 | const {
46 | 'count/inc': inc,
47 | 'text/set': updateText,
48 | reset,
49 | setCountWithTextLength,
50 | } = useCountStore.getState();
51 | return (
52 | <>
53 |
54 | Count: {count}
55 |
58 |
59 |
60 | updateText(e.target.value)} />
61 |
62 |
63 |
66 |
67 |
68 |
71 |
72 | >
73 | );
74 | };
75 | ```
76 |
77 | Feel free to experiment with this example in a codesandbox.io [demo](https://codesandbox.io/s/github/zustandjs/zustand-slices/tree/main/examples/03_actions).
78 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "zustand-slices",
3 | "description": "A slice utility for Zustand",
4 | "version": "0.4.0",
5 | "type": "module",
6 | "author": "Daishi Kato",
7 | "repository": {
8 | "type": "git",
9 | "url": "https://github.com/zustandjs/zustand-slices.git"
10 | },
11 | "source": "./src/index.ts",
12 | "main": "./dist/index.js",
13 | "types": "./dist/index.d.ts",
14 | "exports": {
15 | "./package.json": "./package.json",
16 | ".": {
17 | "require": {
18 | "types": "./dist/cjs/index.d.ts",
19 | "default": "./dist/cjs/index.js"
20 | },
21 | "default": {
22 | "types": "./dist/index.d.ts",
23 | "default": "./dist/index.js"
24 | }
25 | },
26 | "./immer": {
27 | "require": {
28 | "types": "./dist/cjs/immer/index.d.ts",
29 | "default": "./dist/cjs/immer/index.js"
30 | },
31 | "default": {
32 | "types": "./dist/immer/index.d.ts",
33 | "default": "./dist/immer/index.js"
34 | }
35 | }
36 | },
37 | "sideEffects": false,
38 | "files": [
39 | "src",
40 | "dist"
41 | ],
42 | "packageManager": "pnpm@9.4.0",
43 | "scripts": {
44 | "compile": "rm -rf dist && pnpm run '/^compile:.*/'",
45 | "compile:esm": "tsc -p tsconfig.esm.json",
46 | "compile:cjs": "tsc -p tsconfig.cjs.json && echo '{\"type\":\"commonjs\"}' > dist/cjs/package.json",
47 | "test": "pnpm run '/^test:.*/'",
48 | "test:format": "prettier -c .",
49 | "test:lint": "eslint .",
50 | "test:types": "tsc -p . --noEmit",
51 | "test:types:examples": "tsc -p examples --noEmit",
52 | "test:spec": "vitest run",
53 | "examples:01_counter": "DIR=01_counter vite",
54 | "examples:02_async": "DIR=02_async vite",
55 | "examples:03_actions": "DIR=03_actions vite",
56 | "examples:04_immer": "DIR=04_immer vite"
57 | },
58 | "keywords": [
59 | "react",
60 | "zustand",
61 | "slices"
62 | ],
63 | "license": "MIT",
64 | "prettier": {
65 | "singleQuote": true
66 | },
67 | "devDependencies": {
68 | "@eslint/js": "^9.19.0",
69 | "@testing-library/jest-dom": "^6.6.3",
70 | "@testing-library/react": "^16.2.0",
71 | "@testing-library/user-event": "^14.6.1",
72 | "@types/node": "^22.10.10",
73 | "@types/react": "^19.0.8",
74 | "@types/react-dom": "^19.0.3",
75 | "eslint": "9.19.0",
76 | "eslint-import-resolver-typescript": "^3.7.0",
77 | "eslint-plugin-import": "^2.31.0",
78 | "eslint-plugin-jsx-a11y": "^6.10.2",
79 | "eslint-plugin-react": "^7.37.4",
80 | "eslint-plugin-react-hooks": "6.0.0-rc.1",
81 | "happy-dom": "^16.7.2",
82 | "prettier": "^3.4.2",
83 | "react": "19.0.0",
84 | "react-dom": "19.0.0",
85 | "ts-expect": "^1.3.0",
86 | "typescript": "^5.7.3",
87 | "typescript-eslint": "^8.21.0",
88 | "vite": "^6.0.11",
89 | "vite-tsconfig-paths": "^5.1.4",
90 | "vitest": "^3.0.4",
91 | "zustand": "^5.0.3",
92 | "zustand-slices": "link:"
93 | },
94 | "peerDependencies": {
95 | "immer": ">=9.0.6",
96 | "react": ">=18.0.0",
97 | "zustand": ">=4.0.0"
98 | },
99 | "peerDependenciesMeta": {
100 | "immer": {
101 | "optional": true
102 | }
103 | }
104 | }
105 |
--------------------------------------------------------------------------------
/tests/04_componentWithActions.spec.tsx:
--------------------------------------------------------------------------------
1 | import { afterEach, expect, test } from 'vitest';
2 | import type { ReactNode } from 'react';
3 | import { create } from 'zustand';
4 | import { cleanup, render, screen } from '@testing-library/react';
5 | import { userEvent } from '@testing-library/user-event';
6 | import { createSlice, withSlices, withActions } from 'zustand-slices';
7 | import createZustandContext from './utils/createZustandContext.js';
8 |
9 | const countSlice = createSlice({
10 | name: 'count',
11 | value: 0,
12 | actions: {
13 | incCount: () => (state) => state + 1,
14 | setCount: (newCount: number) => () => newCount,
15 | },
16 | });
17 |
18 | const textSlice = createSlice({
19 | name: 'text',
20 | value: 'Hello',
21 | actions: {
22 | updateText: (text: string) => () => text,
23 | },
24 | });
25 |
26 | const { StoreProvider, useStoreApi, useSelector } = createZustandContext(() =>
27 | create(
28 | withActions(withSlices(countSlice, textSlice), {
29 | setCountWithTextLength: () => (state) => {
30 | state.setCount(state.text.length);
31 | },
32 | }),
33 | ),
34 | );
35 |
36 | const renderWithStoreProvider = (app: ReactNode) =>
37 | render(app, { wrapper: StoreProvider });
38 |
39 | const Counter = () => {
40 | const count = useSelector((state) => state.count);
41 | const { incCount } = useStoreApi().getState();
42 | return (
43 |
44 |
{count}
45 |
48 |
49 | );
50 | };
51 |
52 | const Text = () => {
53 | const text = useSelector((state) => state.text);
54 | const { updateText } = useStoreApi().getState();
55 | return (
56 |
57 | updateText(e.target.value)} />
58 |
59 | );
60 | };
61 |
62 | const App = () => {
63 | const { setCountWithTextLength } = useStoreApi().getState();
64 | return (
65 |
66 |
67 |
68 |
69 |
72 |
73 |
74 | );
75 | };
76 |
77 | afterEach(cleanup);
78 |
79 | test('should render the app', () => {
80 | renderWithStoreProvider();
81 | expect(screen.getByTestId('count')).toHaveTextContent('0');
82 | expect(screen.getByRole('textbox')).toBeInTheDocument();
83 | expect(screen.getByTestId('set-text-length-to-count')).toBeInTheDocument();
84 | });
85 |
86 | test('should set text length to count', async () => {
87 | const user = userEvent.setup();
88 | renderWithStoreProvider();
89 |
90 | // Increment count
91 | await user.click(screen.getByRole('button', { name: 'Increment' }));
92 | expect(screen.getByTestId('count')).toHaveTextContent('1');
93 |
94 | // Change text
95 | await user.type(screen.getByRole('textbox'), ' World');
96 | expect(screen.getByRole('textbox')).toHaveValue('Hello World');
97 |
98 | // Set text length to count
99 | await user.click(
100 | screen.getByRole('button', { name: 'Set Text Length to Count' }),
101 | );
102 | expect(screen.getByTestId('count')).toHaveTextContent('11');
103 | });
104 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # zustand-slices
2 |
3 | [](https://github.com/zustandjs/zustand-slices/actions?query=workflow%3ACI)
4 | [](https://www.npmjs.com/package/zustand-slices)
5 | [](https://bundlephobia.com/result?p=zustand-slices)
6 | [](https://discord.gg/MrQdmzd)
7 |
8 | A slice utility for Zustand
9 |
10 | ## Motivation
11 |
12 | Zustand is a very minimal global state library.
13 | It's not designed with slice patterns.
14 | But as it's flexible and unopinionated, users invented some slice patterns.
15 | One of which is described in the official Zustand documentation.
16 | However, it's very tricky if you were to use it with TypeScript.
17 |
18 | This library provides an opinionated way for a slice pattern.
19 | It's designed to be TypeScript friendly.
20 |
21 | ## Install
22 |
23 | ```bash
24 | npm install zustand zustand-slices
25 | ```
26 |
27 | ## Usage
28 |
29 | ```jsx
30 | import { create } from 'zustand';
31 | import { createSlice, withSlices } from 'zustand-slices';
32 |
33 | const countSlice = createSlice({
34 | name: 'count',
35 | value: 0,
36 | actions: {
37 | incCount: () => (prev) => prev + 1,
38 | resetCount: () => () => 0,
39 | },
40 | });
41 |
42 | const textSlice = createSlice({
43 | name: 'text',
44 | value: 'Hello',
45 | actions: {
46 | updateText: (newText: string) => () => newText,
47 | resetText: () => () => 'Hello',
48 | },
49 | });
50 |
51 | const useCountStore = create(withSlices(countSlice, textSlice));
52 |
53 | const Counter = () => {
54 | const count = useCountStore((state) => state.count);
55 | const text = useCountStore((state) => state.text);
56 | const { incCount, resetCount, updateText, resetText } = useCountStore.getState();
57 | const reset = () => {
58 | resetCount();
59 | resetText();
60 | };
61 | return (
62 | <>
63 |
64 | Count: {count}
65 |
68 |
69 |
70 | updateText(e.target.value)} />
71 |
72 |
73 |
76 |
77 | >
78 | );
79 | };
80 | ```
81 |
82 | ## Examples
83 |
84 | The [examples](examples) folder contains working examples.
85 | You can run one of them with
86 |
87 | ```bash
88 | PORT=8080 pnpm run examples:01_counter
89 | ```
90 |
91 | and open in your web browser.
92 |
93 | You can also try them directly:
94 | [01](https://stackblitz.com/github/zustandjs/zustand-slices/tree/main/examples/01_counter)
95 | [02](https://stackblitz.com/edit/vitejs-vite-kxigsw)
96 | [03](https://stackblitz.com/github/zustandjs/zustand-slices/tree/main/examples/03_actions)
97 | [04](https://stackblitz.com/github/zustandjs/zustand-slices/tree/main/examples/04_immer)
98 |
99 |
102 |
103 | ## Tweets
104 |
105 | - https://twitter.com/dai_shi/status/1780623600766320785
106 | - https://twitter.com/dai_shi/status/1780804319761268820
107 | - https://twitter.com/dai_shi/status/1780955525292982285
108 | - https://twitter.com/dai_shi/status/1781106942724993372
109 | - https://twitter.com/dai_shi/status/1785504766254297436
110 | - https://twitter.com/dai_shi/status/1786568001044750693
111 | - https://x.com/dai_shi/status/1811204918512067047
112 |
--------------------------------------------------------------------------------
/docs/getting-started/01_introduction.md:
--------------------------------------------------------------------------------
1 | ## Introduction
2 |
3 | As your Zustand store grows with time and new features, it can become challenging to manage. Within this context, the [slices pattern](https://docs.pmnd.rs/zustand/guides/slices-pattern) proves beneficial for enhancing modularity and facilitating maintenance. By dividing your main store into smaller individual slices you can easily group similar values and actions together without losing the ability to eventually combine them into a unified store interface.
4 |
5 | Despite its benefits, implementing the slices pattern can often be challenging for users.
6 |
7 | zustand-slices addresses this issue by providing a utility that aims to simplify the creation and use of slices, promoting better code organization and maintainability. Moreover, it offers straightforward type definitions for a more robust development experience.
8 |
9 | You can explore a live codesandbox.io demo [here](https://codesandbox.io/s/github/zustandjs/zustand-slices/tree/main/examples/01_counter).
10 |
11 | ## Installation
12 |
13 | zustand-slices is available as a package on NPM for use:
14 |
15 | ```bash
16 | npm install zustand zustand-slices
17 | ```
18 |
19 | ## Usage
20 |
21 | The following concepts consist the core functionality of zustand-slices:
22 |
23 | - [createSlice](../guides/01_create-slice.md): Create slices to organize your state
24 | - [withSlices](../guides/02_combine-slices-into-single-store.md): Combine slices into a unified store
25 | - [withActions](../guides/03_attaching-store-level-actions.md): Attach store-level actions, in addition to slice-level actions
26 |
27 | ### First, create your slices
28 |
29 | To begin, create individual slices to group related data and actions.
30 |
31 | ```jsx
32 | import { create } from 'zustand';
33 | import { createSlice, withSlices } from 'zustand-slices';
34 |
35 | const countSlice = createSlice({
36 | name: 'count',
37 | value: 0,
38 | actions: {
39 | inc: () => (prev) => prev + 1,
40 | reset: () => () => 0,
41 | },
42 | });
43 |
44 | const textSlice = createSlice({
45 | name: 'text',
46 | value: 'Hello',
47 | actions: {
48 | updateText: (newText: string) => () => newText,
49 | reset: () => () => 'Hello',
50 | },
51 | });
52 | ```
53 |
54 | ### Combine them into a single store
55 |
56 | By utilizing `create` from Zustand, you can combine these slices into a single store.
57 |
58 | ```jsx
59 | const useCountStore = create(withSlices(countSlice, textSlice));
60 | ```
61 |
62 | ### Easily utilize it in your components
63 |
64 | Finally, you can seamlessly integrate and access your store directly into your component logic utilizing the `useCountStore` hook.
65 |
66 | ```jsx
67 | const Counter = () => {
68 | const count = useCountStore((state) => state.count);
69 | const text = useCountStore((state) => state.text);
70 | const { inc, updateText, reset } = useCountStore.getState();
71 | return (
72 | <>
73 |
74 | Count: {count}
75 |
78 |
79 |
80 | updateText(e.target.value)} />
81 |
82 |
83 |
86 |
87 | >
88 | );
89 | };
90 | ```
91 |
92 | ## TypeScript ready
93 |
94 | With zustand-slices, you get straightforward type definitions out of the box, seamlessly integrating them into your TypeScript projects. By using the outlined example slices provided above, your store type will be inferred as follows:
95 |
96 | ```ts
97 | type CountTextState = {
98 | count: number;
99 | inc: () => void;
100 | text: string;
101 | updateText: (newText: string) => void;
102 | reset: () => void;
103 | };
104 | ```
105 |
--------------------------------------------------------------------------------
/tests/03_component.spec.tsx:
--------------------------------------------------------------------------------
1 | import { afterEach, expect, test } from 'vitest';
2 | import type { ReactNode } from 'react';
3 | import { create } from 'zustand';
4 | import { cleanup, render, screen } from '@testing-library/react';
5 | import { userEvent } from '@testing-library/user-event';
6 | import { createSlice, withSlices } from 'zustand-slices';
7 | import createZustandContext from './utils/createZustandContext.js';
8 |
9 | const countSlice = createSlice({
10 | name: 'count',
11 | value: 0,
12 | actions: {
13 | incCount: () => (state) => state + 1,
14 | resetCount: () => () => 0,
15 | },
16 | });
17 |
18 | const textSlice = createSlice({
19 | name: 'text',
20 | value: 'Hello',
21 | actions: {
22 | updateText: (text: string) => () => text,
23 | resetText: () => () => 'Hello',
24 | },
25 | });
26 |
27 | const { StoreProvider, useStoreApi, useSelector } = createZustandContext(() =>
28 | create(withSlices(countSlice, textSlice)),
29 | );
30 |
31 | const renderWithStoreProvider = (app: ReactNode) =>
32 | render(app, { wrapper: StoreProvider });
33 |
34 | const Counter = () => {
35 | const count = useSelector((state) => state.count);
36 | const { incCount } = useStoreApi().getState();
37 | return (
38 |
39 |
{count}
40 |
43 |
44 | );
45 | };
46 |
47 | const Text = () => {
48 | const text = useSelector((state) => state.text);
49 | const { updateText } = useStoreApi().getState();
50 | return (
51 |
52 | updateText(e.target.value)} />
53 |
54 | );
55 | };
56 |
57 | const App = () => {
58 | const { resetCount, resetText } = useStoreApi().getState();
59 | const reset = () => {
60 | resetCount();
61 | resetText();
62 | };
63 | return (
64 |
65 |
66 |
67 |
70 |
71 | );
72 | };
73 |
74 | afterEach(cleanup);
75 |
76 | test('should render the app', () => {
77 | renderWithStoreProvider();
78 | expect(screen.getByTestId('count')).toHaveTextContent('0');
79 | expect(screen.getByRole('textbox')).toBeInTheDocument();
80 | });
81 |
82 | test('should increment the count when the button is pressed', async () => {
83 | const user = userEvent.setup();
84 | renderWithStoreProvider();
85 | expect(screen.getByTestId('count')).toHaveTextContent('0');
86 | await user.click(screen.getByRole('button', { name: 'Increment' }));
87 | expect(screen.getByTestId('count')).toHaveTextContent('1');
88 | });
89 |
90 | test('should update the text when the input is changed', async () => {
91 | const user = userEvent.setup();
92 | renderWithStoreProvider();
93 | expect(screen.getByRole('textbox')).toHaveValue('Hello');
94 | await user.type(screen.getByRole('textbox'), ' World');
95 | expect(screen.getByRole('textbox')).toHaveValue('Hello World');
96 | });
97 |
98 | test('should reset the state when the reset button is pressed', async () => {
99 | const user = userEvent.setup();
100 | renderWithStoreProvider();
101 | expect(screen.getByTestId('count')).toHaveTextContent('0');
102 | await user.click(screen.getByRole('button', { name: 'Increment' }));
103 | expect(screen.getByTestId('count')).toHaveTextContent('1');
104 | await user.type(screen.getByRole('textbox'), ' World');
105 | expect(screen.getByRole('textbox')).toHaveValue('Hello World');
106 | await user.click(screen.getByRole('button', { name: 'Reset' }));
107 | // both slices reset because the action name is the same
108 | expect(screen.getByTestId('count')).toHaveTextContent('0');
109 | expect(screen.getByRole('textbox')).toHaveValue('Hello');
110 | });
111 |
--------------------------------------------------------------------------------
/docs/guides/04_collision-handling.md:
--------------------------------------------------------------------------------
1 | ## Collision handling
2 |
3 | Implementing the slices pattern can introduce the risk of name or action collisions, which can lead to confusion and potential errors in your code. For this purpose, efforts have been made to effectively address this issue, both on names and action level.
4 |
5 | While zustand-slices currently doesn't throw errors for name collisions, using TypeScript is highly recommended. This allows for robust type-level detection of potential conflicts. The following sections present in detail the way collisions are handled in `withSlices` and `withActions` utilities.
6 |
7 | ## withSlices
8 |
9 | ### Slice names
10 |
11 | Collisions on slice names occur if they are shared within multiple slices. This includes avoiding conflicts with other slice and action names. As presented in the example below, `countSlice` and `anotherCountSlice` share the same name `count`, which results in the parameters of `withSlices` being marked as invalid due to a type error:
12 |
13 | ```ts
14 | const countSlice = createSlice({
15 | name: 'count',
16 | value: 0,
17 | actions: {
18 | inc: () => (prev) => prev + 1,
19 | },
20 | });
21 |
22 | const anotherCountSlice = createSlice({
23 | name: 'count',
24 | value: 0,
25 | actions: {
26 | inc: () => (prev) => prev + 1,
27 | },
28 | });
29 |
30 | // ^? TypeScript error, indicating invalid parameters
31 | const useCountStore = create(withSlices(countSlice, anotherCountSlice));
32 | ```
33 |
34 | Using a slice name as an action name would result to the same outcome:
35 |
36 | ```ts
37 | const countSlice = createSlice({
38 | name: 'count',
39 | value: 0,
40 | actions: {
41 | inc: () => (prev) => prev + 1,
42 | },
43 | });
44 |
45 | const anotherCountSlice = createSlice({
46 | name: 'anotherCount',
47 | value: 0,
48 | actions: {
49 | count: () => (prev) => prev + 1,
50 | },
51 | });
52 |
53 | // ^? TypeScript error, indicating invalid parameters
54 | const useCountStore = create(withSlices(countSlice, anotherCountSlice););
55 | ```
56 |
57 | ### Actions
58 |
59 | An action name can be shared across different slices as long as the action parameters remain consistent. However, when the same action name, like `inc` in the following example, is defined with different arguments in different slices, it leads to a collision.
60 |
61 | ```ts
62 | const countSlice = createSlice({
63 | name: 'count',
64 | value: 0,
65 | actions: {
66 | inc: (s: string) => (prev) => prev + (s ? 2 : 1),
67 | },
68 | });
69 |
70 | const anotherCountSlice = createSlice({
71 | name: 'anotherCount',
72 | value: 0,
73 | actions: {
74 | inc: (n: number) => (prev) => prev + n,
75 | },
76 | });
77 |
78 | // ^? TypeScript error, indicating invalid parameters
79 | const useCountStore = create(withSlices(countSlice, anotherCountSlice));
80 | ```
81 |
82 | ## withActions
83 |
84 | When using `withActions`, the provided action names are checked compared to store names to prevent conflicts. This means that the additional store-level action names must be unique – they can't be the same as existing store-level slice or action names.
85 |
86 | ```ts
87 | const countSlice = createSlice({
88 | name: 'count',
89 | value: 0,
90 | actions: {
91 | inc: () => (state) => state + 1,
92 | set: (newCount: number) => () => newCount,
93 | },
94 | });
95 |
96 | const textSlice = createSlice({
97 | name: 'text',
98 | value: 'Hello',
99 | actions: {
100 | updateText: (text: string) => () => text,
101 | },
102 | });
103 |
104 | const useCountStore = create(
105 | withActions(
106 | withSlices(countSlice, textSlice),
107 | // ^? TypeScript error, indicating invalid object
108 | {
109 | inc: () => (state) => {
110 | state.set(state.count + 1);
111 | },
112 | count: () => (state) => {
113 | state.set(state.text.length);
114 | },
115 | },
116 | ),
117 | );
118 | ```
119 |
--------------------------------------------------------------------------------
/tests/02_type.spec.tsx:
--------------------------------------------------------------------------------
1 | import { expect, test, describe } from 'vitest';
2 | import { expectType } from 'ts-expect';
3 | import type { TypeEqual } from 'ts-expect';
4 |
5 | import { createSlice, withSlices, withActions } from 'zustand-slices';
6 | import { create } from 'zustand';
7 |
8 | describe('createSlice', () => {
9 | test('slice type: single slice', () => {
10 | const countSlice = createSlice({
11 | name: 'count',
12 | value: 0,
13 | actions: {
14 | inc: () => (prev) => prev + 1,
15 | },
16 | });
17 | expect(countSlice).toBeDefined();
18 | expectType<
19 | TypeEqual<
20 | {
21 | name: 'count';
22 | value: number;
23 | actions: {
24 | inc: () => (prev: number) => number;
25 | };
26 | },
27 | typeof countSlice
28 | >
29 | >(true);
30 | });
31 | });
32 |
33 | describe('withSlices', () => {
34 | test('slice type, no collisions', () => {
35 | const countSlice = createSlice({
36 | name: 'count',
37 | value: 0,
38 | actions: {
39 | incCount: () => (prev) => prev + 1,
40 | resetCount: () => () => 0,
41 | },
42 | });
43 |
44 | const textSlice = createSlice({
45 | name: 'text',
46 | value: 'Hello',
47 | actions: {
48 | updateText: (newText: string) => () => newText,
49 | resetText: () => () => 'Hello',
50 | },
51 | });
52 |
53 | type CountTextState = {
54 | count: number;
55 | incCount: () => void;
56 | resetCount: () => void;
57 | text: string;
58 | updateText: (newText: string) => void;
59 | resetText: () => void;
60 | };
61 |
62 | const slices = withSlices(countSlice, textSlice);
63 |
64 | expectType<
65 | (
66 | set: (
67 | fn: (prevState: CountTextState) => Partial,
68 | ) => void,
69 | get: () => CountTextState,
70 | ) => CountTextState
71 | >(slices);
72 |
73 | expectType>(false);
74 | });
75 |
76 | test('name collisions: same slice names', () => {
77 | const countSlice = createSlice({
78 | name: 'count',
79 | value: 0,
80 | actions: {
81 | inc: () => (prev) => prev + 1,
82 | },
83 | });
84 | const anotherCountSlice = createSlice({
85 | name: 'count',
86 | value: 0,
87 | actions: {
88 | inc: () => (prev) => prev + 1,
89 | },
90 | });
91 | // @ts-expect-error invalid configs
92 | withSlices(countSlice, anotherCountSlice);
93 | });
94 |
95 | test('name collisions: slice name and action name', () => {
96 | const countSlice = createSlice({
97 | name: 'count',
98 | value: 0,
99 | actions: {
100 | inc: () => (prev) => prev + 1,
101 | },
102 | });
103 | const anotherCountSlice = createSlice({
104 | name: 'anotherCount',
105 | value: 0,
106 | actions: {
107 | count: () => (prev) => prev + 1,
108 | },
109 | });
110 | // @ts-expect-error invalid configs
111 | withSlices(countSlice, anotherCountSlice);
112 | });
113 |
114 | test('name collisions: slice name and action name (overlapping case)', () => {
115 | const countSlice = createSlice({
116 | name: 'count',
117 | value: 0,
118 | actions: {
119 | inc: () => (prev) => prev + 1,
120 | },
121 | });
122 | const anotherCountSlice = createSlice({
123 | name: 'anotherCount',
124 | value: 0,
125 | actions: {
126 | count: () => (prev) => prev + 1,
127 | dec: () => (prev) => prev - 1,
128 | },
129 | });
130 | // @ts-expect-error invalid configs
131 | withSlices(countSlice, anotherCountSlice);
132 | });
133 |
134 | test('args collisions: different args', () => {
135 | const countSlice = createSlice({
136 | name: 'count',
137 | value: 0,
138 | actions: {
139 | inc: (s: string) => (prev) => prev + (s ? 2 : 1),
140 | },
141 | });
142 | const anotherCountSlice = createSlice({
143 | name: 'anotherCount',
144 | value: 0,
145 | actions: {
146 | inc: (n: number) => (prev) => prev + n,
147 | },
148 | });
149 | // @ts-expect-error invalid configs
150 | withSlices(countSlice, anotherCountSlice);
151 | // @ts-expect-error invalid configs
152 | withSlices(anotherCountSlice, countSlice);
153 | });
154 |
155 | test('args collisions: same args', () => {
156 | const countSlice = createSlice({
157 | name: 'count',
158 | value: 0,
159 | actions: {
160 | inc: () => (prev) => prev + 1,
161 | },
162 | });
163 | const anotherCountSlice = createSlice({
164 | name: 'anotherCount',
165 | value: 0,
166 | actions: {
167 | anotherInc: (n: number) => (prev) => prev + n,
168 | },
169 | });
170 | expectType<(...args: never[]) => unknown>(
171 | withSlices(countSlice, anotherCountSlice),
172 | );
173 | expectType<(...args: never[]) => unknown>(
174 | withSlices(anotherCountSlice, countSlice),
175 | );
176 | });
177 |
178 | test('args collisions: overload case', () => {
179 | const countSlice = createSlice({
180 | name: 'count',
181 | value: 0,
182 | actions: {
183 | inc: () => (prev) => prev + 1,
184 | },
185 | });
186 | const anotherCountSlice = createSlice({
187 | name: 'anotherCount',
188 | value: 0,
189 | actions: {
190 | inc: (n: number) => (prev) => prev + n,
191 | },
192 | });
193 | // @ts-expect-error invalid configs
194 | withSlices(countSlice, anotherCountSlice);
195 | // @ts-expect-error invalid configs
196 | withSlices(anotherCountSlice, countSlice);
197 | });
198 | });
199 |
200 | describe('withActions', () => {
201 | test('slice type, no collisions', () => {
202 | const countSlice = createSlice({
203 | name: 'count',
204 | value: 0,
205 | actions: {
206 | inc: () => (state) => state + 1,
207 | set: (newCount: number) => () => newCount,
208 | },
209 | });
210 |
211 | const textSlice = createSlice({
212 | name: 'text',
213 | value: 'Hello',
214 | actions: {
215 | updateText: (text: string) => () => text,
216 | },
217 | });
218 |
219 | type CountTextState = {
220 | count: number;
221 | inc: () => void;
222 | set: (newCount: number) => void;
223 | text: string;
224 | updateText: (newText: string) => void;
225 | anotherInc: () => void;
226 | };
227 |
228 | expectType<
229 | (
230 | set: (
231 | fn: (prevState: CountTextState) => Partial,
232 | ) => void,
233 | get: () => CountTextState,
234 | ) => CountTextState
235 | >(
236 | withActions(withSlices(countSlice, textSlice), {
237 | anotherInc: () => (state) => {
238 | state.set(state.count + 1);
239 | },
240 | }),
241 | );
242 | });
243 |
244 | test('name collisions: slice names', () => {
245 | const countSlice = createSlice({
246 | name: 'count',
247 | value: 0,
248 | actions: {
249 | inc: () => (state) => state + 1,
250 | set: (newCount: number) => () => newCount,
251 | },
252 | });
253 |
254 | const textSlice = createSlice({
255 | name: 'text',
256 | value: 'Hello',
257 | actions: {
258 | updateText: (text: string) => () => text,
259 | },
260 | });
261 |
262 | // @ts-expect-error invalid actions
263 | withActions(withSlices(countSlice, textSlice), {
264 | count: () => (state) => {
265 | state.set(state.text.length);
266 | },
267 | });
268 |
269 | // @ts-expect-error invalid actions
270 | withActions(withSlices(countSlice, textSlice), {
271 | count: () => (state) => {
272 | state.set(state.text.length);
273 | },
274 | text: () => (state) => {
275 | state.updateText('Hello world');
276 | },
277 | });
278 | });
279 |
280 | test('name collisions: action names', () => {
281 | const countSlice = createSlice({
282 | name: 'count',
283 | value: 0,
284 | actions: {
285 | inc: () => (state) => state + 1,
286 | set: (newCount: number) => () => newCount,
287 | },
288 | });
289 |
290 | const textSlice = createSlice({
291 | name: 'text',
292 | value: 'Hello',
293 | actions: {
294 | updateText: (text: string) => () => text,
295 | },
296 | });
297 |
298 | // @ts-expect-error invalid actions
299 | withActions(withSlices(countSlice, textSlice), {
300 | inc: () => (state) => {
301 | state.set(state.count + 1);
302 | },
303 | });
304 |
305 | // @ts-expect-error invalid actions
306 | withActions(withSlices(countSlice, textSlice), {
307 | inc: () => (state) => {
308 | state.set(state.count + 1);
309 | },
310 | updateText: () => (state) => {
311 | state.updateText('Hello World');
312 | },
313 | });
314 | });
315 |
316 | test('name collisions: action and slice names', () => {
317 | const countSlice = createSlice({
318 | name: 'count',
319 | value: 0,
320 | actions: {
321 | inc: () => (state) => state + 1,
322 | set: (newCount: number) => () => newCount,
323 | },
324 | });
325 |
326 | const textSlice = createSlice({
327 | name: 'text',
328 | value: 'Hello',
329 | actions: {
330 | updateText: (text: string) => () => text,
331 | },
332 | });
333 |
334 | // @ts-expect-error invalid actions
335 | withActions(withSlices(countSlice, textSlice), {
336 | inc: () => (state) => {
337 | state.set(state.count + 1);
338 | },
339 | updateText: () => (state) => {
340 | state.updateText('Hello World');
341 | },
342 | count: () => (state) => {
343 | state.set(state.text.length);
344 | },
345 | text: () => (state) => {
346 | state.updateText('Hello world');
347 | },
348 | });
349 | });
350 | });
351 |
352 | describe('create', () => {
353 | test('name collisions', () => {
354 | const countSlice = createSlice({
355 | name: 'count',
356 | value: 0,
357 | actions: {},
358 | });
359 | const anotherCountSlice = createSlice({
360 | name: 'count',
361 | value: 0,
362 | actions: {},
363 | });
364 | // @ts-expect-error invalid configs
365 | create(withSlices(countSlice, anotherCountSlice));
366 |
367 | create(
368 | // @ts-expect-error invalid configs
369 | withActions(withSlices(countSlice, anotherCountSlice), {
370 | anotherCount: () => () => {},
371 | }),
372 | );
373 |
374 | create(
375 | withActions(
376 | // @ts-expect-error invalid configs
377 | withSlices(countSlice, anotherCountSlice),
378 | // @ts-expect-error invalid actions
379 | {
380 | count: () => (state) => state.count,
381 | },
382 | ),
383 | );
384 | });
385 | });
386 |
--------------------------------------------------------------------------------
/pnpm-lock.yaml:
--------------------------------------------------------------------------------
1 | lockfileVersion: '9.0'
2 |
3 | settings:
4 | autoInstallPeers: true
5 | excludeLinksFromLockfile: false
6 |
7 | importers:
8 |
9 | .:
10 | dependencies:
11 | immer:
12 | specifier: '>=9.0.6'
13 | version: 10.1.1
14 | devDependencies:
15 | '@eslint/js':
16 | specifier: ^9.19.0
17 | version: 9.19.0
18 | '@testing-library/jest-dom':
19 | specifier: ^6.6.3
20 | version: 6.6.3
21 | '@testing-library/react':
22 | specifier: ^16.2.0
23 | version: 16.2.0(@testing-library/dom@10.4.0)(@types/react-dom@19.0.3(@types/react@19.0.8))(@types/react@19.0.8)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)
24 | '@testing-library/user-event':
25 | specifier: ^14.6.1
26 | version: 14.6.1(@testing-library/dom@10.4.0)
27 | '@types/node':
28 | specifier: ^22.10.10
29 | version: 22.10.10
30 | '@types/react':
31 | specifier: ^19.0.8
32 | version: 19.0.8
33 | '@types/react-dom':
34 | specifier: ^19.0.3
35 | version: 19.0.3(@types/react@19.0.8)
36 | eslint:
37 | specifier: 9.19.0
38 | version: 9.19.0
39 | eslint-import-resolver-typescript:
40 | specifier: ^3.7.0
41 | version: 3.7.0(eslint-plugin-import@2.31.0)(eslint@9.19.0)
42 | eslint-plugin-import:
43 | specifier: ^2.31.0
44 | version: 2.31.0(@typescript-eslint/parser@8.21.0(eslint@9.19.0)(typescript@5.7.3))(eslint-import-resolver-typescript@3.7.0)(eslint@9.19.0)
45 | eslint-plugin-jsx-a11y:
46 | specifier: ^6.10.2
47 | version: 6.10.2(eslint@9.19.0)
48 | eslint-plugin-react:
49 | specifier: ^7.37.4
50 | version: 7.37.4(eslint@9.19.0)
51 | eslint-plugin-react-hooks:
52 | specifier: 6.0.0-rc.1
53 | version: 6.0.0-rc.1(eslint@9.19.0)
54 | happy-dom:
55 | specifier: ^16.7.2
56 | version: 16.7.2
57 | prettier:
58 | specifier: ^3.4.2
59 | version: 3.4.2
60 | react:
61 | specifier: 19.0.0
62 | version: 19.0.0
63 | react-dom:
64 | specifier: 19.0.0
65 | version: 19.0.0(react@19.0.0)
66 | ts-expect:
67 | specifier: ^1.3.0
68 | version: 1.3.0
69 | typescript:
70 | specifier: ^5.7.3
71 | version: 5.7.3
72 | typescript-eslint:
73 | specifier: ^8.21.0
74 | version: 8.21.0(eslint@9.19.0)(typescript@5.7.3)
75 | vite:
76 | specifier: ^6.0.11
77 | version: 6.0.11(@types/node@22.10.10)
78 | vite-tsconfig-paths:
79 | specifier: ^5.1.4
80 | version: 5.1.4(typescript@5.7.3)(vite@6.0.11(@types/node@22.10.10))
81 | vitest:
82 | specifier: ^3.0.4
83 | version: 3.0.4(@types/node@22.10.10)(happy-dom@16.7.2)
84 | zustand:
85 | specifier: ^5.0.3
86 | version: 5.0.3(@types/react@19.0.8)(immer@10.1.1)(react@19.0.0)
87 | zustand-slices:
88 | specifier: 'link:'
89 | version: 'link:'
90 |
91 | packages:
92 |
93 | '@adobe/css-tools@4.4.1':
94 | resolution: {integrity: sha512-12WGKBQzjUAI4ayyF4IAtfw2QR/IDoqk6jTddXDhtYTJF9ASmoE1zst7cVtP0aL/F1jUJL5r+JxKXKEgHNbEUQ==}
95 |
96 | '@ampproject/remapping@2.3.0':
97 | resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==}
98 | engines: {node: '>=6.0.0'}
99 |
100 | '@babel/code-frame@7.26.2':
101 | resolution: {integrity: sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==}
102 | engines: {node: '>=6.9.0'}
103 |
104 | '@babel/code-frame@7.27.1':
105 | resolution: {integrity: sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==}
106 | engines: {node: '>=6.9.0'}
107 |
108 | '@babel/compat-data@7.27.2':
109 | resolution: {integrity: sha512-TUtMJYRPyUb/9aU8f3K0mjmjf6M9N5Woshn2CS6nqJSeJtTtQcpLUXjGt9vbF8ZGff0El99sWkLgzwW3VXnxZQ==}
110 | engines: {node: '>=6.9.0'}
111 |
112 | '@babel/core@7.27.1':
113 | resolution: {integrity: sha512-IaaGWsQqfsQWVLqMn9OB92MNN7zukfVA4s7KKAI0KfrrDsZ0yhi5uV4baBuLuN7n3vsZpwP8asPPcVwApxvjBQ==}
114 | engines: {node: '>=6.9.0'}
115 |
116 | '@babel/generator@7.27.1':
117 | resolution: {integrity: sha512-UnJfnIpc/+JO0/+KRVQNGU+y5taA5vCbwN8+azkX6beii/ZF+enZJSOKo11ZSzGJjlNfJHfQtmQT8H+9TXPG2w==}
118 | engines: {node: '>=6.9.0'}
119 |
120 | '@babel/helper-annotate-as-pure@7.27.1':
121 | resolution: {integrity: sha512-WnuuDILl9oOBbKnb4L+DyODx7iC47XfzmNCpTttFsSp6hTG7XZxu60+4IO+2/hPfcGOoKbFiwoI/+zwARbNQow==}
122 | engines: {node: '>=6.9.0'}
123 |
124 | '@babel/helper-compilation-targets@7.27.2':
125 | resolution: {integrity: sha512-2+1thGUUWWjLTYTHZWK1n8Yga0ijBz1XAhUXcKy81rd5g6yh7hGqMp45v7cadSbEHc9G3OTv45SyneRN3ps4DQ==}
126 | engines: {node: '>=6.9.0'}
127 |
128 | '@babel/helper-create-class-features-plugin@7.27.1':
129 | resolution: {integrity: sha512-QwGAmuvM17btKU5VqXfb+Giw4JcN0hjuufz3DYnpeVDvZLAObloM77bhMXiqry3Iio+Ai4phVRDwl6WU10+r5A==}
130 | engines: {node: '>=6.9.0'}
131 | peerDependencies:
132 | '@babel/core': ^7.0.0
133 |
134 | '@babel/helper-member-expression-to-functions@7.27.1':
135 | resolution: {integrity: sha512-E5chM8eWjTp/aNoVpcbfM7mLxu9XGLWYise2eBKGQomAk/Mb4XoxyqXTZbuTohbsl8EKqdlMhnDI2CCLfcs9wA==}
136 | engines: {node: '>=6.9.0'}
137 |
138 | '@babel/helper-module-imports@7.27.1':
139 | resolution: {integrity: sha512-0gSFWUPNXNopqtIPQvlD5WgXYI5GY2kP2cCvoT8kczjbfcfuIljTbcWrulD1CIPIX2gt1wghbDy08yE1p+/r3w==}
140 | engines: {node: '>=6.9.0'}
141 |
142 | '@babel/helper-module-transforms@7.27.1':
143 | resolution: {integrity: sha512-9yHn519/8KvTU5BjTVEEeIM3w9/2yXNKoD82JifINImhpKkARMJKPP59kLo+BafpdN5zgNeIcS4jsGDmd3l58g==}
144 | engines: {node: '>=6.9.0'}
145 | peerDependencies:
146 | '@babel/core': ^7.0.0
147 |
148 | '@babel/helper-optimise-call-expression@7.27.1':
149 | resolution: {integrity: sha512-URMGH08NzYFhubNSGJrpUEphGKQwMQYBySzat5cAByY1/YgIRkULnIy3tAMeszlL/so2HbeilYloUmSpd7GdVw==}
150 | engines: {node: '>=6.9.0'}
151 |
152 | '@babel/helper-plugin-utils@7.27.1':
153 | resolution: {integrity: sha512-1gn1Up5YXka3YYAHGKpbideQ5Yjf1tDa9qYcgysz+cNCXukyLl6DjPXhD3VRwSb8c0J9tA4b2+rHEZtc6R0tlw==}
154 | engines: {node: '>=6.9.0'}
155 |
156 | '@babel/helper-replace-supers@7.27.1':
157 | resolution: {integrity: sha512-7EHz6qDZc8RYS5ElPoShMheWvEgERonFCs7IAonWLLUTXW59DP14bCZt89/GKyreYn8g3S83m21FelHKbeDCKA==}
158 | engines: {node: '>=6.9.0'}
159 | peerDependencies:
160 | '@babel/core': ^7.0.0
161 |
162 | '@babel/helper-skip-transparent-expression-wrappers@7.27.1':
163 | resolution: {integrity: sha512-Tub4ZKEXqbPjXgWLl2+3JpQAYBJ8+ikpQ2Ocj/q/r0LwE3UhENh7EUabyHjz2kCEsrRY83ew2DQdHluuiDQFzg==}
164 | engines: {node: '>=6.9.0'}
165 |
166 | '@babel/helper-string-parser@7.27.1':
167 | resolution: {integrity: sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==}
168 | engines: {node: '>=6.9.0'}
169 |
170 | '@babel/helper-validator-identifier@7.25.9':
171 | resolution: {integrity: sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==}
172 | engines: {node: '>=6.9.0'}
173 |
174 | '@babel/helper-validator-identifier@7.27.1':
175 | resolution: {integrity: sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow==}
176 | engines: {node: '>=6.9.0'}
177 |
178 | '@babel/helper-validator-option@7.27.1':
179 | resolution: {integrity: sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg==}
180 | engines: {node: '>=6.9.0'}
181 |
182 | '@babel/helpers@7.27.1':
183 | resolution: {integrity: sha512-FCvFTm0sWV8Fxhpp2McP5/W53GPllQ9QeQ7SiqGWjMf/LVG07lFa5+pgK05IRhVwtvafT22KF+ZSnM9I545CvQ==}
184 | engines: {node: '>=6.9.0'}
185 |
186 | '@babel/parser@7.27.2':
187 | resolution: {integrity: sha512-QYLs8299NA7WM/bZAdp+CviYYkVoYXlDW2rzliy3chxd1PQjej7JORuMJDJXJUb9g0TT+B99EwaVLKmX+sPXWw==}
188 | engines: {node: '>=6.0.0'}
189 | hasBin: true
190 |
191 | '@babel/plugin-transform-private-methods@7.27.1':
192 | resolution: {integrity: sha512-10FVt+X55AjRAYI9BrdISN9/AQWHqldOeZDUoLyif1Kn05a56xVBXb8ZouL8pZ9jem8QpXaOt8TS7RHUIS+GPA==}
193 | engines: {node: '>=6.9.0'}
194 | peerDependencies:
195 | '@babel/core': ^7.0.0-0
196 |
197 | '@babel/runtime@7.26.7':
198 | resolution: {integrity: sha512-AOPI3D+a8dXnja+iwsUqGRjr1BbZIe771sXdapOtYI531gSqpi92vXivKcq2asu/DFpdl1ceFAKZyRzK2PCVcQ==}
199 | engines: {node: '>=6.9.0'}
200 |
201 | '@babel/template@7.27.2':
202 | resolution: {integrity: sha512-LPDZ85aEJyYSd18/DkjNh4/y1ntkE5KwUHWTiqgRxruuZL2F1yuHligVHLvcHY2vMHXttKFpJn6LwfI7cw7ODw==}
203 | engines: {node: '>=6.9.0'}
204 |
205 | '@babel/traverse@7.27.1':
206 | resolution: {integrity: sha512-ZCYtZciz1IWJB4U61UPu4KEaqyfj+r5T1Q5mqPo+IBpcG9kHv30Z0aD8LXPgC1trYa6rK0orRyAhqUgk4MjmEg==}
207 | engines: {node: '>=6.9.0'}
208 |
209 | '@babel/types@7.27.1':
210 | resolution: {integrity: sha512-+EzkxvLNfiUeKMgy/3luqfsCWFRXLb7U6wNQTk60tovuckwB15B191tJWvpp4HjiQWdJkCxO3Wbvc6jlk3Xb2Q==}
211 | engines: {node: '>=6.9.0'}
212 |
213 | '@esbuild/aix-ppc64@0.24.2':
214 | resolution: {integrity: sha512-thpVCb/rhxE/BnMLQ7GReQLLN8q9qbHmI55F4489/ByVg2aQaQ6kbcLb6FHkocZzQhxc4gx0sCk0tJkKBFzDhA==}
215 | engines: {node: '>=18'}
216 | cpu: [ppc64]
217 | os: [aix]
218 |
219 | '@esbuild/android-arm64@0.24.2':
220 | resolution: {integrity: sha512-cNLgeqCqV8WxfcTIOeL4OAtSmL8JjcN6m09XIgro1Wi7cF4t/THaWEa7eL5CMoMBdjoHOTh/vwTO/o2TRXIyzg==}
221 | engines: {node: '>=18'}
222 | cpu: [arm64]
223 | os: [android]
224 |
225 | '@esbuild/android-arm@0.24.2':
226 | resolution: {integrity: sha512-tmwl4hJkCfNHwFB3nBa8z1Uy3ypZpxqxfTQOcHX+xRByyYgunVbZ9MzUUfb0RxaHIMnbHagwAxuTL+tnNM+1/Q==}
227 | engines: {node: '>=18'}
228 | cpu: [arm]
229 | os: [android]
230 |
231 | '@esbuild/android-x64@0.24.2':
232 | resolution: {integrity: sha512-B6Q0YQDqMx9D7rvIcsXfmJfvUYLoP722bgfBlO5cGvNVb5V/+Y7nhBE3mHV9OpxBf4eAS2S68KZztiPaWq4XYw==}
233 | engines: {node: '>=18'}
234 | cpu: [x64]
235 | os: [android]
236 |
237 | '@esbuild/darwin-arm64@0.24.2':
238 | resolution: {integrity: sha512-kj3AnYWc+CekmZnS5IPu9D+HWtUI49hbnyqk0FLEJDbzCIQt7hg7ucF1SQAilhtYpIujfaHr6O0UHlzzSPdOeA==}
239 | engines: {node: '>=18'}
240 | cpu: [arm64]
241 | os: [darwin]
242 |
243 | '@esbuild/darwin-x64@0.24.2':
244 | resolution: {integrity: sha512-WeSrmwwHaPkNR5H3yYfowhZcbriGqooyu3zI/3GGpF8AyUdsrrP0X6KumITGA9WOyiJavnGZUwPGvxvwfWPHIA==}
245 | engines: {node: '>=18'}
246 | cpu: [x64]
247 | os: [darwin]
248 |
249 | '@esbuild/freebsd-arm64@0.24.2':
250 | resolution: {integrity: sha512-UN8HXjtJ0k/Mj6a9+5u6+2eZ2ERD7Edt1Q9IZiB5UZAIdPnVKDoG7mdTVGhHJIeEml60JteamR3qhsr1r8gXvg==}
251 | engines: {node: '>=18'}
252 | cpu: [arm64]
253 | os: [freebsd]
254 |
255 | '@esbuild/freebsd-x64@0.24.2':
256 | resolution: {integrity: sha512-TvW7wE/89PYW+IevEJXZ5sF6gJRDY/14hyIGFXdIucxCsbRmLUcjseQu1SyTko+2idmCw94TgyaEZi9HUSOe3Q==}
257 | engines: {node: '>=18'}
258 | cpu: [x64]
259 | os: [freebsd]
260 |
261 | '@esbuild/linux-arm64@0.24.2':
262 | resolution: {integrity: sha512-7HnAD6074BW43YvvUmE/35Id9/NB7BeX5EoNkK9obndmZBUk8xmJJeU7DwmUeN7tkysslb2eSl6CTrYz6oEMQg==}
263 | engines: {node: '>=18'}
264 | cpu: [arm64]
265 | os: [linux]
266 |
267 | '@esbuild/linux-arm@0.24.2':
268 | resolution: {integrity: sha512-n0WRM/gWIdU29J57hJyUdIsk0WarGd6To0s+Y+LwvlC55wt+GT/OgkwoXCXvIue1i1sSNWblHEig00GBWiJgfA==}
269 | engines: {node: '>=18'}
270 | cpu: [arm]
271 | os: [linux]
272 |
273 | '@esbuild/linux-ia32@0.24.2':
274 | resolution: {integrity: sha512-sfv0tGPQhcZOgTKO3oBE9xpHuUqguHvSo4jl+wjnKwFpapx+vUDcawbwPNuBIAYdRAvIDBfZVvXprIj3HA+Ugw==}
275 | engines: {node: '>=18'}
276 | cpu: [ia32]
277 | os: [linux]
278 |
279 | '@esbuild/linux-loong64@0.24.2':
280 | resolution: {integrity: sha512-CN9AZr8kEndGooS35ntToZLTQLHEjtVB5n7dl8ZcTZMonJ7CCfStrYhrzF97eAecqVbVJ7APOEe18RPI4KLhwQ==}
281 | engines: {node: '>=18'}
282 | cpu: [loong64]
283 | os: [linux]
284 |
285 | '@esbuild/linux-mips64el@0.24.2':
286 | resolution: {integrity: sha512-iMkk7qr/wl3exJATwkISxI7kTcmHKE+BlymIAbHO8xanq/TjHaaVThFF6ipWzPHryoFsesNQJPE/3wFJw4+huw==}
287 | engines: {node: '>=18'}
288 | cpu: [mips64el]
289 | os: [linux]
290 |
291 | '@esbuild/linux-ppc64@0.24.2':
292 | resolution: {integrity: sha512-shsVrgCZ57Vr2L8mm39kO5PPIb+843FStGt7sGGoqiiWYconSxwTiuswC1VJZLCjNiMLAMh34jg4VSEQb+iEbw==}
293 | engines: {node: '>=18'}
294 | cpu: [ppc64]
295 | os: [linux]
296 |
297 | '@esbuild/linux-riscv64@0.24.2':
298 | resolution: {integrity: sha512-4eSFWnU9Hhd68fW16GD0TINewo1L6dRrB+oLNNbYyMUAeOD2yCK5KXGK1GH4qD/kT+bTEXjsyTCiJGHPZ3eM9Q==}
299 | engines: {node: '>=18'}
300 | cpu: [riscv64]
301 | os: [linux]
302 |
303 | '@esbuild/linux-s390x@0.24.2':
304 | resolution: {integrity: sha512-S0Bh0A53b0YHL2XEXC20bHLuGMOhFDO6GN4b3YjRLK//Ep3ql3erpNcPlEFed93hsQAjAQDNsvcK+hV90FubSw==}
305 | engines: {node: '>=18'}
306 | cpu: [s390x]
307 | os: [linux]
308 |
309 | '@esbuild/linux-x64@0.24.2':
310 | resolution: {integrity: sha512-8Qi4nQcCTbLnK9WoMjdC9NiTG6/E38RNICU6sUNqK0QFxCYgoARqVqxdFmWkdonVsvGqWhmm7MO0jyTqLqwj0Q==}
311 | engines: {node: '>=18'}
312 | cpu: [x64]
313 | os: [linux]
314 |
315 | '@esbuild/netbsd-arm64@0.24.2':
316 | resolution: {integrity: sha512-wuLK/VztRRpMt9zyHSazyCVdCXlpHkKm34WUyinD2lzK07FAHTq0KQvZZlXikNWkDGoT6x3TD51jKQ7gMVpopw==}
317 | engines: {node: '>=18'}
318 | cpu: [arm64]
319 | os: [netbsd]
320 |
321 | '@esbuild/netbsd-x64@0.24.2':
322 | resolution: {integrity: sha512-VefFaQUc4FMmJuAxmIHgUmfNiLXY438XrL4GDNV1Y1H/RW3qow68xTwjZKfj/+Plp9NANmzbH5R40Meudu8mmw==}
323 | engines: {node: '>=18'}
324 | cpu: [x64]
325 | os: [netbsd]
326 |
327 | '@esbuild/openbsd-arm64@0.24.2':
328 | resolution: {integrity: sha512-YQbi46SBct6iKnszhSvdluqDmxCJA+Pu280Av9WICNwQmMxV7nLRHZfjQzwbPs3jeWnuAhE9Jy0NrnJ12Oz+0A==}
329 | engines: {node: '>=18'}
330 | cpu: [arm64]
331 | os: [openbsd]
332 |
333 | '@esbuild/openbsd-x64@0.24.2':
334 | resolution: {integrity: sha512-+iDS6zpNM6EnJyWv0bMGLWSWeXGN/HTaF/LXHXHwejGsVi+ooqDfMCCTerNFxEkM3wYVcExkeGXNqshc9iMaOA==}
335 | engines: {node: '>=18'}
336 | cpu: [x64]
337 | os: [openbsd]
338 |
339 | '@esbuild/sunos-x64@0.24.2':
340 | resolution: {integrity: sha512-hTdsW27jcktEvpwNHJU4ZwWFGkz2zRJUz8pvddmXPtXDzVKTTINmlmga3ZzwcuMpUvLw7JkLy9QLKyGpD2Yxig==}
341 | engines: {node: '>=18'}
342 | cpu: [x64]
343 | os: [sunos]
344 |
345 | '@esbuild/win32-arm64@0.24.2':
346 | resolution: {integrity: sha512-LihEQ2BBKVFLOC9ZItT9iFprsE9tqjDjnbulhHoFxYQtQfai7qfluVODIYxt1PgdoyQkz23+01rzwNwYfutxUQ==}
347 | engines: {node: '>=18'}
348 | cpu: [arm64]
349 | os: [win32]
350 |
351 | '@esbuild/win32-ia32@0.24.2':
352 | resolution: {integrity: sha512-q+iGUwfs8tncmFC9pcnD5IvRHAzmbwQ3GPS5/ceCyHdjXubwQWI12MKWSNSMYLJMq23/IUCvJMS76PDqXe1fxA==}
353 | engines: {node: '>=18'}
354 | cpu: [ia32]
355 | os: [win32]
356 |
357 | '@esbuild/win32-x64@0.24.2':
358 | resolution: {integrity: sha512-7VTgWzgMGvup6aSqDPLiW5zHaxYJGTO4OokMjIlrCtf+VpEL+cXKtCvg723iguPYI5oaUNdS+/V7OU2gvXVWEg==}
359 | engines: {node: '>=18'}
360 | cpu: [x64]
361 | os: [win32]
362 |
363 | '@eslint-community/eslint-utils@4.4.1':
364 | resolution: {integrity: sha512-s3O3waFUrMV8P/XaF/+ZTp1X9XBZW1a4B97ZnjQF2KYWaFD2A8KyFBsrsfSjEmjn3RGWAIuvlneuZm3CUK3jbA==}
365 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
366 | peerDependencies:
367 | eslint: ^6.0.0 || ^7.0.0 || >=8.0.0
368 |
369 | '@eslint-community/regexpp@4.12.1':
370 | resolution: {integrity: sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==}
371 | engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0}
372 |
373 | '@eslint/config-array@0.19.1':
374 | resolution: {integrity: sha512-fo6Mtm5mWyKjA/Chy1BYTdn5mGJoDNjC7C64ug20ADsRDGrA85bN3uK3MaKbeRkRuuIEAR5N33Jr1pbm411/PA==}
375 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
376 |
377 | '@eslint/core@0.10.0':
378 | resolution: {integrity: sha512-gFHJ+xBOo4G3WRlR1e/3G8A6/KZAH6zcE/hkLRCZTi/B9avAG365QhFA8uOGzTMqgTghpn7/fSnscW++dpMSAw==}
379 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
380 |
381 | '@eslint/eslintrc@3.2.0':
382 | resolution: {integrity: sha512-grOjVNN8P3hjJn/eIETF1wwd12DdnwFDoyceUJLYYdkpbwq3nLi+4fqrTAONx7XDALqlL220wC/RHSC/QTI/0w==}
383 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
384 |
385 | '@eslint/js@9.19.0':
386 | resolution: {integrity: sha512-rbq9/g38qjfqFLOVPvwjIvFFdNziEC5S65jmjPw5r6A//QH+W91akh9irMwjDN8zKUTak6W9EsAv4m/7Wnw0UQ==}
387 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
388 |
389 | '@eslint/object-schema@2.1.5':
390 | resolution: {integrity: sha512-o0bhxnL89h5Bae5T318nFoFzGy+YE5i/gGkoPAgkmTVdRKTiv3p8JHevPiPaMwoloKfEiiaHlawCqaZMqRm+XQ==}
391 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
392 |
393 | '@eslint/plugin-kit@0.2.5':
394 | resolution: {integrity: sha512-lB05FkqEdUg2AA0xEbUz0SnkXT1LcCTa438W4IWTUh4hdOnVbQyOJ81OrDXsJk/LSiJHubgGEFoR5EHq1NsH1A==}
395 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
396 |
397 | '@humanfs/core@0.19.1':
398 | resolution: {integrity: sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==}
399 | engines: {node: '>=18.18.0'}
400 |
401 | '@humanfs/node@0.16.6':
402 | resolution: {integrity: sha512-YuI2ZHQL78Q5HbhDiBA1X4LmYdXCKCMQIfw0pw7piHJwyREFebJUvrQN4cMssyES6x+vfUbx1CIpaQUKYdQZOw==}
403 | engines: {node: '>=18.18.0'}
404 |
405 | '@humanwhocodes/module-importer@1.0.1':
406 | resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==}
407 | engines: {node: '>=12.22'}
408 |
409 | '@humanwhocodes/retry@0.3.1':
410 | resolution: {integrity: sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA==}
411 | engines: {node: '>=18.18'}
412 |
413 | '@humanwhocodes/retry@0.4.1':
414 | resolution: {integrity: sha512-c7hNEllBlenFTHBky65mhq8WD2kbN9Q6gk0bTk8lSBvc554jpXSkST1iePudpt7+A/AQvuHs9EMqjHDXMY1lrA==}
415 | engines: {node: '>=18.18'}
416 |
417 | '@jridgewell/gen-mapping@0.3.8':
418 | resolution: {integrity: sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==}
419 | engines: {node: '>=6.0.0'}
420 |
421 | '@jridgewell/resolve-uri@3.1.2':
422 | resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==}
423 | engines: {node: '>=6.0.0'}
424 |
425 | '@jridgewell/set-array@1.2.1':
426 | resolution: {integrity: sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==}
427 | engines: {node: '>=6.0.0'}
428 |
429 | '@jridgewell/sourcemap-codec@1.5.0':
430 | resolution: {integrity: sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==}
431 |
432 | '@jridgewell/trace-mapping@0.3.25':
433 | resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==}
434 |
435 | '@nodelib/fs.scandir@2.1.5':
436 | resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==}
437 | engines: {node: '>= 8'}
438 |
439 | '@nodelib/fs.stat@2.0.5':
440 | resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==}
441 | engines: {node: '>= 8'}
442 |
443 | '@nodelib/fs.walk@1.2.8':
444 | resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==}
445 | engines: {node: '>= 8'}
446 |
447 | '@nolyfill/is-core-module@1.0.39':
448 | resolution: {integrity: sha512-nn5ozdjYQpUCZlWGuxcJY/KpxkWQs4DcbMCmKojjyrYDEAGy4Ce19NN4v5MduafTwJlbKc99UA8YhSVqq9yPZA==}
449 | engines: {node: '>=12.4.0'}
450 |
451 | '@rollup/rollup-android-arm-eabi@4.32.0':
452 | resolution: {integrity: sha512-G2fUQQANtBPsNwiVFg4zKiPQyjVKZCUdQUol53R8E71J7AsheRMV/Yv/nB8giOcOVqP7//eB5xPqieBYZe9bGg==}
453 | cpu: [arm]
454 | os: [android]
455 |
456 | '@rollup/rollup-android-arm64@4.32.0':
457 | resolution: {integrity: sha512-qhFwQ+ljoymC+j5lXRv8DlaJYY/+8vyvYmVx074zrLsu5ZGWYsJNLjPPVJJjhZQpyAKUGPydOq9hRLLNvh1s3A==}
458 | cpu: [arm64]
459 | os: [android]
460 |
461 | '@rollup/rollup-darwin-arm64@4.32.0':
462 | resolution: {integrity: sha512-44n/X3lAlWsEY6vF8CzgCx+LQaoqWGN7TzUfbJDiTIOjJm4+L2Yq+r5a8ytQRGyPqgJDs3Rgyo8eVL7n9iW6AQ==}
463 | cpu: [arm64]
464 | os: [darwin]
465 |
466 | '@rollup/rollup-darwin-x64@4.32.0':
467 | resolution: {integrity: sha512-F9ct0+ZX5Np6+ZDztxiGCIvlCaW87HBdHcozUfsHnj1WCUTBUubAoanhHUfnUHZABlElyRikI0mgcw/qdEm2VQ==}
468 | cpu: [x64]
469 | os: [darwin]
470 |
471 | '@rollup/rollup-freebsd-arm64@4.32.0':
472 | resolution: {integrity: sha512-JpsGxLBB2EFXBsTLHfkZDsXSpSmKD3VxXCgBQtlPcuAqB8TlqtLcbeMhxXQkCDv1avgwNjF8uEIbq5p+Cee0PA==}
473 | cpu: [arm64]
474 | os: [freebsd]
475 |
476 | '@rollup/rollup-freebsd-x64@4.32.0':
477 | resolution: {integrity: sha512-wegiyBT6rawdpvnD9lmbOpx5Sph+yVZKHbhnSP9MqUEDX08G4UzMU+D87jrazGE7lRSyTRs6NEYHtzfkJ3FjjQ==}
478 | cpu: [x64]
479 | os: [freebsd]
480 |
481 | '@rollup/rollup-linux-arm-gnueabihf@4.32.0':
482 | resolution: {integrity: sha512-3pA7xecItbgOs1A5H58dDvOUEboG5UfpTq3WzAdF54acBbUM+olDJAPkgj1GRJ4ZqE12DZ9/hNS2QZk166v92A==}
483 | cpu: [arm]
484 | os: [linux]
485 |
486 | '@rollup/rollup-linux-arm-musleabihf@4.32.0':
487 | resolution: {integrity: sha512-Y7XUZEVISGyge51QbYyYAEHwpGgmRrAxQXO3siyYo2kmaj72USSG8LtlQQgAtlGfxYiOwu+2BdbPjzEpcOpRmQ==}
488 | cpu: [arm]
489 | os: [linux]
490 |
491 | '@rollup/rollup-linux-arm64-gnu@4.32.0':
492 | resolution: {integrity: sha512-r7/OTF5MqeBrZo5omPXcTnjvv1GsrdH8a8RerARvDFiDwFpDVDnJyByYM/nX+mvks8XXsgPUxkwe/ltaX2VH7w==}
493 | cpu: [arm64]
494 | os: [linux]
495 |
496 | '@rollup/rollup-linux-arm64-musl@4.32.0':
497 | resolution: {integrity: sha512-HJbifC9vex9NqnlodV2BHVFNuzKL5OnsV2dvTw6e1dpZKkNjPG6WUq+nhEYV6Hv2Bv++BXkwcyoGlXnPrjAKXw==}
498 | cpu: [arm64]
499 | os: [linux]
500 |
501 | '@rollup/rollup-linux-loongarch64-gnu@4.32.0':
502 | resolution: {integrity: sha512-VAEzZTD63YglFlWwRj3taofmkV1V3xhebDXffon7msNz4b14xKsz7utO6F8F4cqt8K/ktTl9rm88yryvDpsfOw==}
503 | cpu: [loong64]
504 | os: [linux]
505 |
506 | '@rollup/rollup-linux-powerpc64le-gnu@4.32.0':
507 | resolution: {integrity: sha512-Sts5DST1jXAc9YH/iik1C9QRsLcCoOScf3dfbY5i4kH9RJpKxiTBXqm7qU5O6zTXBTEZry69bGszr3SMgYmMcQ==}
508 | cpu: [ppc64]
509 | os: [linux]
510 |
511 | '@rollup/rollup-linux-riscv64-gnu@4.32.0':
512 | resolution: {integrity: sha512-qhlXeV9AqxIyY9/R1h1hBD6eMvQCO34ZmdYvry/K+/MBs6d1nRFLm6BOiITLVI+nFAAB9kUB6sdJRKyVHXnqZw==}
513 | cpu: [riscv64]
514 | os: [linux]
515 |
516 | '@rollup/rollup-linux-s390x-gnu@4.32.0':
517 | resolution: {integrity: sha512-8ZGN7ExnV0qjXa155Rsfi6H8M4iBBwNLBM9lcVS+4NcSzOFaNqmt7djlox8pN1lWrRPMRRQ8NeDlozIGx3Omsw==}
518 | cpu: [s390x]
519 | os: [linux]
520 |
521 | '@rollup/rollup-linux-x64-gnu@4.32.0':
522 | resolution: {integrity: sha512-VDzNHtLLI5s7xd/VubyS10mq6TxvZBp+4NRWoW+Hi3tgV05RtVm4qK99+dClwTN1McA6PHwob6DEJ6PlXbY83A==}
523 | cpu: [x64]
524 | os: [linux]
525 |
526 | '@rollup/rollup-linux-x64-musl@4.32.0':
527 | resolution: {integrity: sha512-qcb9qYDlkxz9DxJo7SDhWxTWV1gFuwznjbTiov289pASxlfGbaOD54mgbs9+z94VwrXtKTu+2RqwlSTbiOqxGg==}
528 | cpu: [x64]
529 | os: [linux]
530 |
531 | '@rollup/rollup-win32-arm64-msvc@4.32.0':
532 | resolution: {integrity: sha512-pFDdotFDMXW2AXVbfdUEfidPAk/OtwE/Hd4eYMTNVVaCQ6Yl8et0meDaKNL63L44Haxv4UExpv9ydSf3aSayDg==}
533 | cpu: [arm64]
534 | os: [win32]
535 |
536 | '@rollup/rollup-win32-ia32-msvc@4.32.0':
537 | resolution: {integrity: sha512-/TG7WfrCAjeRNDvI4+0AAMoHxea/USWhAzf9PVDFHbcqrQ7hMMKp4jZIy4VEjk72AAfN5k4TiSMRXRKf/0akSw==}
538 | cpu: [ia32]
539 | os: [win32]
540 |
541 | '@rollup/rollup-win32-x64-msvc@4.32.0':
542 | resolution: {integrity: sha512-5hqO5S3PTEO2E5VjCePxv40gIgyS2KvO7E7/vvC/NbIW4SIRamkMr1hqj+5Y67fbBWv/bQLB6KelBQmXlyCjWA==}
543 | cpu: [x64]
544 | os: [win32]
545 |
546 | '@rtsao/scc@1.1.0':
547 | resolution: {integrity: sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==}
548 |
549 | '@testing-library/dom@10.4.0':
550 | resolution: {integrity: sha512-pemlzrSESWbdAloYml3bAJMEfNh1Z7EduzqPKprCH5S341frlpYnUEW0H72dLxa6IsYr+mPno20GiSm+h9dEdQ==}
551 | engines: {node: '>=18'}
552 |
553 | '@testing-library/jest-dom@6.6.3':
554 | resolution: {integrity: sha512-IteBhl4XqYNkM54f4ejhLRJiZNqcSCoXUOG2CPK7qbD322KjQozM4kHQOfkG2oln9b9HTYqs+Sae8vBATubxxA==}
555 | engines: {node: '>=14', npm: '>=6', yarn: '>=1'}
556 |
557 | '@testing-library/react@16.2.0':
558 | resolution: {integrity: sha512-2cSskAvA1QNtKc8Y9VJQRv0tm3hLVgxRGDB+KYhIaPQJ1I+RHbhIXcM+zClKXzMes/wshsMVzf4B9vS4IZpqDQ==}
559 | engines: {node: '>=18'}
560 | peerDependencies:
561 | '@testing-library/dom': ^10.0.0
562 | '@types/react': ^18.0.0 || ^19.0.0
563 | '@types/react-dom': ^18.0.0 || ^19.0.0
564 | react: ^18.0.0 || ^19.0.0
565 | react-dom: ^18.0.0 || ^19.0.0
566 | peerDependenciesMeta:
567 | '@types/react':
568 | optional: true
569 | '@types/react-dom':
570 | optional: true
571 |
572 | '@testing-library/user-event@14.6.1':
573 | resolution: {integrity: sha512-vq7fv0rnt+QTXgPxr5Hjc210p6YKq2kmdziLgnsZGgLJ9e6VAShx1pACLuRjd/AS/sr7phAR58OIIpf0LlmQNw==}
574 | engines: {node: '>=12', npm: '>=6'}
575 | peerDependencies:
576 | '@testing-library/dom': '>=7.21.4'
577 |
578 | '@types/aria-query@5.0.4':
579 | resolution: {integrity: sha512-rfT93uj5s0PRL7EzccGMs3brplhcrghnDoV26NqKhCAS1hVo+WdNsPvE/yb6ilfr5hi2MEk6d5EWJTKdxg8jVw==}
580 |
581 | '@types/estree@1.0.6':
582 | resolution: {integrity: sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==}
583 |
584 | '@types/json-schema@7.0.15':
585 | resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==}
586 |
587 | '@types/json5@0.0.29':
588 | resolution: {integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==}
589 |
590 | '@types/node@22.10.10':
591 | resolution: {integrity: sha512-X47y/mPNzxviAGY5TcYPtYL8JsY3kAq2n8fMmKoRCxq/c4v4pyGNCzM2R6+M5/umG4ZfHuT+sgqDYqWc9rJ6ww==}
592 |
593 | '@types/react-dom@19.0.3':
594 | resolution: {integrity: sha512-0Knk+HJiMP/qOZgMyNFamlIjw9OFCsyC2ZbigmEEyXXixgre6IQpm/4V+r3qH4GC1JPvRJKInw+on2rV6YZLeA==}
595 | peerDependencies:
596 | '@types/react': ^19.0.0
597 |
598 | '@types/react@19.0.8':
599 | resolution: {integrity: sha512-9P/o1IGdfmQxrujGbIMDyYaaCykhLKc0NGCtYcECNUr9UAaDe4gwvV9bR6tvd5Br1SG0j+PBpbKr2UYY8CwqSw==}
600 |
601 | '@typescript-eslint/eslint-plugin@8.21.0':
602 | resolution: {integrity: sha512-eTH+UOR4I7WbdQnG4Z48ebIA6Bgi7WO8HvFEneeYBxG8qCOYgTOFPSg6ek9ITIDvGjDQzWHcoWHCDO2biByNzA==}
603 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
604 | peerDependencies:
605 | '@typescript-eslint/parser': ^8.0.0 || ^8.0.0-alpha.0
606 | eslint: ^8.57.0 || ^9.0.0
607 | typescript: '>=4.8.4 <5.8.0'
608 |
609 | '@typescript-eslint/parser@8.21.0':
610 | resolution: {integrity: sha512-Wy+/sdEH9kI3w9civgACwabHbKl+qIOu0uFZ9IMKzX3Jpv9og0ZBJrZExGrPpFAY7rWsXuxs5e7CPPP17A4eYA==}
611 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
612 | peerDependencies:
613 | eslint: ^8.57.0 || ^9.0.0
614 | typescript: '>=4.8.4 <5.8.0'
615 |
616 | '@typescript-eslint/scope-manager@8.21.0':
617 | resolution: {integrity: sha512-G3IBKz0/0IPfdeGRMbp+4rbjfSSdnGkXsM/pFZA8zM9t9klXDnB/YnKOBQ0GoPmoROa4bCq2NeHgJa5ydsQ4mA==}
618 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
619 |
620 | '@typescript-eslint/type-utils@8.21.0':
621 | resolution: {integrity: sha512-95OsL6J2BtzoBxHicoXHxgk3z+9P3BEcQTpBKriqiYzLKnM2DeSqs+sndMKdamU8FosiadQFT3D+BSL9EKnAJQ==}
622 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
623 | peerDependencies:
624 | eslint: ^8.57.0 || ^9.0.0
625 | typescript: '>=4.8.4 <5.8.0'
626 |
627 | '@typescript-eslint/types@8.21.0':
628 | resolution: {integrity: sha512-PAL6LUuQwotLW2a8VsySDBwYMm129vFm4tMVlylzdoTybTHaAi0oBp7Ac6LhSrHHOdLM3efH+nAR6hAWoMF89A==}
629 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
630 |
631 | '@typescript-eslint/typescript-estree@8.21.0':
632 | resolution: {integrity: sha512-x+aeKh/AjAArSauz0GiQZsjT8ciadNMHdkUSwBB9Z6PrKc/4knM4g3UfHml6oDJmKC88a6//cdxnO/+P2LkMcg==}
633 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
634 | peerDependencies:
635 | typescript: '>=4.8.4 <5.8.0'
636 |
637 | '@typescript-eslint/utils@8.21.0':
638 | resolution: {integrity: sha512-xcXBfcq0Kaxgj7dwejMbFyq7IOHgpNMtVuDveK7w3ZGwG9owKzhALVwKpTF2yrZmEwl9SWdetf3fxNzJQaVuxw==}
639 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
640 | peerDependencies:
641 | eslint: ^8.57.0 || ^9.0.0
642 | typescript: '>=4.8.4 <5.8.0'
643 |
644 | '@typescript-eslint/visitor-keys@8.21.0':
645 | resolution: {integrity: sha512-BkLMNpdV6prozk8LlyK/SOoWLmUFi+ZD+pcqti9ILCbVvHGk1ui1g4jJOc2WDLaeExz2qWwojxlPce5PljcT3w==}
646 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
647 |
648 | '@vitest/expect@3.0.4':
649 | resolution: {integrity: sha512-Nm5kJmYw6P2BxhJPkO3eKKhGYKRsnqJqf+r0yOGRKpEP+bSCBDsjXgiu1/5QFrnPMEgzfC38ZEjvCFgaNBC0Eg==}
650 |
651 | '@vitest/mocker@3.0.4':
652 | resolution: {integrity: sha512-gEef35vKafJlfQbnyOXZ0Gcr9IBUsMTyTLXsEQwuyYAerpHqvXhzdBnDFuHLpFqth3F7b6BaFr4qV/Cs1ULx5A==}
653 | peerDependencies:
654 | msw: ^2.4.9
655 | vite: ^5.0.0 || ^6.0.0
656 | peerDependenciesMeta:
657 | msw:
658 | optional: true
659 | vite:
660 | optional: true
661 |
662 | '@vitest/pretty-format@3.0.4':
663 | resolution: {integrity: sha512-ts0fba+dEhK2aC9PFuZ9LTpULHpY/nd6jhAQ5IMU7Gaj7crPCTdCFfgvXxruRBLFS+MLraicCuFXxISEq8C93g==}
664 |
665 | '@vitest/runner@3.0.4':
666 | resolution: {integrity: sha512-dKHzTQ7n9sExAcWH/0sh1elVgwc7OJ2lMOBrAm73J7AH6Pf9T12Zh3lNE1TETZaqrWFXtLlx3NVrLRb5hCK+iw==}
667 |
668 | '@vitest/snapshot@3.0.4':
669 | resolution: {integrity: sha512-+p5knMLwIk7lTQkM3NonZ9zBewzVp9EVkVpvNta0/PlFWpiqLaRcF4+33L1it3uRUCh0BGLOaXPPGEjNKfWb4w==}
670 |
671 | '@vitest/spy@3.0.4':
672 | resolution: {integrity: sha512-sXIMF0oauYyUy2hN49VFTYodzEAu744MmGcPR3ZBsPM20G+1/cSW/n1U+3Yu/zHxX2bIDe1oJASOkml+osTU6Q==}
673 |
674 | '@vitest/utils@3.0.4':
675 | resolution: {integrity: sha512-8BqC1ksYsHtbWH+DfpOAKrFw3jl3Uf9J7yeFh85Pz52IWuh1hBBtyfEbRNNZNjl8H8A5yMLH9/t+k7HIKzQcZQ==}
676 |
677 | acorn-jsx@5.3.2:
678 | resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==}
679 | peerDependencies:
680 | acorn: ^6.0.0 || ^7.0.0 || ^8.0.0
681 |
682 | acorn@8.14.0:
683 | resolution: {integrity: sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==}
684 | engines: {node: '>=0.4.0'}
685 | hasBin: true
686 |
687 | ajv@6.12.6:
688 | resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==}
689 |
690 | ansi-regex@5.0.1:
691 | resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==}
692 | engines: {node: '>=8'}
693 |
694 | ansi-styles@4.3.0:
695 | resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==}
696 | engines: {node: '>=8'}
697 |
698 | ansi-styles@5.2.0:
699 | resolution: {integrity: sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==}
700 | engines: {node: '>=10'}
701 |
702 | argparse@2.0.1:
703 | resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==}
704 |
705 | aria-query@5.3.0:
706 | resolution: {integrity: sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==}
707 |
708 | aria-query@5.3.2:
709 | resolution: {integrity: sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw==}
710 | engines: {node: '>= 0.4'}
711 |
712 | array-buffer-byte-length@1.0.2:
713 | resolution: {integrity: sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==}
714 | engines: {node: '>= 0.4'}
715 |
716 | array-includes@3.1.8:
717 | resolution: {integrity: sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ==}
718 | engines: {node: '>= 0.4'}
719 |
720 | array.prototype.findlast@1.2.5:
721 | resolution: {integrity: sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==}
722 | engines: {node: '>= 0.4'}
723 |
724 | array.prototype.findlastindex@1.2.5:
725 | resolution: {integrity: sha512-zfETvRFA8o7EiNn++N5f/kaCw221hrpGsDmcpndVupkPzEc1Wuf3VgC0qby1BbHs7f5DVYjgtEU2LLh5bqeGfQ==}
726 | engines: {node: '>= 0.4'}
727 |
728 | array.prototype.flat@1.3.3:
729 | resolution: {integrity: sha512-rwG/ja1neyLqCuGZ5YYrznA62D4mZXg0i1cIskIUKSiqF3Cje9/wXAls9B9s1Wa2fomMsIv8czB8jZcPmxCXFg==}
730 | engines: {node: '>= 0.4'}
731 |
732 | array.prototype.flatmap@1.3.3:
733 | resolution: {integrity: sha512-Y7Wt51eKJSyi80hFrJCePGGNo5ktJCslFuboqJsbf57CCPcm5zztluPlc4/aD8sWsKvlwatezpV4U1efk8kpjg==}
734 | engines: {node: '>= 0.4'}
735 |
736 | array.prototype.tosorted@1.1.4:
737 | resolution: {integrity: sha512-p6Fx8B7b7ZhL/gmUsAy0D15WhvDccw3mnGNbZpi3pmeJdxtWsj2jEaI4Y6oo3XiHfzuSgPwKc04MYt6KgvC/wA==}
738 | engines: {node: '>= 0.4'}
739 |
740 | arraybuffer.prototype.slice@1.0.4:
741 | resolution: {integrity: sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==}
742 | engines: {node: '>= 0.4'}
743 |
744 | assertion-error@2.0.1:
745 | resolution: {integrity: sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA==}
746 | engines: {node: '>=12'}
747 |
748 | ast-types-flow@0.0.8:
749 | resolution: {integrity: sha512-OH/2E5Fg20h2aPrbe+QL8JZQFko0YZaF+j4mnQ7BGhfavO7OpSLa8a0y9sBwomHdSbkhTS8TQNayBfnW5DwbvQ==}
750 |
751 | async-function@1.0.0:
752 | resolution: {integrity: sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA==}
753 | engines: {node: '>= 0.4'}
754 |
755 | available-typed-arrays@1.0.7:
756 | resolution: {integrity: sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==}
757 | engines: {node: '>= 0.4'}
758 |
759 | axe-core@4.10.2:
760 | resolution: {integrity: sha512-RE3mdQ7P3FRSe7eqCWoeQ/Z9QXrtniSjp1wUjt5nRC3WIpz5rSCve6o3fsZ2aCpJtrZjSZgjwXAoTO5k4tEI0w==}
761 | engines: {node: '>=4'}
762 |
763 | axobject-query@4.1.0:
764 | resolution: {integrity: sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==}
765 | engines: {node: '>= 0.4'}
766 |
767 | balanced-match@1.0.2:
768 | resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==}
769 |
770 | brace-expansion@1.1.11:
771 | resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==}
772 |
773 | brace-expansion@2.0.1:
774 | resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==}
775 |
776 | braces@3.0.3:
777 | resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==}
778 | engines: {node: '>=8'}
779 |
780 | browserslist@4.24.5:
781 | resolution: {integrity: sha512-FDToo4Wo82hIdgc1CQ+NQD0hEhmpPjrZ3hiUgwgOG6IuTdlpr8jdjyG24P6cNP1yJpTLzS5OcGgSw0xmDU1/Tw==}
782 | engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7}
783 | hasBin: true
784 |
785 | cac@6.7.14:
786 | resolution: {integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==}
787 | engines: {node: '>=8'}
788 |
789 | call-bind-apply-helpers@1.0.1:
790 | resolution: {integrity: sha512-BhYE+WDaywFg2TBWYNXAE+8B1ATnThNBqXHP5nQu0jWJdVvY2hvkpyB3qOmtmDePiS5/BDQ8wASEWGMWRG148g==}
791 | engines: {node: '>= 0.4'}
792 |
793 | call-bind@1.0.8:
794 | resolution: {integrity: sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==}
795 | engines: {node: '>= 0.4'}
796 |
797 | call-bound@1.0.3:
798 | resolution: {integrity: sha512-YTd+6wGlNlPxSuri7Y6X8tY2dmm12UMH66RpKMhiX6rsk5wXXnYgbUcOt8kiS31/AjfoTOvCsE+w8nZQLQnzHA==}
799 | engines: {node: '>= 0.4'}
800 |
801 | callsites@3.1.0:
802 | resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==}
803 | engines: {node: '>=6'}
804 |
805 | caniuse-lite@1.0.30001718:
806 | resolution: {integrity: sha512-AflseV1ahcSunK53NfEs9gFWgOEmzr0f+kaMFA4xiLZlr9Hzt7HxcSpIFcnNCUkz6R6dWKa54rUz3HUmI3nVcw==}
807 |
808 | chai@5.1.2:
809 | resolution: {integrity: sha512-aGtmf24DW6MLHHG5gCx4zaI3uBq3KRtxeVs0DjFH6Z0rDNbsvTxFASFvdj79pxjxZ8/5u3PIiN3IwEIQkiiuPw==}
810 | engines: {node: '>=12'}
811 |
812 | chalk@3.0.0:
813 | resolution: {integrity: sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==}
814 | engines: {node: '>=8'}
815 |
816 | chalk@4.1.2:
817 | resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==}
818 | engines: {node: '>=10'}
819 |
820 | check-error@2.1.1:
821 | resolution: {integrity: sha512-OAlb+T7V4Op9OwdkjmguYRqncdlx5JiofwOAUkmTF+jNdHwzTaTs4sRAGpzLF3oOz5xAyDGrPgeIDFQmDOTiJw==}
822 | engines: {node: '>= 16'}
823 |
824 | color-convert@2.0.1:
825 | resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==}
826 | engines: {node: '>=7.0.0'}
827 |
828 | color-name@1.1.4:
829 | resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==}
830 |
831 | concat-map@0.0.1:
832 | resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==}
833 |
834 | convert-source-map@2.0.0:
835 | resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==}
836 |
837 | cross-spawn@7.0.6:
838 | resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==}
839 | engines: {node: '>= 8'}
840 |
841 | css.escape@1.5.1:
842 | resolution: {integrity: sha512-YUifsXXuknHlUsmlgyY0PKzgPOr7/FjCePfHNt0jxm83wHZi44VDMQ7/fGNkjY3/jV1MC+1CmZbaHzugyeRtpg==}
843 |
844 | csstype@3.1.3:
845 | resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==}
846 |
847 | damerau-levenshtein@1.0.8:
848 | resolution: {integrity: sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==}
849 |
850 | data-view-buffer@1.0.2:
851 | resolution: {integrity: sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==}
852 | engines: {node: '>= 0.4'}
853 |
854 | data-view-byte-length@1.0.2:
855 | resolution: {integrity: sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ==}
856 | engines: {node: '>= 0.4'}
857 |
858 | data-view-byte-offset@1.0.1:
859 | resolution: {integrity: sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==}
860 | engines: {node: '>= 0.4'}
861 |
862 | debug@3.2.7:
863 | resolution: {integrity: sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==}
864 | peerDependencies:
865 | supports-color: '*'
866 | peerDependenciesMeta:
867 | supports-color:
868 | optional: true
869 |
870 | debug@4.4.0:
871 | resolution: {integrity: sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==}
872 | engines: {node: '>=6.0'}
873 | peerDependencies:
874 | supports-color: '*'
875 | peerDependenciesMeta:
876 | supports-color:
877 | optional: true
878 |
879 | deep-eql@5.0.2:
880 | resolution: {integrity: sha512-h5k/5U50IJJFpzfL6nO9jaaumfjO/f2NjK/oYB2Djzm4p9L+3T9qWpZqZ2hAbLPuuYq9wrU08WQyBTL5GbPk5Q==}
881 | engines: {node: '>=6'}
882 |
883 | deep-is@0.1.4:
884 | resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==}
885 |
886 | define-data-property@1.1.4:
887 | resolution: {integrity: sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==}
888 | engines: {node: '>= 0.4'}
889 |
890 | define-properties@1.2.1:
891 | resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==}
892 | engines: {node: '>= 0.4'}
893 |
894 | dequal@2.0.3:
895 | resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==}
896 | engines: {node: '>=6'}
897 |
898 | doctrine@2.1.0:
899 | resolution: {integrity: sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==}
900 | engines: {node: '>=0.10.0'}
901 |
902 | dom-accessibility-api@0.5.16:
903 | resolution: {integrity: sha512-X7BJ2yElsnOJ30pZF4uIIDfBEVgF4XEBxL9Bxhy6dnrm5hkzqmsWHGTiHqRiITNhMyFLyAiWndIJP7Z1NTteDg==}
904 |
905 | dom-accessibility-api@0.6.3:
906 | resolution: {integrity: sha512-7ZgogeTnjuHbo+ct10G9Ffp0mif17idi0IyWNVA/wcwcm7NPOD/WEHVP3n7n3MhXqxoIYm8d6MuZohYWIZ4T3w==}
907 |
908 | dunder-proto@1.0.1:
909 | resolution: {integrity: sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==}
910 | engines: {node: '>= 0.4'}
911 |
912 | electron-to-chromium@1.5.157:
913 | resolution: {integrity: sha512-/0ybgsQd1muo8QlnuTpKwtl0oX5YMlUGbm8xyqgDU00motRkKFFbUJySAQBWcY79rVqNLWIWa87BGVGClwAB2w==}
914 |
915 | emoji-regex@9.2.2:
916 | resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==}
917 |
918 | enhanced-resolve@5.18.0:
919 | resolution: {integrity: sha512-0/r0MySGYG8YqlayBZ6MuCfECmHFdJ5qyPh8s8wa5Hnm6SaFLSK1VYCbj+NKp090Nm1caZhD+QTnmxO7esYGyQ==}
920 | engines: {node: '>=10.13.0'}
921 |
922 | es-abstract@1.23.9:
923 | resolution: {integrity: sha512-py07lI0wjxAC/DcfK1S6G7iANonniZwTISvdPzk9hzeH0IZIshbuuFxLIU96OyF89Yb9hiqWn8M/bY83KY5vzA==}
924 | engines: {node: '>= 0.4'}
925 |
926 | es-define-property@1.0.1:
927 | resolution: {integrity: sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==}
928 | engines: {node: '>= 0.4'}
929 |
930 | es-errors@1.3.0:
931 | resolution: {integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==}
932 | engines: {node: '>= 0.4'}
933 |
934 | es-iterator-helpers@1.2.1:
935 | resolution: {integrity: sha512-uDn+FE1yrDzyC0pCo961B2IHbdM8y/ACZsKD4dG6WqrjV53BADjwa7D+1aom2rsNVfLyDgU/eigvlJGJ08OQ4w==}
936 | engines: {node: '>= 0.4'}
937 |
938 | es-module-lexer@1.6.0:
939 | resolution: {integrity: sha512-qqnD1yMU6tk/jnaMosogGySTZP8YtUgAffA9nMN+E/rjxcfRQ6IEk7IiozUjgxKoFHBGjTLnrHB/YC45r/59EQ==}
940 |
941 | es-object-atoms@1.1.1:
942 | resolution: {integrity: sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==}
943 | engines: {node: '>= 0.4'}
944 |
945 | es-set-tostringtag@2.1.0:
946 | resolution: {integrity: sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==}
947 | engines: {node: '>= 0.4'}
948 |
949 | es-shim-unscopables@1.0.2:
950 | resolution: {integrity: sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==}
951 |
952 | es-to-primitive@1.3.0:
953 | resolution: {integrity: sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==}
954 | engines: {node: '>= 0.4'}
955 |
956 | esbuild@0.24.2:
957 | resolution: {integrity: sha512-+9egpBW8I3CD5XPe0n6BfT5fxLzxrlDzqydF3aviG+9ni1lDC/OvMHcxqEFV0+LANZG5R1bFMWfUrjVsdwxJvA==}
958 | engines: {node: '>=18'}
959 | hasBin: true
960 |
961 | escalade@3.2.0:
962 | resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==}
963 | engines: {node: '>=6'}
964 |
965 | escape-string-regexp@4.0.0:
966 | resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==}
967 | engines: {node: '>=10'}
968 |
969 | eslint-import-resolver-node@0.3.9:
970 | resolution: {integrity: sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==}
971 |
972 | eslint-import-resolver-typescript@3.7.0:
973 | resolution: {integrity: sha512-Vrwyi8HHxY97K5ebydMtffsWAn1SCR9eol49eCd5fJS4O1WV7PaAjbcjmbfJJSMz/t4Mal212Uz/fQZrOB8mow==}
974 | engines: {node: ^14.18.0 || >=16.0.0}
975 | peerDependencies:
976 | eslint: '*'
977 | eslint-plugin-import: '*'
978 | eslint-plugin-import-x: '*'
979 | peerDependenciesMeta:
980 | eslint-plugin-import:
981 | optional: true
982 | eslint-plugin-import-x:
983 | optional: true
984 |
985 | eslint-module-utils@2.12.0:
986 | resolution: {integrity: sha512-wALZ0HFoytlyh/1+4wuZ9FJCD/leWHQzzrxJ8+rebyReSLk7LApMyd3WJaLVoN+D5+WIdJyDK1c6JnE65V4Zyg==}
987 | engines: {node: '>=4'}
988 | peerDependencies:
989 | '@typescript-eslint/parser': '*'
990 | eslint: '*'
991 | eslint-import-resolver-node: '*'
992 | eslint-import-resolver-typescript: '*'
993 | eslint-import-resolver-webpack: '*'
994 | peerDependenciesMeta:
995 | '@typescript-eslint/parser':
996 | optional: true
997 | eslint:
998 | optional: true
999 | eslint-import-resolver-node:
1000 | optional: true
1001 | eslint-import-resolver-typescript:
1002 | optional: true
1003 | eslint-import-resolver-webpack:
1004 | optional: true
1005 |
1006 | eslint-plugin-import@2.31.0:
1007 | resolution: {integrity: sha512-ixmkI62Rbc2/w8Vfxyh1jQRTdRTF52VxwRVHl/ykPAmqG+Nb7/kNn+byLP0LxPgI7zWA16Jt82SybJInmMia3A==}
1008 | engines: {node: '>=4'}
1009 | peerDependencies:
1010 | '@typescript-eslint/parser': '*'
1011 | eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 || ^9
1012 | peerDependenciesMeta:
1013 | '@typescript-eslint/parser':
1014 | optional: true
1015 |
1016 | eslint-plugin-jsx-a11y@6.10.2:
1017 | resolution: {integrity: sha512-scB3nz4WmG75pV8+3eRUQOHZlNSUhFNq37xnpgRkCCELU3XMvXAxLk1eqWWyE22Ki4Q01Fnsw9BA3cJHDPgn2Q==}
1018 | engines: {node: '>=4.0'}
1019 | peerDependencies:
1020 | eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9
1021 |
1022 | eslint-plugin-react-hooks@6.0.0-rc.1:
1023 | resolution: {integrity: sha512-7C4c7bdtd/B7Q+HruZxYhGjwZVvJawvQpilEYlRG1Jncuk1ZNqrFy9bO8SJNieyj3iDh8WPQA7BzzPO7sNAyEA==}
1024 | engines: {node: '>=18'}
1025 | peerDependencies:
1026 | eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 || ^9.0.0
1027 |
1028 | eslint-plugin-react@7.37.4:
1029 | resolution: {integrity: sha512-BGP0jRmfYyvOyvMoRX/uoUeW+GqNj9y16bPQzqAHf3AYII/tDs+jMN0dBVkl88/OZwNGwrVFxE7riHsXVfy/LQ==}
1030 | engines: {node: '>=4'}
1031 | peerDependencies:
1032 | eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7
1033 |
1034 | eslint-scope@8.2.0:
1035 | resolution: {integrity: sha512-PHlWUfG6lvPc3yvP5A4PNyBL1W8fkDUccmI21JUu/+GKZBoH/W5u6usENXUrWFRsyoW5ACUjFGgAFQp5gUlb/A==}
1036 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
1037 |
1038 | eslint-visitor-keys@3.4.3:
1039 | resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==}
1040 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
1041 |
1042 | eslint-visitor-keys@4.2.0:
1043 | resolution: {integrity: sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw==}
1044 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
1045 |
1046 | eslint@9.19.0:
1047 | resolution: {integrity: sha512-ug92j0LepKlbbEv6hD911THhoRHmbdXt2gX+VDABAW/Ir7D3nqKdv5Pf5vtlyY6HQMTEP2skXY43ueqTCWssEA==}
1048 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
1049 | hasBin: true
1050 | peerDependencies:
1051 | jiti: '*'
1052 | peerDependenciesMeta:
1053 | jiti:
1054 | optional: true
1055 |
1056 | espree@10.3.0:
1057 | resolution: {integrity: sha512-0QYC8b24HWY8zjRnDTL6RiHfDbAWn63qb4LMj1Z4b076A4une81+z03Kg7l7mn/48PUTqoLptSXez8oknU8Clg==}
1058 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
1059 |
1060 | esquery@1.6.0:
1061 | resolution: {integrity: sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==}
1062 | engines: {node: '>=0.10'}
1063 |
1064 | esrecurse@4.3.0:
1065 | resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==}
1066 | engines: {node: '>=4.0'}
1067 |
1068 | estraverse@5.3.0:
1069 | resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==}
1070 | engines: {node: '>=4.0'}
1071 |
1072 | estree-walker@3.0.3:
1073 | resolution: {integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==}
1074 |
1075 | esutils@2.0.3:
1076 | resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==}
1077 | engines: {node: '>=0.10.0'}
1078 |
1079 | expect-type@1.1.0:
1080 | resolution: {integrity: sha512-bFi65yM+xZgk+u/KRIpekdSYkTB5W1pEf0Lt8Q8Msh7b+eQ7LXVtIB1Bkm4fvclDEL1b2CZkMhv2mOeF8tMdkA==}
1081 | engines: {node: '>=12.0.0'}
1082 |
1083 | fast-deep-equal@3.1.3:
1084 | resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==}
1085 |
1086 | fast-glob@3.3.3:
1087 | resolution: {integrity: sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==}
1088 | engines: {node: '>=8.6.0'}
1089 |
1090 | fast-json-stable-stringify@2.1.0:
1091 | resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==}
1092 |
1093 | fast-levenshtein@2.0.6:
1094 | resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==}
1095 |
1096 | fastq@1.18.0:
1097 | resolution: {integrity: sha512-QKHXPW0hD8g4UET03SdOdunzSouc9N4AuHdsX8XNcTsuz+yYFILVNIX4l9yHABMhiEI9Db0JTTIpu0wB+Y1QQw==}
1098 |
1099 | file-entry-cache@8.0.0:
1100 | resolution: {integrity: sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==}
1101 | engines: {node: '>=16.0.0'}
1102 |
1103 | fill-range@7.1.1:
1104 | resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==}
1105 | engines: {node: '>=8'}
1106 |
1107 | find-up@5.0.0:
1108 | resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==}
1109 | engines: {node: '>=10'}
1110 |
1111 | flat-cache@4.0.1:
1112 | resolution: {integrity: sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==}
1113 | engines: {node: '>=16'}
1114 |
1115 | flatted@3.3.2:
1116 | resolution: {integrity: sha512-AiwGJM8YcNOaobumgtng+6NHuOqC3A7MixFeDafM3X9cIUM+xUXoS5Vfgf+OihAYe20fxqNM9yPBXJzRtZ/4eA==}
1117 |
1118 | for-each@0.3.4:
1119 | resolution: {integrity: sha512-kKaIINnFpzW6ffJNDjjyjrk21BkDx38c0xa/klsT8VzLCaMEefv4ZTacrcVR4DmgTeBra++jMDAfS/tS799YDw==}
1120 | engines: {node: '>= 0.4'}
1121 |
1122 | fsevents@2.3.3:
1123 | resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==}
1124 | engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}
1125 | os: [darwin]
1126 |
1127 | function-bind@1.1.2:
1128 | resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==}
1129 |
1130 | function.prototype.name@1.1.8:
1131 | resolution: {integrity: sha512-e5iwyodOHhbMr/yNrc7fDYG4qlbIvI5gajyzPnb5TCwyhjApznQh1BMFou9b30SevY43gCJKXycoCBjMbsuW0Q==}
1132 | engines: {node: '>= 0.4'}
1133 |
1134 | functions-have-names@1.2.3:
1135 | resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==}
1136 |
1137 | gensync@1.0.0-beta.2:
1138 | resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==}
1139 | engines: {node: '>=6.9.0'}
1140 |
1141 | get-intrinsic@1.2.7:
1142 | resolution: {integrity: sha512-VW6Pxhsrk0KAOqs3WEd0klDiF/+V7gQOpAvY1jVU/LHmaD/kQO4523aiJuikX/QAKYiW6x8Jh+RJej1almdtCA==}
1143 | engines: {node: '>= 0.4'}
1144 |
1145 | get-proto@1.0.1:
1146 | resolution: {integrity: sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==}
1147 | engines: {node: '>= 0.4'}
1148 |
1149 | get-symbol-description@1.1.0:
1150 | resolution: {integrity: sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==}
1151 | engines: {node: '>= 0.4'}
1152 |
1153 | get-tsconfig@4.10.0:
1154 | resolution: {integrity: sha512-kGzZ3LWWQcGIAmg6iWvXn0ei6WDtV26wzHRMwDSzmAbcXrTEXxHy6IehI6/4eT6VRKyMP1eF1VqwrVUmE/LR7A==}
1155 |
1156 | glob-parent@5.1.2:
1157 | resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==}
1158 | engines: {node: '>= 6'}
1159 |
1160 | glob-parent@6.0.2:
1161 | resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==}
1162 | engines: {node: '>=10.13.0'}
1163 |
1164 | globals@11.12.0:
1165 | resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==}
1166 | engines: {node: '>=4'}
1167 |
1168 | globals@14.0.0:
1169 | resolution: {integrity: sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==}
1170 | engines: {node: '>=18'}
1171 |
1172 | globalthis@1.0.4:
1173 | resolution: {integrity: sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==}
1174 | engines: {node: '>= 0.4'}
1175 |
1176 | globrex@0.1.2:
1177 | resolution: {integrity: sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==}
1178 |
1179 | gopd@1.2.0:
1180 | resolution: {integrity: sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==}
1181 | engines: {node: '>= 0.4'}
1182 |
1183 | graceful-fs@4.2.11:
1184 | resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==}
1185 |
1186 | graphemer@1.4.0:
1187 | resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==}
1188 |
1189 | happy-dom@16.7.2:
1190 | resolution: {integrity: sha512-zOzw0xyYlDaF/ylwbAsduYZZVRTd5u7IwlFkGbEathIeJMLp3vrN3cHm3RS7PZpD9gr/IO16bHEswcgNyWTsqw==}
1191 | engines: {node: '>=18.0.0'}
1192 |
1193 | has-bigints@1.1.0:
1194 | resolution: {integrity: sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==}
1195 | engines: {node: '>= 0.4'}
1196 |
1197 | has-flag@4.0.0:
1198 | resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==}
1199 | engines: {node: '>=8'}
1200 |
1201 | has-property-descriptors@1.0.2:
1202 | resolution: {integrity: sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==}
1203 |
1204 | has-proto@1.2.0:
1205 | resolution: {integrity: sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==}
1206 | engines: {node: '>= 0.4'}
1207 |
1208 | has-symbols@1.1.0:
1209 | resolution: {integrity: sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==}
1210 | engines: {node: '>= 0.4'}
1211 |
1212 | has-tostringtag@1.0.2:
1213 | resolution: {integrity: sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==}
1214 | engines: {node: '>= 0.4'}
1215 |
1216 | hasown@2.0.2:
1217 | resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==}
1218 | engines: {node: '>= 0.4'}
1219 |
1220 | hermes-estree@0.25.1:
1221 | resolution: {integrity: sha512-0wUoCcLp+5Ev5pDW2OriHC2MJCbwLwuRx+gAqMTOkGKJJiBCLjtrvy4PWUGn6MIVefecRpzoOZ/UV6iGdOr+Cw==}
1222 |
1223 | hermes-parser@0.25.1:
1224 | resolution: {integrity: sha512-6pEjquH3rqaI6cYAXYPcz9MS4rY6R4ngRgrgfDshRptUZIc3lw0MCIJIGDj9++mfySOuPTHB4nrSW99BCvOPIA==}
1225 |
1226 | ignore@5.3.2:
1227 | resolution: {integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==}
1228 | engines: {node: '>= 4'}
1229 |
1230 | immer@10.1.1:
1231 | resolution: {integrity: sha512-s2MPrmjovJcoMaHtx6K11Ra7oD05NT97w1IC5zpMkT6Atjr7H8LjaDd81iIxUYpMKSRRNMJE703M1Fhr/TctHw==}
1232 |
1233 | import-fresh@3.3.0:
1234 | resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==}
1235 | engines: {node: '>=6'}
1236 |
1237 | imurmurhash@0.1.4:
1238 | resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==}
1239 | engines: {node: '>=0.8.19'}
1240 |
1241 | indent-string@4.0.0:
1242 | resolution: {integrity: sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==}
1243 | engines: {node: '>=8'}
1244 |
1245 | internal-slot@1.1.0:
1246 | resolution: {integrity: sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==}
1247 | engines: {node: '>= 0.4'}
1248 |
1249 | is-array-buffer@3.0.5:
1250 | resolution: {integrity: sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==}
1251 | engines: {node: '>= 0.4'}
1252 |
1253 | is-async-function@2.1.1:
1254 | resolution: {integrity: sha512-9dgM/cZBnNvjzaMYHVoxxfPj2QXt22Ev7SuuPrs+xav0ukGB0S6d4ydZdEiM48kLx5kDV+QBPrpVnFyefL8kkQ==}
1255 | engines: {node: '>= 0.4'}
1256 |
1257 | is-bigint@1.1.0:
1258 | resolution: {integrity: sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==}
1259 | engines: {node: '>= 0.4'}
1260 |
1261 | is-boolean-object@1.2.1:
1262 | resolution: {integrity: sha512-l9qO6eFlUETHtuihLcYOaLKByJ1f+N4kthcU9YjHy3N+B3hWv0y/2Nd0mu/7lTFnRQHTrSdXF50HQ3bl5fEnng==}
1263 | engines: {node: '>= 0.4'}
1264 |
1265 | is-bun-module@1.3.0:
1266 | resolution: {integrity: sha512-DgXeu5UWI0IsMQundYb5UAOzm6G2eVnarJ0byP6Tm55iZNKceD59LNPA2L4VvsScTtHcw0yEkVwSf7PC+QoLSA==}
1267 |
1268 | is-callable@1.2.7:
1269 | resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==}
1270 | engines: {node: '>= 0.4'}
1271 |
1272 | is-core-module@2.16.1:
1273 | resolution: {integrity: sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==}
1274 | engines: {node: '>= 0.4'}
1275 |
1276 | is-data-view@1.0.2:
1277 | resolution: {integrity: sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==}
1278 | engines: {node: '>= 0.4'}
1279 |
1280 | is-date-object@1.1.0:
1281 | resolution: {integrity: sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==}
1282 | engines: {node: '>= 0.4'}
1283 |
1284 | is-extglob@2.1.1:
1285 | resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==}
1286 | engines: {node: '>=0.10.0'}
1287 |
1288 | is-finalizationregistry@1.1.1:
1289 | resolution: {integrity: sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==}
1290 | engines: {node: '>= 0.4'}
1291 |
1292 | is-generator-function@1.1.0:
1293 | resolution: {integrity: sha512-nPUB5km40q9e8UfN/Zc24eLlzdSf9OfKByBw9CIdw4H1giPMeA0OIJvbchsCu4npfI2QcMVBsGEBHKZ7wLTWmQ==}
1294 | engines: {node: '>= 0.4'}
1295 |
1296 | is-glob@4.0.3:
1297 | resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==}
1298 | engines: {node: '>=0.10.0'}
1299 |
1300 | is-map@2.0.3:
1301 | resolution: {integrity: sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==}
1302 | engines: {node: '>= 0.4'}
1303 |
1304 | is-number-object@1.1.1:
1305 | resolution: {integrity: sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==}
1306 | engines: {node: '>= 0.4'}
1307 |
1308 | is-number@7.0.0:
1309 | resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==}
1310 | engines: {node: '>=0.12.0'}
1311 |
1312 | is-regex@1.2.1:
1313 | resolution: {integrity: sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==}
1314 | engines: {node: '>= 0.4'}
1315 |
1316 | is-set@2.0.3:
1317 | resolution: {integrity: sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==}
1318 | engines: {node: '>= 0.4'}
1319 |
1320 | is-shared-array-buffer@1.0.4:
1321 | resolution: {integrity: sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==}
1322 | engines: {node: '>= 0.4'}
1323 |
1324 | is-string@1.1.1:
1325 | resolution: {integrity: sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==}
1326 | engines: {node: '>= 0.4'}
1327 |
1328 | is-symbol@1.1.1:
1329 | resolution: {integrity: sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==}
1330 | engines: {node: '>= 0.4'}
1331 |
1332 | is-typed-array@1.1.15:
1333 | resolution: {integrity: sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==}
1334 | engines: {node: '>= 0.4'}
1335 |
1336 | is-weakmap@2.0.2:
1337 | resolution: {integrity: sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==}
1338 | engines: {node: '>= 0.4'}
1339 |
1340 | is-weakref@1.1.0:
1341 | resolution: {integrity: sha512-SXM8Nwyys6nT5WP6pltOwKytLV7FqQ4UiibxVmW+EIosHcmCqkkjViTb5SNssDlkCiEYRP1/pdWUKVvZBmsR2Q==}
1342 | engines: {node: '>= 0.4'}
1343 |
1344 | is-weakset@2.0.4:
1345 | resolution: {integrity: sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==}
1346 | engines: {node: '>= 0.4'}
1347 |
1348 | isarray@2.0.5:
1349 | resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==}
1350 |
1351 | isexe@2.0.0:
1352 | resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==}
1353 |
1354 | iterator.prototype@1.1.5:
1355 | resolution: {integrity: sha512-H0dkQoCa3b2VEeKQBOxFph+JAbcrQdE7KC0UkqwpLmv2EC4P41QXP+rqo9wYodACiG5/WM5s9oDApTU8utwj9g==}
1356 | engines: {node: '>= 0.4'}
1357 |
1358 | js-tokens@4.0.0:
1359 | resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==}
1360 |
1361 | js-yaml@4.1.0:
1362 | resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==}
1363 | hasBin: true
1364 |
1365 | jsesc@3.1.0:
1366 | resolution: {integrity: sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==}
1367 | engines: {node: '>=6'}
1368 | hasBin: true
1369 |
1370 | json-buffer@3.0.1:
1371 | resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==}
1372 |
1373 | json-schema-traverse@0.4.1:
1374 | resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==}
1375 |
1376 | json-stable-stringify-without-jsonify@1.0.1:
1377 | resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==}
1378 |
1379 | json5@1.0.2:
1380 | resolution: {integrity: sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==}
1381 | hasBin: true
1382 |
1383 | json5@2.2.3:
1384 | resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==}
1385 | engines: {node: '>=6'}
1386 | hasBin: true
1387 |
1388 | jsx-ast-utils@3.3.5:
1389 | resolution: {integrity: sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==}
1390 | engines: {node: '>=4.0'}
1391 |
1392 | keyv@4.5.4:
1393 | resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==}
1394 |
1395 | language-subtag-registry@0.3.23:
1396 | resolution: {integrity: sha512-0K65Lea881pHotoGEa5gDlMxt3pctLi2RplBb7Ezh4rRdLEOtgi7n4EwK9lamnUCkKBqaeKRVebTq6BAxSkpXQ==}
1397 |
1398 | language-tags@1.0.9:
1399 | resolution: {integrity: sha512-MbjN408fEndfiQXbFQ1vnd+1NoLDsnQW41410oQBXiyXDMYH5z505juWa4KUE1LqxRC7DgOgZDbKLxHIwm27hA==}
1400 | engines: {node: '>=0.10'}
1401 |
1402 | levn@0.4.1:
1403 | resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==}
1404 | engines: {node: '>= 0.8.0'}
1405 |
1406 | locate-path@6.0.0:
1407 | resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==}
1408 | engines: {node: '>=10'}
1409 |
1410 | lodash.merge@4.6.2:
1411 | resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==}
1412 |
1413 | lodash@4.17.21:
1414 | resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==}
1415 |
1416 | loose-envify@1.4.0:
1417 | resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==}
1418 | hasBin: true
1419 |
1420 | loupe@3.1.2:
1421 | resolution: {integrity: sha512-23I4pFZHmAemUnz8WZXbYRSKYj801VDaNv9ETuMh7IrMc7VuVVSo+Z9iLE3ni30+U48iDWfi30d3twAXBYmnCg==}
1422 |
1423 | lru-cache@5.1.1:
1424 | resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==}
1425 |
1426 | lz-string@1.5.0:
1427 | resolution: {integrity: sha512-h5bgJWpxJNswbU7qCrV0tIKQCaS3blPDrqKWx+QxzuzL1zGUzij9XCWLrSLsJPu5t+eWA/ycetzYAO5IOMcWAQ==}
1428 | hasBin: true
1429 |
1430 | magic-string@0.30.17:
1431 | resolution: {integrity: sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==}
1432 |
1433 | math-intrinsics@1.1.0:
1434 | resolution: {integrity: sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==}
1435 | engines: {node: '>= 0.4'}
1436 |
1437 | merge2@1.4.1:
1438 | resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==}
1439 | engines: {node: '>= 8'}
1440 |
1441 | micromatch@4.0.8:
1442 | resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==}
1443 | engines: {node: '>=8.6'}
1444 |
1445 | min-indent@1.0.1:
1446 | resolution: {integrity: sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==}
1447 | engines: {node: '>=4'}
1448 |
1449 | minimatch@3.1.2:
1450 | resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==}
1451 |
1452 | minimatch@9.0.5:
1453 | resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==}
1454 | engines: {node: '>=16 || 14 >=14.17'}
1455 |
1456 | minimist@1.2.8:
1457 | resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==}
1458 |
1459 | ms@2.1.3:
1460 | resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==}
1461 |
1462 | nanoid@3.3.8:
1463 | resolution: {integrity: sha512-WNLf5Sd8oZxOm+TzppcYk8gVOgP+l58xNy58D0nbUnOxOWRWvlcCV4kUF7ltmI6PsrLl/BgKEyS4mqsGChFN0w==}
1464 | engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
1465 | hasBin: true
1466 |
1467 | natural-compare@1.4.0:
1468 | resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==}
1469 |
1470 | node-releases@2.0.19:
1471 | resolution: {integrity: sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==}
1472 |
1473 | object-assign@4.1.1:
1474 | resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==}
1475 | engines: {node: '>=0.10.0'}
1476 |
1477 | object-inspect@1.13.3:
1478 | resolution: {integrity: sha512-kDCGIbxkDSXE3euJZZXzc6to7fCrKHNI/hSRQnRuQ+BWjFNzZwiFF8fj/6o2t2G9/jTj8PSIYTfCLelLZEeRpA==}
1479 | engines: {node: '>= 0.4'}
1480 |
1481 | object-keys@1.1.1:
1482 | resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==}
1483 | engines: {node: '>= 0.4'}
1484 |
1485 | object.assign@4.1.7:
1486 | resolution: {integrity: sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==}
1487 | engines: {node: '>= 0.4'}
1488 |
1489 | object.entries@1.1.8:
1490 | resolution: {integrity: sha512-cmopxi8VwRIAw/fkijJohSfpef5PdN0pMQJN6VC/ZKvn0LIknWD8KtgY6KlQdEc4tIjcQ3HxSMmnvtzIscdaYQ==}
1491 | engines: {node: '>= 0.4'}
1492 |
1493 | object.fromentries@2.0.8:
1494 | resolution: {integrity: sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==}
1495 | engines: {node: '>= 0.4'}
1496 |
1497 | object.groupby@1.0.3:
1498 | resolution: {integrity: sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ==}
1499 | engines: {node: '>= 0.4'}
1500 |
1501 | object.values@1.2.1:
1502 | resolution: {integrity: sha512-gXah6aZrcUxjWg2zR2MwouP2eHlCBzdV4pygudehaKXSGW4v2AsRQUK+lwwXhii6KFZcunEnmSUoYp5CXibxtA==}
1503 | engines: {node: '>= 0.4'}
1504 |
1505 | optionator@0.9.4:
1506 | resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==}
1507 | engines: {node: '>= 0.8.0'}
1508 |
1509 | own-keys@1.0.1:
1510 | resolution: {integrity: sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg==}
1511 | engines: {node: '>= 0.4'}
1512 |
1513 | p-limit@3.1.0:
1514 | resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==}
1515 | engines: {node: '>=10'}
1516 |
1517 | p-locate@5.0.0:
1518 | resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==}
1519 | engines: {node: '>=10'}
1520 |
1521 | parent-module@1.0.1:
1522 | resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==}
1523 | engines: {node: '>=6'}
1524 |
1525 | path-exists@4.0.0:
1526 | resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==}
1527 | engines: {node: '>=8'}
1528 |
1529 | path-key@3.1.1:
1530 | resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==}
1531 | engines: {node: '>=8'}
1532 |
1533 | path-parse@1.0.7:
1534 | resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==}
1535 |
1536 | pathe@2.0.2:
1537 | resolution: {integrity: sha512-15Ztpk+nov8DR524R4BF7uEuzESgzUEAV4Ah7CUMNGXdE5ELuvxElxGXndBl32vMSsWa1jpNf22Z+Er3sKwq+w==}
1538 |
1539 | pathval@2.0.0:
1540 | resolution: {integrity: sha512-vE7JKRyES09KiunauX7nd2Q9/L7lhok4smP9RZTDeD4MVs72Dp2qNFVz39Nz5a0FVEW0BJR6C0DYrq6unoziZA==}
1541 | engines: {node: '>= 14.16'}
1542 |
1543 | picocolors@1.1.1:
1544 | resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==}
1545 |
1546 | picomatch@2.3.1:
1547 | resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==}
1548 | engines: {node: '>=8.6'}
1549 |
1550 | possible-typed-array-names@1.0.0:
1551 | resolution: {integrity: sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==}
1552 | engines: {node: '>= 0.4'}
1553 |
1554 | postcss@8.5.1:
1555 | resolution: {integrity: sha512-6oz2beyjc5VMn/KV1pPw8fliQkhBXrVn1Z3TVyqZxU8kZpzEKhBdmCFqI6ZbmGtamQvQGuU1sgPTk8ZrXDD7jQ==}
1556 | engines: {node: ^10 || ^12 || >=14}
1557 |
1558 | prelude-ls@1.2.1:
1559 | resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==}
1560 | engines: {node: '>= 0.8.0'}
1561 |
1562 | prettier@3.4.2:
1563 | resolution: {integrity: sha512-e9MewbtFo+Fevyuxn/4rrcDAaq0IYxPGLvObpQjiZBMAzB9IGmzlnG9RZy3FFas+eBMu2vA0CszMeduow5dIuQ==}
1564 | engines: {node: '>=14'}
1565 | hasBin: true
1566 |
1567 | pretty-format@27.5.1:
1568 | resolution: {integrity: sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==}
1569 | engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
1570 |
1571 | prop-types@15.8.1:
1572 | resolution: {integrity: sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==}
1573 |
1574 | punycode@2.3.1:
1575 | resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==}
1576 | engines: {node: '>=6'}
1577 |
1578 | queue-microtask@1.2.3:
1579 | resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==}
1580 |
1581 | react-dom@19.0.0:
1582 | resolution: {integrity: sha512-4GV5sHFG0e/0AD4X+ySy6UJd3jVl1iNsNHdpad0qhABJ11twS3TTBnseqsKurKcsNqCEFeGL3uLpVChpIO3QfQ==}
1583 | peerDependencies:
1584 | react: ^19.0.0
1585 |
1586 | react-is@16.13.1:
1587 | resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==}
1588 |
1589 | react-is@17.0.2:
1590 | resolution: {integrity: sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==}
1591 |
1592 | react@19.0.0:
1593 | resolution: {integrity: sha512-V8AVnmPIICiWpGfm6GLzCR/W5FXLchHop40W4nXBmdlEceh16rCN8O8LNWm5bh5XUX91fh7KpA+W0TgMKmgTpQ==}
1594 | engines: {node: '>=0.10.0'}
1595 |
1596 | redent@3.0.0:
1597 | resolution: {integrity: sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==}
1598 | engines: {node: '>=8'}
1599 |
1600 | reflect.getprototypeof@1.0.10:
1601 | resolution: {integrity: sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==}
1602 | engines: {node: '>= 0.4'}
1603 |
1604 | regenerator-runtime@0.14.1:
1605 | resolution: {integrity: sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==}
1606 |
1607 | regexp.prototype.flags@1.5.4:
1608 | resolution: {integrity: sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==}
1609 | engines: {node: '>= 0.4'}
1610 |
1611 | resolve-from@4.0.0:
1612 | resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==}
1613 | engines: {node: '>=4'}
1614 |
1615 | resolve-pkg-maps@1.0.0:
1616 | resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==}
1617 |
1618 | resolve@1.22.10:
1619 | resolution: {integrity: sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w==}
1620 | engines: {node: '>= 0.4'}
1621 | hasBin: true
1622 |
1623 | resolve@2.0.0-next.5:
1624 | resolution: {integrity: sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==}
1625 | hasBin: true
1626 |
1627 | reusify@1.0.4:
1628 | resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==}
1629 | engines: {iojs: '>=1.0.0', node: '>=0.10.0'}
1630 |
1631 | rollup@4.32.0:
1632 | resolution: {integrity: sha512-JmrhfQR31Q4AuNBjjAX4s+a/Pu/Q8Q9iwjWBsjRH1q52SPFE2NqRMK6fUZKKnvKO6id+h7JIRf0oYsph53eATg==}
1633 | engines: {node: '>=18.0.0', npm: '>=8.0.0'}
1634 | hasBin: true
1635 |
1636 | run-parallel@1.2.0:
1637 | resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==}
1638 |
1639 | safe-array-concat@1.1.3:
1640 | resolution: {integrity: sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q==}
1641 | engines: {node: '>=0.4'}
1642 |
1643 | safe-push-apply@1.0.0:
1644 | resolution: {integrity: sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA==}
1645 | engines: {node: '>= 0.4'}
1646 |
1647 | safe-regex-test@1.1.0:
1648 | resolution: {integrity: sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==}
1649 | engines: {node: '>= 0.4'}
1650 |
1651 | scheduler@0.25.0:
1652 | resolution: {integrity: sha512-xFVuu11jh+xcO7JOAGJNOXld8/TcEHK/4CituBUeUb5hqxJLj9YuemAEuvm9gQ/+pgXYfbQuqAkiYu+u7YEsNA==}
1653 |
1654 | semver@6.3.1:
1655 | resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==}
1656 | hasBin: true
1657 |
1658 | semver@7.6.3:
1659 | resolution: {integrity: sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==}
1660 | engines: {node: '>=10'}
1661 | hasBin: true
1662 |
1663 | set-function-length@1.2.2:
1664 | resolution: {integrity: sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==}
1665 | engines: {node: '>= 0.4'}
1666 |
1667 | set-function-name@2.0.2:
1668 | resolution: {integrity: sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==}
1669 | engines: {node: '>= 0.4'}
1670 |
1671 | set-proto@1.0.0:
1672 | resolution: {integrity: sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==}
1673 | engines: {node: '>= 0.4'}
1674 |
1675 | shebang-command@2.0.0:
1676 | resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==}
1677 | engines: {node: '>=8'}
1678 |
1679 | shebang-regex@3.0.0:
1680 | resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==}
1681 | engines: {node: '>=8'}
1682 |
1683 | side-channel-list@1.0.0:
1684 | resolution: {integrity: sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==}
1685 | engines: {node: '>= 0.4'}
1686 |
1687 | side-channel-map@1.0.1:
1688 | resolution: {integrity: sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==}
1689 | engines: {node: '>= 0.4'}
1690 |
1691 | side-channel-weakmap@1.0.2:
1692 | resolution: {integrity: sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==}
1693 | engines: {node: '>= 0.4'}
1694 |
1695 | side-channel@1.1.0:
1696 | resolution: {integrity: sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==}
1697 | engines: {node: '>= 0.4'}
1698 |
1699 | siginfo@2.0.0:
1700 | resolution: {integrity: sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==}
1701 |
1702 | source-map-js@1.2.1:
1703 | resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==}
1704 | engines: {node: '>=0.10.0'}
1705 |
1706 | stable-hash@0.0.4:
1707 | resolution: {integrity: sha512-LjdcbuBeLcdETCrPn9i8AYAZ1eCtu4ECAWtP7UleOiZ9LzVxRzzUZEoZ8zB24nhkQnDWyET0I+3sWokSDS3E7g==}
1708 |
1709 | stackback@0.0.2:
1710 | resolution: {integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==}
1711 |
1712 | std-env@3.8.0:
1713 | resolution: {integrity: sha512-Bc3YwwCB+OzldMxOXJIIvC6cPRWr/LxOp48CdQTOkPyk/t4JWWJbrilwBd7RJzKV8QW7tJkcgAmeuLLJugl5/w==}
1714 |
1715 | string.prototype.includes@2.0.1:
1716 | resolution: {integrity: sha512-o7+c9bW6zpAdJHTtujeePODAhkuicdAryFsfVKwA+wGw89wJ4GTY484WTucM9hLtDEOpOvI+aHnzqnC5lHp4Rg==}
1717 | engines: {node: '>= 0.4'}
1718 |
1719 | string.prototype.matchall@4.0.12:
1720 | resolution: {integrity: sha512-6CC9uyBL+/48dYizRf7H7VAYCMCNTBeM78x/VTUe9bFEaxBepPJDa1Ow99LqI/1yF7kuy7Q3cQsYMrcjGUcskA==}
1721 | engines: {node: '>= 0.4'}
1722 |
1723 | string.prototype.repeat@1.0.0:
1724 | resolution: {integrity: sha512-0u/TldDbKD8bFCQ/4f5+mNRrXwZ8hg2w7ZR8wa16e8z9XpePWl3eGEcUD0OXpEH/VJH/2G3gjUtR3ZOiBe2S/w==}
1725 |
1726 | string.prototype.trim@1.2.10:
1727 | resolution: {integrity: sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA==}
1728 | engines: {node: '>= 0.4'}
1729 |
1730 | string.prototype.trimend@1.0.9:
1731 | resolution: {integrity: sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ==}
1732 | engines: {node: '>= 0.4'}
1733 |
1734 | string.prototype.trimstart@1.0.8:
1735 | resolution: {integrity: sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==}
1736 | engines: {node: '>= 0.4'}
1737 |
1738 | strip-bom@3.0.0:
1739 | resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==}
1740 | engines: {node: '>=4'}
1741 |
1742 | strip-indent@3.0.0:
1743 | resolution: {integrity: sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==}
1744 | engines: {node: '>=8'}
1745 |
1746 | strip-json-comments@3.1.1:
1747 | resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==}
1748 | engines: {node: '>=8'}
1749 |
1750 | supports-color@7.2.0:
1751 | resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==}
1752 | engines: {node: '>=8'}
1753 |
1754 | supports-preserve-symlinks-flag@1.0.0:
1755 | resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==}
1756 | engines: {node: '>= 0.4'}
1757 |
1758 | tapable@2.2.1:
1759 | resolution: {integrity: sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==}
1760 | engines: {node: '>=6'}
1761 |
1762 | tinybench@2.9.0:
1763 | resolution: {integrity: sha512-0+DUvqWMValLmha6lr4kD8iAMK1HzV0/aKnCtWb9v9641TnP/MFb7Pc2bxoxQjTXAErryXVgUOfv2YqNllqGeg==}
1764 |
1765 | tinyexec@0.3.2:
1766 | resolution: {integrity: sha512-KQQR9yN7R5+OSwaK0XQoj22pwHoTlgYqmUscPYoknOoWCWfj/5/ABTMRi69FrKU5ffPVh5QcFikpWJI/P1ocHA==}
1767 |
1768 | tinypool@1.0.2:
1769 | resolution: {integrity: sha512-al6n+QEANGFOMf/dmUMsuS5/r9B06uwlyNjZZql/zv8J7ybHCgoihBNORZCY2mzUuAnomQa2JdhyHKzZxPCrFA==}
1770 | engines: {node: ^18.0.0 || >=20.0.0}
1771 |
1772 | tinyrainbow@2.0.0:
1773 | resolution: {integrity: sha512-op4nsTR47R6p0vMUUoYl/a+ljLFVtlfaXkLQmqfLR1qHma1h/ysYk4hEXZ880bf2CYgTskvTa/e196Vd5dDQXw==}
1774 | engines: {node: '>=14.0.0'}
1775 |
1776 | tinyspy@3.0.2:
1777 | resolution: {integrity: sha512-n1cw8k1k0x4pgA2+9XrOkFydTerNcJ1zWCO5Nn9scWHTD+5tp8dghT2x1uduQePZTZgd3Tupf+x9BxJjeJi77Q==}
1778 | engines: {node: '>=14.0.0'}
1779 |
1780 | to-regex-range@5.0.1:
1781 | resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==}
1782 | engines: {node: '>=8.0'}
1783 |
1784 | ts-api-utils@2.0.0:
1785 | resolution: {integrity: sha512-xCt/TOAc+EOHS1XPnijD3/yzpH6qg2xppZO1YDqGoVsNXfQfzHpOdNuXwrwOU8u4ITXJyDCTyt8w5g1sZv9ynQ==}
1786 | engines: {node: '>=18.12'}
1787 | peerDependencies:
1788 | typescript: '>=4.8.4'
1789 |
1790 | ts-expect@1.3.0:
1791 | resolution: {integrity: sha512-e4g0EJtAjk64xgnFPD6kTBUtpnMVzDrMb12N1YZV0VvSlhnVT3SGxiYTLdGy8Q5cYHOIC/FAHmZ10eGrAguicQ==}
1792 |
1793 | tsconfck@3.1.4:
1794 | resolution: {integrity: sha512-kdqWFGVJqe+KGYvlSO9NIaWn9jT1Ny4oKVzAJsKii5eoE9snzTJzL4+MMVOMn+fikWGFmKEylcXL710V/kIPJQ==}
1795 | engines: {node: ^18 || >=20}
1796 | hasBin: true
1797 | peerDependencies:
1798 | typescript: ^5.0.0
1799 | peerDependenciesMeta:
1800 | typescript:
1801 | optional: true
1802 |
1803 | tsconfig-paths@3.15.0:
1804 | resolution: {integrity: sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==}
1805 |
1806 | type-check@0.4.0:
1807 | resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==}
1808 | engines: {node: '>= 0.8.0'}
1809 |
1810 | typed-array-buffer@1.0.3:
1811 | resolution: {integrity: sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==}
1812 | engines: {node: '>= 0.4'}
1813 |
1814 | typed-array-byte-length@1.0.3:
1815 | resolution: {integrity: sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg==}
1816 | engines: {node: '>= 0.4'}
1817 |
1818 | typed-array-byte-offset@1.0.4:
1819 | resolution: {integrity: sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ==}
1820 | engines: {node: '>= 0.4'}
1821 |
1822 | typed-array-length@1.0.7:
1823 | resolution: {integrity: sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg==}
1824 | engines: {node: '>= 0.4'}
1825 |
1826 | typescript-eslint@8.21.0:
1827 | resolution: {integrity: sha512-txEKYY4XMKwPXxNkN8+AxAdX6iIJAPiJbHE/FpQccs/sxw8Lf26kqwC3cn0xkHlW8kEbLhkhCsjWuMveaY9Rxw==}
1828 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
1829 | peerDependencies:
1830 | eslint: ^8.57.0 || ^9.0.0
1831 | typescript: '>=4.8.4 <5.8.0'
1832 |
1833 | typescript@5.7.3:
1834 | resolution: {integrity: sha512-84MVSjMEHP+FQRPy3pX9sTVV/INIex71s9TL2Gm5FG/WG1SqXeKyZ0k7/blY/4FdOzI12CBy1vGc4og/eus0fw==}
1835 | engines: {node: '>=14.17'}
1836 | hasBin: true
1837 |
1838 | unbox-primitive@1.1.0:
1839 | resolution: {integrity: sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==}
1840 | engines: {node: '>= 0.4'}
1841 |
1842 | undici-types@6.20.0:
1843 | resolution: {integrity: sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg==}
1844 |
1845 | update-browserslist-db@1.1.3:
1846 | resolution: {integrity: sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw==}
1847 | hasBin: true
1848 | peerDependencies:
1849 | browserslist: '>= 4.21.0'
1850 |
1851 | uri-js@4.4.1:
1852 | resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==}
1853 |
1854 | vite-node@3.0.4:
1855 | resolution: {integrity: sha512-7JZKEzcYV2Nx3u6rlvN8qdo3QV7Fxyt6hx+CCKz9fbWxdX5IvUOmTWEAxMrWxaiSf7CKGLJQ5rFu8prb/jBjOA==}
1856 | engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0}
1857 | hasBin: true
1858 |
1859 | vite-tsconfig-paths@5.1.4:
1860 | resolution: {integrity: sha512-cYj0LRuLV2c2sMqhqhGpaO3LretdtMn/BVX4cPLanIZuwwrkVl+lK84E/miEXkCHWXuq65rhNN4rXsBcOB3S4w==}
1861 | peerDependencies:
1862 | vite: '*'
1863 | peerDependenciesMeta:
1864 | vite:
1865 | optional: true
1866 |
1867 | vite@6.0.11:
1868 | resolution: {integrity: sha512-4VL9mQPKoHy4+FE0NnRE/kbY51TOfaknxAjt3fJbGJxhIpBZiqVzlZDEesWWsuREXHwNdAoOFZ9MkPEVXczHwg==}
1869 | engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0}
1870 | hasBin: true
1871 | peerDependencies:
1872 | '@types/node': ^18.0.0 || ^20.0.0 || >=22.0.0
1873 | jiti: '>=1.21.0'
1874 | less: '*'
1875 | lightningcss: ^1.21.0
1876 | sass: '*'
1877 | sass-embedded: '*'
1878 | stylus: '*'
1879 | sugarss: '*'
1880 | terser: ^5.16.0
1881 | tsx: ^4.8.1
1882 | yaml: ^2.4.2
1883 | peerDependenciesMeta:
1884 | '@types/node':
1885 | optional: true
1886 | jiti:
1887 | optional: true
1888 | less:
1889 | optional: true
1890 | lightningcss:
1891 | optional: true
1892 | sass:
1893 | optional: true
1894 | sass-embedded:
1895 | optional: true
1896 | stylus:
1897 | optional: true
1898 | sugarss:
1899 | optional: true
1900 | terser:
1901 | optional: true
1902 | tsx:
1903 | optional: true
1904 | yaml:
1905 | optional: true
1906 |
1907 | vitest@3.0.4:
1908 | resolution: {integrity: sha512-6XG8oTKy2gnJIFTHP6LD7ExFeNLxiTkK3CfMvT7IfR8IN+BYICCf0lXUQmX7i7JoxUP8QmeP4mTnWXgflu4yjw==}
1909 | engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0}
1910 | hasBin: true
1911 | peerDependencies:
1912 | '@edge-runtime/vm': '*'
1913 | '@types/debug': ^4.1.12
1914 | '@types/node': ^18.0.0 || ^20.0.0 || >=22.0.0
1915 | '@vitest/browser': 3.0.4
1916 | '@vitest/ui': 3.0.4
1917 | happy-dom: '*'
1918 | jsdom: '*'
1919 | peerDependenciesMeta:
1920 | '@edge-runtime/vm':
1921 | optional: true
1922 | '@types/debug':
1923 | optional: true
1924 | '@types/node':
1925 | optional: true
1926 | '@vitest/browser':
1927 | optional: true
1928 | '@vitest/ui':
1929 | optional: true
1930 | happy-dom:
1931 | optional: true
1932 | jsdom:
1933 | optional: true
1934 |
1935 | webidl-conversions@7.0.0:
1936 | resolution: {integrity: sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==}
1937 | engines: {node: '>=12'}
1938 |
1939 | whatwg-mimetype@3.0.0:
1940 | resolution: {integrity: sha512-nt+N2dzIutVRxARx1nghPKGv1xHikU7HKdfafKkLNLindmPU/ch3U31NOCGGA/dmPcmb1VlofO0vnKAcsm0o/Q==}
1941 | engines: {node: '>=12'}
1942 |
1943 | which-boxed-primitive@1.1.1:
1944 | resolution: {integrity: sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==}
1945 | engines: {node: '>= 0.4'}
1946 |
1947 | which-builtin-type@1.2.1:
1948 | resolution: {integrity: sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==}
1949 | engines: {node: '>= 0.4'}
1950 |
1951 | which-collection@1.0.2:
1952 | resolution: {integrity: sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==}
1953 | engines: {node: '>= 0.4'}
1954 |
1955 | which-typed-array@1.1.18:
1956 | resolution: {integrity: sha512-qEcY+KJYlWyLH9vNbsr6/5j59AXk5ni5aakf8ldzBvGde6Iz4sxZGkJyWSAueTG7QhOvNRYb1lDdFmL5Td0QKA==}
1957 | engines: {node: '>= 0.4'}
1958 |
1959 | which@2.0.2:
1960 | resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==}
1961 | engines: {node: '>= 8'}
1962 | hasBin: true
1963 |
1964 | why-is-node-running@2.3.0:
1965 | resolution: {integrity: sha512-hUrmaWBdVDcxvYqnyh09zunKzROWjbZTiNy8dBEjkS7ehEDQibXJ7XvlmtbwuTclUiIyN+CyXQD4Vmko8fNm8w==}
1966 | engines: {node: '>=8'}
1967 | hasBin: true
1968 |
1969 | word-wrap@1.2.5:
1970 | resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==}
1971 | engines: {node: '>=0.10.0'}
1972 |
1973 | yallist@3.1.1:
1974 | resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==}
1975 |
1976 | yocto-queue@0.1.0:
1977 | resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==}
1978 | engines: {node: '>=10'}
1979 |
1980 | zod-validation-error@3.4.1:
1981 | resolution: {integrity: sha512-1KP64yqDPQ3rupxNv7oXhf7KdhHHgaqbKuspVoiN93TT0xrBjql+Svjkdjq/Qh/7GSMmgQs3AfvBT0heE35thw==}
1982 | engines: {node: '>=18.0.0'}
1983 | peerDependencies:
1984 | zod: ^3.24.4
1985 |
1986 | zod@3.25.23:
1987 | resolution: {integrity: sha512-Od2bdMosahjSrSgJtakrwjMDb1zM1A3VIHCPGveZt/3/wlrTWBya2lmEh2OYe4OIu8mPTmmr0gnLHIWQXdtWBg==}
1988 |
1989 | zustand@5.0.3:
1990 | resolution: {integrity: sha512-14fwWQtU3pH4dE0dOpdMiWjddcH+QzKIgk1cl8epwSE7yag43k/AD/m4L6+K7DytAOr9gGBe3/EXj9g7cdostg==}
1991 | engines: {node: '>=12.20.0'}
1992 | peerDependencies:
1993 | '@types/react': '>=18.0.0'
1994 | immer: '>=9.0.6'
1995 | react: '>=18.0.0'
1996 | use-sync-external-store: '>=1.2.0'
1997 | peerDependenciesMeta:
1998 | '@types/react':
1999 | optional: true
2000 | immer:
2001 | optional: true
2002 | react:
2003 | optional: true
2004 | use-sync-external-store:
2005 | optional: true
2006 |
2007 | snapshots:
2008 |
2009 | '@adobe/css-tools@4.4.1': {}
2010 |
2011 | '@ampproject/remapping@2.3.0':
2012 | dependencies:
2013 | '@jridgewell/gen-mapping': 0.3.8
2014 | '@jridgewell/trace-mapping': 0.3.25
2015 |
2016 | '@babel/code-frame@7.26.2':
2017 | dependencies:
2018 | '@babel/helper-validator-identifier': 7.25.9
2019 | js-tokens: 4.0.0
2020 | picocolors: 1.1.1
2021 |
2022 | '@babel/code-frame@7.27.1':
2023 | dependencies:
2024 | '@babel/helper-validator-identifier': 7.27.1
2025 | js-tokens: 4.0.0
2026 | picocolors: 1.1.1
2027 |
2028 | '@babel/compat-data@7.27.2': {}
2029 |
2030 | '@babel/core@7.27.1':
2031 | dependencies:
2032 | '@ampproject/remapping': 2.3.0
2033 | '@babel/code-frame': 7.27.1
2034 | '@babel/generator': 7.27.1
2035 | '@babel/helper-compilation-targets': 7.27.2
2036 | '@babel/helper-module-transforms': 7.27.1(@babel/core@7.27.1)
2037 | '@babel/helpers': 7.27.1
2038 | '@babel/parser': 7.27.2
2039 | '@babel/template': 7.27.2
2040 | '@babel/traverse': 7.27.1
2041 | '@babel/types': 7.27.1
2042 | convert-source-map: 2.0.0
2043 | debug: 4.4.0
2044 | gensync: 1.0.0-beta.2
2045 | json5: 2.2.3
2046 | semver: 6.3.1
2047 | transitivePeerDependencies:
2048 | - supports-color
2049 |
2050 | '@babel/generator@7.27.1':
2051 | dependencies:
2052 | '@babel/parser': 7.27.2
2053 | '@babel/types': 7.27.1
2054 | '@jridgewell/gen-mapping': 0.3.8
2055 | '@jridgewell/trace-mapping': 0.3.25
2056 | jsesc: 3.1.0
2057 |
2058 | '@babel/helper-annotate-as-pure@7.27.1':
2059 | dependencies:
2060 | '@babel/types': 7.27.1
2061 |
2062 | '@babel/helper-compilation-targets@7.27.2':
2063 | dependencies:
2064 | '@babel/compat-data': 7.27.2
2065 | '@babel/helper-validator-option': 7.27.1
2066 | browserslist: 4.24.5
2067 | lru-cache: 5.1.1
2068 | semver: 6.3.1
2069 |
2070 | '@babel/helper-create-class-features-plugin@7.27.1(@babel/core@7.27.1)':
2071 | dependencies:
2072 | '@babel/core': 7.27.1
2073 | '@babel/helper-annotate-as-pure': 7.27.1
2074 | '@babel/helper-member-expression-to-functions': 7.27.1
2075 | '@babel/helper-optimise-call-expression': 7.27.1
2076 | '@babel/helper-replace-supers': 7.27.1(@babel/core@7.27.1)
2077 | '@babel/helper-skip-transparent-expression-wrappers': 7.27.1
2078 | '@babel/traverse': 7.27.1
2079 | semver: 6.3.1
2080 | transitivePeerDependencies:
2081 | - supports-color
2082 |
2083 | '@babel/helper-member-expression-to-functions@7.27.1':
2084 | dependencies:
2085 | '@babel/traverse': 7.27.1
2086 | '@babel/types': 7.27.1
2087 | transitivePeerDependencies:
2088 | - supports-color
2089 |
2090 | '@babel/helper-module-imports@7.27.1':
2091 | dependencies:
2092 | '@babel/traverse': 7.27.1
2093 | '@babel/types': 7.27.1
2094 | transitivePeerDependencies:
2095 | - supports-color
2096 |
2097 | '@babel/helper-module-transforms@7.27.1(@babel/core@7.27.1)':
2098 | dependencies:
2099 | '@babel/core': 7.27.1
2100 | '@babel/helper-module-imports': 7.27.1
2101 | '@babel/helper-validator-identifier': 7.27.1
2102 | '@babel/traverse': 7.27.1
2103 | transitivePeerDependencies:
2104 | - supports-color
2105 |
2106 | '@babel/helper-optimise-call-expression@7.27.1':
2107 | dependencies:
2108 | '@babel/types': 7.27.1
2109 |
2110 | '@babel/helper-plugin-utils@7.27.1': {}
2111 |
2112 | '@babel/helper-replace-supers@7.27.1(@babel/core@7.27.1)':
2113 | dependencies:
2114 | '@babel/core': 7.27.1
2115 | '@babel/helper-member-expression-to-functions': 7.27.1
2116 | '@babel/helper-optimise-call-expression': 7.27.1
2117 | '@babel/traverse': 7.27.1
2118 | transitivePeerDependencies:
2119 | - supports-color
2120 |
2121 | '@babel/helper-skip-transparent-expression-wrappers@7.27.1':
2122 | dependencies:
2123 | '@babel/traverse': 7.27.1
2124 | '@babel/types': 7.27.1
2125 | transitivePeerDependencies:
2126 | - supports-color
2127 |
2128 | '@babel/helper-string-parser@7.27.1': {}
2129 |
2130 | '@babel/helper-validator-identifier@7.25.9': {}
2131 |
2132 | '@babel/helper-validator-identifier@7.27.1': {}
2133 |
2134 | '@babel/helper-validator-option@7.27.1': {}
2135 |
2136 | '@babel/helpers@7.27.1':
2137 | dependencies:
2138 | '@babel/template': 7.27.2
2139 | '@babel/types': 7.27.1
2140 |
2141 | '@babel/parser@7.27.2':
2142 | dependencies:
2143 | '@babel/types': 7.27.1
2144 |
2145 | '@babel/plugin-transform-private-methods@7.27.1(@babel/core@7.27.1)':
2146 | dependencies:
2147 | '@babel/core': 7.27.1
2148 | '@babel/helper-create-class-features-plugin': 7.27.1(@babel/core@7.27.1)
2149 | '@babel/helper-plugin-utils': 7.27.1
2150 | transitivePeerDependencies:
2151 | - supports-color
2152 |
2153 | '@babel/runtime@7.26.7':
2154 | dependencies:
2155 | regenerator-runtime: 0.14.1
2156 |
2157 | '@babel/template@7.27.2':
2158 | dependencies:
2159 | '@babel/code-frame': 7.27.1
2160 | '@babel/parser': 7.27.2
2161 | '@babel/types': 7.27.1
2162 |
2163 | '@babel/traverse@7.27.1':
2164 | dependencies:
2165 | '@babel/code-frame': 7.27.1
2166 | '@babel/generator': 7.27.1
2167 | '@babel/parser': 7.27.2
2168 | '@babel/template': 7.27.2
2169 | '@babel/types': 7.27.1
2170 | debug: 4.4.0
2171 | globals: 11.12.0
2172 | transitivePeerDependencies:
2173 | - supports-color
2174 |
2175 | '@babel/types@7.27.1':
2176 | dependencies:
2177 | '@babel/helper-string-parser': 7.27.1
2178 | '@babel/helper-validator-identifier': 7.27.1
2179 |
2180 | '@esbuild/aix-ppc64@0.24.2':
2181 | optional: true
2182 |
2183 | '@esbuild/android-arm64@0.24.2':
2184 | optional: true
2185 |
2186 | '@esbuild/android-arm@0.24.2':
2187 | optional: true
2188 |
2189 | '@esbuild/android-x64@0.24.2':
2190 | optional: true
2191 |
2192 | '@esbuild/darwin-arm64@0.24.2':
2193 | optional: true
2194 |
2195 | '@esbuild/darwin-x64@0.24.2':
2196 | optional: true
2197 |
2198 | '@esbuild/freebsd-arm64@0.24.2':
2199 | optional: true
2200 |
2201 | '@esbuild/freebsd-x64@0.24.2':
2202 | optional: true
2203 |
2204 | '@esbuild/linux-arm64@0.24.2':
2205 | optional: true
2206 |
2207 | '@esbuild/linux-arm@0.24.2':
2208 | optional: true
2209 |
2210 | '@esbuild/linux-ia32@0.24.2':
2211 | optional: true
2212 |
2213 | '@esbuild/linux-loong64@0.24.2':
2214 | optional: true
2215 |
2216 | '@esbuild/linux-mips64el@0.24.2':
2217 | optional: true
2218 |
2219 | '@esbuild/linux-ppc64@0.24.2':
2220 | optional: true
2221 |
2222 | '@esbuild/linux-riscv64@0.24.2':
2223 | optional: true
2224 |
2225 | '@esbuild/linux-s390x@0.24.2':
2226 | optional: true
2227 |
2228 | '@esbuild/linux-x64@0.24.2':
2229 | optional: true
2230 |
2231 | '@esbuild/netbsd-arm64@0.24.2':
2232 | optional: true
2233 |
2234 | '@esbuild/netbsd-x64@0.24.2':
2235 | optional: true
2236 |
2237 | '@esbuild/openbsd-arm64@0.24.2':
2238 | optional: true
2239 |
2240 | '@esbuild/openbsd-x64@0.24.2':
2241 | optional: true
2242 |
2243 | '@esbuild/sunos-x64@0.24.2':
2244 | optional: true
2245 |
2246 | '@esbuild/win32-arm64@0.24.2':
2247 | optional: true
2248 |
2249 | '@esbuild/win32-ia32@0.24.2':
2250 | optional: true
2251 |
2252 | '@esbuild/win32-x64@0.24.2':
2253 | optional: true
2254 |
2255 | '@eslint-community/eslint-utils@4.4.1(eslint@9.19.0)':
2256 | dependencies:
2257 | eslint: 9.19.0
2258 | eslint-visitor-keys: 3.4.3
2259 |
2260 | '@eslint-community/regexpp@4.12.1': {}
2261 |
2262 | '@eslint/config-array@0.19.1':
2263 | dependencies:
2264 | '@eslint/object-schema': 2.1.5
2265 | debug: 4.4.0
2266 | minimatch: 3.1.2
2267 | transitivePeerDependencies:
2268 | - supports-color
2269 |
2270 | '@eslint/core@0.10.0':
2271 | dependencies:
2272 | '@types/json-schema': 7.0.15
2273 |
2274 | '@eslint/eslintrc@3.2.0':
2275 | dependencies:
2276 | ajv: 6.12.6
2277 | debug: 4.4.0
2278 | espree: 10.3.0
2279 | globals: 14.0.0
2280 | ignore: 5.3.2
2281 | import-fresh: 3.3.0
2282 | js-yaml: 4.1.0
2283 | minimatch: 3.1.2
2284 | strip-json-comments: 3.1.1
2285 | transitivePeerDependencies:
2286 | - supports-color
2287 |
2288 | '@eslint/js@9.19.0': {}
2289 |
2290 | '@eslint/object-schema@2.1.5': {}
2291 |
2292 | '@eslint/plugin-kit@0.2.5':
2293 | dependencies:
2294 | '@eslint/core': 0.10.0
2295 | levn: 0.4.1
2296 |
2297 | '@humanfs/core@0.19.1': {}
2298 |
2299 | '@humanfs/node@0.16.6':
2300 | dependencies:
2301 | '@humanfs/core': 0.19.1
2302 | '@humanwhocodes/retry': 0.3.1
2303 |
2304 | '@humanwhocodes/module-importer@1.0.1': {}
2305 |
2306 | '@humanwhocodes/retry@0.3.1': {}
2307 |
2308 | '@humanwhocodes/retry@0.4.1': {}
2309 |
2310 | '@jridgewell/gen-mapping@0.3.8':
2311 | dependencies:
2312 | '@jridgewell/set-array': 1.2.1
2313 | '@jridgewell/sourcemap-codec': 1.5.0
2314 | '@jridgewell/trace-mapping': 0.3.25
2315 |
2316 | '@jridgewell/resolve-uri@3.1.2': {}
2317 |
2318 | '@jridgewell/set-array@1.2.1': {}
2319 |
2320 | '@jridgewell/sourcemap-codec@1.5.0': {}
2321 |
2322 | '@jridgewell/trace-mapping@0.3.25':
2323 | dependencies:
2324 | '@jridgewell/resolve-uri': 3.1.2
2325 | '@jridgewell/sourcemap-codec': 1.5.0
2326 |
2327 | '@nodelib/fs.scandir@2.1.5':
2328 | dependencies:
2329 | '@nodelib/fs.stat': 2.0.5
2330 | run-parallel: 1.2.0
2331 |
2332 | '@nodelib/fs.stat@2.0.5': {}
2333 |
2334 | '@nodelib/fs.walk@1.2.8':
2335 | dependencies:
2336 | '@nodelib/fs.scandir': 2.1.5
2337 | fastq: 1.18.0
2338 |
2339 | '@nolyfill/is-core-module@1.0.39': {}
2340 |
2341 | '@rollup/rollup-android-arm-eabi@4.32.0':
2342 | optional: true
2343 |
2344 | '@rollup/rollup-android-arm64@4.32.0':
2345 | optional: true
2346 |
2347 | '@rollup/rollup-darwin-arm64@4.32.0':
2348 | optional: true
2349 |
2350 | '@rollup/rollup-darwin-x64@4.32.0':
2351 | optional: true
2352 |
2353 | '@rollup/rollup-freebsd-arm64@4.32.0':
2354 | optional: true
2355 |
2356 | '@rollup/rollup-freebsd-x64@4.32.0':
2357 | optional: true
2358 |
2359 | '@rollup/rollup-linux-arm-gnueabihf@4.32.0':
2360 | optional: true
2361 |
2362 | '@rollup/rollup-linux-arm-musleabihf@4.32.0':
2363 | optional: true
2364 |
2365 | '@rollup/rollup-linux-arm64-gnu@4.32.0':
2366 | optional: true
2367 |
2368 | '@rollup/rollup-linux-arm64-musl@4.32.0':
2369 | optional: true
2370 |
2371 | '@rollup/rollup-linux-loongarch64-gnu@4.32.0':
2372 | optional: true
2373 |
2374 | '@rollup/rollup-linux-powerpc64le-gnu@4.32.0':
2375 | optional: true
2376 |
2377 | '@rollup/rollup-linux-riscv64-gnu@4.32.0':
2378 | optional: true
2379 |
2380 | '@rollup/rollup-linux-s390x-gnu@4.32.0':
2381 | optional: true
2382 |
2383 | '@rollup/rollup-linux-x64-gnu@4.32.0':
2384 | optional: true
2385 |
2386 | '@rollup/rollup-linux-x64-musl@4.32.0':
2387 | optional: true
2388 |
2389 | '@rollup/rollup-win32-arm64-msvc@4.32.0':
2390 | optional: true
2391 |
2392 | '@rollup/rollup-win32-ia32-msvc@4.32.0':
2393 | optional: true
2394 |
2395 | '@rollup/rollup-win32-x64-msvc@4.32.0':
2396 | optional: true
2397 |
2398 | '@rtsao/scc@1.1.0': {}
2399 |
2400 | '@testing-library/dom@10.4.0':
2401 | dependencies:
2402 | '@babel/code-frame': 7.26.2
2403 | '@babel/runtime': 7.26.7
2404 | '@types/aria-query': 5.0.4
2405 | aria-query: 5.3.0
2406 | chalk: 4.1.2
2407 | dom-accessibility-api: 0.5.16
2408 | lz-string: 1.5.0
2409 | pretty-format: 27.5.1
2410 |
2411 | '@testing-library/jest-dom@6.6.3':
2412 | dependencies:
2413 | '@adobe/css-tools': 4.4.1
2414 | aria-query: 5.3.2
2415 | chalk: 3.0.0
2416 | css.escape: 1.5.1
2417 | dom-accessibility-api: 0.6.3
2418 | lodash: 4.17.21
2419 | redent: 3.0.0
2420 |
2421 | '@testing-library/react@16.2.0(@testing-library/dom@10.4.0)(@types/react-dom@19.0.3(@types/react@19.0.8))(@types/react@19.0.8)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)':
2422 | dependencies:
2423 | '@babel/runtime': 7.26.7
2424 | '@testing-library/dom': 10.4.0
2425 | react: 19.0.0
2426 | react-dom: 19.0.0(react@19.0.0)
2427 | optionalDependencies:
2428 | '@types/react': 19.0.8
2429 | '@types/react-dom': 19.0.3(@types/react@19.0.8)
2430 |
2431 | '@testing-library/user-event@14.6.1(@testing-library/dom@10.4.0)':
2432 | dependencies:
2433 | '@testing-library/dom': 10.4.0
2434 |
2435 | '@types/aria-query@5.0.4': {}
2436 |
2437 | '@types/estree@1.0.6': {}
2438 |
2439 | '@types/json-schema@7.0.15': {}
2440 |
2441 | '@types/json5@0.0.29': {}
2442 |
2443 | '@types/node@22.10.10':
2444 | dependencies:
2445 | undici-types: 6.20.0
2446 |
2447 | '@types/react-dom@19.0.3(@types/react@19.0.8)':
2448 | dependencies:
2449 | '@types/react': 19.0.8
2450 |
2451 | '@types/react@19.0.8':
2452 | dependencies:
2453 | csstype: 3.1.3
2454 |
2455 | '@typescript-eslint/eslint-plugin@8.21.0(@typescript-eslint/parser@8.21.0(eslint@9.19.0)(typescript@5.7.3))(eslint@9.19.0)(typescript@5.7.3)':
2456 | dependencies:
2457 | '@eslint-community/regexpp': 4.12.1
2458 | '@typescript-eslint/parser': 8.21.0(eslint@9.19.0)(typescript@5.7.3)
2459 | '@typescript-eslint/scope-manager': 8.21.0
2460 | '@typescript-eslint/type-utils': 8.21.0(eslint@9.19.0)(typescript@5.7.3)
2461 | '@typescript-eslint/utils': 8.21.0(eslint@9.19.0)(typescript@5.7.3)
2462 | '@typescript-eslint/visitor-keys': 8.21.0
2463 | eslint: 9.19.0
2464 | graphemer: 1.4.0
2465 | ignore: 5.3.2
2466 | natural-compare: 1.4.0
2467 | ts-api-utils: 2.0.0(typescript@5.7.3)
2468 | typescript: 5.7.3
2469 | transitivePeerDependencies:
2470 | - supports-color
2471 |
2472 | '@typescript-eslint/parser@8.21.0(eslint@9.19.0)(typescript@5.7.3)':
2473 | dependencies:
2474 | '@typescript-eslint/scope-manager': 8.21.0
2475 | '@typescript-eslint/types': 8.21.0
2476 | '@typescript-eslint/typescript-estree': 8.21.0(typescript@5.7.3)
2477 | '@typescript-eslint/visitor-keys': 8.21.0
2478 | debug: 4.4.0
2479 | eslint: 9.19.0
2480 | typescript: 5.7.3
2481 | transitivePeerDependencies:
2482 | - supports-color
2483 |
2484 | '@typescript-eslint/scope-manager@8.21.0':
2485 | dependencies:
2486 | '@typescript-eslint/types': 8.21.0
2487 | '@typescript-eslint/visitor-keys': 8.21.0
2488 |
2489 | '@typescript-eslint/type-utils@8.21.0(eslint@9.19.0)(typescript@5.7.3)':
2490 | dependencies:
2491 | '@typescript-eslint/typescript-estree': 8.21.0(typescript@5.7.3)
2492 | '@typescript-eslint/utils': 8.21.0(eslint@9.19.0)(typescript@5.7.3)
2493 | debug: 4.4.0
2494 | eslint: 9.19.0
2495 | ts-api-utils: 2.0.0(typescript@5.7.3)
2496 | typescript: 5.7.3
2497 | transitivePeerDependencies:
2498 | - supports-color
2499 |
2500 | '@typescript-eslint/types@8.21.0': {}
2501 |
2502 | '@typescript-eslint/typescript-estree@8.21.0(typescript@5.7.3)':
2503 | dependencies:
2504 | '@typescript-eslint/types': 8.21.0
2505 | '@typescript-eslint/visitor-keys': 8.21.0
2506 | debug: 4.4.0
2507 | fast-glob: 3.3.3
2508 | is-glob: 4.0.3
2509 | minimatch: 9.0.5
2510 | semver: 7.6.3
2511 | ts-api-utils: 2.0.0(typescript@5.7.3)
2512 | typescript: 5.7.3
2513 | transitivePeerDependencies:
2514 | - supports-color
2515 |
2516 | '@typescript-eslint/utils@8.21.0(eslint@9.19.0)(typescript@5.7.3)':
2517 | dependencies:
2518 | '@eslint-community/eslint-utils': 4.4.1(eslint@9.19.0)
2519 | '@typescript-eslint/scope-manager': 8.21.0
2520 | '@typescript-eslint/types': 8.21.0
2521 | '@typescript-eslint/typescript-estree': 8.21.0(typescript@5.7.3)
2522 | eslint: 9.19.0
2523 | typescript: 5.7.3
2524 | transitivePeerDependencies:
2525 | - supports-color
2526 |
2527 | '@typescript-eslint/visitor-keys@8.21.0':
2528 | dependencies:
2529 | '@typescript-eslint/types': 8.21.0
2530 | eslint-visitor-keys: 4.2.0
2531 |
2532 | '@vitest/expect@3.0.4':
2533 | dependencies:
2534 | '@vitest/spy': 3.0.4
2535 | '@vitest/utils': 3.0.4
2536 | chai: 5.1.2
2537 | tinyrainbow: 2.0.0
2538 |
2539 | '@vitest/mocker@3.0.4(vite@6.0.11(@types/node@22.10.10))':
2540 | dependencies:
2541 | '@vitest/spy': 3.0.4
2542 | estree-walker: 3.0.3
2543 | magic-string: 0.30.17
2544 | optionalDependencies:
2545 | vite: 6.0.11(@types/node@22.10.10)
2546 |
2547 | '@vitest/pretty-format@3.0.4':
2548 | dependencies:
2549 | tinyrainbow: 2.0.0
2550 |
2551 | '@vitest/runner@3.0.4':
2552 | dependencies:
2553 | '@vitest/utils': 3.0.4
2554 | pathe: 2.0.2
2555 |
2556 | '@vitest/snapshot@3.0.4':
2557 | dependencies:
2558 | '@vitest/pretty-format': 3.0.4
2559 | magic-string: 0.30.17
2560 | pathe: 2.0.2
2561 |
2562 | '@vitest/spy@3.0.4':
2563 | dependencies:
2564 | tinyspy: 3.0.2
2565 |
2566 | '@vitest/utils@3.0.4':
2567 | dependencies:
2568 | '@vitest/pretty-format': 3.0.4
2569 | loupe: 3.1.2
2570 | tinyrainbow: 2.0.0
2571 |
2572 | acorn-jsx@5.3.2(acorn@8.14.0):
2573 | dependencies:
2574 | acorn: 8.14.0
2575 |
2576 | acorn@8.14.0: {}
2577 |
2578 | ajv@6.12.6:
2579 | dependencies:
2580 | fast-deep-equal: 3.1.3
2581 | fast-json-stable-stringify: 2.1.0
2582 | json-schema-traverse: 0.4.1
2583 | uri-js: 4.4.1
2584 |
2585 | ansi-regex@5.0.1: {}
2586 |
2587 | ansi-styles@4.3.0:
2588 | dependencies:
2589 | color-convert: 2.0.1
2590 |
2591 | ansi-styles@5.2.0: {}
2592 |
2593 | argparse@2.0.1: {}
2594 |
2595 | aria-query@5.3.0:
2596 | dependencies:
2597 | dequal: 2.0.3
2598 |
2599 | aria-query@5.3.2: {}
2600 |
2601 | array-buffer-byte-length@1.0.2:
2602 | dependencies:
2603 | call-bound: 1.0.3
2604 | is-array-buffer: 3.0.5
2605 |
2606 | array-includes@3.1.8:
2607 | dependencies:
2608 | call-bind: 1.0.8
2609 | define-properties: 1.2.1
2610 | es-abstract: 1.23.9
2611 | es-object-atoms: 1.1.1
2612 | get-intrinsic: 1.2.7
2613 | is-string: 1.1.1
2614 |
2615 | array.prototype.findlast@1.2.5:
2616 | dependencies:
2617 | call-bind: 1.0.8
2618 | define-properties: 1.2.1
2619 | es-abstract: 1.23.9
2620 | es-errors: 1.3.0
2621 | es-object-atoms: 1.1.1
2622 | es-shim-unscopables: 1.0.2
2623 |
2624 | array.prototype.findlastindex@1.2.5:
2625 | dependencies:
2626 | call-bind: 1.0.8
2627 | define-properties: 1.2.1
2628 | es-abstract: 1.23.9
2629 | es-errors: 1.3.0
2630 | es-object-atoms: 1.1.1
2631 | es-shim-unscopables: 1.0.2
2632 |
2633 | array.prototype.flat@1.3.3:
2634 | dependencies:
2635 | call-bind: 1.0.8
2636 | define-properties: 1.2.1
2637 | es-abstract: 1.23.9
2638 | es-shim-unscopables: 1.0.2
2639 |
2640 | array.prototype.flatmap@1.3.3:
2641 | dependencies:
2642 | call-bind: 1.0.8
2643 | define-properties: 1.2.1
2644 | es-abstract: 1.23.9
2645 | es-shim-unscopables: 1.0.2
2646 |
2647 | array.prototype.tosorted@1.1.4:
2648 | dependencies:
2649 | call-bind: 1.0.8
2650 | define-properties: 1.2.1
2651 | es-abstract: 1.23.9
2652 | es-errors: 1.3.0
2653 | es-shim-unscopables: 1.0.2
2654 |
2655 | arraybuffer.prototype.slice@1.0.4:
2656 | dependencies:
2657 | array-buffer-byte-length: 1.0.2
2658 | call-bind: 1.0.8
2659 | define-properties: 1.2.1
2660 | es-abstract: 1.23.9
2661 | es-errors: 1.3.0
2662 | get-intrinsic: 1.2.7
2663 | is-array-buffer: 3.0.5
2664 |
2665 | assertion-error@2.0.1: {}
2666 |
2667 | ast-types-flow@0.0.8: {}
2668 |
2669 | async-function@1.0.0: {}
2670 |
2671 | available-typed-arrays@1.0.7:
2672 | dependencies:
2673 | possible-typed-array-names: 1.0.0
2674 |
2675 | axe-core@4.10.2: {}
2676 |
2677 | axobject-query@4.1.0: {}
2678 |
2679 | balanced-match@1.0.2: {}
2680 |
2681 | brace-expansion@1.1.11:
2682 | dependencies:
2683 | balanced-match: 1.0.2
2684 | concat-map: 0.0.1
2685 |
2686 | brace-expansion@2.0.1:
2687 | dependencies:
2688 | balanced-match: 1.0.2
2689 |
2690 | braces@3.0.3:
2691 | dependencies:
2692 | fill-range: 7.1.1
2693 |
2694 | browserslist@4.24.5:
2695 | dependencies:
2696 | caniuse-lite: 1.0.30001718
2697 | electron-to-chromium: 1.5.157
2698 | node-releases: 2.0.19
2699 | update-browserslist-db: 1.1.3(browserslist@4.24.5)
2700 |
2701 | cac@6.7.14: {}
2702 |
2703 | call-bind-apply-helpers@1.0.1:
2704 | dependencies:
2705 | es-errors: 1.3.0
2706 | function-bind: 1.1.2
2707 |
2708 | call-bind@1.0.8:
2709 | dependencies:
2710 | call-bind-apply-helpers: 1.0.1
2711 | es-define-property: 1.0.1
2712 | get-intrinsic: 1.2.7
2713 | set-function-length: 1.2.2
2714 |
2715 | call-bound@1.0.3:
2716 | dependencies:
2717 | call-bind-apply-helpers: 1.0.1
2718 | get-intrinsic: 1.2.7
2719 |
2720 | callsites@3.1.0: {}
2721 |
2722 | caniuse-lite@1.0.30001718: {}
2723 |
2724 | chai@5.1.2:
2725 | dependencies:
2726 | assertion-error: 2.0.1
2727 | check-error: 2.1.1
2728 | deep-eql: 5.0.2
2729 | loupe: 3.1.2
2730 | pathval: 2.0.0
2731 |
2732 | chalk@3.0.0:
2733 | dependencies:
2734 | ansi-styles: 4.3.0
2735 | supports-color: 7.2.0
2736 |
2737 | chalk@4.1.2:
2738 | dependencies:
2739 | ansi-styles: 4.3.0
2740 | supports-color: 7.2.0
2741 |
2742 | check-error@2.1.1: {}
2743 |
2744 | color-convert@2.0.1:
2745 | dependencies:
2746 | color-name: 1.1.4
2747 |
2748 | color-name@1.1.4: {}
2749 |
2750 | concat-map@0.0.1: {}
2751 |
2752 | convert-source-map@2.0.0: {}
2753 |
2754 | cross-spawn@7.0.6:
2755 | dependencies:
2756 | path-key: 3.1.1
2757 | shebang-command: 2.0.0
2758 | which: 2.0.2
2759 |
2760 | css.escape@1.5.1: {}
2761 |
2762 | csstype@3.1.3: {}
2763 |
2764 | damerau-levenshtein@1.0.8: {}
2765 |
2766 | data-view-buffer@1.0.2:
2767 | dependencies:
2768 | call-bound: 1.0.3
2769 | es-errors: 1.3.0
2770 | is-data-view: 1.0.2
2771 |
2772 | data-view-byte-length@1.0.2:
2773 | dependencies:
2774 | call-bound: 1.0.3
2775 | es-errors: 1.3.0
2776 | is-data-view: 1.0.2
2777 |
2778 | data-view-byte-offset@1.0.1:
2779 | dependencies:
2780 | call-bound: 1.0.3
2781 | es-errors: 1.3.0
2782 | is-data-view: 1.0.2
2783 |
2784 | debug@3.2.7:
2785 | dependencies:
2786 | ms: 2.1.3
2787 |
2788 | debug@4.4.0:
2789 | dependencies:
2790 | ms: 2.1.3
2791 |
2792 | deep-eql@5.0.2: {}
2793 |
2794 | deep-is@0.1.4: {}
2795 |
2796 | define-data-property@1.1.4:
2797 | dependencies:
2798 | es-define-property: 1.0.1
2799 | es-errors: 1.3.0
2800 | gopd: 1.2.0
2801 |
2802 | define-properties@1.2.1:
2803 | dependencies:
2804 | define-data-property: 1.1.4
2805 | has-property-descriptors: 1.0.2
2806 | object-keys: 1.1.1
2807 |
2808 | dequal@2.0.3: {}
2809 |
2810 | doctrine@2.1.0:
2811 | dependencies:
2812 | esutils: 2.0.3
2813 |
2814 | dom-accessibility-api@0.5.16: {}
2815 |
2816 | dom-accessibility-api@0.6.3: {}
2817 |
2818 | dunder-proto@1.0.1:
2819 | dependencies:
2820 | call-bind-apply-helpers: 1.0.1
2821 | es-errors: 1.3.0
2822 | gopd: 1.2.0
2823 |
2824 | electron-to-chromium@1.5.157: {}
2825 |
2826 | emoji-regex@9.2.2: {}
2827 |
2828 | enhanced-resolve@5.18.0:
2829 | dependencies:
2830 | graceful-fs: 4.2.11
2831 | tapable: 2.2.1
2832 |
2833 | es-abstract@1.23.9:
2834 | dependencies:
2835 | array-buffer-byte-length: 1.0.2
2836 | arraybuffer.prototype.slice: 1.0.4
2837 | available-typed-arrays: 1.0.7
2838 | call-bind: 1.0.8
2839 | call-bound: 1.0.3
2840 | data-view-buffer: 1.0.2
2841 | data-view-byte-length: 1.0.2
2842 | data-view-byte-offset: 1.0.1
2843 | es-define-property: 1.0.1
2844 | es-errors: 1.3.0
2845 | es-object-atoms: 1.1.1
2846 | es-set-tostringtag: 2.1.0
2847 | es-to-primitive: 1.3.0
2848 | function.prototype.name: 1.1.8
2849 | get-intrinsic: 1.2.7
2850 | get-proto: 1.0.1
2851 | get-symbol-description: 1.1.0
2852 | globalthis: 1.0.4
2853 | gopd: 1.2.0
2854 | has-property-descriptors: 1.0.2
2855 | has-proto: 1.2.0
2856 | has-symbols: 1.1.0
2857 | hasown: 2.0.2
2858 | internal-slot: 1.1.0
2859 | is-array-buffer: 3.0.5
2860 | is-callable: 1.2.7
2861 | is-data-view: 1.0.2
2862 | is-regex: 1.2.1
2863 | is-shared-array-buffer: 1.0.4
2864 | is-string: 1.1.1
2865 | is-typed-array: 1.1.15
2866 | is-weakref: 1.1.0
2867 | math-intrinsics: 1.1.0
2868 | object-inspect: 1.13.3
2869 | object-keys: 1.1.1
2870 | object.assign: 4.1.7
2871 | own-keys: 1.0.1
2872 | regexp.prototype.flags: 1.5.4
2873 | safe-array-concat: 1.1.3
2874 | safe-push-apply: 1.0.0
2875 | safe-regex-test: 1.1.0
2876 | set-proto: 1.0.0
2877 | string.prototype.trim: 1.2.10
2878 | string.prototype.trimend: 1.0.9
2879 | string.prototype.trimstart: 1.0.8
2880 | typed-array-buffer: 1.0.3
2881 | typed-array-byte-length: 1.0.3
2882 | typed-array-byte-offset: 1.0.4
2883 | typed-array-length: 1.0.7
2884 | unbox-primitive: 1.1.0
2885 | which-typed-array: 1.1.18
2886 |
2887 | es-define-property@1.0.1: {}
2888 |
2889 | es-errors@1.3.0: {}
2890 |
2891 | es-iterator-helpers@1.2.1:
2892 | dependencies:
2893 | call-bind: 1.0.8
2894 | call-bound: 1.0.3
2895 | define-properties: 1.2.1
2896 | es-abstract: 1.23.9
2897 | es-errors: 1.3.0
2898 | es-set-tostringtag: 2.1.0
2899 | function-bind: 1.1.2
2900 | get-intrinsic: 1.2.7
2901 | globalthis: 1.0.4
2902 | gopd: 1.2.0
2903 | has-property-descriptors: 1.0.2
2904 | has-proto: 1.2.0
2905 | has-symbols: 1.1.0
2906 | internal-slot: 1.1.0
2907 | iterator.prototype: 1.1.5
2908 | safe-array-concat: 1.1.3
2909 |
2910 | es-module-lexer@1.6.0: {}
2911 |
2912 | es-object-atoms@1.1.1:
2913 | dependencies:
2914 | es-errors: 1.3.0
2915 |
2916 | es-set-tostringtag@2.1.0:
2917 | dependencies:
2918 | es-errors: 1.3.0
2919 | get-intrinsic: 1.2.7
2920 | has-tostringtag: 1.0.2
2921 | hasown: 2.0.2
2922 |
2923 | es-shim-unscopables@1.0.2:
2924 | dependencies:
2925 | hasown: 2.0.2
2926 |
2927 | es-to-primitive@1.3.0:
2928 | dependencies:
2929 | is-callable: 1.2.7
2930 | is-date-object: 1.1.0
2931 | is-symbol: 1.1.1
2932 |
2933 | esbuild@0.24.2:
2934 | optionalDependencies:
2935 | '@esbuild/aix-ppc64': 0.24.2
2936 | '@esbuild/android-arm': 0.24.2
2937 | '@esbuild/android-arm64': 0.24.2
2938 | '@esbuild/android-x64': 0.24.2
2939 | '@esbuild/darwin-arm64': 0.24.2
2940 | '@esbuild/darwin-x64': 0.24.2
2941 | '@esbuild/freebsd-arm64': 0.24.2
2942 | '@esbuild/freebsd-x64': 0.24.2
2943 | '@esbuild/linux-arm': 0.24.2
2944 | '@esbuild/linux-arm64': 0.24.2
2945 | '@esbuild/linux-ia32': 0.24.2
2946 | '@esbuild/linux-loong64': 0.24.2
2947 | '@esbuild/linux-mips64el': 0.24.2
2948 | '@esbuild/linux-ppc64': 0.24.2
2949 | '@esbuild/linux-riscv64': 0.24.2
2950 | '@esbuild/linux-s390x': 0.24.2
2951 | '@esbuild/linux-x64': 0.24.2
2952 | '@esbuild/netbsd-arm64': 0.24.2
2953 | '@esbuild/netbsd-x64': 0.24.2
2954 | '@esbuild/openbsd-arm64': 0.24.2
2955 | '@esbuild/openbsd-x64': 0.24.2
2956 | '@esbuild/sunos-x64': 0.24.2
2957 | '@esbuild/win32-arm64': 0.24.2
2958 | '@esbuild/win32-ia32': 0.24.2
2959 | '@esbuild/win32-x64': 0.24.2
2960 |
2961 | escalade@3.2.0: {}
2962 |
2963 | escape-string-regexp@4.0.0: {}
2964 |
2965 | eslint-import-resolver-node@0.3.9:
2966 | dependencies:
2967 | debug: 3.2.7
2968 | is-core-module: 2.16.1
2969 | resolve: 1.22.10
2970 | transitivePeerDependencies:
2971 | - supports-color
2972 |
2973 | eslint-import-resolver-typescript@3.7.0(eslint-plugin-import@2.31.0)(eslint@9.19.0):
2974 | dependencies:
2975 | '@nolyfill/is-core-module': 1.0.39
2976 | debug: 4.4.0
2977 | enhanced-resolve: 5.18.0
2978 | eslint: 9.19.0
2979 | fast-glob: 3.3.3
2980 | get-tsconfig: 4.10.0
2981 | is-bun-module: 1.3.0
2982 | is-glob: 4.0.3
2983 | stable-hash: 0.0.4
2984 | optionalDependencies:
2985 | eslint-plugin-import: 2.31.0(@typescript-eslint/parser@8.21.0(eslint@9.19.0)(typescript@5.7.3))(eslint-import-resolver-typescript@3.7.0)(eslint@9.19.0)
2986 | transitivePeerDependencies:
2987 | - supports-color
2988 |
2989 | eslint-module-utils@2.12.0(@typescript-eslint/parser@8.21.0(eslint@9.19.0)(typescript@5.7.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.7.0(eslint-plugin-import@2.31.0)(eslint@9.19.0))(eslint@9.19.0):
2990 | dependencies:
2991 | debug: 3.2.7
2992 | optionalDependencies:
2993 | '@typescript-eslint/parser': 8.21.0(eslint@9.19.0)(typescript@5.7.3)
2994 | eslint: 9.19.0
2995 | eslint-import-resolver-node: 0.3.9
2996 | eslint-import-resolver-typescript: 3.7.0(eslint-plugin-import@2.31.0)(eslint@9.19.0)
2997 | transitivePeerDependencies:
2998 | - supports-color
2999 |
3000 | eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.21.0(eslint@9.19.0)(typescript@5.7.3))(eslint-import-resolver-typescript@3.7.0)(eslint@9.19.0):
3001 | dependencies:
3002 | '@rtsao/scc': 1.1.0
3003 | array-includes: 3.1.8
3004 | array.prototype.findlastindex: 1.2.5
3005 | array.prototype.flat: 1.3.3
3006 | array.prototype.flatmap: 1.3.3
3007 | debug: 3.2.7
3008 | doctrine: 2.1.0
3009 | eslint: 9.19.0
3010 | eslint-import-resolver-node: 0.3.9
3011 | eslint-module-utils: 2.12.0(@typescript-eslint/parser@8.21.0(eslint@9.19.0)(typescript@5.7.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.7.0(eslint-plugin-import@2.31.0)(eslint@9.19.0))(eslint@9.19.0)
3012 | hasown: 2.0.2
3013 | is-core-module: 2.16.1
3014 | is-glob: 4.0.3
3015 | minimatch: 3.1.2
3016 | object.fromentries: 2.0.8
3017 | object.groupby: 1.0.3
3018 | object.values: 1.2.1
3019 | semver: 6.3.1
3020 | string.prototype.trimend: 1.0.9
3021 | tsconfig-paths: 3.15.0
3022 | optionalDependencies:
3023 | '@typescript-eslint/parser': 8.21.0(eslint@9.19.0)(typescript@5.7.3)
3024 | transitivePeerDependencies:
3025 | - eslint-import-resolver-typescript
3026 | - eslint-import-resolver-webpack
3027 | - supports-color
3028 |
3029 | eslint-plugin-jsx-a11y@6.10.2(eslint@9.19.0):
3030 | dependencies:
3031 | aria-query: 5.3.2
3032 | array-includes: 3.1.8
3033 | array.prototype.flatmap: 1.3.3
3034 | ast-types-flow: 0.0.8
3035 | axe-core: 4.10.2
3036 | axobject-query: 4.1.0
3037 | damerau-levenshtein: 1.0.8
3038 | emoji-regex: 9.2.2
3039 | eslint: 9.19.0
3040 | hasown: 2.0.2
3041 | jsx-ast-utils: 3.3.5
3042 | language-tags: 1.0.9
3043 | minimatch: 3.1.2
3044 | object.fromentries: 2.0.8
3045 | safe-regex-test: 1.1.0
3046 | string.prototype.includes: 2.0.1
3047 |
3048 | eslint-plugin-react-hooks@6.0.0-rc.1(eslint@9.19.0):
3049 | dependencies:
3050 | '@babel/core': 7.27.1
3051 | '@babel/parser': 7.27.2
3052 | '@babel/plugin-transform-private-methods': 7.27.1(@babel/core@7.27.1)
3053 | eslint: 9.19.0
3054 | hermes-parser: 0.25.1
3055 | zod: 3.25.23
3056 | zod-validation-error: 3.4.1(zod@3.25.23)
3057 | transitivePeerDependencies:
3058 | - supports-color
3059 |
3060 | eslint-plugin-react@7.37.4(eslint@9.19.0):
3061 | dependencies:
3062 | array-includes: 3.1.8
3063 | array.prototype.findlast: 1.2.5
3064 | array.prototype.flatmap: 1.3.3
3065 | array.prototype.tosorted: 1.1.4
3066 | doctrine: 2.1.0
3067 | es-iterator-helpers: 1.2.1
3068 | eslint: 9.19.0
3069 | estraverse: 5.3.0
3070 | hasown: 2.0.2
3071 | jsx-ast-utils: 3.3.5
3072 | minimatch: 3.1.2
3073 | object.entries: 1.1.8
3074 | object.fromentries: 2.0.8
3075 | object.values: 1.2.1
3076 | prop-types: 15.8.1
3077 | resolve: 2.0.0-next.5
3078 | semver: 6.3.1
3079 | string.prototype.matchall: 4.0.12
3080 | string.prototype.repeat: 1.0.0
3081 |
3082 | eslint-scope@8.2.0:
3083 | dependencies:
3084 | esrecurse: 4.3.0
3085 | estraverse: 5.3.0
3086 |
3087 | eslint-visitor-keys@3.4.3: {}
3088 |
3089 | eslint-visitor-keys@4.2.0: {}
3090 |
3091 | eslint@9.19.0:
3092 | dependencies:
3093 | '@eslint-community/eslint-utils': 4.4.1(eslint@9.19.0)
3094 | '@eslint-community/regexpp': 4.12.1
3095 | '@eslint/config-array': 0.19.1
3096 | '@eslint/core': 0.10.0
3097 | '@eslint/eslintrc': 3.2.0
3098 | '@eslint/js': 9.19.0
3099 | '@eslint/plugin-kit': 0.2.5
3100 | '@humanfs/node': 0.16.6
3101 | '@humanwhocodes/module-importer': 1.0.1
3102 | '@humanwhocodes/retry': 0.4.1
3103 | '@types/estree': 1.0.6
3104 | '@types/json-schema': 7.0.15
3105 | ajv: 6.12.6
3106 | chalk: 4.1.2
3107 | cross-spawn: 7.0.6
3108 | debug: 4.4.0
3109 | escape-string-regexp: 4.0.0
3110 | eslint-scope: 8.2.0
3111 | eslint-visitor-keys: 4.2.0
3112 | espree: 10.3.0
3113 | esquery: 1.6.0
3114 | esutils: 2.0.3
3115 | fast-deep-equal: 3.1.3
3116 | file-entry-cache: 8.0.0
3117 | find-up: 5.0.0
3118 | glob-parent: 6.0.2
3119 | ignore: 5.3.2
3120 | imurmurhash: 0.1.4
3121 | is-glob: 4.0.3
3122 | json-stable-stringify-without-jsonify: 1.0.1
3123 | lodash.merge: 4.6.2
3124 | minimatch: 3.1.2
3125 | natural-compare: 1.4.0
3126 | optionator: 0.9.4
3127 | transitivePeerDependencies:
3128 | - supports-color
3129 |
3130 | espree@10.3.0:
3131 | dependencies:
3132 | acorn: 8.14.0
3133 | acorn-jsx: 5.3.2(acorn@8.14.0)
3134 | eslint-visitor-keys: 4.2.0
3135 |
3136 | esquery@1.6.0:
3137 | dependencies:
3138 | estraverse: 5.3.0
3139 |
3140 | esrecurse@4.3.0:
3141 | dependencies:
3142 | estraverse: 5.3.0
3143 |
3144 | estraverse@5.3.0: {}
3145 |
3146 | estree-walker@3.0.3:
3147 | dependencies:
3148 | '@types/estree': 1.0.6
3149 |
3150 | esutils@2.0.3: {}
3151 |
3152 | expect-type@1.1.0: {}
3153 |
3154 | fast-deep-equal@3.1.3: {}
3155 |
3156 | fast-glob@3.3.3:
3157 | dependencies:
3158 | '@nodelib/fs.stat': 2.0.5
3159 | '@nodelib/fs.walk': 1.2.8
3160 | glob-parent: 5.1.2
3161 | merge2: 1.4.1
3162 | micromatch: 4.0.8
3163 |
3164 | fast-json-stable-stringify@2.1.0: {}
3165 |
3166 | fast-levenshtein@2.0.6: {}
3167 |
3168 | fastq@1.18.0:
3169 | dependencies:
3170 | reusify: 1.0.4
3171 |
3172 | file-entry-cache@8.0.0:
3173 | dependencies:
3174 | flat-cache: 4.0.1
3175 |
3176 | fill-range@7.1.1:
3177 | dependencies:
3178 | to-regex-range: 5.0.1
3179 |
3180 | find-up@5.0.0:
3181 | dependencies:
3182 | locate-path: 6.0.0
3183 | path-exists: 4.0.0
3184 |
3185 | flat-cache@4.0.1:
3186 | dependencies:
3187 | flatted: 3.3.2
3188 | keyv: 4.5.4
3189 |
3190 | flatted@3.3.2: {}
3191 |
3192 | for-each@0.3.4:
3193 | dependencies:
3194 | is-callable: 1.2.7
3195 |
3196 | fsevents@2.3.3:
3197 | optional: true
3198 |
3199 | function-bind@1.1.2: {}
3200 |
3201 | function.prototype.name@1.1.8:
3202 | dependencies:
3203 | call-bind: 1.0.8
3204 | call-bound: 1.0.3
3205 | define-properties: 1.2.1
3206 | functions-have-names: 1.2.3
3207 | hasown: 2.0.2
3208 | is-callable: 1.2.7
3209 |
3210 | functions-have-names@1.2.3: {}
3211 |
3212 | gensync@1.0.0-beta.2: {}
3213 |
3214 | get-intrinsic@1.2.7:
3215 | dependencies:
3216 | call-bind-apply-helpers: 1.0.1
3217 | es-define-property: 1.0.1
3218 | es-errors: 1.3.0
3219 | es-object-atoms: 1.1.1
3220 | function-bind: 1.1.2
3221 | get-proto: 1.0.1
3222 | gopd: 1.2.0
3223 | has-symbols: 1.1.0
3224 | hasown: 2.0.2
3225 | math-intrinsics: 1.1.0
3226 |
3227 | get-proto@1.0.1:
3228 | dependencies:
3229 | dunder-proto: 1.0.1
3230 | es-object-atoms: 1.1.1
3231 |
3232 | get-symbol-description@1.1.0:
3233 | dependencies:
3234 | call-bound: 1.0.3
3235 | es-errors: 1.3.0
3236 | get-intrinsic: 1.2.7
3237 |
3238 | get-tsconfig@4.10.0:
3239 | dependencies:
3240 | resolve-pkg-maps: 1.0.0
3241 |
3242 | glob-parent@5.1.2:
3243 | dependencies:
3244 | is-glob: 4.0.3
3245 |
3246 | glob-parent@6.0.2:
3247 | dependencies:
3248 | is-glob: 4.0.3
3249 |
3250 | globals@11.12.0: {}
3251 |
3252 | globals@14.0.0: {}
3253 |
3254 | globalthis@1.0.4:
3255 | dependencies:
3256 | define-properties: 1.2.1
3257 | gopd: 1.2.0
3258 |
3259 | globrex@0.1.2: {}
3260 |
3261 | gopd@1.2.0: {}
3262 |
3263 | graceful-fs@4.2.11: {}
3264 |
3265 | graphemer@1.4.0: {}
3266 |
3267 | happy-dom@16.7.2:
3268 | dependencies:
3269 | webidl-conversions: 7.0.0
3270 | whatwg-mimetype: 3.0.0
3271 |
3272 | has-bigints@1.1.0: {}
3273 |
3274 | has-flag@4.0.0: {}
3275 |
3276 | has-property-descriptors@1.0.2:
3277 | dependencies:
3278 | es-define-property: 1.0.1
3279 |
3280 | has-proto@1.2.0:
3281 | dependencies:
3282 | dunder-proto: 1.0.1
3283 |
3284 | has-symbols@1.1.0: {}
3285 |
3286 | has-tostringtag@1.0.2:
3287 | dependencies:
3288 | has-symbols: 1.1.0
3289 |
3290 | hasown@2.0.2:
3291 | dependencies:
3292 | function-bind: 1.1.2
3293 |
3294 | hermes-estree@0.25.1: {}
3295 |
3296 | hermes-parser@0.25.1:
3297 | dependencies:
3298 | hermes-estree: 0.25.1
3299 |
3300 | ignore@5.3.2: {}
3301 |
3302 | immer@10.1.1: {}
3303 |
3304 | import-fresh@3.3.0:
3305 | dependencies:
3306 | parent-module: 1.0.1
3307 | resolve-from: 4.0.0
3308 |
3309 | imurmurhash@0.1.4: {}
3310 |
3311 | indent-string@4.0.0: {}
3312 |
3313 | internal-slot@1.1.0:
3314 | dependencies:
3315 | es-errors: 1.3.0
3316 | hasown: 2.0.2
3317 | side-channel: 1.1.0
3318 |
3319 | is-array-buffer@3.0.5:
3320 | dependencies:
3321 | call-bind: 1.0.8
3322 | call-bound: 1.0.3
3323 | get-intrinsic: 1.2.7
3324 |
3325 | is-async-function@2.1.1:
3326 | dependencies:
3327 | async-function: 1.0.0
3328 | call-bound: 1.0.3
3329 | get-proto: 1.0.1
3330 | has-tostringtag: 1.0.2
3331 | safe-regex-test: 1.1.0
3332 |
3333 | is-bigint@1.1.0:
3334 | dependencies:
3335 | has-bigints: 1.1.0
3336 |
3337 | is-boolean-object@1.2.1:
3338 | dependencies:
3339 | call-bound: 1.0.3
3340 | has-tostringtag: 1.0.2
3341 |
3342 | is-bun-module@1.3.0:
3343 | dependencies:
3344 | semver: 7.6.3
3345 |
3346 | is-callable@1.2.7: {}
3347 |
3348 | is-core-module@2.16.1:
3349 | dependencies:
3350 | hasown: 2.0.2
3351 |
3352 | is-data-view@1.0.2:
3353 | dependencies:
3354 | call-bound: 1.0.3
3355 | get-intrinsic: 1.2.7
3356 | is-typed-array: 1.1.15
3357 |
3358 | is-date-object@1.1.0:
3359 | dependencies:
3360 | call-bound: 1.0.3
3361 | has-tostringtag: 1.0.2
3362 |
3363 | is-extglob@2.1.1: {}
3364 |
3365 | is-finalizationregistry@1.1.1:
3366 | dependencies:
3367 | call-bound: 1.0.3
3368 |
3369 | is-generator-function@1.1.0:
3370 | dependencies:
3371 | call-bound: 1.0.3
3372 | get-proto: 1.0.1
3373 | has-tostringtag: 1.0.2
3374 | safe-regex-test: 1.1.0
3375 |
3376 | is-glob@4.0.3:
3377 | dependencies:
3378 | is-extglob: 2.1.1
3379 |
3380 | is-map@2.0.3: {}
3381 |
3382 | is-number-object@1.1.1:
3383 | dependencies:
3384 | call-bound: 1.0.3
3385 | has-tostringtag: 1.0.2
3386 |
3387 | is-number@7.0.0: {}
3388 |
3389 | is-regex@1.2.1:
3390 | dependencies:
3391 | call-bound: 1.0.3
3392 | gopd: 1.2.0
3393 | has-tostringtag: 1.0.2
3394 | hasown: 2.0.2
3395 |
3396 | is-set@2.0.3: {}
3397 |
3398 | is-shared-array-buffer@1.0.4:
3399 | dependencies:
3400 | call-bound: 1.0.3
3401 |
3402 | is-string@1.1.1:
3403 | dependencies:
3404 | call-bound: 1.0.3
3405 | has-tostringtag: 1.0.2
3406 |
3407 | is-symbol@1.1.1:
3408 | dependencies:
3409 | call-bound: 1.0.3
3410 | has-symbols: 1.1.0
3411 | safe-regex-test: 1.1.0
3412 |
3413 | is-typed-array@1.1.15:
3414 | dependencies:
3415 | which-typed-array: 1.1.18
3416 |
3417 | is-weakmap@2.0.2: {}
3418 |
3419 | is-weakref@1.1.0:
3420 | dependencies:
3421 | call-bound: 1.0.3
3422 |
3423 | is-weakset@2.0.4:
3424 | dependencies:
3425 | call-bound: 1.0.3
3426 | get-intrinsic: 1.2.7
3427 |
3428 | isarray@2.0.5: {}
3429 |
3430 | isexe@2.0.0: {}
3431 |
3432 | iterator.prototype@1.1.5:
3433 | dependencies:
3434 | define-data-property: 1.1.4
3435 | es-object-atoms: 1.1.1
3436 | get-intrinsic: 1.2.7
3437 | get-proto: 1.0.1
3438 | has-symbols: 1.1.0
3439 | set-function-name: 2.0.2
3440 |
3441 | js-tokens@4.0.0: {}
3442 |
3443 | js-yaml@4.1.0:
3444 | dependencies:
3445 | argparse: 2.0.1
3446 |
3447 | jsesc@3.1.0: {}
3448 |
3449 | json-buffer@3.0.1: {}
3450 |
3451 | json-schema-traverse@0.4.1: {}
3452 |
3453 | json-stable-stringify-without-jsonify@1.0.1: {}
3454 |
3455 | json5@1.0.2:
3456 | dependencies:
3457 | minimist: 1.2.8
3458 |
3459 | json5@2.2.3: {}
3460 |
3461 | jsx-ast-utils@3.3.5:
3462 | dependencies:
3463 | array-includes: 3.1.8
3464 | array.prototype.flat: 1.3.3
3465 | object.assign: 4.1.7
3466 | object.values: 1.2.1
3467 |
3468 | keyv@4.5.4:
3469 | dependencies:
3470 | json-buffer: 3.0.1
3471 |
3472 | language-subtag-registry@0.3.23: {}
3473 |
3474 | language-tags@1.0.9:
3475 | dependencies:
3476 | language-subtag-registry: 0.3.23
3477 |
3478 | levn@0.4.1:
3479 | dependencies:
3480 | prelude-ls: 1.2.1
3481 | type-check: 0.4.0
3482 |
3483 | locate-path@6.0.0:
3484 | dependencies:
3485 | p-locate: 5.0.0
3486 |
3487 | lodash.merge@4.6.2: {}
3488 |
3489 | lodash@4.17.21: {}
3490 |
3491 | loose-envify@1.4.0:
3492 | dependencies:
3493 | js-tokens: 4.0.0
3494 |
3495 | loupe@3.1.2: {}
3496 |
3497 | lru-cache@5.1.1:
3498 | dependencies:
3499 | yallist: 3.1.1
3500 |
3501 | lz-string@1.5.0: {}
3502 |
3503 | magic-string@0.30.17:
3504 | dependencies:
3505 | '@jridgewell/sourcemap-codec': 1.5.0
3506 |
3507 | math-intrinsics@1.1.0: {}
3508 |
3509 | merge2@1.4.1: {}
3510 |
3511 | micromatch@4.0.8:
3512 | dependencies:
3513 | braces: 3.0.3
3514 | picomatch: 2.3.1
3515 |
3516 | min-indent@1.0.1: {}
3517 |
3518 | minimatch@3.1.2:
3519 | dependencies:
3520 | brace-expansion: 1.1.11
3521 |
3522 | minimatch@9.0.5:
3523 | dependencies:
3524 | brace-expansion: 2.0.1
3525 |
3526 | minimist@1.2.8: {}
3527 |
3528 | ms@2.1.3: {}
3529 |
3530 | nanoid@3.3.8: {}
3531 |
3532 | natural-compare@1.4.0: {}
3533 |
3534 | node-releases@2.0.19: {}
3535 |
3536 | object-assign@4.1.1: {}
3537 |
3538 | object-inspect@1.13.3: {}
3539 |
3540 | object-keys@1.1.1: {}
3541 |
3542 | object.assign@4.1.7:
3543 | dependencies:
3544 | call-bind: 1.0.8
3545 | call-bound: 1.0.3
3546 | define-properties: 1.2.1
3547 | es-object-atoms: 1.1.1
3548 | has-symbols: 1.1.0
3549 | object-keys: 1.1.1
3550 |
3551 | object.entries@1.1.8:
3552 | dependencies:
3553 | call-bind: 1.0.8
3554 | define-properties: 1.2.1
3555 | es-object-atoms: 1.1.1
3556 |
3557 | object.fromentries@2.0.8:
3558 | dependencies:
3559 | call-bind: 1.0.8
3560 | define-properties: 1.2.1
3561 | es-abstract: 1.23.9
3562 | es-object-atoms: 1.1.1
3563 |
3564 | object.groupby@1.0.3:
3565 | dependencies:
3566 | call-bind: 1.0.8
3567 | define-properties: 1.2.1
3568 | es-abstract: 1.23.9
3569 |
3570 | object.values@1.2.1:
3571 | dependencies:
3572 | call-bind: 1.0.8
3573 | call-bound: 1.0.3
3574 | define-properties: 1.2.1
3575 | es-object-atoms: 1.1.1
3576 |
3577 | optionator@0.9.4:
3578 | dependencies:
3579 | deep-is: 0.1.4
3580 | fast-levenshtein: 2.0.6
3581 | levn: 0.4.1
3582 | prelude-ls: 1.2.1
3583 | type-check: 0.4.0
3584 | word-wrap: 1.2.5
3585 |
3586 | own-keys@1.0.1:
3587 | dependencies:
3588 | get-intrinsic: 1.2.7
3589 | object-keys: 1.1.1
3590 | safe-push-apply: 1.0.0
3591 |
3592 | p-limit@3.1.0:
3593 | dependencies:
3594 | yocto-queue: 0.1.0
3595 |
3596 | p-locate@5.0.0:
3597 | dependencies:
3598 | p-limit: 3.1.0
3599 |
3600 | parent-module@1.0.1:
3601 | dependencies:
3602 | callsites: 3.1.0
3603 |
3604 | path-exists@4.0.0: {}
3605 |
3606 | path-key@3.1.1: {}
3607 |
3608 | path-parse@1.0.7: {}
3609 |
3610 | pathe@2.0.2: {}
3611 |
3612 | pathval@2.0.0: {}
3613 |
3614 | picocolors@1.1.1: {}
3615 |
3616 | picomatch@2.3.1: {}
3617 |
3618 | possible-typed-array-names@1.0.0: {}
3619 |
3620 | postcss@8.5.1:
3621 | dependencies:
3622 | nanoid: 3.3.8
3623 | picocolors: 1.1.1
3624 | source-map-js: 1.2.1
3625 |
3626 | prelude-ls@1.2.1: {}
3627 |
3628 | prettier@3.4.2: {}
3629 |
3630 | pretty-format@27.5.1:
3631 | dependencies:
3632 | ansi-regex: 5.0.1
3633 | ansi-styles: 5.2.0
3634 | react-is: 17.0.2
3635 |
3636 | prop-types@15.8.1:
3637 | dependencies:
3638 | loose-envify: 1.4.0
3639 | object-assign: 4.1.1
3640 | react-is: 16.13.1
3641 |
3642 | punycode@2.3.1: {}
3643 |
3644 | queue-microtask@1.2.3: {}
3645 |
3646 | react-dom@19.0.0(react@19.0.0):
3647 | dependencies:
3648 | react: 19.0.0
3649 | scheduler: 0.25.0
3650 |
3651 | react-is@16.13.1: {}
3652 |
3653 | react-is@17.0.2: {}
3654 |
3655 | react@19.0.0: {}
3656 |
3657 | redent@3.0.0:
3658 | dependencies:
3659 | indent-string: 4.0.0
3660 | strip-indent: 3.0.0
3661 |
3662 | reflect.getprototypeof@1.0.10:
3663 | dependencies:
3664 | call-bind: 1.0.8
3665 | define-properties: 1.2.1
3666 | es-abstract: 1.23.9
3667 | es-errors: 1.3.0
3668 | es-object-atoms: 1.1.1
3669 | get-intrinsic: 1.2.7
3670 | get-proto: 1.0.1
3671 | which-builtin-type: 1.2.1
3672 |
3673 | regenerator-runtime@0.14.1: {}
3674 |
3675 | regexp.prototype.flags@1.5.4:
3676 | dependencies:
3677 | call-bind: 1.0.8
3678 | define-properties: 1.2.1
3679 | es-errors: 1.3.0
3680 | get-proto: 1.0.1
3681 | gopd: 1.2.0
3682 | set-function-name: 2.0.2
3683 |
3684 | resolve-from@4.0.0: {}
3685 |
3686 | resolve-pkg-maps@1.0.0: {}
3687 |
3688 | resolve@1.22.10:
3689 | dependencies:
3690 | is-core-module: 2.16.1
3691 | path-parse: 1.0.7
3692 | supports-preserve-symlinks-flag: 1.0.0
3693 |
3694 | resolve@2.0.0-next.5:
3695 | dependencies:
3696 | is-core-module: 2.16.1
3697 | path-parse: 1.0.7
3698 | supports-preserve-symlinks-flag: 1.0.0
3699 |
3700 | reusify@1.0.4: {}
3701 |
3702 | rollup@4.32.0:
3703 | dependencies:
3704 | '@types/estree': 1.0.6
3705 | optionalDependencies:
3706 | '@rollup/rollup-android-arm-eabi': 4.32.0
3707 | '@rollup/rollup-android-arm64': 4.32.0
3708 | '@rollup/rollup-darwin-arm64': 4.32.0
3709 | '@rollup/rollup-darwin-x64': 4.32.0
3710 | '@rollup/rollup-freebsd-arm64': 4.32.0
3711 | '@rollup/rollup-freebsd-x64': 4.32.0
3712 | '@rollup/rollup-linux-arm-gnueabihf': 4.32.0
3713 | '@rollup/rollup-linux-arm-musleabihf': 4.32.0
3714 | '@rollup/rollup-linux-arm64-gnu': 4.32.0
3715 | '@rollup/rollup-linux-arm64-musl': 4.32.0
3716 | '@rollup/rollup-linux-loongarch64-gnu': 4.32.0
3717 | '@rollup/rollup-linux-powerpc64le-gnu': 4.32.0
3718 | '@rollup/rollup-linux-riscv64-gnu': 4.32.0
3719 | '@rollup/rollup-linux-s390x-gnu': 4.32.0
3720 | '@rollup/rollup-linux-x64-gnu': 4.32.0
3721 | '@rollup/rollup-linux-x64-musl': 4.32.0
3722 | '@rollup/rollup-win32-arm64-msvc': 4.32.0
3723 | '@rollup/rollup-win32-ia32-msvc': 4.32.0
3724 | '@rollup/rollup-win32-x64-msvc': 4.32.0
3725 | fsevents: 2.3.3
3726 |
3727 | run-parallel@1.2.0:
3728 | dependencies:
3729 | queue-microtask: 1.2.3
3730 |
3731 | safe-array-concat@1.1.3:
3732 | dependencies:
3733 | call-bind: 1.0.8
3734 | call-bound: 1.0.3
3735 | get-intrinsic: 1.2.7
3736 | has-symbols: 1.1.0
3737 | isarray: 2.0.5
3738 |
3739 | safe-push-apply@1.0.0:
3740 | dependencies:
3741 | es-errors: 1.3.0
3742 | isarray: 2.0.5
3743 |
3744 | safe-regex-test@1.1.0:
3745 | dependencies:
3746 | call-bound: 1.0.3
3747 | es-errors: 1.3.0
3748 | is-regex: 1.2.1
3749 |
3750 | scheduler@0.25.0: {}
3751 |
3752 | semver@6.3.1: {}
3753 |
3754 | semver@7.6.3: {}
3755 |
3756 | set-function-length@1.2.2:
3757 | dependencies:
3758 | define-data-property: 1.1.4
3759 | es-errors: 1.3.0
3760 | function-bind: 1.1.2
3761 | get-intrinsic: 1.2.7
3762 | gopd: 1.2.0
3763 | has-property-descriptors: 1.0.2
3764 |
3765 | set-function-name@2.0.2:
3766 | dependencies:
3767 | define-data-property: 1.1.4
3768 | es-errors: 1.3.0
3769 | functions-have-names: 1.2.3
3770 | has-property-descriptors: 1.0.2
3771 |
3772 | set-proto@1.0.0:
3773 | dependencies:
3774 | dunder-proto: 1.0.1
3775 | es-errors: 1.3.0
3776 | es-object-atoms: 1.1.1
3777 |
3778 | shebang-command@2.0.0:
3779 | dependencies:
3780 | shebang-regex: 3.0.0
3781 |
3782 | shebang-regex@3.0.0: {}
3783 |
3784 | side-channel-list@1.0.0:
3785 | dependencies:
3786 | es-errors: 1.3.0
3787 | object-inspect: 1.13.3
3788 |
3789 | side-channel-map@1.0.1:
3790 | dependencies:
3791 | call-bound: 1.0.3
3792 | es-errors: 1.3.0
3793 | get-intrinsic: 1.2.7
3794 | object-inspect: 1.13.3
3795 |
3796 | side-channel-weakmap@1.0.2:
3797 | dependencies:
3798 | call-bound: 1.0.3
3799 | es-errors: 1.3.0
3800 | get-intrinsic: 1.2.7
3801 | object-inspect: 1.13.3
3802 | side-channel-map: 1.0.1
3803 |
3804 | side-channel@1.1.0:
3805 | dependencies:
3806 | es-errors: 1.3.0
3807 | object-inspect: 1.13.3
3808 | side-channel-list: 1.0.0
3809 | side-channel-map: 1.0.1
3810 | side-channel-weakmap: 1.0.2
3811 |
3812 | siginfo@2.0.0: {}
3813 |
3814 | source-map-js@1.2.1: {}
3815 |
3816 | stable-hash@0.0.4: {}
3817 |
3818 | stackback@0.0.2: {}
3819 |
3820 | std-env@3.8.0: {}
3821 |
3822 | string.prototype.includes@2.0.1:
3823 | dependencies:
3824 | call-bind: 1.0.8
3825 | define-properties: 1.2.1
3826 | es-abstract: 1.23.9
3827 |
3828 | string.prototype.matchall@4.0.12:
3829 | dependencies:
3830 | call-bind: 1.0.8
3831 | call-bound: 1.0.3
3832 | define-properties: 1.2.1
3833 | es-abstract: 1.23.9
3834 | es-errors: 1.3.0
3835 | es-object-atoms: 1.1.1
3836 | get-intrinsic: 1.2.7
3837 | gopd: 1.2.0
3838 | has-symbols: 1.1.0
3839 | internal-slot: 1.1.0
3840 | regexp.prototype.flags: 1.5.4
3841 | set-function-name: 2.0.2
3842 | side-channel: 1.1.0
3843 |
3844 | string.prototype.repeat@1.0.0:
3845 | dependencies:
3846 | define-properties: 1.2.1
3847 | es-abstract: 1.23.9
3848 |
3849 | string.prototype.trim@1.2.10:
3850 | dependencies:
3851 | call-bind: 1.0.8
3852 | call-bound: 1.0.3
3853 | define-data-property: 1.1.4
3854 | define-properties: 1.2.1
3855 | es-abstract: 1.23.9
3856 | es-object-atoms: 1.1.1
3857 | has-property-descriptors: 1.0.2
3858 |
3859 | string.prototype.trimend@1.0.9:
3860 | dependencies:
3861 | call-bind: 1.0.8
3862 | call-bound: 1.0.3
3863 | define-properties: 1.2.1
3864 | es-object-atoms: 1.1.1
3865 |
3866 | string.prototype.trimstart@1.0.8:
3867 | dependencies:
3868 | call-bind: 1.0.8
3869 | define-properties: 1.2.1
3870 | es-object-atoms: 1.1.1
3871 |
3872 | strip-bom@3.0.0: {}
3873 |
3874 | strip-indent@3.0.0:
3875 | dependencies:
3876 | min-indent: 1.0.1
3877 |
3878 | strip-json-comments@3.1.1: {}
3879 |
3880 | supports-color@7.2.0:
3881 | dependencies:
3882 | has-flag: 4.0.0
3883 |
3884 | supports-preserve-symlinks-flag@1.0.0: {}
3885 |
3886 | tapable@2.2.1: {}
3887 |
3888 | tinybench@2.9.0: {}
3889 |
3890 | tinyexec@0.3.2: {}
3891 |
3892 | tinypool@1.0.2: {}
3893 |
3894 | tinyrainbow@2.0.0: {}
3895 |
3896 | tinyspy@3.0.2: {}
3897 |
3898 | to-regex-range@5.0.1:
3899 | dependencies:
3900 | is-number: 7.0.0
3901 |
3902 | ts-api-utils@2.0.0(typescript@5.7.3):
3903 | dependencies:
3904 | typescript: 5.7.3
3905 |
3906 | ts-expect@1.3.0: {}
3907 |
3908 | tsconfck@3.1.4(typescript@5.7.3):
3909 | optionalDependencies:
3910 | typescript: 5.7.3
3911 |
3912 | tsconfig-paths@3.15.0:
3913 | dependencies:
3914 | '@types/json5': 0.0.29
3915 | json5: 1.0.2
3916 | minimist: 1.2.8
3917 | strip-bom: 3.0.0
3918 |
3919 | type-check@0.4.0:
3920 | dependencies:
3921 | prelude-ls: 1.2.1
3922 |
3923 | typed-array-buffer@1.0.3:
3924 | dependencies:
3925 | call-bound: 1.0.3
3926 | es-errors: 1.3.0
3927 | is-typed-array: 1.1.15
3928 |
3929 | typed-array-byte-length@1.0.3:
3930 | dependencies:
3931 | call-bind: 1.0.8
3932 | for-each: 0.3.4
3933 | gopd: 1.2.0
3934 | has-proto: 1.2.0
3935 | is-typed-array: 1.1.15
3936 |
3937 | typed-array-byte-offset@1.0.4:
3938 | dependencies:
3939 | available-typed-arrays: 1.0.7
3940 | call-bind: 1.0.8
3941 | for-each: 0.3.4
3942 | gopd: 1.2.0
3943 | has-proto: 1.2.0
3944 | is-typed-array: 1.1.15
3945 | reflect.getprototypeof: 1.0.10
3946 |
3947 | typed-array-length@1.0.7:
3948 | dependencies:
3949 | call-bind: 1.0.8
3950 | for-each: 0.3.4
3951 | gopd: 1.2.0
3952 | is-typed-array: 1.1.15
3953 | possible-typed-array-names: 1.0.0
3954 | reflect.getprototypeof: 1.0.10
3955 |
3956 | typescript-eslint@8.21.0(eslint@9.19.0)(typescript@5.7.3):
3957 | dependencies:
3958 | '@typescript-eslint/eslint-plugin': 8.21.0(@typescript-eslint/parser@8.21.0(eslint@9.19.0)(typescript@5.7.3))(eslint@9.19.0)(typescript@5.7.3)
3959 | '@typescript-eslint/parser': 8.21.0(eslint@9.19.0)(typescript@5.7.3)
3960 | '@typescript-eslint/utils': 8.21.0(eslint@9.19.0)(typescript@5.7.3)
3961 | eslint: 9.19.0
3962 | typescript: 5.7.3
3963 | transitivePeerDependencies:
3964 | - supports-color
3965 |
3966 | typescript@5.7.3: {}
3967 |
3968 | unbox-primitive@1.1.0:
3969 | dependencies:
3970 | call-bound: 1.0.3
3971 | has-bigints: 1.1.0
3972 | has-symbols: 1.1.0
3973 | which-boxed-primitive: 1.1.1
3974 |
3975 | undici-types@6.20.0: {}
3976 |
3977 | update-browserslist-db@1.1.3(browserslist@4.24.5):
3978 | dependencies:
3979 | browserslist: 4.24.5
3980 | escalade: 3.2.0
3981 | picocolors: 1.1.1
3982 |
3983 | uri-js@4.4.1:
3984 | dependencies:
3985 | punycode: 2.3.1
3986 |
3987 | vite-node@3.0.4(@types/node@22.10.10):
3988 | dependencies:
3989 | cac: 6.7.14
3990 | debug: 4.4.0
3991 | es-module-lexer: 1.6.0
3992 | pathe: 2.0.2
3993 | vite: 6.0.11(@types/node@22.10.10)
3994 | transitivePeerDependencies:
3995 | - '@types/node'
3996 | - jiti
3997 | - less
3998 | - lightningcss
3999 | - sass
4000 | - sass-embedded
4001 | - stylus
4002 | - sugarss
4003 | - supports-color
4004 | - terser
4005 | - tsx
4006 | - yaml
4007 |
4008 | vite-tsconfig-paths@5.1.4(typescript@5.7.3)(vite@6.0.11(@types/node@22.10.10)):
4009 | dependencies:
4010 | debug: 4.4.0
4011 | globrex: 0.1.2
4012 | tsconfck: 3.1.4(typescript@5.7.3)
4013 | optionalDependencies:
4014 | vite: 6.0.11(@types/node@22.10.10)
4015 | transitivePeerDependencies:
4016 | - supports-color
4017 | - typescript
4018 |
4019 | vite@6.0.11(@types/node@22.10.10):
4020 | dependencies:
4021 | esbuild: 0.24.2
4022 | postcss: 8.5.1
4023 | rollup: 4.32.0
4024 | optionalDependencies:
4025 | '@types/node': 22.10.10
4026 | fsevents: 2.3.3
4027 |
4028 | vitest@3.0.4(@types/node@22.10.10)(happy-dom@16.7.2):
4029 | dependencies:
4030 | '@vitest/expect': 3.0.4
4031 | '@vitest/mocker': 3.0.4(vite@6.0.11(@types/node@22.10.10))
4032 | '@vitest/pretty-format': 3.0.4
4033 | '@vitest/runner': 3.0.4
4034 | '@vitest/snapshot': 3.0.4
4035 | '@vitest/spy': 3.0.4
4036 | '@vitest/utils': 3.0.4
4037 | chai: 5.1.2
4038 | debug: 4.4.0
4039 | expect-type: 1.1.0
4040 | magic-string: 0.30.17
4041 | pathe: 2.0.2
4042 | std-env: 3.8.0
4043 | tinybench: 2.9.0
4044 | tinyexec: 0.3.2
4045 | tinypool: 1.0.2
4046 | tinyrainbow: 2.0.0
4047 | vite: 6.0.11(@types/node@22.10.10)
4048 | vite-node: 3.0.4(@types/node@22.10.10)
4049 | why-is-node-running: 2.3.0
4050 | optionalDependencies:
4051 | '@types/node': 22.10.10
4052 | happy-dom: 16.7.2
4053 | transitivePeerDependencies:
4054 | - jiti
4055 | - less
4056 | - lightningcss
4057 | - msw
4058 | - sass
4059 | - sass-embedded
4060 | - stylus
4061 | - sugarss
4062 | - supports-color
4063 | - terser
4064 | - tsx
4065 | - yaml
4066 |
4067 | webidl-conversions@7.0.0: {}
4068 |
4069 | whatwg-mimetype@3.0.0: {}
4070 |
4071 | which-boxed-primitive@1.1.1:
4072 | dependencies:
4073 | is-bigint: 1.1.0
4074 | is-boolean-object: 1.2.1
4075 | is-number-object: 1.1.1
4076 | is-string: 1.1.1
4077 | is-symbol: 1.1.1
4078 |
4079 | which-builtin-type@1.2.1:
4080 | dependencies:
4081 | call-bound: 1.0.3
4082 | function.prototype.name: 1.1.8
4083 | has-tostringtag: 1.0.2
4084 | is-async-function: 2.1.1
4085 | is-date-object: 1.1.0
4086 | is-finalizationregistry: 1.1.1
4087 | is-generator-function: 1.1.0
4088 | is-regex: 1.2.1
4089 | is-weakref: 1.1.0
4090 | isarray: 2.0.5
4091 | which-boxed-primitive: 1.1.1
4092 | which-collection: 1.0.2
4093 | which-typed-array: 1.1.18
4094 |
4095 | which-collection@1.0.2:
4096 | dependencies:
4097 | is-map: 2.0.3
4098 | is-set: 2.0.3
4099 | is-weakmap: 2.0.2
4100 | is-weakset: 2.0.4
4101 |
4102 | which-typed-array@1.1.18:
4103 | dependencies:
4104 | available-typed-arrays: 1.0.7
4105 | call-bind: 1.0.8
4106 | call-bound: 1.0.3
4107 | for-each: 0.3.4
4108 | gopd: 1.2.0
4109 | has-tostringtag: 1.0.2
4110 |
4111 | which@2.0.2:
4112 | dependencies:
4113 | isexe: 2.0.0
4114 |
4115 | why-is-node-running@2.3.0:
4116 | dependencies:
4117 | siginfo: 2.0.0
4118 | stackback: 0.0.2
4119 |
4120 | word-wrap@1.2.5: {}
4121 |
4122 | yallist@3.1.1: {}
4123 |
4124 | yocto-queue@0.1.0: {}
4125 |
4126 | zod-validation-error@3.4.1(zod@3.25.23):
4127 | dependencies:
4128 | zod: 3.25.23
4129 |
4130 | zod@3.25.23: {}
4131 |
4132 | zustand@5.0.3(@types/react@19.0.8)(immer@10.1.1)(react@19.0.0):
4133 | optionalDependencies:
4134 | '@types/react': 19.0.8
4135 | immer: 10.1.1
4136 | react: 19.0.0
4137 |
--------------------------------------------------------------------------------