diff --git a/.github/actions/sourceclear/Dockerfile b/.github/actions/sourceclear/Dockerfile deleted file mode 100644 index e22853a74c..0000000000 --- a/.github/actions/sourceclear/Dockerfile +++ /dev/null @@ -1,5 +0,0 @@ -FROM node:16 -RUN apt-get update -RUN apt-get install -y --no-install-recommends curl jq -COPY entrypoint.sh /entrypoint.sh -ENTRYPOINT ["/entrypoint.sh"] diff --git a/.github/actions/sourceclear/action.yml b/.github/actions/sourceclear/action.yml deleted file mode 100644 index 7a27be95d9..0000000000 --- a/.github/actions/sourceclear/action.yml +++ /dev/null @@ -1,9 +0,0 @@ -name: 'SourceClear Scan' -description: 'Scan a project with the SourceClear agent' -author: 'SourceClear' -secrets: - SRCCLR_API_TOKEN: - description: 'The API token to use' -runs: - using: 'docker' - image: 'Dockerfile' diff --git a/.github/actions/sourceclear/entrypoint.sh b/.github/actions/sourceclear/entrypoint.sh deleted file mode 100755 index 9108988b3b..0000000000 --- a/.github/actions/sourceclear/entrypoint.sh +++ /dev/null @@ -1,26 +0,0 @@ -#!/bin/sh -l -echo "Download srcclr ci script ..." -curl -sSL https://download.sourceclear.com/ci.sh --output srcclr.sh -echo "Script saved to srcclr.sh" -chmod a+x srcclr.sh -echo "Script execution rights added" - -packages=$(yarn --silent workspaces info | jq '.[].location' | sed 's/\"//g') - -# scan each folder -echo "Starting scan on . (root) ..." -./srcclr.sh scan . -echo "Scan completed on . (root)" - -for folder in $packages; -do - echo "Starting scan on ./$folder ..." - echo "> ln -s yarn.lock ./$folder/yarn.lock" - cp yarn.lock ./$folder/yarn.lock - ls -l ./$folder - echo "> ./srcclr.sh scan ./$folder" - ./srcclr.sh scan ./$folder - echo "Scan completed on ./$folder" -done - - diff --git a/.github/workflows/design-system-component-testing.yml b/.github/workflows/design-system-component-testing.yml index 58ddb436ea..f82e2a0397 100644 --- a/.github/workflows/design-system-component-testing.yml +++ b/.github/workflows/design-system-component-testing.yml @@ -27,7 +27,7 @@ jobs: - name: Use Node.js uses: ./.github/actions/setup-node - - uses: actions/cache@13aacd865c20de90d75de3b17ebe84f7a17d57d2 #v4.0.0 + - uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 #v4.0.2 with: path: ~/.cache/Cypress key: my-cache-${{ runner.os }}-${{ hashFiles('yarn.lock') }} @@ -36,10 +36,12 @@ jobs: run: | yarn --frozen-lock --ignore-scripts yarn cypress install - yarn workspace @talend/assets-api run build:lib - yarn workspace @talend/utils run build:lib + yarn workspace @talend/assets-api run build:lib:esm + yarn workspace @talend/utils run build:lib:esm yarn workspace @talend/icons run build:lib + yarn workspace @talend/icons run build:lib:esm yarn workspace @talend/design-tokens run build:lib + yarn workspace @talend/design-tokens run build:lib:esm - name: Cypress Component Testing uses: cypress-io/github-action@1b70233146622b69e789ccdd4f9452adc638d25a #v6.6.1 @@ -49,14 +51,14 @@ jobs: command: yarn workspace @talend/design-system run test:cy - name: Cypress screenshots upload - uses: actions/upload-artifact@694cdabd8bdb0f10b2cea11669e1bf5453eed0a6 #v4.2.0 + uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 #v4.3.3 if: failure() with: name: cypress-component-testing-${{ matrix.browser }}-screenshots path: packages/design-system/cypress/screenshots/**/* - name: Cypress videos upload - uses: actions/upload-artifact@694cdabd8bdb0f10b2cea11669e1bf5453eed0a6 #v4.2.0 + uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 #v4.3.3 if: failure() with: name: cypress-component-testing-${{ matrix.browser }}-videos diff --git a/.github/workflows/pr-demo.yml b/.github/workflows/pr-demo.yml index d6791c165d..529d7a204b 100644 --- a/.github/workflows/pr-demo.yml +++ b/.github/workflows/pr-demo.yml @@ -31,7 +31,7 @@ jobs: uses: ./.github/actions/setup-node - name: cache for storybook - uses: actions/cache@13aacd865c20de90d75de3b17ebe84f7a17d57d2 #v4.0.0 + uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 #v4.0.2 with: path: packages/*/node_modules key: ${{ runner.os }}-storybook-${{ hashFiles('**/yarn.lock') }} diff --git a/.github/workflows/pr-playground.yml b/.github/workflows/pr-playground.yml index e1e777c1a8..22dca6b39b 100644 --- a/.github/workflows/pr-playground.yml +++ b/.github/workflows/pr-playground.yml @@ -80,7 +80,7 @@ jobs: node --version - name: Check UMD files size diff - uses: preactjs/compressed-size-action@8119d3d31b6e57b167e09c81dfa877eada3bcb35 #v2.5.0 + uses: preactjs/compressed-size-action@f780fd104362cfce9e118f9198df2ee37d12946c #v2.6.0 if: github.ref != 'refs/heads/master' with: repo-token: "${{ secrets.GITHUB_TOKEN }}" diff --git a/.github/workflows/pr-test.yml b/.github/workflows/pr-test.yml index 646a5fb521..54e6b9dac5 100644 --- a/.github/workflows/pr-test.yml +++ b/.github/workflows/pr-test.yml @@ -33,7 +33,7 @@ jobs: run: yarn test --coverage --coverageReporters json-summary - name: Jest Coverage Comment - uses: MishaKav/jest-coverage-comment@c2d5cfd6c32e8799c6deb0fd76a8e2d9ad8b35c2 #1.0.25 + uses: MishaKav/jest-coverage-comment@434e6d2d37116d23d812809b61d499639842fa3b #1.0.26 with: multiple-files: | assets-api, ./packages/assets-api/coverage/coverage-summary.json diff --git a/.github/workflows/security-scan.yml b/.github/workflows/security-scan.yml deleted file mode 100644 index 442d2c0376..0000000000 --- a/.github/workflows/security-scan.yml +++ /dev/null @@ -1,21 +0,0 @@ -name: Security scan - -on: - workflow_dispatch: - schedule: - - cron: '0 0 * * 0' # https://crontab.guru/every-week "At 00:00 on Sunday." - -permissions: - contents: read - -jobs: - build: - environment: main - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 #v4.1.1 - - name: Scan - uses: ./.github/actions/sourceclear - env: - SRCCLR_API_TOKEN: ${{ secrets.SRCCLR_API_TOKEN }} - SRCCLR_SCOPE: 'production' diff --git a/.github/workflows/semgrep.yml b/.github/workflows/semgrep.yml deleted file mode 100644 index eb1a26be9a..0000000000 --- a/.github/workflows/semgrep.yml +++ /dev/null @@ -1,34 +0,0 @@ -# Name of this GitHub Actions workflow. -name: Semgrep - -on: - workflow_dispatch: - pull_request: - push: - branches: - - master - paths: - - .github/workflows/semgrep.yml - schedule: - - cron: '0 0 * * 0' - -jobs: - semgrep: - environment: pull_request_unsafe - name: Scan - runs-on: ubuntu-latest - - container: - # A Docker image with Semgrep installed. Do not change this. - image: returntocorp/semgrep - - # Skip any PR created by dependabot to avoid permission issues: - if: (github.actor != 'dependabot[bot]') - - steps: - - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 #v4.1.1 - # Run the "semgrep ci" command on the command line of the docker image. - - run: semgrep ci - env: - SEMGREP_APP_TOKEN: ${{ secrets.SEMGREP_APP_TOKEN }} - diff --git a/.gitignore b/.gitignore index abc39076d1..ed9f9e5794 100644 --- a/.gitignore +++ b/.gitignore @@ -44,6 +44,7 @@ build/ /packages/*/i18n/ tmp/ lib/ +lib-esm/ storybook-static/ dist/ eslint-report.json diff --git a/.prettierignore b/.prettierignore index da1cc32ff3..34f6040084 100644 --- a/.prettierignore +++ b/.prettierignore @@ -7,3 +7,4 @@ build dist node_modules __fixtures__ +tools/scripts-config-storybook-lib/.storybook-templates/main.js diff --git a/dependencies-latest.txt b/dependencies-latest.txt index 8d895c1478..c1d96d5249 100644 --- a/dependencies-latest.txt +++ b/dependencies-latest.txt @@ -1,97 +1,134 @@ -yarn run v1.22.21 +yarn run v1.22.22 $ /home/runner/work/ui/ui/node_modules/.bin/talend-upgrade-deps --latest --dry check versions of /home/runner/work/ui/ui/package.json using latest -"@types/react": "^18.2.7" => "^18.2.60" -"@types/react-dom": "^18.2.7" => "^18.2.19" -"cypress": "^13.6.0" => "^13.6.6" +"@types/react": "^18.2.7" => "^18.3.3" +"@types/react-dom": "^18.2.7" => "^18.3.0" +"cypress": "^13.6.0" => "^13.11.0" +"eslint": "^8.57.0" => "^9.4.0" "husky": "^8.0.3" => "^9.0.11" -"rimraf": "^3.0.2" => "^5.0.5" check versions of packages/a11y/package.json using latest +"@testing-library/react": "^14.3.1" => "^16.0.0" check versions of packages/assets-api/package.json using latest -"@types/node": "^6.14.13" => "^20.11.21" +"@types/node": "^6.14.13" => "^20.14.2" "read-pkg-up": "^7.0.1" => "^11.0.0" check versions of packages/cmf-cqrs/package.json using latest -"immutable": "^3.8.2" => "^5.0.0-beta.5" +"immutable": "^3.8.2" => "^4.3.6" +"@testing-library/react": "^14.3.1" => "^16.0.0" check versions of packages/cmf-router/package.json using latest -"react-redux": "^7.2.9" => "^9.1.0" -"react-router": "~6.3.0" => "^6.22.1" -"react-router-dom": "~6.3.0" => "^6.22.1" +"react-redux": "^7.2.9" => "^9.1.2" +"react-router": "~6.3.0" => "^6.23.1" +"react-router-dom": "~6.3.0" => "^6.23.1" check versions of packages/cmf/package.json using latest -"commander": "^6.2.1" => "^12.0.0" -"immutable": "^3.8.2" => "^5.0.0-beta.5" +"commander": "^6.2.1" => "^12.1.0" +"immutable": "^3.8.2" => "^4.3.6" "nested-combine-reducers": "^1.2.2" => "^2.0.0" -"path-to-regexp": "^2.4.0" => "^6.2.1" -"react-redux": "^7.2.9" => "^9.1.0" +"path-to-regexp": "^2.4.0" => "^6.2.2" +"react-redux": "^7.2.9" => "^9.1.2" "redux": "^4.2.1" => "^5.0.1" "redux-thunk": "^2.4.2" => "^3.1.0" +"@testing-library/react": "^14.3.1" => "^16.0.0" "node-fetch": "^2.7.0" => "^3.3.2" check versions of packages/components/package.json using latest "dom-helpers": "^3.4.0" => "^5.2.1" -"immutable": "^3.8.2" => "^5.0.0-beta.5" +"immutable": "^3.8.2" => "^4.3.6" "react-autowhatever": "10.2.0" => "^10.2.1" -"react-is": "^17.0.2" => "^18.2.0" +"react-is": "^17.0.2" => "^18.3.1" "react-transition-group": "^2.9.0" => "^4.4.5" -"simplebar-react": "^2.4.3" => "^3.2.4" -"styled-components": "^5.3.11" => "^6.1.8" +"simplebar-react": "^2.4.3" => "^3.2.5" +"styled-components": "^5.3.11" => "^6.1.11" "warning": "^3.0.0" => "^4.0.3" -"jsdom": "^20.0.3" => "^24.0.0" +"@storybook/addon-actions": "^7.6.19" => "^8.1.6" +"@testing-library/react": "^14.3.1" => "^16.0.0" +"jsdom": "^20.0.3" => "^24.1.0" "react-a11y": "^0.3.4" => "^1.1.0" -"react-router-dom": "~6.3.0" => "^6.22.1" -"react-i18next": "^13.5.0" => "^14.0.5" +"react-i18next": "^13.5.0" => "^14.1.2" +"react-router-dom": "~6.3.0" => "^6.23.1" check versions of packages/containers/package.json using latest -"immutable": "^3.8.2" => "^5.0.0-beta.5" -"reselect": "^2.5.4" => "^5.1.0" -"msw": "^1.3.2" => "^2.2.2" -"react-i18next": "^13.5.0" => "^14.0.5" +"immutable": "^3.8.2" => "^4.3.6" +"reselect": "^2.5.4" => "^5.1.1" +"@storybook/addon-actions": "^7.6.19" => "^8.1.6" +"@testing-library/react": "^14.3.1" => "^16.0.0" +"msw": "^1.3.3" => "^2.3.1" +"react-i18next": "^13.5.0" => "^14.1.2" check versions of packages/dataviz/package.json using latest -"@cypress/react": "^7.0.3" => "^8.0.0" -"@types/node": "^6.14.13" => "^20.11.21" -"react-i18next": "^13.5.0" => "^14.0.5" +"@cypress/react": "^7.0.3" => "^8.0.2" +"@testing-library/react": "^14.3.1" => "^16.0.0" +"@types/node": "^6.14.13" => "^20.14.2" +"react-i18next": "^13.5.0" => "^14.1.2" check versions of packages/design-docs/package.json using latest +"@storybook/blocks": "^7.6.19" => "^8.1.6" +"@storybook/react": "^7.6.19" => "^8.1.6" +"figma-js": "^1.16.0" => "^1.16.1-0" "pkg-dir": "^7.0.0" => "^8.0.0" -"react-router-dom": "~6.3.0" => "^6.22.1" +"@storybook/addon-a11y": "^7.6.19" => "^8.1.6" +"@storybook/addon-actions": "^7.6.19" => "^8.1.6" +"@storybook/addon-essentials": "^7.6.19" => "^8.1.6" +"@storybook/addon-interactions": "^7.6.19" => "^8.1.6" +"@storybook/addon-links": "^7.6.19" => "^8.1.6" +"@storybook/addons": "^7.6.19" => "^7.6.17" +"@storybook/core-events": "^7.6.19" => "^8.1.6" +"@storybook/theming": "^7.6.19" => "^8.1.6" +"react-router-dom": "~6.3.0" => "^6.23.1" check versions of packages/design-system/package.json using latest -"@floating-ui/react": "^0.24.8" => "^0.26.9" +"@floating-ui/react": "^0.24.8" => "^0.26.16" "react-transition-group": "^2.9.0" => "^4.4.5" -"@cypress/react": "^7.0.3" => "^8.0.0" +"@cypress/react": "^7.0.3" => "^8.0.2" +"@storybook/addon-a11y": "^7.6.19" => "^8.1.6" +"@storybook/addon-actions": "^7.6.19" => "^8.1.6" +"@storybook/addon-essentials": "^7.6.19" => "^8.1.6" +"@storybook/addon-interactions": "^7.6.19" => "^8.1.6" +"@storybook/addon-links": "^7.6.19" => "^8.1.6" +"@storybook/addons": "^7.6.19" => "^7.6.17" +"@storybook/blocks": "^7.6.19" => "^8.1.6" +"@storybook/core-events": "^7.6.19" => "^8.1.6" +"@storybook/react": "^7.6.19" => "^8.1.6" +"@storybook/theming": "^7.6.19" => "^8.1.6" "@svgr/webpack": "^5.5.0" => "^8.1.0" "@types/react-transition-group": "^2.9.2" => "^4.4.10" "browser-sync": "^2.29.3" => "^3.0.2" -"react-i18next": "^13.5.0" => "^14.0.5" -"react-is": "^17.0.2" => "^18.2.0" -"react-router-dom": "~6.3.0" => "^6.22.1" +"jest-axe": "^8.0.0" => "^9.0.0" +"react-i18next": "^13.5.0" => "^14.1.2" +"react-is": "^17.0.2" => "^18.3.1" +"react-router-dom": "~6.3.0" => "^6.23.1" check versions of packages/design-tokens/package.json using latest check versions of packages/faceted-search/package.json using latest -"react-i18next": "^13.5.0" => "^14.0.5" +"@storybook/addon-actions": "^7.6.19" => "^8.1.6" +"@testing-library/react": "^14.3.1" => "^16.0.0" +"react-i18next": "^13.5.0" => "^14.1.2" check versions of packages/flow-designer/package.json using latest -"@types/node": "^6.14.13" => "^20.11.21" -"immutable": "^3.8.2" => "^5.0.0-beta.5" -"react-i18next": "^13.5.0" => "^14.0.5" -"react-redux": "^7.2.9" => "^9.1.0" +"@testing-library/react": "^14.3.1" => "^16.0.0" +"@types/node": "^6.14.13" => "^20.14.2" +"immutable": "^3.8.2" => "^4.3.6" +"react-i18next": "^13.5.0" => "^14.1.2" +"react-redux": "^7.2.9" => "^9.1.2" "redux": "^4.2.1" => "^5.0.1" "redux-thunk": "^2.4.2" => "^3.1.0" -"reselect": "^4.1.8" => "^5.1.0" +"reselect": "^4.1.8" => "^5.1.1" check versions of packages/forms/package.json using latest -"ace-builds": "1.10.1" => "^1.32.6" -"ajv": "^6.12.6" => "^8.12.0" +"ace-builds": "1.10.1" => "^1.35.0" +"ajv": "^6.12.6" => "^8.16.0" "react-autowhatever": "10.2.0" => "^10.2.1" +"react-ace": "10.1.0" => "^11.0.1" "react-jsonschema-form": "0.51.0" => "^1.8.1" -"react-i18next": "^13.5.0" => "^14.0.5" +"@storybook/addon-actions": "^7.6.19" => "^8.1.6" +"@storybook/addon-controls": "^7.6.19" => "^8.1.6" +"@testing-library/react": "^14.3.1" => "^16.0.0" +"react-i18next": "^13.5.0" => "^14.1.2" check versions of packages/http/package.json using latest "node-fetch": "^2.7.0" => "^3.3.2" @@ -99,63 +136,73 @@ check versions of packages/http/package.json using latest check versions of packages/icons/package.json using latest "@svgr/webpack": "^5.5.0" => "^8.1.0" "copy-webpack-plugin": "^11.0.0" => "^12.0.2" -"css-loader": "^4.3.0" => "^6.10.0" +"css-loader": "^4.3.0" => "^7.1.2" "mkdirp": "^1.0.4" => "^3.0.1" "string-replace-loader": "^2.3.0" => "^3.1.0" -"style-loader": "^1.3.0" => "^3.3.4" -"svgo": "^1.3.2" => "^3.2.0" +"style-loader": "^1.3.0" => "^4.0.0" +"svgo": "^1.3.2" => "^3.3.2" "webpack-cli": "^4.10.0" => "^5.1.4" -check versions of packages/jsfc/package.json using latest -"objectpath": "^1.2.2" => "^2.0.0" -"@types/chai": "^3.5.2" => "^4.3.12" -"@types/node": "^6.14.13" => "^20.11.21" -"rimraf": "^3.0.2" => "^5.0.5" - check versions of packages/local-libs-webpack-plugin/package.json using latest +check versions of packages/playground-vite/package.json using latest +"react-i18next": "^13.5.0" => "^14.1.2" +"body-parser": "1.20.1" => "^1.20.2" +"copy-webpack-plugin": "^11.0.0" => "^12.0.2" +"i18next-http-backend": "^1.4.5" => "^2.5.2" + check versions of packages/playground/package.json using latest -"react-i18next": "^13.5.0" => "^14.0.5" +"react-i18next": "^13.5.0" => "^14.1.2" "body-parser": "1.20.1" => "^1.20.2" "copy-webpack-plugin": "^11.0.0" => "^12.0.2" -"i18next-http-backend": "^1.4.5" => "^2.5.0" +"i18next-http-backend": "^1.4.5" => "^2.5.2" check versions of packages/router-bridge/package.json using latest -"react-router-dom": "~6.3.0" => "^6.22.1" +"react-router-dom": "~6.3.0" => "^6.23.1" check versions of packages/sagas/package.json using latest -"immutable": "^3.8.2" => "^5.0.0-beta.5" +"immutable": "^3.8.2" => "^4.3.6" check versions of packages/stepper/package.json using latest "@trivago/prettier-plugin-sort-imports": "^3.4.0" => "^4.3.0" -"immutable": "^3.8.2" => "^5.0.0-beta.5" -"jsdom": "^20.0.3" => "^24.0.0" -"react-i18next": "^13.5.0" => "^14.0.5" -"react-redux": "^7.2.9" => "^9.1.0" +"immutable": "^3.8.2" => "^4.3.6" +"jsdom": "^20.0.3" => "^24.1.0" +"react-i18next": "^13.5.0" => "^14.1.2" +"react-redux": "^7.2.9" => "^9.1.2" "react-transition-group": "^2.9.0" => "^4.4.5" check versions of packages/storybook-cmf/package.json using latest -"react-redux": "^7.2.9" => "^9.1.0" +"@testing-library/react": "^14.3.1" => "^16.0.0" +"react-redux": "^7.2.9" => "^9.1.2" check versions of packages/storybook-docs/package.json using latest -"@types/node": "^6.14.13" => "^20.11.21" -"css-loader": "^4.3.0" => "^6.10.0" +"@storybook/blocks": "^7.6.19" => "^8.1.6" +"@storybook/react": "^7.6.19" => "^8.1.6" +"figma-js": "^1.16.0" => "^1.16.1-0" +"@types/node": "^6.14.13" => "^20.14.2" +"css-loader": "^4.3.0" => "^7.1.2" "postcss-loader": "^7.3.4" => "^8.1.1" -"sass-loader": "^13.3.3" => "^14.1.1" "webpack-cli": "^4.10.0" => "^5.1.4" check versions of packages/storybook-one/package.json using latest "pkg-dir": "^7.0.0" => "^8.0.0" -"react-router-dom": "~6.3.0" => "^6.22.1" +"@storybook/addon-a11y": "^7.6.19" => "^8.1.6" +"@storybook/addon-actions": "^7.6.19" => "^8.1.6" +"@storybook/addon-essentials": "^7.6.19" => "^8.1.6" +"@storybook/addon-interactions": "^7.6.19" => "^8.1.6" +"@storybook/addon-links": "^7.6.19" => "^8.1.6" +"@storybook/addons": "^7.6.19" => "^7.6.17" +"@storybook/core-events": "^7.6.19" => "^8.1.6" +"@storybook/theming": "^7.6.19" => "^8.1.6" +"react-router-dom": "~6.3.0" => "^6.23.1" check versions of packages/theme/package.json using latest "copy-webpack-plugin": "^11.0.0" => "^12.0.2" -"css-minimizer-webpack-plugin": "^5.0.1" => "^6.0.0" -"css-loader": "^4.3.0" => "^6.10.0" +"css-minimizer-webpack-plugin": "^5.0.1" => "^7.0.0" +"css-loader": "^4.3.0" => "^7.1.2" "postcss-loader": "^7.3.4" => "^8.1.1" -"postcss-preset-env": "^7.8.3" => "^9.4.0" -"rimraf": "^3.0.2" => "^5.0.5" -"sass-loader": "^13.3.3" => "^14.1.1" +"postcss-preset-env": "^7.8.3" => "^9.5.14" +"style-loader": "^3.3.4" => "^4.0.0" "webpack-cli": "^4.10.0" => "^5.1.4" check versions of packages/utils/package.json using latest @@ -163,45 +210,55 @@ check versions of packages/utils/package.json using latest check versions of tools/babel-plugin-assets-api/package.json using latest "read-pkg-up": "^7.0.1" => "^11.0.0" "babel-plugin-tester": "^10.1.0" => "^11.0.4" +"eslint": "^8.57.0" => "^9.4.0" check versions of tools/babel-plugin-import-d3/package.json using latest "babel-plugin-tester": "^10.1.0" => "^11.0.4" check versions of tools/babel-plugin-import-from-index/package.json using latest "babel-plugin-tester": "^10.1.0" => "^11.0.4" +"eslint": "^8.57.0" => "^9.4.0" check versions of tools/babel-plugin-import-from-lib/package.json using latest "babel-plugin-tester": "^10.1.0" => "^11.0.4" check versions of tools/cmf-webpack-plugin/package.json using latest +"eslint": "^8.57.0" => "^9.4.0" check versions of tools/cypress-api-mock-plugin/package.json using latest check versions of tools/eslint-plugin/package.json using latest +"eslint": "^8.57.0" => "^9.4.0" check versions of tools/scripts-build-cdn/package.json using latest -"commander": "^6.2.1" => "^12.0.0" +"commander": "^6.2.1" => "^12.1.0" "cpx2": "^3.0.2" => "^7.0.1" -"execa": "^4.1.0" => "^8.0.1" +"execa": "^4.1.0" => "^9.2.0" "mkdirp": "^1.0.4" => "^3.0.1" "queue": "^6.0.2" => "^7.0.0" -"rimraf": "^3.0.2" => "^5.0.5" "webpack-cli": "^4.10.0" => "^5.1.4" check versions of tools/scripts-cmf/package.json using latest -"commander": "^6.2.1" => "^12.0.0" +"commander": "^6.2.1" => "^12.1.0" "deepmerge": "^1.5.2" => "^4.3.1" "mkdirp": "^1.0.4" => "^3.0.1" +"eslint": "^8.57.0" => "^9.4.0" check versions of tools/scripts-config-babel/package.json using latest "babel-core": "^7.0.0-bridge.0" => "^6.26.3" +"eslint": "^8.57.0" => "^9.4.0" check versions of tools/scripts-config-cdn/package.json using latest "read-pkg-up": "^7.0.1" => "^11.0.0" +"eslint": "^8.57.0" => "^9.4.0" check versions of tools/scripts-config-eslint/package.json using latest -"@typescript-eslint/parser": "^6.21.0" => "^7.1.0" -"@typescript-eslint/eslint-plugin": "^6.21.0" => "^7.1.0" +"@testing-library/dom": "^9.3.4" => "^10.1.0" +"@typescript-eslint/parser": "^6.21.0" => "^7.13.0" +"@typescript-eslint/eslint-plugin": "^6.21.0" => "^7.13.0" +"eslint": "^8.57.0" => "^9.4.0" +"eslint-config-airbnb-typescript": "^17.1.0" => "^18.0.0" +"eslint-plugin-cypress": "^2.15.2" => "^3.3.0" "eslint-plugin-mdx": "^2.3.4" => "^3.1.5" "eslint-plugin-storybook": "^0.6.15" => "^0.8.0" @@ -210,70 +267,87 @@ check versions of tools/scripts-config-jest/package.json using latest check versions of tools/scripts-config-prettier/package.json using latest "@trivago/prettier-plugin-sort-imports": "^3.4.0" => "^4.3.0" +"eslint": "^8.57.0" => "^9.4.0" check versions of tools/scripts-config-react-webpack/package.json using latest -"@sentry/webpack-plugin": "^1.21.0" => "^2.14.2" +"@sentry/webpack-plugin": "^1.21.0" => "^2.18.0" "@welldone-software/why-did-you-render": "^7.0.1" => "^8.0.1" "copy-webpack-plugin": "^11.0.0" => "^12.0.2" -"css-loader": "^4.3.0" => "^6.10.0" +"css-loader": "^4.3.0" => "^7.1.2" "postcss-loader": "^7.3.4" => "^8.1.1" "postcss-safe-parser": "^6.0.0" => "^7.0.0" "regenerator-runtime": "^0.13.11" => "^0.14.1" -"sass-loader": "^13.3.3" => "^14.1.1" "source-map-loader": "^4.0.2" => "^5.0.0" +"style-loader": "^3.3.4" => "^4.0.0" "svg64": "^1.2.0" => "^2.0.0" "webpack-cli": "^4.10.0" => "^5.1.4" -"webpack-dev-server": "^4.15.1" => "^5.0.2" +"webpack-dev-server": "^4.15.2" => "^5.0.4" check versions of tools/scripts-config-storybook-lib/package.json using latest -"i18next-http-backend": "^1.4.5" => "^2.5.0" -"msw": "^1.3.2" => "^2.2.2" +"@storybook/addon-a11y": "^7.6.19" => "^8.1.6" +"@storybook/addon-essentials": "^7.6.19" => "^8.1.6" +"@storybook/addon-interactions": "^7.6.19" => "^8.1.6" +"@storybook/addon-links": "^7.6.19" => "^8.1.6" +"@storybook/addon-storysource": "^7.6.19" => "^8.1.6" +"@storybook/source-loader": "^7.6.19" => "^8.1.6" +"@storybook/react": "^7.6.19" => "^8.1.6" +"@storybook/react-webpack5": "^7.6.19" => "^8.1.6" +"i18next-http-backend": "^1.4.5" => "^2.5.2" +"msw": "^1.3.3" => "^2.3.1" +"msw-storybook-addon": "^1.10.0" => "^2.0.2" +"storybook": "^7.6.19" => "^8.1.6" check versions of tools/scripts-config-stylelint/package.json using latest -"stylelint": "^15.11.0" => "^16.2.1" -"stylelint-config-sass-guidelines": "^10.0.0" => "^11.0.0" +"stylelint": "^15.11.0" => "^16.6.1" +"stylelint-config-sass-guidelines": "^10.0.0" => "^11.1.0" "stylelint-config-standard": "^34.0.0" => "^36.0.0" check versions of tools/scripts-config-typescript/package.json using latest check versions of tools/scripts-core/package.json using latest -"stylelint": "^15.11.0" => "^16.2.1" +"stylelint": "^15.11.0" => "^16.6.1" "cpx2": "^3.0.2" => "^7.0.1" "fs-extra": "^10.1.0" => "^11.2.0" -"rimraf": "^3.0.2" => "^5.0.5" "yargs": "^15.4.1" => "^17.7.2" check versions of tools/scripts-locales/package.json using latest check versions of tools/scripts-publish-local/package.json using latest -"rimraf": "^3.0.2" => "^5.0.5" check versions of tools/scripts-teorem/package.json using latest -"@octokit/rest": "^18.12.0" => "^20.0.2" -"commander": "^6.2.1" => "^12.0.0" +"@octokit/rest": "^18.12.0" => "^20.1.1" +"commander": "^6.2.1" => "^12.1.0" "dotenv": "^8.6.0" => "^16.4.5" "mkdirp": "^1.0.4" => "^3.0.1" "queue": "^6.0.2" => "^7.0.0" check versions of tools/scripts-utils/package.json using latest "fs-extra": "^10.1.0" => "^11.2.0" -"glob": "^8.1.0" => "^10.3.10" +"glob": "^8.1.0" => "^10.4.1" "which": "^2.0.2" => "^4.0.0" +"eslint": "^8.57.0" => "^9.4.0" check versions of tools/scripts-yarn-workspace/package.json using latest check versions of tools/upgrade-deps/package.json using latest check versions of fork/bootstrap-sass/package.json using latest +"eslint": "^8.57.0" => "^9.4.0" check versions of fork/dynamic-cdn-webpack-plugin/package.json using latest "read-pkg-up": "^7.0.1" => "^11.0.0" -"rimraf": "^3.0.2" => "^5.0.5" +"eslint": "^8.57.0" => "^9.4.0" "webpack-cli": "^4.10.0" => "^5.1.4" +check versions of fork/json-schema-form-core/package.json using latest +"objectpath": "^1.2.2" => "^2.0.0" +"@types/chai": "^3.5.2" => "^4.3.16" +"@types/node": "^6.14.13" => "^20.14.2" + check versions of fork/module-to-cdn/package.json using latest -"execa": "^4.1.0" => "^8.0.1" +"execa": "^4.1.0" => "^9.2.0" "mkdirp": "^1.0.4" => "^3.0.1" +"eslint": "^8.57.0" => "^9.4.0" check versions of fork/react-bootstrap/package.json using latest "dom-helpers": "^3.4.0" => "^5.2.1" @@ -281,7 +355,8 @@ check versions of fork/react-bootstrap/package.json using latest "react-transition-group": "^2.9.0" => "^4.4.5" "uncontrollable": "^7.2.1" => "^8.0.4" "warning": "^3.0.0" => "^4.0.3" -"chai": "^4.4.1" => "^5.1.0" +"@testing-library/react": "^14.3.1" => "^16.0.0" +"chai": "^4.4.1" => "^5.1.1" "chalk": "^2.4.2" => "^5.3.0" -"sinon": "^11.1.2" => "^17.0.1" -Done in 161.55s. +"sinon": "^11.1.2" => "^18.0.0" +Done in 149.50s. diff --git a/docs/adr-2024-04-add-support-to-esm.md b/docs/adr-2024-04-add-support-to-esm.md new file mode 100644 index 0000000000..a714cebbdd --- /dev/null +++ b/docs/adr-2024-04-add-support-to-esm.md @@ -0,0 +1,41 @@ +# ADR: Add support to ECMAScript Modules (ESM) + +## Context + +Our build and bundling setup currently uses CommonJS modules along with webpack and the dynamic-cdn-webpack-plugin. + +To streamline our development workflow and reduce complexity, we are transitioning from yarn to pnpm. + +However, it has been identified that pnpm is not compatible with dynamic-cdn-webpack-plugin. This incompatibility, along with the decision to remove the plugin, has resulted in a degradation of the developer experience, primarily through increased build times. + +At the same time, the entire frontend world is moving towards ECMAScript Modules (ESM). + +Modern browsers that our customers use now support ESM natively. + +All existing frameworks are now relying on Vite for the build process, which, under the hood, relies on ESM. + +Therefore, having to configure a complex toolchain is becoming obsolete. Given this changing context, we can reevaluate our decisions around the "talend-scripts build\*" toolchain. + +## Problem + +The transition from yarn to pnpm has uncovered an incompatibility with dynamic-cdn-webpack-plugin, exacerbating the decision to discontinue using this plugin. + +This has adversely impacted the developer experience by elongating the build times, a significant concern as it can hinder our overall productivity and agility. + +## Decision + +Our packages must export ESM to be futur proof and let us use modern tooling like vite or parcel. + +## Alternatives Considered + +- **Sticking with webpack and dynamic-cdn-webpack-plugin**: This was initially considered to maintain our current setup and avoid the complexities associated with migration. However, given the incompatibility with pnpm and the underlying issues related to complexity and inefficiency in build times, this option was deemed unsuitable. + +- **Switching to another build tool without adopting ESM**: Several other build tools could potentially improve build times. However, without addressing the fundamental shift towards ESM in the JavaScript ecosystem, this would be a short-term fix rather than a long-term solution. + +- **Migrating to Vite while keeping our packages in CommonJS**: This alternative involves moving to Vite for its development speed advantages but not converting our packages to ESM. While this approach could reduce the immediate workload and avoid potential issues with third-party CommonJS dependencies, it would limit our ability to fully leverage Vite’s capabilities. Vite is optimized for ESM, and using CommonJS may result in suboptimal build performance and hinder live module reloading, affecting developer experience and potentially leading to more complex configurations. + +## Consequences + +- **Positive**: Moving to ESM and adopting Vite is expected to reduce build times, enhancing developer experience and productivity. It aligns our development practices with the modern JavaScript ecosystem's move towards ESM. +- **Negative**: The migration from CommonJS to ESM syntax could require significant effort. It might also temporarily disrupt our development workflow and necessitate additional training for developers not yet familiar with ESM or Vite. +- **Risks**: There is a risk of encountering third-party libraries not yet compatible with ESM, which could complicate the migration process. diff --git a/fork/bootstrap-sass/CHANGELOG.md b/fork/bootstrap-sass/CHANGELOG.md index 1b982c1339..aa7ef491ee 100644 --- a/fork/bootstrap-sass/CHANGELOG.md +++ b/fork/bootstrap-sass/CHANGELOG.md @@ -1,5 +1,13 @@ # Changelog +## 5.3.0 + +### Minor Changes + +- c3750a1: chore: upgrade dependencies + + Major upgrade for all packages that have a peerDependency on react or react-dom. Those packages now ask for react@18 and react-dom@18. + ## 5.2.1 ### Patch Changes diff --git a/fork/bootstrap-sass/package.json b/fork/bootstrap-sass/package.json index 438a6dc418..d5133004d7 100644 --- a/fork/bootstrap-sass/package.json +++ b/fork/bootstrap-sass/package.json @@ -1,6 +1,6 @@ { "name": "@talend/bootstrap-sass", - "version": "5.2.1", + "version": "5.3.0", "description": "bootstrap-sass is a Sass-powered version of Bootstrap 3, ready to drop right into your Sass powered applications.", "main": "assets/javascripts/bootstrap.js", "style": "assets/stylesheets/_bootstrap.scss", @@ -40,8 +40,8 @@ "access": "public" }, "devDependencies": { - "@talend/eslint-config": "^13.0.3", - "@talend/eslint-plugin": "^1.1.1", + "@talend/eslint-config": "^13.2.0", + "@talend/eslint-plugin": "^1.3.0", "eslint": "^8.57.0" } } diff --git a/fork/dynamic-cdn-webpack-plugin/CHANGELOG.md b/fork/dynamic-cdn-webpack-plugin/CHANGELOG.md index 596f65f0fc..81a0732d09 100644 --- a/fork/dynamic-cdn-webpack-plugin/CHANGELOG.md +++ b/fork/dynamic-cdn-webpack-plugin/CHANGELOG.md @@ -1,5 +1,18 @@ # CHANGELOG +## 14.0.0 + +### Major Changes + +- c3750a1: chore: upgrade dependencies + + Major upgrade for all packages that have a peerDependency on react or react-dom. Those packages now ask for react@18 and react-dom@18. + +### Patch Changes + +- Updated dependencies [c3750a1] + - @talend/module-to-cdn@9.11.0 + ## 13.1.2 ### Patch Changes diff --git a/fork/dynamic-cdn-webpack-plugin/package.json b/fork/dynamic-cdn-webpack-plugin/package.json index 4a5254fb49..8c3f8cedfa 100644 --- a/fork/dynamic-cdn-webpack-plugin/package.json +++ b/fork/dynamic-cdn-webpack-plugin/package.json @@ -1,6 +1,6 @@ { "name": "@talend/dynamic-cdn-webpack-plugin", - "version": "13.1.2", + "version": "14.0.0", "description": "Dynamically get your dependencies from a cdn rather than bundling them in your app", "license": "MIT", "repository": "Talend/dynamic-cdn-webpack-plugin", @@ -36,24 +36,24 @@ "externals" ], "dependencies": { - "@talend/module-to-cdn": "^9.10.1", + "@talend/module-to-cdn": "^9.11.0", "read-pkg-up": "^7.0.1", - "semver": "^7.6.0", + "semver": "^7.6.2", "webpack-sources": "^3.2.3" }, "peerDependencies": { - "webpack": "^5.90.3" + "webpack": "^5.92.0" }, "devDependencies": { - "@babel/eslint-parser": "^7.23.10", + "@babel/eslint-parser": "^7.24.7", "all-contributors-cli": "^6.26.1", "codecov": "^3.8.3", "eslint": "^8.57.0", "html-webpack-plugin": "^5.6.0", "jest": "^29.7.0", "mz": "^2.7.0", - "rimraf": "^5.0.5", - "webpack": "^5.90.3", + "rimraf": "^5.0.7", + "webpack": "^5.92.0", "webpack-cli": "^4.10.0", "webpack-manifest-plugin": "^5.0.0" }, diff --git a/fork/json-schema-form-core/CHANGELOG.md b/fork/json-schema-form-core/CHANGELOG.md index e13a97c212..135d9eb5a9 100644 --- a/fork/json-schema-form-core/CHANGELOG.md +++ b/fork/json-schema-form-core/CHANGELOG.md @@ -1,5 +1,25 @@ # @talend/json-schema-form-core +## 1.4.1 + +### Patch Changes + +- f321a0d: Remove unused tsconfig.esm.json (initially added to use TSC but we stay with babel at the end) + +## 1.4.0 + +### Minor Changes + +- c3750a1: chore: upgrade dependencies + + Major upgrade for all packages that have a peerDependency on react or react-dom. Those packages now ask for react@18 and react-dom@18. + +## 1.3.0 + +### Minor Changes + +- 3bd16fc: Add support to ESM + ## 1.2.7 ### Patch Changes diff --git a/fork/json-schema-form-core/package.json b/fork/json-schema-form-core/package.json index 3380fe6554..a6881c4720 100644 --- a/fork/json-schema-form-core/package.json +++ b/fork/json-schema-form-core/package.json @@ -1,11 +1,18 @@ { "name": "@talend/json-schema-form-core", - "version": "1.2.7", + "version": "1.4.1", "description": "JSON-Schema and JSON-UI-Schema utilities for form generation.", "main": "dist/index.js", - "mainSrc": "src/index.js", + "module": "./lib-esm/index.js", + "exports": { + ".": { + "import": "./lib-esm/index.js", + "require": "./dist/index.js" + } + }, "scripts": { "build:lib": "rimraf dist && talend-scripts build --umd", + "build:lib:esm": "talend-scripts build --esm", "watch": "webpack --watch", "dist-untested": "webpack --config webpack.config.dist.js", "test:cov": "npm run test", @@ -39,17 +46,17 @@ "json-schema" ], "devDependencies": { - "@talend/babel-plugin-assets-api": "^1.3.1", - "@talend/babel-plugin-import-from-index": "^1.7.1", - "@talend/eslint-config": "^13.0.3", - "@talend/eslint-plugin": "^1.1.1", - "@talend/scripts-config-react-webpack": "^16.6.0", - "@talend/scripts-config-typescript": "^11.2.1", - "@talend/scripts-core": "^16.3.6", + "@talend/babel-plugin-assets-api": "^1.4.0", + "@talend/babel-plugin-import-from-index": "^1.8.0", + "@talend/eslint-config": "^13.2.0", + "@talend/eslint-plugin": "^1.3.0", + "@talend/scripts-config-react-webpack": "^16.8.0", + "@talend/scripts-config-typescript": "^11.3.0", + "@talend/scripts-core": "^16.5.1", "@types/chai": "^3.5.2", "@types/node": "^6.14.13", - "rimraf": "^5.0.5", - "webpack": "^5.90.3" + "rimraf": "^5.0.7", + "webpack": "^5.92.0" }, "dependencies": { "json-refs": "3.0.15", diff --git a/fork/module-to-cdn/CHANGELOG.md b/fork/module-to-cdn/CHANGELOG.md index 0a5f735abf..0a9ac93852 100644 --- a/fork/module-to-cdn/CHANGELOG.md +++ b/fork/module-to-cdn/CHANGELOG.md @@ -1,5 +1,13 @@ # @talend/module-to-cdn +## 9.11.0 + +### Minor Changes + +- c3750a1: chore: upgrade dependencies + + Major upgrade for all packages that have a peerDependency on react or react-dom. Those packages now ask for react@18 and react-dom@18. + ## 9.10.1 ### Patch Changes diff --git a/fork/module-to-cdn/package.json b/fork/module-to-cdn/package.json index 215de3808e..c0a00ef63b 100644 --- a/fork/module-to-cdn/package.json +++ b/fork/module-to-cdn/package.json @@ -1,6 +1,6 @@ { "name": "@talend/module-to-cdn", - "version": "9.10.1", + "version": "9.11.0", "description": "Get cdn config from npm module name", "license": "MIT", "repository": "https://github.com/Talend/ui", @@ -35,10 +35,10 @@ "dependencies": { "execa": "^4.1.0", "mkdirp": "^1.0.4", - "semver": "^7.6.0" + "semver": "^7.6.2" }, "devDependencies": { - "@babel/eslint-parser": "^7.23.10", + "@babel/eslint-parser": "^7.24.7", "eslint": "^8.57.0", "jest": "^29.7.0" }, diff --git a/fork/react-bootstrap/CHANGELOG.md b/fork/react-bootstrap/CHANGELOG.md index 9e30c1fe43..58e3019d5e 100644 --- a/fork/react-bootstrap/CHANGELOG.md +++ b/fork/react-bootstrap/CHANGELOG.md @@ -1,5 +1,31 @@ ## [v0.32.5] +## 3.0.2 + +### Patch Changes + +- f321a0d: Remove unused tsconfig.esm.json (initially added to use TSC but we stay with babel at the end) + +## 3.0.1 + +### Patch Changes + +- b8f7672: fix module not found error for @talend/react-bootstrap and @talend/icons + +## 3.0.0 + +### Major Changes + +- c3750a1: chore: upgrade dependencies + + Major upgrade for all packages that have a peerDependency on react or react-dom. Those packages now ask for react@18 and react-dom@18. + +## 2.3.0 + +### Minor Changes + +- 3bd16fc: Add support to ESM + ## 2.2.3 ### Patch Changes diff --git a/fork/react-bootstrap/package.json b/fork/react-bootstrap/package.json index 344b0b04e4..87a05e8794 100644 --- a/fork/react-bootstrap/package.json +++ b/fork/react-bootstrap/package.json @@ -1,6 +1,6 @@ { "name": "@talend/react-bootstrap", - "version": "2.2.3", + "version": "3.0.2", "description": "Bootstrap 3 components built with React", "repository": { "type": "git", @@ -9,9 +9,17 @@ "homepage": "https://react-bootstrap.github.io/", "sideEffects": false, "main": "lib/index.js", + "module": "./lib-esm/index.js", + "exports": { + ".": { + "import": "./lib-esm/index.js", + "require": "./lib/index.js" + } + }, "scripts": { "build:dev": "talend-scripts build --umd --dev", "build:prod": "talend-scripts build --umd --prod", + "build:lib:esm": "talend-scripts build --esm", "pre-release": "yarn build:dev && yarn build:prod", "build:lib": "talend-scripts build", "lint": "talend-scripts lint", @@ -22,6 +30,7 @@ "files": [ "CHANGELOG.md", "lib", + "lib-esm", "dist", "es" ], @@ -34,26 +43,27 @@ "author": "Stephen J. Collings ", "license": "MIT", "peerDependencies": { - "react": ">=16.3.0", - "react-dom": ">=16.3.0" + "react": "^18.3.1", + "react-dom": "^18.3.1" }, "devDependencies": { - "@talend/eslint-config": "^13.0.3", - "@talend/eslint-plugin": "^1.1.1", - "@talend/scripts-core": "^16.3.5", - "@talend/scripts-config-babel": "^13.3.1", - "@talend/scripts-config-react-webpack": "^16.6.0", - "@testing-library/jest-dom": "^6.4.2", - "@testing-library/react": "^14.2.1", + "@talend/eslint-config": "^13.2.0", + "@talend/eslint-plugin": "^1.3.0", + "@talend/scripts-config-typescript": "^11.3.0", + "@talend/scripts-core": "^16.5.1", + "@talend/scripts-config-babel": "^13.5.0", + "@talend/scripts-config-react-webpack": "^16.8.0", + "@testing-library/jest-dom": "^6.4.6", + "@testing-library/react": "^14.3.1", "@testing-library/user-event": "^14.5.2", "chai": "^4.4.1", "chalk": "^2.4.2", "create-react-class": "^15.7.0", "cross-env": "^7.0.3", "lodash": "^4.17.21", - "react": "^18.2.0", - "react-dom": "^18.2.0", - "react-test-renderer": "^18.2.0", + "react": "^18.3.1", + "react-dom": "^18.3.1", + "react-test-renderer": "^18.3.1", "sinon": "^11.1.2" }, "dependencies": { diff --git a/fork/react-bootstrap/tsconfig.json b/fork/react-bootstrap/tsconfig.json new file mode 100644 index 0000000000..3405e576ec --- /dev/null +++ b/fork/react-bootstrap/tsconfig.json @@ -0,0 +1,4 @@ +{ + "extends": "@talend/scripts-config-typescript/tsconfig.json", + "include": ["src/**/*"] +} diff --git a/package.json b/package.json index 873a69ed95..14d0879c20 100644 --- a/package.json +++ b/package.json @@ -1,22 +1,22 @@ { "devDependencies": { - "@changesets/cli": "^2.27.1", - "@talend/scripts-config-babel": "^13.3.0", - "@talend/scripts-config-prettier": "^12.1.2", - "@talend/scripts-core": "^16.3.4", - "@talend/scripts-yarn-workspace": "^2.0.1", + "@changesets/cli": "^2.27.5", + "@talend/scripts-config-babel": "^13.4.0", + "@talend/scripts-config-prettier": "^12.1.3", + "@talend/scripts-core": "^16.4.0", + "@talend/scripts-yarn-workspace": "^2.0.2", "cross-env": "^7.0.3", "cross-spawn": "^7.0.3", "eslint": "^8.57.0", "husky": "^8.0.3", "i18next-scanner": "^4.4.0", - "lint-staged": "^15.2.2", - "prettier": "^3.2.5", - "rimraf": "^5.0.5", - "typescript": "^5.3.3" + "lint-staged": "^15.2.6", + "prettier": "^3.3.2", + "rimraf": "^5.0.7", + "typescript": "^5.4.5" }, "scripts": { - "postinstall": "talend-yarn-workspace run build:lib", + "postinstall": "talend-yarn-workspace run build:lib && talend-yarn-workspace run build:lib:esm", "pre-release": "talend-yarn-workspace run pre-release", "start": "yarn workspace @talend/ui-playground run start", "start-storybook": "yarn workspace @talend/ui-storybook-one run start", diff --git a/packages/a11y/CHANGELOG.md b/packages/a11y/CHANGELOG.md index 198821c942..3976524179 100644 --- a/packages/a11y/CHANGELOG.md +++ b/packages/a11y/CHANGELOG.md @@ -1,5 +1,37 @@ # @talend/react-a11y +## 4.0.1 + +### Patch Changes + +- f321a0d: Remove unused tsconfig.esm.json (initially added to use TSC but we stay with babel at the end) +- Updated dependencies [f321a0d] + - @talend/utils@3.2.2 + +## 4.0.0 + +### Major Changes + +- c3750a1: chore: upgrade dependencies + + Major upgrade for all packages that have a peerDependency on react or react-dom. Those packages now ask for react@18 and react-dom@18. + +### Patch Changes + +- Updated dependencies [c3750a1] + - @talend/utils@3.2.0 + +## 3.1.0 + +### Minor Changes + +- 3bd16fc: Add support to ESM + +### Patch Changes + +- Updated dependencies [3bd16fc] + - @talend/utils@3.1.0 + ## 3.0.1 ### Patch Changes diff --git a/packages/a11y/package.json b/packages/a11y/package.json index ddaa362317..f83b59f97b 100644 --- a/packages/a11y/package.json +++ b/packages/a11y/package.json @@ -5,8 +5,16 @@ "mainSrc": "src/index.js", "license": "Apache-2.0", "types": "./lib/index.d.ts", + "module": "./lib-esm/index.js", + "exports": { + ".": { + "import": "./lib-esm/index.js", + "require": "./lib/index.js" + } + }, "scripts": { "build:lib": "talend-scripts build", + "build:lib:esm": "talend-scripts build --esm", "test": "talend-scripts test", "lint": "talend-scripts lint" }, @@ -24,30 +32,30 @@ "url": "https://github.com/Talend/ui.git" }, "dependencies": { - "@talend/utils": "^3.0.4" + "@talend/utils": "^3.2.2" }, "devDependencies": { - "@talend/eslint-config": "^13.0.3", - "@talend/eslint-plugin": "^1.1.1", - "@talend/scripts-core": "^16.3.5", - "@talend/scripts-config-typescript": "^11.2.1", - "@testing-library/react": "^14.2.1", + "@talend/eslint-config": "^13.2.0", + "@talend/eslint-plugin": "^1.3.0", + "@talend/scripts-core": "^16.5.1", + "@talend/scripts-config-typescript": "^11.3.0", + "@testing-library/react": "^14.3.1", "@testing-library/user-event": "^14.5.2", "@types/date-fns": "^2.6.0", "@types/jest": "^29.5.12", - "@types/react": "^18.2.60", - "@types/react-dom": "^18.2.19", - "date-fns": "^3.3.1", + "@types/react": "^18.3.3", + "@types/react-dom": "^18.3.0", + "date-fns": "^3.6.0", "jest-in-case": "^1.0.2", - "react": "^18.2.0", - "react-dom": "^18.2.0" + "react": "^18.3.1", + "react-dom": "^18.3.1" }, "peerDependencies": { - "react": ">= 16.14.0", - "react-dom": ">= 16.14.0" + "react": "^18.3.1", + "react-dom": "^18.3.1" }, "publishConfig": { "access": "public" }, - "version": "3.0.1" + "version": "4.0.1" } diff --git a/packages/assets-api/CHANGELOG.md b/packages/assets-api/CHANGELOG.md index 5d61dc0c2e..5c5d1d37b3 100644 --- a/packages/assets-api/CHANGELOG.md +++ b/packages/assets-api/CHANGELOG.md @@ -1,5 +1,25 @@ # @talend/assets-api +## 1.5.1 + +### Patch Changes + +- f321a0d: Remove unused tsconfig.esm.json (initially added to use TSC but we stay with babel at the end) + +## 1.5.0 + +### Minor Changes + +- c3750a1: chore: upgrade dependencies + + Major upgrade for all packages that have a peerDependency on react or react-dom. Those packages now ask for react@18 and react-dom@18. + +## 1.4.0 + +### Minor Changes + +- 3bd16fc: Add support to ESM + ## 1.3.2 ### Patch Changes diff --git a/packages/assets-api/package.json b/packages/assets-api/package.json index 8d7efc6110..1438509fb9 100644 --- a/packages/assets-api/package.json +++ b/packages/assets-api/package.json @@ -3,11 +3,18 @@ "description": "A set of API designed to access assets using CDN", "types": "lib/index.d.ts", "main": "lib/index.js", - "mainSrc": "src/index.ts", + "module": "./lib-esm/index.js", + "exports": { + ".": { + "import": "./lib-esm/index.js", + "require": "./lib/index.js" + } + }, "license": "Apache-2.0", "scripts": { "pre-release": "talend-scripts build --umd && talend-scripts build --umd --dev", "build:lib": "talend-scripts build", + "build:lib:esm": "talend-scripts build --esm", "start": "echo nothing to start", "test": "talend-scripts test", "test:watch": "talend-scripts test --watch", @@ -28,12 +35,12 @@ }, "dependencies": {}, "devDependencies": { - "@talend/babel-plugin-import-from-index": "^1.7.1", - "@talend/eslint-config": "^13.0.3", - "@talend/eslint-plugin": "^1.1.1", - "@talend/scripts-core": "^16.3.5", - "@talend/scripts-config-react-webpack": "^16.5.1", - "@talend/scripts-config-typescript": "^11.2.1", + "@talend/babel-plugin-import-from-index": "^1.8.0", + "@talend/eslint-config": "^13.2.0", + "@talend/eslint-plugin": "^1.3.0", + "@talend/scripts-core": "^16.5.1", + "@talend/scripts-config-react-webpack": "^16.8.0", + "@talend/scripts-config-typescript": "^11.3.0", "@types/node": "^6.14.13", "@types/jest": "^29.5.12", "read-pkg-up": "^7.0.1" @@ -41,5 +48,5 @@ "publishConfig": { "access": "public" }, - "version": "1.3.2" + "version": "1.5.1" } diff --git a/packages/cmf-cqrs/CHANGELOG.md b/packages/cmf-cqrs/CHANGELOG.md index 7c478f1dc3..9ab9f95710 100644 --- a/packages/cmf-cqrs/CHANGELOG.md +++ b/packages/cmf-cqrs/CHANGELOG.md @@ -1,5 +1,26 @@ # @talend/react-cmf-cqrs +## 11.0.0 + +### Major Changes + +- c3750a1: chore: upgrade dependencies + + Major upgrade for all packages that have a peerDependency on react or react-dom. Those packages now ask for react@18 and react-dom@18. + +### Patch Changes + +- Updated dependencies [c3750a1] + - @talend/react-cmf@10.0.0 + - @talend/utils@3.2.0 + +## 10.1.4 + +### Patch Changes + +- Updated dependencies [e48ae5f] + - @talend/react-cmf@9.0.0 + ## 10.1.3 ### Patch Changes diff --git a/packages/cmf-cqrs/package.json b/packages/cmf-cqrs/package.json index a1f986c362..579af4e7c8 100644 --- a/packages/cmf-cqrs/package.json +++ b/packages/cmf-cqrs/package.json @@ -32,33 +32,33 @@ }, "homepage": "https://github.com/Talend/ui/cmf-cqrs#readme", "dependencies": { - "@talend/react-cmf": "^8.4.1", - "@talend/utils": "^3.0.4", + "@talend/react-cmf": "^10.0.0", + "@talend/utils": "^3.2.0", "immutable": "^3.8.2", "redux-saga": "^1.3.0" }, "devDependencies": { - "@talend/eslint-config": "^13.0.3", - "@talend/eslint-plugin": "^1.1.1", - "@talend/scripts-core": "^16.3.5", - "@talend/scripts-config-babel": "^13.3.1", - "@talend/scripts-config-react-webpack": "^16.5.1", - "@talend/scripts-config-typescript": "^11.2.1", - "@testing-library/react": "^14.2.1", + "@talend/eslint-config": "^13.2.0", + "@talend/eslint-plugin": "^1.3.0", + "@talend/scripts-core": "^16.5.0", + "@talend/scripts-config-babel": "^13.5.0", + "@talend/scripts-config-react-webpack": "^16.8.0", + "@talend/scripts-config-typescript": "^11.3.0", + "@testing-library/react": "^14.3.1", "@testing-library/react-hooks": "^8.0.1", "mock-socket": "^9.3.1", "prop-types": "^15.8.1", - "react": "^18.2.0", - "react-dom": "^18.2.0", + "react": "^18.3.1", + "react-dom": "^18.3.1", "redux-mock-store": "^1.5.4" }, "peerDependencies": { "prop-types": "^15.5.10", - "react": ">= 16.14.0", - "react-dom": ">= 16.14.0" + "react": "^18.3.1", + "react-dom": "^18.3.1" }, "publishConfig": { "access": "public" }, - "version": "10.1.3" + "version": "11.0.0" } diff --git a/packages/cmf-router/CHANGELOG.md b/packages/cmf-router/CHANGELOG.md index 0a05a996b4..148391f5f1 100644 --- a/packages/cmf-router/CHANGELOG.md +++ b/packages/cmf-router/CHANGELOG.md @@ -1,5 +1,44 @@ # Changelog +## 7.0.1 + +### Patch Changes + +- f321a0d: Remove unused tsconfig.esm.json (initially added to use TSC but we stay with babel at the end) +- Updated dependencies [f321a0d] + - @talend/react-cmf@10.0.1 + +## 7.0.0 + +### Major Changes + +- c3750a1: chore: upgrade dependencies + + Major upgrade for all packages that have a peerDependency on react or react-dom. Those packages now ask for react@18 and react-dom@18. + +### Patch Changes + +- Updated dependencies [c3750a1] + - @talend/react-cmf@10.0.0 + +## 6.2.0 + +### Minor Changes + +- 3bd16fc: Add support to ESM + +### Patch Changes + +- Updated dependencies [3bd16fc] + - @talend/react-cmf@9.1.0 + +## 6.1.3 + +### Patch Changes + +- Updated dependencies [e48ae5f] + - @talend/react-cmf@9.0.0 + ## 6.1.2 ### Patch Changes diff --git a/packages/cmf-router/package.json b/packages/cmf-router/package.json index e009cf5727..f085dbce92 100644 --- a/packages/cmf-router/package.json +++ b/packages/cmf-router/package.json @@ -1,13 +1,21 @@ { "name": "@talend/react-cmf-router", - "version": "6.1.2", + "version": "7.0.1", "description": "", "main": "lib/index.js", + "module": "./lib-esm/index.js", + "exports": { + ".": { + "import": "./lib-esm/index.js", + "require": "./lib/index.js" + } + }, "author": "Talend Frontend (http://www.talend.com)", "license": "Apache-2.0", "scripts": { "build:dev": "talend-scripts build --umd --dev", "build:prod": "talend-scripts build --umd --prod", + "build:lib:esm": "talend-scripts build --esm", "pre-release": "yarn build:dev && yarn build:prod", "build:lib": "talend-scripts build", "start": "echo nothing to start", @@ -17,11 +25,11 @@ "lint": "talend-scripts lint" }, "dependencies": { - "@talend/react-cmf": "^8.4.1", + "@talend/react-cmf": "^10.0.1", "connected-react-router": "^6.9.3", "history": "^5.3.0", "lodash": "^4.17.21", - "path-to-regexp": "^6.2.1", + "path-to-regexp": "^6.2.2", "prop-types": "^15.8.1", "react-redux": "^7.2.9", "react-router": "~6.3.0", @@ -29,18 +37,19 @@ "redux-saga": "^1.3.0" }, "peerDependencies": { - "react": ">= 16.14.0", - "react-dom": ">= 16.14.0" + "react": "^18.3.1", + "react-dom": "^18.3.1" }, "devDependencies": { "@redux-saga/testing-utils": "^1.1.5", - "@talend/eslint-config": "^13.0.3", - "@talend/eslint-plugin": "^1.1.1", - "@talend/scripts-core": "^16.3.5", - "@talend/scripts-config-babel": "^13.3.1", - "@talend/scripts-config-react-webpack": "^16.5.1", - "react": "^18.2.0", - "react-dom": "^18.2.0", + "@talend/eslint-config": "^13.2.0", + "@talend/eslint-plugin": "^1.3.0", + "@talend/scripts-core": "^16.5.1", + "@talend/scripts-config-babel": "^13.5.0", + "@talend/scripts-config-react-webpack": "^16.8.0", + "@talend/scripts-config-typescript": "^11.3.0", + "react": "^18.3.1", + "react-dom": "^18.3.1", "redux-saga-tester": "^1.0.874" }, "publishConfig": { diff --git a/packages/cmf-router/tsconfig.json b/packages/cmf-router/tsconfig.json new file mode 100644 index 0000000000..3405e576ec --- /dev/null +++ b/packages/cmf-router/tsconfig.json @@ -0,0 +1,4 @@ +{ + "extends": "@talend/scripts-config-typescript/tsconfig.json", + "include": ["src/**/*"] +} diff --git a/packages/cmf/CHANGELOG.md b/packages/cmf/CHANGELOG.md index da104dac13..20ae1a83af 100644 --- a/packages/cmf/CHANGELOG.md +++ b/packages/cmf/CHANGELOG.md @@ -1,5 +1,44 @@ # @talend/react-cmf +## 10.0.1 + +### Patch Changes + +- f321a0d: Remove unused tsconfig.esm.json (initially added to use TSC but we stay with babel at the end) +- Updated dependencies [f321a0d] + - @talend/utils@3.2.2 + +## 10.0.0 + +### Major Changes + +- c3750a1: chore: upgrade dependencies + + Major upgrade for all packages that have a peerDependency on react or react-dom. Those packages now ask for react@18 and react-dom@18. + +### Patch Changes + +- Updated dependencies [c3750a1] + - @talend/scripts-cmf@1.3.0 + - @talend/utils@3.2.0 + +## 9.1.0 + +### Minor Changes + +- 3bd16fc: Add support to ESM + +### Patch Changes + +- Updated dependencies [3bd16fc] + - @talend/utils@3.1.0 + +## 9.0.0 + +### Major Changes + +- e48ae5f: chore(TMC-27581): security issue in redux storage decorator filter + ## 8.4.2 ### Patch Changes diff --git a/packages/cmf/__tests__/reduxstorage/reduxLocalStorage.test.js b/packages/cmf/__tests__/reduxstorage/reduxLocalStorage.test.js deleted file mode 100644 index b5d84d87c8..0000000000 --- a/packages/cmf/__tests__/reduxstorage/reduxLocalStorage.test.js +++ /dev/null @@ -1,57 +0,0 @@ -import reduxLocalStorage from '../../src/reduxstorage/reduxLocalStorage'; - -describe('reduxLocalStorage', () => { - // eslint-disable-next-line no-console - const originalLog = console; - beforeEach(() => { - // eslint-disable-next-line no-console - global.console = { - warn: jest.fn(), - log: jest.fn(), - }; - }); - afterEach( () => { - // eslint-disable-next-line no-console - global.console = originalLog; - }); - it('should expose API', () => { - expect(typeof reduxLocalStorage.loadInitialState).toBe('function'); - expect(typeof reduxLocalStorage.saveOnReload).toBe('function'); - }); - it('should saveOnReload listen the beforeunload event', () => { - const original = window.addEventListener; - const cstate = { foo: 'bar' }; - const listener = jest.fn(); - window.addEventListener = listener; - reduxLocalStorage.saveOnReload({ - engine: { - save: state => state, - }, - store: { - getState: () => cstate, - }, - }); - window.addEventListener = original; - expect(listener).toHaveBeenCalled(); - }); - it('should loadInitialState', done => { - const content = '{"cmf":{"components":{"SidePanel":{"default":{"toggle":true}}}}}'; - window.localStorage.setItem('data-streams-redux', content); - reduxLocalStorage - .loadInitialState({ - key: 'data-streams-redux', - whitelist: [['cmf', 'components', 'SidePanel'], ['cmf', 'components', 'Container(Form)']], - }) - .then( - storage => { - expect( - storage.initialState.cmf.components.getIn(['SidePanel', 'default', 'toggle']), - ).toBe(true); - done(); - }, - error => { - throw new Error(error); - }, - ); - }); -}); diff --git a/packages/cmf/package.json b/packages/cmf/package.json index bf50c705d6..0423ebff16 100644 --- a/packages/cmf/package.json +++ b/packages/cmf/package.json @@ -4,9 +4,21 @@ "main": "lib/index.js", "mainSrc": "src/index.js", "license": "Apache-2.0", + "module": "./lib-esm/index.js", + "exports": { + ".": { + "import": "./lib-esm/index.js", + "require": "./lib/index.js" + }, + "./lib/*": { + "import": "./lib-esm/*", + "require": "./lib/*" + } + }, "scripts": { "build:dev": "talend-scripts build --umd --dev", "build:prod": "talend-scripts build --umd --prod", + "build:lib:esm": "talend-scripts build --esm", "pre-release": "yarn build:dev && yarn build:prod", "build:lib": "talend-scripts build", "start": "echo nothing to start", @@ -32,8 +44,8 @@ "url": "https://github.com/Talend/ui.git" }, "dependencies": { - "@talend/scripts-cmf": "^1.2.4", - "@talend/utils": "^3.0.4", + "@talend/scripts-cmf": "^1.3.0", + "@talend/utils": "^3.2.2", "commander": "^6.2.1", "hoist-non-react-statics": "^3.3.2", "immutable": "^3.8.2", @@ -48,35 +60,32 @@ "redux-batched-actions": "^0.5.0", "redux-batched-subscribe": "^0.1.6", "redux-saga": "^1.3.0", - "redux-storage": "^4.1.2", - "redux-storage-decorator-filter": "^1.1.8", - "redux-storage-decorator-immutablejs": "^1.0.4", - "redux-storage-engine-localstorage": "^1.1.4", "redux-thunk": "^2.4.2" }, "devDependencies": { "@redux-saga/testing-utils": "^1.1.5", - "@talend/eslint-config": "^13.0.3", - "@talend/eslint-plugin": "^1.1.1", - "@talend/scripts-core": "^16.3.5", - "@talend/scripts-config-babel": "^13.3.1", - "@talend/scripts-config-jest": "^14.0.2", - "@talend/scripts-config-react-webpack": "^16.6.0", - "@testing-library/react": "^14.2.1", + "@talend/eslint-config": "^13.2.0", + "@talend/eslint-plugin": "^1.3.0", + "@talend/scripts-config-typescript": "^11.3.0", + "@talend/scripts-core": "^16.5.1", + "@talend/scripts-config-babel": "^13.5.0", + "@talend/scripts-config-jest": "^14.1.0", + "@talend/scripts-config-react-webpack": "^16.8.0", + "@testing-library/react": "^14.3.1", "jest-in-case": "^1.0.2", - "jsdoc": "^4.0.2", + "jsdoc": "^4.0.3", "node-fetch": "^2.7.0", - "react": "^18.2.0", - "react-dom": "^18.2.0", + "react": "^18.3.1", + "react-dom": "^18.3.1", "redux-mock-store": "^1.5.4", "redux-saga-tester": "^1.0.874" }, "peerDependencies": { - "react": ">= 16.14.0", - "react-dom": ">= 16.14.0" + "react": "^18.3.1", + "react-dom": "^18.3.1" }, "publishConfig": { "access": "public" }, - "version": "8.4.2" + "version": "10.0.1" } diff --git a/packages/cmf/src/bootstrap.md b/packages/cmf/src/bootstrap.md index 9e75ad476c..293597fa8d 100644 --- a/packages/cmf/src/bootstrap.md +++ b/packages/cmf/src/bootstrap.md @@ -6,6 +6,7 @@ Quick start: ```javascript import cmf from '@talend/react-cmf'; + import components from './components'; import sagas from './sagas'; @@ -51,8 +52,8 @@ For that CMF expose an API to let you merge your settings: ```javascript import cmf from '@talend/react-cmf'; - import containersModule from '@talend/react-containers'; + import components from './components'; import saga from './saga'; import sagas from './sagas'; @@ -65,10 +66,6 @@ cmf.boostrap({ }); ``` -## How to setup store using localStorage ? - -We provide a [simple API for that](./localStorage.md). - ## onError The error handling is well described in it's own [documentation page](./onError.md). @@ -85,8 +82,8 @@ If you are using ngreact and you want to leverage cmf you must set the `render` ```javascript import cmf from '@talend/react-cmf'; - import containersModule from '@talend/react-containers'; + import components from './components'; import saga from './saga'; import sagas from './sagas'; diff --git a/packages/cmf/src/index.js b/packages/cmf/src/index.js index b7021ea393..147cd642ff 100644 --- a/packages/cmf/src/index.js +++ b/packages/cmf/src/index.js @@ -1,40 +1,36 @@ /** * @module react-cmf */ - -import actions from './actions'; +import * as mock from './mock'; +// DEPRECATED APIs +import action from './action'; import actionCreator from './actionCreator'; - +import actions from './actions'; +import App from './App'; import bootstrap from './bootstrap'; import cmfConnect from './cmfConnect'; import cmfModule from './cmfModule'; import component from './component'; -import ConnectedDispatcher from './Dispatcher'; import ErrorBoundary from './components/ErrorBoundary/ErrorBoundary.component'; -import { Saga, CmfRegisteredSaga } from './components/Saga'; +import { CmfRegisteredSaga, Saga } from './components/Saga'; +import componentState from './componentState'; +import constants from './constant'; +import ConnectedDispatcher from './Dispatcher'; import expression from './expression'; import expressions from './expressions'; import Inject from './Inject.component'; -import matchPath from './matchPath'; -import sagas from './sagas'; -import selectors from './selectors'; -import settings from './settings'; import localStorage from './localStorage'; +import matchPath from './matchPath'; +import middlewares from './middlewares'; import onError from './onError'; -import reduxStorage from './reduxstorage'; -import * as mock from './mock'; -import { useCMFContext } from './useContext'; - -// DEPRECATED APIs -import action from './action'; -import App from './App'; import reducers from './reducers'; import registry from './registry'; import RegistryProvider from './RegistryProvider'; +import sagas from './sagas'; +import selectors from './selectors'; +import settings from './settings'; import store from './store'; -import middlewares from './middlewares'; -import componentState from './componentState'; -import constants from './constant'; +import { useCMFContext } from './useContext'; const Dispatcher = ConnectedDispatcher; const getErrorMiddleware = middlewares.error; @@ -54,7 +50,6 @@ export { ErrorBoundary, Inject, mock, - reduxStorage, sagas, selectors, // DEPRECATED diff --git a/packages/cmf/src/localStorage.md b/packages/cmf/src/localStorage.md deleted file mode 100644 index 2bb4da7bc5..0000000000 --- a/packages/cmf/src/localStorage.md +++ /dev/null @@ -1,22 +0,0 @@ -# setup localStorage with CMF - -You can use this API to setup your redux state using localStorage. - -```javascript -import cmf from '@talend/react-cmf'; - -const localStorageKey = 'myApp-v1'; -const preloadedState = cmf.localStorage.getState(localStorageKey); -const storeCallback = cmf.localStorage.getStoreCallback(localStorageKey, [ - ['cmf', 'components', 'Container(List)', 'foo'], - ['cmf', 'components', 'Container(SidePanel)'], -]); - -cmf.bootstrap({ - preloadedState, - storeCallback, -}); -``` - -From now the redux-storage api provided in CMF is DEPRECATED. -It will be removed in the next major release. diff --git a/packages/cmf/src/reduxstorage/index.js b/packages/cmf/src/reduxstorage/index.js deleted file mode 100644 index 3cd934df83..0000000000 --- a/packages/cmf/src/reduxstorage/index.js +++ /dev/null @@ -1,9 +0,0 @@ -/** - * This is a CMF plugin that let you configure your store - */ - -import * as reduxLocalStorage from './reduxLocalStorage'; - -export default { - localStorage: reduxLocalStorage, -}; diff --git a/packages/cmf/src/reduxstorage/redux-storage-decorator-immutablejs.js b/packages/cmf/src/reduxstorage/redux-storage-decorator-immutablejs.js deleted file mode 100644 index addca173f7..0000000000 --- a/packages/cmf/src/reduxstorage/redux-storage-decorator-immutablejs.js +++ /dev/null @@ -1,29 +0,0 @@ -// FIXME: should be contribution -import { fromJS } from 'immutable'; - -export default (engine, whitelist = []) => ({ - ...engine, - - load() { - if (process.env.NODE_ENV !== 'production') { - // eslint-disable-next-line no-console - console.warn('DEPRECATED: this API will be removed in the next major release'); - } - return engine.load().then(result => { - whitelist.forEach(keys => { - if (typeof keys === 'string') { - keys = [keys]; // eslint-disable-line no-param-reassign - } - let tmp = result; - keys.forEach((key, index) => { - if (tmp && index === keys.length - 1) { - tmp[key] = fromJS(tmp[key]); - } else if (tmp) { - tmp = tmp[key]; - } - }); - }); - return result; - }); - }, -}); diff --git a/packages/cmf/src/reduxstorage/reduxLocalStorage.js b/packages/cmf/src/reduxstorage/reduxLocalStorage.js deleted file mode 100644 index 501430258a..0000000000 --- a/packages/cmf/src/reduxstorage/reduxLocalStorage.js +++ /dev/null @@ -1,63 +0,0 @@ -import * as storage from 'redux-storage'; -import createEngine from 'redux-storage-engine-localstorage'; -import filter from 'redux-storage-decorator-filter'; -import immutablejs from './redux-storage-decorator-immutablejs'; - -const CMF_IMMUTABLE_PATHS = [ - ['cmf', 'components'], - ['cmf', 'collections'], -]; - -const CMF_MIDDLEWARE_BLACK_LIST = ['@@INIT', '@@router/LOCATION_CHANGE']; - -function loadInitialState(options = {}) { - if (process.env.NODE_ENV !== 'production') { - // eslint-disable-next-line no-console - console.warn('DEPRECATED: this API will be removed in the next major release'); - } - const { - key, - immutables = [], - whitelist = [], - blacklist = [], - middlewareWhitelist = [], - middlewareBlacklist = [], - } = options; - let engine = createEngine(key); - engine = filter(engine, whitelist, blacklist); - - const ipaths = []; - CMF_IMMUTABLE_PATHS.forEach(p => ipaths.push(p)); - immutables.forEach(p => ipaths.push(p)); - engine = immutablejs(engine, ipaths); - - const mblack = []; - CMF_MIDDLEWARE_BLACK_LIST.forEach(m => mblack.push(m)); - middlewareBlacklist.forEach(m => mblack.push(m)); - const storageMiddleware = storage.createMiddleware(engine, mblack, middlewareWhitelist); - - return storage - .createLoader(engine)({ - dispatch: () => {}, - }) - .then(initialState => ({ - initialState, - storageMiddleware, - engine, - })); -} - -function saveOnReload({ engine, store }) { - if (process.env.NODE_ENV !== 'production') { - // eslint-disable-next-line no-console - console.warn('DEPRECATED: this API will be removed in the next major release'); - } - window.addEventListener('beforeunload', () => { - engine.save(store.getState()); // localstorage is sync - }); -} - -export default { - loadInitialState, - saveOnReload, -}; diff --git a/packages/cmf/tsconfig.json b/packages/cmf/tsconfig.json new file mode 100644 index 0000000000..3405e576ec --- /dev/null +++ b/packages/cmf/tsconfig.json @@ -0,0 +1,4 @@ +{ + "extends": "@talend/scripts-config-typescript/tsconfig.json", + "include": ["src/**/*"] +} diff --git a/packages/components/CHANGELOG.md b/packages/components/CHANGELOG.md index 4fe64f65b4..cf8dd40864 100644 --- a/packages/components/CHANGELOG.md +++ b/packages/components/CHANGELOG.md @@ -1,5 +1,93 @@ # @talend/react-components +## 17.1.2 + +### Patch Changes + +- 7ebe036: Revert "fix: Fix exports to allow deep imports" +- Updated dependencies [7ebe036] + - @talend/utils@3.2.3 + +## 17.1.1 + +### Patch Changes + +- f321a0d: Remove unused tsconfig.esm.json (initially added to use TSC but we stay with babel at the end) +- Updated dependencies [f321a0d] + - @talend/design-tokens@3.4.1 + - @talend/react-bootstrap@3.0.2 + - @talend/assets-api@1.5.1 + - @talend/icons@7.10.2 + - @talend/utils@3.2.2 + - @talend/react-a11y@4.0.1 + +## 17.1.0 + +### Minor Changes + +- ca1734c: feat(TMC-28838/tags): add beta styled tag to the Tag component + +## 17.0.1 + +### Patch Changes + +- 94aad7d: fix: Fix exports to allow deep imports +- Updated dependencies [94aad7d] + - @talend/utils@3.2.1 + +## 17.0.0 + +### Major Changes + +- c3750a1: chore: upgrade dependencies + + Major upgrade for all packages that have a peerDependency on react or react-dom. Those packages now ask for react@18 and react-dom@18. + +### Patch Changes + +- Updated dependencies [c3750a1] + - @talend/design-system@11.0.0 + - @talend/react-bootstrap@3.0.0 + - @talend/react-a11y@4.0.0 + - @talend/design-tokens@3.4.0 + - @talend/assets-api@1.5.0 + - @talend/icons@7.10.0 + - @talend/bootstrap-theme@9.2.0 + - @talend/utils@3.2.0 + +## 16.2.0 + +### Minor Changes + +- 3bd16fc: Add support to ESM + +### Patch Changes + +- ced37a2: fix(TMC-27619/cellDate): enable tz offset conversion with sourceTz +- Updated dependencies [3bd16fc] +- Updated dependencies [3bd16fc] +- Updated dependencies [d053412] +- Updated dependencies [9b66a09] + - @talend/design-tokens@3.3.0 + - @talend/react-bootstrap@2.3.0 + - @talend/assets-api@1.4.0 + - @talend/icons@7.9.0 + - @talend/utils@3.1.0 + - @talend/react-a11y@3.1.0 + - @talend/bootstrap-theme@9.1.4 + +## 16.1.4 + +### Patch Changes + +- 50801bd: Reset currentStep to 0 when tour is reopened + +## 16.1.3 + +### Patch Changes + +- 003c7a4: fix(TDC-7452/Tour): Fix tour is changing to first step when closing + ## 16.1.2 ### Patch Changes diff --git a/packages/components/package.json b/packages/components/package.json index 4c21f15014..66408b9d10 100644 --- a/packages/components/package.json +++ b/packages/components/package.json @@ -2,13 +2,24 @@ "name": "@talend/react-components", "description": "Set of react components.", "main": "lib/index.js", - "mainSrc": "src/index.js", + "module": "./lib-esm/index.js", + "exports": { + "./lib/*": { + "import": "./lib-esm/*/index.js", + "require": "./lib/*/index.js" + }, + ".": { + "import": "./lib-esm/index.js", + "require": "./lib/index.js" + } + }, "license": "Apache-2.0", "scripts": { "build:dev": "talend-scripts build --umd --dev", "build:prod": "talend-scripts build --umd --prod", "pre-release": "yarn build:dev && yarn build:prod", "build:lib": "talend-scripts build && yarn run tsc", + "build:lib:esm": "talend-scripts build --esm", "watch": "talend-scripts build --watch", "tsc": "tsc --emitDeclarationOnly --project ./tsconfig.json --outDir ./types", "test": "cross-env TZ=UTC talend-scripts test", @@ -35,24 +46,24 @@ }, "dependencies": { "@popperjs/core": "^2.11.8", - "@talend/assets-api": "^1.3.2", - "@talend/bootstrap-theme": "^9.1.3", - "@talend/design-tokens": "^3.1.1", - "@talend/icons": "^7.7.2", - "@talend/react-a11y": "^3.0.1", - "@talend/react-bootstrap": "^2.2.2", - "@talend/utils": "^3.0.4", + "@talend/assets-api": "^1.5.1", + "@talend/bootstrap-theme": "^9.2.0", + "@talend/design-tokens": "^3.4.1", + "@talend/icons": "^7.10.2", + "@talend/react-a11y": "^4.0.1", + "@talend/react-bootstrap": "^3.0.2", + "@talend/utils": "^3.2.3", "ally.js": "^1.4.1", "classnames": "^2.5.1", - "d3": "^7.8.5", - "date-fns": "^3.3.1", + "d3": "^7.9.0", + "date-fns": "^3.6.0", "dom-helpers": "^3.4.0", "focus-outline-manager": "^1.0.2", "immutable": "^3.8.2", "invariant": "^2.2.4", "lodash": "^4.17.21", "memoize-one": "^6.0.0", - "rc-slider": "^10.5.0", + "rc-slider": "^10.6.2", "react-autowhatever": "10.2.0", "react-debounce-input": "^3.3.0", "react-draggable": "^4.4.6", @@ -63,55 +74,55 @@ "react-transition-group": "^2.9.0", "react-use": "^17.5.0", "react-virtualized": "^9.22.5", - "reactour": "^1.19.2", - "recharts": "^2.12.1", - "simplebar": "^6.2.5", + "reactour": "^1.19.4", + "recharts": "^2.12.7", + "simplebar": "^6.2.6", "simplebar-react": "^2.4.3", "styled-components": "^5.3.11", "warning": "^3.0.0" }, "devDependencies": { - "@storybook/addon-actions": "^7.6.17", - "@talend/bootstrap-theme": "^9.1.3", - "@talend/design-system": "^10.4.3", - "@talend/eslint-config": "^13.0.3", - "@talend/eslint-plugin": "^1.1.1", + "@storybook/addon-actions": "^7.6.19", + "@talend/bootstrap-theme": "^9.2.0", + "@talend/design-system": "^11.0.5", + "@talend/eslint-config": "^13.2.0", + "@talend/eslint-plugin": "^1.3.0", "@talend/locales-design-system": "^7.15.1", - "@talend/locales-tui-components": "^11.4.5", - "@talend/scripts-core": "^16.3.5", - "@talend/scripts-config-babel": "^13.3.1", - "@talend/scripts-config-react-webpack": "^16.5.1", - "@talend/scripts-config-storybook-lib": "^5.3.1", - "@talend/scripts-config-typescript": "^11.2.1", - "@testing-library/jest-dom": "^6.4.2", - "@testing-library/react": "^14.2.1", - "@testing-library/user-event": "^14.5.2", + "@talend/locales-tui-components": "^16.0.1", + "@talend/scripts-config-babel": "^13.5.0", + "@talend/scripts-config-react-webpack": "^16.8.0", + "@talend/scripts-config-storybook-lib": "^5.4.0", + "@talend/scripts-config-typescript": "^11.3.0", + "@talend/scripts-core": "^16.5.1", + "@testing-library/jest-dom": "^6.4.6", + "@testing-library/react": "^14.3.1", "@testing-library/react-hooks": "^8.0.1", + "@testing-library/user-event": "^14.5.2", "@types/classnames": "^2.3.1", "@types/d3": "^7.4.3", "@types/jest": "^29.5.12", - "@types/lodash": "^4.14.202", - "@types/prop-types": "^15.7.11", - "@types/react": "^18.2.60", - "@types/react-dom": "^18.2.19", + "@types/lodash": "^4.17.5", + "@types/prop-types": "^15.7.12", + "@types/react": "^18.3.3", + "@types/react-dom": "^18.3.0", "cross-env": "^7.0.3", - "i18next": "^23.10.0", + "i18next": "^23.11.5", "jest-in-case": "^1.0.2", "jsdom": "^20.0.3", "prop-types": "^15.8.1", - "react": "^18.2.0", + "react": "^18.3.1", "react-a11y": "^0.3.4", - "react-dom": "^18.2.0", - "react-router-dom": "~6.3.0", + "react-dom": "^18.3.1", "react-i18next": "^13.5.0", - "react-test-renderer": "^18.2.0" + "react-router-dom": "~6.3.0", + "react-test-renderer": "^18.3.1" }, "peerDependencies": { - "@talend/design-system": "^10.0.0", - "i18next": "^23.10.0", + "@talend/design-system": "^11.0.0", + "i18next": "^23.11.5", "prop-types": "^15.5.10", - "react": ">= 16.14.0", - "react-dom": ">= 16.14.0", + "react": "^18.3.1", + "react-dom": "^18.3.1", "react-i18next": "^13.5.0" }, "resolutions": { @@ -120,5 +131,5 @@ "publishConfig": { "access": "public" }, - "version": "16.1.2" + "version": "17.1.2" } diff --git a/packages/components/src/AppGuidedTour/AppGuidedTour.component.js b/packages/components/src/AppGuidedTour/AppGuidedTour.component.js index a64bbd22b5..7c56e1601c 100644 --- a/packages/components/src/AppGuidedTour/AppGuidedTour.component.js +++ b/packages/components/src/AppGuidedTour/AppGuidedTour.component.js @@ -1,11 +1,13 @@ -import { useState, useEffect } from 'react'; -import PropTypes from 'prop-types'; -import useLocalStorage from 'react-use/lib/useLocalStorage'; +import { useEffect, useState } from 'react'; import { useTranslation } from 'react-i18next'; +import useLocalStorage from 'react-use/lib/useLocalStorage'; + +import PropTypes from 'prop-types'; + +import I18N_DOMAIN_COMPONENTS from '../constants'; import GuidedTour from '../GuidedTour'; -import Toggle from '../Toggle'; import Stepper from '../Stepper'; -import I18N_DOMAIN_COMPONENTS from '../constants'; +import Toggle from '../Toggle'; import DemoContentStep from './DemoContentStep.component'; const DEMO_CONTENT_STEP_ID = 1; @@ -28,6 +30,12 @@ function AppGuidedTour({ const [isAlreadyViewed, setIsAlreadyViewed] = useLocalStorage(localStorageKey, false); const [importDemoContent, setImportDemoContent] = useState(demoContentSteps && !isAlreadyViewed); const [currentStep, setCurrentStep] = useState(0); + // Reset currentStep to 0 when tour is opened + useEffect(() => { + if (isOpen) { + setCurrentStep(0); + } + }, [isOpen]); const isNavigationDisabled = importDemoContent && @@ -73,8 +81,10 @@ function AppGuidedTour({ onRequestClose={() => { onRequestClose(); setIsAlreadyViewed(true); - setCurrentStep(0); - setImportDemoContent(false); + if (importDemoContent) { + setImportDemoContent(false); + setCurrentStep(Math.max(0, currentStep - 1)); + } }} steps={[ { diff --git a/packages/components/src/AppGuidedTour/AppGuidedTour.test.js b/packages/components/src/AppGuidedTour/AppGuidedTour.test.js index 920f5d18ec..bd23bb3c34 100644 --- a/packages/components/src/AppGuidedTour/AppGuidedTour.test.js +++ b/packages/components/src/AppGuidedTour/AppGuidedTour.test.js @@ -95,4 +95,21 @@ describe('AppGuidedTour', () => { ); expect(screen.queryByText('Import demo content')).not.toBeInTheDocument(); }); + it('Should stay on the last page when finished', async () => { + const user = userEvent.setup(); + const steps = [ + { + content: { + header: 'Header', + body: () => 'Last page', + }, + }, + ]; + render(); + expect(screen.queryByText(/Last page/i)).not.toBeInTheDocument(); + const nextBtn = document.querySelector('button[data-tour-elem="right-arrow"]'); + await user.click(nextBtn); + await user.click(screen.getByText('Let me try')); + expect(screen.queryByText(/Last page/i)).toBeInTheDocument(); + }); }); diff --git a/packages/components/src/RadarChart/RadarChart.component.js b/packages/components/src/RadarChart/RadarChart.component.js index 9b800d8b33..b5b2ccec11 100644 --- a/packages/components/src/RadarChart/RadarChart.component.js +++ b/packages/components/src/RadarChart/RadarChart.component.js @@ -1,16 +1,19 @@ +import PropTypes from 'prop-types'; import { - RadarChart as RechartsRadarChart, + PolarAngleAxis, PolarGrid, PolarRadiusAxis, - Dot as RechartsDot, Radar, - PolarAngleAxis, + Dot as RechartsDot, + RadarChart as RechartsRadarChart, } from 'recharts'; + import tokens from '@talend/design-tokens'; -import PropTypes from 'prop-types'; -import radarChartCssModule from './RadarChart.module.scss'; + import { getTheme } from '../theme'; +import radarChartCssModule from './RadarChart.module.scss'; + const theme = getTheme(radarChartCssModule); /** diff --git a/packages/components/src/RadarChart/__snapshots__/RadarChart.test.js.snap b/packages/components/src/RadarChart/__snapshots__/RadarChart.test.js.snap index 4e2eff377b..f77bab0716 100644 --- a/packages/components/src/RadarChart/__snapshots__/RadarChart.test.js.snap +++ b/packages/components/src/RadarChart/__snapshots__/RadarChart.test.js.snap @@ -3,7 +3,6 @@ exports[`RadarChart should render a RadarChart 1`] = `
string) | undefined) { function renderHandler( - origin: ReactElement>, + origin: React.ReactElement>, props: any, ) { return ( diff --git a/packages/components/src/TabBar/Tabs.stories.js b/packages/components/src/TabBar/Tabs.stories.js index a12ddc7b69..98a4cc2eb4 100644 --- a/packages/components/src/TabBar/Tabs.stories.js +++ b/packages/components/src/TabBar/Tabs.stories.js @@ -87,6 +87,15 @@ const tabProps = { 'data-feature': 'action.9', disabled: true, }, + { + key: '10', + label: 'Tab10', + badge: { + label: 'BETA', + bsStyle: 'beta', + }, + 'data-feature': 'action.10', + }, ], onSelect: action('onSelect'), selectedKey: '2', diff --git a/packages/components/src/Tag/Tag.component.js b/packages/components/src/Tag/Tag.component.js index 33f62fb20a..65b3870945 100644 --- a/packages/components/src/Tag/Tag.component.js +++ b/packages/components/src/Tag/Tag.component.js @@ -1,10 +1,12 @@ import PropTypes from 'prop-types'; + import { Tag as CoralTag, + TagBeta as CoralTagBeta, + TagDestructive as CoralTagDestructive, TagInformation as CoralTagInformation, TagSuccess as CoralTagSuccess, TagWarning as CoralTagWarning, - TagDestructive as CoralTagDestructive, } from '@talend/design-system'; /** @@ -25,6 +27,9 @@ const Tag = ({ bsStyle, ...rest }) => { case 'danger': StyledTag = CoralTagDestructive; break; + case 'beta': + StyledTag = CoralTagBeta; + break; default: break; } diff --git a/packages/components/src/VirtualizedList/CellDatetime/CellDatetime.component.js b/packages/components/src/VirtualizedList/CellDatetime/CellDatetime.component.js index 5c1e44353b..3c17189351 100644 --- a/packages/components/src/VirtualizedList/CellDatetime/CellDatetime.component.js +++ b/packages/components/src/VirtualizedList/CellDatetime/CellDatetime.component.js @@ -35,6 +35,7 @@ export function computeValue(cellData, columnData, t) { } else if (columnData.mode === 'format') { if (columnData.timeZone) { return dateUtils.formatToTimeZone(dateFNS, columnData.pattern || DATE_TIME_FORMAT, { + ...(columnData.sourceTimeZone && { sourceTimeZone: columnData.sourceTimeZone }), timeZone: columnData.timeZone, locale: getLocale(t), }); diff --git a/packages/components/src/VirtualizedList/CellDatetime/CellDatetime.test.js b/packages/components/src/VirtualizedList/CellDatetime/CellDatetime.test.js index eac23203e2..5459b71e0c 100644 --- a/packages/components/src/VirtualizedList/CellDatetime/CellDatetime.test.js +++ b/packages/components/src/VirtualizedList/CellDatetime/CellDatetime.test.js @@ -167,18 +167,22 @@ describe('CellDatetime', () => { mode: 'format', pattern: 'YYYY-MM-DD HH:mm:ss', timeZone: 'Pacific/Niue', + sourceTimeZone: 'Europe/Paris', }; const t = jest.fn(); const cellData = 1474495200000; - computeValue(cellData, columnData, t); + const expectedStrDate = '2016-09-22 09:00:00'; + const computedStrOffset = computeValue(cellData, columnData, t); // then + expect(computedStrOffset).toEqual(expectedStrDate); expect(dateUtils.formatToTimeZone).toHaveBeenCalledWith( new Date(cellData), columnData.pattern, { timeZone: columnData.timeZone, + sourceTimeZone: columnData.sourceTimeZone, locale: getLocale(t), }, ); diff --git a/packages/containers/CHANGELOG.md b/packages/containers/CHANGELOG.md index 736f9a141a..7f2937bfb8 100644 --- a/packages/containers/CHANGELOG.md +++ b/packages/containers/CHANGELOG.md @@ -1,5 +1,83 @@ # @talend/react-containers +## 11.0.4 + +### Patch Changes + +- 7ebe036: Revert "fix: Fix exports to allow deep imports" +- Updated dependencies [7ebe036] + - @talend/design-system@11.0.5 + - @talend/react-components@17.1.2 + - @talend/utils@3.2.3 + +## 11.0.3 + +### Patch Changes + +- f321a0d: Remove unused tsconfig.esm.json (initially added to use TSC but we stay with babel at the end) +- Updated dependencies [f321a0d] + - @talend/design-system@11.0.4 + - @talend/react-components@17.1.1 + - @talend/react-forms@15.0.1 + - @talend/utils@3.2.2 + - @talend/react-cmf@10.0.1 + +## 11.0.2 + +### Patch Changes + +- 94aad7d: fix: Fix exports to allow deep imports +- Updated dependencies [94aad7d] + - @talend/design-system@11.0.3 + - @talend/react-components@17.0.1 + - @talend/utils@3.2.1 + +## 11.0.1 + +### Patch Changes + +- c520cd8: fix(containers): Fix tsconfig to have right d.ts files + +## 11.0.0 + +### Major Changes + +- c3750a1: chore: upgrade dependencies + + Major upgrade for all packages that have a peerDependency on react or react-dom. Those packages now ask for react@18 and react-dom@18. + +### Patch Changes + +- Updated dependencies [c3750a1] + - @talend/design-system@11.0.0 + - @talend/react-components@17.0.0 + - @talend/react-forms@15.0.0 + - @talend/react-cmf@10.0.0 + - @talend/utils@3.2.0 + +## 10.8.0 + +### Minor Changes + +- 3bd16fc: Add support to ESM + +### Patch Changes + +- Updated dependencies [ced37a2] +- Updated dependencies [3bd16fc] + - @talend/react-components@16.2.0 + - @talend/design-system@10.6.0 + - @talend/react-forms@14.1.0 + - @talend/utils@3.1.0 + - @talend/react-cmf@9.1.0 + +## 10.7.4 + +### Patch Changes + +- Updated dependencies [e48ae5f] + - @talend/react-cmf@9.0.0 + ## 10.7.3 ### Patch Changes diff --git a/packages/containers/package.json b/packages/containers/package.json index 8e69cae970..aa7a8e6d35 100644 --- a/packages/containers/package.json +++ b/packages/containers/package.json @@ -2,13 +2,25 @@ "name": "@talend/react-containers", "description": "Provide connected components aka containers for @talend/react-cmf based on @talend/react-components.", "main": "lib/index.js", - "mainSrc": "src/index.js", + "types": "lib/index.d.ts", + "module": "./lib-esm/index.js", + "exports": { + "./lib/*": { + "import": "./lib-esm/*/index.js", + "require": "./lib/*/index.js" + }, + ".": { + "import": "./lib-esm/index.js", + "require": "./lib/index.js" + } + }, "license": "Apache-2.0", "scripts": { "build:dev": "talend-scripts build --umd --dev", "build:prod": "talend-scripts build --umd --prod", "pre-release": "yarn build:dev && yarn build:prod", "build:lib": "talend-scripts build", + "build:lib:esm": "talend-scripts build --esm", "start": "talend-scripts start-storybook -p 6007", "test": "talend-scripts test", "test:watch": "talend-scripts test --watch", @@ -33,11 +45,11 @@ "url": "https://github.com/Talend/ui.git" }, "dependencies": { - "@talend/design-system": "^10.0.0", - "@talend/react-cmf": "^8.4.1", - "@talend/react-components": "^16.0.0", - "@talend/react-forms": "^14.0.0", - "@talend/utils": "^3.0.4", + "@talend/design-system": "^11.0.5", + "@talend/react-cmf": "^10.0.1", + "@talend/react-components": "^17.1.2", + "@talend/react-forms": "^15.0.1", + "@talend/utils": "^3.2.3", "classnames": "^2.5.1", "immutable": "^3.8.2", "invariant": "^2.2.4", @@ -48,40 +60,40 @@ "reselect": "^2.5.4" }, "devDependencies": { - "@storybook/addon-actions": "^7.6.17", - "@talend/icons": "^7.7.1", - "@talend/locales-tui-components": "^11.4.5", + "@storybook/addon-actions": "^7.6.19", + "@talend/icons": "^7.10.2", + "@talend/locales-tui-components": "^16.0.1", "@talend/locales-tui-containers": "^9.1.3", "@talend/locales-tui-forms": "^10.2.4", "@talend/locales-design-system": "^7.15.1", - "@talend/react-storybook-cmf": "^8.2.2", - "@talend/eslint-config": "^13.0.3", - "@talend/eslint-plugin": "^1.1.1", - "@talend/scripts-core": "^16.3.5", - "@talend/scripts-config-babel": "^13.3.1", - "@talend/scripts-config-storybook-lib": "^5.3.1", - "@talend/scripts-config-react-webpack": "^16.5.1", - "@testing-library/react": "^14.2.1", + "@talend/react-storybook-cmf": "^10.0.0", + "@talend/eslint-config": "^13.2.0", + "@talend/eslint-plugin": "^1.3.0", + "@talend/scripts-core": "^16.5.1", + "@talend/scripts-config-babel": "^13.5.0", + "@talend/scripts-config-storybook-lib": "^5.4.0", + "@talend/scripts-config-react-webpack": "^16.8.0", + "@testing-library/react": "^14.3.1", "@testing-library/user-event": "^14.5.2", - "i18next": "^23.10.0", + "i18next": "^23.11.5", "jest-in-case": "^1.0.2", - "msw": "^1.3.2", + "msw": "^1.3.3", "prop-types": "^15.8.1", - "react": "^18.2.0", - "react-dom": "^18.2.0", + "react": "^18.3.1", + "react-dom": "^18.3.1", "react-i18next": "^13.5.0", - "react-test-renderer": "^18.2.0", + "react-test-renderer": "^18.3.1", "redux-saga-tester": "^1.0.874" }, "peerDependencies": { - "i18next": "^23.10.0", + "i18next": "^23.11.5", "prop-types": "^15.5.10", - "react": ">= 16.14.0", - "react-dom": ">= 16.14.0", + "react": "^18.3.1", + "react-dom": "^18.3.1", "react-i18next": "^13.5.0" }, "publishConfig": { "access": "public" }, - "version": "10.7.3" + "version": "11.0.4" } diff --git a/packages/containers/src/GuidedTour/__snapshots__/GuidedTour.test.js.snap b/packages/containers/src/GuidedTour/__snapshots__/GuidedTour.test.js.snap index c445458d04..f76df7dd03 100644 --- a/packages/containers/src/GuidedTour/__snapshots__/GuidedTour.test.js.snap +++ b/packages/containers/src/GuidedTour/__snapshots__/GuidedTour.test.js.snap @@ -146,11 +146,6 @@ exports[`Guided Tour Container should render 1`] = ` style="width: 1px; height: 0px; padding: 0px; overflow: hidden; position: fixed; top: 1px; left: 1px;" tabindex="0" /> -
diff --git a/packages/containers/tsconfig.json b/packages/containers/tsconfig.json new file mode 100644 index 0000000000..5b10cd0419 --- /dev/null +++ b/packages/containers/tsconfig.json @@ -0,0 +1,12 @@ +{ + "extends": "@talend/scripts-config-typescript/tsconfig.json", + "include": ["custom.d.ts", "src/**/*"], + "exclude": ["node_modules"], + "compilerOptions": { + "types": ["jest", "@testing-library/jest-dom"], + "allowJs": true, + "checkJs": false, + "declaration": true, + "noEmit": false + } +} diff --git a/packages/dataviz/CHANGELOG.md b/packages/dataviz/CHANGELOG.md index 29114f26ce..7cc385d10b 100755 --- a/packages/dataviz/CHANGELOG.md +++ b/packages/dataviz/CHANGELOG.md @@ -1,5 +1,52 @@ # Changelog +## 7.0.1 + +### Patch Changes + +- f321a0d: Remove unused tsconfig.esm.json (initially added to use TSC but we stay with babel at the end) +- Updated dependencies [f321a0d] + - @talend/design-tokens@3.4.1 + - @talend/assets-api@1.5.1 + - @talend/react-components@17.1.1 + +## 7.0.0 + +### Major Changes + +- c3750a1: chore: upgrade dependencies + + Major upgrade for all packages that have a peerDependency on react or react-dom. Those packages now ask for react@18 and react-dom@18. + +### Patch Changes + +- Updated dependencies [c3750a1] + - @talend/react-components@17.0.0 + - @talend/design-tokens@3.4.0 + - @talend/assets-api@1.5.0 + +## 6.2.0 + +### Minor Changes + +- 3bd16fc: Add support to ESM + +### Patch Changes + +- Updated dependencies [ced37a2] +- Updated dependencies [3bd16fc] +- Updated dependencies [d053412] +- Updated dependencies [9b66a09] + - @talend/react-components@16.2.0 + - @talend/design-tokens@3.3.0 + - @talend/assets-api@1.4.0 + +## 6.1.5 + +### Patch Changes + +- 0f408a7: Fix(Dataviz): Range filter - date time inputs overlap + ## 6.1.4 ### Patch Changes diff --git a/packages/dataviz/package.json b/packages/dataviz/package.json index 95d0680c2d..f5d0e7813e 100644 --- a/packages/dataviz/package.json +++ b/packages/dataviz/package.json @@ -1,16 +1,23 @@ { "name": "@talend/react-dataviz", - "version": "6.1.4", + "version": "7.0.1", "description": "Talend charts and visualization components", "main": "lib/index.js", - "mainSrc": "src/index.ts", "types": "./lib/index.d.ts", + "module": "./lib-esm/index.js", + "exports": { + ".": { + "import": "./lib-esm/index.js", + "require": "./lib/index.js" + } + }, "license": "Apache-2.0", "scripts": { "pre-release": "yarn build:umd:dev && yarn build:umd:prod", "build:umd:dev": "talend-scripts build --umd --dev", "build:umd:prod": "talend-scripts build --umd", "build:lib": "talend-scripts build", + "build:lib:esm": "talend-scripts build --esm", "build-storybook": "talend-scripts build-storybook", "extract-i18n": "i18next-scanner --config i18next-scanner.config.js", "lint": "talend-scripts lint", @@ -35,54 +42,54 @@ "url": "https://github.com/Talend/ui.git" }, "dependencies": { - "@talend/assets-api": "^1.3.2", - "@talend/react-components": "^16.1.1", - "@talend/design-tokens": "^3.1.1", + "@talend/assets-api": "^1.5.1", + "@talend/react-components": "^17.1.1", + "@talend/design-tokens": "^3.4.1", "classnames": "^2.5.1", - "d3": "^7.8.5", - "date-fns": "^3.3.1", + "d3": "^7.9.0", + "date-fns": "^3.6.0", "geojson": "^0.5.0", "lodash": "^4.17.21", - "recharts": "^2.12.1", + "recharts": "^2.12.7", "topojson-client": "^3.1.0" }, "devDependencies": { "@cypress/react": "^7.0.3", - "@cypress/webpack-dev-server": "^3.7.4", - "@talend/design-system": "^10.4.2", - "@talend/eslint-config": "^13.0.3", - "@talend/eslint-plugin": "^1.1.1", - "@talend/icons": "^7.7.2", - "@talend/locales-tui-components": "^11.4.5", + "@cypress/webpack-dev-server": "^3.10.0", + "@talend/design-system": "^11.0.4", + "@talend/eslint-config": "^13.2.0", + "@talend/eslint-plugin": "^1.3.0", + "@talend/icons": "^7.10.2", + "@talend/locales-tui-components": "^16.0.1", "@talend/locales-tui-dataviz": "^3.0.1", - "@talend/react-components": "^16.1.1", - "@talend/scripts-core": "^16.3.5", - "@talend/scripts-config-babel": "^13.3.1", - "@talend/scripts-config-react-webpack": "^16.5.1", - "@talend/scripts-config-storybook-lib": "^5.3.1", - "@talend/scripts-config-typescript": "^11.2.1", - "@testing-library/react": "^14.2.1", - "@testing-library/cypress": "^10.0.1", + "@talend/react-components": "^17.1.1", + "@talend/scripts-core": "^16.5.1", + "@talend/scripts-config-babel": "^13.5.0", + "@talend/scripts-config-react-webpack": "^16.8.0", + "@talend/scripts-config-storybook-lib": "^5.4.0", + "@talend/scripts-config-typescript": "^11.3.0", + "@testing-library/react": "^14.3.1", + "@testing-library/cypress": "^10.0.2", "@testing-library/user-event": "^14.5.2", "@types/classnames": "^2.3.1", "@types/d3": "^7.4.3", "@types/cypress": "^1.1.3", "@types/geojson": "^7946.0.14", - "@types/lodash": "^4.14.202", + "@types/lodash": "^4.17.5", "@types/node": "^6.14.13", - "@types/react": "^18.2.60", + "@types/react": "^18.3.3", "@types/topojson-client": "^3.1.4", "@types/topojson-specification": "^1.0.5", - "cypress": "^13.6.6", + "cypress": "^13.11.0", "cross-env": "^7.0.3", - "i18next": "^23.10.0", - "react": "^18.2.0", - "react-dom": "^18.2.0", + "i18next": "^23.11.5", + "react": "^18.3.1", + "react-dom": "^18.3.1", "react-i18next": "^13.5.0" }, "peerDependencies": { - "i18next": "^23.10.0", - "react": ">= 16.14.0", + "i18next": "^23.11.5", + "react": "^18.3.1", "react-i18next": "^13.5.0" }, "publishConfig": { diff --git a/packages/dataviz/src/components/BarChart/HorizontalBarChart/__snapshots__/HorizontalBarChart.component.test.tsx.snap b/packages/dataviz/src/components/BarChart/HorizontalBarChart/__snapshots__/HorizontalBarChart.component.test.tsx.snap index 656cc91dde..b3448da07c 100644 --- a/packages/dataviz/src/components/BarChart/HorizontalBarChart/__snapshots__/HorizontalBarChart.component.test.tsx.snap +++ b/packages/dataviz/src/components/BarChart/HorizontalBarChart/__snapshots__/HorizontalBarChart.component.test.tsx.snap @@ -7,7 +7,6 @@ exports[`Horizontal bar chart should render 1`] = ` >
{ diff --git a/packages/dataviz/src/components/BarChart/VerticalBarChart/__snapshots__/VerticalBarChart.component.test.tsx.snap b/packages/dataviz/src/components/BarChart/VerticalBarChart/__snapshots__/VerticalBarChart.component.test.tsx.snap index 6fd28972e8..7350ce2988 100644 --- a/packages/dataviz/src/components/BarChart/VerticalBarChart/__snapshots__/VerticalBarChart.component.test.tsx.snap +++ b/packages/dataviz/src/components/BarChart/VerticalBarChart/__snapshots__/VerticalBarChart.component.test.tsx.snap @@ -7,7 +7,6 @@ exports[`Vertical bar chart Should render 1`] = ` >
div { + flex-basis: 75%; + margin-right: 2px; + } } :global(.time-picker) { - flex-basis: 50%; - margin-right: 5px; + > div { + flex-basis: 50%; + margin-right: 5px; + } } } diff --git a/packages/design-docs/CHANGELOG.md b/packages/design-docs/CHANGELOG.md index 288d6d6d30..5822e78550 100644 --- a/packages/design-docs/CHANGELOG.md +++ b/packages/design-docs/CHANGELOG.md @@ -1,5 +1,35 @@ # @talend/design-docs +## 4.2.0 + +### Minor Changes + +- c3750a1: chore: upgrade dependencies + + Major upgrade for all packages that have a peerDependency on react or react-dom. Those packages now ask for react@18 and react-dom@18. + +### Patch Changes + +- Updated dependencies [c3750a1] + - @talend/design-system@11.0.0 + - @talend/storybook-docs@2.5.0 + - @talend/design-tokens@3.4.0 + - @talend/icons@7.10.0 + +## 4.1.4 + +### Patch Changes + +- 3bd16fc: Make it compatible with ESM +- Updated dependencies [3bd16fc] +- Updated dependencies [3bd16fc] +- Updated dependencies [d053412] +- Updated dependencies [9b66a09] + - @talend/design-system@10.6.0 + - @talend/design-tokens@3.3.0 + - @talend/icons@7.9.0 + - @talend/storybook-docs@2.4.3 + ## 4.1.3 ### Patch Changes diff --git a/packages/design-docs/package.json b/packages/design-docs/package.json index fa01702b23..bdcc775952 100644 --- a/packages/design-docs/package.json +++ b/packages/design-docs/package.json @@ -1,6 +1,6 @@ { "name": "@talend/design-docs", - "version": "4.1.3", + "version": "4.2.0", "description": "Package containing design.talend.com stories", "homepage": "https://github.com/Talend/ui#readme", "main": "src/index.ts", @@ -20,52 +20,52 @@ "url": "https://github.com/Talend/ui/issues" }, "dependencies": { - "@algolia/autocomplete-js": "^1.17.0", - "@storybook/blocks": "^7.6.17", - "@storybook/react": "^7.6.17", - "@talend/design-system": "^10.4.2", - "@talend/design-tokens": "^3.1.1", - "@talend/storybook-docs": "^2.4.2", - "@talend/icons": "^7.7.2", - "algoliasearch": "^4.22.1", + "@algolia/autocomplete-js": "^1.17.2", + "@storybook/blocks": "^7.6.19", + "@storybook/react": "^7.6.19", + "@talend/design-system": "^11.0.0", + "@talend/design-tokens": "^3.4.0", + "@talend/storybook-docs": "^2.5.0", + "@talend/icons": "^7.10.0", + "algoliasearch": "^4.23.3", "classnames": "^2.5.1", "color-contrast-checker": "^2.1.0", "figma-js": "^1.16.0", - "react-hook-form": "^7.50.1", + "react-hook-form": "^7.51.5", "pkg-dir": "^7.0.0", - "react": "^18.2.0", - "react-dom": "^18.2.0", + "react": "^18.3.1", + "react-dom": "^18.3.1", "use-overflow": "^1.2.0" }, "devDependencies": { - "@storybook/addon-a11y": "^7.6.17", - "@storybook/addon-actions": "^7.6.17", - "@storybook/addon-essentials": "^7.6.17", - "@storybook/addon-interactions": "^7.6.17", - "@storybook/addon-links": "^7.6.17", - "@storybook/addons": "^7.6.17", - "@storybook/core-events": "^7.6.17", + "@storybook/addon-a11y": "^7.6.19", + "@storybook/addon-actions": "^7.6.19", + "@storybook/addon-essentials": "^7.6.19", + "@storybook/addon-interactions": "^7.6.19", + "@storybook/addon-links": "^7.6.19", + "@storybook/addons": "^7.6.19", + "@storybook/core-events": "^7.6.19", "@storybook/preset-scss": "^1.0.3", "@storybook/testing-library": "^0.2.2", "@storybook/testing-react": "^2.0.1", - "@storybook/theming": "^7.6.17", - "@talend/eslint-config": "^13.0.3", - "@talend/eslint-plugin": "^1.1.1", + "@storybook/theming": "^7.6.19", + "@talend/eslint-config": "^13.2.0", + "@talend/eslint-plugin": "^1.3.0", "@talend/locales-design-system": "^7.15.1", - "@talend/locales-tui-components": "^11.4.5", + "@talend/locales-tui-components": "^16.0.1", "@talend/locales-tui-containers": "^9.1.3", "@talend/locales-tui-faceted-search": "^11.3.0", "@talend/locales-tui-forms": "^10.2.4", - "@talend/scripts-core": "^16.3.5", - "@talend/scripts-config-babel": "^13.3.1", - "@talend/scripts-config-react-webpack": "^16.5.1", - "@talend/scripts-config-storybook-lib": "^5.3.1", - "@talend/scripts-config-typescript": "^11.2.1", - "@types/react": "^18.2.60", - "i18next": "^23.10.0", + "@talend/scripts-core": "^16.5.0", + "@talend/scripts-config-babel": "^13.5.0", + "@talend/scripts-config-react-webpack": "^16.8.0", + "@talend/scripts-config-storybook-lib": "^5.4.0", + "@talend/scripts-config-typescript": "^11.3.0", + "@types/react": "^18.3.3", + "i18next": "^23.11.5", "mdx-embed": "^1.1.2", - "react": "^18.2.0", - "react-dom": "^18.2.0", + "react": "^18.3.1", + "react-dom": "^18.3.1", "react-router-dom": "~6.3.0", "storybook-docs-toc": "^1.7.0" }, diff --git a/packages/design-docs/src/StatusTable.tsx b/packages/design-docs/src/StatusTable.tsx index 427135982a..61524be4be 100644 --- a/packages/design-docs/src/StatusTable.tsx +++ b/packages/design-docs/src/StatusTable.tsx @@ -1,7 +1,9 @@ import { Suspense } from 'react'; -// eslint-disable-next-line @talend/import-depth -import statuses from '@talend/design-system/src/stories/status.json'; -import { Statuses, ComponentStatuses } from '@talend/storybook-docs'; + +import { ComponentStatuses, Statuses } from '@talend/storybook-docs'; + +import statuses from './status.json'; + import theme from './StatusTable.module.scss'; function toTitleCase(value: string) { diff --git a/packages/design-docs/src/status.json b/packages/design-docs/src/status.json new file mode 100644 index 0000000000..ad18832d27 --- /dev/null +++ b/packages/design-docs/src/status.json @@ -0,0 +1,699 @@ +{ + "accordion": { + "figma": { + "status": "ok", + "link": "https://www.figma.com/file/CDfr4jLz1m6Ud2RNi4qpQJ/Accordion" + }, + "storybook": { "status": "wip" }, + "react": { + "status": "wip", + "link": "https://github.com/Talend/ui/blob/master/packages/design-system/src/components/WIP/Accordion/Accordion.tsx" + }, + "i18n": { "status": "na" } + }, + "badge": { + "figma": { + "status": "wip", + "link": "https://www.figma.com/file/3YWRmMgPIjAABxJl9X9B3W/Badge" + }, + "storybook": { "status": "wip" }, + "react": { + "status": "wip", + "link": "https://github.com/Talend/ui/blob/master/packages/design-system/src/components/Badge/Badge.tsx" + }, + "i18n": { "status": "wip" } + }, + "breadcrumbs": { + "figma": { + "status": "ok", + "link": "https://www.figma.com/file/8ifUyNjdZkWBmKKrgfB675/Breadcrumbs" + }, + "storybook": { "status": "ok" }, + "react": { + "status": "ok", + "link": "https://github.com/Talend/ui/blob/master/packages/design-system/src/components/Breadcrumbs/Breadcrumbs.tsx" + }, + "i18n": { "status": "na" } + }, + "button": { + "figma": { + "status": "ok", + "link": "https://www.figma.com/file/vvJTHBAgiLfBpgeKEjmvvZ/Buttons" + }, + "storybook": { "status": "ok" }, + "react": { + "status": "ok", + "link": "https://github.com/Talend/ui/blob/master/packages/design-system/src/components/Button/Button.tsx" + }, + "i18n": { "status": "na" } + }, + "buttonAsLink": { + "figma": { + "status": "ok", + "link": "https://www.figma.com/file/vvJTHBAgiLfBpgeKEjmvvZ/Buttons" + }, + "storybook": { + "status": "ok" + }, + "react": { + "status": "ok", + "link": "https://github.com/Talend/ui/blob/master/packages/design-system/src/components/ButtonAsLink/ButtonAsLink.tsx" + }, + "i18n": { "status": "na" } + }, + "buttonIcon": { + "figma": { + "status": "ok", + "link": "https://www.figma.com/file/KuJ1PlP77uyXlfOhdniqsZ/ButtonIcon?node-id=1%3A75" + }, + "storybook": { "status": "ok" }, + "react": { + "status": "ok", + "link": "https://github.com/Talend/ui/blob/master/packages/design-system/src/components/ButtonIcon/variations/ButtonIcon.tsx" + }, + "i18n": { "status": "na" } + }, + "card": { + "figma": { "status": "wip" }, + "storybook": { "status": "wip" }, + "react": { + "status": "ok", + "link": "https://github.com/Talend/ui/blob/master/packages/design-system/src/components/WIP/Card/Card.tsx" + }, + "i18n": { "status": "na" } + }, + "combobox": { + "figma": { + "status": "wip", + "link": "https://www.figma.com/file/XLAg5NdlNDKGVp6IgqDzGC/Combo-box" + }, + "storybook": { "status": "wip" }, + "react": { + "status": "wip", + "link": "https://github.com/Talend/ui/blob/master/packages/design-system/src/components/WIP/Combobox/Combobox.tsx" + }, + "i18n": { "status": "na" } + }, + "divider": { + "figma": { + "status": "ok", + "link": "https://www.figma.com/file/OGrnGJ6dCVvU0CRYsOuiTZ/Divider" + }, + "storybook": { "status": "ok" }, + "react": { + "status": "ok", + "link": "https://github.com/Talend/ui/blob/master/packages/design-system/src/components/Divider/Divider.tsx" + }, + "i18n": { "status": "na" } + }, + "drawer": { + "figma": { + "status": "wip", + "link": "https://www.figma.com/file/x0RxG7E0CzVWDycXtNgq7H/Drawer" + }, + "storybook": { "status": "wip" }, + "react": { + "status": "wip", + "link": "https://github.com/Talend/ui/blob/master/packages/design-system/src/components/WIP/Drawer/variants/FloatingDrawer/FloatingDrawer.tsx" + }, + "i18n": { "status": "na" } + }, + "floatingDrawer": { + "figma": { + "status": "wip", + "link": "https://www.figma.com/file/x0RxG7E0CzVWDycXtNgq7H/Drawer" + }, + "storybook": { "status": "wip" }, + "react": { + "status": "wip", + "link": "https://github.com/Talend/ui/blob/master/packages/design-system/src/components/WIP/Drawer/variants/FloatingDrawer/FloatingDrawer.tsx" + }, + "i18n": { "status": "na" } + }, + "dropdown": { + "figma": { + "status": "ok", + "link": "https://www.figma.com/file/IUeLBwjDCMkpdO7OtZ29u1/Dropdown" + }, + "storybook": { "status": "ok" }, + "react": { + "status": "ok", + "link": "https://github.com/Talend/ui/blob/master/packages/design-system/src/components/Dropdown/Dropdown.tsx" + }, + "i18n": { "status": "na" } + }, + "emptyState": { + "figma": { + "status": "ok", + "link": "https://www.figma.com/file/6XBBCBVOhyX6yTaNcZQiti/Empty-States" + }, + "storybook": { "status": "ok" }, + "react": { + "status": "ok", + "link": "https://github.com/Talend/ui/blob/master/packages/design-system/src/components/EmptyState/EmptyState.tsx" + }, + "i18n": { "status": "wip" } + }, + "errorState": { + "figma": { + "status": "ok", + "link": "https://www.figma.com/file/hMYM9HGXajJpWdGwRb5ITR/Coral?node-id=5523%3A27380" + }, + "storybook": { "status": "ok" }, + "react": { + "status": "ok", + "link": "https://github.com/Talend/ui/blob/master/packages/design-system/src/components/ErrorState/ErrorState.tsx" + }, + "i18n": { "status": "na" } + }, + "form": { + "figma": { + "status": "ok", + "link": "https://www.figma.com/file/FaYIWpJeP6LwjWr78L8eAr/Forms?node-id=58%3A0" + }, + "storybook": { "status": "ok" }, + "react": { + "status": "ok", + "link": "https://github.com/Talend/ui/blob/master/packages/design-system/src/components/Form/Form.tsx" + }, + "i18n": { "status": "na" } + }, + "formAffix": { + "figma": { + "status": "ok", + "link": "https://www.figma.com/file/qc8oUSyVJM67gSsbTShftt/%F0%9F%93%90-Zoning?node-id=249%3A129" + }, + "storybook": { "status": "ok" }, + "react": { + "status": "ok", + "link": "https://github.com/Talend/ui/blob/master/packages/design-system/src/components/Form/Affix/variations/AffixSelect.tsx" + }, + "i18n": { "status": "na" } + }, + "formButton": { + "figma": { + "status": "ok", + "link": "https://www.figma.com/file/FaYIWpJeP6LwjWr78L8eAr/?node-id=34%3A4932" + }, + "storybook": { "status": "ok" }, + "react": { + "status": "ok", + "link": "https://github.com/Talend/ui/blob/master/packages/design-system/src/components/Form/Buttons/Buttons.tsx" + }, + "i18n": { "status": "na" } + }, + "formField": { + "figma": { + "status": "ok", + "link": "https://www.figma.com/file/hMYM9HGXajJpWdGwRb5ITR/Coral?node-id=5300%3A21659" + }, + "storybook": { "status": "ok" }, + "react": { + "status": "ok" + }, + "i18n": { "status": "na" } + }, + "formFieldDatalist": { + "figma": { + "status": "ok", + "link": "ttps://www.figma.com/file/qc8oUSyVJM67gSsbTShftt/%F0%9F%93%90-Zoning?node-id=252%3A0" + }, + "storybook": { "status": "ok" }, + "react": { + "status": "ok", + "link": "https://github.com/Talend/ui/blob/master/packages/design-system/src/components/Form/Field/Datalist/Datalist.tsx" + }, + "i18n": { "status": "na" } + }, + "formFieldInputPassword": { + "figma": { + "status": "ok", + "link": "https://www.figma.com/file/qc8oUSyVJM67gSsbTShftt/%F0%9F%93%90-Zoning?node-id=245%3A294" + }, + "storybook": { "status": "ok" }, + "react": { + "status": "ok", + "link": "https://github.com/Talend/ui/blob/master/packages/design-system/src/components/Form/Field/Input/Password/Password.tsx" + }, + "i18n": { "status": "ok" } + }, + "formFieldInputCheckbox": { + "figma": { + "status": "ok", + "link": "https://www.figma.com/file/9q3dOyrI7zRR7dHDe2jRpz/Checkbox?node-id=0%3A1" + }, + "storybook": { "status": "ok" }, + "react": { + "status": "ok", + "link": "https://github.com/Talend/ui/blob/master/packages/design-system/src/components/Form/Field/Input/Input.Checkbox.tsx" + }, + "i18n": { "status": "na" } + }, + "formFieldInputColor": { + "figma": { + "status": "wip", + "link": "https://www.figma.com/file/qc8oUSyVJM67gSsbTShftt/%F0%9F%93%90-Zoning?node-id=548%3A0" + }, + "storybook": { "status": "ok" }, + "react": { + "status": "ok", + "link": "https://github.com/Talend/ui/blob/master/packages/design-system/src/components/Form/Field/Input/Input.Color.tsx" + }, + "i18n": { "status": "na" } + }, + "formFieldInputCopy": { + "figma": { + "status": "ok", + "link": "https://www.figma.com/file/qc8oUSyVJM67gSsbTShftt/%F0%9F%93%90-Zoning?node-id=548%3A11" + }, + "storybook": { "status": "ok" }, + "react": { + "status": "ok", + "link": "https://github.com/Talend/ui/blob/master/packages/design-system/src/components/Form/Field/Input/Input.Copy.tsx" + }, + "i18n": { "status": "ok" } + }, + "formFieldInputDate": { + "figma": { + "status": "ok", + "link": "https://www.figma.com/file/qc8oUSyVJM67gSsbTShftt/%F0%9F%93%90-Zoning?node-id=245%3A219" + }, + "storybook": { "status": "ok" }, + "react": { + "status": "ok", + "link": "https://github.com/Talend/ui/blob/master/packages/design-system/src/components/Form/Field/Input/Input.Date.tsx" + }, + "i18n": { "status": "na" } + }, + "formFieldInputDateTimeLocal": { + "figma": { + "status": "ok", + "link": "https://www.figma.com/file/qc8oUSyVJM67gSsbTShftt/%F0%9F%93%90-Zoning?node-id=245%3A219" + }, + "storybook": { "status": "ok" }, + "react": { + "status": "ok", + "link": "https://github.com/Talend/ui/blob/master/packages/design-system/src/components/Form/Field/Input/Input.DatetimeLocal.tsx" + }, + "i18n": { "status": "na" } + }, + "formFieldInputEmail": { + "figma": { + "status": "ok", + "link": "https://www.figma.com/file/qc8oUSyVJM67gSsbTShftt/%F0%9F%93%90-Zoning?node-id=245%3A219" + }, + "storybook": { "status": "ok" }, + "react": { + "status": "ok", + "link": "https://github.com/Talend/ui/blob/master/packages/design-system/src/components/Form/Field/Input/Input.Checkbox.tsx" + }, + "i18n": { "status": "na" } + }, + "formFieldInputFile": { + "figma": { + "status": "ok", + "link": "ttps://www.figma.com/file/qc8oUSyVJM67gSsbTShftt/%F0%9F%93%90-Zoning?node-id=245%3A233" + }, + "storybook": { "status": "ok" }, + "react": { + "status": "ok", + "link": "https://github.com/Talend/ui/blob/master/packages/design-system/src/components/Form/Field/Input/Input.File.tsx" + }, + "i18n": { "status": "ok" } + }, + "formFieldInputMonth": { + "figma": { + "status": "ok", + "link": "https://www.figma.com/file/qc8oUSyVJM67gSsbTShftt/%F0%9F%93%90-Zoning?node-id=245%3A219" + }, + "storybook": { "status": "ok" }, + "react": { + "status": "ok", + "link": "https://github.com/Talend/ui/blob/master/packages/design-system/src/components/Form/Field/Input/Input.Month.tsx" + }, + "i18n": { "status": "na" } + }, + "formFieldInputNumber": { + "figma": { + "status": "ok", + "link": "https://www.figma.com/file/qc8oUSyVJM67gSsbTShftt/%F0%9F%93%90-Zoning?node-id=548%3A53" + }, + "storybook": { "status": "ok" }, + "react": { + "status": "ok", + "link": "https://github.com/Talend/ui/blob/master/packages/design-system/src/components/Form/Field/Input/Input.Checkbox.tsx" + }, + "i18n": { "status": "na" } + }, + "formFieldInputRadio": { + "figma": { + "status": "ok", + "link": "https://www.figma.com/file/qc8oUSyVJM67gSsbTShftt/%F0%9F%93%90-Zoning?node-id=44%3A76" + }, + "storybook": { "status": "ok" }, + "react": { + "status": "ok", + "link": "https://github.com/Talend/ui/blob/master/packages/design-system/src/components/Form/Field/Input/Input.Radio.tsx" + }, + "i18n": { "status": "na" } + }, + "formFieldInputSearch": { + "figma": { + "status": "ok", + "link": "https://www.figma.com/file/qc8oUSyVJM67gSsbTShftt/%F0%9F%93%90-Zoning?node-id=245%3A198" + }, + "storybook": { "status": "ok" }, + "react": { + "status": "ok", + "link": "https://github.com/Talend/ui/blob/master/packages/design-system/src/components/Form/Field/Input/Input.Search.tsx" + }, + "i18n": { "status": "na" } + }, + "formFieldInputTel": { + "figma": { + "status": "ok", + "link": "https://www.figma.com/file/qc8oUSyVJM67gSsbTShftt/%F0%9F%93%90-Zoning?node-id=245%3A219" + }, + "storybook": { "status": "ok" }, + "react": { + "status": "ok", + "link": "https://github.com/Talend/ui/blob/master/packages/design-system/src/components/Form/Field/Input/Input.Tel.tsx" + }, + "i18n": { "status": "na" } + }, + "formFieldInputText": { + "figma": { + "status": "ok", + "link": "https://www.figma.com/file/qc8oUSyVJM67gSsbTShftt/%F0%9F%93%90-Zoning?node-id=245%3A219" + }, + "storybook": { "status": "ok" }, + "react": { + "status": "ok", + "link": "https://github.com/Talend/ui/blob/master/packages/design-system/src/components/Form/Field/Input/Input.Text.tsx" + }, + "i18n": { "status": "na" } + }, + "formFieldInputTime": { + "figma": { + "status": "ok", + "link": "https://www.figma.com/file/qc8oUSyVJM67gSsbTShftt/%F0%9F%93%90-Zoning?node-id=245%3A219" + }, + "storybook": { "status": "ok" }, + "react": { + "status": "ok", + "link": "https://github.com/Talend/ui/blob/master/packages/design-system/src/components/Form/Field/Input/Input.Time.tsx" + }, + "i18n": { "status": "na" } + }, + "formFieldInputToggleSwitch": { + "figma": { + "status": "ok", + "link": "https://www.figma.com/file/qc8oUSyVJM67gSsbTShftt/%F0%9F%93%90-Zoning?node-id=252%3A9" + }, + "storybook": { "status": "ok" }, + "react": { + "status": "ok", + "link": "https://github.com/Talend/ui/blob/master/packages/design-system/src/components/Form/Field/Input/Input.ToggleSwitch.tsx" + }, + "i18n": { "status": "na" } + }, + "formFieldInputUrl": { + "figma": { + "status": "ok", + "link": "https://www.figma.com/file/qc8oUSyVJM67gSsbTShftt/%F0%9F%93%90-Zoning?node-id=245%3A219" + }, + "storybook": { "status": "ok" }, + "react": { + "status": "ok", + "link": "https://github.com/Talend/ui/blob/master/packages/design-system/src/components/Form/Field/Input/Input.Url.tsx" + }, + "i18n": { "status": "na" } + }, + "formFieldInputWeek": { + "figma": { + "status": "ok", + "link": "https://www.figma.com/file/qc8oUSyVJM67gSsbTShftt/%F0%9F%93%90-Zoning?node-id=245%3A219" + }, + "storybook": { "status": "ok" }, + "react": { + "status": "ok", + "link": "https://github.com/Talend/ui/blob/master/packages/design-system/src/components/Form/Field/Input/Input.Week.tsx" + }, + "i18n": { "status": "na" } + }, + "formFieldInputSelect": { + "figma": { + "status": "ok", + "link": "https://www.figma.com/file/qc8oUSyVJM67gSsbTShftt/%F0%9F%93%90-Zoning?node-id=245%3A211" + }, + "storybook": { "status": "ok" }, + "react": { + "status": "ok", + "link": "https://github.com/Talend/ui/blob/master/packages/design-system/src/components/Form/Field/Select/Select.tsx" + }, + "i18n": { "status": "na" } + }, + "formFieldInputTextArea": { + "figma": { + "status": "ok", + "link": "https://www.figma.com/file/qc8oUSyVJM67gSsbTShftt/%F0%9F%93%90-Zoning?node-id=245%3A268" + }, + "storybook": { "status": "ok" }, + "react": { + "status": "ok", + "link": "https://github.com/Talend/ui/blob/master/packages/design-system/src/components/Form/Field/Textarea/Textarea.tsx" + }, + "i18n": { "status": "na" } + }, + "formEnumeration": { + "figma": { "status": "ok" }, + "storybook": { "status": "ok" }, + "react": { + "status": "wip", + "link": "https://github.com/Talend/ui/blob/master/packages/design-system/src/components/Enumeration/Enumeration.component.tsx" + }, + "i18n": { "status": "na" } + }, + "formFieldset": { + "figma": { + "status": "ok", + "link": "https://www.figma.com/file/qc8oUSyVJM67gSsbTShftt/%F0%9F%93%90-Zoning?node-id=349%3A227" + }, + "storybook": { "status": "ok" }, + "react": { + "status": "ok", + "link": "https://github.com/Talend/ui/blob/master/packages/design-system/src/components/Form/Fieldset/Fieldset.tsx" + }, + "i18n": { "status": "na" } + }, + "icon": { + "figma": { "status": "ok" }, + "storybook": { "status": "ok" }, + "react": { + "status": "ok", + "link": "https://github.com/Talend/ui/blob/master/packages/design-system/src/components/Icon/Icon.tsx" + }, + "i18n": { "status": "na" } + }, + "sizedIcon": { + "figma": { "status": "ok" }, + "storybook": { "status": "ok" }, + "react": { + "status": "ok", + "link": "https://github.com/Talend/ui/blob/master/packages/design-system/src/components/Icon/SizedIcon.tsx" + }, + "i18n": { "status": "na" } + }, + "inlineEditing": { + "figma": { + "status": "ok", + "link": "https://www.figma.com/file/Ve55mrVTPmg8yDo8VKRp83/Inline-editing?node-id=422%3A3426" + }, + "storybook": { "status": "ok" }, + "react": { + "status": "ok", + "link": "https://github.com/Talend/ui/blob/master/packages/design-system/src/components/InlineEditing/variations/InlineEditing.text.tsx" + }, + "i18n": { "status": "ok" } + }, + "inlineMessage": { + "figma": { + "status": "ok", + "link": "https://www.figma.com/file/qc8oUSyVJM67gSsbTShftt/%F0%9F%93%90-Zoning?node-id=12%3A96" + }, + "storybook": { "status": "ok" }, + "react": { + "status": "ok", + "link": "https://github.com/Talend/ui/blob/master/packages/design-system/src/components/InlineMessage/InlineMessage.tsx" + }, + "i18n": { "status": "na" } + }, + "link": { + "figma": { + "status": "ok", + "link": "https://www.figma.com/file/l3FmBFqbeqqSlz9TBZKgWS/Links" + }, + "storybook": { "status": "ok" }, + "react": { + "status": "ok", + "link": "https://github.com/Talend/ui/blob/master/packages/design-system/src/components/Link/Link.tsx" + }, + "i18n": { "status": "ok" } + }, + "loading": { + "figma": { "status": "ok" }, + "storybook": { "status": "wip" }, + "react": { + "status": "ok", + "link": "https://github.com/Talend/ui/blob/master/packages/design-system/src/components/Loading/Loading.tsx" + }, + "i18n": { "status": "na" } + }, + "message": { + "figma": { + "status": "ok", + "link": "https://www.figma.com/file/MSrfT0wzGwQSL8GuyG3UE7/Messages?node-id=122%3A42331" + }, + "storybook": { "status": "ok" }, + "react": { + "status": "ok", + "link": "https://github.com/Talend/ui/blob/master/packages/design-system/src/components/Message/Primitive/MessagePrimitive.tsx" + }, + "i18n": { "status": "na" } + }, + "modal": { + "figma": { + "status": "ok", + "link": "https://www.figma.com/file/0Jolh2prAAdfO5224n3OU3/Modal" + }, + "storybook": { "status": "wip" }, + "react": { + "status": "ok", + "link": "https://github.com/Talend/ui/blob/master/packages/design-system/src/components/Modal/Modal.tsx" + }, + "i18n": { "status": "na" } + }, + "popover": { + "figma": { "status": "wip" }, + "storybook": { "status": "wip" }, + "react": { + "status": "wip", + "link": "https://github.com/Talend/ui/blob/master/packages/design-system/src/components/WIP/Popover/Popover.tsx" + }, + "i18n": { "status": "na" } + }, + "richRadioButton": { + "figma": { "status": "ok" }, + "storybook": { "status": "wip" }, + "react": { + "status": "wip", + "link": "https://github.com/Talend/ui/blob/master/packages/design-system/src/components/RichRadioButton/RichRadioButton.component.tsx" + }, + "i18n": { "status": "na" } + }, + "skeleton": { + "figma": { + "status": "ok", + "link": "https://www.figma.com/file/RMs7GdNC3mnAwHgG4Firw9/Skeletons" + }, + "storybook": { "status": "ok" }, + "react": { + "status": "ok", + "link": "https://github.com/Talend/ui/blob/master/packages/design-system/src/components/Skeleton/Skeleton.tsx" + }, + "i18n": { "status": "na" } + }, + "stack": { + "figma": { + "status": "na", + "link": "https://www.figma.com/file/qc8oUSyVJM67gSsbTShftt/%F0%9F%93%90-Zoning?node-id=1044%3A237" + }, + "storybook": { "status": "ok" }, + "react": { + "status": "ok", + "link": "https://github.com/Talend/ui/blob/master/packages/design-system/src/components/Stack/Primitive/StackPrimitive.tsx" + }, + "i18n": { "status": "na" } + }, + "status": { + "figma": { + "status": "ok", + "link": "https://www.figma.com/file/joEoPYw910CgGO0DiKWRoD/Status?node-id=2%3A72" + }, + "storybook": { "status": "ok" }, + "react": { + "status": "ok", + "link": "https://github.com/Talend/ui/blob/master/packages/design-system/src/components/Status/Status.tsx" + }, + "i18n": { "status": "ok" } + }, + "stepper": { + "figma": { + "status": "ok", + "link": "https://www.figma.com/file/WUVKJmcDHfR7K1q1lYhaHk/?node-id=1%3A5" + }, + "storybook": { "status": "ok" }, + "react": { + "status": "ok", + "link": "https://github.com/Talend/ui/blob/master/packages/design-system/src/components/Stepper/Stepper.tsx" + }, + "i18n": { "status": "ok" } + }, + "stepperStep": { + "figma": { + "status": "ok", + "link": "https://www.figma.com/file/WUVKJmcDHfR7K1q1lYhaHk/?node-id=1%3A4" + }, + "storybook": { "status": "ok" }, + "react": { + "status": "ok", + "link": "https://github.com/Talend/ui/blob/master/packages/design-system/src/components/Stepper/Step/Primitive/Step.tsx" + }, + "i18n": { "status": "na" } + }, + "switch": { + "figma": { "status": "ok" }, + "storybook": { "status": "ok" }, + "react": { + "status": "ok", + "link": "https://github.com/Talend/ui/blob/master/packages/design-system/src/components/Switch/Switch.tsx" + }, + "i18n": { "status": "na" } + }, + "tabs": { + "figma": { + "status": "ok", + "link": "https://www.figma.com/file/bSesPlHPWLPA66wySm8VYV/Tabs" + }, + "storybook": { "status": "wip" }, + "react": { + "status": "wip", + "link": "https://github.com/Talend/ui/blob/master/packages/design-system/src/components/WIP/Tabs/variants/Tabs.tsx" + }, + "i18n": { "status": "na" } + }, + "tag": { + "figma": { + "status": "ok", + "link": "https://www.figma.com/file/wggW0Nf0ZujylGaXt5Snnn/Tags" + }, + "storybook": { "status": "ok" }, + "react": { + "status": "ok", + "link": "https://github.com/Talend/ui/blob/master/packages/design-system/src/components/Tag/Tag.tsx" + }, + "i18n": { "status": "na" } + }, + "tooltip": { + "figma": { + "status": "ok", + "link": "https://www.figma.com/file/93AaDV2pC1tK9J1O6IbHho/Tooltips" + }, + "storybook": { "status": "ok" }, + "react": { + "status": "ok", + "link": "https://github.com/Talend/ui/blob/master/packages/design-system/src/components/Tooltip/Tooltip.tsx" + }, + "i18n": { "status": "na" } + } +} diff --git a/packages/design-system/CHANGELOG.md b/packages/design-system/CHANGELOG.md index 98da3d4aa5..01f77810ce 100644 --- a/packages/design-system/CHANGELOG.md +++ b/packages/design-system/CHANGELOG.md @@ -1,5 +1,97 @@ # @talend/design-system +## 11.0.5 + +### Patch Changes + +- 7ebe036: Revert "fix: Fix exports to allow deep imports" +- Updated dependencies [7ebe036] + - @talend/utils@3.2.3 + +## 11.0.4 + +### Patch Changes + +- f321a0d: Remove unused tsconfig.esm.json (initially added to use TSC but we stay with babel at the end) +- Updated dependencies [f321a0d] + - @talend/design-tokens@3.4.1 + - @talend/assets-api@1.5.1 + - @talend/utils@3.2.2 + +## 11.0.3 + +### Patch Changes + +- 94aad7d: fix: Fix exports to allow deep imports +- Updated dependencies [94aad7d] + - @talend/utils@3.2.1 + +## 11.0.2 + +### Patch Changes + +- ae1e3dc: fix: declaration generation for ThemeProviderWithoutGlobals + +## 11.0.1 + +### Patch Changes + +- 11c75a1: fix: make ThemeProviderWithoutGlobals working since esm build + +## 11.0.0 + +### Major Changes + +- c3750a1: chore: upgrade dependencies + + Major upgrade for all packages that have a peerDependency on react or react-dom. Those packages now ask for react@18 and react-dom@18. + +### Patch Changes + +- Updated dependencies [c3750a1] + - @talend/design-tokens@3.4.0 + - @talend/assets-api@1.5.0 + - @talend/utils@3.2.0 + +## 10.6.0 + +### Minor Changes + +- 3bd16fc: Add support to ESM + +### Patch Changes + +- Updated dependencies [3bd16fc] +- Updated dependencies [d053412] +- Updated dependencies [9b66a09] + - @talend/design-tokens@3.3.0 + - @talend/assets-api@1.4.0 + - @talend/utils@3.1.0 + +## 10.5.0 + +### Minor Changes + +- 803c4e1: feat: add ThemeProvider without globals + +## 10.4.6 + +### Patch Changes + +- 95bb74f: Design system drawer now has a data attribute to identify when it is opened + +## 10.4.5 + +### Patch Changes + +- 5b7240e: Form field label property "required" can now be overriden by passing props + +## 10.4.4 + +### Patch Changes + +- 6ff9f03: DGT-528: Fix QualityBar rounding issue when the invalid or empty percentages were rounded to 0. Set a miminum value for the rounding to prevent UI inconsistencies + ## 10.4.3 ### Patch Changes diff --git a/packages/design-system/package.json b/packages/design-system/package.json index 6f8e762d8d..fc1a3be309 100644 --- a/packages/design-system/package.json +++ b/packages/design-system/package.json @@ -1,13 +1,25 @@ { "name": "@talend/design-system", - "version": "10.4.3", + "version": "11.0.5", "description": "Talend Design System", "main": "lib/index.js", "types": "lib/index.d.ts", + "module": "./lib-esm/index.js", + "exports": { + "./lib/*": { + "import": "./lib-esm/*/index.js", + "require": "./lib/*/index.js" + }, + ".": { + "import": "./lib-esm/index.js", + "require": "./lib/index.js" + } + }, "scripts": { "build:lib": "talend-scripts build", "build:lib:umd": "talend-scripts build --umd --dev", "build:lib:umd:min": "talend-scripts build --umd --prod", + "build:lib:esm": "talend-scripts build --esm", "pre-release": "npm run build:lib:umd && npm run build:lib:umd:min", "watch": "talend-scripts build --watch", "test": "talend-scripts test", @@ -33,9 +45,9 @@ }, "dependencies": { "@floating-ui/react": "^0.24.8", - "@talend/assets-api": "^1.3.2", - "@talend/design-tokens": "^3.2.0", - "@talend/utils": "^3.0.4", + "@talend/assets-api": "^1.5.1", + "@talend/design-tokens": "^3.4.1", + "@talend/utils": "^3.2.3", "classnames": "^2.5.1", "modern-css-reset": "^1.4.0", "react-transition-group": "^2.9.0", @@ -46,57 +58,56 @@ }, "devDependencies": { "@cypress/react": "^7.0.3", - "@cypress/webpack-dev-server": "^3.7.4", + "@cypress/webpack-dev-server": "^3.10.0", "@jest/globals": "^29.7.0", - "@storybook/addon-a11y": "^7.6.17", - "@storybook/addon-actions": "^7.6.17", - "@storybook/addon-essentials": "^7.6.17", - "@storybook/addon-interactions": "^7.6.17", - "@storybook/addon-links": "^7.6.17", - "@storybook/addons": "^7.6.17", - "@storybook/blocks": "^7.6.17", - "@storybook/core-events": "^7.6.17", + "@storybook/addon-a11y": "^7.6.19", + "@storybook/addon-actions": "^7.6.19", + "@storybook/addon-essentials": "^7.6.19", + "@storybook/addon-interactions": "^7.6.19", + "@storybook/addon-links": "^7.6.19", + "@storybook/addons": "^7.6.19", + "@storybook/blocks": "^7.6.19", + "@storybook/core-events": "^7.6.19", "@storybook/preset-scss": "^1.0.3", - "@storybook/react": "^7.6.17", + "@storybook/react": "^7.6.19", "@storybook/testing-library": "^0.2.2", - "@storybook/theming": "^7.6.17", + "@storybook/theming": "^7.6.19", "@svgr/webpack": "^5.5.0", - "@talend/eslint-config": "^13.0.3", - "@talend/eslint-plugin": "^1.1.1", - "@talend/icons": "^7.7.2", + "@talend/eslint-config": "^13.2.0", + "@talend/eslint-plugin": "^1.3.0", + "@talend/icons": "^7.10.2", "@talend/locales-design-system": "^7.15.1", - "@talend/scripts-core": "^16.3.5", - "@talend/scripts-config-babel": "^13.3.1", - "@talend/scripts-config-react-webpack": "^16.6.0", - "@talend/scripts-config-storybook-lib": "^5.3.1", - "@talend/scripts-config-typescript": "^11.2.1", - "@talend/storybook-docs": "^2.4.2", - "@testing-library/cypress": "^10.0.1", - "@testing-library/jest-dom": "^6.4.2", - "@trivago/prettier-plugin-sort-imports": "^4.3.0", + "@talend/scripts-core": "^16.5.1", + "@talend/scripts-config-babel": "^13.5.0", + "@talend/scripts-config-react-webpack": "^16.8.0", + "@talend/scripts-config-storybook-lib": "^5.4.0", + "@talend/scripts-config-typescript": "^11.3.0", + "@talend/storybook-docs": "^2.5.0", + "@testing-library/cypress": "^10.0.2", + "@testing-library/jest-dom": "^6.4.6", "@types/classnames": "^2.3.1", "@types/jest": "^29.5.12", "@types/jest-axe": "^3.5.9", - "@types/react-is": "^18.2.4", - "@types/react": "^18.2.60", - "@types/react-dom": "^18.2.19", + "@types/react-is": "^18.3.0", + "@types/react": "^18.3.3", + "@types/react-dom": "^18.3.0", "@types/react-transition-group": "^2.9.2", - "@types/react-virtualized": "^9.21.29", + "@types/react-virtualized": "^9.21.30", "browser-sync": "^2.29.3", "browser-sync-webpack-plugin": "^2.3.0", "concurrently": "^8.2.2", - "core-js": "^3.36.0", - "cypress": "^13.6.6", + "core-js": "^3.37.1", + "cypress": "^13.11.0", "focus-outline-manager": "^1.0.2", - "i18next": "^23.10.0", + "i18next": "^23.11.5", "i18next-scanner": "^4.4.0", - "i18next-scanner-typescript": "^1.2.0", + "i18next-scanner-typescript": "^1.2.1", "jest-axe": "^8.0.0", "mdx-embed": "^1.1.2", - "react": "^18.2.0", - "react-dom": "^18.2.0", + "react": "^18.3.1", + "react-dom": "^18.3.1", "react-helmet": "^6.1.0", - "react-hook-form": "^7.50.1", + "react-hook-form": "^7.51.5", "react-i18next": "^13.5.0", "react-is": "^17.0.2", "react-router-dom": "~6.3.0", @@ -107,9 +118,9 @@ "@talend/locales-design-system": "^7.15.1", "@testing-library/react": "^14.0.0", "@testing-library/user-event": "^14.5.1", - "i18next": "^23.10.0", - "react": "^16.14.0 || ^17.0.0 || ^18.0.0", - "react-dom": "^16.14.0 || ^17.0.0 || ^18.0.0", + "i18next": "^23.11.5", + "react": "^18.3.1", + "react-dom": "^18.3.1", "react-i18next": "^13.5.0", "react-is": "^17.0.2" } diff --git a/packages/design-system/src/components/Drawer/__snapshots__/Drawer.test.tsx.snap b/packages/design-system/src/components/Drawer/__snapshots__/Drawer.test.tsx.snap index 5a47831a2d..0b34e03fcd 100644 --- a/packages/design-system/src/components/Drawer/__snapshots__/Drawer.test.tsx.snap +++ b/packages/design-system/src/components/Drawer/__snapshots__/Drawer.test.tsx.snap @@ -11,6 +11,7 @@ exports[`FloatingDrawer should render a11y html 1`] = `