diff --git a/.github/actions/sourceclear/Dockerfile b/.github/actions/sourceclear/Dockerfile deleted file mode 100644 index e22853a74cd..00000000000 --- 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 7a27be95d90..00000000000 --- 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 9108988b3b8..00000000000 --- 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 58ddb436ea2..f82e2a03975 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 d6791c165d0..529d7a204ba 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 e1e777c1a89..22dca6b39bf 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 646a5fb521d..54e6b9dac5e 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 442d2c03767..00000000000 --- 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 eb1a26be9a3..00000000000 --- 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 abc39076d1d..ed9f9e57949 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 da1cc32ff32..34f6040084a 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 8d895c14782..c1d96d52498 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 00000000000..a714cebbdd0 --- /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 1b982c13391..aa7ef491ee5 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 438a6dc418d..d5133004d79 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 596f65f0fc7..81a0732d093 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 4a5254fb490..8c3f8cedfac 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 e13a97c2121..135d9eb5a9c 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 3380fe65541..a6881c47202 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 0a5f735abfe..0a9ac93852e 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 215de3808e0..c0a00ef63b4 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 9e30c1fe434..58e3019d5ee 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 344b0b04e40..87a05e87941 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 00000000000..3405e576ec1 --- /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 873a69ed950..14d0879c20f 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 198821c9422..39765241792 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 ddaa3623178..f83b59f97bf 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 5d61dc0c2eb..5c5d1d37b3f 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 8d7efc61104..1438509fb9d 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 7c478f1dc36..9ab9f957109 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 a1f986c3620..579af4e7c8f 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 0a05a996b49..148391f5f16 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 e009cf57271..f085dbce927 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 00000000000..3405e576ec1 --- /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 da104dac134..20ae1a83af9 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 b5d84d87c8f..00000000000 --- 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 bf50c705d65..0423ebff16d 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 9e75ad476c8..293597fa8dd 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 b7021ea3939..147cd642ffa 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 2bb4da7bc52..00000000000 --- 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 3cd934df835..00000000000 --- 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 addca173f7d..00000000000 --- 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 501430258a0..00000000000 --- 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 00000000000..3405e576ec1 --- /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 4fe64f65b49..cf8dd408649 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 4c21f15014f..66408b9d102 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 a64bbd22b51..7c56e1601c5 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 920f5d18ecb..bd23bb3c34b 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 9b800d8b335..b5b2ccec11e 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 4e2eff377b8..f77bab07160 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 a12ddc7b699..98a4cc2eb45 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 33f62fb20a5..65b38709456 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 5c1e44353ba..3c171893519 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 eac23203e22..5459b71e0cc 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 736f9a141a4..7f2937bfb80 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 8e69cae9701..aa7a8e6d35a 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 c445458d045..f76df7dd035 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 00000000000..5b10cd04196 --- /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 29114f26ce9..7cc385d10ba 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 95d0680c2dd..f5d0e7813e0 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 656cc91dde4..b3448da07ca 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 6fd28972e8c..7350ce29881 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 288d6d6d30f..5822e785500 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 fa01702b23a..bdcc7759521 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 427135982a5..61524be4be1 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 00000000000..ad18832d27b --- /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 98da3d4aa5c..01f77810ced 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 6f8e762d8db..fc1a3be3099 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 5a47831a2d7..0b34e03fcd2 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`] = `