@tamagui/static 1.0.1-beta.20 → 1.0.1-beta.201

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.
Files changed (260) hide show
  1. package/dist/{cjs/constants.js → constants.js} +9 -4
  2. package/dist/constants.js.map +7 -0
  3. package/dist/{cjs/extractor → extractor}/accessSafe.js +14 -4
  4. package/dist/{esm/extractor → extractor}/accessSafe.js.map +2 -2
  5. package/dist/{cjs/extractor → extractor}/babelParse.js +20 -17
  6. package/dist/extractor/babelParse.js.map +7 -0
  7. package/dist/{cjs/extractor → extractor}/buildClassName.js +40 -11
  8. package/dist/extractor/buildClassName.js.map +7 -0
  9. package/dist/extractor/bundle.js +117 -0
  10. package/dist/extractor/bundle.js.map +7 -0
  11. package/dist/{cjs/extractor → extractor}/createEvaluator.js +19 -14
  12. package/dist/extractor/createEvaluator.js.map +7 -0
  13. package/dist/extractor/createExtractor.js +1650 -0
  14. package/dist/extractor/createExtractor.js.map +7 -0
  15. package/dist/{cjs/extractor → extractor}/ensureImportingConcat.js +18 -8
  16. package/dist/extractor/ensureImportingConcat.js.map +7 -0
  17. package/dist/{cjs/extractor → extractor}/evaluateAstNode.js +14 -6
  18. package/dist/{esm/extractor → extractor}/evaluateAstNode.js.map +2 -2
  19. package/dist/{cjs/extractor → extractor}/extractHelpers.js +91 -27
  20. package/dist/extractor/extractHelpers.js.map +7 -0
  21. package/dist/{cjs/extractor → extractor}/extractMediaStyle.js +49 -50
  22. package/dist/extractor/extractMediaStyle.js.map +7 -0
  23. package/dist/{cjs/extractor → extractor}/extractToClassNames.js +161 -109
  24. package/dist/extractor/extractToClassNames.js.map +7 -0
  25. package/dist/{cjs/extractor → extractor}/findTopmostFunction.js +2 -3
  26. package/dist/{esm/extractor → extractor}/findTopmostFunction.js.map +2 -2
  27. package/dist/{cjs/extractor → extractor}/generatedUid.js +9 -4
  28. package/dist/{cjs/extractor → extractor}/generatedUid.js.map +3 -3
  29. package/dist/{cjs/extractor → extractor}/getPrefixLogs.js +1 -2
  30. package/dist/extractor/getPrefixLogs.js.map +7 -0
  31. package/dist/{cjs/extractor → extractor}/getPropValueFromAttributes.js +24 -15
  32. package/dist/extractor/getPropValueFromAttributes.js.map +7 -0
  33. package/dist/{cjs/extractor → extractor}/getSourceModule.js +5 -3
  34. package/dist/{esm/extractor → extractor}/getSourceModule.js.map +2 -2
  35. package/dist/{cjs/extractor → extractor}/getStaticBindingsForScope.js +88 -38
  36. package/dist/extractor/getStaticBindingsForScope.js.map +7 -0
  37. package/dist/{cjs/extractor → extractor}/hoistClassNames.js +5 -4
  38. package/dist/{esm/extractor → extractor}/hoistClassNames.js.map +3 -3
  39. package/dist/{cjs/extractor → extractor}/literalToAst.js +26 -34
  40. package/dist/{cjs/extractor → extractor}/literalToAst.js.map +2 -2
  41. package/dist/extractor/loadFile.js +21 -0
  42. package/dist/extractor/loadFile.js.map +7 -0
  43. package/dist/extractor/loadTamagui.js +421 -0
  44. package/dist/extractor/loadTamagui.js.map +7 -0
  45. package/dist/{cjs/extractor → extractor}/logLines.js +3 -3
  46. package/dist/{cjs/extractor → extractor}/logLines.js.map +2 -2
  47. package/dist/{cjs/extractor → extractor}/normalizeTernaries.js +13 -36
  48. package/dist/extractor/normalizeTernaries.js.map +7 -0
  49. package/dist/{cjs/extractor → extractor}/removeUnusedHooks.js +7 -5
  50. package/dist/{cjs/extractor → extractor}/removeUnusedHooks.js.map +2 -2
  51. package/dist/{cjs/extractor → extractor}/timer.js +11 -4
  52. package/dist/extractor/timer.js.map +7 -0
  53. package/dist/{cjs/extractor → extractor}/validHTMLAttributes.js +52 -0
  54. package/dist/extractor/validHTMLAttributes.js.map +7 -0
  55. package/dist/getPragmaOptions.js +68 -0
  56. package/dist/getPragmaOptions.js.map +7 -0
  57. package/dist/helpers/memoize.js +46 -0
  58. package/dist/helpers/memoize.js.map +7 -0
  59. package/dist/{cjs/index.js → index.js} +10 -7
  60. package/dist/index.js.map +7 -0
  61. package/dist/require.js +90 -0
  62. package/dist/require.js.map +7 -0
  63. package/dist/tamagui-node/tamagui.config.js +6781 -0
  64. package/dist/{jsx/types.js → tamagui-node/tamaguicore-components.config.js} +0 -0
  65. package/dist/tamagui-node/tamaguitestdesignsystem-components.config.js +31 -0
  66. package/dist/{cjs/types.js → types.js} +1 -0
  67. package/dist/types.js.map +7 -0
  68. package/dist/webpackPlugin.js +35 -0
  69. package/dist/webpackPlugin.js.map +7 -0
  70. package/package.json +47 -35
  71. package/src/constants.ts +14 -0
  72. package/src/extractor/accessSafe.ts +18 -0
  73. package/src/extractor/babelParse.ts +28 -0
  74. package/src/extractor/buildClassName.ts +77 -0
  75. package/src/extractor/bundle.ts +110 -0
  76. package/src/extractor/createEvaluator.ts +73 -0
  77. package/src/extractor/createExtractor.ts +2147 -0
  78. package/src/extractor/ensureImportingConcat.ts +32 -0
  79. package/src/extractor/evaluateAstNode.ts +121 -0
  80. package/src/extractor/extractHelpers.ts +201 -0
  81. package/src/extractor/extractMediaStyle.ts +199 -0
  82. package/src/extractor/extractToClassNames.ts +445 -0
  83. package/src/extractor/findTopmostFunction.ts +22 -0
  84. package/src/extractor/generatedUid.ts +43 -0
  85. package/src/extractor/getPrefixLogs.ts +6 -0
  86. package/src/extractor/getPropValueFromAttributes.ts +92 -0
  87. package/src/extractor/getSourceModule.ts +101 -0
  88. package/src/extractor/getStaticBindingsForScope.ts +227 -0
  89. package/src/extractor/hoistClassNames.ts +45 -0
  90. package/src/extractor/literalToAst.ts +84 -0
  91. package/src/extractor/loadFile.ts +17 -0
  92. package/src/extractor/loadTamagui.ts +478 -0
  93. package/src/extractor/logLines.ts +16 -0
  94. package/src/extractor/normalizeTernaries.ts +63 -0
  95. package/src/extractor/removeUnusedHooks.ts +76 -0
  96. package/src/extractor/timer.ts +29 -0
  97. package/src/extractor/validHTMLAttributes.ts +99 -0
  98. package/src/getPragmaOptions.ts +53 -0
  99. package/src/helpers/memoize.ts +21 -0
  100. package/src/index.ts +11 -0
  101. package/src/require.ts +107 -0
  102. package/src/types.ts +98 -0
  103. package/src/webpackPlugin.ts +9 -0
  104. package/tamagui.tsconfig.json +5 -0
  105. package/types/constants.d.ts +1 -1
  106. package/types/extractor/babelParse.d.ts +2 -1
  107. package/types/extractor/buildClassName.d.ts +5 -2
  108. package/types/extractor/bundle.d.ts +13 -0
  109. package/types/extractor/createEvaluator.d.ts +4 -4
  110. package/types/extractor/createExtractor.d.ts +26 -11
  111. package/types/extractor/extractHelpers.d.ts +16 -4
  112. package/types/extractor/extractMediaStyle.d.ts +3 -3
  113. package/types/extractor/extractToClassNames.d.ts +5 -9
  114. package/types/extractor/getPrefixLogs.d.ts +1 -1
  115. package/types/extractor/getPropValueFromAttributes.d.ts +16 -0
  116. package/types/extractor/getStaticBindingsForScope.d.ts +2 -1
  117. package/types/extractor/loadFile.d.ts +1 -0
  118. package/types/extractor/loadTamagui.d.ts +22 -6
  119. package/types/extractor/normalizeTernaries.d.ts +1 -1
  120. package/types/extractor/validHTMLAttributes.d.ts +49 -0
  121. package/types/getPragmaOptions.d.ts +9 -0
  122. package/types/helpers/memoize.d.ts +8 -0
  123. package/types/index.d.ts +9 -7
  124. package/types/require.d.ts +4 -0
  125. package/types/types.d.ts +32 -32
  126. package/types/webpackPlugin.d.ts +4 -0
  127. package/dist/cjs/constants.js.map +0 -7
  128. package/dist/cjs/extractor/accessSafe.js.map +0 -7
  129. package/dist/cjs/extractor/babelParse.js.map +0 -7
  130. package/dist/cjs/extractor/buildClassName.js.map +0 -7
  131. package/dist/cjs/extractor/createEvaluator.js.map +0 -7
  132. package/dist/cjs/extractor/createExtractor.js +0 -1221
  133. package/dist/cjs/extractor/createExtractor.js.map +0 -7
  134. package/dist/cjs/extractor/ensureImportingConcat.js.map +0 -7
  135. package/dist/cjs/extractor/evaluateAstNode.js.map +0 -7
  136. package/dist/cjs/extractor/extractHelpers.js.map +0 -7
  137. package/dist/cjs/extractor/extractMediaStyle.js.map +0 -7
  138. package/dist/cjs/extractor/extractToClassNames.js.map +0 -7
  139. package/dist/cjs/extractor/findTopmostFunction.js.map +0 -7
  140. package/dist/cjs/extractor/getPrefixLogs.js.map +0 -7
  141. package/dist/cjs/extractor/getPropValueFromAttributes.js.map +0 -7
  142. package/dist/cjs/extractor/getSourceModule.js.map +0 -7
  143. package/dist/cjs/extractor/getStaticBindingsForScope.js.map +0 -7
  144. package/dist/cjs/extractor/hoistClassNames.js.map +0 -7
  145. package/dist/cjs/extractor/loadTamagui.js +0 -106
  146. package/dist/cjs/extractor/loadTamagui.js.map +0 -7
  147. package/dist/cjs/extractor/normalizeTernaries.js.map +0 -7
  148. package/dist/cjs/extractor/timer.js.map +0 -7
  149. package/dist/cjs/extractor/validHTMLAttributes.js.map +0 -7
  150. package/dist/cjs/index.js.map +0 -7
  151. package/dist/cjs/patchReactNativeWeb.js +0 -167
  152. package/dist/cjs/patchReactNativeWeb.js.map +0 -7
  153. package/dist/cjs/types.js.map +0 -7
  154. package/dist/esm/constants.js +0 -14
  155. package/dist/esm/constants.js.map +0 -7
  156. package/dist/esm/extractor/accessSafe.js +0 -11
  157. package/dist/esm/extractor/babelParse.js +0 -30
  158. package/dist/esm/extractor/babelParse.js.map +0 -7
  159. package/dist/esm/extractor/buildClassName.js +0 -40
  160. package/dist/esm/extractor/buildClassName.js.map +0 -7
  161. package/dist/esm/extractor/createEvaluator.js +0 -52
  162. package/dist/esm/extractor/createEvaluator.js.map +0 -7
  163. package/dist/esm/extractor/createExtractor.js +0 -1169
  164. package/dist/esm/extractor/createExtractor.js.map +0 -7
  165. package/dist/esm/extractor/ensureImportingConcat.js +0 -24
  166. package/dist/esm/extractor/ensureImportingConcat.js.map +0 -7
  167. package/dist/esm/extractor/evaluateAstNode.js +0 -94
  168. package/dist/esm/extractor/extractHelpers.js +0 -103
  169. package/dist/esm/extractor/extractHelpers.js.map +0 -7
  170. package/dist/esm/extractor/extractMediaStyle.js +0 -152
  171. package/dist/esm/extractor/extractMediaStyle.js.map +0 -7
  172. package/dist/esm/extractor/extractToClassNames.js +0 -293
  173. package/dist/esm/extractor/extractToClassNames.js.map +0 -7
  174. package/dist/esm/extractor/findTopmostFunction.js +0 -23
  175. package/dist/esm/extractor/generatedUid.js +0 -28
  176. package/dist/esm/extractor/generatedUid.js.map +0 -7
  177. package/dist/esm/extractor/getPrefixLogs.js +0 -12
  178. package/dist/esm/extractor/getPrefixLogs.js.map +0 -7
  179. package/dist/esm/extractor/getPropValueFromAttributes.js +0 -49
  180. package/dist/esm/extractor/getPropValueFromAttributes.js.map +0 -7
  181. package/dist/esm/extractor/getSourceModule.js +0 -69
  182. package/dist/esm/extractor/getStaticBindingsForScope.js +0 -137
  183. package/dist/esm/extractor/getStaticBindingsForScope.js.map +0 -7
  184. package/dist/esm/extractor/hoistClassNames.js +0 -44
  185. package/dist/esm/extractor/literalToAst.js +0 -80
  186. package/dist/esm/extractor/literalToAst.js.map +0 -7
  187. package/dist/esm/extractor/loadTamagui.js +0 -84
  188. package/dist/esm/extractor/loadTamagui.js.map +0 -7
  189. package/dist/esm/extractor/logLines.js +0 -22
  190. package/dist/esm/extractor/logLines.js.map +0 -7
  191. package/dist/esm/extractor/normalizeTernaries.js +0 -53
  192. package/dist/esm/extractor/normalizeTernaries.js.map +0 -7
  193. package/dist/esm/extractor/removeUnusedHooks.js +0 -80
  194. package/dist/esm/extractor/removeUnusedHooks.js.map +0 -7
  195. package/dist/esm/extractor/timer.js +0 -24
  196. package/dist/esm/extractor/timer.js.map +0 -7
  197. package/dist/esm/extractor/validHTMLAttributes.js +0 -52
  198. package/dist/esm/extractor/validHTMLAttributes.js.map +0 -7
  199. package/dist/esm/index.js +0 -14
  200. package/dist/esm/index.js.map +0 -7
  201. package/dist/esm/patchReactNativeWeb.js +0 -142
  202. package/dist/esm/patchReactNativeWeb.js.map +0 -7
  203. package/dist/esm/types.js +0 -1
  204. package/dist/esm/types.js.map +0 -7
  205. package/dist/jsx/constants.js +0 -13
  206. package/dist/jsx/extractor/accessSafe.js +0 -10
  207. package/dist/jsx/extractor/babelParse.js +0 -29
  208. package/dist/jsx/extractor/buildClassName.js +0 -39
  209. package/dist/jsx/extractor/createEvaluator.js +0 -51
  210. package/dist/jsx/extractor/createExtractor.js +0 -1168
  211. package/dist/jsx/extractor/ensureImportingConcat.js +0 -23
  212. package/dist/jsx/extractor/evaluateAstNode.js +0 -93
  213. package/dist/jsx/extractor/extractHelpers.js +0 -102
  214. package/dist/jsx/extractor/extractMediaStyle.js +0 -151
  215. package/dist/jsx/extractor/extractToClassNames.js +0 -292
  216. package/dist/jsx/extractor/findTopmostFunction.js +0 -22
  217. package/dist/jsx/extractor/generatedUid.js +0 -27
  218. package/dist/jsx/extractor/getPrefixLogs.js +0 -11
  219. package/dist/jsx/extractor/getPropValueFromAttributes.js +0 -48
  220. package/dist/jsx/extractor/getSourceModule.js +0 -68
  221. package/dist/jsx/extractor/getStaticBindingsForScope.js +0 -136
  222. package/dist/jsx/extractor/hoistClassNames.js +0 -43
  223. package/dist/jsx/extractor/literalToAst.js +0 -79
  224. package/dist/jsx/extractor/loadTamagui.js +0 -83
  225. package/dist/jsx/extractor/logLines.js +0 -21
  226. package/dist/jsx/extractor/normalizeTernaries.js +0 -52
  227. package/dist/jsx/extractor/removeUnusedHooks.js +0 -79
  228. package/dist/jsx/extractor/timer.js +0 -23
  229. package/dist/jsx/extractor/validHTMLAttributes.js +0 -51
  230. package/dist/jsx/index.js +0 -13
  231. package/dist/jsx/patchReactNativeWeb.js +0 -141
  232. package/types/constants.d.ts.map +0 -1
  233. package/types/extractor/accessSafe.d.ts.map +0 -1
  234. package/types/extractor/babelParse.d.ts.map +0 -1
  235. package/types/extractor/buildClassName.d.ts.map +0 -1
  236. package/types/extractor/createEvaluator.d.ts.map +0 -1
  237. package/types/extractor/createExtractor.d.ts.map +0 -1
  238. package/types/extractor/ensureImportingConcat.d.ts.map +0 -1
  239. package/types/extractor/evaluateAstNode.d.ts.map +0 -1
  240. package/types/extractor/extractHelpers.d.ts.map +0 -1
  241. package/types/extractor/extractMediaStyle.d.ts.map +0 -1
  242. package/types/extractor/extractToClassNames.d.ts.map +0 -1
  243. package/types/extractor/findTopmostFunction.d.ts.map +0 -1
  244. package/types/extractor/generatedUid.d.ts.map +0 -1
  245. package/types/extractor/getPrefixLogs.d.ts.map +0 -1
  246. package/types/extractor/getPropValueFromAttributes.d.ts.map +0 -1
  247. package/types/extractor/getSourceModule.d.ts.map +0 -1
  248. package/types/extractor/getStaticBindingsForScope.d.ts.map +0 -1
  249. package/types/extractor/hoistClassNames.d.ts.map +0 -1
  250. package/types/extractor/literalToAst.d.ts.map +0 -1
  251. package/types/extractor/loadTamagui.d.ts.map +0 -1
  252. package/types/extractor/logLines.d.ts.map +0 -1
  253. package/types/extractor/normalizeTernaries.d.ts.map +0 -1
  254. package/types/extractor/removeUnusedHooks.d.ts.map +0 -1
  255. package/types/extractor/timer.d.ts.map +0 -1
  256. package/types/extractor/validHTMLAttributes.d.ts.map +0 -1
  257. package/types/index.d.ts.map +0 -1
  258. package/types/patchReactNativeWeb.d.ts +0 -2
  259. package/types/patchReactNativeWeb.d.ts.map +0 -1
  260. package/types/types.d.ts.map +0 -1
