From e67937428a48c2e5a2524a080d52b258bde8338e Mon Sep 17 00:00:00 2001 From: devfive Date: Fri, 28 Aug 2026 21:24:03 +0900 Subject: [PATCH 1/5] bench: add StyleX Turbopack benchmark --- benchmark.js | 5 +- benchmark/next-stylex-turbo/.gitignore | 2 + benchmark/next-stylex-turbo/app/globals.css | 7 ++ benchmark/next-stylex-turbo/app/layout.tsx | 20 +++ benchmark/next-stylex-turbo/app/page.tsx | 70 +++++++++++ benchmark/next-stylex-turbo/next.config.mjs | 9 ++ benchmark/next-stylex-turbo/package.json | 30 +++++ .../next-stylex-turbo/postcss.config.mjs | 10 ++ benchmark/next-stylex-turbo/tsconfig.json | 28 +++++ bun.lock | 117 +++++++++++++++++- 10 files changed, 295 insertions(+), 3 deletions(-) create mode 100644 benchmark/next-stylex-turbo/.gitignore create mode 100644 benchmark/next-stylex-turbo/app/globals.css create mode 100644 benchmark/next-stylex-turbo/app/layout.tsx create mode 100644 benchmark/next-stylex-turbo/app/page.tsx create mode 100644 benchmark/next-stylex-turbo/next.config.mjs create mode 100644 benchmark/next-stylex-turbo/package.json create mode 100644 benchmark/next-stylex-turbo/postcss.config.mjs create mode 100644 benchmark/next-stylex-turbo/tsconfig.json diff --git a/benchmark.js b/benchmark.js index 964e80d27..7588cb70b 100644 --- a/benchmark.js +++ b/benchmark.js @@ -75,8 +75,9 @@ function benchmark(target) { let result = [] result.push(benchmark('tailwind')) -result.push(benchmark('stylex')) -result.push(benchmark('vanilla-extract')) +result.push(benchmark('stylex')) +result.push(benchmark('stylex-turbo')) +result.push(benchmark('vanilla-extract')) result.push(benchmark('kuma-ui')) result.push(benchmark('panda-css')) result.push(benchmark('chakra-ui')) diff --git a/benchmark/next-stylex-turbo/.gitignore b/benchmark/next-stylex-turbo/.gitignore new file mode 100644 index 000000000..bbe08e8be --- /dev/null +++ b/benchmark/next-stylex-turbo/.gitignore @@ -0,0 +1,2 @@ +/.next/ +next-env.d.ts diff --git a/benchmark/next-stylex-turbo/app/globals.css b/benchmark/next-stylex-turbo/app/globals.css new file mode 100644 index 000000000..b24a54dbe --- /dev/null +++ b/benchmark/next-stylex-turbo/app/globals.css @@ -0,0 +1,7 @@ +@stylex; + +* { + box-sizing: border-box; + padding: 0; + margin: 0; +} diff --git a/benchmark/next-stylex-turbo/app/layout.tsx b/benchmark/next-stylex-turbo/app/layout.tsx new file mode 100644 index 000000000..97e6490da --- /dev/null +++ b/benchmark/next-stylex-turbo/app/layout.tsx @@ -0,0 +1,20 @@ +import './globals.css' + +import type { Metadata } from 'next' + +export const metadata: Metadata = { + title: 'StyleX Turbopack benchmark', + description: 'StyleX benchmark built with Next.js Turbopack', +} + +export default function RootLayout({ + children, +}: Readonly<{ + children: React.ReactNode +}>) { + return ( + + {children} + + ) +} diff --git a/benchmark/next-stylex-turbo/app/page.tsx b/benchmark/next-stylex-turbo/app/page.tsx new file mode 100644 index 000000000..5cfba2de6 --- /dev/null +++ b/benchmark/next-stylex-turbo/app/page.tsx @@ -0,0 +1,70 @@ +'use client' + +import * as stylex from '@stylexjs/stylex' +import { useState } from 'react' + +const styles = stylex.create({ + base: { + fontSize: 32, + position: 'relative', + paddingTop: '28px', + paddingBottom: '28px', + backgroundColor: { + default: 'blue', + ':hover': 'yellow', + }, + cursor: { + default: 'pointer', + ':hover': 'cell', + }, + }, + typo: { + color: 'var(--text)', + }, + conditional: { + color: 'green', + }, + conditional1: { + color: 'blue', + }, + hello: { + fontSize: 32, + paddingRight: '20px', + }, + hello2: { + fontSize: 12, + }, +}) + +export default function HomePage() { + const [_, setColor] = useState('yellow') + const [enabled, setEnabled] = useState(false) + + return ( +
+

Track & field champions:

+
+
hello
+
hello
+
+
text
+
+ hello +
+
hello
+ +
+ ) +} diff --git a/benchmark/next-stylex-turbo/next.config.mjs b/benchmark/next-stylex-turbo/next.config.mjs new file mode 100644 index 000000000..606289322 --- /dev/null +++ b/benchmark/next-stylex-turbo/next.config.mjs @@ -0,0 +1,9 @@ +import withStylexTurbopack from '@stylexswc/nextjs-plugin/turbopack' + +export default withStylexTurbopack({ + rsOptions: { + dev: process.env.NODE_ENV !== 'production', + }, +})({ + pageExtensions: ['js', 'jsx', 'mdx', 'ts', 'tsx'], +}) diff --git a/benchmark/next-stylex-turbo/package.json b/benchmark/next-stylex-turbo/package.json new file mode 100644 index 000000000..23e16544b --- /dev/null +++ b/benchmark/next-stylex-turbo/package.json @@ -0,0 +1,30 @@ +{ + "name": "next-stylex-turbo-benchmark", + "version": "0.1.0", + "type": "module", + "private": true, + "scripts": { + "predev": "rimraf .next", + "prebuild": "rimraf .next", + "dev": "next dev", + "build": "next build --experimental-debug-memory-usage", + "start": "next start" + }, + "dependencies": { + "@stylexjs/stylex": "^0.19", + "next": "16.3", + "react": "19.2", + "react-dom": "19.2" + }, + "devDependencies": { + "@stylexswc/nextjs-plugin": "^0.18.4", + "@stylexswc/postcss-plugin": "^0.18.4", + "@stylexswc/turbopack-plugin": "^0.18.4", + "@types/node": "^26.2", + "@types/react": "^19.2", + "@types/react-dom": "^19.2", + "postcss": "^8.5", + "rimraf": "^6.1", + "typescript": "^7.0" + } +} diff --git a/benchmark/next-stylex-turbo/postcss.config.mjs b/benchmark/next-stylex-turbo/postcss.config.mjs new file mode 100644 index 000000000..ab15599fb --- /dev/null +++ b/benchmark/next-stylex-turbo/postcss.config.mjs @@ -0,0 +1,10 @@ +export default { + plugins: { + '@stylexswc/postcss-plugin': { + include: ['app/**/*.{js,jsx,ts,tsx}'], + rsOptions: { + dev: process.env.NODE_ENV !== 'production', + }, + }, + }, +} diff --git a/benchmark/next-stylex-turbo/tsconfig.json b/benchmark/next-stylex-turbo/tsconfig.json new file mode 100644 index 000000000..e1ed66411 --- /dev/null +++ b/benchmark/next-stylex-turbo/tsconfig.json @@ -0,0 +1,28 @@ +{ + "compilerOptions": { + "target": "es2024", + "lib": ["dom", "dom.iterable", "esnext"], + "allowJs": true, + "skipLibCheck": true, + "strict": true, + "forceConsistentCasingInFileNames": true, + "noEmit": true, + "esModuleInterop": true, + "module": "esnext", + "moduleResolution": "bundler", + "resolveJsonModule": true, + "isolatedModules": true, + "jsx": "react-jsx", + "incremental": true, + "plugins": [ + { + "name": "next" + } + ], + "paths": { + "@/*": ["./*"] + } + }, + "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", ".next/types/**/*.ts", ".next/dev/types/**/*.ts"], + "exclude": ["node_modules"] +} diff --git a/bun.lock b/bun.lock index 13270b5f1..d7bdb2e16 100644 --- a/bun.lock +++ b/bun.lock @@ -311,6 +311,27 @@ "typescript": "7.0", }, }, + "benchmark/next-stylex-turbo": { + "name": "next-stylex-turbo-benchmark", + "version": "0.1.0", + "dependencies": { + "@stylexjs/stylex": "^0.19", + "next": "16.3", + "react": "19.2", + "react-dom": "19.2", + }, + "devDependencies": { + "@stylexswc/nextjs-plugin": "^0.18.4", + "@stylexswc/postcss-plugin": "^0.18.4", + "@stylexswc/turbopack-plugin": "^0.18.4", + "@types/node": "^26.2", + "@types/react": "^19.2", + "@types/react-dom": "^19.2", + "postcss": "^8.5", + "rimraf": "^6.1", + "typescript": "^7.0", + }, + }, "benchmark/next-tailwind": { "name": "next-tailwind-benchmark", "version": "0.1.0", @@ -1091,6 +1112,34 @@ "@next/mdx": ["@next/mdx@16.3.2", "", { "dependencies": { "source-map": "^0.7.0" }, "peerDependencies": { "@mdx-js/loader": ">=0.15.0", "@mdx-js/react": ">=0.15.0" }, "optionalPeers": ["@mdx-js/loader", "@mdx-js/react"] }, "sha512-3Ch2ayTuBW9rBaOO9KLlRBUdsZpAm2rpuUxWrDjS9+2lcRzyWKlQoss3A66Nql3BnCBnsLE7j7+M3fR7Gssqdw=="], + "@next/rspack-binding": ["@next/rspack-binding@1.0.3", "", { "optionalDependencies": { "@next/rspack-binding-android-arm-eabi": "1.0.3", "@next/rspack-binding-android-arm64": "1.0.3", "@next/rspack-binding-darwin-arm64": "1.0.3", "@next/rspack-binding-darwin-x64": "1.0.3", "@next/rspack-binding-linux-arm-gnueabihf": "1.0.3", "@next/rspack-binding-linux-arm64-gnu": "1.0.3", "@next/rspack-binding-linux-arm64-musl": "1.0.3", "@next/rspack-binding-linux-x64-gnu": "1.0.3", "@next/rspack-binding-linux-x64-musl": "1.0.3", "@next/rspack-binding-win32-arm64-msvc": "1.0.3", "@next/rspack-binding-win32-ia32-msvc": "1.0.3", "@next/rspack-binding-win32-x64-msvc": "1.0.3" } }, "sha512-y42fIcY2Fz0RKgMJt8R9c0Asrp09Evwkkd3RpWaWXhongFlP34IGcF6YuCkZESLywkkrgNalZT8hzYNeq0QYXw=="], + + "@next/rspack-binding-android-arm-eabi": ["@next/rspack-binding-android-arm-eabi@1.0.3", "", { "os": "android", "cpu": "arm" }, "sha512-iyl9QipZl7osUbhi9GNRbZbzTQB//wvRXk6uwMSmRTYGdbSP8lKkZBjso9S5ijAubN1ulRIhe55kl8BzrmhlBA=="], + + "@next/rspack-binding-android-arm64": ["@next/rspack-binding-android-arm64@1.0.3", "", { "os": "android", "cpu": "arm64" }, "sha512-VTHUVNHWbD2HwM/hxEqiiN/X1O/rMfWbDGM+2eL1V2w3H6r5KmKC6V4m/iZJwhknxgRVxQ4R205TCD34OLEfkA=="], + + "@next/rspack-binding-darwin-arm64": ["@next/rspack-binding-darwin-arm64@1.0.3", "", { "os": "darwin", "cpu": "arm64" }, "sha512-i311ThFKKunMxSrYW6TEK+IRUzIvgyYUTkDuDF5+VTm6haoaX9XFyjkUT0lz/3g8LFJBnI20BJpsY6kNXQSb8Q=="], + + "@next/rspack-binding-darwin-x64": ["@next/rspack-binding-darwin-x64@1.0.3", "", { "os": "darwin", "cpu": "x64" }, "sha512-5JUKbG7i59lvaMUm/EYO/T9ukTcWg+daELvHJpnyeRQ3QOZO8lBG8V/qiY5cPUOtxU3D3U3nYfR4TNsAn2K0ew=="], + + "@next/rspack-binding-linux-arm-gnueabihf": ["@next/rspack-binding-linux-arm-gnueabihf@1.0.3", "", { "os": "linux", "cpu": "arm" }, "sha512-CotyzAc/XMVBq/Ju0eeFqVJeLk5YgBf/qnY0pTiEIf/mqfr1/BWOkbnFtHt/SO6jzVSWIAC33iZ3TLfXn3bvyQ=="], + + "@next/rspack-binding-linux-arm64-gnu": ["@next/rspack-binding-linux-arm64-gnu@1.0.3", "", { "os": "linux", "cpu": "arm64" }, "sha512-jcXWBqE+usDtN4mxenWsfu9Krd7+lBaL977G1nx00M9PXQZX8M52V6TLTVpADIOUa6HfAhGCg0QPhIap8lG1gg=="], + + "@next/rspack-binding-linux-arm64-musl": ["@next/rspack-binding-linux-arm64-musl@1.0.3", "", { "os": "linux", "cpu": "arm64" }, "sha512-p8CvSpz1tP/kewuPfi513RBDdoWyInqK3d8tVWJbUzxhwjMEc95+4w+OzvEDMlioN5azq3l4mVCm/sWH0qBqOg=="], + + "@next/rspack-binding-linux-x64-gnu": ["@next/rspack-binding-linux-x64-gnu@1.0.3", "", { "os": "linux", "cpu": "x64" }, "sha512-SViZ7oKgR7Ps+SyhJ0WsQyLxTTw2m0SE2KiepadxmKOPmaich8hj5trUKHefXg5cBPJ5eKAtOozpCNpLD0JdRg=="], + + "@next/rspack-binding-linux-x64-musl": ["@next/rspack-binding-linux-x64-musl@1.0.3", "", { "os": "linux", "cpu": "x64" }, "sha512-XEwJWAUhipCGFYb2m1bNZy8uR/rhrGTeezCkZ4qBR3CmZpuGkAS4BBJrMaROmo+hZ73xFNAO+iXLoEacISooqw=="], + + "@next/rspack-binding-win32-arm64-msvc": ["@next/rspack-binding-win32-arm64-msvc@1.0.3", "", { "os": "win32", "cpu": "arm64" }, "sha512-QR6VH6rf2uRmVoqJ3SCmTqdqMPFpXWfUDrpKTce4Ud9U/SpTRAcYkfeA1pIvypCU68vhgk+0/6vR6GPeN0aR7A=="], + + "@next/rspack-binding-win32-ia32-msvc": ["@next/rspack-binding-win32-ia32-msvc@1.0.3", "", { "os": "win32", "cpu": "ia32" }, "sha512-ylVnRMayUex5kfe7nBo6mum6mSBhaTeCJnr9Carmi+7/3h03MXD8HRkWupfpsAYjkpQU+vskONgVvZ/9mNS4oA=="], + + "@next/rspack-binding-win32-x64-msvc": ["@next/rspack-binding-win32-x64-msvc@1.0.3", "", { "os": "win32", "cpu": "x64" }, "sha512-fED9bUmsqRqtfQENWZhbnwTkWyWYL6oLoqM0IiASpzB4khBlxBlbPqFhXB5IJWzFHuYbLNfjuJh7SU9k8Rih2Q=="], + + "@next/rspack-core": ["@next/rspack-core@1.0.3", "", { "dependencies": { "@next/rspack-binding": "1.0.3", "@rspack/core": "2.0.4" } }, "sha512-4EDUKhRIuljVhTDjy8DqGvTrWrZIFUHffdAThSB3OAEyCPm+pgM3JedSodm00Od5ox0PpsZ0nWY2sbwsJofg2A=="], + "@next/swc-darwin-arm64": ["@next/swc-darwin-arm64@16.3.1", "", { "os": "darwin", "cpu": "arm64" }, "sha512-ABMIu2zQ7cnNIHm5ivKGwZwUrm0pAai3yiJ/gK/rF1c1VP9UOnj7XECbMKFdVKp9I9eMYq9NoDs1WXOoowxzJw=="], "@next/swc-darwin-x64": ["@next/swc-darwin-x64@16.3.1", "", { "os": "darwin", "cpu": "x64" }, "sha512-gNG21e/UnrroeScbY/QndUEdl0mF1FRibW7BBeYUz/5ABCepjqDdEdgr592vpzMtCn/m7FTjYq3TN4TpyDnutw=="], @@ -1407,6 +1456,34 @@ "@stylexjs/stylex": ["@stylexjs/stylex@0.19.0", "", { "dependencies": { "css-mediaquery": "^0.1.2", "invariant": "^2.2.4", "styleq": "0.2.1" } }, "sha512-CnUFp7YMaDLDeemsWOfJgoC/gKM5P/yBNMcpJaE6ChJmXr7s0DJwSeGTTlHJcqqwN9OW1qGtmARWLFhGZN1pTA=="], + "@stylexswc/nextjs-plugin": ["@stylexswc/nextjs-plugin@0.18.4", "", { "dependencies": { "@stylexswc/rs-compiler": "0.18.4", "@stylexswc/rspack-plugin": "0.18.4", "@stylexswc/turbopack-plugin": "0.18.4", "@stylexswc/webpack-plugin": "0.18.4", "next-rspack": "^16.3.0" }, "peerDependencies": { "next": ">=15.0.0" } }, "sha512-3xu+QoRIfbDQm6/86BxGHLBsdtzk58V+IfhvXzX8Ake3vW7vy9MHQnOzMVgLsp4loLz0Dk92UqDU+/lTfUM2tA=="], + + "@stylexswc/plugin-shared": ["@stylexswc/plugin-shared@0.18.4", "", { "dependencies": { "@stylexjs/babel-plugin": "^0.19.0", "@stylexswc/rs-compiler": "0.18.4", "loader-utils": "^3.3.1" } }, "sha512-f8l0SlZKh7lx2ClAP2t1SLYfumkcqYDEd457BtWuxb+KvTGEVb831n7JRFZXuDz2R/XiAZC5P7P3Hfq38gPxxg=="], + + "@stylexswc/postcss-plugin": ["@stylexswc/postcss-plugin@0.18.4", "", { "dependencies": { "@stylexjs/babel-plugin": "^0.19.0", "@stylexswc/rs-compiler": "0.18.4", "fast-glob": "^3.3.3", "glob-parent": "^6.0.2", "is-glob": "^4.0.3", "postcss": "^8.5.26" } }, "sha512-nl0M6DonnalKAUo7WaHWvHROWDgZStjuOKvslRtuaYZON5HkmZp2fklY41cChGLwHHMelIT2Br03/d5ckT6bdg=="], + + "@stylexswc/rs-compiler": ["@stylexswc/rs-compiler@0.18.4", "", { "dependencies": { "picomatch": "^4.0.4" }, "optionalDependencies": { "@stylexswc/rs-compiler-darwin-arm64": "0.18.4", "@stylexswc/rs-compiler-darwin-x64": "0.18.4", "@stylexswc/rs-compiler-linux-arm64-gnu": "0.18.4", "@stylexswc/rs-compiler-linux-x64-gnu": "0.18.4", "@stylexswc/rs-compiler-linux-x64-musl": "0.18.4", "@stylexswc/rs-compiler-win32-arm64-msvc": "0.18.4", "@stylexswc/rs-compiler-win32-x64-msvc": "0.18.4" }, "peerDependencies": { "@swc/core": "^1" } }, "sha512-kU36AZDHxxsXEw4FVM1Npt54ra8hJfdC9Y24HmXSQdGnQedK/9CJt9iRo55DB046IB3HE+ZrjkJdyL4SMtW+0A=="], + + "@stylexswc/rs-compiler-darwin-arm64": ["@stylexswc/rs-compiler-darwin-arm64@0.18.4", "", { "os": "darwin", "cpu": "arm64" }, "sha512-iY/QsW2CKDsruVtkbmWvepUqu0P+2Edoa2nEQbRplvK0y7+sHNneMjYJ5MoRpFepq7Ui9Z4fHgwBrK+j9KF74Q=="], + + "@stylexswc/rs-compiler-darwin-x64": ["@stylexswc/rs-compiler-darwin-x64@0.18.4", "", { "os": "darwin", "cpu": "x64" }, "sha512-ZFRm8y54kAdCxoyvwQb/hPRKWKoTedesjI7Fujdsc6bFWG7ayLDl0SKMNd6qcVi05lULRAcFCoenCod/j7/xQQ=="], + + "@stylexswc/rs-compiler-linux-arm64-gnu": ["@stylexswc/rs-compiler-linux-arm64-gnu@0.18.4", "", { "os": "linux", "cpu": "arm64" }, "sha512-lWcn4sAbAdVPs0qdFOnmN1j/+S99NcZwrNapteTGcd4jUv7UK60zCGJI3lO6rH/9zK087ZXbWYFmB7GX0D+KSQ=="], + + "@stylexswc/rs-compiler-linux-x64-gnu": ["@stylexswc/rs-compiler-linux-x64-gnu@0.18.4", "", { "os": "linux", "cpu": "x64" }, "sha512-L5a5IXfzgjUqXxDoM6lu7iDr9ZDo3OdyHYsX+Pc0mkpf74oWXc9CaJNSt5Rl+qWUcv3y8xgtR6UJDgG45gZwFg=="], + + "@stylexswc/rs-compiler-linux-x64-musl": ["@stylexswc/rs-compiler-linux-x64-musl@0.18.4", "", { "os": "linux", "cpu": "x64" }, "sha512-8bNqFuIAmODv6Xc0a19tfLznzIfjXjcv5A9lxCr5MfVGxELHZvV82Vd7jRYfHwezJrT6BlQA4k6iQ8YUNnvHFQ=="], + + "@stylexswc/rs-compiler-win32-arm64-msvc": ["@stylexswc/rs-compiler-win32-arm64-msvc@0.18.4", "", { "os": "win32", "cpu": "arm64" }, "sha512-I0X2SI7LhRkh0aLhnRNnf5N4145YXQ6VEQeDH/d4WVcpLb7DYrfxLQPExehzXMfUVtVMbX8CWtsC1VFzMWqouA=="], + + "@stylexswc/rs-compiler-win32-x64-msvc": ["@stylexswc/rs-compiler-win32-x64-msvc@0.18.4", "", { "os": "win32", "cpu": "x64" }, "sha512-UIGt3+J5+1xCYNvmmKO5MkfrccE+drceFJgxqk02iWqrwOdscAYgef9UvsFM70Fje4SfMoPlFL0lvj66Xv+dWw=="], + + "@stylexswc/rspack-plugin": ["@stylexswc/rspack-plugin@0.18.4", "", { "dependencies": { "@stylexswc/plugin-shared": "0.18.4" } }, "sha512-9Vrm5cl7IeRKMz1pPbu0nqW5KMQcqJ2DLmzKvHm1SlUtNqDQPgnUKqGgevdjf8BXmm/OsBfv0VHlxQeoSXm68w=="], + + "@stylexswc/turbopack-plugin": ["@stylexswc/turbopack-plugin@0.18.4", "", { "dependencies": { "@stylexswc/plugin-shared": "0.18.4", "@stylexswc/rs-compiler": "0.18.4", "loader-utils": "^3.3.1" } }, "sha512-iV/2Ff0gY/Y4W2Z3xL6AQktZY1H0Gv/DAgQho8qW9HsslLlz6udAzvfBrp84nFa3iNwS17ZbqW95yhw1Qy959Q=="], + + "@stylexswc/webpack-plugin": ["@stylexswc/webpack-plugin@0.18.4", "", { "dependencies": { "@stylexswc/plugin-shared": "0.18.4" } }, "sha512-cfagA2i2FY5XNtCgWVf7gWxqixGWdEV2GSW7N1ZQJ3PFsf8RxD1wklGInY3MNYLnj0kkD0HE314WJkSxtahWJw=="], + "@stylistic/eslint-plugin": ["@stylistic/eslint-plugin@5.10.0", "", { "dependencies": { "@eslint-community/eslint-utils": "^4.9.1", "@typescript-eslint/types": "^8.56.0", "eslint-visitor-keys": "^4.2.1", "espree": "^10.4.0", "estraverse": "^5.3.0", "picomatch": "^4.0.3" }, "peerDependencies": { "eslint": "^9.0.0 || ^10.0.0" } }, "sha512-nPK52ZHvot8Ju/0A4ucSX1dcPV2/1clx0kLcH5wDmrE4naKso7TUC/voUyU1O9OTKTrR6MYip6LP0ogEMQ9jPQ=="], "@swc/core": ["@swc/core@1.16.1", "", { "dependencies": { "@swc/counter": "^0.1.3", "@swc/types": "^0.1.28" }, "optionalDependencies": { "@swc/core-darwin-arm64": "1.16.1", "@swc/core-darwin-x64": "1.16.1", "@swc/core-linux-arm-gnueabihf": "1.16.1", "@swc/core-linux-arm64-gnu": "1.16.1", "@swc/core-linux-arm64-musl": "1.16.1", "@swc/core-linux-ppc64-gnu": "1.16.1", "@swc/core-linux-s390x-gnu": "1.16.1", "@swc/core-linux-x64-gnu": "1.16.1", "@swc/core-linux-x64-musl": "1.16.1", "@swc/core-win32-arm64-msvc": "1.16.1", "@swc/core-win32-ia32-msvc": "1.16.1", "@swc/core-win32-x64-msvc": "1.16.1" }, "peerDependencies": { "@swc/helpers": ">=0.5.17" }, "optionalPeers": ["@swc/helpers"] }, "sha512-nUaeu91O5QZKrQdaDCHd402ogUIoNOOjpkZNq0UomWK0G6gDaGmLhvddF1/3BXf5O8aLyo6ZPY/aMDWvaJQ/hg=="], @@ -2409,7 +2486,7 @@ "load-plugin": ["load-plugin@6.0.3", "", { "dependencies": { "@npmcli/config": "^8.0.0", "import-meta-resolve": "^4.0.0" } }, "sha512-kc0X2FEUZr145odl68frm+lMJuQ23+rTXYmR6TImqPtbpmXC4vVXbWKDQ9IzndA0HfyQamWfKLhzsqGSTxE63w=="], - "loader-utils": ["loader-utils@2.0.4", "", { "dependencies": { "big.js": "^5.2.2", "emojis-list": "^3.0.0", "json5": "^2.1.2" } }, "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw=="], + "loader-utils": ["loader-utils@3.3.1", "", {}, "sha512-FMJTLMXfCLMLfJxcX9PFqX5qD88Z5MRGaZCVzfuqeZSPsyiBzs+pahDQjbIWz2QIzPZz0NX9Zy4FX3lmK6YHIg=="], "local-pkg": ["local-pkg@1.2.1", "", { "dependencies": { "mlly": "^1.7.4", "pkg-types": "^2.3.0", "quansync": "^0.2.11" } }, "sha512-++gUqRDEvcnN6Zhqrr+y/CkVEHhlrR96vZn3nZZPYzMcBUyBtTKzB9NadClFIsIVSsu+3i9tfk/erqy9kAmt7Q=="], @@ -2573,8 +2650,12 @@ "next-panda-css-benchmark": ["next-panda-css-benchmark@workspace:benchmark/next-panda-css"], + "next-rspack": ["next-rspack@16.3.3", "", { "dependencies": { "@next/rspack-core": "1.0.3" } }, "sha512-8PA22pEgCdubgy7rts7vuLfC2SSs2IeHVjTxCUhYPu7KfmsXAE12jq/fpUwKDslRtCWWMFjHgK15u9NzwciOVQ=="], + "next-stylex-benchmark": ["next-stylex-benchmark@workspace:benchmark/next-stylex"], + "next-stylex-turbo-benchmark": ["next-stylex-turbo-benchmark@workspace:benchmark/next-stylex-turbo"], + "next-tailwind-benchmark": ["next-tailwind-benchmark@workspace:benchmark/next-tailwind"], "next-tailwind-turbo-benchmark": ["next-tailwind-turbo-benchmark@workspace:benchmark/next-tailwind-turbo"], @@ -3513,6 +3594,8 @@ "@kuma-ui/webpack-plugin/esbuild": ["esbuild@0.18.20", "", { "optionalDependencies": { "@esbuild/android-arm": "0.18.20", "@esbuild/android-arm64": "0.18.20", "@esbuild/android-x64": "0.18.20", "@esbuild/darwin-arm64": "0.18.20", "@esbuild/darwin-x64": "0.18.20", "@esbuild/freebsd-arm64": "0.18.20", "@esbuild/freebsd-x64": "0.18.20", "@esbuild/linux-arm": "0.18.20", "@esbuild/linux-arm64": "0.18.20", "@esbuild/linux-ia32": "0.18.20", "@esbuild/linux-loong64": "0.18.20", "@esbuild/linux-mips64el": "0.18.20", "@esbuild/linux-ppc64": "0.18.20", "@esbuild/linux-riscv64": "0.18.20", "@esbuild/linux-s390x": "0.18.20", "@esbuild/linux-x64": "0.18.20", "@esbuild/netbsd-x64": "0.18.20", "@esbuild/openbsd-x64": "0.18.20", "@esbuild/sunos-x64": "0.18.20", "@esbuild/win32-arm64": "0.18.20", "@esbuild/win32-ia32": "0.18.20", "@esbuild/win32-x64": "0.18.20" }, "bin": { "esbuild": "bin/esbuild" } }, "sha512-ceqxoedUrcayh7Y7ZX6NdbbDzGROiyVBgC4PriJThBKSVPWnnFHZAkfI1lJT8QFkOwH4qOS2SJkS4wvpGl8BpA=="], + "@next/rspack-core/@rspack/core": ["@rspack/core@2.0.4", "", { "dependencies": { "@rspack/binding": "2.0.4" }, "peerDependencies": { "@module-federation/runtime-tools": "^0.24.1 || ^2.0.0", "@swc/helpers": ">=0.5.1" }, "optionalPeers": ["@module-federation/runtime-tools", "@swc/helpers"] }, "sha512-OuxdQeeKWQpNvFBRDOcnoSaQvp6E4APM/6JJMM/k0p6oL1TEFQVGdNu3VGY4mRAsebnNBXapMVMhj+v66Bn2pg=="], + "@npmcli/git/which": ["which@4.0.0", "", { "dependencies": { "isexe": "^3.1.1" }, "bin": { "node-which": "bin/which.js" } }, "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg=="], "@npmcli/map-workspaces/glob": ["glob@10.5.0", "", { "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" } }, "sha512-DfXN8DfhJ7NH3Oe7cFmu3NCu1wKbkReJ8TorzSAFbSKrlNaQSKfIzqYqVY8zlbs2NLBbWpRiU52GX2PbaBVNkg=="], @@ -3611,6 +3694,8 @@ "@vanilla-extract/integration/@babel/plugin-syntax-typescript": ["@babel/plugin-syntax-typescript@7.29.7", "", { "dependencies": { "@babel/helper-plugin-utils": "^7.29.7" }, "peerDependencies": { "@babel/core": "^7.0.0-0" } }, "sha512-ngr+82Sh0xMz25TPCZi+nC2iTzjfCdWS2ONXTp/PtSCHCgaCNBpdMqgvJ2ccdLlClVZ7sisIgB914j/JFe+RZA=="], + "@vanilla-extract/webpack-plugin/loader-utils": ["loader-utils@2.0.4", "", { "dependencies": { "big.js": "^5.2.2", "emojis-list": "^3.0.0", "json5": "^2.1.2" } }, "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw=="], + "@vue/compiler-core/@babel/parser": ["@babel/parser@7.29.8", "", { "dependencies": { "@babel/types": "^7.29.8" }, "bin": "./bin/babel-parser.js" }, "sha512-E8lTAYNB1KW+FH+VGJuZM1ioAx2E6oVlvQFRrf5P8ZZmsiJXYAD9vTFV7yyEURNzgh1dFqMZuO6tUwcARbqFCA=="], "@vue/compiler-core/entities": ["entities@4.5.0", "", {}, "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw=="], @@ -3687,6 +3772,8 @@ "next-stylex-benchmark/typescript": ["typescript@7.0.2", "", { "optionalDependencies": { "@typescript/typescript-aix-ppc64": "7.0.2", "@typescript/typescript-darwin-arm64": "7.0.2", "@typescript/typescript-darwin-x64": "7.0.2", "@typescript/typescript-freebsd-arm64": "7.0.2", "@typescript/typescript-freebsd-x64": "7.0.2", "@typescript/typescript-linux-arm": "7.0.2", "@typescript/typescript-linux-arm64": "7.0.2", "@typescript/typescript-linux-loong64": "7.0.2", "@typescript/typescript-linux-mips64el": "7.0.2", "@typescript/typescript-linux-ppc64": "7.0.2", "@typescript/typescript-linux-riscv64": "7.0.2", "@typescript/typescript-linux-s390x": "7.0.2", "@typescript/typescript-linux-x64": "7.0.2", "@typescript/typescript-netbsd-arm64": "7.0.2", "@typescript/typescript-netbsd-x64": "7.0.2", "@typescript/typescript-openbsd-arm64": "7.0.2", "@typescript/typescript-openbsd-x64": "7.0.2", "@typescript/typescript-sunos-x64": "7.0.2", "@typescript/typescript-win32-arm64": "7.0.2", "@typescript/typescript-win32-x64": "7.0.2" }, "bin": { "tsc": "bin/tsc" } }, "sha512-8FYau96o3NKOhbjKi/qNvG/W5jhzxkbdm5sj9AbZ/5T5sWqn3hJgLfGx27sRKZWTvyzCP8dLRBTf5tBTSRVUNA=="], + "next-stylex-turbo-benchmark/typescript": ["typescript@7.0.2", "", { "optionalDependencies": { "@typescript/typescript-aix-ppc64": "7.0.2", "@typescript/typescript-darwin-arm64": "7.0.2", "@typescript/typescript-darwin-x64": "7.0.2", "@typescript/typescript-freebsd-arm64": "7.0.2", "@typescript/typescript-freebsd-x64": "7.0.2", "@typescript/typescript-linux-arm": "7.0.2", "@typescript/typescript-linux-arm64": "7.0.2", "@typescript/typescript-linux-loong64": "7.0.2", "@typescript/typescript-linux-mips64el": "7.0.2", "@typescript/typescript-linux-ppc64": "7.0.2", "@typescript/typescript-linux-riscv64": "7.0.2", "@typescript/typescript-linux-s390x": "7.0.2", "@typescript/typescript-linux-x64": "7.0.2", "@typescript/typescript-netbsd-arm64": "7.0.2", "@typescript/typescript-netbsd-x64": "7.0.2", "@typescript/typescript-openbsd-arm64": "7.0.2", "@typescript/typescript-openbsd-x64": "7.0.2", "@typescript/typescript-sunos-x64": "7.0.2", "@typescript/typescript-win32-arm64": "7.0.2", "@typescript/typescript-win32-x64": "7.0.2" }, "bin": { "tsc": "bin/tsc" } }, "sha512-8FYau96o3NKOhbjKi/qNvG/W5jhzxkbdm5sj9AbZ/5T5sWqn3hJgLfGx27sRKZWTvyzCP8dLRBTf5tBTSRVUNA=="], + "next-tailwind-benchmark/typescript": ["typescript@7.0.2", "", { "optionalDependencies": { "@typescript/typescript-aix-ppc64": "7.0.2", "@typescript/typescript-darwin-arm64": "7.0.2", "@typescript/typescript-darwin-x64": "7.0.2", "@typescript/typescript-freebsd-arm64": "7.0.2", "@typescript/typescript-freebsd-x64": "7.0.2", "@typescript/typescript-linux-arm": "7.0.2", "@typescript/typescript-linux-arm64": "7.0.2", "@typescript/typescript-linux-loong64": "7.0.2", "@typescript/typescript-linux-mips64el": "7.0.2", "@typescript/typescript-linux-ppc64": "7.0.2", "@typescript/typescript-linux-riscv64": "7.0.2", "@typescript/typescript-linux-s390x": "7.0.2", "@typescript/typescript-linux-x64": "7.0.2", "@typescript/typescript-netbsd-arm64": "7.0.2", "@typescript/typescript-netbsd-x64": "7.0.2", "@typescript/typescript-openbsd-arm64": "7.0.2", "@typescript/typescript-openbsd-x64": "7.0.2", "@typescript/typescript-sunos-x64": "7.0.2", "@typescript/typescript-win32-arm64": "7.0.2", "@typescript/typescript-win32-x64": "7.0.2" }, "bin": { "tsc": "bin/tsc" } }, "sha512-8FYau96o3NKOhbjKi/qNvG/W5jhzxkbdm5sj9AbZ/5T5sWqn3hJgLfGx27sRKZWTvyzCP8dLRBTf5tBTSRVUNA=="], "next-tailwind-turbo-benchmark/typescript": ["typescript@7.0.2", "", { "optionalDependencies": { "@typescript/typescript-aix-ppc64": "7.0.2", "@typescript/typescript-darwin-arm64": "7.0.2", "@typescript/typescript-darwin-x64": "7.0.2", "@typescript/typescript-freebsd-arm64": "7.0.2", "@typescript/typescript-freebsd-x64": "7.0.2", "@typescript/typescript-linux-arm": "7.0.2", "@typescript/typescript-linux-arm64": "7.0.2", "@typescript/typescript-linux-loong64": "7.0.2", "@typescript/typescript-linux-mips64el": "7.0.2", "@typescript/typescript-linux-ppc64": "7.0.2", "@typescript/typescript-linux-riscv64": "7.0.2", "@typescript/typescript-linux-s390x": "7.0.2", "@typescript/typescript-linux-x64": "7.0.2", "@typescript/typescript-netbsd-arm64": "7.0.2", "@typescript/typescript-netbsd-x64": "7.0.2", "@typescript/typescript-openbsd-arm64": "7.0.2", "@typescript/typescript-openbsd-x64": "7.0.2", "@typescript/typescript-sunos-x64": "7.0.2", "@typescript/typescript-win32-arm64": "7.0.2", "@typescript/typescript-win32-x64": "7.0.2" }, "bin": { "tsc": "bin/tsc" } }, "sha512-8FYau96o3NKOhbjKi/qNvG/W5jhzxkbdm5sj9AbZ/5T5sWqn3hJgLfGx27sRKZWTvyzCP8dLRBTf5tBTSRVUNA=="], @@ -5241,6 +5328,8 @@ "@kuma-ui/webpack-plugin/esbuild/@esbuild/win32-x64": ["@esbuild/win32-x64@0.18.20", "", { "os": "win32", "cpu": "x64" }, "sha512-kTdfRcSiDfQca/y9QIkng02avJ+NCaQvrMejlsB3RRv5sE9rRoeBPISaZpKxHELzRxZyLvNts1P27W3wV+8geQ=="], + "@next/rspack-core/@rspack/core/@rspack/binding": ["@rspack/binding@2.0.4", "", { "optionalDependencies": { "@rspack/binding-darwin-arm64": "2.0.4", "@rspack/binding-darwin-x64": "2.0.4", "@rspack/binding-linux-arm64-gnu": "2.0.4", "@rspack/binding-linux-arm64-musl": "2.0.4", "@rspack/binding-linux-x64-gnu": "2.0.4", "@rspack/binding-linux-x64-musl": "2.0.4", "@rspack/binding-wasm32-wasi": "2.0.4", "@rspack/binding-win32-arm64-msvc": "2.0.4", "@rspack/binding-win32-ia32-msvc": "2.0.4", "@rspack/binding-win32-x64-msvc": "2.0.4" } }, "sha512-/QeJDPUw/lWkBJESG264KA9u6/rAjvoJhKncU4rkTi5Ap45kue5HTgOzr0ufxKdd2Xl72fjFBuqlKmtFDD5LiQ=="], + "@npmcli/git/which/isexe": ["isexe@3.1.5", "", {}, "sha512-6B3tLtFqtQS4ekarvLVMZ+X+VlvQekbe4taUkf/rhVO3d/h0M2rfARm/pXLcPEsjjMsFgrFgSrhQIxcSVrBz8w=="], "@npmcli/map-workspaces/glob/path-scurry": ["path-scurry@1.11.1", "", { "dependencies": { "lru-cache": "^10.2.0", "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" } }, "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA=="], @@ -6201,6 +6290,26 @@ "@kuma-ui/compiler/ts-morph/@ts-morph/common/minimatch": ["minimatch@7.4.9", "", { "dependencies": { "brace-expansion": "^2.0.2" } }, "sha512-Brg/fp/iAVDOQoHxkuN5bEYhyQlZhxddI78yWsCbeEwTHXQjlNLtiJDUsp1GIptVqMI7/gkJMz4vVAc01mpoBw=="], + "@next/rspack-core/@rspack/core/@rspack/binding/@rspack/binding-darwin-arm64": ["@rspack/binding-darwin-arm64@2.0.4", "", { "os": "darwin", "cpu": "arm64" }, "sha512-0Q1QXFEsZfDc4opiDnb8q50KlBbC2VovViDaYlMJZBzvjAo325mh3itXPfz7YZ31M+TxRE7TUiJXH3ltiV1Hdg=="], + + "@next/rspack-core/@rspack/core/@rspack/binding/@rspack/binding-darwin-x64": ["@rspack/binding-darwin-x64@2.0.4", "", { "os": "darwin", "cpu": "x64" }, "sha512-oO5J2QYf7+H+aYRj85EiGrDOoDEE9EDDl7NgXv46iWvIF0wXowEHXqnjMFxHxRq2Vf6scT+0yYQX9blWcvMWAA=="], + + "@next/rspack-core/@rspack/core/@rspack/binding/@rspack/binding-linux-arm64-gnu": ["@rspack/binding-linux-arm64-gnu@2.0.4", "", { "os": "linux", "cpu": "arm64" }, "sha512-BEk6mIYBK4BihW9qXXITJORrVXecTlkRjrqhgefili4xjXtLdcUnxAm9sN/2oJ8m378n2h33qDh4gr2orPBFWQ=="], + + "@next/rspack-core/@rspack/core/@rspack/binding/@rspack/binding-linux-arm64-musl": ["@rspack/binding-linux-arm64-musl@2.0.4", "", { "os": "linux", "cpu": "arm64" }, "sha512-Hyt3z1RwNcSMIoaoWLN4Hb/696/O5JPukf8rXQASvf2UkC+X3ij7tr+8lMSYi3Zysi1QL375CnT4fNoABEW0JA=="], + + "@next/rspack-core/@rspack/core/@rspack/binding/@rspack/binding-linux-x64-gnu": ["@rspack/binding-linux-x64-gnu@2.0.4", "", { "os": "linux", "cpu": "x64" }, "sha512-xHorBPBZAg0Pn9Q0k9dWZ9euowieDxcSOzQ9JhTCmhDY6wZH5M/kCBFlCs/OQeW5/NUArW3x3MwEdO/0QJHMxg=="], + + "@next/rspack-core/@rspack/core/@rspack/binding/@rspack/binding-linux-x64-musl": ["@rspack/binding-linux-x64-musl@2.0.4", "", { "os": "linux", "cpu": "x64" }, "sha512-QLxEGUXofF0kVNU12Y2NT3Qi9lGs+WbnYpapVeb+2IXtrAXJfU7Rhy7lAp5GLMzYMQNrKKL9SVnTWKbODbNW9Q=="], + + "@next/rspack-core/@rspack/core/@rspack/binding/@rspack/binding-wasm32-wasi": ["@rspack/binding-wasm32-wasi@2.0.4", "", { "dependencies": { "@emnapi/core": "1.10.0", "@emnapi/runtime": "1.10.0", "@napi-rs/wasm-runtime": "1.1.4" }, "cpu": "none" }, "sha512-YhN8HkiH46ONU9tm5dyoXDImDWGpU7E4SPqGI4OyAVF0445uIChurIUmTIOYcD6cg81GGeIjozWJOcb635Dcqw=="], + + "@next/rspack-core/@rspack/core/@rspack/binding/@rspack/binding-win32-arm64-msvc": ["@rspack/binding-win32-arm64-msvc@2.0.4", "", { "os": "win32", "cpu": "arm64" }, "sha512-MUlYIz82xQRN0aoiXXyEBrNVUwiOSSFRi7nuCgUKduaSdlbPWzCY31IdtOygZ06LVp5JIGUEtyqSrjQq4FrMRw=="], + + "@next/rspack-core/@rspack/core/@rspack/binding/@rspack/binding-win32-ia32-msvc": ["@rspack/binding-win32-ia32-msvc@2.0.4", "", { "os": "win32", "cpu": "ia32" }, "sha512-D7UcIFMzlY2yhhyuW4Ej15gBWmTwUM5DxuObl3Kv31qRv/pmV3MsqUeG5m2dqLbUxzqPH87qnp0cArbkJQ1b+w=="], + + "@next/rspack-core/@rspack/core/@rspack/binding/@rspack/binding-win32-x64-msvc": ["@rspack/binding-win32-x64-msvc@2.0.4", "", { "os": "win32", "cpu": "x64" }, "sha512-MnYKPfdrAEbtpKg/1SZ6cNtzreIRyQJK4APbxLLPXENdTH5QXQkaTjLMKEeJcJ51FRhI/+yNpOUm2oTHdCQ1Og=="], + "@npmcli/map-workspaces/minimatch/brace-expansion/balanced-match": ["balanced-match@1.0.2", "", {}, "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw=="], "@npmcli/package-json/glob/minimatch/brace-expansion": ["brace-expansion@2.1.4", "", { "dependencies": { "balanced-match": "^1.0.0" } }, "sha512-hGfVzPxthbf3+2yjg/RBs60cB0FhqBS/zvdV/4wn4/BmN0bNMMHPc4V/BbFieqf1TKAGGAHnY4eSjajCl0f2Xg=="], @@ -6309,6 +6418,12 @@ "@kuma-ui/compiler/ts-morph/@ts-morph/common/minimatch/brace-expansion": ["brace-expansion@2.1.4", "", { "dependencies": { "balanced-match": "^1.0.0" } }, "sha512-hGfVzPxthbf3+2yjg/RBs60cB0FhqBS/zvdV/4wn4/BmN0bNMMHPc4V/BbFieqf1TKAGGAHnY4eSjajCl0f2Xg=="], + "@next/rspack-core/@rspack/core/@rspack/binding/@rspack/binding-wasm32-wasi/@emnapi/core": ["@emnapi/core@1.10.0", "", { "dependencies": { "@emnapi/wasi-threads": "1.2.1", "tslib": "^2.4.0" } }, "sha512-yq6OkJ4p82CAfPl0u9mQebQHKPJkY7WrIuk205cTYnYe+k2Z8YBh11FrbRG/H6ihirqcacOgl2BIO8oyMQLeXw=="], + + "@next/rspack-core/@rspack/core/@rspack/binding/@rspack/binding-wasm32-wasi/@emnapi/runtime": ["@emnapi/runtime@1.10.0", "", { "dependencies": { "tslib": "^2.4.0" } }, "sha512-ewvYlk86xUoGI0zQRNq/mC+16R1QeDlKQy21Ki3oSYXNgLb45GV1P6A0M+/s6nyCuNDqe5VpaY84BzXGwVbwFA=="], + + "@next/rspack-core/@rspack/core/@rspack/binding/@rspack/binding-wasm32-wasi/@napi-rs/wasm-runtime": ["@napi-rs/wasm-runtime@1.1.4", "", { "dependencies": { "@tybys/wasm-util": "^0.10.1" }, "peerDependencies": { "@emnapi/core": "^1.7.1", "@emnapi/runtime": "^1.7.1" } }, "sha512-3NQNNgA1YSlJb/kMH1ildASP9HW7/7kYnRI2szWJaofaS1hWmbGI4H+d3+22aGzXXN9IJ+n+GiFVcGipJP18ow=="], + "@npmcli/package-json/glob/minimatch/brace-expansion/balanced-match": ["balanced-match@1.0.2", "", {}, "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw=="], "@stylexjs/nextjs-plugin/@stylexjs/babel-plugin/@babel/traverse/@babel/code-frame/js-tokens": ["js-tokens@4.0.0", "", {}, "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ=="], From aa8b29492f80f59a7610db1143ea3213501c0bce Mon Sep 17 00:00:00 2001 From: devfive Date: Fri, 28 Aug 2026 21:30:31 +0900 Subject: [PATCH 2/5] bench: cover StyleX and Devup UI with Turbopack --- benchmark.js | 1 + .../next-stylex-turbo-devup-ui/.gitignore | 3 + .../app/globals.css | 7 + .../next-stylex-turbo-devup-ui/app/layout.tsx | 20 +++ .../next-stylex-turbo-devup-ui/app/page.tsx | 73 +++++++++ .../babel.config.cjs | 22 +++ .../next.config.mjs | 3 + .../next-stylex-turbo-devup-ui/package.json | 31 ++++ .../postcss.config.mjs | 8 + .../next-stylex-turbo-devup-ui/tsconfig.json | 28 ++++ benchmark/next-stylex-turbo/babel.config.js | 22 +++ benchmark/next-stylex-turbo/next.config.js | 2 + benchmark/next-stylex-turbo/next.config.mjs | 9 -- benchmark/next-stylex-turbo/package.json | 6 +- benchmark/next-stylex-turbo/postcss.config.js | 8 + .../next-stylex-turbo/postcss.config.mjs | 10 -- bun.lock | 151 +++++++----------- 17 files changed, 287 insertions(+), 117 deletions(-) create mode 100644 benchmark/next-stylex-turbo-devup-ui/.gitignore create mode 100644 benchmark/next-stylex-turbo-devup-ui/app/globals.css create mode 100644 benchmark/next-stylex-turbo-devup-ui/app/layout.tsx create mode 100644 benchmark/next-stylex-turbo-devup-ui/app/page.tsx create mode 100644 benchmark/next-stylex-turbo-devup-ui/babel.config.cjs create mode 100644 benchmark/next-stylex-turbo-devup-ui/next.config.mjs create mode 100644 benchmark/next-stylex-turbo-devup-ui/package.json create mode 100644 benchmark/next-stylex-turbo-devup-ui/postcss.config.mjs create mode 100644 benchmark/next-stylex-turbo-devup-ui/tsconfig.json create mode 100644 benchmark/next-stylex-turbo/babel.config.js create mode 100644 benchmark/next-stylex-turbo/next.config.js delete mode 100644 benchmark/next-stylex-turbo/next.config.mjs create mode 100644 benchmark/next-stylex-turbo/postcss.config.js delete mode 100644 benchmark/next-stylex-turbo/postcss.config.mjs diff --git a/benchmark.js b/benchmark.js index 7588cb70b..909680b68 100644 --- a/benchmark.js +++ b/benchmark.js @@ -77,6 +77,7 @@ let result = [] result.push(benchmark('tailwind')) result.push(benchmark('stylex')) result.push(benchmark('stylex-turbo')) +result.push(benchmark('stylex-turbo-devup-ui')) result.push(benchmark('vanilla-extract')) result.push(benchmark('kuma-ui')) result.push(benchmark('panda-css')) diff --git a/benchmark/next-stylex-turbo-devup-ui/.gitignore b/benchmark/next-stylex-turbo-devup-ui/.gitignore new file mode 100644 index 000000000..0d46fad00 --- /dev/null +++ b/benchmark/next-stylex-turbo-devup-ui/.gitignore @@ -0,0 +1,3 @@ +/.next/ +next-env.d.ts +df/ diff --git a/benchmark/next-stylex-turbo-devup-ui/app/globals.css b/benchmark/next-stylex-turbo-devup-ui/app/globals.css new file mode 100644 index 000000000..b24a54dbe --- /dev/null +++ b/benchmark/next-stylex-turbo-devup-ui/app/globals.css @@ -0,0 +1,7 @@ +@stylex; + +* { + box-sizing: border-box; + padding: 0; + margin: 0; +} diff --git a/benchmark/next-stylex-turbo-devup-ui/app/layout.tsx b/benchmark/next-stylex-turbo-devup-ui/app/layout.tsx new file mode 100644 index 000000000..bb3807cbf --- /dev/null +++ b/benchmark/next-stylex-turbo-devup-ui/app/layout.tsx @@ -0,0 +1,20 @@ +import './globals.css' + +import type { Metadata } from 'next' + +export const metadata: Metadata = { + title: 'StyleX Turbopack Devup UI benchmark', + description: 'StyleX benchmark built with Next.js Turbopack and Devup UI', +} + +export default function RootLayout({ + children, +}: Readonly<{ + children: React.ReactNode +}>) { + return ( + + {children} + + ) +} diff --git a/benchmark/next-stylex-turbo-devup-ui/app/page.tsx b/benchmark/next-stylex-turbo-devup-ui/app/page.tsx new file mode 100644 index 000000000..19ecf982d --- /dev/null +++ b/benchmark/next-stylex-turbo-devup-ui/app/page.tsx @@ -0,0 +1,73 @@ +'use client' + +import { Box } from '@devup-ui/react' +import * as stylex from '@stylexjs/stylex' +import { useState } from 'react' + +const styles = stylex.create({ + base: { + fontSize: 32, + position: 'relative', + paddingTop: '28px', + paddingBottom: '28px', + backgroundColor: { + default: 'blue', + ':hover': 'yellow', + }, + cursor: { + default: 'pointer', + ':hover': 'cell', + }, + }, + typo: { + color: 'var(--text)', + }, + conditional: { + color: 'green', + }, + conditional1: { + color: 'blue', + }, + hello: { + fontSize: 32, + paddingRight: '20px', + }, + hello2: { + fontSize: 12, + }, +}) + +export default function HomePage() { + const [_, setColor] = useState('yellow') + const [enabled, setEnabled] = useState(false) + + return ( +
+ + Track & field champions: + + +
hello
+
hello
+
+ text + + hello + + hello + +
+ ) +} diff --git a/benchmark/next-stylex-turbo-devup-ui/babel.config.cjs b/benchmark/next-stylex-turbo-devup-ui/babel.config.cjs new file mode 100644 index 000000000..ca5f32efd --- /dev/null +++ b/benchmark/next-stylex-turbo-devup-ui/babel.config.cjs @@ -0,0 +1,22 @@ +const path = require('node:path') + +module.exports = { + presets: ['next/babel'], + plugins: [ + [ + '@stylexjs/babel-plugin', + { + dev: process.env.NODE_ENV !== 'production', + runtimeInjection: false, + genConditionalClasses: true, + treeshakeCompensation: true, + aliases: { + '@/*': [path.join(__dirname, '*')], + }, + unstable_moduleResolution: { + type: 'commonJS', + }, + }, + ], + ], +} diff --git a/benchmark/next-stylex-turbo-devup-ui/next.config.mjs b/benchmark/next-stylex-turbo-devup-ui/next.config.mjs new file mode 100644 index 000000000..ca6aae5d6 --- /dev/null +++ b/benchmark/next-stylex-turbo-devup-ui/next.config.mjs @@ -0,0 +1,3 @@ +import { DevupUI } from '@devup-ui/next-plugin' + +export default DevupUI({}, { singleCss: true }) diff --git a/benchmark/next-stylex-turbo-devup-ui/package.json b/benchmark/next-stylex-turbo-devup-ui/package.json new file mode 100644 index 000000000..27e4bdec3 --- /dev/null +++ b/benchmark/next-stylex-turbo-devup-ui/package.json @@ -0,0 +1,31 @@ +{ + "name": "next-stylex-turbo-devup-ui-benchmark", + "version": "0.1.0", + "type": "module", + "private": true, + "scripts": { + "predev": "rimraf .next df", + "prebuild": "rimraf .next df", + "dev": "next dev", + "build": "next build --experimental-debug-memory-usage", + "start": "next start" + }, + "dependencies": { + "@devup-ui/react": "workspace:^", + "@stylexjs/stylex": "^0.19", + "next": "16.3", + "react": "19.2", + "react-dom": "19.2" + }, + "devDependencies": { + "@devup-ui/next-plugin": "workspace:^", + "@stylexjs/babel-plugin": "0.19.0", + "@stylexjs/postcss-plugin": "0.19.0", + "@types/node": "^26.2", + "@types/react": "^19.2", + "@types/react-dom": "^19.2", + "postcss": "^8.5", + "rimraf": "^6.1", + "typescript": "^7.0" + } +} diff --git a/benchmark/next-stylex-turbo-devup-ui/postcss.config.mjs b/benchmark/next-stylex-turbo-devup-ui/postcss.config.mjs new file mode 100644 index 000000000..6bf3d1b2f --- /dev/null +++ b/benchmark/next-stylex-turbo-devup-ui/postcss.config.mjs @@ -0,0 +1,8 @@ +export default { + plugins: { + '@stylexjs/postcss-plugin': { + include: ['app/**/*.{js,jsx,ts,tsx}'], + exclude: ['**/node_modules/**', '**/.next/**'], + }, + }, +} diff --git a/benchmark/next-stylex-turbo-devup-ui/tsconfig.json b/benchmark/next-stylex-turbo-devup-ui/tsconfig.json new file mode 100644 index 000000000..e1ed66411 --- /dev/null +++ b/benchmark/next-stylex-turbo-devup-ui/tsconfig.json @@ -0,0 +1,28 @@ +{ + "compilerOptions": { + "target": "es2024", + "lib": ["dom", "dom.iterable", "esnext"], + "allowJs": true, + "skipLibCheck": true, + "strict": true, + "forceConsistentCasingInFileNames": true, + "noEmit": true, + "esModuleInterop": true, + "module": "esnext", + "moduleResolution": "bundler", + "resolveJsonModule": true, + "isolatedModules": true, + "jsx": "react-jsx", + "incremental": true, + "plugins": [ + { + "name": "next" + } + ], + "paths": { + "@/*": ["./*"] + } + }, + "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", ".next/types/**/*.ts", ".next/dev/types/**/*.ts"], + "exclude": ["node_modules"] +} diff --git a/benchmark/next-stylex-turbo/babel.config.js b/benchmark/next-stylex-turbo/babel.config.js new file mode 100644 index 000000000..ca5f32efd --- /dev/null +++ b/benchmark/next-stylex-turbo/babel.config.js @@ -0,0 +1,22 @@ +const path = require('node:path') + +module.exports = { + presets: ['next/babel'], + plugins: [ + [ + '@stylexjs/babel-plugin', + { + dev: process.env.NODE_ENV !== 'production', + runtimeInjection: false, + genConditionalClasses: true, + treeshakeCompensation: true, + aliases: { + '@/*': [path.join(__dirname, '*')], + }, + unstable_moduleResolution: { + type: 'commonJS', + }, + }, + ], + ], +} diff --git a/benchmark/next-stylex-turbo/next.config.js b/benchmark/next-stylex-turbo/next.config.js new file mode 100644 index 000000000..5a877d2db --- /dev/null +++ b/benchmark/next-stylex-turbo/next.config.js @@ -0,0 +1,2 @@ +/** @type {import('next').NextConfig} */ +module.exports = {} diff --git a/benchmark/next-stylex-turbo/next.config.mjs b/benchmark/next-stylex-turbo/next.config.mjs deleted file mode 100644 index 606289322..000000000 --- a/benchmark/next-stylex-turbo/next.config.mjs +++ /dev/null @@ -1,9 +0,0 @@ -import withStylexTurbopack from '@stylexswc/nextjs-plugin/turbopack' - -export default withStylexTurbopack({ - rsOptions: { - dev: process.env.NODE_ENV !== 'production', - }, -})({ - pageExtensions: ['js', 'jsx', 'mdx', 'ts', 'tsx'], -}) diff --git a/benchmark/next-stylex-turbo/package.json b/benchmark/next-stylex-turbo/package.json index 23e16544b..1dd2cc0c8 100644 --- a/benchmark/next-stylex-turbo/package.json +++ b/benchmark/next-stylex-turbo/package.json @@ -1,7 +1,6 @@ { "name": "next-stylex-turbo-benchmark", "version": "0.1.0", - "type": "module", "private": true, "scripts": { "predev": "rimraf .next", @@ -17,9 +16,8 @@ "react-dom": "19.2" }, "devDependencies": { - "@stylexswc/nextjs-plugin": "^0.18.4", - "@stylexswc/postcss-plugin": "^0.18.4", - "@stylexswc/turbopack-plugin": "^0.18.4", + "@stylexjs/babel-plugin": "0.19.0", + "@stylexjs/postcss-plugin": "0.19.0", "@types/node": "^26.2", "@types/react": "^19.2", "@types/react-dom": "^19.2", diff --git a/benchmark/next-stylex-turbo/postcss.config.js b/benchmark/next-stylex-turbo/postcss.config.js new file mode 100644 index 000000000..3c74f0eb3 --- /dev/null +++ b/benchmark/next-stylex-turbo/postcss.config.js @@ -0,0 +1,8 @@ +module.exports = { + plugins: { + '@stylexjs/postcss-plugin': { + include: ['app/**/*.{js,jsx,ts,tsx}'], + exclude: ['**/node_modules/**', '**/.next/**'], + }, + }, +} diff --git a/benchmark/next-stylex-turbo/postcss.config.mjs b/benchmark/next-stylex-turbo/postcss.config.mjs deleted file mode 100644 index ab15599fb..000000000 --- a/benchmark/next-stylex-turbo/postcss.config.mjs +++ /dev/null @@ -1,10 +0,0 @@ -export default { - plugins: { - '@stylexswc/postcss-plugin': { - include: ['app/**/*.{js,jsx,ts,tsx}'], - rsOptions: { - dev: process.env.NODE_ENV !== 'production', - }, - }, - }, -} diff --git a/bun.lock b/bun.lock index d7bdb2e16..7468b472c 100644 --- a/bun.lock +++ b/bun.lock @@ -321,9 +321,30 @@ "react-dom": "19.2", }, "devDependencies": { - "@stylexswc/nextjs-plugin": "^0.18.4", - "@stylexswc/postcss-plugin": "^0.18.4", - "@stylexswc/turbopack-plugin": "^0.18.4", + "@stylexjs/babel-plugin": "0.19.0", + "@stylexjs/postcss-plugin": "0.19.0", + "@types/node": "^26.2", + "@types/react": "^19.2", + "@types/react-dom": "^19.2", + "postcss": "^8.5", + "rimraf": "^6.1", + "typescript": "^7.0", + }, + }, + "benchmark/next-stylex-turbo-devup-ui": { + "name": "next-stylex-turbo-devup-ui-benchmark", + "version": "0.1.0", + "dependencies": { + "@devup-ui/react": "workspace:^", + "@stylexjs/stylex": "^0.19", + "next": "16.3", + "react": "19.2", + "react-dom": "19.2", + }, + "devDependencies": { + "@devup-ui/next-plugin": "workspace:^", + "@stylexjs/babel-plugin": "0.19.0", + "@stylexjs/postcss-plugin": "0.19.0", "@types/node": "^26.2", "@types/react": "^19.2", "@types/react-dom": "^19.2", @@ -1112,34 +1133,6 @@ "@next/mdx": ["@next/mdx@16.3.2", "", { "dependencies": { "source-map": "^0.7.0" }, "peerDependencies": { "@mdx-js/loader": ">=0.15.0", "@mdx-js/react": ">=0.15.0" }, "optionalPeers": ["@mdx-js/loader", "@mdx-js/react"] }, "sha512-3Ch2ayTuBW9rBaOO9KLlRBUdsZpAm2rpuUxWrDjS9+2lcRzyWKlQoss3A66Nql3BnCBnsLE7j7+M3fR7Gssqdw=="], - "@next/rspack-binding": ["@next/rspack-binding@1.0.3", "", { "optionalDependencies": { "@next/rspack-binding-android-arm-eabi": "1.0.3", "@next/rspack-binding-android-arm64": "1.0.3", "@next/rspack-binding-darwin-arm64": "1.0.3", "@next/rspack-binding-darwin-x64": "1.0.3", "@next/rspack-binding-linux-arm-gnueabihf": "1.0.3", "@next/rspack-binding-linux-arm64-gnu": "1.0.3", "@next/rspack-binding-linux-arm64-musl": "1.0.3", "@next/rspack-binding-linux-x64-gnu": "1.0.3", "@next/rspack-binding-linux-x64-musl": "1.0.3", "@next/rspack-binding-win32-arm64-msvc": "1.0.3", "@next/rspack-binding-win32-ia32-msvc": "1.0.3", "@next/rspack-binding-win32-x64-msvc": "1.0.3" } }, "sha512-y42fIcY2Fz0RKgMJt8R9c0Asrp09Evwkkd3RpWaWXhongFlP34IGcF6YuCkZESLywkkrgNalZT8hzYNeq0QYXw=="], - - "@next/rspack-binding-android-arm-eabi": ["@next/rspack-binding-android-arm-eabi@1.0.3", "", { "os": "android", "cpu": "arm" }, "sha512-iyl9QipZl7osUbhi9GNRbZbzTQB//wvRXk6uwMSmRTYGdbSP8lKkZBjso9S5ijAubN1ulRIhe55kl8BzrmhlBA=="], - - "@next/rspack-binding-android-arm64": ["@next/rspack-binding-android-arm64@1.0.3", "", { "os": "android", "cpu": "arm64" }, "sha512-VTHUVNHWbD2HwM/hxEqiiN/X1O/rMfWbDGM+2eL1V2w3H6r5KmKC6V4m/iZJwhknxgRVxQ4R205TCD34OLEfkA=="], - - "@next/rspack-binding-darwin-arm64": ["@next/rspack-binding-darwin-arm64@1.0.3", "", { "os": "darwin", "cpu": "arm64" }, "sha512-i311ThFKKunMxSrYW6TEK+IRUzIvgyYUTkDuDF5+VTm6haoaX9XFyjkUT0lz/3g8LFJBnI20BJpsY6kNXQSb8Q=="], - - "@next/rspack-binding-darwin-x64": ["@next/rspack-binding-darwin-x64@1.0.3", "", { "os": "darwin", "cpu": "x64" }, "sha512-5JUKbG7i59lvaMUm/EYO/T9ukTcWg+daELvHJpnyeRQ3QOZO8lBG8V/qiY5cPUOtxU3D3U3nYfR4TNsAn2K0ew=="], - - "@next/rspack-binding-linux-arm-gnueabihf": ["@next/rspack-binding-linux-arm-gnueabihf@1.0.3", "", { "os": "linux", "cpu": "arm" }, "sha512-CotyzAc/XMVBq/Ju0eeFqVJeLk5YgBf/qnY0pTiEIf/mqfr1/BWOkbnFtHt/SO6jzVSWIAC33iZ3TLfXn3bvyQ=="], - - "@next/rspack-binding-linux-arm64-gnu": ["@next/rspack-binding-linux-arm64-gnu@1.0.3", "", { "os": "linux", "cpu": "arm64" }, "sha512-jcXWBqE+usDtN4mxenWsfu9Krd7+lBaL977G1nx00M9PXQZX8M52V6TLTVpADIOUa6HfAhGCg0QPhIap8lG1gg=="], - - "@next/rspack-binding-linux-arm64-musl": ["@next/rspack-binding-linux-arm64-musl@1.0.3", "", { "os": "linux", "cpu": "arm64" }, "sha512-p8CvSpz1tP/kewuPfi513RBDdoWyInqK3d8tVWJbUzxhwjMEc95+4w+OzvEDMlioN5azq3l4mVCm/sWH0qBqOg=="], - - "@next/rspack-binding-linux-x64-gnu": ["@next/rspack-binding-linux-x64-gnu@1.0.3", "", { "os": "linux", "cpu": "x64" }, "sha512-SViZ7oKgR7Ps+SyhJ0WsQyLxTTw2m0SE2KiepadxmKOPmaich8hj5trUKHefXg5cBPJ5eKAtOozpCNpLD0JdRg=="], - - "@next/rspack-binding-linux-x64-musl": ["@next/rspack-binding-linux-x64-musl@1.0.3", "", { "os": "linux", "cpu": "x64" }, "sha512-XEwJWAUhipCGFYb2m1bNZy8uR/rhrGTeezCkZ4qBR3CmZpuGkAS4BBJrMaROmo+hZ73xFNAO+iXLoEacISooqw=="], - - "@next/rspack-binding-win32-arm64-msvc": ["@next/rspack-binding-win32-arm64-msvc@1.0.3", "", { "os": "win32", "cpu": "arm64" }, "sha512-QR6VH6rf2uRmVoqJ3SCmTqdqMPFpXWfUDrpKTce4Ud9U/SpTRAcYkfeA1pIvypCU68vhgk+0/6vR6GPeN0aR7A=="], - - "@next/rspack-binding-win32-ia32-msvc": ["@next/rspack-binding-win32-ia32-msvc@1.0.3", "", { "os": "win32", "cpu": "ia32" }, "sha512-ylVnRMayUex5kfe7nBo6mum6mSBhaTeCJnr9Carmi+7/3h03MXD8HRkWupfpsAYjkpQU+vskONgVvZ/9mNS4oA=="], - - "@next/rspack-binding-win32-x64-msvc": ["@next/rspack-binding-win32-x64-msvc@1.0.3", "", { "os": "win32", "cpu": "x64" }, "sha512-fED9bUmsqRqtfQENWZhbnwTkWyWYL6oLoqM0IiASpzB4khBlxBlbPqFhXB5IJWzFHuYbLNfjuJh7SU9k8Rih2Q=="], - - "@next/rspack-core": ["@next/rspack-core@1.0.3", "", { "dependencies": { "@next/rspack-binding": "1.0.3", "@rspack/core": "2.0.4" } }, "sha512-4EDUKhRIuljVhTDjy8DqGvTrWrZIFUHffdAThSB3OAEyCPm+pgM3JedSodm00Od5ox0PpsZ0nWY2sbwsJofg2A=="], - "@next/swc-darwin-arm64": ["@next/swc-darwin-arm64@16.3.1", "", { "os": "darwin", "cpu": "arm64" }, "sha512-ABMIu2zQ7cnNIHm5ivKGwZwUrm0pAai3yiJ/gK/rF1c1VP9UOnj7XECbMKFdVKp9I9eMYq9NoDs1WXOoowxzJw=="], "@next/swc-darwin-x64": ["@next/swc-darwin-x64@16.3.1", "", { "os": "darwin", "cpu": "x64" }, "sha512-gNG21e/UnrroeScbY/QndUEdl0mF1FRibW7BBeYUz/5ABCepjqDdEdgr592vpzMtCn/m7FTjYq3TN4TpyDnutw=="], @@ -1452,38 +1445,12 @@ "@stylexjs/open-props": ["@stylexjs/open-props@0.11.1", "", { "dependencies": { "@stylexjs/stylex": "0.11.1" } }, "sha512-UYeJV34LOmDZ1igQknB+iM3JMg+lbncHr/zG7i1tBwwQslNNWOMM7iR4hwSUvczQYcW5G8vMAorP/2j4T8XBjA=="], + "@stylexjs/postcss-plugin": ["@stylexjs/postcss-plugin@0.19.0", "", { "dependencies": { "@babel/core": "^7.26.8", "@stylexjs/babel-plugin": "0.19.0", "fast-glob": "^3.3.2", "glob-parent": "^6.0.2", "is-glob": "^4.0.3", "postcss": "^8.5.10" } }, "sha512-veURheoAg6LcAOZ7ik9CaBwCRS3dl1AHRYq6X5DnknYjF+vS9HhH3NZDw+dMgdFY0FYWUOwnKKAdi9m/4+2bLQ=="], + "@stylexjs/shared": ["@stylexjs/shared@0.19.0", "", {}, "sha512-7Yym70cQH5sPzJHgzJX3FkL9ZCptbC3IbiRijN9YLYU/5OywB/3c519Xv1DOzvxqjv8urSxh98/9HxLaPG7sDg=="], "@stylexjs/stylex": ["@stylexjs/stylex@0.19.0", "", { "dependencies": { "css-mediaquery": "^0.1.2", "invariant": "^2.2.4", "styleq": "0.2.1" } }, "sha512-CnUFp7YMaDLDeemsWOfJgoC/gKM5P/yBNMcpJaE6ChJmXr7s0DJwSeGTTlHJcqqwN9OW1qGtmARWLFhGZN1pTA=="], - "@stylexswc/nextjs-plugin": ["@stylexswc/nextjs-plugin@0.18.4", "", { "dependencies": { "@stylexswc/rs-compiler": "0.18.4", "@stylexswc/rspack-plugin": "0.18.4", "@stylexswc/turbopack-plugin": "0.18.4", "@stylexswc/webpack-plugin": "0.18.4", "next-rspack": "^16.3.0" }, "peerDependencies": { "next": ">=15.0.0" } }, "sha512-3xu+QoRIfbDQm6/86BxGHLBsdtzk58V+IfhvXzX8Ake3vW7vy9MHQnOzMVgLsp4loLz0Dk92UqDU+/lTfUM2tA=="], - - "@stylexswc/plugin-shared": ["@stylexswc/plugin-shared@0.18.4", "", { "dependencies": { "@stylexjs/babel-plugin": "^0.19.0", "@stylexswc/rs-compiler": "0.18.4", "loader-utils": "^3.3.1" } }, "sha512-f8l0SlZKh7lx2ClAP2t1SLYfumkcqYDEd457BtWuxb+KvTGEVb831n7JRFZXuDz2R/XiAZC5P7P3Hfq38gPxxg=="], - - "@stylexswc/postcss-plugin": ["@stylexswc/postcss-plugin@0.18.4", "", { "dependencies": { "@stylexjs/babel-plugin": "^0.19.0", "@stylexswc/rs-compiler": "0.18.4", "fast-glob": "^3.3.3", "glob-parent": "^6.0.2", "is-glob": "^4.0.3", "postcss": "^8.5.26" } }, "sha512-nl0M6DonnalKAUo7WaHWvHROWDgZStjuOKvslRtuaYZON5HkmZp2fklY41cChGLwHHMelIT2Br03/d5ckT6bdg=="], - - "@stylexswc/rs-compiler": ["@stylexswc/rs-compiler@0.18.4", "", { "dependencies": { "picomatch": "^4.0.4" }, "optionalDependencies": { "@stylexswc/rs-compiler-darwin-arm64": "0.18.4", "@stylexswc/rs-compiler-darwin-x64": "0.18.4", "@stylexswc/rs-compiler-linux-arm64-gnu": "0.18.4", "@stylexswc/rs-compiler-linux-x64-gnu": "0.18.4", "@stylexswc/rs-compiler-linux-x64-musl": "0.18.4", "@stylexswc/rs-compiler-win32-arm64-msvc": "0.18.4", "@stylexswc/rs-compiler-win32-x64-msvc": "0.18.4" }, "peerDependencies": { "@swc/core": "^1" } }, "sha512-kU36AZDHxxsXEw4FVM1Npt54ra8hJfdC9Y24HmXSQdGnQedK/9CJt9iRo55DB046IB3HE+ZrjkJdyL4SMtW+0A=="], - - "@stylexswc/rs-compiler-darwin-arm64": ["@stylexswc/rs-compiler-darwin-arm64@0.18.4", "", { "os": "darwin", "cpu": "arm64" }, "sha512-iY/QsW2CKDsruVtkbmWvepUqu0P+2Edoa2nEQbRplvK0y7+sHNneMjYJ5MoRpFepq7Ui9Z4fHgwBrK+j9KF74Q=="], - - "@stylexswc/rs-compiler-darwin-x64": ["@stylexswc/rs-compiler-darwin-x64@0.18.4", "", { "os": "darwin", "cpu": "x64" }, "sha512-ZFRm8y54kAdCxoyvwQb/hPRKWKoTedesjI7Fujdsc6bFWG7ayLDl0SKMNd6qcVi05lULRAcFCoenCod/j7/xQQ=="], - - "@stylexswc/rs-compiler-linux-arm64-gnu": ["@stylexswc/rs-compiler-linux-arm64-gnu@0.18.4", "", { "os": "linux", "cpu": "arm64" }, "sha512-lWcn4sAbAdVPs0qdFOnmN1j/+S99NcZwrNapteTGcd4jUv7UK60zCGJI3lO6rH/9zK087ZXbWYFmB7GX0D+KSQ=="], - - "@stylexswc/rs-compiler-linux-x64-gnu": ["@stylexswc/rs-compiler-linux-x64-gnu@0.18.4", "", { "os": "linux", "cpu": "x64" }, "sha512-L5a5IXfzgjUqXxDoM6lu7iDr9ZDo3OdyHYsX+Pc0mkpf74oWXc9CaJNSt5Rl+qWUcv3y8xgtR6UJDgG45gZwFg=="], - - "@stylexswc/rs-compiler-linux-x64-musl": ["@stylexswc/rs-compiler-linux-x64-musl@0.18.4", "", { "os": "linux", "cpu": "x64" }, "sha512-8bNqFuIAmODv6Xc0a19tfLznzIfjXjcv5A9lxCr5MfVGxELHZvV82Vd7jRYfHwezJrT6BlQA4k6iQ8YUNnvHFQ=="], - - "@stylexswc/rs-compiler-win32-arm64-msvc": ["@stylexswc/rs-compiler-win32-arm64-msvc@0.18.4", "", { "os": "win32", "cpu": "arm64" }, "sha512-I0X2SI7LhRkh0aLhnRNnf5N4145YXQ6VEQeDH/d4WVcpLb7DYrfxLQPExehzXMfUVtVMbX8CWtsC1VFzMWqouA=="], - - "@stylexswc/rs-compiler-win32-x64-msvc": ["@stylexswc/rs-compiler-win32-x64-msvc@0.18.4", "", { "os": "win32", "cpu": "x64" }, "sha512-UIGt3+J5+1xCYNvmmKO5MkfrccE+drceFJgxqk02iWqrwOdscAYgef9UvsFM70Fje4SfMoPlFL0lvj66Xv+dWw=="], - - "@stylexswc/rspack-plugin": ["@stylexswc/rspack-plugin@0.18.4", "", { "dependencies": { "@stylexswc/plugin-shared": "0.18.4" } }, "sha512-9Vrm5cl7IeRKMz1pPbu0nqW5KMQcqJ2DLmzKvHm1SlUtNqDQPgnUKqGgevdjf8BXmm/OsBfv0VHlxQeoSXm68w=="], - - "@stylexswc/turbopack-plugin": ["@stylexswc/turbopack-plugin@0.18.4", "", { "dependencies": { "@stylexswc/plugin-shared": "0.18.4", "@stylexswc/rs-compiler": "0.18.4", "loader-utils": "^3.3.1" } }, "sha512-iV/2Ff0gY/Y4W2Z3xL6AQktZY1H0Gv/DAgQho8qW9HsslLlz6udAzvfBrp84nFa3iNwS17ZbqW95yhw1Qy959Q=="], - - "@stylexswc/webpack-plugin": ["@stylexswc/webpack-plugin@0.18.4", "", { "dependencies": { "@stylexswc/plugin-shared": "0.18.4" } }, "sha512-cfagA2i2FY5XNtCgWVf7gWxqixGWdEV2GSW7N1ZQJ3PFsf8RxD1wklGInY3MNYLnj0kkD0HE314WJkSxtahWJw=="], - "@stylistic/eslint-plugin": ["@stylistic/eslint-plugin@5.10.0", "", { "dependencies": { "@eslint-community/eslint-utils": "^4.9.1", "@typescript-eslint/types": "^8.56.0", "eslint-visitor-keys": "^4.2.1", "espree": "^10.4.0", "estraverse": "^5.3.0", "picomatch": "^4.0.3" }, "peerDependencies": { "eslint": "^9.0.0 || ^10.0.0" } }, "sha512-nPK52ZHvot8Ju/0A4ucSX1dcPV2/1clx0kLcH5wDmrE4naKso7TUC/voUyU1O9OTKTrR6MYip6LP0ogEMQ9jPQ=="], "@swc/core": ["@swc/core@1.16.1", "", { "dependencies": { "@swc/counter": "^0.1.3", "@swc/types": "^0.1.28" }, "optionalDependencies": { "@swc/core-darwin-arm64": "1.16.1", "@swc/core-darwin-x64": "1.16.1", "@swc/core-linux-arm-gnueabihf": "1.16.1", "@swc/core-linux-arm64-gnu": "1.16.1", "@swc/core-linux-arm64-musl": "1.16.1", "@swc/core-linux-ppc64-gnu": "1.16.1", "@swc/core-linux-s390x-gnu": "1.16.1", "@swc/core-linux-x64-gnu": "1.16.1", "@swc/core-linux-x64-musl": "1.16.1", "@swc/core-win32-arm64-msvc": "1.16.1", "@swc/core-win32-ia32-msvc": "1.16.1", "@swc/core-win32-x64-msvc": "1.16.1" }, "peerDependencies": { "@swc/helpers": ">=0.5.17" }, "optionalPeers": ["@swc/helpers"] }, "sha512-nUaeu91O5QZKrQdaDCHd402ogUIoNOOjpkZNq0UomWK0G6gDaGmLhvddF1/3BXf5O8aLyo6ZPY/aMDWvaJQ/hg=="], @@ -2486,7 +2453,7 @@ "load-plugin": ["load-plugin@6.0.3", "", { "dependencies": { "@npmcli/config": "^8.0.0", "import-meta-resolve": "^4.0.0" } }, "sha512-kc0X2FEUZr145odl68frm+lMJuQ23+rTXYmR6TImqPtbpmXC4vVXbWKDQ9IzndA0HfyQamWfKLhzsqGSTxE63w=="], - "loader-utils": ["loader-utils@3.3.1", "", {}, "sha512-FMJTLMXfCLMLfJxcX9PFqX5qD88Z5MRGaZCVzfuqeZSPsyiBzs+pahDQjbIWz2QIzPZz0NX9Zy4FX3lmK6YHIg=="], + "loader-utils": ["loader-utils@2.0.4", "", { "dependencies": { "big.js": "^5.2.2", "emojis-list": "^3.0.0", "json5": "^2.1.2" } }, "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw=="], "local-pkg": ["local-pkg@1.2.1", "", { "dependencies": { "mlly": "^1.7.4", "pkg-types": "^2.3.0", "quansync": "^0.2.11" } }, "sha512-++gUqRDEvcnN6Zhqrr+y/CkVEHhlrR96vZn3nZZPYzMcBUyBtTKzB9NadClFIsIVSsu+3i9tfk/erqy9kAmt7Q=="], @@ -2650,12 +2617,12 @@ "next-panda-css-benchmark": ["next-panda-css-benchmark@workspace:benchmark/next-panda-css"], - "next-rspack": ["next-rspack@16.3.3", "", { "dependencies": { "@next/rspack-core": "1.0.3" } }, "sha512-8PA22pEgCdubgy7rts7vuLfC2SSs2IeHVjTxCUhYPu7KfmsXAE12jq/fpUwKDslRtCWWMFjHgK15u9NzwciOVQ=="], - "next-stylex-benchmark": ["next-stylex-benchmark@workspace:benchmark/next-stylex"], "next-stylex-turbo-benchmark": ["next-stylex-turbo-benchmark@workspace:benchmark/next-stylex-turbo"], + "next-stylex-turbo-devup-ui-benchmark": ["next-stylex-turbo-devup-ui-benchmark@workspace:benchmark/next-stylex-turbo-devup-ui"], + "next-tailwind-benchmark": ["next-tailwind-benchmark@workspace:benchmark/next-tailwind"], "next-tailwind-turbo-benchmark": ["next-tailwind-turbo-benchmark@workspace:benchmark/next-tailwind-turbo"], @@ -3594,8 +3561,6 @@ "@kuma-ui/webpack-plugin/esbuild": ["esbuild@0.18.20", "", { "optionalDependencies": { "@esbuild/android-arm": "0.18.20", "@esbuild/android-arm64": "0.18.20", "@esbuild/android-x64": "0.18.20", "@esbuild/darwin-arm64": "0.18.20", "@esbuild/darwin-x64": "0.18.20", "@esbuild/freebsd-arm64": "0.18.20", "@esbuild/freebsd-x64": "0.18.20", "@esbuild/linux-arm": "0.18.20", "@esbuild/linux-arm64": "0.18.20", "@esbuild/linux-ia32": "0.18.20", "@esbuild/linux-loong64": "0.18.20", "@esbuild/linux-mips64el": "0.18.20", "@esbuild/linux-ppc64": "0.18.20", "@esbuild/linux-riscv64": "0.18.20", "@esbuild/linux-s390x": "0.18.20", "@esbuild/linux-x64": "0.18.20", "@esbuild/netbsd-x64": "0.18.20", "@esbuild/openbsd-x64": "0.18.20", "@esbuild/sunos-x64": "0.18.20", "@esbuild/win32-arm64": "0.18.20", "@esbuild/win32-ia32": "0.18.20", "@esbuild/win32-x64": "0.18.20" }, "bin": { "esbuild": "bin/esbuild" } }, "sha512-ceqxoedUrcayh7Y7ZX6NdbbDzGROiyVBgC4PriJThBKSVPWnnFHZAkfI1lJT8QFkOwH4qOS2SJkS4wvpGl8BpA=="], - "@next/rspack-core/@rspack/core": ["@rspack/core@2.0.4", "", { "dependencies": { "@rspack/binding": "2.0.4" }, "peerDependencies": { "@module-federation/runtime-tools": "^0.24.1 || ^2.0.0", "@swc/helpers": ">=0.5.1" }, "optionalPeers": ["@module-federation/runtime-tools", "@swc/helpers"] }, "sha512-OuxdQeeKWQpNvFBRDOcnoSaQvp6E4APM/6JJMM/k0p6oL1TEFQVGdNu3VGY4mRAsebnNBXapMVMhj+v66Bn2pg=="], - "@npmcli/git/which": ["which@4.0.0", "", { "dependencies": { "isexe": "^3.1.1" }, "bin": { "node-which": "bin/which.js" } }, "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg=="], "@npmcli/map-workspaces/glob": ["glob@10.5.0", "", { "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" } }, "sha512-DfXN8DfhJ7NH3Oe7cFmu3NCu1wKbkReJ8TorzSAFbSKrlNaQSKfIzqYqVY8zlbs2NLBbWpRiU52GX2PbaBVNkg=="], @@ -3660,6 +3625,8 @@ "@stylexjs/open-props/@stylexjs/stylex": ["@stylexjs/stylex@0.11.1", "", { "dependencies": { "css-mediaquery": "^0.1.2", "invariant": "^2.2.4", "styleq": "0.2.1" } }, "sha512-1OofsiCP2DYV+Cw/iIuHYTAJRy34TtxQt0FDuQGTnNH915hb6NkPmX6iPa++9t4KP3HWR9oVRmAHkpP58BIYbw=="], + "@stylexjs/postcss-plugin/@babel/core": ["@babel/core@7.29.7", "", { "dependencies": { "@babel/code-frame": "^7.29.7", "@babel/generator": "^7.29.7", "@babel/helper-compilation-targets": "^7.29.7", "@babel/helper-module-transforms": "^7.29.7", "@babel/helpers": "^7.29.7", "@babel/parser": "^7.29.7", "@babel/template": "^7.29.7", "@babel/traverse": "^7.29.7", "@babel/types": "^7.29.7", "@jridgewell/remapping": "^2.3.5", "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", "json5": "^2.2.3", "semver": "^6.3.1" } }, "sha512-RgHBCvtjbOK2gXSNBNIkNoEc9qoVEtau3hj8gEqKQuL3HZAibKarWFEI3Lfm6EYKkLalOh8eSrj9b+ch9H/VBA=="], + "@stylistic/eslint-plugin/eslint-visitor-keys": ["eslint-visitor-keys@4.2.1", "", {}, "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ=="], "@stylistic/eslint-plugin/espree": ["espree@10.4.0", "", { "dependencies": { "acorn": "^8.15.0", "acorn-jsx": "^5.3.2", "eslint-visitor-keys": "^4.2.1" } }, "sha512-j6PAQ2uUr79PZhBjP5C5fhl8e39FmRnOjsD5lGnWrFU8i2G776tBK7+nP8KuQUTTyAZUwfQqXAgrVH5MbH9CYQ=="], @@ -3694,8 +3661,6 @@ "@vanilla-extract/integration/@babel/plugin-syntax-typescript": ["@babel/plugin-syntax-typescript@7.29.7", "", { "dependencies": { "@babel/helper-plugin-utils": "^7.29.7" }, "peerDependencies": { "@babel/core": "^7.0.0-0" } }, "sha512-ngr+82Sh0xMz25TPCZi+nC2iTzjfCdWS2ONXTp/PtSCHCgaCNBpdMqgvJ2ccdLlClVZ7sisIgB914j/JFe+RZA=="], - "@vanilla-extract/webpack-plugin/loader-utils": ["loader-utils@2.0.4", "", { "dependencies": { "big.js": "^5.2.2", "emojis-list": "^3.0.0", "json5": "^2.1.2" } }, "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw=="], - "@vue/compiler-core/@babel/parser": ["@babel/parser@7.29.8", "", { "dependencies": { "@babel/types": "^7.29.8" }, "bin": "./bin/babel-parser.js" }, "sha512-E8lTAYNB1KW+FH+VGJuZM1ioAx2E6oVlvQFRrf5P8ZZmsiJXYAD9vTFV7yyEURNzgh1dFqMZuO6tUwcARbqFCA=="], "@vue/compiler-core/entities": ["entities@4.5.0", "", {}, "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw=="], @@ -3774,6 +3739,8 @@ "next-stylex-turbo-benchmark/typescript": ["typescript@7.0.2", "", { "optionalDependencies": { "@typescript/typescript-aix-ppc64": "7.0.2", "@typescript/typescript-darwin-arm64": "7.0.2", "@typescript/typescript-darwin-x64": "7.0.2", "@typescript/typescript-freebsd-arm64": "7.0.2", "@typescript/typescript-freebsd-x64": "7.0.2", "@typescript/typescript-linux-arm": "7.0.2", "@typescript/typescript-linux-arm64": "7.0.2", "@typescript/typescript-linux-loong64": "7.0.2", "@typescript/typescript-linux-mips64el": "7.0.2", "@typescript/typescript-linux-ppc64": "7.0.2", "@typescript/typescript-linux-riscv64": "7.0.2", "@typescript/typescript-linux-s390x": "7.0.2", "@typescript/typescript-linux-x64": "7.0.2", "@typescript/typescript-netbsd-arm64": "7.0.2", "@typescript/typescript-netbsd-x64": "7.0.2", "@typescript/typescript-openbsd-arm64": "7.0.2", "@typescript/typescript-openbsd-x64": "7.0.2", "@typescript/typescript-sunos-x64": "7.0.2", "@typescript/typescript-win32-arm64": "7.0.2", "@typescript/typescript-win32-x64": "7.0.2" }, "bin": { "tsc": "bin/tsc" } }, "sha512-8FYau96o3NKOhbjKi/qNvG/W5jhzxkbdm5sj9AbZ/5T5sWqn3hJgLfGx27sRKZWTvyzCP8dLRBTf5tBTSRVUNA=="], + "next-stylex-turbo-devup-ui-benchmark/typescript": ["typescript@7.0.2", "", { "optionalDependencies": { "@typescript/typescript-aix-ppc64": "7.0.2", "@typescript/typescript-darwin-arm64": "7.0.2", "@typescript/typescript-darwin-x64": "7.0.2", "@typescript/typescript-freebsd-arm64": "7.0.2", "@typescript/typescript-freebsd-x64": "7.0.2", "@typescript/typescript-linux-arm": "7.0.2", "@typescript/typescript-linux-arm64": "7.0.2", "@typescript/typescript-linux-loong64": "7.0.2", "@typescript/typescript-linux-mips64el": "7.0.2", "@typescript/typescript-linux-ppc64": "7.0.2", "@typescript/typescript-linux-riscv64": "7.0.2", "@typescript/typescript-linux-s390x": "7.0.2", "@typescript/typescript-linux-x64": "7.0.2", "@typescript/typescript-netbsd-arm64": "7.0.2", "@typescript/typescript-netbsd-x64": "7.0.2", "@typescript/typescript-openbsd-arm64": "7.0.2", "@typescript/typescript-openbsd-x64": "7.0.2", "@typescript/typescript-sunos-x64": "7.0.2", "@typescript/typescript-win32-arm64": "7.0.2", "@typescript/typescript-win32-x64": "7.0.2" }, "bin": { "tsc": "bin/tsc" } }, "sha512-8FYau96o3NKOhbjKi/qNvG/W5jhzxkbdm5sj9AbZ/5T5sWqn3hJgLfGx27sRKZWTvyzCP8dLRBTf5tBTSRVUNA=="], + "next-tailwind-benchmark/typescript": ["typescript@7.0.2", "", { "optionalDependencies": { "@typescript/typescript-aix-ppc64": "7.0.2", "@typescript/typescript-darwin-arm64": "7.0.2", "@typescript/typescript-darwin-x64": "7.0.2", "@typescript/typescript-freebsd-arm64": "7.0.2", "@typescript/typescript-freebsd-x64": "7.0.2", "@typescript/typescript-linux-arm": "7.0.2", "@typescript/typescript-linux-arm64": "7.0.2", "@typescript/typescript-linux-loong64": "7.0.2", "@typescript/typescript-linux-mips64el": "7.0.2", "@typescript/typescript-linux-ppc64": "7.0.2", "@typescript/typescript-linux-riscv64": "7.0.2", "@typescript/typescript-linux-s390x": "7.0.2", "@typescript/typescript-linux-x64": "7.0.2", "@typescript/typescript-netbsd-arm64": "7.0.2", "@typescript/typescript-netbsd-x64": "7.0.2", "@typescript/typescript-openbsd-arm64": "7.0.2", "@typescript/typescript-openbsd-x64": "7.0.2", "@typescript/typescript-sunos-x64": "7.0.2", "@typescript/typescript-win32-arm64": "7.0.2", "@typescript/typescript-win32-x64": "7.0.2" }, "bin": { "tsc": "bin/tsc" } }, "sha512-8FYau96o3NKOhbjKi/qNvG/W5jhzxkbdm5sj9AbZ/5T5sWqn3hJgLfGx27sRKZWTvyzCP8dLRBTf5tBTSRVUNA=="], "next-tailwind-turbo-benchmark/typescript": ["typescript@7.0.2", "", { "optionalDependencies": { "@typescript/typescript-aix-ppc64": "7.0.2", "@typescript/typescript-darwin-arm64": "7.0.2", "@typescript/typescript-darwin-x64": "7.0.2", "@typescript/typescript-freebsd-arm64": "7.0.2", "@typescript/typescript-freebsd-x64": "7.0.2", "@typescript/typescript-linux-arm": "7.0.2", "@typescript/typescript-linux-arm64": "7.0.2", "@typescript/typescript-linux-loong64": "7.0.2", "@typescript/typescript-linux-mips64el": "7.0.2", "@typescript/typescript-linux-ppc64": "7.0.2", "@typescript/typescript-linux-riscv64": "7.0.2", "@typescript/typescript-linux-s390x": "7.0.2", "@typescript/typescript-linux-x64": "7.0.2", "@typescript/typescript-netbsd-arm64": "7.0.2", "@typescript/typescript-netbsd-x64": "7.0.2", "@typescript/typescript-openbsd-arm64": "7.0.2", "@typescript/typescript-openbsd-x64": "7.0.2", "@typescript/typescript-sunos-x64": "7.0.2", "@typescript/typescript-win32-arm64": "7.0.2", "@typescript/typescript-win32-x64": "7.0.2" }, "bin": { "tsc": "bin/tsc" } }, "sha512-8FYau96o3NKOhbjKi/qNvG/W5jhzxkbdm5sj9AbZ/5T5sWqn3hJgLfGx27sRKZWTvyzCP8dLRBTf5tBTSRVUNA=="], @@ -5328,8 +5295,6 @@ "@kuma-ui/webpack-plugin/esbuild/@esbuild/win32-x64": ["@esbuild/win32-x64@0.18.20", "", { "os": "win32", "cpu": "x64" }, "sha512-kTdfRcSiDfQca/y9QIkng02avJ+NCaQvrMejlsB3RRv5sE9rRoeBPISaZpKxHELzRxZyLvNts1P27W3wV+8geQ=="], - "@next/rspack-core/@rspack/core/@rspack/binding": ["@rspack/binding@2.0.4", "", { "optionalDependencies": { "@rspack/binding-darwin-arm64": "2.0.4", "@rspack/binding-darwin-x64": "2.0.4", "@rspack/binding-linux-arm64-gnu": "2.0.4", "@rspack/binding-linux-arm64-musl": "2.0.4", "@rspack/binding-linux-x64-gnu": "2.0.4", "@rspack/binding-linux-x64-musl": "2.0.4", "@rspack/binding-wasm32-wasi": "2.0.4", "@rspack/binding-win32-arm64-msvc": "2.0.4", "@rspack/binding-win32-ia32-msvc": "2.0.4", "@rspack/binding-win32-x64-msvc": "2.0.4" } }, "sha512-/QeJDPUw/lWkBJESG264KA9u6/rAjvoJhKncU4rkTi5Ap45kue5HTgOzr0ufxKdd2Xl72fjFBuqlKmtFDD5LiQ=="], - "@npmcli/git/which/isexe": ["isexe@3.1.5", "", {}, "sha512-6B3tLtFqtQS4ekarvLVMZ+X+VlvQekbe4taUkf/rhVO3d/h0M2rfARm/pXLcPEsjjMsFgrFgSrhQIxcSVrBz8w=="], "@npmcli/map-workspaces/glob/path-scurry": ["path-scurry@1.11.1", "", { "dependencies": { "lru-cache": "^10.2.0", "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" } }, "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA=="], @@ -5472,6 +5437,22 @@ "@stylexjs/nextjs-plugin/@stylexjs/babel-plugin/@stylexjs/stylex": ["@stylexjs/stylex@0.11.1", "", { "dependencies": { "css-mediaquery": "^0.1.2", "invariant": "^2.2.4", "styleq": "0.2.1" } }, "sha512-1OofsiCP2DYV+Cw/iIuHYTAJRy34TtxQt0FDuQGTnNH915hb6NkPmX6iPa++9t4KP3HWR9oVRmAHkpP58BIYbw=="], + "@stylexjs/postcss-plugin/@babel/core/@babel/code-frame": ["@babel/code-frame@7.29.7", "", { "dependencies": { "@babel/helper-validator-identifier": "^7.29.7", "js-tokens": "^4.0.0", "picocolors": "^1.1.1" } }, "sha512-Aup7aUOfpbAUg2ROOJN6Iw5f9DMBlzu0mIkm/malLQFN/YQgO48wCj0Kxa3sEHJvPVFg7siR+qRInwXd2qhQKw=="], + + "@stylexjs/postcss-plugin/@babel/core/@babel/generator": ["@babel/generator@7.29.8", "", { "dependencies": { "@babel/parser": "^7.29.8", "@babel/types": "^7.29.8", "@jridgewell/gen-mapping": "^0.3.12", "@jridgewell/trace-mapping": "^0.3.28", "jsesc": "^3.0.2" } }, "sha512-gZbepsdh3WDtgZKWL+vTPh71LSBrm/Y4/QDZBVCcYfmeTEEuoOYwlSy+G1StfJg+/Zy550u/3TATbm7qDbbMtg=="], + + "@stylexjs/postcss-plugin/@babel/core/@babel/helper-compilation-targets": ["@babel/helper-compilation-targets@7.29.7", "", { "dependencies": { "@babel/compat-data": "^7.29.7", "@babel/helper-validator-option": "^7.29.7", "browserslist": "^4.24.0", "lru-cache": "^5.1.1", "semver": "^6.3.1" } }, "sha512-wem6WaBj4NaVYVdNhLPPVacES6ZJ+KBBfSkTMD3YZxbP3rm3Di85tJU5ljaUNhaOynt+Aj0xruhYuzQBt8n71g=="], + + "@stylexjs/postcss-plugin/@babel/core/@babel/helpers": ["@babel/helpers@7.29.7", "", { "dependencies": { "@babel/template": "^7.29.7", "@babel/types": "^7.29.7" } }, "sha512-1k2lAGRMfHTcwuNYcCNUmaUffmQv8KWMfh2iJUUeRlwlwH4FdNG7mfPI10NPfLHJFThE4Tyr4mv7kTNZOiPuBg=="], + + "@stylexjs/postcss-plugin/@babel/core/@babel/parser": ["@babel/parser@7.29.8", "", { "dependencies": { "@babel/types": "^7.29.8" }, "bin": "./bin/babel-parser.js" }, "sha512-E8lTAYNB1KW+FH+VGJuZM1ioAx2E6oVlvQFRrf5P8ZZmsiJXYAD9vTFV7yyEURNzgh1dFqMZuO6tUwcARbqFCA=="], + + "@stylexjs/postcss-plugin/@babel/core/@babel/template": ["@babel/template@7.29.7", "", { "dependencies": { "@babel/code-frame": "^7.29.7", "@babel/parser": "^7.29.7", "@babel/types": "^7.29.7" } }, "sha512-puq+Gf35oI24FeN11LkoUQFqv9uwNeWpxXZi/Ji3rRIoKAzKnxRaZ+Gkj0vKS9ZCiTESfng1N9LyOyXvo+m+Gg=="], + + "@stylexjs/postcss-plugin/@babel/core/@babel/traverse": ["@babel/traverse@7.29.8", "", { "dependencies": { "@babel/code-frame": "^7.29.7", "@babel/generator": "^7.29.8", "@babel/helper-globals": "^7.29.7", "@babel/parser": "^7.29.8", "@babel/template": "^7.29.7", "@babel/types": "^7.29.8", "debug": "^4.3.1" } }, "sha512-I5z7H3bf/41ktsNVLtpN0wAa336HkqIHQ5BuPLEhTkt1jVSyZpeNKIzTgEWmlxjdg81R0IgUCcaE+Ok3NvrfZg=="], + + "@stylexjs/postcss-plugin/@babel/core/semver": ["semver@6.3.1", "", { "bin": { "semver": "bin/semver.js" } }, "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA=="], + "@tailwindcss/node/lightningcss/lightningcss-android-arm64": ["lightningcss-android-arm64@1.32.0", "", { "os": "android", "cpu": "arm64" }, "sha512-YK7/ClTt4kAK0vo6w3X+Pnm0D2cf2vPHbhOXdoNti1Ga0al1P4TBZhwjATvjNwLEBCnKvjJc2jQgHXH0NEwlAg=="], "@tailwindcss/node/lightningcss/lightningcss-darwin-arm64": ["lightningcss-darwin-arm64@1.32.0", "", { "os": "darwin", "cpu": "arm64" }, "sha512-RzeG9Ju5bag2Bv1/lwlVJvBE3q6TtXskdZLLCyfg5pt+HLz9BqlICO7LZM7VHNTTn/5PRhHFBSjk5lc4cmscPQ=="], @@ -6290,26 +6271,6 @@ "@kuma-ui/compiler/ts-morph/@ts-morph/common/minimatch": ["minimatch@7.4.9", "", { "dependencies": { "brace-expansion": "^2.0.2" } }, "sha512-Brg/fp/iAVDOQoHxkuN5bEYhyQlZhxddI78yWsCbeEwTHXQjlNLtiJDUsp1GIptVqMI7/gkJMz4vVAc01mpoBw=="], - "@next/rspack-core/@rspack/core/@rspack/binding/@rspack/binding-darwin-arm64": ["@rspack/binding-darwin-arm64@2.0.4", "", { "os": "darwin", "cpu": "arm64" }, "sha512-0Q1QXFEsZfDc4opiDnb8q50KlBbC2VovViDaYlMJZBzvjAo325mh3itXPfz7YZ31M+TxRE7TUiJXH3ltiV1Hdg=="], - - "@next/rspack-core/@rspack/core/@rspack/binding/@rspack/binding-darwin-x64": ["@rspack/binding-darwin-x64@2.0.4", "", { "os": "darwin", "cpu": "x64" }, "sha512-oO5J2QYf7+H+aYRj85EiGrDOoDEE9EDDl7NgXv46iWvIF0wXowEHXqnjMFxHxRq2Vf6scT+0yYQX9blWcvMWAA=="], - - "@next/rspack-core/@rspack/core/@rspack/binding/@rspack/binding-linux-arm64-gnu": ["@rspack/binding-linux-arm64-gnu@2.0.4", "", { "os": "linux", "cpu": "arm64" }, "sha512-BEk6mIYBK4BihW9qXXITJORrVXecTlkRjrqhgefili4xjXtLdcUnxAm9sN/2oJ8m378n2h33qDh4gr2orPBFWQ=="], - - "@next/rspack-core/@rspack/core/@rspack/binding/@rspack/binding-linux-arm64-musl": ["@rspack/binding-linux-arm64-musl@2.0.4", "", { "os": "linux", "cpu": "arm64" }, "sha512-Hyt3z1RwNcSMIoaoWLN4Hb/696/O5JPukf8rXQASvf2UkC+X3ij7tr+8lMSYi3Zysi1QL375CnT4fNoABEW0JA=="], - - "@next/rspack-core/@rspack/core/@rspack/binding/@rspack/binding-linux-x64-gnu": ["@rspack/binding-linux-x64-gnu@2.0.4", "", { "os": "linux", "cpu": "x64" }, "sha512-xHorBPBZAg0Pn9Q0k9dWZ9euowieDxcSOzQ9JhTCmhDY6wZH5M/kCBFlCs/OQeW5/NUArW3x3MwEdO/0QJHMxg=="], - - "@next/rspack-core/@rspack/core/@rspack/binding/@rspack/binding-linux-x64-musl": ["@rspack/binding-linux-x64-musl@2.0.4", "", { "os": "linux", "cpu": "x64" }, "sha512-QLxEGUXofF0kVNU12Y2NT3Qi9lGs+WbnYpapVeb+2IXtrAXJfU7Rhy7lAp5GLMzYMQNrKKL9SVnTWKbODbNW9Q=="], - - "@next/rspack-core/@rspack/core/@rspack/binding/@rspack/binding-wasm32-wasi": ["@rspack/binding-wasm32-wasi@2.0.4", "", { "dependencies": { "@emnapi/core": "1.10.0", "@emnapi/runtime": "1.10.0", "@napi-rs/wasm-runtime": "1.1.4" }, "cpu": "none" }, "sha512-YhN8HkiH46ONU9tm5dyoXDImDWGpU7E4SPqGI4OyAVF0445uIChurIUmTIOYcD6cg81GGeIjozWJOcb635Dcqw=="], - - "@next/rspack-core/@rspack/core/@rspack/binding/@rspack/binding-win32-arm64-msvc": ["@rspack/binding-win32-arm64-msvc@2.0.4", "", { "os": "win32", "cpu": "arm64" }, "sha512-MUlYIz82xQRN0aoiXXyEBrNVUwiOSSFRi7nuCgUKduaSdlbPWzCY31IdtOygZ06LVp5JIGUEtyqSrjQq4FrMRw=="], - - "@next/rspack-core/@rspack/core/@rspack/binding/@rspack/binding-win32-ia32-msvc": ["@rspack/binding-win32-ia32-msvc@2.0.4", "", { "os": "win32", "cpu": "ia32" }, "sha512-D7UcIFMzlY2yhhyuW4Ej15gBWmTwUM5DxuObl3Kv31qRv/pmV3MsqUeG5m2dqLbUxzqPH87qnp0cArbkJQ1b+w=="], - - "@next/rspack-core/@rspack/core/@rspack/binding/@rspack/binding-win32-x64-msvc": ["@rspack/binding-win32-x64-msvc@2.0.4", "", { "os": "win32", "cpu": "x64" }, "sha512-MnYKPfdrAEbtpKg/1SZ6cNtzreIRyQJK4APbxLLPXENdTH5QXQkaTjLMKEeJcJ51FRhI/+yNpOUm2oTHdCQ1Og=="], - "@npmcli/map-workspaces/minimatch/brace-expansion/balanced-match": ["balanced-match@1.0.2", "", {}, "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw=="], "@npmcli/package-json/glob/minimatch/brace-expansion": ["brace-expansion@2.1.4", "", { "dependencies": { "balanced-match": "^1.0.0" } }, "sha512-hGfVzPxthbf3+2yjg/RBs60cB0FhqBS/zvdV/4wn4/BmN0bNMMHPc4V/BbFieqf1TKAGGAHnY4eSjajCl0f2Xg=="], @@ -6340,6 +6301,14 @@ "@stylexjs/nextjs-plugin/@stylexjs/babel-plugin/@babel/traverse/@babel/template": ["@babel/template@7.29.7", "", { "dependencies": { "@babel/code-frame": "^7.29.7", "@babel/parser": "^7.29.7", "@babel/types": "^7.29.7" } }, "sha512-puq+Gf35oI24FeN11LkoUQFqv9uwNeWpxXZi/Ji3rRIoKAzKnxRaZ+Gkj0vKS9ZCiTESfng1N9LyOyXvo+m+Gg=="], + "@stylexjs/postcss-plugin/@babel/core/@babel/code-frame/js-tokens": ["js-tokens@4.0.0", "", {}, "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ=="], + + "@stylexjs/postcss-plugin/@babel/core/@babel/helper-compilation-targets/browserslist": ["browserslist@4.28.8", "", { "dependencies": { "baseline-browser-mapping": "^2.11.12", "caniuse-lite": "^1.0.30001809", "electron-to-chromium": "^1.5.402", "node-releases": "^2.0.53", "update-browserslist-db": "^1.3.0" }, "bin": { "browserslist": "cli.js" } }, "sha512-V2NpofLblG64mfOtSgDhOJESZEGogzDMBv/q+W6oc4LXWP/q75eOXoOaaOu1EOadB9U4Bwx/e0yzbvwKH8zalA=="], + + "@stylexjs/postcss-plugin/@babel/core/@babel/helper-compilation-targets/lru-cache": ["lru-cache@5.1.1", "", { "dependencies": { "yallist": "^3.0.2" } }, "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w=="], + + "@stylexjs/postcss-plugin/@babel/core/@babel/traverse/@babel/helper-globals": ["@babel/helper-globals@7.29.7", "", {}, "sha512-3nQVUAtvkKH9zahfWgw96Jc/uFOmjACE1kQz82E2lqWmHBgjzbNlsC22nuQTfahmWeQtTq5nQ/4Nnd2A1wj4zA=="], + "@vanilla-extract/babel-plugin-debug-ids/@babel/core/@babel/code-frame/js-tokens": ["js-tokens@4.0.0", "", {}, "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ=="], "@vanilla-extract/babel-plugin-debug-ids/@babel/core/@babel/helper-compilation-targets/browserslist": ["browserslist@4.28.8", "", { "dependencies": { "baseline-browser-mapping": "^2.11.12", "caniuse-lite": "^1.0.30001809", "electron-to-chromium": "^1.5.402", "node-releases": "^2.0.53", "update-browserslist-db": "^1.3.0" }, "bin": { "browserslist": "cli.js" } }, "sha512-V2NpofLblG64mfOtSgDhOJESZEGogzDMBv/q+W6oc4LXWP/q75eOXoOaaOu1EOadB9U4Bwx/e0yzbvwKH8zalA=="], @@ -6418,12 +6387,6 @@ "@kuma-ui/compiler/ts-morph/@ts-morph/common/minimatch/brace-expansion": ["brace-expansion@2.1.4", "", { "dependencies": { "balanced-match": "^1.0.0" } }, "sha512-hGfVzPxthbf3+2yjg/RBs60cB0FhqBS/zvdV/4wn4/BmN0bNMMHPc4V/BbFieqf1TKAGGAHnY4eSjajCl0f2Xg=="], - "@next/rspack-core/@rspack/core/@rspack/binding/@rspack/binding-wasm32-wasi/@emnapi/core": ["@emnapi/core@1.10.0", "", { "dependencies": { "@emnapi/wasi-threads": "1.2.1", "tslib": "^2.4.0" } }, "sha512-yq6OkJ4p82CAfPl0u9mQebQHKPJkY7WrIuk205cTYnYe+k2Z8YBh11FrbRG/H6ihirqcacOgl2BIO8oyMQLeXw=="], - - "@next/rspack-core/@rspack/core/@rspack/binding/@rspack/binding-wasm32-wasi/@emnapi/runtime": ["@emnapi/runtime@1.10.0", "", { "dependencies": { "tslib": "^2.4.0" } }, "sha512-ewvYlk86xUoGI0zQRNq/mC+16R1QeDlKQy21Ki3oSYXNgLb45GV1P6A0M+/s6nyCuNDqe5VpaY84BzXGwVbwFA=="], - - "@next/rspack-core/@rspack/core/@rspack/binding/@rspack/binding-wasm32-wasi/@napi-rs/wasm-runtime": ["@napi-rs/wasm-runtime@1.1.4", "", { "dependencies": { "@tybys/wasm-util": "^0.10.1" }, "peerDependencies": { "@emnapi/core": "^1.7.1", "@emnapi/runtime": "^1.7.1" } }, "sha512-3NQNNgA1YSlJb/kMH1ildASP9HW7/7kYnRI2szWJaofaS1hWmbGI4H+d3+22aGzXXN9IJ+n+GiFVcGipJP18ow=="], - "@npmcli/package-json/glob/minimatch/brace-expansion/balanced-match": ["balanced-match@1.0.2", "", {}, "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw=="], "@stylexjs/nextjs-plugin/@stylexjs/babel-plugin/@babel/traverse/@babel/code-frame/js-tokens": ["js-tokens@4.0.0", "", {}, "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ=="], From 7930452245323c0d9c82668fb9288f1a919cc542 Mon Sep 17 00:00:00 2001 From: devfive Date: Fri, 28 Aug 2026 21:33:23 +0900 Subject: [PATCH 3/5] bench: use Devup UI for StyleX Turbopack --- .../app/globals.css | 2 -- .../babel.config.cjs | 22 ------------------- .../next-stylex-turbo-devup-ui/package.json | 3 --- .../postcss.config.mjs | 8 ------- bun.lock | 3 --- 5 files changed, 38 deletions(-) delete mode 100644 benchmark/next-stylex-turbo-devup-ui/babel.config.cjs delete mode 100644 benchmark/next-stylex-turbo-devup-ui/postcss.config.mjs diff --git a/benchmark/next-stylex-turbo-devup-ui/app/globals.css b/benchmark/next-stylex-turbo-devup-ui/app/globals.css index b24a54dbe..d94d4168d 100644 --- a/benchmark/next-stylex-turbo-devup-ui/app/globals.css +++ b/benchmark/next-stylex-turbo-devup-ui/app/globals.css @@ -1,5 +1,3 @@ -@stylex; - * { box-sizing: border-box; padding: 0; diff --git a/benchmark/next-stylex-turbo-devup-ui/babel.config.cjs b/benchmark/next-stylex-turbo-devup-ui/babel.config.cjs deleted file mode 100644 index ca5f32efd..000000000 --- a/benchmark/next-stylex-turbo-devup-ui/babel.config.cjs +++ /dev/null @@ -1,22 +0,0 @@ -const path = require('node:path') - -module.exports = { - presets: ['next/babel'], - plugins: [ - [ - '@stylexjs/babel-plugin', - { - dev: process.env.NODE_ENV !== 'production', - runtimeInjection: false, - genConditionalClasses: true, - treeshakeCompensation: true, - aliases: { - '@/*': [path.join(__dirname, '*')], - }, - unstable_moduleResolution: { - type: 'commonJS', - }, - }, - ], - ], -} diff --git a/benchmark/next-stylex-turbo-devup-ui/package.json b/benchmark/next-stylex-turbo-devup-ui/package.json index 27e4bdec3..398b2e55b 100644 --- a/benchmark/next-stylex-turbo-devup-ui/package.json +++ b/benchmark/next-stylex-turbo-devup-ui/package.json @@ -19,12 +19,9 @@ }, "devDependencies": { "@devup-ui/next-plugin": "workspace:^", - "@stylexjs/babel-plugin": "0.19.0", - "@stylexjs/postcss-plugin": "0.19.0", "@types/node": "^26.2", "@types/react": "^19.2", "@types/react-dom": "^19.2", - "postcss": "^8.5", "rimraf": "^6.1", "typescript": "^7.0" } diff --git a/benchmark/next-stylex-turbo-devup-ui/postcss.config.mjs b/benchmark/next-stylex-turbo-devup-ui/postcss.config.mjs deleted file mode 100644 index 6bf3d1b2f..000000000 --- a/benchmark/next-stylex-turbo-devup-ui/postcss.config.mjs +++ /dev/null @@ -1,8 +0,0 @@ -export default { - plugins: { - '@stylexjs/postcss-plugin': { - include: ['app/**/*.{js,jsx,ts,tsx}'], - exclude: ['**/node_modules/**', '**/.next/**'], - }, - }, -} diff --git a/bun.lock b/bun.lock index 7468b472c..8659c8127 100644 --- a/bun.lock +++ b/bun.lock @@ -343,12 +343,9 @@ }, "devDependencies": { "@devup-ui/next-plugin": "workspace:^", - "@stylexjs/babel-plugin": "0.19.0", - "@stylexjs/postcss-plugin": "0.19.0", "@types/node": "^26.2", "@types/react": "^19.2", "@types/react-dom": "^19.2", - "postcss": "^8.5", "rimraf": "^6.1", "typescript": "^7.0", }, From 0b6dca6ce0780851e4d20b610ad30d59ac1b5975 Mon Sep 17 00:00:00 2001 From: devfive Date: Fri, 28 Aug 2026 21:37:52 +0900 Subject: [PATCH 4/5] bench: use globalCss in StyleX Devup benchmark --- benchmark/next-stylex-turbo-devup-ui/app/globals.css | 5 ----- benchmark/next-stylex-turbo-devup-ui/app/layout.tsx | 2 -- benchmark/next-stylex-turbo-devup-ui/app/page.tsx | 10 +++++++++- 3 files changed, 9 insertions(+), 8 deletions(-) delete mode 100644 benchmark/next-stylex-turbo-devup-ui/app/globals.css diff --git a/benchmark/next-stylex-turbo-devup-ui/app/globals.css b/benchmark/next-stylex-turbo-devup-ui/app/globals.css deleted file mode 100644 index d94d4168d..000000000 --- a/benchmark/next-stylex-turbo-devup-ui/app/globals.css +++ /dev/null @@ -1,5 +0,0 @@ -* { - box-sizing: border-box; - padding: 0; - margin: 0; -} diff --git a/benchmark/next-stylex-turbo-devup-ui/app/layout.tsx b/benchmark/next-stylex-turbo-devup-ui/app/layout.tsx index bb3807cbf..45e0ac1be 100644 --- a/benchmark/next-stylex-turbo-devup-ui/app/layout.tsx +++ b/benchmark/next-stylex-turbo-devup-ui/app/layout.tsx @@ -1,5 +1,3 @@ -import './globals.css' - import type { Metadata } from 'next' export const metadata: Metadata = { diff --git a/benchmark/next-stylex-turbo-devup-ui/app/page.tsx b/benchmark/next-stylex-turbo-devup-ui/app/page.tsx index 19ecf982d..c590de33c 100644 --- a/benchmark/next-stylex-turbo-devup-ui/app/page.tsx +++ b/benchmark/next-stylex-turbo-devup-ui/app/page.tsx @@ -1,6 +1,6 @@ 'use client' -import { Box } from '@devup-ui/react' +import { Box, globalCss } from '@devup-ui/react' import * as stylex from '@stylexjs/stylex' import { useState } from 'react' @@ -37,6 +37,14 @@ const styles = stylex.create({ }, }) +globalCss({ + '*': { + boxSizing: 'border-box', + p: 0, + m: 0, + }, +}) + export default function HomePage() { const [_, setColor] = useState('yellow') const [enabled, setEnabled] = useState(false) From 70798282993d74e1daf4ef2781466ec6394cc83e Mon Sep 17 00:00:00 2001 From: devfive Date: Fri, 28 Aug 2026 21:44:12 +0900 Subject: [PATCH 5/5] style: fix benchmark lint formatting --- benchmark.js | 8 ++++---- benchmark/next-stylex-turbo-devup-ui/tsconfig.json | 8 +++++++- benchmark/next-stylex-turbo/tsconfig.json | 8 +++++++- 3 files changed, 18 insertions(+), 6 deletions(-) diff --git a/benchmark.js b/benchmark.js index 909680b68..abe9a0f67 100644 --- a/benchmark.js +++ b/benchmark.js @@ -75,10 +75,10 @@ function benchmark(target) { let result = [] result.push(benchmark('tailwind')) -result.push(benchmark('stylex')) -result.push(benchmark('stylex-turbo')) -result.push(benchmark('stylex-turbo-devup-ui')) -result.push(benchmark('vanilla-extract')) +result.push(benchmark('stylex')) +result.push(benchmark('stylex-turbo')) +result.push(benchmark('stylex-turbo-devup-ui')) +result.push(benchmark('vanilla-extract')) result.push(benchmark('kuma-ui')) result.push(benchmark('panda-css')) result.push(benchmark('chakra-ui')) diff --git a/benchmark/next-stylex-turbo-devup-ui/tsconfig.json b/benchmark/next-stylex-turbo-devup-ui/tsconfig.json index e1ed66411..9c0670fe9 100644 --- a/benchmark/next-stylex-turbo-devup-ui/tsconfig.json +++ b/benchmark/next-stylex-turbo-devup-ui/tsconfig.json @@ -23,6 +23,12 @@ "@/*": ["./*"] } }, - "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", ".next/types/**/*.ts", ".next/dev/types/**/*.ts"], + "include": [ + "next-env.d.ts", + "**/*.ts", + "**/*.tsx", + ".next/types/**/*.ts", + ".next/dev/types/**/*.ts" + ], "exclude": ["node_modules"] } diff --git a/benchmark/next-stylex-turbo/tsconfig.json b/benchmark/next-stylex-turbo/tsconfig.json index e1ed66411..9c0670fe9 100644 --- a/benchmark/next-stylex-turbo/tsconfig.json +++ b/benchmark/next-stylex-turbo/tsconfig.json @@ -23,6 +23,12 @@ "@/*": ["./*"] } }, - "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", ".next/types/**/*.ts", ".next/dev/types/**/*.ts"], + "include": [ + "next-env.d.ts", + "**/*.ts", + "**/*.tsx", + ".next/types/**/*.ts", + ".next/dev/types/**/*.ts" + ], "exclude": ["node_modules"] }