@tamagui/static 1.132.16 → 1.132.17
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/extractor/createEvaluator.js +13 -1
- package/dist/extractor/createEvaluator.js.map +1 -1
- package/dist/extractor/createEvaluator.native.js +6 -1
- package/dist/extractor/createEvaluator.native.js.map +2 -2
- package/dist/extractor/createExtractor.js +60 -114
- package/dist/extractor/createExtractor.js.map +1 -1
- package/dist/extractor/createExtractor.native.js +70 -123
- package/dist/extractor/createExtractor.native.js.map +2 -2
- package/dist/extractor/errors.js +22 -0
- package/dist/extractor/errors.js.map +6 -0
- package/dist/extractor/errors.native.js +119 -0
- package/dist/extractor/errors.native.js.map +6 -0
- package/dist/extractor/extractMediaStyle.js +1 -1
- package/dist/extractor/extractMediaStyle.js.map +1 -1
- package/dist/extractor/extractMediaStyle.native.js +1 -1
- package/dist/extractor/extractMediaStyle.native.js.map +2 -2
- package/dist/extractor/extractToClassNames.js +206 -172
- package/dist/extractor/extractToClassNames.js.map +2 -2
- package/dist/extractor/extractToClassNames.native.js +212 -188
- package/dist/extractor/extractToClassNames.native.js.map +2 -2
- package/dist/extractor/extractToNative.js +47 -78
- package/dist/extractor/extractToNative.js.map +1 -1
- package/dist/extractor/extractToNative.native.js +23 -39
- package/dist/extractor/extractToNative.native.js.map +2 -2
- package/dist/extractor/normalizeTernaries.js +5 -3
- package/dist/extractor/normalizeTernaries.js.map +1 -1
- package/dist/extractor/normalizeTernaries.native.js +5 -3
- package/dist/extractor/normalizeTernaries.native.js.map +2 -2
- package/dist/extractor/propsToFontFamilyCache.js +7 -8
- package/dist/extractor/propsToFontFamilyCache.js.map +1 -1
- package/dist/extractor/propsToFontFamilyCache.native.js +9 -10
- package/dist/extractor/propsToFontFamilyCache.native.js.map +2 -2
- package/dist/registerRequire.js +1 -1
- package/dist/registerRequire.js.map +1 -1
- package/dist/registerRequire.native.js +1 -1
- package/dist/registerRequire.native.js.map +1 -1
- package/dist/types.native.js.map +1 -1
- package/package.json +15 -15
- package/src/extractor/createEvaluator.ts +26 -1
- package/src/extractor/createExtractor.ts +108 -194
- package/src/extractor/errors.ts +1 -0
- package/src/extractor/extractMediaStyle.ts +1 -1
- package/src/extractor/extractToClassNames.ts +362 -266
- package/src/extractor/extractToNative.ts +68 -111
- package/src/extractor/normalizeTernaries.ts +10 -3
- package/src/extractor/propsToFontFamilyCache.ts +5 -5
- package/src/registerRequire.ts +1 -1
- package/src/types.ts +10 -13
- package/types/extractor/createEvaluator.d.ts.map +1 -1
- package/types/extractor/createExtractor.d.ts.map +1 -1
- package/types/extractor/errors.d.ts +3 -0
- package/types/extractor/errors.d.ts.map +1 -0
- package/types/extractor/extractToClassNames.d.ts.map +1 -1
- package/types/extractor/extractToNative.d.ts.map +1 -1
- package/types/extractor/normalizeTernaries.d.ts.map +1 -1
- package/types/extractor/propsToFontFamilyCache.d.ts +2 -2
- package/types/extractor/propsToFontFamilyCache.d.ts.map +1 -1
- package/types/types.d.ts +9 -10
- package/types/types.d.ts.map +1 -1
- package/dist/extractor/buildClassName.js +0 -72
- package/dist/extractor/buildClassName.js.map +0 -6
- package/dist/extractor/buildClassName.native.js +0 -67
- package/dist/extractor/buildClassName.native.js.map +0 -6
- package/dist/extractor/ensureImportingConcat.js +0 -50
- package/dist/extractor/ensureImportingConcat.js.map +0 -6
- package/dist/extractor/ensureImportingConcat.native.js +0 -49
- package/dist/extractor/ensureImportingConcat.native.js.map +0 -6
- package/dist/extractor/hoistClassNames.js +0 -63
- package/dist/extractor/hoistClassNames.js.map +0 -6
- package/dist/extractor/hoistClassNames.native.js +0 -66
- package/dist/extractor/hoistClassNames.native.js.map +0 -6
- package/src/extractor/buildClassName.ts +0 -76
- package/src/extractor/ensureImportingConcat.ts +0 -36
- package/src/extractor/hoistClassNames.ts +0 -52
- package/types/extractor/buildClassName.d.ts +0 -7
- package/types/extractor/buildClassName.d.ts.map +0 -1
- package/types/extractor/ensureImportingConcat.d.ts +0 -4
- package/types/extractor/ensureImportingConcat.d.ts.map +0 -1
- package/types/extractor/hoistClassNames.d.ts +0 -6
- package/types/extractor/hoistClassNames.d.ts.map +0 -1
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"version": 3,
|
3
3
|
"sources": ["../../src/extractor/extractToClassNames.ts"],
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,
|
5
|
-
"names": ["
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAAqB,sCAErB,IAAmB,kCACnB,aAAoE,yBACpE,OAAsB,+BACtB,OAAsB,+BACtB,4BAAmC,0CAEnC,oBAA2B,yBAE3B,sBAA6B,2BAC7B,2BAAkC,gCAClC,4BAAmC,iCACnC,gCAGO,qCACP,eAAsB,oBACtB,gBAAsC;AAqBtC,MAAM,SAAS,MAAM;AAAC,GAChB,cAAc,EAAE,cAAc,GAAG;AAEvC,eAAsB,oBAAoB;AAAA,EACxC;AAAA,EACA;AAAA,EACA,aAAa;AAAA,EACb;AAAA,EACA;AACF,GAAgE;AAC9D,QAAM,SAAK,oBAAM,GACX,EAAE,oBAAoB,iBAAiB,QAAI,8CAAmB,KAAK;AAEzE,MAAI,WAAW,SAAS,cAAc;AACpC,WAAO;AAOT,MAJI,oBACF,QAAQ,KAAK,OAAO,UAAU;AAAA;AAAA,CAAW,GAGvC,OAAO,UAAW;AACpB,UAAM,IAAI,MAAM,yCAAyC;AAE3D,MAAI,CAAC,KAAK,WAAW,UAAU;AAC7B,UAAM,IAAI;AAAA,MACR,+DAA+D;AAAA,IACjE;AAGF,EAAK,aAAa,KAAK,cAAc,EAAE,KACrC,QAAQ,KAAK,GAAG,WAAW,MAAM,GAAG,GAAG,CAAC,kBAAkB,GAGxD,CAAC,QAAQ,qBAAqB,CAAC,QAAQ,uBAEzC,MAAM,UAAU,YAAY,OAAO;AAGrC,QAAM,eAAW,kCAAa,YAAY,OAAO;AAGjD,MAAI;AAEJ,MAAI;AACF,cAAM,8BAAW,QAAQ,UAAU;AAAA,EACrC,SAAS,KAAK;AACZ,kBAAQ,MAAM,sBAAsB,WAAW,MAAM,GAAG,GAAG,CAAC,GACtD;AAAA,EACR;AAEA,KAAG,KAAK,eAAe,qBAAqB,SAAS;AAErD,QAAM,SAAS,oBAAI,IAAqD,GAClE,gBAAgB,UAAU,WAAW,GAErC,MAAM,MAAM,UAAU,MAAM,KAAK;AAAA,IACrC;AAAA,IACA,GAAG;AAAA,IACH,UAAU;AAAA,IACV;AAAA,IACA,0BAA0B;AAAA,IAC1B,uBAAuB,YAAY,OAAO;AACxC,YAAM,MAAM,MAAM,KAAK,GAAG;AAC1B,MAAI,oBACF,QAAQ,KAAK,0BAA0B,UAAU,IAAI,GAAG,EAAE,GAE5D,OAAO,IAAI,IAAI,UAAU,IAAI,EAAE,KAAK,cAAc,CAAC,EAAE,CAAC;AAAA,IACxD;AAAA,IACA,kBAAkB,CAAC,EAAE,IAAI,MAChB;AAAA,IAET,cAAc,CAAC;AAAA,MACb;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF,MAAM;AAEJ,UAAI,aAAa,qBAAqB;AACpC,cAAM,IAAI,oCAAsB;AA2BlC,YAAM,aAA+B,CAAC;AAEtC,UAAI,wBAAuC,MACvC,gBAAqC,MACrC,iBAAiB,IACjB,kBAAkB;AAEtB,YAAM,UAAU,KAAK;AAAA,QACnB;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACF;AAEA,eAAS,SAAS,OAAoB;AACpC,cAAM,aAAa,MAAM,gCAAqB,GACxC,QAAQ,MAAM,2BAAgB,GAC9B,WAAW,IAAI,UAAU;AAC/B,eAAI,OAAO,IAAI,QAAQ,IACT,OAAO,IAAI,QAAQ,EAC3B,aAAa,KAAK,OAAO,IACpB,MAAM,UACf,OAAO,IAAI,UAAU;AAAA,UACnB,KAAK,MAAM,KAAK;AAAA,CAAI;AAAA,UACpB,cAAc,CAAC,OAAO;AAAA,QACxB,CAAC,GAEI;AAAA,MACT;AAEA,eAAS,UAAU,OAAe;AAChC,cAAM,YAAY,mBAAmB,KAAY,GAC3C,aAAuB,CAAC;AAE9B,mBAAWA,UAAS,WAAW;AAC7B,gBAAM,YAAYA,OAAM,CAAC,EAAE,MAAM,CAAC;AAClC,cAAI,cAAc,MAAM,SAAS,GAAG;AAClC,kBAAM,aAAa;AAAA,cACjBA;AAAA,cACA;AAAA,cACA,UAAU,WAAW,EAAG;AAAA,cACxB;AAAA,cACA;AAAA,cACA;AAAA,YACF,GACMC,cAAa,SAAS,UAAU;AACtC,uBAAW,KAAKA,WAAU;AAC1B;AAAA,UACF;AAEA,gBAAM,aAAa,SAASD,MAAK;AACjC,qBAAW,KAAK,UAAU;AAAA,QAC5B;AAEA,eAAO;AAAA,MACT;AAEA,YAAM,gBAA2B,MAAM,QAAQ,CAAC,SAAS;AACvD,YAAI,KAAK,SAAS,QAAQ;AACxB,gBAAM,QAAQ,KAAK;AAEnB,cAAI,EAAE,qBAAqB,KAAK;AAE9B,2BAAQ,MAAM,qBAAqB,GAC5B,CAAC;AAGV,cAAI,MAAM,KAAK,SAAS,aAAa;AACnC,gBAAI,QAAa,MAAM;AACvB,YAAI,EAAE,yBAAyB,KAAK,MAClC,QAAQ,MAAM;AAEhB,gBAAI;AACF,oBAAM,iBAAiB,QAAQ,YAAY,KAAK,IAAI;AACpD,cAAI,OAAO,kBAAmB,aAC5B,gBAAgB,EAAE,cAAc,cAAc;AAAA,YAElD,QAAY;AACV,cAAI,UACF,kBAAkB;AAAA,YAEtB;AACA,mBAAO,CAAC;AAAA,UACV;AAEA,4BAAW,KAAK,KAAK,GACd,CAAC;AAAA,QACV;AAEA,YAAI,KAAK,SAAS;AAChB,6CAAwB,uBAAW,yBAAyB,CAAC,GAAG,KAAK,KAAK,GAC1E,qBAAiB,0DAA2B,KAAK,KAAK,KAAK,IACpD,CAAC;AAGV,YAAI,UAAU,KAAK;AAEnB,YAAI,QAAQ,kBAAkB;AAC5B,gBAAM,sBAAkB;AAAA,YACtB;AAAA,YACA,KAAK;AAAA,YACL;AAAA,YACA,UAAU,WAAW;AAAA,YACrB,cAAc;AAAA,YACd;AAAA,YACA;AAAA,UACF;AAEA,cAAI;AAMF,gBALI,gBAAgB,gBAClB,4BAAwB,uBAAW,yBAAyB,CAAC,GAAG;AAAA,cAC9D,CAAC,IAAI,QAAQ,gBAAgB,EAAE,GAAG,KAAK,MAAM;AAAA,YAC/C,CAAC,IAEC,gBAAgB;AAClB,wBAAU,gBAAgB;AAAA;AAE1B,qBAAO,CAAC;AAAA,QAGd;AAEA,cAAM,sBAAkB;AAAA,UACtB,yBAAyB,CAAC;AAAA,UAC1B,QAAQ,aAAa,CAAC;AAAA,QACxB,GACM,uBAAmB;AAAA,UACvB,yBAAyB,CAAC;AAAA,UAC1B,QAAQ,cAAc,CAAC;AAAA,QACzB;AAEA,wEAAsB,QAAQ,WAAW,iBAAiB,cAAc,OACxE,qDAAsB,QAAQ,YAAY,kBAAkB,cAAc,GAGnE;AAAA,UACL,GAAG;AAAA,UACH,WAAW;AAAA,UACX,YAAY;AAAA,QACd;AAAA,MACF,CAAC,GAEK,eAAe,EAAQ,cAAc,QAErC,iBAAiB,wBACnB,UAAU,qBAAqB,IAC/B;AAEJ,UAAI,mBACF,gBAAgB,CAAC,iBAAiB,KAAK,eAAe,KAAK,GAAG;AAEhE,MAAI,CAAC,gBAAgB,mBACnB,mBAAmB,QAAQ,cAAc,GAAG,mBAAmB,IAAI,gBAAgB,KAAK,EAAE;AAG5F,UAAI,OAAO,aAAa,gBACpB,EAAE;AAAA,QACA,MAAM,aAAa,aAAa,GAAG,mBAAmB,IAAI,gBAAgB,KAAK,EAAE;AAAA,MACnF,IACA,EAAE,cAAc,oBAAoB,EAAE;AAE1C,sBAAgB;AAEhB,YAAM,0BACA,gBACE,EAAE,gBAAgB,aAAa,IAC1B,EAAE;AAAA,QACP,KAAK,QAAQ,GAAG,KAAK,KAAK,IAAI,cAAc,KAAK,KAAK,cAAc;AAAA,MACtE,IAGO,EAAE;AAAA,QACP;AAAA,QACA,EAAE,iBAAiB,KAAK,eAAe,WAAW;AAAA,QAClD;AAAA,MACF,IAGG,MAGH,oBAA+B,CAAC;AAEtC,UAAI,cAAc,QAAQ;AAExB,cAAM,0BAAsB,8CAAmB,aAAa;AAE5D,mBAAW,WAAW,qBAAqB;AACzC,cAAI,CAAC,kBAAkB,QAAQ;AAC7B,0BAAc,OAAO;AACrB;AAAA,UACF;AACA,qBAAW,QAAQ,CAAC,GAAG,iBAAiB;AACtC,0BAAc,SAAS,IAAI;AAAA,QAE/B;AAAA,MACF;AAEA,eAAS,cAAc,SAAkB,MAAgB;AAEvD,YAAI,QAAQ,cAAc,OAAO,KAAK,QAAQ,UAAU,EAAE,QAAQ;AAChE,gBAAM,iBAAa,0DAA2B,QAAQ,UAAU;AAEhE,4BAAkB,KAAK;AAAA,YACrB;AAAA;AAAA,YAEA,MAAM,OACF,EAAE,kBAAkB,MAAM,KAAK,MAAM,QAAQ,IAAI,IACjD,QAAQ;AAAA,YACZ,YAAY,WACR,uBAAW,KAAK,YAAa,QAAQ,UAAU,IAC/C,QAAQ;AAAA,YACZ;AAAA,YACA,WAAW;AAAA,UACb,CAAC,GAEG,QACF,kBAAkB,KAAK;AAAA,YACrB;AAAA;AAAA,YAEA,MAAM,EAAE;AAAA,cACN;AAAA,cACA,EAAE,gBAAgB,KAAK,KAAK,IAAI;AAAA,cAChC,QAAQ;AAAA,YACV;AAAA,YACA,YAAY,QAAQ;AAAA,YACpB,WAAW;AAAA,YACX;AAAA,UACF,CAAC;AAAA,QAEL;AAEA,YAAI,QAAQ,aAAa,OAAO,KAAK,QAAQ,SAAS,EAAE,QAAQ;AAC9D,gBAAM,iBAAa,0DAA2B,QAAQ,SAAS,GACzD,UAAU,EAAE,gBAAgB,KAAK,QAAQ,IAAI;AACnD,4BAAkB,KAAK;AAAA,YACrB;AAAA;AAAA,YAEA,MAAM,OAAO,EAAE,kBAAkB,MAAM,KAAK,MAAM,OAAO,IAAI;AAAA,YAC7D,YAAY,WACR,uBAAW,KAAK,WAAY,QAAQ,SAAS,IAC7C,QAAQ;AAAA,YACZ;AAAA,YACA,WAAW;AAAA,UACb,CAAC,GAEG,QACF,kBAAkB,KAAK;AAAA,YACrB;AAAA,YACA,MAAM,EAAE;AAAA,cACN;AAAA,cACA,EAAE,gBAAgB,KAAK,KAAK,IAAI;AAAA,cAChC,QAAQ;AAAA,YACV;AAAA,YACA,YAAY,QAAQ;AAAA,YACpB;AAAA,YACA,WAAW;AAAA,UACb,CAAC;AAAA,QAEL;AAAA,MACF;AAEA,UAAI,uBAA4C;AAGhD,UAAI;AACF,mBAAW,WAAW,mBAAmB;AACvC,cAAI,CAAC,QAAQ,WAAY;AACzB,gBAAM,aAAa,UAAU,QAAQ,UAAU;AAC/C,UAAI,QAAQ,cACV,WAAW,QAAQ,QAAQ,QAAQ,UAAU,EAAE;AAEjD,gBAAM,aAAa,EAAE,gBAAgB,uBAAuB,IACxD,wBAAwB,QACxB,IACE,iBACH,aAAa,GAAG,UAAU,MAAM,MAAM,WAAW,KAAK,GAAG,GACtD,mBAAmB,EAAE,cAAc,aAAa;AAEtD,UAAK,uBAGH,uBAAuB,EAAE;AAAA,YACvB,QAAQ;AAAA,YACR;AAAA,YACA;AAAA,UACF,IANA,uBAAuB;AAAA,QAQ3B;AAGF,UAAI,kBACF,wBAAwB,2BAA2B;AAOrD,UAAI,iBAAiB;AAEnB,0BAAkB,gBAAgB,SAAS,eAAe;AAE1D,cAAM,gBAAgB,EAAE;AAAA,UACtB,EAAE,cAAc,WAAW;AAAA,UAC3B,EAAE,uBAAuB,eAAgB;AAAA,QAC3C;AACA,mBAAW,QAAQ,aAAa;AAAA,MAClC;AAEA,WAAK,aAAa;AAAA,IACpB;AAAA,EACF,CAAC;AAED,MAAI,CAAC,OAAQ,CAAC,IAAI,YAAY,CAAC,IAAI,aAAa,CAAC,IAAI,aAAa,CAAC,IAAI;AACrE,WAAI,oBACF,QAAQ,KAAK,2BAA2B,GAAG,GAEtC;AAGT,QAAM,SAAS,MAAM,KAAK,OAAO,OAAO,CAAC,EACtC,IAAI,CAAC,MAAM,EAAE,GAAG,EAChB,KAAK;AAAA,CAAI,EACT,KAAK,GAGF,aAAS,iBAAAE;AAAA,IACb;AAAA,IACA;AAAA,MACE,SAAS;AAAA,MACT,UAAU;AAAA;AAAA,MAEV,aAAa;AAAA,MACb,gBAAgB;AAAA,MAChB,YAAY;AAAA,IACd;AAAA,IACA;AAAA,EACF;AAEA,SAAI,qBACF,QAAQ;AAAA,IACN;AAAA;AAAA;AAAA;AAAA,IACA,OAAO,KACJ,MAAM;AAAA,CAAI,EACV,OAAO,CAAC,MAAM,CAAC,EAAE,WAAW,IAAI,CAAC,EACjC,KAAK;AAAA,CAAI;AAAA,EACd,GACA,QAAQ,KAAK;AAAA;AAAA;AAAA,GAA0C,MAAM,IAG/D,SAAS,GAAG,GAEL;AAAA,IACL;AAAA,IACA;AAAA,IACA,IAAI,OAAO;AAAA,IACX,KAAK,OAAO;AAAA,EACd;AACF;AAEA,SAAS,gBAAgBC,OAA8B,MAAoB;AACzE,MAAI,EAAE,gBAAgB,IAAI;AACxB,WAAO,eAAeA,OAAM,KAAK,KAAK;AAGxC,MAAI,EAAE,mBAAmB,IAAI,GAAG;AAC9B,UAAM,OAAO,EAAE,gBAAgB,KAAK,IAAI,IACpC,eAAeA,OAAM,KAAK,KAAK,KAAK,IACpC,KAAK,MACH,QAAQ,EAAE,gBAAgB,KAAK,KAAK,IACtC,eAAeA,OAAM,KAAK,MAAM,KAAK,IACrC,gBAAgBA,OAAM,KAAK,KAAK;AACpC,WAAO,EAAE,iBAAiB,KAAK,UAAU,MAAM,KAAK;AAAA,EACtD;AAEA,MAAI,EAAE,wBAAwB,IAAI,GAAG;AACnC,UAAM,OAAO,EAAE,gBAAgB,KAAK,UAAU,IAC1C,eAAeA,OAAM,KAAK,WAAW,KAAK,IAC1C,gBAAgBA,OAAM,KAAK,UAAU,GAEnC,MAAM,EAAE,gBAAgB,KAAK,SAAS,IACxC,eAAeA,OAAM,KAAK,UAAU,KAAK,IACzC,gBAAgBA,OAAM,KAAK,SAAS;AAExC,WAAO,EAAE,sBAAsB,KAAK,MAAM,MAAM,GAAG;AAAA,EACrD;AAEA,SAAO;AACT;AAEA,SAAS,eAAeA,OAA8B,KAAa;AACjE,QAAM,MAAMA,MAAK,MAAM,sBAAsB,IAAI,GAC3C,SAASA,MAAK,WAAW,CAACA,UAASA,MAAK,UAAU,CAAC;AACzD,MAAI,CAAC,OAAQ,OAAM,IAAI,MAAM,aAAa;AAC1C,QAAM,WAAW,EAAE,oBAAoB,SAAS;AAAA,IAC9C,EAAE,mBAAmB,KAAK,EAAE,cAAc,iBAAiB,GAAG,CAAC,CAAC;AAAA,EAClE,CAAC;AAED,gBAAO,iBAAiB,QAAQ,QAAQ,GACjC;AACT;AAEA,SAAS,iBAAiB,OAAe;AACvC,QAAM,MAAM,oBAAI,IAAY;AAC5B,aAAW,QAAQ,MAAM,MAAM,GAAG;AAChC,IAAI,SAAS,OACT,SAAS,WACb,IAAI,IAAI,IAAI;AAGd,SAAO,CAAC,GAAG,GAAG,EAAE,KAAK,GAAG,IAAI;AAC9B;",
|
5
|
+
"names": ["style", "identifier", "generate", "path"]
|
6
6
|
}
|
@@ -26,14 +26,10 @@ __export(extractToClassNames_exports, {
|
|
26
26
|
extractToClassNames: () => extractToClassNames
|
27
27
|
});
|
28
28
|
module.exports = __toCommonJS(extractToClassNames_exports);
|
29
|
-
var
|
30
|
-
|
31
|
-
shadowRadius: !0,
|
32
|
-
shadowColor: !0,
|
33
|
-
shadowOffset: !0
|
34
|
-
};
|
29
|
+
var import_generator = __toESM(require("@babel/generator")), t = __toESM(require("@babel/types")), import_web = require("@tamagui/web"), path = __toESM(require("node:path")), util = __toESM(require("node:util")), import_requireTamaguiCore = require("../helpers/requireTamaguiCore"), import_babelParse = require("./babelParse"), import_createLogger = require("./createLogger"), import_extractMediaStyle = require("./extractMediaStyle"), import_normalizeTernaries = require("./normalizeTernaries"), import_propsToFontFamilyCache = require("./propsToFontFamilyCache"), import_timer = require("./timer"), import_errors = require("./errors"), remove = function() {
|
30
|
+
}, spaceString = t.stringLiteral(" ");
|
35
31
|
async function extractToClassNames(param) {
|
36
|
-
var { extractor, source, sourcePath = "", options, shouldPrintDebug } = param, tm = (0, import_timer.timer)(), { getCSSStylesAtomic } = (0, import_requireTamaguiCore.requireTamaguiCore)("web");
|
32
|
+
var { extractor, source, sourcePath = "", options, shouldPrintDebug } = param, tm = (0, import_timer.timer)(), { getCSSStylesAtomic, createMediaStyle } = (0, import_requireTamaguiCore.requireTamaguiCore)("web");
|
37
33
|
if (sourcePath.includes("node_modules"))
|
38
34
|
return null;
|
39
35
|
if (shouldPrintDebug && console.warn(`--- ${sourcePath} ---
|
@@ -50,13 +46,13 @@ async function extractToClassNames(param) {
|
|
50
46
|
throw console.error("babel parse error:", sourcePath.slice(0, 100)), err;
|
51
47
|
}
|
52
48
|
tm.mark("babel-parse", shouldPrintDebug === "verbose");
|
53
|
-
var cssMap = /* @__PURE__ */ new Map(),
|
49
|
+
var cssMap = /* @__PURE__ */ new Map(), tamaguiConfig = extractor.getTamagui(), res = await extractor.parse(ast, {
|
54
50
|
shouldPrintDebug,
|
55
51
|
...options,
|
56
52
|
platform: "web",
|
57
53
|
sourcePath,
|
58
54
|
extractStyledDefinitions: !0,
|
59
|
-
|
55
|
+
onStyledDefinitionRule(identifier, rules) {
|
60
56
|
var css = rules.join(";");
|
61
57
|
shouldPrintDebug && console.info(`adding styled() rule: .${identifier} ${css}`), cssMap.set(`.${identifier}`, {
|
62
58
|
css,
|
@@ -65,207 +61,191 @@ async function extractToClassNames(param) {
|
|
65
61
|
},
|
66
62
|
getFlattenedNode: function(param2) {
|
67
63
|
var { tag } = param2;
|
68
|
-
return
|
64
|
+
return tag;
|
69
65
|
},
|
70
66
|
onExtractTag: function(param2) {
|
71
|
-
var { parserProps, attrs, node, attemptEval, jsxPath, originalNodeName, filePath, lineNumbers,
|
72
|
-
if (staticConfig.acceptsClassName === !1)
|
73
|
-
|
74
|
-
|
67
|
+
var { parserProps, attrs, node, attemptEval, jsxPath, originalNodeName, filePath, lineNumbers, staticConfig } = param2;
|
68
|
+
if (staticConfig.acceptsClassName === !1)
|
69
|
+
throw new import_errors.BailOptimizationError();
|
70
|
+
var finalAttrs = [], mergeForwardBaseStyle = null, attrClassName = null, baseFontFamily = "", mediaStylesSeen = 1, comment = util.format("/* %s:%s (%s) */", filePath, lineNumbers, originalNodeName);
|
71
|
+
function addStyle(style) {
|
72
|
+
var identifier = style[import_web.StyleObjectIdentifier], rules = style[import_web.StyleObjectRules], selector = `.${identifier}`;
|
73
|
+
if (cssMap.has(selector)) {
|
74
|
+
var val = cssMap.get(selector);
|
75
|
+
val.commentTexts.push(comment);
|
76
|
+
} else rules.length && cssMap.set(selector, {
|
77
|
+
css: rules.join(`
|
78
|
+
`),
|
79
|
+
commentTexts: [
|
80
|
+
comment
|
81
|
+
]
|
82
|
+
});
|
83
|
+
return identifier;
|
75
84
|
}
|
76
|
-
|
77
|
-
|
78
|
-
var finalClassNames = [], finalAttrs = [], finalStyles = [], viewStyles = {}, _iteratorNormalCompletion = !0, _didIteratorError = !1, _iteratorError = void 0;
|
79
|
-
try {
|
80
|
-
for (var _iterator = attrs[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = !0) {
|
81
|
-
var attr = _step.value;
|
82
|
-
attr.type === "style" && (viewStyles = {
|
83
|
-
...viewStyles,
|
84
|
-
...attr.value
|
85
|
-
});
|
86
|
-
}
|
87
|
-
} catch (err) {
|
88
|
-
_didIteratorError = !0, _iteratorError = err;
|
89
|
-
} finally {
|
85
|
+
function addStyles(style) {
|
86
|
+
var cssStyles = getCSSStylesAtomic(style), classNames2 = [], _iteratorNormalCompletion2 = !0, _didIteratorError2 = !1, _iteratorError2 = void 0;
|
90
87
|
try {
|
91
|
-
|
88
|
+
for (var _iterator2 = cssStyles[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = !0) {
|
89
|
+
var _$style = _step2.value, mediaName = _$style[0].slice(1);
|
90
|
+
if (tamaguiConfig.media[mediaName]) {
|
91
|
+
var mediaStyle = createMediaStyle(_$style, mediaName, extractor.getTamagui().media, !0, !1, mediaStylesSeen), identifier = addStyle(mediaStyle);
|
92
|
+
classNames2.push(identifier);
|
93
|
+
continue;
|
94
|
+
}
|
95
|
+
var identifier1 = addStyle(_$style);
|
96
|
+
classNames2.push(identifier1);
|
97
|
+
}
|
98
|
+
} catch (err) {
|
99
|
+
_didIteratorError2 = !0, _iteratorError2 = err;
|
92
100
|
} finally {
|
93
|
-
|
94
|
-
|
101
|
+
try {
|
102
|
+
!_iteratorNormalCompletion2 && _iterator2.return != null && _iterator2.return();
|
103
|
+
} finally {
|
104
|
+
if (_didIteratorError2)
|
105
|
+
throw _iteratorError2;
|
106
|
+
}
|
95
107
|
}
|
108
|
+
return classNames2;
|
96
109
|
}
|
97
|
-
var
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
if (!style2) return [];
|
111
|
-
var styleWithPrev = ensureNeededPrevStyle(style2), res2 = getCSSStylesAtomic(styleWithPrev);
|
112
|
-
return res2.length && (finalStyles = [
|
113
|
-
...finalStyles,
|
114
|
-
...res2
|
115
|
-
]), res2;
|
116
|
-
}, lastMediaImportance = 1, _iteratorNormalCompletion1 = !0, _didIteratorError1 = !1, _iteratorError1 = void 0;
|
117
|
-
try {
|
118
|
-
for (var _iterator1 = attrs[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = !0) {
|
119
|
-
var attr1 = _step1.value;
|
120
|
-
switch (attr1.type) {
|
121
|
-
case "style": {
|
122
|
-
if (isFlattened) {
|
123
|
-
var styles1 = addStyles(attr1.value), newFontFamily = (0, import_propsToFontFamilyCache.getFontFamilyClassNameFromProps)(attr1.value) || "", newClassNames = helpers.concatClassName(styles1.map(function(x) {
|
124
|
-
return x[helpers.StyleObjectIdentifier];
|
125
|
-
}).join(" ") + newFontFamily), existing = finalClassNames.find(function(x) {
|
126
|
-
return x.type == "StringLiteral";
|
127
|
-
});
|
128
|
-
if (existing) {
|
129
|
-
var previous = existing.value;
|
130
|
-
newFontFamily && (shouldPrintDebug && console.info(` newFontFamily: ${newFontFamily}`), previous = previous.replace(/font_[a-z]+/i, "")), existing.value = `${previous} ${newClassNames}`;
|
131
|
-
} else
|
132
|
-
finalClassNames = [
|
133
|
-
...finalClassNames,
|
134
|
-
t.stringLiteral(newClassNames)
|
135
|
-
];
|
136
|
-
} else {
|
137
|
-
var styles2 = getCSSStylesAtomic(attr1.value);
|
138
|
-
finalStyles = [
|
139
|
-
...finalStyles,
|
140
|
-
...styles2
|
141
|
-
];
|
142
|
-
var _iteratorNormalCompletion2 = !0, _didIteratorError2 = !1, _iteratorError2 = void 0;
|
143
|
-
try {
|
144
|
-
for (var _iterator2 = styles2[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = !0) {
|
145
|
-
var style = _step2.value, prop = style[helpers.StyleObjectPseudo] ? `${style[helpers.StyleObjectProperty]}-${style[helpers.StyleObjectPseudo]}` : style[helpers.StyleObjectProperty];
|
146
|
-
finalAttrs.push(t.jsxAttribute(t.jsxIdentifier(prop), t.stringLiteral(style[helpers.StyleObjectIdentifier])));
|
147
|
-
}
|
148
|
-
} catch (err) {
|
149
|
-
_didIteratorError2 = !0, _iteratorError2 = err;
|
150
|
-
} finally {
|
151
|
-
try {
|
152
|
-
!_iteratorNormalCompletion2 && _iterator2.return != null && _iterator2.return();
|
153
|
-
} finally {
|
154
|
-
if (_didIteratorError2)
|
155
|
-
throw _iteratorError2;
|
156
|
-
}
|
157
|
-
}
|
158
|
-
}
|
159
|
-
break;
|
160
|
-
}
|
161
|
-
case "attr": {
|
162
|
-
var val = attr1.value;
|
163
|
-
if (t.isJSXSpreadAttribute(val))
|
164
|
-
(0, import_extractHelpers.isSimpleSpread)(val) && finalClassNames.push(t.logicalExpression("&&", val.argument, t.memberExpression(val.argument, t.identifier("className"))));
|
165
|
-
else if (val.name.name === "className") {
|
166
|
-
var value = val.value;
|
167
|
-
if (value)
|
168
|
-
try {
|
169
|
-
var evaluatedValue = attemptEval(value);
|
170
|
-
finalClassNames.push(t.stringLiteral(evaluatedValue));
|
171
|
-
} catch {
|
172
|
-
finalClassNames.push(value.expression);
|
173
|
-
}
|
174
|
-
continue;
|
175
|
-
}
|
176
|
-
finalAttrs.push(val);
|
177
|
-
break;
|
178
|
-
}
|
179
|
-
case "ternary": {
|
180
|
-
var mediaExtraction = (0, import_extractMediaStyle.extractMediaStyle)(parserProps, attr1.value, jsxPath, extractor.getTamagui(), sourcePath || "", lastMediaImportance, shouldPrintDebug);
|
181
|
-
if (shouldPrintDebug && mediaExtraction) {
|
182
|
-
var _mediaExtraction_ternaryWithoutMedia, _mediaExtraction_ternaryWithoutMedia_inlineMediaQuery;
|
183
|
-
console.info("ternary (mediaStyles)", (_mediaExtraction_ternaryWithoutMedia_inlineMediaQuery = (_mediaExtraction_ternaryWithoutMedia = mediaExtraction.ternaryWithoutMedia) === null || _mediaExtraction_ternaryWithoutMedia === void 0 ? void 0 : _mediaExtraction_ternaryWithoutMedia.inlineMediaQuery) !== null && _mediaExtraction_ternaryWithoutMedia_inlineMediaQuery !== void 0 ? _mediaExtraction_ternaryWithoutMedia_inlineMediaQuery : "", mediaExtraction.mediaStyles.map(function(x) {
|
184
|
-
return x[helpers.StyleObjectIdentifier];
|
185
|
-
}).join("."));
|
186
|
-
}
|
187
|
-
if (!mediaExtraction) {
|
188
|
-
shouldPrintDebug && mediaExtraction && console.info("add ternary"), addTernaryStyle(attr1.value, addStyles(attr1.value.consequent), addStyles(attr1.value.alternate));
|
189
|
-
continue;
|
190
|
-
}
|
191
|
-
lastMediaImportance++, mediaExtraction.mediaStyles && (finalStyles = [
|
192
|
-
...finalStyles,
|
193
|
-
...mediaExtraction.mediaStyles
|
194
|
-
]), mediaExtraction.ternaryWithoutMedia ? addTernaryStyle(mediaExtraction.ternaryWithoutMedia, mediaExtraction.mediaStyles, []) : finalClassNames = [
|
195
|
-
...finalClassNames,
|
196
|
-
...mediaExtraction.mediaStyles.map(function(x) {
|
197
|
-
return t.stringLiteral(x[helpers.StyleObjectIdentifier]);
|
198
|
-
})
|
199
|
-
];
|
200
|
-
break;
|
110
|
+
var onlyTernaries = attrs.flatMap(function(attr) {
|
111
|
+
if (attr.type === "attr") {
|
112
|
+
var value = attr.value;
|
113
|
+
if (t.isJSXSpreadAttribute(value))
|
114
|
+
return console.error("Should never happen"), [];
|
115
|
+
if (value.name.name === "className") {
|
116
|
+
var inner = value.value;
|
117
|
+
t.isJSXExpressionContainer(inner) && (inner = inner.expression);
|
118
|
+
try {
|
119
|
+
var evaluatedValue = inner ? attemptEval(inner) : null;
|
120
|
+
typeof evaluatedValue == "string" && (attrClassName = t.stringLiteral(evaluatedValue));
|
121
|
+
} catch {
|
122
|
+
inner && (attrClassName || (attrClassName = inner));
|
201
123
|
}
|
124
|
+
return [];
|
202
125
|
}
|
126
|
+
return finalAttrs.push(value), [];
|
127
|
+
}
|
128
|
+
if (attr.type === "style")
|
129
|
+
return mergeForwardBaseStyle = (0, import_web.mergeProps)(mergeForwardBaseStyle || {}, attr.value), baseFontFamily = (0, import_propsToFontFamilyCache.getFontFamilyNameFromProps)(attr.value) || "", [];
|
130
|
+
var ternary2 = attr.value;
|
131
|
+
if (ternary2.inlineMediaQuery) {
|
132
|
+
var mediaExtraction = (0, import_extractMediaStyle.extractMediaStyle)(parserProps, attr.value, jsxPath, extractor.getTamagui(), sourcePath || "", mediaStylesSeen++, shouldPrintDebug);
|
133
|
+
if (mediaExtraction)
|
134
|
+
if (mediaExtraction.mediaStyles && (mergeForwardBaseStyle = (0, import_web.mergeProps)(mergeForwardBaseStyle || {}, {
|
135
|
+
[`$${ternary2.inlineMediaQuery}`]: attr.value.consequent
|
136
|
+
})), mediaExtraction.ternaryWithoutMedia)
|
137
|
+
ternary2 = mediaExtraction.ternaryWithoutMedia;
|
138
|
+
else
|
139
|
+
return [];
|
203
140
|
}
|
204
|
-
|
205
|
-
|
206
|
-
|
141
|
+
var mergedAlternate = (0, import_web.mergeProps)(mergeForwardBaseStyle || {}, ternary2.alternate || {}), mergedConsequent = (0, import_web.mergeProps)(mergeForwardBaseStyle || {}, ternary2.consequent || {});
|
142
|
+
return (0, import_propsToFontFamilyCache.forwardFontFamilyName)(ternary2.alternate, mergedAlternate, baseFontFamily), (0, import_propsToFontFamilyCache.forwardFontFamilyName)(ternary2.consequent, mergedConsequent, baseFontFamily), {
|
143
|
+
...ternary2,
|
144
|
+
alternate: mergedAlternate,
|
145
|
+
consequent: mergedConsequent
|
146
|
+
};
|
147
|
+
}), hasTernaries = !!onlyTernaries.length, baseClassNames = mergeForwardBaseStyle ? addStyles(mergeForwardBaseStyle) : null, baseClassNameStr = hasTernaries || !baseClassNames ? "" : baseClassNames.join(" ");
|
148
|
+
!hasTernaries && baseFontFamily && (baseClassNameStr = `font_${baseFontFamily}${baseClassNameStr ? ` ${baseClassNameStr}` : ""}`);
|
149
|
+
var base = staticConfig.componentName ? t.stringLiteral(`is_${staticConfig.componentName}${baseClassNameStr ? ` ${baseClassNameStr}` : ""}`) : t.stringLiteral(baseClassNameStr || "");
|
150
|
+
attrClassName = attrClassName;
|
151
|
+
var baseClassNameExpression = function() {
|
152
|
+
return attrClassName ? t.isStringLiteral(attrClassName) ? t.stringLiteral(base.value ? `${base.value} ${attrClassName.value}` : attrClassName.value) : t.conditionalExpression(attrClassName, t.binaryExpression("+", attrClassName, spaceString), base) : base;
|
153
|
+
}(), expandedTernaries = [];
|
154
|
+
if (onlyTernaries.length) {
|
155
|
+
var normalizedTernaries = (0, import_normalizeTernaries.normalizeTernaries)(onlyTernaries), _iteratorNormalCompletion = !0, _didIteratorError = !1, _iteratorError = void 0;
|
207
156
|
try {
|
208
|
-
|
157
|
+
for (var _iterator = normalizedTernaries[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = !0) {
|
158
|
+
var ternary = _step.value;
|
159
|
+
if (!expandedTernaries.length) {
|
160
|
+
expandTernary(ternary);
|
161
|
+
continue;
|
162
|
+
}
|
163
|
+
for (var _i = 0, _iter = [
|
164
|
+
...expandedTernaries
|
165
|
+
]; _i < _iter.length; _i++) {
|
166
|
+
var prev = _iter[_i];
|
167
|
+
expandTernary(ternary, prev);
|
168
|
+
}
|
169
|
+
}
|
170
|
+
} catch (err) {
|
171
|
+
_didIteratorError = !0, _iteratorError = err;
|
209
172
|
} finally {
|
210
|
-
|
211
|
-
|
173
|
+
try {
|
174
|
+
!_iteratorNormalCompletion && _iterator.return != null && _iterator.return();
|
175
|
+
} finally {
|
176
|
+
if (_didIteratorError)
|
177
|
+
throw _iteratorError;
|
178
|
+
}
|
212
179
|
}
|
213
180
|
}
|
214
|
-
function
|
215
|
-
|
216
|
-
|
217
|
-
|
218
|
-
|
219
|
-
|
220
|
-
|
221
|
-
|
222
|
-
|
223
|
-
|
224
|
-
|
225
|
-
|
226
|
-
|
227
|
-
|
228
|
-
|
229
|
-
|
230
|
-
|
231
|
-
return x.type === "attr" && t.isJSXSpreadAttribute(x.value) && (0, import_extractHelpers.isSimpleSpread)(x.value);
|
181
|
+
function expandTernary(ternary2, prev2) {
|
182
|
+
if (ternary2.consequent && Object.keys(ternary2.consequent).length) {
|
183
|
+
var fontFamily = (0, import_propsToFontFamilyCache.getFontFamilyNameFromProps)(ternary2.consequent);
|
184
|
+
expandedTernaries.push({
|
185
|
+
fontFamily,
|
186
|
+
// prevTest && test: merge consequent
|
187
|
+
test: prev2 ? t.logicalExpression("&&", prev2.test, ternary2.test) : ternary2.test,
|
188
|
+
consequent: prev2 ? (0, import_web.mergeProps)(prev2.consequent, ternary2.consequent) : ternary2.consequent,
|
189
|
+
remove,
|
190
|
+
alternate: null
|
191
|
+
}), prev2 && expandedTernaries.push({
|
192
|
+
fontFamily,
|
193
|
+
// !prevTest && test: just consequent
|
194
|
+
test: t.logicalExpression("&&", t.unaryExpression("!", prev2.test), ternary2.test),
|
195
|
+
consequent: ternary2.consequent,
|
196
|
+
alternate: null,
|
197
|
+
remove
|
232
198
|
});
|
233
|
-
expr = t.callExpression(t.identifier("concatClassName"), [
|
234
|
-
expr,
|
235
|
-
...simpleSpreads.map(function(val2) {
|
236
|
-
return val2.value.argument;
|
237
|
-
})
|
238
|
-
]);
|
239
199
|
}
|
240
|
-
|
241
|
-
|
242
|
-
|
243
|
-
|
244
|
-
|
245
|
-
|
246
|
-
|
247
|
-
|
248
|
-
|
249
|
-
|
250
|
-
|
251
|
-
|
252
|
-
|
253
|
-
|
254
|
-
|
255
|
-
comment
|
256
|
-
]
|
200
|
+
if (ternary2.alternate && Object.keys(ternary2.alternate).length) {
|
201
|
+
var fontFamily1 = (0, import_propsToFontFamilyCache.getFontFamilyNameFromProps)(ternary2.alternate), negated = t.unaryExpression("!", ternary2.test);
|
202
|
+
expandedTernaries.push({
|
203
|
+
fontFamily: fontFamily1,
|
204
|
+
// prevTest && !test: merge alternate
|
205
|
+
test: prev2 ? t.logicalExpression("&&", prev2.test, negated) : negated,
|
206
|
+
consequent: prev2 ? (0, import_web.mergeProps)(prev2.alternate, ternary2.alternate) : ternary2.alternate,
|
207
|
+
remove,
|
208
|
+
alternate: null
|
209
|
+
}), prev2 && expandedTernaries.push({
|
210
|
+
fontFamily: fontFamily1,
|
211
|
+
test: t.logicalExpression("&&", t.unaryExpression("!", prev2.test), ternary2.test),
|
212
|
+
consequent: ternary2.alternate,
|
213
|
+
remove,
|
214
|
+
alternate: null
|
257
215
|
});
|
258
216
|
}
|
259
|
-
}
|
260
|
-
|
261
|
-
|
217
|
+
}
|
218
|
+
var ternaryClassNameExpr = null;
|
219
|
+
if (hasTernaries) {
|
220
|
+
var _iteratorNormalCompletion1 = !0, _didIteratorError1 = !1, _iteratorError1 = void 0;
|
262
221
|
try {
|
263
|
-
|
222
|
+
for (var _iterator1 = expandedTernaries[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = !0) {
|
223
|
+
var ternary1 = _step1.value;
|
224
|
+
if (ternary1.consequent) {
|
225
|
+
var classNames = addStyles(ternary1.consequent);
|
226
|
+
ternary1.fontFamily && classNames.unshift(`font_${ternary1.fontFamily}`);
|
227
|
+
var baseString = t.isStringLiteral(baseClassNameExpression) ? baseClassNameExpression.value : "", fullClassName = (baseString ? `${baseString} ` : "") + classNames.join(" "), classNameLiteral = t.stringLiteral(fullClassName);
|
228
|
+
ternaryClassNameExpr ? ternaryClassNameExpr = t.conditionalExpression(ternary1.test, classNameLiteral, ternaryClassNameExpr) : ternaryClassNameExpr = classNameLiteral;
|
229
|
+
}
|
230
|
+
}
|
231
|
+
} catch (err) {
|
232
|
+
_didIteratorError1 = !0, _iteratorError1 = err;
|
264
233
|
} finally {
|
265
|
-
|
266
|
-
|
234
|
+
try {
|
235
|
+
!_iteratorNormalCompletion1 && _iterator1.return != null && _iterator1.return();
|
236
|
+
} finally {
|
237
|
+
if (_didIteratorError1)
|
238
|
+
throw _iteratorError1;
|
239
|
+
}
|
267
240
|
}
|
268
241
|
}
|
242
|
+
var finalExpression = ternaryClassNameExpr || baseClassNameExpression || null;
|
243
|
+
if (finalExpression) {
|
244
|
+
finalExpression = hoistClassNames(jsxPath, finalExpression);
|
245
|
+
var classNameProp = t.jsxAttribute(t.jsxIdentifier("className"), t.jsxExpressionContainer(finalExpression));
|
246
|
+
finalAttrs.unshift(classNameProp);
|
247
|
+
}
|
248
|
+
node.attributes = finalAttrs;
|
269
249
|
}
|
270
250
|
});
|
271
251
|
if (!res || !res.modified && !res.optimized && !res.flattened && !res.styled)
|
@@ -298,6 +278,50 @@ async function extractToClassNames(param) {
|
|
298
278
|
map: result.map
|
299
279
|
};
|
300
280
|
}
|
281
|
+
function hoistClassNames(path2, expr) {
|
282
|
+
if (t.isStringLiteral(expr))
|
283
|
+
return hoistClassName(path2, expr.value);
|
284
|
+
if (t.isBinaryExpression(expr)) {
|
285
|
+
var left = t.isStringLiteral(expr.left) ? hoistClassName(path2, expr.left.value) : expr.left, right = t.isStringLiteral(expr.right) ? hoistClassName(path2, expr.right.value) : hoistClassNames(path2, expr.right);
|
286
|
+
return t.binaryExpression(expr.operator, left, right);
|
287
|
+
}
|
288
|
+
if (t.isConditionalExpression(expr)) {
|
289
|
+
var cons = t.isStringLiteral(expr.consequent) ? hoistClassName(path2, expr.consequent.value) : hoistClassNames(path2, expr.consequent), alt = t.isStringLiteral(expr.alternate) ? hoistClassName(path2, expr.alternate.value) : hoistClassNames(path2, expr.alternate);
|
290
|
+
return t.conditionalExpression(expr.test, cons, alt);
|
291
|
+
}
|
292
|
+
return expr;
|
293
|
+
}
|
294
|
+
function hoistClassName(path2, str) {
|
295
|
+
var uid = path2.scope.generateUidIdentifier("cn"), parent = path2.findParent(function(path3) {
|
296
|
+
return path3.isProgram();
|
297
|
+
});
|
298
|
+
if (!parent) throw new Error("no program?");
|
299
|
+
var variable = t.variableDeclaration("const", [
|
300
|
+
t.variableDeclarator(uid, t.stringLiteral(cleanupClassName(str)))
|
301
|
+
]);
|
302
|
+
return parent.unshiftContainer("body", variable), uid;
|
303
|
+
}
|
304
|
+
function cleanupClassName(inStr) {
|
305
|
+
var out = /* @__PURE__ */ new Set(), _iteratorNormalCompletion = !0, _didIteratorError = !1, _iteratorError = void 0;
|
306
|
+
try {
|
307
|
+
for (var _iterator = inStr.split(" ")[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = !0) {
|
308
|
+
var part = _step.value;
|
309
|
+
part !== " " && part !== "font_" && out.add(part);
|
310
|
+
}
|
311
|
+
} catch (err) {
|
312
|
+
_didIteratorError = !0, _iteratorError = err;
|
313
|
+
} finally {
|
314
|
+
try {
|
315
|
+
!_iteratorNormalCompletion && _iterator.return != null && _iterator.return();
|
316
|
+
} finally {
|
317
|
+
if (_didIteratorError)
|
318
|
+
throw _iteratorError;
|
319
|
+
}
|
320
|
+
}
|
321
|
+
return [
|
322
|
+
...out
|
323
|
+
].join(" ") + " ";
|
324
|
+
}
|
301
325
|
// Annotate the CommonJS export names for ESM import in node:
|
302
326
|
0 && (module.exports = {
|
303
327
|
extractToClassNames
|