@tamagui/static 1.63.0 → 1.64.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (84) hide show
  1. package/dist/cjs/constants.js +3 -1
  2. package/dist/cjs/constants.js.map +1 -1
  3. package/dist/cjs/constants.native.js +3 -1
  4. package/dist/cjs/constants.native.js.map +1 -1
  5. package/dist/cjs/extractor/bundle.js +4 -2
  6. package/dist/cjs/extractor/bundle.js.map +1 -1
  7. package/dist/cjs/extractor/bundle.native.js +4 -2
  8. package/dist/cjs/extractor/bundle.native.js.map +1 -1
  9. package/dist/cjs/extractor/bundleConfig.js +40 -34
  10. package/dist/cjs/extractor/bundleConfig.js.map +2 -2
  11. package/dist/cjs/extractor/bundleConfig.native.js +40 -34
  12. package/dist/cjs/extractor/bundleConfig.native.js.map +2 -2
  13. package/dist/cjs/extractor/createExtractor.js +70 -39
  14. package/dist/cjs/extractor/createExtractor.js.map +2 -2
  15. package/dist/cjs/extractor/createExtractor.native.js +70 -39
  16. package/dist/cjs/extractor/createExtractor.native.js.map +2 -2
  17. package/dist/cjs/extractor/extractHelpers.js +5 -3
  18. package/dist/cjs/extractor/extractHelpers.js.map +1 -1
  19. package/dist/cjs/extractor/extractHelpers.native.js +5 -3
  20. package/dist/cjs/extractor/extractHelpers.native.js.map +1 -1
  21. package/dist/cjs/extractor/extractMediaStyle.js +3 -2
  22. package/dist/cjs/extractor/extractMediaStyle.js.map +1 -1
  23. package/dist/cjs/extractor/extractMediaStyle.native.js +3 -2
  24. package/dist/cjs/extractor/extractMediaStyle.native.js.map +1 -1
  25. package/dist/cjs/extractor/extractToClassNames.js +5 -4
  26. package/dist/cjs/extractor/extractToClassNames.js.map +1 -1
  27. package/dist/cjs/extractor/extractToClassNames.native.js +5 -4
  28. package/dist/cjs/extractor/extractToClassNames.native.js.map +1 -1
  29. package/dist/cjs/extractor/generateTamaguiStudioConfig.js +4 -2
  30. package/dist/cjs/extractor/generateTamaguiStudioConfig.js.map +1 -1
  31. package/dist/cjs/extractor/generateTamaguiStudioConfig.native.js +4 -2
  32. package/dist/cjs/extractor/generateTamaguiStudioConfig.native.js.map +1 -1
  33. package/dist/cjs/extractor/getPrefixLogs.js +1 -1
  34. package/dist/cjs/extractor/getPrefixLogs.js.map +1 -1
  35. package/dist/cjs/extractor/getPrefixLogs.native.js +1 -1
  36. package/dist/cjs/extractor/getPrefixLogs.native.js.map +1 -1
  37. package/dist/cjs/extractor/getStaticBindingsForScope.js +2 -1
  38. package/dist/cjs/extractor/getStaticBindingsForScope.js.map +1 -1
  39. package/dist/cjs/extractor/getStaticBindingsForScope.native.js +2 -1
  40. package/dist/cjs/extractor/getStaticBindingsForScope.native.js.map +1 -1
  41. package/dist/cjs/extractor/literalToAst.js +1 -1
  42. package/dist/cjs/extractor/literalToAst.js.map +1 -1
  43. package/dist/cjs/extractor/literalToAst.native.js +1 -1
  44. package/dist/cjs/extractor/literalToAst.native.js.map +1 -1
  45. package/dist/cjs/extractor/loadFile.js +4 -3
  46. package/dist/cjs/extractor/loadFile.js.map +1 -1
  47. package/dist/cjs/extractor/loadFile.native.js +4 -3
  48. package/dist/cjs/extractor/loadFile.native.js.map +1 -1
  49. package/dist/cjs/extractor/loadTamagui.js +39 -18
  50. package/dist/cjs/extractor/loadTamagui.js.map +1 -1
  51. package/dist/cjs/extractor/loadTamagui.native.js +39 -18
  52. package/dist/cjs/extractor/loadTamagui.native.js.map +1 -1
  53. package/dist/cjs/extractor/removeUnusedHooks.js +5 -2
  54. package/dist/cjs/extractor/removeUnusedHooks.js.map +1 -1
  55. package/dist/cjs/extractor/removeUnusedHooks.native.js +5 -2
  56. package/dist/cjs/extractor/removeUnusedHooks.native.js.map +1 -1
  57. package/dist/cjs/getPragmaOptions.js +2 -1
  58. package/dist/cjs/getPragmaOptions.js.map +1 -1
  59. package/dist/cjs/getPragmaOptions.native.js +2 -1
  60. package/dist/cjs/getPragmaOptions.native.js.map +1 -1
  61. package/dist/cjs/registerRequire.js +34 -21
  62. package/dist/cjs/registerRequire.js.map +1 -1
  63. package/dist/cjs/registerRequire.native.js +34 -21
  64. package/dist/cjs/registerRequire.native.js.map +1 -1
  65. package/dist/esm/extractor/bundleConfig.js +31 -27
  66. package/dist/esm/extractor/bundleConfig.js.map +2 -2
  67. package/dist/esm/extractor/createExtractor.js +44 -17
  68. package/dist/esm/extractor/createExtractor.js.map +1 -1
  69. package/dist/esm/extractor/loadTamagui.js +35 -15
  70. package/dist/esm/extractor/loadTamagui.js.map +1 -1
  71. package/dist/esm/registerRequire.js +28 -18
  72. package/dist/esm/registerRequire.js.map +1 -1
  73. package/package.json +15 -15
  74. package/src/extractor/bundleConfig.ts +44 -29
  75. package/src/extractor/createExtractor.ts +72 -73
  76. package/src/extractor/loadTamagui.ts +52 -25
  77. package/src/registerRequire.ts +59 -22
  78. package/types/extractor/bundleConfig.d.ts +2 -1
  79. package/types/extractor/bundleConfig.d.ts.map +1 -1
  80. package/types/extractor/createExtractor.d.ts.map +1 -1
  81. package/types/extractor/loadTamagui.d.ts +4 -1
  82. package/types/extractor/loadTamagui.d.ts.map +1 -1
  83. package/types/registerRequire.d.ts +4 -1
  84. package/types/registerRequire.d.ts.map +1 -1
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/extractor/loadTamagui.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": []
6
6
  }
