@tamagui/static 1.0.0-alpha.10 → 1.0.0-alpha.14

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 (184) hide show
  1. package/dist/cjs/constants.js +33 -0
  2. package/dist/cjs/constants.js.map +7 -0
  3. package/dist/cjs/extractor/accessSafe.js +33 -0
  4. package/dist/cjs/extractor/accessSafe.js.map +7 -0
  5. package/dist/cjs/extractor/babelParse.js +52 -0
  6. package/dist/cjs/extractor/babelParse.js.map +7 -0
  7. package/dist/cjs/extractor/buildClassName.js +62 -0
  8. package/dist/cjs/extractor/buildClassName.js.map +7 -0
  9. package/dist/cjs/extractor/createEvaluator.js +73 -0
  10. package/dist/cjs/extractor/createEvaluator.js.map +7 -0
  11. package/dist/cjs/extractor/createExtractor.js +903 -0
  12. package/dist/cjs/extractor/createExtractor.js.map +7 -0
  13. package/dist/cjs/extractor/ensureImportingConcat.js +46 -0
  14. package/dist/cjs/extractor/ensureImportingConcat.js.map +7 -0
  15. package/dist/cjs/extractor/evaluateAstNode.js +116 -0
  16. package/dist/cjs/extractor/evaluateAstNode.js.map +7 -0
  17. package/dist/cjs/extractor/extractHelpers.js +118 -0
  18. package/dist/cjs/extractor/extractHelpers.js.map +7 -0
  19. package/dist/cjs/extractor/extractMediaStyle.js +187 -0
  20. package/dist/cjs/extractor/extractMediaStyle.js.map +7 -0
  21. package/dist/cjs/extractor/extractToClassNames.js +279 -0
  22. package/dist/cjs/extractor/extractToClassNames.js.map +7 -0
  23. package/dist/cjs/extractor/findTopmostFunction.js +29 -0
  24. package/dist/cjs/extractor/findTopmostFunction.js.map +7 -0
  25. package/dist/cjs/extractor/generatedUid.js +50 -0
  26. package/dist/cjs/extractor/generatedUid.js.map +7 -0
  27. package/dist/cjs/extractor/getPropValueFromAttributes.js +71 -0
  28. package/dist/cjs/extractor/getPropValueFromAttributes.js.map +7 -0
  29. package/dist/cjs/extractor/getSourceModule.js +91 -0
  30. package/dist/cjs/extractor/getSourceModule.js.map +7 -0
  31. package/dist/cjs/extractor/getStaticBindingsForScope.js +150 -0
  32. package/dist/cjs/extractor/getStaticBindingsForScope.js.map +7 -0
  33. package/dist/cjs/extractor/hoistClassNames.js +66 -0
  34. package/dist/cjs/extractor/hoistClassNames.js.map +7 -0
  35. package/dist/cjs/extractor/literalToAst.js +56 -0
  36. package/dist/cjs/extractor/literalToAst.js.map +7 -0
  37. package/dist/cjs/extractor/loadTamagui.js +63 -0
  38. package/dist/cjs/extractor/loadTamagui.js.map +7 -0
  39. package/dist/cjs/extractor/logLines.js +23 -0
  40. package/dist/cjs/extractor/logLines.js.map +7 -0
  41. package/dist/cjs/extractor/normalizeTernaries.js +102 -0
  42. package/dist/cjs/extractor/normalizeTernaries.js.map +7 -0
  43. package/dist/cjs/extractor/removeUnusedHooks.js +101 -0
  44. package/dist/cjs/extractor/removeUnusedHooks.js.map +7 -0
  45. package/dist/cjs/index.js +37 -0
  46. package/dist/cjs/index.js.map +7 -0
  47. package/dist/cjs/patchReactNativeWeb.js +129 -0
  48. package/dist/cjs/patchReactNativeWeb.js.map +7 -0
  49. package/dist/cjs/types.js +4 -0
  50. package/dist/cjs/types.js.map +7 -0
  51. package/dist/{constants.js → esm/constants.js} +0 -0
  52. package/dist/{constants.js.map → esm/constants.js.map} +1 -1
  53. package/dist/{extractor → esm/extractor}/accessSafe.js +0 -0
  54. package/dist/{extractor → esm/extractor}/accessSafe.js.map +1 -1
  55. package/dist/{extractor → esm/extractor}/babelParse.js +0 -0
  56. package/dist/{extractor → esm/extractor}/babelParse.js.map +1 -1
  57. package/dist/{extractor → esm/extractor}/buildClassName.js +0 -0
  58. package/dist/{extractor → esm/extractor}/buildClassName.js.map +1 -1
  59. package/dist/{extractor → esm/extractor}/createEvaluator.js +0 -0
  60. package/dist/{extractor → esm/extractor}/createEvaluator.js.map +1 -1
  61. package/dist/{extractor → esm/extractor}/createExtractor.js +12 -0
  62. package/dist/esm/extractor/createExtractor.js.map +7 -0
  63. package/dist/{extractor → esm/extractor}/ensureImportingConcat.js +0 -0
  64. package/dist/{extractor → esm/extractor}/ensureImportingConcat.js.map +1 -1
  65. package/dist/{extractor → esm/extractor}/evaluateAstNode.js +0 -0
  66. package/dist/{extractor → esm/extractor}/evaluateAstNode.js.map +1 -1
  67. package/dist/{extractor → esm/extractor}/extractHelpers.js +0 -0
  68. package/dist/{extractor → esm/extractor}/extractHelpers.js.map +1 -1
  69. package/dist/{extractor → esm/extractor}/extractMediaStyle.js +0 -0
  70. package/dist/{extractor → esm/extractor}/extractMediaStyle.js.map +1 -1
  71. package/dist/{extractor → esm/extractor}/extractToClassNames.js +12 -5
  72. package/dist/esm/extractor/extractToClassNames.js.map +7 -0
  73. package/dist/{extractor → esm/extractor}/findTopmostFunction.js +0 -0
  74. package/dist/{extractor → esm/extractor}/findTopmostFunction.js.map +1 -1
  75. package/dist/{extractor → esm/extractor}/generatedUid.js +0 -0
  76. package/dist/{extractor → esm/extractor}/generatedUid.js.map +1 -1
  77. package/dist/{extractor → esm/extractor}/getPropValueFromAttributes.js +0 -0
  78. package/dist/{extractor → esm/extractor}/getPropValueFromAttributes.js.map +1 -1
  79. package/dist/{extractor → esm/extractor}/getSourceModule.js +0 -0
  80. package/dist/{extractor → esm/extractor}/getSourceModule.js.map +1 -1
  81. package/dist/{extractor → esm/extractor}/getStaticBindingsForScope.js +0 -0
  82. package/dist/{extractor → esm/extractor}/getStaticBindingsForScope.js.map +1 -1
  83. package/dist/{extractor → esm/extractor}/hoistClassNames.js +0 -0
  84. package/dist/{extractor → esm/extractor}/hoistClassNames.js.map +1 -1
  85. package/dist/{extractor → esm/extractor}/literalToAst.js +0 -0
  86. package/dist/{extractor → esm/extractor}/literalToAst.js.map +1 -1
  87. package/dist/{extractor → esm/extractor}/loadTamagui.js +0 -0
  88. package/dist/{extractor → esm/extractor}/loadTamagui.js.map +1 -1
  89. package/dist/{extractor → esm/extractor}/logLines.js +0 -0
  90. package/dist/{extractor → esm/extractor}/logLines.js.map +1 -1
  91. package/dist/{extractor → esm/extractor}/normalizeTernaries.js +0 -0
  92. package/dist/{extractor → esm/extractor}/normalizeTernaries.js.map +1 -1
  93. package/dist/{extractor → esm/extractor}/removeUnusedHooks.js +0 -0
  94. package/dist/{extractor → esm/extractor}/removeUnusedHooks.js.map +1 -1
  95. package/dist/{index.js → esm/index.js} +0 -0
  96. package/dist/{index.js.map → esm/index.js.map} +1 -1
  97. package/dist/{patchReactNativeWeb.js → esm/patchReactNativeWeb.js} +0 -0
  98. package/dist/{patchReactNativeWeb.js.map → esm/patchReactNativeWeb.js.map} +1 -1
  99. package/dist/{types.js → esm/types.js} +0 -0
  100. package/dist/{types.js.map → esm/types.js.map} +0 -0
  101. package/dist/jsx/constants.js +9 -0
  102. package/dist/jsx/extractor/accessSafe.js +10 -0
  103. package/dist/jsx/extractor/babelParse.js +29 -0
  104. package/dist/jsx/extractor/buildClassName.js +39 -0
  105. package/dist/jsx/extractor/createEvaluator.js +50 -0
  106. package/dist/jsx/extractor/createExtractor.js +839 -0
  107. package/dist/jsx/extractor/ensureImportingConcat.js +23 -0
  108. package/dist/jsx/extractor/evaluateAstNode.js +93 -0
  109. package/dist/jsx/extractor/extractHelpers.js +93 -0
  110. package/dist/jsx/extractor/extractMediaStyle.js +150 -0
  111. package/dist/jsx/extractor/extractToClassNames.js +239 -0
  112. package/dist/jsx/extractor/findTopmostFunction.js +22 -0
  113. package/dist/jsx/extractor/generatedUid.js +27 -0
  114. package/dist/jsx/extractor/getPropValueFromAttributes.js +48 -0
  115. package/dist/jsx/extractor/getSourceModule.js +68 -0
  116. package/dist/jsx/extractor/getStaticBindingsForScope.js +127 -0
  117. package/dist/jsx/extractor/hoistClassNames.js +43 -0
  118. package/dist/jsx/extractor/literalToAst.js +33 -0
  119. package/dist/jsx/extractor/loadTamagui.js +40 -0
  120. package/dist/jsx/extractor/logLines.js +16 -0
  121. package/dist/jsx/extractor/normalizeTernaries.js +51 -0
  122. package/dist/jsx/extractor/removeUnusedHooks.js +77 -0
  123. package/dist/jsx/index.js +13 -0
  124. package/dist/jsx/patchReactNativeWeb.js +106 -0
  125. package/dist/jsx/types.js +0 -0
  126. package/package.json +14 -13
  127. package/src/extractor/createExtractor.ts +14 -0
  128. package/src/extractor/extractToClassNames.ts +16 -8
  129. package/src/types.ts +1 -0
  130. package/types/constants.d.ts +4 -0
  131. package/types/constants.d.ts.map +1 -0
  132. package/types/extractor/accessSafe.d.ts +3 -0
  133. package/types/extractor/accessSafe.d.ts.map +1 -0
  134. package/types/extractor/babelParse.d.ts +5 -0
  135. package/types/extractor/babelParse.d.ts.map +1 -0
  136. package/types/extractor/buildClassName.d.ts +4 -0
  137. package/types/extractor/buildClassName.d.ts.map +1 -0
  138. package/types/extractor/createEvaluator.d.ts +12 -0
  139. package/types/extractor/createEvaluator.d.ts.map +1 -0
  140. package/types/extractor/createExtractor.d.ts +14 -0
  141. package/types/extractor/createExtractor.d.ts.map +1 -0
  142. package/types/extractor/ensureImportingConcat.d.ts +4 -0
  143. package/types/extractor/ensureImportingConcat.d.ts.map +1 -0
  144. package/types/extractor/evaluateAstNode.d.ts +3 -0
  145. package/types/extractor/evaluateAstNode.d.ts.map +1 -0
  146. package/types/extractor/extractHelpers.d.ts +12 -0
  147. package/types/extractor/extractHelpers.d.ts.map +1 -0
  148. package/types/extractor/extractMediaStyle.d.ts +10 -0
  149. package/types/extractor/extractMediaStyle.d.ts.map +1 -0
  150. package/types/extractor/extractToClassNames.d.ts +22 -0
  151. package/types/extractor/extractToClassNames.d.ts.map +1 -0
  152. package/types/extractor/findTopmostFunction.d.ts +4 -0
  153. package/types/extractor/findTopmostFunction.d.ts.map +1 -0
  154. package/types/extractor/generatedUid.d.ts +5 -0
  155. package/types/extractor/generatedUid.d.ts.map +1 -0
  156. package/types/extractor/getPropValueFromAttributes.d.ts +3 -0
  157. package/types/extractor/getPropValueFromAttributes.d.ts.map +1 -0
  158. package/types/extractor/getSourceModule.d.ts +16 -0
  159. package/types/extractor/getSourceModule.d.ts.map +1 -0
  160. package/types/extractor/getStaticBindingsForScope.d.ts +4 -0
  161. package/types/extractor/getStaticBindingsForScope.d.ts.map +1 -0
  162. package/types/extractor/hoistClassNames.d.ts +6 -0
  163. package/types/extractor/hoistClassNames.d.ts.map +1 -0
  164. package/types/extractor/literalToAst.d.ts +3 -0
  165. package/types/extractor/literalToAst.d.ts.map +1 -0
  166. package/types/extractor/loadTamagui.d.ts +9 -0
  167. package/types/extractor/loadTamagui.d.ts.map +1 -0
  168. package/types/extractor/logLines.d.ts +2 -0
  169. package/types/extractor/logLines.d.ts.map +1 -0
  170. package/types/extractor/normalizeTernaries.d.ts +3 -0
  171. package/types/extractor/normalizeTernaries.d.ts.map +1 -0
  172. package/types/extractor/removeUnusedHooks.d.ts +3 -0
  173. package/types/extractor/removeUnusedHooks.d.ts.map +1 -0
  174. package/types/index.d.ts +8 -0
  175. package/types/index.d.ts.map +1 -0
  176. package/types/patchReactNativeWeb.d.ts +2 -0
  177. package/types/patchReactNativeWeb.d.ts.map +1 -0
  178. package/types/types.d.ts +79 -0
  179. package/types/types.d.ts.map +1 -0
  180. package/dist/extractor/createExtractor.js.map +0 -7
  181. package/dist/extractor/extractToClassNames.js.map +0 -7
  182. package/dist/index.cjs +0 -2126
  183. package/dist/index.cjs.map +0 -7
  184. package/types.d.ts +0 -219
