@tamagui/generate-themes 1.121.12-1737184001189 → 1.121.12-1737239089067

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.
@@ -59,6 +59,8 @@ async function generateThemes(inputFile) {
59
59
  }
60
60
  return out;
61
61
  };
62
+ let og = process.env.TAMAGUI_KEEP_THEMES;
63
+ process.env.TAMAGUI_KEEP_THEMES = "1";
62
64
  try {
63
65
  const requiredThemes = require(inputFilePath),
64
66
  themes = requiredThemes.default || requiredThemes.themes || requiredThemes[Object.keys(requiredThemes)[0]],
@@ -80,7 +82,7 @@ async function generateThemes(inputFile) {
80
82
  } catch (err) {
81
83
  console.warn(` \u26A0\uFE0F Error running theme builder: ${err}`, err?.stack);
82
84
  } finally {
83
- import_node_module.default.prototype.require = ogRequire;
85
+ process.env.TAMAGUI_KEEP_THEMES = og, import_node_module.default.prototype.require = ogRequire;
84
86
  }
85
87
  }
86
88
  const dedupedTokens = /* @__PURE__ */new Map();
@@ -131,7 +133,9 @@ function t(a: [number, number][]) {
131
133
  `), out += `]
132
134
 
133
135
  `;
134
- let nameI = 0;
136
+ let nameI = 0,
137
+ themeTypes = "type ThemeNames =",
138
+ exported = "export const themes: Record<ThemeNames, Theme> = {";
135
139
  return dedupedThemes.forEach(theme => {
136
140
  nameI++;
137
141
  const key = JSON.stringify(theme),
@@ -139,13 +143,18 @@ function t(a: [number, number][]) {
139
143
  name = `n${nameI}`,
140
144
  baseTheme = `const ${name} = ${objectToJsString(theme, keys, valueToIndex)}`;
141
145
  out += `
142
- ${baseTheme}`;
143
- const duplicateThemes = names.map(n => `export const ${n} = ${name}`);
144
- out += `
146
+ ${baseTheme}`, names.forEach(n => {
147
+ exported += `
148
+ ${n}: ${name},`, n.toLowerCase() === n && (themeTypes += `
149
+ | '${n}'`);
150
+ });
151
+ }), out += `
145
152
 
146
- ` + duplicateThemes.join(`
147
- `);
148
- }), out;
153
+ ${themeTypes}
154
+
155
+ ${exported}
156
+ }
157
+ `, out;
149
158
  }
150
159
  function objectToJsString(obj, keys, valueToIndex) {
151
160
  let arrItems = [];
@@ -180,16 +189,16 @@ function themeBuilderIntercept(themeBuilder, themeBuilderInterceptOpts) {
180
189
  });
181
190
  }
