@storm-software/config-tools 1.171.2 → 1.171.4

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 (48) hide show
  1. package/README.md +1 -1
  2. package/dist/chunk-5XVUNKW6.cjs +334 -0
  3. package/dist/chunk-BF3O7ON5.cjs +40 -0
  4. package/dist/chunk-BKQBZMGO.js +193 -0
  5. package/dist/chunk-DGCHLT3G.js +47 -0
  6. package/dist/chunk-E5XT5FVB.cjs +193 -0
  7. package/dist/chunk-FICRNYND.js +158 -0
  8. package/dist/chunk-HYLJGZJL.js +138 -0
  9. package/dist/chunk-JP33UHF2.cjs +158 -0
  10. package/dist/chunk-MFZ5PISG.cjs +40 -0
  11. package/dist/chunk-NUSRFW2L.cjs +138 -0
  12. package/dist/chunk-OMZZPRFS.js +55 -0
  13. package/dist/chunk-T4YF5J4D.js +92 -0
  14. package/dist/chunk-TCSDVRRN.js +334 -0
  15. package/dist/chunk-VV7JCH26.cjs +92 -0
  16. package/dist/chunk-X5KVMDMC.js +40 -0
  17. package/dist/chunk-XU52ZWXV.cjs +47 -0
  18. package/dist/chunk-YKHRNVKI.cjs +55 -0
  19. package/dist/chunk-ZBGGXYLG.js +40 -0
  20. package/dist/config-file/get-config-file.cjs +11 -11
  21. package/dist/config-file/get-config-file.js +10 -10
  22. package/dist/config-file/index.cjs +11 -11
  23. package/dist/config-file/index.js +10 -10
  24. package/dist/create-storm-config.cjs +14 -14
  25. package/dist/create-storm-config.js +13 -13
  26. package/dist/env/get-env.cjs +3 -3
  27. package/dist/env/get-env.js +2 -2
  28. package/dist/env/index.cjs +4 -4
  29. package/dist/env/index.js +6 -6
  30. package/dist/env/set-env.cjs +3 -3
  31. package/dist/env/set-env.js +2 -2
  32. package/dist/get-config.cjs +15 -15
  33. package/dist/get-config.js +14 -14
  34. package/dist/index.cjs +27 -27
  35. package/dist/index.js +42 -42
  36. package/dist/logger/console.cjs +5 -5
  37. package/dist/logger/console.js +4 -4
  38. package/dist/logger/create-logger.cjs +6 -6
  39. package/dist/logger/create-logger.js +5 -5
  40. package/dist/logger/index.cjs +11 -11
  41. package/dist/logger/index.js +11 -11
  42. package/dist/utilities/index.cjs +15 -15
  43. package/dist/utilities/index.js +19 -19
  44. package/dist/utilities/process-handler.cjs +6 -6
  45. package/dist/utilities/process-handler.js +5 -5
  46. package/dist/utilities/toml.cjs +7 -7
  47. package/dist/utilities/toml.js +6 -6
  48. package/package.json +2 -2
package/README.md CHANGED
@@ -21,7 +21,7 @@ This package is part of the <b>⚡Storm-Ops</b> monorepo. The Storm-Ops packages
21
21
 
22
22
  <h3 align="center">💻 Visit <a href="https://stormsoftware.com" target="_blank">stormsoftware.com</a> to stay up to date with this developer</h3><br />
23
23
 
