diff --git a/.eslintrc.js b/.eslintrc.js
index 773a15da6..d724b75d9 100644
--- a/.eslintrc.js
+++ b/.eslintrc.js
@@ -1,3 +1,3 @@
module.exports = {
- extends: ['@verdaccio/eslint-config'],
+ extends: ['@verdaccio/eslint-config', 'plugin:storybook/recommended'],
};
diff --git a/packages/ui-components/.storybook/main.ts b/packages/ui-components/.storybook/main.ts
index fbbd8e1d3..a40ecb998 100644
--- a/packages/ui-components/.storybook/main.ts
+++ b/packages/ui-components/.storybook/main.ts
@@ -5,11 +5,9 @@ const config: StorybookConfig = {
stories: ['../src/**/*.stories.@(js|jsx|mjs|ts|tsx)'],
addons: [
- getAbsolutePath('@storybook/addon-actions'),
getAbsolutePath('@storybook/addon-links'),
- getAbsolutePath('@storybook/addon-essentials'),
- getAbsolutePath('@storybook/addon-interactions'),
getAbsolutePath('@storybook/addon-webpack5-compiler-babel'),
+ getAbsolutePath('@storybook/addon-docs'),
],
framework: {
diff --git a/packages/ui-components/.storybook/preview.tsx b/packages/ui-components/.storybook/preview.tsx
index 12aab0801..eed0bb531 100644
--- a/packages/ui-components/.storybook/preview.tsx
+++ b/packages/ui-components/.storybook/preview.tsx
@@ -1,4 +1,4 @@
-import type { Preview, StoryFn } from '@storybook/react';
+import type { Preview, StoryFn } from '@storybook/react-webpack5';
import { initialize, mswLoader } from 'msw-storybook-addon';
import React from 'react';
import { Provider } from 'react-redux';
diff --git a/packages/ui-components/package.json b/packages/ui-components/package.json
index 8c211a758..dba5146ee 100644
--- a/packages/ui-components/package.json
+++ b/packages/ui-components/package.json
@@ -8,7 +8,7 @@
"main": "./build/index.js",
"types": "build/index.d.ts",
"scripts": {
- "test": "cross-env TZ=UTC vitest run",
+ "test": "cross-env TZ=UTC vitest run -u",
"clean": "rimraf ./build",
"type-check": "tsc --noEmit -p tsconfig.build.json",
"build:types": "tsc --emitDeclarationOnly -p tsconfig.build.json",
@@ -23,8 +23,8 @@
"@emotion/react": "11.11.4",
"@emotion/styled": "11.11.5",
"@microlink/react-json-view": "1.26.2",
- "@mui/icons-material": "5.17.1",
- "@mui/material": "5.17.1",
+ "@mui/icons-material": "7.3.4",
+ "@mui/material": "7.3.4",
"@rematch/core": "2.2.0",
"@rematch/loading": "2.1.2",
"@verdaccio/ui-i18n": "workspace:*",
@@ -55,13 +55,9 @@
"devDependencies": {
"@babel/core": "7.28.4",
"@emotion/babel-plugin": "11.13.5",
- "@storybook/addon-actions": "8.6.14",
- "@storybook/addon-essentials": "8.6.14",
- "@storybook/addon-interactions": "8.6.14",
- "@storybook/addon-links": "8.6.14",
+ "@storybook/addon-links": "9.1.15",
"@storybook/addon-webpack5-compiler-babel": "3.0.6",
- "@storybook/react": "8.6.14",
- "@storybook/react-webpack5": "8.6.14",
+ "@storybook/react-webpack5": "9.1.15",
"@testing-library/dom": "10.4.1",
"@testing-library/jest-dom": "6.8.0",
"@testing-library/react": "16.3.0",
@@ -77,9 +73,11 @@
"msw": "2.11.3",
"msw-storybook-addon": "2.0.6",
"mutationobserver-shim": "0.3.7",
- "storybook": "8.6.14",
+ "storybook": "9.1.15",
"vitest": "3.2.4",
- "whatwg-fetch": "3.6.20"
+ "whatwg-fetch": "3.6.20",
+ "eslint-plugin-storybook": "9.1.15",
+ "@storybook/addon-docs": "9.1.15"
},
"msw": {
"workerDirectory": [
diff --git a/packages/ui-components/src/AppTest/App.stories.tsx b/packages/ui-components/src/AppTest/App.stories.tsx
index cda156010..c47a4d987 100644
--- a/packages/ui-components/src/AppTest/App.stories.tsx
+++ b/packages/ui-components/src/AppTest/App.stories.tsx
@@ -1,4 +1,4 @@
-import type { Meta, StoryObj } from '@storybook/react';
+import type { Meta, StoryObj } from '@storybook/react-webpack5';
import { HttpResponse, http } from 'msw';
import React from 'react';
import { MemoryRouter } from 'react-router';
diff --git a/packages/ui-components/src/components/ActionBar/ActionBar.stories.tsx b/packages/ui-components/src/components/ActionBar/ActionBar.stories.tsx
index f497d0426..b16b5d3fd 100644
--- a/packages/ui-components/src/components/ActionBar/ActionBar.stories.tsx
+++ b/packages/ui-components/src/components/ActionBar/ActionBar.stories.tsx
@@ -1,4 +1,4 @@
-import type { Meta, StoryObj } from '@storybook/react';
+import type { Meta, StoryObj } from '@storybook/react-webpack5';
import { clone, merge } from 'lodash';
import React from 'react';
diff --git a/packages/ui-components/src/components/Dependencies/Dependencies.stories.tsx b/packages/ui-components/src/components/Dependencies/Dependencies.stories.tsx
index 90ea58de2..1af2122bd 100644
--- a/packages/ui-components/src/components/Dependencies/Dependencies.stories.tsx
+++ b/packages/ui-components/src/components/Dependencies/Dependencies.stories.tsx
@@ -1,4 +1,4 @@
-import type { Meta, StoryObj } from '@storybook/react';
+import type { Meta, StoryObj } from '@storybook/react-webpack5';
import React from 'react';
import { default as Dependencies } from '.';
diff --git a/packages/ui-components/src/components/FundButton/FundButton.stories.tsx b/packages/ui-components/src/components/FundButton/FundButton.stories.tsx
index 402d6a958..414c9a886 100644
--- a/packages/ui-components/src/components/FundButton/FundButton.stories.tsx
+++ b/packages/ui-components/src/components/FundButton/FundButton.stories.tsx
@@ -1,6 +1,6 @@
import Box from '@mui/material/Box';
import Stack from '@mui/material/Stack';
-import type { Meta, StoryObj } from '@storybook/react';
+import type { Meta, StoryObj } from '@storybook/react-webpack5';
import React from 'react';
import { default as FundButton } from '.';
diff --git a/packages/ui-components/src/components/Install/Install.stories.tsx b/packages/ui-components/src/components/Install/Install.stories.tsx
index 940993f85..a34246276 100644
--- a/packages/ui-components/src/components/Install/Install.stories.tsx
+++ b/packages/ui-components/src/components/Install/Install.stories.tsx
@@ -1,5 +1,5 @@
/* eslint-disable react-hooks/rules-of-hooks */
-import type { Meta, StoryObj } from '@storybook/react';
+import type { Meta, StoryObj } from '@storybook/react-webpack5';
import React from 'react';
import { default as Install } from '.';
diff --git a/packages/ui-components/src/components/LoginDialog/LoginDialog.stories.tsx b/packages/ui-components/src/components/LoginDialog/LoginDialog.stories.tsx
index 01e7e0d83..eb7dd5800 100644
--- a/packages/ui-components/src/components/LoginDialog/LoginDialog.stories.tsx
+++ b/packages/ui-components/src/components/LoginDialog/LoginDialog.stories.tsx
@@ -1,6 +1,6 @@
/* eslint-disable verdaccio/jsx-spread */
-import { action } from '@storybook/addon-actions';
import React from 'react';
+import { action } from 'storybook/actions';
import LoginDialog from './LoginDialog';
diff --git a/packages/ui-components/src/components/NoItems/__snapshots__/Noitems.test.tsx.snap b/packages/ui-components/src/components/NoItems/__snapshots__/Noitems.test.tsx.snap
index 4d2607dfb..0bbed32b7 100644
--- a/packages/ui-components/src/components/NoItems/__snapshots__/Noitems.test.tsx.snap
+++ b/packages/ui-components/src/components/NoItems/__snapshots__/Noitems.test.tsx.snap
@@ -4,6 +4,7 @@ exports[` component > should load the component in default state 1`] =
component > should load the component in default state 1`
/>