diff --git a/CHANGELOG.md b/CHANGELOG.md index 5a5742b7eb40..1a4221579a84 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -15,6 +15,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Fixed +- Make JS APIs available to plugins and configs in the Standalone CLI ([#15934](https://github.com/tailwindlabs/tailwindcss/pull/15934)) - Vite: Don't crash when importing a virtual module in JavaScript that ends in `.css` ([#16780](https://github.com/tailwindlabs/tailwindcss/pull/16780)) ## [4.0.8] - 2025-02-21 diff --git a/integrations/cli/standalone.test.ts b/integrations/cli/standalone.test.ts index a40d69fc95b7..bf8ed6bbb739 100644 --- a/integrations/cli/standalone.test.ts +++ b/integrations/cli/standalone.test.ts @@ -1,6 +1,6 @@ import os from 'node:os' import path from 'node:path' -import { candidate, css, html, json, test } from '../utils' +import { candidate, css, html, js, json, test } from '../utils' const STANDALONE_BINARY = (() => { switch (os.platform()) { @@ -56,3 +56,110 @@ test( ]) }, ) + +test( + 'includes js APIs for plugins', + { + fs: { + 'package.json': json` + { + "dependencies": {} + } + `, + 'index.html': html` +
+ `, + 'src/index.css': css` + @import 'tailwindcss/theme' theme(reference); + @import 'tailwindcss/utilities'; + @plugin './plugin.js'; + @plugin './plugin.cjs'; + @plugin './plugin.ts'; + `, + 'src/plugin.js': js` + import plugin from 'tailwindcss/plugin' + + // Make sure all available JS APIs can be imported and used + import * as tw from 'tailwindcss' + import colors from 'tailwindcss/colors' + import flattenColorPalette from 'tailwindcss/lib/util/flattenColorPalette' + import defaultTheme from 'tailwindcss/defaultTheme' + import * as pkg from 'tailwindcss/package.json' + + export default plugin(function ({ addUtilities }) { + addUtilities({ + '.example1': { + '--version': pkg.version, + '--default-theme': typeof defaultTheme, + '--flatten-color-palette': typeof flattenColorPalette, + '--colors': typeof colors, + '--core': typeof tw, + color: 'red', + }, + }) + }) + `, + 'src/plugin.cjs': js` + const plugin = require('tailwindcss/plugin') + + // Make sure all available JS APIs can be imported and used + const tw = require('tailwindcss') + const colors = require('tailwindcss/colors') + const flattenColorPalette = require('tailwindcss/lib/util/flattenColorPalette') + const defaultTheme = require('tailwindcss/defaultTheme') + const pkg = require('tailwindcss/package.json') + + module.exports = plugin(function ({ addUtilities }) { + addUtilities({ + '.example2': { + '--version': pkg.version, + '--default-theme': typeof defaultTheme, + '--flatten-color-palette': typeof flattenColorPalette, + '--colors': typeof colors, + '--core': typeof tw, + color: 'red', + }, + }) + }) + `, + 'src/plugin.ts': js` + import plugin from 'tailwindcss/plugin' + + // Make sure all available JS APIs can be imported and used + import * as tw from 'tailwindcss' + import colors from 'tailwindcss/colors' + import flattenColorPalette from 'tailwindcss/lib/util/flattenColorPalette' + import defaultTheme from 'tailwindcss/defaultTheme' + import * as pkg from 'tailwindcss/package.json' + + export interface PluginOptions { + } + + export default plugin(function ({ addUtilities }) { + addUtilities({ + '.example3': { + '--version': pkg.version, + '--default-theme': typeof defaultTheme, + '--flatten-color-palette': typeof flattenColorPalette, + '--colors': typeof colors, + '--core': typeof tw, + color: 'red', + }, + }) + }) + `, + }, + }, + async ({ fs, exec }) => { + await exec( + `${path.resolve(__dirname, `../../packages/@tailwindcss-standalone/dist/${STANDALONE_BINARY}`)} --input src/index.css --output dist/out.css`, + ) + + await fs.expectFileToContain('dist/out.css', [ + candidate`underline`, + candidate`example1`, + candidate`example2`, + candidate`example3`, + ]) + }, +) diff --git a/packages/@tailwindcss-standalone/package.json b/packages/@tailwindcss-standalone/package.json index 8ed6a1f17a1b..07903154c441 100644 --- a/packages/@tailwindcss-standalone/package.json +++ b/packages/@tailwindcss-standalone/package.json @@ -42,8 +42,8 @@ "@parcel/watcher-linux-x64-glibc": "^2.5.1", "@parcel/watcher-linux-x64-musl": "^2.5.1", "@parcel/watcher-win32-x64": "^2.5.1", - "@types/bun": "^1.2.2", - "bun": "1.1.43", + "@types/bun": "^1.2.3", + "bun": "^1.2.3", "lightningcss-darwin-arm64": "^1.29.1", "lightningcss-darwin-x64": "^1.29.1", "lightningcss-linux-arm64-gnu": "^1.29.1", diff --git a/packages/@tailwindcss-standalone/src/index.ts b/packages/@tailwindcss-standalone/src/index.ts index 98e75c3dc394..be85729bb678 100644 --- a/packages/@tailwindcss-standalone/src/index.ts +++ b/packages/@tailwindcss-standalone/src/index.ts @@ -71,4 +71,40 @@ globalThis.__tw_readFile = async (path, encoding) => { return fs.readFileSync(path, encoding) } +// We use a plugin to make sure that the JS APIs are bundled with the standalone +// CLI and can be imported inside configs and plugins +Bun.plugin({ + name: 'bundle-tailwindcss-apis', + target: 'bun', + async setup(build) { + // These imports must be static strings otherwise they won't be bundled + let bundled = { + tailwindcss: await import('tailwindcss'), + 'tailwindcss/colors': await import('tailwindcss/colors'), + 'tailwindcss/colors.js': await import('tailwindcss/colors'), + 'tailwindcss/plugin': await import('tailwindcss/plugin'), + 'tailwindcss/plugin.js': await import('tailwindcss/plugin'), + 'tailwindcss/package.json': await import('tailwindcss/package.json'), + 'tailwindcss/lib/util/flattenColorPalette': await import( + 'tailwindcss/lib/util/flattenColorPalette' + ), + 'tailwindcss/lib/util/flattenColorPalette.js': await import( + 'tailwindcss/lib/util/flattenColorPalette' + ), + 'tailwindcss/defaultTheme': await import('tailwindcss/defaultTheme'), + 'tailwindcss/defaultTheme.js': await import('tailwindcss/defaultTheme'), + } + + for (let [id, exports] of Object.entries(bundled)) { + build.module(id, () => ({ + loader: 'object', + exports: { + ...exports, + __esModule: true, + }, + })) + } + }, +}) + await import('../../@tailwindcss-cli/src/index.ts') diff --git a/playgrounds/vite/package.json b/playgrounds/vite/package.json index 3b530d0ee464..1b5d84cde3c8 100644 --- a/playgrounds/vite/package.json +++ b/playgrounds/vite/package.json @@ -18,7 +18,7 @@ "devDependencies": { "@types/react": "^19.0.10", "@types/react-dom": "^19.0.4", - "bun": "^1.1.29", + "bun": "^1.2.3", "vite": "catalog:" } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index a22c86a409d8..6a6b3a8cea34 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -272,11 +272,11 @@ importers: specifier: ^2.5.1 version: 2.5.1 '@types/bun': - specifier: ^1.2.2 - version: 1.2.2 + specifier: ^1.2.3 + version: 1.2.3 bun: - specifier: 1.1.43 - version: 1.1.43 + specifier: ^1.2.3 + version: 1.2.3 lightningcss-darwin-arm64: specifier: ^1.29.1 version: 1.29.1 @@ -501,8 +501,8 @@ importers: specifier: ^19.0.4 version: 19.0.4(@types/react@19.0.10) bun: - specifier: ^1.1.29 - version: 1.1.29 + specifier: ^1.2.3 + version: 1.2.3 vite: specifier: 'catalog:' version: 6.0.0(@types/node@20.14.13)(jiti@2.4.2)(lightningcss@1.29.1(patch_hash=gkqcezdn4goium3e3s43dhy4by))(terser@5.31.6)(tsx@4.19.1)(yaml@2.6.0) @@ -1288,98 +1288,58 @@ packages: resolution: {integrity: sha512-nn5ozdjYQpUCZlWGuxcJY/KpxkWQs4DcbMCmKojjyrYDEAGy4Ce19NN4v5MduafTwJlbKc99UA8YhSVqq9yPZA==} engines: {node: '>=12.4.0'} - '@oven/bun-darwin-aarch64@1.1.29': - resolution: {integrity: sha512-Z8WnrXoAXg6ENU6z+Mil94oipMBMliJIj4XWWqjNC33/ZGPqMdPT5MbFQjbdHjxe5bRBW/aHaMU3G35fGx9Seg==} + '@oven/bun-darwin-aarch64@1.2.3': + resolution: {integrity: sha512-wEUBqSD7KDUx6xcOlNs/lDcbzJYH9CEPVZzAaJ+F3Zp8hORQYJ07byidQ0YgNMc1QhJq4xLaClMDLga6u2abIQ==} cpu: [arm64] os: [darwin] - '@oven/bun-darwin-aarch64@1.1.43': - resolution: {integrity: sha512-hOlLk6m/6Lfb5IV6LWDbuMNQHu6kP0f6HMDdLmsdlIBClgDhR0wRVLfeMuaZnUAdzLfWSJpHlsGn9wOp/ePB0g==} - cpu: [arm64] - os: [darwin] - - '@oven/bun-darwin-x64-baseline@1.1.29': - resolution: {integrity: sha512-B+zKlJR+3ANPDU+vNjvXaqgB63hYcCk16/k45hiInvIsDXfSdDn4+LMHwZTFdfUWTCGbNMFg9u4bZCtK0nhMDw==} - cpu: [x64] - os: [darwin] - - '@oven/bun-darwin-x64-baseline@1.1.43': - resolution: {integrity: sha512-J4MNzMef+uqJdNTlRfeKOhQ9DSCyls3LeGeDBGrgsc+b3SqH8tW3hrHjMChl+oRj4TGl3tRzBvUItUFqStvKtw==} + '@oven/bun-darwin-x64-baseline@1.2.3': + resolution: {integrity: sha512-oYqGnocQ7eY5wfthGivpXd0lzLYklXU4rEKXU4+oLaiFeFnY3lyszv85UHjywuB5bl7xybmSIE8tN8ie36WY1w==} cpu: [x64] os: [darwin] - '@oven/bun-darwin-x64@1.1.29': - resolution: {integrity: sha512-tDHDR+OWLCKEP0xE8IGCWRxSsxO5tr3rvyrSzy6CXYkoWPz66kODbtbGfWl8HSwunrQxJKnE2L9LWX2Eiz3Cpw==} + '@oven/bun-darwin-x64@1.2.3': + resolution: {integrity: sha512-kBeKYLNAwQrcJ1HPcuDGo3PGEfDvzHbL5N5kiaui1+eluyCS2yJZvuy2ddg9b0vqQkgzNu7D1keiRLpdR2Wneg==} cpu: [x64] os: [darwin] - '@oven/bun-darwin-x64@1.1.43': - resolution: {integrity: sha512-6jR/FpiIb9+qEep0FVaaap7enSuTDKKJt6BApHTPoV5TcZddZUeBxnDLiUjB4WiIEqv4JroGy0WmaCI8tXxawA==} - cpu: [x64] - os: [darwin] - - '@oven/bun-linux-aarch64-musl@1.1.43': - resolution: {integrity: sha512-PqzSC/+vk6HtVRBq/uSU3Xozw7uixk8ATLXiSImlL0kvrrL/aQJ+GVmlJxAN045+dJhnAXDsy3tkPITqWiQOsw==} + '@oven/bun-linux-aarch64-musl@1.2.3': + resolution: {integrity: sha512-nSB6FU29OW+8zUP5jRrQEAXl9m6Jd8vp5Swplh3prc0L0niYdtan39wouCxDVFNJafC0DaeKQme4UMQJ65s9qw==} cpu: [aarch64] os: [linux] - '@oven/bun-linux-aarch64@1.1.29': - resolution: {integrity: sha512-BuV2Gni+FaMo1r7+3vLjefQYtQcWE01zJJ4zCjyzikP1L4r6PUaLeJyKXbqF6sIR0cLjG6LWj66EGskakDyvWA==} - cpu: [arm64] - os: [linux] - - '@oven/bun-linux-aarch64@1.1.43': - resolution: {integrity: sha512-tVAbBN53tDvweeV2rT0j37jOBgYNhFTC6JtOHZjlP8bETaVH4CikLQQGJLKclkqmOFROb00FpIS1ef/jxSqumA==} + '@oven/bun-linux-aarch64@1.2.3': + resolution: {integrity: sha512-hbi7ykhLAtoBZl7mox5Qg6xVy9FcnPNibo/h6A1oElXBl4pRaVGNFDsuDmb80f9sFf4yZL0vwYyb47hL89MiGw==} cpu: [arm64] os: [linux] - '@oven/bun-linux-x64-baseline@1.1.29': - resolution: {integrity: sha512-tQhm1SDyymBvc2L3zIN7FI+sI3g9gxavDYuvL/Lz17nEk1oqP5DFE2lF9QWJMDdQL3XQKH/drI27yNpfPHgAPw==} - cpu: [x64] - os: [linux] - - '@oven/bun-linux-x64-baseline@1.1.43': - resolution: {integrity: sha512-/eDhCXS7Jl34LGSYAcg53hCPeUyhKGzA7FDFAA8lYeUkqchZkEJoBtqcT/bKjQBrEMDlZHsdvmYwkckqjmdpvw==} + '@oven/bun-linux-x64-baseline@1.2.3': + resolution: {integrity: sha512-PrkC18s81ImpHMdqgFXvyq9Oxed8mzlYb709DsuuoV9NL3nrzQzfqq8JStz/g3dYMc4obrljG/EKXGfMaJMJVA==} cpu: [x64] os: [linux] - '@oven/bun-linux-x64-musl-baseline@1.1.43': - resolution: {integrity: sha512-GiO280I+agtsGKF7xv0GqLPowOuT48x1n+Pd/FehqmUG2UwbWFQ3LCvGfSpuiJPg7+LGK+ZYC7FZnJLWNO5btQ==} + '@oven/bun-linux-x64-musl-baseline@1.2.3': + resolution: {integrity: sha512-1VsFwYMOryIsnTGPG70N1HAXoa8Fa7s+XAtP2Y010tao0omgpM0S6Go0Uc7VJ8g+yHKyIw79leRMwUs35ysQZA==} cpu: [x64] os: [linux] - '@oven/bun-linux-x64-musl@1.1.43': - resolution: {integrity: sha512-eSK7TYBQBGoSErD9clZhM1XGdUryCRr4J0qX/SpV2KHUGTq04wah0r6do2qnG4ijH5+2m9Kz3kc72bt7EM97mg==} + '@oven/bun-linux-x64-musl@1.2.3': + resolution: {integrity: sha512-481HyvBKKXrKH2VZsSBVsqsqxcnncqpsKz7qgTqnSEToCSyNqc3bGrI6pN6haI9nLawJpIh+oNXCg4JISUi6bg==} cpu: [x64] os: [linux] - '@oven/bun-linux-x64@1.1.29': - resolution: {integrity: sha512-JVLiTafybuOFIeC80mZEzHdkOCCzlOtOV5zCbvYAIb7D3SM64fNBwrR0dvDkJTQtsjbwt8YeVFN2YRSI/wlFkw==} + '@oven/bun-linux-x64@1.2.3': + resolution: {integrity: sha512-oxubd+zJW8+1H02bwzne8lj2EtvgoRU6w245hWMtwjo15IET/YGc01ndFRd42FX02bwo926N+7Jm7NFzS8GOHQ==} cpu: [x64] os: [linux] - '@oven/bun-linux-x64@1.1.43': - resolution: {integrity: sha512-vuvBcPbygUZQggLjj1MAt4telEllv2+4k5O6IkYHdkytRqqtBrMSvwh4Rb4pdu0LyCxFF5eTm5sUew7tZMBvfw==} - cpu: [x64] - os: [linux] - - '@oven/bun-windows-x64-baseline@1.1.29': - resolution: {integrity: sha512-+QWT8Kp+3Sl54QUa6uBsDzQlX11thMMVAw+yUwSRU4Y5FVSN8RPuxhN8ijJ1QGm1KOYA2sCI6V+3lyNMNmRvAA==} - cpu: [x64] - os: [win32] - - '@oven/bun-windows-x64-baseline@1.1.43': - resolution: {integrity: sha512-Fj1yGoK9ki0KdSAkWLlF41BzLeaohGSEEYPnxIDDULVhD3zFqPzqdqEQ1/NBsH3px/dJmB22vmM4BOMCYuFAiQ==} - cpu: [x64] - os: [win32] - - '@oven/bun-windows-x64@1.1.29': - resolution: {integrity: sha512-d930+pSkNVHPJJBryIh1gsAKk7lp1HzcktFe0bfxwmpHwjj4BiVfMjU1YaCnsdWKNs2Nv1Y1PLVDNyUCQVfo0Q==} + '@oven/bun-windows-x64-baseline@1.2.3': + resolution: {integrity: sha512-pvtDgWRclz/bxLEWUAppj854MklfTu01DfHAvKzV1UAHbBOlurC8+StpE7EhITAHC/jBK9U39eVYnZNvumVU9w==} cpu: [x64] os: [win32] - '@oven/bun-windows-x64@1.1.43': - resolution: {integrity: sha512-FesAYHGCWOJ+28041NgVsxPmqCIx1xXJwXJykpAczk1iaLKGHftSTprE1JV0vp2R/mPHFewV2Ktn5rQuExpiGg==} + '@oven/bun-windows-x64@1.2.3': + resolution: {integrity: sha512-z3G7jft1hbiiX47rY666i3HFJZBqCLgddr7e0ccoE/kUk4U5IB08mqJZYW0vaaL8zy0wuEF2h5VkK0S/iryLWw==} cpu: [x64] os: [win32] @@ -1404,7 +1364,6 @@ packages: '@parcel/watcher-darwin-arm64@2.5.1': resolution: {integrity: sha512-eAzPv5osDmZyBhou8PoF4i6RQXAfeKL9tjb3QzYuccXFMQU0ruIc/POh30ePnaOyD1UXdlKguHBmsTs53tVoPw==} engines: {node: '>= 10.0.0'} - cpu: [arm64] os: [darwin] '@parcel/watcher-darwin-x64@2.5.0': @@ -1416,7 +1375,6 @@ packages: '@parcel/watcher-darwin-x64@2.5.1': resolution: {integrity: sha512-1ZXDthrnNmwv10A0/3AJNZ9JGlzrF82i3gNQcWOzd7nJ8aj+ILyW1MTxVk35Db0u91oD5Nlk9MBiujMlwmeXZg==} engines: {node: '>= 10.0.0'} - cpu: [x64] os: [darwin] '@parcel/watcher-freebsd-x64@2.5.0': @@ -1464,7 +1422,6 @@ packages: '@parcel/watcher-linux-arm64-glibc@2.5.1': resolution: {integrity: sha512-LrGp+f02yU3BN9A+DGuY3v3bmnFUggAITBGriZHUREfNEzZh/GO06FF5u2kx8x+GBEUYfyTGamol4j3m9ANe8w==} engines: {node: '>= 10.0.0'} - cpu: [arm64] os: [linux] '@parcel/watcher-linux-arm64-musl@2.5.0': @@ -1476,7 +1433,6 @@ packages: '@parcel/watcher-linux-arm64-musl@2.5.1': resolution: {integrity: sha512-cFOjABi92pMYRXS7AcQv9/M1YuKRw8SZniCDw0ssQb/noPkRzA+HBDkwmyOJYp5wXcsTrhxO0zq1U11cK9jsFg==} engines: {node: '>= 10.0.0'} - cpu: [arm64] os: [linux] '@parcel/watcher-linux-x64-glibc@2.5.0': @@ -1488,7 +1444,6 @@ packages: '@parcel/watcher-linux-x64-glibc@2.5.1': resolution: {integrity: sha512-GcESn8NZySmfwlTsIur+49yDqSny2IhPeZfXunQi48DMugKeZ7uy1FX83pO0X22sHntJ4Ub+9k34XQCX+oHt2A==} engines: {node: '>= 10.0.0'} - cpu: [x64] os: [linux] '@parcel/watcher-linux-x64-musl@2.5.0': @@ -1500,7 +1455,6 @@ packages: '@parcel/watcher-linux-x64-musl@2.5.1': resolution: {integrity: sha512-n0E2EQbatQ3bXhcH2D1XIAANAcTZkQICBPVaxMeaCVBtOpBZpWJuf7LwyWPSBDITb7In8mqQgJ7gH8CILCURXg==} engines: {node: '>= 10.0.0'} - cpu: [x64] os: [linux] '@parcel/watcher-wasm@2.5.0': @@ -1542,7 +1496,6 @@ packages: '@parcel/watcher-win32-x64@2.5.1': resolution: {integrity: sha512-9lHBdJITeNR++EvSQVUcaZoWupyHfXe1jZvGZ06O/5MflPcuPLtEphScIBL+AiCWBO46tDSHzWyD0uDmmZqsgA==} engines: {node: '>= 10.0.0'} - cpu: [x64] os: [win32] '@parcel/watcher@2.5.0': @@ -1698,8 +1651,8 @@ packages: '@types/braces@3.0.5': resolution: {integrity: sha512-SQFof9H+LXeWNz8wDe7oN5zu7ket0qwMu5vZubW4GCJ8Kkeh6nBWUz87+KTz/G3Kqsrp0j/W253XJb3KMEeg3w==} - '@types/bun@1.2.2': - resolution: {integrity: sha512-tr74gdku+AEDN5ergNiBnplr7hpDp3V1h7fqI2GcR/rsUaM39jpSeKH0TFibRvU0KwniRx5POgaYnaXbk0hU+w==} + '@types/bun@1.2.3': + resolution: {integrity: sha512-054h79ipETRfjtsCW9qJK8Ipof67Pw9bodFWmkfkaUaRiIQ1dIV2VTlheshlBx3mpKr0KeK8VqnMMCtgN9rQtw==} '@types/estree@1.0.5': resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==} @@ -1940,18 +1893,11 @@ packages: buffer-from@1.1.2: resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} - bun-types@1.2.2: - resolution: {integrity: sha512-RCbMH5elr9gjgDGDhkTTugA21XtJAy/9jkKe/G3WR2q17VPGhcquf9Sir6uay9iW+7P/BV0CAHA1XlHXMAVKHg==} - - bun@1.1.29: - resolution: {integrity: sha512-SKhpyKNZtgxrVel9ec9xon3LDv8mgpiuFhARgcJo1YIbggY2PBrKHRNiwQ6Qlb+x3ivmRurfuwWgwGexjpgBRg==} - cpu: [arm64, x64] - os: [darwin, linux, win32] - hasBin: true + bun-types@1.2.3: + resolution: {integrity: sha512-P7AeyTseLKAvgaZqQrvp3RqFM3yN9PlcLuSTe7SoJOfZkER73mLdT2vEQi8U64S1YvM/ldcNiQjn0Sn7H9lGgg==} - bun@1.1.43: - resolution: {integrity: sha512-8Acq5NuECRXx62jVera3rnLcsaHh4/k5Res3dOQFv783nyRKo39W3DHlenGlXB9bNWbtRybBEvkKaH+zdwzLHw==} - cpu: [arm64, x64, aarch64] + bun@1.2.3: + resolution: {integrity: sha512-i8F+I3wxmt9omnLh3lOg0APQtqxZaMU0x6xuC+9YH4Eg/7fu8SM4YbdwyvV8Z6sy3OMtGFB0SYOjU2STuId4FQ==} os: [darwin, linux, win32] hasBin: true @@ -2767,13 +2713,11 @@ packages: lightningcss-darwin-arm64@1.29.1: resolution: {integrity: sha512-HtR5XJ5A0lvCqYAoSv2QdZZyoHNttBpa5EP9aNuzBQeKGfbyH5+UipLWvVzpP4Uml5ej4BYs5I9Lco9u1fECqw==} engines: {node: '>= 12.0.0'} - cpu: [arm64] os: [darwin] lightningcss-darwin-x64@1.29.1: resolution: {integrity: sha512-k33G9IzKUpHy/J/3+9MCO4e+PzaFblsgBjSGlpAaFikeBFm8B/CkO3cKU9oI4g+fjS2KlkLM/Bza9K/aw8wsNA==} engines: {node: '>= 12.0.0'} - cpu: [x64] os: [darwin] lightningcss-freebsd-x64@1.29.1: @@ -2791,25 +2735,21 @@ packages: lightningcss-linux-arm64-gnu@1.29.1: resolution: {integrity: sha512-0+vClRIZ6mmJl/dxGuRsE197o1HDEeeRk6nzycSy2GofC2JsY4ifCRnvUWf/CUBQmlrvMzt6SMQNMSEu22csWQ==} engines: {node: '>= 12.0.0'} - cpu: [arm64] os: [linux] lightningcss-linux-arm64-musl@1.29.1: resolution: {integrity: sha512-UKMFrG4rL/uHNgelBsDwJcBqVpzNJbzsKkbI3Ja5fg00sgQnHw/VrzUTEc4jhZ+AN2BvQYz/tkHu4vt1kLuJyw==} engines: {node: '>= 12.0.0'} - cpu: [arm64] os: [linux] lightningcss-linux-x64-gnu@1.29.1: resolution: {integrity: sha512-u1S+xdODy/eEtjADqirA774y3jLcm8RPtYztwReEXoZKdzgsHYPl0s5V52Tst+GKzqjebkULT86XMSxejzfISw==} engines: {node: '>= 12.0.0'} - cpu: [x64] os: [linux] lightningcss-linux-x64-musl@1.29.1: resolution: {integrity: sha512-L0Tx0DtaNUTzXv0lbGCLB/c/qEADanHbu4QdcNOXLIe1i8i22rZRpbT3gpWYsCh9aSL9zFujY/WmEXIatWvXbw==} engines: {node: '>= 12.0.0'} - cpu: [x64] os: [linux] lightningcss-win32-arm64-msvc@1.29.1: @@ -2821,7 +2761,6 @@ packages: lightningcss-win32-x64-msvc@1.29.1: resolution: {integrity: sha512-NygcbThNBe4JElP+olyTI/doBNGJvLs3bFCRPdvuCcxZCcCZ71B858IHpdm7L1btZex0FvCmM17FK98Y9MRy1Q==} engines: {node: '>= 12.0.0'} - cpu: [x64] os: [win32] lightningcss@1.29.1: @@ -4421,61 +4360,37 @@ snapshots: '@nolyfill/is-core-module@1.0.39': {} - '@oven/bun-darwin-aarch64@1.1.29': + '@oven/bun-darwin-aarch64@1.2.3': optional: true - '@oven/bun-darwin-aarch64@1.1.43': + '@oven/bun-darwin-x64-baseline@1.2.3': optional: true - '@oven/bun-darwin-x64-baseline@1.1.29': + '@oven/bun-darwin-x64@1.2.3': optional: true - '@oven/bun-darwin-x64-baseline@1.1.43': + '@oven/bun-linux-aarch64-musl@1.2.3': optional: true - '@oven/bun-darwin-x64@1.1.29': + '@oven/bun-linux-aarch64@1.2.3': optional: true - '@oven/bun-darwin-x64@1.1.43': + '@oven/bun-linux-x64-baseline@1.2.3': optional: true - '@oven/bun-linux-aarch64-musl@1.1.43': + '@oven/bun-linux-x64-musl-baseline@1.2.3': optional: true - '@oven/bun-linux-aarch64@1.1.29': + '@oven/bun-linux-x64-musl@1.2.3': optional: true - '@oven/bun-linux-aarch64@1.1.43': + '@oven/bun-linux-x64@1.2.3': optional: true - '@oven/bun-linux-x64-baseline@1.1.29': + '@oven/bun-windows-x64-baseline@1.2.3': optional: true - '@oven/bun-linux-x64-baseline@1.1.43': - optional: true - - '@oven/bun-linux-x64-musl-baseline@1.1.43': - optional: true - - '@oven/bun-linux-x64-musl@1.1.43': - optional: true - - '@oven/bun-linux-x64@1.1.29': - optional: true - - '@oven/bun-linux-x64@1.1.43': - optional: true - - '@oven/bun-windows-x64-baseline@1.1.29': - optional: true - - '@oven/bun-windows-x64-baseline@1.1.43': - optional: true - - '@oven/bun-windows-x64@1.1.29': - optional: true - - '@oven/bun-windows-x64@1.1.43': + '@oven/bun-windows-x64@1.2.3': optional: true '@parcel/watcher-android-arm64@2.5.0': @@ -4709,9 +4624,9 @@ snapshots: '@types/braces@3.0.5': {} - '@types/bun@1.2.2': + '@types/bun@1.2.3': dependencies: - bun-types: 1.2.2 + bun-types: 1.2.3 '@types/estree@1.0.5': {} @@ -5085,35 +5000,24 @@ snapshots: buffer-from@1.1.2: optional: true - bun-types@1.2.2: + bun-types@1.2.3: dependencies: '@types/node': 20.14.13 '@types/ws': 8.5.12 - bun@1.1.29: - optionalDependencies: - '@oven/bun-darwin-aarch64': 1.1.29 - '@oven/bun-darwin-x64': 1.1.29 - '@oven/bun-darwin-x64-baseline': 1.1.29 - '@oven/bun-linux-aarch64': 1.1.29 - '@oven/bun-linux-x64': 1.1.29 - '@oven/bun-linux-x64-baseline': 1.1.29 - '@oven/bun-windows-x64': 1.1.29 - '@oven/bun-windows-x64-baseline': 1.1.29 - - bun@1.1.43: + bun@1.2.3: optionalDependencies: - '@oven/bun-darwin-aarch64': 1.1.43 - '@oven/bun-darwin-x64': 1.1.43 - '@oven/bun-darwin-x64-baseline': 1.1.43 - '@oven/bun-linux-aarch64': 1.1.43 - '@oven/bun-linux-aarch64-musl': 1.1.43 - '@oven/bun-linux-x64': 1.1.43 - '@oven/bun-linux-x64-baseline': 1.1.43 - '@oven/bun-linux-x64-musl': 1.1.43 - '@oven/bun-linux-x64-musl-baseline': 1.1.43 - '@oven/bun-windows-x64': 1.1.43 - '@oven/bun-windows-x64-baseline': 1.1.43 + '@oven/bun-darwin-aarch64': 1.2.3 + '@oven/bun-darwin-x64': 1.2.3 + '@oven/bun-darwin-x64-baseline': 1.2.3 + '@oven/bun-linux-aarch64': 1.2.3 + '@oven/bun-linux-aarch64-musl': 1.2.3 + '@oven/bun-linux-x64': 1.2.3 + '@oven/bun-linux-x64-baseline': 1.2.3 + '@oven/bun-linux-x64-musl': 1.2.3 + '@oven/bun-linux-x64-musl-baseline': 1.2.3 + '@oven/bun-windows-x64': 1.2.3 + '@oven/bun-windows-x64-baseline': 1.2.3 bundle-require@5.0.0(esbuild@0.24.0): dependencies: @@ -5545,7 +5449,7 @@ snapshots: debug: 4.3.7 enhanced-resolve: 5.18.1 eslint: 9.20.1(jiti@2.4.2) - eslint-module-utils: 2.12.0(@typescript-eslint/parser@8.11.0(eslint@9.20.1(jiti@2.4.2))(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3)(eslint@9.20.1(jiti@2.4.2)) + eslint-module-utils: 2.12.0(@typescript-eslint/parser@8.11.0(eslint@9.20.1(jiti@2.4.2))(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3(@typescript-eslint/parser@8.11.0(eslint@9.20.1(jiti@2.4.2))(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.31.0)(eslint@9.20.1(jiti@2.4.2)))(eslint@9.20.1(jiti@2.4.2)) fast-glob: 3.3.3 get-tsconfig: 4.8.1 is-bun-module: 1.2.1 @@ -5564,7 +5468,7 @@ snapshots: debug: 4.3.7 enhanced-resolve: 5.18.1 eslint: 9.20.1(jiti@2.4.2) - eslint-module-utils: 2.12.0(@typescript-eslint/parser@8.11.0(eslint@9.20.1(jiti@2.4.2))(typescript@5.6.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3)(eslint@9.20.1(jiti@2.4.2)) + eslint-module-utils: 2.12.0(@typescript-eslint/parser@8.11.0(eslint@9.20.1(jiti@2.4.2))(typescript@5.6.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3(@typescript-eslint/parser@8.11.0(eslint@9.20.1(jiti@2.4.2))(typescript@5.6.3))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.31.0)(eslint@9.20.1(jiti@2.4.2)))(eslint@9.20.1(jiti@2.4.2)) fast-glob: 3.3.3 get-tsconfig: 4.8.1 is-bun-module: 1.2.1 @@ -5577,7 +5481,7 @@ snapshots: - eslint-import-resolver-webpack - supports-color - eslint-module-utils@2.12.0(@typescript-eslint/parser@8.11.0(eslint@9.20.1(jiti@2.4.2))(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3)(eslint@9.20.1(jiti@2.4.2)): + eslint-module-utils@2.12.0(@typescript-eslint/parser@8.11.0(eslint@9.20.1(jiti@2.4.2))(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3(@typescript-eslint/parser@8.11.0(eslint@9.20.1(jiti@2.4.2))(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.31.0)(eslint@9.20.1(jiti@2.4.2)))(eslint@9.20.1(jiti@2.4.2)): dependencies: debug: 3.2.7 optionalDependencies: @@ -5588,7 +5492,7 @@ snapshots: transitivePeerDependencies: - supports-color - eslint-module-utils@2.12.0(@typescript-eslint/parser@8.11.0(eslint@9.20.1(jiti@2.4.2))(typescript@5.6.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3)(eslint@9.20.1(jiti@2.4.2)): + eslint-module-utils@2.12.0(@typescript-eslint/parser@8.11.0(eslint@9.20.1(jiti@2.4.2))(typescript@5.6.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3(@typescript-eslint/parser@8.11.0(eslint@9.20.1(jiti@2.4.2))(typescript@5.6.3))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.31.0)(eslint@9.20.1(jiti@2.4.2)))(eslint@9.20.1(jiti@2.4.2)): dependencies: debug: 3.2.7 optionalDependencies: @@ -5610,7 +5514,7 @@ snapshots: doctrine: 2.1.0 eslint: 9.20.1(jiti@2.4.2) eslint-import-resolver-node: 0.3.9 - eslint-module-utils: 2.12.0(@typescript-eslint/parser@8.11.0(eslint@9.20.1(jiti@2.4.2))(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3)(eslint@9.20.1(jiti@2.4.2)) + eslint-module-utils: 2.12.0(@typescript-eslint/parser@8.11.0(eslint@9.20.1(jiti@2.4.2))(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3(@typescript-eslint/parser@8.11.0(eslint@9.20.1(jiti@2.4.2))(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.31.0)(eslint@9.20.1(jiti@2.4.2)))(eslint@9.20.1(jiti@2.4.2)) hasown: 2.0.2 is-core-module: 2.15.1 is-glob: 4.0.3 @@ -5639,7 +5543,7 @@ snapshots: doctrine: 2.1.0 eslint: 9.20.1(jiti@2.4.2) eslint-import-resolver-node: 0.3.9 - eslint-module-utils: 2.12.0(@typescript-eslint/parser@8.11.0(eslint@9.20.1(jiti@2.4.2))(typescript@5.6.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3)(eslint@9.20.1(jiti@2.4.2)) + eslint-module-utils: 2.12.0(@typescript-eslint/parser@8.11.0(eslint@9.20.1(jiti@2.4.2))(typescript@5.6.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3(@typescript-eslint/parser@8.11.0(eslint@9.20.1(jiti@2.4.2))(typescript@5.6.3))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.31.0)(eslint@9.20.1(jiti@2.4.2)))(eslint@9.20.1(jiti@2.4.2)) hasown: 2.0.2 is-core-module: 2.15.1 is-glob: 4.0.3