@@ -0,0 +1,10 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
+ import * as t from "@babel/types";
4
+ function accessSafe(obj, member) {
5
+ return t.logicalExpression("&&", t.logicalExpression("&&", t.binaryExpression("===", t.unaryExpression("typeof", obj), t.stringLiteral("object")), t.binaryExpression("!==", obj, t.nullLiteral())), t.memberExpression(obj, t.identifier(member), false));
6
+ }
7
+ __name(accessSafe, "accessSafe");
8
+ export {
9
+ accessSafe
10
+ };
@@ -0,0 +1,29 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
+ import * as babelParser from "@babel/parser";
4
+ const parserOptions = Object.freeze({
5
+ plugins: [
6
+ "asyncGenerators",
7
+ "classProperties",
8
+ "dynamicImport",
9
+ "functionBind",
10
+ "jsx",
11
+ "numericSeparator",
12
+ "objectRestSpread",
13
+ "optionalCatchBinding",
14
+ "decorators-legacy",
15
+ "typescript",
16
+ "optionalChaining",
17
+ "nullishCoalescingOperator"
18
+ ],
19
+ sourceType: "module"
20
+ });
21
+ const parser = babelParser.parse.bind(babelParser);
22
+ function babelParse(code) {
23
+ return parser(code.toString(), parserOptions);
24
+ }
25
+ __name(babelParse, "babelParse");
26
+ export {
27
+ babelParse,
28
+ parserOptions
29
+ };
@@ -0,0 +1,39 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
+ import * as t from "@babel/types";
4
+ function buildClassName(classNameObjects) {
5
+ return classNameObjects.reduce((acc, val) => {
6
+ if (acc == null) {
7
+ if (t.isConditionalExpression(val) || t.isStringLiteral(val) || t.isNumericLiteral(val)) {
8
+ return val;
9
+ }
10
+ return t.logicalExpression("||", val, t.stringLiteral(""));
11
+ }
12
+ let inner;
13
+ if (t.isStringLiteral(val)) {
14
+ if (t.isStringLiteral(acc)) {
15
+ return t.stringLiteral(`${acc.value} ${val.value}`);
16
+ }
17
+ inner = t.stringLiteral(` ${val.value}`);
18
+ } else if (t.isLiteral(val)) {
19
+ inner = t.binaryExpression("+", t.stringLiteral(" "), val);
20
+ } else if (t.isConditionalExpression(val) || t.isBinaryExpression(val)) {
21
+ if (t.isStringLiteral(acc)) {
22
+ return t.binaryExpression("+", t.stringLiteral(`${acc.value} `), val);
23
+ }
24
+ inner = t.binaryExpression("+", t.stringLiteral(" "), val);
25
+ } else if (t.isIdentifier(val) || t.isMemberExpression(val)) {
26
+ inner = t.conditionalExpression(val, t.binaryExpression("+", t.stringLiteral(" "), val), t.stringLiteral(""));
27
+ } else {
28
+ if (t.isStringLiteral(acc)) {
29
+ return t.binaryExpression("+", t.stringLiteral(`${acc.value} `), t.logicalExpression("||", val, t.stringLiteral("")));
30
+ }
31
+ inner = t.binaryExpression("+", t.stringLiteral(" "), t.logicalExpression("||", val, t.stringLiteral("")));
32
+ }
33
+ return t.binaryExpression("+", acc, inner);
34
+ }, null);
35
+ }
36
+ __name(buildClassName, "buildClassName");
37
+ export {
38
+ buildClassName
39
+ };
@@ -0,0 +1,50 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
+ import vm from "vm";
4
+ import generate from "@babel/generator";
5
+ import * as t from "@babel/types";
6
+ import { FAILED_EVAL } from "./createExtractor";
7
+ import { evaluateAstNode } from "./evaluateAstNode";
8
+ import { isValidThemeHook } from "./extractHelpers";
9
+ function createEvaluator({
10
+ tamaguiConfig,
11
+ staticNamespace,
12
+ sourcePath,
13
+ traversePath,
14
+ shouldPrintDebug
15
+ }) {
16
+ const evalFn = /* @__PURE__ */ __name((n) => {
17
+ if (t.isMemberExpression(n) && t.isIdentifier(n.property) && isValidThemeHook(traversePath, n, sourcePath)) {
18
+ const key = n.property.name;
19
+ if (shouldPrintDebug) {
20
+ console.log(" > found theme prop", key);
21
+ }
22
+ console.log("SHOULD FIND THEME (NESTED NOW)", key);
23
+ return `var(--${key})`;
24
+ }
25
+ if (t.isIdentifier(n) && staticNamespace.hasOwnProperty(n.name)) {
26
+ return staticNamespace[n.name];
27
+ }
28
+ const evalContext = vm.createContext(staticNamespace);
29
+ const code = `(${generate(n).code})`;
30
+ return vm.runInContext(code, evalContext);
31
+ }, "evalFn");
32
+ return (n) => {
33
+ return evaluateAstNode(n, evalFn);
34
+ };
35
+ }
36
+ __name(createEvaluator, "createEvaluator");
37
+ function createSafeEvaluator(attemptEval) {
38
+ return (n) => {
39
+ try {
40
+ return attemptEval(n);
41
+ } catch (err) {
42
+ return FAILED_EVAL;
43
+ }
44
+ };
45
+ }
46
+ __name(createSafeEvaluator, "createSafeEvaluator");
47
+ export {
48
+ createEvaluator,
49
+ createSafeEvaluator
50
+ };