@@ -1,27 +1,10 @@
1
+ "use strict";
1
2
  var __create = Object.create;
2
3
  var __defProp = Object.defineProperty;
3
- var __defProps = Object.defineProperties;
4
4
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
- var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
6
5
  var __getOwnPropNames = Object.getOwnPropertyNames;
7
- var __getOwnPropSymbols = Object.getOwnPropertySymbols;
8
6
  var __getProtoOf = Object.getPrototypeOf;
9
7
  var __hasOwnProp = Object.prototype.hasOwnProperty;
10
- var __propIsEnum = Object.prototype.propertyIsEnumerable;
11
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
12
- var __spreadValues = (a, b) => {
13
- for (var prop in b || (b = {}))
14
- if (__hasOwnProp.call(b, prop))
15
- __defNormalProp(a, prop, b[prop]);
16
- if (__getOwnPropSymbols)
17
- for (var prop of __getOwnPropSymbols(b)) {
18
- if (__propIsEnum.call(b, prop))
19
- __defNormalProp(a, prop, b[prop]);
20
- }
21
- return a;
22
- };
23
- var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
24
- var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
25
8
  var __export = (target, all) => {
26
9
  for (var name in all)
27
10
  __defProp(target, name, { get: all[name], enumerable: true });
@@ -34,7 +17,10 @@ var __copyProps = (to, from, except, desc) => {
34
17
  }
35
18
  return to;
36
19
  };
