diff --git a/.storybook/components/ArgTypesWithNote.tsx b/.storybook/components/ArgTypesWithNote.tsx index 8cd3ff27716..097d7eb6aa8 100644 --- a/.storybook/components/ArgTypesWithNote.tsx +++ b/.storybook/components/ArgTypesWithNote.tsx @@ -1,9 +1,9 @@ -import { DomRefTable } from '@sb/components/DomRefTable.js'; import { ArgTypes, type Controls } from '@storybook/addon-docs/blocks'; import MessageStripDesign from '@ui5/webcomponents/dist/types/MessageStripDesign.js'; import { MessageStrip } from '@ui5/webcomponents-react'; import type { ComponentProps, ReactNode } from 'react'; import classes from './ArgTypesWithNote.module.css'; +import { DomRefTable } from '@sb/components/DomRefTable.js'; interface ArgTypesWithNotePropTypes { hideHTMLPropsNote?: boolean; diff --git a/.storybook/components/DocsHeader.tsx b/.storybook/components/DocsHeader.tsx index b865514aabe..27e41920c49 100644 --- a/.storybook/components/DocsHeader.tsx +++ b/.storybook/components/DocsHeader.tsx @@ -1,4 +1,3 @@ -import { Badge } from '@sb/components/Badge'; import type { Controls } from '@storybook/addon-docs/blocks'; import { Description, Subtitle, Title, useOf } from '@storybook/addon-docs/blocks'; import ButtonDesign from '@ui5/webcomponents/dist/types/ButtonDesign.js'; @@ -22,6 +21,7 @@ import classes from './DocsHeader.module.css'; import { GitHubLogo } from './GitHub-Mark'; import { Import } from './Import'; import { TableOfContent } from './TableOfContent'; +import { Badge } from '@sb/components/Badge'; const Links = ({ isChart }: { isChart?: boolean }) => { const githubUrl = `https://github.com/UI5/webcomponents-react`; diff --git a/.storybook/components/ProjectTemplate.tsx b/.storybook/components/ProjectTemplate.tsx index 6a488f06a64..4341327c1b2 100644 --- a/.storybook/components/ProjectTemplate.tsx +++ b/.storybook/components/ProjectTemplate.tsx @@ -1,4 +1,3 @@ -import TsLogo from '@sb/images/logo-ts.png'; import LinkDesign from '@ui5/webcomponents/dist/types/LinkDesign.js'; import MessageStripDesign from '@ui5/webcomponents/dist/types/MessageStripDesign.js'; import { @@ -17,6 +16,7 @@ import { clsx } from 'clsx'; import type { ReactNode } from 'react'; import { useId, useState } from 'react'; import classes from './ProjectTemplate.module.css'; +import TsLogo from '@sb/images/logo-ts.png'; interface ProjectTemplatePropTypes { title: string; diff --git a/CHANGELOG.md b/CHANGELOG.md index 8cd34bb141e..84509e43dd9 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,36 +5,32 @@ See [Conventional Commits](https://conventionalcommits.org) for commit guideline ## [2.23.2](https://github.com/UI5/webcomponents-react/compare/v2.23.1...v2.23.2) (2026-06-29) - ### Bug Fixes -* **charts:** round x-axis bbox height to avoid subpixel re-render loop ([#8741](https://github.com/UI5/webcomponents-react/issues/8741)) ([c7c9393](https://github.com/UI5/webcomponents-react/commit/c7c9393b72efa507b1c11c3eb643b2fd10cb1721)) -* **deps:** update tanstack-virtual monorepo to v3.14.3 ([#8709](https://github.com/UI5/webcomponents-react/issues/8709)) ([066fe70](https://github.com/UI5/webcomponents-react/commit/066fe7077fd4a897489b80977e7ad2a073e9ff03)) -* **renovate:** resolve invalid matchPackageNames and clean up rules ([#8691](https://github.com/UI5/webcomponents-react/issues/8691)) ([499b651](https://github.com/UI5/webcomponents-react/commit/499b6518c0f72cd07b6cd9570374ef1307b0bdc5)) +- **charts:** round x-axis bbox height to avoid subpixel re-render loop ([#8741](https://github.com/UI5/webcomponents-react/issues/8741)) ([c7c9393](https://github.com/UI5/webcomponents-react/commit/c7c9393b72efa507b1c11c3eb643b2fd10cb1721)) +- **deps:** update tanstack-virtual monorepo to v3.14.3 ([#8709](https://github.com/UI5/webcomponents-react/issues/8709)) ([066fe70](https://github.com/UI5/webcomponents-react/commit/066fe7077fd4a897489b80977e7ad2a073e9ff03)) +- **renovate:** resolve invalid matchPackageNames and clean up rules ([#8691](https://github.com/UI5/webcomponents-react/issues/8691)) ([499b651](https://github.com/UI5/webcomponents-react/commit/499b6518c0f72cd07b6cd9570374ef1307b0bdc5)) ## [2.23.1](https://github.com/UI5/webcomponents-react/compare/v2.23.0...v2.23.1) (2026-06-12) - ### Bug Fixes -* **AnalyticalTable:** prevent stale `scrollOffset` after filtering ([#8685](https://github.com/UI5/webcomponents-react/issues/8685)) ([4c8e33d](https://github.com/UI5/webcomponents-react/commit/4c8e33daa3e2d07e8c87c08cf6a9ddf08d900bf3)) +- **AnalyticalTable:** prevent stale `scrollOffset` after filtering ([#8685](https://github.com/UI5/webcomponents-react/issues/8685)) ([4c8e33d](https://github.com/UI5/webcomponents-react/commit/4c8e33daa3e2d07e8c87c08cf6a9ddf08d900bf3)) ## [2.23.0](https://github.com/UI5/webcomponents-react/compare/v2.22.2...v2.23.0) (2026-06-08) - ### Features -* **AnalyticalTable - TypeScript:** export `ReactTableHooks` type ([#8656](https://github.com/UI5/webcomponents-react/issues/8656)) ([16fce8c](https://github.com/UI5/webcomponents-react/commit/16fce8c5b7289168b9b088b265a6eac3962a654e)) -* **AnalyticalTable:** add `accessibleName` & `accessibleNameRef` props ([#8592](https://github.com/UI5/webcomponents-react/issues/8592)) ([2fe532c](https://github.com/UI5/webcomponents-react/commit/2fe532c3af9747385128d0ca52d26a406f8bb3d8)), closes [#8590](https://github.com/UI5/webcomponents-react/issues/8590) -* **SelectDialog:** add `searchPlaceholder` prop ([#8644](https://github.com/UI5/webcomponents-react/issues/8644)) ([3435925](https://github.com/UI5/webcomponents-react/commit/34359259ba124676b7cc4d9fb0e093c509ea5012)), closes [#8637](https://github.com/UI5/webcomponents-react/issues/8637) -* update to UI5 Web Components 2.23.0 ([#8676](https://github.com/UI5/webcomponents-react/issues/8676)) ([0dc8e8a](https://github.com/UI5/webcomponents-react/commit/0dc8e8a63d66dc7ad540930cf00025f09e9665f6)) - +- **AnalyticalTable - TypeScript:** export `ReactTableHooks` type ([#8656](https://github.com/UI5/webcomponents-react/issues/8656)) ([16fce8c](https://github.com/UI5/webcomponents-react/commit/16fce8c5b7289168b9b088b265a6eac3962a654e)) +- **AnalyticalTable:** add `accessibleName` & `accessibleNameRef` props ([#8592](https://github.com/UI5/webcomponents-react/issues/8592)) ([2fe532c](https://github.com/UI5/webcomponents-react/commit/2fe532c3af9747385128d0ca52d26a406f8bb3d8)), closes [#8590](https://github.com/UI5/webcomponents-react/issues/8590) +- **SelectDialog:** add `searchPlaceholder` prop ([#8644](https://github.com/UI5/webcomponents-react/issues/8644)) ([3435925](https://github.com/UI5/webcomponents-react/commit/34359259ba124676b7cc4d9fb0e093c509ea5012)), closes [#8637](https://github.com/UI5/webcomponents-react/issues/8637) +- update to UI5 Web Components 2.23.0 ([#8676](https://github.com/UI5/webcomponents-react/issues/8676)) ([0dc8e8a](https://github.com/UI5/webcomponents-react/commit/0dc8e8a63d66dc7ad540930cf00025f09e9665f6)) ### Bug Fixes -* **deps:** update dependency @tanstack/react-virtual to v3.13.26 ([#8648](https://github.com/UI5/webcomponents-react/issues/8648)) ([b2cdfa0](https://github.com/UI5/webcomponents-react/commit/b2cdfa02b565d084402bc19fbb4ac25b92c8805f)) -* **deps:** update react monorepo to v19.2.7 ([#8667](https://github.com/UI5/webcomponents-react/issues/8667)) ([ca7dc87](https://github.com/UI5/webcomponents-react/commit/ca7dc874f339c407e72d03d93ebb56126ea16c8a)) -* **deps:** update tanstack-virtual monorepo to v3.14.2 ([#8666](https://github.com/UI5/webcomponents-react/issues/8666)) ([6c17d65](https://github.com/UI5/webcomponents-react/commit/6c17d6526236f84dba51ea11575636299490f235)) +- **deps:** update dependency @tanstack/react-virtual to v3.13.26 ([#8648](https://github.com/UI5/webcomponents-react/issues/8648)) ([b2cdfa0](https://github.com/UI5/webcomponents-react/commit/b2cdfa02b565d084402bc19fbb4ac25b92c8805f)) +- **deps:** update react monorepo to v19.2.7 ([#8667](https://github.com/UI5/webcomponents-react/issues/8667)) ([ca7dc87](https://github.com/UI5/webcomponents-react/commit/ca7dc874f339c407e72d03d93ebb56126ea16c8a)) +- **deps:** update tanstack-virtual monorepo to v3.14.2 ([#8666](https://github.com/UI5/webcomponents-react/issues/8666)) ([6c17d65](https://github.com/UI5/webcomponents-react/commit/6c17d6526236f84dba51ea11575636299490f235)) ## [2.22.2](https://github.com/UI5/webcomponents-react/compare/v2.22.1...v2.22.2) (2026-05-28) diff --git a/eslint.config.mjs b/eslint.config.mjs index 7eeb1df9c10..7c056b53a89 100644 --- a/eslint.config.mjs +++ b/eslint.config.mjs @@ -12,20 +12,16 @@ import tseslint from 'typescript-eslint'; const ignorePatterns = { ignores: [ - 'packages/ai/dist', - 'packages/base/dist', + '**/dist', + '**/generated', 'packages/base/types', - 'packages/charts/dist', - 'packages/cli/dist', - 'packages/compat/dist', - 'packages/main/dist', 'packages/main/wrappers', - 'packages/mcp-server/dist', - 'packages/mcp-server/scripts', + 'packages/main/ssr', + 'packages/main/index.d.ts', + 'packages/main/index.esm.js', 'packages/main/src/i18n/i18n-defaults.ts', - 'packages/main/src/generated', - 'packages/cypress-commands/dist', - '**/generated', + 'packages/mcp-server/docs', + 'packages/mcp-server/scripts', '**/*.module.css.ts', '.yarn', '.out/**', diff --git a/examples/nextjs-app/package-lock.json b/examples/nextjs-app/package-lock.json index fde87b4a2cf..3646cfc7a19 100644 --- a/examples/nextjs-app/package-lock.json +++ b/examples/nextjs-app/package-lock.json @@ -20,7 +20,7 @@ "next": "16.2.9", "react": "19.2.7", "react-dom": "19.2.7", - "typescript": "5.9.3" + "typescript": "6.0.3" } }, "node_modules/@babel/code-frame": { @@ -5798,9 +5798,9 @@ } }, "node_modules/typescript": { - "version": "5.9.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz", - "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-6.0.3.tgz", + "integrity": "sha512-y2TvuxSZPDyQakkFRPZHKFm+KKVqIisdg9/CZwm9ftvKXLP8NRWj38/ODjNbr43SsoXqNuAisEf1GdCxqWcdBw==", "license": "Apache-2.0", "bin": { "tsc": "bin/tsc", diff --git a/examples/nextjs-app/package.json b/examples/nextjs-app/package.json index 4bc5a38cc35..1d1fdeeee1e 100644 --- a/examples/nextjs-app/package.json +++ b/examples/nextjs-app/package.json @@ -21,6 +21,6 @@ "next": "16.2.9", "react": "19.2.7", "react-dom": "19.2.7", - "typescript": "5.9.3" + "typescript": "6.0.3" } } diff --git a/examples/nextjs-app/tsconfig.json b/examples/nextjs-app/tsconfig.json index b9e4e581502..24b6a9e248d 100644 --- a/examples/nextjs-app/tsconfig.json +++ b/examples/nextjs-app/tsconfig.json @@ -1,6 +1,6 @@ { "compilerOptions": { - "target": "es5", + "target": "ES2022", "lib": ["dom", "dom.iterable", "esnext"], "allowJs": true, "skipLibCheck": true, @@ -9,10 +9,10 @@ "noEmit": true, "esModuleInterop": true, "module": "esnext", - "moduleResolution": "node", + "moduleResolution": "bundler", "resolveJsonModule": true, "isolatedModules": true, - "jsx": "react-jsx", + "jsx": "preserve", "incremental": true, "plugins": [ { diff --git a/examples/nextjs-pages/package-lock.json b/examples/nextjs-pages/package-lock.json index 749b9e0328f..04dda46d875 100644 --- a/examples/nextjs-pages/package-lock.json +++ b/examples/nextjs-pages/package-lock.json @@ -20,7 +20,7 @@ "next": "16.2.9", "react": "19.2.7", "react-dom": "19.2.7", - "typescript": "5.9.3" + "typescript": "6.0.3" }, "devDependencies": {} }, @@ -5799,9 +5799,9 @@ } }, "node_modules/typescript": { - "version": "5.9.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz", - "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-6.0.3.tgz", + "integrity": "sha512-y2TvuxSZPDyQakkFRPZHKFm+KKVqIisdg9/CZwm9ftvKXLP8NRWj38/ODjNbr43SsoXqNuAisEf1GdCxqWcdBw==", "license": "Apache-2.0", "bin": { "tsc": "bin/tsc", diff --git a/examples/nextjs-pages/package.json b/examples/nextjs-pages/package.json index 3247bf0708d..70711dd0aa6 100644 --- a/examples/nextjs-pages/package.json +++ b/examples/nextjs-pages/package.json @@ -21,7 +21,7 @@ "next": "16.2.9", "react": "19.2.7", "react-dom": "19.2.7", - "typescript": "5.9.3" + "typescript": "6.0.3" }, "devDependencies": {} } diff --git a/examples/nextjs-pages/tsconfig.json b/examples/nextjs-pages/tsconfig.json index 61c19abd68d..b220caea591 100644 --- a/examples/nextjs-pages/tsconfig.json +++ b/examples/nextjs-pages/tsconfig.json @@ -1,6 +1,6 @@ { "compilerOptions": { - "target": "es5", + "target": "ES2022", "lib": ["dom", "dom.iterable", "esnext"], "allowJs": true, "skipLibCheck": true, @@ -9,7 +9,7 @@ "noEmit": true, "esModuleInterop": true, "module": "esnext", - "moduleResolution": "node", + "moduleResolution": "bundler", "resolveJsonModule": true, "isolatedModules": true, "jsx": "preserve", diff --git a/examples/react-router-ts/package-lock.json b/examples/react-router-ts/package-lock.json index 72f139f06a9..29e4c298ef3 100644 --- a/examples/react-router-ts/package-lock.json +++ b/examples/react-router-ts/package-lock.json @@ -29,7 +29,7 @@ "eslint-plugin-react": "7.37.5", "eslint-plugin-react-hooks": "7.1.1", "globals": "17.7.0", - "typescript": "5.9.3", + "typescript": "6.0.3", "typescript-eslint": "8.62.0", "vite": "8.1.0", "vite-tsconfig-paths": "6.1.1" @@ -6875,28 +6875,6 @@ "node": ">=14.0.0" } }, - "node_modules/tsconfck": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/tsconfck/-/tsconfck-3.1.6.tgz", - "integrity": "sha512-ks6Vjr/jEw0P1gmOVwutM3B7fWxoWBL2KRDb1JfqGVawBmO5UsvmWOQFGHBPl5yxYz4eERr19E6L7NMv+Fej4w==", - "deprecated": "unmaintained", - "dev": true, - "license": "MIT", - "bin": { - "tsconfck": "bin/tsconfck.js" - }, - "engines": { - "node": "^18 || >=20" - }, - "peerDependencies": { - "typescript": "^5.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, "node_modules/tsconfig-paths": { "version": "3.15.0", "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.15.0.tgz", @@ -7054,9 +7032,9 @@ } }, "node_modules/typescript": { - "version": "5.9.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz", - "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-6.0.3.tgz", + "integrity": "sha512-y2TvuxSZPDyQakkFRPZHKFm+KKVqIisdg9/CZwm9ftvKXLP8NRWj38/ODjNbr43SsoXqNuAisEf1GdCxqWcdBw==", "devOptional": true, "license": "Apache-2.0", "bin": { @@ -7315,6 +7293,28 @@ "vite": "*" } }, + "node_modules/vite-tsconfig-paths/node_modules/tsconfck": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/tsconfck/-/tsconfck-3.1.6.tgz", + "integrity": "sha512-ks6Vjr/jEw0P1gmOVwutM3B7fWxoWBL2KRDb1JfqGVawBmO5UsvmWOQFGHBPl5yxYz4eERr19E6L7NMv+Fej4w==", + "deprecated": "unmaintained", + "dev": true, + "license": "MIT", + "bin": { + "tsconfck": "bin/tsconfck.js" + }, + "engines": { + "node": "^18 || >=20" + }, + "peerDependencies": { + "typescript": "^5.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, "node_modules/which": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", diff --git a/examples/react-router-ts/package.json b/examples/react-router-ts/package.json index a6e15a85c83..f0415f359a1 100644 --- a/examples/react-router-ts/package.json +++ b/examples/react-router-ts/package.json @@ -34,7 +34,7 @@ "eslint-plugin-react": "7.37.5", "eslint-plugin-react-hooks": "7.1.1", "globals": "17.7.0", - "typescript": "5.9.3", + "typescript": "6.0.3", "typescript-eslint": "8.62.0", "vite": "8.1.0", "vite-tsconfig-paths": "6.1.1" diff --git a/package.json b/package.json index b442a6806db..f177008ab62 100644 --- a/package.json +++ b/package.json @@ -108,7 +108,7 @@ "prettier": "3.8.4", "publint": "0.3.21", "rimraf": "6.1.3", - "typescript": "5.9.3", + "typescript": "6.0.3", "typescript-eslint": "8.62.0", "vite": "8.1.0", "vite-plugin-istanbul": "9.0.1", diff --git a/packages/charts/src/components/ScatterChart/test/ScatterChart.spec.tsx b/packages/charts/src/components/ScatterChart/test/ScatterChart.spec.tsx index 74a123480ab..5377c91efab 100644 --- a/packages/charts/src/components/ScatterChart/test/ScatterChart.spec.tsx +++ b/packages/charts/src/components/ScatterChart/test/ScatterChart.spec.tsx @@ -1,5 +1,5 @@ -import { expect, test } from '../../../../../../playwright/fixtures/main-fixtures.js'; import type { Page } from '@playwright/test'; +import { expect, test } from '../../../../../../playwright/fixtures/main-fixtures.js'; import { scatterComplexDataSet } from '../../../resources/DemoProps.js'; import { testLoadingStates, testPassThroughProps } from '../../../test-utils/sharedTests.js'; import { ScatterChart } from '../index.js'; diff --git a/packages/compat/src/components/Loader/Loader.cy.tsx b/packages/compat/src/components/Loader/Loader.cy.tsx index 3cc3af470ce..8136b372d14 100644 --- a/packages/compat/src/components/Loader/Loader.cy.tsx +++ b/packages/compat/src/components/Loader/Loader.cy.tsx @@ -1,6 +1,6 @@ +import { cypressPassThroughTestsFactory } from '@/cypress/support/utils'; import { LoaderType } from '../../enums/LoaderType.js'; import { Loader } from './index.js'; -import { cypressPassThroughTestsFactory } from '@/cypress/support/utils'; describe('Loader', () => { it('indeterminate', () => { diff --git a/packages/compat/src/components/Toolbar/Toolbar.cy.tsx b/packages/compat/src/components/Toolbar/Toolbar.cy.tsx index e48e989e53c..49ae72865bf 100644 --- a/packages/compat/src/components/Toolbar/Toolbar.cy.tsx +++ b/packages/compat/src/components/Toolbar/Toolbar.cy.tsx @@ -1,3 +1,4 @@ +import { cssVarToRgb, cypressPassThroughTestsFactory, mountWithCustomTagName } from '@/cypress/support/utils'; import ButtonDesign from '@ui5/webcomponents/dist/types/ButtonDesign.js'; import PopupAccessibleRole from '@ui5/webcomponents/dist/types/PopupAccessibleRole.js'; import { setTheme } from '@ui5/webcomponents-base/dist/config/Theme.js'; @@ -17,7 +18,6 @@ import { ToolbarSeparator } from '../ToolbarSeparator/index.js'; import { ToolbarSpacer } from '../ToolbarSpacer/index.js'; import type { ToolbarPropTypes } from './index.js'; import { Toolbar } from './index.js'; -import { cssVarToRgb, cypressPassThroughTestsFactory, mountWithCustomTagName } from '@/cypress/support/utils'; interface PropTypes { onOverflowChange: (event: { diff --git a/packages/main/src/components/AnalyticalCardHeader/AnalyticalCardHeader.cy.tsx b/packages/main/src/components/AnalyticalCardHeader/AnalyticalCardHeader.cy.tsx index 5600be4ff19..3465749ddd8 100644 --- a/packages/main/src/components/AnalyticalCardHeader/AnalyticalCardHeader.cy.tsx +++ b/packages/main/src/components/AnalyticalCardHeader/AnalyticalCardHeader.cy.tsx @@ -1,3 +1,4 @@ +import { cypressPassThroughTestsFactory } from '@/cypress/support/utils'; import { getRGBColor } from '@ui5/webcomponents-base/dist/util/ColorConversion'; import { ThemingParameters } from '@ui5/webcomponents-react-base'; import { DeviationIndicator, ValueColor } from '../../enums'; @@ -7,7 +8,6 @@ import { Text } from '../../webComponents/Text/index.js'; import { NumericSideIndicator } from '../NumericSideIndicator'; import type { AnalyticalCardHeaderPropTypes } from './index'; import { AnalyticalCardHeader } from './index'; -import { cypressPassThroughTestsFactory } from '@/cypress/support/utils'; const TestComp = (props: Omit) => { return ( diff --git a/packages/main/src/components/AnalyticalTable/AnalyticalTable.cy.tsx b/packages/main/src/components/AnalyticalTable/AnalyticalTable.cy.tsx index 3fef5185e12..bcc70fce1e6 100644 --- a/packages/main/src/components/AnalyticalTable/AnalyticalTable.cy.tsx +++ b/packages/main/src/components/AnalyticalTable/AnalyticalTable.cy.tsx @@ -1,3 +1,4 @@ +import { cssVarToRgb, cypressPassThroughTestsFactory } from '@/cypress/support/utils'; import ValueState from '@ui5/webcomponents-base/dist/types/ValueState.js'; import NoDataIllustration from '@ui5/webcomponents-fiori/dist/illustrations/NoData.js'; import NoFilterResults from '@ui5/webcomponents-fiori/dist/illustrations/NoFilterResults.js'; @@ -82,7 +83,6 @@ import { import { useF2CellEdit } from './pluginHooks/useF2CellEdit.js'; import { useManualRowSelect } from './pluginHooks/useManualRowSelect'; import { useRowDisableSelection } from './pluginHooks/useRowDisableSelection'; -import { cssVarToRgb, cypressPassThroughTestsFactory } from '@/cypress/support/utils'; import type { RowType } from '@/packages/main/src/components/AnalyticalTable/types/index.js'; import { getUi5TagWithSuffix } from '@/packages/main/src/internal/utils.js'; diff --git a/packages/main/src/components/FilterBar/FilterBar.cy.tsx b/packages/main/src/components/FilterBar/FilterBar.cy.tsx index 9f1be0e6084..f6b1f8b6254 100644 --- a/packages/main/src/components/FilterBar/FilterBar.cy.tsx +++ b/packages/main/src/components/FilterBar/FilterBar.cy.tsx @@ -1,3 +1,4 @@ +import { cypressPassThroughTestsFactory, mountWithCustomTagName } from '@/cypress/support/utils'; import { useId, useState } from 'react'; import { Input, @@ -15,7 +16,6 @@ import { VariantItem } from '../VariantItem/index.js'; import { VariantManagement } from '../VariantManagement/index.js'; import type { FilterBarPropTypes } from './index.js'; import { FilterBar } from './index.js'; -import { cypressPassThroughTestsFactory, mountWithCustomTagName } from '@/cypress/support/utils'; const variants = ( diff --git a/packages/main/src/components/FlexBox/FlexBox.cy.tsx b/packages/main/src/components/FlexBox/FlexBox.cy.tsx index cb8c1afce58..6eaa3f38150 100644 --- a/packages/main/src/components/FlexBox/FlexBox.cy.tsx +++ b/packages/main/src/components/FlexBox/FlexBox.cy.tsx @@ -1,8 +1,8 @@ +import { cypressPassThroughTestsFactory, mountWithCustomTagName } from '@/cypress/support/utils'; import { camelToKebabCase, lowercaseFirstLetter } from '@ui5/webcomponents-react-base'; import { FlexBoxJustifyContent, FlexBoxAlignItems, FlexBoxDirection, FlexBoxWrap } from '../../enums/index.js'; import { FlexBox } from './index.js'; import type { FlexBoxPropTypes } from './index.js'; -import { cypressPassThroughTestsFactory, mountWithCustomTagName } from '@/cypress/support/utils'; describe('FlexBox', () => { Object.values(FlexBoxJustifyContent).forEach((val: FlexBoxPropTypes['justifyContent']) => { diff --git a/packages/main/src/components/Grid/Grid.cy.tsx b/packages/main/src/components/Grid/Grid.cy.tsx index 1acb7f6899e..97cc8de35ad 100644 --- a/packages/main/src/components/Grid/Grid.cy.tsx +++ b/packages/main/src/components/Grid/Grid.cy.tsx @@ -1,7 +1,7 @@ +import { cypressPassThroughTestsFactory } from '@/cypress/support/utils'; import { GridPosition } from '../../enums/index.js'; import { Grid } from './index.js'; import type { GridPropTypes } from './index.js'; -import { cypressPassThroughTestsFactory } from '@/cypress/support/utils'; const style = { height: '6rem', width: '100%' }; diff --git a/packages/main/src/components/ObjectPage/ObjectPage.cy.tsx b/packages/main/src/components/ObjectPage/ObjectPage.cy.tsx index ead0f5d8839..a52214f732c 100644 --- a/packages/main/src/components/ObjectPage/ObjectPage.cy.tsx +++ b/packages/main/src/components/ObjectPage/ObjectPage.cy.tsx @@ -1,5 +1,6 @@ import '@ui5/webcomponents-icons/dist/AllIcons.js'; import '@ui5/webcomponents-fiori/dist/illustrations/NoData.js'; +import { cypressPassThroughTestsFactory } from '@/cypress/support/utils'; import BarDesign from '@ui5/webcomponents/dist/types/BarDesign.js'; import ButtonDesign from '@ui5/webcomponents/dist/types/ButtonDesign.js'; import InputType from '@ui5/webcomponents/dist/types/InputType.js'; @@ -50,7 +51,6 @@ import { TableRow, } from '../..'; import type { TabDomRef } from '../../webComponents/Tab/index.js'; -import { cypressPassThroughTestsFactory } from '@/cypress/support/utils'; const arbitraryCharsId = `~\`!1@#$%^&*()-_+={}[]:;"'z,<.>/?|♥`; diff --git a/packages/main/src/components/ObjectStatus/ObjectStatus.cy.tsx b/packages/main/src/components/ObjectStatus/ObjectStatus.cy.tsx index 1958375e24e..ca4a4abe82b 100644 --- a/packages/main/src/components/ObjectStatus/ObjectStatus.cy.tsx +++ b/packages/main/src/components/ObjectStatus/ObjectStatus.cy.tsx @@ -1,3 +1,4 @@ +import { cssVarToRgb, cypressPassThroughTestsFactory } from '@/cypress/support/utils'; import { VALUE_STATE_ERROR, VALUE_STATE_INFORMATION, @@ -19,7 +20,6 @@ import { TableRow } from '../../webComponents/TableRow/index.js'; import { TableSelectionSingle } from '../../webComponents/TableSelectionSingle/index.js'; import { AnalyticalTable } from '../AnalyticalTable/index.js'; import { ObjectStatus } from './index.js'; -import { cssVarToRgb, cypressPassThroughTestsFactory } from '@/cypress/support/utils'; const statesWithCSSVars: { state: ValueState | keyof typeof ValueState | IndicationColor | keyof typeof IndicationColor; diff --git a/packages/main/src/components/ResponsiveGridLayout/ResponsiveGridLayout.cy.tsx b/packages/main/src/components/ResponsiveGridLayout/ResponsiveGridLayout.cy.tsx index 135200162e3..1036dad3c72 100644 --- a/packages/main/src/components/ResponsiveGridLayout/ResponsiveGridLayout.cy.tsx +++ b/packages/main/src/components/ResponsiveGridLayout/ResponsiveGridLayout.cy.tsx @@ -1,6 +1,6 @@ +import { cypressPassThroughTestsFactory } from '@/cypress/support/utils'; import type { ResponsiveGridLayoutPropTypes } from './index.js'; import { ResponsiveGridLayout } from './index.js'; -import { cypressPassThroughTestsFactory } from '@/cypress/support/utils'; const TestComp = (props: ResponsiveGridLayoutPropTypes) => ( diff --git a/packages/main/src/components/VariantManagement/VariantManagement.cy.tsx b/packages/main/src/components/VariantManagement/VariantManagement.cy.tsx index 806c5a11b80..c4ebce65c90 100644 --- a/packages/main/src/components/VariantManagement/VariantManagement.cy.tsx +++ b/packages/main/src/components/VariantManagement/VariantManagement.cy.tsx @@ -1,3 +1,4 @@ +import { cypressPassThroughTestsFactory } from '@/cypress/support/utils'; import TitleLevel from '@ui5/webcomponents/dist/types/TitleLevel.js'; import ValueState from '@ui5/webcomponents-base/dist/types/ValueState.js'; import { useState } from 'react'; @@ -6,7 +7,6 @@ import { VariantItem } from '../VariantItem/index.js'; import { WithCustomValidation as WithCustomValidationStory } from './VariantManagement.stories'; import type { VariantManagementPropTypes } from './index.js'; import { VariantManagement } from './index.js'; -import { cypressPassThroughTestsFactory } from '@/cypress/support/utils'; const WithCustomValidation = WithCustomValidationStory.render; diff --git a/patterns/navigation-layout/package-lock.json b/patterns/navigation-layout/package-lock.json index bdb145193be..469c247ee99 100644 --- a/patterns/navigation-layout/package-lock.json +++ b/patterns/navigation-layout/package-lock.json @@ -24,7 +24,7 @@ "eslint-plugin-react-hooks": "7.1.1", "eslint-plugin-react-refresh": "0.5.3", "globals": "17.7.0", - "typescript": "5.9.3", + "typescript": "6.0.3", "typescript-eslint": "8.62.0", "vite": "8.1.0" } @@ -3050,9 +3050,9 @@ } }, "node_modules/typescript": { - "version": "5.9.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz", - "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-6.0.3.tgz", + "integrity": "sha512-y2TvuxSZPDyQakkFRPZHKFm+KKVqIisdg9/CZwm9ftvKXLP8NRWj38/ODjNbr43SsoXqNuAisEf1GdCxqWcdBw==", "dev": true, "license": "Apache-2.0", "bin": { diff --git a/patterns/navigation-layout/package.json b/patterns/navigation-layout/package.json index b2ab042576a..1a3f2ef55ce 100644 --- a/patterns/navigation-layout/package.json +++ b/patterns/navigation-layout/package.json @@ -26,7 +26,7 @@ "eslint-plugin-react-hooks": "7.1.1", "eslint-plugin-react-refresh": "0.5.3", "globals": "17.7.0", - "typescript": "5.9.3", + "typescript": "6.0.3", "typescript-eslint": "8.62.0", "vite": "8.1.0" } diff --git a/templates/nextjs-app/app/clientAssetsImport.ts b/templates/nextjs-app/app/clientAssetsImport.ts index a965f680b8d..191207a2231 100644 --- a/templates/nextjs-app/app/clientAssetsImport.ts +++ b/templates/nextjs-app/app/clientAssetsImport.ts @@ -1,3 +1,3 @@ 'use client'; -import '@ui5/webcomponents-react/dist/Assets'; +import '@ui5/webcomponents-react/dist/Assets.js'; diff --git a/templates/nextjs-app/app/layout.tsx b/templates/nextjs-app/app/layout.tsx index da941aadfc0..bffae459475 100644 --- a/templates/nextjs-app/app/layout.tsx +++ b/templates/nextjs-app/app/layout.tsx @@ -1,4 +1,4 @@ -import './clientAssetsImport.ts'; +import './clientAssetsImport'; import '@ui5/webcomponents-react/styles.css'; import './globals.css'; import { ThemeProvider } from '@ui5/webcomponents-react'; diff --git a/templates/nextjs-app/package-lock.json b/templates/nextjs-app/package-lock.json index fde87b4a2cf..3646cfc7a19 100644 --- a/templates/nextjs-app/package-lock.json +++ b/templates/nextjs-app/package-lock.json @@ -20,7 +20,7 @@ "next": "16.2.9", "react": "19.2.7", "react-dom": "19.2.7", - "typescript": "5.9.3" + "typescript": "6.0.3" } }, "node_modules/@babel/code-frame": { @@ -5798,9 +5798,9 @@ } }, "node_modules/typescript": { - "version": "5.9.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz", - "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-6.0.3.tgz", + "integrity": "sha512-y2TvuxSZPDyQakkFRPZHKFm+KKVqIisdg9/CZwm9ftvKXLP8NRWj38/ODjNbr43SsoXqNuAisEf1GdCxqWcdBw==", "license": "Apache-2.0", "bin": { "tsc": "bin/tsc", diff --git a/templates/nextjs-app/package.json b/templates/nextjs-app/package.json index 4bc5a38cc35..1d1fdeeee1e 100644 --- a/templates/nextjs-app/package.json +++ b/templates/nextjs-app/package.json @@ -21,6 +21,6 @@ "next": "16.2.9", "react": "19.2.7", "react-dom": "19.2.7", - "typescript": "5.9.3" + "typescript": "6.0.3" } } diff --git a/templates/nextjs-app/tsconfig.json b/templates/nextjs-app/tsconfig.json index b9e4e581502..24b6a9e248d 100644 --- a/templates/nextjs-app/tsconfig.json +++ b/templates/nextjs-app/tsconfig.json @@ -1,6 +1,6 @@ { "compilerOptions": { - "target": "es5", + "target": "ES2022", "lib": ["dom", "dom.iterable", "esnext"], "allowJs": true, "skipLibCheck": true, @@ -9,10 +9,10 @@ "noEmit": true, "esModuleInterop": true, "module": "esnext", - "moduleResolution": "node", + "moduleResolution": "bundler", "resolveJsonModule": true, "isolatedModules": true, - "jsx": "react-jsx", + "jsx": "preserve", "incremental": true, "plugins": [ { diff --git a/templates/nextjs-pages/package-lock.json b/templates/nextjs-pages/package-lock.json index abdb37d6a44..3246779c60c 100644 --- a/templates/nextjs-pages/package-lock.json +++ b/templates/nextjs-pages/package-lock.json @@ -20,7 +20,7 @@ "next": "16.2.9", "react": "19.2.7", "react-dom": "19.2.7", - "typescript": "5.9.3" + "typescript": "6.0.3" } }, "node_modules/@babel/code-frame": { @@ -5798,9 +5798,9 @@ } }, "node_modules/typescript": { - "version": "5.9.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz", - "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-6.0.3.tgz", + "integrity": "sha512-y2TvuxSZPDyQakkFRPZHKFm+KKVqIisdg9/CZwm9ftvKXLP8NRWj38/ODjNbr43SsoXqNuAisEf1GdCxqWcdBw==", "license": "Apache-2.0", "bin": { "tsc": "bin/tsc", diff --git a/templates/nextjs-pages/package.json b/templates/nextjs-pages/package.json index b9579ce74e7..88d4601527a 100644 --- a/templates/nextjs-pages/package.json +++ b/templates/nextjs-pages/package.json @@ -21,7 +21,7 @@ "next": "16.2.9", "react": "19.2.7", "react-dom": "19.2.7", - "typescript": "5.9.3" + "typescript": "6.0.3" }, "overrides": { "@types/react": "19.2.17", diff --git a/templates/nextjs-pages/tsconfig.json b/templates/nextjs-pages/tsconfig.json index 8073d5fd1f3..b220caea591 100644 --- a/templates/nextjs-pages/tsconfig.json +++ b/templates/nextjs-pages/tsconfig.json @@ -1,6 +1,6 @@ { "compilerOptions": { - "target": "es5", + "target": "ES2022", "lib": ["dom", "dom.iterable", "esnext"], "allowJs": true, "skipLibCheck": true, @@ -9,10 +9,10 @@ "noEmit": true, "esModuleInterop": true, "module": "esnext", - "moduleResolution": "node", + "moduleResolution": "bundler", "resolveJsonModule": true, "isolatedModules": true, - "jsx": "react-jsx", + "jsx": "preserve", "incremental": true, "paths": { "@/*": ["./src/*"] diff --git a/templates/vite-ts/package-lock.json b/templates/vite-ts/package-lock.json index 9c7ac376fb3..38f36b9138c 100644 --- a/templates/vite-ts/package-lock.json +++ b/templates/vite-ts/package-lock.json @@ -26,7 +26,7 @@ "eslint-plugin-react-hooks": "7.1.1", "eslint-plugin-react-refresh": "0.5.3", "globals": "17.7.0", - "typescript": "5.9.3", + "typescript": "6.0.3", "typescript-eslint": "8.62.0", "vite": "8.1.0" } @@ -4955,9 +4955,9 @@ } }, "node_modules/typescript": { - "version": "5.9.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz", - "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-6.0.3.tgz", + "integrity": "sha512-y2TvuxSZPDyQakkFRPZHKFm+KKVqIisdg9/CZwm9ftvKXLP8NRWj38/ODjNbr43SsoXqNuAisEf1GdCxqWcdBw==", "dev": true, "license": "Apache-2.0", "bin": { diff --git a/templates/vite-ts/package.json b/templates/vite-ts/package.json index a789077d92e..d57c00f2c0b 100644 --- a/templates/vite-ts/package.json +++ b/templates/vite-ts/package.json @@ -30,7 +30,7 @@ "eslint-plugin-react-hooks": "7.1.1", "eslint-plugin-react-refresh": "0.5.3", "globals": "17.7.0", - "typescript": "5.9.3", + "typescript": "6.0.3", "typescript-eslint": "8.62.0", "vite": "8.1.0" } diff --git a/tsconfig.base.json b/tsconfig.base.json index 842e916202f..04435be6e5b 100644 --- a/tsconfig.base.json +++ b/tsconfig.base.json @@ -5,7 +5,6 @@ "target": "ES2021", "lib": ["ESNext", "dom"], "jsx": "react-jsx", - "baseUrl": "${configDir}/src", "rootDir": "${configDir}/src", "composite": true, "paths": { @@ -28,6 +27,7 @@ "skipLibCheck": true, "outDir": "${configDir}/dist", "declarationDir": "${configDir}/dist", - "noUncheckedSideEffectImports": true + "noUncheckedSideEffectImports": true, + "types": ["node"] } } diff --git a/yarn.lock b/yarn.lock index e00fdb105ae..9f487bfc016 100644 --- a/yarn.lock +++ b/yarn.lock @@ -22045,7 +22045,17 @@ __metadata: languageName: node linkType: hard -"typescript@npm:5.9.3, typescript@npm:>=3 < 6": +"typescript@npm:6.0.3": + version: 6.0.3 + resolution: "typescript@npm:6.0.3" + bin: + tsc: bin/tsc + tsserver: bin/tsserver + checksum: 10c0/4a25ff5045b984370f48f196b3a0120779b1b343d40b9a68d114ea5e5fff099809b2bb777576991a63a5cd59cf7bffd96ff6fe10afcefbcb8bd6fb96ad4b6606 + languageName: node + linkType: hard + +"typescript@npm:>=3 < 6": version: 5.9.3 resolution: "typescript@npm:5.9.3" bin: @@ -22065,7 +22075,17 @@ __metadata: languageName: node linkType: hard -"typescript@patch:typescript@npm%3A5.9.3#optional!builtin, typescript@patch:typescript@npm%3A>=3 < 6#optional!builtin": +"typescript@patch:typescript@npm%3A6.0.3#optional!builtin": + version: 6.0.3 + resolution: "typescript@patch:typescript@npm%3A6.0.3#optional!builtin::version=6.0.3&hash=5786d5" + bin: + tsc: bin/tsc + tsserver: bin/tsserver + checksum: 10c0/2f25c74e65663c248fa1ade2b8459d9ce5372ff9dad07067310f132966ebec1d93f6c42f0baf77a6b6a7a91460463f708e6887013aaade22111037457c6b25df + languageName: node + linkType: hard + +"typescript@patch:typescript@npm%3A>=3 < 6#optional!builtin": version: 5.9.3 resolution: "typescript@patch:typescript@npm%3A5.9.3#optional!builtin::version=5.9.3&hash=5786d5" bin: @@ -22176,7 +22196,7 @@ __metadata: rimraf: "npm:6.1.3" storybook: "npm:10.4.6" tocbot: "npm:4.36.8" - typescript: "npm:5.9.3" + typescript: "npm:6.0.3" typescript-eslint: "npm:8.62.0" vite: "npm:8.1.0" vite-plugin-istanbul: "npm:9.0.1"