diff --git a/package-lock.json b/package-lock.json index 57ec80f12e4..2c202e70a49 100644 --- a/package-lock.json +++ b/package-lock.json @@ -7,9 +7,6 @@ "name": "primer", "license": "MIT", "workspaces": [ - "packages/rollup-plugin-import-css", - "packages/react", - "packages/mcp", "packages/*", "examples/*" ], @@ -3470,10 +3467,33 @@ "url": "https://github.com/sponsors/wooorm" } }, + "node_modules/@emnapi/core": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/@emnapi/core/-/core-1.7.1.tgz", + "integrity": "sha512-o1uhUASyo921r2XtHYOHy7gdkGLge8ghBEQHMWmyJFoXlpU58kIrhhN3w26lpQb6dspetweapMn2CSNwQ8I4wg==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "@emnapi/wasi-threads": "1.1.0", + "tslib": "^2.4.0" + } + }, "node_modules/@emnapi/runtime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.6.0.tgz", - "integrity": "sha512-obtUmAHTMjll499P+D9A3axeJFlhdjOWdKUNs/U6QIGT7V5RjcUW1xToAzjvmgTSQhDbYn/NwfTRoJcQ2rNBxA==", + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.7.1.tgz", + "integrity": "sha512-PVtJr5CmLwYAU9PZDMITZoR5iAOShYREoR45EyyLrbntV50mdePTgUn4AmOw90Ifcj+x2kRjdzr1HP3RrNiHGA==", + "license": "MIT", + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@emnapi/wasi-threads": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@emnapi/wasi-threads/-/wasi-threads-1.1.0.tgz", + "integrity": "sha512-WI0DdZ8xFSbgMjR1sFsKABJ/C5OnRrjT06JXbZKexJGrDuPTzZdDYfFlsgcCXCyf+suG5QU2e/y1Wo2V/OapLQ==", + "dev": true, "license": "MIT", "optional": true, "dependencies": { @@ -5948,6 +5968,19 @@ "url": "https://github.com/sponsors/colinhacks" } }, + "node_modules/@napi-rs/wasm-runtime": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@napi-rs/wasm-runtime/-/wasm-runtime-1.1.0.tgz", + "integrity": "sha512-Fq6DJW+Bb5jaWE69/qOE0D1TUN9+6uWhCeZpdnSBk14pjLcCWR7Q8n49PTSPHazM37JqrsdpEthXy2xn6jWWiA==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "@emnapi/core": "^1.7.1", + "@emnapi/runtime": "^1.7.1", + "@tybys/wasm-util": "^0.10.1" + } + }, "node_modules/@next/env": { "version": "16.0.7", "resolved": "https://registry.npmjs.org/@next/env/-/env-16.0.7.tgz", @@ -6424,6 +6457,16 @@ "node": "^16.13.0 || >=18.0.0" } }, + "node_modules/@oxc-project/types": { + "version": "0.99.0", + "resolved": "https://registry.npmjs.org/@oxc-project/types/-/types-0.99.0.tgz", + "integrity": "sha512-LLDEhXB7g1m5J+woRSgfKsFPS3LhR9xRhTeIoEBm5WrkwMxn6eZ0Ld0c0K5eHB57ChZX6I3uSmmLjZ8pcjlRcw==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/Boshen" + } + }, "node_modules/@pkgjs/parseargs": { "version": "0.11.0", "dev": true, @@ -7420,6 +7463,251 @@ "dev": true, "license": "MIT" }, + "node_modules/@rolldown/binding-android-arm64": { + "version": "1.0.0-beta.52", + "resolved": "https://registry.npmjs.org/@rolldown/binding-android-arm64/-/binding-android-arm64-1.0.0-beta.52.tgz", + "integrity": "sha512-MBGIgysimZPqTDcLXI+i9VveijkP5C3EAncEogXhqfax6YXj1Tr2LY3DVuEOMIjWfMPMhtQSPup4fSTAmgjqIw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-darwin-arm64": { + "version": "1.0.0-beta.52", + "resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-arm64/-/binding-darwin-arm64-1.0.0-beta.52.tgz", + "integrity": "sha512-MmKeoLnKu1d9j6r19K8B+prJnIZ7u+zQ+zGQ3YHXGnr41rzE3eqQLovlkvoZnRoxDGPA4ps0pGiwXy6YE3lJyg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-darwin-x64": { + "version": "1.0.0-beta.52", + "resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-x64/-/binding-darwin-x64-1.0.0-beta.52.tgz", + "integrity": "sha512-qpHedvQBmIjT8zdnjN3nWPR2qjQyJttbXniCEKKdHeAbZG9HyNPBUzQF7AZZGwmS9coQKL+hWg9FhWzh2dZ2IA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-freebsd-x64": { + "version": "1.0.0-beta.52", + "resolved": "https://registry.npmjs.org/@rolldown/binding-freebsd-x64/-/binding-freebsd-x64-1.0.0-beta.52.tgz", + "integrity": "sha512-dDp7WbPapj/NVW0LSiH/CLwMhmLwwKb3R7mh2kWX+QW85X1DGVnIEyKh9PmNJjB/+suG1dJygdtdNPVXK1hylg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-linux-arm-gnueabihf": { + "version": "1.0.0-beta.52", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-1.0.0-beta.52.tgz", + "integrity": "sha512-9e4l6vy5qNSliDPqNfR6CkBOAx6PH7iDV4OJiEJzajajGrVy8gc/IKKJUsoE52G8ud8MX6r3PMl97NfwgOzB7g==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-linux-arm64-gnu": { + "version": "1.0.0-beta.52", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-1.0.0-beta.52.tgz", + "integrity": "sha512-V48oDR84feRU2KRuzpALp594Uqlx27+zFsT6+BgTcXOtu7dWy350J1G28ydoCwKB+oxwsRPx2e7aeQnmd3YJbQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-linux-arm64-musl": { + "version": "1.0.0-beta.52", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-musl/-/binding-linux-arm64-musl-1.0.0-beta.52.tgz", + "integrity": "sha512-ENLmSQCWqSA/+YN45V2FqTIemg7QspaiTjlm327eUAMeOLdqmSOVVyrQexJGNTQ5M8sDYCgVAig2Kk01Ggmqaw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-linux-x64-gnu": { + "version": "1.0.0-beta.52", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-x64-gnu/-/binding-linux-x64-gnu-1.0.0-beta.52.tgz", + "integrity": "sha512-klahlb2EIFltSUubn/VLjuc3qxp1E7th8ukayPfdkcKvvYcQ5rJztgx8JsJSuAKVzKtNTqUGOhy4On71BuyV8g==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-linux-x64-musl": { + "version": "1.0.0-beta.52", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-x64-musl/-/binding-linux-x64-musl-1.0.0-beta.52.tgz", + "integrity": "sha512-UuA+JqQIgqtkgGN2c/AQ5wi8M6mJHrahz/wciENPTeI6zEIbbLGoth5XN+sQe2pJDejEVofN9aOAp0kaazwnVg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-openharmony-arm64": { + "version": "1.0.0-beta.52", + "resolved": "https://registry.npmjs.org/@rolldown/binding-openharmony-arm64/-/binding-openharmony-arm64-1.0.0-beta.52.tgz", + "integrity": "sha512-1BNQW8u4ro8bsN1+tgKENJiqmvc+WfuaUhXzMImOVSMw28pkBKdfZtX2qJPADV3terx+vNJtlsgSGeb3+W6Jiw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openharmony" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-wasm32-wasi": { + "version": "1.0.0-beta.52", + "resolved": "https://registry.npmjs.org/@rolldown/binding-wasm32-wasi/-/binding-wasm32-wasi-1.0.0-beta.52.tgz", + "integrity": "sha512-K/p7clhCqJOQpXGykrFaBX2Dp9AUVIDHGc+PtFGBwg7V+mvBTv/tsm3LC3aUmH02H2y3gz4y+nUTQ0MLpofEEg==", + "cpu": [ + "wasm32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "@napi-rs/wasm-runtime": "^1.0.7" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@rolldown/binding-win32-arm64-msvc": { + "version": "1.0.0-beta.52", + "resolved": "https://registry.npmjs.org/@rolldown/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-1.0.0-beta.52.tgz", + "integrity": "sha512-a4EkXBtnYYsKipjS7QOhEBM4bU5IlR9N1hU+JcVEVeuTiaslIyhWVKsvf7K2YkQHyVAJ+7/A9BtrGqORFcTgng==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-win32-ia32-msvc": { + "version": "1.0.0-beta.52", + "resolved": "https://registry.npmjs.org/@rolldown/binding-win32-ia32-msvc/-/binding-win32-ia32-msvc-1.0.0-beta.52.tgz", + "integrity": "sha512-5ZXcYyd4GxPA6QfbGrNcQjmjbuLGvfz6728pZMsQvGHI+06LT06M6TPtXvFvLgXtexc+OqvFe1yAIXJU1gob/w==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-win32-x64-msvc": { + "version": "1.0.0-beta.52", + "resolved": "https://registry.npmjs.org/@rolldown/binding-win32-x64-msvc/-/binding-win32-x64-msvc-1.0.0-beta.52.tgz", + "integrity": "sha512-tzpnRQXJrSzb8Z9sm97UD3cY0toKOImx+xRKsDLX4zHaAlRXWh7jbaKBePJXEN7gNw7Nm03PBNwphdtA8KSUYQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/pluginutils": { + "version": "1.0.0-beta.52", + "resolved": "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.0-beta.52.tgz", + "integrity": "sha512-/L0htLJZbaZFL1g9OHOblTxbCYIGefErJjtYOwgl9ZqNx27P3L0SDfjhhHIss32gu5NWgnxuT2a2Hnnv6QGHKA==", + "dev": true, + "license": "MIT" + }, "node_modules/@rollup/plugin-babel": { "version": "6.1.0", "resolved": "https://registry.npmjs.org/@rollup/plugin-babel/-/plugin-babel-6.1.0.tgz", @@ -7475,7 +7763,9 @@ } }, "node_modules/@rollup/plugin-commonjs/node_modules/picomatch": { - "version": "4.0.2", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz", + "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==", "dev": true, "license": "MIT", "engines": { @@ -7487,6 +7777,8 @@ }, "node_modules/@rollup/plugin-json": { "version": "6.1.0", + "resolved": "https://registry.npmjs.org/@rollup/plugin-json/-/plugin-json-6.1.0.tgz", + "integrity": "sha512-EGI2te5ENk1coGeADSIwZ7G2Q8CJS2sF120T7jLw4xFw9n7wIOXHo+kIYRAoVpJAN+kmqZSoO3Fp4JtoNF4ReA==", "dev": true, "license": "MIT", "dependencies": { @@ -7529,16 +7821,12 @@ } } }, - "node_modules/@rollup/plugin-replace": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/@rollup/plugin-replace/-/plugin-replace-6.0.3.tgz", - "integrity": "sha512-J4RZarRvQAm5IF0/LwUUg+obsm+xZhYnbMXmXROyoSE1ATJe3oXSb9L5MMppdxP2ylNSjv6zFBwKYjcKMucVfA==", + "node_modules/@rollup/plugin-virtual": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@rollup/plugin-virtual/-/plugin-virtual-3.0.2.tgz", + "integrity": "sha512-10monEYsBp3scM4/ND4LNH5Rxvh3e/cVeL3jWTgZ2SrQ+BmUoQcopVQvnaMcOnykb1VkxUFuDAN+0FnpTFRy2A==", "dev": true, "license": "MIT", - "dependencies": { - "@rollup/pluginutils": "^5.0.1", - "magic-string": "^0.30.3" - }, "engines": { "node": ">=14.0.0" }, @@ -7551,20 +7839,20 @@ } } }, - "node_modules/@rollup/plugin-terser": { - "version": "0.4.4", + "node_modules/@rollup/pluginutils": { + "version": "5.2.0", "dev": true, "license": "MIT", "dependencies": { - "serialize-javascript": "^6.0.1", - "smob": "^1.0.0", - "terser": "^5.17.4" + "@types/estree": "^1.0.0", + "estree-walker": "^2.0.2", + "picomatch": "^4.0.2" }, "engines": { "node": ">=14.0.0" }, "peerDependencies": { - "rollup": "^2.0.0||^3.0.0||^4.0.0" + "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" }, "peerDependenciesMeta": { "rollup": { @@ -7572,88 +7860,24 @@ } } }, - "node_modules/@rollup/plugin-typescript": { - "version": "12.3.0", - "resolved": "https://registry.npmjs.org/@rollup/plugin-typescript/-/plugin-typescript-12.3.0.tgz", - "integrity": "sha512-7DP0/p7y3t67+NabT9f8oTBFE6gGkto4SA6Np2oudYmZE/m1dt8RB0SjL1msMxFpLo631qjRCcBlAbq1ml/Big==", + "node_modules/@rollup/pluginutils/node_modules/picomatch": { + "version": "4.0.2", "dev": true, "license": "MIT", - "dependencies": { - "@rollup/pluginutils": "^5.1.0", - "resolve": "^1.22.1" - }, "engines": { - "node": ">=14.0.0" - }, - "peerDependencies": { - "rollup": "^2.14.0||^3.0.0||^4.0.0", - "tslib": "*", - "typescript": ">=3.7.0" + "node": ">=12" }, - "peerDependenciesMeta": { - "rollup": { - "optional": true - }, - "tslib": { - "optional": true - } + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" } }, - "node_modules/@rollup/plugin-virtual": { - "version": "3.0.2", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=14.0.0" - }, - "peerDependencies": { - "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" - }, - "peerDependenciesMeta": { - "rollup": { - "optional": true - } - } - }, - "node_modules/@rollup/pluginutils": { - "version": "5.2.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/estree": "^1.0.0", - "estree-walker": "^2.0.2", - "picomatch": "^4.0.2" - }, - "engines": { - "node": ">=14.0.0" - }, - "peerDependencies": { - "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" - }, - "peerDependenciesMeta": { - "rollup": { - "optional": true - } - } - }, - "node_modules/@rollup/pluginutils/node_modules/picomatch": { - "version": "4.0.2", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "node_modules/@rollup/rollup-android-arm-eabi": { - "version": "4.53.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.53.3.tgz", - "integrity": "sha512-mRSi+4cBjrRLoaal2PnqH82Wqyb+d3HsPUN/W+WslCXsZsyHa9ZeQQX/pQsZaVIWDkPcpV6jJ+3KLbTbgnwv8w==", - "cpu": [ - "arm" - ], + "node_modules/@rollup/rollup-android-arm-eabi": { + "version": "4.53.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.53.3.tgz", + "integrity": "sha512-mRSi+4cBjrRLoaal2PnqH82Wqyb+d3HsPUN/W+WslCXsZsyHa9ZeQQX/pQsZaVIWDkPcpV6jJ+3KLbTbgnwv8w==", + "cpu": [ + "arm" + ], "dev": true, "license": "MIT", "optional": true, @@ -8671,6 +8895,17 @@ "dev": true, "license": "MIT" }, + "node_modules/@tybys/wasm-util": { + "version": "0.10.1", + "resolved": "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.10.1.tgz", + "integrity": "sha512-9tTaPJLSiejZKx+Bmog4uSubteqTvFrVrURwkmHixBo0G4seD0zUxp98E1DzUBJxLQ3NPwXrGKDiVjwx/DpPsg==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, "node_modules/@types/acorn": { "version": "4.0.6", "dev": true, @@ -11667,14 +11902,6 @@ "node": ">= 6" } }, - "node_modules/concat-with-sourcemaps": { - "version": "1.1.0", - "dev": true, - "license": "ISC", - "dependencies": { - "source-map": "^0.6.1" - } - }, "node_modules/concurrently": { "version": "9.1.2", "dev": true, @@ -12102,21 +12329,6 @@ "postcss": "^8.4" } }, - "node_modules/css-select": { - "version": "4.3.0", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "boolbase": "^1.0.0", - "css-what": "^6.0.1", - "domhandler": "^4.3.1", - "domutils": "^2.8.0", - "nth-check": "^2.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/fb55" - } - }, "node_modules/css-to-react-native": { "version": "3.2.0", "license": "MIT", @@ -12477,14 +12689,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/define-lazy-prop": { - "version": "2.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, "node_modules/define-properties": { "version": "1.2.1", "dev": true, @@ -12625,27 +12829,6 @@ "dev": true, "license": "MIT" }, - "node_modules/dom-serializer": { - "version": "1.4.1", - "dev": true, - "license": "MIT", - "dependencies": { - "domelementtype": "^2.0.1", - "domhandler": "^4.2.0", - "entities": "^2.0.0" - }, - "funding": { - "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" - } - }, - "node_modules/dom-serializer/node_modules/entities": { - "version": "2.2.0", - "dev": true, - "license": "BSD-2-Clause", - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" - } - }, "node_modules/domelementtype": { "version": "2.3.0", "funding": [ @@ -12656,33 +12839,6 @@ ], "license": "BSD-2-Clause" }, - "node_modules/domhandler": { - "version": "4.3.1", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "domelementtype": "^2.2.0" - }, - "engines": { - "node": ">= 4" - }, - "funding": { - "url": "https://github.com/fb55/domhandler?sponsor=1" - } - }, - "node_modules/domutils": { - "version": "2.8.0", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "dom-serializer": "^1.0.1", - "domelementtype": "^2.2.0", - "domhandler": "^4.2.0" - }, - "funding": { - "url": "https://github.com/fb55/domutils?sponsor=1" - } - }, "node_modules/dotenv": { "version": "8.6.0", "dev": true, @@ -14428,11 +14584,6 @@ "node": ">= 0.6" } }, - "node_modules/eventemitter3": { - "version": "4.0.7", - "dev": true, - "license": "MIT" - }, "node_modules/events": { "version": "3.3.0", "dev": true, @@ -15699,17 +15850,6 @@ "dev": true, "license": "MIT" }, - "node_modules/import-cwd": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "import-from": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/import-fresh": { "version": "3.3.0", "dev": true, @@ -15733,17 +15873,6 @@ "node": ">=4" } }, - "node_modules/import-from": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "resolve-from": "^5.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/import-meta-resolve": { "version": "4.1.0", "dev": true, @@ -16006,20 +16135,6 @@ "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/is-docker": { - "version": "2.2.1", - "dev": true, - "license": "MIT", - "bin": { - "is-docker": "cli.js" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/is-empty": { "version": "1.2.0", "dev": true, @@ -16159,6 +16274,8 @@ }, "node_modules/is-module": { "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-module/-/is-module-1.0.0.tgz", + "integrity": "sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g==", "dev": true, "license": "MIT" }, @@ -16218,6 +16335,8 @@ }, "node_modules/is-reference": { "version": "1.2.1", + "resolved": "https://registry.npmjs.org/is-reference/-/is-reference-1.2.1.tgz", + "integrity": "sha512-U82MsXXiFIrjCK4otLT+o2NA2Cd2g5MLoOVXUZjIOhLurrRxpEXzI8O0KZHr3IjLvlAH1kTPYSuqer5T9ZVBKQ==", "dev": true, "license": "MIT", "dependencies": { @@ -16402,17 +16521,6 @@ "node": ">=0.10.0" } }, - "node_modules/is-wsl": { - "version": "2.2.0", - "dev": true, - "license": "MIT", - "dependencies": { - "is-docker": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/isarray": { "version": "0.0.1", "dev": true, @@ -18594,17 +18702,6 @@ "node": ">=0.10.0" } }, - "node_modules/normalize-url": { - "version": "6.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/npm-install-checks": { "version": "6.3.0", "dev": true, @@ -18803,22 +18900,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/open": { - "version": "8.4.2", - "dev": true, - "license": "MIT", - "dependencies": { - "define-lazy-prop": "^2.0.0", - "is-docker": "^2.1.1", - "is-wsl": "^2.2.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/optionator": { "version": "0.9.4", "dev": true, @@ -18923,14 +19004,6 @@ "node": ">=8" } }, - "node_modules/p-finally": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, "node_modules/p-limit": { "version": "2.3.0", "dev": true, @@ -18964,32 +19037,6 @@ "node": ">=6" } }, - "node_modules/p-queue": { - "version": "6.6.2", - "dev": true, - "license": "MIT", - "dependencies": { - "eventemitter3": "^4.0.4", - "p-timeout": "^3.2.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-timeout": { - "version": "3.2.0", - "dev": true, - "license": "MIT", - "dependencies": { - "p-finally": "^1.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/p-try": { "version": "2.2.0", "dev": true, @@ -20254,18 +20301,20 @@ } }, "node_modules/postcss-modules": { - "version": "4.3.1", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/postcss-modules/-/postcss-modules-6.0.1.tgz", + "integrity": "sha512-zyo2sAkVvuZFFy0gc2+4O+xar5dYlaVy/ebO24KT0ftk/iJevSNyPyQellsBLlnccwh7f6V6Y4GvuKRYToNgpQ==", "dev": true, "license": "MIT", "dependencies": { "generic-names": "^4.0.0", - "icss-replace-symbols": "^1.1.0", + "icss-utils": "^5.1.0", "lodash.camelcase": "^4.3.0", - "postcss-modules-extract-imports": "^3.0.0", - "postcss-modules-local-by-default": "^4.0.0", - "postcss-modules-scope": "^3.0.0", + "postcss-modules-extract-imports": "^3.1.0", + "postcss-modules-local-by-default": "^4.0.5", + "postcss-modules-scope": "^3.2.0", "postcss-modules-values": "^4.0.0", - "string-hash": "^1.1.1" + "string-hash": "^1.1.3" }, "peerDependencies": { "postcss": "^8.0.0" @@ -21034,14 +21083,6 @@ "node": ">=10" } }, - "node_modules/promise.series": { - "version": "0.2.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.12" - } - }, "node_modules/prompts": { "version": "2.4.2", "dev": true, @@ -21829,698 +21870,101 @@ "funding": { "url": "https://github.com/sponsors/isaacs" }, - "optionalDependencies": { - "@pkgjs/parseargs": "^0.11.0" - } - }, - "node_modules/rimraf/node_modules/minimatch": { - "version": "9.0.5", - "dev": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/rollup": { - "version": "4.53.3", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.53.3.tgz", - "integrity": "sha512-w8GmOxZfBmKknvdXU1sdM9NHcoQejwF/4mNgj2JuEEdRaHwwF12K7e9eXn1nLZ07ad+du76mkVsyeb2rKGllsA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/estree": "1.0.8" - }, - "bin": { - "rollup": "dist/bin/rollup" - }, - "engines": { - "node": ">=18.0.0", - "npm": ">=8.0.0" - }, - "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.53.3", - "@rollup/rollup-android-arm64": "4.53.3", - "@rollup/rollup-darwin-arm64": "4.53.3", - "@rollup/rollup-darwin-x64": "4.53.3", - "@rollup/rollup-freebsd-arm64": "4.53.3", - "@rollup/rollup-freebsd-x64": "4.53.3", - "@rollup/rollup-linux-arm-gnueabihf": "4.53.3", - "@rollup/rollup-linux-arm-musleabihf": "4.53.3", - "@rollup/rollup-linux-arm64-gnu": "4.53.3", - "@rollup/rollup-linux-arm64-musl": "4.53.3", - "@rollup/rollup-linux-loong64-gnu": "4.53.3", - "@rollup/rollup-linux-ppc64-gnu": "4.53.3", - "@rollup/rollup-linux-riscv64-gnu": "4.53.3", - "@rollup/rollup-linux-riscv64-musl": "4.53.3", - "@rollup/rollup-linux-s390x-gnu": "4.53.3", - "@rollup/rollup-linux-x64-gnu": "4.53.3", - "@rollup/rollup-linux-x64-musl": "4.53.3", - "@rollup/rollup-openharmony-arm64": "4.53.3", - "@rollup/rollup-win32-arm64-msvc": "4.53.3", - "@rollup/rollup-win32-ia32-msvc": "4.53.3", - "@rollup/rollup-win32-x64-gnu": "4.53.3", - "@rollup/rollup-win32-x64-msvc": "4.53.3", - "fsevents": "~2.3.2" - } - }, - "node_modules/rollup-plugin-esbuild": { - "version": "6.2.1", - "dev": true, - "license": "MIT", - "dependencies": { - "debug": "^4.4.0", - "es-module-lexer": "^1.6.0", - "get-tsconfig": "^4.10.0", - "unplugin-utils": "^0.2.4" - }, - "engines": { - "node": ">=14.18.0" - }, - "peerDependencies": { - "esbuild": ">=0.18.0", - "rollup": "^1.20.0 || ^2.0.0 || ^3.0.0 || ^4.0.0" - } - }, - "node_modules/rollup-plugin-import-css": { - "resolved": "packages/rollup-plugin-import-css", - "link": true - }, - "node_modules/rollup-plugin-postcss": { - "version": "4.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "chalk": "^4.1.0", - "concat-with-sourcemaps": "^1.1.0", - "cssnano": "^5.0.1", - "import-cwd": "^3.0.0", - "p-queue": "^6.6.2", - "pify": "^5.0.0", - "postcss-load-config": "^3.0.0", - "postcss-modules": "^4.0.0", - "promise.series": "^0.2.0", - "resolve": "^1.19.0", - "rollup-pluginutils": "^2.8.2", - "safe-identifier": "^0.4.2", - "style-inject": "^0.3.0" - }, - "engines": { - "node": ">=10" - }, - "peerDependencies": { - "postcss": "8.x" - } - }, - "node_modules/rollup-plugin-postcss/node_modules/chalk": { - "version": "4.1.2", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/rollup-plugin-postcss/node_modules/commander": { - "version": "7.2.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 10" - } - }, - "node_modules/rollup-plugin-postcss/node_modules/css-declaration-sorter": { - "version": "6.4.1", - "dev": true, - "license": "ISC", - "engines": { - "node": "^10 || ^12 || >=14" - }, - "peerDependencies": { - "postcss": "^8.0.9" - } - }, - "node_modules/rollup-plugin-postcss/node_modules/css-tree": { - "version": "1.1.3", - "dev": true, - "license": "MIT", - "dependencies": { - "mdn-data": "2.0.14", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/rollup-plugin-postcss/node_modules/cssnano": { - "version": "5.1.15", - "dev": true, - "license": "MIT", - "dependencies": { - "cssnano-preset-default": "^5.2.14", - "lilconfig": "^2.0.3", - "yaml": "^1.10.2" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/cssnano" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/rollup-plugin-postcss/node_modules/cssnano-preset-default": { - "version": "5.2.14", - "dev": true, - "license": "MIT", - "dependencies": { - "css-declaration-sorter": "^6.3.1", - "cssnano-utils": "^3.1.0", - "postcss-calc": "^8.2.3", - "postcss-colormin": "^5.3.1", - "postcss-convert-values": "^5.1.3", - "postcss-discard-comments": "^5.1.2", - "postcss-discard-duplicates": "^5.1.0", - "postcss-discard-empty": "^5.1.1", - "postcss-discard-overridden": "^5.1.0", - "postcss-merge-longhand": "^5.1.7", - "postcss-merge-rules": "^5.1.4", - "postcss-minify-font-values": "^5.1.0", - "postcss-minify-gradients": "^5.1.1", - "postcss-minify-params": "^5.1.4", - "postcss-minify-selectors": "^5.2.1", - "postcss-normalize-charset": "^5.1.0", - "postcss-normalize-display-values": "^5.1.0", - "postcss-normalize-positions": "^5.1.1", - "postcss-normalize-repeat-style": "^5.1.1", - "postcss-normalize-string": "^5.1.0", - "postcss-normalize-timing-functions": "^5.1.0", - "postcss-normalize-unicode": "^5.1.1", - "postcss-normalize-url": "^5.1.0", - "postcss-normalize-whitespace": "^5.1.1", - "postcss-ordered-values": "^5.1.3", - "postcss-reduce-initial": "^5.1.2", - "postcss-reduce-transforms": "^5.1.0", - "postcss-svgo": "^5.1.0", - "postcss-unique-selectors": "^5.1.1" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/rollup-plugin-postcss/node_modules/cssnano-utils": { - "version": "3.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/rollup-plugin-postcss/node_modules/csso": { - "version": "4.2.0", - "dev": true, - "license": "MIT", - "dependencies": { - "css-tree": "^1.1.2" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/rollup-plugin-postcss/node_modules/has-flag": { - "version": "4.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/rollup-plugin-postcss/node_modules/mdn-data": { - "version": "2.0.14", - "dev": true, - "license": "CC0-1.0" - }, - "node_modules/rollup-plugin-postcss/node_modules/pify": { - "version": "5.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/rollup-plugin-postcss/node_modules/postcss-calc": { - "version": "8.2.4", - "dev": true, - "license": "MIT", - "dependencies": { - "postcss-selector-parser": "^6.0.9", - "postcss-value-parser": "^4.2.0" - }, - "peerDependencies": { - "postcss": "^8.2.2" - } - }, - "node_modules/rollup-plugin-postcss/node_modules/postcss-colormin": { - "version": "5.3.1", - "dev": true, - "license": "MIT", - "dependencies": { - "browserslist": "^4.21.4", - "caniuse-api": "^3.0.0", - "colord": "^2.9.1", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/rollup-plugin-postcss/node_modules/postcss-convert-values": { - "version": "5.1.3", - "dev": true, - "license": "MIT", - "dependencies": { - "browserslist": "^4.21.4", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/rollup-plugin-postcss/node_modules/postcss-discard-comments": { - "version": "5.1.2", - "dev": true, - "license": "MIT", - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/rollup-plugin-postcss/node_modules/postcss-discard-duplicates": { - "version": "5.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/rollup-plugin-postcss/node_modules/postcss-discard-empty": { - "version": "5.1.1", - "dev": true, - "license": "MIT", - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/rollup-plugin-postcss/node_modules/postcss-discard-overridden": { - "version": "5.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/rollup-plugin-postcss/node_modules/postcss-merge-longhand": { - "version": "5.1.7", - "dev": true, - "license": "MIT", - "dependencies": { - "postcss-value-parser": "^4.2.0", - "stylehacks": "^5.1.1" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/rollup-plugin-postcss/node_modules/postcss-merge-rules": { - "version": "5.1.4", - "dev": true, - "license": "MIT", - "dependencies": { - "browserslist": "^4.21.4", - "caniuse-api": "^3.0.0", - "cssnano-utils": "^3.1.0", - "postcss-selector-parser": "^6.0.5" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/rollup-plugin-postcss/node_modules/postcss-minify-font-values": { - "version": "5.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/rollup-plugin-postcss/node_modules/postcss-minify-gradients": { - "version": "5.1.1", - "dev": true, - "license": "MIT", - "dependencies": { - "colord": "^2.9.1", - "cssnano-utils": "^3.1.0", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/rollup-plugin-postcss/node_modules/postcss-minify-params": { - "version": "5.1.4", - "dev": true, - "license": "MIT", - "dependencies": { - "browserslist": "^4.21.4", - "cssnano-utils": "^3.1.0", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/rollup-plugin-postcss/node_modules/postcss-minify-selectors": { - "version": "5.2.1", - "dev": true, - "license": "MIT", - "dependencies": { - "postcss-selector-parser": "^6.0.5" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/rollup-plugin-postcss/node_modules/postcss-normalize-charset": { - "version": "5.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/rollup-plugin-postcss/node_modules/postcss-normalize-display-values": { - "version": "5.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/rollup-plugin-postcss/node_modules/postcss-normalize-positions": { - "version": "5.1.1", - "dev": true, - "license": "MIT", - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/rollup-plugin-postcss/node_modules/postcss-normalize-repeat-style": { - "version": "5.1.1", - "dev": true, - "license": "MIT", - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/rollup-plugin-postcss/node_modules/postcss-normalize-string": { - "version": "5.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/rollup-plugin-postcss/node_modules/postcss-normalize-timing-functions": { - "version": "5.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/rollup-plugin-postcss/node_modules/postcss-normalize-unicode": { - "version": "5.1.1", - "dev": true, - "license": "MIT", - "dependencies": { - "browserslist": "^4.21.4", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/rollup-plugin-postcss/node_modules/postcss-normalize-url": { - "version": "5.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "normalize-url": "^6.0.1", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/rollup-plugin-postcss/node_modules/postcss-normalize-whitespace": { - "version": "5.1.1", - "dev": true, - "license": "MIT", - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/rollup-plugin-postcss/node_modules/postcss-ordered-values": { - "version": "5.1.3", - "dev": true, - "license": "MIT", - "dependencies": { - "cssnano-utils": "^3.1.0", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/rollup-plugin-postcss/node_modules/postcss-reduce-initial": { - "version": "5.1.2", - "dev": true, - "license": "MIT", - "dependencies": { - "browserslist": "^4.21.4", - "caniuse-api": "^3.0.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/rollup-plugin-postcss/node_modules/postcss-reduce-transforms": { - "version": "5.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/rollup-plugin-postcss/node_modules/postcss-svgo": { - "version": "5.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "postcss-value-parser": "^4.2.0", - "svgo": "^2.7.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/rollup-plugin-postcss/node_modules/postcss-unique-selectors": { - "version": "5.1.1", - "dev": true, - "license": "MIT", - "dependencies": { - "postcss-selector-parser": "^6.0.5" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" } }, - "node_modules/rollup-plugin-postcss/node_modules/stylehacks": { - "version": "5.1.1", + "node_modules/rimraf/node_modules/minimatch": { + "version": "9.0.5", "dev": true, - "license": "MIT", + "license": "ISC", "dependencies": { - "browserslist": "^4.21.4", - "postcss-selector-parser": "^6.0.4" + "brace-expansion": "^2.0.1" }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": ">=16 || 14 >=14.17" }, - "peerDependencies": { - "postcss": "^8.2.15" + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/rollup-plugin-postcss/node_modules/supports-color": { - "version": "7.2.0", + "node_modules/rolldown": { + "version": "1.0.0-beta.52", + "resolved": "https://registry.npmjs.org/rolldown/-/rolldown-1.0.0-beta.52.tgz", + "integrity": "sha512-Hbnpljue+JhMJrlOjQ1ixp9me7sUec7OjFvS+A1Qm8k8Xyxmw3ZhxFu7LlSXW1s9AX3POE9W9o2oqCEeR5uDmg==", "dev": true, "license": "MIT", "dependencies": { - "has-flag": "^4.0.0" + "@oxc-project/types": "=0.99.0", + "@rolldown/pluginutils": "1.0.0-beta.52" + }, + "bin": { + "rolldown": "bin/cli.mjs" }, "engines": { - "node": ">=8" - } + "node": "^20.19.0 || >=22.12.0" + }, + "optionalDependencies": { + "@rolldown/binding-android-arm64": "1.0.0-beta.52", + "@rolldown/binding-darwin-arm64": "1.0.0-beta.52", + "@rolldown/binding-darwin-x64": "1.0.0-beta.52", + "@rolldown/binding-freebsd-x64": "1.0.0-beta.52", + "@rolldown/binding-linux-arm-gnueabihf": "1.0.0-beta.52", + "@rolldown/binding-linux-arm64-gnu": "1.0.0-beta.52", + "@rolldown/binding-linux-arm64-musl": "1.0.0-beta.52", + "@rolldown/binding-linux-x64-gnu": "1.0.0-beta.52", + "@rolldown/binding-linux-x64-musl": "1.0.0-beta.52", + "@rolldown/binding-openharmony-arm64": "1.0.0-beta.52", + "@rolldown/binding-wasm32-wasi": "1.0.0-beta.52", + "@rolldown/binding-win32-arm64-msvc": "1.0.0-beta.52", + "@rolldown/binding-win32-ia32-msvc": "1.0.0-beta.52", + "@rolldown/binding-win32-x64-msvc": "1.0.0-beta.52" + } + }, + "node_modules/rolldown-plugin-import-css": { + "resolved": "packages/rolldown-plugin-import-css", + "link": true }, - "node_modules/rollup-plugin-postcss/node_modules/svgo": { - "version": "2.8.0", + "node_modules/rollup": { + "version": "4.53.3", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.53.3.tgz", + "integrity": "sha512-w8GmOxZfBmKknvdXU1sdM9NHcoQejwF/4mNgj2JuEEdRaHwwF12K7e9eXn1nLZ07ad+du76mkVsyeb2rKGllsA==", "dev": true, "license": "MIT", "dependencies": { - "@trysound/sax": "0.2.0", - "commander": "^7.2.0", - "css-select": "^4.1.3", - "css-tree": "^1.1.3", - "csso": "^4.2.0", - "picocolors": "^1.0.0", - "stable": "^0.1.8" + "@types/estree": "1.0.8" }, "bin": { - "svgo": "bin/svgo" + "rollup": "dist/bin/rollup" }, "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/rollup-plugin-postcss/node_modules/yaml": { - "version": "1.10.2", - "dev": true, - "license": "ISC", - "engines": { - "node": ">= 6" + "node": ">=18.0.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "@rollup/rollup-android-arm-eabi": "4.53.3", + "@rollup/rollup-android-arm64": "4.53.3", + "@rollup/rollup-darwin-arm64": "4.53.3", + "@rollup/rollup-darwin-x64": "4.53.3", + "@rollup/rollup-freebsd-arm64": "4.53.3", + "@rollup/rollup-freebsd-x64": "4.53.3", + "@rollup/rollup-linux-arm-gnueabihf": "4.53.3", + "@rollup/rollup-linux-arm-musleabihf": "4.53.3", + "@rollup/rollup-linux-arm64-gnu": "4.53.3", + "@rollup/rollup-linux-arm64-musl": "4.53.3", + "@rollup/rollup-linux-loong64-gnu": "4.53.3", + "@rollup/rollup-linux-ppc64-gnu": "4.53.3", + "@rollup/rollup-linux-riscv64-gnu": "4.53.3", + "@rollup/rollup-linux-riscv64-musl": "4.53.3", + "@rollup/rollup-linux-s390x-gnu": "4.53.3", + "@rollup/rollup-linux-x64-gnu": "4.53.3", + "@rollup/rollup-linux-x64-musl": "4.53.3", + "@rollup/rollup-openharmony-arm64": "4.53.3", + "@rollup/rollup-win32-arm64-msvc": "4.53.3", + "@rollup/rollup-win32-ia32-msvc": "4.53.3", + "@rollup/rollup-win32-x64-gnu": "4.53.3", + "@rollup/rollup-win32-x64-msvc": "4.53.3", + "fsevents": "~2.3.2" } }, "node_modules/rollup-plugin-typescript2": { @@ -22583,69 +22027,6 @@ "node": ">= 10.0.0" } }, - "node_modules/rollup-plugin-visualizer": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/rollup-plugin-visualizer/-/rollup-plugin-visualizer-6.0.5.tgz", - "integrity": "sha512-9+HlNgKCVbJDs8tVtjQ43US12eqaiHyyiLMdBwQ7vSZPiHMysGNo2E88TAp1si5wx8NAoYriI2A5kuKfIakmJg==", - "dev": true, - "license": "MIT", - "dependencies": { - "open": "^8.0.0", - "picomatch": "^4.0.2", - "source-map": "^0.7.4", - "yargs": "^17.5.1" - }, - "bin": { - "rollup-plugin-visualizer": "dist/bin/cli.js" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "rolldown": "1.x || ^1.0.0-beta", - "rollup": "2.x || 3.x || 4.x" - }, - "peerDependenciesMeta": { - "rolldown": { - "optional": true - }, - "rollup": { - "optional": true - } - } - }, - "node_modules/rollup-plugin-visualizer/node_modules/picomatch": { - "version": "4.0.2", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "node_modules/rollup-plugin-visualizer/node_modules/source-map": { - "version": "0.7.4", - "dev": true, - "license": "BSD-3-Clause", - "engines": { - "node": ">= 8" - } - }, - "node_modules/rollup-pluginutils": { - "version": "2.8.2", - "dev": true, - "license": "MIT", - "dependencies": { - "estree-walker": "^0.6.1" - } - }, - "node_modules/rollup-pluginutils/node_modules/estree-walker": { - "version": "0.6.1", - "dev": true, - "license": "MIT" - }, "node_modules/router": { "version": "2.2.0", "license": "MIT", @@ -22747,11 +22128,6 @@ "dev": true, "license": "MIT" }, - "node_modules/safe-identifier": { - "version": "0.4.2", - "dev": true, - "license": "ISC" - }, "node_modules/safe-push-apply": { "version": "1.0.0", "dev": true, @@ -23369,11 +22745,6 @@ "npm": ">= 3.0.0" } }, - "node_modules/smob": { - "version": "1.4.1", - "dev": true, - "license": "MIT" - }, "node_modules/socks": { "version": "2.8.6", "dev": true, @@ -23488,11 +22859,6 @@ "dev": true, "license": "BSD-3-Clause" }, - "node_modules/stable": { - "version": "0.1.8", - "dev": true, - "license": "MIT" - }, "node_modules/stable-hash": { "version": "0.0.4", "dev": true, @@ -23786,11 +23152,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/style-inject": { - "version": "0.3.0", - "dev": true, - "license": "MIT" - }, "node_modules/styled-components": { "version": "5.3.11", "license": "MIT", @@ -25869,32 +25230,6 @@ "node": ">=18.12.0" } }, - "node_modules/unplugin-utils": { - "version": "0.2.4", - "dev": true, - "license": "MIT", - "dependencies": { - "pathe": "^2.0.2", - "picomatch": "^4.0.2" - }, - "engines": { - "node": ">=18.12.0" - }, - "funding": { - "url": "https://github.com/sponsors/sxzz" - } - }, - "node_modules/unplugin-utils/node_modules/picomatch": { - "version": "4.0.2", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, "node_modules/unplugin/node_modules/picomatch": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz", @@ -26985,11 +26320,9 @@ "@babel/preset-env": "^7.28.5", "@babel/preset-typescript": "^7.28.5", "@rollup/plugin-babel": "^6.1.0", - "@rollup/plugin-commonjs": "^29.0.0", - "@rollup/plugin-json": "^6.1.0", - "@rollup/plugin-node-resolve": "^16.0.3", + "prettier": "^3.4.2", "rimraf": "^6.0.1", - "rollup": "^4.53.3", + "rolldown": "^1.0.0-beta.52", "rollup-plugin-typescript2": "^0.36.0", "typescript": "^5.8.3" } @@ -27156,12 +26489,9 @@ "@babel/preset-typescript": "^7.28.5", "@modelcontextprotocol/inspector": "^0.16.6", "@rollup/plugin-babel": "^6.1.0", - "@rollup/plugin-commonjs": "^29.0.0", - "@rollup/plugin-json": "^6.1.0", - "@rollup/plugin-node-resolve": "^16.0.3", "@types/turndown": "^5.0.5", "rimraf": "^6.0.1", - "rollup": "^4.53.3", + "rolldown": "^1.0.0-beta.52", "rollup-plugin-typescript2": "^0.36.0", "typescript": "^5.9.2" } @@ -27252,14 +26582,11 @@ "@figma/code-connect": "1.3.2", "@primer/css": "^21.5.1", "@primer/doc-gen": "^0.0.1", - "@rollup/plugin-babel": "6.1.0", - "@rollup/plugin-commonjs": "29.0.0", + "@rollup/plugin-babel": "^6.1.0", + "@rollup/plugin-commonjs": "^29.0.0", "@rollup/plugin-json": "6.1.0", - "@rollup/plugin-node-resolve": "16.0.3", - "@rollup/plugin-replace": "6.0.3", - "@rollup/plugin-terser": "0.4.4", - "@rollup/plugin-typescript": "12.3.0", - "@rollup/plugin-virtual": "3.0.2", + "@rollup/plugin-node-resolve": "^16.0.3", + "@rollup/plugin-virtual": "^3.0.2", "@storybook/addon-a11y": "^10.1.2", "@storybook/addon-docs": "^10.1.2", "@storybook/addon-links": "^10.1.2", @@ -27317,10 +26644,8 @@ "react-is": "18.3.1", "recast": "0.23.7", "rimraf": "5.0.5", - "rollup": "4.53.3", - "rollup-plugin-import-css": "^0.0.0", - "rollup-plugin-postcss": "4.0.2", - "rollup-plugin-visualizer": "6.0.5", + "rolldown": "^1.0.0-beta.52", + "rolldown-plugin-import-css": "^0.0.0", "storybook": "^10.1.2", "terser": "5.36.0", "ts-toolbelt": "9.6.0", @@ -27490,17 +26815,11 @@ "typescript": ">=4.0.0" } }, - "packages/rollup-plugin-import-css": { + "packages/rolldown-plugin-import-css": { "version": "0.0.0", "devDependencies": { - "@rollup/plugin-commonjs": "^29.0.0", - "@rollup/plugin-node-resolve": "^16.0.3", - "esbuild": "^0.25.0", "postcss": "^8.4.38", "postcss-modules": "^6.0.0", - "rimraf": "^5.0.7", - "rollup-plugin-esbuild": "^6.2.1", - "rollup-plugin-typescript2": "^0.36.0", "typescript": "^5.9.2" }, "peerDependencies": { @@ -27508,93 +26827,22 @@ "postcss-modules": "^6.0.0" } }, - "packages/rollup-plugin-import-css/node_modules/brace-expansion": { - "version": "2.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "packages/rollup-plugin-import-css/node_modules/glob": { - "version": "10.5.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.5.0.tgz", - "integrity": "sha512-DfXN8DfhJ7NH3Oe7cFmu3NCu1wKbkReJ8TorzSAFbSKrlNaQSKfIzqYqVY8zlbs2NLBbWpRiU52GX2PbaBVNkg==", - "dev": true, - "license": "ISC", - "dependencies": { - "foreground-child": "^3.1.0", - "jackspeak": "^3.1.2", - "minimatch": "^9.0.4", - "minipass": "^7.1.2", - "package-json-from-dist": "^1.0.0", - "path-scurry": "^1.11.1" - }, - "bin": { - "glob": "dist/esm/bin.mjs" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "packages/rollup-plugin-import-css/node_modules/jackspeak": { - "version": "3.4.3", - "dev": true, - "license": "BlueOak-1.0.0", - "dependencies": { - "@isaacs/cliui": "^8.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - }, - "optionalDependencies": { - "@pkgjs/parseargs": "^0.11.0" - } - }, - "packages/rollup-plugin-import-css/node_modules/minimatch": { - "version": "9.0.5", - "dev": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "packages/rollup-plugin-import-css/node_modules/postcss-modules": { - "version": "6.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "generic-names": "^4.0.0", - "icss-utils": "^5.1.0", - "lodash.camelcase": "^4.3.0", - "postcss-modules-extract-imports": "^3.1.0", - "postcss-modules-local-by-default": "^4.0.5", - "postcss-modules-scope": "^3.2.0", - "postcss-modules-values": "^4.0.0", - "string-hash": "^1.1.3" + "packages/rollup-plugin-import-css": { + "name": "rolldown-plugin-import-css", + "version": "0.0.0", + "extraneous": true, + "devDependencies": { + "esbuild": "^0.25.0", + "postcss": "^8.4.38", + "postcss-modules": "^6.0.0", + "rimraf": "^5.0.7", + "rolldown": "^1.0.0-beta.52", + "rollup-plugin-typescript2": "^0.36.0", + "typescript": "^5.9.2" }, "peerDependencies": { - "postcss": "^8.0.0" - } - }, - "packages/rollup-plugin-import-css/node_modules/rimraf": { - "version": "5.0.10", - "dev": true, - "license": "ISC", - "dependencies": { - "glob": "^10.3.7" - }, - "bin": { - "rimraf": "dist/esm/bin.mjs" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "postcss": "^8.4.38", + "postcss-modules": "^6.0.0" } }, "packages/styled-react": { @@ -27607,6 +26855,9 @@ "@types/styled-system": "^5.1.23", "@types/styled-system__css": "^5.0.16", "@types/styled-system__theme-get": "^5.0.1", + "clsx": "^2.1.1", + "deepmerge": "^4.3.1", + "focus-visible": "^5.2.1", "styled-system": "^5.1.5" }, "devDependencies": { @@ -27623,7 +26874,7 @@ "react": "18.3.1", "react-dom": "18.3.1", "rimraf": "^6.0.1", - "rollup": "4.53.3", + "rolldown": "^1.0.0-beta.52", "rollup-plugin-typescript2": "^0.36.0", "styled-components": "5.3.11", "typescript": "^5.9.2" diff --git a/package.json b/package.json index 3dd9aaa117f..2fb6faf7e96 100644 --- a/package.json +++ b/package.json @@ -2,9 +2,6 @@ "name": "primer", "private": true, "workspaces": [ - "packages/rollup-plugin-import-css", - "packages/react", - "packages/mcp", "packages/*", "examples/*" ], diff --git a/packages/doc-gen/package.json b/packages/doc-gen/package.json index 68edbe0b4ce..fa90e8c8fa9 100644 --- a/packages/doc-gen/package.json +++ b/packages/doc-gen/package.json @@ -21,18 +21,18 @@ ], "scripts": { "clean": "rimraf dist", - "build": "rollup -c", + "build": "rolldown -c", "type-check": "tsc --noEmit", - "watch": "rollup -c -w", + "watch": "rolldown -w -c", "test": "vitest --run", "test:watch": "vitest" }, "dependencies": { "@babel/runtime": "^7.28.2", "@types/signale": "^1.4.7", + "@types/yargs": "^17.0.33", "signale": "^1.4.0", - "yargs": "^18.0.0", - "@types/yargs": "^17.0.33" + "yargs": "^18.0.0" }, "devDependencies": { "@babel/core": "^7.28.5", @@ -40,11 +40,9 @@ "@babel/preset-env": "^7.28.5", "@babel/preset-typescript": "^7.28.5", "@rollup/plugin-babel": "^6.1.0", - "@rollup/plugin-commonjs": "^29.0.0", - "@rollup/plugin-json": "^6.1.0", - "@rollup/plugin-node-resolve": "^16.0.3", + "prettier": "^3.4.2", "rimraf": "^6.0.1", - "rollup": "^4.53.3", + "rolldown": "^1.0.0-beta.52", "rollup-plugin-typescript2": "^0.36.0", "typescript": "^5.8.3" } diff --git a/packages/doc-gen/rollup.config.js b/packages/doc-gen/rolldown.config.js similarity index 82% rename from packages/doc-gen/rollup.config.js rename to packages/doc-gen/rolldown.config.js index 0a2a6db641a..52f389c9837 100644 --- a/packages/doc-gen/rollup.config.js +++ b/packages/doc-gen/rolldown.config.js @@ -1,8 +1,5 @@ import {defineConfig} from 'rollup' import babel from '@rollup/plugin-babel' -import json from '@rollup/plugin-json' -import nodeResolve from '@rollup/plugin-node-resolve' -import commonjs from '@rollup/plugin-commonjs' import typescript from 'rollup-plugin-typescript2' import packageJson from './package.json' with {type: 'json'} @@ -17,9 +14,8 @@ const external = [ const config = defineConfig({ input: ['./src/index.ts'], external, + platform: 'node', plugins: [ - nodeResolve(), - commonjs(), typescript({ tsconfig: './tsconfig.build.json', }), @@ -39,12 +35,10 @@ const config = defineConfig({ plugins: ['@babel/plugin-transform-runtime'], babelHelpers: 'runtime', }), - json(), ], output: { dir: 'dist', format: 'esm', - importAttributesKey: 'with', }, }) diff --git a/packages/doc-gen/tsconfig.build.json b/packages/doc-gen/tsconfig.build.json index f8dbf0c35ca..6d6194bd4b7 100644 --- a/packages/doc-gen/tsconfig.build.json +++ b/packages/doc-gen/tsconfig.build.json @@ -4,5 +4,6 @@ "emitDeclarationOnly": true, "outDir": "./dist", "rootDir": "./src" - } + }, + "exclude": ["**/__tests__/**"] } diff --git a/packages/mcp/package.json b/packages/mcp/package.json index 81ca366d259..dc873bfd083 100644 --- a/packages/mcp/package.json +++ b/packages/mcp/package.json @@ -29,9 +29,9 @@ }, "scripts": { "clean": "rimraf dist", - "build": "rollup -c", + "build": "rolldown -c", "type-check": "tsc --noEmit", - "watch": "rollup -c -w" + "watch": "rolldown -w -c" }, "dependencies": { "@babel/runtime": "^7.28.4", @@ -50,12 +50,9 @@ "@babel/preset-typescript": "^7.28.5", "@modelcontextprotocol/inspector": "^0.16.6", "@rollup/plugin-babel": "^6.1.0", - "@rollup/plugin-commonjs": "^29.0.0", - "@rollup/plugin-json": "^6.1.0", - "@rollup/plugin-node-resolve": "^16.0.3", "@types/turndown": "^5.0.5", "rimraf": "^6.0.1", - "rollup": "^4.53.3", + "rolldown": "^1.0.0-beta.52", "rollup-plugin-typescript2": "^0.36.0", "typescript": "^5.9.2" } diff --git a/packages/mcp/rollup.config.js b/packages/mcp/rolldown.config.js similarity index 79% rename from packages/mcp/rollup.config.js rename to packages/mcp/rolldown.config.js index ff8163f96e0..5219f911ba0 100644 --- a/packages/mcp/rollup.config.js +++ b/packages/mcp/rolldown.config.js @@ -1,8 +1,5 @@ -import {defineConfig} from 'rollup' +import {defineConfig} from 'rolldown' import babel from '@rollup/plugin-babel' -import json from '@rollup/plugin-json' -import nodeResolve from '@rollup/plugin-node-resolve' -import commonjs from '@rollup/plugin-commonjs' import typescript from 'rollup-plugin-typescript2' import packageJson from './package.json' with {type: 'json'} @@ -18,8 +15,6 @@ const config = defineConfig({ input: ['./src/index.ts', './src/transports/stdio.ts'], external, plugins: [ - nodeResolve(), - commonjs(), typescript({ tsconfig: './tsconfig.build.json', }), @@ -39,12 +34,10 @@ const config = defineConfig({ plugins: ['@babel/plugin-transform-runtime'], babelHelpers: 'runtime', }), - json(), ], output: { dir: 'dist', format: 'esm', - importAttributesKey: 'with', }, }) diff --git a/packages/react/package.json b/packages/react/package.json index 2e8cf2c50ca..10c022a6c50 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -107,20 +107,17 @@ "@figma/code-connect": "1.3.2", "@primer/css": "^21.5.1", "@primer/doc-gen": "^0.0.1", - "@tanstack/react-virtual": "^3.13.12", - "@rollup/plugin-babel": "6.1.0", - "@rollup/plugin-commonjs": "29.0.0", + "@rollup/plugin-babel": "^6.1.0", + "@rollup/plugin-commonjs": "^29.0.0", "@rollup/plugin-json": "6.1.0", - "@rollup/plugin-node-resolve": "16.0.3", - "@rollup/plugin-replace": "6.0.3", - "@rollup/plugin-terser": "0.4.4", - "@rollup/plugin-typescript": "12.3.0", - "@rollup/plugin-virtual": "3.0.2", + "@rollup/plugin-node-resolve": "^16.0.3", + "@rollup/plugin-virtual": "^3.0.2", "@storybook/addon-a11y": "^10.1.2", "@storybook/addon-docs": "^10.1.2", "@storybook/addon-links": "^10.1.2", "@storybook/icons": "^2.0.1", "@storybook/react-vite": "^10.1.2", + "@tanstack/react-virtual": "^3.13.12", "@testing-library/dom": "^10.4.0", "@testing-library/jest-dom": "^6.4.5", "@testing-library/react": "^16.3.0", @@ -172,10 +169,8 @@ "react-is": "18.3.1", "recast": "0.23.7", "rimraf": "5.0.5", - "rollup": "4.53.3", - "rollup-plugin-import-css": "^0.0.0", - "rollup-plugin-postcss": "4.0.2", - "rollup-plugin-visualizer": "6.0.5", + "rolldown": "^1.0.0-beta.52", + "rolldown-plugin-import-css": "^0.0.0", "storybook": "^10.1.2", "terser": "5.36.0", "ts-toolbelt": "9.6.0", diff --git a/packages/react/rolldown.config.mjs b/packages/react/rolldown.config.mjs new file mode 100644 index 00000000000..5c49b6f5392 --- /dev/null +++ b/packages/react/rolldown.config.mjs @@ -0,0 +1,115 @@ +import babel from '@rollup/plugin-babel' +import {importCSS} from 'rolldown-plugin-import-css' +import postcssPresetPrimer from 'postcss-preset-primer' +import {defineConfig} from 'rolldown' +import {isSupported} from './script/react-compiler.mjs' +import packageJson from './package.json' with {type: 'json'} + +const extensions = ['.js', '.jsx', '.ts', '.tsx'] +const dependencies = [ + ...Object.keys(packageJson.peerDependencies ?? {}), + ...Object.keys(packageJson.dependencies ?? {}), + ...Object.keys(packageJson.devDependencies ?? {}), +] + +function createPackageRegex(name) { + return new RegExp(`^${name}(/.*)?`) +} + +const postcssModulesOptions = { + generateScopedName: 'prc-[folder]-[local]-[hash:base64:5]', +} + +export default defineConfig([ + { + input: [ + // "exports" + // "." + 'src/index.ts', + + // "./experimental" + 'src/experimental/index.ts', + + // "./deprecated" + 'src/deprecated/index.ts', + + // "./next" + 'src/next/index.ts', + ], + external: dependencies.map(createPackageRegex), + plugins: [ + babel({ + extensions, + exclude: /node_modules/, + babelHelpers: 'inline', + babelrc: false, + configFile: false, + presets: [ + '@babel/preset-typescript', + [ + '@babel/preset-react', + { + modules: false, + runtime: 'automatic', + }, + ], + ], + plugins: [ + [ + 'babel-plugin-react-compiler', + { + target: '18', + sources: filepath => isSupported(filepath), + }, + ], + 'add-react-displayname', + 'dev-expression', + [ + 'babel-plugin-transform-replace-expressions', + { + replace: { + __DEV__: "process.env.NODE_ENV !== 'production'", + }, + }, + ], + ], + }), + importCSS({ + modulesRoot: 'src', + postcssPlugins: [postcssPresetPrimer()], + postcssModulesOptions, + }), + ], + onwarn(warning, defaultHandler) { + // Dependencies or modules may use "use client" as an indicator for React + // Server Components that this module should only be loaded on the client. + if (warning.code === 'MODULE_LEVEL_DIRECTIVE' && warning.message.includes('use client')) { + return + } + + if (warning.code === 'CIRCULAR_DEPENDENCY') { + throw warning + } + + defaultHandler(warning) + }, + output: { + dir: 'dist', + format: 'esm', + preserveModules: true, + preserveModulesRoot: 'src', + }, + }, + { + input: { + 'test-helpers': 'src/utils/test-helpers.tsx', + }, + platform: 'node', + output: { + dir: 'dist', + format: 'esm', + preserveModules: true, + preserveModulesRoot: 'src', + }, + }, +]) diff --git a/packages/react/rollup.config.mjs b/packages/react/rollup.config.mjs deleted file mode 100644 index c80679fcb81..00000000000 --- a/packages/react/rollup.config.mjs +++ /dev/null @@ -1,230 +0,0 @@ -import path from 'node:path' -import commonjs from '@rollup/plugin-commonjs' -import resolve from '@rollup/plugin-node-resolve' -import babel from '@rollup/plugin-babel' -import replace from '@rollup/plugin-replace' -import terser from '@rollup/plugin-terser' -import {visualizer} from 'rollup-plugin-visualizer' -import {importCSS} from 'rollup-plugin-import-css' -import postcss from 'rollup-plugin-postcss' -import postcssPresetPrimer from 'postcss-preset-primer' -import MagicString from 'magic-string' -import {isSupported} from './script/react-compiler.mjs' -import packageJson from './package.json' with {type: 'json'} - -const input = new Set([ - // "exports" - // "." - 'src/index.ts', - - // "./experimental" - 'src/experimental/index.ts', - - // "./deprecated" - 'src/deprecated/index.ts', - - // "./next" - 'src/next/index.ts', -]) - -function getEntrypointsFromInput(input) { - return Object.fromEntries( - Array.from(input).map(value => { - const relativePath = path.relative('src', value) - return [path.join(path.dirname(relativePath), path.basename(relativePath, path.extname(relativePath))), value] - }), - ) -} - -const extensions = ['.js', '.jsx', '.ts', '.tsx'] -const dependencies = [ - ...Object.keys(packageJson.peerDependencies ?? {}), - ...Object.keys(packageJson.dependencies ?? {}), - ...Object.keys(packageJson.devDependencies ?? {}), -] - -function createPackageRegex(name) { - return new RegExp(`^${name}(/.*)?`) -} - -const postcssModulesOptions = { - generateScopedName: 'prc-[folder]-[local]-[hash:base64:5]', -} - -const baseConfig = { - input: { - ...getEntrypointsFromInput(input), - // "./test-helpers" - 'test-helpers': 'src/utils/test-helpers.tsx', - }, - plugins: [ - babel({ - extensions, - exclude: /node_modules/, - babelHelpers: 'inline', - babelrc: false, - configFile: false, - presets: [ - '@babel/preset-typescript', - [ - '@babel/preset-react', - { - modules: false, - runtime: 'automatic', - }, - ], - ], - plugins: [ - [ - 'babel-plugin-react-compiler', - { - target: '18', - sources: filepath => isSupported(filepath), - }, - ], - 'macros', - 'add-react-displayname', - 'dev-expression', - 'babel-plugin-styled-components', - '@babel/plugin-proposal-nullish-coalescing-operator', - '@babel/plugin-proposal-optional-chaining', - [ - 'babel-plugin-transform-replace-expressions', - { - replace: { - __DEV__: "process.env.NODE_ENV !== 'production'", - }, - }, - ], - ], - }), - resolve({ - extensions, - }), - commonjs({ - extensions, - }), - importCSS({ - modulesRoot: 'src', - postcssPlugins: [postcssPresetPrimer()], - postcssModulesOptions, - }), - - /** - * This custom rollup plugin allows us to preserve directives in source - * code, such as "use client", in order to support React Server Components. - * - * The source for this plugin is inspired by: - * https://github.com/Ephem/rollup-plugin-preserve-directives - */ - { - name: 'preserve-directives', - transform(code) { - const ast = this.parse(code) - if (ast.type !== 'Program' || !ast.body) { - return { - code, - ast, - map: null, - } - } - - let hasClientDirective = false - - for (const node of ast.body) { - if (!node) { - continue - } - - if (node.type !== 'ExpressionStatement') { - continue - } - - if (node.directive === 'use client') { - hasClientDirective = true - break - } - } - - if (hasClientDirective) { - return { - code, - ast, - map: null, - meta: { - hasClientDirective: true, - }, - } - } - - return { - code, - ast, - map: null, - } - }, - renderChunk: { - order: 'post', - handler(code, chunk, options) { - // If `preserveModules` is not set to true, we can't be sure if the client - // directive corresponds to the whole chunk or just a part of it. - if (!options.preserveModules) { - return undefined - } - - let chunkHasClientDirective = false - - for (const moduleId of Object.keys(chunk.modules)) { - const hasClientDirective = this.getModuleInfo(moduleId)?.meta?.hasClientDirective - if (hasClientDirective) { - chunkHasClientDirective = true - break - } - } - - if (chunkHasClientDirective) { - const transformed = new MagicString(code) - transformed.prepend(`"use client";\n`) - const sourcemap = transformed.generateMap({ - includeContent: true, - }) - return { - code: transformed.toString(), - map: sourcemap, - } - } - - return null - }, - }, - }, - ], - onwarn(warning, defaultHandler) { - // Dependencies or modules may use "use client" as an indicator for React - // Server Components that this module should only be loaded on the client. - if (warning.code === 'MODULE_LEVEL_DIRECTIVE' && warning.message.includes('use client')) { - return - } - - if (warning.code === 'CIRCULAR_DEPENDENCY') { - throw warning - } - - defaultHandler(warning) - }, -} - -export default [ - // ESM - { - ...baseConfig, - external: dependencies.map(createPackageRegex), - output: { - interop: 'auto', - dir: 'dist', - format: 'esm', - preserveModules: true, - preserveModulesRoot: 'src', - }, - }, -] diff --git a/packages/react/script/build b/packages/react/script/build index 4dab4524738..d525a2ef048 100755 --- a/packages/react/script/build +++ b/packages/react/script/build @@ -12,7 +12,7 @@ npm run build:precompile-color-schemes npm run type-css-modules # Bundle -npx rollup -c +npx rolldown -c # Type check npx tsc --project tsconfig.build.json diff --git a/packages/react/src/Text/Text.tsx b/packages/react/src/Text/Text.tsx index 6be84edb88d..ab78931a059 100644 --- a/packages/react/src/Text/Text.tsx +++ b/packages/react/src/Text/Text.tsx @@ -1,7 +1,7 @@ import {clsx} from 'clsx' import React, {type ForwardedRef} from 'react' -import {useRefObjectAsForwardedRef} from '../hooks' import classes from './Text.module.css' +import {useRefObjectAsForwardedRef} from '../hooks/useRefObjectAsForwardedRef' import {fixedForwardRef, type PolymorphicProps} from '../utils/modern-polymorphic' export type TextProps = PolymorphicProps< diff --git a/packages/rollup-plugin-import-css/README.md b/packages/rolldown-plugin-import-css/README.md similarity index 86% rename from packages/rollup-plugin-import-css/README.md rename to packages/rolldown-plugin-import-css/README.md index e89da8734c5..ed274529020 100644 --- a/packages/rollup-plugin-import-css/README.md +++ b/packages/rolldown-plugin-import-css/README.md @@ -1,13 +1,13 @@ -# rollup-plugin-import-css +# rolldown-plugin-import-css -> A Rollup plugin to include generated CSS alongside transformed CSS Modules so +> A Rolldown plugin to include generated CSS alongside transformed CSS Modules so > that importing a component from a library includes its CSS. ## Usage ```ts // rollup.config.js -import {importCSS} from 'rollup-plugin-import-css' +import {importCSS} from 'rolldown-plugin-import-css' export default { input: ['src/index.ts'], diff --git a/packages/rolldown-plugin-import-css/package.json b/packages/rolldown-plugin-import-css/package.json new file mode 100644 index 00000000000..f9aad1adc5a --- /dev/null +++ b/packages/rolldown-plugin-import-css/package.json @@ -0,0 +1,20 @@ +{ + "name": "rolldown-plugin-import-css", + "version": "0.0.0", + "private": true, + "type": "module", + "exports": "./src/index.ts", + "scripts": { + "type-check": "tsc --noEmit" + }, + "peerDependencies": { + "postcss": "^8.4.38", + "postcss-modules": "^6.0.0" + }, + "devDependencies": { + "postcss": "^8.4.38", + "postcss-modules": "^6.0.0", + "typescript": "^5.9.2" + }, + "sideEffects": false +} diff --git a/packages/rolldown-plugin-import-css/src/index.ts b/packages/rolldown-plugin-import-css/src/index.ts new file mode 100644 index 00000000000..fd89f0dd0ce --- /dev/null +++ b/packages/rolldown-plugin-import-css/src/index.ts @@ -0,0 +1,143 @@ +import type {Plugin} from 'rolldown' +import fs from 'node:fs/promises' +import path from 'node:path' +import {createHash} from 'node:crypto' +import postcss from 'postcss' +import postcssModules from 'postcss-modules' + +interface ImportCSSOptions { + /** + * Provide the root directory for your package. This is used to calculate the + * relative path for generated CSS files + */ + modulesRoot: string + + /** + * Optionally provide an array of postcss plugins to use during CSS + * compilation. + */ + postcssPlugins?: Array + + /** + * Optionally provide options to pass forward to `postcss-modules` when + * compiling CSS + */ + postcssModulesOptions?: Parameters[0] +} + +export function importCSS(options: ImportCSSOptions): Plugin { + const {modulesRoot, postcssPlugins = [], postcssModulesOptions = {}} = options + const rootDirectory = path.isAbsolute(modulesRoot) ? modulesRoot : path.resolve(process.cwd(), modulesRoot) + + return { + name: 'import-css', + resolveId: { + filter: { + id: /\.css$/, + }, + handler(source, importer) { + if (!importer) { + return + } + + const moduleInfo = this.getModuleInfo(importer) + if (moduleInfo?.meta['import-css']?.source === source) { + return { + id: source, + external: true, + } + } + + return path.format({ + base: path.join(path.dirname(importer), source), + ext: '.js', + }) + }, + }, + load: { + filter: { + id: /\.css.js$/, + }, + handler() { + return '' + }, + }, + transform: { + filter: { + id: /\.module.css.js$/, + }, + async handler(_code, id) { + const filepath = path.join(path.dirname(id), path.basename(id, '.js')) + const code = await fs.readFile(filepath, 'utf-8') + + const hash = getSourceHash(code) + const relativePath = path.relative(rootDirectory, id) + const name = path.basename(relativePath, '.module.css.js') + const fileName = path.join( + path.dirname(relativePath), + path.format({ + name: `${name}-${hash}`, + ext: '.css', + }), + ) + // When transforming CSS modules, we want to emit the generated CSS as an + // asset and include the generated file in our generated CSS Modules file + // which contains the classes. This makes sure that if the file containing + // the classes is used, then the associated styles for those classes is + // also included + + let cssModuleClasses = null + const result = await postcss([ + ...postcssPlugins, + postcssModules({ + ...postcssModulesOptions, + getJSON(filename, json) { + if (postcssModulesOptions.getJSON) { + postcssModulesOptions.getJSON(filename, json) + } + cssModuleClasses = json + }, + }), + ]).process(code, { + from: id, + to: fileName, + map: { + inline: false, + }, + }) + + this.emitFile({ + type: 'asset', + source: result.css, + fileName, + }) + this.emitFile({ + type: 'asset', + source: result.map.toString(), + fileName: `${fileName}.map`, + }) + + const moduleInfo = this.getModuleInfo(id) + const cssSource = `./${path.basename(fileName)}` + if (moduleInfo) { + moduleInfo.meta['import-css'] = { + source: cssSource, + } + } + + return { + code: ` + import '${cssSource}'; + export default ${JSON.stringify(cssModuleClasses)} + `, + } + }, + }, + } +} + +const DEFAULT_HASH_SIZE = 8 + +function getSourceHash(source: string) { + return createHash('sha256').update(source).digest('hex').slice(0, DEFAULT_HASH_SIZE) +} diff --git a/packages/rollup-plugin-import-css/tsconfig.build.json b/packages/rolldown-plugin-import-css/tsconfig.build.json similarity index 100% rename from packages/rollup-plugin-import-css/tsconfig.build.json rename to packages/rolldown-plugin-import-css/tsconfig.build.json diff --git a/packages/rollup-plugin-import-css/tsconfig.json b/packages/rolldown-plugin-import-css/tsconfig.json similarity index 100% rename from packages/rollup-plugin-import-css/tsconfig.json rename to packages/rolldown-plugin-import-css/tsconfig.json diff --git a/packages/rollup-plugin-import-css/package.json b/packages/rollup-plugin-import-css/package.json deleted file mode 100644 index 4ac0e4ccd65..00000000000 --- a/packages/rollup-plugin-import-css/package.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "name": "rollup-plugin-import-css", - "version": "0.0.0", - "private": true, - "type": "module", - "exports": { - "types": "./dist/index.d.ts", - "default": "./dist/index.js" - }, - "scripts": { - "build": "rollup -c", - "clean": "rimraf dist", - "type-check": "tsc --noEmit", - "watch": "rollup -c -w" - }, - "peerDependencies": { - "postcss": "^8.4.38", - "postcss-modules": "^6.0.0" - }, - "devDependencies": { - "@rollup/plugin-commonjs": "^29.0.0", - "@rollup/plugin-node-resolve": "^16.0.3", - "esbuild": "^0.25.0", - "postcss": "^8.4.38", - "postcss-modules": "^6.0.0", - "rimraf": "^5.0.7", - "rollup-plugin-esbuild": "^6.2.1", - "rollup-plugin-typescript2": "^0.36.0", - "typescript": "^5.9.2" - }, - "sideEffects": false -} diff --git a/packages/rollup-plugin-import-css/rollup.config.js b/packages/rollup-plugin-import-css/rollup.config.js deleted file mode 100644 index da639769421..00000000000 --- a/packages/rollup-plugin-import-css/rollup.config.js +++ /dev/null @@ -1,43 +0,0 @@ -import {nodeResolve} from '@rollup/plugin-node-resolve' -import commonjs from '@rollup/plugin-commonjs' -import typescript from 'rollup-plugin-typescript2' -import esbuild from 'rollup-plugin-esbuild' -import packageJson from './package.json' with {type: 'json'} - -const dependencyTypes = ['dependencies', 'devDependencies', 'peerDependencies', 'optionalDependencies'] -const dependencies = new Set( - dependencyTypes.flatMap(type => { - if (packageJson[type]) { - return Object.keys(packageJson[type]) - } - return [] - }), -) -const external = Array.from(dependencies).map(name => { - return new RegExp(`^${name}(/.*)?`) -}) - -export default [ - { - input: ['./src/index.ts'], - external, - plugins: [ - nodeResolve({ - include: /node_modules/, - }), - commonjs({ - include: /node_modules/, - }), - typescript({ - tsconfig: 'tsconfig.build.json', - }), - esbuild(), - ], - output: { - dir: 'dist', - format: 'esm', - preserveModules: true, - preserveModulesRoot: 'src', - }, - }, -] diff --git a/packages/rollup-plugin-import-css/src/index.ts b/packages/rollup-plugin-import-css/src/index.ts deleted file mode 100644 index a1bc58106c6..00000000000 --- a/packages/rollup-plugin-import-css/src/index.ts +++ /dev/null @@ -1,122 +0,0 @@ -import type {Plugin} from 'rollup' -import path from 'node:path' -import {createHash} from 'node:crypto' -import postcss from 'postcss' -import postcssModules from 'postcss-modules' - -interface ImportCSSOptions { - /** - * Provide the root directory for your package. This is used to calculate the - * relative path for generated CSS files - */ - modulesRoot: string - - /** - * Optionally provide an array of postcss plugins to use during CSS - * compilation. - */ - postcssPlugins?: Array - - /** - * Optionally provide options to pass forward to `postcss-modules` when - * compiling CSS - */ - postcssModulesOptions?: Parameters[0] -} - -export function importCSS(options: ImportCSSOptions): Plugin { - const {modulesRoot, postcssPlugins = [], postcssModulesOptions = {}} = options - const rootDirectory = path.isAbsolute(modulesRoot) ? modulesRoot : path.resolve(process.cwd(), modulesRoot) - - return { - name: 'import-css', - resolveId(source, importer) { - if (!importer) { - return - } - - const moduleInfo = this.getModuleInfo(importer) - if (moduleInfo?.meta['import-css']?.source === source) { - return { - id: source, - external: true, - } - } - }, - async transform(code, id) { - if (!id.endsWith('.css')) { - return - } - - const hash = getSourceHash(code) - const relativePath = path.relative(rootDirectory, id) - const name = path.basename(relativePath, '.module.css') - - const fileName = path.join( - path.dirname(relativePath), - path.format({ - name: `${name}-${hash}`, - ext: '.css', - }), - ) - - // When transforming CSS modules, we want to emit the generated CSS as an - // asset and include the generated file in our generated CSS Modules file - // which contains the classes. This makes sure that if the file containing - // the classes is used, then the associated styles for those classes is - // also included - - let cssModuleClasses = null - const result = await postcss([ - ...postcssPlugins, - postcssModules({ - ...postcssModulesOptions, - getJSON(filename, json) { - if (postcssModulesOptions.getJSON) { - postcssModulesOptions.getJSON(filename, json) - } - cssModuleClasses = json - }, - }), - ]).process(code, { - from: id, - to: fileName, - map: { - inline: false, - }, - }) - - this.emitFile({ - type: 'asset', - source: result.css, - fileName, - }) - this.emitFile({ - type: 'asset', - source: result.map.toString(), - fileName: `${fileName}.map`, - }) - - const moduleInfo = this.getModuleInfo(id) - const cssSource = `./${path.basename(fileName)}` - if (moduleInfo) { - moduleInfo.meta['import-css'] = { - source: cssSource, - } - } - - return { - code: ` - import '${cssSource}'; - export default ${JSON.stringify(cssModuleClasses)} - `, - } - }, - } -} - -const DEFAULT_HASH_SIZE = 8 - -function getSourceHash(source: string) { - return createHash('sha256').update(source).digest('hex').slice(0, DEFAULT_HASH_SIZE) -} diff --git a/packages/styled-react/package.json b/packages/styled-react/package.json index 242792c6490..3873022f1ef 100644 --- a/packages/styled-react/package.json +++ b/packages/styled-react/package.json @@ -38,6 +38,9 @@ "@types/styled-system": "^5.1.23", "@types/styled-system__css": "^5.0.16", "@types/styled-system__theme-get": "^5.0.1", + "clsx": "^2.1.1", + "deepmerge": "^4.3.1", + "focus-visible": "^5.2.1", "styled-system": "^5.1.5" }, "devDependencies": { @@ -54,7 +57,7 @@ "react": "18.3.1", "react-dom": "18.3.1", "rimraf": "^6.0.1", - "rollup": "4.53.3", + "rolldown": "^1.0.0-beta.52", "rollup-plugin-typescript2": "^0.36.0", "styled-components": "5.3.11", "typescript": "^5.9.2" diff --git a/packages/styled-react/rolldown.config.js b/packages/styled-react/rolldown.config.js new file mode 100644 index 00000000000..17889b7384a --- /dev/null +++ b/packages/styled-react/rolldown.config.js @@ -0,0 +1,49 @@ +import babel from '@rollup/plugin-babel' +import {defineConfig} from 'rolldown' +import typescript from 'rollup-plugin-typescript2' +import packageJson from './package.json' with {type: 'json'} + +const dependencies = [ + ...Object.keys(packageJson.peerDependencies ?? {}), + ...Object.keys(packageJson.dependencies ?? {}), + ...Object.keys(packageJson.devDependencies ?? {}), +] + +function createPackageRegex(name) { + return new RegExp(`^${name}(/.*)?`) +} + +export default defineConfig({ + input: ['src/index.tsx', 'src/experimental.tsx', 'src/deprecated.tsx'], + external: dependencies.map(createPackageRegex), + plugins: [ + typescript({ + tsconfig: 'tsconfig.build.json', + }), + babel({ + presets: ['@babel/preset-typescript', ['@babel/preset-react', {runtime: 'automatic'}]], + plugins: ['babel-plugin-styled-components'], + extensions: ['.ts', '.tsx'], + babelHelpers: 'bundled', + }), + ], + onwarn(warning, defaultHandler) { + // Dependencies or modules may use "use client" as an indicator for React + // Server Components that this module should only be loaded on the client. + if (warning.code === 'MODULE_LEVEL_DIRECTIVE' && warning.message.includes('use client')) { + return + } + + if (warning.code === 'CIRCULAR_DEPENDENCY') { + throw warning + } + + defaultHandler(warning) + }, + output: { + dir: 'dist', + format: 'esm', + preserveModules: true, + preserveModulesRoot: 'src', + }, +}) diff --git a/packages/styled-react/rollup.config.js b/packages/styled-react/rollup.config.js deleted file mode 100644 index 60091798713..00000000000 --- a/packages/styled-react/rollup.config.js +++ /dev/null @@ -1,137 +0,0 @@ -import babel from '@rollup/plugin-babel' -import {defineConfig} from 'rollup' -import typescript from 'rollup-plugin-typescript2' -import packageJson from './package.json' with {type: 'json'} -import MagicString from 'magic-string' - -const dependencies = [ - ...Object.keys(packageJson.peerDependencies ?? {}), - ...Object.keys(packageJson.dependencies ?? {}), - ...Object.keys(packageJson.devDependencies ?? {}), -] - -function createPackageRegex(name) { - return new RegExp(`^${name}(/.*)?`) -} - -export default defineConfig({ - input: ['src/index.tsx', 'src/experimental.tsx', 'src/deprecated.tsx'], - external: dependencies.map(createPackageRegex), - plugins: [ - typescript({ - tsconfig: 'tsconfig.build.json', - }), - babel({ - presets: ['@babel/preset-typescript', ['@babel/preset-react', {runtime: 'automatic'}]], - plugins: ['babel-plugin-styled-components'], - extensions: ['.ts', '.tsx'], - babelHelpers: 'bundled', - }), - /** - * This custom rollup plugin allows us to preserve directives in source - * code, such as "use client", in order to support React Server Components. - * - * The source for this plugin is inspired by: - * https://github.com/Ephem/rollup-plugin-preserve-directives - */ - { - name: 'preserve-directives', - transform(code) { - const ast = this.parse(code) - if (ast.type !== 'Program' || !ast.body) { - return { - code, - ast, - map: null, - } - } - - let hasClientDirective = false - - for (const node of ast.body) { - if (!node) { - continue - } - - if (node.type !== 'ExpressionStatement') { - continue - } - - if (node.directive === 'use client') { - hasClientDirective = true - break - } - } - - if (hasClientDirective) { - return { - code, - ast, - map: null, - meta: { - hasClientDirective: true, - }, - } - } - - return { - code, - ast, - map: null, - } - }, - renderChunk: { - order: 'post', - handler(code, chunk, options) { - // If `preserveModules` is not set to true, we can't be sure if the client - // directive corresponds to the whole chunk or just a part of it. - if (!options.preserveModules) { - return undefined - } - - let chunkHasClientDirective = false - - for (const moduleId of Object.keys(chunk.modules)) { - const hasClientDirective = this.getModuleInfo(moduleId)?.meta?.hasClientDirective - if (hasClientDirective) { - chunkHasClientDirective = true - break - } - } - - if (chunkHasClientDirective) { - const transformed = new MagicString(code) - transformed.prepend(`"use client";\n`) - const sourcemap = transformed.generateMap({ - includeContent: true, - }) - return { - code: transformed.toString(), - map: sourcemap, - } - } - - return null - }, - }, - }, - ], - onwarn(warning, defaultHandler) { - // Dependencies or modules may use "use client" as an indicator for React - // Server Components that this module should only be loaded on the client. - if (warning.code === 'MODULE_LEVEL_DIRECTIVE' && warning.message.includes('use client')) { - return - } - - if (warning.code === 'CIRCULAR_DEPENDENCY') { - throw warning - } - - defaultHandler(warning) - }, - output: { - dir: 'dist', - format: 'esm', - preserveModules: true, - }, -}) diff --git a/packages/styled-react/script/build b/packages/styled-react/script/build index 34b63316201..936f26e15ed 100755 --- a/packages/styled-react/script/build +++ b/packages/styled-react/script/build @@ -1,7 +1,7 @@ #!/bin/bash # Build the package -npx rollup -c +npx rolldown -c # Generate components.json ./script/generate-components-json