Add tsconfig.cy.json that extends the main tsconfig but removes the
rootDir restriction and adds Cypress types. Point ts-loader in
webpack.cy.config.ts to this dedicated tsconfig, fixing:
- TS6059: cypress/support files outside rootDir src/components
- TS2307: missing @storybook/react-webpack5 type declarations
- TS2339: toBeInTheDocument not found (jest-dom types scope)
Cypress only needs transpilation, not full type-checking. This removes
TS2307 (@storybook/react-webpack5 types) and TS2339 (toBeInTheDocument)
errors from the Cypress webpack build output.
- Bump all dependencies to latest (React 19.2.7, Storybook 10.4.3, Webpack
5.107.2 + webpack-cli 7, Jest 30.4.2, Cypress 15.17.0, Babel 7.29.7,
sass-loader 17, css-minimizer-webpack-plugin 8, eslint-webpack-plugin 6).
- Migrate TypeScript 5.9 -> 6.0.3: set tsconfig rootDir, add
ignoreDeprecations "6.0", scope include to src/components + src/@types, and
declare *.scss/*.sass/*.css modules for stricter side-effect imports.
- Switch @babel/preset-react to the automatic JSX runtime and drop redundant
React imports in stories and tests.
- Migrate ESLint from the deprecated .eslintrc.js to flat config
(eslint.config.mjs) using typescript-eslint, @eslint/js, globals and the
React/Storybook plugins. Keep ESLint at v9 because eslint-plugin-react does
not support v10 yet. This fixes the previously broken lint (missing
@typescript-eslint parser/plugin) and normalizes formatting.
- Fix a latent bug in .storybook/main.js (comma instead of semicolon joining
two assignments via the comma operator).
- npm audit fix: 0 vulnerabilities.
- Bump package version to 1.4.0.