From 4eb109d51e9784a5185fc12a5433d1363a4b6a11 Mon Sep 17 00:00:00 2001 From: Jayden Seric Date: Thu, 19 Nov 2020 14:26:31 +1100 Subject: [PATCH 1/2] Make the styled-jsx/babel Babel plugin respect the Babel source type. Fixes https://github.com/vercel/styled-jsx/issues/680 . --- package.json | 1 + src/_utils.js | 11 ++++--- src/babel-external.js | 3 +- src/babel.js | 5 ++-- src/macro.js | 3 +- test/babel6/snapshots/attribute.js.md | 5 ++-- test/babel6/snapshots/attribute.js.snap | Bin 1530 -> 1530 bytes test/babel6/snapshots/external.js.md | 4 +-- test/babel6/snapshots/external.js.snap | Bin 1502 -> 1503 bytes test/babel6/snapshots/index.js.snap | Bin 2515 -> 2522 bytes test/babel6/snapshots/plugins.js.snap | Bin 601 -> 601 bytes test/fixtures/cjs-module.js | 7 +++++ test/index.js | 7 +++++ test/snapshots/external.js.md | 38 ++++++++++++------------ test/snapshots/external.js.snap | Bin 1812 -> 1819 bytes test/snapshots/index.js.md | 14 +++++++++ test/snapshots/index.js.snap | Bin 3080 -> 3216 bytes test/snapshots/plugins.js.snap | Bin 599 -> 601 bytes yarn.lock | 38 ++---------------------- 19 files changed, 65 insertions(+), 71 deletions(-) create mode 100644 test/fixtures/cjs-module.js diff --git a/package.json b/package.json index 0f3d0d55..76f0cf18 100644 --- a/package.json +++ b/package.json @@ -52,6 +52,7 @@ } }, "dependencies": { + "@babel/helper-module-imports": "7.12.5", "@babel/types": "7.8.3", "babel-plugin-syntax-jsx": "6.18.0", "convert-source-map": "1.7.0", diff --git a/src/_utils.js b/src/_utils.js index fafc0c27..007f1dc0 100644 --- a/src/_utils.js +++ b/src/_utils.js @@ -1,4 +1,5 @@ import path from 'path' +import { addDefault } from '@babel/helper-module-imports'; import * as t from '@babel/types' import _hashString from 'string-hash' import { SourceMapGenerator } from 'source-map' @@ -621,14 +622,12 @@ export const booleanOption = opts => { } export const createReactComponentImportDeclaration = state => { - const styleModule = + addDefault( + state.file.path, typeof state.opts.styleModule === 'string' ? state.opts.styleModule - : 'styled-jsx/style' - - return t.importDeclaration( - [t.importDefaultSpecifier(t.identifier(STYLE_COMPONENT))], - t.stringLiteral(styleModule) + : 'styled-jsx/style', + { nameHint: STYLE_COMPONENT} ) } diff --git a/src/babel-external.js b/src/babel-external.js index fd413357..71d68d14 100644 --- a/src/babel-external.js +++ b/src/babel-external.js @@ -226,8 +226,7 @@ export const visitor = { !path.scope.hasBinding(STYLE_COMPONENT) ) { state.hasInjectedJSXStyle = true - const importDeclaration = createReactComponentImportDeclaration(state) - path.scope.path.node.body.unshift(importDeclaration) + createReactComponentImportDeclaration(state) } }) diff --git a/src/babel.js b/src/babel.js index 9b3b0268..6f32f170 100644 --- a/src/babel.js +++ b/src/babel.js @@ -294,7 +294,7 @@ export default function({ types: t }) { // Transpile external styles path.traverse(externalStylesVisitor, state) }, - exit({ node, scope }, state) { + exit({ scope }, state) { if ( !( state.file.hasJSXStyle && @@ -306,8 +306,7 @@ export default function({ types: t }) { } state.hasInjectedJSXStyle = true - const importDeclaration = createReactComponentImportDeclaration(state) - node.body.unshift(importDeclaration) + createReactComponentImportDeclaration(state) } } } diff --git a/src/macro.js b/src/macro.js index 8040f328..daf2aa8e 100644 --- a/src/macro.js +++ b/src/macro.js @@ -102,8 +102,7 @@ function styledJsxMacro({ references, state }) { !path.scope.hasBinding(STYLE_COMPONENT) ) { state.hasInjectedJSXStyle = true - const importDeclaration = createReactComponentImportDeclaration(state) - path.findParent(p => p.isProgram()).node.body.unshift(importDeclaration) + createReactComponentImportDeclaration(state) } }) }) diff --git a/test/babel6/snapshots/attribute.js.md b/test/babel6/snapshots/attribute.js.md index 442b8aba..341808cf 100644 --- a/test/babel6/snapshots/attribute.js.md +++ b/test/babel6/snapshots/attribute.js.md @@ -106,9 +106,10 @@ Generated by [AVA](https://ava.li). > Snapshot 1 - `var _this = this;␊ + `import _JSXStyle from "styled-jsx/style";␊ + ␊ + var _this = this;␊ ␊ - import _JSXStyle from "styled-jsx/style";␊ export default (() => {␊ const Element = 'div';␊ return
␊ diff --git a/test/babel6/snapshots/attribute.js.snap b/test/babel6/snapshots/attribute.js.snap index 71641d5452193a9a442e05fb8dddb4e533583054..f885e861e495e6d2f6600c20659932bfe0975cf9 100644 GIT binary patch literal 1530 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 diff --git a/test/babel6/snapshots/external.js.md b/test/babel6/snapshots/external.js.md index e7188727..7e7ce819 100644 --- a/test/babel6/snapshots/external.js.md +++ b/test/babel6/snapshots/external.js.md @@ -19,9 +19,9 @@ Generated by [AVA](https://ava.li). const baz = ['div{font-size:3em;}'];␊ ␊ baz.__hash = '2141779268';␊ - a.__hash = '262929833';␊ const a = [`div{font-size:${size}em;}`];␊ ␊ + a.__hash = '262929833';␊ export const uh = bar;␊ ␊ export const foo = [`div.jsx-2299908427{color:${color};}`];␊ @@ -123,9 +123,9 @@ Generated by [AVA](https://ava.li). const baz = new String('div{font-size:3em;}');␊ ␊ baz.__hash = '2141779268';␊ - a.__hash = '262929833';␊ const a = new String(`div{font-size:${size}em;}`);␊ ␊ + a.__hash = '262929833';␊ export const uh = bar;␊ ␊ export const foo = new String(`div.jsx-2299908427{color:${color};}`);␊ diff --git a/test/babel6/snapshots/external.js.snap b/test/babel6/snapshots/external.js.snap index 84d466e7835d456466f7cf96358d6f119e394f13..484799805d446a45e3d915a0b6b0696fd2fc90b3 100644 GIT binary patch delta 1487 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 diff --git a/test/babel6/snapshots/index.js.snap b/test/babel6/snapshots/index.js.snap index 95618b79f3e3845781dec3d47e9045109e8f3f47..4e102f8b3bcb876f586f29fde5182a5efdcdab92 100644 GIT binary patch literal 2522 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 dH|c3tyFb!rB{{}A1)(_4l006Lk_pkr} diff --git a/test/babel6/snapshots/plugins.js.snap b/test/babel6/snapshots/plugins.js.snap index 721c5abf9f1d8c9075c17e81d5fcbd8d87fffc22..d19eae955c538f95f4b403986eca0139881c9fe0 100644 GIT binary patch literal 601 zcmV-f0;c^zRzVgjYv^JXc6i`NJ28%osgBuPP#LxDa(MzUi=9j zdng`q_ZNr-@gjKhCwSD}oSkg*QHoxQcyRWx@5l2#@5jvh93ixUK0f?@x-&d0e7=4D z>di^zeG0|rej1^f^X}$(?bFHbaQ5TD@!sQt2NIYfCkf{#x$N*2MfLtyQP7`d;KLnRz&iC+$I8jgKDQ2TNSE<__Vm_2T z*aB01Tg&1~-cf)@zME^c%zL$Zy;i+jt!$eGXz9EKU}8wZomlR4I(ga5fI9a0ujCSh z3%fi{axMqzdro9584L*tvlCrGC7V%?k8x1SM%pP=iE+ic-eMA2sjxw|r-q?500mr(1fs+U^E3@u zA3)-j`X3L2uM8sLU3AQU+wF({3-a$Rh*65E{2pHSAv^ui=%+pwf@%}e|X&oGsKOa=e|bPOqT literal 601 zcmV-f0;c^zRzV@Ml00000000B+ zQp<`HK@_b-f)H2!fLxkDCrlnj$b=-_5gAkvW)Q}Okc6btT_G)%uC}W(W@rjr&c;u0 zIg7zX_I`mlAZ|o=eu7J#oz<0|yclq!;=<}h-^aP<-a2)kAcU?VtKWJ)Ke_+utnvDM zKwo}Iq4<1GBlP~>x3j(RdGX_|ix;m>t8Y^}n#~|Ix8K~jsDC)!AJ4zvJvn%g($OE8 znD4r-Pi4@}^t-e-30Nqg|LE}Pp*W@lMj@Mk$z$6sJ>#>AHqBNxL28#Lu<|0yRoY=b z7vM0;La@OMiK~KHGSfva8R01vkk1#uZiD4|N8nJ*`2n5~I~u4yrChY&D);+i%*S#7 zJ7B7BXEj{eJ@)a$bMl>zd8giJ)N8kE)m^g)9o@GGOpHmm7u&sFuOQo5P{#`XN-sgU zuqr{)b0w(f+L5thFeD_*c60@mY)3{prc$HDlj=E3NkxehN*uw$NU1G|FPdE=>KY@) zx<+$^DJR9QF~mbcm9G+%IaqkiUwB;LP$UV@C(5cTxEf(Pi4oOZsa)c_8<1*s9aEDr z=1759_&6jZZ$|i9YtE*jL-uj79`yJ_%7&O;hNSEoEon%rvef8G%{E`Co%q{jRz>Yn zyU^NL>)ijf{`b~;zys`;bCFKUU#+*oG;`64LAK=JPp-^Y^qUvq@{zU#)O<<|?Exs@ nQWA)gAS~K6VN-x4EA>AXgRcpZ@Gfu6w{QCsJ(95COa=e|_{Arm diff --git a/test/fixtures/cjs-module.js b/test/fixtures/cjs-module.js new file mode 100644 index 00000000..f101e29d --- /dev/null +++ b/test/fixtures/cjs-module.js @@ -0,0 +1,7 @@ +'use strict' + +module.exports = () => ( +
+ +
+) diff --git a/test/index.js b/test/index.js index 39fb1006..5ec8e90d 100644 --- a/test/index.js +++ b/test/index.js @@ -28,6 +28,13 @@ test('works with stateless', async t => { t.snapshot(code) }) +test('works with a CJS module', async t => { + const { code } = await transform('./fixtures/cjs-module.js', { + sourceType: 'script' + }) + t.snapshot(code) +}) + test('works with fragment', async t => { const { code } = await transform('./fixtures/fragment.js') t.snapshot(code) diff --git a/test/snapshots/external.js.md b/test/snapshots/external.js.md index 96dbe47e..dbf9cc9f 100644 --- a/test/snapshots/external.js.md +++ b/test/snapshots/external.js.md @@ -15,8 +15,8 @@ Generated by [AVA](https://ava.li). bar.__hash = "2141779268";␊ const baz = ["div{font-size:3em;}"];␊ baz.__hash = "2141779268";␊ - a.__hash = "262929833";␊ const a = [`div{font-size:${size}em;}`];␊ + a.__hash = "262929833";␊ export const uh = bar;␊ export const foo = [`div.jsx-2299908427{color:${color};}`];␊ foo.__hash = "2299908427";␊ @@ -49,6 +49,23 @@ Generated by [AVA](https://ava.li). _defaultExport.__hash = "2292456818";␊ module.exports = _defaultExport;` +## Make sure that it works with the new automatic transform + +> Snapshot 1 + + `import { jsx as _jsx } from "react/jsx-runtime";␊ + import _JSXStyle from "styled-jsx/style";␊ + const A = {␊ + styles: /*#__PURE__*/_jsx(_JSXStyle, {␊ + id: "2723508961",␊ + children: "div.jsx-2723508961{color:green;}"␊ + }),␊ + className: "jsx-2723508961"␊ + };␊ + export default function IndexPage() {␊ + return JSON.stringify(A);␊ + }` + ## Makes sure that style nodes are not re-used > Snapshot 1 @@ -119,8 +136,8 @@ Generated by [AVA](https://ava.li). bar.__hash = "2141779268";␊ const baz = new String("div{font-size:3em;}");␊ baz.__hash = "2141779268";␊ - a.__hash = "262929833";␊ const a = new String(`div{font-size:${size}em;}`);␊ + a.__hash = "262929833";␊ export const uh = bar;␊ export const foo = new String(`div.jsx-2299908427{color:${color};}`);␊ foo.__hash = "2299908427";␊ @@ -225,20 +242,3 @@ Generated by [AVA](https://ava.li).

test

␊ <_JSXStyle id={styles.__hash}>{styles}
);` - -## Make sure that it works with the new automatic transform - -> Snapshot 1 - - `import { jsx as _jsx } from "react/jsx-runtime";␊ - import _JSXStyle from "styled-jsx/style";␊ - const A = {␊ - styles: /*#__PURE__*/_jsx(_JSXStyle, {␊ - id: "2723508961",␊ - children: "div.jsx-2723508961{color:green;}"␊ - }),␊ - className: "jsx-2723508961"␊ - };␊ - export default function IndexPage() {␊ - return JSON.stringify(A);␊ - }` diff --git a/test/snapshots/external.js.snap b/test/snapshots/external.js.snap index f546171740b53e3745fd8359da7c6cc6b000da25..fa632efa0e4e5549d643c4d8ed201803b71ce8d4 100644 GIT binary patch literal 1819 zcmV+$2juucRzVOX`1%Zo~_09-g56PY&2J+ zhGZBu@WYQpA`no2Xd(t<{Gl-l7y;4X4`cje{7MX{iHZJ!MLp--uio2syBou?Wb69g z^FHtUKIc8px#uJq0PX<4WjAz2UP5q063dX4$^ZGDUGkWp{>#Qao{_4MQ;MPh6(lR(PFV9m=p}z3q+{fMn6Pk) z`GFeCMWc~$Zz#g`vTCx%=8JoL7_!GQ*K%S>l=>xR{?vq@SDS8?Yq%p{bMQk4XVzrmF&$%ikKLGlJMU&V>9 zruKe3EU$U>Q-d0ZYF&V>)~x7g3Cwqr(nx+18Vx=jgH8}B%P`=G1zs-Td8)UPIkEW} zfC)cAck(~T=nYkam_^9TFhf37y{#m~=M+DgNU16)#WLwD_Z^rM1zCZEcpgZRM$h@X z9?E1kZ`(4I$#nTiG_MKO4Yl?x=5hOQeOxfy8;wN*tlnFNVks{n0Y5Vv(;TBW=BR{_ zfLoI`8*yuBNDI}Y#yx0^7GrR1PR=?ZkH$9hqsTr(>xVaO^pR#2MvEik-ob``ZeQe{ z9(^QDT*jqCxwsD*)OYy&ls;Zi~yXezJS26=V%a$Rr_kyd@$9P91oO&QCr zmU4bv;LF7vPFxEK2a>b|dqJ&B3I@3_!42V(46uP(sxkkxQE`R{PY=cG(H(kZR6;pL zl%}iSg>MTsY14`{I;LH#W2&hprd?`cY6>Mx&xI1ETQWk zLv|`fVblMM3eJDx^P`2S>l8zc1-F9Ogp->_5iMP4Er~dR?DVoY{lrh9izkiu@tiE{ z0#`t#k{e~i9$6d=m!Wrvl|3Zs6OugHnWzUrq;Oi;erQywW*gp|T}6kmqCa&2n#pP5 zw-yz8{?j%CUm=k7m@cG~JT~}nZ)GfQIS&e=Qb3Y{K|g(HOhH0Et7GgeRZ-kY#ls?I zUO<9^o$y;fUUrFksN{xmSiuK^gx_YhPv3r^VP$k$hO_{-Z3pXkC>)6fnr=IGN4q5J zZdj7b^qlF_(wE6O*XCx=Y0b>HT5ZXg8?5%V!;~oPJBQ;M2WfK<*Fg@^=9!Z85k6CD z&w_P(wh8HIBd^Xp=_7O5;KfSyG7^eJVtpJJg)CeJv&4pXOby#O4a0h?Va%%9DL7G? zOHe$VrA{m^6Ke>$W=Z%fHzJgp+$)N8;C3m~skbf!bc0QZS~~`vj=?65b3P$jLFSD| z!~Sey)0-$wb}eK5wqkDG&Zov@fJ+{nG&tR~Y&#vYL9THu#h5is*W02urW;)~-i_^_ z`E3>b*32fT6U;0HwcC{)x5}d#jJ6RLRvVJ$!OY{10>0 J=YVt@0049>c-H^` literal 1812 zcmV+v2kZDjRzV_7ic0Kzm1|!$#00?e3)Lbw_SSg*Y;Ownn;hY zq^SG4&z;|UJ@x&`i-Ui^`PW+$G?51Hps3T~yC%Ol>%08<`{~WEq$Y3BM0y^*K8RdC zdUN@Pi_v=T&DXf2ztco|_)dzt`)d2@pxpMy$EQyuFJEDPrit{cc8WT;;<2Mo>?obM zF?8whv8N}F(?oi8HAOx5bIe5J;)y{jjg4qTd3Per0C_;s%0Nhe5EQ%3dn64 z+B2k#mmwII#0p?!{JGe(UmgpPk4)0z8LkNhg%<^&Kw0s2fw~6(Fa8Gr86)?Bl!e0= z`|AuFkH@0HNQ@0KYP!x8`B6WD?6Ji4f>;)%J_#0+Dx;bLarg)MSY4k@$jwjUMGBkR#@Sevsn@1xjLdCp=K&CAbL=bG5SKm9($k zsa|(=84v^2stW*r0FCo&(a@C5ptVpH_w7fK1QJwgk^s;*ux=fG^XGC<-YOPr$nXtB z-iL-2HLX4(P?JDym|&Nc6&)>w;+-a8#D6I*41OJhBnZ1@2+)irPA;K5HA-<#Y5RnS~;u-rfWoi`R!mLFvKxePLKZrG`?2^mLbzI%ADxEZ{>^ftw>8YK6o# zK8UdiHW3ep%^5g5e%_AXQO9p8o+XcFfn$2Oux1S-A`cwmVNsk4sl|d#Boe`RgzeRr zT!;3qYT!t*(Nc3TGLA%*Nd^s*doUH~X+s|TKTJmSpqX487q|*vK!$5mg8npd!R}CNm%?E-ig6>zB?GL# zo|$TY*6=u&!`2YI9$leFhGke#L}@1fUFf!mhAkfEBfk#f&14!q@quOzWV2nE_>&}h zdhHvGHeJ?H+=HPI8;vAvS+~T_gPlk8206@>!IacA!lsA z7C0H7@oj2$^NzGKFXP52#50Rv(;3>>AY@tJ6H2gLcC#5EjXcT^GF@L(mc;;@jO)si zpAF$+L;|Nx+XsxoP%RjvI9<&SKvjS005px$rr*UYq{Y+rPk$+t_n0bp@p)|U(O`8f zX(~IUa>mKJLb%~bVM01m=GDE#IWt!^ z;u1pVu}CbI=w;bBV8D8i$1=2WYuH9}2^yt_Ft2J&WvaT6plCQllo;eDqBwkOkqT57 zV=6U$P!t=$?M$nO-s-P)fsH3yD~6ql;UW=;L?m4a1Pz2I*dk)909;joK;m_a*kcFv~Y7xiz5YW zvl7LJr7|3aWt5K)Y6$K9(_k4^wDU^7)KMqn@X5@&GByUxShNYHl2XndZ0G`cjLizObEMG+J5ZlX!qrrG07Gm^vu*8>(5){xgv!gJ_IM|T< z0@AF(YCy$Zp`%93Uko-2ML4zt9Z>B*8*CZczRfR_UW*?d_YUA6S^fbJf{g=o8vp>> Ca&+tf diff --git a/test/snapshots/index.js.md b/test/snapshots/index.js.md index 2b7806b6..1184d75a 100644 --- a/test/snapshots/index.js.md +++ b/test/snapshots/index.js.md @@ -129,6 +129,20 @@ Generated by [AVA](https://ava.li). <_JSXStyle id={"2529315885"}>{"span.jsx-2529315885{color:red;}"}␊ ;` +## works with a CJS module + +> Snapshot 1 + + `'use strict';␊ + ␊ + var _JSXStyle = _interopRequireDefault(require("styled-jsx/style")).default;␊ + ␊ + function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }␊ + ␊ + module.exports = () =>
␊ + <_JSXStyle id={"2886504620"}>{"div.jsx-2886504620{color:red;}"}␊ +
;` + ## works with class > Snapshot 1 diff --git a/test/snapshots/index.js.snap b/test/snapshots/index.js.snap index e7b062a4932b64fa31dad16a8f966272280d6abe..06ee7c453cfbedce68d9a6efe7b677649d7beb1f 100644 GIT binary patch literal 3216 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 CiYOrf literal 3080 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 literal 599 zcmV-d0;v5#RzVAJAbev}OCl3fFb-@=Xb4PD4zVMXc%gb6 z?4mj0pi-#hMO z#`ckq&B&5t>ZMe3V?3TBHWe1w22kGHD{T$uI6%Hh#MS(@dh*+6+>&cs>zEJ!9rMpQ1~y` Date: Thu, 14 Jan 2021 08:20:11 -0500 Subject: [PATCH 2/2] chore: retrigger