From 7a3bddce4a1687f0069c95da82c35d87b8f9fd4e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Donny/=EA=B0=95=EB=8F=99=EC=9C=A4?= Date: Wed, 13 Jul 2022 15:08:41 +0900 Subject: [PATCH 01/37] Update swc --- packages/next-swc/Cargo.lock | 340 ++++++------------ packages/next-swc/crates/core/Cargo.toml | 14 +- packages/next-swc/crates/emotion/Cargo.toml | 8 +- .../crates/modularize_imports/Cargo.toml | 6 +- packages/next-swc/crates/napi/Cargo.toml | 12 +- .../crates/styled_components/Cargo.toml | 10 +- .../next-swc/crates/styled_jsx/Cargo.toml | 12 +- packages/next-swc/crates/wasm/Cargo.toml | 8 +- 8 files changed, 145 insertions(+), 265 deletions(-) diff --git a/packages/next-swc/Cargo.lock b/packages/next-swc/Cargo.lock index 91699a811883..e35dd49efe45 100644 --- a/packages/next-swc/Cargo.lock +++ b/packages/next-swc/Cargo.lock @@ -1483,7 +1483,7 @@ dependencies = [ "serde", "swc_cached", "swc_ecma_transforms_testing", - "swc_ecmascript 0.180.0", + "swc_ecmascript", "testing", ] @@ -1574,7 +1574,7 @@ dependencies = [ "swc_common", "swc_ecma_loader", "swc_ecma_transforms_testing", - "swc_ecmascript 0.180.0", + "swc_ecmascript", "swc_emotion", "swc_plugin_runner", "testing", @@ -1604,7 +1604,7 @@ dependencies = [ "swc_bundler", "swc_common", "swc_ecma_loader", - "swc_ecmascript 0.180.0", + "swc_ecmascript", "swc_node_base", "swc_plugin_runner", "tracing", @@ -2902,7 +2902,7 @@ dependencies = [ "swc_atoms", "swc_common", "swc_ecma_transforms_testing", - "swc_ecmascript 0.180.0", + "swc_ecmascript", "testing", "tracing", ] @@ -2916,7 +2916,7 @@ dependencies = [ "swc_css", "swc_css_prefixer", "swc_ecma_transforms_testing", - "swc_ecmascript 0.180.0", + "swc_ecmascript", "testing", "tracing", ] @@ -2957,9 +2957,9 @@ dependencies = [ [[package]] name = "swc" -version = "0.205.0" +version = "0.206.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4195b25dda45f4e2baf7cecab6455bada2fbccc8884e377ebf75cb7da591f976" +checksum = "2b2e6d7401bcc95bb71fd1529bc4227c450c2e769ff46e35348833df10ac2b2a" dependencies = [ "ahash", "anyhow", @@ -2986,16 +2986,16 @@ dependencies = [ "swc_ecma_ext_transforms", "swc_ecma_lints", "swc_ecma_loader", - "swc_ecma_minifier 0.135.0", + "swc_ecma_minifier", "swc_ecma_parser", "swc_ecma_preset_env", - "swc_ecma_transforms 0.174.0", + "swc_ecma_transforms", "swc_ecma_transforms_base", "swc_ecma_transforms_compat", - "swc_ecma_transforms_optimization 0.143.0", + "swc_ecma_transforms_optimization", "swc_ecma_utils", "swc_ecma_visit", - "swc_ecmascript 0.179.0", + "swc_ecmascript", "swc_error_reporters", "swc_node_comments", "swc_plugin_proxy", @@ -3022,9 +3022,9 @@ dependencies = [ [[package]] name = "swc_bundler" -version = "0.169.0" +version = "0.170.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3fd675a730040ce147232e7021aebebfbe16098079824763578cd6b597632ccc" +checksum = "331527a0e32161f99acde0420fca88aecb11bdc450d8e7be2dce233483e16b2e" dependencies = [ "ahash", "anyhow", @@ -3046,7 +3046,7 @@ dependencies = [ "swc_ecma_loader", "swc_ecma_parser", "swc_ecma_transforms_base", - "swc_ecma_transforms_optimization 0.144.0", + "swc_ecma_transforms_optimization", "swc_ecma_utils", "swc_ecma_visit", "swc_fast_graph", @@ -3071,9 +3071,9 @@ dependencies = [ [[package]] name = "swc_common" -version = "0.23.0" +version = "0.24.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68e76a324fa0d7240e790c78914f39fdecfa9d87ef4efed591124b58607a4a4a" +checksum = "d77bc728792465c1f7285ca6859ef19920d6f3719811c60a63cb226dcb28d111" dependencies = [ "ahash", "anyhow", @@ -3131,9 +3131,9 @@ dependencies = [ [[package]] name = "swc_css" -version = "0.111.0" +version = "0.112.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "846d9d0f8f7c0850d771a6ad59cb71812d2bbbf36d0e6f5fed1fc95bed1a2943" +checksum = "e7aceef4f9c688af4594665e86a3afc36b3105398f68611b270d7d9c78e83084" dependencies = [ "swc_css_ast", "swc_css_codegen", @@ -3144,9 +3144,9 @@ dependencies = [ [[package]] name = "swc_css_ast" -version = "0.98.0" +version = "0.99.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc70b5ccb766255af46b6891062ab919d32a891bc5169ba638998ef7495b24a5" +checksum = "05bfe814e1214e309fe4f37e10fac9f9dbc922058717280da2cf85de8d63d9f3" dependencies = [ "is-macro", "serde", @@ -3157,12 +3157,14 @@ dependencies = [ [[package]] name = "swc_css_codegen" -version = "0.108.0" +version = "0.109.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56840a824cd5f23766657b4f3140d06cf3c3925b5d9218b5b12b3667ba5d069f" +checksum = "fa562055ba7613713105d90881d77480531b231c94fba3adc120b4cf70818efc" dependencies = [ "auto_impl", "bitflags", + "rustc-hash", + "serde", "swc_atoms", "swc_common", "swc_css_ast", @@ -3184,12 +3186,13 @@ dependencies = [ [[package]] name = "swc_css_parser" -version = "0.107.0" +version = "0.108.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "55c03bfad51ae4d97888deafad14108cc195620e54d562ce86bbc7765e1fa86d" +checksum = "9dc72e1f8e7f95e7d62e08e7328c07f78977463a73f2d67f56f70b5c41039836" dependencies = [ "bitflags", "lexical", + "serde", "swc_atoms", "swc_common", "swc_css_ast", @@ -3197,9 +3200,9 @@ dependencies = [ [[package]] name = "swc_css_prefixer" -version = "0.107.0" +version = "0.108.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f352e03d4b39cdd201a6a48360cd4c71b830987f3e573fbf26879f4253a65ea" +checksum = "c0ce57b7b030008e197e581af2ade16dd621c3522c0232af2b99bb975fe61a67" dependencies = [ "swc_atoms", "swc_common", @@ -3210,9 +3213,9 @@ dependencies = [ [[package]] name = "swc_css_utils" -version = "0.95.0" +version = "0.96.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e85a0dc84117c44f4e14f015c527a04ce97bfbd009404a02c732023afea65b5a" +checksum = "763e5f0ad2c7cabd6d3b892478d9914d20469980069f5d44347f8c83962a1314" dependencies = [ "once_cell", "serde", @@ -3225,10 +3228,11 @@ dependencies = [ [[package]] name = "swc_css_visit" -version = "0.97.0" +version = "0.98.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d8320cb496efeb4c8409ae85e808a2256043464e2d592e7a77f2abafb62eb13d" +checksum = "5f0f3dae37b3a1da0b0219a9915a1933a6c637d54e25f5339d660eff0865d535" dependencies = [ + "serde", "swc_atoms", "swc_common", "swc_css_ast", @@ -3237,9 +3241,9 @@ dependencies = [ [[package]] name = "swc_ecma_ast" -version = "0.84.0" +version = "0.85.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cce1fb31e3a100feb31f94647fe27e457bc13b17a8931204fdc9bc58a15c936a" +checksum = "cf238e6284a422d0d320a9a026242c00d34ea0628b7495e3a3b6201381103253" dependencies = [ "bitflags", "bytecheck", @@ -3256,14 +3260,15 @@ dependencies = [ [[package]] name = "swc_ecma_codegen" -version = "0.115.0" +version = "0.116.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d09abf1639f76d3d174225fdb608805f9c21d4c455f4dd2ef6ab156701f1f82a" +checksum = "66c12eb42097bec270eef631b2f437748f775ddac69d87b68142c102d50fe32f" dependencies = [ "memchr", "num-bigint", "once_cell", "rustc-hash", + "serde", "sourcemap", "swc_atoms", "swc_common", @@ -3287,9 +3292,9 @@ dependencies = [ [[package]] name = "swc_ecma_ext_transforms" -version = "0.79.0" +version = "0.80.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "54352547664f85f8c418adadfecf9292459f77b442e41b162c4415421b01273b" +checksum = "3993781882ce26226996c722df460efe741c1dac22ab3e0d3d76b80627a8dbab" dependencies = [ "phf", "swc_atoms", @@ -3301,9 +3306,9 @@ dependencies = [ [[package]] name = "swc_ecma_lints" -version = "0.52.0" +version = "0.53.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34303f7c81d31629d504c01481ad5241edc5198d3f3e340e59b17b10ff489594" +checksum = "c945d7bdda878f08466108edb2bf0be42956b76493fa726dd0824b6b49844e6d" dependencies = [ "ahash", "auto_impl", @@ -3322,9 +3327,9 @@ dependencies = [ [[package]] name = "swc_ecma_loader" -version = "0.35.0" +version = "0.36.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "710c86eb2b253160d4a02fa77057f1c493b3932d1b83430cbbc1e7823eb47e8c" +checksum = "0d53d86a8111948703d9a8df4d1f22e577038a4cecbab47f48f11bddc7a3f7d2" dependencies = [ "ahash", "anyhow", @@ -3344,43 +3349,9 @@ dependencies = [ [[package]] name = "swc_ecma_minifier" -version = "0.135.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "674790b5bd78c092542be60627c506632ea1fdea300e13b36ec71ae86be00b95" -dependencies = [ - "ahash", - "arrayvec", - "indexmap", - "num_cpus", - "once_cell", - "parking_lot", - "rayon", - "regex", - "retain_mut", - "rustc-hash", - "serde", - "serde_json", - "swc_atoms", - "swc_cached", - "swc_common", - "swc_config", - "swc_ecma_ast", - "swc_ecma_codegen", - "swc_ecma_parser", - "swc_ecma_transforms_base", - "swc_ecma_transforms_optimization 0.143.0", - "swc_ecma_utils", - "swc_ecma_visit", - "swc_timer", - "tracing", - "unicode-id", -] - -[[package]] -name = "swc_ecma_minifier" -version = "0.136.1" +version = "0.137.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13d66a95e4d19a742f38db0907b55eeb0e89928b345eb5186fae5a9f66370a0e" +checksum = "e89fd8e901750adf1f493dfb6799d85e1798d0c764501cc7fa27b6a32ca3f6e9" dependencies = [ "ahash", "arrayvec", @@ -3402,7 +3373,7 @@ dependencies = [ "swc_ecma_codegen", "swc_ecma_parser", "swc_ecma_transforms_base", - "swc_ecma_transforms_optimization 0.144.0", + "swc_ecma_transforms_optimization", "swc_ecma_utils", "swc_ecma_visit", "swc_timer", @@ -3412,9 +3383,9 @@ dependencies = [ [[package]] name = "swc_ecma_parser" -version = "0.111.0" +version = "0.112.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc1766e5b969c59e51a5dfe9337755d7380a891e579dd6b0eb7816587c7ea7aa" +checksum = "5f3d1a8c13525e36630f6cbe58011f50d7ecd94a5c5f8c00c1cd1a203d0e2ab9" dependencies = [ "either", "enum_kind", @@ -3431,9 +3402,9 @@ dependencies = [ [[package]] name = "swc_ecma_preset_env" -version = "0.149.0" +version = "0.151.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d27c37e693b1deda42bc2f70254234d79d2c10797701f261cbb7797b8f37bb2d" +checksum = "e9d65db7d717938e20b6afdb1fb47112e77e579a3b2bd9360b60906a70fcdfa8" dependencies = [ "ahash", "anyhow", @@ -3449,16 +3420,16 @@ dependencies = [ "swc_atoms", "swc_common", "swc_ecma_ast", - "swc_ecma_transforms 0.174.0", + "swc_ecma_transforms", "swc_ecma_utils", "swc_ecma_visit", ] [[package]] name = "swc_ecma_testing" -version = "0.8.0" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f9b7feb84eeec46d1772bcb10c04c2a6e68f504913896d80ac19bfd0ebb45c35" +checksum = "baf8e5dabe3819708ff551ee836717faeea1f0f8fa00b5785d9b4fb1e726ea8e" dependencies = [ "anyhow", "hex", @@ -3472,9 +3443,9 @@ dependencies = [ [[package]] name = "swc_ecma_transforms" -version = "0.174.0" +version = "0.176.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a30f3386dbaa8490ac3ed65240c057ea3a3b20d37c4dba50c876adce5201f673" +checksum = "604f9e5ef6ea7f0e3bd860b08d83e21277bceb2264d837c2e32c0496e1d19866" dependencies = [ "swc_atoms", "swc_common", @@ -3482,36 +3453,19 @@ dependencies = [ "swc_ecma_transforms_base", "swc_ecma_transforms_compat", "swc_ecma_transforms_module", - "swc_ecma_transforms_optimization 0.143.0", + "swc_ecma_transforms_optimization", "swc_ecma_transforms_proposal", - "swc_ecma_transforms_react 0.132.0", - "swc_ecma_transforms_typescript 0.136.0", - "swc_ecma_utils", - "swc_ecma_visit", -] - -[[package]] -name = "swc_ecma_transforms" -version = "0.175.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6881a9a87fd851c4ee452ab7b305551a23b9a1af429b5b988dbe6709a313d8d5" -dependencies = [ - "swc_atoms", - "swc_common", - "swc_ecma_ast", - "swc_ecma_transforms_base", - "swc_ecma_transforms_optimization 0.144.0", - "swc_ecma_transforms_react 0.133.0", - "swc_ecma_transforms_typescript 0.137.0", + "swc_ecma_transforms_react", + "swc_ecma_transforms_typescript", "swc_ecma_utils", "swc_ecma_visit", ] [[package]] name = "swc_ecma_transforms_base" -version = "0.97.0" +version = "0.98.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "66b316a99dde0ef85f1878aaa9f4bf9b15f16e999c56ed31a1433928c754ae4e" +checksum = "d8ad3e57adbc23fd8067e1a564428b8d4c5d6f8f2417d6a3bac78c41446f33ef" dependencies = [ "better_scoped_tls", "bitflags", @@ -3533,9 +3487,9 @@ dependencies = [ [[package]] name = "swc_ecma_transforms_classes" -version = "0.85.0" +version = "0.86.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c853c4366e81092d38b746e71adffc1150c694f02c1068c9fa24abbdc373a65f" +checksum = "aaf06400a1023ca45bc7ae06e2fc8475ba06b928e360d46110660a0d0ea03e78" dependencies = [ "swc_atoms", "swc_common", @@ -3547,9 +3501,9 @@ dependencies = [ [[package]] name = "swc_ecma_transforms_compat" -version = "0.114.0" +version = "0.115.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ace2890c492568b47abb6eecbbb2dcb8f2218adcf0d8a3b73d84b88fddc7d87f" +checksum = "ff1b9d0a7307654ef00586929646c26bb5669d9f619d8594715b91bc1535e7f8" dependencies = [ "ahash", "arrayvec", @@ -3587,9 +3541,9 @@ dependencies = [ [[package]] name = "swc_ecma_transforms_module" -version = "0.130.1" +version = "0.132.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb92de6bc25bf1f9af2e70b744dae53a21ec2d2fbec8da2b2f67ef14d63e8a36" +checksum = "39c4dfc2d3bb4279e73f7daa51090ebb3a09617304f104606acf0448612243d4" dependencies = [ "Inflector", "ahash", @@ -3615,32 +3569,9 @@ dependencies = [ [[package]] name = "swc_ecma_transforms_optimization" -version = "0.143.0" +version = "0.145.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a9def3dc7a6afe6b44cacd61c200181507396ee3c21a3751299718fecebce51d" -dependencies = [ - "ahash", - "dashmap", - "indexmap", - "once_cell", - "rustc-hash", - "serde_json", - "swc_atoms", - "swc_common", - "swc_ecma_ast", - "swc_ecma_parser", - "swc_ecma_transforms_base", - "swc_ecma_transforms_macros", - "swc_ecma_utils", - "swc_ecma_visit", - "tracing", -] - -[[package]] -name = "swc_ecma_transforms_optimization" -version = "0.144.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9413ed145b0c3e693d18760a72c72bb7ac3e522edbb88bfe0c6c161a7b148281" +checksum = "2585c562d472d65878f43f879c89982f1369f031776098e5e801e3a85f33e340" dependencies = [ "ahash", "dashmap", @@ -3661,9 +3592,9 @@ dependencies = [ [[package]] name = "swc_ecma_transforms_proposal" -version = "0.122.0" +version = "0.123.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78ebc6e03a51f9adcbc40ec144c9bbe78de872bf6f8f581f3abd51187ec6e648" +checksum = "378cbe88965afc5b4dfb66db20bcb8d93b4871a57799438bf8e5e8110b513179" dependencies = [ "either", "serde", @@ -3680,35 +3611,9 @@ dependencies = [ [[package]] name = "swc_ecma_transforms_react" -version = "0.132.0" +version = "0.134.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "438ffd11b17c3c6565e44a9a0d596687459de9f13b9ea302f5baf8e20c07a860" -dependencies = [ - "ahash", - "base64 0.13.0", - "dashmap", - "indexmap", - "once_cell", - "regex", - "serde", - "sha-1 0.10.0", - "string_enum", - "swc_atoms", - "swc_common", - "swc_config", - "swc_ecma_ast", - "swc_ecma_parser", - "swc_ecma_transforms_base", - "swc_ecma_transforms_macros", - "swc_ecma_utils", - "swc_ecma_visit", -] - -[[package]] -name = "swc_ecma_transforms_react" -version = "0.133.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c6b0516e231008722175bc0841bf4f3fdcfd3276ca0bf4878d6e87af5c50f324" +checksum = "4bd219118637b00f315886fa3ca62a51fff2b8091e287238fe14ce5af5bfdc14" dependencies = [ "ahash", "base64 0.13.0", @@ -3732,9 +3637,9 @@ dependencies = [ [[package]] name = "swc_ecma_transforms_testing" -version = "0.99.0" +version = "0.100.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a0829603243a7b6c127c110bf752bd59c3bffc118d23ef11498a1c6fb310ef35" +checksum = "328335980a333e4d2af4de61b205c56bdcd14c4f1814cf3284143553604fa3d3" dependencies = [ "ansi_term", "anyhow", @@ -3756,41 +3661,25 @@ dependencies = [ [[package]] name = "swc_ecma_transforms_typescript" -version = "0.136.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d8c061e8ad8a3f47e9d49f85cea3ab1edca0a6585354ea23923d18e75368eb4" -dependencies = [ - "serde", - "swc_atoms", - "swc_common", - "swc_ecma_ast", - "swc_ecma_transforms_base", - "swc_ecma_transforms_react 0.132.0", - "swc_ecma_utils", - "swc_ecma_visit", -] - -[[package]] -name = "swc_ecma_transforms_typescript" -version = "0.137.0" +version = "0.138.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6716a73401b5d717d6fd20159385ce09adbdd3afc765c3890859d84ada8af729" +checksum = "683456b297f1c645d1ae06745f8b0ae0a53e50eab5933042d223395e64b17909" dependencies = [ "serde", "swc_atoms", "swc_common", "swc_ecma_ast", "swc_ecma_transforms_base", - "swc_ecma_transforms_react 0.133.0", + "swc_ecma_transforms_react", "swc_ecma_utils", "swc_ecma_visit", ] [[package]] name = "swc_ecma_utils" -version = "0.93.0" +version = "0.94.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70981d5ef10c0ff0a002e21decbca9dde5b40c2fc0d0bc6eaebb219a8e0a5f7d" +checksum = "12b5d888a2347676ba8ff95497577ffa6b75ae382a10cf2e2496cc8a766cb037" dependencies = [ "indexmap", "once_cell", @@ -3804,11 +3693,12 @@ dependencies = [ [[package]] name = "swc_ecma_visit" -version = "0.70.0" +version = "0.71.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fcd081250d664808fcd23110202728811236c87f527656ffc1db7f00ac1a06dd" +checksum = "a2323f3a552728d4bda84203ba574325e47506f7b9ab69bf8a60f3c4d48ae009" dependencies = [ "num-bigint", + "serde", "swc_atoms", "swc_common", "swc_ecma_ast", @@ -3818,25 +3708,15 @@ dependencies = [ [[package]] name = "swc_ecmascript" -version = "0.179.0" +version = "0.181.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44e4fa994e933838459cfbfce2913f34b054ff3ecc4988e6f1eb993d7bb1a7ef" -dependencies = [ - "swc_ecma_ast", - "swc_ecma_parser", -] - -[[package]] -name = "swc_ecmascript" -version = "0.180.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1059b3c228636812089e7a3d662c49d1378c943a75b142a02c93708b9b49c9ec" +checksum = "1b52298115d4a9867d44e6c0f1415904a394f5236c94f25d5b8fcd5090280c71" dependencies = [ "swc_ecma_ast", "swc_ecma_codegen", - "swc_ecma_minifier 0.136.1", + "swc_ecma_minifier", "swc_ecma_parser", - "swc_ecma_transforms 0.175.0", + "swc_ecma_transforms", "swc_ecma_utils", "swc_ecma_visit", ] @@ -3856,7 +3736,7 @@ dependencies = [ "swc_atoms", "swc_common", "swc_ecma_transforms_testing", - "swc_ecmascript 0.180.0", + "swc_ecmascript", "swc_trace_macro", "testing", "tracing", @@ -3876,9 +3756,9 @@ dependencies = [ [[package]] name = "swc_error_reporters" -version = "0.7.0" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72971d433142768c6364e5a99ba520c70fe61c7fd92492f10a9f2ee513a9cf5b" +checksum = "349831ad546109c7b49503ba7819e89885d66d64f337537a41d8ca815086973d" dependencies = [ "anyhow", "miette", @@ -3889,9 +3769,9 @@ dependencies = [ [[package]] name = "swc_fast_graph" -version = "0.11.0" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9260826bb82481fb946ca653d10196f2653beba1b566b72f42ba7046e4ad0c8f" +checksum = "8dccd98754c271a1b14bd5c9aa39353ca4381af96672341d610b3e773eb23d1b" dependencies = [ "ahash", "indexmap", @@ -3901,9 +3781,9 @@ dependencies = [ [[package]] name = "swc_graph_analyzer" -version = "0.12.0" +version = "0.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a9b192a3b556cf0a81b4dcb8fa35374d306cd46f806dce937599b40e2d945e51" +checksum = "099f7989cb59f839b6fd53a7039d88d33b3b603412b9b9e38a0a518c1c9e14bd" dependencies = [ "ahash", "auto_impl", @@ -3936,9 +3816,9 @@ dependencies = [ [[package]] name = "swc_node_comments" -version = "0.10.0" +version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86ee4d9f6ae1f863eee49b5336190b9292174c81fe76f6b05e673ee7f68aad7d" +checksum = "d4993a1fdbc8364efb42ab07e4a50568ef2e0d524155285101f982f8d4ef288e" dependencies = [ "ahash", "dashmap", @@ -3947,9 +3827,9 @@ dependencies = [ [[package]] name = "swc_plugin_proxy" -version = "0.11.0" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "93b79b1fc945e653bf7d8d37636bb6b26ae335d6f5901647108fae27f88b69e2" +checksum = "af3b37642f4049bb74e1a9f85aed276e4fb72c5b7da6a25f261b8a7ed2ce8e73" dependencies = [ "better_scoped_tls", "bytecheck", @@ -3960,9 +3840,9 @@ dependencies = [ [[package]] name = "swc_plugin_runner" -version = "0.64.0" +version = "0.65.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "46039074c4e3934754daffddd4883757c8521da643df49b8b7177c00a1b8919d" +checksum = "4c717217cc9aab42fa67a1a62c8b29685a3eb243d7274f1e784c617679852a70" dependencies = [ "anyhow", "once_cell", @@ -3980,9 +3860,9 @@ dependencies = [ [[package]] name = "swc_timer" -version = "0.11.0" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75c07b738c3a6ab390fcb29b60377e33358945879387009097e1d5f504384c08" +checksum = "dd1f04bddb1be850c877daa7de8ecb7c3eaacc48e5d3301439de95dc79422e05" dependencies = [ "tracing", ] @@ -4000,9 +3880,9 @@ dependencies = [ [[package]] name = "swc_visit" -version = "0.4.0" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fafa6c946bdbe601f5511140776d59e82a03f52a5e5039192b4b96f3ca639d88" +checksum = "21a9c3d8bc1c6145416d92a745940553650ca8cd3878f176fe1d8b8e890db852" dependencies = [ "either", "swc_visit_macros", @@ -4010,9 +3890,9 @@ dependencies = [ [[package]] name = "swc_visit_macros" -version = "0.4.0" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cad1b8e0b2d48660bc454f70495e9bb583f9bf501f28165568569946e62f44a2" +checksum = "eabd04593cff03ac788d648023702cc69fd5710ea87ab446da1977f6253b0a5f" dependencies = [ "Inflector", "pmutil", @@ -4074,9 +3954,9 @@ dependencies = [ [[package]] name = "testing" -version = "0.25.0" +version = "0.26.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cdc6de80b7854362068e93c64c6e672257a5cbd1485af8f17b8b2ef98cb63c75" +checksum = "abafe9b6602fc6664aeb09cf6738cba107bf7f5abd35e81f15fd385347f951a7" dependencies = [ "ansi_term", "difference", @@ -4569,7 +4449,7 @@ dependencies = [ "serde_json", "swc", "swc_common", - "swc_ecmascript 0.180.0", + "swc_ecmascript", "swc_plugin_runner", "tracing", "wasm-bindgen", diff --git a/packages/next-swc/crates/core/Cargo.toml b/packages/next-swc/crates/core/Cargo.toml index 585ada4f0e3b..f729ffed7d69 100644 --- a/packages/next-swc/crates/core/Cargo.toml +++ b/packages/next-swc/crates/core/Cargo.toml @@ -26,18 +26,18 @@ swc_emotion = {path="../emotion"} styled_components = {path="../styled_components"} styled_jsx = {path="../styled_jsx"} modularize_imports = {path="../modularize_imports"} -swc = "0.205.0" +swc = "0.206.0" swc_atoms = "0.2.13" -swc_common = { version = "0.23.0", features = ["concurrent", "sourcemap"] } -swc_ecma_loader = { version = "0.35.0", features = ["node", "lru"] } -swc_ecmascript = { version = "0.180.0", features = ["codegen", "minifier", "optimization", "parser", "react", "transforms", "typescript", "utils", "visit"] } -swc_plugin_runner = { version = "0.64.0", optional = true, default-features = false } +swc_common = { version = "0.24.0", features = ["concurrent", "sourcemap"] } +swc_ecma_loader = { version = "0.36.0", features = ["node", "lru"] } +swc_ecmascript = { version = "0.181.0", features = ["codegen", "minifier", "optimization", "parser", "react", "transforms", "typescript", "utils", "visit"] } +swc_plugin_runner = { version = "0.65.0", optional = true, default-features = false } swc_cached = "0.1.1" tracing = { version = "0.1.32", features = ["release_max_level_info"] } wasmer = { version = "2.3.0", optional = true, default-features = false } wasmer-wasi = { version = "2.3.0", optional = true, default-features = false } [dev-dependencies] -swc_ecma_transforms_testing = "0.99.0" -testing = "0.25.0" +swc_ecma_transforms_testing = "0.100.0" +testing = "0.26.0" walkdir = "2.3.2" diff --git a/packages/next-swc/crates/emotion/Cargo.toml b/packages/next-swc/crates/emotion/Cargo.toml index 0eaa2735c151..eee8f2754629 100644 --- a/packages/next-swc/crates/emotion/Cargo.toml +++ b/packages/next-swc/crates/emotion/Cargo.toml @@ -19,11 +19,11 @@ regex = "1.5" serde = "1" sourcemap = "6.0.1" swc_atoms = "0.2.13" -swc_common = { version = "0.23.0", features = ["concurrent", "sourcemap"] } -swc_ecmascript = { version = "0.180.0", features = ["codegen", "utils", "visit"] } +swc_common = { version = "0.24.0", features = ["concurrent", "sourcemap"] } +swc_ecmascript = { version = "0.181.0", features = ["codegen", "utils", "visit"] } swc_trace_macro = "0.1.1" tracing = { version = "0.1.32", features = ["release_max_level_info"] } [dev-dependencies] -swc_ecma_transforms_testing = "0.99.0" -testing = "0.25.0" +swc_ecma_transforms_testing = "0.100.0" +testing = "0.26.0" diff --git a/packages/next-swc/crates/modularize_imports/Cargo.toml b/packages/next-swc/crates/modularize_imports/Cargo.toml index 188d151ca6b1..e03b352b1ef8 100644 --- a/packages/next-swc/crates/modularize_imports/Cargo.toml +++ b/packages/next-swc/crates/modularize_imports/Cargo.toml @@ -15,8 +15,8 @@ once_cell = "1.13.0" regex = "1.5" serde = "1" swc_cached = "0.1.1" -swc_ecmascript = { version = "0.180.0", features = ["visit"] } +swc_ecmascript = { version = "0.181.0", features = ["visit"] } [dev-dependencies] -swc_ecma_transforms_testing = "0.99.0" -testing = "0.25.0" +swc_ecma_transforms_testing = "0.100.0" +testing = "0.26.0" diff --git a/packages/next-swc/crates/napi/Cargo.toml b/packages/next-swc/crates/napi/Cargo.toml index 10de48705d5e..43994fe65807 100644 --- a/packages/next-swc/crates/napi/Cargo.toml +++ b/packages/next-swc/crates/napi/Cargo.toml @@ -33,13 +33,13 @@ next-swc = {version = "0.0.0", path = "../core"} once_cell = "1.13.0" serde = "1" serde_json = "1" -swc = "0.205.0" +swc = "0.206.0" swc_atoms = "0.2.13" -swc_bundler = { version = "0.169.0", features = ["concurrent"] } -swc_common = { version = "0.23.0", features = ["concurrent", "sourcemap"] } -swc_ecma_loader = { version = "0.35.0", features = ["node", "lru"] } -swc_ecmascript = { version = "0.180.0", features = ["codegen", "minifier", "optimization", "parser", "react", "transforms", "typescript", "utils", "visit"] } -swc_plugin_runner = { version = "0.64.0", optional = true } +swc_bundler = { version = "0.170.0", features = ["concurrent"] } +swc_common = { version = "0.24.0", features = ["concurrent", "sourcemap"] } +swc_ecma_loader = { version = "0.36.0", features = ["node", "lru"] } +swc_ecmascript = { version = "0.181.0", features = ["codegen", "minifier", "optimization", "parser", "react", "transforms", "typescript", "utils", "visit"] } +swc_plugin_runner = { version = "0.65.0", optional = true } swc_node_base = "0.5.5" tracing = { version = "0.1.32", features = ["release_max_level_info"] } tracing-futures = "0.2.5" diff --git a/packages/next-swc/crates/styled_components/Cargo.toml b/packages/next-swc/crates/styled_components/Cargo.toml index 9095ed02c289..9facbb9f271d 100644 --- a/packages/next-swc/crates/styled_components/Cargo.toml +++ b/packages/next-swc/crates/styled_components/Cargo.toml @@ -16,12 +16,12 @@ once_cell = "1.13.0" regex = {version = "1.5.4", features = ["std", "perf"], default-features = false} serde = {version = "1.0.130", features = ["derive"]} swc_atoms = "0.2.13" -swc_common = { version = "0.23.0", features = ["concurrent"] } -swc_ecmascript = { version = "0.180.0", features = ["utils", "visit"] } +swc_common = { version = "0.24.0", features = ["concurrent"] } +swc_ecmascript = { version = "0.181.0", features = ["utils", "visit"] } tracing = "0.1.32" [dev-dependencies] serde_json = "1" -swc_ecma_transforms_testing = "0.99.0" -swc_ecmascript = { version = "0.180.0", features = ["parser", "transforms"] } -testing = "0.25.0" +swc_ecma_transforms_testing = "0.100.0" +swc_ecmascript = { version = "0.181.0", features = ["parser", "transforms"] } +testing = "0.26.0" diff --git a/packages/next-swc/crates/styled_jsx/Cargo.toml b/packages/next-swc/crates/styled_jsx/Cargo.toml index 9b5a1eb0452d..d928e380308b 100644 --- a/packages/next-swc/crates/styled_jsx/Cargo.toml +++ b/packages/next-swc/crates/styled_jsx/Cargo.toml @@ -11,12 +11,12 @@ version = "0.11.0" [dependencies] easy-error = "1.0.0" -swc_common = { version = "0.23.0", features = ["concurrent", "sourcemap"] } -swc_css = "0.111.0" -swc_css_prefixer = "0.107.0" -swc_ecmascript = { version = "0.180.0", features = ["parser", "minifier", "utils", "visit"] } +swc_common = { version = "0.24.0", features = ["concurrent", "sourcemap"] } +swc_css = "0.112.0" +swc_css_prefixer = "0.108.0" +swc_ecmascript = { version = "0.181.0", features = ["parser", "minifier", "utils", "visit"] } tracing = "0.1.32" [dev-dependencies] -swc_ecma_transforms_testing = "0.99.0" -testing = "0.25.0" +swc_ecma_transforms_testing = "0.100.0" +testing = "0.26.0" diff --git a/packages/next-swc/crates/wasm/Cargo.toml b/packages/next-swc/crates/wasm/Cargo.toml index 2bb249507988..1600e6b84ee1 100644 --- a/packages/next-swc/crates/wasm/Cargo.toml +++ b/packages/next-swc/crates/wasm/Cargo.toml @@ -25,10 +25,10 @@ parking_lot_core = "=0.8.0" path-clean = "0.1" serde = {version = "1", features = ["derive"]} serde_json = "1" -swc = "0.205.0" -swc_common = { version = "0.23.0", features = ["concurrent", "sourcemap"] } -swc_ecmascript = { version = "0.180.0", features = ["codegen", "minifier", "optimization", "parser", "react", "transforms", "typescript", "utils", "visit"] } -swc_plugin_runner = { version = "0.64.0", default-features = false, optional = true } +swc = "0.206.0" +swc_common = { version = "0.24.0", features = ["concurrent", "sourcemap"] } +swc_ecmascript = { version = "0.181.0", features = ["codegen", "minifier", "optimization", "parser", "react", "transforms", "typescript", "utils", "visit"] } +swc_plugin_runner = { version = "0.65.0", default-features = false, optional = true } tracing = { version = "0.1.32", features = ["release_max_level_off"] } wasm-bindgen = {version = "0.2", features = ["serde-serialize"]} wasm-bindgen-futures = "0.4.8" From 1e50e8cacc4980662ae2f84f9b1c76aee3f49e8c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Donny/=EA=B0=95=EB=8F=99=EC=9C=A4?= Date: Wed, 13 Jul 2022 15:09:45 +0900 Subject: [PATCH 02/37] Fix api --- packages/next-swc/crates/emotion/src/lib.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/next-swc/crates/emotion/src/lib.rs b/packages/next-swc/crates/emotion/src/lib.rs index d09fd7f2619c..0b7f0caadd49 100644 --- a/packages/next-swc/crates/emotion/src/lib.rs +++ b/packages/next-swc/crates/emotion/src/lib.rs @@ -10,7 +10,7 @@ use sourcemap::{RawToken, SourceMap as RawSourcemap}; use swc_atoms::JsWord; use swc_common::comments::Comments; use swc_common::util::take::Take; -use swc_common::{BytePos, SourceMap, DUMMY_SP}; +use swc_common::{BytePos, SourceMap, SourceMapperDyn, DUMMY_SP}; use swc_ecmascript::ast::{ ArrayLit, CallExpr, JSXAttr, JSXAttrName, JSXAttrOrSpread, JSXAttrValue, JSXElementName, JSXExpr, JSXExprContainer, JSXObject, SourceMapperExt, @@ -142,7 +142,7 @@ enum PackageMeta { pub fn emotion( emotion_options: EmotionOptions, path: &Path, - cm: Arc, + cm: Arc, comments: C, ) -> impl Fold { EmotionTransformer::new(emotion_options, path, cm, comments) From 52755f2c9d24cb6dde1acce28f56e78463a7c5c0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Donny/=EA=B0=95=EB=8F=99=EC=9C=A4?= Date: Wed, 13 Jul 2022 15:11:08 +0900 Subject: [PATCH 03/37] fixup --- packages/next-swc/Cargo.lock | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/next-swc/Cargo.lock b/packages/next-swc/Cargo.lock index e35dd49efe45..4c70bcbff5cf 100644 --- a/packages/next-swc/Cargo.lock +++ b/packages/next-swc/Cargo.lock @@ -3794,9 +3794,9 @@ dependencies = [ [[package]] name = "swc_macros_common" -version = "0.3.5" +version = "0.3.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d5dca3f08d02da4684c3373150f7c045128f81ea00f0c434b1b012bc65a6cce3" +checksum = "a4be988307882648d9bc7c71a6a73322b7520ef0211e920489a98f8391d8caa2" dependencies = [ "pmutil", "proc-macro2", From 7742ddd3b6e707ed86cfa7e3a3cb8cdb1135b9e7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Donny/=EA=B0=95=EB=8F=99=EC=9C=A4?= Date: Wed, 13 Jul 2022 15:12:23 +0900 Subject: [PATCH 04/37] Fix --- packages/next-swc/crates/emotion/src/lib.rs | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/packages/next-swc/crates/emotion/src/lib.rs b/packages/next-swc/crates/emotion/src/lib.rs index 0b7f0caadd49..08b85675d3b6 100644 --- a/packages/next-swc/crates/emotion/src/lib.rs +++ b/packages/next-swc/crates/emotion/src/lib.rs @@ -154,7 +154,7 @@ pub struct EmotionTransformer { filepath: PathBuf, dir: Option, filename: Option, - cm: Arc, + cm: Arc, comments: C, import_packages: FxHashMap, emotion_target_class_name_count: usize, @@ -165,7 +165,12 @@ pub struct EmotionTransformer { #[swc_trace] impl EmotionTransformer { - pub fn new(options: EmotionOptions, path: &Path, cm: Arc, comments: C) -> Self { + pub fn new( + options: EmotionOptions, + path: &Path, + cm: Arc, + comments: C, + ) -> Self { EmotionTransformer { options, filepath_hash: None, From 73a0356f16ce9efb68a0ccda1d1f423136ad663e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Donny/=EA=B0=95=EB=8F=99=EC=9C=A4?= Date: Wed, 13 Jul 2022 15:12:56 +0900 Subject: [PATCH 05/37] lints --- packages/next-swc/crates/emotion/src/lib.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/next-swc/crates/emotion/src/lib.rs b/packages/next-swc/crates/emotion/src/lib.rs index 08b85675d3b6..dcc9691cb653 100644 --- a/packages/next-swc/crates/emotion/src/lib.rs +++ b/packages/next-swc/crates/emotion/src/lib.rs @@ -10,7 +10,7 @@ use sourcemap::{RawToken, SourceMap as RawSourcemap}; use swc_atoms::JsWord; use swc_common::comments::Comments; use swc_common::util::take::Take; -use swc_common::{BytePos, SourceMap, SourceMapperDyn, DUMMY_SP}; +use swc_common::{BytePos, SourceMapperDyn, DUMMY_SP}; use swc_ecmascript::ast::{ ArrayLit, CallExpr, JSXAttr, JSXAttrName, JSXAttrOrSpread, JSXAttrValue, JSXElementName, JSXExpr, JSXExprContainer, JSXObject, SourceMapperExt, From 594af054ef4523576185e58928f4a68301cee799 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Donny/=EA=B0=95=EB=8F=99=EC=9C=A4?= Date: Wed, 13 Jul 2022 15:14:12 +0900 Subject: [PATCH 06/37] Update test refs --- .../tests/fixtures/transpile-css-prop-add-import/output.js | 2 +- .../tests/fixtures/transpile-css-prop-add-require/output.js | 5 ++--- .../tests/fixtures/transpile-css-prop/output.js | 4 ++-- 3 files changed, 5 insertions(+), 6 deletions(-) diff --git a/packages/next-swc/crates/styled_components/tests/fixtures/transpile-css-prop-add-import/output.js b/packages/next-swc/crates/styled_components/tests/fixtures/transpile-css-prop-add-import/output.js index 45627af78846..04472c4c48ca 100644 --- a/packages/next-swc/crates/styled_components/tests/fixtures/transpile-css-prop-add-import/output.js +++ b/packages/next-swc/crates/styled_components/tests/fixtures/transpile-css-prop-add-import/output.js @@ -1,5 +1,5 @@ -import _styled from "styled-components"; // @flow +import _styled from "styled-components"; import React from 'react'; import Card from '../../shared/components/Card'; import config from '../../../config'; diff --git a/packages/next-swc/crates/styled_components/tests/fixtures/transpile-css-prop-add-require/output.js b/packages/next-swc/crates/styled_components/tests/fixtures/transpile-css-prop-add-require/output.js index 8d35dd043cfc..2fb17534060c 100644 --- a/packages/next-swc/crates/styled_components/tests/fixtures/transpile-css-prop-add-require/output.js +++ b/packages/next-swc/crates/styled_components/tests/fixtures/transpile-css-prop-add-require/output.js @@ -1,8 +1,7 @@ -import _styled from "styled-components"; // @flow +import _styled from "styled-components"; import React from 'react'; -export default (()=><_StyledDiv /> -); +export default (()=><_StyledDiv />); var _StyledDiv = _styled("div")` width: 35em; `; diff --git a/packages/next-swc/crates/styled_components/tests/fixtures/transpile-css-prop/output.js b/packages/next-swc/crates/styled_components/tests/fixtures/transpile-css-prop/output.js index 06f09c05053d..149faa8c8185 100644 --- a/packages/next-swc/crates/styled_components/tests/fixtures/transpile-css-prop/output.js +++ b/packages/next-swc/crates/styled_components/tests/fixtures/transpile-css-prop/output.js @@ -1,7 +1,7 @@ -import _styled from "styled-components"; /* * Basic fixtures - */ const StaticString = (p)=><_StyledP >A; + */ import _styled from "styled-components"; +const StaticString = (p)=><_StyledP >A; const StaticTemplate = (p)=><_StyledP2 > A From 6438609fd39a393c48b0f252de97fd27f94d09b0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Donny/=EA=B0=95=EB=8F=99=EC=9C=A4?= Date: Wed, 13 Jul 2022 15:14:40 +0900 Subject: [PATCH 07/37] Update test refs --- .../tests/fixture/conflicts/output.js | 14 +++++++ .../fixture/dynamic-this-in-arrow/output.js | 39 +++++++++++++++++++ .../fixture/exported-jsx-style/output.js | 1 + .../fixture/exported-non-jsx-style/output.js | 1 + .../tests/fixture/source-maps/output.js | 8 ++++ .../fixture/styles-external-invalid/output.js | 9 +++++ .../styles-external-invalid2/output.js | 8 ++++ .../tests/fixture/styles2/output.js | 5 +++ 8 files changed, 85 insertions(+) create mode 100644 packages/next-swc/crates/styled_jsx/tests/fixture/source-maps/output.js create mode 100644 packages/next-swc/crates/styled_jsx/tests/fixture/styles-external-invalid/output.js create mode 100644 packages/next-swc/crates/styled_jsx/tests/fixture/styles-external-invalid2/output.js create mode 100644 packages/next-swc/crates/styled_jsx/tests/fixture/styles2/output.js diff --git a/packages/next-swc/crates/styled_jsx/tests/fixture/conflicts/output.js b/packages/next-swc/crates/styled_jsx/tests/fixture/conflicts/output.js index e69de29bb2d1..874cf34f5305 100644 --- a/packages/next-swc/crates/styled_jsx/tests/fixture/conflicts/output.js +++ b/packages/next-swc/crates/styled_jsx/tests/fixture/conflicts/output.js @@ -0,0 +1,14 @@ +// TODO +// export const _JSXStyle = '_JSXStyle-literal' +// export default function() { +// return ( +//
+//

test

+// +//
+// ) +// } diff --git a/packages/next-swc/crates/styled_jsx/tests/fixture/dynamic-this-in-arrow/output.js b/packages/next-swc/crates/styled_jsx/tests/fixture/dynamic-this-in-arrow/output.js index e69de29bb2d1..11fc44ff6c8a 100644 --- a/packages/next-swc/crates/styled_jsx/tests/fixture/dynamic-this-in-arrow/output.js +++ b/packages/next-swc/crates/styled_jsx/tests/fixture/dynamic-this-in-arrow/output.js @@ -0,0 +1,39 @@ +// TODO +// import React, { Component } from 'react' +// export default class Index extends Component { +// static getInitialProps() { +// return { color: 'aquamarine' } +// } +// render() { +// return ( +//
+// {[1, 2].map(idx => ( +//
+// {[3, 4].map(idx2 => ( +//
{this.props.color}
+// ))} +//
+// ))} +// {[1, 2].map(idx => ( +//
+//
+// {this.props.color} +//
+// +//
+//
{this.props.color} hello there
+//
+//
+//
+//
+//
+// ))} +// +//
+// ) +// } +// } diff --git a/packages/next-swc/crates/styled_jsx/tests/fixture/exported-jsx-style/output.js b/packages/next-swc/crates/styled_jsx/tests/fixture/exported-jsx-style/output.js index e69de29bb2d1..79908ec11277 100644 --- a/packages/next-swc/crates/styled_jsx/tests/fixture/exported-jsx-style/output.js +++ b/packages/next-swc/crates/styled_jsx/tests/fixture/exported-jsx-style/output.js @@ -0,0 +1 @@ +// module.exports = () =>

diff --git a/packages/next-swc/crates/styled_jsx/tests/fixture/exported-non-jsx-style/output.js b/packages/next-swc/crates/styled_jsx/tests/fixture/exported-non-jsx-style/output.js index e69de29bb2d1..42b1f9876f85 100644 --- a/packages/next-swc/crates/styled_jsx/tests/fixture/exported-non-jsx-style/output.js +++ b/packages/next-swc/crates/styled_jsx/tests/fixture/exported-non-jsx-style/output.js @@ -0,0 +1 @@ +// module.exports = () =>

diff --git a/packages/next-swc/crates/styled_jsx/tests/fixture/source-maps/output.js b/packages/next-swc/crates/styled_jsx/tests/fixture/source-maps/output.js new file mode 100644 index 000000000000..e14ced8ae0f7 --- /dev/null +++ b/packages/next-swc/crates/styled_jsx/tests/fixture/source-maps/output.js @@ -0,0 +1,8 @@ +// TODO: needs sourcemaps +// export default () => ( +//
+//

test

+//

woot

+// +//
+// ) diff --git a/packages/next-swc/crates/styled_jsx/tests/fixture/styles-external-invalid/output.js b/packages/next-swc/crates/styled_jsx/tests/fixture/styles-external-invalid/output.js new file mode 100644 index 000000000000..587369e43fc1 --- /dev/null +++ b/packages/next-swc/crates/styled_jsx/tests/fixture/styles-external-invalid/output.js @@ -0,0 +1,9 @@ +// TODO +// import css from 'styled-jsx/css' +// const color = 'red' +// export const foo = css`div { color: ${color}}` +// const props = { color: 'red ' } +// export default css` +// div { font-size: 3em; color: ${props.color} } +// p { color: ${this.props.color};} +// ` diff --git a/packages/next-swc/crates/styled_jsx/tests/fixture/styles-external-invalid2/output.js b/packages/next-swc/crates/styled_jsx/tests/fixture/styles-external-invalid2/output.js new file mode 100644 index 000000000000..8f616ffc6954 --- /dev/null +++ b/packages/next-swc/crates/styled_jsx/tests/fixture/styles-external-invalid2/output.js @@ -0,0 +1,8 @@ +// TODO +// import css from 'styled-jsx/css' +// const color = 'red' +// export const foo = css`div { color: ${color}}` +// export default css` +// div { font-size: 3em } +// p { color: ${props.color};} +// ` diff --git a/packages/next-swc/crates/styled_jsx/tests/fixture/styles2/output.js b/packages/next-swc/crates/styled_jsx/tests/fixture/styles2/output.js new file mode 100644 index 000000000000..cd7ba2952ca5 --- /dev/null +++ b/packages/next-swc/crates/styled_jsx/tests/fixture/styles2/output.js @@ -0,0 +1,5 @@ +// TODO: support common js +// import css from 'styled-jsx/css' +// module.exports = css` +// div { font-size: 3em } +// ` From 5aacc620c9b4df3669b8e28e6ef4d2feca542fc9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Donny/=EA=B0=95=EB=8F=99=EC=9C=A4?= Date: Wed, 13 Jul 2022 15:15:00 +0900 Subject: [PATCH 08/37] Bump --- packages/next-swc/Cargo.lock | 8 ++++---- packages/next-swc/crates/emotion/Cargo.toml | 2 +- packages/next-swc/crates/modularize_imports/Cargo.toml | 2 +- packages/next-swc/crates/styled_components/Cargo.toml | 2 +- packages/next-swc/crates/styled_jsx/Cargo.toml | 2 +- 5 files changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/next-swc/Cargo.lock b/packages/next-swc/Cargo.lock index 4c70bcbff5cf..5e00c315d76d 100644 --- a/packages/next-swc/Cargo.lock +++ b/packages/next-swc/Cargo.lock @@ -1475,7 +1475,7 @@ dependencies = [ [[package]] name = "modularize_imports" -version = "0.11.0" +version = "0.12.0" dependencies = [ "handlebars", "once_cell", @@ -2892,7 +2892,7 @@ checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" [[package]] name = "styled_components" -version = "0.36.0" +version = "0.37.0" dependencies = [ "Inflector", "once_cell", @@ -2909,7 +2909,7 @@ dependencies = [ [[package]] name = "styled_jsx" -version = "0.11.0" +version = "0.12.0" dependencies = [ "easy-error", "swc_common", @@ -3723,7 +3723,7 @@ dependencies = [ [[package]] name = "swc_emotion" -version = "0.12.0" +version = "0.13.0" dependencies = [ "base64 0.13.0", "byteorder", diff --git a/packages/next-swc/crates/emotion/Cargo.toml b/packages/next-swc/crates/emotion/Cargo.toml index eee8f2754629..8d56c6f9c399 100644 --- a/packages/next-swc/crates/emotion/Cargo.toml +++ b/packages/next-swc/crates/emotion/Cargo.toml @@ -5,7 +5,7 @@ description = "AST Transforms for emotion" license = "Apache-2.0" name = "swc_emotion" repository = "https://github.com/vercel/next.js.git" -version = "0.12.0" +version = "0.13.0" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html diff --git a/packages/next-swc/crates/modularize_imports/Cargo.toml b/packages/next-swc/crates/modularize_imports/Cargo.toml index e03b352b1ef8..e32dd5bf887c 100644 --- a/packages/next-swc/crates/modularize_imports/Cargo.toml +++ b/packages/next-swc/crates/modularize_imports/Cargo.toml @@ -5,7 +5,7 @@ edition = "2018" license = "Apache-2.0" name = "modularize_imports" repository = "https://github.com/vercel/next.js.git" -version = "0.11.0" +version = "0.12.0" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html diff --git a/packages/next-swc/crates/styled_components/Cargo.toml b/packages/next-swc/crates/styled_components/Cargo.toml index 9facbb9f271d..90c7f952ca45 100644 --- a/packages/next-swc/crates/styled_components/Cargo.toml +++ b/packages/next-swc/crates/styled_components/Cargo.toml @@ -6,7 +6,7 @@ include = ["Cargo.toml", "src/**/*.rs"] license = "Apache-2.0" name = "styled_components" repository = "https://github.com/vercel/next.js.git" -version = "0.36.0" +version = "0.37.0" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html diff --git a/packages/next-swc/crates/styled_jsx/Cargo.toml b/packages/next-swc/crates/styled_jsx/Cargo.toml index d928e380308b..e122c13a267b 100644 --- a/packages/next-swc/crates/styled_jsx/Cargo.toml +++ b/packages/next-swc/crates/styled_jsx/Cargo.toml @@ -5,7 +5,7 @@ edition = "2018" license = "Apache-2.0" name = "styled_jsx" repository = "https://github.com/vercel/next.js.git" -version = "0.11.0" +version = "0.12.0" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html From fec352e1582b3d8ca4264082cd9efd298a94ed82 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Donny/=EA=B0=95=EB=8F=99=EC=9C=A4?= Date: Wed, 13 Jul 2022 17:38:46 +0900 Subject: [PATCH 09/37] Add a module --- packages/next-swc/crates/emotion/src/import_map.rs | 1 + packages/next-swc/crates/emotion/src/lib.rs | 1 + 2 files changed, 2 insertions(+) create mode 100644 packages/next-swc/crates/emotion/src/import_map.rs diff --git a/packages/next-swc/crates/emotion/src/import_map.rs b/packages/next-swc/crates/emotion/src/import_map.rs new file mode 100644 index 000000000000..8b137891791f --- /dev/null +++ b/packages/next-swc/crates/emotion/src/import_map.rs @@ -0,0 +1 @@ + diff --git a/packages/next-swc/crates/emotion/src/lib.rs b/packages/next-swc/crates/emotion/src/lib.rs index dcc9691cb653..e5804610196b 100644 --- a/packages/next-swc/crates/emotion/src/lib.rs +++ b/packages/next-swc/crates/emotion/src/lib.rs @@ -26,6 +26,7 @@ use swc_ecmascript::{ use swc_trace_macro::swc_trace; mod hash; +mod import_map; static EMOTION_OFFICIAL_LIBRARIES: Lazy> = Lazy::new(|| { vec![ From a1e66c5f2719f4009e88d03939f58b6a9702f360 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Donny/=EA=B0=95=EB=8F=99=EC=9C=A4?= Date: Wed, 13 Jul 2022 19:25:11 +0900 Subject: [PATCH 10/37] Types --- .../next-swc/crates/emotion/src/import_map.rs | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/packages/next-swc/crates/emotion/src/import_map.rs b/packages/next-swc/crates/emotion/src/import_map.rs index 8b137891791f..d320e566be05 100644 --- a/packages/next-swc/crates/emotion/src/import_map.rs +++ b/packages/next-swc/crates/emotion/src/import_map.rs @@ -1 +1,18 @@ +use serde::Deserialize; +use swc_atoms::JsWord; +use swc_common::collections::AHashMap; +/// key: `importSource` +pub(crate) type ImportMap = AHashMap; + +/// key: `localExportName` +pub(crate) type ImportMapValue = AHashMap; + +#[derive(Debug, Deserialize)] +#[serde(rename_all = "camelCase")] +pub(crate) struct Config { + canonicalImport: ImportItem, +} + +#[derive(Debug, Deserialize)] +pub(crate) struct ImportItem(JsWord, JsWord); From 7cff067787ad65e9cd73ee9fe33faef477291631 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Donny/=EA=B0=95=EB=8F=99=EC=9C=A4?= Date: Wed, 13 Jul 2022 19:25:20 +0900 Subject: [PATCH 11/37] rename --- packages/next-swc/crates/emotion/src/import_map.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/next-swc/crates/emotion/src/import_map.rs b/packages/next-swc/crates/emotion/src/import_map.rs index d320e566be05..b14943d0411d 100644 --- a/packages/next-swc/crates/emotion/src/import_map.rs +++ b/packages/next-swc/crates/emotion/src/import_map.rs @@ -11,7 +11,7 @@ pub(crate) type ImportMapValue = AHashMap; #[derive(Debug, Deserialize)] #[serde(rename_all = "camelCase")] pub(crate) struct Config { - canonicalImport: ImportItem, + canonical_import: ImportItem, } #[derive(Debug, Deserialize)] From 22fc703cab6a52949fa8dabe5e016f32494edaca Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Donny/=EA=B0=95=EB=8F=99=EC=9C=A4?= Date: Wed, 13 Jul 2022 19:28:36 +0900 Subject: [PATCH 12/37] Doc --- packages/next-swc/crates/emotion/src/import_map.rs | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/next-swc/crates/emotion/src/import_map.rs b/packages/next-swc/crates/emotion/src/import_map.rs index b14943d0411d..40ac28467d24 100644 --- a/packages/next-swc/crates/emotion/src/import_map.rs +++ b/packages/next-swc/crates/emotion/src/import_map.rs @@ -14,5 +14,6 @@ pub(crate) struct Config { canonical_import: ImportItem, } +/// `(packageName, exportName)` #[derive(Debug, Deserialize)] pub(crate) struct ImportItem(JsWord, JsWord); From 7eb7a2514bd9a6b12edccf815061793f81977739 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Donny/=EA=B0=95=EB=8F=99=EC=9C=A4?= Date: Wed, 13 Jul 2022 19:35:34 +0900 Subject: [PATCH 13/37] API --- .../next-swc/crates/emotion/src/import_map.rs | 21 +++++++++++++------ packages/next-swc/crates/emotion/src/lib.rs | 15 +++++++++++-- 2 files changed, 28 insertions(+), 8 deletions(-) diff --git a/packages/next-swc/crates/emotion/src/import_map.rs b/packages/next-swc/crates/emotion/src/import_map.rs index 40ac28467d24..a762593925f4 100644 --- a/packages/next-swc/crates/emotion/src/import_map.rs +++ b/packages/next-swc/crates/emotion/src/import_map.rs @@ -1,19 +1,28 @@ -use serde::Deserialize; +use serde::{Deserialize, Serialize}; use swc_atoms::JsWord; use swc_common::collections::AHashMap; +use crate::EmotionModuleConfig; + /// key: `importSource` -pub(crate) type ImportMap = AHashMap; +pub type ImportMap = AHashMap; /// key: `localExportName` -pub(crate) type ImportMapValue = AHashMap; +pub type ImportMapValue = AHashMap; -#[derive(Debug, Deserialize)] +#[derive(Debug, Clone, Serialize, Deserialize)] #[serde(rename_all = "camelCase")] -pub(crate) struct Config { +pub struct Config { canonical_import: ImportItem, } /// `(packageName, exportName)` -#[derive(Debug, Deserialize)] +#[derive(Debug, Clone, Serialize, Deserialize)] pub(crate) struct ImportItem(JsWord, JsWord); + +pub(crate) fn expand_import_map( + map: ImportMap, + imports: Vec, +) -> Vec { + imports +} diff --git a/packages/next-swc/crates/emotion/src/lib.rs b/packages/next-swc/crates/emotion/src/lib.rs index e5804610196b..22b534bd4dc6 100644 --- a/packages/next-swc/crates/emotion/src/lib.rs +++ b/packages/next-swc/crates/emotion/src/lib.rs @@ -3,6 +3,7 @@ use std::path::{Path, PathBuf}; use std::sync::Arc; use fxhash::FxHashMap; +use import_map::ImportMap; use once_cell::sync::Lazy; use regex::Regex; use serde::{Deserialize, Serialize}; @@ -82,6 +83,7 @@ pub struct EmotionOptions { pub sourcemap: Option, pub auto_label: Option, pub label_format: Option, + pub import_map: Option, } impl Default for EmotionOptions { @@ -91,6 +93,7 @@ impl Default for EmotionOptions { sourcemap: Some(true), auto_label: Some(true), label_format: Some("[local]".to_owned()), + import_map: None, } } } @@ -162,16 +165,23 @@ pub struct EmotionTransformer { current_context: Option, // skip `css` transformation if it in JSX Element/Attribute in_jsx_element: bool, + + registered_imports: Vec, } #[swc_trace] impl EmotionTransformer { pub fn new( - options: EmotionOptions, + mut options: EmotionOptions, path: &Path, cm: Arc, comments: C, ) -> Self { + let registered_imports = self::import_map::expand_import_map( + options.import_map.take().unwrap_or_default(), + EMOTION_OFFICIAL_LIBRARIES.to_vec(), + ); + EmotionTransformer { options, filepath_hash: None, @@ -187,6 +197,7 @@ impl EmotionTransformer { emotion_target_class_name_count: 0, current_context: None, in_jsx_element: false, + registered_imports, } } @@ -261,7 +272,7 @@ impl EmotionTransformer { // import { css } from '@emotion/react' // import * as emotionCss from '@emotion/react' fn generate_import_info(&mut self, expr: &ImportDecl) { - for c in EMOTION_OFFICIAL_LIBRARIES.iter() { + for c in self.registered_imports.iter() { if expr.src.value == c.module_name { for specifier in expr.specifiers.iter() { match specifier { From 977afa7ba2ed39847ae8578c8f4a758163954564 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Donny/=EA=B0=95=EB=8F=99=EC=9C=A4?= Date: Wed, 13 Jul 2022 19:38:06 +0900 Subject: [PATCH 14/37] WIP --- packages/next-swc/crates/emotion/src/import_map.rs | 10 +++++++++- packages/next-swc/crates/emotion/src/lib.rs | 4 ++-- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/packages/next-swc/crates/emotion/src/import_map.rs b/packages/next-swc/crates/emotion/src/import_map.rs index a762593925f4..4763407cd479 100644 --- a/packages/next-swc/crates/emotion/src/import_map.rs +++ b/packages/next-swc/crates/emotion/src/import_map.rs @@ -21,8 +21,16 @@ pub struct Config { pub(crate) struct ImportItem(JsWord, JsWord); pub(crate) fn expand_import_map( - map: ImportMap, + map: Option<&ImportMap>, imports: Vec, ) -> Vec { + if let Some(map) = map { + map.iter().for_each(|(import_source, value)| { + value + .iter() + .for_each(|(local_export_name, Config { canonical_import })| {}) + }); + } + imports } diff --git a/packages/next-swc/crates/emotion/src/lib.rs b/packages/next-swc/crates/emotion/src/lib.rs index 22b534bd4dc6..49c19e62b60d 100644 --- a/packages/next-swc/crates/emotion/src/lib.rs +++ b/packages/next-swc/crates/emotion/src/lib.rs @@ -172,13 +172,13 @@ pub struct EmotionTransformer { #[swc_trace] impl EmotionTransformer { pub fn new( - mut options: EmotionOptions, + options: EmotionOptions, path: &Path, cm: Arc, comments: C, ) -> Self { let registered_imports = self::import_map::expand_import_map( - options.import_map.take().unwrap_or_default(), + options.import_map.as_ref(), EMOTION_OFFICIAL_LIBRARIES.to_vec(), ); From 6bffa7be22d97d979a81a839eb9d67b85d1feb96 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Donny/=EA=B0=95=EB=8F=99=EC=9C=A4?= Date: Wed, 13 Jul 2022 20:06:27 +0900 Subject: [PATCH 15/37] Add tests --- .../tests/fixture/import-map/global-needs-css/input.tsx | 8 ++++++++ .../emotion/tests/fixture/import-map/global/input.tsx | 4 ++++ .../crates/emotion/tests/fixture/import-map/jsx/input.tsx | 4 ++++ .../import-map/non-default-styled-aliased/input.tsx | 3 +++ .../tests/fixture/import-map/non-default-styled/input.tsx | 3 +++ .../import-map/styled-with-base-specified/input.tsx | 3 +++ .../emotion/tests/fixture/import-map/vanilla/input.tsx | 3 +++ 7 files changed, 28 insertions(+) create mode 100644 packages/next-swc/crates/emotion/tests/fixture/import-map/global-needs-css/input.tsx create mode 100644 packages/next-swc/crates/emotion/tests/fixture/import-map/global/input.tsx create mode 100644 packages/next-swc/crates/emotion/tests/fixture/import-map/jsx/input.tsx create mode 100644 packages/next-swc/crates/emotion/tests/fixture/import-map/non-default-styled-aliased/input.tsx create mode 100644 packages/next-swc/crates/emotion/tests/fixture/import-map/non-default-styled/input.tsx create mode 100644 packages/next-swc/crates/emotion/tests/fixture/import-map/styled-with-base-specified/input.tsx create mode 100644 packages/next-swc/crates/emotion/tests/fixture/import-map/vanilla/input.tsx diff --git a/packages/next-swc/crates/emotion/tests/fixture/import-map/global-needs-css/input.tsx b/packages/next-swc/crates/emotion/tests/fixture/import-map/global-needs-css/input.tsx new file mode 100644 index 000000000000..0357e18d214a --- /dev/null +++ b/packages/next-swc/crates/emotion/tests/fixture/import-map/global-needs-css/input.tsx @@ -0,0 +1,8 @@ +import * as React from 'react' +import { SomeGlobalFromCore } from 'package-two' + +const getBgColor = () => ({ backgroundColor: '#fff' }) + +export default () => ( + +) diff --git a/packages/next-swc/crates/emotion/tests/fixture/import-map/global/input.tsx b/packages/next-swc/crates/emotion/tests/fixture/import-map/global/input.tsx new file mode 100644 index 000000000000..71cf49659ff9 --- /dev/null +++ b/packages/next-swc/crates/emotion/tests/fixture/import-map/global/input.tsx @@ -0,0 +1,4 @@ +import * as React from 'react' +import { SomeGlobalFromCore } from 'package-two' + +export default () => diff --git a/packages/next-swc/crates/emotion/tests/fixture/import-map/jsx/input.tsx b/packages/next-swc/crates/emotion/tests/fixture/import-map/jsx/input.tsx new file mode 100644 index 000000000000..f84f7322401f --- /dev/null +++ b/packages/next-swc/crates/emotion/tests/fixture/import-map/jsx/input.tsx @@ -0,0 +1,4 @@ +/** @jsx someJsx */ +import { someJsx } from 'package-two' + +const SomeComponent = props =>
diff --git a/packages/next-swc/crates/emotion/tests/fixture/import-map/non-default-styled-aliased/input.tsx b/packages/next-swc/crates/emotion/tests/fixture/import-map/non-default-styled-aliased/input.tsx new file mode 100644 index 000000000000..c0c75ad33dba --- /dev/null +++ b/packages/next-swc/crates/emotion/tests/fixture/import-map/non-default-styled-aliased/input.tsx @@ -0,0 +1,3 @@ +import { nonDefaultStyled as someAlias } from 'package-one' + +let SomeComp = someAlias.div({ color: 'hotpink' }) diff --git a/packages/next-swc/crates/emotion/tests/fixture/import-map/non-default-styled/input.tsx b/packages/next-swc/crates/emotion/tests/fixture/import-map/non-default-styled/input.tsx new file mode 100644 index 000000000000..318dc6ff4c1e --- /dev/null +++ b/packages/next-swc/crates/emotion/tests/fixture/import-map/non-default-styled/input.tsx @@ -0,0 +1,3 @@ +import { nonDefaultStyled } from 'package-one' + +let SomeComp = nonDefaultStyled.div({ color: 'hotpink' }) diff --git a/packages/next-swc/crates/emotion/tests/fixture/import-map/styled-with-base-specified/input.tsx b/packages/next-swc/crates/emotion/tests/fixture/import-map/styled-with-base-specified/input.tsx new file mode 100644 index 000000000000..f997bea8056c --- /dev/null +++ b/packages/next-swc/crates/emotion/tests/fixture/import-map/styled-with-base-specified/input.tsx @@ -0,0 +1,3 @@ +import { nonDefaultStyled } from 'package-four' + +let SomeComp = nonDefaultStyled.div({ color: 'hotpink' }) diff --git a/packages/next-swc/crates/emotion/tests/fixture/import-map/vanilla/input.tsx b/packages/next-swc/crates/emotion/tests/fixture/import-map/vanilla/input.tsx new file mode 100644 index 000000000000..81cfb6b30d92 --- /dev/null +++ b/packages/next-swc/crates/emotion/tests/fixture/import-map/vanilla/input.tsx @@ -0,0 +1,3 @@ +import { something } from 'package-three' + +something({ color: 'green' }) From 0e8d3e2e3d52fbec40dcec0ea4915e55ad78b596 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Donny/=EA=B0=95=EB=8F=99=EC=9C=A4?= Date: Wed, 13 Jul 2022 20:07:02 +0900 Subject: [PATCH 16/37] Test --- packages/next-swc/crates/emotion/tests/fixture.rs | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/packages/next-swc/crates/emotion/tests/fixture.rs b/packages/next-swc/crates/emotion/tests/fixture.rs index a744c1f37602..4efec35c54b3 100644 --- a/packages/next-swc/crates/emotion/tests/fixture.rs +++ b/packages/next-swc/crates/emotion/tests/fixture.rs @@ -1,4 +1,4 @@ -use std::path::PathBuf; +use std::{collections::HashMap, path::PathBuf}; use swc_common::{chain, comments::SingleThreadedComments, Mark}; use swc_ecma_transforms_testing::test_fixture; @@ -16,7 +16,7 @@ fn ts_syntax() -> Syntax { }) } -#[fixture("tests/fixture/*/input.tsx")] +#[fixture("tests/fixture/**/input.tsx")] fn next_emotion_fixture(input: PathBuf) { let output = input.parent().unwrap().join("output.ts"); test_fixture( @@ -37,12 +37,16 @@ fn next_emotion_fixture(input: PathBuf) { }, top_level_mark, ); + + let mut test_import_map = HashMap::default(); + chain!( swc_emotion::emotion( EmotionOptions { enabled: Some(true), sourcemap: Some(true), auto_label: Some(true), + import_map: Some(test_import_map), ..Default::default() }, &PathBuf::from("input.ts"), From 8cb0e086cbdd7728e001adaf09347bd339b515c8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Donny/=EA=B0=95=EB=8F=99=EC=9C=A4?= Date: Wed, 13 Jul 2022 20:12:19 +0900 Subject: [PATCH 17/37] Test import map --- packages/next-swc/Cargo.lock | 1 + packages/next-swc/crates/emotion/Cargo.toml | 1 + .../next-swc/crates/emotion/tests/fixture.rs | 3 ++- .../crates/emotion/tests/testImportMap.json | 19 +++++++++++++++++++ 4 files changed, 23 insertions(+), 1 deletion(-) create mode 100644 packages/next-swc/crates/emotion/tests/testImportMap.json diff --git a/packages/next-swc/Cargo.lock b/packages/next-swc/Cargo.lock index 5e00c315d76d..702de5822dba 100644 --- a/packages/next-swc/Cargo.lock +++ b/packages/next-swc/Cargo.lock @@ -3732,6 +3732,7 @@ dependencies = [ "radix_fmt", "regex", "serde", + "serde_json", "sourcemap", "swc_atoms", "swc_common", diff --git a/packages/next-swc/crates/emotion/Cargo.toml b/packages/next-swc/crates/emotion/Cargo.toml index 8d56c6f9c399..335373381e0a 100644 --- a/packages/next-swc/crates/emotion/Cargo.toml +++ b/packages/next-swc/crates/emotion/Cargo.toml @@ -27,3 +27,4 @@ tracing = { version = "0.1.32", features = ["release_max_level_info"] } [dev-dependencies] swc_ecma_transforms_testing = "0.100.0" testing = "0.26.0" +serde_json = "1" \ No newline at end of file diff --git a/packages/next-swc/crates/emotion/tests/fixture.rs b/packages/next-swc/crates/emotion/tests/fixture.rs index 4efec35c54b3..23ae2774c5f3 100644 --- a/packages/next-swc/crates/emotion/tests/fixture.rs +++ b/packages/next-swc/crates/emotion/tests/fixture.rs @@ -38,7 +38,8 @@ fn next_emotion_fixture(input: PathBuf) { top_level_mark, ); - let mut test_import_map = HashMap::default(); + let test_import_map = + serde_json::from_str(include_str!("./testImportMap.json")).unwrap(); chain!( swc_emotion::emotion( diff --git a/packages/next-swc/crates/emotion/tests/testImportMap.json b/packages/next-swc/crates/emotion/tests/testImportMap.json new file mode 100644 index 000000000000..7fb881123d6c --- /dev/null +++ b/packages/next-swc/crates/emotion/tests/testImportMap.json @@ -0,0 +1,19 @@ +{ + "package-one": { + "nonDefaultStyled": { "canonicalImport": ["@emotion/styled", "default"] } + }, + "package-two": { + "someJsx": { "canonicalImport": ["@emotion/react", "jsx"] }, + "someCssFromCore": { "canonicalImport": ["@emotion/react", "css"] }, + "SomeGlobalFromCore": { "canonicalImport": ["@emotion/react", "Global"] } + }, + "package-three": { + "something": { "canonicalImport": ["@emotion/css", "css"] } + }, + "package-four": { + "nonDefaultStyled": { + "canonicalImport": ["@emotion/styled", "default"], + "styledBaseImport": ["package-four/base", "something"] + } + } +} From 457f7fc53800357d7f39cb7693f54596ab1c1a5f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Donny/=EA=B0=95=EB=8F=99=EC=9C=A4?= Date: Wed, 13 Jul 2022 20:13:57 +0900 Subject: [PATCH 18/37] Better panic mesage --- .../next-swc/crates/emotion/src/import_map.rs | 42 +++++++++++++++++-- .../next-swc/crates/emotion/tests/fixture.rs | 2 +- 2 files changed, 39 insertions(+), 5 deletions(-) diff --git a/packages/next-swc/crates/emotion/src/import_map.rs b/packages/next-swc/crates/emotion/src/import_map.rs index 4763407cd479..c9622867f559 100644 --- a/packages/next-swc/crates/emotion/src/import_map.rs +++ b/packages/next-swc/crates/emotion/src/import_map.rs @@ -5,10 +5,10 @@ use swc_common::collections::AHashMap; use crate::EmotionModuleConfig; /// key: `importSource` -pub type ImportMap = AHashMap; +pub type ImportMap = AHashMap; /// key: `localExportName` -pub type ImportMapValue = AHashMap; +pub type ImportMapValue = AHashMap; #[derive(Debug, Clone, Serialize, Deserialize)] #[serde(rename_all = "camelCase")] @@ -22,13 +22,47 @@ pub(crate) struct ImportItem(JsWord, JsWord); pub(crate) fn expand_import_map( map: Option<&ImportMap>, - imports: Vec, + mut imports: Vec, ) -> Vec { if let Some(map) = map { map.iter().for_each(|(import_source, value)| { value .iter() - .for_each(|(local_export_name, Config { canonical_import })| {}) + .for_each(|(local_export_name, Config { canonical_import })| { + let ImportItem(package_name, export_name) = canonical_import; + + if &*package_name == "@emotion/react" && &*export_name == "jsx" { + return; + } + + let package_transformers = imports + .iter() + .find(|v| v.module_name == *package_name) + .unwrap_or_else(|| { + panic!( + "There is no transformer for the export '{}' in '{}'", + export_name, package_name + ) + }) + .clone(); + + if &*package_name == "@emotion/react" && export_name == "Global" { + } else if &*package_name == "@emotion/styled" && export_name == "default" { + } + + let exports = package_transformers + .exported_names + .iter() + .filter(|v| v.name == &**export_name) + .cloned() + .collect::>(); + + imports.push(EmotionModuleConfig { + module_name: import_source.clone(), + exported_names: exports, + default_export: package_transformers.default_export, + }); + }) }); } diff --git a/packages/next-swc/crates/emotion/tests/fixture.rs b/packages/next-swc/crates/emotion/tests/fixture.rs index 23ae2774c5f3..b50ca93e248d 100644 --- a/packages/next-swc/crates/emotion/tests/fixture.rs +++ b/packages/next-swc/crates/emotion/tests/fixture.rs @@ -1,4 +1,4 @@ -use std::{collections::HashMap, path::PathBuf}; +use std::path::PathBuf; use swc_common::{chain, comments::SingleThreadedComments, Mark}; use swc_ecma_transforms_testing::test_fixture; From dd71f52ab125f5c6719588fdd7a9d0b997254a84 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Donny/=EA=B0=95=EB=8F=99=EC=9C=A4?= Date: Wed, 13 Jul 2022 20:16:51 +0900 Subject: [PATCH 19/37] Remove wrong test --- .../crates/emotion/tests/fixture/import-map/jsx/input.tsx | 4 ---- 1 file changed, 4 deletions(-) delete mode 100644 packages/next-swc/crates/emotion/tests/fixture/import-map/jsx/input.tsx diff --git a/packages/next-swc/crates/emotion/tests/fixture/import-map/jsx/input.tsx b/packages/next-swc/crates/emotion/tests/fixture/import-map/jsx/input.tsx deleted file mode 100644 index f84f7322401f..000000000000 --- a/packages/next-swc/crates/emotion/tests/fixture/import-map/jsx/input.tsx +++ /dev/null @@ -1,4 +0,0 @@ -/** @jsx someJsx */ -import { someJsx } from 'package-two' - -const SomeComponent = props =>
From 12e382c22105165d2009f1a888ba95f68105c68d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Donny/=EA=B0=95=EB=8F=99=EC=9C=A4?= Date: Wed, 13 Jul 2022 20:26:31 +0900 Subject: [PATCH 20/37] Some fix --- .../next-swc/crates/emotion/src/import_map.rs | 27 ++++++++++++++----- packages/next-swc/crates/emotion/src/lib.rs | 8 ++++++ 2 files changed, 29 insertions(+), 6 deletions(-) diff --git a/packages/next-swc/crates/emotion/src/import_map.rs b/packages/next-swc/crates/emotion/src/import_map.rs index c9622867f559..279134a700f6 100644 --- a/packages/next-swc/crates/emotion/src/import_map.rs +++ b/packages/next-swc/crates/emotion/src/import_map.rs @@ -2,7 +2,7 @@ use serde::{Deserialize, Serialize}; use swc_atoms::JsWord; use swc_common::collections::AHashMap; -use crate::EmotionModuleConfig; +use crate::{EmotionModuleConfig, ExportItem}; /// key: `importSource` pub type ImportMap = AHashMap; @@ -50,16 +50,31 @@ pub(crate) fn expand_import_map( } else if &*package_name == "@emotion/styled" && export_name == "default" { } - let exports = package_transformers + let kind = package_transformers .exported_names .iter() - .filter(|v| v.name == &**export_name) - .cloned() - .collect::>(); + .find(|v| v.name == &**export_name) + .map(|v| v.kind) + .or_else(|| { + if export_name == "default" { + package_transformers.default_export + } else { + None + } + }) + .unwrap_or_else(|| { + panic!( + "failed to find export '{}' from package '{}'", + export_name, package_name + ) + }); imports.push(EmotionModuleConfig { module_name: import_source.clone(), - exported_names: exports, + exported_names: vec![ExportItem { + name: local_export_name.to_string(), + kind, + }], default_export: package_transformers.default_export, }); }) diff --git a/packages/next-swc/crates/emotion/src/lib.rs b/packages/next-swc/crates/emotion/src/lib.rs index 49c19e62b60d..80166422d29c 100644 --- a/packages/next-swc/crates/emotion/src/lib.rs +++ b/packages/next-swc/crates/emotion/src/lib.rs @@ -31,6 +31,14 @@ mod import_map; static EMOTION_OFFICIAL_LIBRARIES: Lazy> = Lazy::new(|| { vec![ + EmotionModuleConfig { + module_name: "@emotion/css".into(), + exported_names: vec![ExportItem { + name: "css".to_owned(), + kind: ExprKind::Css, + }], + default_export: Some(ExprKind::Css), + }, EmotionModuleConfig { module_name: "@emotion/styled".into(), exported_names: vec![], From 783778d114df9afdefe0f3971fed086c602bb49d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Donny/=EA=B0=95=EB=8F=99=EC=9C=A4?= Date: Wed, 13 Jul 2022 20:27:25 +0900 Subject: [PATCH 21/37] Update test refs --- .../fixture/import-map/global-needs-css/output.ts | 15 +++++++++++++++ .../tests/fixture/import-map/global/output.ts | 11 +++++++++++ .../import-map/non-default-styled/output.ts | 7 +++++++ .../styled-with-base-specified/output.ts | 7 +++++++ .../tests/fixture/import-map/vanilla/output.ts | 4 ++++ 5 files changed, 44 insertions(+) create mode 100644 packages/next-swc/crates/emotion/tests/fixture/import-map/global-needs-css/output.ts create mode 100644 packages/next-swc/crates/emotion/tests/fixture/import-map/global/output.ts create mode 100644 packages/next-swc/crates/emotion/tests/fixture/import-map/non-default-styled/output.ts create mode 100644 packages/next-swc/crates/emotion/tests/fixture/import-map/styled-with-base-specified/output.ts create mode 100644 packages/next-swc/crates/emotion/tests/fixture/import-map/vanilla/output.ts diff --git a/packages/next-swc/crates/emotion/tests/fixture/import-map/global-needs-css/output.ts b/packages/next-swc/crates/emotion/tests/fixture/import-map/global-needs-css/output.ts new file mode 100644 index 000000000000..17039ba84355 --- /dev/null +++ b/packages/next-swc/crates/emotion/tests/fixture/import-map/global-needs-css/output.ts @@ -0,0 +1,15 @@ +import { jsx as _jsx } from "react/jsx-runtime"; +import * as React from 'react'; +import { SomeGlobalFromCore } from 'package-two'; +const getBgColor = ()=>({ + backgroundColor: '#fff' + }); +export default (()=>/*#__PURE__*/ _jsx(SomeGlobalFromCore, { + styles: [ + { + color: 'hotpink', + ...getBgColor() + }, + "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQudHMiLCJzb3VyY2VzIjpbImlucHV0LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIFJlYWN0IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgU29tZUdsb2JhbEZyb21Db3JlIH0gZnJvbSAncGFja2FnZS10d28nXG5cbmNvbnN0IGdldEJnQ29sb3IgPSAoKSA9PiAoeyBiYWNrZ3JvdW5kQ29sb3I6ICcjZmZmJyB9KVxuXG5leHBvcnQgZGVmYXVsdCAoKSA9PiAoXG4gIDxTb21lR2xvYmFsRnJvbUNvcmUgc3R5bGVzPXt7IGNvbG9yOiAnaG90cGluaycsIC4uLmdldEJnQ29sb3IoKSB9fSAvPlxuKVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU1HIn0= */" + ] + })); diff --git a/packages/next-swc/crates/emotion/tests/fixture/import-map/global/output.ts b/packages/next-swc/crates/emotion/tests/fixture/import-map/global/output.ts new file mode 100644 index 000000000000..e288089660b7 --- /dev/null +++ b/packages/next-swc/crates/emotion/tests/fixture/import-map/global/output.ts @@ -0,0 +1,11 @@ +import { jsx as _jsx } from "react/jsx-runtime"; +import * as React from 'react'; +import { SomeGlobalFromCore } from 'package-two'; +export default (()=>/*#__PURE__*/ _jsx(SomeGlobalFromCore, { + styles: [ + { + color: 'hotpink' + }, + "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQudHMiLCJzb3VyY2VzIjpbImlucHV0LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIFJlYWN0IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgU29tZUdsb2JhbEZyb21Db3JlIH0gZnJvbSAncGFja2FnZS10d28nXG5cbmV4cG9ydCBkZWZhdWx0ICgpID0+IDxTb21lR2xvYmFsRnJvbUNvcmUgc3R5bGVzPXt7IGNvbG9yOiAnaG90cGluaycgfX0gLz5cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHc0IifQ== */" + ] + })); diff --git a/packages/next-swc/crates/emotion/tests/fixture/import-map/non-default-styled/output.ts b/packages/next-swc/crates/emotion/tests/fixture/import-map/non-default-styled/output.ts new file mode 100644 index 000000000000..326b078846b8 --- /dev/null +++ b/packages/next-swc/crates/emotion/tests/fixture/import-map/non-default-styled/output.ts @@ -0,0 +1,7 @@ +import { nonDefaultStyled } from 'package-one'; +let SomeComp = /*#__PURE__*/ nonDefaultStyled("div", { + target: "ekie5mj0", + label: "SomeComp" +})({ + color: 'hotpink' +}, "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQudHMiLCJzb3VyY2VzIjpbImlucHV0LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IG5vbkRlZmF1bHRTdHlsZWQgfSBmcm9tICdwYWNrYWdlLW9uZSdcblxubGV0IFNvbWVDb21wID0gbm9uRGVmYXVsdFN0eWxlZC5kaXYoeyBjb2xvcjogJ2hvdHBpbmsnIH0pXG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRWUifQ== */"); diff --git a/packages/next-swc/crates/emotion/tests/fixture/import-map/styled-with-base-specified/output.ts b/packages/next-swc/crates/emotion/tests/fixture/import-map/styled-with-base-specified/output.ts new file mode 100644 index 000000000000..d641ba9f7f10 --- /dev/null +++ b/packages/next-swc/crates/emotion/tests/fixture/import-map/styled-with-base-specified/output.ts @@ -0,0 +1,7 @@ +import { nonDefaultStyled } from 'package-four'; +let SomeComp = /*#__PURE__*/ nonDefaultStyled("div", { + target: "ekie5mj0", + label: "SomeComp" +})({ + color: 'hotpink' +}, "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQudHMiLCJzb3VyY2VzIjpbImlucHV0LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IG5vbkRlZmF1bHRTdHlsZWQgfSBmcm9tICdwYWNrYWdlLWZvdXInXG5cbmxldCBTb21lQ29tcCA9IG5vbkRlZmF1bHRTdHlsZWQuZGl2KHsgY29sb3I6ICdob3RwaW5rJyB9KVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVlIn0= */"); diff --git a/packages/next-swc/crates/emotion/tests/fixture/import-map/vanilla/output.ts b/packages/next-swc/crates/emotion/tests/fixture/import-map/vanilla/output.ts new file mode 100644 index 000000000000..899b94e0d1dc --- /dev/null +++ b/packages/next-swc/crates/emotion/tests/fixture/import-map/vanilla/output.ts @@ -0,0 +1,4 @@ +import { something } from 'package-three'; +/*#__PURE__*/ something({ + color: 'green' +}, "label:[local]", "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQudHMiLCJzb3VyY2VzIjpbImlucHV0LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHNvbWV0aGluZyB9IGZyb20gJ3BhY2thZ2UtdGhyZWUnXG5cbnNvbWV0aGluZyh7IGNvbG9yOiAnZ3JlZW4nIH0pXG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEifQ== */"); From 36e2dba458f6aa753d0de9d21d511cb315358b89 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Donny/=EA=B0=95=EB=8F=99=EC=9C=A4?= Date: Wed, 13 Jul 2022 20:31:36 +0900 Subject: [PATCH 22/37] Fix --- packages/next-swc/crates/emotion/src/lib.rs | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/packages/next-swc/crates/emotion/src/lib.rs b/packages/next-swc/crates/emotion/src/lib.rs index 80166422d29c..a0076ba5645a 100644 --- a/packages/next-swc/crates/emotion/src/lib.rs +++ b/packages/next-swc/crates/emotion/src/lib.rs @@ -14,7 +14,7 @@ use swc_common::util::take::Take; use swc_common::{BytePos, SourceMapperDyn, DUMMY_SP}; use swc_ecmascript::ast::{ ArrayLit, CallExpr, JSXAttr, JSXAttrName, JSXAttrOrSpread, JSXAttrValue, JSXElementName, - JSXExpr, JSXExprContainer, JSXObject, SourceMapperExt, + JSXExpr, JSXExprContainer, JSXObject, ModuleExportName, SourceMapperExt, }; use swc_ecmascript::utils::ExprFactory; use swc_ecmascript::{ @@ -286,7 +286,14 @@ impl EmotionTransformer { match specifier { ImportSpecifier::Named(named) => { for exported in c.exported_names.iter() { - if named.local.as_ref() == exported.name { + let matched = match &named.imported { + Some(imported) => match imported { + ModuleExportName::Ident(v) => v.sym == exported.name, + ModuleExportName::Str(v) => v.value == exported.name, + }, + _ => named.local.as_ref() == exported.name, + }; + if matched { self.import_packages.insert( named.local.to_id(), PackageMeta::Named(exported.kind), From 256b268816805e9906e8e17e7b58c713f618a18e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Donny/=EA=B0=95=EB=8F=99=EC=9C=A4?= Date: Wed, 13 Jul 2022 20:31:40 +0900 Subject: [PATCH 23/37] Update test refs --- .../import-map/non-default-styled-aliased/output.ts | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 packages/next-swc/crates/emotion/tests/fixture/import-map/non-default-styled-aliased/output.ts diff --git a/packages/next-swc/crates/emotion/tests/fixture/import-map/non-default-styled-aliased/output.ts b/packages/next-swc/crates/emotion/tests/fixture/import-map/non-default-styled-aliased/output.ts new file mode 100644 index 000000000000..9190de0d6157 --- /dev/null +++ b/packages/next-swc/crates/emotion/tests/fixture/import-map/non-default-styled-aliased/output.ts @@ -0,0 +1,7 @@ +import { nonDefaultStyled as someAlias } from 'package-one'; +let SomeComp = /*#__PURE__*/ someAlias("div", { + target: "ekie5mj0", + label: "SomeComp" +})({ + color: 'hotpink' +}, "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQudHMiLCJzb3VyY2VzIjpbImlucHV0LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IG5vbkRlZmF1bHRTdHlsZWQgYXMgc29tZUFsaWFzIH0gZnJvbSAncGFja2FnZS1vbmUnXG5cbmxldCBTb21lQ29tcCA9IHNvbWVBbGlhcy5kaXYoeyBjb2xvcjogJ2hvdHBpbmsnIH0pXG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRWUifQ== */"); From 3c810bfd61c007eb7bb261cbbdc91bfae138c180 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Donny/=EA=B0=95=EB=8F=99=EC=9C=A4?= Date: Wed, 13 Jul 2022 20:33:48 +0900 Subject: [PATCH 24/37] Bump --- packages/next-swc/Cargo.lock | 2 +- packages/next-swc/crates/emotion/Cargo.toml | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/next-swc/Cargo.lock b/packages/next-swc/Cargo.lock index 702de5822dba..9689c001ca40 100644 --- a/packages/next-swc/Cargo.lock +++ b/packages/next-swc/Cargo.lock @@ -3723,7 +3723,7 @@ dependencies = [ [[package]] name = "swc_emotion" -version = "0.13.0" +version = "0.14.0" dependencies = [ "base64 0.13.0", "byteorder", diff --git a/packages/next-swc/crates/emotion/Cargo.toml b/packages/next-swc/crates/emotion/Cargo.toml index 335373381e0a..41def82c278e 100644 --- a/packages/next-swc/crates/emotion/Cargo.toml +++ b/packages/next-swc/crates/emotion/Cargo.toml @@ -5,7 +5,7 @@ description = "AST Transforms for emotion" license = "Apache-2.0" name = "swc_emotion" repository = "https://github.com/vercel/next.js.git" -version = "0.13.0" +version = "0.14.0" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html @@ -27,4 +27,4 @@ tracing = { version = "0.1.32", features = ["release_max_level_info"] } [dev-dependencies] swc_ecma_transforms_testing = "0.100.0" testing = "0.26.0" -serde_json = "1" \ No newline at end of file +serde_json = "1" From 958d98c424a0c9240cb0b34de3f29e793ddca645 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Donny/=EA=B0=95=EB=8F=99=EC=9C=A4?= Date: Thu, 14 Jul 2022 11:47:37 +0900 Subject: [PATCH 25/37] Upate --- packages/next-swc/Cargo.lock | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/next-swc/Cargo.lock b/packages/next-swc/Cargo.lock index 9689c001ca40..de3571976bd7 100644 --- a/packages/next-swc/Cargo.lock +++ b/packages/next-swc/Cargo.lock @@ -3071,9 +3071,9 @@ dependencies = [ [[package]] name = "swc_common" -version = "0.24.0" +version = "0.24.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d77bc728792465c1f7285ca6859ef19920d6f3719811c60a63cb226dcb28d111" +checksum = "8079454dffb593d1377a0a28f9133903fa9d5592b4d6cc523c3bd246eee552c6" dependencies = [ "ahash", "anyhow", From 6c88fc2b6c16b7b5da62b57cef3e02d989e39097 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Donny/=EA=B0=95=EB=8F=99=EC=9C=A4?= Date: Thu, 14 Jul 2022 12:13:10 +0900 Subject: [PATCH 26/37] Update --- packages/next-swc/crates/core/Cargo.toml | 2 +- packages/next-swc/crates/emotion/Cargo.toml | 2 +- packages/next-swc/crates/napi/Cargo.toml | 2 +- packages/next-swc/crates/styled_components/Cargo.toml | 2 +- packages/next-swc/crates/styled_jsx/Cargo.toml | 2 +- packages/next-swc/crates/wasm/Cargo.toml | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/next-swc/crates/core/Cargo.toml b/packages/next-swc/crates/core/Cargo.toml index f729ffed7d69..7c1bbd3d3292 100644 --- a/packages/next-swc/crates/core/Cargo.toml +++ b/packages/next-swc/crates/core/Cargo.toml @@ -28,7 +28,7 @@ styled_jsx = {path="../styled_jsx"} modularize_imports = {path="../modularize_imports"} swc = "0.206.0" swc_atoms = "0.2.13" -swc_common = { version = "0.24.0", features = ["concurrent", "sourcemap"] } +swc_common = { version = "0.24.1", features = ["concurrent", "sourcemap"] } swc_ecma_loader = { version = "0.36.0", features = ["node", "lru"] } swc_ecmascript = { version = "0.181.0", features = ["codegen", "minifier", "optimization", "parser", "react", "transforms", "typescript", "utils", "visit"] } swc_plugin_runner = { version = "0.65.0", optional = true, default-features = false } diff --git a/packages/next-swc/crates/emotion/Cargo.toml b/packages/next-swc/crates/emotion/Cargo.toml index 41def82c278e..7b242a29c050 100644 --- a/packages/next-swc/crates/emotion/Cargo.toml +++ b/packages/next-swc/crates/emotion/Cargo.toml @@ -19,7 +19,7 @@ regex = "1.5" serde = "1" sourcemap = "6.0.1" swc_atoms = "0.2.13" -swc_common = { version = "0.24.0", features = ["concurrent", "sourcemap"] } +swc_common = { version = "0.24.1", features = ["concurrent", "sourcemap"] } swc_ecmascript = { version = "0.181.0", features = ["codegen", "utils", "visit"] } swc_trace_macro = "0.1.1" tracing = { version = "0.1.32", features = ["release_max_level_info"] } diff --git a/packages/next-swc/crates/napi/Cargo.toml b/packages/next-swc/crates/napi/Cargo.toml index 43994fe65807..7341e4909c7d 100644 --- a/packages/next-swc/crates/napi/Cargo.toml +++ b/packages/next-swc/crates/napi/Cargo.toml @@ -36,7 +36,7 @@ serde_json = "1" swc = "0.206.0" swc_atoms = "0.2.13" swc_bundler = { version = "0.170.0", features = ["concurrent"] } -swc_common = { version = "0.24.0", features = ["concurrent", "sourcemap"] } +swc_common = { version = "0.24.1", features = ["concurrent", "sourcemap"] } swc_ecma_loader = { version = "0.36.0", features = ["node", "lru"] } swc_ecmascript = { version = "0.181.0", features = ["codegen", "minifier", "optimization", "parser", "react", "transforms", "typescript", "utils", "visit"] } swc_plugin_runner = { version = "0.65.0", optional = true } diff --git a/packages/next-swc/crates/styled_components/Cargo.toml b/packages/next-swc/crates/styled_components/Cargo.toml index 90c7f952ca45..8fe5514c98bd 100644 --- a/packages/next-swc/crates/styled_components/Cargo.toml +++ b/packages/next-swc/crates/styled_components/Cargo.toml @@ -16,7 +16,7 @@ once_cell = "1.13.0" regex = {version = "1.5.4", features = ["std", "perf"], default-features = false} serde = {version = "1.0.130", features = ["derive"]} swc_atoms = "0.2.13" -swc_common = { version = "0.24.0", features = ["concurrent"] } +swc_common = { version = "0.24.1", features = ["concurrent"] } swc_ecmascript = { version = "0.181.0", features = ["utils", "visit"] } tracing = "0.1.32" diff --git a/packages/next-swc/crates/styled_jsx/Cargo.toml b/packages/next-swc/crates/styled_jsx/Cargo.toml index e122c13a267b..0dd365f6c632 100644 --- a/packages/next-swc/crates/styled_jsx/Cargo.toml +++ b/packages/next-swc/crates/styled_jsx/Cargo.toml @@ -11,7 +11,7 @@ version = "0.12.0" [dependencies] easy-error = "1.0.0" -swc_common = { version = "0.24.0", features = ["concurrent", "sourcemap"] } +swc_common = { version = "0.24.1", features = ["concurrent", "sourcemap"] } swc_css = "0.112.0" swc_css_prefixer = "0.108.0" swc_ecmascript = { version = "0.181.0", features = ["parser", "minifier", "utils", "visit"] } diff --git a/packages/next-swc/crates/wasm/Cargo.toml b/packages/next-swc/crates/wasm/Cargo.toml index 1600e6b84ee1..48ffa079490d 100644 --- a/packages/next-swc/crates/wasm/Cargo.toml +++ b/packages/next-swc/crates/wasm/Cargo.toml @@ -26,7 +26,7 @@ path-clean = "0.1" serde = {version = "1", features = ["derive"]} serde_json = "1" swc = "0.206.0" -swc_common = { version = "0.24.0", features = ["concurrent", "sourcemap"] } +swc_common = { version = "0.24.1", features = ["concurrent", "sourcemap"] } swc_ecmascript = { version = "0.181.0", features = ["codegen", "minifier", "optimization", "parser", "react", "transforms", "typescript", "utils", "visit"] } swc_plugin_runner = { version = "0.65.0", default-features = false, optional = true } tracing = { version = "0.1.32", features = ["release_max_level_off"] } From 795ff9c428065fa9af1b2d74222cb756f39985e4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Donny/=EA=B0=95=EB=8F=99=EC=9C=A4?= Date: Thu, 14 Jul 2022 12:13:46 +0900 Subject: [PATCH 27/37] Bumo --- packages/next-swc/Cargo.lock | 8 ++++---- packages/next-swc/crates/emotion/Cargo.toml | 2 +- packages/next-swc/crates/modularize_imports/Cargo.toml | 2 +- packages/next-swc/crates/styled_components/Cargo.toml | 2 +- packages/next-swc/crates/styled_jsx/Cargo.toml | 2 +- 5 files changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/next-swc/Cargo.lock b/packages/next-swc/Cargo.lock index de3571976bd7..affd48be4b7f 100644 --- a/packages/next-swc/Cargo.lock +++ b/packages/next-swc/Cargo.lock @@ -1475,7 +1475,7 @@ dependencies = [ [[package]] name = "modularize_imports" -version = "0.12.0" +version = "0.13.0" dependencies = [ "handlebars", "once_cell", @@ -2892,7 +2892,7 @@ checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" [[package]] name = "styled_components" -version = "0.37.0" +version = "0.38.0" dependencies = [ "Inflector", "once_cell", @@ -2909,7 +2909,7 @@ dependencies = [ [[package]] name = "styled_jsx" -version = "0.12.0" +version = "0.13.0" dependencies = [ "easy-error", "swc_common", @@ -3723,7 +3723,7 @@ dependencies = [ [[package]] name = "swc_emotion" -version = "0.14.0" +version = "0.15.0" dependencies = [ "base64 0.13.0", "byteorder", diff --git a/packages/next-swc/crates/emotion/Cargo.toml b/packages/next-swc/crates/emotion/Cargo.toml index 7b242a29c050..168c0a228cae 100644 --- a/packages/next-swc/crates/emotion/Cargo.toml +++ b/packages/next-swc/crates/emotion/Cargo.toml @@ -5,7 +5,7 @@ description = "AST Transforms for emotion" license = "Apache-2.0" name = "swc_emotion" repository = "https://github.com/vercel/next.js.git" -version = "0.14.0" +version = "0.15.0" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html diff --git a/packages/next-swc/crates/modularize_imports/Cargo.toml b/packages/next-swc/crates/modularize_imports/Cargo.toml index e32dd5bf887c..88cb046f2c75 100644 --- a/packages/next-swc/crates/modularize_imports/Cargo.toml +++ b/packages/next-swc/crates/modularize_imports/Cargo.toml @@ -5,7 +5,7 @@ edition = "2018" license = "Apache-2.0" name = "modularize_imports" repository = "https://github.com/vercel/next.js.git" -version = "0.12.0" +version = "0.13.0" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html diff --git a/packages/next-swc/crates/styled_components/Cargo.toml b/packages/next-swc/crates/styled_components/Cargo.toml index 8fe5514c98bd..ab60acf351f4 100644 --- a/packages/next-swc/crates/styled_components/Cargo.toml +++ b/packages/next-swc/crates/styled_components/Cargo.toml @@ -6,7 +6,7 @@ include = ["Cargo.toml", "src/**/*.rs"] license = "Apache-2.0" name = "styled_components" repository = "https://github.com/vercel/next.js.git" -version = "0.37.0" +version = "0.38.0" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html diff --git a/packages/next-swc/crates/styled_jsx/Cargo.toml b/packages/next-swc/crates/styled_jsx/Cargo.toml index 0dd365f6c632..ec8f26547a64 100644 --- a/packages/next-swc/crates/styled_jsx/Cargo.toml +++ b/packages/next-swc/crates/styled_jsx/Cargo.toml @@ -5,7 +5,7 @@ edition = "2018" license = "Apache-2.0" name = "styled_jsx" repository = "https://github.com/vercel/next.js.git" -version = "0.12.0" +version = "0.13.0" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html From 0a1b46d8008e2eccb7a2b6eedf0d334665ee6e0c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Donny/=EA=B0=95=EB=8F=99=EC=9C=A4?= Date: Wed, 27 Jul 2022 14:51:02 +0900 Subject: [PATCH 28/37] Update swc --- packages/next-swc/Cargo.lock | 191 +++++++++--------- packages/next-swc/crates/core/Cargo.toml | 18 +- packages/next-swc/crates/emotion/Cargo.toml | 10 +- .../crates/modularize_imports/Cargo.toml | 8 +- packages/next-swc/crates/napi/Cargo.toml | 14 +- .../crates/styled_components/Cargo.toml | 12 +- .../next-swc/crates/styled_jsx/Cargo.toml | 12 +- packages/next-swc/crates/wasm/Cargo.toml | 8 +- 8 files changed, 139 insertions(+), 134 deletions(-) diff --git a/packages/next-swc/Cargo.lock b/packages/next-swc/Cargo.lock index affd48be4b7f..63da03cfcd62 100644 --- a/packages/next-swc/Cargo.lock +++ b/packages/next-swc/Cargo.lock @@ -248,9 +248,9 @@ checksum = "e3b5ca7a04898ad4bcd41c90c5285445ff5b791899bb1b0abdd2a2aa791211d7" [[package]] name = "bytecheck" -version = "0.6.8" +version = "0.6.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a31f923c2db9513e4298b72df143e6e655a759b3d6a0966df18f81223fff54f" +checksum = "d11cac2c12b5adc6570dad2ee1b87eff4955dac476fe12d81e5fdd352e52406f" dependencies = [ "bytecheck_derive", "ptr_meta", @@ -258,9 +258,9 @@ dependencies = [ [[package]] name = "bytecheck_derive" -version = "0.6.8" +version = "0.6.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "edb17c862a905d912174daa27ae002326fff56dc8b8ada50a0a5f0976cb174f0" +checksum = "13e576ebe98e605500b3c8041bb888e966653577172df6dd97398714eb30b9bf" dependencies = [ "proc-macro2", "quote", @@ -2957,9 +2957,9 @@ dependencies = [ [[package]] name = "swc" -version = "0.206.0" +version = "0.212.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b2e6d7401bcc95bb71fd1529bc4227c450c2e769ff46e35348833df10ac2b2a" +checksum = "9256adc9510c3b887377fe817f36f66524850863220c9fe20dfe55c35337ffb9" dependencies = [ "ahash", "anyhow", @@ -3007,9 +3007,9 @@ dependencies = [ [[package]] name = "swc_atoms" -version = "0.2.13" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d99c0ac33707dd1162a3665d6ca1a28b2f6594e9c37c4703e417fc5e1ce532e" +checksum = "f7c7709078e8f8f34a2f277d9d5f6e95ea5f18752ee9a9986d0eff3dcafea3f3" dependencies = [ "bytecheck", "once_cell", @@ -3022,9 +3022,9 @@ dependencies = [ [[package]] name = "swc_bundler" -version = "0.170.0" +version = "0.175.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "331527a0e32161f99acde0420fca88aecb11bdc450d8e7be2dce233483e16b2e" +checksum = "181676693d25b6e1b3992f1a13cf4e5bca78bf5482d4f2ee7333796dd9ca21b2" dependencies = [ "ahash", "anyhow", @@ -3056,9 +3056,9 @@ dependencies = [ [[package]] name = "swc_cached" -version = "0.1.1" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "84fed4a980e12c737171a7b17c5e0a2f4272899266fa0632ea4e31264ebdfdb5" +checksum = "91448e2c3ee24c65d51c0956b62f94420c9d19e7fa9e990010072d5e05a81a51" dependencies = [ "ahash", "anyhow", @@ -3071,9 +3071,9 @@ dependencies = [ [[package]] name = "swc_common" -version = "0.24.1" +version = "0.26.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8079454dffb593d1377a0a28f9133903fa9d5592b4d6cc523c3bd246eee552c6" +checksum = "f7b3ce2fcc4e51ffb3e0556f04bf50e6cdeaaab9b019282f68acb2311c4b75f8" dependencies = [ "ahash", "anyhow", @@ -3131,9 +3131,9 @@ dependencies = [ [[package]] name = "swc_css" -version = "0.112.0" +version = "0.116.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7aceef4f9c688af4594665e86a3afc36b3105398f68611b270d7d9c78e83084" +checksum = "d3aeaff3b0bc11139757bf67bf3bb1afacec05ee58d5b316f1d957b3a78db452" dependencies = [ "swc_css_ast", "swc_css_codegen", @@ -3144,9 +3144,9 @@ dependencies = [ [[package]] name = "swc_css_ast" -version = "0.99.0" +version = "0.103.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05bfe814e1214e309fe4f37e10fac9f9dbc922058717280da2cf85de8d63d9f3" +checksum = "543026fef8a5f4147d944072eac313f5dd4633086a3b26b2e2b1f08384d369bd" dependencies = [ "is-macro", "serde", @@ -3157,9 +3157,9 @@ dependencies = [ [[package]] name = "swc_css_codegen" -version = "0.109.0" +version = "0.113.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa562055ba7613713105d90881d77480531b231c94fba3adc120b4cf70818efc" +checksum = "a932c9750eed830a0e4c8b64a8e084c0adfc23356846e8fcc66a302bf3ead27e" dependencies = [ "auto_impl", "bitflags", @@ -3186,9 +3186,9 @@ dependencies = [ [[package]] name = "swc_css_parser" -version = "0.108.0" +version = "0.112.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9dc72e1f8e7f95e7d62e08e7328c07f78977463a73f2d67f56f70b5c41039836" +checksum = "d36dc5fba19a61d395cddb6fe2f9736f1a192c45fbced6f37c6a3ad3593db0b8" dependencies = [ "bitflags", "lexical", @@ -3200,10 +3200,14 @@ dependencies = [ [[package]] name = "swc_css_prefixer" -version = "0.108.0" +version = "0.113.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0ce57b7b030008e197e581af2ade16dd621c3522c0232af2b99bb975fe61a67" +checksum = "15e3f0d12a4b844b863ff64e5c894758dc79d8199c760ebfdc7716f0fa4c549e" dependencies = [ + "once_cell", + "preset_env_base", + "serde", + "serde_json", "swc_atoms", "swc_common", "swc_css_ast", @@ -3213,9 +3217,9 @@ dependencies = [ [[package]] name = "swc_css_utils" -version = "0.96.0" +version = "0.100.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "763e5f0ad2c7cabd6d3b892478d9914d20469980069f5d44347f8c83962a1314" +checksum = "b3625a87b24e56d84fa87d993d560fb68867d07c2ded754c45135f4cd02dbdd4" dependencies = [ "once_cell", "serde", @@ -3228,9 +3232,9 @@ dependencies = [ [[package]] name = "swc_css_visit" -version = "0.98.1" +version = "0.102.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f0f3dae37b3a1da0b0219a9915a1933a6c637d54e25f5339d660eff0865d535" +checksum = "99f41381173f2371013e79304dadfd42c1b90f5bbc05129e85314a301890cc93" dependencies = [ "serde", "swc_atoms", @@ -3241,9 +3245,9 @@ dependencies = [ [[package]] name = "swc_ecma_ast" -version = "0.85.0" +version = "0.89.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf238e6284a422d0d320a9a026242c00d34ea0628b7495e3a3b6201381103253" +checksum = "dce996d6d808785508fd33c252de3fa403cb1c7dd8716898d65eabeb7bfe341f" dependencies = [ "bitflags", "bytecheck", @@ -3260,9 +3264,9 @@ dependencies = [ [[package]] name = "swc_ecma_codegen" -version = "0.116.1" +version = "0.120.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "66c12eb42097bec270eef631b2f437748f775ddac69d87b68142c102d50fe32f" +checksum = "7a1b0c1a7325b011e2873de47dc862a805d39b975efa117a9f6c196e30a0d99b" dependencies = [ "memchr", "num-bigint", @@ -3292,9 +3296,9 @@ dependencies = [ [[package]] name = "swc_ecma_ext_transforms" -version = "0.80.0" +version = "0.84.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3993781882ce26226996c722df460efe741c1dac22ab3e0d3d76b80627a8dbab" +checksum = "8a2d13bef6e69fe871b780cc44dc6802bb098d6503b1e9873c04e8baec6e87a0" dependencies = [ "phf", "swc_atoms", @@ -3306,9 +3310,9 @@ dependencies = [ [[package]] name = "swc_ecma_lints" -version = "0.53.0" +version = "0.57.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c945d7bdda878f08466108edb2bf0be42956b76493fa726dd0824b6b49844e6d" +checksum = "eb20430ce0773f680eaa758317298ad927587bb3c204a0921aa4ddabee2fe9f4" dependencies = [ "ahash", "auto_impl", @@ -3327,9 +3331,9 @@ dependencies = [ [[package]] name = "swc_ecma_loader" -version = "0.36.0" +version = "0.38.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d53d86a8111948703d9a8df4d1f22e577038a4cecbab47f48f11bddc7a3f7d2" +checksum = "ca95a8ebe9f6f815c35002523f0157367fec9856dcec868c7d3e27c3142954e9" dependencies = [ "ahash", "anyhow", @@ -3349,13 +3353,14 @@ dependencies = [ [[package]] name = "swc_ecma_minifier" -version = "0.137.0" +version = "0.142.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e89fd8e901750adf1f493dfb6799d85e1798d0c764501cc7fa27b6a32ca3f6e9" +checksum = "69c6129d9b01595218fe0a132ca8982ff87999736b4a2b1ab802900368f3da4f" dependencies = [ "ahash", "arrayvec", "indexmap", + "num-bigint", "num_cpus", "once_cell", "parking_lot", @@ -3383,9 +3388,9 @@ dependencies = [ [[package]] name = "swc_ecma_parser" -version = "0.112.0" +version = "0.116.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f3d1a8c13525e36630f6cbe58011f50d7ecd94a5c5f8c00c1cd1a203d0e2ab9" +checksum = "12740be040fa5635ac73bb38fd7340887d6b5f36e0daf4eaec662838398dd4eb" dependencies = [ "either", "enum_kind", @@ -3402,9 +3407,9 @@ dependencies = [ [[package]] name = "swc_ecma_preset_env" -version = "0.151.0" +version = "0.156.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e9d65db7d717938e20b6afdb1fb47112e77e579a3b2bd9360b60906a70fcdfa8" +checksum = "979e15b5b236e4a06da25cbf8b40723a709c45f9d9a70c0460ee7ae5658eec1d" dependencies = [ "ahash", "anyhow", @@ -3427,9 +3432,9 @@ dependencies = [ [[package]] name = "swc_ecma_testing" -version = "0.9.0" +version = "0.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "baf8e5dabe3819708ff551ee836717faeea1f0f8fa00b5785d9b4fb1e726ea8e" +checksum = "4531ecf7055a35aff99b4c668cd6e02d35e688bdb0c0c80a21805a8f0d25a636" dependencies = [ "anyhow", "hex", @@ -3443,9 +3448,9 @@ dependencies = [ [[package]] name = "swc_ecma_transforms" -version = "0.176.0" +version = "0.181.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "604f9e5ef6ea7f0e3bd860b08d83e21277bceb2264d837c2e32c0496e1d19866" +checksum = "2d0332a16280d0c0c37745fc85714d878867d490ee6747bfdfdcb6bebe80181f" dependencies = [ "swc_atoms", "swc_common", @@ -3463,9 +3468,9 @@ dependencies = [ [[package]] name = "swc_ecma_transforms_base" -version = "0.98.0" +version = "0.102.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d8ad3e57adbc23fd8067e1a564428b8d4c5d6f8f2417d6a3bac78c41446f33ef" +checksum = "4f8438e5cb7da4e6983117294b9d5dc911163ab221e12c8066a7a713a90c5734" dependencies = [ "better_scoped_tls", "bitflags", @@ -3487,9 +3492,9 @@ dependencies = [ [[package]] name = "swc_ecma_transforms_classes" -version = "0.86.0" +version = "0.90.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aaf06400a1023ca45bc7ae06e2fc8475ba06b928e360d46110660a0d0ea03e78" +checksum = "f3866400fe3f3959d7992ee5a37117b81def64f05db5e3f69b16ca4427c12ab6" dependencies = [ "swc_atoms", "swc_common", @@ -3501,9 +3506,9 @@ dependencies = [ [[package]] name = "swc_ecma_transforms_compat" -version = "0.115.0" +version = "0.120.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ff1b9d0a7307654ef00586929646c26bb5669d9f619d8594715b91bc1535e7f8" +checksum = "e96534f3661295f3ffdb64408a1f734c6d653f3ebf832ca0e12bdefae960c564" dependencies = [ "ahash", "arrayvec", @@ -3541,9 +3546,9 @@ dependencies = [ [[package]] name = "swc_ecma_transforms_module" -version = "0.132.0" +version = "0.137.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "39c4dfc2d3bb4279e73f7daa51090ebb3a09617304f104606acf0448612243d4" +checksum = "ad4178bac22920d57cd5734171ab50f30a609731f9a53b6e8c16730e7ff19c7d" dependencies = [ "Inflector", "ahash", @@ -3569,9 +3574,9 @@ dependencies = [ [[package]] name = "swc_ecma_transforms_optimization" -version = "0.145.0" +version = "0.150.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2585c562d472d65878f43f879c89982f1369f031776098e5e801e3a85f33e340" +checksum = "6c0267c4a9f9e7183f0411e1cbd16034dc5598e4ece5110c9a71b3b8565afac8" dependencies = [ "ahash", "dashmap", @@ -3592,9 +3597,9 @@ dependencies = [ [[package]] name = "swc_ecma_transforms_proposal" -version = "0.123.0" +version = "0.128.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "378cbe88965afc5b4dfb66db20bcb8d93b4871a57799438bf8e5e8110b513179" +checksum = "5edd3b87166df9cb23d2a393d565b886575f1808245b8791d5b5a1bddf36e4cb" dependencies = [ "either", "serde", @@ -3611,9 +3616,9 @@ dependencies = [ [[package]] name = "swc_ecma_transforms_react" -version = "0.134.0" +version = "0.139.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4bd219118637b00f315886fa3ca62a51fff2b8091e287238fe14ce5af5bfdc14" +checksum = "bcfba7f0dcf32d4e82c89759bd1ff851e1bfa32493271e93d34ae7fbb583ff4d" dependencies = [ "ahash", "base64 0.13.0", @@ -3637,9 +3642,9 @@ dependencies = [ [[package]] name = "swc_ecma_transforms_testing" -version = "0.100.0" +version = "0.104.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "328335980a333e4d2af4de61b205c56bdcd14c4f1814cf3284143553604fa3d3" +checksum = "b2db2a705493547cce9c2d8b14ab6041409eb995e19604f42c6fa44ef1852ccb" dependencies = [ "ansi_term", "anyhow", @@ -3661,9 +3666,9 @@ dependencies = [ [[package]] name = "swc_ecma_transforms_typescript" -version = "0.138.0" +version = "0.143.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "683456b297f1c645d1ae06745f8b0ae0a53e50eab5933042d223395e64b17909" +checksum = "fdb5faef5ccddd09093faee514d65f6c24fe6c8ec9da184299f9c9780c4c7308" dependencies = [ "serde", "swc_atoms", @@ -3677,9 +3682,9 @@ dependencies = [ [[package]] name = "swc_ecma_utils" -version = "0.94.0" +version = "0.98.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "12b5d888a2347676ba8ff95497577ffa6b75ae382a10cf2e2496cc8a766cb037" +checksum = "996ae04dfb093db26874e1fbb82a5194e3cef562737c93b9674bdef539a7fba3" dependencies = [ "indexmap", "once_cell", @@ -3693,12 +3698,11 @@ dependencies = [ [[package]] name = "swc_ecma_visit" -version = "0.71.1" +version = "0.75.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a2323f3a552728d4bda84203ba574325e47506f7b9ab69bf8a60f3c4d48ae009" +checksum = "5e1efa6716523365a6b947388cca7e4b3b59da046fd1d0200efc02bc3395e7f4" dependencies = [ "num-bigint", - "serde", "swc_atoms", "swc_common", "swc_ecma_ast", @@ -3708,9 +3712,9 @@ dependencies = [ [[package]] name = "swc_ecmascript" -version = "0.181.0" +version = "0.186.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b52298115d4a9867d44e6c0f1415904a394f5236c94f25d5b8fcd5090280c71" +checksum = "c96e447b71b8d44d2100c9a07a116c2337e4ed66691e096b7c5fe0a6c72c8ba0" dependencies = [ "swc_ecma_ast", "swc_ecma_codegen", @@ -3757,9 +3761,9 @@ dependencies = [ [[package]] name = "swc_error_reporters" -version = "0.8.0" +version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "349831ad546109c7b49503ba7819e89885d66d64f337537a41d8ca815086973d" +checksum = "b592b6f61697db23879762715d9e7699408e07568cae15429e608569aaed4e28" dependencies = [ "anyhow", "miette", @@ -3770,9 +3774,9 @@ dependencies = [ [[package]] name = "swc_fast_graph" -version = "0.12.0" +version = "0.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8dccd98754c271a1b14bd5c9aa39353ca4381af96672341d610b3e773eb23d1b" +checksum = "da66c4b023903dd2eb060f7544bfff04d7a468151fca56762911700c58c20b92" dependencies = [ "ahash", "indexmap", @@ -3782,9 +3786,9 @@ dependencies = [ [[package]] name = "swc_graph_analyzer" -version = "0.13.0" +version = "0.15.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "099f7989cb59f839b6fd53a7039d88d33b3b603412b9b9e38a0a518c1c9e14bd" +checksum = "2c06279ebbfca0cc18be7748bd891e8b3efabfe7863727dd69d678797d8e317d" dependencies = [ "ahash", "auto_impl", @@ -3817,20 +3821,21 @@ dependencies = [ [[package]] name = "swc_node_comments" -version = "0.11.0" +version = "0.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d4993a1fdbc8364efb42ab07e4a50568ef2e0d524155285101f982f8d4ef288e" +checksum = "65544576b5610816f4e3725319d090296362d3ff6bd441f02efe3c4958f5e9e4" dependencies = [ "ahash", "dashmap", + "swc_atoms", "swc_common", ] [[package]] name = "swc_plugin_proxy" -version = "0.12.0" +version = "0.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af3b37642f4049bb74e1a9f85aed276e4fb72c5b7da6a25f261b8a7ed2ce8e73" +checksum = "74358e4bdd1624ecce3f70274eecd3d87a7bfe4ef840a72e5a6e3f3c7c623bdc" dependencies = [ "better_scoped_tls", "bytecheck", @@ -3841,9 +3846,9 @@ dependencies = [ [[package]] name = "swc_plugin_runner" -version = "0.65.0" +version = "0.70.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c717217cc9aab42fa67a1a62c8b29685a3eb243d7274f1e784c617679852a70" +checksum = "c909b1dc1dc0121027a1f252e6541c0158ae38218d2d889dbc9d4d0549312da9" dependencies = [ "anyhow", "once_cell", @@ -3861,9 +3866,9 @@ dependencies = [ [[package]] name = "swc_timer" -version = "0.12.0" +version = "0.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd1f04bddb1be850c877daa7de8ecb7c3eaacc48e5d3301439de95dc79422e05" +checksum = "c47e4765a73706d163039811df0d946b85219585305295b8c44df6987a1093f9" dependencies = [ "tracing", ] @@ -3881,9 +3886,9 @@ dependencies = [ [[package]] name = "swc_visit" -version = "0.5.0" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "21a9c3d8bc1c6145416d92a745940553650ca8cd3878f176fe1d8b8e890db852" +checksum = "ce1b826c9d4c0416bbed55d245c853bc1a60da55bf92f8b00dd22b37baf72080" dependencies = [ "either", "swc_visit_macros", @@ -3891,9 +3896,9 @@ dependencies = [ [[package]] name = "swc_visit_macros" -version = "0.5.1" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eabd04593cff03ac788d648023702cc69fd5710ea87ab446da1977f6253b0a5f" +checksum = "9fda2daf67d99e8bc63d61b12818994863f65b7bcf52d4faab338154c7058546" dependencies = [ "Inflector", "pmutil", @@ -3955,9 +3960,9 @@ dependencies = [ [[package]] name = "testing" -version = "0.26.0" +version = "0.28.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "abafe9b6602fc6664aeb09cf6738cba107bf7f5abd35e81f15fd385347f951a7" +checksum = "7613b9cfb9d4f348bba45bb9425b5d5ea35165fdb79e131e8cdb5119f13c7fde" dependencies = [ "ansi_term", "difference", diff --git a/packages/next-swc/crates/core/Cargo.toml b/packages/next-swc/crates/core/Cargo.toml index 7c1bbd3d3292..601267a40bd2 100644 --- a/packages/next-swc/crates/core/Cargo.toml +++ b/packages/next-swc/crates/core/Cargo.toml @@ -26,18 +26,18 @@ swc_emotion = {path="../emotion"} styled_components = {path="../styled_components"} styled_jsx = {path="../styled_jsx"} modularize_imports = {path="../modularize_imports"} -swc = "0.206.0" -swc_atoms = "0.2.13" -swc_common = { version = "0.24.1", features = ["concurrent", "sourcemap"] } -swc_ecma_loader = { version = "0.36.0", features = ["node", "lru"] } -swc_ecmascript = { version = "0.181.0", features = ["codegen", "minifier", "optimization", "parser", "react", "transforms", "typescript", "utils", "visit"] } -swc_plugin_runner = { version = "0.65.0", optional = true, default-features = false } -swc_cached = "0.1.1" +swc = "0.212.0" +swc_atoms = "0.3.0" +swc_common = { version = "0.26.0", features = ["concurrent", "sourcemap"] } +swc_ecma_loader = { version = "0.38.0", features = ["node", "lru"] } +swc_ecmascript = { version = "0.186.0", features = ["codegen", "minifier", "optimization", "parser", "react", "transforms", "typescript", "utils", "visit"] } +swc_plugin_runner = { version = "0.70.0", optional = true, default-features = false } +swc_cached = "0.2.0" tracing = { version = "0.1.32", features = ["release_max_level_info"] } wasmer = { version = "2.3.0", optional = true, default-features = false } wasmer-wasi = { version = "2.3.0", optional = true, default-features = false } [dev-dependencies] -swc_ecma_transforms_testing = "0.100.0" -testing = "0.26.0" +swc_ecma_transforms_testing = "0.104.0" +testing = "0.28.0" walkdir = "2.3.2" diff --git a/packages/next-swc/crates/emotion/Cargo.toml b/packages/next-swc/crates/emotion/Cargo.toml index 168c0a228cae..2dd85a060a10 100644 --- a/packages/next-swc/crates/emotion/Cargo.toml +++ b/packages/next-swc/crates/emotion/Cargo.toml @@ -18,13 +18,13 @@ radix_fmt = "1" regex = "1.5" serde = "1" sourcemap = "6.0.1" -swc_atoms = "0.2.13" -swc_common = { version = "0.24.1", features = ["concurrent", "sourcemap"] } -swc_ecmascript = { version = "0.181.0", features = ["codegen", "utils", "visit"] } +swc_atoms = "0.3.0" +swc_common = { version = "0.26.0", features = ["concurrent", "sourcemap"] } +swc_ecmascript = { version = "0.186.0", features = ["codegen", "utils", "visit"] } swc_trace_macro = "0.1.1" tracing = { version = "0.1.32", features = ["release_max_level_info"] } [dev-dependencies] -swc_ecma_transforms_testing = "0.100.0" -testing = "0.26.0" +swc_ecma_transforms_testing = "0.104.0" +testing = "0.28.0" serde_json = "1" diff --git a/packages/next-swc/crates/modularize_imports/Cargo.toml b/packages/next-swc/crates/modularize_imports/Cargo.toml index 88cb046f2c75..e62707bf1e78 100644 --- a/packages/next-swc/crates/modularize_imports/Cargo.toml +++ b/packages/next-swc/crates/modularize_imports/Cargo.toml @@ -14,9 +14,9 @@ handlebars = "4.2.1" once_cell = "1.13.0" regex = "1.5" serde = "1" -swc_cached = "0.1.1" -swc_ecmascript = { version = "0.181.0", features = ["visit"] } +swc_cached = "0.2.0" +swc_ecmascript = { version = "0.186.0", features = ["visit"] } [dev-dependencies] -swc_ecma_transforms_testing = "0.100.0" -testing = "0.26.0" +swc_ecma_transforms_testing = "0.104.0" +testing = "0.28.0" diff --git a/packages/next-swc/crates/napi/Cargo.toml b/packages/next-swc/crates/napi/Cargo.toml index 7341e4909c7d..96e67e6ef2cb 100644 --- a/packages/next-swc/crates/napi/Cargo.toml +++ b/packages/next-swc/crates/napi/Cargo.toml @@ -33,13 +33,13 @@ next-swc = {version = "0.0.0", path = "../core"} once_cell = "1.13.0" serde = "1" serde_json = "1" -swc = "0.206.0" -swc_atoms = "0.2.13" -swc_bundler = { version = "0.170.0", features = ["concurrent"] } -swc_common = { version = "0.24.1", features = ["concurrent", "sourcemap"] } -swc_ecma_loader = { version = "0.36.0", features = ["node", "lru"] } -swc_ecmascript = { version = "0.181.0", features = ["codegen", "minifier", "optimization", "parser", "react", "transforms", "typescript", "utils", "visit"] } -swc_plugin_runner = { version = "0.65.0", optional = true } +swc = "0.212.0" +swc_atoms = "0.3.0" +swc_bundler = { version = "0.175.0", features = ["concurrent"] } +swc_common = { version = "0.26.0", features = ["concurrent", "sourcemap"] } +swc_ecma_loader = { version = "0.38.0", features = ["node", "lru"] } +swc_ecmascript = { version = "0.186.0", features = ["codegen", "minifier", "optimization", "parser", "react", "transforms", "typescript", "utils", "visit"] } +swc_plugin_runner = { version = "0.70.0", optional = true } swc_node_base = "0.5.5" tracing = { version = "0.1.32", features = ["release_max_level_info"] } tracing-futures = "0.2.5" diff --git a/packages/next-swc/crates/styled_components/Cargo.toml b/packages/next-swc/crates/styled_components/Cargo.toml index ab60acf351f4..a88ccd914d05 100644 --- a/packages/next-swc/crates/styled_components/Cargo.toml +++ b/packages/next-swc/crates/styled_components/Cargo.toml @@ -15,13 +15,13 @@ Inflector = "0.11.4" once_cell = "1.13.0" regex = {version = "1.5.4", features = ["std", "perf"], default-features = false} serde = {version = "1.0.130", features = ["derive"]} -swc_atoms = "0.2.13" -swc_common = { version = "0.24.1", features = ["concurrent"] } -swc_ecmascript = { version = "0.181.0", features = ["utils", "visit"] } +swc_atoms = "0.3.0" +swc_common = { version = "0.26.0", features = ["concurrent"] } +swc_ecmascript = { version = "0.186.0", features = ["utils", "visit"] } tracing = "0.1.32" [dev-dependencies] serde_json = "1" -swc_ecma_transforms_testing = "0.100.0" -swc_ecmascript = { version = "0.181.0", features = ["parser", "transforms"] } -testing = "0.26.0" +swc_ecma_transforms_testing = "0.104.0" +swc_ecmascript = { version = "0.186.0", features = ["parser", "transforms"] } +testing = "0.28.0" diff --git a/packages/next-swc/crates/styled_jsx/Cargo.toml b/packages/next-swc/crates/styled_jsx/Cargo.toml index ec8f26547a64..531009fb4c50 100644 --- a/packages/next-swc/crates/styled_jsx/Cargo.toml +++ b/packages/next-swc/crates/styled_jsx/Cargo.toml @@ -11,12 +11,12 @@ version = "0.13.0" [dependencies] easy-error = "1.0.0" -swc_common = { version = "0.24.1", features = ["concurrent", "sourcemap"] } -swc_css = "0.112.0" -swc_css_prefixer = "0.108.0" -swc_ecmascript = { version = "0.181.0", features = ["parser", "minifier", "utils", "visit"] } +swc_common = { version = "0.26.0", features = ["concurrent", "sourcemap"] } +swc_css = "0.116.0" +swc_css_prefixer = "0.113.1" +swc_ecmascript = { version = "0.186.0", features = ["parser", "minifier", "utils", "visit"] } tracing = "0.1.32" [dev-dependencies] -swc_ecma_transforms_testing = "0.100.0" -testing = "0.26.0" +swc_ecma_transforms_testing = "0.104.0" +testing = "0.28.0" diff --git a/packages/next-swc/crates/wasm/Cargo.toml b/packages/next-swc/crates/wasm/Cargo.toml index 48ffa079490d..2dd499ca5472 100644 --- a/packages/next-swc/crates/wasm/Cargo.toml +++ b/packages/next-swc/crates/wasm/Cargo.toml @@ -25,10 +25,10 @@ parking_lot_core = "=0.8.0" path-clean = "0.1" serde = {version = "1", features = ["derive"]} serde_json = "1" -swc = "0.206.0" -swc_common = { version = "0.24.1", features = ["concurrent", "sourcemap"] } -swc_ecmascript = { version = "0.181.0", features = ["codegen", "minifier", "optimization", "parser", "react", "transforms", "typescript", "utils", "visit"] } -swc_plugin_runner = { version = "0.65.0", default-features = false, optional = true } +swc = "0.212.0" +swc_common = { version = "0.26.0", features = ["concurrent", "sourcemap"] } +swc_ecmascript = { version = "0.186.0", features = ["codegen", "minifier", "optimization", "parser", "react", "transforms", "typescript", "utils", "visit"] } +swc_plugin_runner = { version = "0.70.0", default-features = false, optional = true } tracing = { version = "0.1.32", features = ["release_max_level_off"] } wasm-bindgen = {version = "0.2", features = ["serde-serialize"]} wasm-bindgen-futures = "0.4.8" From 6d29fed8cf511deb6c803a44d3554983506d7670 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Donny/=EA=B0=95=EB=8F=99=EC=9C=A4?= Date: Wed, 27 Jul 2022 14:55:50 +0900 Subject: [PATCH 29/37] Fix --- packages/next-swc/Cargo.lock | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/next-swc/Cargo.lock b/packages/next-swc/Cargo.lock index 63da03cfcd62..758f3e9a1323 100644 --- a/packages/next-swc/Cargo.lock +++ b/packages/next-swc/Cargo.lock @@ -3200,9 +3200,9 @@ dependencies = [ [[package]] name = "swc_css_prefixer" -version = "0.113.1" +version = "0.113.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "15e3f0d12a4b844b863ff64e5c894758dc79d8199c760ebfdc7716f0fa4c549e" +checksum = "d36aab27a91fd7da889a77f2d85c5cee4aeacde70ddc6f7a42e932de1a436ace" dependencies = [ "once_cell", "preset_env_base", From f4e8bab0a7d3396a543e0da32931436c18c64497 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Donny/=EA=B0=95=EB=8F=99=EC=9C=A4?= Date: Wed, 27 Jul 2022 14:56:56 +0900 Subject: [PATCH 30/37] fix --- .../src/visitors/transpile_css_prop/transpile.rs | 2 +- packages/next-swc/crates/styled_jsx/src/transform_css.rs | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/next-swc/crates/styled_components/src/visitors/transpile_css_prop/transpile.rs b/packages/next-swc/crates/styled_components/src/visitors/transpile_css_prop/transpile.rs index 07278c30d7fe..1396c9fedaf4 100644 --- a/packages/next-swc/crates/styled_components/src/visitors/transpile_css_prop/transpile.rs +++ b/packages/next-swc/crates/styled_components/src/visitors/transpile_css_prop/transpile.rs @@ -148,7 +148,7 @@ impl VisitMut for TranspileCssProp { span: DUMMY_SP, tail: true, cooked: None, - raw: v.value.clone(), + raw: (&*v.value).into(), }], }), JSXAttrValue::JSXExprContainer(JSXExprContainer { diff --git a/packages/next-swc/crates/styled_jsx/src/transform_css.rs b/packages/next-swc/crates/styled_jsx/src/transform_css.rs index e2d602847dca..8ebb1f32bf62 100644 --- a/packages/next-swc/crates/styled_jsx/src/transform_css.rs +++ b/packages/next-swc/crates/styled_jsx/src/transform_css.rs @@ -59,7 +59,7 @@ pub fn transform_css( } }; // ? Do we need to support optionally prefixing? - ss.visit_mut_with(&mut prefixer()); + ss.visit_mut_with(&mut prefixer(Default::default())); ss.visit_mut_with(&mut Namespacer { class_name: match class_name { Some(s) => s.clone(), @@ -343,7 +343,7 @@ impl Namespacer { SubclassSelector::Class(ClassSelector { span: DUMMY_SP, text: Ident { - raw: subclass_selector.into(), + raw: Some(subclass_selector.into()), value: subclass_selector.into(), span: DUMMY_SP, }, From aff67b884496d00d1f6d148a0b7cb079fa3b250d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Donny/=EA=B0=95=EB=8F=99=EC=9C=A4?= Date: Wed, 27 Jul 2022 14:57:34 +0900 Subject: [PATCH 31/37] Update test refs --- .../attribute-generation-modes/output.js | 46 +++++++++---------- .../tests/fixture/different-jsx-ids/output.js | 12 ++--- .../tests/fixture/expressions/output.js | 40 ++++++++-------- .../tests/fixture/issue-30480/output.js | 4 +- .../output.js | 6 +-- .../number-after-placeholder/output.js | 6 +-- .../styled_jsx/tests/fixture/styles/output.js | 22 ++++----- .../tests/fixture/too-many/output.js | 4 +- .../tests/fixture/tpl-escape-2/output.js | 4 +- .../tpl-placeholder-1-as-property/output.js | 6 +-- .../output.js | 6 +-- .../tpl-placeholder-3-as-value/output.js | 6 +-- .../output.js | 6 +-- .../output.js | 6 +-- 14 files changed, 87 insertions(+), 87 deletions(-) diff --git a/packages/next-swc/crates/styled_jsx/tests/fixture/attribute-generation-modes/output.js b/packages/next-swc/crates/styled_jsx/tests/fixture/attribute-generation-modes/output.js index 383e7458f398..a8a8ccdae3c1 100644 --- a/packages/next-swc/crates/styled_jsx/tests/fixture/attribute-generation-modes/output.js +++ b/packages/next-swc/crates/styled_jsx/tests/fixture/attribute-generation-modes/output.js @@ -24,7 +24,7 @@ export const Test2 = ()=>
external and dynamic

- <_JSXStyle id={"accb2339a5faf0f2"} dynamic={[ + <_JSXStyle id={"e7486f61219e66af"} dynamic={[ color ]}>{`p.__jsx-style-dynamic-selector{color:${color}}`} @@ -50,7 +50,7 @@ export const Test3 = ({ color })=>
{"p.jsx-ceba8c9ce34e3d0c{display:inline-block}"} - <_JSXStyle id={"8e6465b81c401982"} dynamic={[ + <_JSXStyle id={"9ef7fdf2e339f135"} dynamic={[ color ]}>{`p.__jsx-style-dynamic-selector{color:${color}}`} @@ -88,7 +88,7 @@ export const Test5 = ()=>
// static and dynamic export const Test6 = ({ color })=>
{"p.jsx-ceba8c9ce34e3d0c{display:inline-block}"} - <_JSXStyle id={"8e6465b81c401982"} dynamic={[ + <_JSXStyle id={"9ef7fdf2e339f135"} dynamic={[ color ]}>{`p.__jsx-style-dynamic-selector{color:${color}}`} @@ -114,7 +114,7 @@ export const Test6 = ({ color })=>
dynamic only

- <_JSXStyle id={"accb2339a5faf0f2"} dynamic={[ + <_JSXStyle id={"e7486f61219e66af"} dynamic={[ color ]}>{`p.__jsx-style-dynamic-selector{color:${color}}`} @@ -143,7 +143,7 @@ export const Test8 = ({ color })=>{ }; return
{

dynamic with scoped compound variable

- <_JSXStyle id={"3b89706ab84e735b"} dynamic={[ + <_JSXStyle id={"1f1fbf7e754ca7cb"} dynamic={[ innerProps.color ]}>{`p.__jsx-style-dynamic-selector{color:${innerProps.color}}`} @@ -173,7 +173,7 @@ export const Test9 = ({ color })=>{ }; return
{

dynamic with compound variable

- <_JSXStyle id={"65329f5bf03a1958"} dynamic={[ + <_JSXStyle id={"460abeb3d95fb60d"} dynamic={[ innerProps.color ]}>{`p.__jsx-style-dynamic-selector{color:${innerProps.color}}`} @@ -197,11 +197,11 @@ export const Test9 = ({ color })=>{ }; const foo = 'red'; // dynamic with constant variable -export const Test10 = ()=>
+export const Test10 = ()=>
-

dynamic with constant variable

+

dynamic with constant variable

- <_JSXStyle id={"cbdf2f44af4108bd"}>{`p.jsx-cbdf2f44af4108bd{color:${foo}}`} + <_JSXStyle id={"f849b7a02be96503"}>{`p.jsx-f849b7a02be96503{color:${foo}}`}
; // dynamic with complex scope @@ -210,14 +210,14 @@ export const Test11 = ({ color })=>{ length: 5 }).map((item, i)=>
  • - <_JSXStyle id={"79c618068313f86e"} dynamic={[ + <_JSXStyle id={"307a31332e39b502"} dynamic={[ color ]}>{`.item.__jsx-style-dynamic-selector{color:${color}}`} diff --git a/packages/next-swc/crates/styled_jsx/tests/fixture/different-jsx-ids/output.js b/packages/next-swc/crates/styled_jsx/tests/fixture/different-jsx-ids/output.js index 104f22dcfa3c..763201482ebd 100644 --- a/packages/next-swc/crates/styled_jsx/tests/fixture/different-jsx-ids/output.js +++ b/packages/next-swc/crates/styled_jsx/tests/fixture/different-jsx-ids/output.js @@ -1,18 +1,18 @@ import _JSXStyle from "next/dist/shared/lib/styled-jsx"; const color = 'red'; const otherColor = 'green'; -const A = ()=>
    +const A = ()=>
    -

    test

    +

    test

    - <_JSXStyle id={"498d4e86e548e679"}>{`p.jsx-498d4e86e548e679{color:${color}}`} + <_JSXStyle id={"551210e97e875d0e"}>{`p.jsx-551210e97e875d0e{color:${color}}`}
    ; -const B = ()=>
    +const B = ()=>
    -

    test

    +

    test

    - <_JSXStyle id={"d051a1c8140076ed"}>{`p.jsx-d051a1c8140076ed{color:${otherColor}}`} + <_JSXStyle id={"d1ed441bb35f699d"}>{`p.jsx-d1ed441bb35f699d{color:${otherColor}}`}
    ; export default (()=>
    diff --git a/packages/next-swc/crates/styled_jsx/tests/fixture/expressions/output.js b/packages/next-swc/crates/styled_jsx/tests/fixture/expressions/output.js index 0d71635b5fd1..06f67cc9de4d 100644 --- a/packages/next-swc/crates/styled_jsx/tests/fixture/expressions/output.js +++ b/packages/next-swc/crates/styled_jsx/tests/fixture/expressions/output.js @@ -8,79 +8,79 @@ const animationName = 'my-cool-animation'; const obj = { display: 'block' }; -export default (({ display })=>
    -

    test

    - <_JSXStyle id={"a8107430c6c528d0"}>{`p.${color}.jsx-ee922fe7eac00c5e{color:${otherColor};display:${obj.display}}`} + <_JSXStyle id={"13bce568d963e978"}>{`p.${color}.jsx-9f11e5fc71d05085{color:${otherColor};display:${obj.display}}`} - <_JSXStyle id={"94239b6d6b42c9b5"}>{"p.jsx-ee922fe7eac00c5e{color:red}"} + <_JSXStyle id={"94239b6d6b42c9b5"}>{"p.jsx-9f11e5fc71d05085{color:red}"} - <_JSXStyle id={"f0a3b803e45f3568"}>{`body{background:${color}}`} + <_JSXStyle id={"ecd8dfc6d11e2c5e"}>{`body{background:${color}}`} - <_JSXStyle id={"f0a3b803e45f3568"}>{`body{background:${color}}`} + <_JSXStyle id={"ecd8dfc6d11e2c5e"}>{`body{background:${color}}`} // TODO: the next two should have the same hash - <_JSXStyle id={"accb2339a5faf0f2"}>{`p.jsx-ee922fe7eac00c5e{color:${color}}`} + <_JSXStyle id={"e7486f61219e66af"}>{`p.jsx-9f11e5fc71d05085{color:${color}}`} - <_JSXStyle id={"accb2339a5faf0f2"}>{`p.jsx-ee922fe7eac00c5e{color:${color}}`} + <_JSXStyle id={"e7486f61219e66af"}>{`p.jsx-9f11e5fc71d05085{color:${color}}`} - <_JSXStyle id={"f03bb8922a3e69b1"} dynamic={[ + <_JSXStyle id={"e0c373c6551675e4"} dynamic={[ darken(color) ]}>{`p.__jsx-style-dynamic-selector{color:${darken(color)}}`} - <_JSXStyle id={"f297f0e8b24d55b4"} dynamic={[ + <_JSXStyle id={"1f060869c7312fe5"} dynamic={[ darken(color) + 2 ]}>{`p.__jsx-style-dynamic-selector{color:${darken(color) + 2}}`} - <_JSXStyle id={"d7df5b0be4ac2e3b"}>{`@media(min-width:${mediumScreen}){p.jsx-ee922fe7eac00c5e{color:green}p.jsx-ee922fe7eac00c5e{color:${`red`}}}p.jsx-ee922fe7eac00c5e{color:red}`} + <_JSXStyle id={"7c5c5bde49d6c65d"}>{`@media(min-width:${mediumScreen}){p.jsx-9f11e5fc71d05085{color:green}p.jsx-9f11e5fc71d05085{color:${`red`}}}p.jsx-9f11e5fc71d05085{color:red}`} - <_JSXStyle id={"ff76c479bb5bf1a9"}>{`p.jsx-ee922fe7eac00c5e{-webkit-animation-duration:${animationDuration};-moz-animation-duration:${animationDuration};-o-animation-duration:${animationDuration};animation-duration:${animationDuration}}`} + <_JSXStyle id={"c5506be0b4762e0b"}>{`p.jsx-9f11e5fc71d05085{-webkit-animation-duration:${animationDuration};-moz-animation-duration:${animationDuration};-o-animation-duration:${animationDuration};animation-duration:${animationDuration}}`} - <_JSXStyle id={"f4ba3ad133457656"}>{`p.jsx-ee922fe7eac00c5e{-webkit-animation:${animationDuration} forwards ${animationName};-moz-animation:${animationDuration} forwards ${animationName};-o-animation:${animationDuration} forwards ${animationName};animation:${animationDuration} forwards ${animationName}}div.jsx-ee922fe7eac00c5e{background:${color}}`} + <_JSXStyle id={"82f0f2f07692d2e2"}>{`p.jsx-9f11e5fc71d05085{-webkit-animation:${animationDuration} forwards ${animationName};-moz-animation:${animationDuration} forwards ${animationName};-o-animation:${animationDuration} forwards ${animationName};animation:${animationDuration} forwards ${animationName}}div.jsx-9f11e5fc71d05085{background:${color}}`} - <_JSXStyle id={"374046f7d83960f0"} dynamic={[ + <_JSXStyle id={"e4db21be651d572a"} dynamic={[ display ? 'block' : 'none' ]}>{`span.__jsx-style-dynamic-selector{display:${display ? 'block' : 'none'}}`} diff --git a/packages/next-swc/crates/styled_jsx/tests/fixture/issue-30480/output.js b/packages/next-swc/crates/styled_jsx/tests/fixture/issue-30480/output.js index 016b2b7ca479..055716c59704 100644 --- a/packages/next-swc/crates/styled_jsx/tests/fixture/issue-30480/output.js +++ b/packages/next-swc/crates/styled_jsx/tests/fixture/issue-30480/output.js @@ -1,14 +1,14 @@ import _JSXStyle from "next/dist/shared/lib/styled-jsx"; export default (({ breakPoint })=>
    - <_JSXStyle id={"1568e0a11702cf40"} dynamic={[ + <_JSXStyle id={"5d2a0e645566ce9c"} dynamic={[ breakPoint ]}>{`@media(${breakPoint}){}`} diff --git a/packages/next-swc/crates/styled_jsx/tests/fixture/issue-31562-interpolation-in-mdea/output.js b/packages/next-swc/crates/styled_jsx/tests/fixture/issue-31562-interpolation-in-mdea/output.js index 4869728eafb0..91173df42565 100644 --- a/packages/next-swc/crates/styled_jsx/tests/fixture/issue-31562-interpolation-in-mdea/output.js +++ b/packages/next-swc/crates/styled_jsx/tests/fixture/issue-31562-interpolation-in-mdea/output.js @@ -3,7 +3,7 @@ export default class { render() { return
    test

    - <_JSXStyle id={"ac0c5daa02b1aeac"} dynamic={[ + <_JSXStyle id={"23846d0356326bee"} dynamic={[ Typography.base.size.default, Typography.base.lineHeight, Target.mediumPlus, diff --git a/packages/next-swc/crates/styled_jsx/tests/fixture/number-after-placeholder/output.js b/packages/next-swc/crates/styled_jsx/tests/fixture/number-after-placeholder/output.js index be4909671d6d..55825a5c4b00 100644 --- a/packages/next-swc/crates/styled_jsx/tests/fixture/number-after-placeholder/output.js +++ b/packages/next-swc/crates/styled_jsx/tests/fixture/number-after-placeholder/output.js @@ -1,17 +1,17 @@ import _JSXStyle from "next/dist/shared/lib/styled-jsx"; import Link from "next/link"; export default function IndexPage() { - return
    + return
    Hello World.{" "} - Abound + Abound - <_JSXStyle id={"2339e3d61ab4470c"}>{`a.jsx-2339e3d61ab4470c{color:${"#abcdef"}12}`} + <_JSXStyle id={"9a4b3442d519aae9"}>{`a.jsx-9a4b3442d519aae9{color:${"#abcdef"}12}`}
    ; }; diff --git a/packages/next-swc/crates/styled_jsx/tests/fixture/styles/output.js b/packages/next-swc/crates/styled_jsx/tests/fixture/styles/output.js index 295b7be84793..e114321b54a1 100644 --- a/packages/next-swc/crates/styled_jsx/tests/fixture/styles/output.js +++ b/packages/next-swc/crates/styled_jsx/tests/fixture/styles/output.js @@ -6,26 +6,26 @@ bar.__hash = "aaed0341accea8f"; const baz = new String("div{font-size:3em}"); baz.__hash = "aaed0341accea8f"; const a = new String(`div{font-size:${size}em}`); -a.__hash = "3066b487d298d78f"; +a.__hash = "b6966e11ccb637f2"; export const uh = bar; -export const foo = new String(`div.jsx-67354fc16554bdab{color:${color}}`); -foo.__hash = "67354fc16554bdab"; +export const foo = new String(`div.jsx-dbfc29cedbb5f49b{color:${color}}`); +foo.__hash = "dbfc29cedbb5f49b"; ({ - styles: <_JSXStyle id={"ef44b0e76b4e59a2"}>{`div.jsx-ef44b0e76b4e59a2{color:${colors.green.light}}a.jsx-ef44b0e76b4e59a2{color:red}`}, - className: "jsx-ef44b0e76b4e59a2" + styles: <_JSXStyle id={"38ae14c4ec5e0907"}>{`div.jsx-38ae14c4ec5e0907{color:${colors.green.light}}a.jsx-38ae14c4ec5e0907{color:red}`}, + className: "jsx-38ae14c4ec5e0907" }); const b = { - styles: <_JSXStyle id={"ef44b0e76b4e59a2"}>{`div.jsx-ef44b0e76b4e59a2{color:${colors.green.light}}a.jsx-ef44b0e76b4e59a2{color:red}`}, - className: "jsx-ef44b0e76b4e59a2" + styles: <_JSXStyle id={"38ae14c4ec5e0907"}>{`div.jsx-38ae14c4ec5e0907{color:${colors.green.light}}a.jsx-38ae14c4ec5e0907{color:red}`}, + className: "jsx-38ae14c4ec5e0907" }; const dynamic = (colors)=>{ const b = { - styles: <_JSXStyle id={"d1249fb76dde6727"} dynamic={[ + styles: <_JSXStyle id={"b68d3b38146e2a7d"} dynamic={[ colors.green.light ]}>{`div.__jsx-style-dynamic-selector{color:${colors.green.light}}a.__jsx-style-dynamic-selector{color:red}`}, className: _JSXStyle.dynamic([ [ - "d1249fb76dde6727", + "b68d3b38146e2a7d", [ colors.green.light ] @@ -34,6 +34,6 @@ const dynamic = (colors)=>{ }; }; export default { - styles: <_JSXStyle id={"d85f88350ca31aae"}>{`div.jsx-d85f88350ca31aae{font-size:3em}p.jsx-d85f88350ca31aae{color:${color}}`}, - className: "jsx-d85f88350ca31aae" + styles: <_JSXStyle id={"a300397bb1f6c7cd"}>{`div.jsx-a300397bb1f6c7cd{font-size:3em}p.jsx-a300397bb1f6c7cd{color:${color}}`}, + className: "jsx-a300397bb1f6c7cd" }; diff --git a/packages/next-swc/crates/styled_jsx/tests/fixture/too-many/output.js b/packages/next-swc/crates/styled_jsx/tests/fixture/too-many/output.js index f14b42417907..67c714a05cd8 100644 --- a/packages/next-swc/crates/styled_jsx/tests/fixture/too-many/output.js +++ b/packages/next-swc/crates/styled_jsx/tests/fixture/too-many/output.js @@ -2,7 +2,7 @@ import _JSXStyle from "next/dist/shared/lib/styled-jsx"; export const Red = ({ Component ='button' , })=>{ return { {} - <_JSXStyle id={"6c7c8cee856673a7"} dynamic={[ + <_JSXStyle id={"1a9f9e2fa701f7ec"} dynamic={[ e1, e2, e3, diff --git a/packages/next-swc/crates/styled_jsx/tests/fixture/tpl-escape-2/output.js b/packages/next-swc/crates/styled_jsx/tests/fixture/tpl-escape-2/output.js index cc36e78a7df7..04d7cbd73a9c 100644 --- a/packages/next-swc/crates/styled_jsx/tests/fixture/tpl-escape-2/output.js +++ b/packages/next-swc/crates/styled_jsx/tests/fixture/tpl-escape-2/output.js @@ -2,14 +2,14 @@ import _JSXStyle from "next/dist/shared/lib/styled-jsx"; export default function Home({ fontFamily }) { return
    - <_JSXStyle id={"ae6b96ca586fe51a"} dynamic={[ + <_JSXStyle id={"3892513b52a23034"} dynamic={[ fontFamily ]}>{`body{font-family:${fontFamily}}code:before,code:after{content:"\`"}`} diff --git a/packages/next-swc/crates/styled_jsx/tests/fixture/tpl-placeholder-1-as-property/output.js b/packages/next-swc/crates/styled_jsx/tests/fixture/tpl-placeholder-1-as-property/output.js index 0a864030587c..3d9ebca458d4 100644 --- a/packages/next-swc/crates/styled_jsx/tests/fixture/tpl-placeholder-1-as-property/output.js +++ b/packages/next-swc/crates/styled_jsx/tests/fixture/tpl-placeholder-1-as-property/output.js @@ -3,7 +3,7 @@ export default class { render() { return
    test

    - <_JSXStyle id={"e1b0d3df4c8dcbf0"} dynamic={[ + <_JSXStyle id={"fc144a5ba38f1ea7"} dynamic={[ inputSize ? 'height: calc(2 * var(--a)) !important;' : '' ]}>{`@media only screen{a.__jsx-style-dynamic-selector{${inputSize ? 'height: calc(2 * var(--a)) !important;' : ''} }}`} diff --git a/packages/next-swc/crates/styled_jsx/tests/fixture/tpl-placeholder-2-as-part-of-value/output.js b/packages/next-swc/crates/styled_jsx/tests/fixture/tpl-placeholder-2-as-part-of-value/output.js index 3b9e84573279..f0765f7b53ba 100644 --- a/packages/next-swc/crates/styled_jsx/tests/fixture/tpl-placeholder-2-as-part-of-value/output.js +++ b/packages/next-swc/crates/styled_jsx/tests/fixture/tpl-placeholder-2-as-part-of-value/output.js @@ -3,7 +3,7 @@ export default class { render() { return
    test

    - <_JSXStyle id={"5fd7f2008eca3a62"} dynamic={[ + <_JSXStyle id={"3316de46318b70d2"} dynamic={[ a[b], -1 * (c || 0), d diff --git a/packages/next-swc/crates/styled_jsx/tests/fixture/tpl-placeholder-3-as-value/output.js b/packages/next-swc/crates/styled_jsx/tests/fixture/tpl-placeholder-3-as-value/output.js index 82c2e655667e..e40fc79d7229 100644 --- a/packages/next-swc/crates/styled_jsx/tests/fixture/tpl-placeholder-3-as-value/output.js +++ b/packages/next-swc/crates/styled_jsx/tests/fixture/tpl-placeholder-3-as-value/output.js @@ -3,7 +3,7 @@ export default class { render() { return
    test

    - <_JSXStyle id={"b249ec2f79615bbf"} dynamic={[ + <_JSXStyle id={"10afbaef094d6ad4"} dynamic={[ a ]}>{`@media only screen{a.__jsx-style-dynamic-selector{color:${a}}}`} diff --git a/packages/next-swc/crates/styled_jsx/tests/fixture/tpl-placeholder-4-as-part-of-value-in-multiple/output.js b/packages/next-swc/crates/styled_jsx/tests/fixture/tpl-placeholder-4-as-part-of-value-in-multiple/output.js index 1223b0175131..282cdbfbc457 100644 --- a/packages/next-swc/crates/styled_jsx/tests/fixture/tpl-placeholder-4-as-part-of-value-in-multiple/output.js +++ b/packages/next-swc/crates/styled_jsx/tests/fixture/tpl-placeholder-4-as-part-of-value-in-multiple/output.js @@ -3,7 +3,7 @@ export default class { render() { return
    test

    - <_JSXStyle id={"6021be0687550489"} dynamic={[ + <_JSXStyle id={"30707b6ee2bc231f"} dynamic={[ a || 'var(--c)', b || 'inherit' ]}>{`.a:hover .b.__jsx-style-dynamic-selector{display:inline-block;padding:0 ${a || 'var(--c)'};color:${b || 'inherit'}}`} diff --git a/packages/next-swc/crates/styled_jsx/tests/fixture/tpl-placeholder-5-values-of-multiple-properties/output.js b/packages/next-swc/crates/styled_jsx/tests/fixture/tpl-placeholder-5-values-of-multiple-properties/output.js index 55c96c64ce49..15d6fc1b3538 100644 --- a/packages/next-swc/crates/styled_jsx/tests/fixture/tpl-placeholder-5-values-of-multiple-properties/output.js +++ b/packages/next-swc/crates/styled_jsx/tests/fixture/tpl-placeholder-5-values-of-multiple-properties/output.js @@ -3,7 +3,7 @@ export default class { render() { return
    test

    - <_JSXStyle id={"e2cf1d088389269b"} dynamic={[ + <_JSXStyle id={"3f66f111bff09281"} dynamic={[ a ? '100%' : '200px', b ? '0' : '8px 20px' ]}>{`.item.__jsx-style-dynamic-selector{max-width:${a ? '100%' : '200px'};padding:${b ? '0' : '8px 20px'}}`} From 9ad53e7372a634bda315b731b7a695a0b48dce3b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Donny/=EA=B0=95=EB=8F=99=EC=9C=A4?= Date: Wed, 27 Jul 2022 14:57:49 +0900 Subject: [PATCH 32/37] Bump --- packages/next-swc/Cargo.lock | 8 ++++---- packages/next-swc/crates/emotion/Cargo.toml | 2 +- packages/next-swc/crates/modularize_imports/Cargo.toml | 2 +- packages/next-swc/crates/styled_components/Cargo.toml | 2 +- packages/next-swc/crates/styled_jsx/Cargo.toml | 2 +- 5 files changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/next-swc/Cargo.lock b/packages/next-swc/Cargo.lock index 758f3e9a1323..47b99d2ada5c 100644 --- a/packages/next-swc/Cargo.lock +++ b/packages/next-swc/Cargo.lock @@ -1475,7 +1475,7 @@ dependencies = [ [[package]] name = "modularize_imports" -version = "0.13.0" +version = "0.14.0" dependencies = [ "handlebars", "once_cell", @@ -2892,7 +2892,7 @@ checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" [[package]] name = "styled_components" -version = "0.38.0" +version = "0.39.0" dependencies = [ "Inflector", "once_cell", @@ -2909,7 +2909,7 @@ dependencies = [ [[package]] name = "styled_jsx" -version = "0.13.0" +version = "0.14.0" dependencies = [ "easy-error", "swc_common", @@ -3727,7 +3727,7 @@ dependencies = [ [[package]] name = "swc_emotion" -version = "0.15.0" +version = "0.16.0" dependencies = [ "base64 0.13.0", "byteorder", diff --git a/packages/next-swc/crates/emotion/Cargo.toml b/packages/next-swc/crates/emotion/Cargo.toml index 2dd85a060a10..b6322531a417 100644 --- a/packages/next-swc/crates/emotion/Cargo.toml +++ b/packages/next-swc/crates/emotion/Cargo.toml @@ -5,7 +5,7 @@ description = "AST Transforms for emotion" license = "Apache-2.0" name = "swc_emotion" repository = "https://github.com/vercel/next.js.git" -version = "0.15.0" +version = "0.16.0" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html diff --git a/packages/next-swc/crates/modularize_imports/Cargo.toml b/packages/next-swc/crates/modularize_imports/Cargo.toml index e62707bf1e78..5a4617984f7b 100644 --- a/packages/next-swc/crates/modularize_imports/Cargo.toml +++ b/packages/next-swc/crates/modularize_imports/Cargo.toml @@ -5,7 +5,7 @@ edition = "2018" license = "Apache-2.0" name = "modularize_imports" repository = "https://github.com/vercel/next.js.git" -version = "0.13.0" +version = "0.14.0" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html diff --git a/packages/next-swc/crates/styled_components/Cargo.toml b/packages/next-swc/crates/styled_components/Cargo.toml index a88ccd914d05..17c499863fd3 100644 --- a/packages/next-swc/crates/styled_components/Cargo.toml +++ b/packages/next-swc/crates/styled_components/Cargo.toml @@ -6,7 +6,7 @@ include = ["Cargo.toml", "src/**/*.rs"] license = "Apache-2.0" name = "styled_components" repository = "https://github.com/vercel/next.js.git" -version = "0.38.0" +version = "0.39.0" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html diff --git a/packages/next-swc/crates/styled_jsx/Cargo.toml b/packages/next-swc/crates/styled_jsx/Cargo.toml index 531009fb4c50..1c9eb85eb1bf 100644 --- a/packages/next-swc/crates/styled_jsx/Cargo.toml +++ b/packages/next-swc/crates/styled_jsx/Cargo.toml @@ -5,7 +5,7 @@ edition = "2018" license = "Apache-2.0" name = "styled_jsx" repository = "https://github.com/vercel/next.js.git" -version = "0.13.0" +version = "0.14.0" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html From b5ff1a894d9f8db96b772186558325ab1311f41c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Donny/=EA=B0=95=EB=8F=99=EC=9C=A4?= Date: Wed, 27 Jul 2022 22:38:14 +0900 Subject: [PATCH 33/37] plugin --- packages/next-swc/crates/core/Cargo.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/next-swc/crates/core/Cargo.toml b/packages/next-swc/crates/core/Cargo.toml index 601267a40bd2..09fb1d7cda1d 100644 --- a/packages/next-swc/crates/core/Cargo.toml +++ b/packages/next-swc/crates/core/Cargo.toml @@ -31,7 +31,7 @@ swc_atoms = "0.3.0" swc_common = { version = "0.26.0", features = ["concurrent", "sourcemap"] } swc_ecma_loader = { version = "0.38.0", features = ["node", "lru"] } swc_ecmascript = { version = "0.186.0", features = ["codegen", "minifier", "optimization", "parser", "react", "transforms", "typescript", "utils", "visit"] } -swc_plugin_runner = { version = "0.70.0", optional = true, default-features = false } +swc_plugin_runner = { version = "0.70.0", optional = true, default-features = false, features=["plugin_transform_schema_v1"] } swc_cached = "0.2.0" tracing = { version = "0.1.32", features = ["release_max_level_info"] } wasmer = { version = "2.3.0", optional = true, default-features = false } From 85c5f4b7941c281a3c4ac5e71d191af41907671e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Donny/=EA=B0=95=EB=8F=99=EC=9C=A4?= Date: Wed, 27 Jul 2022 22:38:16 +0900 Subject: [PATCH 34/37] prefixer --- packages/next-swc/crates/styled_jsx/Cargo.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/next-swc/crates/styled_jsx/Cargo.toml b/packages/next-swc/crates/styled_jsx/Cargo.toml index 1c9eb85eb1bf..0fea4ea2be78 100644 --- a/packages/next-swc/crates/styled_jsx/Cargo.toml +++ b/packages/next-swc/crates/styled_jsx/Cargo.toml @@ -13,7 +13,7 @@ version = "0.14.0" easy-error = "1.0.0" swc_common = { version = "0.26.0", features = ["concurrent", "sourcemap"] } swc_css = "0.116.0" -swc_css_prefixer = "0.113.1" +swc_css_prefixer = "0.113.2" swc_ecmascript = { version = "0.186.0", features = ["parser", "minifier", "utils", "visit"] } tracing = "0.1.32" From 0be749e774e8da63179dd2816c050a3c3c4f88f2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Donny/=EA=B0=95=EB=8F=99=EC=9C=A4?= Date: Wed, 27 Jul 2022 22:52:24 +0900 Subject: [PATCH 35/37] Feature --- packages/next-swc/crates/core/Cargo.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/next-swc/crates/core/Cargo.toml b/packages/next-swc/crates/core/Cargo.toml index 09fb1d7cda1d..7c6966f8aabb 100644 --- a/packages/next-swc/crates/core/Cargo.toml +++ b/packages/next-swc/crates/core/Cargo.toml @@ -28,7 +28,7 @@ styled_jsx = {path="../styled_jsx"} modularize_imports = {path="../modularize_imports"} swc = "0.212.0" swc_atoms = "0.3.0" -swc_common = { version = "0.26.0", features = ["concurrent", "sourcemap"] } +swc_common = { version = "0.26.0", features = ["concurrent", "sourcemap", "plugin_transform_schema_v1"] } swc_ecma_loader = { version = "0.38.0", features = ["node", "lru"] } swc_ecmascript = { version = "0.186.0", features = ["codegen", "minifier", "optimization", "parser", "react", "transforms", "typescript", "utils", "visit"] } swc_plugin_runner = { version = "0.70.0", optional = true, default-features = false, features=["plugin_transform_schema_v1"] } From b1c14e0c013ad3f39cac0cb6a13db0013f118b25 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Donny/=EA=B0=95=EB=8F=99=EC=9C=A4?= Date: Wed, 27 Jul 2022 23:01:42 +0900 Subject: [PATCH 36/37] Fix --- packages/next-swc/crates/emotion/src/import_map.rs | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/packages/next-swc/crates/emotion/src/import_map.rs b/packages/next-swc/crates/emotion/src/import_map.rs index 279134a700f6..dc8cbdf0ab1d 100644 --- a/packages/next-swc/crates/emotion/src/import_map.rs +++ b/packages/next-swc/crates/emotion/src/import_map.rs @@ -46,14 +46,10 @@ pub(crate) fn expand_import_map( }) .clone(); - if &*package_name == "@emotion/react" && export_name == "Global" { - } else if &*package_name == "@emotion/styled" && export_name == "default" { - } - let kind = package_transformers .exported_names .iter() - .find(|v| v.name == &**export_name) + .find(|v| v.name == **export_name) .map(|v| v.kind) .or_else(|| { if export_name == "default" { From c7dde87c8665bed47075274e2dd4d46f9d71a416 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Donny/=EA=B0=95=EB=8F=99=EC=9C=A4?= Date: Thu, 28 Jul 2022 11:46:02 +0900 Subject: [PATCH 37/37] Update again --- packages/next-swc/Cargo.lock | 12 ++++++------ packages/next-swc/crates/core/Cargo.toml | 6 +++--- packages/next-swc/crates/emotion/Cargo.toml | 2 +- packages/next-swc/crates/napi/Cargo.toml | 4 ++-- .../next-swc/crates/styled_components/Cargo.toml | 2 +- packages/next-swc/crates/styled_jsx/Cargo.toml | 2 +- packages/next-swc/crates/wasm/Cargo.toml | 2 +- 7 files changed, 15 insertions(+), 15 deletions(-) diff --git a/packages/next-swc/Cargo.lock b/packages/next-swc/Cargo.lock index 47b99d2ada5c..35562b4c7450 100644 --- a/packages/next-swc/Cargo.lock +++ b/packages/next-swc/Cargo.lock @@ -2957,9 +2957,9 @@ dependencies = [ [[package]] name = "swc" -version = "0.212.0" +version = "0.212.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9256adc9510c3b887377fe817f36f66524850863220c9fe20dfe55c35337ffb9" +checksum = "6860819497adc7ffbda33061e0d6a36672212c6e623257927a088aa74116490a" dependencies = [ "ahash", "anyhow", @@ -3007,9 +3007,9 @@ dependencies = [ [[package]] name = "swc_atoms" -version = "0.3.0" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f7c7709078e8f8f34a2f277d9d5f6e95ea5f18752ee9a9986d0eff3dcafea3f3" +checksum = "66e252fe697709a0fc8710b5b9dee2d72fd9852d3f5fd1a057ce808b6987ccba" dependencies = [ "bytecheck", "once_cell", @@ -3200,9 +3200,9 @@ dependencies = [ [[package]] name = "swc_css_prefixer" -version = "0.113.2" +version = "0.113.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d36aab27a91fd7da889a77f2d85c5cee4aeacde70ddc6f7a42e932de1a436ace" +checksum = "3393413633e283959aad05d8943c896729cc0d9cf31a37b213460748d1eff4c4" dependencies = [ "once_cell", "preset_env_base", diff --git a/packages/next-swc/crates/core/Cargo.toml b/packages/next-swc/crates/core/Cargo.toml index 7c6966f8aabb..85a6769395da 100644 --- a/packages/next-swc/crates/core/Cargo.toml +++ b/packages/next-swc/crates/core/Cargo.toml @@ -26,12 +26,12 @@ swc_emotion = {path="../emotion"} styled_components = {path="../styled_components"} styled_jsx = {path="../styled_jsx"} modularize_imports = {path="../modularize_imports"} -swc = "0.212.0" -swc_atoms = "0.3.0" +swc = "0.212.1" +swc_atoms = "0.3.1" swc_common = { version = "0.26.0", features = ["concurrent", "sourcemap", "plugin_transform_schema_v1"] } swc_ecma_loader = { version = "0.38.0", features = ["node", "lru"] } swc_ecmascript = { version = "0.186.0", features = ["codegen", "minifier", "optimization", "parser", "react", "transforms", "typescript", "utils", "visit"] } -swc_plugin_runner = { version = "0.70.0", optional = true, default-features = false, features=["plugin_transform_schema_v1"] } +swc_plugin_runner = { version = "0.70.0", optional = true, default-features = false, features = ["plugin_transform_schema_v1"] } swc_cached = "0.2.0" tracing = { version = "0.1.32", features = ["release_max_level_info"] } wasmer = { version = "2.3.0", optional = true, default-features = false } diff --git a/packages/next-swc/crates/emotion/Cargo.toml b/packages/next-swc/crates/emotion/Cargo.toml index b6322531a417..e81959d07ae2 100644 --- a/packages/next-swc/crates/emotion/Cargo.toml +++ b/packages/next-swc/crates/emotion/Cargo.toml @@ -18,7 +18,7 @@ radix_fmt = "1" regex = "1.5" serde = "1" sourcemap = "6.0.1" -swc_atoms = "0.3.0" +swc_atoms = "0.3.1" swc_common = { version = "0.26.0", features = ["concurrent", "sourcemap"] } swc_ecmascript = { version = "0.186.0", features = ["codegen", "utils", "visit"] } swc_trace_macro = "0.1.1" diff --git a/packages/next-swc/crates/napi/Cargo.toml b/packages/next-swc/crates/napi/Cargo.toml index 96e67e6ef2cb..996e6aa5e280 100644 --- a/packages/next-swc/crates/napi/Cargo.toml +++ b/packages/next-swc/crates/napi/Cargo.toml @@ -33,8 +33,8 @@ next-swc = {version = "0.0.0", path = "../core"} once_cell = "1.13.0" serde = "1" serde_json = "1" -swc = "0.212.0" -swc_atoms = "0.3.0" +swc = "0.212.1" +swc_atoms = "0.3.1" swc_bundler = { version = "0.175.0", features = ["concurrent"] } swc_common = { version = "0.26.0", features = ["concurrent", "sourcemap"] } swc_ecma_loader = { version = "0.38.0", features = ["node", "lru"] } diff --git a/packages/next-swc/crates/styled_components/Cargo.toml b/packages/next-swc/crates/styled_components/Cargo.toml index 17c499863fd3..8c91c16a0a6f 100644 --- a/packages/next-swc/crates/styled_components/Cargo.toml +++ b/packages/next-swc/crates/styled_components/Cargo.toml @@ -15,7 +15,7 @@ Inflector = "0.11.4" once_cell = "1.13.0" regex = {version = "1.5.4", features = ["std", "perf"], default-features = false} serde = {version = "1.0.130", features = ["derive"]} -swc_atoms = "0.3.0" +swc_atoms = "0.3.1" swc_common = { version = "0.26.0", features = ["concurrent"] } swc_ecmascript = { version = "0.186.0", features = ["utils", "visit"] } tracing = "0.1.32" diff --git a/packages/next-swc/crates/styled_jsx/Cargo.toml b/packages/next-swc/crates/styled_jsx/Cargo.toml index 0fea4ea2be78..b116d21f3a6b 100644 --- a/packages/next-swc/crates/styled_jsx/Cargo.toml +++ b/packages/next-swc/crates/styled_jsx/Cargo.toml @@ -13,7 +13,7 @@ version = "0.14.0" easy-error = "1.0.0" swc_common = { version = "0.26.0", features = ["concurrent", "sourcemap"] } swc_css = "0.116.0" -swc_css_prefixer = "0.113.2" +swc_css_prefixer = "0.113.3" swc_ecmascript = { version = "0.186.0", features = ["parser", "minifier", "utils", "visit"] } tracing = "0.1.32" diff --git a/packages/next-swc/crates/wasm/Cargo.toml b/packages/next-swc/crates/wasm/Cargo.toml index 2dd499ca5472..4a4f0d2a7b56 100644 --- a/packages/next-swc/crates/wasm/Cargo.toml +++ b/packages/next-swc/crates/wasm/Cargo.toml @@ -25,7 +25,7 @@ parking_lot_core = "=0.8.0" path-clean = "0.1" serde = {version = "1", features = ["derive"]} serde_json = "1" -swc = "0.212.0" +swc = "0.212.1" swc_common = { version = "0.26.0", features = ["concurrent", "sourcemap"] } swc_ecmascript = { version = "0.186.0", features = ["codegen", "minifier", "optimization", "parser", "react", "transforms", "typescript", "utils", "visit"] } swc_plugin_runner = { version = "0.70.0", default-features = false, optional = true }