Upate swc to allow line comments in css (#29943)

Co-authored-by: kdy1 <kdy1@users.noreply.github.com>
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
Co-authored-by: Tim Neutkens <timneutkens@me.com>
This commit is contained in:
Donny/강동윤 2021-10-16 00:25:31 +09:00 committed by GitHub
parent b5d7a91f6c
commit e844582400
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
10 changed files with 94 additions and 53 deletions

View file

@ -29,9 +29,9 @@ checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe"
[[package]]
name = "ahash"
version = "0.7.5"
version = "0.7.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "991984e3fd003e7ba02eb724f87a0f997b78677c46c0e91f8424ad7394c9886a"
checksum = "fcb51a0695d8f838b1ee009b3fbf66bda078cd64590202a864a8f3e8c4315c47"
dependencies = [
"getrandom 0.2.3",
"once_cell",
@ -70,9 +70,9 @@ checksum = "23b62fc65de8e4e7f52534fb52b0f3ed04746ae267519eef2a83941e8085068b"
[[package]]
name = "ast_node"
version = "0.7.3"
version = "0.7.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f93f52ce8fac3d0e6720a92b0576d737c01b1b5db4dd786e962e5925f00bf755"
checksum = "e96d5444b02f3080edac8a144f6baf29b2fb6ff589ad4311559731a7c7529381"
dependencies = [
"darling",
"pmutil",
@ -1612,9 +1612,9 @@ checksum = "6446ced80d6c486436db5c078dde11a9f73d42b57fb273121e160b84f63d894c"
[[package]]
name = "swc"
version = "0.69.0"
version = "0.70.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ca659f79ccbbd34a002fccb5e8b05f45de9972647949b010c40a8ca53d33c875"
checksum = "e7c432a2706993195063f400ff876554024c0868ac41ca0ca6a6bb6c5a9f3faa"
dependencies = [
"ahash",
"anyhow",
@ -1659,9 +1659,9 @@ dependencies = [
[[package]]
name = "swc_bundler"
version = "0.70.0"
version = "0.71.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5875c9ff8b4855310c6212063be0b1c376964c1621de2ec63430dc4bfa63bc19"
checksum = "e8655ecb836e637d76b5dd4450023e7b1cc293f082fa43191ca06ed13f977946"
dependencies = [
"ahash",
"anyhow",
@ -1718,9 +1718,9 @@ dependencies = [
[[package]]
name = "swc_css"
version = "0.16.0"
version = "0.18.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "39ff3f4812b44b7d2e1f0ef4903289abf1c03f037ed90e36238f241a33f211ee"
checksum = "cea1fbf74b44a2c151dcde27a0a6369ce4725efcc179a7eca063ca73fd2a0cbb"
dependencies = [
"swc_css_ast",
"swc_css_codegen",
@ -1731,9 +1731,9 @@ dependencies = [
[[package]]
name = "swc_css_ast"
version = "0.15.0"
version = "0.16.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "bd46b291be83b48510699b4a64fe5e49a3ed1d4bfeb584523bee7e33e882412b"
checksum = "a19dc4ab42d62dbc3a2b862140d3bc192d756de34f6cb4e0971ad48bf372ded4"
dependencies = [
"is-macro",
"serde",
@ -1744,9 +1744,9 @@ dependencies = [
[[package]]
name = "swc_css_codegen"
version = "0.14.0"
version = "0.16.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "93ec9f83da8a62e9c66ae74f484308a7f8117a189cfc27110391f6569f5f2c35"
checksum = "3ea03f852411119253f547f64e736180adc624e5ea0593ee3896013342f1edc4"
dependencies = [
"auto_impl",
"bitflags",
@ -1771,9 +1771,9 @@ dependencies = [
[[package]]
name = "swc_css_parser"
version = "0.16.0"
version = "0.18.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d8ded0bb1f4e9ee1dfff2cd0d9a0eeb23310347f9ce8198f3581baac1ee21344"
checksum = "22914bf277da600cc7bc048dab652556bf868e0e2115be85592c721d19d7ca10"
dependencies = [
"bitflags",
"lexical",
@ -1785,9 +1785,9 @@ dependencies = [
[[package]]
name = "swc_css_utils"
version = "0.12.0"
version = "0.13.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "12dbf49076432f3c03829404627c291fcdbfd7c1f91fb445a44f95819881c62e"
checksum = "3ac938a049c9622d49036e05e489b5b6291e40398828ec389f29f338a2c3ffd5"
dependencies = [
"swc_atoms",
"swc_common",
@ -1797,9 +1797,9 @@ dependencies = [
[[package]]
name = "swc_css_visit"
version = "0.14.0"
version = "0.15.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7b9e18aeb12759c0974bb7e7bc5421b070e8b562701a80f99f8dbc23c27f83b9"
checksum = "7bde96d0c90915d1ae3768412e1099d22d57fee5ede178d66caa7d573d02e953"
dependencies = [
"swc_atoms",
"swc_common",
@ -1823,9 +1823,9 @@ dependencies = [
[[package]]
name = "swc_ecma_codegen"
version = "0.75.0"
version = "0.75.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5f1e753868b75da17edfb44de0825933cdeef4e93ad8ee4b192722ba62182b3f"
checksum = "7d2964cf7b95da20bce325204ba3ca658fa4a8eba329f420d450b924f07fbbc4"
dependencies = [
"bitflags",
"memchr",
@ -1893,9 +1893,9 @@ dependencies = [
[[package]]
name = "swc_ecma_minifier"
version = "0.39.0"
version = "0.40.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "88e5eea1dc94e1d1a6ce715aae6533c56f79ad550ba3bf0bc7fed4d42cf66f92"
checksum = "de20e3de59fa9515a441fd89da583adddd92b9da1a3576ccd0b3fdf605a34d8a"
dependencies = [
"indexmap",
"once_cell",
@ -1920,9 +1920,9 @@ dependencies = [
[[package]]
name = "swc_ecma_parser"
version = "0.73.12"
version = "0.73.13"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "64a8f23e1b29aa6757a87739294b623ca3690907b80ba569ddf83ca700ac2db9"
checksum = "bb14098c8e2c9678e2ec4324183a0e2508b26fcead24bfd7b1ee3c7a2af36cc7"
dependencies = [
"either",
"enum_kind",
@ -1935,14 +1935,15 @@ dependencies = [
"swc_ecma_ast",
"swc_ecma_visit",
"tracing",
"typed-arena",
"unicode-xid",
]
[[package]]
name = "swc_ecma_preset_env"
version = "0.54.0"
version = "0.55.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "463275dfe6d536ef67fdaccc0fa03b4843c1381bcd90e54e586eba4308169b06"
checksum = "9a97fecd9dccf7c9b960f8a90b1b58a9d576d3b924337bfeb972b12e96193d2c"
dependencies = [
"ahash",
"dashmap",
@ -1964,9 +1965,9 @@ dependencies = [
[[package]]
name = "swc_ecma_transforms"
version = "0.83.0"
version = "0.84.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0e7566d4e2da296c2ce397eb94e9c53ad62f599409bc0308e4c2aad774456b82"
checksum = "30b84e73df02fa17f2f5829b6c60d764db917172f754af6d03fb8f8a122f9c2f"
dependencies = [
"swc_atoms",
"swc_common",
@ -2018,9 +2019,9 @@ dependencies = [
[[package]]
name = "swc_ecma_transforms_compat"
version = "0.43.0"
version = "0.43.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9fb6f6e12949c310359c453e6b5f2b2ca47a4c547f2b7592d5fe79a8e5276e0d"
checksum = "d77f5d1b842f96d6f8dacf8c3909b80722b647a93960bdbd99f54a5f07f3cccc"
dependencies = [
"ahash",
"arrayvec",
@ -2055,9 +2056,9 @@ dependencies = [
[[package]]
name = "swc_ecma_transforms_module"
version = "0.47.0"
version = "0.48.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5ff03116edf68426e24bc5295384efb59464ea2f4e0a46b2a9eb03affd82f604"
checksum = "8894162c60252cf9025b7a69cb8ba9f1aae6074514abe246f944083dfbd00598"
dependencies = [
"Inflector",
"ahash",
@ -2077,9 +2078,9 @@ dependencies = [
[[package]]
name = "swc_ecma_transforms_optimization"
version = "0.53.0"
version = "0.54.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3b74b5f3eae7296639fb34f850c3f28d6a3e9d35f045ca59e3271c9d36de7f67"
checksum = "f9e15ae11492a200e5579cc9cb1eb0b86f1a9d9532193d5374ad667155e602da"
dependencies = [
"ahash",
"dashmap",
@ -2099,9 +2100,9 @@ dependencies = [
[[package]]
name = "swc_ecma_transforms_proposal"
version = "0.47.0"
version = "0.48.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5c9981d2e57baace689838cc7e35faae81cd7760851aaab46cc9feaee0287af7"
checksum = "874514a6e8d56fda2f9e2ed167a5c7f0e9f848141e2c1f271c7909a0434d592c"
dependencies = [
"either",
"serde",
@ -2119,9 +2120,9 @@ dependencies = [
[[package]]
name = "swc_ecma_transforms_react"
version = "0.49.0"
version = "0.50.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "eb5d95f1c08ce2a998f77b50bc9fc6e2edfae958de0afccecbcdfcc3dbf186d9"
checksum = "c1e4c27b30d35af65882de3bbdeb14a5d9805c35cf0383f2bd91048134384381"
dependencies = [
"ahash",
"base64 0.13.0",
@ -2164,9 +2165,9 @@ dependencies = [
[[package]]
name = "swc_ecma_transforms_typescript"
version = "0.50.0"
version = "0.51.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3f9be57eb16a442a9a459994274a5184c07a139f0c1fc9c09c881eb33e2f0dc7"
checksum = "ba0f5bf13b1ee06e0334e4fb700dd3c128ef1f838760f12f5b92a9a51e545b86"
dependencies = [
"serde",
"swc_atoms",
@ -2209,9 +2210,9 @@ dependencies = [
[[package]]
name = "swc_ecmascript"
version = "0.75.0"
version = "0.76.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c9706c91f3ff56a65e6510284939e34f6b9193f142496741c25eb361f83eae4c"
checksum = "213322f169cc62195e5a2532a294819c602f3241d8c4bc02c455cb866fb815df"
dependencies = [
"swc_ecma_ast",
"swc_ecma_codegen",
@ -2259,9 +2260,9 @@ dependencies = [
[[package]]
name = "swc_stylis"
version = "0.13.0"
version = "0.15.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c2dc8f250db60512a41496d7a613e6fb35021db0f37c19f9718f3e9a9c22aedd"
checksum = "24cb4b5cc7ecf44f107dfafa87f114b87af4a9764475eeab559ee39325b8faf9"
dependencies = [
"swc_atoms",
"swc_common",
@ -2272,9 +2273,9 @@ dependencies = [
[[package]]
name = "swc_visit"
version = "0.2.6"
version = "0.2.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a423caa0b4585118164dbad8f1ad52b592a9a9370b25decc4d84c6b4309132c0"
checksum = "e81dbab83f147db7d7de14e8d73ae939cbaed204ac8a907ca0a5e0cba6e091a9"
dependencies = [
"either",
"swc_visit_macros",
@ -2460,6 +2461,12 @@ dependencies = [
"tracing-serde",
]
[[package]]
name = "typed-arena"
version = "2.0.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0685c84d5d54d1c26f7d3eb96cd41550adb97baed141a761cf335d3d33bcd0ae"
[[package]]
name = "typenum"
version = "1.14.0"

View file

@ -16,14 +16,14 @@ path-clean = "0.1"
regex = "1.5"
serde = "1"
serde_json = "1"
swc = "0.69.0"
swc = "0.70.0"
swc_atoms = "0.2.7"
swc_common = { version = "0.13.5", features = ["concurrent", "sourcemap"] }
swc_css = "0.16.0"
swc_ecmascript = { version = "0.75.0", features = ["codegen", "minifier", "optimization", "parser", "react", "transforms", "typescript", "utils", "visit"] }
swc_ecma_preset_env = "0.54.0"
swc_css = "0.18.0"
swc_ecmascript = { version = "0.76.0", features = ["codegen", "minifier", "optimization", "parser", "react", "transforms", "typescript", "utils", "visit"] }
swc_ecma_preset_env = "0.55.0"
swc_node_base = "0.4.0"
swc_stylis = "0.13.0"
swc_stylis = "0.15.0"
fxhash = "0.2.1"
retain_mut = "0.1.3"
pathdiff = "0.2.0"

View file

@ -25,6 +25,7 @@ pub fn transform_css(
style_info.css_span.hi,
ParserConfig {
parse_values: false,
allow_wrong_line_comments: true,
},
// We ignore errors because we inject placeholders for expressions which is
// not a valid css.
@ -44,6 +45,7 @@ pub fn transform_css(
style_info.css_span,
"Failed to parse css in styled jsx component",
)
.note(&format!("Input to the css parser is {}", style_info.css))
.emit()
});
bail!("Failed to parse css");
@ -173,6 +175,7 @@ impl Namespacer {
&args,
ParserConfig {
parse_values: false,
allow_wrong_line_comments: true,
},
// TODO(kdy1): We might be able to report syntax errors.
&mut vec![],

View file

@ -0,0 +1,18 @@
export default class {
render() {
return (
<div>
<p>test</p>
<style jsx>{`
//
p {
//
color: red;
//
}
`}</style>
</div>
)
}
}

View file

@ -0,0 +1,12 @@
import _JSXStyle from "styled-jsx/style";
export default class {
render() {
return <div className={"jsx-1952086b0a5ae64c"}>
<p className={"jsx-1952086b0a5ae64c"}>test</p>
<_JSXStyle id={"1952086b0a5ae64c"}>{"p.jsx-1952086b0a5ae64c {color:red}"}</_JSXStyle>
</div>;
}
};

View file

@ -73,6 +73,7 @@ function getSWCOptions({
: {}),
// Disables getStaticProps/getServerSideProps tree shaking on the server compilation for pages
disableNextSsg: true,
allowWrongLineComments: true,
pagesDir,
env: {
targets: {