@@ -1,45 +1,54 @@
1
- import { relative, sep } from "path";
1
+ import { register } from "esbuild-register/dist/node";
2
2
  import { requireTamaguiCore } from "./helpers/requireTamaguiCore";
3
3
  const nameToPaths = {}, Module = require("module"), getNameToPaths = () => nameToPaths, proxyWorm = require("@tamagui/proxy-worm"), rnw = require("react-native-web");
4
4
  let isRegistered = !1, og;
5
- function registerRequire(platform) {
5
+ const whitelisted = {
6
+ react: !0
7
+ }, compiled = {};
8
+ function setRequireResult(name, result) {
9
+ compiled[name] = result;
10
+ }
11
+ function registerRequire(platform, { proxyWormImports } = {
12
+ proxyWormImports: !1
13
+ }) {
6
14
  if (isRegistered)
7
15
  return {
8
16
  tamaguiRequire: require,
9
17
  unregister: () => {
10
18
  }
11
19
  };
12
- const { unregister } = require("esbuild-register/dist/node").register({
20
+ const { unregister } = register({
13
21
  hookIgnoreNodeModules: !1
14
22
  });
15
- og = Module.prototype.require, isRegistered = !0, Module.prototype.require = tamaguiRequire;
23
+ og || (og = Module.prototype.require), isRegistered = !0, Module.prototype.require = tamaguiRequire;
16
24
  function tamaguiRequire(path) {
25
+ if (path === "tamagui")
26
+ return og.apply(this, ["tamagui/native"]);
27
+ if (path === "@tamagui/core" || path === "@tamagui/web")
28
+ return requireTamaguiCore(platform, (path2) => og.apply(this, [path2]));
29
+ if (path in compiled)
30
+ return compiled[path];
17
31
  if (/\.(gif|jpe?g|png|svg|ttf|otf|woff2?|bmp|webp)$/i.test(path))
18
32
  return {};
19
- if (path === "@gorhom/bottom-sheet" || path.startsWith("react-native-reanimated") || path === "expo-linear-gradient" || path === "@expo/vector-icons")
33
+ if (path === "@gorhom/bottom-sheet" || path.startsWith("react-native-reanimated") || path === "expo-linear-gradient" || path === "@expo/vector-icons" || path === "tamagui/linear-gradient" || path === "react-native-svg")
20
34
  return proxyWorm;
21
35
  if (path === "react-native/package.json")
22
36
  return packageJson;
23
- if (path === "react-native-web-lite" || path.startsWith("react-native") && // allow our rnw.tsx imports through
24
- !path.startsWith("react-native-web/dist/cjs/exports".replace(/\//g, sep)))
37
+ if (path === "react-native-web-lite" || path.startsWith("react-native"))
25
38
  return rnw;
26
- if (path === "@tamagui/core" || path === "@tamagui/web")
27
- return requireTamaguiCore(platform, (path2) => og.apply(this, [path2]));
28
39
  if (path in knownIgnorableModules)
29
40
  return proxyWorm;
41
+ if (!whitelisted[path] && proxyWormImports && !path.includes(".tamagui-dynamic-eval"))
42
+ return path === "tamagui" ? og.apply(this, [path]) : proxyWorm;
30
43
  try {
31
44
  return og.apply(this, arguments);
32
45
  } catch (err) {
33
- return allowedIgnores[path] || IGNORES === "true" || (process.env.TAMAGUI_SHOW_FULL_BUNDLE_ERRORS ? console.error(
34
- `Tamagui failed loading the pre-built tamagui.config.ts
46
+ return !process.env.TAMAGUI_ENABLE_WARN_DYNAMIC_LOAD && path.includes("tamagui-dynamic-eval") ? void 0 : (allowedIgnores[path] || IGNORES === "true" || (process.env.TAMAGUI_SHOW_FULL_BUNDLE_ERRORS ? console.error(
47
+ `Tamagui failed loading "${path}"
35
48
 
36
49
  ${err.message}
37
50
  ${err.stack}
38
-
39
- You can see if it loads in the node repl:
40
-
41
- require("./${relative(process.cwd(), path)}").default
42
-
51
+
43
52
  `
44
53
  ) : hasWarnedForModules.has(path) || (hasWarnedForModules.add(path), console.log(
45
54
  `
@@ -49,7 +58,7 @@ function registerRequire(platform) {
49
58
  - set TAMAGUI_SHOW_FULL_BUNDLE_ERRORS=1 to see stack trace
50
59
 
51
60
  `
52
- ))), proxyWorm;
61
+ ))), proxyWorm);
53
62
  }
54
63
  }
55
64
  return {
@@ -68,6 +77,7 @@ const packageJson = require("react-native-web/package.json"), IGNORES = process.
68
77
  };
69
78
  export {
70
79
  getNameToPaths,
71
- registerRequire
80
+ registerRequire,
81
+ setRequireResult
72
82
  };
73
83
  //# sourceMappingURL=registerRequire.js.map
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/registerRequire.ts"],
4
- "mappings": "AAAA,SAAS,UAAU,WAAW;AAE9B,SAAS,0BAA0B;AAGnC,MAAM,cAAc,CAAC,GACf,SAAS,QAAQ,QAAQ,GAElB,iBAAiB,MAAM,aAE9B,YAAY,QAAQ,qBAAqB,GAEzC,MAAM,QAAQ,kBAAkB;AAEtC,IAAI,eAAe,IACf;AAEG,SAAS,gBAAgB,UAA2B;AAEzD,MAAI;AACF,WAAO;AAAA,MACL,gBAAgB;AAAA,MAChB,YAAY,MAAM;AAAA,MAAC;AAAA,IACrB;AAGF,QAAM,EAAE,WAAW,IAAI,QAAQ,4BAA4B,EAAE,SAAS;AAAA,IACpE,uBAAuB;AAAA,EACzB,CAAC;AAED,OAAK,OAAO,UAAU,SACtB,eAAe,IAEf,OAAO,UAAU,UAAU;AAE3B,WAAS,eAA0B,MAAc;AAC/C,QAAI,kDAAkD,KAAK,IAAI;AAC7D,aAAO,CAAC;AAEV,QACE,SAAS,0BACT,KAAK,WAAW,yBAAyB,KACzC,SAAS,0BACT,SAAS;AAET,aAAO;AAET,QAAI,SAAS;AACX,aAAO;AAET,QACE,SAAS,2BACR,KAAK,WAAW,cAAc;AAAA,IAE7B,CAAC,KAAK,WAAW,oCAAoC,QAAQ,OAAO,GAAG,CAAC;AAE1E,aAAO;AAET,QAAI,SAAS,mBAAmB,SAAS;AACvC,aAAO,mBAAmB,UAAU,CAACA,UAC5B,GAAG,MAAM,MAAM,CAACA,KAAI,CAAC,CAC7B;AAGH,QAAI,QAAQ;AACV,aAAO;AAGT,QAAI;AAyBF,aAxBY,GAAG,MAAM,MAAM,SAAS;AAAA,IAyBtC,SAAS,KAAU;AACjB,aAAI,eAAe,IAAI,KAAK,YAAY,WAE5B,QAAQ,IAAI,kCAgBtB,QAAQ;AAAA,QACN;AAAA;AAAA,IAEN,IAAI,OAAO;AAAA,IACX,IAAI,KAAK;AAAA;AAAA;AAAA;AAAA,eAIE,SAAS,QAAQ,IAAI,GAAG,IAAI,CAAC;AAAA;AAAA;AAAA,MAGpC,IA1BI,oBAAoB,IAAI,IAAI,MAG9B,oBAAoB,IAAI,IAAI,GAE5B,QAAQ;AAAA,QACN;AAAA,uDAAgD,IAAI;AAAA,gBAA0C,IAAI,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA,MAC3G,KAsBG;AAAA,IACT;AAAA,EACF;AAEA,SAAO;AAAA,IACL;AAAA,IACA,YAAY,MAAM;AAChB,iBAAW,GACX,eAAe,IACf,OAAO,UAAU,UAAU;AAAA,IAC7B;AAAA,EACF;AACF;AAEA,MAAM,cAAc,QAAQ,+BAA+B,GACrD,UAAU,QAAQ,IAAI,8BACtB,eACJ,YAAY,SAAS,CAAC,IAAI,QAAQ,IAAI,8BAA8B,MAAM,GAAG,GACzE,wBAAwB;AAAA,EAC5B,gBAAgB;AAAA,EAChB,QAAQ;AAAA,EACR,GAAG,OAAO,YAAY,cAAc,IAAI,CAAC,MAAM,CAAC,GAAG,EAAI,CAAC,KAAK,CAAC,CAAC;AACjE,GAEM,sBAAsB,oBAAI,IAAY,GAEtC,iBAAiB;AAAA,EACrB,kBAAkB;AACpB;",
4
+ "mappings": "AAAA,SAAS,gBAAgB;AAEzB,SAAS,0BAA0B;AAGnC,MAAM,cAAc,CAAC,GACf,SAAS,QAAQ,QAAQ,GAElB,iBAAiB,MAAM,aAE9B,YAAY,QAAQ,qBAAqB,GAEzC,MAAM,QAAQ,kBAAkB;AAEtC,IAAI,eAAe,IACf;AAEJ,MAAM,cAAc;AAAA,EAClB,OAAO;AACT,GAEM,WAAW,CAAC;AACX,SAAS,iBAAiB,MAAc,QAAa;AAC1D,WAAS,IAAI,IAAI;AACnB;AAEO,SAAS,gBACd,UACA,EAAE,iBAAiB,IAAI;AAAA,EACrB,kBAAkB;AACpB,GACA;AAEA,MAAI;AACF,WAAO;AAAA,MACL,gBAAgB;AAAA,MAChB,YAAY,MAAM;AAAA,MAAC;AAAA,IACrB;AAGF,QAAM,EAAE,WAAW,IAAI,SAAS;AAAA,IAC9B,uBAAuB;AAAA,EACzB,CAAC;AAED,EAAK,OACH,KAAK,OAAO,UAAU,UAGxB,eAAe,IAEf,OAAO,UAAU,UAAU;AAE3B,WAAS,eAA0B,MAAc;AAC/C,QAAI,SAAS;AACX,aAAO,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC;AAG1C,QAAI,SAAS,mBAAmB,SAAS;AACvC,aAAO,mBAAmB,UAAU,CAACA,UAC5B,GAAG,MAAM,MAAM,CAACA,KAAI,CAAC,CAC7B;AAGH,QAAI,QAAQ;AACV,aAAO,SAAS,IAAI;AAGtB,QAAI,kDAAkD,KAAK,IAAI;AAC7D,aAAO,CAAC;AAGV,QACE,SAAS,0BACT,KAAK,WAAW,yBAAyB,KACzC,SAAS,0BACT,SAAS,wBACT,SAAS,6BACT,SAAS;AAET,aAAO;AAET,QAAI,SAAS;AACX,aAAO;AAGT,QAAI,SAAS,2BAA2B,KAAK,WAAW,cAAc;AACpE,aAAO;AAGT,QAAI,QAAQ;AACV,aAAO;AAGT,QAAI,CAAC,YAAY,IAAI,KACf,oBAAoB,CAAC,KAAK,SAAS,uBAAuB;AAC5D,aAAI,SAAS,YACJ,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,IAEvB;AAIX,QAAI;AAyBF,aAxBY,GAAG,MAAM,MAAM,SAAS;AAAA,IAyBtC,SAAS,KAAU;AACjB,aACE,CAAC,QAAQ,IAAI,oCACb,KAAK,SAAS,sBAAsB,IAGpC,UAEE,eAAe,IAAI,KAAK,YAAY,WAE5B,QAAQ,IAAI,kCAgBtB,QAAQ;AAAA,QACN,2BAA2B,IAAI;AAAA;AAAA,IAErC,IAAI,OAAO;AAAA,IACX,IAAI,KAAK;AAAA;AAAA;AAAA,MAGL,IAtBI,oBAAoB,IAAI,IAAI,MAG9B,oBAAoB,IAAI,IAAI,GAE5B,QAAQ;AAAA,QACN;AAAA,uDAAgD,IAAI;AAAA,gBAA0C,IAAI,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA,MAC3G,KAkBG;AAAA,IACT;AAAA,EACF;AAEA,SAAO;AAAA,IACL;AAAA,IACA,YAAY,MAAM;AAChB,iBAAW,GACX,eAAe,IACf,OAAO,UAAU,UAAU;AAAA,IAC7B;AAAA,EACF;AACF;AAEA,MAAM,cAAc,QAAQ,+BAA+B,GACrD,UAAU,QAAQ,IAAI,8BACtB,eACJ,YAAY,SAAS,CAAC,IAAI,QAAQ,IAAI,8BAA8B,MAAM,GAAG,GACzE,wBAAwB;AAAA,EAC5B,gBAAgB;AAAA,EAChB,QAAQ;AAAA,EACR,GAAG,OAAO,YAAY,cAAc,IAAI,CAAC,MAAM,CAAC,GAAG,EAAI,CAAC,KAAK,CAAC,CAAC;AACjE,GAEM,sBAAsB,oBAAI,IAAY,GAEtC,iBAAiB;AAAA,EACrB,kBAAkB;AACpB;",
5
5
  "names": ["path"]
6
6
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tamagui/static",
3
- "version": "1.63.0",
3
+ "version": "1.64.1",
4
4
  "source": "src/index.ts",
5
5
  "types": "./types/index.d.ts",
6
6
  "main": "dist/cjs/index.js",
@@ -35,17 +35,17 @@
35
35
  "@babel/runtime": "^7.21.5",
36
36
  "@babel/traverse": "^7.21.5",
37
37
  "@babel/types": "^7.21.5",
38
- "@tamagui/build": "1.63.0",
39
- "@tamagui/cli-color": "1.63.0",
40
- "@tamagui/config-default": "1.63.0",
41
- "@tamagui/core": "1.63.0",
42
- "@tamagui/fake-react-native": "1.63.0",
43
- "@tamagui/generate-themes": "1.63.0",
44
- "@tamagui/helpers": "1.63.0",
45
- "@tamagui/helpers-node": "1.63.0",
46
- "@tamagui/proxy-worm": "1.63.0",
47
- "@tamagui/shorthands": "1.63.0",
48
- "@tamagui/types": "1.63.0",
38
+ "@tamagui/build": "1.64.1",
39
+ "@tamagui/cli-color": "1.64.1",
40
+ "@tamagui/config-default": "1.64.1",
41
+ "@tamagui/core": "1.64.1",
42
+ "@tamagui/fake-react-native": "1.64.1",
43
+ "@tamagui/generate-themes": "1.64.1",
44
+ "@tamagui/helpers": "1.64.1",
45
+ "@tamagui/helpers-node": "1.64.1",
46
+ "@tamagui/proxy-worm": "1.64.1",
47
+ "@tamagui/shorthands": "1.64.1",
48
+ "@tamagui/types": "1.64.1",
49
49
  "babel-literal-to-ast": "^2.1.0",
50
50
  "esbuild": "^0.19.0",
51
51
  "esbuild-register": "^3.4.2",
@@ -55,13 +55,13 @@
55
55
  "invariant": "^2.2.4",
56
56
  "lodash": "^4.17.21",
57
57
  "react-native-web": "^0.19.6",
58
- "react-native-web-internals": "1.63.0",
59
- "react-native-web-lite": "1.63.0"
58
+ "react-native-web-internals": "1.64.1",
59
+ "react-native-web-lite": "1.64.1"
60
60
  },
61
61
  "devDependencies": {
62
62
  "@babel/plugin-syntax-typescript": "^7.21.4",
63
63
  "@expo/match-media": "^0.4.0",
64
- "@tamagui/test-design-system": "1.63.0",
64
+ "@tamagui/test-design-system": "1.64.1",
65
65
  "@testing-library/react": "^14.0.0",
66
66
  "@types/babel__generator": "^7.6.4",
67
67
  "@types/babel__traverse": "^7.18.2",
@@ -9,7 +9,7 @@ import type { StaticConfig, TamaguiInternalConfig } from '@tamagui/web'
9
9
  import esbuild from 'esbuild'
10
10
  import { ensureDir, removeSync, writeFileSync } from 'fs-extra'
11
11
 
12
- import { registerRequire } from '../registerRequire'
12
+ import { registerRequire, setRequireResult } from '../registerRequire'
13
13
  import { TamaguiOptions } from '../types'
14
14
  import { babelParse } from './babelParse'
15
15
  import { bundle } from './bundle'
@@ -33,6 +33,7 @@ export type TamaguiProjectInfo = {
33
33
  components?: LoadedComponents[]
34
34
  tamaguiConfig?: TamaguiInternalConfig | null
35
35
  nameToPaths?: NameToPaths
36
+ cached?: boolean
36
37
  }
37
38
 
38
39
  const external = [
@@ -246,25 +247,27 @@ export async function bundleConfig(props: TamaguiOptions) {
246
247
  }
247
248
  }
248
249
 
249
- export function loadComponents(props: TamaguiOptions): null | LoadedComponents[] {
250
+ export function loadComponents(
251
+ props: TamaguiOptions,
252
+ forceExports = false
253
+ ): null | LoadedComponents[] {
250
254
  const componentsModules = props.components
255
+
251
256
  const key = componentsModules.join('')
252
- if (cacheComponents[key]) {
257
+
258
+ if (!forceExports && cacheComponents[key]) {
253
259
  return cacheComponents[key]
254
260
  }
255
261
 
256
- const { unregister } = registerRequire(props.platform)
262
+ const { unregister } = registerRequire(props.platform, {
263
+ proxyWormImports: forceExports,
264
+ })
257
265
 
258
266
  try {
259
267
  const info: LoadedComponents[] = componentsModules.flatMap((name) => {
260
268
  const extension = extname(name)
261
269
  const isLocal = Boolean(extension)
262
- // during props.config pass we are passing in pre-bundled stuff
263
- const isDynamic = isLocal && !props.config
264
-
265
- if (isDynamic && !process.env.TAMAGUI_ENABLE_DYNAMIC_LOAD) {
266
- return []
267
- }
270
+ const isDynamic = isLocal && forceExports
268
271
 
269
272
  const fileContents = isDynamic ? readFileSync(name, 'utf-8') : ''
270
273
  const loadModule = isDynamic
@@ -277,12 +280,27 @@ export function loadComponents(props: TamaguiOptions): null | LoadedComponents[]
277
280
  // need to write to tsx to enable reading it properly (:/ esbuild-register)
278
281
  if (isDynamic) {
279
282
  writtenContents = forceExports
280
- ? esbuildit(
281
- transformAddExports(babelParse(esbuildit(fileContents, 'modern'), name))
282
- )
283
- : esbuildit(fileContents)
283
+ ? transformAddExports(babelParse(esbuildit(fileContents, 'modern'), name))
284
+ : fileContents
284
285
 
285
286
  writeFileSync(loadModule, writtenContents)
287
+
288
+ esbuild.buildSync({
289
+ ...esbuildOptions,
290
+ entryPoints: [loadModule],
291
+ outfile: loadModule,
292
+ bundle: true,
293
+ packages: 'external',
294
+ allowOverwrite: true,
295
+ // logLevel: 'silent',
296
+ sourcemap: false,
297
+ loader: {
298
+ '.png': 'dataurl',
299
+ '.jpg': 'dataurl',
300
+ '.jpeg': 'dataurl',
301
+ '.gif': 'dataurl',
302
+ },
303
+ })
286
304
  }
287
305
 
288
306
  if (process.env.DEBUG === 'tamagui') {
@@ -290,9 +308,15 @@ export function loadComponents(props: TamaguiOptions): null | LoadedComponents[]
290
308
  console.log(`loadModule`, loadModule, require.resolve(loadModule))
291
309
  }
292
310
 
311
+ const moduleResult = require(loadModule)
312
+
313
+ if (!forceExports) {
314
+ setRequireResult(name, moduleResult)
315
+ }
316
+
293
317
  const nameToInfo = getComponentStaticConfigByName(
294
318
  name,
295
- interopDefaultExport(require(loadModule))
319
+ interopDefaultExport(moduleResult)
296
320
  )
297
321
 
298
322
  return {
@@ -329,22 +353,12 @@ export function loadComponents(props: TamaguiOptions): null | LoadedComponents[]
329
353
  forceExports: false,
330
354
  })
331
355
  } catch (err) {
332
- if (!process.env.TAMAGUI_DISABLE_WARN_DYNAMIC_LOAD) {
356
+ if (process.env.TAMAGUI_ENABLE_WARN_DYNAMIC_LOAD) {
333
357
  // rome-ignore lint/suspicious/noConsoleLog: <explanation>
334
358
  console.log(`
335
359
 
336
- Tamagui attempted but failed to dynamically load components in:
360
+ Tamagui attempted but failed to dynamically optimize components in:
337
361
  ${name}
338
-
339
- This will leave some styled() tags unoptimized.
340
- Disable this file (or dynamic loading altogether):
341
-
342
- disableExtractFoundComponents: ['${name}'] | true
343
-
344
- Quiet this warning with environment variable:
345
-
346
- TAMAGUI_DISABLE_WARN_DYNAMIC_LOAD=1
347
-
348
362
  `)
349
363
  // rome-ignore lint/suspicious/noConsoleLog: <explanation>
350
364
  console.log(err)
@@ -393,6 +407,7 @@ function getComponentStaticConfigByName(name: string, exported: any) {
393
407
  if (!exported || typeof exported !== 'object' || Array.isArray(exported)) {
394
408
  throw new Error(`Invalid export from package ${name}: ${typeof exported}`)
395
409
  }
410
+
396
411
  for (const key in exported) {
397
412
  const found = getTamaguiComponent(key, exported[key])
398
413
  if (found) {
@@ -402,9 +417,9 @@ function getComponentStaticConfigByName(name: string, exported: any) {
402
417
  }
403
418
  }
404
419
  } catch (err) {
405
- if (process.env.TAMAGUI_DISABLE_WARN_DYNAMIC_LOAD !== '1') {
420
+ if (process.env.TAMAGUI_ENABLE_WARN_DYNAMIC_LOAD) {
406
421
  console.error(
407
- `Tamagui failed getting from ${name} (Disable error by setting environment variable TAMAGUI_DISABLE_WARN_DYNAMIC_LOAD=1)`
422
+ `Tamagui failed getting components from ${name} (Disable error by setting environment variable TAMAGUI_ENABLE_WARN_DYNAMIC_LOAD=1)`
408
423
  )
409
424
  console.error(err)
410
425
  }
@@ -3,6 +3,7 @@ import { basename, relative } from 'path'
3
3
 
4
4
  import traverse, { NodePath, TraverseOptions } from '@babel/traverse'
5
5
  import * as t from '@babel/types'
6
+ import { Color, colorLog } from '@tamagui/cli-color'
6
7
  import type {
7
8
  GetStyleState,
8
9
  PseudoStyles,
@@ -171,7 +172,7 @@ export function createExtractor(
171
172
  disableExtractInlineMedia,
172
173
  disableExtractVariables,
173
174
  disableDebugAttr,
174
- disableExtractFoundComponents,
175
+ enableDynamicEvaluation = false,
175
176
  includeExtensions = ['.ts', '.tsx', '.jsx'],
176
177
  extractStyledDefinitions = false,
177
178
  prefixLogs,
@@ -180,6 +181,10 @@ export function createExtractor(
180
181
  ...restProps
181
182
  } = options
182
183
 
184
+ if (sourcePath.includes('.tamagui-dynamic-eval')) {
185
+ return null
186
+ }
187
+
183
188
  const {
184
189
  expandStylesAndRemoveNullishValues,
185
190
  getSplitStyles,
@@ -428,6 +433,8 @@ export function createExtractor(
428
433
  found: 0,
429
434
  }
430
435
 
436
+ const version = `${Math.random()}`
437
+
431
438
  callTraverse({
432
439
  // @ts-ignore
433
440
  Program: {
@@ -452,6 +459,7 @@ export function createExtractor(
452
459
  : 'unknown'
453
460
 
454
461
  const parentNode = path.node.arguments[0]
462
+
455
463
  if (!t.isIdentifier(parentNode)) {
456
464
  return
457
465
  }
@@ -462,63 +470,58 @@ export function createExtractor(
462
470
  return
463
471
  }
464
472
 
465
- const Component = getValidImportedComponent(parentName)
466
-
467
- // if (!Component) {
468
- // if (disableExtractFoundComponents === true) {
469
- // return
470
- // }
471
- // if (
472
- // Array.isArray(disableExtractFoundComponents) &&
473
- // disableExtractFoundComponents.includes(parentName)
474
- // ) {
475
- // return
476
- // }
477
-
478
- // try {
479
- // if (shouldPrintDebug) {
480
- // logger.info(
481
- // `Unknown component ${parentName}, attempting dynamic load: ${sourcePath}`
482
- // )
483
- // }
484
-
485
- // const out = loadTamaguiSync({
486
- // forceExports: true,
487
- // components: [sourcePath],
488
- // })
489
-
490
- // if (!out?.components) {
491
- // if (shouldPrintDebug) {
492
- // logger.info(`Couldn't load, got ${out}`)
493
- // }
494
- // return
495
- // }
496
-
497
- // propsWithFileInfo.allLoadedComponents = [
498
- // ...propsWithFileInfo.allLoadedComponents,
499
- // ...out.components,
500
- // ]
501
-
502
- // Component = out.components.flatMap((x) => x.nameToInfo[variableName] ?? [])[0]
503
-
504
- // if (shouldPrintDebug === 'verbose') {
505
- // logger.info([`Tamagui Loaded`, JSON.stringify(out.components), !!Component].join(' '))
506
- // }
507
- // } catch (err: any) {
508
- // if (shouldPrintDebug) {
509
- // logger.info(
510
- // `${getPrefixLogs(
511
- // options
512
- // )} skip optimize styled(${variableName}), unable to pre-process (DEBUG=tamagui for more)`
513
- // )
514
- // }
515
- // if (process.env.DEBUG === 'tamagui') {
516
- // logger.info(
517
- // ` Disable this with "disableExtractFoundComponents" in your build-time configuration. \n\n ${err.message} ${err.stack}`
518
- // )
519
- // }
520
- // }
521
- // }
473
+ let Component = getValidImportedComponent(variableName)
474
+
475
+ if (!Component) {
476
+ if (enableDynamicEvaluation !== true) {
477
+ return
478
+ }
479
+
480
+ try {
481
+ if (shouldPrintDebug) {
482
+ logger.info(
483
+ `Unknown component: ${variableName} = styled(${parentName}) attempting dynamic load: ${sourcePath}`
484
+ )
485
+ }
486
+
487
+ const out = loadTamaguiSync({
488
+ forceExports: true,
489
+ components: [sourcePath],
490
+ cacheKey: version,
491
+ })
492
+
493
+ if (!out?.components) {
494
+ if (shouldPrintDebug) {
495
+ logger.info(`Couldn't load, got ${out}`)
496
+ }
497
+ return
498
+ }
499
+
500
+ propsWithFileInfo.allLoadedComponents = [
501
+ ...propsWithFileInfo.allLoadedComponents,
502
+ ...out.components,
503
+ ]
504
+
505
+ Component = out.components.flatMap((x) => x.nameToInfo[variableName] ?? [])[0]
506
+
507
+ if (!out.cached) {
508
+ const foundNames = out.components
509
+ ?.map((x) => Object.keys(x.nameToInfo).join(', '))
510
+ .join(', ')
511
+ .trim()
512
+
513
+ if (foundNames) {
514
+ colorLog(Color.FgYellow, ` | Found new components: ${foundNames}`)
515
+ }
516
+ }
517
+ } catch (err: any) {
518
+ if (shouldPrintDebug) {
519
+ logger.info(
520
+ `skip optimize styled(${variableName}), unable to pre-process (DEBUG=tamagui for more)`
521
+ )
522
+ }
523
+ }
524
+ }
522
525
 
523
526
  if (!Component) {
524
527
  if (shouldPrintDebug) {
@@ -680,27 +683,23 @@ export function createExtractor(
680
683
 
681
684
  // validate its a proper import from tamagui (or internally inside tamagui)
682
685
  const binding = traversePath.scope.getBinding(node.name.name)
683
- let modulePath = ''
686
+ let moduleName = ''
684
687
 
685
688
  if (binding) {
686
- if (!t.isImportDeclaration(binding.path.parent)) {
687
- if (shouldPrintDebug) {
688
- logger.info(` - Binding not import declaration, skip`)
689
- }
690
- return
691
- }
692
- modulePath = binding.path.parent.source.value
693
- if (!isValidImport(propsWithFileInfo, modulePath, binding.identifier.name)) {
694
- if (shouldPrintDebug) {
695
- logger.info(
696
- ` - Binding for ${componentName} not internal import or from components ${binding.identifier.name} in ${modulePath}`
697
- )
689
+ if (t.isImportDeclaration(binding.path.parent)) {
690
+ moduleName = binding.path.parent.source.value
691
+ if (!isValidImport(propsWithFileInfo, moduleName, binding.identifier.name)) {
692
+ if (shouldPrintDebug) {
693
+ logger.info(
694
+ ` - Binding for ${componentName} not internal import or from components ${binding.identifier.name} in ${moduleName}`
695
+ )
696
+ }
697
+ return
698
698
  }
699
- return
700
699
  }
701
700
  }
702
701
 
703
- const component = getValidComponent(propsWithFileInfo, modulePath, node.name.name)
702
+ const component = getValidComponent(propsWithFileInfo, moduleName, node.name.name)
704
703
  if (!component || !component.staticConfig) {
705
704
  if (shouldPrintDebug) {
706
705
  logger.info(` - No Tamagui conf on this: ${node.name.name}`)