diff --git a/CHANGELOG.md b/CHANGELOG.md index 3b1fb98..aed83bc 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,17 @@ All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines. +## [8.0.0](https://github.com/jantimon/css-variable/compare/v7.0.0...v8.0.0) (2025-11-04) + + +### ⚠ BREAKING CHANGES + +* requires swc_core 45.x + +### Features + +* add support for Next.js 16.0.1 + ## [7.0.0](https://github.com/jantimon/css-variable/compare/v6.0.0...v7.0.0) (2025-07-16) diff --git a/examples/styled-components/next-env.d.ts b/examples/styled-components/next-env.d.ts index 52e831b..1970904 100644 --- a/examples/styled-components/next-env.d.ts +++ b/examples/styled-components/next-env.d.ts @@ -1,5 +1,6 @@ /// /// +import "./.next/types/routes.d.ts"; // NOTE: This file should not be edited // see https://nextjs.org/docs/pages/api-reference/config/typescript for more information. diff --git a/examples/styled-components/package.json b/examples/styled-components/package.json index 77f9adb..4d0d1fa 100644 --- a/examples/styled-components/package.json +++ b/examples/styled-components/package.json @@ -13,7 +13,7 @@ "@types/styled-components": "5.1.14", "babel-plugin-styled-components": "^1.13.2", "css-variable": "file:../../", - "next": "^15.4.1", + "next": "^16.0.1", "react": "^18.2.0", "react-dom": "^18.2.0", "styled-components": "^6.1.11", diff --git a/examples/styled-components/tsconfig.json b/examples/styled-components/tsconfig.json index 5bee8c4..265ea94 100644 --- a/examples/styled-components/tsconfig.json +++ b/examples/styled-components/tsconfig.json @@ -16,7 +16,7 @@ "moduleResolution": "node", "resolveJsonModule": true, "isolatedModules": true, - "jsx": "preserve", + "jsx": "react-jsx", "incremental": true }, "include": [ diff --git a/package.json b/package.json index 84a2976..07b0870 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "css-variable", - "version": "7.0.0", + "version": "8.0.0", "description": "define CSS custom properties (variables) in JS", "main": "./dist/index.cjs", "module": "./dist/index.mjs", diff --git a/swc/Cargo.lock b/swc/Cargo.lock index 9ddfc3e..d3f86f6 100644 --- a/swc/Cargo.lock +++ b/swc/Cargo.lock @@ -70,9 +70,9 @@ checksum = "d92bec98840b8f03a5ff5413de5293bfcd8bf96467cf5452609f939ec6f5de16" [[package]] name = "ast_node" -version = "3.0.3" +version = "4.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1e2cddd48eafd883890770673b1971faceaf80a185445671abc3ea0c00593ee" +checksum = "c4902c7f39335a2390500ee791d6cb1778e742c7b97952497ec81449a5bfa3a7" dependencies = [ "quote", "swc_macros_common", @@ -643,9 +643,9 @@ checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" [[package]] name = "hstr" -version = "1.1.6" +version = "2.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b85186bc48d3c611ead052cc3f907748e40b63d73a99e4ed34d18063e2baaf1b" +checksum = "31f11d91d7befd2ffd9d216e9e5ea1fae6174b20a2a1b67a688138003d2f4122" dependencies = [ "hashbrown 0.14.5", "new_debug_unreachable", @@ -873,11 +873,11 @@ checksum = "13dc2df351e3202783a1fe0d44375f7295ffb4049267b0f3018346dc122a1d94" [[package]] name = "matchers" -version = "0.1.0" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8263075bb86c5a1b1427b5ae862e8889656f126e9f77c484496e8b47cf5c5558" +checksum = "d1525a2a28c7f4fa0fc98bb91ae755d1e2d1505079e05539e35bc876b5d65ae9" dependencies = [ - "regex-automata 0.1.10", + "regex-automata", ] [[package]] @@ -938,12 +938,11 @@ checksum = "650eef8c711430f1a879fdd01d4745a7deea475becfb90269c06775983bbf086" [[package]] name = "nu-ansi-term" -version = "0.46.0" +version = "0.50.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77a8165726e8236064dbb45459242600304b42a5ea24ee2948e18e023bf7ba84" +checksum = "7957b9740744892f114936ab4a57b3f487491bbeafaf8083688b16841a4240e5" dependencies = [ - "overload", - "winapi", + "windows-sys 0.60.2", ] [[package]] @@ -1003,12 +1002,6 @@ version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1a80800c0488c3a21695ea981a54918fbb37abf04f4d0720c453632255e2ff0e" -[[package]] -name = "overload" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39" - [[package]] name = "owo-colors" version = "4.2.2" @@ -1017,23 +1010,13 @@ checksum = "48dd4f4a2c8405440fd0462561f0e5806bd0f77e86f51c761481bdd4018b545e" [[package]] name = "par-core" -version = "1.0.4" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "757892557993c69e82f9de0f9051e87144278aa342f03bf53617bbf044554484" +checksum = "e96cbd21255b7fb29a5d51ef38a779b517a91abd59e2756c039583f43ef4c90f" dependencies = [ "once_cell", ] -[[package]] -name = "par-iter" -version = "1.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a5b20f31e9ba82bfcbbb54a67aa40be6cebec9f668ba5753be138f9523c531a" -dependencies = [ - "either", - "par-core", -] - [[package]] name = "parking_lot" version = "0.12.4" @@ -1236,17 +1219,8 @@ checksum = "b544ef1b4eac5dc2db33ea63606ae9ffcfac26c1416a2806ae0bf5f56b201191" dependencies = [ "aho-corasick", "memchr", - "regex-automata 0.4.9", - "regex-syntax 0.8.5", -] - -[[package]] -name = "regex-automata" -version = "0.1.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132" -dependencies = [ - "regex-syntax 0.6.29", + "regex-automata", + "regex-syntax", ] [[package]] @@ -1257,15 +1231,9 @@ checksum = "809e8dc61f6de73b46c85f4c96486310fe304c434cfa43669d7b40f711150908" dependencies = [ "aho-corasick", "memchr", - "regex-syntax 0.8.5", + "regex-syntax", ] -[[package]] -name = "regex-syntax" -version = "0.6.29" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1" - [[package]] name = "regex-syntax" version = "0.8.5" @@ -1384,20 +1352,36 @@ dependencies = [ "serde", ] +[[package]] +name = "seq-macro" +version = "0.3.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1bc711410fbe7399f390ca1c3b60ad0f53f80e95c5eb935e52268a0e2cd49acc" + [[package]] name = "serde" -version = "1.0.219" +version = "1.0.228" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f0e2c6ed6606019b4e29e69dbaba95b11854410e5347d525002456dbbb786b6" +checksum = "9a8e94ea7f378bd32cbbd37198a4a91436180c5bb472411e48b5ec2e2124ae9e" +dependencies = [ + "serde_core", + "serde_derive", +] + +[[package]] +name = "serde_core" +version = "1.0.228" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "41d385c7d4ca58e59fc732af25c3983b67ac852c1a25000afe1175de458b67ad" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.219" +version = "1.0.228" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b0276cf7f2c73365f7157c8123c21cd9a50fbbd844757af28ca1f5925fc2a00" +checksum = "d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79" dependencies = [ "proc-macro2", "quote", @@ -1545,31 +1529,29 @@ dependencies = [ [[package]] name = "swc_atoms" -version = "5.0.0" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d7077ba879f95406459bc0c81f3141c529b34580bc64d7ab7bd15e7118a0391" +checksum = "3500dcf04c84606b38464561edc5e46f5132201cb3e23cf9613ed4033d6b1bb2" dependencies = [ "bytecheck", "hstr", "once_cell", "rancor", "rkyv", - "rustc-hash", "serde", ] [[package]] name = "swc_common" -version = "12.0.1" +version = "15.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fd2adffdd9f42af6cfefa16b1aaa8a0984a21854637ef9d89332dd29420d4b23" +checksum = "13be0317490fc330a53ee9e64b26891503c35336b509eb69c4fc1dc4e0119ff9" dependencies = [ "anyhow", "ast_node", "better_scoped_tls", "bytecheck", "bytes-str", - "cfg-if", "either", "from_variant", "new_debug_unreachable", @@ -1581,7 +1563,6 @@ dependencies = [ "rustc-hash", "serde", "siphasher 0.3.11", - "swc_allocator", "swc_atoms", "swc_eq_ignore_macros", "swc_sourcemap", @@ -1594,11 +1575,10 @@ dependencies = [ [[package]] name = "swc_core" -version = "27.0.6" +version = "45.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b047b6c583f238704fda957aa88d379100216c742a79d4d8f90ef85f0bf5ea38" +checksum = "54e3f7a14efb82fd970b90afb1fc1afe34d969ad4b2adc4a63803cfc95249f08" dependencies = [ - "once_cell", "swc_allocator", "swc_atoms", "swc_common", @@ -1616,9 +1596,9 @@ dependencies = [ [[package]] name = "swc_ecma_ast" -version = "12.0.0" +version = "16.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82007a7a4fb30198baf82f79244aca929d9845e16fcf897179773e4ebfed20f5" +checksum = "add9298e06af471f29aea2f8d1b6232885bd2a634521d0e95dc9d5bde3d39d3d" dependencies = [ "bitflags", "bytecheck", @@ -1629,7 +1609,6 @@ dependencies = [ "rancor", "rkyv", "rustc-hash", - "scoped-tls", "string_enum", "swc_atoms", "swc_common", @@ -1639,9 +1618,9 @@ dependencies = [ [[package]] name = "swc_ecma_codegen" -version = "14.0.0" +version = "18.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af054998dc8a578e8232b94ef046fe06f470b6d8f7f3cbe5c37e7f71dd0e48db" +checksum = "c70760095f23e70a295bc86dd52d454f5de4050621c9e27681ae26d166b77be4" dependencies = [ "ascii", "compact_str", @@ -1674,18 +1653,17 @@ dependencies = [ [[package]] name = "swc_ecma_lexer" -version = "15.0.2" +version = "24.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0e1f330dc2c4b381232b00f32b5de2c7178e2cdb5249f4c41ec9e13d45c66a5" +checksum = "d64b5db3b7cdba77d4063f7a0747333685cfb843fa2260d0c0765eff4bc82d0b" dependencies = [ "arrayvec", "bitflags", "either", - "new_debug_unreachable", "num-bigint", - "num-traits", "phf", "rustc-hash", + "seq-macro", "serde", "smallvec", "smartstring", @@ -1694,40 +1672,29 @@ dependencies = [ "swc_common", "swc_ecma_ast", "tracing", - "typed-arena", ] [[package]] name = "swc_ecma_parser" -version = "15.0.2" +version = "25.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f78a70fc7b448889412e42a730f1e34f2850b1fd49af424e39248135ada747b" +checksum = "c8a43a89976cdbb42f152cfbd89a430b1fb693a9e0f2b5e2b1959466a88c3de0" dependencies = [ - "arrayvec", - "bitflags", "either", - "new_debug_unreachable", "num-bigint", - "num-traits", - "phf", - "rustc-hash", "serde", - "smallvec", - "smartstring", - "stacker", "swc_atoms", "swc_common", "swc_ecma_ast", "swc_ecma_lexer", "tracing", - "typed-arena", ] [[package]] name = "swc_ecma_testing" -version = "13.0.0" +version = "16.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07366b063e9ae158868ff28a867ff6e295dc373bc2eb3b704070041baf968f0a" +checksum = "464be50bb5a907f43cf3559ccecec38bd69f91b580bcdbda9a65a35d8627b7f3" dependencies = [ "anyhow", "hex", @@ -1738,19 +1705,17 @@ dependencies = [ [[package]] name = "swc_ecma_transforms_base" -version = "16.0.0" +version = "28.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "47c511aff4fabb634c1799a6d6fa2a5057a4f0f482e097e31aeb43939b0ad601" +checksum = "f892bb70d780486b86485493a3c7f4df8d84d5caba7e1d83e2e700836c29d613" dependencies = [ "better_scoped_tls", - "bitflags", "indexmap", "once_cell", "par-core", "phf", "rustc-hash", "serde", - "smallvec", "swc_atoms", "swc_common", "swc_ecma_ast", @@ -1762,9 +1727,9 @@ dependencies = [ [[package]] name = "swc_ecma_transforms_testing" -version = "19.0.0" +version = "31.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e2f31fd1f0f220445f432038fc9592c8df3bb5e9e63f921e38de1077dc942e1" +checksum = "ba723011d5a35faa99e61ca0de21f6c61c3449423b3709d7dce52b7ac4d10aa4" dependencies = [ "ansi_term", "anyhow", @@ -1773,7 +1738,6 @@ dependencies = [ "serde", "serde_json", "sha2", - "swc_allocator", "swc_common", "swc_ecma_ast", "swc_ecma_codegen", @@ -1789,15 +1753,14 @@ dependencies = [ [[package]] name = "swc_ecma_utils" -version = "16.0.0" +version = "22.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a8afc858d9cd7aa2b480d55174ff9c7ee02de003ac5f9e140398206af566b0f" +checksum = "110befba503dcec034023f4ad3559b84991c7a4be977287300db9562955bda1d" dependencies = [ "indexmap", "num_cpus", "once_cell", "par-core", - "par-iter", "rustc-hash", "ryu-js", "swc_atoms", @@ -1805,14 +1768,13 @@ dependencies = [ "swc_ecma_ast", "swc_ecma_visit", "tracing", - "unicode-id", ] [[package]] name = "swc_ecma_visit" -version = "12.0.0" +version = "16.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0698960f28169c5eaa01127273aca31999bbbb6b1d3f2576ee5400daaa295d0a" +checksum = "e8763b91f52a54d5836c1f922dd393b157d47c121c7aab87308f582daf345f77" dependencies = [ "new_debug_unreachable", "num-bigint", @@ -1836,17 +1798,14 @@ dependencies = [ [[package]] name = "swc_error_reporters" -version = "14.0.0" +version = "17.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "863dea960d5c8646125462d5b283b03a8b709879729c6713c14e413b0c7a3f8f" +checksum = "61f991c703dea8982ebfb955a0b1c35fdfe551b24d8d13039c5a0b66e381edbd" dependencies = [ "anyhow", "miette", "once_cell", - "parking_lot", "serde", - "serde_derive", - "serde_json", "swc_common", ] @@ -1883,9 +1842,9 @@ dependencies = [ [[package]] name = "swc_plugin_proxy" -version = "12.0.0" +version = "16.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e55c2e46b9cc32e206a6f041621468717bbc5748d3321f2e99648340843d16ce" +checksum = "ef02609fd5dc946a13448833f8443173f45ff1477eb7e3683c0abb03018cdf20" dependencies = [ "better_scoped_tls", "bytecheck", @@ -1929,15 +1888,13 @@ dependencies = [ [[package]] name = "swc_transform_common" -version = "6.0.0" +version = "9.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "51d2564e80c5c664914f327640288f5637b0f0acf6a340b92e0082655e558f51" +checksum = "2b0ccbb3fe8a93a2bbe6df94c205a0ca909bb8786705031d355904efbb89a2a3" dependencies = [ "better_scoped_tls", - "once_cell", "rustc-hash", "serde", - "serde_json", "swc_common", ] @@ -2003,11 +1960,10 @@ dependencies = [ [[package]] name = "testing" -version = "13.0.0" +version = "16.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6995a7c9eaf999e15d3c367e6d8443323c35965a424beb224cdb98dd6a35af83" +checksum = "59f0f5f27bd9f0c9429a9330a223bc654804dcd9797f3414a491ac5190bf3cbc" dependencies = [ - "ansi_term", "cargo_metadata 0.18.1", "difference", "once_cell", @@ -2178,14 +2134,14 @@ dependencies = [ [[package]] name = "tracing-subscriber" -version = "0.3.19" +version = "0.3.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8189decb5ac0fa7bc8b96b7cb9b2701d60d48805aca84a238004d665fcc4008" +checksum = "2054a14f5307d601f88daf0553e1cbf472acc4f2c51afab632431cdcd72124d5" dependencies = [ "matchers", "nu-ansi-term", "once_cell", - "regex", + "regex-automata", "sharded-slab", "smallvec", "thread_local", @@ -2215,24 +2171,12 @@ dependencies = [ "stable_deref_trait", ] -[[package]] -name = "typed-arena" -version = "2.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6af6ae20167a9ece4bcb41af5b80f8a1f1df981f6391189ce00fd257af04126a" - [[package]] name = "typenum" version = "1.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1dccffe3ce07af9386bfd29e80c0ab1a8205a2fc34e4bcd40364df902cfa8f3f" -[[package]] -name = "unicode-id" -version = "0.3.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "10103c57044730945224467c09f71a4db0071c123a0648cc3e818913bde6b561" - [[package]] name = "unicode-id-start" version = "1.3.1" diff --git a/swc/swc-plugin-css-variable/Cargo.toml b/swc/swc-plugin-css-variable/Cargo.toml index fa33c9c..51448c3 100644 --- a/swc/swc-plugin-css-variable/Cargo.toml +++ b/swc/swc-plugin-css-variable/Cargo.toml @@ -12,6 +12,6 @@ lazy_static = "1.4.0" pathdiff = "0.2.1" regex = "1.10.3" serde_json = "1.0.111" -swc_core = { version = "27.0.6", features = ["ecma_plugin_transform"] } +swc_core = { version = "45.0.2", features = ["ecma_plugin_transform"] } transform = { path = "../transform" } diff --git a/swc/transform/Cargo.toml b/swc/transform/Cargo.toml index c8736d0..aacca18 100644 --- a/swc/transform/Cargo.toml +++ b/swc/transform/Cargo.toml @@ -6,12 +6,12 @@ edition = "2021" [dependencies] base62 = "2.0.2" serde = { version = "1.0.195", features = ["derive"] } -swc_core = "27.0.6" +swc_core = "45.0.2" xxhash-rust = { version = "0.8.8", features = ["xxh32"] } [dev-dependencies] criterion = { version = "0.5.1", default-features = false } -swc_core = { version = "27.0.6", features = ["ecma_parser", "ecma_plugin_transform"] } +swc_core = { version = "45.0.2", features = ["ecma_parser", "ecma_plugin_transform"] } [[bench]] name = "bench_main"