diff --git a/Cargo.lock b/Cargo.lock index adfa55b..4f735ec 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -58,9 +58,9 @@ checksum = "d92bec98840b8f03a5ff5413de5293bfcd8bf96467cf5452609f939ec6f5de16" [[package]] name = "ast_node" -version = "5.0.0" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2eb025ef00a6da925cf40870b9c8d008526b6004ece399cb0974209720f0b194" +checksum = "edf54a7a1bf98e127c22e9e2b9d19619092c74283fdc14e4d67da69780f90db6" dependencies = [ "quote", "swc_macros_common", @@ -143,29 +143,6 @@ dependencies = [ "allocator-api2", ] -[[package]] -name = "bytecheck" -version = "0.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "50690fb3370fb9fe3550372746084c46f2ac8c9685c583d2be10eefd89d3d1a3" -dependencies = [ - "bytecheck_derive", - "ptr_meta", - "rancor", - "simdutf8", -] - -[[package]] -name = "bytecheck_derive" -version = "0.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "efb7846e0cb180355c2dec69e721edafa36919850f1a9f52ffba4ebc0393cb71" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - [[package]] name = "bytes" version = "1.10.1" @@ -179,7 +156,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7c60b5ce37e0b883c37eb89f79a1e26fbe9c1081945d024eee93e8d91a7e18b3" dependencies = [ "bytes", - "rkyv", "serde", ] @@ -312,41 +288,6 @@ dependencies = [ "hybrid-array", ] -[[package]] -name = "darling" -version = "0.20.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f63b86c8a8826a49b8c21f08a2d07338eec8d900540f8630dc76284be802989" -dependencies = [ - "darling_core", - "darling_macro", -] - -[[package]] -name = "darling_core" -version = "0.20.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "95133861a8032aaea082871032f5815eb9e98cef03fa916ab4500513994df9e5" -dependencies = [ - "fnv", - "ident_case", - "proc-macro2", - "quote", - "strsim", - "syn", -] - -[[package]] -name = "darling_macro" -version = "0.20.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d336a2a514f6ccccaa3e09b02d41d35330c07ddf03a62165fcec10bb561c7806" -dependencies = [ - "darling_core", - "quote", - "syn", -] - [[package]] name = "data-encoding" version = "2.11.0" @@ -363,37 +304,6 @@ dependencies = [ "uuid", ] -[[package]] -name = "derive_builder" -version = "0.20.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "507dfb09ea8b7fa618fcf76e953f4f5e192547945816d5358edffe39f6f94947" -dependencies = [ - "derive_builder_macro", -] - -[[package]] -name = "derive_builder_core" -version = "0.20.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2d5bcf7b024d6835cfb3d473887cd966994907effbe9227e8c8219824d06c4e8" -dependencies = [ - "darling", - "proc-macro2", - "quote", - "syn", -] - -[[package]] -name = "derive_builder_macro" -version = "0.20.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab63b0e2bf4d5928aff72e83a7dace85d7bba5fe12dcc3c5a572d78caffd3f3c" -dependencies = [ - "derive_builder_core", - "syn", -] - [[package]] name = "diff" version = "0.1.13" @@ -478,12 +388,6 @@ version = "2.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e8c02a5121d4ea3eb16a80748c74f5549a5665e4c21333c6098f283870fbdea6" -[[package]] -name = "fnv" -version = "1.0.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" - [[package]] name = "form_urlencoded" version = "1.2.1" @@ -541,12 +445,6 @@ version = "0.15.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1e087f84d4f86bf4b218b927129862374b72199ae7d8657835f1e89000eea4fb" -[[package]] -name = "hashbrown" -version = "0.17.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed5909b6e89a2db4456e54cd5f673791d7eca6732202bbf2a9cc504fe2f9b84a" - [[package]] name = "hermit-abi" version = "0.3.9" @@ -561,9 +459,9 @@ checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" [[package]] name = "hstr" -version = "3.0.5" +version = "4.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c1b94e40256e78ddd4e30490aa931bec17e65e9413a6ad11f64ec67815da9323" +checksum = "23efb2e58d2f27a96edfa907c26016deb120b7ac8c66a19d2748f0e9c145f3cb" dependencies = [ "hashbrown 0.14.5", "new_debug_unreachable", @@ -700,12 +598,6 @@ dependencies = [ "syn", ] -[[package]] -name = "ident_case" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" - [[package]] name = "idna" version = "1.0.3" @@ -745,9 +637,9 @@ dependencies = [ [[package]] name = "insta" -version = "1.47.2" +version = "1.48.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b4a6248eb93a4401ed2f37dfe8ea592d3cf05b7cf4f8efa867b6895af7e094e" +checksum = "86f0f8fee8c926415c58d6ae43a08523a26faccb2323f5e6b644fe7dd4ef6b82" dependencies = [ "console", "once_cell", @@ -865,26 +757,6 @@ dependencies = [ "syn", ] -[[package]] -name = "munge" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8743b8dfaf66acac79aca9ff2440e8680fef745b6260e6a31d1772b14cfa2862" -dependencies = [ - "munge_macro", -] - -[[package]] -name = "munge_macro" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "66191390a55bb9830fa8468c12634442ea4199c6e390ddf08ddcace35b3cd5da" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - [[package]] name = "new_debug_unreachable" version = "1.0.6" @@ -1071,26 +943,6 @@ dependencies = [ "cc", ] -[[package]] -name = "ptr_meta" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fe9e76f66d3f9606f44e45598d155cb13ecf09f4a28199e48daf8c8fc937ea90" -dependencies = [ - "ptr_meta_derive", -] - -[[package]] -name = "ptr_meta_derive" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca414edb151b4c8d125c12566ab0d74dc9cdba36fb80eb7b848c15f495fd32d1" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - [[package]] name = "quote" version = "1.0.37" @@ -1106,15 +958,6 @@ version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09" -[[package]] -name = "rancor" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "caf5f7161924b9d1cea0e4cabc97c372cea92b5f927fc13c6bca67157a0ad947" -dependencies = [ - "ptr_meta", -] - [[package]] name = "rand" version = "0.8.5" @@ -1174,45 +1017,6 @@ version = "1.9.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ba39f3699c378cd8970968dcbff9c43159ea4cfbd88d43c00b22f2ef10a435d2" -[[package]] -name = "rend" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a35e8a6bf28cd121053a66aa2e6a2e3eaffad4a60012179f0e864aa5ffeff215" -dependencies = [ - "bytecheck", -] - -[[package]] -name = "rkyv" -version = "0.8.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "73389e0c99e664f919275ab5b5b0471391fe9a8de61e1dff9b1eaf56a90f16e3" -dependencies = [ - "bytecheck", - "bytes", - "hashbrown 0.17.1", - "indexmap", - "munge", - "ptr_meta", - "rancor", - "rend", - "rkyv_derive", - "tinyvec", - "uuid", -] - -[[package]] -name = "rkyv_derive" -version = "0.8.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d2ed0b54125315fb36bd021e82d314d1c126548f871634b483f46b31d13cac6" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - [[package]] name = "rustc-hash" version = "2.1.1" @@ -1303,9 +1107,9 @@ dependencies = [ [[package]] name = "serde_json" -version = "1.0.150" +version = "1.0.151" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8014e44b4736ed0538adeecded0fce2a272f22dc9578a7eb6b2d9993c74cfb9" +checksum = "c841b55ecdae098c80dcae9cf767f6f8a0c2cdb3416bbef72181df4d0fe73f14" dependencies = [ "itoa", "memchr", @@ -1351,12 +1155,6 @@ version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" -[[package]] -name = "simdutf8" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3a9fe34e3e7a50316060351f37187a3f546bce95496156754b601a5fa71b76e" - [[package]] name = "similar" version = "2.7.0" @@ -1375,17 +1173,6 @@ version = "1.13.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67" -[[package]] -name = "smartstring" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3fb72c633efbaa2dd666986505016c32c3044395ceaf881518399d2f4127ee29" -dependencies = [ - "autocfg", - "static_assertions", - "version_check", -] - [[package]] name = "stable_deref_trait" version = "1.2.0" @@ -1422,17 +1209,11 @@ dependencies = [ "syn", ] -[[package]] -name = "strsim" -version = "0.11.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f" - [[package]] name = "swc_allocator" -version = "4.0.1" +version = "5.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d7eefd2c8b228a8c73056482b2ae4b3a1071fbe07638e3b55ceca8570cc48bb" +checksum = "eb41c2f41afa7357a86109f7e058f6b140ab415b8cd196c1a7b54f2703c85417" dependencies = [ "allocator-api2", "bumpalo", @@ -1442,29 +1223,25 @@ dependencies = [ [[package]] name = "swc_atoms" -version = "9.0.1" +version = "10.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ecbd7177c71140b23dc6b1b9c1a9f16f96d0337cb999f5a79bb49ca4d82eded0" +checksum = "c70a493080ceb12dabddb96905a3ddac679fbe9c71ddc81a2a769126e8cde7c4" dependencies = [ - "bytecheck", "cbor4ii", "hstr", "once_cell", - "rancor", - "rkyv", "serde", ] [[package]] name = "swc_common" -version = "21.0.2" +version = "26.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da38f2cee8e659bf0ec7f51ec5b37ec58c9127de755d3fe0b2c2353ec9474b09" +checksum = "142d2a06cafce623859ca799f5d1935bb8a886f18b66a2585ddeadff210121d0" dependencies = [ "anyhow", "ast_node", "better_scoped_tls", - "bytecheck", "bytes-str", "cbor4ii", "either", @@ -1472,8 +1249,6 @@ dependencies = [ "num-bigint", "once_cell", "parking_lot", - "rancor", - "rkyv", "rustc-hash", "serde", "siphasher", @@ -1489,9 +1264,9 @@ dependencies = [ [[package]] name = "swc_core" -version = "66.0.3" +version = "77.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "458fe6f4767653597b5d1c7ae2194c56bf0cb0929b6e4e45325402275d2436ff" +checksum = "057a37377ae0446cc1eb1648026f6d81b3abc0fe8e3955da05fe7b3b13d68dcc" dependencies = [ "swc_allocator", "swc_atoms", @@ -1507,14 +1282,13 @@ dependencies = [ "swc_plugin_macro", "swc_plugin_proxy", "swc_transform_common", - "vergen", ] [[package]] name = "swc_ecma_ast" -version = "23.0.1" +version = "29.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "550ee54eab536fe357090fec6d42d083c28cf44cc9bcfa93b1ea5e1606f3b2f7" +checksum = "5a6fd43fc7e90b9d5b252af666c147f5e2ee692add2b075f7f0d6fc2f5357bb6" dependencies = [ "bitflags", "cbor4ii", @@ -1532,9 +1306,9 @@ dependencies = [ [[package]] name = "swc_ecma_codegen" -version = "26.0.2" +version = "32.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "39230b073d1d785ac7a905354161e21970d15956e348f46a85deb0da0d4d5132" +checksum = "a1b19a1d9f059fb77b0bc321688c7af59fe687a975581379456962586959c5d1" dependencies = [ "ascii", "compact_str", @@ -1550,6 +1324,7 @@ dependencies = [ "swc_common", "swc_ecma_ast", "swc_ecma_codegen_macros", + "swc_ecma_utils", "tracing", ] @@ -1566,18 +1341,18 @@ dependencies = [ [[package]] name = "swc_ecma_parser" -version = "39.1.0" +version = "45.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "76e6934ad1cf59a947528f034943be40d06fb3332def0d71db29ba6ad8181283" +checksum = "f0a5ca9f83036146e27ed32ee508c8e1ddf6a719c23a939cdda37491ba8264ba" dependencies = [ "bitflags", + "compact_str", "either", "num-bigint", "phf", "rustc-hash", "seq-macro", "serde", - "smartstring", "stacker", "swc_atoms", "swc_common", @@ -1587,9 +1362,9 @@ dependencies = [ [[package]] name = "swc_ecma_testing" -version = "22.0.0" +version = "27.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "497be914cd77ff4169871e3f4b4eb5ce710e36bfc2d953ad008df796874f5ecb" +checksum = "2d9eca985397245f45f146e13bb4f4aec6c9238fe8a05124ab9e626662f0d813" dependencies = [ "anyhow", "hex", @@ -1600,9 +1375,9 @@ dependencies = [ [[package]] name = "swc_ecma_transforms_base" -version = "42.0.1" +version = "49.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1f0c8ee943a8f9099391cecef5b3eafc98aba64dfa5f6f7cd336a32989d92d1a" +checksum = "9c5b5b6a31a512d23854cb6fabc9347596bde4106cd3a65dc4f9072bbb0514b4" dependencies = [ "better_scoped_tls", "indexmap", @@ -1622,9 +1397,9 @@ dependencies = [ [[package]] name = "swc_ecma_transforms_testing" -version = "46.0.0" +version = "53.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f49e30e9c3dbe227ffb8b701d0ccc19e060d8446faead55c3226db32af162911" +checksum = "f76aec842cdbe4ae1c8a953f8b126c9e26a42ee388c9b3c9b68a0e4e5e9747c9" dependencies = [ "ansi_term", "anyhow", @@ -1648,9 +1423,9 @@ dependencies = [ [[package]] name = "swc_ecma_utils" -version = "29.1.1" +version = "35.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d69b480aa02b5ff2ab951478d8e7633eeda42940aeb5fe0386eebc19dd3b1e4" +checksum = "a6fb39737b1c2bde685c5d85799aa04107548de69087a77c690a3ca8bbfc5100" dependencies = [ "dragonbox_ecma", "indexmap", @@ -1667,9 +1442,9 @@ dependencies = [ [[package]] name = "swc_ecma_visit" -version = "23.0.0" +version = "29.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad65d392ed427dc9e94f16a3d802b02e27722c21227639c8d5f45f19757b447b" +checksum = "a830a070fea84a3a8a8c556463f0551e3bfc6cf2f8bdeecd62fa753e22a72289" dependencies = [ "new_debug_unreachable", "num-bigint", @@ -1693,9 +1468,9 @@ dependencies = [ [[package]] name = "swc_error_reporters" -version = "23.0.0" +version = "28.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a901e41bea44b4ec8237b1cde1d2e7ae0a3b5c87c6d1100103de45caf440f972" +checksum = "997aa1a85b9ebdab127d8819ea5ebfa5b90e5a958d969e25cce4c853c36d26de" dependencies = [ "anyhow", "miette", @@ -1726,9 +1501,9 @@ dependencies = [ [[package]] name = "swc_plugin_macro" -version = "1.1.0" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ace467dfafbbdf3aecff786b8605b35db57d945e92fd88800569aa2cba0cdf61" +checksum = "584f7e74ca311c843d67e143331d9fb17bd5468f6216f3feac0b012d7cc268c0" dependencies = [ "proc-macro2", "quote", @@ -1737,16 +1512,15 @@ dependencies = [ [[package]] name = "swc_plugin_proxy" -version = "23.0.0" +version = "30.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dbfc8183fc43f5617a6bf5e6af0869dd634f3df469070f61b6f98d7cbd300d5a" +checksum = "b13ffe2fc1fb9b1936f6ceaf21d8e2e68f23ac9f0022db414e5f30c5fc52a966" dependencies = [ "better_scoped_tls", "cbor4ii", "rustc-hash", "swc_common", "swc_ecma_ast", - "swc_trace_macro", "tracing", ] @@ -1769,21 +1543,11 @@ dependencies = [ "url", ] -[[package]] -name = "swc_trace_macro" -version = "2.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dfd2b4b0adb82e36f2ac688d00a6a67132c7f4170c772617516793a701be89e8" -dependencies = [ - "quote", - "syn", -] - [[package]] name = "swc_transform_common" -version = "15.0.0" +version = "20.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fbf6619f4691d3934610de7d0acf4807634161f395bf44d695810ebae9e405d2" +checksum = "693ff873dd31f50c44f5c05182631715bc03f7e1123e7805279b25d1db2bed20" dependencies = [ "better_scoped_tls", "rustc-hash", @@ -1853,9 +1617,9 @@ dependencies = [ [[package]] name = "testing" -version = "22.0.0" +version = "27.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd50c53833442165fa5bf385497986c6ca501e8cf2df442919f5475aded14134" +checksum = "ab499434ba981fb7aada35505f2035e1bae4517c18bafebf8954dd2dc7e979af" dependencies = [ "cargo_metadata", "difference", @@ -1874,9 +1638,9 @@ dependencies = [ [[package]] name = "testing_macros" -version = "1.0.1" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b7442bd3ca09f38d4788dc5ebafbc1967c3717726b4b074db011d470b353548b" +checksum = "5c21fb13b703fb0bf466ec891704055ec18e2a8c8d2d47c31b65d7006044e146" dependencies = [ "anyhow", "glob", @@ -1938,21 +1702,6 @@ dependencies = [ "zerovec", ] -[[package]] -name = "tinyvec" -version = "1.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "445e881f4f6d382d5f27c034e25eb92edd7c784ceab92a0937db7f2e9471b938" -dependencies = [ - "tinyvec_macros", -] - -[[package]] -name = "tinyvec_macros" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" - [[package]] name = "tracing" version = "0.1.43" @@ -2095,31 +1844,6 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d" -[[package]] -name = "vergen" -version = "9.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "349ed9e45296a581f455bc18039878f409992999bc1d5da12a6800eb18c8752f" -dependencies = [ - "anyhow", - "cargo_metadata", - "derive_builder", - "regex", - "rustversion", - "vergen-lib", -] - -[[package]] -name = "vergen-lib" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "229eaddb0050920816cf051e619affaf18caa3dd512de8de5839ccbc8e53abb0" -dependencies = [ - "anyhow", - "derive_builder", - "rustversion", -] - [[package]] name = "version_check" version = "0.9.5" diff --git a/Cargo.toml b/Cargo.toml index 16769c9..f6ffd70 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -12,5 +12,5 @@ lto = false opt-level = 3 [workspace.dependencies] -swc_core = { version = "66.0.3", default-features = false } -insta = { version = "1.47.2", features = ["serde"] } +swc_core = { version = "77.1.1", default-features = false } +insta = { version = "1.48.0", features = ["serde"] } diff --git a/crates/lingui_macro/Cargo.toml b/crates/lingui_macro/Cargo.toml index 9b89883..ae6d943 100644 --- a/crates/lingui_macro/Cargo.toml +++ b/crates/lingui_macro/Cargo.toml @@ -9,8 +9,8 @@ crate-type = ["cdylib", "rlib"] [dependencies] data-encoding = "2.11.0" sha2 = "0.11.0" -serde = "1.0.228" -serde_json = "1.0.150" +serde = "1.0.22" +serde_json = "1.0.151" swc_core = { workspace = true, features = [ "ecma_plugin_transform", "ecma_utils", diff --git a/crates/lingui_macro/src/jsx_visitor.rs b/crates/lingui_macro/src/jsx_visitor.rs index 902ea87..95a1576 100644 --- a/crates/lingui_macro/src/jsx_visitor.rs +++ b/crates/lingui_macro/src/jsx_visitor.rs @@ -270,7 +270,9 @@ impl TransJSXVisitor<'_, '_> { fn visit_jsx_text(&mut self, el: &JSXText) { self.tokens - .push(MsgToken::String(clean_jsx_element_literal_child(&el.value))); + .push(MsgToken::String(clean_jsx_element_literal_child( + &el.value.to_string_lossy(), + ))); } fn visit_jsx_expr_container(&mut self, cont: &JSXExprContainer) { diff --git a/crates/lingui_macro/src/lib.rs b/crates/lingui_macro/src/lib.rs index 0c23e6f..9fdebd3 100644 --- a/crates/lingui_macro/src/lib.rs +++ b/crates/lingui_macro/src/lib.rs @@ -255,7 +255,7 @@ where } } - pub fn handle_use_lingui(&mut self, n: BlockStmt) -> BlockStmt { + pub fn handle_use_lingui(&mut self, n: FunctionBody) -> FunctionBody { let mut ctx = self.ctx.clone(); let mut ident_replacer: Option = None; @@ -381,10 +381,9 @@ r#"You have to destructure `t` when using the `useLingui` macro, i.e: }) .collect(); - let mut block = BlockStmt { + let mut block = FunctionBody { span: n.span, stmts, - ctxt: SyntaxContext::empty(), }; // use lingui matched above @@ -492,11 +491,11 @@ where let mut func = n; - if func.body.is_block_stmt() { - let block = func.body.block_stmt().unwrap(); - + if let ArrowFunctionBody::FunctionBody(body) = *func.body { func = ArrowExpr { - body: Box::new(BlockStmtOrExpr::BlockStmt(self.handle_use_lingui(block))), + body: Box::new(ArrowFunctionBody::FunctionBody( + self.handle_use_lingui(body), + )), ..func } } diff --git a/packages/lingui-macro/README.md b/packages/lingui-macro/README.md index fca677b..4146aa2 100644 --- a/packages/lingui-macro/README.md +++ b/packages/lingui-macro/README.md @@ -188,30 +188,31 @@ Below is a table referencing the `swc_core` version used during the plugin build To learn more about SWC Plugins compatibility check this issue https://github.com/lingui/swc-plugin/issues/179 -| Plugin Version | used `swc_core` | -|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------| -| `0.1.0`, `4.0.0-next.0` | `0.52.8` | -| `0.2.*`, `4.0.0-next.1` ~ `4.0.0-next.3` | `0.56.1` | -| `4.0.0` | `0.75.33` | -| `4.0.1` | `0.76.0` | -| `4.0.2` | `0.76.41` | -| `4.0.3` | `0.78.28` | -| `4.0.4` | `0.79.x` | -| `4.0.5`, `4.0.6` | [`0.87.x`](https://plugins.swc.rs/versions/range/10) | -| `4.0.7`, `4.0.8`, `5.0.0-next.0` ~ `5.0.0-next.1` | [`0.90.35`](https://plugins.swc.rs/versions/range/12) | -| `4.0.9` | [`0.96.9`](https://plugins.swc.rs/versions/range/15) | -| `4.0.10` | [`0.101.4`](https://plugins.swc.rs/versions/range/94) | -| `4.1.0`, `5.0.0` ~ `5.2.0` | [`0.106.3`](https://plugins.swc.rs/versions/range/95) | -| `5.3.0` | [`5.0.4`](https://plugins.swc.rs/versions/range/116) | -| `5.4.0` | [`14.1.0`](https://plugins.swc.rs/versions/range/138) | -| `5.5.0` ~ `5.5.2` | [`15.0.1`](https://plugins.swc.rs/versions/range/271) | -| `5.6.0` ~ `5.6.1` | [`27.0.6`](https://plugins.swc.rs/versions/range/364) | -| `5.7.0` | [`39.0.3`](https://plugins.swc.rs/versions/range/426) | -| `5.8.0` | [`45.0.2`](https://plugins.swc.rs/versions/range/497) | -| `5.9.0` | [`46.0.3`](https://plugins.swc.rs/versions/range/713) | -| `5.10.0` | [`50.2.3`](https://plugins.swc.rs/versions/range/768) | +| Plugin Version | used `swc_core` | +|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| `0.1.0`, `4.0.0-next.0` | `0.52.8` | +| `0.2.*`, `4.0.0-next.1` ~ `4.0.0-next.3` | `0.56.1` | +| `4.0.0` | `0.75.33` | +| `4.0.1` | `0.76.0` | +| `4.0.2` | `0.76.41` | +| `4.0.3` | `0.78.28` | +| `4.0.4` | `0.79.x` | +| `4.0.5`, `4.0.6` | [`0.87.x`](https://plugins.swc.rs/versions/range/10) | +| `4.0.7`, `4.0.8`, `5.0.0-next.0` ~ `5.0.0-next.1` | [`0.90.35`](https://plugins.swc.rs/versions/range/12) | +| `4.0.9` | [`0.96.9`](https://plugins.swc.rs/versions/range/15) | +| `4.0.10` | [`0.101.4`](https://plugins.swc.rs/versions/range/94) | +| `4.1.0`, `5.0.0` ~ `5.2.0` | [`0.106.3`](https://plugins.swc.rs/versions/range/95) | +| `5.3.0` | [`5.0.4`](https://plugins.swc.rs/versions/range/116) | +| `5.4.0` | [`14.1.0`](https://plugins.swc.rs/versions/range/138) | +| `5.5.0` ~ `5.5.2` | [`15.0.1`](https://plugins.swc.rs/versions/range/271) | +| `5.6.0` ~ `5.6.1` | [`27.0.6`](https://plugins.swc.rs/versions/range/364) | +| `5.7.0` | [`39.0.3`](https://plugins.swc.rs/versions/range/426) | +| `5.8.0` | [`45.0.2`](https://plugins.swc.rs/versions/range/497) | +| `5.9.0` | [`46.0.3`](https://plugins.swc.rs/versions/range/713) | +| `5.10.0` | [`50.2.3`](https://plugins.swc.rs/versions/range/768) | | `5.10.1` ~ `6.1.0`
Starting from this version Wasm plugins are compatible between `@swc/core` versions to some extent. Read more [here](https://swc.rs/docs/plugin/ecmascript/compatibility#make-your-plugin-compatible). | [`50.2.3`](https://plugins.swc.rs/versions/range/768) with [`--cfg=swc_ast_unknown`](https://swc.rs/docs/plugin/ecmascript/compatibility#make-your-plugin-compatible) | -| `6.2.0` ~ `*` | `66.0.3` | +| `6.2.0` ~ `6.6.0` | [`66.0.3`](https://plugins.swc.rs/versions/range/836) | +| `6.7.0` ~ `*` | [`77.1.1`](https://plugins.swc.rs/versions/range/3012) | > **Note**