@hanzogui/generate-themes 3.0.6 → 4.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/generate-themes.cjs +100 -59
- package/dist/cjs/generate-themes.native.js +118 -76
- package/dist/cjs/generate-themes.native.js.map +1 -1
- package/dist/cjs/index.cjs +7 -5
- package/dist/cjs/index.native.js +7 -5
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/cjs/write-generate-themes.cjs +32 -24
- package/dist/cjs/write-generate-themes.native.js +39 -33
- package/dist/cjs/write-generate-themes.native.js.map +1 -1
- package/dist/esm/generate-themes.mjs +88 -49
- package/dist/esm/generate-themes.mjs.map +1 -1
- package/dist/esm/generate-themes.native.js +105 -65
- package/dist/esm/generate-themes.native.js.map +1 -1
- package/dist/esm/write-generate-themes.mjs +8 -2
- package/dist/esm/write-generate-themes.mjs.map +1 -1
- package/dist/esm/write-generate-themes.native.js +15 -11
- package/dist/esm/write-generate-themes.native.js.map +1 -1
- package/package.json +1 -1
- package/src/generate-themes.ts +4 -4
|
@@ -1,67 +1,87 @@
|
|
|
1
1
|
import { join } from "path";
|
|
2
|
-
var didRegisterOnce =
|
|
2
|
+
var didRegisterOnce = false;
|
|
3
3
|
async function generateThemes(inputFile) {
|
|
4
4
|
var inputFilePath = inputFile[0] === "." ? join(process.cwd(), inputFile) : inputFile;
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
5
|
+
if (!didRegisterOnce) {
|
|
6
|
+
didRegisterOnce = true;
|
|
7
|
+
require("esbuild-register/dist/node").register({
|
|
8
|
+
hookIgnoreNodeModules: false
|
|
9
|
+
});
|
|
10
|
+
} else {
|
|
11
|
+
purgeCache(inputFilePath);
|
|
12
|
+
}
|
|
13
|
+
var og = process.env.GUI_KEEP_THEMES;
|
|
14
|
+
process.env.GUI_KEEP_THEMES = "1";
|
|
15
|
+
process.env.GUI_RUN_THEMEBUILDER = "1";
|
|
10
16
|
try {
|
|
11
|
-
var requiredThemes = require(inputFilePath)
|
|
12
|
-
|
|
13
|
-
|
|
17
|
+
var requiredThemes = require(inputFilePath);
|
|
18
|
+
var themes = requiredThemes["default"] || requiredThemes["themes"] || requiredThemes[Object.keys(requiredThemes)[0]];
|
|
19
|
+
var generatedThemes = generatedThemesToTypescript(themes);
|
|
14
20
|
return {
|
|
15
21
|
generated: generatedThemes
|
|
16
22
|
};
|
|
17
23
|
} catch (err) {
|
|
18
24
|
console.warn(` \u26A0\uFE0F Error running theme builder:
|
|
19
|
-
`, err
|
|
25
|
+
`, (err === null || err === void 0 ? void 0 : err["stack"]) || err);
|
|
20
26
|
} finally {
|
|
21
|
-
process.env.
|
|
27
|
+
process.env.GUI_KEEP_THEMES = og;
|
|
22
28
|
}
|
|
23
29
|
}
|
|
24
30
|
var dedupedTokens = /* @__PURE__ */new Map();
|
|
25
31
|
function generatedThemesToTypescript(themes) {
|
|
26
|
-
var dedupedThemes = /* @__PURE__ */new Map()
|
|
27
|
-
|
|
28
|
-
|
|
32
|
+
var dedupedThemes = /* @__PURE__ */new Map();
|
|
33
|
+
var dedupedThemeToNames = /* @__PURE__ */new Map();
|
|
34
|
+
var i = 0;
|
|
29
35
|
for (var name in themes) {
|
|
30
36
|
i++;
|
|
31
|
-
var theme = themes[name]
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
_didIteratorError =
|
|
37
|
+
var theme = themes[name];
|
|
38
|
+
var j = 0;
|
|
39
|
+
var _iteratorNormalCompletion = true,
|
|
40
|
+
_didIteratorError = false,
|
|
35
41
|
_iteratorError = void 0;
|
|
36
42
|
try {
|
|
37
|
-
for (var _iterator = Object.entries(theme)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion =
|
|
43
|
+
for (var _iterator = Object.entries(theme)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
|
|
38
44
|
var [key, value] = _step.value;
|
|
39
45
|
i++;
|
|
40
46
|
var uniqueKey = `t${i}${j}`;
|
|
41
|
-
dedupedTokens.has(value)
|
|
47
|
+
if (!dedupedTokens.has(value)) {
|
|
48
|
+
dedupedTokens.set(value, uniqueKey);
|
|
49
|
+
}
|
|
42
50
|
}
|
|
43
51
|
} catch (err) {
|
|
44
|
-
_didIteratorError =
|
|
52
|
+
_didIteratorError = true;
|
|
53
|
+
_iteratorError = err;
|
|
45
54
|
} finally {
|
|
46
55
|
try {
|
|
47
|
-
!_iteratorNormalCompletion && _iterator.return != null
|
|
56
|
+
if (!_iteratorNormalCompletion && _iterator.return != null) {
|
|
57
|
+
_iterator.return();
|
|
58
|
+
}
|
|
48
59
|
} finally {
|
|
49
|
-
if (_didIteratorError)
|
|
60
|
+
if (_didIteratorError) {
|
|
61
|
+
throw _iteratorError;
|
|
62
|
+
}
|
|
50
63
|
}
|
|
51
64
|
}
|
|
52
65
|
var key1 = JSON.stringify(theme);
|
|
53
|
-
dedupedThemes.has(key1)
|
|
66
|
+
if (dedupedThemes.has(key1)) {
|
|
67
|
+
dedupedThemeToNames.set(key1, [...dedupedThemeToNames.get(key1), name]);
|
|
68
|
+
} else {
|
|
69
|
+
dedupedThemes.set(key1, theme);
|
|
70
|
+
dedupedThemeToNames.set(key1, [name]);
|
|
71
|
+
}
|
|
54
72
|
}
|
|
55
|
-
if (!themes)
|
|
56
|
-
|
|
57
|
-
|
|
73
|
+
if (!themes) {
|
|
74
|
+
throw new Error(`Didn't find any themes exported or returned`);
|
|
75
|
+
}
|
|
76
|
+
var baseKeys = Object.entries(themes.light || themes[Object.keys(themes)[0]]);
|
|
77
|
+
var baseTypeString = `export type Theme = {
|
|
58
78
|
${baseKeys.map(function (param) {
|
|
59
|
-
|
|
60
|
-
|
|
79
|
+
var [k] = param;
|
|
80
|
+
return ` ${k}: string;
|
|
61
81
|
`;
|
|
62
|
-
|
|
63
|
-
}
|
|
64
|
-
|
|
82
|
+
}).join("")}
|
|
83
|
+
}`;
|
|
84
|
+
var out = `${baseTypeString}
|
|
65
85
|
`;
|
|
66
86
|
out += `
|
|
67
87
|
function t(a: [number, number][]) {
|
|
@@ -71,57 +91,66 @@ function t(a: [number, number][]) {
|
|
|
71
91
|
}
|
|
72
92
|
return res as Theme
|
|
73
93
|
}
|
|
74
|
-
`, out += `export const colors = [
|
|
75
94
|
`;
|
|
76
|
-
|
|
77
|
-
valueToIndex = {};
|
|
78
|
-
dedupedTokens.forEach(function (name2, value2) {
|
|
79
|
-
valueToIndex[value2] = index, index++, out += ` '${value2}',
|
|
95
|
+
out += `export const colors = [
|
|
80
96
|
`;
|
|
81
|
-
|
|
82
|
-
|
|
97
|
+
var index = 0;
|
|
98
|
+
var valueToIndex = {};
|
|
99
|
+
dedupedTokens.forEach(function (name2, value2) {
|
|
100
|
+
valueToIndex[value2] = index;
|
|
101
|
+
index++;
|
|
102
|
+
out += ` '${value2}',
|
|
83
103
|
`;
|
|
104
|
+
});
|
|
105
|
+
out += "]\n\n";
|
|
84
106
|
var keys = baseKeys.map(function (param) {
|
|
85
107
|
var [k] = param;
|
|
86
108
|
return k;
|
|
87
109
|
});
|
|
88
110
|
out += `const ks = [
|
|
89
|
-
|
|
111
|
+
`;
|
|
112
|
+
out += keys.map(function (k) {
|
|
90
113
|
return `'${k}'`;
|
|
91
|
-
}).join(
|
|
92
|
-
|
|
114
|
+
}).join(",\n");
|
|
115
|
+
out += `]
|
|
93
116
|
|
|
94
117
|
`;
|
|
95
|
-
var nameI = 0
|
|
96
|
-
|
|
97
|
-
|
|
118
|
+
var nameI = 0;
|
|
119
|
+
var themeTypes = `export type ThemeNames =`;
|
|
120
|
+
var exported = `export type Themes = Record<ThemeNames, Theme>
|
|
98
121
|
|
|
99
122
|
export const themes: Themes = {`;
|
|
100
|
-
|
|
123
|
+
dedupedThemes.forEach(function (theme2) {
|
|
101
124
|
nameI++;
|
|
102
|
-
var key2 = JSON.stringify(theme2)
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
125
|
+
var key2 = JSON.stringify(theme2);
|
|
126
|
+
var names = dedupedThemeToNames.get(key2);
|
|
127
|
+
var name2 = `n${nameI}`;
|
|
128
|
+
var baseTheme = `const ${name2} = ${objectToJsString(theme2, keys, valueToIndex)}`;
|
|
106
129
|
out += `
|
|
107
|
-
${baseTheme}
|
|
130
|
+
${baseTheme}`;
|
|
131
|
+
names.forEach(function (n) {
|
|
108
132
|
exported += `
|
|
109
|
-
${n}: ${name2}
|
|
110
|
-
|
|
133
|
+
${n}: ${name2},`;
|
|
134
|
+
if (n.toLowerCase() === n) {
|
|
135
|
+
themeTypes += `
|
|
136
|
+
| '${n}'`;
|
|
137
|
+
}
|
|
111
138
|
});
|
|
112
|
-
})
|
|
139
|
+
});
|
|
140
|
+
out += `
|
|
113
141
|
|
|
114
142
|
${themeTypes}
|
|
115
143
|
|
|
116
144
|
${exported}
|
|
117
145
|
}
|
|
118
|
-
|
|
146
|
+
`;
|
|
147
|
+
return out;
|
|
119
148
|
}
|
|
120
149
|
function objectToJsString(obj, keys, valueToIndex) {
|
|
121
150
|
var arrItems = [];
|
|
122
151
|
for (var key in obj) {
|
|
123
|
-
var ki = keys.indexOf(key)
|
|
124
|
-
|
|
152
|
+
var ki = keys.indexOf(key);
|
|
153
|
+
var vi = valueToIndex[obj[key]];
|
|
125
154
|
arrItems.push(`[${ki}, ${vi}]`);
|
|
126
155
|
}
|
|
127
156
|
return `t([${arrItems.join(",")}])`;
|
|
@@ -129,18 +158,29 @@ function objectToJsString(obj, keys, valueToIndex) {
|
|
|
129
158
|
function purgeCache(moduleName) {
|
|
130
159
|
searchCache(moduleName, function (mod) {
|
|
131
160
|
delete require.cache[mod.id];
|
|
132
|
-
})
|
|
133
|
-
|
|
161
|
+
});
|
|
162
|
+
if (!module.constructor || !module.constructor._pathCache) {
|
|
163
|
+
return;
|
|
164
|
+
}
|
|
165
|
+
Object.keys(module.constructor._pathCache).forEach(function (cacheKey) {
|
|
166
|
+
if (cacheKey.indexOf(moduleName) > 0) {
|
|
167
|
+
delete module.constructor._pathCache[cacheKey];
|
|
168
|
+
}
|
|
134
169
|
});
|
|
135
170
|
}
|
|
136
171
|
function searchCache(moduleName, callback) {
|
|
137
172
|
var mod = require.resolve(moduleName);
|
|
138
|
-
mod && (mod = require.cache[mod]) !== void 0
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
173
|
+
if (mod && (mod = require.cache[mod]) !== void 0) {
|
|
174
|
+
;
|
|
175
|
+
(function traverse(mod2) {
|
|
176
|
+
var depth = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : 0;
|
|
177
|
+
if (depth > 10) return;
|
|
178
|
+
mod2.children.forEach(function (child) {
|
|
179
|
+
traverse(child, depth + 1);
|
|
180
|
+
});
|
|
181
|
+
callback(mod2);
|
|
182
|
+
})(mod);
|
|
183
|
+
}
|
|
144
184
|
}
|
|
145
185
|
export { generateThemes };
|
|
146
186
|
//# sourceMappingURL=generate-themes.native.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["join","didRegisterOnce","generateThemes","inputFile","inputFilePath","process","cwd","
|
|
1
|
+
{"version":3,"names":["join","didRegisterOnce","generateThemes","inputFile","inputFilePath","process","cwd","require","register","hookIgnoreNodeModules","purgeCache","og","env","GUI_KEEP_THEMES","GUI_RUN_THEMEBUILDER","requiredThemes","themes","Object","keys","generatedThemes","generatedThemesToTypescript","generated","err","console","warn","dedupedTokens","Map","dedupedThemes","dedupedThemeToNames","i","name","theme","j","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","entries","Symbol","iterator","_step","next","done","key","value","uniqueKey","has","set","return","key1","JSON","stringify","get","Error","baseKeys","light","baseTypeString","map","param","k","out","index","valueToIndex","forEach","name2","value2","nameI","themeTypes","exported","theme2","key2","names","baseTheme","objectToJsString","n","toLowerCase","mod","obj","arrItems","ki","indexOf","vi","push"],"sources":["../../src/generate-themes.ts"],"sourcesContent":[null],"mappings":"AACA,SAASA,IAAA,QAAY;AAMrB,IAAIC,eAAA,GAAkB;AAEtB,eAAsBC,eAAeC,SAAA,EAAmB;EACtD,IAAAC,aAAM,GAAAD,SAAgB,GAAU,KAAC,GAAM,GAAAH,IAAM,CAAAK,OAAK,CAAAC,GAAQ,IAAIH,SAAG,IAASA,SAAI;EAE9E,IAAI,CAACF,eAAA,EAAiB;IACpBA,eAAA,GAAkB;IAElBM,OAAA,CAAQ,4BAA4B,EAAEC,QAAA,CAAS;MAC7CC,qBAAA,EAAuB;IACzB,CAAC;EACH,OAAO;IACLC,UAAA,CAAWN,aAAa;EAC1B;EAEA,IAAIO,EAAA,GAAKN,OAAA,CAAQO,GAAA,CAAIC,eAAA;EACrBR,OAAA,CAAQO,GAAA,CAAIC,eAAA,GAAkB;EAC9BR,OAAA,CAAQO,GAAA,CAAIE,oBAAA,GAAuB;EAEnC,IAAI;IACF,IAAAC,cAAM,GAAAR,OAAiB,CAAAH,aAAQ;IAE/B,IAAAY,MAAM,GAAAD,cACJ,UAAe,KAASA,cACxB,SAAe,KAAQA,cACvB,CAAAE,MAAe,CAAAC,IAAO,CAAAH,cAAK,EAAc,EAAE,CAAC;IAE9C,IAAAI,eAAM,GAAAC,2BAAkB,CAAAJ,MAA4B;IAEpD,OAAO;MACLK,SAAA,EAAWF;IACb;EACF,SAASG,GAAA,EAAK;IACZC,OAAA,CAAQC,IAAA,CAAK;AAAA,GAAsC,CAAAF,GAAA,KAAM,IAAO,IAAAA,GAAK,KAAG,kBAAAA,GAAA,cAAAA,GAAA;EAC1E,UAAE;IACAjB,OAAA,CAAQO,GAAA,CAAIC,eAAA,GAAkBF,EAAA;EAChC;AACF;AAKA,IAAAc,aAAM,kBAAgB,IAAAC,GAAI;AAE1B,SAASN,4BAA4BJ,MAAA,EAA6B;EAChE,IAAAW,aAAM,kBAAgB,IAAAD,GAAI;EAC1B,IAAAE,mBAAM,kBAAsB,IAAAF,GAAI;EAEhC,IAAIG,CAAA,GAAI;EACR,SAAAC,IAAW,IAAAd,MAAQ;IACjBa,CAAA;IAEA,IAAAE,KAAM,GAAAf,MAAgC,CAAAc,IAAO;IAG7C,IAAIE,CAAA,GAAI;IACR,IAAAC,yBAA2B,OAAO;MAAAC,iBAAgB;MAAAC,cAAA;IAChD;MACA,SAAMC,SAAY,GAAAnB,MAAS,CAAAoB,OAAA,CAAAN,KAAA,EAAAO,MAAA,CAAAC,QAAA,KAAAC,KAAA,IAAAP,yBAAA,IAAAO,KAAA,GAAAJ,SAAA,CAAAK,IAAA,IAAAC,IAAA,GAAAT,yBAAA;QAC3B,IAAK,CAAAU,GAAA,EAAAC,KAAA,IAAcJ,KAAI,CAAAI,KAAQ;QAC7Bf,CAAA;QACF,IAAAgB,SAAA,OAAAhB,CAAA,GAAAG,CAAA;QACF,KAAAP,aAAA,CAAAqB,GAAA,CAAAF,KAAA;UAEMnB,aAAW,CAAAsB,GAAA,CAAAH,KAAU,EAAAC,SAAK;QAC5B;MACF;IACF,SAAOvB,GAAA;MACLY,iBAAc,GAAI,IAAK;MACvBC,cAAA,GAAAb,GAAoB;IACtB;MACF;QAEK,KAAAW,yBAAQ,IAAAG,SAAA,CAAAY,MAAA;UACLZ,SAAI,CAAMY,MAAA;QAClB;MAEA,UAAM;QAKA,IAAAd,iBAAiB;UACvB,MACMC,cAAQ;QACZ;MAAa;IACd;IACQ,IAAAc,IAAA,GAAAC,IAAA,CAAAC,SAAA,CAAApB,KAAA;IAGT,IAAIJ,aAAS,CAAAmB,GAAA,CAAAG,IAAc;MAAArB,mBAAA,CAAAmB,GAAA,CAAAE,IAAA,GAG3B,GAAOrB,mBAAA,CAAAwB,GAAA,CAAAH,IAAA,GAAAnB,IAAA;IAAA;MAAAH,aAAA,CAAAoB,GAAA,CAAAE,IAAA,EAAAlB,KAAA;MAAAH,mBAAA,CAAAmB,GAAA,CAAAE,IAAA,GAAAnB,IAAA;IAAA;EAWP;EAAO,KAAAd,MAAA;IACP,MAAI,IAAQqC,KAAA;EACZ;EACA,IAAAC,QAAA,GAAcrC,MAAA,CAAQoB,OAAO,CAAArB,MAAA,CAAAuC,KAAU,IAAAvC,MAAA,CAAAC,MAAA,CAAAC,IAAA,CAAAF,MAAA;EACrC,IAAAwC,cAAa,GAAK;AAClB,EAAAF,QAAA,CAAAG,GAAA,WAAAC,KAAA;IACA,KAAAC,CAAA,CAAO,GAAAD,KAAM;IAAK,YAAAC,CAAA;AAAA;EAEpB,GAAA3D,IAAO;AAGP;EACA,IAAA4D,GAAO,MAAAJ,cAAA;AAAA;EACPI,GAAA,IAAO;AACP;AAAO;AAAA;AAGP;AAEA;AACA;AAAe;AAAA;EAEfA,GAAA;AACE;EACA,IAAAC,KAAM;EACN,IAAAC,YAAc;EACdrC,aAAM,CAAAsC,OAAW,WAAKC,KAAA,EAAAC,MAAA;IACtBH,YAAM,CAAAG,MAAY,IAAAJ,KAAS;IAC3BA,KAAA,EAAO;IAAKD,GAAA,IAAS,MAAAK,MAAA;AACrB;EACE;EAAYL,GAAQ,WAAS;EAE7B,IAAA1C,IAAI,GAAEoC,QAAA,CAAAG,GAAY,WAASC,KAAA;IACzB,KAAAC,CAAA,IAAAD,KAAA;IAAc,OAAUC,CAAA;EAAA;EAC1BC,GACD;AAAA;EAGHA,GAAA,IAAO1C,IAAA,CAAAuC,GAAA,WAAAE,CAAA;IAAA,WAAAA,CAAA;EAAO,GAAA3D,IAAA,MAAU;EAAA4D,GAAA;AAAA;AAAe;EAAA,IAAAM,KAAA;EAEvC,IAAAC,UAAO;EACT,IAAAC,QAAA;AAEA;AAKE,gCAA0B;EAC1BzC,aAAW,CAAAoC,OAAO,WAAKM,MAAA;IACrBH,KAAA,EAAM;IACN,IAAAI,IAAM,GAAKpB,IAAA,CAAAC,SAAa,CAAAkB,MAAQ;IAChC,IAAAE,KAAS,GAAA3C,mBAAqB,CAAAwB,GAAA,CAAAkB,IAAA;IAChC,IAAAN,KAAA,OAAAE,KAAA;IACA,IAAAM,SAAa,YAAcR,KAAI,MAAAS,gBAAA,CAAAJ,MAAA,EAAAnD,IAAA,EAAA4C,YAAA;IACjCF,GAAA;AAKA,EAAAY,SAAS;IAGPD,KAAA,CAAAR,OAAY,WAAaW,CAAA;MACvBN,QAAO;AAAoB,IAC5BM,CAAA,KAAAV,KAAA;MAGG,IAACU,CAAA,CAAAC,WAAO,OAAgBD,CAAA;QAE1BP,UAAA;AAAA,MACFO,CAAA;MAKA;IACE;EAEE;EAA6Cd,GAC/C;AAAA;AAEJ,EAAAO,UAAA;AAMA;AAEE,EAAAC,QAAI;AAKJ;AAEE;EAAC,OAACR,GAAA;AAEA;AAKA,SAAAa,gBAAaG,CAAAC,GAAS,EAAA3D,IAAA,EAAA4C,YAAU;EAC9B,IAAAgB,QAAA,GAAS;EAAgB,KAC1B,IAAAnC,GAAA,IAAAkC,GAAA;IAID,IAAAE,EAAA,GAAA7D,IAAS,CAAA8D,OAAG,CAAArC,GAAA;IACd,IAAGsC,EAAG,GAAAnB,YAAA,CAAAe,GAAA,CAAAlC,GAAA;IACRmC,QAAA,CAAAI,IAAA,KAAAH,EAAA,KAAAE,EAAA;EACF","ignoreList":[]}
|
|
@@ -4,10 +4,16 @@ async function writeGeneratedThemes(guiDotDir, outPath, generatedOutput) {
|
|
|
4
4
|
const {
|
|
5
5
|
generated
|
|
6
6
|
} = generatedOutput;
|
|
7
|
-
process.env.DEBUG === "@hanzo/gui"
|
|
7
|
+
if (process.env.DEBUG === "@hanzo/gui") {
|
|
8
|
+
console.info(`Generated themes:`, JSON.stringify(generatedOutput, null, 2));
|
|
9
|
+
}
|
|
8
10
|
const newContent = `// @ts-nocheck
|
|
9
11
|
` + generated;
|
|
10
|
-
|
|
12
|
+
const existingContent = await fs.readFile(outPath, "utf-8").catch(() => null);
|
|
13
|
+
if (existingContent === newContent) {
|
|
14
|
+
return;
|
|
15
|
+
}
|
|
16
|
+
await fs.writeFile(outPath, newContent);
|
|
11
17
|
}
|
|
12
18
|
export { writeGeneratedThemes };
|
|
13
19
|
//# sourceMappingURL=write-generate-themes.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["fs","writeGeneratedThemes","guiDotDir","outPath","generatedOutput","generated","process","env","DEBUG","console","info","JSON","stringify","newContent","readFile","catch","writeFile"],"sources":["../../src/write-generate-themes.ts"],"sourcesContent":[null],"mappings":"AAAA,YAAYA,EAAA,MAAQ;AAIpB,eAAsBC,qBACpBC,SAAA,EACAC,OAAA,EACAC,eAAA,EACA;EACA,IAAI,CAACA,eAAA,EAAiB;EAEtB,MAAM;IAAEC;EAAU,IAAID,eAAA;
|
|
1
|
+
{"version":3,"names":["fs","writeGeneratedThemes","guiDotDir","outPath","generatedOutput","generated","process","env","DEBUG","console","info","JSON","stringify","newContent","existingContent","readFile","catch","writeFile"],"sources":["../../src/write-generate-themes.ts"],"sourcesContent":[null],"mappings":"AAAA,YAAYA,EAAA,MAAQ;AAIpB,eAAsBC,qBACpBC,SAAA,EACAC,OAAA,EACAC,eAAA,EACA;EACA,IAAI,CAACA,eAAA,EAAiB;EAEtB,MAAM;IAAEC;EAAU,IAAID,eAAA;EAEtB,IAAIE,OAAA,CAAQC,GAAA,CAAIC,KAAA,KAAU,cAAc;IACtCC,OAAA,CAAQC,IAAA,CAAK,qBAAqBC,IAAA,CAAKC,SAAA,CAAUR,eAAA,EAAiB,MAAM,CAAC,CAAC;EAC5E;EAEA,MAAMS,UAAA,GAAa;AAAA,IAAqBR,SAAA;EAGxC,MAAMS,eAAA,GAAkB,MAAMd,EAAA,CAAGe,QAAA,CAASZ,OAAA,EAAS,OAAO,EAAEa,KAAA,CAAM,MAAM,IAAI;EAC5E,IAAIF,eAAA,KAAoBD,UAAA,EAAY;IAClC;EACF;EAEA,MAAMb,EAAA,CAAGiB,SAAA,CAAUd,OAAA,EAASU,UAAU;AACxC","ignoreList":[]}
|
|
@@ -1,17 +1,21 @@
|
|
|
1
1
|
import * as fs from "fs-extra";
|
|
2
2
|
async function writeGeneratedThemes(guiDotDir, outPath, generatedOutput) {
|
|
3
|
-
if (generatedOutput)
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
` + generated,
|
|
10
|
-
existingContent = await fs.readFile(outPath, "utf-8").catch(function () {
|
|
11
|
-
return null;
|
|
12
|
-
});
|
|
13
|
-
existingContent !== newContent && (await fs.writeFile(outPath, newContent));
|
|
3
|
+
if (!generatedOutput) return;
|
|
4
|
+
var {
|
|
5
|
+
generated
|
|
6
|
+
} = generatedOutput;
|
|
7
|
+
if (process.env.DEBUG === "@hanzo/gui") {
|
|
8
|
+
console.info(`Generated themes:`, JSON.stringify(generatedOutput, null, 2));
|
|
14
9
|
}
|
|
10
|
+
var newContent = `// @ts-nocheck
|
|
11
|
+
` + generated;
|
|
12
|
+
var existingContent = await fs.readFile(outPath, "utf-8").catch(function () {
|
|
13
|
+
return null;
|
|
14
|
+
});
|
|
15
|
+
if (existingContent === newContent) {
|
|
16
|
+
return;
|
|
17
|
+
}
|
|
18
|
+
await fs.writeFile(outPath, newContent);
|
|
15
19
|
}
|
|
16
20
|
export { writeGeneratedThemes };
|
|
17
21
|
//# sourceMappingURL=write-generate-themes.native.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["fs","writeGeneratedThemes","guiDotDir","outPath","generatedOutput","generated","process","env","DEBUG","console","info","JSON","stringify","newContent","existingContent","readFile","catch"],"sources":["../../src/write-generate-themes.ts"],"sourcesContent":[null],"mappings":"AAAA,YAAYA,EAAA,MAAQ;AAIpB,eAAsBC,qBACpBC,SAAA,EACAC,OAAA,EACAC,eAAA,EACA;EACA,
|
|
1
|
+
{"version":3,"names":["fs","writeGeneratedThemes","guiDotDir","outPath","generatedOutput","generated","process","env","DEBUG","console","info","JSON","stringify","newContent","existingContent","readFile","catch"],"sources":["../../src/write-generate-themes.ts"],"sourcesContent":[null],"mappings":"AAAA,YAAYA,EAAA,MAAQ;AAIpB,eAAsBC,qBACpBC,SAAA,EACAC,OAAA,EACAC,eAAA,EACA;EACA,IAAI,CAACA,eAAA,EAAiB;EAEtB;IAAMC;EAAE,IAAUD,eAAI;EAEtB,IAAIE,OAAA,CAAQC,GAAA,CAAIC,KAAA,KAAU,cAAc;IACtCC,OAAA,CAAQC,IAAA,CAAK,qBAAqBC,IAAA,CAAKC,SAAA,CAAUR,eAAA,EAAiB,MAAM,CAAC,CAAC;EAC5E;EAEA,IAAAS,UAAM;AAAa,IAAqBR,SAAA;EAGxC,IAAAS,eAAM,SAAkBd,EAAM,CAAAe,QAAG,CAAAZ,OAAS,SAAS,EAAOa,KAAE,aAAY;IACxE,OAAI;EACF;EACF,IAAAF,eAAA,KAAAD,UAAA;IAEA;EACF","ignoreList":[]}
|
package/package.json
CHANGED
package/src/generate-themes.ts
CHANGED
|
@@ -20,9 +20,9 @@ export async function generateThemes(inputFile: string) {
|
|
|
20
20
|
purgeCache(inputFilePath)
|
|
21
21
|
}
|
|
22
22
|
|
|
23
|
-
let og = process.env.
|
|
24
|
-
process.env.
|
|
25
|
-
process.env.
|
|
23
|
+
let og = process.env.GUI_KEEP_THEMES
|
|
24
|
+
process.env.GUI_KEEP_THEMES = '1'
|
|
25
|
+
process.env.GUI_RUN_THEMEBUILDER = '1'
|
|
26
26
|
|
|
27
27
|
try {
|
|
28
28
|
const requiredThemes = require(inputFilePath)
|
|
@@ -40,7 +40,7 @@ export async function generateThemes(inputFile: string) {
|
|
|
40
40
|
} catch (err) {
|
|
41
41
|
console.warn(` ⚠️ Error running theme builder:\n`, err?.['stack'] || err)
|
|
42
42
|
} finally {
|
|
43
|
-
process.env.
|
|
43
|
+
process.env.GUI_KEEP_THEMES = og
|
|
44
44
|
}
|
|
45
45
|
}
|
|
46
46
|
|