diff --git a/.storybook/main.ts b/.storybook/main.ts
index b485723..43fb3c1 100644
--- a/.storybook/main.ts
+++ b/.storybook/main.ts
@@ -2,9 +2,11 @@ import type { StorybookConfig } from '@storybook/svelte-vite';
const config: StorybookConfig = {
framework: '@storybook/svelte-vite',
- stories: [
- '../stories/**/*.stories.svelte',
- ],
+ stories: [{
+ directory: '../stories',
+ files:'**/*.stories.svelte',
+ titlePrefix:'Demo'
+ }],
addons: [
'../dist/preset/index.js',
'@storybook/addon-essentials',
diff --git a/.vscode/settings.json b/.vscode/settings.json
index 66d2c07..35c04ce 100644
--- a/.vscode/settings.json
+++ b/.vscode/settings.json
@@ -1,3 +1,4 @@
{
- "deepscan.enable": true
-}
\ No newline at end of file
+ "deepscan.enable": true,
+ "typescript.tsdk": "node_modules/typescript/lib"
+}
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 06c50bf..f4acba7 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,206 @@
+# v4.1.0 (Fri Dec 29 2023)
+
+#### 🚀 Enhancement
+
+- Update versions of peer dependencies to allow latest Vite and Vite Svelte plugin [#159](https://github.com/storybookjs/addon-svelte-csf/pull/159) ([@joekrump](https://github.com/joekrump))
+
+#### Authors: 1
+
+- Joe Krump ([@joekrump](https://github.com/joekrump))
+
+---
+
+# v4.0.13 (Tue Nov 21 2023)
+
+#### 🐛 Bug Fix
+
+- Add component description from jsdoc on meta export [#158](https://github.com/storybookjs/addon-svelte-csf/pull/158) ([@j3rem1e](https://github.com/j3rem1e))
+
+#### Authors: 1
+
+- Jérémie ([@j3rem1e](https://github.com/j3rem1e))
+
+---
+
+# v4.0.12 (Fri Nov 17 2023)
+
+#### 🐛 Bug Fix
+
+- Exports package.json [#157](https://github.com/storybookjs/addon-svelte-csf/pull/157) ([@tylergaw](https://github.com/tylergaw))
+
+#### Authors: 1
+
+- Tyler Gaw ([@tylergaw](https://github.com/tylergaw))
+
+---
+
+# v4.0.11 (Fri Nov 10 2023)
+
+#### 🐛 Bug Fix
+
+- Parse comments as Story description [#154](https://github.com/storybookjs/addon-svelte-csf/pull/154) ([@j3rem1e](https://github.com/j3rem1e))
+
+#### Authors: 1
+
+- Jérémie ([@j3rem1e](https://github.com/j3rem1e))
+
+---
+
+# v4.0.10 (Thu Nov 09 2023)
+
+#### 🐛 Bug Fix
+
+- Update src/preset/indexer.ts [#153](https://github.com/storybookjs/addon-svelte-csf/pull/153) ([@benmccann](https://github.com/benmccann))
+- Add support for experimental_indexers [#153](https://github.com/storybookjs/addon-svelte-csf/pull/153) ([@j3rem1e](https://github.com/j3rem1e))
+- Upgrade dev dependencies to Storybook v7.5.2 and Svelte 4.2.2 [#153](https://github.com/storybookjs/addon-svelte-csf/pull/153) ([@j3rem1e](https://github.com/j3rem1e))
+
+#### 📝 Documentation
+
+- Updated Readme to include component [#150](https://github.com/storybookjs/addon-svelte-csf/pull/150) ([@brittneypostma](https://github.com/brittneypostma))
+
+#### Authors: 3
+
+- Ben McCann ([@benmccann](https://github.com/benmccann))
+- Brittney Postma ([@brittneypostma](https://github.com/brittneypostma))
+- Jérémie ([@j3rem1e](https://github.com/j3rem1e))
+
+---
+
+# v4.0.9 (Sat Sep 23 2023)
+
+#### 🐛 Bug Fix
+
+- Fix reactivity of args when HMR remount the RenderContext [#144](https://github.com/storybookjs/addon-svelte-csf/pull/144) ([@j3rem1e](https://github.com/j3rem1e))
+
+#### Authors: 1
+
+- Jérémie ([@j3rem1e](https://github.com/j3rem1e))
+
+---
+
+# v4.0.8 (Thu Sep 21 2023)
+
+#### 🐛 Bug Fix
+
+- Fix forwarding of actions handlers [#142](https://github.com/storybookjs/addon-svelte-csf/pull/142) ([@j3rem1e](https://github.com/j3rem1e))
+
+#### Authors: 1
+
+- Jérémie ([@j3rem1e](https://github.com/j3rem1e))
+
+---
+
+# v4.0.7 (Sat Sep 16 2023)
+
+#### 🐛 Bug Fix
+
+- Update src/parser/extract-stories.ts [#134](https://github.com/storybookjs/addon-svelte-csf/pull/134) ([@benmccann](https://github.com/benmccann))
+- Allow 'meta' to be exported as const from module script [#134](https://github.com/storybookjs/addon-svelte-csf/pull/134) ([@j3rem1e](https://github.com/j3rem1e))
+- Supports for tags in [#134](https://github.com/storybookjs/addon-svelte-csf/pull/134) ([@j3rem1e](https://github.com/j3rem1e))
+
+#### Authors: 2
+
+- Ben McCann ([@benmccann](https://github.com/benmccann))
+- Jérémie ([@j3rem1e](https://github.com/j3rem1e))
+
+---
+
+# v4.0.6 (Fri Sep 15 2023)
+
+#### 🐛 Bug Fix
+
+- Allow configuration of filename patterns besides *.stories.svelte [#140](https://github.com/storybookjs/addon-svelte-csf/pull/140) ([@j3rem1e](https://github.com/j3rem1e))
+
+#### Authors: 1
+
+- Jérémie ([@j3rem1e](https://github.com/j3rem1e))
+
+---
+
+# v4.0.5 (Wed Sep 13 2023)
+
+#### 🐛 Bug Fix
+
+- fix: MetaProps typing [#139](https://github.com/storybookjs/addon-svelte-csf/pull/139) ([@paoloricciuti](https://github.com/paoloricciuti))
+
+#### Authors: 1
+
+- Paolo Ricciuti ([@paoloricciuti](https://github.com/paoloricciuti))
+
+---
+
+# v4.0.4 (Wed Sep 13 2023)
+
+#### 🐛 Bug Fix
+
+- fix: move MetaProps to its own declaration to allow for overrides [#138](https://github.com/storybookjs/addon-svelte-csf/pull/138) ([@paoloricciuti](https://github.com/paoloricciuti))
+
+#### Authors: 1
+
+- Paolo Ricciuti ([@paoloricciuti](https://github.com/paoloricciuti))
+
+---
+
+# v4.0.3 (Sat Sep 02 2023)
+
+#### 🐛 Bug Fix
+
+- Fix test snapshots [#137](https://github.com/storybookjs/addon-svelte-csf/pull/137) ([@j3rem1e](https://github.com/j3rem1e))
+
+#### Authors: 1
+
+- Jérémie ([@j3rem1e](https://github.com/j3rem1e))
+
+---
+
+# v4.0.2 (Sat Sep 02 2023)
+
+#### 🐛 Bug Fix
+
+- [Bug] titlePrefix in advanced story specifiers causes the story to crash with "Didn't find 'xyz' in CSF file" [#136](https://github.com/storybookjs/addon-svelte-csf/pull/136) ([@j3rem1e](https://github.com/j3rem1e))
+
+#### Authors: 1
+
+- Jérémie ([@j3rem1e](https://github.com/j3rem1e))
+
+---
+
+# v4.0.1 (Thu Aug 31 2023)
+
+#### 🐛 Bug Fix
+
+- Fix svelte-stories-loader in Windows [#133](https://github.com/storybookjs/addon-svelte-csf/pull/133) ([@j3rem1e](https://github.com/j3rem1e))
+
+#### Authors: 1
+
+- Jérémie ([@j3rem1e](https://github.com/j3rem1e))
+
+---
+
+# v4.0.0 (Tue Aug 29 2023)
+
+#### 💥 Breaking Change
+
+- Require Svelte v4, vite-plugin-svelte v2, Vite v4 [#128](https://github.com/storybookjs/addon-svelte-csf/pull/128) ([@JReinhold](https://github.com/JReinhold))
+
+#### Authors: 1
+
+- Jeppe Reinhold ([@JReinhold](https://github.com/JReinhold))
+
+---
+
+# v3.0.10 (Tue Aug 29 2023)
+
+#### 🐛 Bug Fix
+
+- Fix: `typeof Meta` in Svelte v3 (Pin Svelte peer dependency to v3) [#127](https://github.com/storybookjs/addon-svelte-csf/pull/127) ([@JReinhold](https://github.com/JReinhold))
+
+#### Authors: 1
+
+- Jeppe Reinhold ([@JReinhold](https://github.com/JReinhold))
+
+---
+
# v3.0.9 (Wed Aug 23 2023)
#### 🐛 Bug Fix
diff --git a/README.md b/README.md
index 0322b43..e189e99 100644
--- a/README.md
+++ b/README.md
@@ -13,22 +13,57 @@ It supports:
## Example
+Have a basic button component:
+
```svelte
+
+
+
+
+```
+
+And a `button.stories.svelte` file:
+
+```svelte
+
+
+
-
-
-
@@ -43,7 +78,10 @@ It supports:
```
-# Getting Started
+Actions are automatically registered by Storybook. To be used by this addon, you just have to forward the event (`on:click` in the previous example).
+
+
+## Getting Started
1. `npm install --save-dev @storybook/addon-svelte-csf` or `yarn add --dev @storybook/addon-svelte-csf`
2. In `.storybook/main.js`, add `@storybook/addon-svelte-csf` to the addons array
@@ -64,5 +102,21 @@ module.exports = {
};
```
-> **Warning**
-> v3 and above of this addon requires at least Storybook v7. If you're using Storybook between v6.4.20 and v7.0.0, you should instead use v2 of this addon with `npm install --save-dev @storybook/addon-svelte-csf@^2.0.10` or `yarn add --dev @storybook/addon-svelte-csf@^2.0.10`
+## Version Dependencies
+
+### 4.0.0
+
+Version 4 of this addon requires _at least_:
+
+- Storybook v7
+- Svelte v4
+- Vite v4 (if using Vite)
+- `@sveltejs/vite-plugin-svelte` v2 (if using Vite)
+
+If you're using Svelte v3 you can use version `^3.0.0` of this addon instead.
+
+### 3.0.0
+
+Version 3 of this addon requires at least Storybook v7.
+
+If you're using Storybook between v6.4.20 and v7.0.0, you should instead use version `^2.0.0` of this addon.
diff --git a/package.json b/package.json
index ba81267..98c1fff 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "@storybook/addon-svelte-csf",
- "version": "3.0.9",
+ "version": "4.1.0",
"description": "Allows to write stories in Svelte syntax",
"keywords": [
"storybook-addons",
@@ -26,7 +26,8 @@
"./manager": {
"types": "./dist/preset/manager.d.ts",
"default": "./dist/preset/manager.js"
- }
+ },
+ "./package.json": "./package.json"
},
"files": [
"dist/**/*",
@@ -41,6 +42,7 @@
"test": "vitest run",
"chromatic": "chromatic --exit-zero-on-changes",
"coverage": "vitest run --coverage",
+ "check": "svelte-check",
"lint": "eslint --cache --cache-location=.cache/eslint --ext .js,.jsx,.json,.html,.ts,.tsx,.mjs --report-unused-disable-directives",
"storybook": "storybook dev --port 6006",
"start": "concurrently \"pnpm run storybook --quiet\" \"pnpm run build --watch\"",
@@ -55,23 +57,26 @@
},
"devDependencies": {
"@auto-it/released": "^10.32.6",
- "@storybook/addon-actions": "^7.1.1",
- "@storybook/addon-essentials": "^7.1.1",
- "@storybook/addon-interactions": "^7.1.1",
- "@storybook/preview-api": "^7.1.1",
- "@storybook/client-logger": "^7.1.1",
- "@storybook/core-server": "^7.1.1",
+ "@storybook/addon-actions": "^7.5.2",
+ "@storybook/addon-essentials": "^7.5.2",
+ "@storybook/addon-interactions": "^7.5.2",
+ "@storybook/preview-api": "^7.5.2",
+ "@storybook/client-logger": "^7.5.2",
+ "@storybook/core-server": "^7.5.2",
"@storybook/csf": "^0.1.1",
"@storybook/eslint-config-storybook": "^3.1.2",
"@storybook/jest": "^0.1.0",
- "@storybook/svelte": "^7.1.1",
- "@storybook/svelte-vite": "^7.1.1",
+ "@storybook/manager-api": "^7.5.2",
+ "@storybook/node-logger": "^7.5.2",
+ "@storybook/svelte": "^7.5.2",
+ "@storybook/svelte-vite": "^7.5.2",
"@storybook/test-runner": "^0.11.0",
"@storybook/testing-library": "^0.2.0",
- "@storybook/types": "^7.1.1",
+ "@storybook/types": "^7.5.2",
"@sveltejs/package": "^2.2.0",
"@sveltejs/vite-plugin-svelte": "^2.4.2",
"@tsconfig/svelte": "^5.0.0",
+ "@types/estree": "^1.0.1",
"auto": "^10.43.0",
"chromatic": "^6.19.9",
"concurrently": "^8.2.0",
@@ -82,8 +87,9 @@
"react": "^18.2.0",
"react-dom": "^18.2.0",
"rimraf": "^3.0.2",
- "storybook": "^7.1.1",
- "svelte": "^4.0.0",
+ "storybook": "^7.5.2",
+ "svelte": "^4.2.2",
+ "svelte-check": "^3.5.0",
"svelte-jester": "^2.3.2",
"svelte-loader": "^3.1.7",
"typescript": "^5.1.6",
@@ -93,10 +99,10 @@
"peerDependencies": {
"@storybook/svelte": "^7.0.0",
"@storybook/theming": "^7.0.0",
- "@sveltejs/vite-plugin-svelte": "^1.0.0 || ^2.0.0",
- "svelte": "^3.50.0 || ^4.0.0",
+ "@sveltejs/vite-plugin-svelte": "^2.0.0 || ^3.0.0",
+ "svelte": "^4.0.0",
"svelte-loader": "^3.1.2",
- "vite": "^3.0.0 || ^4.0.0"
+ "vite": "^4.0.0 || ^5.0.0"
},
"peerDependenciesMeta": {
"@sveltejs/vite-plugin-svelte": {
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index de4d95e..218b86d 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -26,20 +26,20 @@ devDependencies:
specifier: ^10.32.6
version: 10.32.6(@octokit/core@3.6.0)(typescript@5.1.6)
'@storybook/addon-actions':
- specifier: ^7.1.1
- version: 7.1.1(react-dom@18.2.0)(react@18.2.0)
+ specifier: ^7.5.2
+ version: 7.5.2(react-dom@18.2.0)(react@18.2.0)
'@storybook/addon-essentials':
- specifier: ^7.1.1
- version: 7.1.1(react-dom@18.2.0)(react@18.2.0)
+ specifier: ^7.5.2
+ version: 7.5.2(react-dom@18.2.0)(react@18.2.0)
'@storybook/addon-interactions':
- specifier: ^7.1.1
- version: 7.1.1(react-dom@18.2.0)(react@18.2.0)
+ specifier: ^7.5.2
+ version: 7.5.2(react-dom@18.2.0)(react@18.2.0)
'@storybook/client-logger':
- specifier: ^7.1.1
- version: 7.1.1
+ specifier: ^7.5.2
+ version: 7.5.2
'@storybook/core-server':
- specifier: ^7.1.1
- version: 7.1.1
+ specifier: ^7.5.2
+ version: 7.5.2
'@storybook/csf':
specifier: ^0.1.1
version: 0.1.1
@@ -49,15 +49,21 @@ devDependencies:
'@storybook/jest':
specifier: ^0.1.0
version: 0.1.0
+ '@storybook/manager-api':
+ specifier: ^7.5.2
+ version: 7.5.2(react-dom@18.2.0)(react@18.2.0)
+ '@storybook/node-logger':
+ specifier: ^7.5.2
+ version: 7.5.2
'@storybook/preview-api':
- specifier: ^7.1.1
- version: 7.1.1
+ specifier: ^7.5.2
+ version: 7.5.2
'@storybook/svelte':
- specifier: ^7.1.1
- version: 7.1.1(svelte@4.0.0)
+ specifier: ^7.5.2
+ version: 7.5.2(svelte@4.2.2)
'@storybook/svelte-vite':
- specifier: ^7.1.1
- version: 7.1.1(svelte@4.0.0)(typescript@5.1.6)(vite@4.4.3)
+ specifier: ^7.5.2
+ version: 7.5.2(@babel/core@7.22.9)(svelte@4.2.2)(typescript@5.1.6)(vite@4.4.3)
'@storybook/test-runner':
specifier: ^0.11.0
version: 0.11.0(@types/node@20.4.5)
@@ -65,17 +71,20 @@ devDependencies:
specifier: ^0.2.0
version: 0.2.0
'@storybook/types':
- specifier: ^7.1.1
- version: 7.1.1
+ specifier: ^7.5.2
+ version: 7.5.2
'@sveltejs/package':
specifier: ^2.2.0
- version: 2.2.0(svelte@4.0.0)(typescript@5.1.6)
+ version: 2.2.0(svelte@4.2.2)(typescript@5.1.6)
'@sveltejs/vite-plugin-svelte':
specifier: ^2.4.2
- version: 2.4.2(svelte@4.0.0)(vite@4.4.3)
+ version: 2.4.2(svelte@4.2.2)(vite@4.4.3)
'@tsconfig/svelte':
specifier: ^5.0.0
version: 5.0.0
+ '@types/estree':
+ specifier: ^1.0.1
+ version: 1.0.1
auto:
specifier: ^10.43.0
version: 10.43.0(@swc/core@1.3.72)(@types/node@20.4.5)(typescript@5.1.6)
@@ -107,17 +116,20 @@ devDependencies:
specifier: ^3.0.2
version: 3.0.2
storybook:
- specifier: ^7.1.1
- version: 7.1.1
+ specifier: ^7.5.2
+ version: 7.5.2
svelte:
- specifier: ^4.0.0
- version: 4.0.0
+ specifier: ^4.2.2
+ version: 4.2.2
+ svelte-check:
+ specifier: ^3.5.0
+ version: 3.5.0(@babel/core@7.22.9)(svelte@4.2.2)
svelte-jester:
specifier: ^2.3.2
- version: 2.3.2(jest@29.6.2)(svelte@4.0.0)
+ version: 2.3.2(jest@29.6.2)(svelte@4.2.2)
svelte-loader:
specifier: ^3.1.7
- version: 3.1.7(svelte@4.0.0)
+ version: 3.1.7(svelte@4.2.2)
typescript:
specifier: ^5.1.6
version: 5.1.6
@@ -473,7 +485,7 @@ packages:
'@babel/helper-plugin-utils': 7.22.5
debug: 4.3.4
lodash.debounce: 4.0.8
- resolve: 1.22.2
+ resolve: 1.22.3
transitivePeerDependencies:
- supports-color
dev: true
@@ -660,6 +672,7 @@ packages:
/@babel/plugin-proposal-class-properties@7.18.6(@babel/core@7.22.9):
resolution: {integrity: sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==}
engines: {node: '>=6.9.0'}
+ deprecated: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-class-properties instead.
peerDependencies:
'@babel/core': ^7.0.0-0
dependencies:
@@ -671,6 +684,7 @@ packages:
/@babel/plugin-proposal-nullish-coalescing-operator@7.18.6(@babel/core@7.22.9):
resolution: {integrity: sha512-wQxQzxYeJqHcfppzBDnm1yAY0jSRkUXR2z8RePZYrKwMKgMlE8+Z6LUno+bd6LvbGh8Gltvy74+9pIYkr+XkKA==}
engines: {node: '>=6.9.0'}
+ deprecated: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-nullish-coalescing-operator instead.
peerDependencies:
'@babel/core': ^7.0.0-0
dependencies:
@@ -682,6 +696,7 @@ packages:
/@babel/plugin-proposal-optional-chaining@7.21.0(@babel/core@7.22.9):
resolution: {integrity: sha512-p4zeefM72gpmEe2fkUr/OnOXpWEf8nAgk7ZYVqqfFiyIG7oFfVZcCrU64hWn5xp4tQ9LkV4bTIa5rD0KANpKNA==}
engines: {node: '>=6.9.0'}
+ deprecated: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-optional-chaining instead.
peerDependencies:
'@babel/core': ^7.0.0-0
dependencies:
@@ -703,6 +718,7 @@ packages:
/@babel/plugin-proposal-unicode-property-regex@7.18.6(@babel/core@7.22.9):
resolution: {integrity: sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w==}
engines: {node: '>=4'}
+ deprecated: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-unicode-property-regex instead.
peerDependencies:
'@babel/core': ^7.0.0-0
dependencies:
@@ -1957,6 +1973,34 @@ packages:
resolution: {integrity: sha512-cEee/Z+I12mZcFJshKcCqC8tuX5hG3s+d+9nZ3LabqKF1vKdF41B92pJVCBggjAGORAeOzyyDDKrZwIkLffeOQ==}
dev: true
+ /@floating-ui/core@1.5.0:
+ resolution: {integrity: sha512-kK1h4m36DQ0UHGj5Ah4db7R0rHemTqqO0QLvUqi1/mUUp3LuAWbWxdxSIf/XsnH9VS6rRVPLJCncjRzUvyCLXg==}
+ dependencies:
+ '@floating-ui/utils': 0.1.6
+ dev: true
+
+ /@floating-ui/dom@1.5.3:
+ resolution: {integrity: sha512-ClAbQnEqJAKCJOEbbLo5IUlZHkNszqhuxS4fHAVxRPXPya6Ysf2G8KypnYcOTpx6I8xcgF9bbHb6g/2KpbV8qA==}
+ dependencies:
+ '@floating-ui/core': 1.5.0
+ '@floating-ui/utils': 0.1.6
+ dev: true
+
+ /@floating-ui/react-dom@2.0.2(react-dom@18.2.0)(react@18.2.0):
+ resolution: {integrity: sha512-5qhlDvjaLmAst/rKb3VdlCinwTF4EYMiVxuuc/HVUjs46W0zgtbMmAZ1UTsDrRTxRmUEzl92mOtWbeeXL26lSQ==}
+ peerDependencies:
+ react: '>=16.8.0'
+ react-dom: '>=16.8.0'
+ dependencies:
+ '@floating-ui/dom': 1.5.3
+ react: 18.2.0
+ react-dom: 18.2.0(react@18.2.0)
+ dev: true
+
+ /@floating-ui/utils@0.1.6:
+ resolution: {integrity: sha512-OfX7E2oUDYxtBvsuS4e/jSn4Q9Qb6DzgeYtsAdkPZ47znpoNsMgZw0+tVijiv3uGNR6dgNlty6r9rzIzHjtd/A==}
+ dev: true
+
/@hapi/hoek@9.3.0:
resolution: {integrity: sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ==}
dev: true
@@ -2687,6 +2731,525 @@ packages:
dev: true
optional: true
+ /@radix-ui/number@1.0.1:
+ resolution: {integrity: sha512-T5gIdVO2mmPW3NNhjNgEP3cqMXjXL9UbO0BzWcXfvdBs+BohbQxvd/K5hSVKmn9/lbTdsQVKbUcP5WLCwvUbBg==}
+ dependencies:
+ '@babel/runtime': 7.22.6
+ dev: true
+
+ /@radix-ui/primitive@1.0.1:
+ resolution: {integrity: sha512-yQ8oGX2GVsEYMWGxcovu1uGWPCxV5BFfeeYxqPmuAzUyLT9qmaMXSAhXpb0WrspIeqYzdJpkh2vHModJPgRIaw==}
+ dependencies:
+ '@babel/runtime': 7.22.6
+ dev: true
+
+ /@radix-ui/react-arrow@1.0.3(react-dom@18.2.0)(react@18.2.0):
+ resolution: {integrity: sha512-wSP+pHsB/jQRaL6voubsQ/ZlrGBHHrOjmBnr19hxYgtS0WvAFwZhK2WP/YY5yF9uKECCEEDGxuLxq1NBK51wFA==}
+ peerDependencies:
+ '@types/react': '*'
+ '@types/react-dom': '*'
+ react: ^16.8 || ^17.0 || ^18.0
+ react-dom: ^16.8 || ^17.0 || ^18.0
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ '@types/react-dom':
+ optional: true
+ dependencies:
+ '@babel/runtime': 7.22.6
+ '@radix-ui/react-primitive': 1.0.3(react-dom@18.2.0)(react@18.2.0)
+ react: 18.2.0
+ react-dom: 18.2.0(react@18.2.0)
+ dev: true
+
+ /@radix-ui/react-collection@1.0.3(react-dom@18.2.0)(react@18.2.0):
+ resolution: {integrity: sha512-3SzW+0PW7yBBoQlT8wNcGtaxaD0XSu0uLUFgrtHY08Acx05TaHaOmVLR73c0j/cqpDy53KBMO7s0dx2wmOIDIA==}
+ peerDependencies:
+ '@types/react': '*'
+ '@types/react-dom': '*'
+ react: ^16.8 || ^17.0 || ^18.0
+ react-dom: ^16.8 || ^17.0 || ^18.0
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ '@types/react-dom':
+ optional: true
+ dependencies:
+ '@babel/runtime': 7.22.6
+ '@radix-ui/react-compose-refs': 1.0.1(react@18.2.0)
+ '@radix-ui/react-context': 1.0.1(react@18.2.0)
+ '@radix-ui/react-primitive': 1.0.3(react-dom@18.2.0)(react@18.2.0)
+ '@radix-ui/react-slot': 1.0.2(react@18.2.0)
+ react: 18.2.0
+ react-dom: 18.2.0(react@18.2.0)
+ dev: true
+
+ /@radix-ui/react-compose-refs@1.0.1(react@18.2.0):
+ resolution: {integrity: sha512-fDSBgd44FKHa1FRMU59qBMPFcl2PZE+2nmqunj+BWFyYYjnhIDWL2ItDs3rrbJDQOtzt5nIebLCQc4QRfz6LJw==}
+ peerDependencies:
+ '@types/react': '*'
+ react: ^16.8 || ^17.0 || ^18.0
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ dependencies:
+ '@babel/runtime': 7.22.6
+ react: 18.2.0
+ dev: true
+
+ /@radix-ui/react-context@1.0.1(react@18.2.0):
+ resolution: {integrity: sha512-ebbrdFoYTcuZ0v4wG5tedGnp9tzcV8awzsxYph7gXUyvnNLuTIcCk1q17JEbnVhXAKG9oX3KtchwiMIAYp9NLg==}
+ peerDependencies:
+ '@types/react': '*'
+ react: ^16.8 || ^17.0 || ^18.0
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ dependencies:
+ '@babel/runtime': 7.22.6
+ react: 18.2.0
+ dev: true
+
+ /@radix-ui/react-direction@1.0.1(react@18.2.0):
+ resolution: {integrity: sha512-RXcvnXgyvYvBEOhCBuddKecVkoMiI10Jcm5cTI7abJRAHYfFxeu+FBQs/DvdxSYucxR5mna0dNsL6QFlds5TMA==}
+ peerDependencies:
+ '@types/react': '*'
+ react: ^16.8 || ^17.0 || ^18.0
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ dependencies:
+ '@babel/runtime': 7.22.6
+ react: 18.2.0
+ dev: true
+
+ /@radix-ui/react-dismissable-layer@1.0.4(react-dom@18.2.0)(react@18.2.0):
+ resolution: {integrity: sha512-7UpBa/RKMoHJYjie1gkF1DlK8l1fdU/VKDpoS3rCCo8YBJR294GwcEHyxHw72yvphJ7ld0AXEcSLAzY2F/WyCg==}
+ peerDependencies:
+ '@types/react': '*'
+ '@types/react-dom': '*'
+ react: ^16.8 || ^17.0 || ^18.0
+ react-dom: ^16.8 || ^17.0 || ^18.0
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ '@types/react-dom':
+ optional: true
+ dependencies:
+ '@babel/runtime': 7.22.6
+ '@radix-ui/primitive': 1.0.1
+ '@radix-ui/react-compose-refs': 1.0.1(react@18.2.0)
+ '@radix-ui/react-primitive': 1.0.3(react-dom@18.2.0)(react@18.2.0)
+ '@radix-ui/react-use-callback-ref': 1.0.1(react@18.2.0)
+ '@radix-ui/react-use-escape-keydown': 1.0.3(react@18.2.0)
+ react: 18.2.0
+ react-dom: 18.2.0(react@18.2.0)
+ dev: true
+
+ /@radix-ui/react-focus-guards@1.0.1(react@18.2.0):
+ resolution: {integrity: sha512-Rect2dWbQ8waGzhMavsIbmSVCgYxkXLxxR3ZvCX79JOglzdEy4JXMb98lq4hPxUbLr77nP0UOGf4rcMU+s1pUA==}
+ peerDependencies:
+ '@types/react': '*'
+ react: ^16.8 || ^17.0 || ^18.0
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ dependencies:
+ '@babel/runtime': 7.22.6
+ react: 18.2.0
+ dev: true
+
+ /@radix-ui/react-focus-scope@1.0.3(react-dom@18.2.0)(react@18.2.0):
+ resolution: {integrity: sha512-upXdPfqI4islj2CslyfUBNlaJCPybbqRHAi1KER7Isel9Q2AtSJ0zRBZv8mWQiFXD2nyAJ4BhC3yXgZ6kMBSrQ==}
+ peerDependencies:
+ '@types/react': '*'
+ '@types/react-dom': '*'
+ react: ^16.8 || ^17.0 || ^18.0
+ react-dom: ^16.8 || ^17.0 || ^18.0
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ '@types/react-dom':
+ optional: true
+ dependencies:
+ '@babel/runtime': 7.22.6
+ '@radix-ui/react-compose-refs': 1.0.1(react@18.2.0)
+ '@radix-ui/react-primitive': 1.0.3(react-dom@18.2.0)(react@18.2.0)
+ '@radix-ui/react-use-callback-ref': 1.0.1(react@18.2.0)
+ react: 18.2.0
+ react-dom: 18.2.0(react@18.2.0)
+ dev: true
+
+ /@radix-ui/react-id@1.0.1(react@18.2.0):
+ resolution: {integrity: sha512-tI7sT/kqYp8p96yGWY1OAnLHrqDgzHefRBKQ2YAkBS5ja7QLcZ9Z/uY7bEjPUatf8RomoXM8/1sMj1IJaE5UzQ==}
+ peerDependencies:
+ '@types/react': '*'
+ react: ^16.8 || ^17.0 || ^18.0
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ dependencies:
+ '@babel/runtime': 7.22.6
+ '@radix-ui/react-use-layout-effect': 1.0.1(react@18.2.0)
+ react: 18.2.0
+ dev: true
+
+ /@radix-ui/react-popper@1.1.2(react-dom@18.2.0)(react@18.2.0):
+ resolution: {integrity: sha512-1CnGGfFi/bbqtJZZ0P/NQY20xdG3E0LALJaLUEoKwPLwl6PPPfbeiCqMVQnhoFRAxjJj4RpBRJzDmUgsex2tSg==}
+ peerDependencies:
+ '@types/react': '*'
+ '@types/react-dom': '*'
+ react: ^16.8 || ^17.0 || ^18.0
+ react-dom: ^16.8 || ^17.0 || ^18.0
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ '@types/react-dom':
+ optional: true
+ dependencies:
+ '@babel/runtime': 7.22.6
+ '@floating-ui/react-dom': 2.0.2(react-dom@18.2.0)(react@18.2.0)
+ '@radix-ui/react-arrow': 1.0.3(react-dom@18.2.0)(react@18.2.0)
+ '@radix-ui/react-compose-refs': 1.0.1(react@18.2.0)
+ '@radix-ui/react-context': 1.0.1(react@18.2.0)
+ '@radix-ui/react-primitive': 1.0.3(react-dom@18.2.0)(react@18.2.0)
+ '@radix-ui/react-use-callback-ref': 1.0.1(react@18.2.0)
+ '@radix-ui/react-use-layout-effect': 1.0.1(react@18.2.0)
+ '@radix-ui/react-use-rect': 1.0.1(react@18.2.0)
+ '@radix-ui/react-use-size': 1.0.1(react@18.2.0)
+ '@radix-ui/rect': 1.0.1
+ react: 18.2.0
+ react-dom: 18.2.0(react@18.2.0)
+ dev: true
+
+ /@radix-ui/react-portal@1.0.3(react-dom@18.2.0)(react@18.2.0):
+ resolution: {integrity: sha512-xLYZeHrWoPmA5mEKEfZZevoVRK/Q43GfzRXkWV6qawIWWK8t6ifIiLQdd7rmQ4Vk1bmI21XhqF9BN3jWf+phpA==}
+ peerDependencies:
+ '@types/react': '*'
+ '@types/react-dom': '*'
+ react: ^16.8 || ^17.0 || ^18.0
+ react-dom: ^16.8 || ^17.0 || ^18.0
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ '@types/react-dom':
+ optional: true
+ dependencies:
+ '@babel/runtime': 7.22.6
+ '@radix-ui/react-primitive': 1.0.3(react-dom@18.2.0)(react@18.2.0)
+ react: 18.2.0
+ react-dom: 18.2.0(react@18.2.0)
+ dev: true
+
+ /@radix-ui/react-primitive@1.0.3(react-dom@18.2.0)(react@18.2.0):
+ resolution: {integrity: sha512-yi58uVyoAcK/Nq1inRY56ZSjKypBNKTa/1mcL8qdl6oJeEaDbOldlzrGn7P6Q3Id5d+SYNGc5AJgc4vGhjs5+g==}
+ peerDependencies:
+ '@types/react': '*'
+ '@types/react-dom': '*'
+ react: ^16.8 || ^17.0 || ^18.0
+ react-dom: ^16.8 || ^17.0 || ^18.0
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ '@types/react-dom':
+ optional: true
+ dependencies:
+ '@babel/runtime': 7.22.6
+ '@radix-ui/react-slot': 1.0.2(react@18.2.0)
+ react: 18.2.0
+ react-dom: 18.2.0(react@18.2.0)
+ dev: true
+
+ /@radix-ui/react-roving-focus@1.0.4(react-dom@18.2.0)(react@18.2.0):
+ resolution: {integrity: sha512-2mUg5Mgcu001VkGy+FfzZyzbmuUWzgWkj3rvv4yu+mLw03+mTzbxZHvfcGyFp2b8EkQeMkpRQ5FiA2Vr2O6TeQ==}
+ peerDependencies:
+ '@types/react': '*'
+ '@types/react-dom': '*'
+ react: ^16.8 || ^17.0 || ^18.0
+ react-dom: ^16.8 || ^17.0 || ^18.0
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ '@types/react-dom':
+ optional: true
+ dependencies:
+ '@babel/runtime': 7.22.6
+ '@radix-ui/primitive': 1.0.1
+ '@radix-ui/react-collection': 1.0.3(react-dom@18.2.0)(react@18.2.0)
+ '@radix-ui/react-compose-refs': 1.0.1(react@18.2.0)
+ '@radix-ui/react-context': 1.0.1(react@18.2.0)
+ '@radix-ui/react-direction': 1.0.1(react@18.2.0)
+ '@radix-ui/react-id': 1.0.1(react@18.2.0)
+ '@radix-ui/react-primitive': 1.0.3(react-dom@18.2.0)(react@18.2.0)
+ '@radix-ui/react-use-callback-ref': 1.0.1(react@18.2.0)
+ '@radix-ui/react-use-controllable-state': 1.0.1(react@18.2.0)
+ react: 18.2.0
+ react-dom: 18.2.0(react@18.2.0)
+ dev: true
+
+ /@radix-ui/react-select@1.2.2(react-dom@18.2.0)(react@18.2.0):
+ resolution: {integrity: sha512-zI7McXr8fNaSrUY9mZe4x/HC0jTLY9fWNhO1oLWYMQGDXuV4UCivIGTxwioSzO0ZCYX9iSLyWmAh/1TOmX3Cnw==}
+ peerDependencies:
+ '@types/react': '*'
+ '@types/react-dom': '*'
+ react: ^16.8 || ^17.0 || ^18.0
+ react-dom: ^16.8 || ^17.0 || ^18.0
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ '@types/react-dom':
+ optional: true
+ dependencies:
+ '@babel/runtime': 7.22.6
+ '@radix-ui/number': 1.0.1
+ '@radix-ui/primitive': 1.0.1
+ '@radix-ui/react-collection': 1.0.3(react-dom@18.2.0)(react@18.2.0)
+ '@radix-ui/react-compose-refs': 1.0.1(react@18.2.0)
+ '@radix-ui/react-context': 1.0.1(react@18.2.0)
+ '@radix-ui/react-direction': 1.0.1(react@18.2.0)
+ '@radix-ui/react-dismissable-layer': 1.0.4(react-dom@18.2.0)(react@18.2.0)
+ '@radix-ui/react-focus-guards': 1.0.1(react@18.2.0)
+ '@radix-ui/react-focus-scope': 1.0.3(react-dom@18.2.0)(react@18.2.0)
+ '@radix-ui/react-id': 1.0.1(react@18.2.0)
+ '@radix-ui/react-popper': 1.1.2(react-dom@18.2.0)(react@18.2.0)
+ '@radix-ui/react-portal': 1.0.3(react-dom@18.2.0)(react@18.2.0)
+ '@radix-ui/react-primitive': 1.0.3(react-dom@18.2.0)(react@18.2.0)
+ '@radix-ui/react-slot': 1.0.2(react@18.2.0)
+ '@radix-ui/react-use-callback-ref': 1.0.1(react@18.2.0)
+ '@radix-ui/react-use-controllable-state': 1.0.1(react@18.2.0)
+ '@radix-ui/react-use-layout-effect': 1.0.1(react@18.2.0)
+ '@radix-ui/react-use-previous': 1.0.1(react@18.2.0)
+ '@radix-ui/react-visually-hidden': 1.0.3(react-dom@18.2.0)(react@18.2.0)
+ aria-hidden: 1.2.3
+ react: 18.2.0
+ react-dom: 18.2.0(react@18.2.0)
+ react-remove-scroll: 2.5.5(react@18.2.0)
+ dev: true
+
+ /@radix-ui/react-separator@1.0.3(react-dom@18.2.0)(react@18.2.0):
+ resolution: {integrity: sha512-itYmTy/kokS21aiV5+Z56MZB54KrhPgn6eHDKkFeOLR34HMN2s8PaN47qZZAGnvupcjxHaFZnW4pQEh0BvvVuw==}
+ peerDependencies:
+ '@types/react': '*'
+ '@types/react-dom': '*'
+ react: ^16.8 || ^17.0 || ^18.0
+ react-dom: ^16.8 || ^17.0 || ^18.0
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ '@types/react-dom':
+ optional: true
+ dependencies:
+ '@babel/runtime': 7.22.6
+ '@radix-ui/react-primitive': 1.0.3(react-dom@18.2.0)(react@18.2.0)
+ react: 18.2.0
+ react-dom: 18.2.0(react@18.2.0)
+ dev: true
+
+ /@radix-ui/react-slot@1.0.2(react@18.2.0):
+ resolution: {integrity: sha512-YeTpuq4deV+6DusvVUW4ivBgnkHwECUu0BiN43L5UCDFgdhsRUWAghhTF5MbvNTPzmiFOx90asDSUjWuCNapwg==}
+ peerDependencies:
+ '@types/react': '*'
+ react: ^16.8 || ^17.0 || ^18.0
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ dependencies:
+ '@babel/runtime': 7.22.6
+ '@radix-ui/react-compose-refs': 1.0.1(react@18.2.0)
+ react: 18.2.0
+ dev: true
+
+ /@radix-ui/react-toggle-group@1.0.4(react-dom@18.2.0)(react@18.2.0):
+ resolution: {integrity: sha512-Uaj/M/cMyiyT9Bx6fOZO0SAG4Cls0GptBWiBmBxofmDbNVnYYoyRWj/2M/6VCi/7qcXFWnHhRUfdfZFvvkuu8A==}
+ peerDependencies:
+ '@types/react': '*'
+ '@types/react-dom': '*'
+ react: ^16.8 || ^17.0 || ^18.0
+ react-dom: ^16.8 || ^17.0 || ^18.0
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ '@types/react-dom':
+ optional: true
+ dependencies:
+ '@babel/runtime': 7.22.6
+ '@radix-ui/primitive': 1.0.1
+ '@radix-ui/react-context': 1.0.1(react@18.2.0)
+ '@radix-ui/react-direction': 1.0.1(react@18.2.0)
+ '@radix-ui/react-primitive': 1.0.3(react-dom@18.2.0)(react@18.2.0)
+ '@radix-ui/react-roving-focus': 1.0.4(react-dom@18.2.0)(react@18.2.0)
+ '@radix-ui/react-toggle': 1.0.3(react-dom@18.2.0)(react@18.2.0)
+ '@radix-ui/react-use-controllable-state': 1.0.1(react@18.2.0)
+ react: 18.2.0
+ react-dom: 18.2.0(react@18.2.0)
+ dev: true
+
+ /@radix-ui/react-toggle@1.0.3(react-dom@18.2.0)(react@18.2.0):
+ resolution: {integrity: sha512-Pkqg3+Bc98ftZGsl60CLANXQBBQ4W3mTFS9EJvNxKMZ7magklKV69/id1mlAlOFDDfHvlCms0fx8fA4CMKDJHg==}
+ peerDependencies:
+ '@types/react': '*'
+ '@types/react-dom': '*'
+ react: ^16.8 || ^17.0 || ^18.0
+ react-dom: ^16.8 || ^17.0 || ^18.0
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ '@types/react-dom':
+ optional: true
+ dependencies:
+ '@babel/runtime': 7.22.6
+ '@radix-ui/primitive': 1.0.1
+ '@radix-ui/react-primitive': 1.0.3(react-dom@18.2.0)(react@18.2.0)
+ '@radix-ui/react-use-controllable-state': 1.0.1(react@18.2.0)
+ react: 18.2.0
+ react-dom: 18.2.0(react@18.2.0)
+ dev: true
+
+ /@radix-ui/react-toolbar@1.0.4(react-dom@18.2.0)(react@18.2.0):
+ resolution: {integrity: sha512-tBgmM/O7a07xbaEkYJWYTXkIdU/1pW4/KZORR43toC/4XWyBCURK0ei9kMUdp+gTPPKBgYLxXmRSH1EVcIDp8Q==}
+ peerDependencies:
+ '@types/react': '*'
+ '@types/react-dom': '*'
+ react: ^16.8 || ^17.0 || ^18.0
+ react-dom: ^16.8 || ^17.0 || ^18.0
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ '@types/react-dom':
+ optional: true
+ dependencies:
+ '@babel/runtime': 7.22.6
+ '@radix-ui/primitive': 1.0.1
+ '@radix-ui/react-context': 1.0.1(react@18.2.0)
+ '@radix-ui/react-direction': 1.0.1(react@18.2.0)
+ '@radix-ui/react-primitive': 1.0.3(react-dom@18.2.0)(react@18.2.0)
+ '@radix-ui/react-roving-focus': 1.0.4(react-dom@18.2.0)(react@18.2.0)
+ '@radix-ui/react-separator': 1.0.3(react-dom@18.2.0)(react@18.2.0)
+ '@radix-ui/react-toggle-group': 1.0.4(react-dom@18.2.0)(react@18.2.0)
+ react: 18.2.0
+ react-dom: 18.2.0(react@18.2.0)
+ dev: true
+
+ /@radix-ui/react-use-callback-ref@1.0.1(react@18.2.0):
+ resolution: {integrity: sha512-D94LjX4Sp0xJFVaoQOd3OO9k7tpBYNOXdVhkltUbGv2Qb9OXdrg/CpsjlZv7ia14Sylv398LswWBVVu5nqKzAQ==}
+ peerDependencies:
+ '@types/react': '*'
+ react: ^16.8 || ^17.0 || ^18.0
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ dependencies:
+ '@babel/runtime': 7.22.6
+ react: 18.2.0
+ dev: true
+
+ /@radix-ui/react-use-controllable-state@1.0.1(react@18.2.0):
+ resolution: {integrity: sha512-Svl5GY5FQeN758fWKrjM6Qb7asvXeiZltlT4U2gVfl8Gx5UAv2sMR0LWo8yhsIZh2oQ0eFdZ59aoOOMV7b47VA==}
+ peerDependencies:
+ '@types/react': '*'
+ react: ^16.8 || ^17.0 || ^18.0
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ dependencies:
+ '@babel/runtime': 7.22.6
+ '@radix-ui/react-use-callback-ref': 1.0.1(react@18.2.0)
+ react: 18.2.0
+ dev: true
+
+ /@radix-ui/react-use-escape-keydown@1.0.3(react@18.2.0):
+ resolution: {integrity: sha512-vyL82j40hcFicA+M4Ex7hVkB9vHgSse1ZWomAqV2Je3RleKGO5iM8KMOEtfoSB0PnIelMd2lATjTGMYqN5ylTg==}
+ peerDependencies:
+ '@types/react': '*'
+ react: ^16.8 || ^17.0 || ^18.0
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ dependencies:
+ '@babel/runtime': 7.22.6
+ '@radix-ui/react-use-callback-ref': 1.0.1(react@18.2.0)
+ react: 18.2.0
+ dev: true
+
+ /@radix-ui/react-use-layout-effect@1.0.1(react@18.2.0):
+ resolution: {integrity: sha512-v/5RegiJWYdoCvMnITBkNNx6bCj20fiaJnWtRkU18yITptraXjffz5Qbn05uOiQnOvi+dbkznkoaMltz1GnszQ==}
+ peerDependencies:
+ '@types/react': '*'
+ react: ^16.8 || ^17.0 || ^18.0
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ dependencies:
+ '@babel/runtime': 7.22.6
+ react: 18.2.0
+ dev: true
+
+ /@radix-ui/react-use-previous@1.0.1(react@18.2.0):
+ resolution: {integrity: sha512-cV5La9DPwiQ7S0gf/0qiD6YgNqM5Fk97Kdrlc5yBcrF3jyEZQwm7vYFqMo4IfeHgJXsRaMvLABFtd0OVEmZhDw==}
+ peerDependencies:
+ '@types/react': '*'
+ react: ^16.8 || ^17.0 || ^18.0
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ dependencies:
+ '@babel/runtime': 7.22.6
+ react: 18.2.0
+ dev: true
+
+ /@radix-ui/react-use-rect@1.0.1(react@18.2.0):
+ resolution: {integrity: sha512-Cq5DLuSiuYVKNU8orzJMbl15TXilTnJKUCltMVQg53BQOF1/C5toAaGrowkgksdBQ9H+SRL23g0HDmg9tvmxXw==}
+ peerDependencies:
+ '@types/react': '*'
+ react: ^16.8 || ^17.0 || ^18.0
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ dependencies:
+ '@babel/runtime': 7.22.6
+ '@radix-ui/rect': 1.0.1
+ react: 18.2.0
+ dev: true
+
+ /@radix-ui/react-use-size@1.0.1(react@18.2.0):
+ resolution: {integrity: sha512-ibay+VqrgcaI6veAojjofPATwledXiSmX+C0KrBk/xgpX9rBzPV3OsfwlhQdUOFbh+LKQorLYT+xTXW9V8yd0g==}
+ peerDependencies:
+ '@types/react': '*'
+ react: ^16.8 || ^17.0 || ^18.0
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ dependencies:
+ '@babel/runtime': 7.22.6
+ '@radix-ui/react-use-layout-effect': 1.0.1(react@18.2.0)
+ react: 18.2.0
+ dev: true
+
+ /@radix-ui/react-visually-hidden@1.0.3(react-dom@18.2.0)(react@18.2.0):
+ resolution: {integrity: sha512-D4w41yN5YRKtu464TLnByKzMDG/JlMPHtfZgQAu9v6mNakUqGUI9vUrfQKz8NK41VMm/xbZbh76NUTVtIYqOMA==}
+ peerDependencies:
+ '@types/react': '*'
+ '@types/react-dom': '*'
+ react: ^16.8 || ^17.0 || ^18.0
+ react-dom: ^16.8 || ^17.0 || ^18.0
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ '@types/react-dom':
+ optional: true
+ dependencies:
+ '@babel/runtime': 7.22.6
+ '@radix-ui/react-primitive': 1.0.3(react-dom@18.2.0)(react@18.2.0)
+ react: 18.2.0
+ react-dom: 18.2.0(react@18.2.0)
+ dev: true
+
+ /@radix-ui/rect@1.0.1:
+ resolution: {integrity: sha512-fyrgCaedtvMg9NK3en0pnOYJdtfwxUcNolezkNPUsoX57X8oQk+NkqcvzHXD2uKNij6GXmWU9NDru2IWjrO4BQ==}
+ dependencies:
+ '@babel/runtime': 7.22.6
+ dev: true
+
/@sideway/address@4.1.4:
resolution: {integrity: sha512-7vwq+rOHVWjyXxVlR76Agnvhy8I9rpzjosTESvmhNeXOXdZZB15Fl+TI9x1SiHZH5Jv2wTGduSxFDIaq0m3DUw==}
dependencies:
@@ -2733,8 +3296,8 @@ packages:
'@sinonjs/commons': 1.8.6
dev: true
- /@storybook/addon-actions@7.1.1(react-dom@18.2.0)(react@18.2.0):
- resolution: {integrity: sha512-IDxBmNnVgLFfQ407MxOUJmqjz0hgiZB9syi4sfp7BKp5MIPUDT1m+z603kGrvx0bk0W0DPqkp/H8ySEGEx0x6g==}
+ /@storybook/addon-actions@7.5.2(react-dom@18.2.0)(react@18.2.0):
+ resolution: {integrity: sha512-jKF3rrMEu42TgZ5AEszADpVdASDu1S4Ozp1Ymf4akHLkaMOv+yzzD7LV6YGjJz8S2IryndZqE47e6stF0T99uA==}
peerDependencies:
react: ^16.8.0 || ^17.0.0 || ^18.0.0
react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0
@@ -2744,14 +3307,14 @@ packages:
react-dom:
optional: true
dependencies:
- '@storybook/client-logger': 7.1.1
- '@storybook/components': 7.1.1(react-dom@18.2.0)(react@18.2.0)
- '@storybook/core-events': 7.1.1
+ '@storybook/client-logger': 7.5.2
+ '@storybook/components': 7.5.2(react-dom@18.2.0)(react@18.2.0)
+ '@storybook/core-events': 7.5.2
'@storybook/global': 5.0.0
- '@storybook/manager-api': 7.1.1(react-dom@18.2.0)(react@18.2.0)
- '@storybook/preview-api': 7.1.1
- '@storybook/theming': 7.1.1(react-dom@18.2.0)(react@18.2.0)
- '@storybook/types': 7.1.1
+ '@storybook/manager-api': 7.5.2(react-dom@18.2.0)(react@18.2.0)
+ '@storybook/preview-api': 7.5.2
+ '@storybook/theming': 7.5.2(react-dom@18.2.0)(react@18.2.0)
+ '@storybook/types': 7.5.2
dequal: 2.0.3
lodash: 4.17.21
polished: 4.2.2
@@ -2759,13 +3322,16 @@ packages:
react: 18.2.0
react-dom: 18.2.0(react@18.2.0)
react-inspector: 6.0.2(react@18.2.0)
- telejson: 7.1.0
+ telejson: 7.2.0
ts-dedent: 2.2.0
uuid: 9.0.0
+ transitivePeerDependencies:
+ - '@types/react'
+ - '@types/react-dom'
dev: true
- /@storybook/addon-backgrounds@7.1.1(react-dom@18.2.0)(react@18.2.0):
- resolution: {integrity: sha512-6YAjF01R/qFxeZc1B5cSxseaGXJzikMPPExSZaKkD0eW3max5Kpk+qb7rOX95m3jP2WD/0zfX6lEQUCbmDcxlg==}
+ /@storybook/addon-backgrounds@7.5.2(react-dom@18.2.0)(react@18.2.0):
+ resolution: {integrity: sha512-CII8c+db8sVciWjFY0ProZi5E2d+cOc+XlVHCAVaUYp2Bp/1MV7en8etfLK7DEoH6kBVz1+t3TaPU+xjUTR8Ig==}
peerDependencies:
react: ^16.8.0 || ^17.0.0 || ^18.0.0
react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0
@@ -2775,22 +3341,25 @@ packages:
react-dom:
optional: true
dependencies:
- '@storybook/client-logger': 7.1.1
- '@storybook/components': 7.1.1(react-dom@18.2.0)(react@18.2.0)
- '@storybook/core-events': 7.1.1
+ '@storybook/client-logger': 7.5.2
+ '@storybook/components': 7.5.2(react-dom@18.2.0)(react@18.2.0)
+ '@storybook/core-events': 7.5.2
'@storybook/global': 5.0.0
- '@storybook/manager-api': 7.1.1(react-dom@18.2.0)(react@18.2.0)
- '@storybook/preview-api': 7.1.1
- '@storybook/theming': 7.1.1(react-dom@18.2.0)(react@18.2.0)
- '@storybook/types': 7.1.1
+ '@storybook/manager-api': 7.5.2(react-dom@18.2.0)(react@18.2.0)
+ '@storybook/preview-api': 7.5.2
+ '@storybook/theming': 7.5.2(react-dom@18.2.0)(react@18.2.0)
+ '@storybook/types': 7.5.2
memoizerific: 1.11.3
react: 18.2.0
react-dom: 18.2.0(react@18.2.0)
ts-dedent: 2.2.0
+ transitivePeerDependencies:
+ - '@types/react'
+ - '@types/react-dom'
dev: true
- /@storybook/addon-controls@7.1.1(react-dom@18.2.0)(react@18.2.0):
- resolution: {integrity: sha512-qi7fxUSovTLFWeejZLagMV+4SedL0DIhZrufuQCnEeO1gbTJJPaL/KLZnilFlI3SgspkzGehhGDR6SVkDuwnZg==}
+ /@storybook/addon-controls@7.5.2(react-dom@18.2.0)(react@18.2.0):
+ resolution: {integrity: sha512-f04VcBSfm3yMT1hvaFEwCRbdwiXQbddfEwhwjEVsqd+CA0s600W4L7B8tT4daXMsU6NsZyibev910IKTnDw6xQ==}
peerDependencies:
react: ^16.8.0 || ^17.0.0 || ^18.0.0
react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0
@@ -2800,45 +3369,48 @@ packages:
react-dom:
optional: true
dependencies:
- '@storybook/blocks': 7.1.1(react-dom@18.2.0)(react@18.2.0)
- '@storybook/client-logger': 7.1.1
- '@storybook/components': 7.1.1(react-dom@18.2.0)(react@18.2.0)
- '@storybook/core-common': 7.1.1
- '@storybook/manager-api': 7.1.1(react-dom@18.2.0)(react@18.2.0)
- '@storybook/node-logger': 7.1.1
- '@storybook/preview-api': 7.1.1
- '@storybook/theming': 7.1.1(react-dom@18.2.0)(react@18.2.0)
- '@storybook/types': 7.1.1
+ '@storybook/blocks': 7.5.2(react-dom@18.2.0)(react@18.2.0)
+ '@storybook/client-logger': 7.5.2
+ '@storybook/components': 7.5.2(react-dom@18.2.0)(react@18.2.0)
+ '@storybook/core-common': 7.5.2
+ '@storybook/core-events': 7.5.2
+ '@storybook/manager-api': 7.5.2(react-dom@18.2.0)(react@18.2.0)
+ '@storybook/node-logger': 7.5.2
+ '@storybook/preview-api': 7.5.2
+ '@storybook/theming': 7.5.2(react-dom@18.2.0)(react@18.2.0)
+ '@storybook/types': 7.5.2
lodash: 4.17.21
react: 18.2.0
react-dom: 18.2.0(react@18.2.0)
ts-dedent: 2.2.0
transitivePeerDependencies:
+ - '@types/react'
+ - '@types/react-dom'
- encoding
- supports-color
dev: true
- /@storybook/addon-docs@7.1.1(react-dom@18.2.0)(react@18.2.0):
- resolution: {integrity: sha512-KfsrqvR6RA0qyCwBpJjeivu/+F+n3jcMMKkBtI56E/pyQCx4+pMTJXJ2l5gJibNWYoR1CVlS9f5n5ZNGz8BzeQ==}
+ /@storybook/addon-docs@7.5.2(react-dom@18.2.0)(react@18.2.0):
+ resolution: {integrity: sha512-KxX4XuxK6YcI2mUosFkAlueMon/nby6mp3GRHenuK+nobY0ecfILqSTbsOeO1wqPxALBoq7fLnrgYhdDlandgQ==}
peerDependencies:
react: ^16.8.0 || ^17.0.0 || ^18.0.0
react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0
dependencies:
'@jest/transform': 29.6.2
'@mdx-js/react': 2.3.0(react@18.2.0)
- '@storybook/blocks': 7.1.1(react-dom@18.2.0)(react@18.2.0)
- '@storybook/client-logger': 7.1.1
- '@storybook/components': 7.1.1(react-dom@18.2.0)(react@18.2.0)
- '@storybook/csf-plugin': 7.1.1
- '@storybook/csf-tools': 7.1.1
+ '@storybook/blocks': 7.5.2(react-dom@18.2.0)(react@18.2.0)
+ '@storybook/client-logger': 7.5.2
+ '@storybook/components': 7.5.2(react-dom@18.2.0)(react@18.2.0)
+ '@storybook/csf-plugin': 7.5.2
+ '@storybook/csf-tools': 7.5.2
'@storybook/global': 5.0.0
'@storybook/mdx2-csf': 1.1.0
- '@storybook/node-logger': 7.1.1
- '@storybook/postinstall': 7.1.1
- '@storybook/preview-api': 7.1.1
- '@storybook/react-dom-shim': 7.1.1(react-dom@18.2.0)(react@18.2.0)
- '@storybook/theming': 7.1.1(react-dom@18.2.0)(react@18.2.0)
- '@storybook/types': 7.1.1
+ '@storybook/node-logger': 7.5.2
+ '@storybook/postinstall': 7.5.2
+ '@storybook/preview-api': 7.5.2
+ '@storybook/react-dom-shim': 7.5.2(react-dom@18.2.0)(react@18.2.0)
+ '@storybook/theming': 7.5.2(react-dom@18.2.0)(react@18.2.0)
+ '@storybook/types': 7.5.2
fs-extra: 11.1.1
react: 18.2.0
react-dom: 18.2.0(react@18.2.0)
@@ -2846,47 +3418,51 @@ packages:
remark-slug: 6.1.0
ts-dedent: 2.2.0
transitivePeerDependencies:
+ - '@types/react'
+ - '@types/react-dom'
- encoding
- supports-color
dev: true
- /@storybook/addon-essentials@7.1.1(react-dom@18.2.0)(react@18.2.0):
- resolution: {integrity: sha512-eCty+Q7zBjkBbaJ0HaM/UaXxJ+77uKBtEc9g+hLZFqga50auPCfCcqjnqNnxkTmewkJomx3N91BJUJJzVPUlJA==}
+ /@storybook/addon-essentials@7.5.2(react-dom@18.2.0)(react@18.2.0):
+ resolution: {integrity: sha512-bN7Q+8J3xVgNoBKCwtyX1O5jXuuJavYdAPiPQGrt6YegUi3gVfr5n/+/mNlu6Fd5AThFcVFei6gS9aiYmU/h8g==}
peerDependencies:
react: ^16.8.0 || ^17.0.0 || ^18.0.0
react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0
dependencies:
- '@storybook/addon-actions': 7.1.1(react-dom@18.2.0)(react@18.2.0)
- '@storybook/addon-backgrounds': 7.1.1(react-dom@18.2.0)(react@18.2.0)
- '@storybook/addon-controls': 7.1.1(react-dom@18.2.0)(react@18.2.0)
- '@storybook/addon-docs': 7.1.1(react-dom@18.2.0)(react@18.2.0)
- '@storybook/addon-highlight': 7.1.1
- '@storybook/addon-measure': 7.1.1(react-dom@18.2.0)(react@18.2.0)
- '@storybook/addon-outline': 7.1.1(react-dom@18.2.0)(react@18.2.0)
- '@storybook/addon-toolbars': 7.1.1(react-dom@18.2.0)(react@18.2.0)
- '@storybook/addon-viewport': 7.1.1(react-dom@18.2.0)(react@18.2.0)
- '@storybook/core-common': 7.1.1
- '@storybook/manager-api': 7.1.1(react-dom@18.2.0)(react@18.2.0)
- '@storybook/node-logger': 7.1.1
- '@storybook/preview-api': 7.1.1
+ '@storybook/addon-actions': 7.5.2(react-dom@18.2.0)(react@18.2.0)
+ '@storybook/addon-backgrounds': 7.5.2(react-dom@18.2.0)(react@18.2.0)
+ '@storybook/addon-controls': 7.5.2(react-dom@18.2.0)(react@18.2.0)
+ '@storybook/addon-docs': 7.5.2(react-dom@18.2.0)(react@18.2.0)
+ '@storybook/addon-highlight': 7.5.2
+ '@storybook/addon-measure': 7.5.2(react-dom@18.2.0)(react@18.2.0)
+ '@storybook/addon-outline': 7.5.2(react-dom@18.2.0)(react@18.2.0)
+ '@storybook/addon-toolbars': 7.5.2(react-dom@18.2.0)(react@18.2.0)
+ '@storybook/addon-viewport': 7.5.2(react-dom@18.2.0)(react@18.2.0)
+ '@storybook/core-common': 7.5.2
+ '@storybook/manager-api': 7.5.2(react-dom@18.2.0)(react@18.2.0)
+ '@storybook/node-logger': 7.5.2
+ '@storybook/preview-api': 7.5.2
react: 18.2.0
react-dom: 18.2.0(react@18.2.0)
ts-dedent: 2.2.0
transitivePeerDependencies:
+ - '@types/react'
+ - '@types/react-dom'
- encoding
- supports-color
dev: true
- /@storybook/addon-highlight@7.1.1:
- resolution: {integrity: sha512-iOLzcv4JK2R2EBcbeDLB5uuYaW96M9Vh+ZrkpKEJvHwrQzzvBo3kJ7bP/AArAEXtR5MN1al3x7mnvRofu3OIdQ==}
+ /@storybook/addon-highlight@7.5.2:
+ resolution: {integrity: sha512-0vek42fHh7Aeinvkwge0ZTq5VfNsuMSejUv0wHa3zQWgUmlaRlGY8zDw7nG6LiIz6rnTBDTznsfyWenAySSHXg==}
dependencies:
- '@storybook/core-events': 7.1.1
+ '@storybook/core-events': 7.5.2
'@storybook/global': 5.0.0
- '@storybook/preview-api': 7.1.1
+ '@storybook/preview-api': 7.5.2
dev: true
- /@storybook/addon-interactions@7.1.1(react-dom@18.2.0)(react@18.2.0):
- resolution: {integrity: sha512-6xPDKkt0gi2aqFBFtMyWx09lEF8+o3Q+te+VY4mdJztKgHAllKvlc27jqAFYMHicG6XWio2VBZGUSrSTDOQ9IA==}
+ /@storybook/addon-interactions@7.5.2(react-dom@18.2.0)(react@18.2.0):
+ resolution: {integrity: sha512-upddA+pvJtU3pRZqu3Chl5QbVfVv2eCIuUxaAG9rvasaqkLTTrNvna8rmnXwqL8sBKHL1XzSyO2sQF4vzQwymg==}
peerDependencies:
react: ^16.8.0 || ^17.0.0 || ^18.0.0
react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0
@@ -2896,28 +3472,30 @@ packages:
react-dom:
optional: true
dependencies:
- '@storybook/client-logger': 7.1.1
- '@storybook/components': 7.1.1(react-dom@18.2.0)(react@18.2.0)
- '@storybook/core-common': 7.1.1
- '@storybook/core-events': 7.1.1
+ '@storybook/client-logger': 7.5.2
+ '@storybook/components': 7.5.2(react-dom@18.2.0)(react@18.2.0)
+ '@storybook/core-common': 7.5.2
+ '@storybook/core-events': 7.5.2
'@storybook/global': 5.0.0
- '@storybook/instrumenter': 7.1.1
- '@storybook/manager-api': 7.1.1(react-dom@18.2.0)(react@18.2.0)
- '@storybook/preview-api': 7.1.1
- '@storybook/theming': 7.1.1(react-dom@18.2.0)(react@18.2.0)
- '@storybook/types': 7.1.1
- jest-mock: 29.6.2
+ '@storybook/instrumenter': 7.5.2
+ '@storybook/manager-api': 7.5.2(react-dom@18.2.0)(react@18.2.0)
+ '@storybook/preview-api': 7.5.2
+ '@storybook/theming': 7.5.2(react-dom@18.2.0)(react@18.2.0)
+ '@storybook/types': 7.5.2
+ jest-mock: 27.5.1
polished: 4.2.2
react: 18.2.0
react-dom: 18.2.0(react@18.2.0)
ts-dedent: 2.2.0
transitivePeerDependencies:
+ - '@types/react'
+ - '@types/react-dom'
- encoding
- supports-color
dev: true
- /@storybook/addon-measure@7.1.1(react-dom@18.2.0)(react@18.2.0):
- resolution: {integrity: sha512-LKJ9vN0qdFVeqjPeF44R2issR0UMAuL2LzbZNxAfeNX9SxdV7qONBOt8OZNKkmm7mJ+jBZsR9Ok68PCOsXA7Xw==}
+ /@storybook/addon-measure@7.5.2(react-dom@18.2.0)(react@18.2.0):
+ resolution: {integrity: sha512-fkvORLaYVC/yNMFzHRHmzlvniY7sWtpFxaRW+e4++hGXYV4VQjOBlXzdMxQhAg1DCVWD6QV8xnUQPBGrsEklog==}
peerDependencies:
react: ^16.8.0 || ^17.0.0 || ^18.0.0
react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0
@@ -2927,20 +3505,23 @@ packages:
react-dom:
optional: true
dependencies:
- '@storybook/client-logger': 7.1.1
- '@storybook/components': 7.1.1(react-dom@18.2.0)(react@18.2.0)
- '@storybook/core-events': 7.1.1
+ '@storybook/client-logger': 7.5.2
+ '@storybook/components': 7.5.2(react-dom@18.2.0)(react@18.2.0)
+ '@storybook/core-events': 7.5.2
'@storybook/global': 5.0.0
- '@storybook/manager-api': 7.1.1(react-dom@18.2.0)(react@18.2.0)
- '@storybook/preview-api': 7.1.1
- '@storybook/types': 7.1.1
+ '@storybook/manager-api': 7.5.2(react-dom@18.2.0)(react@18.2.0)
+ '@storybook/preview-api': 7.5.2
+ '@storybook/types': 7.5.2
react: 18.2.0
react-dom: 18.2.0(react@18.2.0)
tiny-invariant: 1.3.1
+ transitivePeerDependencies:
+ - '@types/react'
+ - '@types/react-dom'
dev: true
- /@storybook/addon-outline@7.1.1(react-dom@18.2.0)(react@18.2.0):
- resolution: {integrity: sha512-zdgOA46n61o/rqvnAn1OxAczl/C99D64e+6EoK8t+Xf9fvykPQCgfBUAPq19qEAaBG4RoPpTvGSJXH2nFqJZDw==}
+ /@storybook/addon-outline@7.5.2(react-dom@18.2.0)(react@18.2.0):
+ resolution: {integrity: sha512-BgDnVzE9xCN1xwuCebK6+apNCtVcw1ToW8N6R3vNgXgNPE1euT3jxkDH7K4RJR24Flu6BotWjX3dqv8k+8xGKw==}
peerDependencies:
react: ^16.8.0 || ^17.0.0 || ^18.0.0
react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0
@@ -2950,20 +3531,23 @@ packages:
react-dom:
optional: true
dependencies:
- '@storybook/client-logger': 7.1.1
- '@storybook/components': 7.1.1(react-dom@18.2.0)(react@18.2.0)
- '@storybook/core-events': 7.1.1
+ '@storybook/client-logger': 7.5.2
+ '@storybook/components': 7.5.2(react-dom@18.2.0)(react@18.2.0)
+ '@storybook/core-events': 7.5.2
'@storybook/global': 5.0.0
- '@storybook/manager-api': 7.1.1(react-dom@18.2.0)(react@18.2.0)
- '@storybook/preview-api': 7.1.1
- '@storybook/types': 7.1.1
+ '@storybook/manager-api': 7.5.2(react-dom@18.2.0)(react@18.2.0)
+ '@storybook/preview-api': 7.5.2
+ '@storybook/types': 7.5.2
react: 18.2.0
react-dom: 18.2.0(react@18.2.0)
ts-dedent: 2.2.0
+ transitivePeerDependencies:
+ - '@types/react'
+ - '@types/react-dom'
dev: true
- /@storybook/addon-toolbars@7.1.1(react-dom@18.2.0)(react@18.2.0):
- resolution: {integrity: sha512-tHMv1a8hg0kmxwtKf31BZ2Z1ULnxRF/TEoDLJKVvTthhcWLQm0LmqVIG82/bnuWn4vlDrsdGT7sAN+TU7B8p0A==}
+ /@storybook/addon-toolbars@7.5.2(react-dom@18.2.0)(react@18.2.0):
+ resolution: {integrity: sha512-BXzb5NOpILFOM7EOBxcF2Qj/q6BicWZ1AvAddORWGmqSa/MxMIa4X52oKXFUTHKBkrTO1X0XqHmoF88qm3TUFg==}
peerDependencies:
react: ^16.8.0 || ^17.0.0 || ^18.0.0
react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0
@@ -2973,17 +3557,20 @@ packages:
react-dom:
optional: true
dependencies:
- '@storybook/client-logger': 7.1.1
- '@storybook/components': 7.1.1(react-dom@18.2.0)(react@18.2.0)
- '@storybook/manager-api': 7.1.1(react-dom@18.2.0)(react@18.2.0)
- '@storybook/preview-api': 7.1.1
- '@storybook/theming': 7.1.1(react-dom@18.2.0)(react@18.2.0)
+ '@storybook/client-logger': 7.5.2
+ '@storybook/components': 7.5.2(react-dom@18.2.0)(react@18.2.0)
+ '@storybook/manager-api': 7.5.2(react-dom@18.2.0)(react@18.2.0)
+ '@storybook/preview-api': 7.5.2
+ '@storybook/theming': 7.5.2(react-dom@18.2.0)(react@18.2.0)
react: 18.2.0
react-dom: 18.2.0(react@18.2.0)
+ transitivePeerDependencies:
+ - '@types/react'
+ - '@types/react-dom'
dev: true
- /@storybook/addon-viewport@7.1.1(react-dom@18.2.0)(react@18.2.0):
- resolution: {integrity: sha512-OAb3+NSQF0zAVdKhZwW0YOC/VMCXDncXp51ufxaz/LkF3qOGuqfmHTOfDDwjx3P6d3kX1aWV+vLVuoRS0JRK5g==}
+ /@storybook/addon-viewport@7.5.2(react-dom@18.2.0)(react@18.2.0):
+ resolution: {integrity: sha512-qN5X9vgp0v+WGXyFBHQ/CqjdtmnCoHhUjqXmBxEGBziJz/tZwWwtTGWeUUZpuTjCGiZutLrizOFl5MqQAI+ipg==}
peerDependencies:
react: ^16.8.0 || ^17.0.0 || ^18.0.0
react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0
@@ -2993,36 +3580,39 @@ packages:
react-dom:
optional: true
dependencies:
- '@storybook/client-logger': 7.1.1
- '@storybook/components': 7.1.1(react-dom@18.2.0)(react@18.2.0)
- '@storybook/core-events': 7.1.1
+ '@storybook/client-logger': 7.5.2
+ '@storybook/components': 7.5.2(react-dom@18.2.0)(react@18.2.0)
+ '@storybook/core-events': 7.5.2
'@storybook/global': 5.0.0
- '@storybook/manager-api': 7.1.1(react-dom@18.2.0)(react@18.2.0)
- '@storybook/preview-api': 7.1.1
- '@storybook/theming': 7.1.1(react-dom@18.2.0)(react@18.2.0)
+ '@storybook/manager-api': 7.5.2(react-dom@18.2.0)(react@18.2.0)
+ '@storybook/preview-api': 7.5.2
+ '@storybook/theming': 7.5.2(react-dom@18.2.0)(react@18.2.0)
memoizerific: 1.11.3
prop-types: 15.8.1
react: 18.2.0
react-dom: 18.2.0(react@18.2.0)
+ transitivePeerDependencies:
+ - '@types/react'
+ - '@types/react-dom'
dev: true
- /@storybook/blocks@7.1.1(react-dom@18.2.0)(react@18.2.0):
- resolution: {integrity: sha512-YIpIJi/+sByZhKrpKbVmXazUP1hj/QXybVOzwz2PT6tphfhrubGLBgu3RJIp6hwJ/lWf9RfghR7P8n+7aN6U9w==}
+ /@storybook/blocks@7.5.2(react-dom@18.2.0)(react@18.2.0):
+ resolution: {integrity: sha512-Tf6XE/YcnWQVBJRcJWJzhkahjSymv6QZuxMAiKFD8v48QRJ8kTxz1tBN9676Ux+l1WwtVWxwvd/0kRKKxE70wQ==}
peerDependencies:
react: ^16.8.0 || ^17.0.0 || ^18.0.0
react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0
dependencies:
- '@storybook/channels': 7.1.1
- '@storybook/client-logger': 7.1.1
- '@storybook/components': 7.1.1(react-dom@18.2.0)(react@18.2.0)
- '@storybook/core-events': 7.1.1
+ '@storybook/channels': 7.5.2
+ '@storybook/client-logger': 7.5.2
+ '@storybook/components': 7.5.2(react-dom@18.2.0)(react@18.2.0)
+ '@storybook/core-events': 7.5.2
'@storybook/csf': 0.1.1
- '@storybook/docs-tools': 7.1.1
+ '@storybook/docs-tools': 7.5.2
'@storybook/global': 5.0.0
- '@storybook/manager-api': 7.1.1(react-dom@18.2.0)(react@18.2.0)
- '@storybook/preview-api': 7.1.1
- '@storybook/theming': 7.1.1(react-dom@18.2.0)(react@18.2.0)
- '@storybook/types': 7.1.1
+ '@storybook/manager-api': 7.5.2(react-dom@18.2.0)(react@18.2.0)
+ '@storybook/preview-api': 7.5.2
+ '@storybook/theming': 7.5.2(react-dom@18.2.0)(react@18.2.0)
+ '@storybook/types': 7.5.2
'@types/lodash': 4.14.196
color-convert: 2.0.1
dequal: 2.0.3
@@ -3033,22 +3623,24 @@ packages:
react: 18.2.0
react-colorful: 5.6.1(react-dom@18.2.0)(react@18.2.0)
react-dom: 18.2.0(react@18.2.0)
- telejson: 7.1.0
+ telejson: 7.2.0
tocbot: 4.21.0
ts-dedent: 2.2.0
util-deprecate: 1.0.2
transitivePeerDependencies:
+ - '@types/react'
+ - '@types/react-dom'
- encoding
- supports-color
dev: true
- /@storybook/builder-manager@7.1.1:
- resolution: {integrity: sha512-vocO/JjrXPOnkFnwCV2NqKxbTfyYD2qV8PGH8EFNw2+I13GNbZ5CphEZMhI7HmKm0aIYPKdZKbN4KNWkwOxyAQ==}
+ /@storybook/builder-manager@7.5.2:
+ resolution: {integrity: sha512-s4gOudrft/E4lQ19YNrzL2VJwMEpdY6z319fTlc16J1F6XZSytw6CIZPs3x9yX5CKf4/leWnN5etODaOx7NajQ==}
dependencies:
'@fal-works/esbuild-plugin-global-externals': 2.1.2
- '@storybook/core-common': 7.1.1
- '@storybook/manager': 7.1.1
- '@storybook/node-logger': 7.1.1
+ '@storybook/core-common': 7.5.2
+ '@storybook/manager': 7.5.2
+ '@storybook/node-logger': 7.5.2
'@types/ejs': 3.1.2
'@types/find-cache-dir': 3.2.1
'@yarnpkg/esbuild-plugin-pnp': 3.0.0-rc.15(esbuild@0.18.17)
@@ -3066,12 +3658,12 @@ packages:
- supports-color
dev: true
- /@storybook/builder-vite@7.1.1(typescript@5.1.6)(vite@4.4.3):
- resolution: {integrity: sha512-OIQv8V7r6fqBqAXQT9mqgu1aqP+wlFGDRACyS2iym5y5B3e6fhCOUS/31pBp3vmgNRK6LAfEI0FXI71aOp82MQ==}
+ /@storybook/builder-vite@7.5.2(typescript@5.1.6)(vite@4.4.3):
+ resolution: {integrity: sha512-j96m5K0ahlAjQY6uUxEbybvmRFc3eMpQ3wiosuunc8NkXtfohXZeRVQowAcVrfPktKMufRNGY86RTYxe7sMABw==}
peerDependencies:
'@preact/preset-vite': '*'
typescript: '>= 4.3.x'
- vite: ^3.0.0 || ^4.0.0
+ vite: ^3.0.0 || ^4.0.0 || ^5.0.0
vite-plugin-glimmerx: '*'
peerDependenciesMeta:
'@preact/preset-vite':
@@ -3081,15 +3673,14 @@ packages:
vite-plugin-glimmerx:
optional: true
dependencies:
- '@storybook/channels': 7.1.1
- '@storybook/client-logger': 7.1.1
- '@storybook/core-common': 7.1.1
- '@storybook/csf-plugin': 7.1.1
- '@storybook/mdx2-csf': 1.1.0
- '@storybook/node-logger': 7.1.1
- '@storybook/preview': 7.1.1
- '@storybook/preview-api': 7.1.1
- '@storybook/types': 7.1.1
+ '@storybook/channels': 7.5.2
+ '@storybook/client-logger': 7.5.2
+ '@storybook/core-common': 7.5.2
+ '@storybook/csf-plugin': 7.5.2
+ '@storybook/node-logger': 7.5.2
+ '@storybook/preview': 7.5.2
+ '@storybook/preview-api': 7.5.2
+ '@storybook/types': 7.5.2
'@types/find-cache-dir': 3.2.1
browser-assert: 1.2.1
es-module-lexer: 0.9.3
@@ -3097,8 +3688,6 @@ packages:
find-cache-dir: 3.3.2
fs-extra: 11.1.1
magic-string: 0.30.1
- remark-external-links: 8.0.0
- remark-slug: 6.1.0
rollup: 3.27.0
typescript: 5.1.6
vite: 4.4.3(@types/node@20.4.5)
@@ -3125,21 +3714,33 @@ packages:
tiny-invariant: 1.3.1
dev: true
- /@storybook/cli@7.1.1:
- resolution: {integrity: sha512-xQU0GBIRQpwlvTnzOvDo05H5aH660DaZ9JlXd8ThPkEicoTvhkH0oQVEMYaWKChp5Ok7Wu8+kB7fzgUSOGzj+Q==}
+ /@storybook/channels@7.5.2:
+ resolution: {integrity: sha512-3SgqWq9NS0XX1QxK3riuaOLrReHWwVhI63u6q1ryDD3SttpmAezZETibOAtzDuk2FKgsyHTmAlmcGQf4ZxhOJA==}
+ dependencies:
+ '@storybook/client-logger': 7.5.2
+ '@storybook/core-events': 7.5.2
+ '@storybook/global': 5.0.0
+ qs: 6.11.2
+ telejson: 7.2.0
+ tiny-invariant: 1.3.1
+ dev: true
+
+ /@storybook/cli@7.5.2:
+ resolution: {integrity: sha512-8JPvA/K66zBmRFpRRwsD0JLqZUODRrGmNuAWx+Bj1K8wqbg68MYnOflbkSIxIVxrfhd39OrffV0h8CwKNL9gAg==}
hasBin: true
dependencies:
'@babel/core': 7.22.9
'@babel/preset-env': 7.22.9(@babel/core@7.22.9)
'@babel/types': 7.22.5
'@ndelangen/get-tarball': 3.0.9
- '@storybook/codemod': 7.1.1
- '@storybook/core-common': 7.1.1
- '@storybook/core-server': 7.1.1
- '@storybook/csf-tools': 7.1.1
- '@storybook/node-logger': 7.1.1
- '@storybook/telemetry': 7.1.1
- '@storybook/types': 7.1.1
+ '@storybook/codemod': 7.5.2
+ '@storybook/core-common': 7.5.2
+ '@storybook/core-events': 7.5.2
+ '@storybook/core-server': 7.5.2
+ '@storybook/csf-tools': 7.5.2
+ '@storybook/node-logger': 7.5.2
+ '@storybook/telemetry': 7.5.2
+ '@storybook/types': 7.5.2
'@types/semver': 7.5.0
'@yarnpkg/fslib': 2.10.3
'@yarnpkg/libzip': 2.3.0
@@ -3164,7 +3765,7 @@ packages:
puppeteer-core: 2.1.1
read-pkg-up: 7.0.1
semver: 7.5.4
- simple-update-notifier: 1.1.0
+ simple-update-notifier: 2.0.0
strip-json-comments: 3.1.1
tempy: 1.0.1
ts-dedent: 2.2.0
@@ -3188,16 +3789,22 @@ packages:
'@storybook/global': 5.0.0
dev: true
- /@storybook/codemod@7.1.1:
- resolution: {integrity: sha512-QB4MoeFXA4QsX0LuwjHoTVqsX7krRXmqfwSWIQMB8/qsAfyBp/jiG2xWmwa2agKwtlYvZzkvGdCjAOmK4SUSHQ==}
+ /@storybook/client-logger@7.5.2:
+ resolution: {integrity: sha512-7YgLItlmiYDzWYexTaRNuHhtFarh9krsI+8l7Yjn9ryoHSTJUcTWx+yPJm1II+PQR8v/x5UgsxzultjgEurfRQ==}
+ dependencies:
+ '@storybook/global': 5.0.0
+ dev: true
+
+ /@storybook/codemod@7.5.2:
+ resolution: {integrity: sha512-PxZg0w4OlmFB4dBzB+sCgwmHNke0n1N8vNooxtcuusrLKlbUfmssYRnQn6yRSJw0WfkUYgI10CWxGaamaOFekA==}
dependencies:
'@babel/core': 7.22.9
'@babel/preset-env': 7.22.9(@babel/core@7.22.9)
'@babel/types': 7.22.5
'@storybook/csf': 0.1.1
- '@storybook/csf-tools': 7.1.1
- '@storybook/node-logger': 7.1.1
- '@storybook/types': 7.1.1
+ '@storybook/csf-tools': 7.5.2
+ '@storybook/node-logger': 7.5.2
+ '@storybook/types': 7.5.2
'@types/cross-spawn': 6.0.2
cross-spawn: 7.0.3
globby: 11.1.0
@@ -3209,43 +3816,79 @@ packages:
- supports-color
dev: true
- /@storybook/components@7.1.1(react-dom@18.2.0)(react@18.2.0):
- resolution: {integrity: sha512-RUSjDj2RDTZsdKfs48oY+3iaL/y3GHU07zuHm/V4kuEHqJscXUt3n5vIX/Z/GtezMrxc0aPDlCSyS/N/EU6bUQ==}
+ /@storybook/components@7.5.2(react-dom@18.2.0)(react@18.2.0):
+ resolution: {integrity: sha512-OP+o6AoxoQDbqjk/jdQ1arlc1T8601eCL+rS1dJY9EtAFq7Z0LEFtafhEW/Lx8FotfVGjfCNptH9ODhHU6e5Jw==}
peerDependencies:
react: ^16.8.0 || ^17.0.0 || ^18.0.0
react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0
dependencies:
- '@storybook/client-logger': 7.1.1
+ '@radix-ui/react-select': 1.2.2(react-dom@18.2.0)(react@18.2.0)
+ '@radix-ui/react-toolbar': 1.0.4(react-dom@18.2.0)(react@18.2.0)
+ '@storybook/client-logger': 7.5.2
'@storybook/csf': 0.1.1
'@storybook/global': 5.0.0
- '@storybook/theming': 7.1.1(react-dom@18.2.0)(react@18.2.0)
- '@storybook/types': 7.1.1
+ '@storybook/theming': 7.5.2(react-dom@18.2.0)(react@18.2.0)
+ '@storybook/types': 7.5.2
memoizerific: 1.11.3
react: 18.2.0
react-dom: 18.2.0(react@18.2.0)
use-resize-observer: 9.1.0(react-dom@18.2.0)(react@18.2.0)
util-deprecate: 1.0.2
+ transitivePeerDependencies:
+ - '@types/react'
+ - '@types/react-dom'
dev: true
- /@storybook/core-client@7.1.1:
- resolution: {integrity: sha512-yFd617XKFS+Q5IFmItXR+DdMfpreHHcdy3f67dt8PLnnjNcGMpi7gEcp8t9yBAT+pIgnqSfE/FNUFTg0OEpRpw==}
+ /@storybook/core-client@7.5.2:
+ resolution: {integrity: sha512-mMDSBxc7esMCu0FOkama9XYHzIHYGhBj8roX+XaTaLDYXaw/UajcCuzcO7fFBHNn3Vdqh2ufIxlI7359v3IqPw==}
dependencies:
- '@storybook/client-logger': 7.1.1
- '@storybook/preview-api': 7.1.1
+ '@storybook/client-logger': 7.5.2
+ '@storybook/preview-api': 7.5.2
+ dev: true
+
+ /@storybook/core-common@7.1.1:
+ resolution: {integrity: sha512-DO7ZS6YDITykvqMHeOWSmnsPYk2w7gka9GtO2LPbEm0f6p5kG2nohBO5+nsI3PuXpKiHXOB7vKJjwfQqxvPj5A==}
+ dependencies:
+ '@storybook/node-logger': 7.1.1
+ '@storybook/types': 7.1.1
+ '@types/find-cache-dir': 3.2.1
+ '@types/node': 16.18.39
+ '@types/node-fetch': 2.6.4
+ '@types/pretty-hrtime': 1.0.1
+ chalk: 4.1.2
+ esbuild: 0.18.17
+ esbuild-register: 3.4.2(esbuild@0.18.17)
+ file-system-cache: 2.3.0
+ find-cache-dir: 3.3.2
+ find-up: 5.0.0
+ fs-extra: 11.1.1
+ glob: 10.3.3
+ handlebars: 4.7.7
+ lazy-universal-dotenv: 4.0.0
+ node-fetch: 2.6.12
+ picomatch: 2.3.1
+ pkg-dir: 5.0.0
+ pretty-hrtime: 1.0.3
+ resolve-from: 5.0.0
+ ts-dedent: 2.2.0
+ transitivePeerDependencies:
+ - encoding
+ - supports-color
dev: true
- /@storybook/core-common@7.1.1:
- resolution: {integrity: sha512-DO7ZS6YDITykvqMHeOWSmnsPYk2w7gka9GtO2LPbEm0f6p5kG2nohBO5+nsI3PuXpKiHXOB7vKJjwfQqxvPj5A==}
+ /@storybook/core-common@7.5.2:
+ resolution: {integrity: sha512-js7fIH4wHS08dBuIVsr3JnwMtKn5O1Izc/Zor4t6PntLWkGGX4X/GxbOkasGX5SkCT1qUtB9RpdPd1sUkLhIgw==}
dependencies:
- '@storybook/node-logger': 7.1.1
- '@storybook/types': 7.1.1
+ '@storybook/core-events': 7.5.2
+ '@storybook/node-logger': 7.5.2
+ '@storybook/types': 7.5.2
'@types/find-cache-dir': 3.2.1
- '@types/node': 16.18.39
+ '@types/node': 18.18.8
'@types/node-fetch': 2.6.4
'@types/pretty-hrtime': 1.0.1
chalk: 4.1.2
esbuild: 0.18.17
- esbuild-register: 3.4.2(esbuild@0.18.17)
+ esbuild-register: 3.5.0(esbuild@0.18.17)
file-system-cache: 2.3.0
find-cache-dir: 3.3.2
find-up: 5.0.0
@@ -3268,26 +3911,32 @@ packages:
resolution: {integrity: sha512-P5iI4zvCJo85de/sghglEHFK/GGkWAQQKzRFrz9kbVBX5LNaosfD7IYHIz/6ZWNPzxWR+RBOKcrRUfcArL4Njg==}
dev: true
- /@storybook/core-server@7.1.1:
- resolution: {integrity: sha512-IfrkdcYwVoP4bltBTx8Yr1e++UAfICV8IYCgW8VFW26Uvl22biCVWwliE35iTYpUmHJgn+U489hCnEdGpr2CWw==}
+ /@storybook/core-events@7.5.2:
+ resolution: {integrity: sha512-DV8bFEFVKDEvaH87KYPXDE0YEV+Y9yjFv2xxmC9pF8l+MWCtVW72RBLhB+gU5NM1bkHrRDNb0lOJfVGKlhxOog==}
+ dependencies:
+ ts-dedent: 2.2.0
+ dev: true
+
+ /@storybook/core-server@7.5.2:
+ resolution: {integrity: sha512-4oXpy1L/NyHiz/OXNUFnSeMLA/+lTgQAlVx86pRbEBDj6snt1/NSx2+yZyFtZ/XTnJ22BPpM8IIrgm95ZlQKmA==}
dependencies:
'@aw-web-design/x-default-browser': 1.4.126
'@discoveryjs/json-ext': 0.5.7
- '@storybook/builder-manager': 7.1.1
- '@storybook/channels': 7.1.1
- '@storybook/core-common': 7.1.1
- '@storybook/core-events': 7.1.1
+ '@storybook/builder-manager': 7.5.2
+ '@storybook/channels': 7.5.2
+ '@storybook/core-common': 7.5.2
+ '@storybook/core-events': 7.5.2
'@storybook/csf': 0.1.1
- '@storybook/csf-tools': 7.1.1
+ '@storybook/csf-tools': 7.5.2
'@storybook/docs-mdx': 0.1.0
'@storybook/global': 5.0.0
- '@storybook/manager': 7.1.1
- '@storybook/node-logger': 7.1.1
- '@storybook/preview-api': 7.1.1
- '@storybook/telemetry': 7.1.1
- '@storybook/types': 7.1.1
+ '@storybook/manager': 7.5.2
+ '@storybook/node-logger': 7.5.2
+ '@storybook/preview-api': 7.5.2
+ '@storybook/telemetry': 7.5.2
+ '@storybook/types': 7.5.2
'@types/detect-port': 1.3.3
- '@types/node': 16.18.39
+ '@types/node': 18.18.8
'@types/pretty-hrtime': 1.0.1
'@types/semver': 7.5.0
better-opn: 3.0.2
@@ -3305,8 +3954,7 @@ packages:
prompts: 2.4.2
read-pkg-up: 7.0.1
semver: 7.5.4
- serve-favicon: 2.5.0
- telejson: 7.1.0
+ telejson: 7.2.0
tiny-invariant: 1.3.1
ts-dedent: 2.2.0
util: 0.12.5
@@ -3320,10 +3968,10 @@ packages:
- utf-8-validate
dev: true
- /@storybook/csf-plugin@7.1.1:
- resolution: {integrity: sha512-bokV+HU6rV/wlWIvgAtn1PUot1W71pto/Wft5hCUATDCsXDz4B5aI9d/ZCJhu7G1R4cYtjsxVdBJSHe9dem7Lg==}
+ /@storybook/csf-plugin@7.5.2:
+ resolution: {integrity: sha512-ndjn1ia2rQLO1r1z6mXv6nipLzJMwWJp31h16lQUXIBQEOiGKjGGvObiuKaad3nNHxWHpGra4zUg7R+54Yw0Hw==}
dependencies:
- '@storybook/csf-tools': 7.1.1
+ '@storybook/csf-tools': 7.5.2
unplugin: 1.4.0
transitivePeerDependencies:
- supports-color
@@ -3345,6 +3993,22 @@ packages:
- supports-color
dev: true
+ /@storybook/csf-tools@7.5.2:
+ resolution: {integrity: sha512-yXaEDREc2wvkjYkQqDMatJw23f0fEFhMIf/zBNF7YljeYw0j8jAg/7XI5WJJSN2KTxD/feD/yD+6eaLUXvrneQ==}
+ dependencies:
+ '@babel/generator': 7.22.9
+ '@babel/parser': 7.22.7
+ '@babel/traverse': 7.22.8
+ '@babel/types': 7.22.5
+ '@storybook/csf': 0.1.1
+ '@storybook/types': 7.5.2
+ fs-extra: 11.1.1
+ recast: 0.23.3
+ ts-dedent: 2.2.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
/@storybook/csf@0.0.1:
resolution: {integrity: sha512-USTLkZze5gkel8MYCujSRBVIrUQ3YPBrLOx7GNk/0wttvVtlzWXAq9eLbQ4p/NicGxP+3T7KPEMVV//g+yubpw==}
dependencies:
@@ -3361,12 +4025,12 @@ packages:
resolution: {integrity: sha512-JDaBR9lwVY4eSH5W8EGHrhODjygPd6QImRbwjAuJNEnY0Vw4ie3bPkeGfnacB3OBW6u/agqPv2aRlR46JcAQLg==}
dev: true
- /@storybook/docs-tools@7.1.1:
- resolution: {integrity: sha512-noDgogRHum1FuqgXBdlv2+wOdkIJOJqSUSi0ZGiuP1OEOdA9YdbCfbWn/z734UEmhwraoQSXYb2tvrIEjfzYSw==}
+ /@storybook/docs-tools@7.5.2:
+ resolution: {integrity: sha512-mBiZFhzMA2ub7wX0ho3UqKqKXO+xUi/rqb4KV4PihLKlhThEdzKyYrIZO4W90NOmlp1yUJJcjG8D8SUPuHQoTw==}
dependencies:
- '@storybook/core-common': 7.1.1
- '@storybook/preview-api': 7.1.1
- '@storybook/types': 7.1.1
+ '@storybook/core-common': 7.5.2
+ '@storybook/preview-api': 7.5.2
+ '@storybook/types': 7.5.2
'@types/doctrine': 0.0.3
doctrine: 3.0.0
lodash: 4.17.21
@@ -3409,6 +4073,16 @@ packages:
'@storybook/preview-api': 7.1.1
dev: true
+ /@storybook/instrumenter@7.5.2:
+ resolution: {integrity: sha512-1l36cc7GaVeTiknhToZcaqI6RsIOfcBgdnvgJ0tiL1naN1GkneCMr+1oLWnlHVrWIOXgh6vNyD792kE3uTLkFg==}
+ dependencies:
+ '@storybook/channels': 7.5.2
+ '@storybook/client-logger': 7.5.2
+ '@storybook/core-events': 7.5.2
+ '@storybook/global': 5.0.0
+ '@storybook/preview-api': 7.5.2
+ dev: true
+
/@storybook/jest@0.1.0:
resolution: {integrity: sha512-TmybnEXlv5Fu2/Hq4nRj7alS9mw4CasLR0RDwaAzS+Vpvu1TC4+j9rh+b1BHtmWebbJh0JMT6mgzPqOyJdgtQA==}
dependencies:
@@ -3451,20 +4125,20 @@ packages:
- typescript
dev: true
- /@storybook/manager-api@7.1.1(react-dom@18.2.0)(react@18.2.0):
- resolution: {integrity: sha512-gk429qAGMW33rAZwFXo7fDoeYGrnSbj4ddHXJYc0nzBcC6emlq5IS5GHgJthQ3Oe8CPbq8bwUkWW6I5E7OePWA==}
+ /@storybook/manager-api@7.5.2(react-dom@18.2.0)(react@18.2.0):
+ resolution: {integrity: sha512-WX8GjBkITRQzhQ08WEAVjdDW8QqqIQhWOpFzXUYCxCNzt1eSALI31QQ+M1/MYymw+TOkotC/SMcn/puIAm4rdA==}
peerDependencies:
react: ^16.8.0 || ^17.0.0 || ^18.0.0
react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0
dependencies:
- '@storybook/channels': 7.1.1
- '@storybook/client-logger': 7.1.1
- '@storybook/core-events': 7.1.1
+ '@storybook/channels': 7.5.2
+ '@storybook/client-logger': 7.5.2
+ '@storybook/core-events': 7.5.2
'@storybook/csf': 0.1.1
'@storybook/global': 5.0.0
- '@storybook/router': 7.1.1(react-dom@18.2.0)(react@18.2.0)
- '@storybook/theming': 7.1.1(react-dom@18.2.0)(react@18.2.0)
- '@storybook/types': 7.1.1
+ '@storybook/router': 7.5.2(react-dom@18.2.0)(react@18.2.0)
+ '@storybook/theming': 7.5.2(react-dom@18.2.0)(react@18.2.0)
+ '@storybook/types': 7.5.2
dequal: 2.0.3
lodash: 4.17.21
memoizerific: 1.11.3
@@ -3472,12 +4146,12 @@ packages:
react-dom: 18.2.0(react@18.2.0)
semver: 7.5.4
store2: 2.14.2
- telejson: 7.1.0
+ telejson: 7.2.0
ts-dedent: 2.2.0
dev: true
- /@storybook/manager@7.1.1:
- resolution: {integrity: sha512-kRW9sPuJWsEi8Swcyt9rYwdfvA0rqKEuPBCCbrmmjyIwZR60IYg2KHXcF7q4qdkvts2xee5YTbgHcdfc0iIPSg==}
+ /@storybook/manager@7.5.2:
+ resolution: {integrity: sha512-5l1z9SpCFQBcHjC5mbfWQ8mPTYFxD8GQ9mNZ6PPrj47yu9TyCRYSQj7A8ZXJiIY1ZEg4a2BCW7fPUYG+lX6Drw==}
dev: true
/@storybook/mdx2-csf@1.1.0:
@@ -3488,8 +4162,12 @@ packages:
resolution: {integrity: sha512-gnAuNM+wNoOcGnUM6hLsYV0lwUgRI39Ep/Pp3VF1oXZAthEyrQRm7ImbeAdt93ObPc9DZgqTx9OI8QnErZuJiA==}
dev: true
- /@storybook/postinstall@7.1.1:
- resolution: {integrity: sha512-qpe6BiFLVs9YYFQVGgRT0dJxPOKBtGLIAsnVEpXKUPrltEWQpTxQEqqOSJlut+FLoWB5MTxrwiJ/7891h4a5pw==}
+ /@storybook/node-logger@7.5.2:
+ resolution: {integrity: sha512-VIBuwPJOylu8vJofk1VfmqxlhXgbBgV0pCTo/UzdQAbc3w5y+qNRemf8goWxYEY+L9p6oUXqm/i9+bNGyX7/Mw==}
+ dev: true
+
+ /@storybook/postinstall@7.5.2:
+ resolution: {integrity: sha512-fKgyV1fAgckDoxQkUGJl5uzjzGC5esC/nITiCjccZFrqxt9mgmz4VAUkMeseD5tfWQ5oFA0Xdgtrrcl39+chnw==}
dev: true
/@storybook/preview-api@7.1.1:
@@ -3512,12 +4190,31 @@ packages:
util-deprecate: 1.0.2
dev: true
- /@storybook/preview@7.1.1:
- resolution: {integrity: sha512-F3ikRKzwmT9MlptYXxYOQmaSwmJckPag0k9lM0LvI0xYplLbyWJ5rfs2gLKl++wX+ag2A+1K4gId5Xaz4SKnxQ==}
+ /@storybook/preview-api@7.5.2:
+ resolution: {integrity: sha512-rpmHR/09UBSnorDBTcE7JgHUQjZLO146NCI+vbI7Pqfb4QX/8lhwkFr4cuHRAR16mv6DAJbDVoPETO0Z/CH9aw==}
+ dependencies:
+ '@storybook/channels': 7.5.2
+ '@storybook/client-logger': 7.5.2
+ '@storybook/core-events': 7.5.2
+ '@storybook/csf': 0.1.1
+ '@storybook/global': 5.0.0
+ '@storybook/types': 7.5.2
+ '@types/qs': 6.9.7
+ dequal: 2.0.3
+ lodash: 4.17.21
+ memoizerific: 1.11.3
+ qs: 6.11.2
+ synchronous-promise: 2.0.17
+ ts-dedent: 2.2.0
+ util-deprecate: 1.0.2
+ dev: true
+
+ /@storybook/preview@7.5.2:
+ resolution: {integrity: sha512-dA5VpHp0D9nh9/wOzWP8At1wtz/SiaMBbwaiEOFTFUGcPerrkroEWadIlSSB7vgQJ9yWiD4l3KDaS8ANzHWtPQ==}
dev: true
- /@storybook/react-dom-shim@7.1.1(react-dom@18.2.0)(react@18.2.0):
- resolution: {integrity: sha512-yfc0tCtg+OEfvOKwCF0+E0ot8XGpubMTpbfChahhzEYyI9zz1rA7OCwRzERMnX/C7TYW3aLab9f5MzWIKQClmQ==}
+ /@storybook/react-dom-shim@7.5.2(react-dom@18.2.0)(react@18.2.0):
+ resolution: {integrity: sha512-x7h3TTLRLs8mrsCBKXbvjBRFms73XrNlm0Lo5Tu/Tf//+pwOFq+2sGBkqbRkYd54jNHhpqNF7+UUdzA93ESnbQ==}
peerDependencies:
react: ^16.8.0 || ^17.0.0 || ^18.0.0
react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0
@@ -3526,70 +4223,80 @@ packages:
react-dom: 18.2.0(react@18.2.0)
dev: true
- /@storybook/router@7.1.1(react-dom@18.2.0)(react@18.2.0):
- resolution: {integrity: sha512-GRYYWVsqAtDm7DHxnGXuaAmr3PQfj+tonYsP8/L3gC5sOdQNF3yaBmvv1pu+bqezwXVowq0ew+iVYECiaGoB3Q==}
+ /@storybook/router@7.5.2(react-dom@18.2.0)(react@18.2.0):
+ resolution: {integrity: sha512-jlh48TVUlqvGkU8MnkVp9SrCHomWGtQGx1WMK94NMyOPVPTLWzM6LjIybgmHz0MTe4lpzmbiIOfSlU3pPX054w==}
peerDependencies:
react: ^16.8.0 || ^17.0.0 || ^18.0.0
react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0
dependencies:
- '@storybook/client-logger': 7.1.1
+ '@storybook/client-logger': 7.5.2
memoizerific: 1.11.3
qs: 6.11.2
react: 18.2.0
react-dom: 18.2.0(react@18.2.0)
dev: true
- /@storybook/svelte-vite@7.1.1(svelte@4.0.0)(typescript@5.1.6)(vite@4.4.3):
- resolution: {integrity: sha512-0GyqGDUh/szuCyUZ++X93qND5w45mv83pdgtQQZlTImQcW/NZxPWB1i6B5bBxPgSkIXvaOuW8JpjC21YGFGRcg==}
+ /@storybook/svelte-vite@7.5.2(@babel/core@7.22.9)(svelte@4.2.2)(typescript@5.1.6)(vite@4.4.3):
+ resolution: {integrity: sha512-THqQIJGlHmHvo8BecMU+eRE1ug1gb0nWUD+6wIYcHvLa1ia6MgNZfi8Yy19GtfUZagxpFoKmJZNTjyYjUxHzLQ==}
engines: {node: ^14.18 || >=16}
peerDependencies:
svelte: ^3.0.0 || ^4.0.0
- vite: ^3.0.0 || ^4.0.0
+ vite: ^3.0.0 || ^4.0.0 || ^5.0.0
dependencies:
- '@storybook/builder-vite': 7.1.1(typescript@5.1.6)(vite@4.4.3)
- '@storybook/node-logger': 7.1.1
- '@storybook/svelte': 7.1.1(svelte@4.0.0)
- '@sveltejs/vite-plugin-svelte': 2.4.2(svelte@4.0.0)(vite@4.4.3)
+ '@storybook/builder-vite': 7.5.2(typescript@5.1.6)(vite@4.4.3)
+ '@storybook/node-logger': 7.5.2
+ '@storybook/svelte': 7.5.2(svelte@4.2.2)
+ '@sveltejs/vite-plugin-svelte': 2.4.2(svelte@4.2.2)(vite@4.4.3)
magic-string: 0.30.1
- svelte: 4.0.0
+ svelte: 4.2.2
+ svelte-preprocess: 5.0.4(@babel/core@7.22.9)(svelte@4.2.2)(typescript@5.1.6)
sveltedoc-parser: 4.2.1
ts-dedent: 2.2.0
vite: 4.4.3(@types/node@20.4.5)
transitivePeerDependencies:
+ - '@babel/core'
- '@preact/preset-vite'
+ - coffeescript
- encoding
+ - less
+ - postcss
+ - postcss-load-config
+ - pug
+ - sass
+ - stylus
+ - sugarss
- supports-color
- typescript
- vite-plugin-glimmerx
dev: true
- /@storybook/svelte@7.1.1(svelte@4.0.0):
- resolution: {integrity: sha512-mQLmJCYGxdHWKVEeKcaB1Y+BapH6vwyPOuQ0W3Fy1Pv0k0+/UO5sxS63ps2HsCjloYndLn8drwtx11HrM/G6zw==}
+ /@storybook/svelte@7.5.2(svelte@4.2.2):
+ resolution: {integrity: sha512-0PkhKhELK5lVZ/uDswXatDxLTkAAv3UcMDpNVwqpRhJocQQmQYlvpOdqqh8yi0QVAQmIziAt7LZP+8WlYyVQvQ==}
engines: {node: '>=16.0.0'}
peerDependencies:
svelte: ^3.1.0 || ^4.0.0
dependencies:
- '@storybook/client-logger': 7.1.1
- '@storybook/core-client': 7.1.1
- '@storybook/core-events': 7.1.1
- '@storybook/docs-tools': 7.1.1
+ '@storybook/client-logger': 7.5.2
+ '@storybook/core-client': 7.5.2
+ '@storybook/core-events': 7.5.2
+ '@storybook/docs-tools': 7.5.2
'@storybook/global': 5.0.0
- '@storybook/preview-api': 7.1.1
- '@storybook/types': 7.1.1
- svelte: 4.0.0
+ '@storybook/preview-api': 7.5.2
+ '@storybook/types': 7.5.2
+ svelte: 4.2.2
sveltedoc-parser: 4.2.1
- type-fest: 3.13.1
+ type-fest: 2.19.0
transitivePeerDependencies:
- encoding
- supports-color
dev: true
- /@storybook/telemetry@7.1.1:
- resolution: {integrity: sha512-7bQBfphEHJA1kHyPVVvrRXRet57JhyRD4uxoWYfp4jkSt2wHzAAdGU8Iz7U+ozv4TG7AA1gb1Uh5BS4nCiijsw==}
+ /@storybook/telemetry@7.5.2:
+ resolution: {integrity: sha512-tUgrcIx1vTMhTySp11JbBnWLsaMUNlil5yuOWEJy5i71E4Xy/2hYUtLfxzgXWd/0W7eTl4p2tjUk9uS8AP+S0Q==}
dependencies:
- '@storybook/client-logger': 7.1.1
- '@storybook/core-common': 7.1.1
- '@storybook/csf-tools': 7.1.1
+ '@storybook/client-logger': 7.5.2
+ '@storybook/core-common': 7.5.2
+ '@storybook/csf-tools': 7.5.2
chalk: 4.1.2
detect-package-manager: 2.0.1
fetch-retry: 5.0.6
@@ -3611,7 +4318,7 @@ packages:
'@storybook/core-common': 7.1.1
'@storybook/csf': 0.1.1
'@storybook/csf-tools': 7.1.1
- '@storybook/preview-api': 7.1.1
+ '@storybook/preview-api': 7.5.2
'@swc/core': 1.3.72
'@swc/jest': 0.2.27(@swc/core@1.3.72)
can-bind-to-host: 1.1.2
@@ -3663,14 +4370,14 @@ packages:
react-dom: 18.2.0(react@18.2.0)
dev: false
- /@storybook/theming@7.1.1(react-dom@18.2.0)(react@18.2.0):
- resolution: {integrity: sha512-8ri/BvfgUzBln9EYB8N/xgRaxZIFFTG0IEEekuV2H5uv4q9JW9p3E5zqghmM1OC/vspJJa8e4Eajb1YiTO0W6w==}
+ /@storybook/theming@7.5.2(react-dom@18.2.0)(react@18.2.0):
+ resolution: {integrity: sha512-DZBTcYErSYvmTYsGz7lKtiIcBe8flBw5Ojp52r3O4GcRYG4AbuUwwVvehz+O1cWaS+UW3HavrcgapERH7ZHd1A==}
peerDependencies:
react: ^16.8.0 || ^17.0.0 || ^18.0.0
react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0
dependencies:
'@emotion/use-insertion-effect-with-fallbacks': 1.0.1(react@18.2.0)
- '@storybook/client-logger': 7.1.1
+ '@storybook/client-logger': 7.5.2
'@storybook/global': 5.0.0
memoizerific: 1.11.3
react: 18.2.0
@@ -3686,7 +4393,16 @@ packages:
file-system-cache: 2.3.0
dev: true
- /@sveltejs/package@2.2.0(svelte@4.0.0)(typescript@5.1.6):
+ /@storybook/types@7.5.2:
+ resolution: {integrity: sha512-RDKHo6WUES+4nt7uZMfankjxdpYX2EI2GpJ2n2RPcnhzmb/ub1huNTjbzDEYMqY24SppljZeIN57m3Ar6L6f9A==}
+ dependencies:
+ '@storybook/channels': 7.5.2
+ '@types/babel__core': 7.20.1
+ '@types/express': 4.17.17
+ file-system-cache: 2.3.0
+ dev: true
+
+ /@sveltejs/package@2.2.0(svelte@4.2.2)(typescript@5.1.6):
resolution: {integrity: sha512-TXbrzsk+T5WNcSzrU41D8P32vU5guo96lVS11/R+rpLhZBH5sORh0Qp6r68Jg4O5vcdS3JLwpwcpe8VFbT/QeA==}
engines: {node: ^16.14 || >=18}
hasBin: true
@@ -3697,13 +4413,13 @@ packages:
kleur: 4.1.5
sade: 1.8.1
semver: 7.5.4
- svelte: 4.0.0
- svelte2tsx: 0.6.19(svelte@4.0.0)(typescript@5.1.6)
+ svelte: 4.2.2
+ svelte2tsx: 0.6.19(svelte@4.2.2)(typescript@5.1.6)
transitivePeerDependencies:
- typescript
dev: true
- /@sveltejs/vite-plugin-svelte-inspector@1.0.3(@sveltejs/vite-plugin-svelte@2.4.2)(svelte@4.0.0)(vite@4.4.3):
+ /@sveltejs/vite-plugin-svelte-inspector@1.0.3(@sveltejs/vite-plugin-svelte@2.4.2)(svelte@4.2.2)(vite@4.4.3):
resolution: {integrity: sha512-Khdl5jmmPN6SUsVuqSXatKpQTMIifoQPDanaxC84m9JxIibWvSABJyHpyys0Z+1yYrxY5TTEQm+6elh0XCMaOA==}
engines: {node: ^14.18.0 || >= 16}
peerDependencies:
@@ -3711,28 +4427,28 @@ packages:
svelte: ^3.54.0 || ^4.0.0
vite: ^4.0.0
dependencies:
- '@sveltejs/vite-plugin-svelte': 2.4.2(svelte@4.0.0)(vite@4.4.3)
+ '@sveltejs/vite-plugin-svelte': 2.4.2(svelte@4.2.2)(vite@4.4.3)
debug: 4.3.4
- svelte: 4.0.0
+ svelte: 4.2.2
vite: 4.4.3(@types/node@20.4.5)
transitivePeerDependencies:
- supports-color
dev: true
- /@sveltejs/vite-plugin-svelte@2.4.2(svelte@4.0.0)(vite@4.4.3):
+ /@sveltejs/vite-plugin-svelte@2.4.2(svelte@4.2.2)(vite@4.4.3):
resolution: {integrity: sha512-ePfcC48ftMKhkT0OFGdOyycYKnnkT6i/buzey+vHRTR/JpQvuPzzhf1PtKqCDQfJRgoPSN2vscXs6gLigx/zGw==}
engines: {node: ^14.18.0 || >= 16}
peerDependencies:
svelte: ^3.54.0 || ^4.0.0
vite: ^4.0.0
dependencies:
- '@sveltejs/vite-plugin-svelte-inspector': 1.0.3(@sveltejs/vite-plugin-svelte@2.4.2)(svelte@4.0.0)(vite@4.4.3)
+ '@sveltejs/vite-plugin-svelte-inspector': 1.0.3(@sveltejs/vite-plugin-svelte@2.4.2)(svelte@4.2.2)(vite@4.4.3)
debug: 4.3.4
deepmerge: 4.3.1
kleur: 4.1.5
magic-string: 0.30.1
- svelte: 4.0.0
- svelte-hmr: 0.15.2(svelte@4.0.0)
+ svelte: 4.2.2
+ svelte-hmr: 0.15.2(svelte@4.2.2)
vite: 4.4.3(@types/node@20.4.5)
vitefu: 0.2.4(vite@4.4.3)
transitivePeerDependencies:
@@ -4133,6 +4849,12 @@ packages:
resolution: {integrity: sha512-8q9ZexmdYYyc5/cfujaXb4YOucpQxAV4RMG0himLyDUOEr8Mr79VrqsFI+cQ2M2h89YIuy95lbxuYjxT4Hk4kQ==}
dev: true
+ /@types/node@18.18.8:
+ resolution: {integrity: sha512-OLGBaaK5V3VRBS1bAkMVP2/W9B+H8meUfl866OrMNQqt7wDgdpWPp5o6gmIc9pB+lIQHSq4ZL8ypeH1vPxcPaQ==}
+ dependencies:
+ undici-types: 5.26.5
+ dev: true
+
/@types/node@20.4.5:
resolution: {integrity: sha512-rt40Nk13II9JwQBdeYqmbn2Q6IVTA5uPhvSO+JVqdXw/6/4glI6oR9ezty/A9Hg5u7JH4OmYmuQ+XvjKm0Datg==}
dev: true
@@ -4157,6 +4879,10 @@ packages:
resolution: {integrity: sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==}
dev: true
+ /@types/pug@2.0.6:
+ resolution: {integrity: sha512-SnHmG9wN1UVmagJOnyo/qkk0Z7gejYxOYYmaAwr5u2yFYfsupN3sg10kyzN8Hep/2zbHxCnsumxOoRIRMBwKCg==}
+ dev: true
+
/@types/qs@6.9.7:
resolution: {integrity: sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==}
dev: true
@@ -4644,6 +5370,13 @@ packages:
resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==}
dev: true
+ /aria-hidden@1.2.3:
+ resolution: {integrity: sha512-xcLxITLe2HYa1cnYnwCjkOO1PqUHQpozB8x9AR0OgWN2woOBi5kSDVxKfd0b7sb1hw5qFeJhXm9H1nu3xSfLeQ==}
+ engines: {node: '>=10'}
+ dependencies:
+ tslib: 2.6.1
+ dev: true
+
/aria-query@5.1.3:
resolution: {integrity: sha512-R5iJ5lkuHybztUfuOAznmboyjWq8O6sqNqtK7CLOqdydi54VNbORp49mb14KbWgG1QD3JFO9hJdZ+y4KutfdOQ==}
dependencies:
@@ -5402,8 +6135,8 @@ packages:
engines: {iojs: '>= 1.0.0', node: '>= 0.12.0'}
dev: true
- /code-red@1.0.3:
- resolution: {integrity: sha512-kVwJELqiILQyG5aeuyKFbdsI1fmQy1Cmf7dQ8eGmVuJoaRVdwey7WaMknr2ZFeVSYSKT0rExsa8EGw0aoI/1QQ==}
+ /code-red@1.0.4:
+ resolution: {integrity: sha512-7qJWqItLA8/VPVlKJlFXU+NBlo/qyfs39aJcuMT/2ere32ZqvF5OSxgdM5xOfJJ7O429gg2HM47y8v9P+9wrNw==}
dependencies:
'@jridgewell/sourcemap-codec': 1.4.15
'@types/estree': 1.0.1
@@ -5892,6 +6625,10 @@ packages:
engines: {node: '>=8'}
dev: true
+ /detect-node-es@1.1.0:
+ resolution: {integrity: sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ==}
+ dev: true
+
/detect-package-manager@2.0.1:
resolution: {integrity: sha512-j/lJHyoLlWi6G1LDdLgvUtz60Zo5GEj+sVYtTVXnYLDPuzgC3llMxonXym9zIwhhUII8vjdw0LXxavpLqTbl1A==}
engines: {node: '>=12'}
@@ -6255,6 +6992,10 @@ packages:
resolution: {integrity: sha512-MEl9uirslVwqQU369iHNWZXsI8yaZYGg/D65aOgZkeyFJwHYSxilf7rQzXKI7DdDuBPrBXbfk3sl9hJhmd5AUw==}
dev: true
+ /es6-promise@3.3.1:
+ resolution: {integrity: sha512-SOp9Phqvqn7jtEUxPWdWfWoLmyt2VaJ6MpvP9Comy1MceMXqE6bxvaTu4iaxpYYPzhny28Lc+M87/c2cPK6lDg==}
+ dev: true
+
/esbuild-plugin-alias@0.2.1:
resolution: {integrity: sha512-jyfL/pwPqaFXyKnj8lP8iLk6Z0m099uXR45aSN8Av1XD4vhvQutxxPzgA2bTcAwQpa1zCXDcWOlhFgyP3GKqhQ==}
dev: true
@@ -6270,6 +7011,17 @@ packages:
- supports-color
dev: true
+ /esbuild-register@3.5.0(esbuild@0.18.17):
+ resolution: {integrity: sha512-+4G/XmakeBAsvJuDugJvtyF1x+XJT4FMocynNpxrvEBViirpfUn2PgNpCHedfWhF4WokNsO/OvMKrmJOIJsI5A==}
+ peerDependencies:
+ esbuild: '>=0.12 <1'
+ dependencies:
+ debug: 4.3.4
+ esbuild: 0.18.17
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
/esbuild@0.18.17:
resolution: {integrity: sha512-1GJtYnUxsJreHYA0Y+iQz2UEykonY66HNWOb0yXYZi9/kNrORUEHVg87eQsCtqh59PEJ5YVZJO98JHznMJSWjg==}
engines: {node: '>=12'}
@@ -6731,7 +7483,7 @@ packages:
eslint-scope: 7.2.2
eslint-utils: 3.0.0(eslint@8.4.1)
eslint-visitor-keys: 3.4.2
- espree: 9.2.0
+ espree: 9.6.1
esquery: 1.5.0
esutils: 2.0.3
fast-deep-equal: 3.1.3
@@ -7321,6 +8073,11 @@ packages:
load-json-file: 4.0.0
dev: true
+ /get-nonce@1.0.1:
+ resolution: {integrity: sha512-FJhYRoDaiatfEkUK8HKlicmu/3SGFD51q3itKDGoSTysQJBnfOcxU5GxnhE1E6soB76MbT0MBtnKJuXyAx+96Q==}
+ engines: {node: '>=6'}
+ dev: true
+
/get-npm-tarball-url@2.0.3:
resolution: {integrity: sha512-R/PW6RqyaBQNWYaSyfrh54/qtcnOp22FHCCiRhSSZj0FP3KQWCsxxt0DzIdVTbwTqe9CtQfvl/FPD4UIPt4pqw==}
engines: {node: '>=12.17'}
@@ -7786,6 +8543,12 @@ packages:
side-channel: 1.0.4
dev: true
+ /invariant@2.2.4:
+ resolution: {integrity: sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==}
+ dependencies:
+ loose-envify: 1.4.0
+ dev: true
+
/io-ts@2.2.20(fp-ts@2.16.1):
resolution: {integrity: sha512-Rq2BsYmtwS5vVttie4rqrOCIfHCS9TgpRLFpKQCM1wZBBRY9nWVGmEvm2FnDbSE2un1UE39DvFpTR5UL47YDcA==}
peerDependencies:
@@ -9489,12 +10252,26 @@ packages:
hasBin: true
dev: true
+ /magic-string@0.27.0:
+ resolution: {integrity: sha512-8UnnX2PeRAPZuN12svgR9j7M1uWMovg/CEnIwIG0LFkXSJJe4PdfUGiTGl8V9bsBHFUtfVINcSyYxd7q+kx9fA==}
+ engines: {node: '>=12'}
+ dependencies:
+ '@jridgewell/sourcemap-codec': 1.4.15
+ dev: true
+
/magic-string@0.30.1:
resolution: {integrity: sha512-mbVKXPmS0z0G4XqFDCTllmDQ6coZzn94aMlb0o/A4HEHJCKcanlDZwYJgwnkmgD3jyWhUgj9VsPrfd972yPffA==}
engines: {node: '>=12'}
dependencies:
'@jridgewell/sourcemap-codec': 1.4.15
+ /magic-string@0.30.5:
+ resolution: {integrity: sha512-7xlpfBaQaP/T6Vh8MO/EqXSW5En6INHEvEXQiuff7Gku0PWjU3uf6w/j9o7O+SpB5fOAkrI5HeoNgwjEO0pFsA==}
+ engines: {node: '>=12'}
+ dependencies:
+ '@jridgewell/sourcemap-codec': 1.4.15
+ dev: true
+
/make-dir@2.1.0:
resolution: {integrity: sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==}
engines: {node: '>=6'}
@@ -9764,10 +10541,6 @@ packages:
resolution: {integrity: sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==}
dev: true
- /ms@2.1.1:
- resolution: {integrity: sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==}
- dev: true
-
/ms@2.1.2:
resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==}
dev: true
@@ -10669,6 +11442,55 @@ packages:
resolution: {integrity: sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==}
dev: true
+ /react-remove-scroll-bar@2.3.4(react@18.2.0):
+ resolution: {integrity: sha512-63C4YQBUt0m6ALadE9XV56hV8BgJWDmmTPY758iIJjfQKt2nYwoUrPk0LXRXcB/yIj82T1/Ixfdpdk68LwIB0A==}
+ engines: {node: '>=10'}
+ peerDependencies:
+ '@types/react': ^16.8.0 || ^17.0.0 || ^18.0.0
+ react: ^16.8.0 || ^17.0.0 || ^18.0.0
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ dependencies:
+ react: 18.2.0
+ react-style-singleton: 2.2.1(react@18.2.0)
+ tslib: 2.6.1
+ dev: true
+
+ /react-remove-scroll@2.5.5(react@18.2.0):
+ resolution: {integrity: sha512-ImKhrzJJsyXJfBZ4bzu8Bwpka14c/fQt0k+cyFp/PBhTfyDnU5hjOtM4AG/0AMyy8oKzOTR0lDgJIM7pYXI0kw==}
+ engines: {node: '>=10'}
+ peerDependencies:
+ '@types/react': ^16.8.0 || ^17.0.0 || ^18.0.0
+ react: ^16.8.0 || ^17.0.0 || ^18.0.0
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ dependencies:
+ react: 18.2.0
+ react-remove-scroll-bar: 2.3.4(react@18.2.0)
+ react-style-singleton: 2.2.1(react@18.2.0)
+ tslib: 2.6.1
+ use-callback-ref: 1.3.0(react@18.2.0)
+ use-sidecar: 1.1.2(react@18.2.0)
+ dev: true
+
+ /react-style-singleton@2.2.1(react@18.2.0):
+ resolution: {integrity: sha512-ZWj0fHEMyWkHzKYUr2Bs/4zU6XLmq9HsgBURm7g5pAVfyn49DgUiNgY2d4lXRlYSiCif9YBGpQleewkcqddc7g==}
+ engines: {node: '>=10'}
+ peerDependencies:
+ '@types/react': ^16.8.0 || ^17.0.0 || ^18.0.0
+ react: ^16.8.0 || ^17.0.0 || ^18.0.0
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ dependencies:
+ get-nonce: 1.0.1
+ invariant: 2.2.4
+ react: 18.2.0
+ tslib: 2.6.1
+ dev: true
+
/react@18.2.0:
resolution: {integrity: sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==}
engines: {node: '>=0.10.0'}
@@ -11239,10 +12061,6 @@ packages:
isarray: 2.0.5
dev: true
- /safe-buffer@5.1.1:
- resolution: {integrity: sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==}
- dev: true
-
/safe-buffer@5.1.2:
resolution: {integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==}
dev: true
@@ -11263,6 +12081,15 @@ packages:
resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==}
dev: true
+ /sander@0.5.1:
+ resolution: {integrity: sha512-3lVqBir7WuKDHGrKRDn/1Ye3kwpXaDOMsiRP1wd6wpZW56gJhsbp5RqQpA6JG/P+pkXizygnr1dKR8vzWaVsfA==}
+ dependencies:
+ es6-promise: 3.3.1
+ graceful-fs: 4.2.11
+ mkdirp: 0.5.6
+ rimraf: 2.7.1
+ dev: true
+
/saxes@6.0.0:
resolution: {integrity: sha512-xAg7SOnEhrm5zI3puOOKyy1OMcMlIJZYNJY7xLBwSze0UjhPLnWfj2GF2EpT0jmzaJKIWKHLsaSSajf35bcYnA==}
engines: {node: '>=v12.22.7'}
@@ -11285,11 +12112,6 @@ packages:
hasBin: true
dev: true
- /semver@7.0.0:
- resolution: {integrity: sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==}
- hasBin: true
- dev: true
-
/semver@7.5.4:
resolution: {integrity: sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==}
engines: {node: '>=10'}
@@ -11319,17 +12141,6 @@ packages:
- supports-color
dev: true
- /serve-favicon@2.5.0:
- resolution: {integrity: sha512-FMW2RvqNr03x+C0WxTyu6sOv21oOjkq5j8tjquWccwa6ScNyGFOGJVpuS1NmTVGBAHS07xnSKotgf2ehQmf9iA==}
- engines: {node: '>= 0.8.0'}
- dependencies:
- etag: 1.8.1
- fresh: 0.5.2
- ms: 2.1.1
- parseurl: 1.3.3
- safe-buffer: 5.1.1
- dev: true
-
/serve-static@1.15.0:
resolution: {integrity: sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==}
engines: {node: '>= 0.8.0'}
@@ -11403,11 +12214,11 @@ packages:
pkg-conf: 2.1.0
dev: true
- /simple-update-notifier@1.1.0:
- resolution: {integrity: sha512-VpsrsJSUcJEseSbMHkrsrAVSdvVS5I96Qo1QAQ4FxQ9wXFcB+pjj7FB7/us9+GcgfW4ziHtYMc1J0PLczb55mg==}
- engines: {node: '>=8.10.0'}
+ /simple-update-notifier@2.0.0:
+ resolution: {integrity: sha512-a2B9Y0KlNXl9u/vsW6sTIu9vGEpfKu2wRV6l1H3XEas/0gUIzGzBoP/IouTcUQbm9JWZLH3COxyn03TYlFax6w==}
+ engines: {node: '>=10'}
dependencies:
- semver: 7.0.0
+ semver: 7.5.4
dev: true
/sisteransi@1.0.5:
@@ -11442,6 +12253,16 @@ packages:
resolution: {integrity: sha512-VZBmZP8WU3sMOZm1bdgTadsQbcscK0UM8oKxKVBs4XAhUo2Xxzm/OFMGBkPusxw9xL3Uy8LrzEqGqJhclsr0yA==}
dev: true
+ /sorcery@0.11.0:
+ resolution: {integrity: sha512-J69LQ22xrQB1cIFJhPfgtLuI6BpWRiWu1Y3vSsIwK/eAScqJxd/+CJlUuHQRdX2C9NGFamq+KqNywGgaThwfHw==}
+ hasBin: true
+ dependencies:
+ '@jridgewell/sourcemap-codec': 1.4.15
+ buffer-crc32: 0.2.13
+ minimist: 1.2.8
+ sander: 0.5.1
+ dev: true
+
/sort-object-keys@1.1.3:
resolution: {integrity: sha512-855pvK+VkU7PaKYPc+Jjnmt4EzejQHyhhF33q31qG8x7maDzkeFhAAThdCYay11CISO+qAMwjOBP+fPZe0IPyg==}
dev: true
@@ -11570,11 +12391,11 @@ packages:
resolution: {integrity: sha512-siT1RiqlfQnGqgT/YzXVUNsom9S0H1OX+dpdGN1xkyYATo4I6sep5NmsRD/40s3IIOvlCq6akxkqG82urIZW1w==}
dev: true
- /storybook@7.1.1:
- resolution: {integrity: sha512-5/FIgiD574uwwDGtyyMuqXSOw4kzpEiPbMy1jMWmc8lI2g6vynwbyWqqXmVqtKpJa1vVCM4+KjFqZCmyXFJiZQ==}
+ /storybook@7.5.2:
+ resolution: {integrity: sha512-wuB5VdmI6teU2z5iiBEZ2ziNeP6g6Da/dGM7+tWQVUl8bmfOmpEgzgEyS1/XqdOfm+HoZplspwM0XMHOLo/Now==}
hasBin: true
dependencies:
- '@storybook/cli': 7.1.1
+ '@storybook/cli': 7.5.2
transitivePeerDependencies:
- bufferutil
- encoding
@@ -11763,29 +12584,56 @@ packages:
engines: {node: '>= 0.4'}
dev: true
+ /svelte-check@3.5.0(@babel/core@7.22.9)(svelte@4.2.2):
+ resolution: {integrity: sha512-KHujbn4k17xKYLmtCwv0sKKM7uiHTYcQvXnvrCcNU6a7hcszh99zFTIoiu/Sp/ewAw5aJmillJ1Cs8gKLmcX4A==}
+ hasBin: true
+ peerDependencies:
+ svelte: ^3.55.0 || ^4.0.0-next.0 || ^4.0.0
+ dependencies:
+ '@jridgewell/trace-mapping': 0.3.18
+ chokidar: 3.5.3
+ fast-glob: 3.3.1
+ import-fresh: 3.3.0
+ picocolors: 1.0.0
+ sade: 1.8.1
+ svelte: 4.2.2
+ svelte-preprocess: 5.0.4(@babel/core@7.22.9)(svelte@4.2.2)(typescript@5.1.6)
+ typescript: 5.1.6
+ transitivePeerDependencies:
+ - '@babel/core'
+ - coffeescript
+ - less
+ - postcss
+ - postcss-load-config
+ - pug
+ - sass
+ - stylus
+ - sugarss
+ dev: true
+
/svelte-dev-helper@1.1.9:
resolution: {integrity: sha512-oU+Xv7Dl4kRU2kdFjsoPLfJfnt5hUhsFUZtuzI3Ku/f2iAFZqBoEuXOqK3N9ngD4dxQOmN4OKWPHVi3NeAeAfQ==}
dev: true
- /svelte-hmr@0.14.12(svelte@4.0.0):
+ /svelte-hmr@0.14.12(svelte@4.2.2):
resolution: {integrity: sha512-4QSW/VvXuqVcFZ+RhxiR8/newmwOCTlbYIezvkeN6302YFRE8cXy0naamHcjz8Y9Ce3ITTZtrHrIL0AGfyo61w==}
engines: {node: ^12.20 || ^14.13.1 || >= 16}
peerDependencies:
svelte: '>=3.19.0'
dependencies:
- svelte: 4.0.0
+ svelte: 4.2.2
dev: true
- /svelte-hmr@0.15.2(svelte@4.0.0):
+ /svelte-hmr@0.15.2(svelte@4.2.2):
resolution: {integrity: sha512-q/bAruCvFLwvNbeE1x3n37TYFb3mTBJ6TrCq6p2CoFbSTNhDE9oAtEfpy+wmc9So8AG0Tja+X0/mJzX9tSfvIg==}
engines: {node: ^12.20 || ^14.13.1 || >= 16}
peerDependencies:
svelte: ^3.19.0 || ^4.0.0-next.0
dependencies:
- svelte: 4.0.0
+ svelte: 4.2.2
dev: true
- /svelte-jester@2.3.2(jest@29.6.2)(svelte@4.0.0):
+ /svelte-jester@2.3.2(jest@29.6.2)(svelte@4.2.2):
resolution: {integrity: sha512-JtxSz4FWAaCRBXbPsh4LcDs4Ua7zdXgLC0TZvT1R56hRV0dymmNP+abw67DTPF7sQPyNxWsOKd0Sl7Q8SnP8kg==}
engines: {node: '>=14'}
peerDependencies:
@@ -11793,21 +12641,69 @@ packages:
svelte: '>= 3'
dependencies:
jest: 29.6.2(@types/node@20.4.5)
- svelte: 4.0.0
+ svelte: 4.2.2
dev: true
- /svelte-loader@3.1.7(svelte@4.0.0):
+ /svelte-loader@3.1.7(svelte@4.2.2):
resolution: {integrity: sha512-YVg5gQaUdV26uaA5SEGj1VOUX0YQicD9PezKvVlkQ2JI644silWtJZ3hkxHtXSfjnlFr0OTNoyOgeINIODdT+A==}
peerDependencies:
svelte: '>3.0.0'
dependencies:
loader-utils: 2.0.4
- svelte: 4.0.0
+ svelte: 4.2.2
svelte-dev-helper: 1.1.9
- svelte-hmr: 0.14.12(svelte@4.0.0)
+ svelte-hmr: 0.14.12(svelte@4.2.2)
+ dev: true
+
+ /svelte-preprocess@5.0.4(@babel/core@7.22.9)(svelte@4.2.2)(typescript@5.1.6):
+ resolution: {integrity: sha512-ABia2QegosxOGsVlsSBJvoWeXy1wUKSfF7SWJdTjLAbx/Y3SrVevvvbFNQqrSJw89+lNSsM58SipmZJ5SRi5iw==}
+ engines: {node: '>= 14.10.0'}
+ requiresBuild: true
+ peerDependencies:
+ '@babel/core': ^7.10.2
+ coffeescript: ^2.5.1
+ less: ^3.11.3 || ^4.0.0
+ postcss: ^7 || ^8
+ postcss-load-config: ^2.1.0 || ^3.0.0 || ^4.0.0
+ pug: ^3.0.0
+ sass: ^1.26.8
+ stylus: ^0.55.0
+ sugarss: ^2.0.0 || ^3.0.0 || ^4.0.0
+ svelte: ^3.23.0 || ^4.0.0-next.0 || ^4.0.0
+ typescript: '>=3.9.5 || ^4.0.0 || ^5.0.0'
+ peerDependenciesMeta:
+ '@babel/core':
+ optional: true
+ coffeescript:
+ optional: true
+ less:
+ optional: true
+ postcss:
+ optional: true
+ postcss-load-config:
+ optional: true
+ pug:
+ optional: true
+ sass:
+ optional: true
+ stylus:
+ optional: true
+ sugarss:
+ optional: true
+ typescript:
+ optional: true
+ dependencies:
+ '@babel/core': 7.22.9
+ '@types/pug': 2.0.6
+ detect-indent: 6.1.0
+ magic-string: 0.27.0
+ sorcery: 0.11.0
+ strip-indent: 3.0.0
+ svelte: 4.2.2
+ typescript: 5.1.6
dev: true
- /svelte2tsx@0.6.19(svelte@4.0.0)(typescript@5.1.6):
+ /svelte2tsx@0.6.19(svelte@4.2.2)(typescript@5.1.6):
resolution: {integrity: sha512-h3b5OtcO8zyVL/RiB2zsDwCopeo/UH+887uyhgb2mjnewOFwiTxu+4IGuVwrrlyuh2onM2ktfUemNrNmQwXONQ==}
peerDependencies:
svelte: ^3.55 || ^4.0.0-next.0 || ^4.0
@@ -11815,12 +12711,12 @@ packages:
dependencies:
dedent-js: 1.0.1
pascal-case: 3.1.2
- svelte: 4.0.0
+ svelte: 4.2.2
typescript: 5.1.6
dev: true
- /svelte@4.0.0:
- resolution: {integrity: sha512-+yCYu3AEUu9n91dnQNGIbnVp8EmNQtuF/YImW4+FTXRHard7NMo+yTsWzggPAbj3fUEJ1FBJLkql/jkp6YB5pg==}
+ /svelte@4.2.2:
+ resolution: {integrity: sha512-My2tytF2e2NnHSpn2M7/3VdXT4JdTglYVUuSuK/mXL2XtulPYbeBfl8Dm1QiaKRn0zoULRnL+EtfZHHP0k4H3A==}
engines: {node: '>=16'}
dependencies:
'@ampproject/remapping': 2.2.1
@@ -11829,12 +12725,12 @@ packages:
acorn: 8.10.0
aria-query: 5.3.0
axobject-query: 3.2.1
- code-red: 1.0.3
+ code-red: 1.0.4
css-tree: 2.3.1
estree-walker: 3.0.3
is-reference: 3.0.1
locate-character: 3.0.0
- magic-string: 0.30.1
+ magic-string: 0.30.5
periscopic: 3.1.0
dev: true
@@ -11921,6 +12817,12 @@ packages:
memoizerific: 1.11.3
dev: true
+ /telejson@7.2.0:
+ resolution: {integrity: sha512-1QTEcJkJEhc8OnStBx/ILRu5J2p0GjvWsBx56bmZRqnrkdBMUe+nX92jxV+p3dB4CP6PZCdJMQJwCggkNBMzkQ==}
+ dependencies:
+ memoizerific: 1.11.3
+ dev: true
+
/temp-dir@2.0.0:
resolution: {integrity: sha512-aoBAniQmmwtcKp/7BzsH8Cxzv8OL736p7v1ihGb5e9DJ9kTwGWHrQrVB5+lfVDzfGrdRzXch+ig7LHaY1JTOrg==}
engines: {node: '>=8'}
@@ -12288,6 +13190,10 @@ packages:
which-boxed-primitive: 1.0.2
dev: true
+ /undici-types@5.26.5:
+ resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==}
+ dev: true
+
/unicode-canonical-property-names-ecmascript@2.0.0:
resolution: {integrity: sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==}
engines: {node: '>=4'}
@@ -12481,6 +13387,20 @@ packages:
requires-port: 1.0.0
dev: true
+ /use-callback-ref@1.3.0(react@18.2.0):
+ resolution: {integrity: sha512-3FT9PRuRdbB9HfXhEq35u4oZkvpJ5kuYbpqhCfmiZyReuRgpnhDlbr2ZEnnuS0RrJAPn6l23xjFg9kpDM+Ms7w==}
+ engines: {node: '>=10'}
+ peerDependencies:
+ '@types/react': ^16.8.0 || ^17.0.0 || ^18.0.0
+ react: ^16.8.0 || ^17.0.0 || ^18.0.0
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ dependencies:
+ react: 18.2.0
+ tslib: 2.6.1
+ dev: true
+
/use-resize-observer@9.1.0(react-dom@18.2.0)(react@18.2.0):
resolution: {integrity: sha512-R25VqO9Wb3asSD4eqtcxk8sJalvIOYBqS8MNZlpDSQ4l4xMQxC/J7Id9HoTqPq8FwULIn0PVW+OAqF2dyYbjow==}
peerDependencies:
@@ -12492,6 +13412,21 @@ packages:
react-dom: 18.2.0(react@18.2.0)
dev: true
+ /use-sidecar@1.1.2(react@18.2.0):
+ resolution: {integrity: sha512-epTbsLuzZ7lPClpz2TyryBfztm7m+28DlEv2ZCQ3MDr5ssiwyOwGH/e5F9CkfWjJ1t4clvI58yF822/GUkjjhw==}
+ engines: {node: '>=10'}
+ peerDependencies:
+ '@types/react': ^16.9.0 || ^17.0.0 || ^18.0.0
+ react: ^16.8.0 || ^17.0.0 || ^18.0.0
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ dependencies:
+ detect-node-es: 1.1.0
+ react: 18.2.0
+ tslib: 2.6.1
+ dev: true
+
/user-home@2.0.0:
resolution: {integrity: sha512-KMWqdlOcjCYdtIJpicDSFBQ8nFwS2i9sslAd6f4+CBGcU4gist2REnr2fxj2YocvJFxSF3ZOHLYLVZnUxv4BZQ==}
engines: {node: '>=0.10.0'}
diff --git a/src/components/RenderContext.svelte b/src/components/RenderContext.svelte
index 53921f3..4423339 100644
--- a/src/components/RenderContext.svelte
+++ b/src/components/RenderContext.svelte
@@ -9,9 +9,25 @@
export let args = {};
export let storyContext = {};
+ /** @type {import('svelte').SvelteComponent} */
+ let instance;
+
createRenderContext($$props);
+ // events are static and don't need to be reactive
+ const eventsFromArgTypes = Object.fromEntries(
+ Object.entries(storyContext.argTypes)
+ .filter(([k, v]) => v.action && args[k] != null)
+ .map(([k, v]) => [v.action, args[k]])
+ );
+
$: setStoryRenderContext(args, storyContext);
+
+
+ $: if (instance) {
+ Object.entries(eventsFromArgTypes).forEach(([event, handler]) => instance.$on(event, handler));
+ }
+
-
+
diff --git a/src/components/context.ts b/src/components/context.ts
index 75be314..97baac9 100644
--- a/src/components/context.ts
+++ b/src/components/context.ts
@@ -14,6 +14,9 @@ export function createRenderContext(props: any = {}) {
args: {},
...props,
});
+
+ // reset the component context
+ resetStoryRenderContext();
}
export function createRegistrationContext(repositories: any) {
@@ -36,12 +39,17 @@ export function useContext() {
}
return getContext(CONTEXT_KEY);
}
+
+function resetStoryRenderContext() {
+ setContext(CONTEXT_KEY_COMPONENT, { argsStore: writable({}), storyContextStore: writable({}) });
+}
+
export function getStoryRenderContext(): {
argsStore: Writable>;
storyContextStore: Writable>;
} {
if (!hasContext(CONTEXT_KEY_COMPONENT)) {
- setContext(CONTEXT_KEY_COMPONENT, { argsStore: writable({}), storyContextStore: writable({}) });
+ resetStoryRenderContext();
}
return getContext(CONTEXT_KEY_COMPONENT);
}
diff --git a/src/index.d.ts b/src/index.d.ts
index 141b790..9b21a94 100644
--- a/src/index.d.ts
+++ b/src/index.d.ts
@@ -44,6 +44,23 @@ interface TemplateProps extends BaseAnnotations {
id?: string;
}
+interface MetaProps extends BaseMeta, BaseAnnotations {
+ /**
+ * Enable the tag 'autodocs'.
+ *
+ * @see [Automatic documentation](https://storybook.js.org/docs/svelte/writing-docs/autodocs)
+ */
+ autodocs?: boolean;
+ /**
+ * List of tags to add to the stories.
+ *
+ * It should be a static array of strings.
+ *
+ * @example tags={['autodocs']}
+ */
+ tags?: string[];
+}
+
interface Slots {
default: {
args: any;
@@ -53,8 +70,10 @@ interface Slots {
}
/**
* Meta.
+ *
+ * @deprecated Use `export const meta`. See https://github.com/storybookjs/addon-svelte-csf for an example
*/
-export class Meta extends SvelteComponent & BaseAnnotations> { }
+export class Meta extends SvelteComponent { }
/**
* Story.
*/
diff --git a/src/parser/collect-stories.ts b/src/parser/collect-stories.ts
index 9461d8c..cc3082d 100644
--- a/src/parser/collect-stories.ts
+++ b/src/parser/collect-stories.ts
@@ -5,6 +5,8 @@ import RenderContext from '../components/RenderContext.svelte';
import { combineParameters } from '@storybook/preview-api';
import { extractId } from './extract-id.js';
import { logger } from '@storybook/client-logger';
+import type { Meta, StoriesDef, Story } from './types.js';
+import type { SvelteComponent } from 'svelte';
/* Called from a webpack loader and a jest transformation.
*
@@ -17,25 +19,21 @@ import { logger } from '@storybook/client-logger';
* the one selected is disabled.
*/
-interface Story {
- id: string;
- name: string;
- template: string;
- component: any;
- isTemplate: boolean;
- source: boolean;
-}
-interface Meta {
- name: string;
- component: any;
-}
const createFragment = document.createDocumentFragment
? () => document.createDocumentFragment()
: () => document.createElement('div');
-export default (StoriesComponent, { stories = {}, allocatedIds = [] }) => {
+export default (
+ StoriesComponent: SvelteComponent,
+ {
+ stories = {},
+ meta: parsedMeta = {},
+ allocatedIds = [],
+ }: StoriesDef,
+ exportedMeta = undefined
+) => {
const repositories = {
meta: null as Meta | null,
stories: [] as Story[],
@@ -44,7 +42,7 @@ export default (StoriesComponent, { stories = {}, allocatedIds = [] }) => {
// extract all stories
try {
const context = new RegisterContext({
- target: createFragment() as Document | Element,
+ target: createFragment() as Element,
props: {
Stories: StoriesComponent,
repositories,
@@ -55,12 +53,23 @@ export default (StoriesComponent, { stories = {}, allocatedIds = [] }) => {
logger.error(`Error extracting stories ${e.toString()}`, e);
}
- const { meta } = repositories;
+ const meta = exportedMeta || repositories.meta;
if (!meta) {
- logger.error('Missing tag');
+ logger.error('Missing module meta export or tag');
return {};
}
+ // Inject description extracted from static analysis.
+ if (parsedMeta.description && !meta.parameters?.docs?.description?.component) {
+ meta.parameters = combineParameters(meta.parameters, {
+ docs: {
+ description: {
+ component: parsedMeta.description
+ }
+ }
+ });
+ }
+
const { component: globalComponent } = meta;
// collect templates id
@@ -131,7 +140,7 @@ export default (StoriesComponent, { stories = {}, allocatedIds = [] }) => {
});
}
- let snippet;
+ let snippet: string|null|undefined;
if (source === true || (source === false && !hasArgs)) {
snippet = rawSource;
@@ -145,9 +154,20 @@ export default (StoriesComponent, { stories = {}, allocatedIds = [] }) => {
});
}
+ const relStory = stories[storyId];
+ if (relStory?.description) {
+ storyFn.parameters = combineParameters(storyFn.parameters || {}, {
+ docs: {
+ description: {
+ story: relStory.description,
+ },
+ },
+ });
+ }
+
// eslint-disable-next-line no-param-reassign
all[storyId] = storyFn;
return all;
- }, {}) as { [key: string]: { storyName: string; parameters: string; } },
+ }, {}) as { [key: string]: { storyName: string; parameters: string } },
};
};
diff --git a/src/parser/extract-stories.test.ts b/src/parser/extract-stories.test.ts
index fb265a8..e4f9f89 100644
--- a/src/parser/extract-stories.test.ts
+++ b/src/parser/extract-stories.test.ts
@@ -26,7 +26,6 @@ describe('extractSource', () => {
"hasArgs": false,
"name": "MyStory",
"source": "a story
",
- "storyId": "mystory--my-story",
"template": false,
},
},
@@ -56,7 +55,6 @@ describe('extractSource', () => {
"hasArgs": false,
"name": "MyStory",
"source": "a story
",
- "storyId": "myid--my-id",
"template": false,
},
},
@@ -86,7 +84,6 @@ describe('extractSource', () => {
"hasArgs": true,
"name": "MyStory",
"source": "a story
",
- "storyId": "mystory--my-story",
"template": false,
},
},
@@ -116,7 +113,6 @@ describe('extractSource', () => {
"hasArgs": false,
"name": "MyTemplate",
"source": "a template
",
- "storyId": "mytemplate--my-template",
"template": true,
},
},
@@ -146,7 +142,6 @@ describe('extractSource', () => {
"hasArgs": false,
"name": "default",
"source": "a template
",
- "storyId": "default--default",
"template": true,
},
},
@@ -179,14 +174,12 @@ describe('extractSource', () => {
"hasArgs": false,
"name": "Story1",
"source": "story 1
",
- "storyId": "story1--story-1",
"template": false,
},
"Story2": {
"hasArgs": false,
"name": "Story2",
"source": "story 2
",
- "storyId": "story2--story-2",
"template": false,
},
},
@@ -222,13 +215,183 @@ describe('extractSource', () => {
"hasArgs": false,
"name": "Story1",
"source": "story 1
",
- "storyId": "test--story-1",
"template": false,
},
},
}
`);
});
+ test('Add tags autodocs', () => {
+ expect(
+ extractStories(`
+
+
+
+
+
+ story 1
+
+ `)
+ ).toMatchInlineSnapshot(`
+ {
+ "allocatedIds": [
+ "default",
+ "Story",
+ "Meta",
+ ],
+ "meta": {
+ "id": undefined,
+ "tags": [
+ "autodocs",
+ ],
+ "title": "test",
+ },
+ "stories": {
+ "Story1": {
+ "hasArgs": false,
+ "name": "Story1",
+ "source": "story 1
",
+ "template": false,
+ },
+ },
+ }
+ `);
+ });
+ test('Add tags', () => {
+ expect(
+ extractStories(`
+
+
+
+
+
+ story 1
+
+ `)
+ ).toMatchInlineSnapshot(`
+ {
+ "allocatedIds": [
+ "default",
+ "Story",
+ "Meta",
+ ],
+ "meta": {
+ "id": undefined,
+ "tags": [
+ "a",
+ "b",
+ ],
+ "title": "test",
+ },
+ "stories": {
+ "Story1": {
+ "hasArgs": false,
+ "name": "Story1",
+ "source": "story 1
",
+ "template": false,
+ },
+ },
+ }
+ `);
+ });
+ test('Add Only one tag', () => {
+ expect(
+ extractStories(`
+
+
+
+
+
+ story 1
+
+ `)
+ ).toMatchInlineSnapshot(`
+ {
+ "allocatedIds": [
+ "default",
+ "Story",
+ "Meta",
+ ],
+ "meta": {
+ "id": undefined,
+ "tags": [
+ "a",
+ ],
+ "title": "test",
+ },
+ "stories": {
+ "Story1": {
+ "hasArgs": false,
+ "name": "Story1",
+ "source": "story 1
",
+ "template": false,
+ },
+ },
+ }
+ `);
+ });
+ test('Meta as exported module object', () => {
+ expect(
+ extractStories(`
+
+ `)
+ ).toMatchInlineSnapshot(`
+ {
+ "allocatedIds": [
+ "default",
+ ],
+ "meta": {
+ "id": undefined,
+ "tags": [
+ "a",
+ ],
+ "title": "MyStory",
+ },
+ "stories": {},
+ }
+ `);
+ });
+ test('Meta Description', () => {
+ expect(
+ extractStories(`
+
+ `)
+ ).toMatchInlineSnapshot(`
+ {
+ "allocatedIds": [
+ "default",
+ ],
+ "meta": {
+ "description": "A description of meta",
+ "id": undefined,
+ "tags": [
+ "a",
+ ],
+ "title": "MyStory",
+ },
+ "stories": {},
+ }
+ `);
+ });
test('Duplicate Id', () => {
expect(
extractStories(`
@@ -254,11 +417,178 @@ describe('extractSource', () => {
"hasArgs": false,
"name": "Button",
"source": "a story
",
- "storyId": "button77471352--button-77471352",
"template": false,
},
},
}
`);
});
+ test('Meta tag description', () => {
+ expect(
+ extractStories(`
+
+
+
+
+ `)
+ ).toMatchInlineSnapshot(`
+ {
+ "allocatedIds": [
+ "default",
+ "Story",
+ "Button",
+ ],
+ "meta": {
+ "description": "Meta Description",
+ "id": undefined,
+ "title": "a title",
+ },
+ "stories": {},
+ }
+ `);
+ });
+ test('With description', () => {
+ expect(
+ extractStories(`
+
+
+
+
+
+ a story
+
+ `)
+ ).toMatchInlineSnapshot(`
+ {
+ "allocatedIds": [
+ "default",
+ "Story",
+ "Button",
+ ],
+ "meta": {},
+ "stories": {
+ "Desc": {
+ "description": "Story Description",
+ "hasArgs": false,
+ "name": "Desc",
+ "source": "a story
",
+ "template": false,
+ },
+ },
+ }
+ `);
+ });
+ test('With multiline description', () => {
+ expect(
+ extractStories(`
+
+
+
+
+
+ a story
+
+ `)
+ ).toMatchInlineSnapshot(`
+ {
+ "allocatedIds": [
+ "default",
+ "Story",
+ "Button",
+ ],
+ "meta": {},
+ "stories": {
+ "Desc": {
+ "description": "Story Description
+
+ another line.",
+ "hasArgs": false,
+ "name": "Desc",
+ "source": "a story
",
+ "template": false,
+ },
+ },
+ }
+ `);
+ });
+ test('With unrelated nested description', () => {
+ expect(
+ extractStories(`
+
+
+
+
+
+
+ a story
+
+ `)
+ ).toMatchInlineSnapshot(`
+ {
+ "allocatedIds": [
+ "default",
+ "Story",
+ "Button",
+ ],
+ "meta": {},
+ "stories": {
+ "Desc": {
+ "hasArgs": false,
+ "name": "Desc",
+ "source": "a story
",
+ "template": false,
+ },
+ },
+ }
+ `);
+ });
+ test('With unrelated description', () => {
+ expect(
+ extractStories(`
+
+
+
+
+
+ a story
+
+ `)
+ ).toMatchInlineSnapshot(`
+ {
+ "allocatedIds": [
+ "default",
+ "Story",
+ "Button",
+ ],
+ "meta": {},
+ "stories": {
+ "Desc": {
+ "hasArgs": false,
+ "name": "Desc",
+ "source": "a story
",
+ "template": false,
+ },
+ },
+ }
+ `);
+ });
});
diff --git a/src/parser/extract-stories.ts b/src/parser/extract-stories.ts
index 9f7c57f..8b13be1 100644
--- a/src/parser/extract-stories.ts
+++ b/src/parser/extract-stories.ts
@@ -1,42 +1,30 @@
import * as svelte from 'svelte/compiler';
import type { Node } from 'estree';
-import { storyNameFromExport, toId } from '@storybook/csf';
-
import dedent from 'dedent';
import { extractId } from './extract-id.js';
+import type { MetaDef, StoriesDef, StoryDef } from './types.js';
-interface StoryDef {
- storyId: string;
- name: string;
- template: boolean;
- source: string;
- hasArgs: boolean;
-}
-
-interface MetaDef {
- title?: string;
- id?: string;
-}
-
-interface StoriesDef {
- meta: MetaDef;
- stories: Record;
- allocatedIds: string[];
+function lookupAttribute(name: string, attributes: any[]) {
+ return attributes.find((att: any) =>
+ (att.type === 'Attribute' && att.name === name) ||
+ (att.type === 'Property' && att.key.name === name));
}
function getStaticAttribute(name: string, node: any): string | undefined {
// extract the attribute
- const attribute = node.attributes.find(
- (att: any) => att.type === 'Attribute' && att.name === name
- );
+ const attribute = lookupAttribute(name, node);
if (!attribute) {
return undefined;
}
const { value } = attribute;
- // expect the attribute to be static, ie only one Text node
+ // expect the attribute to be static, ie only one Text node or Literal
+ if (value?.type === 'Literal') {
+ return value.value;
+ }
+
if (value && value.length === 1 && value[0].type === 'Text') {
return value[0].data;
}
@@ -44,6 +32,72 @@ function getStaticAttribute(name: string, node: any): string | undefined {
throw new Error(`Attribute ${name} is not static`);
}
+function getStaticBooleanAttribute(name: string, attributes: any[]): boolean | undefined {
+ // extract the attribute
+ const attribute = lookupAttribute(name, attributes);
+
+
+ if (!attribute) {
+ return undefined;
+ }
+
+ const { value } = attribute;
+
+ // expect the attribute to be static and a boolean
+ if (typeof value === 'boolean') {
+ return value;
+ }
+
+ throw new Error(`Attribute ${name} is not a static boolean`);
+}
+
+function getMetaTags(attributes: any[]): string[] {
+
+ const finalTags = getStaticBooleanAttribute('autodocs', attributes) ? ["autodocs"] : [];
+
+ const tags = lookupAttribute('tags', attributes);
+
+ if (tags) {
+ let valid = false;
+
+ let { value } = tags;
+ if (value && value.length === 1) {
+ value = value[0];
+ }
+
+ const { type, expression, data } = value;
+ if (type === 'Text') {
+ // tags="autodocs"
+ finalTags.push(data);
+ valid = true;
+ } else if (type === 'ArrayExpression') {
+ // tags={["autodocs"]} in object
+ const { elements } = value;
+ elements.forEach((e : any) => finalTags.push(e.value));
+ valid = true;
+ } else if (type === 'MustacheTag' && expression.type === 'ArrayExpression') {
+ // tags={["autodocs"]} in template
+ const { elements } = expression;
+ elements.forEach((e : any) => finalTags.push(e.value));
+ valid = true;
+ }
+
+ if (!valid) {
+ throw new Error('Attribute tags should be a static string array or a string');
+ }
+ }
+
+ return finalTags;
+}
+
+function fillMetaFromAttributes(meta: MetaDef, attributes: any[]) {
+ meta.title = getStaticAttribute('title', attributes);
+ meta.id = getStaticAttribute('id', attributes);
+ const tags = getMetaTags(attributes);
+ if (tags.length > 0) {
+ meta.tags = tags;
+ }
+}
/**
* Parse a Svelte component and extract stories.
* @param component Component Source
@@ -93,6 +147,34 @@ export function extractStories(component: string): StoriesDef {
const stories: Record = {};
const meta: MetaDef = {};
+ if (ast.module) {
+ svelte.walk(ast.module.content, {
+ enter(node: any) {
+ if (node.type === 'ExportNamedDeclaration' &&
+ node.declaration?.type === 'VariableDeclaration' &&
+ node.declaration?.declarations.length === 1 &&
+ node.declaration?.declarations[0]?.id?.name === 'meta') {
+
+ if (node.declaration?.kind !== 'const') {
+ throw new Error('meta should be exported as const');
+ }
+
+ const init = node.declaration?.declarations[0]?.init;
+ if (init?.type !== 'ObjectExpression') {
+ throw new Error('meta should export on object');
+ }
+
+ fillMetaFromAttributes(meta, init.properties);
+ if (node.leadingComments?.length > 0) {
+ // throws dedent expression is not callable.
+ // @ts-ignore
+ meta.description = dedent(node.leadingComments[0].value.replaceAll(/^ *\*/mg, ""));
+ }
+ }
+ }
+ });
+ }
+ let latestComment: string|undefined;
svelte.walk(ast.html, {
enter(node: any) {
if (
@@ -104,7 +186,7 @@ export function extractStories(component: string): StoriesDef {
const isTemplate = node.name === 'Template';
// extract the 'name' attribute
- let name = getStaticAttribute('name', node);
+ let name = getStaticAttribute('name', node.attributes);
// templates has a default name
if (!name && isTemplate) {
@@ -113,7 +195,7 @@ export function extractStories(component: string): StoriesDef {
const id = extractId(
{
- id: getStaticAttribute('id', node),
+ id: getStaticAttribute('id', node.attributes),
name,
},
isTemplate ? undefined : allocatedIds
@@ -130,23 +212,41 @@ export function extractStories(component: string): StoriesDef {
// @ts-ignore
source = dedent`${component.substr(start, end - start)}`;
}
- stories[isTemplate ? `tpl:${id}` : id] = {
- storyId: toId(meta.id || meta.title || id, storyNameFromExport(id)),
+ const story = {
name,
template: isTemplate,
source,
hasArgs: node.attributes.find((att: any) => att.type === 'Let') != null,
};
+ if (!isTemplate && latestComment) {
+ // throws dedent expression is not callable.
+ // @ts-ignore
+ story.description = dedent`${latestComment}`;
+ }
+ stories[isTemplate ? `tpl:${id}` : id] = story;
+ latestComment = undefined;
}
} else if (node.type === 'InlineComponent' && node.name === localNames.Meta) {
this.skip();
- meta.title = getStaticAttribute('title', node);
- meta.id = getStaticAttribute('id', node);
+ fillMetaFromAttributes(meta, node.attributes);
+ if (latestComment) {
+ meta.description = latestComment;
+ }
+ latestComment = undefined;
+ } else if (node.type === 'Comment') {
+ this.skip();
+
+ latestComment = node.data?.trim();
+ return;
}
},
+ leave(node: any) {
+ if (node.type !== "Comment" && node.type !== "Text") {
+ latestComment = undefined;
+ }
+ }
});
-
return {
meta,
stories,
diff --git a/src/parser/svelte-stories-loader.ts b/src/parser/svelte-stories-loader.ts
index 08eb511..41ac4c0 100644
--- a/src/parser/svelte-stories-loader.ts
+++ b/src/parser/svelte-stories-loader.ts
@@ -1,10 +1,9 @@
-import dedent from 'dedent';
import { extractStories } from './extract-stories.js';
import { fileURLToPath } from 'url';
import { readFileSync } from 'fs';
const parser = fileURLToPath(new URL('./collect-stories.js', import.meta.url))
- .replace(/\\/g, "\\\\"); // For Windows paths;
+ .replace(/\\/g, '/'); // For Windows paths;
// From https://github.com/sveltejs/svelte/blob/8db3e8d0297e052556f0b6dde310ef6e197b8d18/src/compiler/compile/utils/get_name_from_filename.ts
// Copied because it is not exported from the compiler
@@ -55,13 +54,12 @@ function transformSvelteStories(code: string) {
.map(([id]) => `export const ${id} = __storiesMetaData.stories[${JSON.stringify(id)}]`)
.join('\n');
- const codeWithoutDefaultExport = code.replace('export default ', '//export default');
-
- // throws dedent expression is not callable.
- // @ts-ignore
- return dedent`${codeWithoutDefaultExport}
+ const metaExported = code.includes('export { meta }');
+ const codeWithoutDefaultExport = code.replace('export default ', '//export default').replace('export { meta };', '// export { meta };');
+
+ return `${codeWithoutDefaultExport}
const { default: parser } = require('${parser}');
- const __storiesMetaData = parser(${componentName}, ${JSON.stringify(storiesDef)});
+ const __storiesMetaData = parser(${componentName}, ${JSON.stringify(storiesDef)}${metaExported ? ', meta' : ''});
export default __storiesMetaData.meta;
${storyDef};
` as string;
diff --git a/src/parser/types.d.ts b/src/parser/types.d.ts
new file mode 100644
index 0000000..fb5c881
--- /dev/null
+++ b/src/parser/types.d.ts
@@ -0,0 +1,53 @@
+/**
+ * Story extracted from static analysis.
+ */
+export interface StoryDef {
+ name: string;
+ template: boolean;
+ source: string;
+ description?: string;
+ hasArgs: boolean;
+}
+
+/**
+ * Meta extracted from static analysis.
+ */
+export interface MetaDef {
+ title?: string;
+ id?: string;
+ tags?: string[];
+ description?: string;
+}
+
+/**
+ * Informations extracted from static analysis.
+ */
+export interface StoriesDef {
+ meta: MetaDef;
+ stories: Record;
+ /**
+ * All allocated ids in the svelte script section.
+ */
+ allocatedIds: string[];
+}
+
+/**
+ * Story extracted from executing the Stories component.
+ */
+export interface Story {
+ id: string;
+ name: string;
+ template: string;
+ component: any;
+ isTemplate: boolean;
+ source: boolean;
+}
+
+/**
+ * Meta extracted from executing the Stories component.
+ */
+export interface Meta {
+ name: string;
+ component: any;
+ parameters: any;
+}
diff --git a/src/plugins/vite-svelte-csf.ts b/src/plugins/vite-svelte-csf.ts
index 968a17f..182d264 100644
--- a/src/plugins/vite-svelte-csf.ts
+++ b/src/plugins/vite-svelte-csf.ts
@@ -42,10 +42,12 @@ export default function csfPlugin(svelteOptions) {
.filter(([, def]) => !def.template)
.map(([storyId]) => storyId);
+ const metaExported = code.includes('export { meta }');
+ s.replace('export { meta };', '// export { meta };');
const output = [
'',
`import parser from '${parser}';`,
- `const __storiesMetaData = parser(${component}, ${JSON.stringify(all)});`,
+ `const __storiesMetaData = parser(${component}, ${JSON.stringify(all)}${metaExported ? ', meta' : ''});`,
'export default __storiesMetaData.meta;',
`export const __namedExportsOrder = ${JSON.stringify(namedExportsOrder)};`,
storyDef,
diff --git a/src/preset/index.ts b/src/preset/index.ts
index 8ba55d2..c3b988b 100644
--- a/src/preset/index.ts
+++ b/src/preset/index.ts
@@ -1,5 +1,5 @@
import { fileURLToPath } from 'url';
-import { svelteIndexer } from './indexer.js';
+import { svelteIndexer, createIndex } from './indexer.js';
export function managerEntries(entry = []) {
return [
@@ -56,12 +56,29 @@ export async function viteFinal(config, options) {
};
}
+/**
+ * Storybook < 7.4
+ */
export const storyIndexers = async (indexers) => {
return [
{
- test: /\.stories\.svelte$/,
+ test: /\.svelte$/,
indexer: svelteIndexer,
},
...(indexers || []),
];
};
+
+/**
+ * Storybook >= 7.4
+ */
+export const experimental_indexers = (indexers) => {
+
+ return [
+ {
+ test: /\.svelte$/,
+ createIndex,
+ },
+ ...(indexers || []),
+ ];
+}
\ No newline at end of file
diff --git a/src/preset/indexer.ts b/src/preset/indexer.ts
index 4dcdc4b..c8ad9fe 100644
--- a/src/preset/indexer.ts
+++ b/src/preset/indexer.ts
@@ -3,8 +3,10 @@ import * as svelte from 'svelte/compiler';
import { extractStories } from '../parser/extract-stories.js';
import fs from 'fs-extra';
import { loadSvelteConfig } from '../config-loader.js';
+import { storyNameFromExport, toId } from '@storybook/csf';
+import { IndexInput, IndexedCSFFile, IndexerOptions } from '@storybook/types';
-export async function svelteIndexer(fileName, { makeTitle }) {
+export async function readStories(fileName: string) {
let code = (await fs.readFile(fileName, 'utf-8')).toString();
const svelteOptions = await loadSvelteConfig();
@@ -12,15 +14,48 @@ export async function svelteIndexer(fileName, { makeTitle }) {
code = (await svelte.preprocess(code, svelteOptions.preprocess, { filename: fileName })).code;
}
- const defs = extractStories(code);
+ return extractStories(code);
+}
+
+/**
+ * Indexer for Storybook < 7.4
+ */
+export async function svelteIndexer(
+ fileName: string,
+ { makeTitle }: IndexerOptions
+): Promise {
+ const defs = await readStories(fileName);
+
+ const meta = { ...defs.meta, title: makeTitle(defs.meta.title) };
return {
- meta: { title: makeTitle(defs.meta.title) },
+ meta,
stories: Object.entries(defs.stories)
- .filter(([id, story]) => !story.template)
+ .filter(([, story]) => !story.template)
.map(([id, story]) => ({
- id: story.storyId,
+ id: toId(meta.id || meta.title || id, storyNameFromExport(id)),
name: story.name,
})),
};
}
+
+/**
+ * Indexer for Storybook >= 7.4
+ */
+export async function createIndex(
+ fileName: string,
+ { makeTitle }: IndexerOptions
+): Promise {
+ const defs = await readStories(fileName);
+
+ return Object.entries(defs.stories)
+ .filter(([, story]) => !story.template)
+ .map(([id, story]) => ({
+ type: 'story',
+ importPath: fileName,
+ exportName: id,
+ name: story.name,
+ title: makeTitle(defs.meta.title),
+ tags: defs.meta.tags,
+ }));
+}
diff --git a/stories/button.stories.svelte b/stories/button.stories.svelte
index bf204bd..7f529fa 100644
--- a/stories/button.stories.svelte
+++ b/stories/button.stories.svelte
@@ -9,10 +9,11 @@
}
-
+
+
-
+
You clicked: {count}
diff --git a/stories/metaexport.stories.svelte b/stories/metaexport.stories.svelte
new file mode 100644
index 0000000..4780ab8
--- /dev/null
+++ b/stories/metaexport.stories.svelte
@@ -0,0 +1,41 @@
+
+
+
+
+
+
+ You clicked: {count}
+
+
+
+
+
+
+
+
+
+
+
+
+ Label
+
\ No newline at end of file
diff --git a/stories/metaexport_override_descr.stories.svelte b/stories/metaexport_override_descr.stories.svelte
new file mode 100644
index 0000000..2ad110c
--- /dev/null
+++ b/stories/metaexport_override_descr.stories.svelte
@@ -0,0 +1,46 @@
+
+
+
+
+
+
+ You clicked: {count}
+
+
+
+
+
+
+
+
+
+
+
+
+ Label
+
\ No newline at end of file
diff --git a/stories/metaexport_without_descr.stories.svelte b/stories/metaexport_without_descr.stories.svelte
new file mode 100644
index 0000000..cc7567f
--- /dev/null
+++ b/stories/metaexport_without_descr.stories.svelte
@@ -0,0 +1,36 @@
+
+
+
+
+
+
+ You clicked: {count}
+
+
+
+
+
+
+
+
+
+
+
+
+ Label
+
\ No newline at end of file
diff --git a/tsconfig.json b/tsconfig.json
index 22e7d50..25930b8 100644
--- a/tsconfig.json
+++ b/tsconfig.json
@@ -7,7 +7,7 @@
"experimentalDecorators": true,
"incremental": false,
"isolatedModules": true,
- "lib": ["esnext"],
+ "lib": ["esnext", "dom"],
"module": "es2020",
"moduleResolution": "nodenext",
"noImplicitAny": false,
@@ -17,4 +17,4 @@
"strict": true
},
"include": ["src/**/*"]
-}
\ No newline at end of file
+}