37
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, mod));
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
22
+ mod
23
+ ));
38
24
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
39
25
  var extractToClassNames_exports = {};
40
26
  __export(extractToClassNames_exports, {
@@ -49,39 +35,37 @@ var t = __toESM(require("@babel/types"));
49
35
  var import_core_node = require("@tamagui/core-node");
50
36
  var import_helpers = require("@tamagui/helpers");
51
37
  var import_invariant = __toESM(require("invariant"));
52
- var import_constants = require("../constants");
53
- var import_babelParse = require("./babelParse");
54
- var import_buildClassName = require("./buildClassName");
55
- var import_ensureImportingConcat = require("./ensureImportingConcat");
56
- var import_extractHelpers = require("./extractHelpers");
57
- var import_extractMediaStyle = require("./extractMediaStyle");
58
- var import_getPrefixLogs = require("./getPrefixLogs");
59
- var import_hoistClassNames = require("./hoistClassNames");
60
- var import_literalToAst = require("./literalToAst");
61
- var import_logLines = require("./logLines");
62
- var import_timer = require("./timer");
38
+ var import_babelParse = require("./babelParse.js");
39
+ var import_buildClassName = require("./buildClassName.js");
40
+ var import_ensureImportingConcat = require("./ensureImportingConcat.js");
41
+ var import_extractHelpers = require("./extractHelpers.js");
42
+ var import_extractMediaStyle = require("./extractMediaStyle.js");
43
+ var import_getPrefixLogs = require("./getPrefixLogs.js");
44
+ var import_hoistClassNames = require("./hoistClassNames.js");
45
+ var import_logLines = require("./logLines.js");
46
+ var import_timer = require("./timer.js");
63
47
  const mergeStyleGroups = {
64
48
  shadowOpacity: true,
65
49
  shadowRadius: true,
66
50
  shadowColor: true,
67
51
  shadowOffset: true
68
52
  };
69
- function extractToClassNames({
70
- loader,
53
+ async function extractToClassNames({
71
54
  extractor,
72
55
  source,
73
56
  sourcePath,
74
57
  options,
75
- shouldPrintDebug,
76
- cssLoaderPath,
77
- threaded,
78
- cssPath
58
+ shouldPrintDebug
79
59
  }) {
80
60
  const tm = (0, import_timer.timer)();
81
61
  if (typeof source !== "string") {
82
62
  throw new Error("`source` must be a string of javascript");
83
63
  }
84
- (0, import_invariant.default)(typeof sourcePath === "string" && path.isAbsolute(sourcePath), "`sourcePath` must be an absolute path to a .js file");
64
+ (0, import_invariant.default)(
65
+ typeof sourcePath === "string" && path.isAbsolute(sourcePath),
66
+ "`sourcePath` must be an absolute path to a .js file"
67
+ );
68
+ await extractor.loadTamagui(options);
85
69
  const shouldLogTiming = options.logTimings ?? true;
86
70
  const start = Date.now();
87
71
  const mem = shouldLogTiming ? process.memoryUsage() : null;
@@ -96,15 +80,21 @@ function extractToClassNames({
96
80
  const cssMap = /* @__PURE__ */ new Map();
97
81
  const existingHoists = {};
98
82
  let hasFlattened = false;
99
- const res = extractor.parse(ast, __spreadProps(__spreadValues({
83
+ const res = await extractor.parse(ast, {
84
+ shouldPrintDebug,
85
+ ...options,
100
86
  sourcePath,
101
- shouldPrintDebug
102
- }, options), {
87
+ target: "html",
88
+ extractStyledDefinitions: true,
89
+ onStyleRule(identifier, rules) {
90
+ cssMap.set(`.${identifier}`, { css: rules.join(";"), commentTexts: [] });
91
+ },
103
92
  getFlattenedNode: ({ tag }) => {
104
93
  hasFlattened = true;
105
94
  return tag;
106
95
  },
107
96
  onExtractTag: ({
97
+ parserProps,
108
98
  attrs,
109
99
  node,
110
100
  attemptEval,
@@ -113,19 +103,32 @@ function extractToClassNames({
113
103
  filePath,
114
104
  lineNumbers,
115
105
  programPath,
116
- isFlattened
106
+ isFlattened,
107
+ completeProps,
108
+ staticConfig
117
109
  }) => {
118
110
  var _a;
111
+ if (staticConfig.acceptsClassName === false) {
112
+ if (shouldPrintDebug) {
113
+ console.log(`bail, acceptsClassName is false`);
114
+ }
115
+ return;
116
+ }
117
+ const didFlattenThisTag = hasFlattened;
118
+ hasFlattened = false;
119
119
  let finalClassNames = [];
120
- let finalAttrs = [];
120
+ const finalAttrs = [];
121
121
  let finalStyles = [];
122
- const viewStyles = {};
122
+ let viewStyles = {};
123
123
  for (const attr of attrs) {
124
124
  if (attr.type === "style") {
125
- Object.assign(viewStyles, attr.value);
125
+ viewStyles = {
126
+ ...viewStyles,
127
+ ...attr.value
128
+ };
126
129
  }
127
130
  }
128
- const ensureNeededPrevStyle = /* @__PURE__ */ __name((style) => {
131
+ const ensureNeededPrevStyle = (style) => {
129
132
  const keys = Object.keys(style);
130
133
  if (!keys.some((key) => mergeStyleGroups[key])) {
131
134
  return style;
@@ -136,8 +139,8 @@ function extractToClassNames({
136
139
  }
137
140
  }
138
141
  return style;
139
- }, "ensureNeededPrevStyle");
140
- const addStyles = /* @__PURE__ */ __name((style) => {
142
+ };
143
+ const addStyles = (style) => {
141
144
  if (!style)
142
145
  return [];
143
146
  const styleWithPrev = ensureNeededPrevStyle(style);
@@ -146,34 +149,26 @@ function extractToClassNames({
146
149
  finalStyles = [...finalStyles, ...res2];
147
150
  }
148
151
  return res2;
149
- }, "addStyles");
152
+ };
150
153
  let lastMediaImportance = 1;
151
154
  for (const attr of attrs) {
152
155
  switch (attr.type) {
153
- case "style":
156
+ case "style": {
154
157
  if (!isFlattened) {
155
- const { hoverStyle, pressStyle, focusStyle } = attr.value;
156
- const pseudos = [
157
- ["hoverStyle", hoverStyle],
158
- ["pressStyle", pressStyle],
159
- ["focusStyle", focusStyle]
160
- ];
161
- const styles2 = (0, import_core_node.getStylesAtomic)(attr.value, {
162
- splitTransforms: true
163
- });
158
+ const styles2 = (0, import_core_node.getStylesAtomic)(attr.value);
164
159
  finalStyles = [...finalStyles, ...styles2];
165
- for (const [key, value] of pseudos) {
166
- if (value && Object.keys(value).length) {
167
- finalAttrs.push(t.jsxAttribute(t.jsxIdentifier(key), t.jsxExpressionContainer((0, import_literalToAst.literalToAst)(value))));
168
- }
169
- }
170
160
  for (const style of styles2) {
171
- finalAttrs.push(t.jsxAttribute(t.jsxIdentifier(style.property), t.stringLiteral(style.identifier)));
161
+ const prop = style.pseudo ? `${style.property}-${style.pseudo}` : style.property;
162
+ finalAttrs.push(
163
+ t.jsxAttribute(t.jsxIdentifier(prop), t.stringLiteral(style.identifier))
164
+ );
172
165
  }
173
166
  } else {
174
167
  const styles2 = addStyles(attr.value);
175
168
  const newClassNames = (0, import_helpers.concatClassName)(styles2.map((x) => x.identifier).join(" "));
176
- const existing = finalClassNames.find((x) => x.type == "StringLiteral");
169
+ const existing = finalClassNames.find(
170
+ (x) => x.type == "StringLiteral"
171
+ );
177
172
  if (existing) {
178
173
  existing.value = `${existing.value} ${newClassNames}`;
179
174
  } else {
@@ -181,11 +176,18 @@ function extractToClassNames({
181
176
  }
182
177
  }
183
178
  break;
184
- case "attr":
179
+ }
180
+ case "attr": {
185
181
  const val = attr.value;
186
182
  if (t.isJSXSpreadAttribute(val)) {
187
183
  if ((0, import_extractHelpers.isSimpleSpread)(val)) {
188
- finalClassNames.push(t.logicalExpression("&&", val.argument, t.memberExpression(val.argument, t.identifier("className"))));
184
+ finalClassNames.push(
185
+ t.logicalExpression(
186
+ "&&",
187
+ val.argument,
188
+ t.memberExpression(val.argument, t.identifier("className"))
189
+ )
190
+ );
189
191
  }
190
192
  } else if (val.name.name === "className") {
191
193
  const value = val.value;
@@ -201,15 +203,32 @@ function extractToClassNames({
201
203
  }
202
204
  finalAttrs.push(val);
203
205
  break;
204
- case "ternary":
205
- const mediaExtraction = (0, import_extractMediaStyle.extractMediaStyle)(attr.value, jsxPath, extractor.getTamagui(), sourcePath, lastMediaImportance, shouldPrintDebug);
206
+ }
207
+ case "ternary": {
208
+ const mediaExtraction = (0, import_extractMediaStyle.extractMediaStyle)(
209
+ parserProps,
210
+ attr.value,
211
+ jsxPath,
212
+ extractor.getTamagui(),
213
+ sourcePath,
214
+ lastMediaImportance,
215
+ shouldPrintDebug
216
+ );
206
217
  if (shouldPrintDebug) {
207
218
  if (mediaExtraction) {
208
- console.log("ternary (mediaStyles)", ((_a = mediaExtraction.ternaryWithoutMedia) == null ? void 0 : _a.inlineMediaQuery) ?? "", mediaExtraction.mediaStyles.map((x) => x.identifier).join("."));
219
+ console.log(
220
+ "ternary (mediaStyles)",
221
+ ((_a = mediaExtraction.ternaryWithoutMedia) == null ? void 0 : _a.inlineMediaQuery) ?? "",
222
+ mediaExtraction.mediaStyles.map((x) => x.identifier).join(".")
223
+ );
209
224
  }
210
225
  }
211
226
  if (!mediaExtraction) {
212
- addTernaryStyle(attr.value, addStyles(attr.value.consequent), addStyles(attr.value.alternate));
227
+ addTernaryStyle(
228
+ attr.value,
229
+ addStyles(attr.value.consequent),
230
+ addStyles(attr.value.alternate)
231
+ );
213
232
  continue;
214
233
  }
215
234
  lastMediaImportance++;
@@ -225,44 +244,77 @@ function extractToClassNames({
225
244
  ];
226
245
  }
227
246
  break;
247
+ }
228
248
  }
229
249
  }
230
250
  function addTernaryStyle(ternary, a, b) {
231
251
  const cCN = a.map((x) => x.identifier).join(" ");
232
252
  const aCN = b.map((x) => x.identifier).join(" ");
233
253
  if (a.length && b.length) {
234
- finalClassNames.push(t.conditionalExpression(ternary.test, t.stringLiteral(cCN), t.stringLiteral(aCN)));
254
+ finalClassNames.push(
255
+ t.conditionalExpression(ternary.test, t.stringLiteral(cCN), t.stringLiteral(aCN))
256
+ );
235
257
  } else {
236
- finalClassNames.push(t.conditionalExpression(ternary.test, t.stringLiteral(" " + cCN), t.stringLiteral(" " + aCN)));
258
+ finalClassNames.push(
259
+ t.conditionalExpression(
260
+ ternary.test,
261
+ t.stringLiteral(" " + cCN),
262
+ t.stringLiteral(" " + aCN)
263
+ )
264
+ );
237
265
  }
238
266
  }
239
- __name(addTernaryStyle, "addTernaryStyle");
240
267
  if (shouldPrintDebug) {
241
- console.log(" finalClassNames\n", (0, import_logLines.logLines)(finalClassNames.map((x) => x["value"]).join(" ")));
268
+ console.log(
269
+ " finalClassNames\n",
270
+ (0, import_logLines.logLines)(finalClassNames.map((x) => x["value"]).join(" "))
271
+ );
242
272
  }
243
273
  node.attributes = finalAttrs;
244
274
  if (finalClassNames.length) {
245
- let names = (0, import_buildClassName.buildClassName)(finalClassNames);
246
- if (t.isStringLiteral(names)) {
247
- names.value = (0, import_helpers.concatClassName)(names.value);
248
- }
275
+ const extraClassNames = (() => {
276
+ let value = "";
277
+ if (!isFlattened) {
278
+ return value;
279
+ }
280
+ if (process.env.TAMAGUI_DEBUG_OPTIMIZATIONS) {
281
+ value += `is_tamagui_flattened`;
282
+ }
283
+ if (staticConfig.componentName) {
284
+ value += ` is_${staticConfig.componentName}`;
285
+ }
286
+ if (staticConfig.isText) {
287
+ let family = completeProps.fontFamily;
288
+ if (family[0] === "$") {
289
+ family = family.slice(1);
290
+ }
291
+ value += ` font_${family}`;
292
+ }
293
+ return value;
294
+ })();
295
+ const names = (0, import_buildClassName.buildClassName)(finalClassNames, extraClassNames);
249
296
  const nameExpr = names ? (0, import_hoistClassNames.hoistClassNames)(jsxPath, existingHoists, names) : null;
250
297
  let expr = nameExpr;
251
298
  if (nameExpr && !t.isIdentifier(nameExpr)) {
252
- if (!hasFlattened) {
299
+ if (!didFlattenThisTag) {
253
300
  } else {
254
301
  (0, import_ensureImportingConcat.ensureImportingConcat)(programPath);
255
- const simpleSpreads = attrs.filter((x) => t.isJSXSpreadAttribute(x.value) && (0, import_extractHelpers.isSimpleSpread)(x.value));
256
- expr = t.callExpression(t.identifier(import_constants.CONCAT_CLASSNAME_IMPORT), [
302
+ const simpleSpreads = attrs.filter(
303
+ (x) => t.isJSXSpreadAttribute(x.value) && (0, import_extractHelpers.isSimpleSpread)(x.value)
304
+ );
305
+ expr = t.callExpression(t.identifier("concatClassName"), [
257
306
  expr,
258
307
  ...simpleSpreads.map((val) => val.value["argument"])
259
308
  ]);
260
309
  }
261
310
  }
262
- node.attributes.push(t.jsxAttribute(t.jsxIdentifier("className"), t.jsxExpressionContainer(expr)));
311
+ node.attributes.push(
312
+ t.jsxAttribute(t.jsxIdentifier("className"), t.jsxExpressionContainer(expr))
313
+ );
263
314
  }
264
315
  const comment = util.format("/* %s:%s (%s) */", filePath, lineNumbers, originalNodeName);
265
- for (const { className, rules, identifier, value } of finalStyles) {
316
+ for (const { identifier, rules } of finalStyles) {
317
+ const className = `.${identifier}`;
266
318
  if (cssMap.has(className)) {
267
319
  if (comment) {
268
320
  const val = cssMap.get(className);
@@ -270,53 +322,54 @@ function extractToClassNames({
270
322
  cssMap.set(className, val);
271
323
  }
272
324
  } else if (rules.length) {
273
- if (rules.length > 1) {
274
- console.log(" rules error", { rules });
275
- throw new Error(`Shouldn't have more than one rule`);
276
- }
277
325
  cssMap.set(className, {
278
- css: rules[0],
326
+ css: rules.join("\n"),
279
327
  commentTexts: [comment]
280
328
  });
281
329
  }
282
330
  }
283
331
  }
284
- }));
285
- if (!res || !res.modified && !res.optimized && !res.flattened) {
332
+ });
333
+ if (!res || !res.modified && !res.optimized && !res.flattened && !res.styled) {
286
334
  if (shouldPrintDebug) {
287
335
  console.log("no res or none modified", res);
288
336
  }
289
337
  return null;
290
338
  }
291
339
  const styles = Array.from(cssMap.values()).map((x) => x.css).join("\n").trim();
292
- if (styles) {
293
- const cssQuery = threaded ? `cssData=${Buffer.from(styles).toString("base64")}` : `cssPath=${cssPath}`;
294
- const remReq = loader.remainingRequest;
295
- const importPath = `${cssPath}!=!${cssLoaderPath}?${cssQuery}!${remReq}`;
296
- ast.program.body.unshift(t.importDeclaration([], t.stringLiteral(importPath)));
297
- }
298
- const result = (0, import_generator.default)(ast, {
299
- concise: false,
300
- filename: sourcePath,
301
- retainLines: false,
302
- sourceFileName: sourcePath,
303
- sourceMaps: true
304
- }, source);
340
+ const result = (0, import_generator.default)(
341
+ ast,
342
+ {
343
+ concise: false,
344
+ filename: sourcePath,
345
+ retainLines: false,
346
+ sourceFileName: sourcePath,
347
+ sourceMaps: true
348
+ },
349
+ source
350
+ );
305
351
  if (shouldPrintDebug) {
306
- console.log("\n -------- output code ------- \n\n", result.code.split("\n").filter((x) => !x.startsWith("//")).join("\n"));
352
+ console.log(
353
+ "\n -------- output code ------- \n\n",
354
+ result.code.split("\n").filter((x) => !x.startsWith("//")).join("\n")
355
+ );
307
356
  console.log("\n -------- output style -------- \n\n", styles);
308
357
  }
309
358
  if (shouldLogTiming) {
310
359
  const memUsed = mem ? Math.round((process.memoryUsage().heapUsed - mem.heapUsed) / 1024 / 1204 * 10) / 10 : 0;
311
360
  const path2 = (0, import_path.basename)(sourcePath).replace(/\.[jt]sx?$/, "").slice(0, 22).trim().padStart(24);
361
+ const numStyled = `${res.styled}`.padStart(3);
312
362
  const numOptimized = `${res.optimized}`.padStart(3);
313
363
  const numFound = `${res.found}`.padStart(3);
314
364
  const numFlattened = `${res.flattened}`.padStart(3);
315
365
  const memory = process.env.DEBUG && memUsed > 10 ? ` ${memUsed}MB` : "";
316
366
  const timing = Date.now() - start;
317
- const timingWarning = timing > 50 ? "\u26A0\uFE0F" : timing > 150 ? "\u2622\uFE0F" : "";
318
- const timingStr = `${timing}ms${timingWarning}`.padStart(6);
319
- console.log(`${(0, import_getPrefixLogs.getPrefixLogs)(options)} ${path2} ${numFound} \xB7 ${numOptimized} \xB7 ${numFlattened} ${timingStr} ${memory ? `(${memory})` : ""}`);
367
+ const timingStr = `${timing}ms`.padStart(6);
368
+ const pre = (0, import_getPrefixLogs.getPrefixLogs)(options);
369
+ const memStr = memory ? `(${memory})` : "";
370
+ console.log(
371
+ `${pre} ${path2} ${numFound} \xB7 ${numOptimized} \xB7 ${numFlattened} \xB7 ${numStyled} ${timingStr} ${memStr}`
372
+ );
320
373
  }
321
374
  return {
322
375
  ast,
@@ -325,7 +378,6 @@ function extractToClassNames({
325
378
  map: result.map
326
379
  };
327
380
  }
328
- __name(extractToClassNames, "extractToClassNames");
329
381
  // Annotate the CommonJS export names for ESM import in node:
330
382
  0 && (module.exports = {
331
383
  extractToClassNames
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/extractor/extractToClassNames.ts"],
4
+ "sourcesContent": ["import * as path from 'path'\nimport { basename } from 'path'\nimport * as util from 'util'\n\nimport generate from '@babel/generator'\nimport * as t from '@babel/types'\nimport { getStylesAtomic } from '@tamagui/core-node'\nimport { concatClassName } from '@tamagui/helpers'\nimport invariant from 'invariant'\nimport type { ViewStyle } from 'react-native'\n\nimport type { ClassNameObject, StyleObject, TamaguiOptions, Ternary } from '../types.js'\nimport { babelParse } from './babelParse.js'\nimport { buildClassName } from './buildClassName.js'\nimport { Extractor } from './createExtractor.js'\nimport { ensureImportingConcat } from './ensureImportingConcat.js'\nimport { isSimpleSpread } from './extractHelpers.js'\nimport { extractMediaStyle } from './extractMediaStyle.js'\nimport { getPrefixLogs } from './getPrefixLogs.js'\nimport { hoistClassNames } from './hoistClassNames.js'\nimport { logLines } from './logLines.js'\nimport { timer } from './timer.js'\n\nconst mergeStyleGroups = {\n shadowOpacity: true,\n shadowRadius: true,\n shadowColor: true,\n shadowOffset: true,\n}\n\nexport type ExtractedResponse = {\n js: string | Buffer\n styles: string\n stylesPath?: string\n ast: t.File\n map: any // RawSourceMap from 'source-map'\n}\n\nexport type ExtractToClassNamesProps = {\n extractor: Extractor\n source: string | Buffer\n sourcePath: string\n options: TamaguiOptions\n shouldPrintDebug: boolean | 'verbose'\n}\n\nexport async function extractToClassNames({\n extractor,\n source,\n sourcePath,\n options,\n shouldPrintDebug,\n}: ExtractToClassNamesProps): Promise<ExtractedResponse | null> {\n const tm = timer()\n\n if (typeof source !== 'string') {\n throw new Error('`source` must be a string of javascript')\n }\n invariant(\n typeof sourcePath === 'string' && path.isAbsolute(sourcePath),\n '`sourcePath` must be an absolute path to a .js file'\n )\n\n // dont include loading in timing of parsing (one time cost)\n await extractor.loadTamagui(options)\n\n const shouldLogTiming = options.logTimings ?? true\n const start = Date.now()\n const mem = shouldLogTiming ? process.memoryUsage() : null\n\n // Using a map for (officially supported) guaranteed insertion order\n let ast: t.File\n\n try {\n ast = babelParse(source)\n } catch (err) {\n // eslint-disable-next-line no-console\n console.error('babel parse error:', sourcePath)\n throw err\n }\n\n tm.mark(`babel-parse`, shouldPrintDebug === 'verbose')\n\n const cssMap = new Map<string, { css: string; commentTexts: string[] }>()\n const existingHoists: { [key: string]: t.Identifier } = {}\n\n let hasFlattened = false\n\n const res = await extractor.parse(ast, {\n shouldPrintDebug,\n ...options,\n sourcePath,\n target: 'html',\n extractStyledDefinitions: true,\n onStyleRule(identifier, rules) {\n cssMap.set(`.${identifier}`, { css: rules.join(';'), commentTexts: [] })\n },\n getFlattenedNode: ({ tag }) => {\n hasFlattened = true\n return tag\n },\n onExtractTag: ({\n parserProps,\n attrs,\n node,\n attemptEval,\n jsxPath,\n originalNodeName,\n filePath,\n lineNumbers,\n programPath,\n isFlattened,\n completeProps,\n staticConfig,\n }) => {\n // bail out of views that don't accept className (falls back to runtime + style={})\n if (staticConfig.acceptsClassName === false) {\n if (shouldPrintDebug) {\n // eslint-disable-next-line no-console\n console.log(`bail, acceptsClassName is false`)\n }\n return\n }\n\n // reset hasFlattened\n const didFlattenThisTag = hasFlattened\n hasFlattened = false\n\n let finalClassNames: ClassNameObject[] = []\n const finalAttrs: (t.JSXAttribute | t.JSXSpreadAttribute)[] = []\n let finalStyles: StyleObject[] = []\n\n let viewStyles = {}\n for (const attr of attrs) {\n if (attr.type === 'style') {\n viewStyles = {\n ...viewStyles,\n ...attr.value,\n }\n }\n }\n\n const ensureNeededPrevStyle = (style: ViewStyle) => {\n // ensure all group keys are merged\n const keys = Object.keys(style)\n if (!keys.some((key) => mergeStyleGroups[key])) {\n return style\n }\n for (const k in mergeStyleGroups) {\n if (k in viewStyles) {\n style[k] = style[k] ?? viewStyles[k]\n }\n }\n return style\n }\n\n const addStyles = (style: ViewStyle | null): StyleObject[] => {\n if (!style) return []\n const styleWithPrev = ensureNeededPrevStyle(style)\n const res = getStylesAtomic(styleWithPrev)\n if (res.length) {\n finalStyles = [...finalStyles, ...res]\n }\n return res\n }\n\n // 1 to start above any :hover styles\n let lastMediaImportance = 1\n for (const attr of attrs) {\n switch (attr.type) {\n case 'style': {\n if (!isFlattened) {\n const styles = getStylesAtomic(attr.value)\n\n finalStyles = [...finalStyles, ...styles]\n\n for (const style of styles) {\n // leave them as attributes\n const prop = style.pseudo ? `${style.property}-${style.pseudo}` : style.property\n finalAttrs.push(\n t.jsxAttribute(t.jsxIdentifier(prop), t.stringLiteral(style.identifier))\n )\n }\n } else {\n const styles = addStyles(attr.value)\n const newClassNames = concatClassName(styles.map((x) => x.identifier).join(' '))\n const existing = finalClassNames.find(\n (x) => x.type == 'StringLiteral'\n ) as t.StringLiteral | null\n\n if (existing) {\n existing.value = `${existing.value} ${newClassNames}`\n } else {\n finalClassNames = [...finalClassNames, t.stringLiteral(newClassNames)]\n }\n }\n\n break\n }\n case 'attr': {\n const val = attr.value\n if (t.isJSXSpreadAttribute(val)) {\n if (isSimpleSpread(val)) {\n finalClassNames.push(\n t.logicalExpression(\n '&&',\n val.argument,\n t.memberExpression(val.argument, t.identifier('className'))\n )\n )\n }\n } else if (val.name.name === 'className') {\n const value = val.value\n if (value) {\n try {\n const evaluatedValue = attemptEval(value)\n finalClassNames.push(t.stringLiteral(evaluatedValue))\n } catch (e) {\n finalClassNames.push(value['expression'])\n }\n }\n continue\n }\n finalAttrs.push(val)\n break\n }\n case 'ternary': {\n const mediaExtraction = extractMediaStyle(\n parserProps,\n attr.value,\n jsxPath,\n extractor.getTamagui()!,\n sourcePath,\n lastMediaImportance,\n shouldPrintDebug\n )\n if (shouldPrintDebug) {\n if (mediaExtraction) {\n // eslint-disable-next-line no-console\n console.log(\n 'ternary (mediaStyles)',\n mediaExtraction.ternaryWithoutMedia?.inlineMediaQuery ?? '',\n mediaExtraction.mediaStyles.map((x) => x.identifier).join('.')\n )\n }\n }\n if (!mediaExtraction) {\n addTernaryStyle(\n attr.value,\n addStyles(attr.value.consequent),\n addStyles(attr.value.alternate)\n )\n continue\n }\n lastMediaImportance++\n if (mediaExtraction.mediaStyles) {\n finalStyles = [...finalStyles, ...mediaExtraction.mediaStyles]\n }\n if (mediaExtraction.ternaryWithoutMedia) {\n addTernaryStyle(mediaExtraction.ternaryWithoutMedia, mediaExtraction.mediaStyles, [])\n } else {\n finalClassNames = [\n ...finalClassNames,\n ...mediaExtraction.mediaStyles.map((x) => t.stringLiteral(x.identifier)),\n ]\n }\n break\n }\n }\n }\n\n function addTernaryStyle(ternary: Ternary, a: any, b: any) {\n const cCN = a.map((x) => x.identifier).join(' ')\n const aCN = b.map((x) => x.identifier).join(' ')\n if (a.length && b.length) {\n finalClassNames.push(\n t.conditionalExpression(ternary.test, t.stringLiteral(cCN), t.stringLiteral(aCN))\n )\n } else {\n finalClassNames.push(\n t.conditionalExpression(\n ternary.test,\n t.stringLiteral(' ' + cCN),\n t.stringLiteral(' ' + aCN)\n )\n )\n }\n }\n\n if (shouldPrintDebug) {\n // eslint-disable-next-line no-console\n console.log(\n ' finalClassNames\\n',\n logLines(finalClassNames.map((x) => x['value']).join(' '))\n )\n }\n\n node.attributes = finalAttrs\n\n if (finalClassNames.length) {\n const extraClassNames = (() => {\n let value = ''\n if (!isFlattened) {\n return value\n }\n\n // helper to see how many get flattened\n if (process.env.TAMAGUI_DEBUG_OPTIMIZATIONS) {\n value += `is_tamagui_flattened`\n }\n\n // add is_Component className\n if (staticConfig.componentName) {\n value += ` is_${staticConfig.componentName}`\n }\n\n if (staticConfig.isText) {\n let family = completeProps.fontFamily\n if (family[0] === '$') {\n family = family.slice(1)\n }\n value += ` font_${family}`\n }\n\n return value\n })()\n\n // inserts the _cn variable and uses it for className\n const names = buildClassName(finalClassNames, extraClassNames)\n\n const nameExpr = names ? hoistClassNames(jsxPath, existingHoists, names) : null\n let expr = nameExpr\n\n // if has some spreads, use concat helper\n if (nameExpr && !t.isIdentifier(nameExpr)) {\n if (!didFlattenThisTag) {\n // not flat\n } else {\n ensureImportingConcat(programPath)\n const simpleSpreads = attrs.filter(\n (x) => t.isJSXSpreadAttribute(x.value) && isSimpleSpread(x.value)\n )\n expr = t.callExpression(t.identifier('concatClassName'), [\n expr,\n ...simpleSpreads.map((val) => val.value['argument']),\n ])\n }\n }\n\n node.attributes.push(\n t.jsxAttribute(t.jsxIdentifier('className'), t.jsxExpressionContainer(expr))\n )\n }\n\n const comment = util.format('/* %s:%s (%s) */', filePath, lineNumbers, originalNodeName)\n\n for (const { identifier, rules } of finalStyles) {\n const className = `.${identifier}`\n if (cssMap.has(className)) {\n if (comment) {\n const val = cssMap.get(className)!\n val.commentTexts.push(comment)\n cssMap.set(className, val)\n }\n } else if (rules.length) {\n cssMap.set(className, {\n css: rules.join('\\n'),\n commentTexts: [comment],\n })\n }\n }\n },\n })\n\n if (!res || (!res.modified && !res.optimized && !res.flattened && !res.styled)) {\n if (shouldPrintDebug) {\n // eslint-disable-next-line no-console\n console.log('no res or none modified', res)\n }\n return null\n }\n\n const styles = Array.from(cssMap.values())\n .map((x) => x.css)\n .join('\\n')\n .trim()\n\n const result = generate(\n ast as any,\n {\n concise: false,\n filename: sourcePath,\n // this makes the debug output terrible, and i think sourcemap works already\n retainLines: false,\n sourceFileName: sourcePath,\n sourceMaps: true,\n },\n source\n )\n\n if (shouldPrintDebug) {\n // eslint-disable-next-line no-console\n console.log(\n '\\n -------- output code ------- \\n\\n',\n result.code\n .split('\\n')\n .filter((x) => !x.startsWith('//'))\n .join('\\n')\n )\n // eslint-disable-next-line no-console\n console.log('\\n -------- output style -------- \\n\\n', styles)\n }\n\n if (shouldLogTiming) {\n const memUsed = mem\n ? Math.round(((process.memoryUsage().heapUsed - mem.heapUsed) / 1024 / 1204) * 10) / 10\n : 0\n const path = basename(sourcePath)\n .replace(/\\.[jt]sx?$/, '')\n .slice(0, 22)\n .trim()\n .padStart(24)\n\n const numStyled = `${res.styled}`.padStart(3)\n const numOptimized = `${res.optimized}`.padStart(3)\n const numFound = `${res.found}`.padStart(3)\n const numFlattened = `${res.flattened}`.padStart(3)\n const memory = process.env.DEBUG && memUsed > 10 ? ` ${memUsed}MB` : ''\n const timing = Date.now() - start\n const timingStr = `${timing}ms`.padStart(6)\n const pre = getPrefixLogs(options)\n const memStr = memory ? `(${memory})` : ''\n // eslint-disable-next-line no-console\n console.log(\n `${pre} ${path} ${numFound} \u00B7 ${numOptimized} \u00B7 ${numFlattened} \u00B7 ${numStyled} ${timingStr} ${memStr}`\n )\n }\n\n return {\n ast,\n styles,\n js: result.code,\n map: result.map,\n }\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,WAAsB;AACtB,kBAAyB;AACzB,WAAsB;AAEtB,uBAAqB;AACrB,QAAmB;AACnB,uBAAgC;AAChC,qBAAgC;AAChC,uBAAsB;AAItB,wBAA2B;AAC3B,4BAA+B;AAE/B,mCAAsC;AACtC,4BAA+B;AAC/B,+BAAkC;AAClC,2BAA8B;AAC9B,6BAAgC;AAChC,sBAAyB;AACzB,mBAAsB;AAEtB,MAAM,mBAAmB;AAAA,EACvB,eAAe;AAAA,EACf,cAAc;AAAA,EACd,aAAa;AAAA,EACb,cAAc;AAChB;AAkBA,eAAsB,oBAAoB;AAAA,EACxC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAAgE;AAC9D,QAAM,SAAK,oBAAM;AAEjB,MAAI,OAAO,WAAW,UAAU;AAC9B,UAAM,IAAI,MAAM,yCAAyC;AAAA,EAC3D;AACA,uBAAAA;AAAA,IACE,OAAO,eAAe,YAAY,KAAK,WAAW,UAAU;AAAA,IAC5D;AAAA,EACF;AAGA,QAAM,UAAU,YAAY,OAAO;AAEnC,QAAM,kBAAkB,QAAQ,cAAc;AAC9C,QAAM,QAAQ,KAAK,IAAI;AACvB,QAAM,MAAM,kBAAkB,QAAQ,YAAY,IAAI;AAGtD,MAAI;AAEJ,MAAI;AACF,cAAM,8BAAW,MAAM;AAAA,EACzB,SAAS,KAAP;AAEA,YAAQ,MAAM,sBAAsB,UAAU;AAC9C,UAAM;AAAA,EACR;AAEA,KAAG,KAAK,eAAe,qBAAqB,SAAS;AAErD,QAAM,SAAS,oBAAI,IAAqD;AACxE,QAAM,iBAAkD,CAAC;AAEzD,MAAI,eAAe;AAEnB,QAAM,MAAM,MAAM,UAAU,MAAM,KAAK;AAAA,IACrC;AAAA,IACA,GAAG;AAAA,IACH;AAAA,IACA,QAAQ;AAAA,IACR,0BAA0B;AAAA,IAC1B,YAAY,YAAY,OAAO;AAC7B,aAAO,IAAI,IAAI,cAAc,EAAE,KAAK,MAAM,KAAK,GAAG,GAAG,cAAc,CAAC,EAAE,CAAC;AAAA,IACzE;AAAA,IACA,kBAAkB,CAAC,EAAE,IAAI,MAAM;AAC7B,qBAAe;AACf,aAAO;AAAA,IACT;AAAA,IACA,cAAc,CAAC;AAAA,MACb;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF,MAAM;AAlHV;AAoHM,UAAI,aAAa,qBAAqB,OAAO;AAC3C,YAAI,kBAAkB;AAEpB,kBAAQ,IAAI,iCAAiC;AAAA,QAC/C;AACA;AAAA,MACF;AAGA,YAAM,oBAAoB;AAC1B,qBAAe;AAEf,UAAI,kBAAqC,CAAC;AAC1C,YAAM,aAAwD,CAAC;AAC/D,UAAI,cAA6B,CAAC;AAElC,UAAI,aAAa,CAAC;AAClB,iBAAW,QAAQ,OAAO;AACxB,YAAI,KAAK,SAAS,SAAS;AACzB,uBAAa;AAAA,YACX,GAAG;AAAA,YACH,GAAG,KAAK;AAAA,UACV;AAAA,QACF;AAAA,MACF;AAEA,YAAM,wBAAwB,CAAC,UAAqB;AAElD,cAAM,OAAO,OAAO,KAAK,KAAK;AAC9B,YAAI,CAAC,KAAK,KAAK,CAAC,QAAQ,iBAAiB,IAAI,GAAG;AAC9C,iBAAO;AAAA,QACT;AACA,mBAAW,KAAK,kBAAkB;AAChC,cAAI,KAAK,YAAY;AACnB,kBAAM,KAAK,MAAM,MAAM,WAAW;AAAA,UACpC;AAAA,QACF;AACA,eAAO;AAAA,MACT;AAEA,YAAM,YAAY,CAAC,UAA2C;AAC5D,YAAI,CAAC;AAAO,iBAAO,CAAC;AACpB,cAAM,gBAAgB,sBAAsB,KAAK;AACjD,cAAMC,WAAM,kCAAgB,aAAa;AACzC,YAAIA,KAAI,QAAQ;AACd,wBAAc,CAAC,GAAG,aAAa,GAAGA,IAAG;AAAA,QACvC;AACA,eAAOA;AAAA,MACT;AAGA,UAAI,sBAAsB;AAC1B,iBAAW,QAAQ,OAAO;AACxB,gBAAQ,KAAK;AAAA,eACN,SAAS;AACZ,gBAAI,CAAC,aAAa;AAChB,oBAAMC,cAAS,kCAAgB,KAAK,KAAK;AAEzC,4BAAc,CAAC,GAAG,aAAa,GAAGA,OAAM;AAExC,yBAAW,SAASA,SAAQ;AAE1B,sBAAM,OAAO,MAAM,SAAS,GAAG,MAAM,YAAY,MAAM,WAAW,MAAM;AACxE,2BAAW;AAAA,kBACT,EAAE,aAAa,EAAE,cAAc,IAAI,GAAG,EAAE,cAAc,MAAM,UAAU,CAAC;AAAA,gBACzE;AAAA,cACF;AAAA,YACF,OAAO;AACL,oBAAMA,UAAS,UAAU,KAAK,KAAK;AACnC,oBAAM,oBAAgB,gCAAgBA,QAAO,IAAI,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,GAAG,CAAC;AAC/E,oBAAM,WAAW,gBAAgB;AAAA,gBAC/B,CAAC,MAAM,EAAE,QAAQ;AAAA,cACnB;AAEA,kBAAI,UAAU;AACZ,yBAAS,QAAQ,GAAG,SAAS,SAAS;AAAA,cACxC,OAAO;AACL,kCAAkB,CAAC,GAAG,iBAAiB,EAAE,cAAc,aAAa,CAAC;AAAA,cACvE;AAAA,YACF;AAEA;AAAA,UACF;AAAA,eACK,QAAQ;AACX,kBAAM,MAAM,KAAK;AACjB,gBAAI,EAAE,qBAAqB,GAAG,GAAG;AAC/B,sBAAI,sCAAe,GAAG,GAAG;AACvB,gCAAgB;AAAA,kBACd,EAAE;AAAA,oBACA;AAAA,oBACA,IAAI;AAAA,oBACJ,EAAE,iBAAiB,IAAI,UAAU,EAAE,WAAW,WAAW,CAAC;AAAA,kBAC5D;AAAA,gBACF;AAAA,cACF;AAAA,YACF,WAAW,IAAI,KAAK,SAAS,aAAa;AACxC,oBAAM,QAAQ,IAAI;AAClB,kBAAI,OAAO;AACT,oBAAI;AACF,wBAAM,iBAAiB,YAAY,KAAK;AACxC,kCAAgB,KAAK,EAAE,cAAc,cAAc,CAAC;AAAA,gBACtD,SAAS,GAAP;AACA,kCAAgB,KAAK,MAAM,aAAa;AAAA,gBAC1C;AAAA,cACF;AACA;AAAA,YACF;AACA,uBAAW,KAAK,GAAG;AACnB;AAAA,UACF;AAAA,eACK,WAAW;AACd,kBAAM,sBAAkB;AAAA,cACtB;AAAA,cACA,KAAK;AAAA,cACL;AAAA,cACA,UAAU,WAAW;AAAA,cACrB;AAAA,cACA;AAAA,cACA;AAAA,YACF;AACA,gBAAI,kBAAkB;AACpB,kBAAI,iBAAiB;AAEnB,wBAAQ;AAAA,kBACN;AAAA,oBACA,qBAAgB,wBAAhB,mBAAqC,qBAAoB;AAAA,kBACzD,gBAAgB,YAAY,IAAI,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,GAAG;AAAA,gBAC/D;AAAA,cACF;AAAA,YACF;AACA,gBAAI,CAAC,iBAAiB;AACpB;AAAA,gBACE,KAAK;AAAA,gBACL,UAAU,KAAK,MAAM,UAAU;AAAA,gBAC/B,UAAU,KAAK,MAAM,SAAS;AAAA,cAChC;AACA;AAAA,YACF;AACA;AACA,gBAAI,gBAAgB,aAAa;AAC/B,4BAAc,CAAC,GAAG,aAAa,GAAG,gBAAgB,WAAW;AAAA,YAC/D;AACA,gBAAI,gBAAgB,qBAAqB;AACvC,8BAAgB,gBAAgB,qBAAqB,gBAAgB,aAAa,CAAC,CAAC;AAAA,YACtF,OAAO;AACL,gCAAkB;AAAA,gBAChB,GAAG;AAAA,gBACH,GAAG,gBAAgB,YAAY,IAAI,CAAC,MAAM,EAAE,cAAc,EAAE,UAAU,CAAC;AAAA,cACzE;AAAA,YACF;AACA;AAAA,UACF;AAAA;AAAA,MAEJ;AAEA,eAAS,gBAAgB,SAAkB,GAAQ,GAAQ;AACzD,cAAM,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,GAAG;AAC/C,cAAM,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,GAAG;AAC/C,YAAI,EAAE,UAAU,EAAE,QAAQ;AACxB,0BAAgB;AAAA,YACd,EAAE,sBAAsB,QAAQ,MAAM,EAAE,cAAc,GAAG,GAAG,EAAE,cAAc,GAAG,CAAC;AAAA,UAClF;AAAA,QACF,OAAO;AACL,0BAAgB;AAAA,YACd,EAAE;AAAA,cACA,QAAQ;AAAA,cACR,EAAE,cAAc,MAAM,GAAG;AAAA,cACzB,EAAE,cAAc,MAAM,GAAG;AAAA,YAC3B;AAAA,UACF;AAAA,QACF;AAAA,MACF;AAEA,UAAI,kBAAkB;AAEpB,gBAAQ;AAAA,UACN;AAAA,cACA,0BAAS,gBAAgB,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,GAAG,CAAC;AAAA,QAC3D;AAAA,MACF;AAEA,WAAK,aAAa;AAElB,UAAI,gBAAgB,QAAQ;AAC1B,cAAM,mBAAmB,MAAM;AAC7B,cAAI,QAAQ;AACZ,cAAI,CAAC,aAAa;AAChB,mBAAO;AAAA,UACT;AAGA,cAAI,QAAQ,IAAI,6BAA6B;AAC3C,qBAAS;AAAA,UACX;AAGA,cAAI,aAAa,eAAe;AAC9B,qBAAS,OAAO,aAAa;AAAA,UAC/B;AAEA,cAAI,aAAa,QAAQ;AACvB,gBAAI,SAAS,cAAc;AAC3B,gBAAI,OAAO,OAAO,KAAK;AACrB,uBAAS,OAAO,MAAM,CAAC;AAAA,YACzB;AACA,qBAAS,SAAS;AAAA,UACpB;AAEA,iBAAO;AAAA,QACT,GAAG;AAGH,cAAM,YAAQ,sCAAe,iBAAiB,eAAe;AAE7D,cAAM,WAAW,YAAQ,wCAAgB,SAAS,gBAAgB,KAAK,IAAI;AAC3E,YAAI,OAAO;AAGX,YAAI,YAAY,CAAC,EAAE,aAAa,QAAQ,GAAG;AACzC,cAAI,CAAC,mBAAmB;AAAA,UAExB,OAAO;AACL,oEAAsB,WAAW;AACjC,kBAAM,gBAAgB,MAAM;AAAA,cAC1B,CAAC,MAAM,EAAE,qBAAqB,EAAE,KAAK,SAAK,sCAAe,EAAE,KAAK;AAAA,YAClE;AACA,mBAAO,EAAE,eAAe,EAAE,WAAW,iBAAiB,GAAG;AAAA,cACvD;AAAA,cACA,GAAG,cAAc,IAAI,CAAC,QAAQ,IAAI,MAAM,WAAW;AAAA,YACrD,CAAC;AAAA,UACH;AAAA,QACF;AAEA,aAAK,WAAW;AAAA,UACd,EAAE,aAAa,EAAE,cAAc,WAAW,GAAG,EAAE,uBAAuB,IAAI,CAAC;AAAA,QAC7E;AAAA,MACF;AAEA,YAAM,UAAU,KAAK,OAAO,oBAAoB,UAAU,aAAa,gBAAgB;AAEvF,iBAAW,EAAE,YAAY,MAAM,KAAK,aAAa;AAC/C,cAAM,YAAY,IAAI;AACtB,YAAI,OAAO,IAAI,SAAS,GAAG;AACzB,cAAI,SAAS;AACX,kBAAM,MAAM,OAAO,IAAI,SAAS;AAChC,gBAAI,aAAa,KAAK,OAAO;AAC7B,mBAAO,IAAI,WAAW,GAAG;AAAA,UAC3B;AAAA,QACF,WAAW,MAAM,QAAQ;AACvB,iBAAO,IAAI,WAAW;AAAA,YACpB,KAAK,MAAM,KAAK,IAAI;AAAA,YACpB,cAAc,CAAC,OAAO;AAAA,UACxB,CAAC;AAAA,QACH;AAAA,MACF;AAAA,IACF;AAAA,EACF,CAAC;AAED,MAAI,CAAC,OAAQ,CAAC,IAAI,YAAY,CAAC,IAAI,aAAa,CAAC,IAAI,aAAa,CAAC,IAAI,QAAS;AAC9E,QAAI,kBAAkB;AAEpB,cAAQ,IAAI,2BAA2B,GAAG;AAAA,IAC5C;AACA,WAAO;AAAA,EACT;AAEA,QAAM,SAAS,MAAM,KAAK,OAAO,OAAO,CAAC,EACtC,IAAI,CAAC,MAAM,EAAE,GAAG,EAChB,KAAK,IAAI,EACT,KAAK;AAER,QAAM,aAAS,iBAAAC;AAAA,IACb;AAAA,IACA;AAAA,MACE,SAAS;AAAA,MACT,UAAU;AAAA,MAEV,aAAa;AAAA,MACb,gBAAgB;AAAA,MAChB,YAAY;AAAA,IACd;AAAA,IACA;AAAA,EACF;AAEA,MAAI,kBAAkB;AAEpB,YAAQ;AAAA,MACN;AAAA,MACA,OAAO,KACJ,MAAM,IAAI,EACV,OAAO,CAAC,MAAM,CAAC,EAAE,WAAW,IAAI,CAAC,EACjC,KAAK,IAAI;AAAA,IACd;AAEA,YAAQ,IAAI,0CAA0C,MAAM;AAAA,EAC9D;AAEA,MAAI,iBAAiB;AACnB,UAAM,UAAU,MACZ,KAAK,OAAQ,QAAQ,YAAY,EAAE,WAAW,IAAI,YAAY,OAAO,OAAQ,EAAE,IAAI,KACnF;AACJ,UAAMC,YAAO,sBAAS,UAAU,EAC7B,QAAQ,cAAc,EAAE,EACxB,MAAM,GAAG,EAAE,EACX,KAAK,EACL,SAAS,EAAE;AAEd,UAAM,YAAY,GAAG,IAAI,SAAS,SAAS,CAAC;AAC5C,UAAM,eAAe,GAAG,IAAI,YAAY,SAAS,CAAC;AAClD,UAAM,WAAW,GAAG,IAAI,QAAQ,SAAS,CAAC;AAC1C,UAAM,eAAe,GAAG,IAAI,YAAY,SAAS,CAAC;AAClD,UAAM,SAAS,QAAQ,IAAI,SAAS,UAAU,KAAK,IAAI,cAAc;AACrE,UAAM,SAAS,KAAK,IAAI,IAAI;AAC5B,UAAM,YAAY,GAAG,WAAW,SAAS,CAAC;AAC1C,UAAM,UAAM,oCAAc,OAAO;AACjC,UAAM,SAAS,SAAS,IAAI,YAAY;AAExC,YAAQ;AAAA,MACN,GAAG,OAAOA,UAAS,iBAAc,qBAAkB,qBAAkB,cAAc,aAAa;AAAA,IAClG;AAAA,EACF;AAEA,SAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA,IAAI,OAAO;AAAA,IACX,KAAK,OAAO;AAAA,EACd;AACF;",
6
+ "names": ["invariant", "res", "styles", "generate", "path"]
7
+ }
@@ -1,8 +1,8 @@
1
+ "use strict";
1
2
  var __defProp = Object.defineProperty;
2
3
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
4
  var __getOwnPropNames = Object.getOwnPropertyNames;
4
5
  var __hasOwnProp = Object.prototype.hasOwnProperty;
5
- var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
6
6
  var __export = (target, all) => {
7
7
  for (var name in all)
8
8
  __defProp(target, name, { get: all[name], enumerable: true });
@@ -22,7 +22,7 @@ __export(findTopmostFunction_exports, {
22
22
  });
23
23
  module.exports = __toCommonJS(findTopmostFunction_exports);
24
24
  function findTopmostFunction(jsxPath) {
25
- const isFunction = /* @__PURE__ */ __name((path) => path.isArrowFunctionExpression() || path.isFunctionDeclaration() || path.isFunctionExpression(), "isFunction");
25
+ const isFunction = (path) => path.isArrowFunctionExpression() || path.isFunctionDeclaration() || path.isFunctionExpression();
26
26
  let compFn = jsxPath.findParent(isFunction);
27
27
  while (compFn) {
28
28
  const parent = compFn.findParent(isFunction);
@@ -37,7 +37,6 @@ function findTopmostFunction(jsxPath) {
37
37
  }
38
38
  return compFn;
39
39
  }
40
- __name(findTopmostFunction, "findTopmostFunction");
41
40
  // Annotate the CommonJS export names for ESM import in node:
42
41
  0 && (module.exports = {
43
42
  findTopmostFunction
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../../src/extractor/findTopmostFunction.ts"],
3
+ "sources": ["../../src/extractor/findTopmostFunction.ts"],
4
4
  "sourcesContent": ["import { NodePath } from '@babel/traverse'\nimport * as t from '@babel/types'\n\nexport function findTopmostFunction(jsxPath: NodePath<t.JSXElement>) {\n // get topmost fn\n const isFunction = (path: NodePath<any>) =>\n path.isArrowFunctionExpression() || path.isFunctionDeclaration() || path.isFunctionExpression()\n let compFn: NodePath<any> | null = jsxPath.findParent(isFunction)\n while (compFn) {\n const parent = compFn.findParent(isFunction)\n if (parent) {\n compFn = parent\n } else {\n break\n }\n }\n if (!compFn) {\n // console.error(`Couldn't find a topmost function for media query extraction`)\n return null\n }\n return compFn\n}\n"],
5
- "mappings": ";;AAGO,6BAA6B,SAAiC;AAEnE,QAAM,aAAa,wBAAC,SAClB,KAAK,0BAA0B,KAAK,KAAK,sBAAsB,KAAK,KAAK,qBAAqB,GAD7E;AAEnB,MAAI,SAA+B,QAAQ,WAAW,UAAU;AAChE,SAAO,QAAQ;AACb,UAAM,SAAS,OAAO,WAAW,UAAU;AAC3C,QAAI,QAAQ;AACV,eAAS;AAAA,IACX,OAAO;AACL;AAAA,IACF;AAAA,EACF;AACA,MAAI,CAAC,QAAQ;AAEX,WAAO;AAAA,EACT;AACA,SAAO;AACT;AAlBgB;",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAGO,SAAS,oBAAoB,SAAiC;AAEnE,QAAM,aAAa,CAAC,SAClB,KAAK,0BAA0B,KAAK,KAAK,sBAAsB,KAAK,KAAK,qBAAqB;AAChG,MAAI,SAA+B,QAAQ,WAAW,UAAU;AAChE,SAAO,QAAQ;AACb,UAAM,SAAS,OAAO,WAAW,UAAU;AAC3C,QAAI,QAAQ;AACV,eAAS;AAAA,IACX,OAAO;AACL;AAAA,IACF;AAAA,EACF;AACA,MAAI,CAAC,QAAQ;AAEX,WAAO;AAAA,EACT;AACA,SAAO;AACT;",
6
6
  "names": []
7
7
  }
@@ -1,10 +1,10 @@
1
+ "use strict";
1
2
  var __create = Object.create;
2
3
  var __defProp = Object.defineProperty;
3
4
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
5
  var __getOwnPropNames = Object.getOwnPropertyNames;
5
6
  var __getProtoOf = Object.getPrototypeOf;
6
7
  var __hasOwnProp = Object.prototype.hasOwnProperty;
7
- var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
8
8
  var __export = (target, all) => {
9
9
  for (var name in all)
10
10
  __defProp(target, name, { get: all[name], enumerable: true });
@@ -17,7 +17,10 @@ var __copyProps = (to, from, except, desc) => {
17
17
  }
18
18
  return to;
19
19
  };
20
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, mod));
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
22
+ mod
23
+ ));
21
24
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
22
25
  var generatedUid_exports = {};
23
26
  __export(generatedUid_exports, {
@@ -28,7 +31,10 @@ var t = __toESM(require("@babel/types"));
28
31
  var import_invariant = __toESM(require("invariant"));
29
32
  function generateUid(scope, name) {
30
33
  (0, import_invariant.default)(typeof scope === "object", "generateUid expects a scope object as its first parameter");
31
- (0, import_invariant.default)(typeof name === "string" && name !== "", "generateUid expects a valid name as its second parameter");
34
+ (0, import_invariant.default)(
35
+ typeof name === "string" && name !== "",
36
+ "generateUid expects a valid name as its second parameter"
37
+ );
32
38
  name = t.toIdentifier(name).replace(/^_+/, "").replace(/[0-9]+$/g, "");
33
39
  let uid;
34
40
  let i = 0;
@@ -45,7 +51,6 @@ function generateUid(scope, name) {
45
51
  program.uids[uid] = true;
46
52
  return uid;
47
53
  }
48
- __name(generateUid, "generateUid");
49
54
  // Annotate the CommonJS export names for ESM import in node:
50
55
  0 && (module.exports = {
51
56
  generateUid
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../../src/extractor/generatedUid.ts"],
3
+ "sources": ["../../src/extractor/generatedUid.ts"],
4
4
  "sourcesContent": ["import * as t from '@babel/types'\nimport invariant from 'invariant'\n\n// TODO: open a PR upstream\ndeclare module '@babel/types' {\n export function toIdentifier(input: string): string\n}\n\n// A clone of path.scope.generateUid that doesn't prepend underscores\nexport function generateUid(scope: any, name: string): string {\n invariant(typeof scope === 'object', 'generateUid expects a scope object as its first parameter')\n invariant(\n typeof name === 'string' && name !== '',\n 'generateUid expects a valid name as its second parameter'\n )\n\n name = t\n .toIdentifier(name)\n .replace(/^_+/, '')\n .replace(/[0-9]+$/g, '')\n\n let uid\n let i = 0\n do {\n if (i > 1) {\n uid = name + i\n } else {\n uid = name\n }\n i++\n } while (\n scope.hasLabel(uid) ||\n scope.hasBinding(uid) ||\n scope.hasGlobal(uid) ||\n scope.hasReference(uid)\n )\n\n const program = scope.getProgramParent()\n program.references[uid] = true\n program.uids[uid] = true\n\n return uid\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,QAAmB;AACnB,uBAAsB;AAQf,qBAAqB,OAAY,MAAsB;AAC5D,gCAAU,OAAO,UAAU,UAAU,2DAA2D;AAChG,gCACE,OAAO,SAAS,YAAY,SAAS,IACrC,0DACF;AAEA,SAAO,EACJ,aAAa,IAAI,EACjB,QAAQ,OAAO,EAAE,EACjB,QAAQ,YAAY,EAAE;AAEzB,MAAI;AACJ,MAAI,IAAI;AACR,KAAG;AACD,QAAI,IAAI,GAAG;AACT,YAAM,OAAO;AAAA,IACf,OAAO;AACL,YAAM;AAAA,IACR;AACA;AAAA,EACF,SACE,MAAM,SAAS,GAAG,KAClB,MAAM,WAAW,GAAG,KACpB,MAAM,UAAU,GAAG,KACnB,MAAM,aAAa,GAAG;AAGxB,QAAM,UAAU,MAAM,iBAAiB;AACvC,UAAQ,WAAW,OAAO;AAC1B,UAAQ,KAAK,OAAO;AAEpB,SAAO;AACT;AAjCgB;",
6
- "names": []
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,QAAmB;AACnB,uBAAsB;AAQf,SAAS,YAAY,OAAY,MAAsB;AAC5D,uBAAAA,SAAU,OAAO,UAAU,UAAU,2DAA2D;AAChG,uBAAAA;AAAA,IACE,OAAO,SAAS,YAAY,SAAS;AAAA,IACrC;AAAA,EACF;AAEA,SAAO,EACJ,aAAa,IAAI,EACjB,QAAQ,OAAO,EAAE,EACjB,QAAQ,YAAY,EAAE;AAEzB,MAAI;AACJ,MAAI,IAAI;AACR,KAAG;AACD,QAAI,IAAI,GAAG;AACT,YAAM,OAAO;AAAA,IACf,OAAO;AACL,YAAM;AAAA,IACR;AACA;AAAA,EACF,SACE,MAAM,SAAS,GAAG,KAClB,MAAM,WAAW,GAAG,KACpB,MAAM,UAAU,GAAG,KACnB,MAAM,aAAa,GAAG;AAGxB,QAAM,UAAU,MAAM,iBAAiB;AACvC,UAAQ,WAAW,OAAO;AAC1B,UAAQ,KAAK,OAAO;AAEpB,SAAO;AACT;",
6
+ "names": ["invariant"]
7
7
  }
@@ -1,8 +1,8 @@
1
+ "use strict";
1
2
  var __defProp = Object.defineProperty;
2
3
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
4
  var __getOwnPropNames = Object.getOwnPropertyNames;
4
5
  var __hasOwnProp = Object.prototype.hasOwnProperty;
5
- var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
6
6
  var __export = (target, all) => {
7
7
  for (var name in all)
8
8
  __defProp(target, name, { get: all[name], enumerable: true });
@@ -25,7 +25,6 @@ function getPrefixLogs(options) {
25
25
  const { TAMAGUI_TARGET } = process.env;
26
26
  return (options == null ? void 0 : options.prefixLogs) ?? ` ${TAMAGUI_TARGET} | `;
27
27
  }
28
- __name(getPrefixLogs, "getPrefixLogs");
29
28
  // Annotate the CommonJS export names for ESM import in node:
30
29
  0 && (module.exports = {
31
30
  getPrefixLogs
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/extractor/getPrefixLogs.ts"],
4
+ "sourcesContent": ["import { TamaguiOptions } from '../types.js'\n\nexport function getPrefixLogs(options?: TamaguiOptions) {\n const { TAMAGUI_TARGET } = process.env\n return options?.prefixLogs ?? ` ${TAMAGUI_TARGET} | `\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEO,SAAS,cAAc,SAA0B;AACtD,QAAM,EAAE,eAAe,IAAI,QAAQ;AACnC,UAAO,mCAAS,eAAc,IAAI;AACpC;",
6
+ "names": []
7
+ }