@storm-software/workspace-tools 1.43.0 → 1.43.2

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.
@@ -20174,14 +20174,14 @@ var require_templates = __commonJS({
20174
20174
  }
20175
20175
  return results;
20176
20176
  }
20177
- function buildStyle(chalk3, styles) {
20177
+ function buildStyle(chalk2, styles) {
20178
20178
  const enabled = {};
20179
20179
  for (const layer of styles) {
20180
20180
  for (const style of layer.styles) {
20181
20181
  enabled[style[0]] = layer.inverse ? null : style.slice(1);
20182
20182
  }
20183
20183
  }
20184
- let current = chalk3;
20184
+ let current = chalk2;
20185
20185
  for (const styleName of Object.keys(enabled)) {
20186
20186
  if (Array.isArray(enabled[styleName])) {
20187
20187
  if (!(styleName in current)) {
@@ -20196,7 +20196,7 @@ var require_templates = __commonJS({
20196
20196
  }
20197
20197
  return current;
20198
20198
  }
20199
- module2.exports = (chalk3, tmp) => {
20199
+ module2.exports = (chalk2, tmp) => {
20200
20200
  const styles = [];
20201
20201
  const chunks = [];
20202
20202
  let chunk = [];
@@ -20206,13 +20206,13 @@ var require_templates = __commonJS({
20206
20206
  } else if (style) {
20207
20207
  const str = chunk.join("");
20208
20208
  chunk = [];
20209
- chunks.push(styles.length === 0 ? str : buildStyle(chalk3, styles)(str));
20209
+ chunks.push(styles.length === 0 ? str : buildStyle(chalk2, styles)(str));
20210
20210
  styles.push({ inverse, styles: parseStyle(style) });
20211
20211
  } else if (close) {
20212
20212
  if (styles.length === 0) {
20213
20213
  throw new Error("Found extraneous } in Chalk template literal");
20214
20214
  }
20215
- chunks.push(buildStyle(chalk3, styles)(chunk.join("")));
20215
+ chunks.push(buildStyle(chalk2, styles)(chunk.join("")));
20216
20216
  chunk = [];
20217
20217
  styles.pop();
20218
20218
  } else {
@@ -20249,16 +20249,16 @@ var require_chalk = __commonJS({
20249
20249
  }
20250
20250
  function Chalk(options) {
20251
20251
  if (!this || !(this instanceof Chalk) || this.template) {
20252
- const chalk3 = {};
20253
- applyOptions(chalk3, options);
20254
- chalk3.template = function() {
20252
+ const chalk2 = {};
20253
+ applyOptions(chalk2, options);
20254
+ chalk2.template = function() {
20255
20255
  const args = [].slice.call(arguments);
20256
- return chalkTag.apply(null, [chalk3.template].concat(args));
20256
+ return chalkTag.apply(null, [chalk2.template].concat(args));
20257
20257
  };
20258
- Object.setPrototypeOf(chalk3, Chalk.prototype);
20259
- Object.setPrototypeOf(chalk3.template, chalk3);
20260
- chalk3.template.constructor = Chalk;
20261
- return chalk3.template;
20258
+ Object.setPrototypeOf(chalk2, Chalk.prototype);
20259
+ Object.setPrototypeOf(chalk2.template, chalk2);
20260
+ chalk2.template.constructor = Chalk;
20261
+ return chalk2.template;
20262
20262
  }
20263
20263
  applyOptions(this, options);
20264
20264
  }
@@ -20377,7 +20377,7 @@ var require_chalk = __commonJS({
20377
20377
  ansiStyles.dim.open = originalDim;
20378
20378
  return str;
20379
20379
  }
20380
- function chalkTag(chalk3, strings) {
20380
+ function chalkTag(chalk2, strings) {
20381
20381
  if (!Array.isArray(strings)) {
20382
20382
  return [].slice.call(arguments, 1).join(" ");
20383
20383
  }
@@ -20387,7 +20387,7 @@ var require_chalk = __commonJS({
20387
20387
  parts.push(String(args[i - 1]).replace(/[{}\\]/g, "\\$&"));
20388
20388
  parts.push(String(strings.raw[i]));
20389
20389
  }
20390
- return template(chalk3, parts.join(""));
20390
+ return template(chalk2, parts.join(""));
20391
20391
  }
20392
20392
  Object.defineProperties(Chalk.prototype, styles);
20393
20393
  module2.exports = Chalk();
@@ -20433,17 +20433,17 @@ var require_lib2 = __commonJS({
20433
20433
  return n.default = e, t && t.set(e, n), n;
20434
20434
  }
20435
20435
  var sometimesKeywords = /* @__PURE__ */ new Set(["as", "async", "from", "get", "of", "set"]);
20436
- function getDefs(chalk3) {
20436
+ function getDefs(chalk2) {
20437
20437
  return {
20438
- keyword: chalk3.cyan,
20439
- capitalized: chalk3.yellow,
20440
- jsxIdentifier: chalk3.yellow,
20441
- punctuator: chalk3.yellow,
20442
- number: chalk3.magenta,
20443
- string: chalk3.green,
20444
- regex: chalk3.magenta,
20445
- comment: chalk3.grey,
20446
- invalid: chalk3.white.bgRed.bold
20438
+ keyword: chalk2.cyan,
20439
+ capitalized: chalk2.yellow,
20440
+ jsxIdentifier: chalk2.yellow,
20441
+ punctuator: chalk2.yellow,
20442
+ number: chalk2.magenta,
20443
+ string: chalk2.green,
20444
+ regex: chalk2.magenta,
20445
+ comment: chalk2.grey,
20446
+ invalid: chalk2.white.bgRed.bold
20447
20447
  };
20448
20448
  }
20449
20449
  var NEWLINE = /\r\n|[\n\r\u2028\u2029]/;
@@ -20574,11 +20574,11 @@ var require_lib3 = __commonJS({
20574
20574
  return _chalk.default;
20575
20575
  }
20576
20576
  var deprecationWarningShown = false;
20577
- function getDefs(chalk3) {
20577
+ function getDefs(chalk2) {
20578
20578
  return {
20579
- gutter: chalk3.grey,
20580
- marker: chalk3.red.bold,
20581
- message: chalk3.red.bold
20579
+ gutter: chalk2.grey,
20580
+ marker: chalk2.red.bold,
20581
+ message: chalk2.red.bold
20582
20582
  };
20583
20583
  }
20584
20584
  var NEWLINE = /\r\n|[\n\r\u2028\u2029]/;
@@ -20640,8 +20640,8 @@ var require_lib3 = __commonJS({
20640
20640
  }
20641
20641
  function codeFrameColumns(rawLines, loc, opts = {}) {
20642
20642
  const highlighted = (opts.highlightCode || opts.forceColor) && (0, _highlight.shouldHighlight)(opts);
20643
- const chalk3 = getChalk(opts.forceColor);
20644
- const defs = getDefs(chalk3);
20643
+ const chalk2 = getChalk(opts.forceColor);
20644
+ const defs = getDefs(chalk2);
20645
20645
  const maybeHighlight = (chalkFn, string) => {
20646
20646
  return highlighted ? chalkFn(string) : string;
20647
20647
  };
@@ -20680,7 +20680,7 @@ var require_lib3 = __commonJS({
20680
20680
  ${frame}`;
20681
20681
  }
20682
20682
  if (highlighted) {
20683
- return chalk3.reset(frame);
20683
+ return chalk2.reset(frame);
20684
20684
  } else {
20685
20685
  return frame;
20686
20686
  }
@@ -25994,14 +25994,14 @@ var require_templates2 = __commonJS({
25994
25994
  }
25995
25995
  return results;
25996
25996
  }
25997
- function buildStyle(chalk3, styles) {
25997
+ function buildStyle(chalk2, styles) {
25998
25998
  const enabled = {};
25999
25999
  for (const layer of styles) {
26000
26000
  for (const style of layer.styles) {
26001
26001
  enabled[style[0]] = layer.inverse ? null : style.slice(1);
26002
26002
  }
26003
26003
  }
26004
- let current = chalk3;
26004
+ let current = chalk2;
26005
26005
  for (const [styleName, styles2] of Object.entries(enabled)) {
26006
26006
  if (!Array.isArray(styles2)) {
26007
26007
  continue;
@@ -26013,7 +26013,7 @@ var require_templates2 = __commonJS({
26013
26013
  }
26014
26014
  return current;
26015
26015
  }
26016
- module2.exports = (chalk3, temporary) => {
26016
+ module2.exports = (chalk2, temporary) => {
26017
26017
  const styles = [];
26018
26018
  const chunks = [];
26019
26019
  let chunk = [];
@@ -26023,13 +26023,13 @@ var require_templates2 = __commonJS({
26023
26023
  } else if (style) {
26024
26024
  const string = chunk.join("");
26025
26025
  chunk = [];
26026
- chunks.push(styles.length === 0 ? string : buildStyle(chalk3, styles)(string));
26026
+ chunks.push(styles.length === 0 ? string : buildStyle(chalk2, styles)(string));
26027
26027
  styles.push({ inverse, styles: parseStyle(style) });
26028
26028
  } else if (close) {
26029
26029
  if (styles.length === 0) {
26030
26030
  throw new Error("Found extraneous } in Chalk template literal");
26031
26031
  }
26032
- chunks.push(buildStyle(chalk3, styles)(chunk.join("")));
26032
+ chunks.push(buildStyle(chalk2, styles)(chunk.join("")));
26033
26033
  chunk = [];
26034
26034
  styles.pop();
26035
26035
  } else {
@@ -26077,16 +26077,16 @@ var require_source = __commonJS({
26077
26077
  }
26078
26078
  };
26079
26079
  var chalkFactory = (options) => {
26080
- const chalk4 = {};
26081
- applyOptions(chalk4, options);
26082
- chalk4.template = (...arguments_) => chalkTag(chalk4.template, ...arguments_);
26083
- Object.setPrototypeOf(chalk4, Chalk.prototype);
26084
- Object.setPrototypeOf(chalk4.template, chalk4);
26085
- chalk4.template.constructor = () => {
26080
+ const chalk3 = {};
26081
+ applyOptions(chalk3, options);
26082
+ chalk3.template = (...arguments_) => chalkTag(chalk3.template, ...arguments_);
26083
+ Object.setPrototypeOf(chalk3, Chalk.prototype);
26084
+ Object.setPrototypeOf(chalk3.template, chalk3);
26085
+ chalk3.template.constructor = () => {
26086
26086
  throw new Error("`chalk.constructor()` is deprecated. Use `new chalk.Instance()` instead.");
26087
26087
  };
26088
- chalk4.template.Instance = ChalkClass;
26089
- return chalk4.template;
26088
+ chalk3.template.Instance = ChalkClass;
26089
+ return chalk3.template;
26090
26090
  };
26091
26091
  function Chalk(options) {
26092
26092
  return chalkFactory(options);
@@ -26197,7 +26197,7 @@ var require_source = __commonJS({
26197
26197
  return openAll + string + closeAll;
26198
26198
  };
26199
26199
  var template;
26200
- var chalkTag = (chalk4, ...strings) => {
26200
+ var chalkTag = (chalk3, ...strings) => {
26201
26201
  const [firstString] = strings;
26202
26202
  if (!isArray(firstString) || !isArray(firstString.raw)) {
26203
26203
  return strings.join(" ");
@@ -26213,14 +26213,14 @@ var require_source = __commonJS({
26213
26213
  if (template === void 0) {
26214
26214
  template = require_templates2();
26215
26215
  }
26216
- return template(chalk4, parts.join(""));
26216
+ return template(chalk3, parts.join(""));
26217
26217
  };
26218
26218
  Object.defineProperties(Chalk.prototype, styles);
26219
- var chalk3 = Chalk();
26220
- chalk3.supportsColor = stdoutColor;
26221
- chalk3.stderr = Chalk({ level: stderrColor ? stderrColor.level : 0 });
26222
- chalk3.stderr.supportsColor = stderrColor;
26223
- module2.exports = chalk3;
26219
+ var chalk2 = Chalk();
26220
+ chalk2.supportsColor = stdoutColor;
26221
+ chalk2.stderr = Chalk({ level: stderrColor ? stderrColor.level : 0 });
26222
+ chalk2.stderr.supportsColor = stderrColor;
26223
+ module2.exports = chalk2;
26224
26224
  }
26225
26225
  });
26226
26226
 
@@ -30127,72 +30127,98 @@ var getLogLevelLabel = (logLevel) => {
30127
30127
 
30128
30128
  // packages/config-tools/src/utilities/logger.ts
30129
30129
  var chalk = __toESM(require_source(), 1);
30130
-
30131
- // packages/config-tools/src/env/get-env.ts
30132
- var getExtensionEnv = (extensionName) => {
30133
- const prefix = `STORM_EXTENSION_${extensionName.toUpperCase()}_`;
30134
- return Object.keys(process.env).filter((key) => key.startsWith(prefix)).reduce((ret, key) => {
30135
- const name = key.replace(prefix, "").split("_").map((i) => i.length > 0 ? i.trim().charAt(0).toUpperCase() + i.trim().slice(1) : "").join("");
30136
- if (name) {
30137
- ret[name] = process.env[key];
30138
- }
30139
- return ret;
30140
- }, {});
30141
- };
30142
- var getConfigEnv = () => {
30143
- const prefix = "STORM_";
30144
- let config = {
30145
- name: process.env[`${prefix}NAME`],
30146
- namespace: process.env[`${prefix}NAMESPACE`],
30147
- owner: process.env[`${prefix}OWNER`],
30148
- worker: process.env[`${prefix}WORKER`],
30149
- organization: process.env[`${prefix}ORGANIZATION`],
30150
- packageManager: process.env[`${prefix}PACKAGE_MANAGER`],
30151
- license: process.env[`${prefix}LICENSE`],
30152
- homepage: process.env[`${prefix}HOMEPAGE`],
30153
- timezone: process.env[`${prefix}TIMEZONE`] ?? process.env.TZ,
30154
- locale: process.env[`${prefix}LOCALE`] ?? process.env.LOCALE,
30155
- configFile: process.env[`${prefix}CONFIG_FILE`],
30156
- workspaceRoot: process.env[`${prefix}WORKSPACE_ROOT`],
30157
- packageDirectory: process.env[`${prefix}PACKAGE_DIRECTORY`],
30158
- buildDirectory: process.env[`${prefix}BUILD_DIRECTORY`],
30159
- runtimeVersion: process.env[`${prefix}RUNTIME_VERSION`],
30160
- runtimeDirectory: process.env[`${prefix}RUNTIME_DIRECTORY`],
30161
- env: process.env[`${prefix}ENV`] ?? process.env.NODE_ENV ?? process.env.ENVIRONMENT,
30162
- ci: Boolean(process.env[`${prefix}CI`] ?? process.env.CI ?? process.env.CONTINUOUS_INTEGRATION),
30163
- colors: {
30164
- primary: process.env[`${prefix}COLOR_PRIMARY`],
30165
- background: process.env[`${prefix}COLOR_BACKGROUND`],
30166
- success: process.env[`${prefix}COLOR_SUCCESS`],
30167
- info: process.env[`${prefix}COLOR_INFO`],
30168
- warning: process.env[`${prefix}COLOR_WARNING`],
30169
- error: process.env[`${prefix}COLOR_ERROR`],
30170
- fatal: process.env[`${prefix}COLOR_FATAL`]
30171
- },
30172
- repository: process.env[`${prefix}REPOSITORY`],
30173
- branch: process.env[`${prefix}BRANCH`],
30174
- preMajor: Boolean(process.env[`${prefix}PRE_MAJOR`]),
30175
- logLevel: process.env[`${prefix}LOG_LEVEL`] !== null && process.env[`${prefix}LOG_LEVEL`] !== void 0 ? Number.isSafeInteger(Number.parseInt(process.env[`${prefix}LOG_LEVEL`])) ? getLogLevelLabel(Number.parseInt(process.env[`${prefix}LOG_LEVEL`])) : process.env[`${prefix}LOG_LEVEL`] : LogLevelLabel.INFO,
30176
- extensions: {}
30177
- };
30178
- const serializedConfig = process.env[`${prefix}CONFIG`];
30179
- if (serializedConfig) {
30180
- const parsed = JSON.parse(serializedConfig);
30181
- config = {
30182
- ...config,
30183
- ...parsed,
30184
- colors: { ...config.colors, ...parsed.colors },
30185
- extensions: { ...config.extensions, ...parsed.extensions }
30130
+ var getLogFn = (config = {}, logLevel = LogLevel.INFO) => {
30131
+ if (typeof logLevel === "number" && (logLevel >= getLogLevel(config.logLevel ?? process.env?.STORM_LOG_LEVEL) || logLevel <= LogLevel.SILENT) || typeof logLevel === "string" && getLogLevel(logLevel) >= getLogLevel(config.logLevel ?? process.env?.STORM_LOG_LEVEL)) {
30132
+ return (_) => {
30133
+ };
30134
+ }
30135
+ if (typeof logLevel === "number" && LogLevel.FATAL >= logLevel || typeof logLevel === "string" && LogLevel.FATAL >= getLogLevel(logLevel)) {
30136
+ return (message) => {
30137
+ console.error(
30138
+ ` ${chalk.bold.bgHex(config?.colors?.fatal ? config.colors.fatal : "#1fb2a6").white("\n\n \u{1F480} Fatal ")} ${chalk.reset.hex(
30139
+ config?.colors?.fatal ? config.colors.fatal : "#1fb2a6"
30140
+ )(message)}
30141
+ `
30142
+ );
30186
30143
  };
30187
30144
  }
30188
- const extensionPrefix = `${prefix}EXTENSION_`;
30189
- return Object.keys(process.env).filter((key) => key.startsWith(extensionPrefix)).reduce((ret, key) => {
30190
- const extensionName = key.substring(prefix.length, key.indexOf("_", prefix.length)).split("_").map((i) => i.length > 0 ? i.trim().charAt(0).toUpperCase() + i.trim().slice(1) : "").join("");
30191
- if (extensionName) {
30192
- ret.extensions[extensionName] = getExtensionEnv(extensionName);
30193
- }
30194
- return ret;
30195
- }, config);
30145
+ if (typeof logLevel === "number" && LogLevel.ERROR >= logLevel || typeof logLevel === "string" && LogLevel.ERROR >= getLogLevel(logLevel)) {
30146
+ return (message) => {
30147
+ console.error(
30148
+ ` ${chalk.bold.bgHex(config?.colors?.error ? config.colors.error : "#7d1a1a").white("\n\n \u{1F6D1} Error ")} ${chalk.reset.hex(
30149
+ config?.colors?.error ? config.colors.error : "#7d1a1a"
30150
+ )(message)}
30151
+ `
30152
+ );
30153
+ };
30154
+ }
30155
+ if (typeof logLevel === "number" && LogLevel.WARN >= logLevel || typeof logLevel === "string" && LogLevel.WARN >= getLogLevel(logLevel)) {
30156
+ return (message) => {
30157
+ console.warn(
30158
+ ` ${chalk.bold.bgHex(config?.colors?.warning ? config.colors.warning : "#fcc419").white("\n\n \u26A0\uFE0F Warn ")} ${chalk.reset.hex(
30159
+ config?.colors?.warning ? config.colors.warning : "#fcc419"
30160
+ )(message)}
30161
+ `
30162
+ );
30163
+ };
30164
+ }
30165
+ if (typeof logLevel === "number" && LogLevel.INFO >= logLevel || typeof logLevel === "string" && LogLevel.INFO >= getLogLevel(logLevel)) {
30166
+ return (message) => {
30167
+ console.info(
30168
+ ` ${chalk.bold.bgHex(config?.colors?.info ? config.colors.info : "#0ea5e9").white("\n\n \u{1F4EC} Info ")} ${chalk.reset.hex(
30169
+ config?.colors?.info ? config.colors.info : "#0ea5e9"
30170
+ )(message)}
30171
+ `
30172
+ );
30173
+ };
30174
+ }
30175
+ if (typeof logLevel === "number" && LogLevel.INFO >= logLevel || typeof logLevel === "string" && LogLevel.INFO >= getLogLevel(logLevel)) {
30176
+ return (message) => {
30177
+ console.info(
30178
+ ` ${chalk.bold.bgHex(config?.colors?.success ? config.colors.success : "#087f5b").white("\n\n \u{1F389} Success ")} ${chalk.reset.hex(
30179
+ config?.colors?.success ? config.colors.success : "#087f5b"
30180
+ )(message)}
30181
+ `
30182
+ );
30183
+ };
30184
+ }
30185
+ if (typeof logLevel === "number" && LogLevel.DEBUG >= logLevel || typeof logLevel === "string" && LogLevel.DEBUG >= getLogLevel(logLevel)) {
30186
+ return (message) => {
30187
+ console.debug(
30188
+ ` ${chalk.bold.bgHex(config?.colors?.primary ? config.colors.primary : "#1fb2a6").white("\n\n \u{1F9EA} Debug ")} ${chalk.reset.hex(
30189
+ config?.colors?.primary ? config.colors.primary : "#1fb2a6"
30190
+ )(message)}
30191
+ `
30192
+ );
30193
+ };
30194
+ }
30195
+ return (message) => {
30196
+ console.log(
30197
+ ` ${chalk.bold.bgHex(config?.colors?.primary ? config.colors.primary : "#1fb2a6").white("\n\n \u{1F4E2} System ")} ${chalk.bold.hex(
30198
+ config?.colors?.primary ? config.colors.primary : "#1fb2a6"
30199
+ )(message)}
30200
+ `
30201
+ );
30202
+ };
30203
+ };
30204
+ var writeFatal = (config, message) => getLogFn(config, LogLevel.FATAL)(message);
30205
+ var writeError = (config, message) => getLogFn(config, LogLevel.ERROR)(message);
30206
+ var writeInfo = (config, message) => getLogFn(config, LogLevel.INFO)(message);
30207
+ var writeSuccess = (config, message) => getLogFn(config, LogLevel.SUCCESS)(message);
30208
+ var writeDebug = (config, message) => getLogFn(config, LogLevel.DEBUG)(message);
30209
+ var writeTrace = (config, message) => getLogFn(config, LogLevel.TRACE)(message);
30210
+ var getStopwatch = (name) => {
30211
+ const start = process.hrtime();
30212
+ return () => {
30213
+ const end = process.hrtime(start);
30214
+ console.info(
30215
+ chalk.dim(
30216
+ `\u23F1\uFE0F The${name ? ` ${name}` : ""} process took ${Math.round(
30217
+ end[0] * 1e3 + end[1] / 1e6
30218
+ )}ms to complete`
30219
+ )
30220
+ );
30221
+ };
30196
30222
  };
30197
30223
 
30198
30224
  // packages/config-tools/src/env/set-env.ts
@@ -30329,6 +30355,83 @@ var setConfigEnv = (config) => {
30329
30355
  }
30330
30356
  };
30331
30357
 
30358
+ // packages/config-tools/src/utilities/prepare-workspace.ts
30359
+ var prepareWorkspace = async () => {
30360
+ const _STORM_CONFIG = getDefaultConfig({
30361
+ ...await getConfigFile(),
30362
+ ...getConfigEnv()
30363
+ });
30364
+ setConfigEnv(_STORM_CONFIG);
30365
+ return _STORM_CONFIG;
30366
+ };
30367
+
30368
+ // packages/config-tools/src/env/get-env.ts
30369
+ var getExtensionEnv = (extensionName) => {
30370
+ const prefix = `STORM_EXTENSION_${extensionName.toUpperCase()}_`;
30371
+ return Object.keys(process.env).filter((key) => key.startsWith(prefix)).reduce((ret, key) => {
30372
+ const name = key.replace(prefix, "").split("_").map((i) => i.length > 0 ? i.trim().charAt(0).toUpperCase() + i.trim().slice(1) : "").join("");
30373
+ if (name) {
30374
+ ret[name] = process.env[key];
30375
+ }
30376
+ return ret;
30377
+ }, {});
30378
+ };
30379
+ var getConfigEnv = () => {
30380
+ const prefix = "STORM_";
30381
+ let config = {
30382
+ name: process.env[`${prefix}NAME`],
30383
+ namespace: process.env[`${prefix}NAMESPACE`],
30384
+ owner: process.env[`${prefix}OWNER`],
30385
+ worker: process.env[`${prefix}WORKER`],
30386
+ organization: process.env[`${prefix}ORGANIZATION`],
30387
+ packageManager: process.env[`${prefix}PACKAGE_MANAGER`],
30388
+ license: process.env[`${prefix}LICENSE`],
30389
+ homepage: process.env[`${prefix}HOMEPAGE`],
30390
+ timezone: process.env[`${prefix}TIMEZONE`] ?? process.env.TZ,
30391
+ locale: process.env[`${prefix}LOCALE`] ?? process.env.LOCALE,
30392
+ configFile: process.env[`${prefix}CONFIG_FILE`],
30393
+ workspaceRoot: process.env[`${prefix}WORKSPACE_ROOT`],
30394
+ packageDirectory: process.env[`${prefix}PACKAGE_DIRECTORY`],
30395
+ buildDirectory: process.env[`${prefix}BUILD_DIRECTORY`],
30396
+ runtimeVersion: process.env[`${prefix}RUNTIME_VERSION`],
30397
+ runtimeDirectory: process.env[`${prefix}RUNTIME_DIRECTORY`],
30398
+ env: process.env[`${prefix}ENV`] ?? process.env.NODE_ENV ?? process.env.ENVIRONMENT,
30399
+ ci: Boolean(process.env[`${prefix}CI`] ?? process.env.CI ?? process.env.CONTINUOUS_INTEGRATION),
30400
+ colors: {
30401
+ primary: process.env[`${prefix}COLOR_PRIMARY`],
30402
+ background: process.env[`${prefix}COLOR_BACKGROUND`],
30403
+ success: process.env[`${prefix}COLOR_SUCCESS`],
30404
+ info: process.env[`${prefix}COLOR_INFO`],
30405
+ warning: process.env[`${prefix}COLOR_WARNING`],
30406
+ error: process.env[`${prefix}COLOR_ERROR`],
30407
+ fatal: process.env[`${prefix}COLOR_FATAL`]
30408
+ },
30409
+ repository: process.env[`${prefix}REPOSITORY`],
30410
+ branch: process.env[`${prefix}BRANCH`],
30411
+ preMajor: Boolean(process.env[`${prefix}PRE_MAJOR`]),
30412
+ logLevel: process.env[`${prefix}LOG_LEVEL`] !== null && process.env[`${prefix}LOG_LEVEL`] !== void 0 ? Number.isSafeInteger(Number.parseInt(process.env[`${prefix}LOG_LEVEL`])) ? getLogLevelLabel(Number.parseInt(process.env[`${prefix}LOG_LEVEL`])) : process.env[`${prefix}LOG_LEVEL`] : LogLevelLabel.INFO,
30413
+ extensions: {}
30414
+ };
30415
+ const serializedConfig = process.env[`${prefix}CONFIG`];
30416
+ if (serializedConfig) {
30417
+ const parsed = JSON.parse(serializedConfig);
30418
+ config = {
30419
+ ...config,
30420
+ ...parsed,
30421
+ colors: { ...config.colors, ...parsed.colors },
30422
+ extensions: { ...config.extensions, ...parsed.extensions }
30423
+ };
30424
+ }
30425
+ const extensionPrefix = `${prefix}EXTENSION_`;
30426
+ return Object.keys(process.env).filter((key) => key.startsWith(extensionPrefix)).reduce((ret, key) => {
30427
+ const extensionName = key.substring(prefix.length, key.indexOf("_", prefix.length)).split("_").map((i) => i.length > 0 ? i.trim().charAt(0).toUpperCase() + i.trim().slice(1) : "").join("");
30428
+ if (extensionName) {
30429
+ ret.extensions[extensionName] = getExtensionEnv(extensionName);
30430
+ }
30431
+ return ret;
30432
+ }, config);
30433
+ };
30434
+
30332
30435
  // packages/workspace-tools/src/generators/config-schema/generator.ts
30333
30436
  var import_fs3 = require("fs");
30334
30437
  var import_path3 = require("path");
@@ -31344,9 +31447,6 @@ var zodToJsonSchema = (schema, options) => {
31344
31447
  return combined;
31345
31448
  };
31346
31449
 
31347
- // packages/workspace-tools/src/base/base-generator.ts
31348
- var chalk2 = __toESM(require_source());
31349
-
31350
31450
  // packages/workspace-tools/src/utils/get-workspace-root.ts
31351
31451
  var import_find_workspace_root2 = require("nx/src/utils/find-workspace-root.js");
31352
31452
  var getWorkspaceRoot = () => {
@@ -31413,43 +31513,48 @@ var applyWorkspaceTokens = (options, config, tokenizerFn) => {
31413
31513
  var withRunGenerator = (name, generatorFn, generatorOptions = {
31414
31514
  skipReadingConfig: false
31415
31515
  }) => async (tree, _options) => {
31416
- const startTime = Date.now();
31516
+ const stopwatch = getStopwatch(name);
31417
31517
  let options = _options;
31518
+ let config;
31418
31519
  try {
31419
- console.info(chalk2.bold.hex("#1fb2a6")(`\u26A1 Running the ${name} generator...
31520
+ writeInfo(config, `\u26A1 Running the ${name} generator...
31420
31521
 
31421
- `));
31422
- let config;
31522
+ `);
31523
+ const workspaceRoot = getWorkspaceRoot();
31423
31524
  if (!generatorOptions.skipReadingConfig) {
31424
- config = getDefaultConfig({
31425
- ...await getConfigFile(),
31426
- ...getConfigEnv()
31427
- });
31428
- setConfigEnv(config);
31429
- getLogLevel(config.logLevel) >= LogLevel.DEBUG && console.debug(
31430
- chalk2.dim(
31431
- `Loaded Storm config into env:
31432
- ${Object.keys(process.env).map((key) => ` - ${key}=${process.env[key]}`).join("\n")}`
31433
- )
31525
+ writeDebug(
31526
+ config,
31527
+ `Loading the Storm Config from environment variables and storm.config.js file...
31528
+ - workspaceRoot: ${workspaceRoot}`
31529
+ );
31530
+ config = await prepareWorkspace();
31531
+ writeTrace(
31532
+ config,
31533
+ `Loaded Storm config into env:
31534
+ ${Object.keys(process.env).map((key) => ` - ${key}=${JSON.stringify(process.env[key])}`).join("\n")}`
31434
31535
  );
31435
31536
  }
31436
31537
  if (generatorOptions?.hooks?.applyDefaultOptions) {
31437
- getLogLevel(config?.logLevel) >= LogLevel.TRACE && console.debug(chalk2.dim("Running the applyDefaultOptions hook..."));
31538
+ writeDebug(config, "Running the applyDefaultOptions hook...");
31438
31539
  options = await Promise.resolve(
31439
31540
  generatorOptions.hooks.applyDefaultOptions(options, config)
31440
31541
  );
31441
- getLogLevel(config?.logLevel) >= LogLevel.TRACE && console.debug(chalk2.dim("Completed the applyDefaultOptions hook..."));
31542
+ writeDebug(config, "Completed the applyDefaultOptions hook");
31442
31543
  }
31443
- getLogLevel(config.logLevel) >= LogLevel.INFO && console.info(chalk2.hex("#0ea5e9").italic("\n\n \u2699\uFE0F Generator schema options: \n"), options);
31544
+ writeTrace(
31545
+ config,
31546
+ `Generator schema options \u2699\uFE0F
31547
+ ${Object.keys(options).map((key) => ` - ${key}=${JSON.stringify(options[key])}`).join("\n")}`
31548
+ );
31444
31549
  const tokenized = applyWorkspaceTokens(
31445
31550
  options,
31446
31551
  { workspaceRoot: tree.root, config },
31447
31552
  applyWorkspaceGeneratorTokens
31448
31553
  );
31449
31554
  if (generatorOptions?.hooks?.preProcess) {
31450
- getLogLevel(config?.logLevel) >= LogLevel.TRACE && console.debug(chalk2.dim("Running the preProcess hook..."));
31451
- await Promise.resolve(generatorOptions.hooks.preProcess(options, config));
31452
- getLogLevel(config?.logLevel) >= LogLevel.TRACE && console.debug(chalk2.dim("Completed the preProcess hook..."));
31555
+ writeDebug(config, "Running the preProcess hook...");
31556
+ await Promise.resolve(generatorOptions.hooks.preProcess(tokenized, config));
31557
+ writeDebug(config, "Completed the preProcess hook");
31453
31558
  }
31454
31559
  const result = await Promise.resolve(generatorFn(tree, tokenized, config));
31455
31560
  if (result && (!result.success || result.error && result?.error?.message && typeof result?.error?.message === "string" && result?.error?.name && typeof result?.error?.name === "string")) {
@@ -31458,33 +31563,31 @@ ${Object.keys(process.env).map((key) => ` - ${key}=${process.env[key]}`).join("\
31458
31563
  });
31459
31564
  }
31460
31565
  if (generatorOptions?.hooks?.postProcess) {
31461
- getLogLevel(config?.logLevel) >= LogLevel.TRACE && console.debug(chalk2.dim("Running the postProcess hook..."));
31566
+ writeDebug(config, "Running the postProcess hook...");
31462
31567
  await Promise.resolve(generatorOptions.hooks.postProcess(config));
31463
- getLogLevel(config?.logLevel) >= LogLevel.TRACE && console.debug(chalk2.dim("Completed the postProcess hook..."));
31568
+ writeDebug(config, "Completed the postProcess hook");
31464
31569
  }
31465
- console.info(
31466
- chalk2.bold.hex("#087f5b")(`
31467
-
31468
- \u{1F389} Successfully completed running the ${name} generator!`)
31469
- );
31570
+ writeSuccess(config, `Completed running the ${name} task executor!
31571
+ `);
31470
31572
  return {
31471
31573
  success: true
31472
31574
  };
31473
31575
  } catch (error) {
31474
- console.error(
31475
- chalk2.bold.hex("#7d1a1a")("\u274C An error occurred while running the generator\n\n"),
31476
- error
31576
+ writeFatal(
31577
+ config,
31578
+ "A fatal error occurred while running the generator - the process was forced to terminate"
31579
+ );
31580
+ writeError(
31581
+ config,
31582
+ `An exception was thrown in the generator's process
31583
+ - Details: ${error.message}
31584
+ - Stacktrace: ${error.stack}`
31477
31585
  );
31478
- console.error(error);
31479
31586
  return {
31480
31587
  success: false
31481
31588
  };
31482
31589
  } finally {
31483
- console.info(
31484
- chalk2.hex("#0ea5e9").italic(
31485
- `\u23F1\uFE0F The${name ? ` ${name}` : ""} generator took ${Date.now() - startTime}ms to complete`
31486
- )
31487
- );
31590
+ stopwatch();
31488
31591
  }
31489
31592
  };
31490
31593