From f01bdb1e19bf72d5be16798f54a20945df8a407e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 26 Aug 2023 16:16:59 +0200 Subject: [PATCH 01/43] meta: bump prettier from 3.0.1 to 3.0.2 (#5651) Bumps [prettier](https://github.com/prettier/prettier) from 3.0.1 to 3.0.2. - [Release notes](https://github.com/prettier/prettier/releases) - [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md) - [Commits](https://github.com/prettier/prettier/compare/3.0.1...3.0.2) --- updated-dependencies: - dependency-name: prettier dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 8 ++++---- package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package-lock.json b/package-lock.json index c11bba3cde83e..208896b8ed94e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -64,7 +64,7 @@ "jest-environment-jsdom": "29.6.2", "jest-junit": "16.0.0", "nextjs-bundle-analysis": "0.5.0", - "prettier": "3.0.1", + "prettier": "3.0.2", "remark-preset-lint-node": "4.0.0", "remark-preset-prettier": "2.0.1", "storybook": "~7.3.2", @@ -20778,9 +20778,9 @@ } }, "node_modules/prettier": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.0.1.tgz", - "integrity": "sha512-fcOWSnnpCrovBsmFZIGIy9UqK2FaI7Hqax+DIO0A9UxeVoY4iweyaFjS5TavZN97Hfehph0nhsZnjlVKzEQSrQ==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.0.2.tgz", + "integrity": "sha512-o2YR9qtniXvwEZlOKbveKfDQVyqxbEIWn48Z8m3ZJjBjcCmUy3xZGIv+7AkaeuaTr6yPXJjwv07ZWlsWbEy1rQ==", "dev": true, "bin": { "prettier": "bin/prettier.cjs" diff --git a/package.json b/package.json index 9b9eb4a95bb73..7dbf48b5a8fc7 100644 --- a/package.json +++ b/package.json @@ -104,7 +104,7 @@ "jest-environment-jsdom": "29.6.2", "jest-junit": "16.0.0", "nextjs-bundle-analysis": "0.5.0", - "prettier": "3.0.1", + "prettier": "3.0.2", "remark-preset-lint-node": "4.0.0", "remark-preset-prettier": "2.0.1", "storybook": "~7.3.2", From 278269aaa123d06f2c471b1d7c59f80d8dc54ee4 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 26 Aug 2023 16:17:01 +0200 Subject: [PATCH 02/43] chore(deps): bump actions/setup-node from 3.7.0 to 3.8.1 (#5656) Bumps [actions/setup-node](https://github.com/actions/setup-node) from 3.7.0 to 3.8.1. - [Release notes](https://github.com/actions/setup-node/releases) - [Commits](https://github.com/actions/setup-node/compare/e33196f7422957bea03ed53f6fbb155025ffc7b8...5e21ff4d9bc1a8cf6de233a3057d20ec6b3fb69d) --- updated-dependencies: - dependency-name: actions/setup-node dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/build.yml | 2 +- .github/workflows/pull-request.yml | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index f11129542d5c6..522557e59c6e5 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -79,7 +79,7 @@ jobs: cache-build- - name: Set up Node.js - uses: actions/setup-node@e33196f7422957bea03ed53f6fbb155025ffc7b8 + uses: actions/setup-node@5e21ff4d9bc1a8cf6de233a3057d20ec6b3fb69d with: # We want to ensure that the Node.js version running here respects our supported versions node-version-file: '.nvmrc' diff --git a/.github/workflows/pull-request.yml b/.github/workflows/pull-request.yml index cd55bcbdd9147..dd603a0ec06ee 100644 --- a/.github/workflows/pull-request.yml +++ b/.github/workflows/pull-request.yml @@ -85,7 +85,7 @@ jobs: cache-lint- - name: Set up Node.js - uses: actions/setup-node@e33196f7422957bea03ed53f6fbb155025ffc7b8 + uses: actions/setup-node@5e21ff4d9bc1a8cf6de233a3057d20ec6b3fb69d with: # We want to ensure that the Node.js version running here respects our supported versions node-version-file: '.nvmrc' @@ -142,7 +142,7 @@ jobs: cache-tests- - name: Set up Node.js - uses: actions/setup-node@e33196f7422957bea03ed53f6fbb155025ffc7b8 + uses: actions/setup-node@5e21ff4d9bc1a8cf6de233a3057d20ec6b3fb69d with: # We want to ensure that the Node.js version running here respects our supported versions node-version-file: '.nvmrc' From 4578691b616ca217204cc7e8e367990c614321b0 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 26 Aug 2023 16:17:05 +0200 Subject: [PATCH 03/43] meta: bump sharp from 0.32.4 to 0.32.5 (#5655) Bumps [sharp](https://github.com/lovell/sharp) from 0.32.4 to 0.32.5. - [Release notes](https://github.com/lovell/sharp/releases) - [Changelog](https://github.com/lovell/sharp/blob/main/docs/changelog.md) - [Commits](https://github.com/lovell/sharp/compare/v0.32.4...v0.32.5) --- updated-dependencies: - dependency-name: sharp dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 8 ++++---- package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package-lock.json b/package-lock.json index 208896b8ed94e..118d2c945a69c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -34,7 +34,7 @@ "rehype-slug": "~5.1.0", "remark-gfm": "~3.0.1", "semver": "~7.5.4", - "sharp": "0.32.4", + "sharp": "0.32.5", "turbo": "^1.10.12", "typescript": "~5.1.6" }, @@ -23457,9 +23457,9 @@ } }, "node_modules/sharp": { - "version": "0.32.4", - "resolved": "https://registry.npmjs.org/sharp/-/sharp-0.32.4.tgz", - "integrity": "sha512-exUnZewqVZC6UXqXuQ8fyJJv0M968feBi04jb9GcUHrWtkRoAKnbJt8IfwT4NJs7FskArbJ14JAFGVuooszoGg==", + "version": "0.32.5", + "resolved": "https://registry.npmjs.org/sharp/-/sharp-0.32.5.tgz", + "integrity": "sha512-0dap3iysgDkNaPOaOL4X/0akdu0ma62GcdC2NBQ+93eqpePdDdr2/LM0sFdDSMmN7yS+odyZtPsb7tx/cYBKnQ==", "hasInstallScript": true, "dependencies": { "color": "^4.2.3", diff --git a/package.json b/package.json index 7dbf48b5a8fc7..f60f2dacf8bca 100644 --- a/package.json +++ b/package.json @@ -67,7 +67,7 @@ "rehype-slug": "~5.1.0", "remark-gfm": "~3.0.1", "semver": "~7.5.4", - "sharp": "0.32.4", + "sharp": "0.32.5", "turbo": "^1.10.12", "typescript": "~5.1.6" }, From 9c38611933434815dc306308068e201243d1cc56 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 26 Aug 2023 16:17:09 +0200 Subject: [PATCH 04/43] meta: bump stylelint-selector-bem-pattern from 3.0.0 to 3.0.1 (#5652) Bumps [stylelint-selector-bem-pattern](https://github.com/simonsmith/stylelint-selector-bem-pattern) from 3.0.0 to 3.0.1. - [Changelog](https://github.com/simonsmith/stylelint-selector-bem-pattern/blob/master/CHANGELOG.md) - [Commits](https://github.com/simonsmith/stylelint-selector-bem-pattern/compare/3.0.0...3.0.1) --- updated-dependencies: - dependency-name: stylelint-selector-bem-pattern dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 16 ++++++++-------- package.json | 2 +- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/package-lock.json b/package-lock.json index 118d2c945a69c..569f94e5cdeaf 100644 --- a/package-lock.json +++ b/package-lock.json @@ -72,7 +72,7 @@ "stylelint-config-recommended-scss": "12.0.0", "stylelint-config-standard": "34.0.0", "stylelint-order": "6.0.3", - "stylelint-selector-bem-pattern": "3.0.0", + "stylelint-selector-bem-pattern": "3.0.1", "user-agent-data-types": "0.3.1", "wait-on": "7.0.1" }, @@ -20554,9 +20554,9 @@ } }, "node_modules/postcss-bem-linter": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-bem-linter/-/postcss-bem-linter-4.0.0.tgz", - "integrity": "sha512-L70u6dY5FKcGw9UAV+cpKuhQ3WH77NQRxkkkhXTBaDAdWMMKUpUGDkcJJh+f6TreGq5cwobaHm0LlGFsnHwfxw==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-bem-linter/-/postcss-bem-linter-4.0.1.tgz", + "integrity": "sha512-jTG3uMo6n2YyxLBPLsRN+5R9djNJZ3mirAugvnYbZaZOwPmLb/MaQ2uql0fSdVYegjZBmX8tW5B0mfZigiXZ9Q==", "dev": true, "dependencies": { "minimatch": "^3.1.2", @@ -24305,15 +24305,15 @@ } }, "node_modules/stylelint-selector-bem-pattern": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/stylelint-selector-bem-pattern/-/stylelint-selector-bem-pattern-3.0.0.tgz", - "integrity": "sha512-78VZfelcR9aDj0XjAdRTuV5+AeStoaiW89Q9lUu2hakzqs2itP5OENPs8GPY5MPmnckS21+Mz0TiB/tEfLWP3A==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/stylelint-selector-bem-pattern/-/stylelint-selector-bem-pattern-3.0.1.tgz", + "integrity": "sha512-eh0tyyVyS62IOVzyi5oN0BKLJTHnolMWIqzpe0n3Wk26HxZegp/PiVKSUpK7vzVIAdAROemhypfMaH/xZorZrg==", "dev": true, "dependencies": { "eslint-plugin-jest": "^27.2.2", "lodash": ">=4.17.21", "postcss": "^8.4.24", - "postcss-bem-linter": "^4.0.0", + "postcss-bem-linter": "^4.0.1", "stylelint": ">=15.9.0" } }, diff --git a/package.json b/package.json index f60f2dacf8bca..f4d5fe573db59 100644 --- a/package.json +++ b/package.json @@ -112,7 +112,7 @@ "stylelint-config-recommended-scss": "12.0.0", "stylelint-config-standard": "34.0.0", "stylelint-order": "6.0.3", - "stylelint-selector-bem-pattern": "3.0.0", + "stylelint-selector-bem-pattern": "3.0.1", "user-agent-data-types": "0.3.1", "wait-on": "7.0.1" } From 85a657dd496ae5c976bfb8cd0db7bed9ae016a95 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 26 Aug 2023 14:17:56 +0000 Subject: [PATCH 05/43] meta: bump the react group with 1 update (#5669) Bumps the react group with 1 update: [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react). - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react) --- updated-dependencies: - dependency-name: "@types/react" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: react ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 8 ++++---- package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package-lock.json b/package-lock.json index 569f94e5cdeaf..bc29bfc5ea8e3 100644 --- a/package-lock.json +++ b/package-lock.json @@ -47,7 +47,7 @@ "@testing-library/user-event": "~14.4.3", "@types/jest": "29.5.3", "@types/prismjs": "^1.26.0", - "@types/react": "^18.2.20", + "@types/react": "^18.2.21", "@types/react-dom": "^18.2.7", "@types/semver": "^7.5.0", "@types/testing-library__jest-dom": "5.14.9", @@ -7063,9 +7063,9 @@ "dev": true }, "node_modules/@types/react": { - "version": "18.2.20", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.20.tgz", - "integrity": "sha512-WKNtmsLWJM/3D5mG4U84cysVY31ivmyw85dE84fOCk5Hx78wezB/XEjVPWl2JTZ5FkEeaTJf+VgUAUn3PE7Isw==", + "version": "18.2.21", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.21.tgz", + "integrity": "sha512-neFKG/sBAwGxHgXiIxnbm3/AAVQ/cMRS93hvBpg8xYRbeQSPVABp9U2bRnPf0iI4+Ucdv3plSxKK+3CW2ENJxA==", "dependencies": { "@types/prop-types": "*", "@types/scheduler": "*", diff --git a/package.json b/package.json index f4d5fe573db59..58e17db293193 100644 --- a/package.json +++ b/package.json @@ -87,7 +87,7 @@ "@testing-library/user-event": "~14.4.3", "@types/jest": "29.5.3", "@types/prismjs": "^1.26.0", - "@types/react": "^18.2.20", + "@types/react": "^18.2.21", "@types/react-dom": "^18.2.7", "@types/semver": "^7.5.0", "@types/testing-library__jest-dom": "5.14.9", From 7d0cc3a3fd561b82970ecd124061728be553ae9c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 26 Aug 2023 14:17:58 +0000 Subject: [PATCH 06/43] meta: bump framer-motion from 10.15.0 to 10.16.1 (#5670) Bumps [framer-motion](https://github.com/framer/motion) from 10.15.0 to 10.16.1. - [Changelog](https://github.com/framer/motion/blob/main/CHANGELOG.md) - [Commits](https://github.com/framer/motion/compare/v10.15.0...v10.16.1) --- updated-dependencies: - dependency-name: framer-motion dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 8 ++++---- package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package-lock.json b/package-lock.json index bc29bfc5ea8e3..30c6391c6e32f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -17,7 +17,7 @@ "classnames": "~2.3.2", "cross-env": "7.0.3", "feed": "~4.2.2", - "framer-motion": "~10.15.0", + "framer-motion": "~10.16.1", "glob": "~10.3.3", "gray-matter": "~4.0.3", "highlight.js": "~11.8.0", @@ -13104,9 +13104,9 @@ } }, "node_modules/framer-motion": { - "version": "10.15.0", - "resolved": "https://registry.npmjs.org/framer-motion/-/framer-motion-10.15.0.tgz", - "integrity": "sha512-HDjWrYWgbO5orKuhnXETLFzk7UUvwWur2HFs2elAZ8lVpI49ClHql31DNTVvVBcOrSHfAOS4eBDBedIvOx634w==", + "version": "10.16.1", + "resolved": "https://registry.npmjs.org/framer-motion/-/framer-motion-10.16.1.tgz", + "integrity": "sha512-K6TXr5mZtitC/dxQCBdg7xzdN0d5IAIrlaqCPKtIQVdzVPGC0qBuJKXggHX1vjnP5gPOFwB1KbCCTWcnFc3kWg==", "dependencies": { "tslib": "^2.4.0" }, diff --git a/package.json b/package.json index 58e17db293193..5b9035377a646 100644 --- a/package.json +++ b/package.json @@ -50,7 +50,7 @@ "classnames": "~2.3.2", "cross-env": "7.0.3", "feed": "~4.2.2", - "framer-motion": "~10.15.0", + "framer-motion": "~10.16.1", "glob": "~10.3.3", "gray-matter": "~4.0.3", "highlight.js": "~11.8.0", From 201f6246ffc59316a0e555d0bc867988bed10463 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 26 Aug 2023 14:18:00 +0000 Subject: [PATCH 07/43] meta: bump lint-staged from 13.2.3 to 14.0.1 (#5671) Bumps [lint-staged](https://github.com/okonet/lint-staged) from 13.2.3 to 14.0.1. - [Release notes](https://github.com/okonet/lint-staged/releases) - [Commits](https://github.com/okonet/lint-staged/compare/v13.2.3...v14.0.1) --- updated-dependencies: - dependency-name: lint-staged dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 277 +++++++++++++++++++++------------------------- package.json | 2 +- 2 files changed, 126 insertions(+), 153 deletions(-) diff --git a/package-lock.json b/package-lock.json index 30c6391c6e32f..c37b291890d3b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -22,7 +22,7 @@ "gray-matter": "~4.0.3", "highlight.js": "~11.8.0", "husky": "8.0.3", - "lint-staged": "13.2.3", + "lint-staged": "14.0.1", "next": "^13.4.18", "next-mdx-remote": "^4.4.1", "next-sitemap": "^4.2.2", @@ -7999,6 +7999,7 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "dev": true, "dependencies": { "clean-stack": "^2.0.0", "indent-string": "^4.0.0" @@ -8075,6 +8076,7 @@ "version": "4.3.2", "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "dev": true, "dependencies": { "type-fest": "^0.21.3" }, @@ -8089,6 +8091,7 @@ "version": "0.21.3", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", + "dev": true, "engines": { "node": ">=10" }, @@ -8331,6 +8334,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", + "dev": true, "engines": { "node": ">=8" } @@ -9614,6 +9618,7 @@ "version": "2.2.0", "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "dev": true, "engines": { "node": ">=6" } @@ -9622,6 +9627,7 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "dev": true, "dependencies": { "restore-cursor": "^3.1.0" }, @@ -12376,6 +12382,11 @@ "node": ">=6" } }, + "node_modules/eventemitter3": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-5.0.1.tgz", + "integrity": "sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==" + }, "node_modules/events": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", @@ -14304,6 +14315,7 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "dev": true, "engines": { "node": ">=8" } @@ -16907,38 +16919,35 @@ "dev": true }, "node_modules/lint-staged": { - "version": "13.2.3", - "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-13.2.3.tgz", - "integrity": "sha512-zVVEXLuQIhr1Y7R7YAWx4TZLdvuzk7DnmrsTNL0fax6Z3jrpFcas+vKbzxhhvp6TA55m1SQuWkpzI1qbfDZbAg==", - "dependencies": { - "chalk": "5.2.0", - "cli-truncate": "^3.1.0", - "commander": "^10.0.0", - "debug": "^4.3.4", - "execa": "^7.0.0", + "version": "14.0.1", + "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-14.0.1.tgz", + "integrity": "sha512-Mw0cL6HXnHN1ag0mN/Dg4g6sr8uf8sn98w2Oc1ECtFto9tvRF7nkXGJRbx8gPlHyoR0pLyBr2lQHbWwmUHe1Sw==", + "dependencies": { + "chalk": "5.3.0", + "commander": "11.0.0", + "debug": "4.3.4", + "execa": "7.2.0", "lilconfig": "2.1.0", - "listr2": "^5.0.7", - "micromatch": "^4.0.5", - "normalize-path": "^3.0.0", - "object-inspect": "^1.12.3", - "pidtree": "^0.6.0", - "string-argv": "^0.3.1", - "yaml": "^2.2.2" + "listr2": "6.6.1", + "micromatch": "4.0.5", + "pidtree": "0.6.0", + "string-argv": "0.3.2", + "yaml": "2.3.1" }, "bin": { "lint-staged": "bin/lint-staged.js" }, "engines": { - "node": "^14.13.1 || >=16.0.0" + "node": "^16.14.0 || >=18.0.0" }, "funding": { "url": "https://opencollective.com/lint-staged" } }, "node_modules/lint-staged/node_modules/chalk": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.2.0.tgz", - "integrity": "sha512-ree3Gqw/nazQAPuJJEy+avdl7QfZMcUvmHIKgEZkGL+xOBzRvup5Hxo6LHuMceSxOabuJLJm5Yp/92R9eMmMvA==", + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.3.0.tgz", + "integrity": "sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==", "engines": { "node": "^12.17.0 || ^14.13 || >=16.0.0" }, @@ -16947,17 +16956,17 @@ } }, "node_modules/lint-staged/node_modules/commander": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-10.0.1.tgz", - "integrity": "sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==", + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-11.0.0.tgz", + "integrity": "sha512-9HMlXtt/BNoYr8ooyjjNRdIilOTkVJXB+GhxMTtOKwk0R4j4lS4NpjuqmRxroBfnfTSHQIHQB7wryHhXarNjmQ==", "engines": { - "node": ">=14" + "node": ">=16" } }, "node_modules/lint-staged/node_modules/execa": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/execa/-/execa-7.1.1.tgz", - "integrity": "sha512-wH0eMf/UXckdUYnO21+HDztteVv05rq2GXksxT4fCGeHkBhw1DROXh40wcjMcRqDOWE7iPJ4n3M7e2+YFP+76Q==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-7.2.0.tgz", + "integrity": "sha512-UduyVP7TLB5IcAQl+OzLyLcS/l32W/GLg+AhHJ+ow40FOk2U3SAllPwR44v4vmdFwIWqpdwxxpQbF1n5ta9seA==", "dependencies": { "cross-spawn": "^7.0.3", "get-stream": "^6.0.1", @@ -17070,21 +17079,19 @@ } }, "node_modules/listr2": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/listr2/-/listr2-5.0.8.tgz", - "integrity": "sha512-mC73LitKHj9w6v30nLNGPetZIlfpUniNSsxxrbaPcWOjDb92SHPzJPi/t+v1YC/lxKz/AJ9egOjww0qUuFxBpA==", + "version": "6.6.1", + "resolved": "https://registry.npmjs.org/listr2/-/listr2-6.6.1.tgz", + "integrity": "sha512-+rAXGHh0fkEWdXBmX+L6mmfmXmXvDGEKzkjxO+8mP3+nI/r/CWznVBvsibXdxda9Zz0OW2e2ikphN3OwCT/jSg==", "dependencies": { - "cli-truncate": "^2.1.0", - "colorette": "^2.0.19", - "log-update": "^4.0.0", - "p-map": "^4.0.0", + "cli-truncate": "^3.1.0", + "colorette": "^2.0.20", + "eventemitter3": "^5.0.1", + "log-update": "^5.0.1", "rfdc": "^1.3.0", - "rxjs": "^7.8.0", - "through": "^2.3.8", - "wrap-ansi": "^7.0.0" + "wrap-ansi": "^8.1.0" }, "engines": { - "node": "^14.13.1 || >=16.0.0" + "node": ">=16.0.0" }, "peerDependencies": { "enquirer": ">= 2.3.0 < 3" @@ -17095,76 +17102,6 @@ } } }, - "node_modules/listr2/node_modules/cli-truncate": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-2.1.0.tgz", - "integrity": "sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==", - "dependencies": { - "slice-ansi": "^3.0.0", - "string-width": "^4.2.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/listr2/node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" - }, - "node_modules/listr2/node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "engines": { - "node": ">=8" - } - }, - "node_modules/listr2/node_modules/slice-ansi": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-3.0.0.tgz", - "integrity": "sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==", - "dependencies": { - "ansi-styles": "^4.0.0", - "astral-regex": "^2.0.0", - "is-fullwidth-code-point": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/listr2/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/listr2/node_modules/wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - } - }, "node_modules/load-plugin": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/load-plugin/-/load-plugin-5.1.0.tgz", @@ -17253,75 +17190,105 @@ } }, "node_modules/log-update": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/log-update/-/log-update-4.0.0.tgz", - "integrity": "sha512-9fkkDevMefjg0mmzWFBW8YkFP91OrizzkW3diF7CpG+S2EYdy4+TVfGwz1zeF8x7hCx1ovSPTOE9Ngib74qqUg==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/log-update/-/log-update-5.0.1.tgz", + "integrity": "sha512-5UtUDQ/6edw4ofyljDNcOVJQ4c7OjDro4h3y8e1GQL5iYElYclVHJ3zeWchylvMaKnDbDilC8irOVyexnA/Slw==", "dependencies": { - "ansi-escapes": "^4.3.0", - "cli-cursor": "^3.1.0", - "slice-ansi": "^4.0.0", - "wrap-ansi": "^6.2.0" + "ansi-escapes": "^5.0.0", + "cli-cursor": "^4.0.0", + "slice-ansi": "^5.0.0", + "strip-ansi": "^7.0.1", + "wrap-ansi": "^8.0.1" }, "engines": { - "node": ">=10" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/log-update/node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + "node_modules/log-update/node_modules/ansi-escapes": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-5.0.0.tgz", + "integrity": "sha512-5GFMVX8HqE/TB+FuBJGuO5XG0WrsA6ptUqoODaT/n9mmUaZFkqnBueB4leqGBCmrUHnCnC4PCZTCd0E7QQ83bA==", + "dependencies": { + "type-fest": "^1.0.2" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "node_modules/log-update/node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "node_modules/log-update/node_modules/ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", "engines": { - "node": ">=8" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" } }, - "node_modules/log-update/node_modules/slice-ansi": { + "node_modules/log-update/node_modules/cli-cursor": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", - "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-4.0.0.tgz", + "integrity": "sha512-VGtlMu3x/4DOtIUwEkRezxUZ2lBacNJCHash0N0WeZDBS+7Ux1dm3XWAgWYxLJFMMdOeXMHXorshEFhbMSGelg==", "dependencies": { - "ansi-styles": "^4.0.0", - "astral-regex": "^2.0.0", - "is-fullwidth-code-point": "^3.0.0" + "restore-cursor": "^4.0.0" }, "engines": { - "node": ">=10" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" }, "funding": { - "url": "https://github.com/chalk/slice-ansi?sponsor=1" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/log-update/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "node_modules/log-update/node_modules/restore-cursor": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-4.0.0.tgz", + "integrity": "sha512-I9fPXU9geO9bHOt9pHHOhOkYerIMsmVaWB0rA2AI9ERh/+x/i7MV5HKBNrg+ljO5eoPVgCcnFuRjJ9uH6I/3eg==", "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" }, "engines": { - "node": ">=8" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/log-update/node_modules/wrap-ansi": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", - "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "node_modules/log-update/node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" + }, + "node_modules/log-update/node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" + "ansi-regex": "^6.0.1" }, "engines": { - "node": ">=8" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/log-update/node_modules/type-fest": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz", + "integrity": "sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/longest-streak": { @@ -19893,6 +19860,7 @@ "version": "1.12.3", "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.3.tgz", "integrity": "sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==", + "dev": true, "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -20156,6 +20124,7 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "dev": true, "dependencies": { "aggregate-error": "^3.0.0" }, @@ -23005,6 +22974,7 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "dev": true, "dependencies": { "onetime": "^5.1.0", "signal-exit": "^3.0.2" @@ -23016,7 +22986,8 @@ "node_modules/restore-cursor/node_modules/signal-exit": { "version": "3.0.7", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "dev": true }, "node_modules/reusify": { "version": "1.0.4", @@ -23127,6 +23098,7 @@ "version": "7.8.1", "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz", "integrity": "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==", + "dev": true, "dependencies": { "tslib": "^2.1.0" } @@ -24874,7 +24846,8 @@ "node_modules/through": { "version": "2.3.8", "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==" + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", + "dev": true }, "node_modules/through2": { "version": "2.0.5", diff --git a/package.json b/package.json index 5b9035377a646..196fa2f869a78 100644 --- a/package.json +++ b/package.json @@ -55,7 +55,7 @@ "gray-matter": "~4.0.3", "highlight.js": "~11.8.0", "husky": "8.0.3", - "lint-staged": "13.2.3", + "lint-staged": "14.0.1", "next": "^13.4.18", "next-mdx-remote": "^4.4.1", "next-sitemap": "^4.2.2", From d6b4df8a0f512c991cf0ce271ac6a39a24295252 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 26 Aug 2023 14:18:02 +0000 Subject: [PATCH 08/43] meta: bump @types/node from 18.17.1 to 18.17.11 (#5672) Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 18.17.1 to 18.17.11. - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) --- updated-dependencies: - dependency-name: "@types/node" dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 8 ++++---- package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package-lock.json b/package-lock.json index c37b291890d3b..20db330d2c86c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -11,7 +11,7 @@ "license": "MIT", "dependencies": { "@nodevu/core": "~0.1.0", - "@types/node": "18.17.1", + "@types/node": "18.17.11", "@vcarl/remark-headings": "~0.1.0", "@vercel/analytics": "^1.0.2", "classnames": "~2.3.2", @@ -7007,9 +7007,9 @@ "integrity": "sha512-iiUgKzV9AuaEkZqkOLDIvlQiL6ltuZd9tGcW3gwpnX8JbuiuhFlEGmmFXEXkN50Cvq7Os88IY2v0dkDqXYWVgA==" }, "node_modules/@types/node": { - "version": "18.17.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.17.1.tgz", - "integrity": "sha512-xlR1jahfizdplZYRU59JlUx9uzF1ARa8jbhM11ccpCJya8kvos5jwdm2ZAgxSCwOl0fq21svP18EVwPBXMQudw==" + "version": "18.17.11", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.17.11.tgz", + "integrity": "sha512-r3hjHPBu+3LzbGBa8DHnr/KAeTEEOrahkcL+cZc4MaBMTM+mk8LtXR+zw+nqfjuDZZzYTYgTcpHuP+BEQk069g==" }, "node_modules/@types/node-fetch": { "version": "2.6.4", diff --git a/package.json b/package.json index 196fa2f869a78..c568f555a5437 100644 --- a/package.json +++ b/package.json @@ -44,7 +44,7 @@ }, "dependencies": { "@nodevu/core": "~0.1.0", - "@types/node": "18.17.1", + "@types/node": "18.17.11", "@vcarl/remark-headings": "~0.1.0", "@vercel/analytics": "^1.0.2", "classnames": "~2.3.2", From f06dd25f68a99185335e4aa94a3e637c1fcf9149 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 26 Aug 2023 16:18:06 +0200 Subject: [PATCH 09/43] meta: bump typescript from 5.1.6 to 5.2.2 (#5674) Bumps [typescript](https://github.com/Microsoft/TypeScript) from 5.1.6 to 5.2.2. - [Release notes](https://github.com/Microsoft/TypeScript/releases) - [Commits](https://github.com/Microsoft/TypeScript/compare/v5.1.6...v5.2.2) --- updated-dependencies: - dependency-name: typescript dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 8 ++++---- package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package-lock.json b/package-lock.json index 20db330d2c86c..f1a7b59cdd7e3 100644 --- a/package-lock.json +++ b/package-lock.json @@ -36,7 +36,7 @@ "semver": "~7.5.4", "sharp": "0.32.5", "turbo": "^1.10.12", - "typescript": "~5.1.6" + "typescript": "~5.2.2" }, "devDependencies": { "@storybook/addon-controls": "~7.3.2", @@ -25329,9 +25329,9 @@ "dev": true }, "node_modules/typescript": { - "version": "5.1.6", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.1.6.tgz", - "integrity": "sha512-zaWCozRZ6DLEWAWFrVDz1H6FVXzUSfTy5FUMWsQlU8Ym5JP9eO4xkTIROFCQvhQf61z6O/G6ugw3SgAnvvm+HA==", + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.2.2.tgz", + "integrity": "sha512-mI4WrpHsbCIcwT9cF4FZvr80QUeKvsUsUvKDoR+X/7XHQH98xYD8YHZg7ANtz2GtZt/CBq2QJ0thkGJMHfqc1w==", "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" diff --git a/package.json b/package.json index c568f555a5437..02ddd49437437 100644 --- a/package.json +++ b/package.json @@ -69,7 +69,7 @@ "semver": "~7.5.4", "sharp": "0.32.5", "turbo": "^1.10.12", - "typescript": "~5.1.6" + "typescript": "~5.2.2" }, "peerDependencies": { "@mdx-js/react": "^2.3.0", From be5881a4ea26ec1ee2991929f108dde7de2f6029 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 26 Aug 2023 16:18:09 +0200 Subject: [PATCH 10/43] meta: bump the lint group with 7 updates (#5676) Bumps the lint group with 7 updates: | Package | From | To | | --- | --- | --- | | [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `6.2.1` | `6.4.1` | | [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `6.2.1` | `6.4.1` | | [eslint](https://github.com/eslint/eslint) | `8.46.0` | `8.47.0` | | [eslint-config-next](https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next) | `13.4.12` | `13.4.19` | | [eslint-config-prettier](https://github.com/prettier/eslint-config-prettier) | `8.9.0` | `9.0.0` | | [eslint-plugin-mdx](https://github.com/mdx-js/eslint-mdx) | `2.1.0` | `2.2.0` | | [stylelint](https://github.com/stylelint/stylelint) | `15.10.2` | `15.10.3` | Updates `@typescript-eslint/eslint-plugin` from 6.2.1 to 6.4.1 - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v6.4.1/packages/eslint-plugin) Updates `@typescript-eslint/parser` from 6.2.1 to 6.4.1 - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v6.4.1/packages/parser) Updates `eslint` from 8.46.0 to 8.47.0 - [Release notes](https://github.com/eslint/eslint/releases) - [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md) - [Commits](https://github.com/eslint/eslint/compare/v8.46.0...v8.47.0) Updates `eslint-config-next` from 13.4.12 to 13.4.19 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/commits/v13.4.19/packages/eslint-config-next) Updates `eslint-config-prettier` from 8.9.0 to 9.0.0 - [Changelog](https://github.com/prettier/eslint-config-prettier/blob/main/CHANGELOG.md) - [Commits](https://github.com/prettier/eslint-config-prettier/compare/v8.9.0...v9.0.0) Updates `eslint-plugin-mdx` from 2.1.0 to 2.2.0 - [Release notes](https://github.com/mdx-js/eslint-mdx/releases) - [Changelog](https://github.com/mdx-js/eslint-mdx/blob/master/CHANGELOG.md) - [Commits](https://github.com/mdx-js/eslint-mdx/compare/v2.1.0...eslint-plugin-mdx@2.2.0) Updates `stylelint` from 15.10.2 to 15.10.3 - [Release notes](https://github.com/stylelint/stylelint/releases) - [Changelog](https://github.com/stylelint/stylelint/blob/main/CHANGELOG.md) - [Commits](https://github.com/stylelint/stylelint/compare/15.10.2...15.10.3) --- updated-dependencies: - dependency-name: "@typescript-eslint/eslint-plugin" dependency-type: direct:development update-type: version-update:semver-minor dependency-group: lint - dependency-name: "@typescript-eslint/parser" dependency-type: direct:development update-type: version-update:semver-minor dependency-group: lint - dependency-name: eslint dependency-type: direct:development update-type: version-update:semver-minor dependency-group: lint - dependency-name: eslint-config-next dependency-type: direct:development update-type: version-update:semver-patch dependency-group: lint - dependency-name: eslint-config-prettier dependency-type: direct:development update-type: version-update:semver-major dependency-group: lint - dependency-name: eslint-plugin-mdx dependency-type: direct:development update-type: version-update:semver-minor dependency-group: lint - dependency-name: stylelint dependency-type: direct:development update-type: version-update:semver-patch dependency-group: lint ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 464 ++++++++++++++++++---------------------------- package.json | 14 +- 2 files changed, 188 insertions(+), 290 deletions(-) diff --git a/package-lock.json b/package-lock.json index f1a7b59cdd7e3..d4e19fbc9e85b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -51,12 +51,12 @@ "@types/react-dom": "^18.2.7", "@types/semver": "^7.5.0", "@types/testing-library__jest-dom": "5.14.9", - "@typescript-eslint/eslint-plugin": "6.2.1", - "@typescript-eslint/parser": "6.2.1", - "eslint": "8.46.0", - "eslint-config-next": "13.4.12", - "eslint-config-prettier": "8.9.0", - "eslint-plugin-mdx": "2.1.0", + "@typescript-eslint/eslint-plugin": "6.4.1", + "@typescript-eslint/parser": "6.4.1", + "eslint": "8.47.0", + "eslint-config-next": "13.4.19", + "eslint-config-prettier": "9.0.0", + "eslint-plugin-mdx": "2.2.0", "eslint-plugin-no-relative-import-paths": "^1.5.2", "eslint-plugin-storybook": "0.6.13", "handlebars": "4.7.8", @@ -68,7 +68,7 @@ "remark-preset-lint-node": "4.0.0", "remark-preset-prettier": "2.0.1", "storybook": "~7.3.2", - "stylelint": "15.10.2", + "stylelint": "15.10.3", "stylelint-config-recommended-scss": "12.0.0", "stylelint-config-standard": "34.0.0", "stylelint-order": "6.0.3", @@ -2450,9 +2450,9 @@ "integrity": "sha512-N8uEMrMPL0cu/bdboEWpQYb/0i2K5Qn8eCsxzOmxSggJbbQte7ljMRoXm917AbntqTGOzdTu+vP3KOOzoC70HQ==" }, "node_modules/@csstools/css-parser-algorithms": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@csstools/css-parser-algorithms/-/css-parser-algorithms-2.3.0.tgz", - "integrity": "sha512-dTKSIHHWc0zPvcS5cqGP+/TPFUJB0ekJ9dGKvMAFoNuBFhDPBt9OMGNZiIA5vTiNdGHHBeScYPXIGBMnVOahsA==", + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@csstools/css-parser-algorithms/-/css-parser-algorithms-2.3.1.tgz", + "integrity": "sha512-xrvsmVUtefWMWQsGgFffqWSK03pZ1vfDki4IVIIUxxDKnGBzqNgv0A7SB1oXtVNEkcVO8xi1ZrTL29HhSu5kGA==", "dev": true, "funding": [ { @@ -2468,26 +2468,32 @@ "node": "^14 || ^16 || >=18" }, "peerDependencies": { - "@csstools/css-tokenizer": "^2.1.1" + "@csstools/css-tokenizer": "^2.2.0" } }, "node_modules/@csstools/css-tokenizer": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/@csstools/css-tokenizer/-/css-tokenizer-2.1.1.tgz", - "integrity": "sha512-GbrTj2Z8MCTUv+52GE0RbFGM527xuXZ0Xa5g0Z+YN573uveS4G0qi6WNOMyz3yrFM/jaILTTwJ0+umx81EzqfA==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@csstools/css-tokenizer/-/css-tokenizer-2.2.0.tgz", + "integrity": "sha512-wErmsWCbsmig8sQKkM6pFhr/oPha1bHfvxsUY5CYSQxwyhA9Ulrs8EqCgClhg4Tgg2XapVstGqSVcz0xOYizZA==", "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], "engines": { "node": "^14 || ^16 || >=18" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" } }, "node_modules/@csstools/media-query-list-parser": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@csstools/media-query-list-parser/-/media-query-list-parser-2.1.2.tgz", - "integrity": "sha512-M8cFGGwl866o6++vIY7j1AKuq9v57cf+dGepScwCcbut9ypJNr4Cj+LLTWligYUZ0uyhEoJDKt5lvyBfh2L3ZQ==", + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@csstools/media-query-list-parser/-/media-query-list-parser-2.1.4.tgz", + "integrity": "sha512-V/OUXYX91tAC1CDsiY+HotIcJR+vPtzrX8pCplCpT++i8ThZZsq5F5dzZh/bDM3WUOjrvC1ljed1oSJxMfjqhw==", "dev": true, "funding": [ { @@ -2503,8 +2509,8 @@ "node": "^14 || ^16 || >=18" }, "peerDependencies": { - "@csstools/css-parser-algorithms": "^2.3.0", - "@csstools/css-tokenizer": "^2.1.1" + "@csstools/css-parser-algorithms": "^2.3.1", + "@csstools/css-tokenizer": "^2.2.0" } }, "node_modules/@csstools/selector-specificity": { @@ -2939,9 +2945,9 @@ } }, "node_modules/@eslint/eslintrc": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.1.tgz", - "integrity": "sha512-9t7ZA7NGGK8ckelF0PQCfcxIUzs1Md5rrO6U/c+FIQNanea5UZC0wqKXH4vHBccmu4ZJgZ2idtPeW7+Q2npOEA==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.2.tgz", + "integrity": "sha512-+wvgpDsrB1YqAMdEUCcnTlpfVBH7Vqn6A/NT3D8WVXFIaKMlErPIZT3oCIAVCOtarRpMtelZLqJeU3t7WY6X6g==", "dev": true, "dependencies": { "ajv": "^6.12.4", @@ -2962,9 +2968,9 @@ } }, "node_modules/@eslint/eslintrc/node_modules/globals": { - "version": "13.20.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", - "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", + "version": "13.21.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.21.0.tgz", + "integrity": "sha512-ybyme3s4yy/t/3s35bewwXKOf7cvzfreG2lH0lZl0JB7I4GxRP2ghxOK/Nb9EkRXdbBXZLfq/p/0W2JUONB/Gg==", "dev": true, "dependencies": { "type-fest": "^0.20.2" @@ -2989,9 +2995,9 @@ } }, "node_modules/@eslint/js": { - "version": "8.46.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.46.0.tgz", - "integrity": "sha512-a8TLtmPi8xzPkCbp/OGFUo5yhRkHM2Ko9kOWP4znJr0WAhWyThaw3PnwX4vOTWOAMsV2uRt32PPDcEz63esSaA==", + "version": "8.47.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.47.0.tgz", + "integrity": "sha512-P6omY1zv5MItm93kLM8s2vr1HICJH8v0dvddDhysbIuZ+vcjOHg5Zbkf1mTkcmi2JA9oBG2anOkRnW8WJTS8Og==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -4131,9 +4137,9 @@ "integrity": "sha512-ZUG5Y/KSSerggdeD2LIYgiYziKTuSE9oE2RnW8bhNw6WunA8MrVfrWaCDTYSx/UG8qzPpSF+BiZNiHUiALxCdA==" }, "node_modules/@next/eslint-plugin-next": { - "version": "13.4.12", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-13.4.12.tgz", - "integrity": "sha512-6rhK9CdxEgj/j1qvXIyLTWEaeFv7zOK8yJMulz3Owel0uek0U9MJCGzmKgYxM3aAUBo3gKeywCZKyQnJKto60A==", + "version": "13.4.19", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-13.4.19.tgz", + "integrity": "sha512-N/O+zGb6wZQdwu6atMZHbR7T9Np5SUFUjZqCbj0sXm+MwQO35M8TazVB4otm87GkXYs2l6OPwARd3/PUWhZBVQ==", "dev": true, "dependencies": { "glob": "7.1.7" @@ -4404,9 +4410,9 @@ } }, "node_modules/@npmcli/map-workspaces/node_modules/minimatch": { - "version": "9.0.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.2.tgz", - "integrity": "sha512-PZOT9g5v2ojiTL7r1xF6plNHLtOeTpSlDI007As2NlA2aYBMfVom17yqa6QzhmDP8QOhn7LjHTg7DFCVSSa6yg==", + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", "dev": true, "dependencies": { "brace-expansion": "^2.0.1" @@ -7161,21 +7167,20 @@ "dev": true }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.2.1.tgz", - "integrity": "sha512-iZVM/ALid9kO0+I81pnp1xmYiFyqibAHzrqX4q5YvvVEyJqY+e6rfTXSCsc2jUxGNqJqTfFSSij/NFkZBiBzLw==", + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.4.1.tgz", + "integrity": "sha512-3F5PtBzUW0dYlq77Lcqo13fv+58KDwUib3BddilE8ajPJT+faGgxmI9Sw+I8ZS22BYwoir9ZhNXcLi+S+I2bkw==", "dev": true, "dependencies": { "@eslint-community/regexpp": "^4.5.1", - "@typescript-eslint/scope-manager": "6.2.1", - "@typescript-eslint/type-utils": "6.2.1", - "@typescript-eslint/utils": "6.2.1", - "@typescript-eslint/visitor-keys": "6.2.1", + "@typescript-eslint/scope-manager": "6.4.1", + "@typescript-eslint/type-utils": "6.4.1", + "@typescript-eslint/utils": "6.4.1", + "@typescript-eslint/visitor-keys": "6.4.1", "debug": "^4.3.4", "graphemer": "^1.4.0", "ignore": "^5.2.4", "natural-compare": "^1.4.0", - "natural-compare-lite": "^1.4.0", "semver": "^7.5.4", "ts-api-utils": "^1.0.1" }, @@ -7197,13 +7202,13 @@ } }, "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/scope-manager": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.2.1.tgz", - "integrity": "sha512-UCqBF9WFqv64xNsIEPfBtenbfodPXsJ3nPAr55mGPkQIkiQvgoWNo+astj9ZUfJfVKiYgAZDMnM6dIpsxUMp3Q==", + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.4.1.tgz", + "integrity": "sha512-p/OavqOQfm4/Hdrr7kvacOSFjwQ2rrDVJRPxt/o0TOWdFnjJptnjnZ+sYDR7fi4OimvIuKp+2LCkc+rt9fIW+A==", "dev": true, "dependencies": { - "@typescript-eslint/types": "6.2.1", - "@typescript-eslint/visitor-keys": "6.2.1" + "@typescript-eslint/types": "6.4.1", + "@typescript-eslint/visitor-keys": "6.4.1" }, "engines": { "node": "^16.0.0 || >=18.0.0" @@ -7214,9 +7219,9 @@ } }, "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/types": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.2.1.tgz", - "integrity": "sha512-528bGcoelrpw+sETlyM91k51Arl2ajbNT9L4JwoXE2dvRe1yd8Q64E4OL7vHYw31mlnVsf+BeeLyAZUEQtqahQ==", + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.4.1.tgz", + "integrity": "sha512-zAAopbNuYu++ijY1GV2ylCsQsi3B8QvfPHVqhGdDcbx/NK5lkqMnCGU53amAjccSpk+LfeONxwzUhDzArSfZJg==", "dev": true, "engines": { "node": "^16.0.0 || >=18.0.0" @@ -7227,13 +7232,13 @@ } }, "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/typescript-estree": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.2.1.tgz", - "integrity": "sha512-G+UJeQx9AKBHRQBpmvr8T/3K5bJa485eu+4tQBxFq0KoT22+jJyzo1B50JDT9QdC1DEmWQfdKsa8ybiNWYsi0Q==", + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.4.1.tgz", + "integrity": "sha512-xF6Y7SatVE/OyV93h1xGgfOkHr2iXuo8ip0gbfzaKeGGuKiAnzS+HtVhSPx8Www243bwlW8IF7X0/B62SzFftg==", "dev": true, "dependencies": { - "@typescript-eslint/types": "6.2.1", - "@typescript-eslint/visitor-keys": "6.2.1", + "@typescript-eslint/types": "6.4.1", + "@typescript-eslint/visitor-keys": "6.4.1", "debug": "^4.3.4", "globby": "^11.1.0", "is-glob": "^4.0.3", @@ -7254,17 +7259,17 @@ } }, "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/utils": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.2.1.tgz", - "integrity": "sha512-eBIXQeupYmxVB6S7x+B9SdBeB6qIdXKjgQBge2J+Ouv8h9Cxm5dHf/gfAZA6dkMaag+03HdbVInuXMmqFB/lKQ==", + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.4.1.tgz", + "integrity": "sha512-F/6r2RieNeorU0zhqZNv89s9bDZSovv3bZQpUNOmmQK1L80/cV4KEu95YUJWi75u5PhboFoKUJBnZ4FQcoqhDw==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.4.0", "@types/json-schema": "^7.0.12", "@types/semver": "^7.5.0", - "@typescript-eslint/scope-manager": "6.2.1", - "@typescript-eslint/types": "6.2.1", - "@typescript-eslint/typescript-estree": "6.2.1", + "@typescript-eslint/scope-manager": "6.4.1", + "@typescript-eslint/types": "6.4.1", + "@typescript-eslint/typescript-estree": "6.4.1", "semver": "^7.5.4" }, "engines": { @@ -7279,12 +7284,12 @@ } }, "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/visitor-keys": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.2.1.tgz", - "integrity": "sha512-iTN6w3k2JEZ7cyVdZJTVJx2Lv7t6zFA8DCrJEHD2mwfc16AEvvBWVhbFh34XyG2NORCd0viIgQY1+u7kPI0WpA==", + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.4.1.tgz", + "integrity": "sha512-y/TyRJsbZPkJIZQXrHfdnxVnxyKegnpEvnRGNam7s3TRR2ykGefEWOhaef00/UUN3IZxizS7BTO3svd3lCOJRQ==", "dev": true, "dependencies": { - "@typescript-eslint/types": "6.2.1", + "@typescript-eslint/types": "6.4.1", "eslint-visitor-keys": "^3.4.1" }, "engines": { @@ -7296,15 +7301,15 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.2.1.tgz", - "integrity": "sha512-Ld+uL1kYFU8e6btqBFpsHkwQ35rw30IWpdQxgOqOh4NfxSDH6uCkah1ks8R/RgQqI5hHPXMaLy9fbFseIe+dIg==", + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.4.1.tgz", + "integrity": "sha512-610G6KHymg9V7EqOaNBMtD1GgpAmGROsmfHJPXNLCU9bfIuLrkdOygltK784F6Crboyd5tBFayPB7Sf0McrQwg==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "6.2.1", - "@typescript-eslint/types": "6.2.1", - "@typescript-eslint/typescript-estree": "6.2.1", - "@typescript-eslint/visitor-keys": "6.2.1", + "@typescript-eslint/scope-manager": "6.4.1", + "@typescript-eslint/types": "6.4.1", + "@typescript-eslint/typescript-estree": "6.4.1", + "@typescript-eslint/visitor-keys": "6.4.1", "debug": "^4.3.4" }, "engines": { @@ -7324,13 +7329,13 @@ } }, "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/scope-manager": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.2.1.tgz", - "integrity": "sha512-UCqBF9WFqv64xNsIEPfBtenbfodPXsJ3nPAr55mGPkQIkiQvgoWNo+astj9ZUfJfVKiYgAZDMnM6dIpsxUMp3Q==", + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.4.1.tgz", + "integrity": "sha512-p/OavqOQfm4/Hdrr7kvacOSFjwQ2rrDVJRPxt/o0TOWdFnjJptnjnZ+sYDR7fi4OimvIuKp+2LCkc+rt9fIW+A==", "dev": true, "dependencies": { - "@typescript-eslint/types": "6.2.1", - "@typescript-eslint/visitor-keys": "6.2.1" + "@typescript-eslint/types": "6.4.1", + "@typescript-eslint/visitor-keys": "6.4.1" }, "engines": { "node": "^16.0.0 || >=18.0.0" @@ -7341,9 +7346,9 @@ } }, "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/types": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.2.1.tgz", - "integrity": "sha512-528bGcoelrpw+sETlyM91k51Arl2ajbNT9L4JwoXE2dvRe1yd8Q64E4OL7vHYw31mlnVsf+BeeLyAZUEQtqahQ==", + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.4.1.tgz", + "integrity": "sha512-zAAopbNuYu++ijY1GV2ylCsQsi3B8QvfPHVqhGdDcbx/NK5lkqMnCGU53amAjccSpk+LfeONxwzUhDzArSfZJg==", "dev": true, "engines": { "node": "^16.0.0 || >=18.0.0" @@ -7354,13 +7359,13 @@ } }, "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/typescript-estree": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.2.1.tgz", - "integrity": "sha512-G+UJeQx9AKBHRQBpmvr8T/3K5bJa485eu+4tQBxFq0KoT22+jJyzo1B50JDT9QdC1DEmWQfdKsa8ybiNWYsi0Q==", + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.4.1.tgz", + "integrity": "sha512-xF6Y7SatVE/OyV93h1xGgfOkHr2iXuo8ip0gbfzaKeGGuKiAnzS+HtVhSPx8Www243bwlW8IF7X0/B62SzFftg==", "dev": true, "dependencies": { - "@typescript-eslint/types": "6.2.1", - "@typescript-eslint/visitor-keys": "6.2.1", + "@typescript-eslint/types": "6.4.1", + "@typescript-eslint/visitor-keys": "6.4.1", "debug": "^4.3.4", "globby": "^11.1.0", "is-glob": "^4.0.3", @@ -7381,12 +7386,12 @@ } }, "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/visitor-keys": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.2.1.tgz", - "integrity": "sha512-iTN6w3k2JEZ7cyVdZJTVJx2Lv7t6zFA8DCrJEHD2mwfc16AEvvBWVhbFh34XyG2NORCd0viIgQY1+u7kPI0WpA==", + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.4.1.tgz", + "integrity": "sha512-y/TyRJsbZPkJIZQXrHfdnxVnxyKegnpEvnRGNam7s3TRR2ykGefEWOhaef00/UUN3IZxizS7BTO3svd3lCOJRQ==", "dev": true, "dependencies": { - "@typescript-eslint/types": "6.2.1", + "@typescript-eslint/types": "6.4.1", "eslint-visitor-keys": "^3.4.1" }, "engines": { @@ -7415,13 +7420,13 @@ } }, "node_modules/@typescript-eslint/type-utils": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.2.1.tgz", - "integrity": "sha512-fTfCgomBMIgu2Dh2Or3gMYgoNAnQm3RLtRp+jP7A8fY+LJ2+9PNpi5p6QB5C4RSP+U3cjI0vDlI3mspAkpPVbQ==", + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.4.1.tgz", + "integrity": "sha512-7ON8M8NXh73SGZ5XvIqWHjgX2f+vvaOarNliGhjrJnv1vdjG0LVIz+ToYfPirOoBi56jxAKLfsLm40+RvxVVXA==", "dev": true, "dependencies": { - "@typescript-eslint/typescript-estree": "6.2.1", - "@typescript-eslint/utils": "6.2.1", + "@typescript-eslint/typescript-estree": "6.4.1", + "@typescript-eslint/utils": "6.4.1", "debug": "^4.3.4", "ts-api-utils": "^1.0.1" }, @@ -7442,13 +7447,13 @@ } }, "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/scope-manager": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.2.1.tgz", - "integrity": "sha512-UCqBF9WFqv64xNsIEPfBtenbfodPXsJ3nPAr55mGPkQIkiQvgoWNo+astj9ZUfJfVKiYgAZDMnM6dIpsxUMp3Q==", + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.4.1.tgz", + "integrity": "sha512-p/OavqOQfm4/Hdrr7kvacOSFjwQ2rrDVJRPxt/o0TOWdFnjJptnjnZ+sYDR7fi4OimvIuKp+2LCkc+rt9fIW+A==", "dev": true, "dependencies": { - "@typescript-eslint/types": "6.2.1", - "@typescript-eslint/visitor-keys": "6.2.1" + "@typescript-eslint/types": "6.4.1", + "@typescript-eslint/visitor-keys": "6.4.1" }, "engines": { "node": "^16.0.0 || >=18.0.0" @@ -7459,9 +7464,9 @@ } }, "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/types": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.2.1.tgz", - "integrity": "sha512-528bGcoelrpw+sETlyM91k51Arl2ajbNT9L4JwoXE2dvRe1yd8Q64E4OL7vHYw31mlnVsf+BeeLyAZUEQtqahQ==", + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.4.1.tgz", + "integrity": "sha512-zAAopbNuYu++ijY1GV2ylCsQsi3B8QvfPHVqhGdDcbx/NK5lkqMnCGU53amAjccSpk+LfeONxwzUhDzArSfZJg==", "dev": true, "engines": { "node": "^16.0.0 || >=18.0.0" @@ -7472,13 +7477,13 @@ } }, "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/typescript-estree": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.2.1.tgz", - "integrity": "sha512-G+UJeQx9AKBHRQBpmvr8T/3K5bJa485eu+4tQBxFq0KoT22+jJyzo1B50JDT9QdC1DEmWQfdKsa8ybiNWYsi0Q==", + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.4.1.tgz", + "integrity": "sha512-xF6Y7SatVE/OyV93h1xGgfOkHr2iXuo8ip0gbfzaKeGGuKiAnzS+HtVhSPx8Www243bwlW8IF7X0/B62SzFftg==", "dev": true, "dependencies": { - "@typescript-eslint/types": "6.2.1", - "@typescript-eslint/visitor-keys": "6.2.1", + "@typescript-eslint/types": "6.4.1", + "@typescript-eslint/visitor-keys": "6.4.1", "debug": "^4.3.4", "globby": "^11.1.0", "is-glob": "^4.0.3", @@ -7499,17 +7504,17 @@ } }, "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/utils": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.2.1.tgz", - "integrity": "sha512-eBIXQeupYmxVB6S7x+B9SdBeB6qIdXKjgQBge2J+Ouv8h9Cxm5dHf/gfAZA6dkMaag+03HdbVInuXMmqFB/lKQ==", + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.4.1.tgz", + "integrity": "sha512-F/6r2RieNeorU0zhqZNv89s9bDZSovv3bZQpUNOmmQK1L80/cV4KEu95YUJWi75u5PhboFoKUJBnZ4FQcoqhDw==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.4.0", "@types/json-schema": "^7.0.12", "@types/semver": "^7.5.0", - "@typescript-eslint/scope-manager": "6.2.1", - "@typescript-eslint/types": "6.2.1", - "@typescript-eslint/typescript-estree": "6.2.1", + "@typescript-eslint/scope-manager": "6.4.1", + "@typescript-eslint/types": "6.4.1", + "@typescript-eslint/typescript-estree": "6.4.1", "semver": "^7.5.4" }, "engines": { @@ -7524,12 +7529,12 @@ } }, "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/visitor-keys": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.2.1.tgz", - "integrity": "sha512-iTN6w3k2JEZ7cyVdZJTVJx2Lv7t6zFA8DCrJEHD2mwfc16AEvvBWVhbFh34XyG2NORCd0viIgQY1+u7kPI0WpA==", + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.4.1.tgz", + "integrity": "sha512-y/TyRJsbZPkJIZQXrHfdnxVnxyKegnpEvnRGNam7s3TRR2ykGefEWOhaef00/UUN3IZxizS7BTO3svd3lCOJRQ==", "dev": true, "dependencies": { - "@typescript-eslint/types": "6.2.1", + "@typescript-eslint/types": "6.4.1", "eslint-visitor-keys": "^3.4.1" }, "engines": { @@ -11462,15 +11467,15 @@ } }, "node_modules/eslint": { - "version": "8.46.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.46.0.tgz", - "integrity": "sha512-cIO74PvbW0qU8e0mIvk5IV3ToWdCq5FYG6gWPHHkx6gNdjlbAYvtfHmlCMXxjcoVaIdwy/IAt3+mDkZkfvb2Dg==", + "version": "8.47.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.47.0.tgz", + "integrity": "sha512-spUQWrdPt+pRVP1TTJLmfRNJJHHZryFmptzcafwSvHsceV81djHOdnEeDmkdotZyLNjDhrOasNK8nikkoG1O8Q==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.1", - "@eslint/js": "^8.46.0", + "@eslint/eslintrc": "^2.1.2", + "@eslint/js": "^8.47.0", "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", @@ -11481,7 +11486,7 @@ "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", "eslint-scope": "^7.2.2", - "eslint-visitor-keys": "^3.4.2", + "eslint-visitor-keys": "^3.4.3", "espree": "^9.6.1", "esquery": "^1.4.2", "esutils": "^2.0.2", @@ -11516,20 +11521,20 @@ } }, "node_modules/eslint-config-next": { - "version": "13.4.12", - "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-13.4.12.tgz", - "integrity": "sha512-ZF0r5vxKaVazyZH/37Au/XItiG7qUOBw+HaH3PeyXltIMwXorsn6bdrl0Nn9N5v5v9spc+6GM2ryjugbjF6X2g==", + "version": "13.4.19", + "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-13.4.19.tgz", + "integrity": "sha512-WE8367sqMnjhWHvR5OivmfwENRQ1ixfNE9hZwQqNCsd+iM3KnuMc1V8Pt6ytgjxjf23D+xbesADv9x3xaKfT3g==", "dev": true, "dependencies": { - "@next/eslint-plugin-next": "13.4.12", + "@next/eslint-plugin-next": "13.4.19", "@rushstack/eslint-patch": "^1.1.3", - "@typescript-eslint/parser": "^5.42.0", + "@typescript-eslint/parser": "^5.4.2 || ^6.0.0", "eslint-import-resolver-node": "^0.3.6", "eslint-import-resolver-typescript": "^3.5.2", "eslint-plugin-import": "^2.26.0", "eslint-plugin-jsx-a11y": "^6.5.1", "eslint-plugin-react": "^7.31.7", - "eslint-plugin-react-hooks": "5.0.0-canary-7118f5dd7-20230705" + "eslint-plugin-react-hooks": "^4.5.0 || 5.0.0-canary-7118f5dd7-20230705" }, "peerDependencies": { "eslint": "^7.23.0 || ^8.0.0", @@ -11541,111 +11546,10 @@ } } }, - "node_modules/eslint-config-next/node_modules/@typescript-eslint/parser": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.62.0.tgz", - "integrity": "sha512-VlJEV0fOQ7BExOsHYAGrgbEiZoi8D+Bl2+f6V2RrXerRSylnp+ZBHmPvaIa8cz0Ajx7WO7Z5RqfgYg7ED1nRhA==", - "dev": true, - "dependencies": { - "@typescript-eslint/scope-manager": "5.62.0", - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/typescript-estree": "5.62.0", - "debug": "^4.3.4" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/eslint-config-next/node_modules/@typescript-eslint/scope-manager": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.62.0.tgz", - "integrity": "sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/visitor-keys": "5.62.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/eslint-config-next/node_modules/@typescript-eslint/types": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.62.0.tgz", - "integrity": "sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==", - "dev": true, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/eslint-config-next/node_modules/@typescript-eslint/typescript-estree": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.62.0.tgz", - "integrity": "sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/visitor-keys": "5.62.0", - "debug": "^4.3.4", - "globby": "^11.1.0", - "is-glob": "^4.0.3", - "semver": "^7.3.7", - "tsutils": "^3.21.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/eslint-config-next/node_modules/@typescript-eslint/visitor-keys": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.62.0.tgz", - "integrity": "sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "5.62.0", - "eslint-visitor-keys": "^3.3.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, "node_modules/eslint-config-prettier": { - "version": "8.9.0", - "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.9.0.tgz", - "integrity": "sha512-+sbni7NfVXnOpnRadUA8S28AUlsZt9GjgFvABIRL9Hkn8KqNzOp+7Lw4QWtrwn20KzU3wqu1QoOj2m+7rKRqkA==", + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-9.0.0.tgz", + "integrity": "sha512-IcJsTkJae2S35pRsRAwoCE+925rJJStOdkKnLVgtE+tEpqU0EVVM7OqrwxqgptKdX29NUwC82I5pXsGFIgSevw==", "dev": true, "bin": { "eslint-config-prettier": "bin/cli.js" @@ -11732,20 +11636,20 @@ } }, "node_modules/eslint-mdx": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-mdx/-/eslint-mdx-2.1.0.tgz", - "integrity": "sha512-dVLHDcpCFJRXZhxEQx8nKc68KT1qm+9JOeMD+j1/WW2h+oco1j7Qq+CLrX2kP64LI3fF9TUtj7a0AvncHUME6w==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/eslint-mdx/-/eslint-mdx-2.2.0.tgz", + "integrity": "sha512-AriN6lCW6KhWQ9GEiXapR1DokKHefOUqKvCmHxnE9puCWYhWiycU2SNKH8jmrasDBreZ+RtJDLi+RcUNLJatjg==", "dev": true, "dependencies": { - "acorn": "^8.8.2", + "acorn": "^8.10.0", "acorn-jsx": "^5.3.2", - "espree": "^9.5.1", + "espree": "^9.6.1", "estree-util-visit": "^1.2.1", "remark-mdx": "^2.3.0", - "remark-parse": "^10.0.1", - "remark-stringify": "^10.0.2", + "remark-parse": "^10.0.2", + "remark-stringify": "^10.0.3", "synckit": "^0.8.5", - "tslib": "^2.5.0", + "tslib": "^2.6.1", "unified": "^10.1.2", "unified-engine": "^10.1.0", "unist-util-visit": "^4.1.2", @@ -11958,9 +11862,9 @@ } }, "node_modules/eslint-plugin-markdown": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-markdown/-/eslint-plugin-markdown-3.0.0.tgz", - "integrity": "sha512-hRs5RUJGbeHDLfS7ELanT0e29Ocyssf/7kBM+p7KluY5AwngGkDf8Oyu4658/NZSGTTq05FZeWbkxXtbVyHPwg==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-markdown/-/eslint-plugin-markdown-3.0.1.tgz", + "integrity": "sha512-8rqoc148DWdGdmYF6WSQFT3uQ6PO7zXYgeBpHAOAakX/zpq+NvFYbDA/H7PYzHajwtmaOzAwfxyl++x0g1/N9A==", "dev": true, "dependencies": { "mdast-util-from-markdown": "^0.8.5" @@ -11973,17 +11877,17 @@ } }, "node_modules/eslint-plugin-mdx": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-mdx/-/eslint-plugin-mdx-2.1.0.tgz", - "integrity": "sha512-Q8P1JXv+OrD+xhWT95ZyV30MMdnqJ1voKtXfxWrJJ2XihJRI15gPmXbIWY9t8CjA8C//isfzNOmnVY9e3GTL0g==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-mdx/-/eslint-plugin-mdx-2.2.0.tgz", + "integrity": "sha512-OseoMXUIr8iy3E0me+wJLVAxuB0kxHP1plxuYAJDynzorzOj2OKv8Fhr+rIOJ32zfl3bnEWsqFnUiCnyznr1JQ==", "dev": true, "dependencies": { - "eslint-mdx": "^2.1.0", - "eslint-plugin-markdown": "^3.0.0", + "eslint-mdx": "^2.2.0", + "eslint-plugin-markdown": "^3.0.1", "remark-mdx": "^2.3.0", - "remark-parse": "^10.0.1", - "remark-stringify": "^10.0.2", - "tslib": "^2.5.0", + "remark-parse": "^10.0.2", + "remark-stringify": "^10.0.3", + "tslib": "^2.6.1", "unified": "^10.1.2", "vfile": "^5.3.7" }, @@ -12133,9 +12037,9 @@ } }, "node_modules/eslint-visitor-keys": { - "version": "3.4.2", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.2.tgz", - "integrity": "sha512-8drBzUEyZ2llkpCA67iYrgEssKDUu68V8ChqqOfFupIaG/LCVPUT+CoGJpT77zJprs4T/W7p07LP7zAIMuweVw==", + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -12625,9 +12529,9 @@ "integrity": "sha512-IgfweLvEpwyA4WgiQe9Nx6VV2QkML2NkvZnk1oKnIzXgXdWxuhF7zw4DvLTPZJn6PIUneiAXPF24QmoEqHTjyw==" }, "node_modules/fast-glob": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.0.tgz", - "integrity": "sha512-ChDuvbOypPuNjO8yIDf36x7BlZX1smcUMTTcyoIjycexOxd6DFsKsg21qVBzEmr3G7fUKIRy2/psii+CIUt7FA==", + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.1.tgz", + "integrity": "sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==", "dependencies": { "@nodelib/fs.stat": "^2.0.2", "@nodelib/fs.walk": "^1.2.3", @@ -16848,9 +16752,9 @@ } }, "node_modules/known-css-properties": { - "version": "0.27.0", - "resolved": "https://registry.npmjs.org/known-css-properties/-/known-css-properties-0.27.0.tgz", - "integrity": "sha512-uMCj6+hZYDoffuvAJjFAPz56E9uoowFHmTkqRtRq5WyC5Q6Cu/fTZKNQpX/RbzChBYLLl3lo8CjFZBAZXq9qFg==", + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/known-css-properties/-/known-css-properties-0.28.0.tgz", + "integrity": "sha512-9pSL5XB4J+ifHP0e0jmmC98OGC1nL8/JjS+fi6mnTlIf//yt/MfVLtKg7S6nCtj/8KTcWX7nRlY0XywoYY1ISQ==", "dev": true }, "node_modules/language-subtag-registry": { @@ -19436,12 +19340,6 @@ "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", "dev": true }, - "node_modules/natural-compare-lite": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz", - "integrity": "sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==", - "dev": true - }, "node_modules/negotiator": { "version": "0.6.3", "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", @@ -24135,14 +24033,14 @@ } }, "node_modules/stylelint": { - "version": "15.10.2", - "resolved": "https://registry.npmjs.org/stylelint/-/stylelint-15.10.2.tgz", - "integrity": "sha512-UxqSb3hB74g4DTO45QhUHkJMjKKU//lNUAOWyvPBVPZbCknJ5HjOWWZo+UDuhHa9FLeVdHBZXxu43eXkjyIPWg==", + "version": "15.10.3", + "resolved": "https://registry.npmjs.org/stylelint/-/stylelint-15.10.3.tgz", + "integrity": "sha512-aBQMMxYvFzJJwkmg+BUUg3YfPyeuCuKo2f+LOw7yYbU8AZMblibwzp9OV4srHVeQldxvSFdz0/Xu8blq2AesiA==", "dev": true, "dependencies": { - "@csstools/css-parser-algorithms": "^2.3.0", - "@csstools/css-tokenizer": "^2.1.1", - "@csstools/media-query-list-parser": "^2.1.2", + "@csstools/css-parser-algorithms": "^2.3.1", + "@csstools/css-tokenizer": "^2.2.0", + "@csstools/media-query-list-parser": "^2.1.4", "@csstools/selector-specificity": "^3.0.0", "balanced-match": "^2.0.0", "colord": "^2.9.3", @@ -24150,7 +24048,7 @@ "css-functions-list": "^3.2.0", "css-tree": "^2.3.1", "debug": "^4.3.4", - "fast-glob": "^3.3.0", + "fast-glob": "^3.3.1", "fastest-levenshtein": "^1.0.16", "file-entry-cache": "^6.0.1", "global-modules": "^2.0.0", @@ -24161,13 +24059,13 @@ "import-lazy": "^4.0.0", "imurmurhash": "^0.1.4", "is-plain-object": "^5.0.0", - "known-css-properties": "^0.27.0", + "known-css-properties": "^0.28.0", "mathml-tag-names": "^2.1.3", "meow": "^10.1.5", "micromatch": "^4.0.5", "normalize-path": "^3.0.0", "picocolors": "^1.0.0", - "postcss": "^8.4.25", + "postcss": "^8.4.27", "postcss-resolve-nested-selector": "^0.1.1", "postcss-safe-parser": "^6.0.0", "postcss-selector-parser": "^6.0.13", @@ -25131,9 +25029,9 @@ } }, "node_modules/tslib": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.0.tgz", - "integrity": "sha512-7At1WUettjcSRHXCyYtTselblcHl9PJFFVKiCAy/bY97+BPZXSQ2wbq0P9s8tK2G7dFQfNnlJnPAiArVBVBsfA==" + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", + "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==" }, "node_modules/tsutils": { "version": "3.21.0", diff --git a/package.json b/package.json index 02ddd49437437..272e6cae36ece 100644 --- a/package.json +++ b/package.json @@ -91,12 +91,12 @@ "@types/react-dom": "^18.2.7", "@types/semver": "^7.5.0", "@types/testing-library__jest-dom": "5.14.9", - "@typescript-eslint/eslint-plugin": "6.2.1", - "@typescript-eslint/parser": "6.2.1", - "eslint": "8.46.0", - "eslint-config-next": "13.4.12", - "eslint-config-prettier": "8.9.0", - "eslint-plugin-mdx": "2.1.0", + "@typescript-eslint/eslint-plugin": "6.4.1", + "@typescript-eslint/parser": "6.4.1", + "eslint": "8.47.0", + "eslint-config-next": "13.4.19", + "eslint-config-prettier": "9.0.0", + "eslint-plugin-mdx": "2.2.0", "eslint-plugin-no-relative-import-paths": "^1.5.2", "eslint-plugin-storybook": "0.6.13", "handlebars": "4.7.8", @@ -108,7 +108,7 @@ "remark-preset-lint-node": "4.0.0", "remark-preset-prettier": "2.0.1", "storybook": "~7.3.2", - "stylelint": "15.10.2", + "stylelint": "15.10.3", "stylelint-config-recommended-scss": "12.0.0", "stylelint-config-standard": "34.0.0", "stylelint-order": "6.0.3", From 3bea4955fbfb36c86affac37c2ed4aa72283bb24 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 26 Aug 2023 14:29:00 +0000 Subject: [PATCH 11/43] meta: bump the next-js group with 2 updates (#5673) Bumps the next-js group with 2 updates: [next](https://github.com/vercel/next.js) and [turbo](https://github.com/vercel/turbo). Updates `next` from 13.4.18 to 13.4.19 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v13.4.18...v13.4.19) Updates `turbo` from 1.10.12 to 1.10.13 - [Release notes](https://github.com/vercel/turbo/releases) - [Changelog](https://github.com/vercel/turbo/blob/main/release.md) - [Commits](https://github.com/vercel/turbo/compare/v1.10.12...v1.10.13) --- updated-dependencies: - dependency-name: next dependency-type: direct:production update-type: version-update:semver-patch dependency-group: next-js - dependency-name: turbo dependency-type: direct:production update-type: version-update:semver-patch dependency-group: next-js ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 145 +++++++++++++++++++++++----------------------- package.json | 4 +- 2 files changed, 74 insertions(+), 75 deletions(-) diff --git a/package-lock.json b/package-lock.json index d4e19fbc9e85b..595efccf6a90c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -23,7 +23,7 @@ "highlight.js": "~11.8.0", "husky": "8.0.3", "lint-staged": "14.0.1", - "next": "^13.4.18", + "next": "^13.4.19", "next-mdx-remote": "^4.4.1", "next-sitemap": "^4.2.2", "next-themes": "^0.2.1", @@ -35,7 +35,7 @@ "remark-gfm": "~3.0.1", "semver": "~7.5.4", "sharp": "0.32.5", - "turbo": "^1.10.12", + "turbo": "^1.10.13", "typescript": "~5.2.2" }, "devDependencies": { @@ -4132,9 +4132,9 @@ } }, "node_modules/@next/env": { - "version": "13.4.18", - "resolved": "https://registry.npmjs.org/@next/env/-/env-13.4.18.tgz", - "integrity": "sha512-ZUG5Y/KSSerggdeD2LIYgiYziKTuSE9oE2RnW8bhNw6WunA8MrVfrWaCDTYSx/UG8qzPpSF+BiZNiHUiALxCdA==" + "version": "13.4.19", + "resolved": "https://registry.npmjs.org/@next/env/-/env-13.4.19.tgz", + "integrity": "sha512-FsAT5x0jF2kkhNkKkukhsyYOrRqtSxrEhfliniIq0bwWbuXLgyt3Gv0Ml+b91XwjwArmuP7NxCiGd++GGKdNMQ==" }, "node_modules/@next/eslint-plugin-next": { "version": "13.4.19", @@ -4166,9 +4166,9 @@ } }, "node_modules/@next/swc-darwin-arm64": { - "version": "13.4.18", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-13.4.18.tgz", - "integrity": "sha512-d/73jvZe7dNTjLugDsIIy2AdQrwE2dFC9/QRr7yHmFm8mS5EiIHeDKzaqIsv9+JXKD9ZB1i/c0x7+F0PlKo1vQ==", + "version": "13.4.19", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-13.4.19.tgz", + "integrity": "sha512-vv1qrjXeGbuF2mOkhkdxMDtv9np7W4mcBtaDnHU+yJG+bBwa6rYsYSCI/9Xm5+TuF5SbZbrWO6G1NfTh1TMjvQ==", "cpu": [ "arm64" ], @@ -4181,9 +4181,9 @@ } }, "node_modules/@next/swc-darwin-x64": { - "version": "13.4.18", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-13.4.18.tgz", - "integrity": "sha512-PwfvxgxG5rvUJppF02IdVAVx4HTtbZrS/Nz9qHfYfeFOQ9a+PijL8Xr9BJ21jiIS+dPQjwzvpsOdsC+DOrlzhg==", + "version": "13.4.19", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-13.4.19.tgz", + "integrity": "sha512-jyzO6wwYhx6F+7gD8ddZfuqO4TtpJdw3wyOduR4fxTUCm3aLw7YmHGYNjS0xRSYGAkLpBkH1E0RcelyId6lNsw==", "cpu": [ "x64" ], @@ -4196,9 +4196,9 @@ } }, "node_modules/@next/swc-linux-arm64-gnu": { - "version": "13.4.18", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-13.4.18.tgz", - "integrity": "sha512-Nayn6yFeox9wKaRTLaWRvO3DjB8xEM3BnXu7QnQeZb0AgD484XmdxK13TYZW4jdNy3VJ5OyYIpL4mhkgWEVq/A==", + "version": "13.4.19", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-13.4.19.tgz", + "integrity": "sha512-vdlnIlaAEh6H+G6HrKZB9c2zJKnpPVKnA6LBwjwT2BTjxI7e0Hx30+FoWCgi50e+YO49p6oPOtesP9mXDRiiUg==", "cpu": [ "arm64" ], @@ -4211,9 +4211,9 @@ } }, "node_modules/@next/swc-linux-arm64-musl": { - "version": "13.4.18", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-13.4.18.tgz", - "integrity": "sha512-sQzJ5DFPvGlKjI97R17v2RxKJYYzHw4lJZ4xhK6wvyYJYYcn9JfIMyKCvLtfLgpU1tOUcbkmx7i8XC28sB1BsQ==", + "version": "13.4.19", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-13.4.19.tgz", + "integrity": "sha512-aU0HkH2XPgxqrbNRBFb3si9Ahu/CpaR5RPmN2s9GiM9qJCiBBlZtRTiEca+DC+xRPyCThTtWYgxjWHgU7ZkyvA==", "cpu": [ "arm64" ], @@ -4226,9 +4226,9 @@ } }, "node_modules/@next/swc-linux-x64-gnu": { - "version": "13.4.18", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-13.4.18.tgz", - "integrity": "sha512-zqCLvGdz+T0V+set8zRHbkl3PQq0quUp5Dtuj1yGw0N9htp3beL1RVyhfSusbgxT82TRTXJe94IREgM8iYq6wg==", + "version": "13.4.19", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-13.4.19.tgz", + "integrity": "sha512-htwOEagMa/CXNykFFeAHHvMJeqZfNQEoQvHfsA4wgg5QqGNqD5soeCer4oGlCol6NGUxknrQO6VEustcv+Md+g==", "cpu": [ "x64" ], @@ -4241,9 +4241,9 @@ } }, "node_modules/@next/swc-linux-x64-musl": { - "version": "13.4.18", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-13.4.18.tgz", - "integrity": "sha512-V/+dWy32eo3iiWkro+0M4/vNp1anGrVzNp90teVKG5tl5t5qNGc/qWOgmgTG8JhowdJAxj7+fp+WltrcezqsDA==", + "version": "13.4.19", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-13.4.19.tgz", + "integrity": "sha512-4Gj4vvtbK1JH8ApWTT214b3GwUh9EKKQjY41hH/t+u55Knxi/0wesMzwQRhppK6Ddalhu0TEttbiJ+wRcoEj5Q==", "cpu": [ "x64" ], @@ -4256,9 +4256,9 @@ } }, "node_modules/@next/swc-win32-arm64-msvc": { - "version": "13.4.18", - "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-13.4.18.tgz", - "integrity": "sha512-anytZjyD1tAgfA/crOrVcUlm0yrSNKYKpg53NQ+Y83nAungrghBthZZiA1/QvmIs1Igu0Rqw/O6hqCOH63o8pw==", + "version": "13.4.19", + "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-13.4.19.tgz", + "integrity": "sha512-bUfDevQK4NsIAHXs3/JNgnvEY+LRyneDN788W2NYiRIIzmILjba7LaQTfihuFawZDhRtkYCv3JDC3B4TwnmRJw==", "cpu": [ "arm64" ], @@ -4271,9 +4271,9 @@ } }, "node_modules/@next/swc-win32-ia32-msvc": { - "version": "13.4.18", - "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-13.4.18.tgz", - "integrity": "sha512-lgsZDjbU0FQQH2pDSYeKIbVX9g8dqA7fUtgcAcwbj4eEuVW/K41rKFQceMM1kt0ktVUZ4uF2qOHsgebOWpDJIw==", + "version": "13.4.19", + "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-13.4.19.tgz", + "integrity": "sha512-Y5kikILFAr81LYIFaw6j/NrOtmiM4Sf3GtOc0pn50ez2GCkr+oejYuKGcwAwq3jiTKuzF6OF4iT2INPoxRycEA==", "cpu": [ "ia32" ], @@ -4286,9 +4286,9 @@ } }, "node_modules/@next/swc-win32-x64-msvc": { - "version": "13.4.18", - "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-13.4.18.tgz", - "integrity": "sha512-cS72bVNqICglP/uEzqNy26lfRH30zf4AbqnnhPhe+UxRg6d+OTtRQpFX7C4xtBP09FKA+MSSflNVkrn2ZfaWrA==", + "version": "13.4.19", + "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-13.4.19.tgz", + "integrity": "sha512-YzA78jBDXMYiINdPdJJwGgPNT3YqBNNGhsthsDoWHL9p24tEJn9ViQf/ZqTbwSpX/RrkPupLfuuTH2sf73JBAw==", "cpu": [ "x64" ], @@ -19356,11 +19356,11 @@ "dev": true }, "node_modules/next": { - "version": "13.4.18", - "resolved": "https://registry.npmjs.org/next/-/next-13.4.18.tgz", - "integrity": "sha512-V/IIFA/znYYnOFlZQegrlhlWRpyIuCLXLGuH6pzCjwyxThNBZl4ItqoE3ffUyYY9f0X6XIQ2dX6UUBpNVSKZ8A==", + "version": "13.4.19", + "resolved": "https://registry.npmjs.org/next/-/next-13.4.19.tgz", + "integrity": "sha512-HuPSzzAbJ1T4BD8e0bs6B9C1kWQ6gv8ykZoRWs5AQoiIuqbGHHdQO7Ljuvg05Q0Z24E2ABozHe6FxDvI6HfyAw==", "dependencies": { - "@next/env": "13.4.18", + "@next/env": "13.4.19", "@swc/helpers": "0.5.1", "busboy": "1.6.0", "caniuse-lite": "^1.0.30001406", @@ -19376,15 +19376,15 @@ "node": ">=16.8.0" }, "optionalDependencies": { - "@next/swc-darwin-arm64": "13.4.18", - "@next/swc-darwin-x64": "13.4.18", - "@next/swc-linux-arm64-gnu": "13.4.18", - "@next/swc-linux-arm64-musl": "13.4.18", - "@next/swc-linux-x64-gnu": "13.4.18", - "@next/swc-linux-x64-musl": "13.4.18", - "@next/swc-win32-arm64-msvc": "13.4.18", - "@next/swc-win32-ia32-msvc": "13.4.18", - "@next/swc-win32-x64-msvc": "13.4.18" + "@next/swc-darwin-arm64": "13.4.19", + "@next/swc-darwin-x64": "13.4.19", + "@next/swc-linux-arm64-gnu": "13.4.19", + "@next/swc-linux-arm64-musl": "13.4.19", + "@next/swc-linux-x64-gnu": "13.4.19", + "@next/swc-linux-x64-musl": "13.4.19", + "@next/swc-win32-arm64-msvc": "13.4.19", + "@next/swc-win32-ia32-msvc": "13.4.19", + "@next/swc-win32-x64-msvc": "13.4.19" }, "peerDependencies": { "@opentelemetry/api": "^1.1.0", @@ -25072,26 +25072,25 @@ } }, "node_modules/turbo": { - "version": "1.10.12", - "resolved": "https://registry.npmjs.org/turbo/-/turbo-1.10.12.tgz", - "integrity": "sha512-WM3+jTfQWnB9W208pmP4oeehZcC6JQNlydb/ZHMRrhmQa+htGhWLCzd6Q9rLe0MwZLPpSPFV2/bN5egCLyoKjQ==", - "hasInstallScript": true, + "version": "1.10.13", + "resolved": "https://registry.npmjs.org/turbo/-/turbo-1.10.13.tgz", + "integrity": "sha512-vOF5IPytgQPIsgGtT0n2uGZizR2N3kKuPIn4b5p5DdeLoI0BV7uNiydT7eSzdkPRpdXNnO8UwS658VaI4+YSzQ==", "bin": { "turbo": "bin/turbo" }, "optionalDependencies": { - "turbo-darwin-64": "1.10.12", - "turbo-darwin-arm64": "1.10.12", - "turbo-linux-64": "1.10.12", - "turbo-linux-arm64": "1.10.12", - "turbo-windows-64": "1.10.12", - "turbo-windows-arm64": "1.10.12" + "turbo-darwin-64": "1.10.13", + "turbo-darwin-arm64": "1.10.13", + "turbo-linux-64": "1.10.13", + "turbo-linux-arm64": "1.10.13", + "turbo-windows-64": "1.10.13", + "turbo-windows-arm64": "1.10.13" } }, "node_modules/turbo-darwin-64": { - "version": "1.10.12", - "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-1.10.12.tgz", - "integrity": "sha512-vmDfGVPl5/aFenAbOj3eOx3ePNcWVUyZwYr7taRl0ZBbmv2TzjRiFotO4vrKCiTVnbqjQqAFQWY2ugbqCI1kOQ==", + "version": "1.10.13", + "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-1.10.13.tgz", + "integrity": "sha512-vmngGfa2dlYvX7UFVncsNDMuT4X2KPyPJ2Jj+xvf5nvQnZR/3IeDEGleGVuMi/hRzdinoxwXqgk9flEmAYp0Xw==", "cpu": [ "x64" ], @@ -25101,9 +25100,9 @@ ] }, "node_modules/turbo-darwin-arm64": { - "version": "1.10.12", - "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-1.10.12.tgz", - "integrity": "sha512-3JliEESLNX2s7g54SOBqqkqJ7UhcOGkS0ywMr5SNuvF6kWVTbuUq7uBU/sVbGq8RwvK1ONlhPvJne5MUqBCTCQ==", + "version": "1.10.13", + "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-1.10.13.tgz", + "integrity": "sha512-eMoJC+k7gIS4i2qL6rKmrIQGP6Wr9nN4odzzgHFngLTMimok2cGLK3qbJs5O5F/XAtEeRAmuxeRnzQwTl/iuAw==", "cpu": [ "arm64" ], @@ -25113,9 +25112,9 @@ ] }, "node_modules/turbo-linux-64": { - "version": "1.10.12", - "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-1.10.12.tgz", - "integrity": "sha512-siYhgeX0DidIfHSgCR95b8xPee9enKSOjCzx7EjTLmPqPaCiVebRYvbOIYdQWRqiaKh9yfhUtFmtMOMScUf1gg==", + "version": "1.10.13", + "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-1.10.13.tgz", + "integrity": "sha512-0CyYmnKTs6kcx7+JRH3nPEqCnzWduM0hj8GP/aodhaIkLNSAGAa+RiYZz6C7IXN+xUVh5rrWTnU2f1SkIy7Gdg==", "cpu": [ "x64" ], @@ -25125,9 +25124,9 @@ ] }, "node_modules/turbo-linux-arm64": { - "version": "1.10.12", - "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-1.10.12.tgz", - "integrity": "sha512-K/ZhvD9l4SslclaMkTiIrnfcACgos79YcAo4kwc8bnMQaKuUeRpM15sxLpZp3xDjDg8EY93vsKyjaOhdFG2UbA==", + "version": "1.10.13", + "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-1.10.13.tgz", + "integrity": "sha512-0iBKviSGQQlh2OjZgBsGjkPXoxvRIxrrLLbLObwJo3sOjIH0loGmVIimGS5E323soMfi/o+sidjk2wU1kFfD7Q==", "cpu": [ "arm64" ], @@ -25137,9 +25136,9 @@ ] }, "node_modules/turbo-windows-64": { - "version": "1.10.12", - "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-1.10.12.tgz", - "integrity": "sha512-7FSgSwvktWDNOqV65l9AbZwcoueAILeE4L7JvjauNASAjjbuzXGCEq5uN8AQU3U5BOFj4TdXrVmO2dX+lLu8Zg==", + "version": "1.10.13", + "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-1.10.13.tgz", + "integrity": "sha512-S5XySRfW2AmnTeY1IT+Jdr6Goq7mxWganVFfrmqU+qqq3Om/nr0GkcUX+KTIo9mPrN0D3p5QViBRzulwB5iuUQ==", "cpu": [ "x64" ], @@ -25149,9 +25148,9 @@ ] }, "node_modules/turbo-windows-arm64": { - "version": "1.10.12", - "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-1.10.12.tgz", - "integrity": "sha512-gCNXF52dwom1HLY9ry/cneBPOKTBHhzpqhMylcyvJP0vp9zeMQQkt6yjYv+6QdnmELC92CtKNp2FsNZo+z0pyw==", + "version": "1.10.13", + "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-1.10.13.tgz", + "integrity": "sha512-nKol6+CyiExJIuoIc3exUQPIBjP9nIq5SkMJgJuxsot2hkgGrafAg/izVDRDrRduQcXj2s8LdtxJHvvnbI8hEQ==", "cpu": [ "arm64" ], diff --git a/package.json b/package.json index 272e6cae36ece..6491b48b983da 100644 --- a/package.json +++ b/package.json @@ -56,7 +56,7 @@ "highlight.js": "~11.8.0", "husky": "8.0.3", "lint-staged": "14.0.1", - "next": "^13.4.18", + "next": "^13.4.19", "next-mdx-remote": "^4.4.1", "next-sitemap": "^4.2.2", "next-themes": "^0.2.1", @@ -68,7 +68,7 @@ "remark-gfm": "~3.0.1", "semver": "~7.5.4", "sharp": "0.32.5", - "turbo": "^1.10.12", + "turbo": "^1.10.13", "typescript": "~5.2.2" }, "peerDependencies": { From 029d11afe48be096d18a9001dbb49c3df311f836 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 26 Aug 2023 16:59:40 +0200 Subject: [PATCH 12/43] meta: bump the lint group with 1 update (#5678) Bumps the lint group with 1 update: [eslint](https://github.com/eslint/eslint). - [Release notes](https://github.com/eslint/eslint/releases) - [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md) - [Commits](https://github.com/eslint/eslint/compare/v8.47.0...v8.48.0) --- updated-dependencies: - dependency-name: eslint dependency-type: direct:development update-type: version-update:semver-minor dependency-group: lint ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 16 ++++++++-------- package.json | 2 +- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/package-lock.json b/package-lock.json index 595efccf6a90c..b7db6b4f9790b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -53,7 +53,7 @@ "@types/testing-library__jest-dom": "5.14.9", "@typescript-eslint/eslint-plugin": "6.4.1", "@typescript-eslint/parser": "6.4.1", - "eslint": "8.47.0", + "eslint": "8.48.0", "eslint-config-next": "13.4.19", "eslint-config-prettier": "9.0.0", "eslint-plugin-mdx": "2.2.0", @@ -2995,9 +2995,9 @@ } }, "node_modules/@eslint/js": { - "version": "8.47.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.47.0.tgz", - "integrity": "sha512-P6omY1zv5MItm93kLM8s2vr1HICJH8v0dvddDhysbIuZ+vcjOHg5Zbkf1mTkcmi2JA9oBG2anOkRnW8WJTS8Og==", + "version": "8.48.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.48.0.tgz", + "integrity": "sha512-ZSjtmelB7IJfWD2Fvb7+Z+ChTIKWq6kjda95fLcQKNS5aheVHn4IkfgRQE3sIIzTcSLwLcLZUD9UBt+V7+h+Pw==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -11467,15 +11467,15 @@ } }, "node_modules/eslint": { - "version": "8.47.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.47.0.tgz", - "integrity": "sha512-spUQWrdPt+pRVP1TTJLmfRNJJHHZryFmptzcafwSvHsceV81djHOdnEeDmkdotZyLNjDhrOasNK8nikkoG1O8Q==", + "version": "8.48.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.48.0.tgz", + "integrity": "sha512-sb6DLeIuRXxeM1YljSe1KEx9/YYeZFQWcV8Rq9HfigmdDEugjLEVEa1ozDjL6YDjBpQHPJxJzze+alxi4T3OLg==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", "@eslint/eslintrc": "^2.1.2", - "@eslint/js": "^8.47.0", + "@eslint/js": "8.48.0", "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", diff --git a/package.json b/package.json index 6491b48b983da..dce8fceeb0608 100644 --- a/package.json +++ b/package.json @@ -93,7 +93,7 @@ "@types/testing-library__jest-dom": "5.14.9", "@typescript-eslint/eslint-plugin": "6.4.1", "@typescript-eslint/parser": "6.4.1", - "eslint": "8.47.0", + "eslint": "8.48.0", "eslint-config-next": "13.4.19", "eslint-config-prettier": "9.0.0", "eslint-plugin-mdx": "2.2.0", From 6a1b63756025a76d6398bc59a74d680374045377 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ulises=20Gasc=C3=B3n?= Date: Sun, 27 Aug 2023 13:58:40 +0200 Subject: [PATCH 13/43] add scorecard badge (#5661) docs: add scorecard badge --- README.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/README.md b/README.md index 06de1d06de585..ecc80758ae000 100644 --- a/README.md +++ b/README.md @@ -29,6 +29,9 @@
Build and Analysis Checks + + nodejs.org scorecard badge +

From 5f932d61e56666d895869352817fa8491af7f54d Mon Sep 17 00:00:00 2001 From: Claudio Wunder Date: Sun, 27 Aug 2023 14:53:47 +0200 Subject: [PATCH 14/43] chore(i18n): crowdin sync (#5665) New translations index.md (Japanese) chore(i18n): added new translations from crowdin Co-authored-by: Brian Muenzenmeyer --- pages/ja/about/index.md | 89 +++++------------------------------------ 1 file changed, 11 insertions(+), 78 deletions(-) diff --git a/pages/ja/about/index.md b/pages/ja/about/index.md index 23f52eeefc874..885af2bf8a20d 100644 --- a/pages/ja/about/index.md +++ b/pages/ja/about/index.md @@ -1,21 +1,12 @@ --- layout: about.hbs -title: Node.js とは -trademark: Trademark +title: Node.jsとは +trademark: トレードマーク --- -# Node.js® とは +# Node.js®とは - - -Node.js はスケーラブルなネットワークアプリケーションを構築するために設計された非同期型のイベント駆動の JavaScript 環境です。 -以下の「Hello World」の例では、たくさんの接続を同時に処理することができます。 -各接続ごとにコールバックは発火され、何もすることがない場合、Node.js はスリープします。 +Node.jsはスケールできるネットワークアプリケーションを構築するために、非同期でイベント駆動型のJavaScript実行環境として設計されています。次の「hello world」のサンプルコードは多くのネットワーク接続を並列に処理できます。それぞれのネットワーク接続ではコールバック処理が呼び出されますが、実行する処理がなければNode.jsはスリープします。 ```javascript const http = require('http'); @@ -34,79 +25,21 @@ server.listen(port, hostname, () => { }); ``` - - -これは OS のスレッドが採用されている一般的な同時実行モデルとは対照的です。 -スレッドベースのネットワーキングは比較的非効率であり、使うのはとても困難です。 -さらに Node.js にはロックがないので Node.js ユーザーはプロセスのデッドロックの悩みから開放されます。 -ほとんどの Node.js の関数は I/O を直接実行しないため、プロセスをブロックしません。 -ブロックしないのでスケーラブルなシステムを開発するのに Node.js はとても最適です。 - - +これはOSのスレッドを採用した一般的な同時実行モデルとは対照的です。スレッドベースのネットワーキングは効率が悪く非常に使いにくいものです。さらにNode.jsにはロックがないため、ユーザーはプロセスのデッドロックの心配から解放されます。また、I/Oを直接実行する関数はほとんどないため、Node.jsの標準ライブラリーの同期メソッドを利用しない限りプロセスがブロックされることはありません。ブロックがないためスケーラブルなシステムをNode.jsで開発することは非常に合理的です。 -この言葉だけでは不慣れな部分がいくつかあるかもしれません。 -[Blocking vs Non-Blocking][] にもう少し詳しい記事があります。 +もしこの説明が聞き慣れない場合は[Blocking vs. Non-Blocking][]の記事を参考にしてください。 --- - - -Node.js は Ruby の [Event Machine][] や Python の [Twisted][] のシステムに影響を受けていて、同様の設計です。 -Node.js はランタイムコンストラクタの替わりにライブラリとして[イベントループ][]を提供し、さらに小さなイベントモデルを持ちます。 -ほかのシステムではイベントループの開始時にブロッキングコールが常にあります。 -典型的な例ではスクリプトの先頭で動作をコールバックを用いて定義し、 -最後に `EventMachine::run()` のようなブロッキングコールでサーバを起動します。 -Node.js ではそのようなイベントループを開始する呼び出しはありません。 -Node.js は単純にスクリプトを実行した直後にイベントループが開始されます。 -実行するコールバックがこれ以上ない場合に Node.js はイベントループから抜けます。 -この動作はブラウザ上の JavaScript と似ています — イベントループはユーザからは隠されます。 - - - -HTTP はストリーミングと低遅延を念頭に置いて設計された Node.js の第一級オブジェクトです。 -これにより Node.js は Web ライブラリやフレームワークの基礎を作るために適しています。 +Node.jsはRubyの[Event Machine][]やPythonの[Twisted][]に影響を受けておりそれらに似ています。Node.jsはさらにイベントモデルを進めています。Node.jsは[event loop][]をライブラリーとしてではなく実行環境の要素として扱っています。Node.js以外のシステムではイベントループを開始するために常にブロックの呼び出しが発生します。通常、この動作はスクリプトの開始時のコールバックを通して定義され、最終的に`EventMachine::run()`のようなブロックの呼び出しを通してサーバーが起動します。Node.jsにはこのようなイベントループを開始する呼び出しはありません。Node.jsは入力されたスクリプトを実行したあと、単純にイベントループに入ります。実行するコールバックがなくなるとイベントループを終了します。この動作はブラウザーのJavaScriptと似ていて、ユーザーからはイベントループは隠されています。 - +HTTPはNode.jsでは第一級オブジェクトであり、ストリーミングと低レイテンシーを意識して設計されています。このことからNode.jsはウェブのライブラリーやフレームワークの基盤に適したものになっています。 -Node.js はスレッドがない設計をしているという理由だけで、複数コアの利点が得られないわけではありません。 -通信しやすく設計された子プロセスは [`child_process.fork()`][] API を使って生成できます。 -コア上でロードバランシングを有効にするためにプロセス間でソケットを共有することを可能にする [`cluster`][] モジュールが同じインターフェース上に内蔵されています。 +Node.jsはスレッドを使わず設計されていますが、マルチコアを利用できないわけではありません。子プロセスは[`child_process.fork()`][] APIを利用して作成することができ、簡単に通信できるように設計されています。同じインターフェイス上に[`cluster`][]モジュールが存在しており、プロセス間でソケットを共有しコアの負荷分散が可能になっています。 -[Blocking vs Non-Blocking]: /en/docs/guides/blocking-vs-non-blocking/ +[Blocking vs. Non-Blocking]: /en/docs/guides/blocking-vs-non-blocking/ [`child_process.fork()`]: https://nodejs.org/api/child_process.html#child_process_child_process_fork_modulepath_args_options [`cluster`]: https://nodejs.org/api/cluster.html -[イベントループ]: /en/docs/guides/event-loop-timers-and-nexttick/ +[event loop]: /en/docs/guides/event-loop-timers-and-nexttick/ [Event Machine]: https://github.com/eventmachine/eventmachine [Twisted]: https://twistedmatrix.com/trac/ From 9dcbc4dc5356ec242ed8192f7ba23caf3d1f5622 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tobias=20Nie=C3=9Fen?= Date: Mon, 28 Aug 2023 20:07:51 +0200 Subject: [PATCH 15/43] Replace Node.js Foundation with Node.js project (#5695) --- pages/en/get-involved/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pages/en/get-involved/index.md b/pages/en/get-involved/index.md index f1d42d3fe5f0f..3b0840565431f 100644 --- a/pages/en/get-involved/index.md +++ b/pages/en/get-involved/index.md @@ -14,7 +14,7 @@ layout: contribute.hbs * The [OpenJSF Slack](https://slack-invite.openjsf.org/) is a Foundation run Slack with several Node.js channels (channels prefixed by `#nodejs-` are related to the project). * [Node Slackers](https://www.nodeslackers.com/) is a Node.js-focused Slack community. * The official Node.js Twitter account is [nodejs](https://twitter.com/nodejs). -* The [Node.js Foundation calendar](https://nodejs.org/calendar) with all public team meetings. +* The [Node.js project calendar](https://nodejs.org/calendar) with all public team meetings. ## Learning From 28854b73b12e1ab216da565d8bab61be33e41696 Mon Sep 17 00:00:00 2001 From: Augustin Mauroy Date: Mon, 28 Aug 2023 20:47:32 +0200 Subject: [PATCH 16/43] chore(PR template): remove mention of snapshot (#5690) --- .github/PULL_REQUEST_TEMPLATE.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md index 6290b688f0e13..28f873d6101a7 100644 --- a/.github/PULL_REQUEST_TEMPLATE.md +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -27,5 +27,5 @@ Please follow this check list to ensure that you've followed all items before op - [ ] I have read the [Contributing Guidelines](https://github.com/nodejs/nodejs.org/blob/main/CONTRIBUTING.md) and made commit messages that follow the guideline. - [ ] I have run `npx turbo lint` to ensure the code follows the style guide. And run `npx turbo lint:fix` to fix the style errors if necessary. - [ ] I have run `npx turbo format` to ensure the code follows the style guide. -- [ ] I have run `npx turbo test` to check if all tests are passing, and/or `npx turbo test:snapshot` to update snapshots if I created and/or updated React Components. +- [ ] I have run `npx turbo test` to check if all tests are passing. - [ ] I've covered new added functionality with unit tests if necessary. From abbf871a3e62a22ca55283f6724bb3d5ff51824d Mon Sep 17 00:00:00 2001 From: Augustin Mauroy Date: Tue, 29 Aug 2023 09:08:28 +0200 Subject: [PATCH 17/43] chore(remove): nodeFeatures (#5685) * chore(remove): nodeFeatures * fix: builded files shouldn't be push * fix: formating --- .../NodeFeature/index.module.scss | 5 --- .../Home/NodeFeatures/NodeFeature/index.tsx | 18 -------- .../Home/NodeFeatures/index.module.scss | 21 --------- .../Home/NodeFeatures/index.stories.tsx | 9 ---- components/Home/NodeFeatures/index.tsx | 45 ------------------- i18n/locales/en.json | 6 --- i18n/locales/id.json | 6 --- i18n/locales/zh-cn.json | 6 --- 8 files changed, 116 deletions(-) delete mode 100644 components/Home/NodeFeatures/NodeFeature/index.module.scss delete mode 100644 components/Home/NodeFeatures/NodeFeature/index.tsx delete mode 100644 components/Home/NodeFeatures/index.module.scss delete mode 100644 components/Home/NodeFeatures/index.stories.tsx delete mode 100644 components/Home/NodeFeatures/index.tsx diff --git a/components/Home/NodeFeatures/NodeFeature/index.module.scss b/components/Home/NodeFeatures/NodeFeature/index.module.scss deleted file mode 100644 index 278076d33f94f..0000000000000 --- a/components/Home/NodeFeatures/NodeFeature/index.module.scss +++ /dev/null @@ -1,5 +0,0 @@ -.container { - margin: 0 2em; - max-width: 248px; - text-align: center; -} diff --git a/components/Home/NodeFeatures/NodeFeature/index.tsx b/components/Home/NodeFeatures/NodeFeature/index.tsx deleted file mode 100644 index fb958b5cb88b5..0000000000000 --- a/components/Home/NodeFeatures/NodeFeature/index.tsx +++ /dev/null @@ -1,18 +0,0 @@ -import styles from './index.module.scss'; -import type { ReactElement, FC } from 'react'; - -type NodeFeatureProps = { - icon: ReactElement; - heading: ReactElement; - description: ReactElement; -}; - -const NodeFeature: FC = ({ icon, heading, description }) => ( -
- {icon} -

{heading}

-

{description}

-
-); - -export default NodeFeature; diff --git a/components/Home/NodeFeatures/index.module.scss b/components/Home/NodeFeatures/index.module.scss deleted file mode 100644 index 43acfb4083d51..0000000000000 --- a/components/Home/NodeFeatures/index.module.scss +++ /dev/null @@ -1,21 +0,0 @@ -.nodeFeatures { - display: grid; - grid-gap: 1.5rem; - grid-template-columns: repeat(3, 1fr); - justify-content: center; - margin: 0 auto 5em auto; - - @media (max-width: 900px) { - grid-template-columns: 1fr; - } - - .featureIcon { - height: auto; - min-width: 120px; - opacity: 0.75; - - @media (max-width: 900px) { - min-width: 60px; - } - } -} diff --git a/components/Home/NodeFeatures/index.stories.tsx b/components/Home/NodeFeatures/index.stories.tsx deleted file mode 100644 index 0a36f50493b31..0000000000000 --- a/components/Home/NodeFeatures/index.stories.tsx +++ /dev/null @@ -1,9 +0,0 @@ -import NodeFeatures from '.'; -import type { Meta as MetaObj, StoryObj } from '@storybook/react'; - -type Story = StoryObj; -type Meta = MetaObj; - -export const Default: Story = {}; - -export default { component: NodeFeatures } as Meta; diff --git a/components/Home/NodeFeatures/index.tsx b/components/Home/NodeFeatures/index.tsx deleted file mode 100644 index 43942adfaf54c..0000000000000 --- a/components/Home/NodeFeatures/index.tsx +++ /dev/null @@ -1,45 +0,0 @@ -import { cloneElement } from 'react'; -import { IoLogoNodejs, IoMdGitPullRequest, IoMdRocket } from 'react-icons/io'; -import { FormattedMessage } from 'react-intl'; -import NodeFeature from './NodeFeature'; -import styles from './index.module.scss'; -import type { ReactElement, FC } from 'react'; - -const styled = (icon: ReactElement): ReactElement => - cloneElement(icon, { - alt: 'Node Feature', - className: styles.featureIcon, - }); - -const features = [ - { - icon: styled(), - heading: 'components.home.nodeFeatures.javascript.title', - description: 'components.home.nodeFeatures.javascript.description', - }, - { - icon: styled(), - heading: 'components.home.nodeFeatures.openSource.title', - description: 'components.home.nodeFeatures.openSource.description', - }, - { - icon: styled(), - heading: 'components.home.nodeFeatures.everywhere.title', - description: 'components.home.nodeFeatures.everywhere.description', - }, -]; - -const NodeFeatures: FC = () => ( -
- {features.map(feature => ( - } - description={} - /> - ))} -
-); - -export default NodeFeatures; diff --git a/i18n/locales/en.json b/i18n/locales/en.json index 3bb5781b5c563..1a01580356b96 100644 --- a/i18n/locales/en.json +++ b/i18n/locales/en.json @@ -52,12 +52,6 @@ "components.sections.newFooter.github": "GitHub", "components.learn.previousNextLink.next": "NEXT", "components.learn.previousNextLink.previous": "PREV", - "components.home.nodeFeatures.javascript.title": "JavaScript", - "components.home.nodeFeatures.javascript.description": "Node.js provides support for the JavaScript programming language", - "components.home.nodeFeatures.openSource.title": "Open Source", - "components.home.nodeFeatures.openSource.description": "Node.js is open source and actively maintained by contributors all over the world", - "components.home.nodeFeatures.everywhere.title": "Everywhere", - "components.home.nodeFeatures.everywhere.description": "Node.js has been adapted to work in a wide variety of places", "components.api.stability": "Stability: {level} - ", "components.api.jsonLink.title": "View as JSON", "components.api.sourceLink": "Source Code:", diff --git a/i18n/locales/id.json b/i18n/locales/id.json index d6b8597152d05..7913ccd11a8dd 100644 --- a/i18n/locales/id.json +++ b/i18n/locales/id.json @@ -52,12 +52,6 @@ "components.sections.newFooter.github": "GitHub", "components.learn.previousNextLink.next": "LANJUT", "components.learn.previousNextLink.previous": "KEMBALI", - "components.home.nodeFeatures.javascript.title": "JavaScript", - "components.home.nodeFeatures.javascript.description": "Node.js menyediakan dukungan untuk bahasa pemrograman JavaScript", - "components.home.nodeFeatures.openSource.title": "Sumber Terbuka", - "components.home.nodeFeatures.openSource.description": "Node.js adalah open source dan dikelola secara aktif oleh kontributor di seluruh dunia", - "components.home.nodeFeatures.everywhere.title": "Dimana saja", - "components.home.nodeFeatures.everywhere.description": "Node.js telah diadaptasi untuk bekerja di berbagai tempat", "components.api.stability": "Stabilitas: {level} - ", "components.api.jsonLink.title": "Tampilkan sebagai JSON", "components.api.sourceLink": "Kode Sumber:", diff --git a/i18n/locales/zh-cn.json b/i18n/locales/zh-cn.json index 557cc7a7887c2..1120f00c97691 100644 --- a/i18n/locales/zh-cn.json +++ b/i18n/locales/zh-cn.json @@ -52,12 +52,6 @@ "components.sections.newFooter.github": "GitHub", "components.learn.previousNextLink.next": "下一页", "components.learn.previousNextLink.previous": "上一页", - "components.home.nodeFeatures.javascript.title": "JavaScript", - "components.home.nodeFeatures.javascript.description": "Node.js 支持 JavaScript 编程语言", - "components.home.nodeFeatures.openSource.title": "自由开源", - "components.home.nodeFeatures.openSource.description": "Node.js是开源的,并由世界各地的贡献者积极维护。", - "components.home.nodeFeatures.everywhere.title": "全球", - "components.home.nodeFeatures.everywhere.description": "Node.js 已经过调整,可以适配在许多不同的场景下工作", "components.api.stability": "稳定性级别: {level} - ", "components.api.jsonLink.title": "以 JSON 格式查看", "components.api.sourceLink": "源代码:", From 3b7609c6bf071fdde0094532aecc0e779fa89fe9 Mon Sep 17 00:00:00 2001 From: HinataKah0 <128208841+HinataKah0@users.noreply.github.com> Date: Tue, 29 Aug 2023 18:02:26 +0800 Subject: [PATCH 18/43] chore: delete AnimatedPlaceholder component (#5691) --- .../AnimatedPlaceholder/index.module.scss | 47 ------------------- .../AnimatedPlaceholder/index.stories.tsx | 9 ---- .../Common/AnimatedPlaceholder/index.tsx | 31 ------------ 3 files changed, 87 deletions(-) delete mode 100644 components/Common/AnimatedPlaceholder/index.module.scss delete mode 100644 components/Common/AnimatedPlaceholder/index.stories.tsx delete mode 100644 components/Common/AnimatedPlaceholder/index.tsx diff --git a/components/Common/AnimatedPlaceholder/index.module.scss b/components/Common/AnimatedPlaceholder/index.module.scss deleted file mode 100644 index 43182e38ab6b1..0000000000000 --- a/components/Common/AnimatedPlaceholder/index.module.scss +++ /dev/null @@ -1,47 +0,0 @@ -@keyframes placeHolderShimmer { - 0% { - background-position: -468px 0; - } - 100% { - background-position: 468px 0; - } -} - -.animatedBackground, -%animated-background { - animation-duration: 1.25s; - animation-fill-mode: forwards; - animation-iteration-count: infinite; - animation-name: placeHolderShimmer; - animation-timing-function: linear; - background: #f6f6f6; - background: linear-gradient(to right, #f6f6f6 8%, #f0f0f0 18%, #f6f6f6 33%); - background-size: 800px 104px; - height: 96px; - position: relative; -} - -.placeholder { - display: flex; - width: 100%; - - &Image { - @extend %animated-background; - - height: 40px; - margin-right: 5px; - min-width: 40px; - } - - &Text { - width: 100%; - } - - &TextLine { - @extend %animated-background; - - height: 10px; - margin: 4px 0; - width: 100%; - } -} diff --git a/components/Common/AnimatedPlaceholder/index.stories.tsx b/components/Common/AnimatedPlaceholder/index.stories.tsx deleted file mode 100644 index 5c5dda62aab11..0000000000000 --- a/components/Common/AnimatedPlaceholder/index.stories.tsx +++ /dev/null @@ -1,9 +0,0 @@ -import AnimatedPlaceholder from './index'; -import type { Meta as MetaObj, StoryObj } from '@storybook/react'; - -type Story = StoryObj; -type Meta = MetaObj; - -export const Default: Story = {}; - -export default { component: AnimatedPlaceholder } as Meta; diff --git a/components/Common/AnimatedPlaceholder/index.tsx b/components/Common/AnimatedPlaceholder/index.tsx deleted file mode 100644 index b7f785270e20b..0000000000000 --- a/components/Common/AnimatedPlaceholder/index.tsx +++ /dev/null @@ -1,31 +0,0 @@ -import styles from './index.module.scss'; -import type { FC, ReactNode } from 'react'; - -type AnimatedPlaceholderProps = { - children?: ReactNode; - width?: number; - height?: number; -}; - -const AnimatedPlaceholder: FC = ({ - children, - width, - height, -}) => ( -
- {children || ( - <> -
-
-
-
-
- - )} -
-); - -export default AnimatedPlaceholder; From 359e5cf7be002f131f1e6f7a6b40a3113bbcdec7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tobias=20Nie=C3=9Fen?= Date: Tue, 29 Aug 2023 17:07:40 +0200 Subject: [PATCH 19/43] docs: fix technicalities in CONTENT_VS_CODE (#5696) --- CONTENT_VS_CODE.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/CONTENT_VS_CODE.md b/CONTENT_VS_CODE.md index 781d10156f46e..8bc532304724d 100644 --- a/CONTENT_VS_CODE.md +++ b/CONTENT_VS_CODE.md @@ -2,8 +2,8 @@ The **Website Team** (@nodejs/website) is primarily concerned with the code and overall structure of the website. -The content of the website comes from a variety of working groups [(Release WG, Ecosystem Security WG and others)](https://github.com/nodejs/TSC/blob/main/WORKING_GROUPS.md#current-working-groups). +The content of the website comes from Node.js core collaborators, in particular, from a variety of teams and [working groups](https://github.com/nodejs/TSC/blob/main/WORKING_GROUPS.md#current-working-groups). -The Website team defers to these WGs on matters of content and routinely adds collaborators from these working groups as they add and improve content on the website. In other words, the Website team is not an **editorial** team except when no other Working Group has taken responsibility for a content area, meaning we are the default editors for that content. +The Website team defers to these teams and WGs on matters of content and routinely adds collaborators from these teams and working groups as they add and improve content on the website. In other words, the Website team is not an **editorial** team except when no team or Working Group has taken responsibility for a content area, meaning we are the default editors for that content. An example of this policy playing out is new blog posts. Authors such as the Release WG have access to open PRs for new Node.js releases and merge them once their content is ready. No Website team approvals are needed. From 8d16e7d59cc954f2fd726dc93b2979d09ba2de5e Mon Sep 17 00:00:00 2001 From: Rodion Abdurakhimov Date: Tue, 29 Aug 2023 18:08:41 +0300 Subject: [PATCH 20/43] Remove ApiChanges component (#5692) --- components/Api/ApiChanges/index.module.scss | 10 ---- components/Api/ApiChanges/index.stories.tsx | 24 ---------- components/Api/ApiChanges/index.tsx | 51 --------------------- i18n/locales/en.json | 6 +-- i18n/locales/id.json | 6 +-- i18n/locales/zh-cn.json | 6 +-- 6 files changed, 3 insertions(+), 100 deletions(-) delete mode 100644 components/Api/ApiChanges/index.module.scss delete mode 100644 components/Api/ApiChanges/index.stories.tsx delete mode 100644 components/Api/ApiChanges/index.tsx diff --git a/components/Api/ApiChanges/index.module.scss b/components/Api/ApiChanges/index.module.scss deleted file mode 100644 index 7ef2c66a61cf1..0000000000000 --- a/components/Api/ApiChanges/index.module.scss +++ /dev/null @@ -1,10 +0,0 @@ -.changesComponent { - cursor: pointer; - - strong { - display: inline-block; - font-size: 0.67em; - margin: 0; - text-transform: uppercase; - } -} diff --git a/components/Api/ApiChanges/index.stories.tsx b/components/Api/ApiChanges/index.stories.tsx deleted file mode 100644 index 320a0e4f01844..0000000000000 --- a/components/Api/ApiChanges/index.stories.tsx +++ /dev/null @@ -1,24 +0,0 @@ -import ApiChanges from './index'; -import type { Meta as MetaObj, StoryObj } from '@storybook/react'; - -type Story = StoryObj; -type Meta = MetaObj; - -const version = 'v10.0.0'; -export const Default: Story = { - args: { - update: { - type: 'added', - version: [version], - }, - changes: [ - { - version: version, - 'pr-url': 'https://github.com/nodejs/node/pulls', - description: 'test', - }, - ], - }, -}; - -export default { component: ApiChanges } as Meta; diff --git a/components/Api/ApiChanges/index.tsx b/components/Api/ApiChanges/index.tsx deleted file mode 100644 index 71b03d882f04f..0000000000000 --- a/components/Api/ApiChanges/index.tsx +++ /dev/null @@ -1,51 +0,0 @@ -import { FormattedMessage } from 'react-intl'; -import styles from './index.module.scss'; -import { parseApiDocsVersion } from '@/util/parseApiDocsVersion'; -import type { ApiChange, ApiUpdate } from '@/types'; -import type { FC } from 'react'; - -type ApiChangesProps = { - update: ApiUpdate; - changes: ApiChange[]; -}; - -const ApiChanges: FC = ({ update, changes }) => ( -
- - - - - - - - - - - - - - {changes.map(({ version, description }) => ( - - - - - ))} - - - - - -
- - - -
{parseApiDocsVersion(version)}{description}
{parseApiDocsVersion(update.version)} - -
-
-); - -export default ApiChanges; diff --git a/i18n/locales/en.json b/i18n/locales/en.json index 1a01580356b96..e3223e7717e8c 100644 --- a/i18n/locales/en.json +++ b/i18n/locales/en.json @@ -66,9 +66,5 @@ "components.downloads.downloadToggle.ltsVersions": "LTS Versions", "components.downloads.downloadToggle.currentVersions": "Current Versions", "pages.404.title": "404: Page could not be found", - "pages.404.description": "ENOENT: no such file or directory", - "components.api.apiChanges.addedIn": "Added in: {version}", - "components.api.apiChanges.history": "History", - "components.api.apiChanges.history.version": "Version", - "components.api.apiChanges.history.changes": "Changes" + "pages.404.description": "ENOENT: no such file or directory" } diff --git a/i18n/locales/id.json b/i18n/locales/id.json index 7913ccd11a8dd..727e309dd102e 100644 --- a/i18n/locales/id.json +++ b/i18n/locales/id.json @@ -66,9 +66,5 @@ "components.downloads.downloadToggle.ltsVersions": "Versi LTS", "components.downloads.downloadToggle.currentVersions": "Versi Saat Ini", "pages.404.title": "404: Halaman tidak dapat ditemukan", - "pages.404.description": "ENOENT: tidak ada file atau direktori", - "components.api.apiChanges.addedIn": "Ditambahkan di: {version}", - "components.api.apiChanges.history": "Riwayat", - "components.api.apiChanges.history.version": "Versi", - "components.api.apiChanges.history.changes": "Perubahan" + "pages.404.description": "ENOENT: tidak ada file atau direktori" } diff --git a/i18n/locales/zh-cn.json b/i18n/locales/zh-cn.json index 1120f00c97691..158e7b20eef4c 100644 --- a/i18n/locales/zh-cn.json +++ b/i18n/locales/zh-cn.json @@ -66,9 +66,5 @@ "components.downloads.downloadToggle.ltsVersions": "LTS 版本", "components.downloads.downloadToggle.currentVersions": "最新尝鲜版本", "pages.404.title": "404:您访问的页面不存在", - "pages.404.description": "ENOENT:无此文件或目录", - "components.api.apiChanges.addedIn": "自 {version} 开始添加", - "components.api.apiChanges.history": "历史记录", - "components.api.apiChanges.history.version": "版本号", - "components.api.apiChanges.history.changes": "变更记录" + "pages.404.description": "ENOENT:无此文件或目录" } From 3745fe923002ec5af24f5093cfa3ec7f9e6979ea Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Guilherme=20Ara=C3=BAjo?= Date: Tue, 29 Aug 2023 12:08:57 -0300 Subject: [PATCH 21/43] feat: remove inlineCode component (#5693) --- .../Article/InlineCode/index.module.scss | 39 ------------------- .../Article/InlineCode/index.stories.tsx | 20 ---------- components/Article/InlineCode/index.tsx | 8 ---- 3 files changed, 67 deletions(-) delete mode 100644 components/Article/InlineCode/index.module.scss delete mode 100644 components/Article/InlineCode/index.stories.tsx delete mode 100644 components/Article/InlineCode/index.tsx diff --git a/components/Article/InlineCode/index.module.scss b/components/Article/InlineCode/index.module.scss deleted file mode 100644 index dd3341cf6efdb..0000000000000 --- a/components/Article/InlineCode/index.module.scss +++ /dev/null @@ -1,39 +0,0 @@ -@use 'styles/mixins/components'; - -.code { - @include components.code; - - border-radius: var(--border-radius-3); - font-weight: var(--font-weight-light); - - margin: 0.5em 0 var(--space-24) 0; - padding: 0 6px; - - white-space: break-spaces; -} - -[data-theme='light'] { - .code { - background-color: var(--black2); - color: var(--black9); - } - - a .code { - background-color: transparent; - color: var(--color-text-accent); - padding: 0; - } -} - -[data-theme='dark'] { - .code { - background-color: var(--black9); - color: var(--black2); - } - - a .code { - background-color: transparent; - color: var(--color-text-accent); - padding: 0; - } -} diff --git a/components/Article/InlineCode/index.stories.tsx b/components/Article/InlineCode/index.stories.tsx deleted file mode 100644 index 37d8503e65a52..0000000000000 --- a/components/Article/InlineCode/index.stories.tsx +++ /dev/null @@ -1,20 +0,0 @@ -import InlineCode from './index'; -import type { FC } from 'react'; -import type { Meta as MetaObj, StoryObj } from '@storybook/react'; - -type DecoratedInlineCodeProps = { code: string }; - -const DecoratedInlineCode: FC = ({ code }) => ( - - {code} - -); - -type Story = StoryObj; -type Meta = MetaObj; - -const code = 'const a = 1;'; - -export const Default: Story = { args: { code } }; - -export default { component: DecoratedInlineCode } as Meta; diff --git a/components/Article/InlineCode/index.tsx b/components/Article/InlineCode/index.tsx deleted file mode 100644 index a3f79197169a9..0000000000000 --- a/components/Article/InlineCode/index.tsx +++ /dev/null @@ -1,8 +0,0 @@ -import styles from './index.module.scss'; -import type { FC, PropsWithChildren } from 'react'; - -const InlineCode: FC = ({ children }) => ( - {children} -); - -export default InlineCode; From 16bcfbe6cbee078b08ae23c3277d1d0295c648a6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Guilherme=20Ara=C3=BAjo?= Date: Tue, 29 Aug 2023 12:09:25 -0300 Subject: [PATCH 22/43] feat: remove EditLink component (#5694) Co-authored-by: Wai.Dung --- .../Article/EditLink/__tests__/index.test.mjs | 34 --------- components/Article/EditLink/index.module.scss | 30 -------- components/Article/EditLink/index.stories.tsx | 11 --- components/Article/EditLink/index.tsx | 76 ------------------- i18n/locales/en.json | 2 - i18n/locales/id.json | 2 - i18n/locales/zh-cn.json | 2 - 7 files changed, 157 deletions(-) delete mode 100644 components/Article/EditLink/__tests__/index.test.mjs delete mode 100644 components/Article/EditLink/index.module.scss delete mode 100644 components/Article/EditLink/index.stories.tsx delete mode 100644 components/Article/EditLink/index.tsx diff --git a/components/Article/EditLink/__tests__/index.test.mjs b/components/Article/EditLink/__tests__/index.test.mjs deleted file mode 100644 index 2b2134b1bda8c..0000000000000 --- a/components/Article/EditLink/__tests__/index.test.mjs +++ /dev/null @@ -1,34 +0,0 @@ -import { render, screen } from '@testing-library/react'; -import { IntlProvider } from 'react-intl'; -import EditLink from '../index'; - -jest.mock('next/router', () => ({ - useRouter: jest.fn().mockImplementation(() => ({ - asPath: '', - })), -})); - -const absolutePath = - 'https://github.com/nodejs/nodejs.org/edit/major/website-redesign/pages/en/get-involved/contribute.md'; -const relativePath = 'get-involved/contribute.md'; -const editPath = 'pages/en/get-involved/contribute.md'; - -describe('EditLink component', () => { - it('produces correct relative path', () => { - render( - {}}> - - - ); - expect(screen.getByRole('link')).toHaveAttribute('href', absolutePath); - }); - - it('produces correct edit path', () => { - render( - {}}> - - - ); - expect(screen.getByRole('link')).toHaveAttribute('href', absolutePath); - }); -}); diff --git a/components/Article/EditLink/index.module.scss b/components/Article/EditLink/index.module.scss deleted file mode 100644 index ae12a140d9d09..0000000000000 --- a/components/Article/EditLink/index.module.scss +++ /dev/null @@ -1,30 +0,0 @@ -.edit { - display: flex; - flex-wrap: wrap; - margin-top: var(--space-48); - - a { - color: var(--color-text-secondary); - font-family: var(--sans-serif); - font-size: var(--font-size-body2); - font-weight: var(--font-weight-regular); - margin-left: 0; - text-decoration: none !important; - text-transform: uppercase; - vertical-align: middle; - - span { - font-weight: var(--font-weight-regular); - vertical-align: middle; - } - - &:hover { - color: var(--brand-light); - } - - svg { - margin-left: 0.5rem; - vertical-align: middle; - } - } -} diff --git a/components/Article/EditLink/index.stories.tsx b/components/Article/EditLink/index.stories.tsx deleted file mode 100644 index 6ed6c3c9fa688..0000000000000 --- a/components/Article/EditLink/index.stories.tsx +++ /dev/null @@ -1,11 +0,0 @@ -import EditLink from './index'; -import type { Meta as MetaObj, StoryObj } from '@storybook/react'; - -type Story = StoryObj; -type Meta = MetaObj; - -export const Default: Story = { - args: { relativePath: 'get-involved/contribute.md' }, -}; - -export default { component: EditLink } as Meta; diff --git a/components/Article/EditLink/index.tsx b/components/Article/EditLink/index.tsx deleted file mode 100644 index 0cae2eccd77ce..0000000000000 --- a/components/Article/EditLink/index.tsx +++ /dev/null @@ -1,76 +0,0 @@ -import { FaPencilAlt } from 'react-icons/fa'; -import { FormattedMessage } from 'react-intl'; -import styles from './index.module.scss'; -import { useLocale } from './../../../hooks/useLocale'; -import type { FC } from 'react'; - -type EditLinkProps = { - absolutePath?: string; - relativePath?: string; - editPath?: string; -}; - -// TODO(HinataKah0): Change branch from major/website-redesign to main - -const baseEditURL = - 'https://github.com/nodejs/nodejs.org/edit/major/website-redesign'; - -const translationReadmeURL = - 'https://github.com/nodejs/nodejs.org/blob/major/website-redesign/TRANSLATION.md'; - -const translationKeyPrefix = 'components.article.editLink.title'; - -type EditLinkParams = { - translationKey: string; - href: string; -}; - -const getEditLinkParams = ( - { absolutePath, relativePath, editPath }: EditLinkProps, - lang: string -): EditLinkParams => { - if (lang === 'en') { - // Initial content development is done on GitHub in English - return { - translationKey: `${translationKeyPrefix}.edit`, - href: - absolutePath || - (relativePath - ? `${baseEditURL}/pages/en/${relativePath}` - : `${baseEditURL}/${editPath}`), - }; - } - - return { - translationKey: `${translationKeyPrefix}.translate`, - href: translationReadmeURL, - }; -}; - -const EditLink: FC = ({ - absolutePath, - relativePath, - editPath, -}) => { - const { currentLocale } = useLocale(); - - if (!relativePath && !editPath && !absolutePath) { - return null; - } - - const editLinkParams = getEditLinkParams( - { absolutePath, relativePath, editPath }, - currentLocale.code - ); - - return ( - - ); -}; - -export default EditLink; diff --git a/i18n/locales/en.json b/i18n/locales/en.json index e3223e7717e8c..9c44fa23393ab 100644 --- a/i18n/locales/en.json +++ b/i18n/locales/en.json @@ -39,8 +39,6 @@ "components.common.banner.button.text": "Read More", "components.article.author.githubLinkLabel": "{username} Github - opens in new tab", "components.article.authorList.title": "Article Authors", - "components.article.editLink.title.edit": "Edit this page on GitHub", - "components.article.editLink.title.translate": "Interested to help with translations?", "components.common.languageSelector.button.title": "Switch Language", "components.blog.blogCard.author.by": "by", "components.sections.newFooter.trademark": "Trademark Policy", diff --git a/i18n/locales/id.json b/i18n/locales/id.json index 727e309dd102e..2d5db25350546 100644 --- a/i18n/locales/id.json +++ b/i18n/locales/id.json @@ -39,8 +39,6 @@ "components.common.banner.button.text": "Baca Selengkapnya", "components.article.author.githubLinkLabel": "{username} Github - buka di tab baru", "components.article.authorList.title": "Penulis Artikel", - "components.article.editLink.title.edit": "Edit halaman ini di GitHub", - "components.article.editLink.title.translate": "Tertarik untuk membantu terjemahan?", "components.common.languageSelector.button.title": "Ganti Bahasa", "components.blog.blogCard.author.by": "oleh", "components.sections.newFooter.trademark": "Kebijakan Merek Dagang", diff --git a/i18n/locales/zh-cn.json b/i18n/locales/zh-cn.json index 158e7b20eef4c..c6e39ef5cf281 100644 --- a/i18n/locales/zh-cn.json +++ b/i18n/locales/zh-cn.json @@ -39,8 +39,6 @@ "components.common.banner.button.text": "了解更多……", "components.article.author.githubLinkLabel": "{username} Github - 在新标签中打开", "components.article.authorList.title": "文章作者", - "components.article.editLink.title.edit": "在 GitHub 上编辑此页面", - "components.article.editLink.title.translate": "您愿意帮助我们翻译吗?", "components.common.languageSelector.button.title": "切换语言", "components.blog.blogCard.author.by": "由", "components.sections.newFooter.trademark": "商标政策", From 161de2061a04145b6b2c58cab7fbe6123736b985 Mon Sep 17 00:00:00 2001 From: HinataKah0 <128208841+HinataKah0@users.noreply.github.com> Date: Tue, 29 Aug 2023 23:09:58 +0800 Subject: [PATCH 23/43] chore: delete PreviousNextLink component (#5709) --- .../PreviousNextLink/__tests__/index.test.mjs | 55 ------------------- .../Learn/PreviousNextLink/index.module.scss | 24 -------- .../Learn/PreviousNextLink/index.stories.tsx | 26 --------- components/Learn/PreviousNextLink/index.tsx | 41 -------------- i18n/locales/en.json | 2 - i18n/locales/id.json | 2 - i18n/locales/zh-cn.json | 2 - 7 files changed, 152 deletions(-) delete mode 100644 components/Learn/PreviousNextLink/__tests__/index.test.mjs delete mode 100644 components/Learn/PreviousNextLink/index.module.scss delete mode 100644 components/Learn/PreviousNextLink/index.stories.tsx delete mode 100644 components/Learn/PreviousNextLink/index.tsx diff --git a/components/Learn/PreviousNextLink/__tests__/index.test.mjs b/components/Learn/PreviousNextLink/__tests__/index.test.mjs deleted file mode 100644 index 56a721cb2c43b..0000000000000 --- a/components/Learn/PreviousNextLink/__tests__/index.test.mjs +++ /dev/null @@ -1,55 +0,0 @@ -import { render, screen } from '@testing-library/react'; -import { IntlProvider } from 'react-intl'; -import PrevNextLink from '..'; - -jest.mock('next/router', () => ({ - useRouter() { - return { - isReady: true, - asPath: '/link', - }; - }, -})); - -describe('PrevNextLink component', () => { - test('renders nothing if neither previous nor next are provided', () => { - render(); - const component = screen.findByRole('list'); - expect(component).resolves.not.toBeInTheDocument; - }); - - test('renders previous link if previous is provided', () => { - const previous = { slug: '/previous-page' }; - render( - {}}> - - - ); - const link = screen.findByRole('link'); - expect(link).resolves.toHaveAttribute('href', `/en${previous.slug}`); - }); - - test('renders next link if next is provided', () => { - const next = { slug: '/next-page' }; - render( - {}}> - - - ); - const link = screen.findByRole('link'); - expect(link).resolves.toHaveAttribute('href', `/en${next.slug}`); - }); - - test('renders both previous and next links if both are provided', async () => { - const previous = { slug: '/previous-page' }; - const next = { slug: '/next-page' }; - render( - {}}> - - - ); - const links = await screen.findAllByRole('link'); - expect(links[0]).toHaveAttribute('href', `/en${previous.slug}`); - expect(links[1]).toHaveAttribute('href', `/en${next.slug}`); - }); -}); diff --git a/components/Learn/PreviousNextLink/index.module.scss b/components/Learn/PreviousNextLink/index.module.scss deleted file mode 100644 index 98d29f8a1b7e6..0000000000000 --- a/components/Learn/PreviousNextLink/index.module.scss +++ /dev/null @@ -1,24 +0,0 @@ -.prevNextLink { - display: flex; - flex-wrap: wrap; - justify-content: space-between; - list-style: none; - margin: 0; - padding: 5rem 0 0 0; - - a { - align-items: center; - color: var(--black7) !important; - display: flex; - font-family: var(--sans-serif); - font-size: 1.4rem; - font-weight: var(--font-weight-regular); - text-decoration: none !important; - text-transform: uppercase; - vertical-align: middle; - - &:hover { - color: var(--brand-light) !important; - } - } -} diff --git a/components/Learn/PreviousNextLink/index.stories.tsx b/components/Learn/PreviousNextLink/index.stories.tsx deleted file mode 100644 index 9865c7b2f7f69..0000000000000 --- a/components/Learn/PreviousNextLink/index.stories.tsx +++ /dev/null @@ -1,26 +0,0 @@ -import PrevNextLink from '.'; -import type { Meta as MetaObj, StoryObj } from '@storybook/react'; - -type Story = StoryObj; -type Meta = MetaObj; - -export const Default: Story = { - args: { - previous: { slug: '/previous' }, - next: { slug: '/next' }, - }, -}; - -export const WithoutNext: Story = { - args: { - previous: { slug: '/previous' }, - }, -}; - -export const WithoutPrevious: Story = { - args: { - next: { slug: '/next' }, - }, -}; - -export default { component: PrevNextLink } as Meta; diff --git a/components/Learn/PreviousNextLink/index.tsx b/components/Learn/PreviousNextLink/index.tsx deleted file mode 100644 index 57d1100f44932..0000000000000 --- a/components/Learn/PreviousNextLink/index.tsx +++ /dev/null @@ -1,41 +0,0 @@ -import { FaAngleDoubleLeft, FaAngleDoubleRight } from 'react-icons/fa'; -import { FormattedMessage } from 'react-intl'; -import LocalizedLink from '@/components/LocalizedLink'; -import type { LinkInfo } from '@/types'; -import type { FC } from 'react'; - -import styles from './index.module.scss'; - -type PreviousNextLinkProps = { - previous?: LinkInfo; - next?: LinkInfo; -}; - -const PreviousNextLink: FC = ({ previous, next }) => { - if (!previous && !next) { - return null; - } - - return ( -
    -
  • - {previous && ( - - )} -
  • -
  • - {next && ( - - )} -
  • -
- ); -}; - -export default PreviousNextLink; diff --git a/i18n/locales/en.json b/i18n/locales/en.json index 9c44fa23393ab..259f51a8b97af 100644 --- a/i18n/locales/en.json +++ b/i18n/locales/en.json @@ -48,8 +48,6 @@ "components.sections.newFooter.about": "About", "components.sections.newFooter.blog": "Blog", "components.sections.newFooter.github": "GitHub", - "components.learn.previousNextLink.next": "NEXT", - "components.learn.previousNextLink.previous": "PREV", "components.api.stability": "Stability: {level} - ", "components.api.jsonLink.title": "View as JSON", "components.api.sourceLink": "Source Code:", diff --git a/i18n/locales/id.json b/i18n/locales/id.json index 2d5db25350546..a87ff7e5079cb 100644 --- a/i18n/locales/id.json +++ b/i18n/locales/id.json @@ -48,8 +48,6 @@ "components.sections.newFooter.about": "Tentang", "components.sections.newFooter.blog": "Blog", "components.sections.newFooter.github": "GitHub", - "components.learn.previousNextLink.next": "LANJUT", - "components.learn.previousNextLink.previous": "KEMBALI", "components.api.stability": "Stabilitas: {level} - ", "components.api.jsonLink.title": "Tampilkan sebagai JSON", "components.api.sourceLink": "Kode Sumber:", diff --git a/i18n/locales/zh-cn.json b/i18n/locales/zh-cn.json index c6e39ef5cf281..36668fbbad81c 100644 --- a/i18n/locales/zh-cn.json +++ b/i18n/locales/zh-cn.json @@ -48,8 +48,6 @@ "components.sections.newFooter.about": "关于我们", "components.sections.newFooter.blog": "博客", "components.sections.newFooter.github": "GitHub", - "components.learn.previousNextLink.next": "下一页", - "components.learn.previousNextLink.previous": "上一页", "components.api.stability": "稳定性级别: {level} - ", "components.api.jsonLink.title": "以 JSON 格式查看", "components.api.sourceLink": "源代码:", From ddc97eab20a905a4d38bf1e88b49b5b14e6bd4ba Mon Sep 17 00:00:00 2001 From: canerakdas Date: Tue, 29 Aug 2023 11:10:17 -0400 Subject: [PATCH 24/43] refactor: remove BlogCard component (#5710) * refactor: BlogCard component removed * refactor: BlogCard internationalizations removed --------- Co-authored-by: Shanmughapriyan S --- components/Blog/BlogCard/index.module.scss | 72 ---------------------- components/Blog/BlogCard/index.stories.tsx | 18 ------ components/Blog/BlogCard/index.tsx | 50 --------------- i18n/locales/en.json | 1 - i18n/locales/id.json | 1 - i18n/locales/zh-cn.json | 1 - 6 files changed, 143 deletions(-) delete mode 100644 components/Blog/BlogCard/index.module.scss delete mode 100644 components/Blog/BlogCard/index.stories.tsx delete mode 100644 components/Blog/BlogCard/index.tsx diff --git a/components/Blog/BlogCard/index.module.scss b/components/Blog/BlogCard/index.module.scss deleted file mode 100644 index c16ec8aeabb9f..0000000000000 --- a/components/Blog/BlogCard/index.module.scss +++ /dev/null @@ -1,72 +0,0 @@ -.blogCard { - display: flex; - flex-direction: column; - padding: var(--space-32) var(--space-24) var(--space-32) 0; - - @media (max-width: 900px) { - padding: var(--space-12) var(--space-24); - } - - .title { - background-color: var(--color-blog-card-background); - border-radius: 5px; - display: flex; - flex: 1 1 0px; - flex-direction: column; - padding: 1rem 1.5rem; - - a { - color: var(--color-text-accent); - font-size: 2em; - margin-bottom: 10px; - text-decoration: none; - - &:hover { - text-decoration: underline; - } - } - } - - .metadata { - align-self: flex-start; - background-color: var(--color-dropdown-hover); - border-radius: 1rem; - display: flex; - margin-top: auto; - padding: 0.25rem; - - span, - a { - color: var(--color-text-high-contrast); - font-size: var(--font-size-body3); - padding: 0.125rem 0.5rem; - - &.category { - background-color: var(--color-dropdown-background); - border-radius: 1rem; - margin: 0; - } - } - } - - .content { - justify-self: flex-end; - - h4 { - margin: 0; - margin-top: 7px; - opacity: 0.7; - } - - p { - margin: 7px 0; - opacity: 0.8; - - li { - display: inline; - list-style: none; - margin: 0 3px; - } - } - } -} diff --git a/components/Blog/BlogCard/index.stories.tsx b/components/Blog/BlogCard/index.stories.tsx deleted file mode 100644 index 5a7f848ab6eee..0000000000000 --- a/components/Blog/BlogCard/index.stories.tsx +++ /dev/null @@ -1,18 +0,0 @@ -import BlockQuote from './index'; -import type { Meta as MetaObj, StoryObj } from '@storybook/react'; - -type Story = StoryObj; -type Meta = MetaObj; - -export const Default: Story = { - args: { - author: 'Bat Man', - category: 'category-mock', - date: '2023-04-21 23:40:56.77', - slug: '/blog/category-mock/sample-blog', - title: 'Sample Test Blog', - readingTime: '1 min read', - }, -}; - -export default { component: BlockQuote } as Meta; diff --git a/components/Blog/BlogCard/index.tsx b/components/Blog/BlogCard/index.tsx deleted file mode 100644 index 715bbcdd6c687..0000000000000 --- a/components/Blog/BlogCard/index.tsx +++ /dev/null @@ -1,50 +0,0 @@ -import { FormattedDate, FormattedMessage } from 'react-intl'; -import styles from './index.module.scss'; -import LocalizedLink from '@/components/LocalizedLink'; -import navigation from '@/navigation.json'; -import type { BlogPost } from '@/types'; -import type { FC } from 'react'; - -const getBlogCategoryUrl = (category: string): string => - `${navigation.blog.link}/${category}/`; - -type BlogCardProps = BlogPost & { readingTime: string }; - -const BlogCard: FC = ({ - title, - author, - date, - category, - readingTime, - slug, -}) => ( -
-
- {title} -
- {category && ( - - {category} - - )} - {readingTime} -
-
-
-

- -

- {author && ( -

- {' '} - {author} -

- )} -
-
-); - -export default BlogCard; diff --git a/i18n/locales/en.json b/i18n/locales/en.json index 259f51a8b97af..b26ffdc384c58 100644 --- a/i18n/locales/en.json +++ b/i18n/locales/en.json @@ -40,7 +40,6 @@ "components.article.author.githubLinkLabel": "{username} Github - opens in new tab", "components.article.authorList.title": "Article Authors", "components.common.languageSelector.button.title": "Switch Language", - "components.blog.blogCard.author.by": "by", "components.sections.newFooter.trademark": "Trademark Policy", "components.sections.newFooter.privacy": "Privacy Policy", "components.sections.newFooter.codeOfConduct": "Code of Conduct", diff --git a/i18n/locales/id.json b/i18n/locales/id.json index a87ff7e5079cb..48b9e3b0dcf1d 100644 --- a/i18n/locales/id.json +++ b/i18n/locales/id.json @@ -40,7 +40,6 @@ "components.article.author.githubLinkLabel": "{username} Github - buka di tab baru", "components.article.authorList.title": "Penulis Artikel", "components.common.languageSelector.button.title": "Ganti Bahasa", - "components.blog.blogCard.author.by": "oleh", "components.sections.newFooter.trademark": "Kebijakan Merek Dagang", "components.sections.newFooter.privacy": "Kebijakan Privasi", "components.sections.newFooter.codeOfConduct": "Kode Etik", diff --git a/i18n/locales/zh-cn.json b/i18n/locales/zh-cn.json index 36668fbbad81c..108104442cf2a 100644 --- a/i18n/locales/zh-cn.json +++ b/i18n/locales/zh-cn.json @@ -40,7 +40,6 @@ "components.article.author.githubLinkLabel": "{username} Github - 在新标签中打开", "components.article.authorList.title": "文章作者", "components.common.languageSelector.button.title": "切换语言", - "components.blog.blogCard.author.by": "由", "components.sections.newFooter.trademark": "商标政策", "components.sections.newFooter.privacy": "隐私政策", "components.sections.newFooter.codeOfConduct": "行为守则", From c4162259bf2c60693fd32c2d63f53eab7614b144 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ulises=20Gasc=C3=B3n?= Date: Tue, 29 Aug 2023 17:11:12 +0200 Subject: [PATCH 25/43] add scorecard pipeline (#5660) * feat: add scorecard pipeline * chore: linting * chore: minor rewording Signed-off-by: Claudio Wunder --------- Signed-off-by: Claudio Wunder Co-authored-by: Claudio Wunder --- .github/workflows/scorecards.yml | 64 ++++++++++++++++++++++++++++++++ 1 file changed, 64 insertions(+) create mode 100644 .github/workflows/scorecards.yml diff --git a/.github/workflows/scorecards.yml b/.github/workflows/scorecards.yml new file mode 100644 index 0000000000000..d449e0b8e5143 --- /dev/null +++ b/.github/workflows/scorecards.yml @@ -0,0 +1,64 @@ +# This workflow uses actions that are not certified by GitHub. They are provided +# by a third party and are governed by separate terms of service, privacy +# policy and support documentation. + +name: OpenSSF Scorecard Review +on: + # For Branch-Protection check. Only the default branch is supported. See + # https://github.com/ossf/scorecard/blob/main/docs/checks.md#branch-protection + branch_protection_rule: + # To guarantee that the Maintained check is occasionally updated. See + # https://github.com/ossf/scorecard/blob/main/docs/checks.md#maintained + schedule: + - cron: '20 7 * * 2' + push: + branches: + - main + +# Declare default permissions as read only. +permissions: read-all + +jobs: + analysis: + name: Scorecard analysis + runs-on: ubuntu-latest + permissions: + # Needed to upload the results to code-scanning dashboard. + security-events: write + # Needed to publish results and get a badge (see publish_results below). + id-token: write + contents: read + actions: read + + steps: + - name: Harden Runner + uses: step-security/harden-runner@8ca2b8b2ece13480cda6dacd3511b49857a23c09 # v2.5.1 + with: + egress-policy: audit + + - name: Git Checkout + uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 # v3.5.3 + with: + persist-credentials: false + + - name: Run Scorecard Analysis + uses: ossf/scorecard-action@99c53751e09b9529366343771cc321ec74e9bd3d # v2.0.6 + with: + results_file: results.sarif + results_format: sarif + publish_results: true + + # Upload the results as artifacts (optional). Commenting out will disable uploads of run results in SARIF + # format to the repository Actions tab. + - name: Upload Artifacts + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 + with: + name: SARIF file + path: results.sarif + retention-days: 5 + + # Upload the results to GitHub's code scanning dashboard. + - name: Upload Scan Results + uses: github/codeql-action/upload-sarif@a09933a12a80f87b87005513f0abb1494c27a716 # v2.21.4 + with: + sarif_file: results.sarif From 490f82eaff2f7fcf9fe152b06c59c53d6d9c095a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ulises=20Gasc=C3=B3n?= Date: Tue, 29 Aug 2023 17:11:58 +0200 Subject: [PATCH 26/43] add dependency review (#5662) * feat: added dependency review tool * feat: add dependency review tool pipeline * chore: linting * chore: few rewordings Signed-off-by: Claudio Wunder --------- Signed-off-by: Claudio Wunder Co-authored-by: Claudio Wunder --- .github/workflows/dependency-review.yml | 30 +++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 .github/workflows/dependency-review.yml diff --git a/.github/workflows/dependency-review.yml b/.github/workflows/dependency-review.yml new file mode 100644 index 0000000000000..2958511186434 --- /dev/null +++ b/.github/workflows/dependency-review.yml @@ -0,0 +1,30 @@ +# Dependency Review Action +# +# This Action will scan dependency manifest files that change as part of a Pull Request, +# surfacing known-vulnerable versions of the packages declared or updated in the PR. +# Once installed, if the workflow run is marked as required, +# PRs introducing known-vulnerable packages will be blocked from merging. +# +# Source repository: https://github.com/actions/dependency-review-action +name: Review Dependencies + +on: + pull_request: + +permissions: + contents: read + +jobs: + dependency-review: + runs-on: ubuntu-latest + steps: + - name: Harden Runner + uses: step-security/harden-runner@8ca2b8b2ece13480cda6dacd3511b49857a23c09 # v2.5.1 + with: + egress-policy: audit + + - name: Git Checkout + uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 # v3.5 + + - name: Review Dependencies + uses: actions/dependency-review-action@0efb1d1d84fc9633afcdaad14c485cbbc90ef46c # v2.5.1 From cfb06c6b9c31a8a9b89ba382426011c4fa46c4c2 Mon Sep 17 00:00:00 2001 From: HinataKah0 <128208841+HinataKah0@users.noreply.github.com> Date: Tue, 29 Aug 2023 23:23:08 +0800 Subject: [PATCH 27/43] chore: delete Stability component (#5708) Signed-off-by: CW Co-authored-by: CW --- components/Api/Stability/index.module.scss | 36 ---------------------- components/Api/Stability/index.stories.tsx | 24 --------------- components/Api/Stability/index.tsx | 23 -------------- i18n/locales/en.json | 2 ++ i18n/locales/id.json | 2 ++ i18n/locales/zh-cn.json | 2 ++ 6 files changed, 6 insertions(+), 83 deletions(-) delete mode 100644 components/Api/Stability/index.module.scss delete mode 100644 components/Api/Stability/index.stories.tsx delete mode 100644 components/Api/Stability/index.tsx diff --git a/components/Api/Stability/index.module.scss b/components/Api/Stability/index.module.scss deleted file mode 100644 index e375fc8dc780f..0000000000000 --- a/components/Api/Stability/index.module.scss +++ /dev/null @@ -1,36 +0,0 @@ -.stability { - border-radius: 4px; - color: #fff; - line-height: 1.5; - margin: 0 0 1rem; - padding: 1rem; - - p { - display: inline; - margin: 0; - } - - a { - color: #fff; - - code { - color: #fff !important; - } - } - - &Level0 { - background-color: var(--danger5); - } - - &Level1 { - background-color: var(--warning4); - } - - &Level2 { - background-color: var(--brand5); - } - - &Level3 { - background-color: var(--info5); - } -} diff --git a/components/Api/Stability/index.stories.tsx b/components/Api/Stability/index.stories.tsx deleted file mode 100644 index aca5db7075a29..0000000000000 --- a/components/Api/Stability/index.stories.tsx +++ /dev/null @@ -1,24 +0,0 @@ -import Stability from './index'; -import type { Meta as MetaObj, StoryObj } from '@storybook/react'; - -type Story = StoryObj; -type Meta = MetaObj; - -export const Default: Story = { - args: { - stability: 0, - children: 'This is an stability index example', - }, - argTypes: { - stability: { - control: { - type: 'range', - min: 0, - max: 3, - step: 1, - }, - }, - }, -}; - -export default { component: Stability } as Meta; diff --git a/components/Api/Stability/index.tsx b/components/Api/Stability/index.tsx deleted file mode 100644 index 44f6bb00c3cdc..0000000000000 --- a/components/Api/Stability/index.tsx +++ /dev/null @@ -1,23 +0,0 @@ -import { FormattedMessage } from 'react-intl'; -import styles from './index.module.scss'; -import type { PropsWithChildren, FC } from 'react'; - -type StabilityProps = PropsWithChildren<{ stability: number }>; - -const getStabilityClass = (stability: number) => { - const style = styles[`stabilityLevel${stability}`]; - if (!style) throw new Error(`Unknown stability level: ${stability}`); - return style; -}; - -const Stability: FC = ({ stability, children }) => ( -
- - {children} -
-); - -export default Stability; diff --git a/i18n/locales/en.json b/i18n/locales/en.json index b26ffdc384c58..2180db727eb12 100644 --- a/i18n/locales/en.json +++ b/i18n/locales/en.json @@ -47,6 +47,8 @@ "components.sections.newFooter.about": "About", "components.sections.newFooter.blog": "Blog", "components.sections.newFooter.github": "GitHub", + "components.learn.previousNextLink.next": "NEXT", + "components.learn.previousNextLink.previous": "PREV", "components.api.stability": "Stability: {level} - ", "components.api.jsonLink.title": "View as JSON", "components.api.sourceLink": "Source Code:", diff --git a/i18n/locales/id.json b/i18n/locales/id.json index 48b9e3b0dcf1d..5602553a6774d 100644 --- a/i18n/locales/id.json +++ b/i18n/locales/id.json @@ -47,6 +47,8 @@ "components.sections.newFooter.about": "Tentang", "components.sections.newFooter.blog": "Blog", "components.sections.newFooter.github": "GitHub", + "components.learn.previousNextLink.next": "LANJUT", + "components.learn.previousNextLink.previous": "KEMBALI", "components.api.stability": "Stabilitas: {level} - ", "components.api.jsonLink.title": "Tampilkan sebagai JSON", "components.api.sourceLink": "Kode Sumber:", diff --git a/i18n/locales/zh-cn.json b/i18n/locales/zh-cn.json index 108104442cf2a..fdfd9dddc7142 100644 --- a/i18n/locales/zh-cn.json +++ b/i18n/locales/zh-cn.json @@ -47,6 +47,8 @@ "components.sections.newFooter.about": "关于我们", "components.sections.newFooter.blog": "博客", "components.sections.newFooter.github": "GitHub", + "components.learn.previousNextLink.next": "下一页", + "components.learn.previousNextLink.previous": "上一页", "components.api.stability": "稳定性级别: {level} - ", "components.api.jsonLink.title": "以 JSON 格式查看", "components.api.sourceLink": "源代码:", From bd31d489615b424202553ffe1a5093a19d5e5e1f Mon Sep 17 00:00:00 2001 From: HinataKah0 <128208841+HinataKah0@users.noreply.github.com> Date: Wed, 30 Aug 2023 17:56:26 +0800 Subject: [PATCH 28/43] fix: fix bad merge (#5716) --- i18n/locales/en.json | 3 --- i18n/locales/id.json | 3 --- i18n/locales/zh-cn.json | 3 --- 3 files changed, 9 deletions(-) diff --git a/i18n/locales/en.json b/i18n/locales/en.json index 2180db727eb12..bb12ca997bd10 100644 --- a/i18n/locales/en.json +++ b/i18n/locales/en.json @@ -47,9 +47,6 @@ "components.sections.newFooter.about": "About", "components.sections.newFooter.blog": "Blog", "components.sections.newFooter.github": "GitHub", - "components.learn.previousNextLink.next": "NEXT", - "components.learn.previousNextLink.previous": "PREV", - "components.api.stability": "Stability: {level} - ", "components.api.jsonLink.title": "View as JSON", "components.api.sourceLink": "Source Code:", "components.sections.newHeader.links.learn": "Learn", diff --git a/i18n/locales/id.json b/i18n/locales/id.json index 5602553a6774d..be6568648fcde 100644 --- a/i18n/locales/id.json +++ b/i18n/locales/id.json @@ -47,9 +47,6 @@ "components.sections.newFooter.about": "Tentang", "components.sections.newFooter.blog": "Blog", "components.sections.newFooter.github": "GitHub", - "components.learn.previousNextLink.next": "LANJUT", - "components.learn.previousNextLink.previous": "KEMBALI", - "components.api.stability": "Stabilitas: {level} - ", "components.api.jsonLink.title": "Tampilkan sebagai JSON", "components.api.sourceLink": "Kode Sumber:", "components.sections.newHeader.links.learn": "Pelajari", diff --git a/i18n/locales/zh-cn.json b/i18n/locales/zh-cn.json index fdfd9dddc7142..2a7eea93ac2ab 100644 --- a/i18n/locales/zh-cn.json +++ b/i18n/locales/zh-cn.json @@ -47,9 +47,6 @@ "components.sections.newFooter.about": "关于我们", "components.sections.newFooter.blog": "博客", "components.sections.newFooter.github": "GitHub", - "components.learn.previousNextLink.next": "下一页", - "components.learn.previousNextLink.previous": "上一页", - "components.api.stability": "稳定性级别: {level} - ", "components.api.jsonLink.title": "以 JSON 格式查看", "components.api.sourceLink": "源代码:", "components.sections.newHeader.links.learn": "学习", From c12dc0858c34d675fd7cc91db42e9b3dd6738b9a Mon Sep 17 00:00:00 2001 From: HinataKah0 <128208841+HinataKah0@users.noreply.github.com> Date: Thu, 31 Aug 2023 16:36:21 +0800 Subject: [PATCH 29/43] chore: delete Author and AuthorList components (#5717) --- .../AuthorList/Author/index.module.scss | 16 ------- .../AuthorList/Author/index.stories.tsx | 21 --------- .../Article/AuthorList/Author/index.tsx | 45 ------------------- .../Article/AuthorList/index.module.scss | 26 ----------- .../Article/AuthorList/index.stories.tsx | 13 ------ components/Article/AuthorList/index.tsx | 27 ----------- i18n/locales/en.json | 2 - i18n/locales/id.json | 2 - i18n/locales/zh-cn.json | 2 - 9 files changed, 154 deletions(-) delete mode 100644 components/Article/AuthorList/Author/index.module.scss delete mode 100644 components/Article/AuthorList/Author/index.stories.tsx delete mode 100644 components/Article/AuthorList/Author/index.tsx delete mode 100644 components/Article/AuthorList/index.module.scss delete mode 100644 components/Article/AuthorList/index.stories.tsx delete mode 100644 components/Article/AuthorList/index.tsx diff --git a/components/Article/AuthorList/Author/index.module.scss b/components/Article/AuthorList/Author/index.module.scss deleted file mode 100644 index 416b6e8a802ec..0000000000000 --- a/components/Article/AuthorList/Author/index.module.scss +++ /dev/null @@ -1,16 +0,0 @@ -.link { - &:hover img { - transform: scale(1.1); - } - - img { - background-size: contain; - border: 2px solid var(--brand-light); - border-radius: 100%; - display: block; - height: 30px; - margin-top: 5px; - transition: all 0.2s ease-in-out; - width: 30px; - } -} diff --git a/components/Article/AuthorList/Author/index.stories.tsx b/components/Article/AuthorList/Author/index.stories.tsx deleted file mode 100644 index 1384b2d08e898..0000000000000 --- a/components/Article/AuthorList/Author/index.stories.tsx +++ /dev/null @@ -1,21 +0,0 @@ -import Author from './index'; -import type { Meta as MetaObj, StoryObj } from '@storybook/react'; - -type Story = StoryObj; -type Meta = MetaObj; - -export const Default: Story = { - args: { - username: 'nodejs', - size: 60, - }, -}; - -export const WithourUsername: Story = { - args: { - username: '', - size: 0, - }, -}; - -export default { component: Author } as Meta; diff --git a/components/Article/AuthorList/Author/index.tsx b/components/Article/AuthorList/Author/index.tsx deleted file mode 100644 index 8f4d513dadf66..0000000000000 --- a/components/Article/AuthorList/Author/index.tsx +++ /dev/null @@ -1,45 +0,0 @@ -import { useState } from 'react'; -import { useIntl } from 'react-intl'; -import Image from 'next/image'; -import styles from './index.module.scss'; -import type { FC } from 'react'; - -type AuthorProps = { username: string; size?: number }; - -const Author: FC = ({ username, size }) => { - const githubUserName = username.trim(); - const githubLink = `https://github.com/${githubUserName}`; - const githubImgLink = `https://github.com/${githubUserName}.png?size=${size}`; - - const intl = useIntl(); - - const [authorImg, setAuthorImg] = useState(githubImgLink); - - const translation = intl.formatMessage( - { id: 'components.article.author.githubLinkLabel' }, - { username } - ); - - return ( - - {githubUserName} setAuthorImg('/static/images/placeholder-img.png')} - /> - - ); -}; - -export default Author; diff --git a/components/Article/AuthorList/index.module.scss b/components/Article/AuthorList/index.module.scss deleted file mode 100644 index 2d3c3c4b47f0a..0000000000000 --- a/components/Article/AuthorList/index.module.scss +++ /dev/null @@ -1,26 +0,0 @@ -.authorList { - color: var(--color-text-secondary); - display: flex; - flex-direction: column; - font-size: var(--font-size-body2); - font-weight: var(--font-weight-bold); - margin-bottom: var(--space-24); - max-width: 600px; - text-transform: uppercase; - - ul { - display: flex; - flex-wrap: wrap; - list-style: none; - margin: 0; - padding: 0; - - li { - margin: 0.5rem 0.5rem 0.5rem 0; - - &:first-of-type a { - margin-left: 0; - } - } - } -} diff --git a/components/Article/AuthorList/index.stories.tsx b/components/Article/AuthorList/index.stories.tsx deleted file mode 100644 index 2f82bebbdd837..0000000000000 --- a/components/Article/AuthorList/index.stories.tsx +++ /dev/null @@ -1,13 +0,0 @@ -import AuthorList from './index'; -import type { Meta as MetaObj, StoryObj } from '@storybook/react'; - -type Story = StoryObj; -type Meta = MetaObj; - -export const Default: Story = { - args: { - authors: ['flaviocopes', 'MarkPieszak', 'mcollina', 'unavailable-author'], - }, -}; - -export default { component: AuthorList } as Meta; diff --git a/components/Article/AuthorList/index.tsx b/components/Article/AuthorList/index.tsx deleted file mode 100644 index 633e08cdba7a8..0000000000000 --- a/components/Article/AuthorList/index.tsx +++ /dev/null @@ -1,27 +0,0 @@ -import { FormattedMessage } from 'react-intl'; -import Author from './Author'; -import styles from './index.module.scss'; -import type { FC } from 'react'; - -type AuthorListProps = { authors: string[] }; - -const AuthorList: FC = ({ authors }) => { - if (authors.length) { - return ( -
- -
    - {authors.map(author => ( -
  • - -
  • - ))} -
-
- ); - } - - return null; -}; - -export default AuthorList; diff --git a/i18n/locales/en.json b/i18n/locales/en.json index bb12ca997bd10..1117d9864e2a4 100644 --- a/i18n/locales/en.json +++ b/i18n/locales/en.json @@ -37,8 +37,6 @@ "layouts.blogPost.author.byLine": "{author, select, null {} other {By {author}, }}", "layouts.blogIndex.currentYear": "News from {year}", "components.common.banner.button.text": "Read More", - "components.article.author.githubLinkLabel": "{username} Github - opens in new tab", - "components.article.authorList.title": "Article Authors", "components.common.languageSelector.button.title": "Switch Language", "components.sections.newFooter.trademark": "Trademark Policy", "components.sections.newFooter.privacy": "Privacy Policy", diff --git a/i18n/locales/id.json b/i18n/locales/id.json index be6568648fcde..fe003279a21ec 100644 --- a/i18n/locales/id.json +++ b/i18n/locales/id.json @@ -37,8 +37,6 @@ "layouts.blogPost.author.byLine": "{author, select, null {} other {Oleh {author}, }}", "layouts.blogIndex.currentYear": "Berita dari {year}", "components.common.banner.button.text": "Baca Selengkapnya", - "components.article.author.githubLinkLabel": "{username} Github - buka di tab baru", - "components.article.authorList.title": "Penulis Artikel", "components.common.languageSelector.button.title": "Ganti Bahasa", "components.sections.newFooter.trademark": "Kebijakan Merek Dagang", "components.sections.newFooter.privacy": "Kebijakan Privasi", diff --git a/i18n/locales/zh-cn.json b/i18n/locales/zh-cn.json index 2a7eea93ac2ab..ad792c9696d62 100644 --- a/i18n/locales/zh-cn.json +++ b/i18n/locales/zh-cn.json @@ -37,8 +37,6 @@ "layouts.blogPost.author.byLine": "{author, select, null {} other {由 {author} }}", "layouts.blogIndex.currentYear": "{year} 年的所有新闻事件", "components.common.banner.button.text": "了解更多……", - "components.article.author.githubLinkLabel": "{username} Github - 在新标签中打开", - "components.article.authorList.title": "文章作者", "components.common.languageSelector.button.title": "切换语言", "components.sections.newFooter.trademark": "商标政策", "components.sections.newFooter.privacy": "隐私政策", From 21384f6cb74acd4063b7ea94d37e9c2aafc5ecb7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Guilherme=20Ara=C3=BAjo?= Date: Thu, 31 Aug 2023 05:41:18 -0300 Subject: [PATCH 30/43] feat: remove codebox component (#5713) * feat: remove codebox component * chore: remove empty config file --- .../Article/Codebox/__tests__/index.test.mjs | 155 ------------------ components/Article/Codebox/index.module.scss | 138 ---------------- components/Article/Codebox/index.stories.tsx | 72 -------- components/Article/Codebox/index.tsx | 107 ------------ components/Article/Codebox/themes/_dark.scss | 90 ---------- components/Article/Codebox/themes/_light.scss | 76 --------- hooks/usePrismJS.ts | 17 -- next.prism.mjs | 20 --- package-lock.json | 16 -- package.json | 2 - 10 files changed, 693 deletions(-) delete mode 100644 components/Article/Codebox/__tests__/index.test.mjs delete mode 100644 components/Article/Codebox/index.module.scss delete mode 100644 components/Article/Codebox/index.stories.tsx delete mode 100644 components/Article/Codebox/index.tsx delete mode 100644 components/Article/Codebox/themes/_dark.scss delete mode 100644 components/Article/Codebox/themes/_light.scss delete mode 100644 hooks/usePrismJS.ts delete mode 100644 next.prism.mjs diff --git a/components/Article/Codebox/__tests__/index.test.mjs b/components/Article/Codebox/__tests__/index.test.mjs deleted file mode 100644 index 2b60bbc318a16..0000000000000 --- a/components/Article/Codebox/__tests__/index.test.mjs +++ /dev/null @@ -1,155 +0,0 @@ -import userEvent from '@testing-library/user-event'; -import { render, screen, waitFor } from '@testing-library/react'; -import { IntlProvider } from 'react-intl'; - -import Codebox, { replaceLabelLanguages, replaceLanguages } from '..'; - -describe('Codebox component', () => { - it('should render Codebox component', async () => { - const code = 'const a = 1;'; - const { container } = render( - -
{code}
-
- ); - await waitFor(() => container.querySelector('pre[tabindex="0"]')); - }); -}); - -describe('Replacer tests', () => { - it('replaceLabelLanguages', () => { - expect(replaceLabelLanguages('language-console')).toBe('bash'); - }); - - it('replaceLanguages', () => { - expect(replaceLanguages('language-mjs')).toBe('language-js'); - expect(replaceLanguages('language-cjs')).toBe('language-js'); - expect(replaceLanguages('language-javascript')).toBe('language-js'); - expect(replaceLanguages('language-console')).toBe('language-bash'); - expect(replaceLanguages('language-shell')).toBe('language-bash'); - }); -}); - -describe('Codebox component (one lang)', () => { - const code = 'const a = 1;'; - - it('should copy content', async () => { - const user = userEvent.setup(); - - const { container } = render( - {}}> - -
{code}
-
-
- ); - - const navigatorClipboardWriteTextSpy = jest.spyOn( - navigator.clipboard, - 'writeText' - ); - - const buttonElement = container.querySelector('[aria-hidden=true]'); - - expect(buttonElement).not.toBeNull(); - - await user.click(buttonElement); - - expect(navigatorClipboardWriteTextSpy).toHaveBeenCalledTimes(1); - expect(navigatorClipboardWriteTextSpy).toHaveBeenCalledWith(code); - }); - - it('should copy content with textToCopy', async () => { - const user = userEvent.setup(); - - const textToCopy = ['Example code']; - - const { container } = render( - {}}> - -
{code}
-
-
- ); - - const navigatorClipboardWriteTextSpy = jest.spyOn( - navigator.clipboard, - 'writeText' - ); - - const buttonElement = container.querySelector('button[aria-hidden=true]'); - - expect(buttonElement).not.toBeNull(); - - await user.click(buttonElement); - - expect(navigatorClipboardWriteTextSpy).toHaveBeenCalledTimes(1); - expect(navigatorClipboardWriteTextSpy).toHaveBeenCalledWith(textToCopy[0]); - }); -}); - -describe('Codebox component (multiple langs)', () => { - const code = `const http = require('http'); --------------- -import http from 'http';`; - - it('switch between languages', async () => { - const user = userEvent.setup(); - - render( - {}}> - -
{code}
-
-
- ); - - const firstLanguage = await screen.findByText('cjs'); - - expect(firstLanguage).not.toBeNull(); - expect(firstLanguage.getAttribute('data-selected')).toBe('true'); - - const secondLanguage = await screen.findByText('mjs'); - expect(secondLanguage).not.toBeNull(); - - await user.click(secondLanguage); - - expect(secondLanguage.getAttribute('data-selected')).toBe('true'); - }); - - it('should copy content with textToCopy', async () => { - const user = userEvent.setup(); - - const textToCopy = ['Example code 1', 'Example code 2']; - - const { container } = render( - {}}> - -
{code}
-
-
- ); - - const navigatorClipboardWriteTextSpy = jest.spyOn( - navigator.clipboard, - 'writeText' - ); - - const copyButton = container.querySelector('button[aria-hidden=true]'); - - expect(copyButton).not.toBeNull(); - - await user.click(copyButton); - - expect(navigatorClipboardWriteTextSpy).toHaveBeenCalledTimes(1); - expect(navigatorClipboardWriteTextSpy).toHaveBeenCalledWith(textToCopy[0]); - - const buttonElement = await screen.findByText('mjs'); - await user.click(buttonElement); - - await user.click(copyButton); - - expect(navigatorClipboardWriteTextSpy).toHaveBeenCalledTimes(2); - expect(navigatorClipboardWriteTextSpy).toHaveBeenCalledWith(textToCopy[1]); - }); -}); diff --git a/components/Article/Codebox/index.module.scss b/components/Article/Codebox/index.module.scss deleted file mode 100644 index e34742cd33a97..0000000000000 --- a/components/Article/Codebox/index.module.scss +++ /dev/null @@ -1,138 +0,0 @@ -@use 'themes/light'; -@use 'themes/dark'; -@use 'styles/mixins/components'; - -.pre { - border-radius: var(--border-radius-3); - margin: 0.5em 0 var(--space-24) 0; - overflow: hidden; - position: relative; - - .header { - align-items: center; - display: flex; - flex-direction: row; - justify-content: space-between; - padding: var(--space-05) var(--space-08); - - .langBox { - border-radius: var(--border-radius-3); - display: flex; - flex-direction: row; - height: 28px; - overflow: hidden; - - .lang { - border-width: 0; - cursor: pointer; - font-family: var(--sans); - font-size: var(--font-size-body2); - font-weight: var(--font-weight-semibold); - padding: 0 var(--space-16); - text-transform: uppercase; - - &.selected { - font-weight: var(--font-weight-bold); - } - } - } - } - - .copy { - background-color: transparent; - border-radius: var(--border-radius-3); - border-width: 0; - cursor: pointer; - font-size: var(--font-size-code); - height: 28px; - padding: 0; - width: 28px; - - svg { - height: 18px; - stroke-width: 2.1; - vertical-align: middle; - width: 18px; - } - } - - .content { - @include components.code; - display: block; - padding: var(--space-12); - } - - &.inlineCode { - .header { - display: none; - } - - .copy { - opacity: 0; - position: absolute; - right: var(--space-08); - top: var(--space-08); - transition: opacity cubic-bezier(0.4, 0, 0.4, 1) 0.3s; - } - - &:hover .copy { - opacity: 1; - } - } -} - -[data-theme='light'] { - .pre { - @include light.theme; - } - - .header { - background-color: var(--black2); - - .langBox .lang { - background-color: var(--black3); - } - } - - .copy, - .header > .langBox .lang { - color: var(--color-text-primary); - - &.selected, - &:hover { - background-color: var(--black4); - } - } - - .inlineCode .copy:hover { - background-color: var(--black4); - } -} - -[data-theme='dark'] { - .pre { - @include dark.theme; - } - - .header { - background-color: var(--black10); - - .langBox .lang { - background-color: var(--black8); - } - } - - .copy, - .header > .langBox .lang { - color: var(--black2); - - &.selected, - &:hover { - background-color: var(--black9); - } - } - - .inlineCode .copy:hover { - background-color: var(--black10); - } -} diff --git a/components/Article/Codebox/index.stories.tsx b/components/Article/Codebox/index.stories.tsx deleted file mode 100644 index 75275fc7fa028..0000000000000 --- a/components/Article/Codebox/index.stories.tsx +++ /dev/null @@ -1,72 +0,0 @@ -import Codebox from './index'; -import type { Meta as MetaObj, StoryObj } from '@storybook/react'; -import type { FC } from 'react'; - -type DecoratedCodeBoxProps = { - language: string[]; - code: string[]; - textToCopy?: string[]; - hideHeader?: boolean; -}; - -const DecoratedCodeBox: FC = ({ - language, - code, - textToCopy, - hideHeader = false, -}) => ( - -
{code.join('--------------\n')}
-
-); - -type Story = StoryObj; -type Meta = MetaObj; - -const singleLangCode = ['const a = 1;']; - -export const Default: Story = { - args: { - language: ['language-js'], - code: singleLangCode, - }, -}; - -const multiLangCode = [ - "const http = require('http');", - "import http from 'http';", -]; - -export const MultiLang: Story = { - args: { - language: ['language-cjs', 'language-mjs'], - code: multiLangCode, - }, -}; - -export const HiddenHeader: Story = { - args: { - language: ['language-js'], - code: singleLangCode, - hideHeader: true, - }, -}; - -export const MultiLangWithTextToCopy: Story = { - args: { - language: ['language-cjs', 'language-mjs'], - code: multiLangCode, - textToCopy: ['cjs example', 'mjs example'], - }, -}; - -const bashCode = ['$ echo "Hello World"']; - -export const Shell: Story = { - args: { - language: ['language-shell'], - code: bashCode, - }, -}; - -export default { component: DecoratedCodeBox } as Meta; diff --git a/components/Article/Codebox/index.tsx b/components/Article/Codebox/index.tsx deleted file mode 100644 index cc907fde3a9c3..0000000000000 --- a/components/Article/Codebox/index.tsx +++ /dev/null @@ -1,107 +0,0 @@ -import { useMemo, useState } from 'react'; -import classnames from 'classnames'; -import { TbCopy, TbCheck } from 'react-icons/tb'; -import { useCopyToClipboard } from '@/hooks/useCopyToClipboard'; -import { usePrismJS } from '@/hooks/usePrismJS'; -import type { FC, PropsWithChildren, ReactElement, MouseEvent } from 'react'; - -import styles from './index.module.scss'; - -type CodeBoxProps = { - children: ReactElement>; - textToCopy?: string[]; - hideHeader?: boolean; -}; - -export const replaceLabelLanguages = (language: string) => - language.replace(/console/i, 'bash').replace('language-', ''); - -export const replaceLanguages = (language: string) => - language - .replace(/mjs|cjs|javascript/i, 'js') - .replace(/console|shell/i, 'bash'); - -const Codebox: FC = ({ - children: { - props: { children: sourceCode, className = 'language-text' }, - }, - textToCopy, - hideHeader = false, -}) => { - const [copied, copyText] = useCopyToClipboard(); - const [langIndex, setLangIndex] = useState(0); - - const languageOptions = className.split('|'); - - const language = replaceLanguages(languageOptions[langIndex]); - - const codeRef = usePrismJS(language); - - const codeArray = useMemo( - () => sourceCode?.toString().split('--------------\n') || [''], - [sourceCode] - ); - - const handleCopyCode = (event: MouseEvent) => { - event.preventDefault(); - - const _textToCopy = textToCopy - ? textToCopy[langIndex] - : codeArray[langIndex]; - - copyText(_textToCopy.replace(/^\$ /, '').trim()); - }; - - const copyButton = ( - - ); - - const containerClasses = classnames(styles.pre, className, { - [styles.inlineCode]: hideHeader, - }); - - const codeClasses = classnames(language, styles.content); - - return ( -
-      
-
- {languageOptions.map((lang, index) => { - const langClasses = classnames(styles.lang, { - [styles.selected]: index === langIndex, - }); - - return ( - - ); - })} -
- - {copyButton} -
- - {hideHeader && copyButton} - - - {codeArray[langIndex]} - -
- ); -}; - -export default Codebox; diff --git a/components/Article/Codebox/themes/_dark.scss b/components/Article/Codebox/themes/_dark.scss deleted file mode 100644 index 6f1fdbd7d522f..0000000000000 --- a/components/Article/Codebox/themes/_dark.scss +++ /dev/null @@ -1,90 +0,0 @@ -@mixin theme { - background: var(--black9); - color: var(--black2); - - :global .token { - &.comment, - &.prolog, - &.doctype, - &.cdata { - color: #8292a2; - } - - &.operator, - &.punctuation { - color: var(--black2); - } - - &.namespace { - opacity: 0.7; - } - - &.property, - &.tag, - &.constant, - &.symbol, - &.deleted { - color: #f92672; - } - - &.boolean { - color: #ae81ff; - } - - &.selector, - &.attr-name, - &.char, - &.builtin, - &.inserted { - color: #a6e22e; - } - - &.entity, - &.url, - .language-css &.string, - .style &.string, - &.variable { - color: #f8f8f2; - } - - &.atrule, - &.attr-value, - &.class-name { - color: #e6db74; - } - - &.function { - color: var(--warning3); - } - - &.string { - color: var(--brand3); - } - - &.keyword { - color: var(--info3); - } - - &.number { - color: var(--purple3); - } - - &.regex, - &.important { - color: #fd971f; - } - - &.important, - &.bold { - font-weight: var(--font-weight-bold); - } - - &.italic { - font-style: italic; - } - - &.entity { - cursor: help; - } - } -} diff --git a/components/Article/Codebox/themes/_light.scss b/components/Article/Codebox/themes/_light.scss deleted file mode 100644 index 403e30dffabd6..0000000000000 --- a/components/Article/Codebox/themes/_light.scss +++ /dev/null @@ -1,76 +0,0 @@ -@mixin theme { - background: var(--black3); - color: black; - - :global .token { - &.comment, - &.prolog, - &.doctype, - &.cdata { - color: slategray; - } - - &.namespace { - opacity: 0.7; - } - - &.property, - &.tag, - &.boolean, - &.number, - &.constant, - &.symbol, - &.deleted { - color: #905; - } - - &.selector, - &.attr-name, - &.char, - &.builtin, - &.inserted { - color: #690; - } - - &.entity, - &.url { - background: hsla(0, 0%, 100%, 0.5); - color: #9a6e3a; - } - - &.atrule, - &.attr-value, - &.keyword { - color: #07a; - } - - &.function, - &.class-name { - color: #dd4a68; - } - - &.regex, - &.important, - &.variable { - color: #e90; - } - - &.important, - &.bold { - font-weight: var(--font-weight-vold); - } - &.italic { - font-style: italic; - } - - &.entity { - cursor: help; - } - - &.punctuation, - &.operator, - &.string { - background-color: var(--black3); - } - } -} diff --git a/hooks/usePrismJS.ts b/hooks/usePrismJS.ts deleted file mode 100644 index 2bdd4fa786f20..0000000000000 --- a/hooks/usePrismJS.ts +++ /dev/null @@ -1,17 +0,0 @@ -import { highlightElement } from 'prismjs'; -import { createRef, useMemo } from 'react'; -import { loadLanguage } from '@/next.prism.mjs'; - -export const usePrismJS = (language: string) => { - const codeRef = createRef(); - - useMemo( - () => - loadLanguage(language).then( - () => codeRef.current && highlightElement(codeRef.current) - ), - [language, codeRef] - ); - - return codeRef; -}; diff --git a/next.prism.mjs b/next.prism.mjs deleted file mode 100644 index 027bf1719b94c..0000000000000 --- a/next.prism.mjs +++ /dev/null @@ -1,20 +0,0 @@ -/** - * Dynamic import Prism.js language components on demand - * based on language prefixes - * - * @param {string} language Prism language to be loaded - */ -export const loadLanguage = async language => { - switch (language.replace('language-', '')) { - case 'bash': - case 'zsh': - await import('prismjs/components/prism-bash'); - break; - case 'jsx': - case 'tsx': - await import('prismjs/components/prism-jsx'); - break; - default: - break; - } -}; diff --git a/package-lock.json b/package-lock.json index b7db6b4f9790b..73cb62cf62ccb 100644 --- a/package-lock.json +++ b/package-lock.json @@ -27,7 +27,6 @@ "next-mdx-remote": "^4.4.1", "next-sitemap": "^4.2.2", "next-themes": "^0.2.1", - "prismjs": "~1.29.0", "react-icons": "~4.10.1", "react-intl": "~6.4.4", "rehype-autolink-headings": "~6.1.1", @@ -46,7 +45,6 @@ "@testing-library/react": "~14.0.0", "@testing-library/user-event": "~14.4.3", "@types/jest": "29.5.3", - "@types/prismjs": "^1.26.0", "@types/react": "^18.2.21", "@types/react-dom": "^18.2.7", "@types/semver": "^7.5.0", @@ -7045,12 +7043,6 @@ "integrity": "sha512-VjID5MJb1eGKthz2qUerWT8+R4b9N+CHvGCzg9fn4kWZgaF9AhdYikQio3R7wV8YY1NsQKPaCwKz1Yff+aHNUQ==", "dev": true }, - "node_modules/@types/prismjs": { - "version": "1.26.0", - "resolved": "https://registry.npmjs.org/@types/prismjs/-/prismjs-1.26.0.tgz", - "integrity": "sha512-ZTaqn/qSqUuAq1YwvOFQfVW1AR/oQJlLSZVustdjwI+GZ8kr0MSHBj0tsXPW1EqHubx50gtBEjbPGsdZwQwCjQ==", - "dev": true - }, "node_modules/@types/prop-types": { "version": "15.7.5", "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.5.tgz", @@ -20704,14 +20696,6 @@ "node": ">= 0.8" } }, - "node_modules/prismjs": { - "version": "1.29.0", - "resolved": "https://registry.npmjs.org/prismjs/-/prismjs-1.29.0.tgz", - "integrity": "sha512-Kx/1w86q/epKcmte75LNrEoT+lX8pBpavuAbvJWRXar7Hz8jrtF+e3vY751p0R8H9HdArwaCTNDDzHg/ScJK1Q==", - "engines": { - "node": ">=6" - } - }, "node_modules/proc-log": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-3.0.0.tgz", diff --git a/package.json b/package.json index dce8fceeb0608..5e8276af35d54 100644 --- a/package.json +++ b/package.json @@ -60,7 +60,6 @@ "next-mdx-remote": "^4.4.1", "next-sitemap": "^4.2.2", "next-themes": "^0.2.1", - "prismjs": "~1.29.0", "react-icons": "~4.10.1", "react-intl": "~6.4.4", "rehype-autolink-headings": "~6.1.1", @@ -86,7 +85,6 @@ "@testing-library/react": "~14.0.0", "@testing-library/user-event": "~14.4.3", "@types/jest": "29.5.3", - "@types/prismjs": "^1.26.0", "@types/react": "^18.2.21", "@types/react-dom": "^18.2.7", "@types/semver": "^7.5.0", From 53c51c74393a785894c448dd95d4751aab153a58 Mon Sep 17 00:00:00 2001 From: Anurag Roy <89125578+NextThread@users.noreply.github.com> Date: Thu, 31 Aug 2023 14:11:38 +0530 Subject: [PATCH 31/43] chore: delete NewHeader component (#5720) * Deleted NewHeader component * Deleted NewHeader component * Deleted NewHeader component --------- Co-authored-by: Michael Esteban --- .../NewHeader/__tests__/index.test.mjs | 58 ------- .../Sections/NewHeader/index.module.scss | 161 ------------------ .../Sections/NewHeader/index.stories.tsx | 9 - components/Sections/NewHeader/index.tsx | 92 ---------- i18n/locales/en.json | 5 - i18n/locales/id.json | 5 - i18n/locales/zh-cn.json | 5 - 7 files changed, 335 deletions(-) delete mode 100644 components/Sections/NewHeader/__tests__/index.test.mjs delete mode 100644 components/Sections/NewHeader/index.module.scss delete mode 100644 components/Sections/NewHeader/index.stories.tsx delete mode 100644 components/Sections/NewHeader/index.tsx diff --git a/components/Sections/NewHeader/__tests__/index.test.mjs b/components/Sections/NewHeader/__tests__/index.test.mjs deleted file mode 100644 index b7ac2336d2753..0000000000000 --- a/components/Sections/NewHeader/__tests__/index.test.mjs +++ /dev/null @@ -1,58 +0,0 @@ -import userEvent from '@testing-library/user-event'; -import { IntlProvider } from 'react-intl'; -import { render, screen } from '@testing-library/react'; -import Header from '..'; - -let mockCurrentTheme = 'light'; - -const mockToggleTheme = jest.fn().mockImplementation(() => { - mockCurrentTheme = mockCurrentTheme === 'dark' ? 'light' : 'dark'; -}); - -// Mock dark mode module for controlling dark mode HOC behaviour -jest.mock('next-themes', () => ({ - useTheme: () => { - return { theme: mockCurrentTheme, setTheme: mockToggleTheme }; - }, -})); - -// mock useRouter -jest.mock('next/router', () => ({ - useRouter() { - return { - locale: 'en', - }; - }, -})); - -jest.mock('../../../../hooks/useLocale', () => ({ - useLocale: () => ({ - currentLocale: { code: 'en', name: 'English', localName: 'English' }, - availableLocales: [ - { code: 'en', name: 'English', localName: 'English' }, - { code: 'es', name: 'Spanish', localName: 'Español' }, - ], - }), -})); - -describe('Tests for Header component', () => { - it('switches logo between light & dark', async () => { - mockCurrentTheme = 'light'; - render( - {}}> -
- - ); - - const lightLogo = screen.getByAltText('light-logo'); - expect(lightLogo).toBeInTheDocument(); - - const toggle = screen.getByLabelText( - 'components.header.buttons.toggleDarkMode' - ); - await userEvent.click(toggle); - - const darkLogo = screen.getByAltText('dark-logo'); - expect(darkLogo).toBeInTheDocument(); - }); -}); diff --git a/components/Sections/NewHeader/index.module.scss b/components/Sections/NewHeader/index.module.scss deleted file mode 100644 index 7354954942be3..0000000000000 --- a/components/Sections/NewHeader/index.module.scss +++ /dev/null @@ -1,161 +0,0 @@ -@use 'styles/mixins/screen'; - -%navItemLi { - align-items: center; - cursor: pointer; - display: flex; - margin-left: var(--space-16); - white-space: nowrap; - - @include screen.forTabletPortraitDown { - display: flex; - height: 42px; - margin-left: 0; - - &:not(:last-child) { - margin-right: var(--space-04); - } - } - - > a { - line-height: 0; - } - - &:last-child { - margin-right: var(--space-08); - } -} - -.header { - background: var(--color-fill-app); - border-bottom: var(--space-01) solid var(--black2); - position: sticky; - top: 0; - width: 100%; - - .container { - align-items: center; - display: flex; - flex-direction: row; - justify-content: space-between; - padding: 0 var(--space-08) 0 var(--space-24); - - @include screen.forTabletPortraitDown { - align-items: start; - flex-flow: wrap; - min-height: calc(1 * var(--nav-height)); - padding: 0 var(--space-12); - } - - .startWrapper { - align-items: center; - display: flex; - justify-content: flex-start; - - .logo { - @include screen.forTabletPortraitDown { - align-items: center; - display: flex; - height: var(--nav-height); - } - - svg { - height: var(--space-32); - - @include screen.forTabletPortraitDown { - height: 2.4rem; - } - } - } - } - - .tabs { - align-items: center; - display: flex; - justify-self: flex-start; - list-style: none; - margin: 0 0 0 120px; - margin-right: auto; - - @media (max-width: 1050px) { - margin: 0; - } - - @include screen.forTabletPortraitDown { - background: var(--color-fill-app); - flex-flow: row wrap; - justify-content: center; - order: 3; - padding: 0; - width: 100%; - } - - > li { - @extend %navItemLi; - - > a { - color: var(--color-text-primary); - padding: calc(var(--space-32) + var(--space-04)) var(--space-16); - text-decoration: none; - - @include screen.forTabletPortraitDown { - padding: var(--space-08); - } - - &.active { - border-bottom: var(--space-04) inset var(--color-text-accent); - color: var(--color-text-accent); - font-weight: var(--font-weight-semibold); - margin-bottom: -4px; - } - - &:hover { - border-bottom: 4px solid var(--color-text-primary); - margin-bottom: -4px; - } - } - } - } - - .endWrapper { - align-items: center; - display: flex; - flex-grow: 1; - - > .rightContainer { - align-items: center; - display: flex; - flex: 1 1 auto; - justify-content: flex-end; - list-style: none; - margin: 0; - padding-left: 0; - - @include screen.forTabletPortraitDown { - padding: 0; - width: 100%; - } - - > li { - @extend %navItemLi; - - padding: 10px; - - > a { - color: var(--color-text-accent); - - > svg { - font-size: 2rem; - } - } - } - } - } - } -} - -[data-theme='dark'] { - .header { - border-bottom: 1px solid transparent; - } -} diff --git a/components/Sections/NewHeader/index.stories.tsx b/components/Sections/NewHeader/index.stories.tsx deleted file mode 100644 index 5372d57f08806..0000000000000 --- a/components/Sections/NewHeader/index.stories.tsx +++ /dev/null @@ -1,9 +0,0 @@ -import Header from './index'; -import type { Meta as MetaObj, StoryObj } from '@storybook/react'; - -type Story = StoryObj; -type Meta = MetaObj; - -export const Default: Story = {}; - -export default { component: Header } as Meta; diff --git a/components/Sections/NewHeader/index.tsx b/components/Sections/NewHeader/index.tsx deleted file mode 100644 index cf65834ce69b8..0000000000000 --- a/components/Sections/NewHeader/index.tsx +++ /dev/null @@ -1,92 +0,0 @@ -import { FormattedMessage } from 'react-intl'; -import Image from 'next/image'; -import { FaGithub } from 'react-icons/fa'; -import LocalizedLink from '@/components/LocalizedLink'; -import ActiveLocalizedLink from '@/components/Common/ActiveLocalizedLink'; -import DarkModeToggle from '@/components/Common/DarkModeToggle'; -import LanguageSelector from '@/components/Common/LanguageSelector'; -import type { FC } from 'react'; - -import styles from './index.module.scss'; - -const Header: FC = () => ( - -); - -export default Header; diff --git a/i18n/locales/en.json b/i18n/locales/en.json index 1117d9864e2a4..be3e0d137ca9f 100644 --- a/i18n/locales/en.json +++ b/i18n/locales/en.json @@ -47,11 +47,6 @@ "components.sections.newFooter.github": "GitHub", "components.api.jsonLink.title": "View as JSON", "components.api.sourceLink": "Source Code:", - "components.sections.newHeader.links.learn": "Learn", - "components.sections.newHeader.links.apiDocs": "API Docs", - "components.sections.newHeader.links.about": "About", - "components.sections.newHeader.links.download": "Downloads", - "components.sections.newHeader.links.certification": "Certification", "components.downloads.downloadToggle.current": "Current", "components.downloads.downloadToggle.lts": "LTS", "components.downloads.downloadToggle.recommendation": "{selected, select, LTS {Recommended for most users}other {With the latest features}}", diff --git a/i18n/locales/id.json b/i18n/locales/id.json index fe003279a21ec..97cb293a35148 100644 --- a/i18n/locales/id.json +++ b/i18n/locales/id.json @@ -47,11 +47,6 @@ "components.sections.newFooter.github": "GitHub", "components.api.jsonLink.title": "Tampilkan sebagai JSON", "components.api.sourceLink": "Kode Sumber:", - "components.sections.newHeader.links.learn": "Pelajari", - "components.sections.newHeader.links.apiDocs": "Dokumentasi API", - "components.sections.newHeader.links.about": "Tentang", - "components.sections.newHeader.links.download": "Unduh", - "components.sections.newHeader.links.certification": "Sertifikasi", "components.downloads.downloadToggle.current": "Saat ini", "components.downloads.downloadToggle.lts": "LTS", "components.downloads.downloadToggle.recommendation": "{selected, select, LTS {Disarankan untuk banyak pengguna}other {Dengan fitur terbaru}}", diff --git a/i18n/locales/zh-cn.json b/i18n/locales/zh-cn.json index ad792c9696d62..1e63febeabef0 100644 --- a/i18n/locales/zh-cn.json +++ b/i18n/locales/zh-cn.json @@ -47,11 +47,6 @@ "components.sections.newFooter.github": "GitHub", "components.api.jsonLink.title": "以 JSON 格式查看", "components.api.sourceLink": "源代码:", - "components.sections.newHeader.links.learn": "学习", - "components.sections.newHeader.links.apiDocs": "API 文档", - "components.sections.newHeader.links.about": "关于 Node.js", - "components.sections.newHeader.links.download": "下载", - "components.sections.newHeader.links.certification": "认证", "components.downloads.downloadToggle.current": "最新尝鲜版", "components.downloads.downloadToggle.lts": "长期维护版", "components.downloads.downloadToggle.recommendation": "{selected, select, LTS {推荐大多数用户}other {使用最新功能}}", From 9f9627fe81827ea373daa5137616705bcdd8c627 Mon Sep 17 00:00:00 2001 From: Umair Raza <52033975+umairraza96@users.noreply.github.com> Date: Thu, 31 Aug 2023 12:44:55 +0400 Subject: [PATCH 32/43] chore: remove `New Footer` and its references closes #5706 (#5723) Co-authored-by: CW --- .../Sections/NewFooter/index.module.scss | 102 ----------------- .../Sections/NewFooter/index.stories.tsx | 9 -- components/Sections/NewFooter/index.tsx | 103 ------------------ i18n/locales/en.json | 7 -- i18n/locales/id.json | 7 -- i18n/locales/zh-cn.json | 7 -- 6 files changed, 235 deletions(-) delete mode 100644 components/Sections/NewFooter/index.module.scss delete mode 100644 components/Sections/NewFooter/index.stories.tsx delete mode 100644 components/Sections/NewFooter/index.tsx diff --git a/components/Sections/NewFooter/index.module.scss b/components/Sections/NewFooter/index.module.scss deleted file mode 100644 index e36924cfeef79..0000000000000 --- a/components/Sections/NewFooter/index.module.scss +++ /dev/null @@ -1,102 +0,0 @@ -.footer { - display: flex; - flex-wrap: wrap; - justify-content: space-between; - margin: 0; - margin-top: auto; - - @media (max-width: 900px) { - flex-direction: column; - } - - .left { - display: flex; - flex-wrap: wrap; - height: 100%; - justify-content: space-between; - list-style: none; - - li a { - color: var(--color-text-primary); - - &:hover { - color: var(--color-brand-primary); - } - } - - > li:first-of-type { - border-right: 1px solid var(--black5); - margin-right: 12px; - padding-right: 12px; - padding-top: 0; - } - - @media (max-width: 900px) { - align-items: center; - flex-direction: column; - height: 10rem; - justify-content: center; - - > li:first-of-type { - border-right: none; - margin-right: 0; - padding: 6px 0; - } - } - } - - .right { - display: flex; - flex-wrap: wrap; - height: 100%; - justify-content: space-between; - list-style: none; - margin-right: 20px; - - > li svg { - height: 1.8rem; - width: 1.8rem; - } - - @media (max-width: 900px) { - margin: 0; - - > li:first-of-type { - margin-left: 0; - margin-right: auto; - } - - > li { - margin-left: 18px; - } - } - } - - .left, - .right { - > li { - font-size: 12px; - height: 24px; - margin-right: 32px; - - @media (max-width: 900px) { - margin-right: 0; - padding: 6px 0; - } - } - - @media (max-width: 900px) { - padding: 6px 18px; - } - } - - .link { - text-decoration: none; - } - - svg { - fill: var(--color-text-secondary); - height: 1.8rem; - width: 1.8rem; - } -} diff --git a/components/Sections/NewFooter/index.stories.tsx b/components/Sections/NewFooter/index.stories.tsx deleted file mode 100644 index 77f4f96d3109f..0000000000000 --- a/components/Sections/NewFooter/index.stories.tsx +++ /dev/null @@ -1,9 +0,0 @@ -import Footer from './index'; -import type { Meta as MetaObj, StoryObj } from '@storybook/react'; - -type Story = StoryObj; -type Meta = MetaObj; - -export const Default: Story = {}; - -export default { component: Footer } as Meta; diff --git a/components/Sections/NewFooter/index.tsx b/components/Sections/NewFooter/index.tsx deleted file mode 100644 index a0afdeb8d741c..0000000000000 --- a/components/Sections/NewFooter/index.tsx +++ /dev/null @@ -1,103 +0,0 @@ -import { FormattedMessage } from 'react-intl'; -import { FaGithub, FaSlack, FaTwitter, FaMastodon } from 'react-icons/fa'; -import styles from './index.module.scss'; -import LocalizedLink from '@/components/LocalizedLink'; - -const Footer = () => ( - -); - -export default Footer; diff --git a/i18n/locales/en.json b/i18n/locales/en.json index be3e0d137ca9f..7d829d373e67f 100644 --- a/i18n/locales/en.json +++ b/i18n/locales/en.json @@ -38,13 +38,6 @@ "layouts.blogIndex.currentYear": "News from {year}", "components.common.banner.button.text": "Read More", "components.common.languageSelector.button.title": "Switch Language", - "components.sections.newFooter.trademark": "Trademark Policy", - "components.sections.newFooter.privacy": "Privacy Policy", - "components.sections.newFooter.codeOfConduct": "Code of Conduct", - "components.sections.newFooter.security": "Security", - "components.sections.newFooter.about": "About", - "components.sections.newFooter.blog": "Blog", - "components.sections.newFooter.github": "GitHub", "components.api.jsonLink.title": "View as JSON", "components.api.sourceLink": "Source Code:", "components.downloads.downloadToggle.current": "Current", diff --git a/i18n/locales/id.json b/i18n/locales/id.json index 97cb293a35148..8cb526134fc03 100644 --- a/i18n/locales/id.json +++ b/i18n/locales/id.json @@ -38,13 +38,6 @@ "layouts.blogIndex.currentYear": "Berita dari {year}", "components.common.banner.button.text": "Baca Selengkapnya", "components.common.languageSelector.button.title": "Ganti Bahasa", - "components.sections.newFooter.trademark": "Kebijakan Merek Dagang", - "components.sections.newFooter.privacy": "Kebijakan Privasi", - "components.sections.newFooter.codeOfConduct": "Kode Etik", - "components.sections.newFooter.security": "Keamanan", - "components.sections.newFooter.about": "Tentang", - "components.sections.newFooter.blog": "Blog", - "components.sections.newFooter.github": "GitHub", "components.api.jsonLink.title": "Tampilkan sebagai JSON", "components.api.sourceLink": "Kode Sumber:", "components.downloads.downloadToggle.current": "Saat ini", diff --git a/i18n/locales/zh-cn.json b/i18n/locales/zh-cn.json index 1e63febeabef0..0d7803d845fde 100644 --- a/i18n/locales/zh-cn.json +++ b/i18n/locales/zh-cn.json @@ -38,13 +38,6 @@ "layouts.blogIndex.currentYear": "{year} 年的所有新闻事件", "components.common.banner.button.text": "了解更多……", "components.common.languageSelector.button.title": "切换语言", - "components.sections.newFooter.trademark": "商标政策", - "components.sections.newFooter.privacy": "隐私政策", - "components.sections.newFooter.codeOfConduct": "行为守则", - "components.sections.newFooter.security": "汇报安全漏洞", - "components.sections.newFooter.about": "关于我们", - "components.sections.newFooter.blog": "博客", - "components.sections.newFooter.github": "GitHub", "components.api.jsonLink.title": "以 JSON 格式查看", "components.api.sourceLink": "源代码:", "components.downloads.downloadToggle.current": "最新尝鲜版", From 504501d93fbfa66b4c3c98a9b8e4f96d72da7ac9 Mon Sep 17 00:00:00 2001 From: CW Date: Thu, 31 Aug 2023 11:50:14 +0200 Subject: [PATCH 33/43] chore(i18n): crowdin sync (#5721) * New translations governance.md (Belarusian) chore(i18n): added new translations from crowdin * New translations index.md (Korean) chore(i18n): added new translations from crowdin * New translations index.mdx (Ukrainian) chore(i18n): added new translations from crowdin * New translations index.md (Chinese Simplified) chore(i18n): added new translations from crowdin * New translations en.json (Chinese Simplified) chore(i18n): added new translations from crowdin * New translations index.mdx (Chinese Simplified) chore(i18n): added new translations from crowdin * New translations en.json (Indonesian) chore(i18n): added new translations from crowdin * New translations index.mdx (Indonesian) chore(i18n): added new translations from crowdin * Update index.mdx fix for the auto formation err Signed-off-by: Wai.Dung * Update index.mdx Fix for the auto formation error Signed-off-by: Wai.Dung * Update index.mdx Signed-off-by: CW --------- Signed-off-by: Wai.Dung Signed-off-by: CW Co-authored-by: Wai.Dung --- pages/be/about/governance.md | 30 ++++++++++++++++++++++++++++++ pages/ko/get-involved/index.md | 2 +- pages/zh-cn/get-involved/index.md | 2 +- 3 files changed, 32 insertions(+), 2 deletions(-) create mode 100644 pages/be/about/governance.md diff --git a/pages/be/about/governance.md b/pages/be/about/governance.md new file mode 100644 index 0000000000000..7794be3c2c534 --- /dev/null +++ b/pages/be/about/governance.md @@ -0,0 +1,30 @@ +--- +title: Кіраванне праектам +layout: about.hbs +--- + +# Кіраванне праектам + +## Працэс пошуку кансэнсусу + +Праект Node.js прытрымліваецца мадэлі [пошуку кансэнсусу](https://en.wikipedia.org/wiki/Consensus-seeking_decision-making) ў прыняцці рашэнняў. + +## Суаўтары + +Рэпазіторый [nodejs/node][] на GitHub падтрымліваецца і развіваецца Суаўтарамі, якіх дадае Тэхнічны кіруючы камітэт ([TSC][]) на пастаяннай аснове. + +Людзі, якія ўносяць значны і каштоўны ўклад, становяцца Суаўтарамі і атрымліваюць доступ да праекта з дазволам на ўнясенне змяненняў. Гэтых людзей вызначае КТК (кіруючы тэхнічны камітэт), і іх вылучэнне абмяркоўваецца з існуючымі Суаўтарамі. + +Бягучы спіс Суаўтараў глядзіце ў [README.md][] праекта. + +Кіраўніцтва для Суаўтараў знаходзіцца ў [collaborator-guide.md][]. + +## Кіруючы тэхнічны камітэт + +Праект кіруецца [Кіруючым тэхнічным камітэтам (КТК)][] які адказвае за высокаўзроўневае кіраўніцтва праектам. + +[collaborator-guide.md]: https://github.com/nodejs/node/blob/main/doc/contributing/collaborator-guide.md +[README.md]: https://github.com/nodejs/node/blob/main/README.md#current-project-team-members +[Кіруючым тэхнічным камітэтам (КТК)]: https://github.com/nodejs/TSC/blob/main/TSC-Charter.md +[TSC]: https://github.com/nodejs/TSC +[nodejs/node]: https://github.com/nodejs/node diff --git a/pages/ko/get-involved/index.md b/pages/ko/get-involved/index.md index 3c87832e80bbd..6052f3c083b19 100644 --- a/pages/ko/get-involved/index.md +++ b/pages/ko/get-involved/index.md @@ -14,7 +14,7 @@ layout: contribute.hbs * [OpenJSF Slack](https://slack-invite.openjsf.org/)은 여러 Node.js채널의 슬랙을 운영하는 단체입니다.( `#nodejs-`라고 되어있는 채널이 프로젝트와 관련있는 채널입니다.) * [Node Slackers](https://www.nodeslackers.com/)는 Node.js에 초점을 맞춘 슬랙 커뮤니티입니다. * Node.js공식 트위터는 [nodejs](https://twitter.com/nodejs)입니다. -* [Node.js 재단 캘린더](https://nodejs.org/calendar)에 모든 공개 팀 미팅 일정이 포함되어 있습니다. +* [Node.js 프로젝트 캘린더](https://nodejs.org/calendar)에 모든 팀 미팅 일정이 있습니다. ## 알아보기 diff --git a/pages/zh-cn/get-involved/index.md b/pages/zh-cn/get-involved/index.md index 507c4c4a81551..bc6f92b4649e2 100644 --- a/pages/zh-cn/get-involved/index.md +++ b/pages/zh-cn/get-involved/index.md @@ -14,7 +14,7 @@ layout: contribute.hbs * [OpenJSF Slack](https://slack-invite.openjsf.org/) 包含多个 Node.js 频道(带有 `#nodejs-` 前缀的都是与此项目相关)。 * [Node Slackers](https://www.nodeslackers.com/) 是在 Slack 上针对 Node.js 的社区。 * Node.js 官方的 Twitter 账号:[nodejs](https://twitter.com/nodejs). -* [Node.js Foundation calendar](https://nodejs.org/calendar) 是有关于所有 Node.js 团队会议的相关日程安排。 +* [Node.js 项目日历](https://nodejs.org/calendar) 是有关于所有 Node.js 团队会议的相关日程安排。 ## 学习资源 From 4ef4f136451ed55e2af9836e4172fffd938ee080 Mon Sep 17 00:00:00 2001 From: Anurag Roy <89125578+NextThread@users.noreply.github.com> Date: Thu, 31 Aug 2023 21:28:17 +0530 Subject: [PATCH 34/43] chore: delete DownloadToggle component (#5727) * Deleted DownloadToggle component * Deleted DownloadToggle component --------- Signed-off-by: Anurag Roy <89125578+NextThread@users.noreply.github.com> --- .../DownloadToggle/__tests__/index.test.mjs | 26 ------- .../DownloadToggle/index.module.scss | 60 ---------------- .../DownloadToggle/index.stories.tsx | 37 ---------- components/Downloads/DownloadToggle/index.tsx | 69 ------------------- i18n/locales/en.json | 5 -- i18n/locales/id.json | 5 -- i18n/locales/zh-cn.json | 5 -- 7 files changed, 207 deletions(-) delete mode 100644 components/Downloads/DownloadToggle/__tests__/index.test.mjs delete mode 100644 components/Downloads/DownloadToggle/index.module.scss delete mode 100644 components/Downloads/DownloadToggle/index.stories.tsx delete mode 100644 components/Downloads/DownloadToggle/index.tsx diff --git a/components/Downloads/DownloadToggle/__tests__/index.test.mjs b/components/Downloads/DownloadToggle/__tests__/index.test.mjs deleted file mode 100644 index c76b05bfbf8ee..0000000000000 --- a/components/Downloads/DownloadToggle/__tests__/index.test.mjs +++ /dev/null @@ -1,26 +0,0 @@ -import userEvent from '@testing-library/user-event'; -import { render, screen } from '@testing-library/react'; -import { IntlProvider } from 'react-intl'; -import DownloadToggle from '..'; - -describe('DownloadToggle component', () => { - it('utilizes click handler correctly', async () => { - const mockHandler = jest.fn(); - - render( - {}}> - - - ); - - await userEvent.click( - screen.getByText('components.downloads.downloadToggle.lts') - ); - - await userEvent.click( - screen.getByText('components.downloads.downloadToggle.current') - ); - - expect(mockHandler.mock.calls.length).toBe(2); - }); -}); diff --git a/components/Downloads/DownloadToggle/index.module.scss b/components/Downloads/DownloadToggle/index.module.scss deleted file mode 100644 index ebebd39ef1250..0000000000000 --- a/components/Downloads/DownloadToggle/index.module.scss +++ /dev/null @@ -1,60 +0,0 @@ -.downloadToggle { - align-items: center; - display: flex; - flex-direction: column; - justify-content: center; - margin-top: 40px; - - .selector { - display: flex; - justify-content: center; - } - - .switch { - border: none; - height: 42px; - padding: 0; - width: 236px; - } - - .description { - font-size: var(--font-size-body1); - line-height: var(--line-height-body1); - margin-top: 10px; - text-align: center; - } - - button { - background: var(--black0); - border: none; - border-radius: 32px; - box-shadow: - inset 1px -1px 1px rgba(0, 0, 0, 0.08), - inset 0px 1px 2px rgba(0, 0, 0, 0.08); - box-sizing: border-box; - color: var(--black7); - cursor: pointer; - display: inline-block; - font-size: var(--font-size-body2); - font-weight: var(--font-weight-bold); - height: 42px; - line-height: 40px; - line-height: var(--line-height-body2); - padding: 1px 6px; - position: relative; - width: 133px; - - &.current { - box-shadow: - inset 1px -1px 1px rgba(0, 0, 0, 0.08), - inset 0px 1px 2px rgba(0, 0, 0, 0.08); - margin-left: -30px; - } - - &.active { - background: var(--brand6); - color: var(--black0); - z-index: 99; - } - } -} diff --git a/components/Downloads/DownloadToggle/index.stories.tsx b/components/Downloads/DownloadToggle/index.stories.tsx deleted file mode 100644 index 72ff4a270a27f..0000000000000 --- a/components/Downloads/DownloadToggle/index.stories.tsx +++ /dev/null @@ -1,37 +0,0 @@ -import { useState } from 'react'; -import DownloadToggle from './index'; -import type { FC } from 'react'; -import type { DownloadToggleProps } from './index'; -import type { Meta as MetaObj, StoryObj } from '@storybook/react'; - -const Template: FC = ({ selected, showDescription }) => { - const [selectedTypeRelease, setSelectedTypeRelease] = useState(selected); - - const handleTypeReleaseToggle = (value: string) => { - setSelectedTypeRelease(value); - }; - - return ( - - ); -}; - -type Story = StoryObj; -type Meta = MetaObj; - -export const Default: Story = { - args: { selected: 'LTS' }, -}; - -export const Current: Story = { - args: { selected: 'CURRENT' }, -}; - -export default { - component: Template, - args: { showDescription: true }, -} as Meta; diff --git a/components/Downloads/DownloadToggle/index.tsx b/components/Downloads/DownloadToggle/index.tsx deleted file mode 100644 index a2a73972efe27..0000000000000 --- a/components/Downloads/DownloadToggle/index.tsx +++ /dev/null @@ -1,69 +0,0 @@ -import { FormattedMessage, useIntl } from 'react-intl'; -import classnames from 'classnames'; -import styles from './index.module.scss'; -import type { FC } from 'react'; - -export type DownloadToggleProps = { - handleClick: (type: string) => void; - selected: string; - showDescription?: boolean; -}; - -const DownloadToggle: FC = ({ - handleClick, - selected, - showDescription = true, -}) => { - const intl = useIntl(); - - const activeClassNames = classnames({ [styles.active]: selected === 'LTS' }); - const currentClassNames = classnames(styles.current, { - [styles.active]: selected === 'CURRENT', - }); - - const handleOnClick = () => - handleClick(selected === 'CURRENT' ? 'LTS' : 'CURRENT'); - - return ( -
-
-
- - -
-
- {showDescription && ( -

- -

- )} -
- ); -}; - -export default DownloadToggle; diff --git a/i18n/locales/en.json b/i18n/locales/en.json index 7d829d373e67f..8f3240339100b 100644 --- a/i18n/locales/en.json +++ b/i18n/locales/en.json @@ -40,11 +40,6 @@ "components.common.languageSelector.button.title": "Switch Language", "components.api.jsonLink.title": "View as JSON", "components.api.sourceLink": "Source Code:", - "components.downloads.downloadToggle.current": "Current", - "components.downloads.downloadToggle.lts": "LTS", - "components.downloads.downloadToggle.recommendation": "{selected, select, LTS {Recommended for most users}other {With the latest features}}", - "components.downloads.downloadToggle.ltsVersions": "LTS Versions", - "components.downloads.downloadToggle.currentVersions": "Current Versions", "pages.404.title": "404: Page could not be found", "pages.404.description": "ENOENT: no such file or directory" } diff --git a/i18n/locales/id.json b/i18n/locales/id.json index 8cb526134fc03..bc4b6a1b0deff 100644 --- a/i18n/locales/id.json +++ b/i18n/locales/id.json @@ -40,11 +40,6 @@ "components.common.languageSelector.button.title": "Ganti Bahasa", "components.api.jsonLink.title": "Tampilkan sebagai JSON", "components.api.sourceLink": "Kode Sumber:", - "components.downloads.downloadToggle.current": "Saat ini", - "components.downloads.downloadToggle.lts": "LTS", - "components.downloads.downloadToggle.recommendation": "{selected, select, LTS {Disarankan untuk banyak pengguna}other {Dengan fitur terbaru}}", - "components.downloads.downloadToggle.ltsVersions": "Versi LTS", - "components.downloads.downloadToggle.currentVersions": "Versi Saat Ini", "pages.404.title": "404: Halaman tidak dapat ditemukan", "pages.404.description": "ENOENT: tidak ada file atau direktori" } diff --git a/i18n/locales/zh-cn.json b/i18n/locales/zh-cn.json index 0d7803d845fde..1b2323fb429a5 100644 --- a/i18n/locales/zh-cn.json +++ b/i18n/locales/zh-cn.json @@ -40,11 +40,6 @@ "components.common.languageSelector.button.title": "切换语言", "components.api.jsonLink.title": "以 JSON 格式查看", "components.api.sourceLink": "源代码:", - "components.downloads.downloadToggle.current": "最新尝鲜版", - "components.downloads.downloadToggle.lts": "长期维护版", - "components.downloads.downloadToggle.recommendation": "{selected, select, LTS {推荐大多数用户}other {使用最新功能}}", - "components.downloads.downloadToggle.ltsVersions": "LTS 版本", - "components.downloads.downloadToggle.currentVersions": "最新尝鲜版本", "pages.404.title": "404:您访问的页面不存在", "pages.404.description": "ENOENT:无此文件或目录" } From 55031340f739a44a39a686438275859e2b8e2a5f Mon Sep 17 00:00:00 2001 From: CW Date: Thu, 31 Aug 2023 21:08:28 +0200 Subject: [PATCH 35/43] meta: remove non-useful bundle analysis generation (#5728) --- .github/workflows/build.yml | 43 +++---- .github/workflows/pull-request-target.yml | 138 ++++------------------ .github/workflows/pull-request.yml | 23 ++++ 3 files changed, 67 insertions(+), 137 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 522557e59c6e5..36a60431d7deb 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -11,6 +11,11 @@ on: branches: - main pull_request: + types: + - labeled + - opened + - reopened + - synchronize merge_group: defaults: @@ -24,6 +29,12 @@ permissions: jobs: base: + # This Job ensures that these jobs run either on regular Pull Request Updates + # Or if the PR gets labeled with `github_actions:pull-request` + if: | + github.event.action != 'labeled' || + (github.event.action == 'labeled' && github.event.label.name == 'github_actions:pull-request') + name: Base Tasks runs-on: ubuntu-latest outputs: @@ -38,6 +49,12 @@ jobs: run: echo "turbo_args=--force=true --cache-dir=.turbo/cache" >> "$GITHUB_OUTPUT" build: + # This Job ensures that these jobs run either on regular Pull Request Updates + # Or if the PR gets labeled with `github_actions:pull-request` + if: | + github.event.action != 'labeled' || + (github.event.action == 'labeled' && github.event.label.name == 'github_actions:pull-request') + name: Build on ${{ matrix.os }} runs-on: ${{ matrix.os }} needs: [base] @@ -107,6 +124,9 @@ jobs: # This build will use the existing cache created on the previous build above (ISR) # We want to enforce that the actual `turbo@latest` package is used instead of a possible hijack from the user # the `${{ needs.base.outputs.turbo_args }}` is a string substitution happening from the base job + if: | + github.event_name == 'pull_request' && + startsWith(github.event.pull_request.head.ref, 'dependabot/') == false run: npx --package=turbo@latest -- turbo deploy ${{ needs.base.outputs.turbo_args }} env: # We want to ensure we have enough RAM allocated to the Node.js process @@ -114,28 +134,11 @@ jobs: # but in general this should never happen NODE_OPTIONS: '--max_old_space_size=4096' - - name: Analyse Build - id: analyse_build - # We don't need build analysis for Dependabot PRs and also when the GitHub Event is not a Pull Request - # i.e. if the Event is a Merge Queue Event - if: startsWith(github.event.pull_request.head.ref, 'dependabot/') == false && github.event_name == 'pull_request' - # We generate a Bundle Analysis Report - # See https://github.com/hashicorp/nextjs-bundle-analysis - run: npx --package=nextjs-bundle-analysis@0.5.0 report - - - name: Upload Build Analysis - # This prevents this step from running if "Analyse Build" got cancelled; Which gets cancelled if - # the curruent branch comes from Dependabot or the Event is not a Pull Request (i.e. Merge Queue Event) - if: steps.analyse_build.outcome == 'success' - # We upload the Bundle Analysis Artifact so it can be used on another Workflow - uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce - with: - name: bundle-analysis - path: .next/analyze/__bundle_analysis.json - - name: Save Build Cache # This prevents this step from running if Upload Build Analysis" got cancelled - if: steps.analyse_build.outcome == 'success' + if: | + github.event_name == 'pull_request' && + startsWith(github.event.pull_request.head.ref, 'dependabot/') == false uses: actions/cache/save@88522ab9f39a2ea568f7027eddc7d8d8bc9d59c8 with: path: | diff --git a/.github/workflows/pull-request-target.yml b/.github/workflows/pull-request-target.yml index a278651e9a0be..d238100517978 100644 --- a/.github/workflows/pull-request-target.yml +++ b/.github/workflows/pull-request-target.yml @@ -14,6 +14,11 @@ on: pull_request_target: branches: - main + types: + - labeled + - opened + - reopened + - synchronize permissions: contents: read @@ -29,8 +34,13 @@ defaults: jobs: coverage-report: - # We want to skip our Pull Request Comments on Dependabot PRs - if: startsWith(github.event.pull_request.head.ref, 'dependabot/') == false + # This Ensures that these jobs are not run within Dependabot Checks + # And that they're run either on regular Pull Request Updates + # Or if the PR gets labeled with `github_actions:pull-request` + if: | + startsWith(github.event.pull_request.head.ref, 'dependabot/') == false && + (github.event.action != 'labeled' || (github.event.action == 'labeled' && github.event.label.name == 'github_actions:pull-request')) + name: Test Coverage Report runs-on: ubuntu-latest @@ -57,7 +67,7 @@ jobs: with: name: coverage-report workflow: pull-request.yml - pr: ${{ github.event.pull_request.number }} + commit: ${{ github.event.pull_request.head.sha }} if_no_artifact_found: fail - name: Jest Coverage Comment @@ -70,7 +80,13 @@ jobs: junitxml-title: Unit Test Report visual-regression: - if: startsWith(github.event.pull_request.head.ref, 'dependabot/') == false + # This Ensures that these jobs are not run within Dependabot Checks + # And that they're run either on regular Pull Request Updates + # Or if the PR gets labeled with `github_actions:pull-request` + if: | + startsWith(github.event.pull_request.head.ref, 'dependabot/') == false && + (github.event.action != 'labeled' || (github.event.action == 'labeled' && github.event.label.name == 'github_actions:pull-request')) + name: Visual Regression Upload runs-on: ubuntu-latest @@ -102,7 +118,7 @@ jobs: with: name: storybook-build workflow: pull-request.yml - pr: ${{ github.event.pull_request.number }} + commit: ${{ github.event.pull_request.head.sha }} path: storybook-static if_no_artifact_found: fail @@ -114,115 +130,3 @@ jobs: storybookBuildDir: storybook-static exitOnceUploaded: true onlyChanged: true - - analysis-report: - # We want to skip our Pull Request Comments on Dependabot PRs - if: startsWith(github.event.pull_request.head.ref, 'dependabot/') == false - name: Build Analysis Report - runs-on: ubuntu-latest - - steps: - - name: Git Checkout - uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 - with: - # We only need to fetch the latest commit of the `base_ref` here for the analysis steps - fetch-depth: 1 - # For this step we don't need to checkout on the userland codebase - # As we can simply checkout on the latest commit of the `base_ref` for the analysis steps - ref: ${{ github.event.pull_request.base.ref }} - - - name: Wait for Linux Build to Finish - uses: lewagon/wait-on-check-action@e106e5c43e8ca1edea6383a39a01c5ca495fd812 - with: - ref: ${{ github.event.pull_request.head.sha }} - check-name: 'Build on ubuntu-latest' - repo-token: ${{ secrets.GITHUB_TOKEN }} - wait-interval: 30 - - - name: Wait for Windows Build to Finish - uses: lewagon/wait-on-check-action@e106e5c43e8ca1edea6383a39a01c5ca495fd812 - with: - ref: ${{ github.event.pull_request.head.sha }} - check-name: 'Build on windows-latest' - repo-token: ${{ secrets.GITHUB_TOKEN }} - wait-interval: 30 - - - name: Download PR Bundle Analysis - # This Step is Partially Generated by https://github.com/hashicorp/nextjs-bundle-analysis - # and modified as we use the artifact from another workflow - uses: dawidd6/action-download-artifact@246dbf436b23d7c49e21a7ab8204ca9ecd1fe615 - with: - name: bundle-analysis - workflow: build.yml - pr: ${{ github.event.pull_request.number }} - path: .next/analyze - if_no_artifact_found: fail - - - name: Download Base Bundle Analysis - # This Step is Auto Generated by https://github.com/hashicorp/nextjs-bundle-analysis - # and modified as we use the artifact from another workflow - uses: dawidd6/action-download-artifact@246dbf436b23d7c49e21a7ab8204ca9ecd1fe615 - with: - name: bundle-analysis - workflow: build.yml - branch: ${{ github.event.pull_request.base.ref }} - path: .next/analyze/base/bundle - if_no_artifact_found: warn - - - name: Check Base Bundle Analysis File - # This Step is Auto Generated by https://github.com/hashicorp/nextjs-bundle-analysis - id: check-base-bundle-analysis-file - uses: andstor/file-existence-action@20b4d2e596410855db8f9ca21e96fbe18e12930b - with: - files: .next/analyze/base/bundle/__bundle_analysis.json - - - name: Copy PR Bundle Analysis (Fallback) - # In case a Analysis of the base branch does not exist, we don't want to fail the CI action - # Hence we simply fallback to the Bundle Analysis of the current Build - if: steps.check-base-bundle-analysis-file.outputs.files_exists == 'false' - run: | - mkdir -p .next/analyze/base/bundle/ - cp .next/analyze/__bundle_analysis.json .next/analyze/base/bundle/__bundle_analysis.json - - - name: Compare Analysis Bundle (Base vs HEAD) - # This Step is Auto Generated by https://github.com/hashicorp/nextjs-bundle-analysis - # and modified for our needs as we don't need some of the parts that come with the generated code - run: ls -laR .next/analyze/base && npx -p nextjs-bundle-analysis compare - - - name: Generate Bundle Analysis Comment - # This Step is Auto Generated by https://github.com/hashicorp/nextjs-bundle-analysis - # and modified for our needs as we don't need some of the parts that come with the generated code - id: get-comment-body - run: | - echo "body<> $GITHUB_OUTPUT - echo "$(cat .next/analyze/__bundle_analysis_comment.txt)" >> $GITHUB_OUTPUT - echo EOF >> $GITHUB_OUTPUT - - - name: Find Existing Bundle Analysis Comment - # This Step is Auto Generated by https://github.com/hashicorp/nextjs-bundle-analysis - # and modified for our needs as we don't need some of the parts that come with the generated code - uses: peter-evans/find-comment@a54c31d7fa095754bfef525c0c8e5e5674c4b4b1 - id: find-comment-id - with: - issue-number: ${{ github.event.number }} - body-includes: '' - - - name: Create Bundle Analysis Comment (if does not exist) - # This Step is Auto Generated by https://github.com/hashicorp/nextjs-bundle-analysis - # and modified for our needs as we don't need some of the parts that come with the generated code - uses: peter-evans/create-or-update-comment@c6c9a1a66007646a28c153e2a8580a5bad27bcfa - if: steps.find-comment-id.outputs.comment-id == 0 - with: - issue-number: ${{ github.event.number }} - body: ${{ steps.get-comment-body.outputs.body }} - - - name: Update Bundle Analysis Comment (if does exist) - # This Step is Auto Generated by https://github.com/hashicorp/nextjs-bundle-analysis - # and modified for our needs as we don't need some of the parts that come with the generated code - uses: peter-evans/create-or-update-comment@c6c9a1a66007646a28c153e2a8580a5bad27bcfa - if: steps.find-comment-id.outputs.comment-id != 0 - with: - issue-number: ${{ github.event.number }} - body: ${{ steps.get-comment-body.outputs.body }} - comment-id: ${{ steps.find-comment-id.outputs.comment-id }} - edit-mode: replace diff --git a/.github/workflows/pull-request.yml b/.github/workflows/pull-request.yml index dd603a0ec06ee..e743082f967e0 100644 --- a/.github/workflows/pull-request.yml +++ b/.github/workflows/pull-request.yml @@ -8,6 +8,11 @@ name: Pull Request Checks on: pull_request: + types: + - labeled + - opened + - reopened + - synchronize merge_group: defaults: @@ -21,6 +26,12 @@ permissions: jobs: base: + # This Job ensures that these jobs run either on regular Pull Request Updates + # Or if the PR gets labeled with `github_actions:pull-request` + if: | + github.event.action != 'labeled' || + (github.event.action == 'labeled' && github.event.label.name == 'github_actions:pull-request') + name: Base Tasks runs-on: ubuntu-latest outputs: @@ -61,6 +72,12 @@ jobs: fi lint: + # This Job ensures that these jobs run either on regular Pull Request Updates + # Or if the PR gets labeled with `github_actions:pull-request` + if: | + github.event.action != 'labeled' || + (github.event.action == 'labeled' && github.event.label.name == 'github_actions:pull-request') + name: Lint runs-on: ubuntu-latest needs: [base] @@ -118,6 +135,12 @@ jobs: key: cache-lint-${{ hashFiles('package-lock.json') }}-${{ hashFiles('.turbo/cache/**') }} tests: + # This Job ensures that these jobs run either on regular Pull Request Updates + # Or if the PR gets labeled with `github_actions:pull-request` + if: | + github.event.action != 'labeled' || + (github.event.action == 'labeled' && github.event.label.name == 'github_actions:pull-request') + name: Tests runs-on: ubuntu-latest needs: [base] From d89f8be9571c54cb2921ea8f0b7d6687af1964ca Mon Sep 17 00:00:00 2001 From: Claudio Wunder Date: Thu, 31 Aug 2023 21:12:23 +0200 Subject: [PATCH 36/43] chore: run only when labeled --- .github/workflows/build.yml | 7 +++---- .github/workflows/pull-request-target.yml | 3 --- .github/workflows/pull-request.yml | 7 +++---- 3 files changed, 6 insertions(+), 11 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 36a60431d7deb..70d46a36d78bb 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -10,12 +10,11 @@ on: push: branches: - main - pull_request: + pull_request_target: + branches: + - main types: - labeled - - opened - - reopened - - synchronize merge_group: defaults: diff --git a/.github/workflows/pull-request-target.yml b/.github/workflows/pull-request-target.yml index d238100517978..734402bb0d92c 100644 --- a/.github/workflows/pull-request-target.yml +++ b/.github/workflows/pull-request-target.yml @@ -16,9 +16,6 @@ on: - main types: - labeled - - opened - - reopened - - synchronize permissions: contents: read diff --git a/.github/workflows/pull-request.yml b/.github/workflows/pull-request.yml index e743082f967e0..704e34df7c189 100644 --- a/.github/workflows/pull-request.yml +++ b/.github/workflows/pull-request.yml @@ -7,12 +7,11 @@ name: Pull Request Checks on: - pull_request: + pull_request_target: + branches: + - main types: - labeled - - opened - - reopened - - synchronize merge_group: defaults: From dc727d3fca9cffa7cd311f124efa2124f138d4ec Mon Sep 17 00:00:00 2001 From: Claudio Wunder Date: Thu, 31 Aug 2023 21:25:57 +0200 Subject: [PATCH 37/43] chore: one workflow only --- .github/workflows/pull-request-target.yml | 129 ---------------------- .github/workflows/pull-request.yml | 25 ++++- 2 files changed, 19 insertions(+), 135 deletions(-) delete mode 100644 .github/workflows/pull-request-target.yml diff --git a/.github/workflows/pull-request-target.yml b/.github/workflows/pull-request-target.yml deleted file mode 100644 index 734402bb0d92c..0000000000000 --- a/.github/workflows/pull-request-target.yml +++ /dev/null @@ -1,129 +0,0 @@ -# Security Notes -# This workflow uses `pull_request_target`, so will run against all PRs automatically (without approval), be careful with allowing any user-provided code to be run here -# Only selected Actions are allowed within this repository. Please refer to (https://github.com/nodejs/nodejs.org/settings/actions) -# for the full list of available actions. If you want to add a new one, please reach out a maintainer with Admin permissions. -# REVIEWERS, please always double-check security practices before merging a PR that contains Workflow changes!! -# AUTHORS, please only use actions with explicit SHA references, and avoid using `@master` or `@main` references or `@version` tags. -# MERGE QUEUE NOTE: This Workflow does not run on `merge_group` trigger, as this Workflow is not required for Merge Queue's -# The main purpose of this Workflow is to decorate the Pull Request with important information for a Pull Request -# On a merge queue the Pull Request already got approved! - -name: Pull Requests Target Checks - -on: - pull_request_target: - branches: - - main - types: - - labeled - -permissions: - contents: read - actions: read - # This permission is required by `peter-evans/create-or-update-comment` - # This permission is required by `MishaKav/jest-coverage-comment` - pull-requests: write - -defaults: - run: - # This ensures that the working directory is the root of the repository - working-directory: ./ - -jobs: - coverage-report: - # This Ensures that these jobs are not run within Dependabot Checks - # And that they're run either on regular Pull Request Updates - # Or if the PR gets labeled with `github_actions:pull-request` - if: | - startsWith(github.event.pull_request.head.ref, 'dependabot/') == false && - (github.event.action != 'labeled' || (github.event.action == 'labeled' && github.event.label.name == 'github_actions:pull-request')) - - name: Test Coverage Report - runs-on: ubuntu-latest - - steps: - - name: Git Checkout - uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 - with: - # We only need to fetch the latest commit of the `base_ref` here for the analysis steps - fetch-depth: 1 - # For this step we don't need to checkout on the userland codebase - # As we can simply checkout on the latest commit of the `base_ref` for the analysis steps - ref: ${{ github.event.pull_request.base.ref }} - - - name: Wait for Tests to Finish - uses: lewagon/wait-on-check-action@e106e5c43e8ca1edea6383a39a01c5ca495fd812 - with: - ref: ${{ github.event.pull_request.head.sha }} - check-name: 'Tests' - repo-token: ${{ secrets.GITHUB_TOKEN }} - wait-interval: 30 - - - name: Download PR Coverage Report - uses: dawidd6/action-download-artifact@246dbf436b23d7c49e21a7ab8204ca9ecd1fe615 - with: - name: coverage-report - workflow: pull-request.yml - commit: ${{ github.event.pull_request.head.sha }} - if_no_artifact_found: fail - - - name: Jest Coverage Comment - # This comments the current Jest Coverage Report containing JUnit XML reports - # and a Code Coverage Summary - uses: MishaKav/jest-coverage-comment@41b5ca01d1250de84537448d248b8d18152cb277 - with: - title: 'Unit Test Coverage Report' - junitxml-path: ./junit.xml - junitxml-title: Unit Test Report - - visual-regression: - # This Ensures that these jobs are not run within Dependabot Checks - # And that they're run either on regular Pull Request Updates - # Or if the PR gets labeled with `github_actions:pull-request` - if: | - startsWith(github.event.pull_request.head.ref, 'dependabot/') == false && - (github.event.action != 'labeled' || (github.event.action == 'labeled' && github.event.label.name == 'github_actions:pull-request')) - - name: Visual Regression Upload - runs-on: ubuntu-latest - - environment: - name: Storybook - url: ${{ steps.chromatic-deploy.outputs.storybookUrl }} - - steps: - - name: Git Checkout - uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 - with: - # Here we need a full git history apparently because Chromatic CLI - # can't make precise git tree comparisons - fetch-depth: 0 - # For this step we don't need to checkout on the userland codebase - # As we can simply checkout on the latest commit of the `base_ref` for the analysis steps - ref: ${{ github.event.pull_request.base.ref }} - - - name: Wait for Tests to Finish - uses: lewagon/wait-on-check-action@e106e5c43e8ca1edea6383a39a01c5ca495fd812 - with: - ref: ${{ github.event.pull_request.head.sha }} - check-name: 'Tests' - repo-token: ${{ secrets.GITHUB_TOKEN }} - wait-interval: 30 - - - name: Download PR Storybook Build - uses: dawidd6/action-download-artifact@246dbf436b23d7c49e21a7ab8204ca9ecd1fe615 - with: - name: storybook-build - workflow: pull-request.yml - commit: ${{ github.event.pull_request.head.sha }} - path: storybook-static - if_no_artifact_found: fail - - - name: Start Visual Regression Tests (Chromatic) - id: chromatic-deploy - uses: chromaui/action@v1 - with: - projectToken: ${{ secrets.CHROMATIC_PROJECT_TOKEN }} - storybookBuildDir: storybook-static - exitOnceUploaded: true - onlyChanged: true diff --git a/.github/workflows/pull-request.yml b/.github/workflows/pull-request.yml index 704e34df7c189..6dd739b75f63c 100644 --- a/.github/workflows/pull-request.yml +++ b/.github/workflows/pull-request.yml @@ -202,15 +202,28 @@ jobs: # the `${{ needs.base.outputs.turbo_args }}` is a string substitution happening from the base job run: npx --package=turbo@latest -- turbo storybook:build ${{ needs.base.outputs.turbo_args }} - - name: Upload Storybook Build - # This prevents this step from running if "Build Storybook" got cancelled; Which gets cancelled if + - name: Start Visual Regression Tests (Chromatic) + # This prevents this step from running if "Upload Coverage Report" got cancelled; Which gets cancelled if # the curruent branch comes from Dependabot or the Event is not a Pull Request (i.e. Merge Queue Event) if: steps.upload_coverage_report.outcome == 'success' - # We upload the Storybook Build so it can be used on another Workflow - uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce + uses: chromaui/action@v1 + with: + projectToken: ${{ secrets.CHROMATIC_PROJECT_TOKEN }} + storybookBuildDir: storybook-static + exitOnceUploaded: true + onlyChanged: true + + - name: Jest Coverage Comment + # This prevents this step from running if "Upload Storybook Build" got cancelled; Which gets cancelled if + # the curruent branch comes from Dependabot or the Event is not a Pull Request (i.e. Merge Queue Event) + if: steps.upload_coverage_report.outcome == 'success' + # This comments the current Jest Coverage Report containing JUnit XML reports + # and a Code Coverage Summary + uses: MishaKav/jest-coverage-comment@41b5ca01d1250de84537448d248b8d18152cb277 with: - name: storybook-build - path: storybook-static + title: 'Unit Test Coverage Report' + junitxml-path: ./junit.xml + junitxml-title: Unit Test Report - name: Save Tests Cache # This prevents this step from running if "Upload Storybook Build" got cancelled; Which gets cancelled if From aa10c1752319c7d4e97c1382f72ba4346d209828 Mon Sep 17 00:00:00 2001 From: Claudio Wunder Date: Thu, 31 Aug 2023 21:33:06 +0200 Subject: [PATCH 38/43] meta: more fixes for workflows --- .github/workflows/build.yml | 11 ++++---- .github/workflows/pull-request.yml | 43 +++++++++++++----------------- 2 files changed, 24 insertions(+), 30 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 70d46a36d78bb..7f392b50fa145 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -119,12 +119,14 @@ jobs: NODE_OPTIONS: '--max_old_space_size=4096' - name: Build Next.js (Static) + # Assigns an ID to be reused on other steps + id: build_nextjs_static # We want a Static Buid on CI to ensure that the Static Exports are working as expected # This build will use the existing cache created on the previous build above (ISR) # We want to enforce that the actual `turbo@latest` package is used instead of a possible hijack from the user # the `${{ needs.base.outputs.turbo_args }}` is a string substitution happening from the base job if: | - github.event_name == 'pull_request' && + github.event_name == 'pull_request_target' && startsWith(github.event.pull_request.head.ref, 'dependabot/') == false run: npx --package=turbo@latest -- turbo deploy ${{ needs.base.outputs.turbo_args }} env: @@ -134,10 +136,9 @@ jobs: NODE_OPTIONS: '--max_old_space_size=4096' - name: Save Build Cache - # This prevents this step from running if Upload Build Analysis" got cancelled - if: | - github.event_name == 'pull_request' && - startsWith(github.event.pull_request.head.ref, 'dependabot/') == false + # This prevents this step from running if "Next.js Build (Static)" got cancelled; Which gets cancelled if + # the curruent branch comes from Dependabot or the Event is not a Pull Request (i.e. Merge Queue Event) + if: steps.build_nextjs_static.outcome == 'success' uses: actions/cache/save@88522ab9f39a2ea568f7027eddc7d8d8bc9d59c8 with: path: | diff --git a/.github/workflows/pull-request.yml b/.github/workflows/pull-request.yml index 6dd739b75f63c..caa0c62baa4e9 100644 --- a/.github/workflows/pull-request.yml +++ b/.github/workflows/pull-request.yml @@ -46,7 +46,7 @@ jobs: # In other words, the GitHub Action will always have the full history of the current PR # We need all the commits of the PR so that `turbo --filter` works correctly run: | - if [ "${{ github.event_name }}" == "pull_request" ]; then + if [ "${{ github.event_name }}" == "pull_request_target" ]; then echo "fetch_depth=$(( ${{ github.event.pull_request.commits }} + 1 ))" >> "$GITHUB_OUTPUT" else echo "fetch_depth=1" >> "$GITHUB_OUTPUT" @@ -64,7 +64,7 @@ jobs: # See https://turbo.build/repo/docs/reference/command-line-reference/run#--cache-dir # See https://turbo.build/repo/docs/reference/command-line-reference/run#--force run: | - if [ "${{ github.event_name }}" == "pull_request" ]; then + if [ "${{ github.event_name }}" == "pull_request_target" ]; then echo "turbo_args=--filter=\"[HEAD~${{ github.event.pull_request.commits }}...HEAD]\" --cache-dir=.turbo/cache" >> "$GITHUB_OUTPUT" else echo "turbo_args=--cache-dir=.turbo/cache" >> "$GITHUB_OUTPUT" @@ -125,7 +125,9 @@ jobs: - name: Save Lint Cache # We don't need to upload a Lint Cache for Dependabot PRs and also when the GitHub Event is not a Pull Request # i.e. if the Event is a Merge Queue Event - if: startsWith(github.event.pull_request.head.ref, 'dependabot/') == false && github.event_name == 'pull_request' + if: | + github.event_name != 'pull_request_target' || + (github.event_name == 'pull_request_target' && startsWith(github.event.pull_request.head.ref, 'dependabot/') == false) uses: actions/cache/save@88522ab9f39a2ea568f7027eddc7d8d8bc9d59c8 with: path: | @@ -180,32 +182,23 @@ jobs: # the `${{ needs.base.outputs.turbo_args }}` is a string substitution happening from the base job run: npx --package=turbo@latest -- turbo test:unit ${{ needs.base.outputs.turbo_args }} -- --ci --coverage - - name: Upload Coverage Report - id: upload_coverage_report - # We don't need coverage report for Dependabot PRs and also when the GitHub Event is not a Pull Request - # i.e. if the Event is a Merge Queue Event - if: startsWith(github.event.pull_request.head.ref, 'dependabot/') == false && github.event_name == 'pull_request' - # We upload the Coverage Report so it can be used on another Workflow - uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce - with: - name: coverage-report - path: | - coverage/ - junit.xml - - name: Build Storybook - # This prevents this step from running if "Upload Coverage Report" got cancelled; Which gets cancelled if - # the curruent branch comes from Dependabot or the Event is not a Pull Request (i.e. Merge Queue Event) - if: steps.upload_coverage_report.outcome == 'success' + # Assigns an ID to be reused on other steps + id: storybook_build + # Skips a few steps if not on a Pull Request (Merge Group) or it is a Dependabot PR + # i.e. if the Event is a Merge Queue Event + if: | + github.event_name != 'pull_request_target' || + (github.event_name == 'pull_request_target' && startsWith(github.event.pull_request.head.ref, 'dependabot/') == false) # We Build Storybook Locally and then upload it so it can be used on another Workflow # We want to enforce that the actual `turbo@latest` package is used instead of a possible hijack from the user # the `${{ needs.base.outputs.turbo_args }}` is a string substitution happening from the base job run: npx --package=turbo@latest -- turbo storybook:build ${{ needs.base.outputs.turbo_args }} - name: Start Visual Regression Tests (Chromatic) - # This prevents this step from running if "Upload Coverage Report" got cancelled; Which gets cancelled if + # This prevents this step from running if "Storybook Build" got cancelled; Which gets cancelled if # the curruent branch comes from Dependabot or the Event is not a Pull Request (i.e. Merge Queue Event) - if: steps.upload_coverage_report.outcome == 'success' + if: steps.storybook_build.outcome == 'success' uses: chromaui/action@v1 with: projectToken: ${{ secrets.CHROMATIC_PROJECT_TOKEN }} @@ -214,9 +207,9 @@ jobs: onlyChanged: true - name: Jest Coverage Comment - # This prevents this step from running if "Upload Storybook Build" got cancelled; Which gets cancelled if + # This prevents this step from running if "Storybook Build" got cancelled; Which gets cancelled if # the curruent branch comes from Dependabot or the Event is not a Pull Request (i.e. Merge Queue Event) - if: steps.upload_coverage_report.outcome == 'success' + if: steps.storybook_build.outcome == 'success' # This comments the current Jest Coverage Report containing JUnit XML reports # and a Code Coverage Summary uses: MishaKav/jest-coverage-comment@41b5ca01d1250de84537448d248b8d18152cb277 @@ -226,9 +219,9 @@ jobs: junitxml-title: Unit Test Report - name: Save Tests Cache - # This prevents this step from running if "Upload Storybook Build" got cancelled; Which gets cancelled if + # This prevents this step from running if "Storybook Build" got cancelled; Which gets cancelled if # the curruent branch comes from Dependabot or the Event is not a Pull Request (i.e. Merge Queue Event) - if: steps.upload_coverage_report.outcome == 'success' + if: steps.storybook_build.outcome == 'success' uses: actions/cache/save@88522ab9f39a2ea568f7027eddc7d8d8bc9d59c8 with: path: | From 98286af2f85f6250887059f272e2b1e87770a949 Mon Sep 17 00:00:00 2001 From: Claudio Wunder Date: Thu, 31 Aug 2023 21:37:04 +0200 Subject: [PATCH 39/43] chore: updated permissions --- .github/workflows/pull-request.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/pull-request.yml b/.github/workflows/pull-request.yml index caa0c62baa4e9..c8c77553ee334 100644 --- a/.github/workflows/pull-request.yml +++ b/.github/workflows/pull-request.yml @@ -22,6 +22,9 @@ defaults: permissions: contents: read actions: read + # This permission is required by `peter-evans/create-or-update-comment` + # This permission is required by `MishaKav/jest-coverage-comment` + pull-requests: write jobs: base: From bd34ed0c611c5bb5fe6cbfefa792b82680b99916 Mon Sep 17 00:00:00 2001 From: Claudio Wunder Date: Thu, 31 Aug 2023 21:40:19 +0200 Subject: [PATCH 40/43] chore: remove label after applied --- .github/workflows/pull-request.yml | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/.github/workflows/pull-request.yml b/.github/workflows/pull-request.yml index c8c77553ee334..c8a9dfbccf5a3 100644 --- a/.github/workflows/pull-request.yml +++ b/.github/workflows/pull-request.yml @@ -27,6 +27,18 @@ permissions: pull-requests: write jobs: + # This Job removes the label after it got applied to ensure that we can easily apply again when needed + remove_pull_request_label: + if: | + github.event.action == 'labeled' && github.event.label.name == 'github_actions:pull-request' + + name: Remove Pull Request Label + runs-on: ubuntu-latest + steps: + - uses: actions-ecosystem/action-remove-labels@v1 + with: + labels: github_actions:pull-request + base: # This Job ensures that these jobs run either on regular Pull Request Updates # Or if the PR gets labeled with `github_actions:pull-request` From bc4e9e4742865714222b6873927fa8aca3cfa7e9 Mon Sep 17 00:00:00 2001 From: Claudio Wunder Date: Thu, 31 Aug 2023 21:41:22 +0200 Subject: [PATCH 41/43] chore: specify version --- .github/workflows/pull-request.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/pull-request.yml b/.github/workflows/pull-request.yml index c8a9dfbccf5a3..cf58dbd01d2c3 100644 --- a/.github/workflows/pull-request.yml +++ b/.github/workflows/pull-request.yml @@ -35,7 +35,8 @@ jobs: name: Remove Pull Request Label runs-on: ubuntu-latest steps: - - uses: actions-ecosystem/action-remove-labels@v1 + - name: Remove GitHub Actions Label + uses: actions-ecosystem/action-remove-labels@2ce5d41b4b6aa8503e285553f75ed56e0a40bae0 with: labels: github_actions:pull-request From 3a22d5d463fd78b67022bafd94e632d3cdec7081 Mon Sep 17 00:00:00 2001 From: Claudio Wunder Date: Thu, 31 Aug 2023 21:45:50 +0200 Subject: [PATCH 42/43] chore: deployment url sotrybook --- .github/workflows/pull-request.yml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/.github/workflows/pull-request.yml b/.github/workflows/pull-request.yml index cf58dbd01d2c3..2384ac0b94915 100644 --- a/.github/workflows/pull-request.yml +++ b/.github/workflows/pull-request.yml @@ -162,6 +162,10 @@ jobs: runs-on: ubuntu-latest needs: [base] + environment: + name: Storybook + url: ${{ steps.chromatic-deploy.outputs.storybookUrl }} + steps: - name: Git Checkout uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 @@ -212,6 +216,8 @@ jobs: run: npx --package=turbo@latest -- turbo storybook:build ${{ needs.base.outputs.turbo_args }} - name: Start Visual Regression Tests (Chromatic) + # This assigns the Environment Deployment for Storybook + id: chromatic-deploy # This prevents this step from running if "Storybook Build" got cancelled; Which gets cancelled if # the curruent branch comes from Dependabot or the Event is not a Pull Request (i.e. Merge Queue Event) if: steps.storybook_build.outcome == 'success' From 0caaa80c46fe3755a909c6b470b3daca651719f3 Mon Sep 17 00:00:00 2001 From: CW Date: Thu, 31 Aug 2023 22:15:59 +0200 Subject: [PATCH 43/43] fix: workflow rules conditions Signed-off-by: CW --- .github/workflows/pull-request.yml | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/.github/workflows/pull-request.yml b/.github/workflows/pull-request.yml index 2384ac0b94915..b8da7d860ff7f 100644 --- a/.github/workflows/pull-request.yml +++ b/.github/workflows/pull-request.yml @@ -30,7 +30,8 @@ jobs: # This Job removes the label after it got applied to ensure that we can easily apply again when needed remove_pull_request_label: if: | - github.event.action == 'labeled' && github.event.label.name == 'github_actions:pull-request' + github.event.action == 'labeled' && + github.event.label.name == 'github_actions:pull-request' name: Remove Pull Request Label runs-on: ubuntu-latest @@ -142,8 +143,8 @@ jobs: # We don't need to upload a Lint Cache for Dependabot PRs and also when the GitHub Event is not a Pull Request # i.e. if the Event is a Merge Queue Event if: | - github.event_name != 'pull_request_target' || - (github.event_name == 'pull_request_target' && startsWith(github.event.pull_request.head.ref, 'dependabot/') == false) + github.event_name == 'pull_request_target' && + startsWith(github.event.pull_request.head.ref, 'dependabot/') == false uses: actions/cache/save@88522ab9f39a2ea568f7027eddc7d8d8bc9d59c8 with: path: | @@ -208,8 +209,8 @@ jobs: # Skips a few steps if not on a Pull Request (Merge Group) or it is a Dependabot PR # i.e. if the Event is a Merge Queue Event if: | - github.event_name != 'pull_request_target' || - (github.event_name == 'pull_request_target' && startsWith(github.event.pull_request.head.ref, 'dependabot/') == false) + github.event_name == 'pull_request_target' && + startsWith(github.event.pull_request.head.ref, 'dependabot/') == false # We Build Storybook Locally and then upload it so it can be used on another Workflow # We want to enforce that the actual `turbo@latest` package is used instead of a possible hijack from the user # the `${{ needs.base.outputs.turbo_args }}` is a string substitution happening from the base job