182
191
  function purgeCache(moduleName) {
183
- searchCache(moduleName, function (mod) {
192
+ searchCache(moduleName, mod => {
184
193
  delete require.cache[mod.id];
185
- }), Object.keys(module.constructor._pathCache).forEach(function (cacheKey) {
194
+ }), Object.keys(module.constructor._pathCache).forEach(cacheKey => {
186
195
  cacheKey.indexOf(moduleName) > 0 && delete module.constructor._pathCache[cacheKey];
187
196
  });
188
197
  }
189
198
  function searchCache(moduleName, callback) {
190
199
  let mod = require.resolve(moduleName);
191
200
  mod && (mod = require.cache[mod]) !== void 0 && function traverse(mod2, depth = 0) {
192
- depth > 10 || (mod2.children.forEach(function (child) {
201
+ depth > 10 || (mod2.children.forEach(child => {
193
202
  traverse(child, depth + 1);
194
203
  }), callback(mod2));
195
204
  }(mod);
@@ -49,6 +49,8 @@ async function generateThemes(inputFile) {
49
49
  }
50
50
  return out;
51
51
  };
52
+ let og = process.env.TAMAGUI_KEEP_THEMES;
53
+ process.env.TAMAGUI_KEEP_THEMES = "1";
52
54
  try {
53
55
  const requiredThemes = require(inputFilePath), themes = requiredThemes.default || requiredThemes.themes || requiredThemes[Object.keys(requiredThemes)[0]], generatedThemes = generatedThemesToTypescript(themes);
54
56
  let tm;
@@ -70,7 +72,7 @@ async function generateThemes(inputFile) {
70
72
  } catch (err) {
71
73
  console.warn(` \u26A0\uFE0F Error running theme builder: ${err}`, err?.stack);
72
74
  } finally {
73
- import_node_module.default.prototype.require = ogRequire;
75
+ process.env.TAMAGUI_KEEP_THEMES = og, import_node_module.default.prototype.require = ogRequire;
74
76
  }
75
77
  }
76
78
  const dedupedTokens = /* @__PURE__ */ new Map();
@@ -121,18 +123,23 @@ function t(a: [number, number][]) {
121
123
  `), out += `]
122
124
 
123
125
  `;
124
- let nameI = 0;
126
+ let nameI = 0, themeTypes = "type ThemeNames =", exported = "export const themes: Record<ThemeNames, Theme> = {";
125
127
  return dedupedThemes.forEach((theme) => {
126
128
  nameI++;
127
129
  const key = JSON.stringify(theme), names = dedupedThemeToNames.get(key), name = `n${nameI}`, baseTheme = `const ${name} = ${objectToJsString(theme, keys, valueToIndex)}`;
128
130
  out += `
129
- ${baseTheme}`;
130
- const duplicateThemes = names.map((n) => `export const ${n} = ${name}`);
131
- out += `
131
+ ${baseTheme}`, names.forEach((n) => {
132
+ exported += `
133
+ ${n}: ${name},`, n.toLowerCase() === n && (themeTypes += `
134
+ | '${n}'`);
135
+ });
136
+ }), out += `
137
+
138
+ ${themeTypes}
132
139
 
133
- ` + duplicateThemes.join(`
134
- `);
135
- }), out;
140
+ ${exported}
141
+ }
142
+ `, out;
136
143
  }
137
144
  function objectToJsString(obj, keys, valueToIndex) {
138
145
  let arrItems = [];
@@ -166,16 +173,16 @@ function themeBuilderIntercept(themeBuilder, themeBuilderInterceptOpts) {
166
173
  });
167
174
  }
168
175
  function purgeCache(moduleName) {
169
- searchCache(moduleName, function(mod) {
176
+ searchCache(moduleName, (mod) => {
170
177
  delete require.cache[mod.id];
171
- }), Object.keys(module.constructor._pathCache).forEach(function(cacheKey) {
178
+ }), Object.keys(module.constructor._pathCache).forEach((cacheKey) => {
172
179
  cacheKey.indexOf(moduleName) > 0 && delete module.constructor._pathCache[cacheKey];
173
180
  });
174
181
  }
175
182
  function searchCache(moduleName, callback) {
176
183
  let mod = require.resolve(moduleName);
177
184
  mod && (mod = require.cache[mod]) !== void 0 && function traverse(mod2, depth = 0) {
178
- depth > 10 || (mod2.children.forEach(function(child) {
185
+ depth > 10 || (mod2.children.forEach((child) => {
179
186
  traverse(child, depth + 1);
180
187
  }), callback(mod2));
181
188
  }(mod);
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/generate-themes.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": ["Module", "key", "target", "mod"]
6
6
  }
@@ -48,6 +48,8 @@ async function generateThemes(inputFile) {
48
48
  }
49
49
  return out;
50
50
  };
51
+ var og = process.env.TAMAGUI_KEEP_THEMES;
52
+ process.env.TAMAGUI_KEEP_THEMES = "1";
51
53
  try {
52
54
  var requiredThemes = require(inputFilePath), themes = requiredThemes.default || requiredThemes.themes || requiredThemes[Object.keys(requiredThemes)[0]], generatedThemes = generatedThemesToTypescript(themes), tm;
53
55
  if (promise) {
@@ -66,7 +68,7 @@ async function generateThemes(inputFile) {
66
68
  } catch (err) {
67
69
  console.warn(` \u26A0\uFE0F Error running theme builder: ${err}`, err == null ? void 0 : err.stack);
68
70
  } finally {
69
- import_node_module.default.prototype.require = ogRequire;
71
+ process.env.TAMAGUI_KEEP_THEMES = og, import_node_module.default.prototype.require = ogRequire;
70
72
  }
71
73
  }
72
74
  var dedupedTokens = /* @__PURE__ */ new Map();
@@ -138,20 +140,23 @@ function t(a: [number, number][]) {
138
140
  `), out += `]
139
141
 
140
142
  `;
141
- var nameI = 0;
143
+ var nameI = 0, themeTypes = "type ThemeNames =", exported = "export const themes: Record<ThemeNames, Theme> = {";
142
144
  return dedupedThemes.forEach(function(theme2) {
143
145
  nameI++;
144
146
  var key2 = JSON.stringify(theme2), names = dedupedThemeToNames.get(key2), name2 = `n${nameI}`, baseTheme = `const ${name2} = ${objectToJsString(theme2, keys, valueToIndex)}`;
145
147
  out += `
146
- ${baseTheme}`;
147
- var duplicateThemes = names.map(function(n) {
148
- return `export const ${n} = ${name2}`;
148
+ ${baseTheme}`, names.forEach(function(n) {
149
+ exported += `
150
+ ${n}: ${name2},`, n.toLowerCase() === n && (themeTypes += `
151
+ | '${n}'`);
149
152
  });
150
- out += `
153
+ }), out += `
154
+
155
+ ${themeTypes}
151
156
 
152
- ` + duplicateThemes.join(`
153
- `);
154
- }), out;
157
+ ${exported}
158
+ }
159
+ `, out;
155
160
  }
156
161
  function objectToJsString(obj, keys, valueToIndex) {
157
162
  var arrItems = [];
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/Users/n8/tamagui/code/core/generate-themes/src/generate-themes.ts"],
4
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;AACA;;;;;yBAAmB,iCACnB,mBAAqB,sBAMfA,YAAYC,mBAAAA,QAAOC,UAAUC,SAE/BC,kBAAkB;AAEtB,eAAsBC,eAAeC,WAAiB;AACpD,EAAKF,mBAEHD,QAAQ,4BAAA,EAA8BI,SAAS;IAC7CC,uBAAuB;EACzB,CAAA;AAGF,MAAMC,gBAAgBH,UAAU,CAAA,MAAO,UAAMI,uBAAKC,QAAQC,IAAG,GAAIN,SAAAA,IAAaA;AAC9EO,aAAWJ,aAAAA;AAEX,MAAIK,UAAoD;AAGxDb,qBAAAA,QAAOC,UAAUC,UAAU,SAAUY,IAAE;AAErC,QAAMC,MAAMhB,UAAUiB,MAAM,MAAMC,SAAAA;AAElC,QAAIH,OAAO,4BACL,CAACD,SAAS;AACZ,UAAIK;AACJL,uBAAU,IAAIM,QAAQ,SAACC,KAAAA;AACrBF,kBAAUE;MACZ,CAAA,GACOC,qBAAqBN,KAAK;QAC/BO,YAAY,SAACC,QAAAA;AACXL,qBAAAA,QAAAA,QAAUK,OAAOC,YAAY;QAC/B;MACF,CAAA;IACF;AAEF,WAAOT;EACT;AAEA,MAAI;AACF,QAAMU,iBAAiBvB,QAAQM,aAAAA,GACzBkB,SACJD,eAAe,WACfA,eAAe,UACfA,eAAeE,OAAOC,KAAKH,cAAAA,EAAgB,CAAA,CAAE,GAEzCI,kBAAkBC,4BAA4BJ,MAAAA,GAEhDK;AACJ,QAAIlB,SAAS;AACX,UAAImB,WAAW;AACfnB,cAAQoB,KAAK,WAAA;AACXD,mBAAW;MACb,CAAA,GAEAD,KAAKG,WAAW,WAAA;AACd,QAAKF,YACHG,QAAQC,KACN,8FAA8F;MAGpG,GAAG,GAAA;IACL;AAEA,QAAMZ,eAAeX,UAAU,MAAMA,UAAU;AAC/CwB,wBAAaN,EAAAA,GAEN;MACLO,WAAWT;MACXU,OAAOf,gBAAAA,OAAAA,SAAAA,aAAce;IACvB;EACF,SAASC,KAAK;AACZL,YAAQC,KAAK,8CAAoCI,GAAAA,IAAOA,OAAAA,OAAAA,SAAAA,IAAM,KAAQ;EACxE,UAAA;AACExC,uBAAAA,QAAOC,UAAUC,UAAUH;EAC7B;AACF;AAKA,IAAM0C,gBAAgB,oBAAIC,IAAAA;AAE1B,SAASZ,4BAA4BJ,QAA2B;AAC9D,MAAMiB,gBAAgB,oBAAID,IAAAA,GACpBE,sBAAsB,oBAAIF,IAAAA,GAE5BG,IAAI;AACR,WAAWC,QAAQpB,QAAQ;AACzBmB;AAEA,QAAME,QAAgCrB,OAAOoB,IAAAA,GAGzCE,IAAI,GACH,4BAAA,IAAA,oBAAA,IAAA,iBAAA;;AAAL,eAAK,YAAsBrB,OAAOsB,QAAQF,KAAAA,EAAAA,OAAAA,QAAAA,EAAAA,GAArC,OAAA,EAAA,6BAAA,QAAA,UAAA,KAAA,GAAA,OAAA,4BAAA,IAA6C;AAA7C,YAAM,CAACG,KAAKC,KAAAA,IAAZ,MAAA;AACHN;AACA,YAAMO,YAAY,IAAIP,CAAAA,GAAIG,CAAAA;AAC1B,QAAKP,cAAcY,IAAIF,KAAAA,KACrBV,cAAca,IAAIH,OAAOC,SAAAA;MAE7B;;AANK,0BAAA,IAAA,iBAAA;;;SAAA,6BAAA,UAAA,UAAA,QAAA,UAAA,OAAA;;YAAA;gBAAA;;;AAQL,QAAMF,OAAMK,KAAKC,UAAUT,KAAAA;AAC3B,IAAIJ,cAAcU,IAAIH,IAAAA,IACpBN,oBAAoBU,IAAIJ,MAAK;SAAIN,oBAAoBa,IAAIP,IAAAA;MAAOJ;KAAK,KAErEH,cAAcW,IAAIJ,MAAKH,KAAAA,GACvBH,oBAAoBU,IAAIJ,MAAK;MAACJ;KAAK;EAEvC;AAEA,MAAI,CAACpB;AACH,UAAM,IAAIgC,MAAM,6CAA6C;AAG/D,MAAMC,WAAWhC,OAAOsB,QAAQvB,OAAOkC,SAASlC,OAAOC,OAAOC,KAAKF,MAAAA,EAAQ,CAAA,CAAE,CAAC,GAKxEmC,iBAAiB;EACvBF,SACCG,IAAI,SAAA,OAAA;QAAC,CAACC,CAAAA,IAAE;AACP,WAAO,KAAKA,CAAAA;;EACd,CAAA,EACCtD,KAAK,EAAA,CAAA;IAGFM,MAAM,GAAG8C,cAAAA;;AAGb9C,SAAO;;;;;;;;GAWPA,OAAO;;AACP,MAAIiD,QAAQ,GACNC,eAAe,CAAC;AACtBxB,gBAAcyB,QAAQ,SAACpB,OAAMK,QAAAA;AAC3Bc,iBAAad,MAAAA,IAASa,OACtBA,SACAjD,OAAO,MAAMoC,MAAAA;;EACf,CAAA,GACApC,OAAO;;;AAGP,MAAMa,OAAO+B,SAASG,IAAI,SAAA,OAAA;QAAC,CAACC,CAAAA,IAAE;WAAKA;;AACnChD,SAAO;GACPA,OAAOa,KAAKkC,IAAI,SAACC,GAAAA;WAAM,IAAIA,CAAAA;KAAMtD,KAAK;CAAA,GACtCM,OAAO;;;AAGP,MAAIoD,QAAQ;AACZxB,uBAAcuB,QAAQ,SAACnB,QAAAA;AACrBoB;AACA,QAAMjB,OAAMK,KAAKC,UAAUT,MAAAA,GACrBqB,QAAQxB,oBAAoBa,IAAIP,IAAAA,GAChCJ,QAAO,IAAIqB,KAAAA,IACXE,YAAY,SAASvB,KAAAA,MAAUwB,iBAAiBvB,QAAOnB,MAAMqC,YAAAA,CAAAA;AACnElD,WAAO;EAAKsD,SAAAA;AACZ,QAAME,kBAAkBH,MAAMN,IAAI,SAACU,GAAAA;aAAM,gBAAgBA,CAAAA,MAAO1B,KAAAA;;AAChE/B,WAAO;;IAASwD,gBAAgB9D,KAAK;CAAA;EACvC,CAAA,GAEOM;AACT;AAEA,SAASuD,iBACPG,KACA7C,MACAqC,cAAoC;AAEpC,MAAIS,WAAqB,CAAA;AACzB,WAAWxB,OAAOuB,KAAK;AACrB,QAAME,KAAK/C,KAAKgD,QAAQ1B,GAAAA,GAClB2B,KAAKZ,aAAaQ,IAAIvB,GAAAA,CAAI;AAChCwB,aAASI,KAAK,IAAIH,EAAAA,KAAOE,EAAAA,GAAK;EAChC;AACA,SAAO,MAAMH,SAASjE,KAAK,GAAA,CAAA;AAC7B;AAEA,SAASY,qBACP0D,mBACAC,2BAAoD;AAEpD,SAAO,IAAIC,MAAMF,mBAAmB;IAClCtB,IAAIyB,QAAQhC,KAAG;AACb,UAAMnC,MAAMoE,QAAQ1B,IAAIyB,QAAQhC,GAAAA;AAChC,aAAIA,QAAQ,uBACH,IAAI+B,MAAMlE,KAAK;QACpBC,MAAMkE,SAAQE,SAASC,UAAQ;AAC7B,cAAMC,UAAUH,QAAQnE,MAAMkE,SAAQE,SAASC,QAAAA;AAC/C,iBAAOE,sBAAsBD,SAASN,yBAAAA;QACxC;MACF,CAAA,IAEKjE;IACT;EACF,CAAA;AACF;AAEA,SAASwE,sBACP/D,cACAwD,2BAAoD;AAEpD,SAAO,IAAIC,MAAMzD,cAAc;IAC7BiC,IAAIyB,QAAQhC,KAAG;AACb,UAAMnC,MAAMoE,QAAQ1B,IAAIyB,QAAQhC,GAAAA;AAChC,aAAIA,QAAQ,WAEV8B,0BAA0B1D,WAAW;QACnCE;MACF,CAAA,GAEKT;IACT;EACF,CAAA;AACF;AAKA,SAASH,WAAW4E,YAAU;AAG5BC,cAAYD,YAAY,SAAUE,KAAG;AACnC,WAAOxF,QAAQyF,MAAMD,IAAI5E,EAAE;EAC7B,CAAA,GAKAa,OAAOC,KAAKgE,OAAOC,YAAYC,UAAU,EAAE5B,QAAQ,SAAU6B,UAAQ;AACnE,IAAIA,SAASnB,QAAQY,UAAAA,IAAc,KAEjC,OAAOI,OAAOC,YAAYC,WAAWC,QAAAA;EAEzC,CAAA;AACF;AAMA,SAASN,YAAYD,YAAYQ,UAAQ;AAEvC,MAAIN,MAAMxF,QAAQgB,QAAQsE,UAAAA;AAK1B,EAAIE,QAAQA,MAAMxF,QAAQyF,MAAMD,GAAAA,OAAUO,UAEtC,SAASC,SAASR,MAAG;QAAES,QAAAA,UAAAA,SAAAA,KAAAA,UAAAA,CAAAA,MAAAA,SAAAA,UAAAA,CAAAA,IAAQ;AAE/B,IAAIA,QAAQ,OAKZT,KAAIU,SAASlC,QAAQ,SAAUmC,OAAK;AAClCH,eAASG,OAAOF,QAAQ,CAAA;IAC1B,CAAA,GAIAH,SAASN,IAAAA;EACX,EAAGA,GAAAA;AAEP;",
5
- "names": ["ogRequire", "Module", "prototype", "require", "didRegisterOnce", "generateThemes", "inputFile", "register", "hookIgnoreNodeModules", "inputFilePath", "join", "process", "cwd", "purgeCache", "promise", "id", "out", "apply", "arguments", "resolve", "Promise", "res", "createThemeIntercept", "onComplete", "result", "themeBuilder", "requiredThemes", "themes", "Object", "keys", "generatedThemes", "generatedThemesToTypescript", "tm", "finished", "then", "setTimeout", "console", "warn", "clearTimeout", "generated", "state", "err", "dedupedTokens", "Map", "dedupedThemes", "dedupedThemeToNames", "i", "name", "theme", "j", "entries", "key", "value", "uniqueKey", "has", "set", "JSON", "stringify", "get", "Error", "baseKeys", "light", "baseTypeString", "map", "k", "index", "valueToIndex", "forEach", "nameI", "names", "baseTheme", "objectToJsString", "duplicateThemes", "n", "obj", "arrItems", "ki", "indexOf", "vi", "push", "createThemeExport", "themeBuilderInterceptOpts", "Proxy", "target", "Reflect", "thisArg", "argArray", "builder", "themeBuilderIntercept", "moduleName", "searchCache", "mod", "cache", "module", "constructor", "_pathCache", "cacheKey", "callback", "undefined", "traverse", "depth", "children", "child"]
4
+ "mappings": "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",
5
+ "names": ["ogRequire", "Module", "prototype", "require", "didRegisterOnce", "generateThemes", "inputFile", "register", "hookIgnoreNodeModules", "inputFilePath", "join", "process", "cwd", "purgeCache", "promise", "id", "out", "apply", "arguments", "resolve", "Promise", "res", "createThemeIntercept", "onComplete", "result", "themeBuilder", "og", "env", "TAMAGUI_KEEP_THEMES", "requiredThemes", "themes", "Object", "keys", "generatedThemes", "generatedThemesToTypescript", "tm", "finished", "then", "setTimeout", "console", "warn", "clearTimeout", "generated", "state", "err", "dedupedTokens", "Map", "dedupedThemes", "dedupedThemeToNames", "i", "name", "theme", "j", "entries", "key", "value", "uniqueKey", "has", "set", "JSON", "stringify", "get", "Error", "baseKeys", "light", "baseTypeString", "map", "k", "index", "valueToIndex", "forEach", "nameI", "themeTypes", "exported", "names", "baseTheme", "objectToJsString", "n", "toLowerCase", "obj", "arrItems", "ki", "indexOf", "vi", "push", "createThemeExport", "themeBuilderInterceptOpts", "Proxy", "target", "Reflect", "thisArg", "argArray", "builder", "themeBuilderIntercept", "moduleName", "searchCache", "mod", "cache", "module", "constructor", "_pathCache", "cacheKey", "callback", "undefined", "traverse", "depth", "children", "child"]
6
6
  }
@@ -34,7 +34,7 @@ __export(write_generate_themes_exports, {
34
34
  writeGeneratedThemes: () => writeGeneratedThemes
35
35
  });
36
36
  module.exports = __toCommonJS(write_generate_themes_exports);
37
- var import_path = require("path"),
37
+ var import_node_path = require("node:path"),
38
38
  fs = __toESM(require("fs-extra"));
39
39
  async function writeGeneratedThemes(tamaguiDotDir, outPath, generatedOutput) {
40
40
  if (!generatedOutput) return;
@@ -43,7 +43,7 @@ async function writeGeneratedThemes(tamaguiDotDir, outPath, generatedOutput) {
43
43
  state
44
44
  } = generatedOutput,
45
45
  tamaguiDotDirExists = await fs.pathExists(tamaguiDotDir),
46
- themeBuilderStatePath = (0, import_path.join)(tamaguiDotDir, "theme-builder.json");
46
+ themeBuilderStatePath = (0, import_node_path.join)(tamaguiDotDir, "theme-builder.json");
47
47
  process.env.DEBUG === "tamagui" && (console.info("Generated themes:", JSON.stringify(generatedOutput, null, 2)), console.info("Writing themes to", {
48
48
  outPath,
49
49
  themeBuilderStatePath
@@ -25,10 +25,10 @@ __export(write_generate_themes_exports, {
25
25
  writeGeneratedThemes: () => writeGeneratedThemes
26
26
  });
27
27
  module.exports = __toCommonJS(write_generate_themes_exports);
28
- var import_path = require("path"), fs = __toESM(require("fs-extra"));
28
+ var import_node_path = require("node:path"), fs = __toESM(require("fs-extra"));
29
29
  async function writeGeneratedThemes(tamaguiDotDir, outPath, generatedOutput) {
30
30
  if (!generatedOutput) return;
31
- const { generated, state } = generatedOutput, tamaguiDotDirExists = await fs.pathExists(tamaguiDotDir), themeBuilderStatePath = (0, import_path.join)(tamaguiDotDir, "theme-builder.json");
31
+ const { generated, state } = generatedOutput, tamaguiDotDirExists = await fs.pathExists(tamaguiDotDir), themeBuilderStatePath = (0, import_node_path.join)(tamaguiDotDir, "theme-builder.json");
32
32
  process.env.DEBUG === "tamagui" && (console.info("Generated themes:", JSON.stringify(generatedOutput, null, 2)), console.info("Writing themes to", { outPath, themeBuilderStatePath })), await Promise.all([
33
33
  fs.writeFile(outPath, `// @ts-nocheck
34
34
  ` + generated),
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/write-generate-themes.ts"],
4
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,kBAAqB,iBAErB,KAAoB;AAIpB,eAAsB,qBACpB,eACA,SACA,iBACA;AACA,MAAI,CAAC,gBAAiB;AAEtB,QAAM,EAAE,WAAW,MAAM,IAAI,iBAEvB,sBAAsB,MAAM,GAAG,WAAW,aAAa,GACvD,4BAAwB,kBAAK,eAAe,oBAAoB;AAEtE,EAAI,QAAQ,IAAI,UAAU,cACxB,QAAQ,KAAK,qBAAqB,KAAK,UAAU,iBAAiB,MAAM,CAAC,CAAC,GAC1E,QAAQ,KAAK,qBAAqB,EAAE,SAAS,sBAAsB,CAAC,IAGtE,MAAM,QAAQ,IAAI;AAAA,IAChB,GAAG,UAAU,SAAS;AAAA,IAAqB,SAAS;AAAA,IACpD,SAAS,sBACL,GAAG,UAAU,uBAAuB,KAAK,UAAU,KAAK,CAAC,IACzD;AAAA,EACN,CAAC;AACH;",
4
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAAqB,sBAErB,KAAoB;AAIpB,eAAsB,qBACpB,eACA,SACA,iBACA;AACA,MAAI,CAAC,gBAAiB;AAEtB,QAAM,EAAE,WAAW,MAAM,IAAI,iBAEvB,sBAAsB,MAAM,GAAG,WAAW,aAAa,GACvD,4BAAwB,uBAAK,eAAe,oBAAoB;AAEtE,EAAI,QAAQ,IAAI,UAAU,cACxB,QAAQ,KAAK,qBAAqB,KAAK,UAAU,iBAAiB,MAAM,CAAC,CAAC,GAC1E,QAAQ,KAAK,qBAAqB,EAAE,SAAS,sBAAsB,CAAC,IAGtE,MAAM,QAAQ,IAAI;AAAA,IAChB,GAAG,UAAU,SAAS;AAAA,IAAqB,SAAS;AAAA,IACpD,SAAS,sBACL,GAAG,UAAU,uBAAuB,KAAK,UAAU,KAAK,CAAC,IACzD;AAAA,EACN,CAAC;AACH;",
5
5
  "names": []
6
6
  }
@@ -26,10 +26,10 @@ __export(write_generate_themes_exports, {
26
26
  writeGeneratedThemes: () => writeGeneratedThemes
27
27
  });
28
28
  module.exports = __toCommonJS(write_generate_themes_exports);
29
- var import_path = require("path"), fs = __toESM(require("fs-extra"));
29
+ var import_node_path = require("node:path"), fs = __toESM(require("fs-extra"));
30
30
  async function writeGeneratedThemes(tamaguiDotDir, outPath, generatedOutput) {
31
31
  if (generatedOutput) {
32
- var { generated, state } = generatedOutput, tamaguiDotDirExists = await fs.pathExists(tamaguiDotDir), themeBuilderStatePath = (0, import_path.join)(tamaguiDotDir, "theme-builder.json");
32
+ var { generated, state } = generatedOutput, tamaguiDotDirExists = await fs.pathExists(tamaguiDotDir), themeBuilderStatePath = (0, import_node_path.join)(tamaguiDotDir, "theme-builder.json");
33
33
  process.env.DEBUG === "tamagui" && (console.info("Generated themes:", JSON.stringify(generatedOutput, null, 2)), console.info("Writing themes to", {
34
34
  outPath,
35
35
  themeBuilderStatePath
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/Users/n8/tamagui/code/core/generate-themes/src/write-generate-themes.ts"],
4
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;kBAAqB,iBAErB,KAAoB;AAIpB,eAAsBA,qBACpBC,eACAC,SACAC,iBAA2D;AAE3D,MAAKA,iBAEL;QAAM,EAAEC,WAAWC,MAAK,IAAKF,iBAEvBG,sBAAsB,MAAMC,GAAGC,WAAWP,aAAAA,GAC1CQ,4BAAwBC,kBAAKT,eAAe,oBAAoB;AAEtE,IAAIU,QAAQC,IAAIC,UAAU,cACxBC,QAAQC,KAAK,qBAAqBC,KAAKC,UAAUd,iBAAiB,MAAM,CAAA,CAAA,GACxEW,QAAQC,KAAK,qBAAqB;MAAEb;MAASO;IAAsB,CAAA,IAGrE,MAAMS,QAAQC,IAAI;MAChBZ,GAAGa,UAAUlB,SAAS;IAAqBE,SAAAA;MAC3CC,SAASC,sBACLC,GAAGa,UAAUX,uBAAuBO,KAAKC,UAAUZ,KAAAA,CAAAA,IACnD;KACL;;AACH;",
4
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;uBAAqB,sBAErB,KAAoB;AAIpB,eAAsBA,qBACpBC,eACAC,SACAC,iBAA2D;AAE3D,MAAKA,iBAEL;QAAM,EAAEC,WAAWC,MAAK,IAAKF,iBAEvBG,sBAAsB,MAAMC,GAAGC,WAAWP,aAAAA,GAC1CQ,4BAAwBC,uBAAKT,eAAe,oBAAoB;AAEtE,IAAIU,QAAQC,IAAIC,UAAU,cACxBC,QAAQC,KAAK,qBAAqBC,KAAKC,UAAUd,iBAAiB,MAAM,CAAA,CAAA,GACxEW,QAAQC,KAAK,qBAAqB;MAAEb;MAASO;IAAsB,CAAA,IAGrE,MAAMS,QAAQC,IAAI;MAChBZ,GAAGa,UAAUlB,SAAS;IAAqBE,SAAAA;MAC3CC,SAASC,sBACLC,GAAGa,UAAUX,uBAAuBO,KAAKC,UAAUZ,KAAAA,CAAAA,IACnD;KACL;;AACH;",
5
5
  "names": ["writeGeneratedThemes", "tamaguiDotDir", "outPath", "generatedOutput", "generated", "state", "tamaguiDotDirExists", "fs", "pathExists", "themeBuilderStatePath", "join", "process", "env", "DEBUG", "console", "info", "JSON", "stringify", "Promise", "all", "writeFile"]
6
6
  }
@@ -23,6 +23,8 @@ async function generateThemes(inputFile) {
23
23
  }
24
24
  return out;
25
25
  };
26
+ let og = process.env.TAMAGUI_KEEP_THEMES;
27
+ process.env.TAMAGUI_KEEP_THEMES = "1";
26
28
  try {
27
29
  const requiredThemes = require(inputFilePath), themes = requiredThemes.default || requiredThemes.themes || requiredThemes[Object.keys(requiredThemes)[0]], generatedThemes = generatedThemesToTypescript(themes);
28
30
  let tm;
@@ -44,7 +46,7 @@ async function generateThemes(inputFile) {
44
46
  } catch (err) {
45
47
  console.warn(` \u26A0\uFE0F Error running theme builder: ${err}`, err?.stack);
46
48
  } finally {
47
- Module.prototype.require = ogRequire;
49
+ process.env.TAMAGUI_KEEP_THEMES = og, Module.prototype.require = ogRequire;
48
50
  }
49
51
  }
50
52
  const dedupedTokens = /* @__PURE__ */ new Map();
@@ -95,18 +97,23 @@ function t(a: [number, number][]) {
95
97
  `), out += `]
96
98
 
97
99
  `;
98
- let nameI = 0;
100
+ let nameI = 0, themeTypes = "type ThemeNames =", exported = "export const themes: Record<ThemeNames, Theme> = {";
99
101
  return dedupedThemes.forEach((theme) => {
100
102
  nameI++;
101
103
  const key = JSON.stringify(theme), names = dedupedThemeToNames.get(key), name = `n${nameI}`, baseTheme = `const ${name} = ${objectToJsString(theme, keys, valueToIndex)}`;
102
104
  out += `
103
- ${baseTheme}`;
104
- const duplicateThemes = names.map((n) => `export const ${n} = ${name}`);
105
- out += `
105
+ ${baseTheme}`, names.forEach((n) => {
106
+ exported += `
107
+ ${n}: ${name},`, n.toLowerCase() === n && (themeTypes += `
108
+ | '${n}'`);
109
+ });
110
+ }), out += `
111
+
112
+ ${themeTypes}
106
113
 
107
- ` + duplicateThemes.join(`
108
- `);
109
- }), out;
114
+ ${exported}
115
+ }
116
+ `, out;
110
117
  }
111
118
  function objectToJsString(obj, keys, valueToIndex) {
112
119
  let arrItems = [];
@@ -140,16 +147,16 @@ function themeBuilderIntercept(themeBuilder, themeBuilderInterceptOpts) {
140
147
  });
141
148
  }
142
149
  function purgeCache(moduleName) {
143
- searchCache(moduleName, function(mod) {
150
+ searchCache(moduleName, (mod) => {
144
151
  delete require.cache[mod.id];
145
- }), Object.keys(module.constructor._pathCache).forEach(function(cacheKey) {
152
+ }), Object.keys(module.constructor._pathCache).forEach((cacheKey) => {
146
153
  cacheKey.indexOf(moduleName) > 0 && delete module.constructor._pathCache[cacheKey];
147
154
  });
148
155
  }
149
156
  function searchCache(moduleName, callback) {
150
157
  let mod = require.resolve(moduleName);
151
158
  mod && (mod = require.cache[mod]) !== void 0 && function traverse(mod2, depth = 0) {
152
- depth > 10 || (mod2.children.forEach(function(child) {
159
+ depth > 10 || (mod2.children.forEach((child) => {
153
160
  traverse(child, depth + 1);
154
161
  }), callback(mod2));
155
162
  }(mod);
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/generate-themes.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": ["key", "target", "mod"]
6
6
  }
@@ -23,6 +23,8 @@ async function generateThemes(inputFile) {
23
23
  }
24
24
  return out;
25
25
  };
26
+ let og = process.env.TAMAGUI_KEEP_THEMES;
27
+ process.env.TAMAGUI_KEEP_THEMES = "1";
26
28
  try {
27
29
  const requiredThemes = require(inputFilePath),
28
30
  themes = requiredThemes.default || requiredThemes.themes || requiredThemes[Object.keys(requiredThemes)[0]],
@@ -44,7 +46,7 @@ async function generateThemes(inputFile) {
44
46
  } catch (err) {
45
47
  console.warn(` \u26A0\uFE0F Error running theme builder: ${err}`, err?.stack);
46
48
  } finally {
47
- Module.prototype.require = ogRequire;
49
+ process.env.TAMAGUI_KEEP_THEMES = og, Module.prototype.require = ogRequire;
48
50
  }
49
51
  }
50
52
  const dedupedTokens = /* @__PURE__ */new Map();
@@ -95,7 +97,9 @@ function t(a: [number, number][]) {
95
97
  `), out += `]
96
98
 
97
99
  `;
98
- let nameI = 0;
100
+ let nameI = 0,
101
+ themeTypes = "type ThemeNames =",
102
+ exported = "export const themes: Record<ThemeNames, Theme> = {";
99
103
  return dedupedThemes.forEach(theme => {
100
104
  nameI++;
101
105
  const key = JSON.stringify(theme),
@@ -103,13 +107,18 @@ function t(a: [number, number][]) {
103
107
  name = `n${nameI}`,
104
108
  baseTheme = `const ${name} = ${objectToJsString(theme, keys, valueToIndex)}`;
105
109
  out += `
106
- ${baseTheme}`;
107
- const duplicateThemes = names.map(n => `export const ${n} = ${name}`);
108
- out += `
110
+ ${baseTheme}`, names.forEach(n => {
111
+ exported += `
112
+ ${n}: ${name},`, n.toLowerCase() === n && (themeTypes += `
113
+ | '${n}'`);
114
+ });
115
+ }), out += `
116
+
117
+ ${themeTypes}
109
118
 
110
- ` + duplicateThemes.join(`
111
- `);
112
- }), out;
119
+ ${exported}
120
+ }
121
+ `, out;
113
122
  }
114
123
  function objectToJsString(obj, keys, valueToIndex) {
115
124
  let arrItems = [];
@@ -144,16 +153,16 @@ function themeBuilderIntercept(themeBuilder, themeBuilderInterceptOpts) {
144
153
  });
145
154
  }
146
155
  function purgeCache(moduleName) {
147
- searchCache(moduleName, function (mod) {
156
+ searchCache(moduleName, mod => {
148
157
  delete require.cache[mod.id];
149
- }), Object.keys(module.constructor._pathCache).forEach(function (cacheKey) {
158
+ }), Object.keys(module.constructor._pathCache).forEach(cacheKey => {
150
159
  cacheKey.indexOf(moduleName) > 0 && delete module.constructor._pathCache[cacheKey];
151
160
  });
152
161
  }
153
162
  function searchCache(moduleName, callback) {
154
163
  let mod = require.resolve(moduleName);
155
164
  mod && (mod = require.cache[mod]) !== void 0 && function traverse(mod2, depth = 0) {
156
- depth > 10 || (mod2.children.forEach(function (child) {
165
+ depth > 10 || (mod2.children.forEach(child => {
157
166
  traverse(child, depth + 1);
158
167
  }), callback(mod2));
159
168
  }(mod);
@@ -1 +1 @@
1
- {"version":3,"names":["Module","join","ogRequire","prototype","require","didRegisterOnce","generateThemes","inputFile","register","hookIgnoreNodeModules","inputFilePath","process","cwd","purgeCache","promise","id","out","apply","arguments","resolve","Promise","res","createThemeIntercept","onComplete","result","themeBuilder","requiredThemes","themes","default","Object","keys","generatedThemes","generatedThemesToTypescript","tm","finished","then","setTimeout","console","warn","clearTimeout","generated","state","err","stack","dedupedTokens","Map","dedupedThemes","dedupedThemeToNames","i","name","theme","j","key2","value","entries","uniqueKey","has","set","key","JSON","stringify","get","Error","baseKeys","light","map","k","index","valueToIndex","forEach","nameI","names","baseTheme","objectToJsString","duplicateThemes","n","obj","arrItems","ki","indexOf","vi","push","createThemeExport","themeBuilderInterceptOpts","Proxy","target","Reflect","target2","thisArg","argArray","builder","themeBuilderIntercept","moduleName","searchCache","mod","cache","module","constructor","_pathCache","cacheKey","callback","traverse","mod2","depth","children","child"],"sources":["../../src/generate-themes.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["Module","join","ogRequire","prototype","require","didRegisterOnce","generateThemes","inputFile","register","hookIgnoreNodeModules","inputFilePath","process","cwd","purgeCache","promise","id","out","apply","arguments","resolve","Promise","res","createThemeIntercept","onComplete","result","themeBuilder","og","env","TAMAGUI_KEEP_THEMES","requiredThemes","themes","default","Object","keys","generatedThemes","generatedThemesToTypescript","tm","finished","then","setTimeout","console","warn","clearTimeout","generated","state","err","stack","dedupedTokens","Map","dedupedThemes","dedupedThemeToNames","i","name","theme","j","key2","value","entries","uniqueKey","has","set","key","JSON","stringify","get","Error","baseKeys","light","map","k","index","valueToIndex","forEach","nameI","themeTypes","exported","names","baseTheme","objectToJsString","n","toLowerCase","obj","arrItems","ki","indexOf","vi","push","createThemeExport","themeBuilderInterceptOpts","Proxy","target","Reflect","target2","thisArg","argArray","builder","themeBuilderIntercept","moduleName","searchCache","mod","cache","module","constructor","_pathCache","cacheKey","callback","traverse","mod2","depth","children","child"],"sources":["../../src/generate-themes.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -22,6 +22,8 @@ async function generateThemes(inputFile) {
22
22
  }
23
23
  return out;
24
24
  };
25
+ var og = process.env.TAMAGUI_KEEP_THEMES;
26
+ process.env.TAMAGUI_KEEP_THEMES = "1";
25
27
  try {
26
28
  var requiredThemes = require(inputFilePath), themes = requiredThemes.default || requiredThemes.themes || requiredThemes[Object.keys(requiredThemes)[0]], generatedThemes = generatedThemesToTypescript(themes), tm;
27
29
  if (promise) {
@@ -40,7 +42,7 @@ async function generateThemes(inputFile) {
40
42
  } catch (err) {
41
43
  console.warn(` \u26A0\uFE0F Error running theme builder: ${err}`, err?.stack);
42
44
  } finally {
43
- Module.prototype.require = ogRequire;
45
+ process.env.TAMAGUI_KEEP_THEMES = og, Module.prototype.require = ogRequire;
44
46
  }
45
47
  }
46
48
  var dedupedTokens = /* @__PURE__ */ new Map();
@@ -112,20 +114,23 @@ function t(a: [number, number][]) {
112
114
  `), out += `]
113
115
 
114
116
  `;
115
- var nameI = 0;
117
+ var nameI = 0, themeTypes = "type ThemeNames =", exported = "export const themes: Record<ThemeNames, Theme> = {";
116
118
  return dedupedThemes.forEach(function(theme2) {
117
119
  nameI++;
118
120
  var key2 = JSON.stringify(theme2), names = dedupedThemeToNames.get(key2), name2 = `n${nameI}`, baseTheme = `const ${name2} = ${objectToJsString(theme2, keys, valueToIndex)}`;
119
121
  out += `
120
- ${baseTheme}`;
121
- var duplicateThemes = names.map(function(n) {
122
- return `export const ${n} = ${name2}`;
122
+ ${baseTheme}`, names.forEach(function(n) {
123
+ exported += `
124
+ ${n}: ${name2},`, n.toLowerCase() === n && (themeTypes += `
125
+ | '${n}'`);
123
126
  });
124
- out += `
127
+ }), out += `
128
+
129
+ ${themeTypes}
125
130
 
126
- ` + duplicateThemes.join(`
127
- `);
128
- }), out;
131
+ ${exported}
132
+ }
133
+ `, out;
129
134
  }
130
135
  function objectToJsString(obj, keys, valueToIndex) {
131
136
  var arrItems = [];
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/Users/n8/tamagui/code/core/generate-themes/src/generate-themes.ts"],
4
- "mappings": "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",
5
- "names": ["Module", "join", "ogRequire", "prototype", "require", "didRegisterOnce", "generateThemes", "inputFile", "register", "hookIgnoreNodeModules", "inputFilePath", "process", "cwd", "purgeCache", "promise", "id", "out", "apply", "arguments", "resolve", "Promise", "res", "createThemeIntercept", "onComplete", "result", "themeBuilder", "requiredThemes", "themes", "Object", "keys", "generatedThemes", "generatedThemesToTypescript", "tm", "finished", "then", "setTimeout", "console", "warn", "clearTimeout", "generated", "state", "err", "dedupedTokens", "Map", "dedupedThemes", "dedupedThemeToNames", "i", "name", "theme", "j", "entries", "key", "value", "uniqueKey", "has", "set", "JSON", "stringify", "get", "Error", "baseKeys", "light", "baseTypeString", "map", "k", "index", "valueToIndex", "forEach", "nameI", "names", "baseTheme", "objectToJsString", "duplicateThemes", "n", "obj", "arrItems", "ki", "indexOf", "vi", "push", "createThemeExport", "themeBuilderInterceptOpts", "Proxy", "target", "Reflect", "thisArg", "argArray", "builder", "themeBuilderIntercept", "moduleName", "searchCache", "mod", "cache", "module", "constructor", "_pathCache", "cacheKey", "callback", "undefined", "traverse", "depth", "children", "child"]
4
+ "mappings": "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",
5
+ "names": ["Module", "join", "ogRequire", "prototype", "require", "didRegisterOnce", "generateThemes", "inputFile", "register", "hookIgnoreNodeModules", "inputFilePath", "process", "cwd", "purgeCache", "promise", "id", "out", "apply", "arguments", "resolve", "Promise", "res", "createThemeIntercept", "onComplete", "result", "themeBuilder", "og", "env", "TAMAGUI_KEEP_THEMES", "requiredThemes", "themes", "Object", "keys", "generatedThemes", "generatedThemesToTypescript", "tm", "finished", "then", "setTimeout", "console", "warn", "clearTimeout", "generated", "state", "err", "dedupedTokens", "Map", "dedupedThemes", "dedupedThemeToNames", "i", "name", "theme", "j", "entries", "key", "value", "uniqueKey", "has", "set", "JSON", "stringify", "get", "Error", "baseKeys", "light", "baseTypeString", "map", "k", "index", "valueToIndex", "forEach", "nameI", "themeTypes", "exported", "names", "baseTheme", "objectToJsString", "n", "toLowerCase", "obj", "arrItems", "ki", "indexOf", "vi", "push", "createThemeExport", "themeBuilderInterceptOpts", "Proxy", "target", "Reflect", "thisArg", "argArray", "builder", "themeBuilderIntercept", "moduleName", "searchCache", "mod", "cache", "module", "constructor", "_pathCache", "cacheKey", "callback", "undefined", "traverse", "depth", "children", "child"]
6
6
  }
@@ -1,4 +1,4 @@
1
- import { join } from "path";
1
+ import { join } from "node:path";
2
2
  import * as fs from "fs-extra";
3
3
  async function writeGeneratedThemes(tamaguiDotDir, outPath, generatedOutput) {
4
4
  if (!generatedOutput) return;
@@ -1,4 +1,4 @@
1
- import { join } from "path";
1
+ import { join } from "node:path";
2
2
  import * as fs from "fs-extra";
3
3
  async function writeGeneratedThemes(tamaguiDotDir, outPath, generatedOutput) {
4
4
  if (!generatedOutput) return;
@@ -1,4 +1,4 @@
1
- import { join } from "path";
1
+ import { join } from "node:path";
2
2
  import * as fs from "fs-extra";
3
3
  async function writeGeneratedThemes(tamaguiDotDir, outPath, generatedOutput) {
4
4
  if (generatedOutput) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tamagui/generate-themes",
3
- "version": "1.121.12-1737184001189",
3
+ "version": "1.121.12-1737239089067",
4
4
  "source": "src/index.ts",
5
5
  "types": "./types/index.d.ts",
6
6
  "main": "dist/cjs",
@@ -33,13 +33,13 @@
33
33
  "clean:build": "tamagui-build clean:build"
34
34
  },
35
35
  "dependencies": {
36
- "@tamagui/create-theme": "1.121.12-1737184001189",
37
- "@tamagui/theme-builder": "1.121.12-1737184001189",
38
- "@tamagui/types": "1.121.12-1737184001189",
36
+ "@tamagui/create-theme": "1.121.12-1737239089067",
37
+ "@tamagui/theme-builder": "1.121.12-1737239089067",
38
+ "@tamagui/types": "1.121.12-1737239089067",
39
39
  "esbuild-register": "^3.6.0",
40
40
  "fs-extra": "^11.2.0"
41
41
  },
42
42
  "devDependencies": {
43
- "@tamagui/build": "1.121.12-1737184001189"
43
+ "@tamagui/build": "1.121.12-1737239089067"
44
44
  }
45
45
  }
@@ -44,6 +44,9 @@ export async function generateThemes(inputFile: string) {
44
44
  return out
45
45
  }
46
46
 
47
+ let og = process.env.TAMAGUI_KEEP_THEMES
48
+ process.env.TAMAGUI_KEEP_THEMES = '1'
49
+
47
50
  try {
48
51
  const requiredThemes = require(inputFilePath)
49
52
  const themes =
@@ -79,6 +82,7 @@ export async function generateThemes(inputFile: string) {
79
82
  } catch (err) {
80
83
  console.warn(` ⚠️ Error running theme builder: ${err}`, err?.['stack'])
81
84
  } finally {
85
+ process.env.TAMAGUI_KEEP_THEMES = og
82
86
  Module.prototype.require = ogRequire
83
87
  }
84
88
  }
@@ -166,6 +170,10 @@ function t(a: [number, number][]) {
166
170
 
167
171
  // add all themes
168
172
  let nameI = 0
173
+
174
+ let themeTypes = `type ThemeNames =`
175
+ let exported = `export const themes: Record<ThemeNames, Theme> = {`
176
+
169
177
  dedupedThemes.forEach((theme) => {
170
178
  nameI++
171
179
  const key = JSON.stringify(theme)
@@ -173,10 +181,17 @@ function t(a: [number, number][]) {
173
181
  const name = `n${nameI}`
174
182
  const baseTheme = `const ${name} = ${objectToJsString(theme, keys, valueToIndex)}`
175
183
  out += `\n${baseTheme}`
176
- const duplicateThemes = names.map((n) => `export const ${n} = ${name}`)
177
- out += `\n\n` + duplicateThemes.join('\n')
184
+ names.forEach((n) => {
185
+ exported += `\n ${n}: ${name},`
186
+
187
+ if (n.toLowerCase() === n) {
188
+ themeTypes += `\n | '${n}'`
189
+ }
190
+ })
178
191
  })
179
192
 
193
+ out += `\n\n${themeTypes}\n\n${exported}\n}\n`
194
+
180
195
  return out
181
196
  }
182
197
 
@@ -238,14 +253,14 @@ function themeBuilderIntercept(
238
253
  function purgeCache(moduleName) {
239
254
  // Traverse the cache looking for the files
240
255
  // loaded by the specified module name
241
- searchCache(moduleName, function (mod) {
256
+ searchCache(moduleName, (mod) => {
242
257
  delete require.cache[mod.id]
243
258
  })
244
259
 
245
260
  // Remove cached paths to the module.
246
261
  // Thanks to @bentael for pointing this out.
247
262
  // @ts-ignore
248
- Object.keys(module.constructor._pathCache).forEach(function (cacheKey) {
263
+ Object.keys(module.constructor._pathCache).forEach((cacheKey) => {
249
264
  if (cacheKey.indexOf(moduleName) > 0) {
250
265
  // @ts-ignore
251
266
  delete module.constructor._pathCache[cacheKey]
@@ -273,7 +288,7 @@ function searchCache(moduleName, callback) {
273
288
  // Go over each of the module's children and
274
289
  // traverse them
275
290
  // @ts-ignore
276
- mod.children.forEach(function (child) {
291
+ mod.children.forEach((child) => {
277
292
  traverse(child, depth + 1)
278
293
  })
279
294
 
@@ -1,4 +1,4 @@
1
- import { join } from 'path'
1
+ import { join } from 'node:path'
2
2
 
3
3
  import * as fs from 'fs-extra'
4
4
 
@@ -1 +1 @@
1
- {"version":3,"file":"generate-themes.d.ts","sourceRoot":"","sources":["../src/generate-themes.ts"],"names":[],"mappings":"AAYA,wBAAsB,cAAc,CAAC,SAAS,EAAE,MAAM;;;eAuErD"}
1
+ {"version":3,"file":"generate-themes.d.ts","sourceRoot":"","sources":["../src/generate-themes.ts"],"names":[],"mappings":"AAYA,wBAAsB,cAAc,CAAC,SAAS,EAAE,MAAM;;;eA2ErD"}