24
- [![Version](https://img.shields.io/badge/version-1.171.0-1fb2a6.svg?style=for-the-badge&color=1fb2a6)](https://prettier.io/)&nbsp;[![Nx](https://img.shields.io/badge/Nx-17.0.2-lightgrey?style=for-the-badge&logo=nx&logoWidth=20&&color=1fb2a6)](http://nx.dev/)&nbsp;[![NextJs](https://img.shields.io/badge/Next.js-14.0.2-lightgrey?style=for-the-badge&logo=nextdotjs&logoWidth=20&color=1fb2a6)](https://nextjs.org/)&nbsp;[![Commitizen friendly](https://img.shields.io/badge/commitizen-friendly-brightgreen.svg?style=for-the-badge&logo=commitlint&color=1fb2a6)](http://commitizen.github.io/cz-cli/)&nbsp;![Semantic-Release](https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg?style=for-the-badge&color=1fb2a6)&nbsp;[![documented with Fumadocs](https://img.shields.io/badge/documented_with-fumadocs-success.svg?style=for-the-badge&logo=readthedocs&color=1fb2a6)](https://fumadocs.vercel.app/)&nbsp;![GitHub Workflow Status (with event)](https://img.shields.io/github/actions/workflow/status/storm-software/storm-ops/cr.yml?style=for-the-badge&logo=github-actions&color=1fb2a6)
24
+ [![Version](https://img.shields.io/badge/version-1.171.2-1fb2a6.svg?style=for-the-badge&color=1fb2a6)](https://prettier.io/)&nbsp;[![Nx](https://img.shields.io/badge/Nx-17.0.2-lightgrey?style=for-the-badge&logo=nx&logoWidth=20&&color=1fb2a6)](http://nx.dev/)&nbsp;[![NextJs](https://img.shields.io/badge/Next.js-14.0.2-lightgrey?style=for-the-badge&logo=nextdotjs&logoWidth=20&color=1fb2a6)](https://nextjs.org/)&nbsp;[![Commitizen friendly](https://img.shields.io/badge/commitizen-friendly-brightgreen.svg?style=for-the-badge&logo=commitlint&color=1fb2a6)](http://commitizen.github.io/cz-cli/)&nbsp;![Semantic-Release](https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg?style=for-the-badge&color=1fb2a6)&nbsp;[![documented with Fumadocs](https://img.shields.io/badge/documented_with-fumadocs-success.svg?style=for-the-badge&logo=readthedocs&color=1fb2a6)](https://fumadocs.vercel.app/)&nbsp;![GitHub Workflow Status (with event)](https://img.shields.io/github/actions/workflow/status/storm-software/storm-ops/cr.yml?style=for-the-badge&logo=github-actions&color=1fb2a6)
25
25
 
26
26
  <!-- prettier-ignore-start -->
27
27
  <!-- markdownlint-disable -->
@@ -0,0 +1,334 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
2
+
3
+ var _chunk7BZWQZUVcjs = require('./chunk-7BZWQZUV.cjs');
4
+
5
+
6
+ var _chunk4JREL2GQcjs = require('./chunk-4JREL2GQ.cjs');
7
+
8
+
9
+ var _chunkC5OTFOQBcjs = require('./chunk-C5OTFOQB.cjs');
10
+
11
+ // src/env/set-env.ts
12
+ var setExtensionEnv = (extensionName, extension) => {
13
+ for (const key of Object.keys(_nullishCoalesce(extension, () => ( {})))) {
14
+ if (extension[key]) {
15
+ const result = _nullishCoalesce(_optionalChain([key, 'optionalAccess', _ => _.replace, 'call', _2 => _2(
16
+ /([A-Z])+/g,
17
+ (input) => input ? _optionalChain([input, 'access', _3 => _3[0], 'optionalAccess', _4 => _4.toUpperCase, 'call', _5 => _5()]) + input.slice(1) : ""
18
+ ), 'access', _6 => _6.split, 'call', _7 => _7(/(?=[A-Z])|[.\-\s_]/), 'access', _8 => _8.map, 'call', _9 => _9((x) => x.toLowerCase())]), () => ( []));
19
+ let extensionKey;
20
+ if (result.length === 0) {
21
+ return;
22
+ }
23
+ if (result.length === 1) {
24
+ extensionKey = _nullishCoalesce(_optionalChain([result, 'access', _10 => _10[0], 'optionalAccess', _11 => _11.toUpperCase, 'call', _12 => _12()]), () => ( ""));
25
+ } else {
26
+ extensionKey = result.reduce((ret, part) => {
27
+ return `${ret}_${part.toLowerCase()}`;
28
+ });
29
+ }
30
+ process.env[`STORM_EXTENSION_${extensionName.toUpperCase()}_${extensionKey.toUpperCase()}`] = extension[key];
31
+ }
32
+ }
33
+ };
34
+ var setConfigEnv = (config) => {
35
+ const prefix = "STORM_";
36
+ if (config.extends) {
37
+ process.env[`${prefix}EXTENDS`] = Array.isArray(config.extends) ? JSON.stringify(config.extends) : config.extends;
38
+ }
39
+ if (config.name) {
40
+ process.env[`${prefix}NAME`] = config.name;
41
+ }
42
+ if (config.namespace) {
43
+ process.env[`${prefix}NAMESPACE`] = config.namespace;
44
+ }
45
+ if (config.owner) {
46
+ process.env[`${prefix}OWNER`] = config.owner;
47
+ }
48
+ if (config.bot) {
49
+ process.env[`${prefix}BOT_NAME`] = config.bot.name;
50
+ process.env[`${prefix}BOT_EMAIL`] = config.bot.email;
51
+ }
52
+ if (config.error) {
53
+ process.env[`${prefix}ERROR_CODES_FILE`] = config.error.codesFile;
54
+ process.env[`${prefix}ERROR_URL`] = config.error.url;
55
+ }
56
+ if (config.release) {
57
+ process.env[`${prefix}RELEASE_BANNER`] = config.release.banner;
58
+ process.env[`${prefix}RELEASE_HEADER`] = config.release.header;
59
+ process.env[`${prefix}RELEASE_FOOTER`] = config.release.footer;
60
+ }
61
+ if (config.account) {
62
+ if (config.account.twitter) {
63
+ process.env[`${prefix}ACCOUNT_TWITTER`] = config.account.twitter;
64
+ }
65
+ if (config.account.discord) {
66
+ process.env[`${prefix}ACCOUNT_DISCORD`] = config.account.discord;
67
+ }
68
+ if (config.account.telegram) {
69
+ process.env[`${prefix}ACCOUNT_TELEGRAM`] = config.account.telegram;
70
+ }
71
+ if (config.account.slack) {
72
+ process.env[`${prefix}ACCOUNT_SLACK`] = config.account.slack;
73
+ }
74
+ if (config.account.medium) {
75
+ process.env[`${prefix}ACCOUNT_MEDIUM`] = config.account.medium;
76
+ }
77
+ if (config.account.github) {
78
+ process.env[`${prefix}ACCOUNT_GITHUB`] = config.account.github;
79
+ }
80
+ }
81
+ if (config.organization) {
82
+ process.env[`${prefix}ORGANIZATION`] = config.organization;
83
+ }
84
+ if (config.packageManager) {
85
+ process.env[`${prefix}PACKAGE_MANAGER`] = config.packageManager;
86
+ }
87
+ if (config.license) {
88
+ process.env[`${prefix}LICENSE`] = config.license;
89
+ }
90
+ if (config.homepage) {
91
+ process.env[`${prefix}HOMEPAGE`] = config.homepage;
92
+ }
93
+ if (config.docs) {
94
+ process.env[`${prefix}DOCS`] = config.docs;
95
+ }
96
+ if (config.licensing) {
97
+ process.env[`${prefix}LICENSING`] = config.licensing;
98
+ }
99
+ if (config.contact) {
100
+ process.env[`${prefix}CONTACT`] = config.contact;
101
+ }
102
+ if (config.support) {
103
+ process.env[`${prefix}SUPPORT`] = config.support;
104
+ }
105
+ if (config.timezone) {
106
+ process.env[`${prefix}TIMEZONE`] = config.timezone;
107
+ process.env.TZ = config.timezone;
108
+ process.env.DEFAULT_TIMEZONE = config.timezone;
109
+ }
110
+ if (config.locale) {
111
+ process.env[`${prefix}LOCALE`] = config.locale;
112
+ process.env.LOCALE = config.locale;
113
+ process.env.DEFAULT_LOCALE = config.locale;
114
+ process.env.LANG = config.locale ? `${config.locale.replaceAll("-", "_")}.UTF-8` : "en_US.UTF-8";
115
+ }
116
+ if (config.configFile) {
117
+ process.env[`${prefix}CONFIG_FILE`] = _chunk4JREL2GQcjs.correctPaths.call(void 0, config.configFile);
118
+ }
119
+ if (config.workspaceRoot) {
120
+ process.env[`${prefix}WORKSPACE_ROOT`] = _chunk4JREL2GQcjs.correctPaths.call(void 0, config.workspaceRoot);
121
+ process.env.NX_WORKSPACE_ROOT = _chunk4JREL2GQcjs.correctPaths.call(void 0, config.workspaceRoot);
122
+ process.env.NX_WORKSPACE_ROOT_PATH = _chunk4JREL2GQcjs.correctPaths.call(void 0, config.workspaceRoot);
123
+ }
124
+ if (config.directories) {
125
+ if (!config.skipCache && config.directories.cache) {
126
+ process.env[`${prefix}CACHE_DIR`] = _chunk4JREL2GQcjs.correctPaths.call(void 0,
127
+ config.directories.cache
128
+ );
129
+ process.env[`${prefix}CACHE_DIRECTORY`] = process.env[`${prefix}CACHE_DIR`];
130
+ }
131
+ if (config.directories.data) {
132
+ process.env[`${prefix}DATA_DIR`] = _chunk4JREL2GQcjs.correctPaths.call(void 0, config.directories.data);
133
+ process.env[`${prefix}DATA_DIRECTORY`] = process.env[`${prefix}DATA_DIR`];
134
+ }
135
+ if (config.directories.config) {
136
+ process.env[`${prefix}CONFIG_DIR`] = _chunk4JREL2GQcjs.correctPaths.call(void 0,
137
+ config.directories.config
138
+ );
139
+ process.env[`${prefix}CONFIG_DIRECTORY`] = process.env[`${prefix}CONFIG_DIR`];
140
+ }
141
+ if (config.directories.temp) {
142
+ process.env[`${prefix}TEMP_DIR`] = _chunk4JREL2GQcjs.correctPaths.call(void 0, config.directories.temp);
143
+ process.env[`${prefix}TEMP_DIRECTORY`] = process.env[`${prefix}TEMP_DIR`];
144
+ }
145
+ if (config.directories.log) {
146
+ process.env[`${prefix}LOG_DIR`] = _chunk4JREL2GQcjs.correctPaths.call(void 0, config.directories.log);
147
+ process.env[`${prefix}LOG_DIRECTORY`] = process.env[`${prefix}LOG_DIR`];
148
+ }
149
+ if (config.directories.build) {
150
+ process.env[`${prefix}BUILD_DIR`] = _chunk4JREL2GQcjs.correctPaths.call(void 0,
151
+ config.directories.build
152
+ );
153
+ process.env[`${prefix}BUILD_DIRECTORY`] = process.env[`${prefix}BUILD_DIR`];
154
+ }
155
+ }
156
+ if (config.skipCache !== void 0) {
157
+ process.env[`${prefix}SKIP_CACHE`] = String(config.skipCache);
158
+ if (config.skipCache) {
159
+ process.env.NX_SKIP_NX_CACHE ??= String(config.skipCache);
160
+ process.env.NX_CACHE_PROJECT_GRAPH ??= String(config.skipCache);
161
+ }
162
+ }
163
+ if (config.mode) {
164
+ process.env[`${prefix}MODE`] = config.mode;
165
+ process.env.NODE_ENV = config.mode;
166
+ process.env.ENVIRONMENT = config.mode;
167
+ }
168
+ if (_optionalChain([config, 'access', _13 => _13.colors, 'optionalAccess', _14 => _14.base, 'optionalAccess', _15 => _15.light]) || _optionalChain([config, 'access', _16 => _16.colors, 'optionalAccess', _17 => _17.base, 'optionalAccess', _18 => _18.dark])) {
169
+ for (const key of Object.keys(config.colors)) {
170
+ setThemeColorConfigEnv(`${prefix}COLOR_${key}_`, config.colors[key]);
171
+ }
172
+ } else {
173
+ setThemeColorConfigEnv(
174
+ `${prefix}COLOR_`,
175
+ config.colors
176
+ );
177
+ }
178
+ if (config.repository) {
179
+ process.env[`${prefix}REPOSITORY`] = config.repository;
180
+ }
181
+ if (config.branch) {
182
+ process.env[`${prefix}BRANCH`] = config.branch;
183
+ }
184
+ if (config.preid) {
185
+ process.env[`${prefix}PRE_ID`] = String(config.preid);
186
+ }
187
+ if (config.externalPackagePatterns) {
188
+ process.env[`${prefix}EXTERNAL_PACKAGE_PATTERNS`] = JSON.stringify(
189
+ config.externalPackagePatterns
190
+ );
191
+ }
192
+ if (config.registry) {
193
+ if (config.registry.github) {
194
+ process.env[`${prefix}REGISTRY_GITHUB`] = String(config.registry.github);
195
+ }
196
+ if (config.registry.npm) {
197
+ process.env[`${prefix}REGISTRY_NPM`] = String(config.registry.npm);
198
+ }
199
+ if (config.registry.cargo) {
200
+ process.env[`${prefix}REGISTRY_CARGO`] = String(config.registry.cargo);
201
+ }
202
+ if (config.registry.cyclone) {
203
+ process.env[`${prefix}REGISTRY_CYCLONE`] = String(
204
+ config.registry.cyclone
205
+ );
206
+ }
207
+ if (config.registry.container) {
208
+ process.env[`${prefix}REGISTRY_CONTAINER`] = String(
209
+ config.registry.container
210
+ );
211
+ }
212
+ }
213
+ if (config.logLevel) {
214
+ process.env[`${prefix}LOG_LEVEL`] = String(config.logLevel);
215
+ process.env.LOG_LEVEL = String(config.logLevel);
216
+ process.env.NX_VERBOSE_LOGGING = String(
217
+ _chunk7BZWQZUVcjs.getLogLevel.call(void 0, config.logLevel) >= _chunkC5OTFOQBcjs.LogLevel.DEBUG ? true : false
218
+ );
219
+ process.env.RUST_BACKTRACE = _chunk7BZWQZUVcjs.getLogLevel.call(void 0, config.logLevel) >= _chunkC5OTFOQBcjs.LogLevel.DEBUG ? "full" : "none";
220
+ }
221
+ if (config.skipConfigLogging !== void 0) {
222
+ process.env[`${prefix}SKIP_CONFIG_LOGGING`] = String(
223
+ config.skipConfigLogging
224
+ );
225
+ }
226
+ process.env[`${prefix}CONFIG`] = JSON.stringify(config);
227
+ for (const key of Object.keys(_nullishCoalesce(config.extensions, () => ( {})))) {
228
+ if (config.extensions[key] && Object.keys(config.extensions[key])) {
229
+ setExtensionEnv(key, config.extensions[key]);
230
+ }
231
+ }
232
+ };
233
+ var setThemeColorConfigEnv = (prefix, config) => {
234
+ return _optionalChain([config, 'optionalAccess', _19 => _19.light, 'optionalAccess', _20 => _20.brand]) || _optionalChain([config, 'optionalAccess', _21 => _21.dark, 'optionalAccess', _22 => _22.brand]) ? setMultiThemeColorConfigEnv(prefix, config) : setSingleThemeColorConfigEnv(prefix, config);
235
+ };
236
+ var setSingleThemeColorConfigEnv = (prefix, config) => {
237
+ if (config.dark) {
238
+ process.env[`${prefix}DARK`] = config.dark;
239
+ }
240
+ if (config.light) {
241
+ process.env[`${prefix}LIGHT`] = config.light;
242
+ }
243
+ if (config.brand) {
244
+ process.env[`${prefix}BRAND`] = config.brand;
245
+ }
246
+ if (config.alternate) {
247
+ process.env[`${prefix}ALTERNATE`] = config.alternate;
248
+ }
249
+ if (config.accent) {
250
+ process.env[`${prefix}ACCENT`] = config.accent;
251
+ }
252
+ if (config.link) {
253
+ process.env[`${prefix}LINK`] = config.link;
254
+ }
255
+ if (config.help) {
256
+ process.env[`${prefix}HELP`] = config.help;
257
+ }
258
+ if (config.success) {
259
+ process.env[`${prefix}SUCCESS`] = config.success;
260
+ }
261
+ if (config.info) {
262
+ process.env[`${prefix}INFO`] = config.info;
263
+ }
264
+ if (config.warning) {
265
+ process.env[`${prefix}WARNING`] = config.warning;
266
+ }
267
+ if (config.danger) {
268
+ process.env[`${prefix}DANGER`] = config.danger;
269
+ }
270
+ if (config.fatal) {
271
+ process.env[`${prefix}FATAL`] = config.fatal;
272
+ }
273
+ if (config.positive) {
274
+ process.env[`${prefix}POSITIVE`] = config.positive;
275
+ }
276
+ if (config.negative) {
277
+ process.env[`${prefix}NEGATIVE`] = config.negative;
278
+ }
279
+ };
280
+ var setMultiThemeColorConfigEnv = (prefix, config) => {
281
+ return {
282
+ light: setBaseThemeColorConfigEnv(`${prefix}LIGHT_`, config.light),
283
+ dark: setBaseThemeColorConfigEnv(`${prefix}DARK_`, config.dark)
284
+ };
285
+ };
286
+ var setBaseThemeColorConfigEnv = (prefix, config) => {
287
+ if (config.foreground) {
288
+ process.env[`${prefix}FOREGROUND`] = config.foreground;
289
+ }
290
+ if (config.background) {
291
+ process.env[`${prefix}BACKGROUND`] = config.background;
292
+ }
293
+ if (config.brand) {
294
+ process.env[`${prefix}BRAND`] = config.brand;
295
+ }
296
+ if (config.alternate) {
297
+ process.env[`${prefix}ALTERNATE`] = config.alternate;
298
+ }
299
+ if (config.accent) {
300
+ process.env[`${prefix}ACCENT`] = config.accent;
301
+ }
302
+ if (config.link) {
303
+ process.env[`${prefix}LINK`] = config.link;
304
+ }
305
+ if (config.help) {
306
+ process.env[`${prefix}HELP`] = config.help;
307
+ }
308
+ if (config.success) {
309
+ process.env[`${prefix}SUCCESS`] = config.success;
310
+ }
311
+ if (config.info) {
312
+ process.env[`${prefix}INFO`] = config.info;
313
+ }
314
+ if (config.warning) {
315
+ process.env[`${prefix}WARNING`] = config.warning;
316
+ }
317
+ if (config.danger) {
318
+ process.env[`${prefix}DANGER`] = config.danger;
319
+ }
320
+ if (config.fatal) {
321
+ process.env[`${prefix}FATAL`] = config.fatal;
322
+ }
323
+ if (config.positive) {
324
+ process.env[`${prefix}POSITIVE`] = config.positive;
325
+ }
326
+ if (config.negative) {
327
+ process.env[`${prefix}NEGATIVE`] = config.negative;
328
+ }
329
+ };
330
+
331
+
332
+
333
+
334
+ exports.setExtensionEnv = setExtensionEnv; exports.setConfigEnv = setConfigEnv;
@@ -0,0 +1,40 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
+
3
+
4
+ var _chunkNUSRFW2Lcjs = require('./chunk-NUSRFW2L.cjs');
5
+
6
+
7
+ var _chunkAEZINHEAcjs = require('./chunk-AEZINHEA.cjs');
8
+
9
+ // src/get-config.ts
10
+ var getConfig = (workspaceRoot, skipLogs = false) => {
11
+ return _chunkNUSRFW2Lcjs.loadStormWorkspaceConfig.call(void 0, workspaceRoot, skipLogs);
12
+ };
13
+ var getWorkspaceConfig = (skipLogs = false, options = {}) => {
14
+ let workspaceRoot = options.workspaceRoot;
15
+ if (!workspaceRoot) {
16
+ workspaceRoot = _chunkAEZINHEAcjs.findWorkspaceRoot.call(void 0, options.cwd);
17
+ }
18
+ return getConfig(workspaceRoot, skipLogs);
19
+ };
20
+ var tryGetWorkspaceConfig = async (skipLogs = false, options = {}) => {
21
+ try {
22
+ let workspaceRoot = options.workspaceRoot;
23
+ if (!workspaceRoot) {
24
+ workspaceRoot = _chunkAEZINHEAcjs.findWorkspaceRoot.call(void 0, options.cwd);
25
+ }
26
+ return _chunkNUSRFW2Lcjs.tryLoadStormWorkspaceConfig.call(void 0,
27
+ workspaceRoot,
28
+ skipLogs,
29
+ options.useDefault
30
+ );
31
+ } catch (e) {
32
+ return void 0;
33
+ }
34
+ };
35
+
36
+
37
+
38
+
39
+
40
+ exports.getConfig = getConfig; exports.getWorkspaceConfig = getWorkspaceConfig; exports.tryGetWorkspaceConfig = tryGetWorkspaceConfig;
@@ -0,0 +1,193 @@
1
+ import {
2
+ getLogLevelLabel
3
+ } from "./chunk-4XRV4CVP.js";
4
+ import {
5
+ correctPaths
6
+ } from "./chunk-FRR2ZRWD.js";
7
+
8
+ // src/env/get-env.ts
9
+ import {
10
+ COLOR_KEYS,
11
+ STORM_DEFAULT_DOCS,
12
+ STORM_DEFAULT_HOMEPAGE,
13
+ STORM_DEFAULT_LICENSING
14
+ } from "@storm-software/config";
15
+ var getExtensionEnv = (extensionName) => {
16
+ const prefix = `STORM_EXTENSION_${extensionName.toUpperCase()}_`;
17
+ return Object.keys(process.env).filter((key) => key.startsWith(prefix)).reduce((ret, key) => {
18
+ const name = key.replace(prefix, "").split("_").map(
19
+ (i) => i.length > 0 ? i.trim().charAt(0).toUpperCase() + i.trim().slice(1) : ""
20
+ ).join("");
21
+ if (name) {
22
+ ret[name] = process.env[key];
23
+ }
24
+ return ret;
25
+ }, {});
26
+ };
27
+ var getConfigEnv = () => {
28
+ const prefix = "STORM_";
29
+ let config = {
30
+ extends: process.env[`${prefix}EXTENDS`] || void 0,
31
+ name: process.env[`${prefix}NAME`] || void 0,
32
+ namespace: process.env[`${prefix}NAMESPACE`] || void 0,
33
+ owner: process.env[`${prefix}OWNER`] || void 0,
34
+ bot: {
35
+ name: process.env[`${prefix}BOT_NAME`] || void 0,
36
+ email: process.env[`${prefix}BOT_EMAIL`] || void 0
37
+ },
38
+ release: {
39
+ banner: process.env[`${prefix}RELEASE_BANNER`] || void 0,
40
+ header: process.env[`${prefix}RELEASE_HEADER`] || void 0,
41
+ footer: process.env[`${prefix}RELEASE_FOOTER`] || void 0
42
+ },
43
+ error: {
44
+ codesFile: process.env[`${prefix}ERROR_CODES_FILE`] || void 0,
45
+ url: process.env[`${prefix}ERROR_URL`] || void 0
46
+ },
47
+ account: {
48
+ twitter: process.env[`${prefix}ACCOUNT_TWITTER`] || void 0,
49
+ discord: process.env[`${prefix}ACCOUNT_DISCORD`] || void 0,
50
+ telegram: process.env[`${prefix}ACCOUNT_TELEGRAM`] || void 0,
51
+ slack: process.env[`${prefix}ACCOUNT_SLACK`] || void 0,
52
+ medium: process.env[`${prefix}ACCOUNT_MEDIUM`] || void 0,
53
+ github: process.env[`${prefix}ACCOUNT_GITHUB`] || void 0
54
+ },
55
+ organization: process.env[`${prefix}ORGANIZATION`] || void 0,
56
+ packageManager: process.env[`${prefix}PACKAGE_MANAGER`] || void 0,
57
+ license: process.env[`${prefix}LICENSE`] || void 0,
58
+ homepage: process.env[`${prefix}HOMEPAGE`] || void 0,
59
+ docs: process.env[`${prefix}DOCS`] || void 0,
60
+ licensing: process.env[`${prefix}LICENSING`] || void 0,
61
+ contact: process.env[`${prefix}CONTACT`] || void 0,
62
+ support: process.env[`${prefix}SUPPORT`] || void 0,
63
+ timezone: process.env[`${prefix}TIMEZONE`] || process.env.TZ || void 0,
64
+ locale: process.env[`${prefix}LOCALE`] || process.env.LOCALE || void 0,
65
+ configFile: process.env[`${prefix}CONFIG_FILE`] ? correctPaths(process.env[`${prefix}CONFIG_FILE`]) : void 0,
66
+ workspaceRoot: process.env[`${prefix}WORKSPACE_ROOT`] ? correctPaths(process.env[`${prefix}WORKSPACE_ROOT`]) : void 0,
67
+ directories: {
68
+ cache: process.env[`${prefix}CACHE_DIR`] ? correctPaths(process.env[`${prefix}CACHE_DIR`]) : process.env[`${prefix}CACHE_DIRECTORY`] ? correctPaths(process.env[`${prefix}CACHE_DIRECTORY`]) : void 0,
69
+ data: process.env[`${prefix}DATA_DIR`] ? correctPaths(process.env[`${prefix}DATA_DIR`]) : process.env[`${prefix}DATA_DIRECTORY`] ? correctPaths(process.env[`${prefix}DATA_DIRECTORY`]) : void 0,
70
+ config: process.env[`${prefix}CONFIG_DIR`] ? correctPaths(process.env[`${prefix}CONFIG_DIR`]) : process.env[`${prefix}CONFIG_DIRECTORY`] ? correctPaths(process.env[`${prefix}CONFIG_DIRECTORY`]) : void 0,
71
+ temp: process.env[`${prefix}TEMP_DIR`] ? correctPaths(process.env[`${prefix}TEMP_DIR`]) : process.env[`${prefix}TEMP_DIRECTORY`] ? correctPaths(process.env[`${prefix}TEMP_DIRECTORY`]) : void 0,
72
+ log: process.env[`${prefix}LOG_DIR`] ? correctPaths(process.env[`${prefix}LOG_DIR`]) : process.env[`${prefix}LOG_DIRECTORY`] ? correctPaths(process.env[`${prefix}LOG_DIRECTORY`]) : void 0,
73
+ build: process.env[`${prefix}BUILD_DIR`] ? correctPaths(process.env[`${prefix}BUILD_DIR`]) : process.env[`${prefix}BUILD_DIRECTORY`] ? correctPaths(process.env[`${prefix}BUILD_DIRECTORY`]) : void 0
74
+ },
75
+ skipCache: process.env[`${prefix}SKIP_CACHE`] !== void 0 ? Boolean(process.env[`${prefix}SKIP_CACHE`]) : void 0,
76
+ mode: (process.env[`${prefix}MODE`] ?? process.env.NODE_ENV ?? process.env.ENVIRONMENT) || void 0,
77
+ // ci:
78
+ // process.env[`${prefix}CI`] !== undefined
79
+ // ? Boolean(
80
+ // process.env[`${prefix}CI`] ??
81
+ // process.env.CI ??
82
+ // process.env.CONTINUOUS_INTEGRATION
83
+ // )
84
+ // : undefined,
85
+ repository: process.env[`${prefix}REPOSITORY`] || void 0,
86
+ branch: process.env[`${prefix}BRANCH`] || void 0,
87
+ preid: process.env[`${prefix}PRE_ID`] || void 0,
88
+ externalPackagePatterns: process.env[`${prefix}EXTERNAL_PACKAGE_PATTERNS`] ? JSON.parse(process.env[`${prefix}EXTERNAL_PACKAGE_PATTERNS`]) : [],
89
+ registry: {
90
+ github: process.env[`${prefix}REGISTRY_GITHUB`] || void 0,
91
+ npm: process.env[`${prefix}REGISTRY_NPM`] || void 0,
92
+ cargo: process.env[`${prefix}REGISTRY_CARGO`] || void 0,
93
+ cyclone: process.env[`${prefix}REGISTRY_CYCLONE`] || void 0,
94
+ container: process.env[`${prefix}REGISTRY_CONTAINER`] || void 0
95
+ },
96
+ logLevel: process.env[`${prefix}LOG_LEVEL`] !== null && process.env[`${prefix}LOG_LEVEL`] !== void 0 ? process.env[`${prefix}LOG_LEVEL`] && Number.isSafeInteger(
97
+ Number.parseInt(process.env[`${prefix}LOG_LEVEL`])
98
+ ) ? getLogLevelLabel(
99
+ Number.parseInt(process.env[`${prefix}LOG_LEVEL`])
100
+ ) : process.env[`${prefix}LOG_LEVEL`] : void 0,
101
+ skipConfigLogging: process.env[`${prefix}SKIP_CONFIG_LOGGING`] !== void 0 ? Boolean(process.env[`${prefix}SKIP_CONFIG_LOGGING`]) : void 0
102
+ };
103
+ const themeNames = Object.keys(process.env).filter(
104
+ (envKey) => envKey.startsWith(`${prefix}COLOR_`) && COLOR_KEYS.every(
105
+ (colorKey) => !envKey.startsWith(`${prefix}COLOR_LIGHT_${colorKey}`) && !envKey.startsWith(`${prefix}COLOR_DARK_${colorKey}`)
106
+ )
107
+ );
108
+ config.colors = themeNames.length > 0 ? themeNames.reduce(
109
+ (ret, themeName) => {
110
+ ret[themeName] = getThemeColorConfigEnv(prefix, themeName);
111
+ return ret;
112
+ },
113
+ {}
114
+ ) : getThemeColorConfigEnv(prefix);
115
+ if (config.docs === STORM_DEFAULT_DOCS) {
116
+ if (config.homepage === STORM_DEFAULT_HOMEPAGE) {
117
+ config.docs = `${STORM_DEFAULT_HOMEPAGE}/projects/${config.name}/docs`;
118
+ } else {
119
+ config.docs = `${config.homepage}/docs`;
120
+ }
121
+ }
122
+ if (config.licensing === STORM_DEFAULT_LICENSING) {
123
+ if (config.homepage === STORM_DEFAULT_HOMEPAGE) {
124
+ config.licensing = `${STORM_DEFAULT_HOMEPAGE}/projects/${config.name}/licensing`;
125
+ } else {
126
+ config.licensing = `${config.homepage}/docs`;
127
+ }
128
+ }
129
+ const serializedConfig = process.env[`${prefix}CONFIG`];
130
+ if (serializedConfig) {
131
+ const parsed = JSON.parse(serializedConfig);
132
+ config = {
133
+ ...config,
134
+ ...parsed,
135
+ colors: { ...config.colors, ...parsed.colors },
136
+ extensions: { ...config.extensions, ...parsed.extensions }
137
+ };
138
+ }
139
+ return config;
140
+ };
141
+ var getThemeColorConfigEnv = (prefix, theme) => {
142
+ const themeName = `COLOR_${theme && theme !== "base" ? `${theme}_` : ""}`.toUpperCase();
143
+ return process.env[`${prefix}${themeName}LIGHT_BRAND`] || process.env[`${prefix}${themeName}DARK_BRAND`] ? getMultiThemeColorConfigEnv(prefix + themeName) : getSingleThemeColorConfigEnv(prefix + themeName);
144
+ };
145
+ var getSingleThemeColorConfigEnv = (prefix) => {
146
+ return {
147
+ dark: process.env[`${prefix}DARK`],
148
+ light: process.env[`${prefix}LIGHT`],
149
+ brand: process.env[`${prefix}BRAND`],
150
+ alternate: process.env[`${prefix}ALTERNATE`],
151
+ accent: process.env[`${prefix}ACCENT`],
152
+ link: process.env[`${prefix}LINK`],
153
+ help: process.env[`${prefix}HELP`],
154
+ success: process.env[`${prefix}SUCCESS`],
155
+ info: process.env[`${prefix}INFO`],
156
+ warning: process.env[`${prefix}WARNING`],
157
+ danger: process.env[`${prefix}DANGER`],
158
+ fatal: process.env[`${prefix}FATAL`],
159
+ positive: process.env[`${prefix}POSITIVE`],
160
+ negative: process.env[`${prefix}NEGATIVE`]
161
+ };
162
+ };
163
+ var getMultiThemeColorConfigEnv = (prefix) => {
164
+ return {
165
+ light: getBaseThemeColorConfigEnv(
166
+ `${prefix}_LIGHT_`
167
+ ),
168
+ dark: getBaseThemeColorConfigEnv(`${prefix}_DARK_`)
169
+ };
170
+ };
171
+ var getBaseThemeColorConfigEnv = (prefix) => {
172
+ return {
173
+ foreground: process.env[`${prefix}FOREGROUND`],
174
+ background: process.env[`${prefix}BACKGROUND`],
175
+ brand: process.env[`${prefix}BRAND`],
176
+ alternate: process.env[`${prefix}ALTERNATE`],
177
+ accent: process.env[`${prefix}ACCENT`],
178
+ link: process.env[`${prefix}LINK`],
179
+ help: process.env[`${prefix}HELP`],
180
+ success: process.env[`${prefix}SUCCESS`],
181
+ info: process.env[`${prefix}INFO`],
182
+ warning: process.env[`${prefix}WARNING`],
183
+ danger: process.env[`${prefix}DANGER`],
184
+ fatal: process.env[`${prefix}FATAL`],
185
+ positive: process.env[`${prefix}POSITIVE`],
186
+ negative: process.env[`${prefix}NEGATIVE`]
187
+ };
188
+ };
189
+
190
+ export {
191
+ getExtensionEnv,
192
+ getConfigEnv
193
+ };
@@ -0,0 +1,47 @@
1
+ import {
2
+ writeError
3
+ } from "./chunk-FICRNYND.js";
4
+
5
+ // src/utilities/toml.ts
6
+ import TOML from "@ltd/j-toml";
7
+ function parseCargoTomlWithTree(tree, projectRoot, projectName) {
8
+ const cargoTomlString = tree.read(`${projectRoot}/Cargo.toml`)?.toString();
9
+ if (!cargoTomlString) {
10
+ writeError(`Cannot find a Cargo.toml file in the ${projectName}`);
11
+ throw new Error();
12
+ }
13
+ return parseCargoToml(cargoTomlString);
14
+ }
15
+ function parseCargoToml(cargoString) {
16
+ if (!cargoString) {
17
+ throw new Error("Cargo.toml is empty");
18
+ }
19
+ return TOML.parse(cargoString, {
20
+ x: { comment: true }
21
+ });
22
+ }
23
+ function stringifyCargoToml(cargoToml) {
24
+ const tomlString = TOML.stringify(cargoToml, {
25
+ newlineAround: "section"
26
+ });
27
+ if (Array.isArray(tomlString)) {
28
+ return tomlString.join("\n");
29
+ }
30
+ return tomlString;
31
+ }
32
+ function modifyCargoTable(toml, section, key, value) {
33
+ toml[section] ??= TOML.Section({});
34
+ toml[section][key] = typeof value === "object" && !Array.isArray(value) ? TOML.inline(value) : typeof value === "function" ? value() : value;
35
+ }
36
+ function modifyCargoNestedTable(toml, section, key, value) {
37
+ toml[section] ??= {};
38
+ toml[section][key] = TOML.Section(value);
39
+ }
40
+
41
+ export {
42
+ parseCargoTomlWithTree,
43
+ parseCargoToml,
44
+ stringifyCargoToml,
45
+ modifyCargoTable,
46
+ modifyCargoNestedTable
47
+ };