@storm-software/terraform-tools 0.54.60 → 0.54.62

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 (37) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/README.md +1 -1
  3. package/dist/{chunk-ZXR7DVE5.mjs → chunk-2RL7NUCA.mjs} +26 -15
  4. package/dist/{chunk-QCJEAT7Z.js → chunk-7KJYA3C3.js} +26 -15
  5. package/dist/{chunk-HKYACVYC.mjs → chunk-7TS7RAV3.mjs} +1 -1
  6. package/dist/{chunk-AK3HNXMO.mjs → chunk-A4M4Q7TM.mjs} +186 -23
  7. package/dist/{chunk-5OAGP7YB.js → chunk-AL4R2SSW.js} +2 -2
  8. package/dist/{chunk-TTE37GGL.js → chunk-GZYCK7ZJ.js} +2 -2
  9. package/dist/{chunk-SZ5R5Z3K.js → chunk-MOC2J7HF.js} +324 -161
  10. package/dist/{chunk-C5HXVP36.mjs → chunk-PYPQY2AE.mjs} +1 -1
  11. package/dist/{chunk-HF6B3RTE.js → chunk-SC7WG7PG.js} +2 -2
  12. package/dist/{chunk-AHNRXACX.mjs → chunk-TIP5HMJK.mjs} +1 -1
  13. package/dist/{chunk-B4CWEDF7.js → chunk-TOLJAFRB.js} +2 -2
  14. package/dist/{chunk-YJUNOUAM.mjs → chunk-U5I2Y23H.mjs} +1 -1
  15. package/dist/{chunk-UC3CKBDF.mjs → chunk-UF2LVXX3.mjs} +1 -1
  16. package/dist/{chunk-ORY6UCS4.js → chunk-UMMSLZTK.js} +3 -3
  17. package/dist/executors.js +6 -6
  18. package/dist/executors.mjs +6 -6
  19. package/dist/generators.js +3 -3
  20. package/dist/generators.mjs +2 -2
  21. package/dist/index.js +8 -8
  22. package/dist/index.mjs +7 -7
  23. package/dist/src/base/index.js +3 -3
  24. package/dist/src/base/index.mjs +2 -2
  25. package/dist/src/base/terraform-executor.js +3 -3
  26. package/dist/src/base/terraform-executor.mjs +2 -2
  27. package/dist/src/executors/apply/executor.js +4 -4
  28. package/dist/src/executors/apply/executor.mjs +3 -3
  29. package/dist/src/executors/destroy/executor.js +4 -4
  30. package/dist/src/executors/destroy/executor.mjs +3 -3
  31. package/dist/src/executors/output/executor.js +4 -4
  32. package/dist/src/executors/output/executor.mjs +3 -3
  33. package/dist/src/executors/plan/executor.js +4 -4
  34. package/dist/src/executors/plan/executor.mjs +3 -3
  35. package/dist/src/generators/init/init.js +3 -3
  36. package/dist/src/generators/init/init.mjs +2 -2
  37. package/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -2,6 +2,13 @@
2
2
 
3
3
  # Changelog for Storm Ops - Terraform Tools
4
4
 
5
+ ## [0.54.61](https://github.com/storm-software/storm-ops/releases/tag/terraform-tools%400.54.61) (2025-04-16)
6
+
7
+ ### Miscellaneous
8
+
9
+ - **monorepo:** Regenerate README markdown files
10
+ ([762e7076f](https://github.com/storm-software/storm-ops/commit/762e7076f))
11
+
5
12
  ## [0.54.60](https://github.com/storm-software/storm-ops/releases/tag/terraform-tools%400.54.60) (2025-04-15)
6
13
 
7
14
  ### Miscellaneous
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-0.54.59-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-0.54.61-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 -->
@@ -209,7 +209,7 @@ var stormWorkspaceConfigSchema = z.object({
209
209
  "staging",
210
210
  "production"
211
211
  ]).default("production").describe("The current runtime environment mode for the package"),
212
- workspaceRoot: z.string().trim().default("").describe("The root directory of the workspace"),
212
+ workspaceRoot: z.string().trim().describe("The root directory of the workspace"),
213
213
  externalPackagePatterns: z.array(z.string()).default([]).describe("The build will use these package patterns to determine if they should be external to the bundle"),
214
214
  skipCache: z.boolean().default(false).describe("Should all known types of workspace caching be skipped?"),
215
215
  directories: WorkspaceDirectoryConfigSchema,
@@ -872,7 +872,7 @@ var getConfigFile = /* @__PURE__ */ __name(async (filePath, additionalFileNames
872
872
  }
873
873
  }
874
874
  }
875
- if (!config) {
875
+ if (!config || Object.keys(config).length === 0) {
876
876
  return void 0;
877
877
  }
878
878
  config.configFile = configFile;
@@ -933,12 +933,12 @@ var getConfigEnv = /* @__PURE__ */ __name(() => {
933
933
  configFile: process.env[`${prefix}CONFIG_FILE`] ? correctPaths(process.env[`${prefix}CONFIG_FILE`]) : void 0,
934
934
  workspaceRoot: process.env[`${prefix}WORKSPACE_ROOT`] ? correctPaths(process.env[`${prefix}WORKSPACE_ROOT`]) : void 0,
935
935
  directories: {
936
- cache: process.env[`${prefix}CACHE_DIR`] ? correctPaths(process.env[`${prefix}CACHE_DIR`]) : void 0,
937
- data: process.env[`${prefix}DATA_DIR`] ? correctPaths(process.env[`${prefix}DATA_DIR`]) : void 0,
938
- config: process.env[`${prefix}CONFIG_DIR`] ? correctPaths(process.env[`${prefix}CONFIG_DIR`]) : void 0,
939
- temp: process.env[`${prefix}TEMP_DIR`] ? correctPaths(process.env[`${prefix}TEMP_DIR`]) : void 0,
940
- log: process.env[`${prefix}LOG_DIR`] ? correctPaths(process.env[`${prefix}LOG_DIR`]) : void 0,
941
- build: process.env[`${prefix}BUILD_DIR`] ? correctPaths(process.env[`${prefix}BUILD_DIR`]) : void 0
936
+ 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,
937
+ 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,
938
+ 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,
939
+ 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,
940
+ 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,
941
+ 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
942
942
  },
943
943
  skipCache: process.env[`${prefix}SKIP_CACHE`] !== void 0 ? Boolean(process.env[`${prefix}SKIP_CACHE`]) : void 0,
944
944
  mode: (process.env[`${prefix}MODE`] ?? process.env.NODE_ENV ?? process.env.ENVIRONMENT) || void 0,
@@ -1158,21 +1158,27 @@ var setConfigEnv = /* @__PURE__ */ __name((config) => {
1158
1158
  if (config.directories) {
1159
1159
  if (!config.skipCache && config.directories.cache) {
1160
1160
  process.env[`${prefix}CACHE_DIR`] = correctPaths(config.directories.cache);
1161
+ process.env[`${prefix}CACHE_DIRECTORY`] = process.env[`${prefix}CACHE_DIR`];
1161
1162
  }
1162
1163
  if (config.directories.data) {
1163
1164
  process.env[`${prefix}DATA_DIR`] = correctPaths(config.directories.data);
1165
+ process.env[`${prefix}DATA_DIRECTORY`] = process.env[`${prefix}DATA_DIR`];
1164
1166
  }
1165
1167
  if (config.directories.config) {
1166
1168
  process.env[`${prefix}CONFIG_DIR`] = correctPaths(config.directories.config);
1169
+ process.env[`${prefix}CONFIG_DIRECTORY`] = process.env[`${prefix}CONFIG_DIR`];
1167
1170
  }
1168
1171
  if (config.directories.temp) {
1169
1172
  process.env[`${prefix}TEMP_DIR`] = correctPaths(config.directories.temp);
1173
+ process.env[`${prefix}TEMP_DIRECTORY`] = process.env[`${prefix}TEMP_DIR`];
1170
1174
  }
1171
1175
  if (config.directories.log) {
1172
1176
  process.env[`${prefix}LOG_DIR`] = correctPaths(config.directories.log);
1177
+ process.env[`${prefix}LOG_DIRECTORY`] = process.env[`${prefix}LOG_DIR`];
1173
1178
  }
1174
1179
  if (config.directories.build) {
1175
1180
  process.env[`${prefix}BUILD_DIR`] = correctPaths(config.directories.build);
1181
+ process.env[`${prefix}BUILD_DIRECTORY`] = process.env[`${prefix}BUILD_DIR`];
1176
1182
  }
1177
1183
  }
1178
1184
  if (config.skipCache !== void 0) {
@@ -1340,7 +1346,7 @@ var setBaseThemeColorConfigEnv = /* @__PURE__ */ __name((prefix, config) => {
1340
1346
  // ../config-tools/src/create-storm-config.ts
1341
1347
  var _extension_cache = /* @__PURE__ */ new WeakMap();
1342
1348
  var _static_cache = void 0;
1343
- var createStormWorkspaceConfig = /* @__PURE__ */ __name(async (extensionName, schema, workspaceRoot, skipLogs = false) => {
1349
+ var createStormWorkspaceConfig = /* @__PURE__ */ __name(async (extensionName, schema, workspaceRoot, skipLogs = false, useDefault = true) => {
1344
1350
  let result;
1345
1351
  if (!_static_cache?.data || !_static_cache?.timestamp || _static_cache.timestamp < Date.now() - 8e3) {
1346
1352
  let _workspaceRoot = workspaceRoot;
@@ -1348,13 +1354,18 @@ var createStormWorkspaceConfig = /* @__PURE__ */ __name(async (extensionName, sc
1348
1354
  _workspaceRoot = findWorkspaceRoot();
1349
1355
  }
1350
1356
  const configEnv = getConfigEnv();
1351
- const defaultConfig = await getDefaultConfig(_workspaceRoot);
1352
1357
  const configFile = await getConfigFile(_workspaceRoot);
1353
- if (!configFile && !skipLogs) {
1354
- writeWarning("No Storm Workspace configuration file found in the current repository. Please ensure this is the expected behavior - you can add a `storm-workspace.json` file to the root of your workspace if it is not.\n", {
1355
- logLevel: "all"
1356
- });
1358
+ if (!configFile) {
1359
+ if (!skipLogs) {
1360
+ writeWarning("No Storm Workspace configuration file found in the current repository. Please ensure this is the expected behavior - you can add a `storm-workspace.json` file to the root of your workspace if it is not.\n", {
1361
+ logLevel: "all"
1362
+ });
1363
+ }
1364
+ if (useDefault === false) {
1365
+ return void 0;
1366
+ }
1357
1367
  }
1368
+ const defaultConfig = await getDefaultConfig(_workspaceRoot);
1358
1369
  result = await stormWorkspaceConfigSchema.parseAsync(defu2(configEnv, configFile, defaultConfig));
1359
1370
  result.workspaceRoot ??= _workspaceRoot;
1360
1371
  } else {
@@ -1387,7 +1398,7 @@ var createConfigExtension = /* @__PURE__ */ __name((extensionName, schema) => {
1387
1398
  return extension;
1388
1399
  }, "createConfigExtension");
1389
1400
  var loadStormWorkspaceConfig = /* @__PURE__ */ __name(async (workspaceRoot, skipLogs = false) => {
1390
- const config = await createStormWorkspaceConfig(void 0, void 0, workspaceRoot, skipLogs);
1401
+ const config = await createStormWorkspaceConfig(void 0, void 0, workspaceRoot, skipLogs, true);
1391
1402
  setConfigEnv(config);
1392
1403
  if (!skipLogs && !config.skipConfigLogging) {
1393
1404
  writeTrace(`\u2699\uFE0F Using Storm Workspace configuration:
@@ -209,7 +209,7 @@ var stormWorkspaceConfigSchema = _zod2.default.object({
209
209
  "staging",
210
210
  "production"
211
211
  ]).default("production").describe("The current runtime environment mode for the package"),
212
- workspaceRoot: _zod2.default.string().trim().default("").describe("The root directory of the workspace"),
212
+ workspaceRoot: _zod2.default.string().trim().describe("The root directory of the workspace"),
213
213
  externalPackagePatterns: _zod2.default.array(_zod2.default.string()).default([]).describe("The build will use these package patterns to determine if they should be external to the bundle"),
214
214
  skipCache: _zod2.default.boolean().default(false).describe("Should all known types of workspace caching be skipped?"),
215
215
  directories: WorkspaceDirectoryConfigSchema,
@@ -872,7 +872,7 @@ var getConfigFile = /* @__PURE__ */ _chunk3GQAWCBQjs.__name.call(void 0, async (
872
872
  }
873
873
  }
874
874
  }
875
- if (!config) {
875
+ if (!config || Object.keys(config).length === 0) {
876
876
  return void 0;
877
877
  }
878
878
  config.configFile = configFile;
@@ -933,12 +933,12 @@ var getConfigEnv = /* @__PURE__ */ _chunk3GQAWCBQjs.__name.call(void 0, () => {
933
933
  configFile: process.env[`${prefix}CONFIG_FILE`] ? correctPaths(process.env[`${prefix}CONFIG_FILE`]) : void 0,
934
934
  workspaceRoot: process.env[`${prefix}WORKSPACE_ROOT`] ? correctPaths(process.env[`${prefix}WORKSPACE_ROOT`]) : void 0,
935
935
  directories: {
936
- cache: process.env[`${prefix}CACHE_DIR`] ? correctPaths(process.env[`${prefix}CACHE_DIR`]) : void 0,
937
- data: process.env[`${prefix}DATA_DIR`] ? correctPaths(process.env[`${prefix}DATA_DIR`]) : void 0,
938
- config: process.env[`${prefix}CONFIG_DIR`] ? correctPaths(process.env[`${prefix}CONFIG_DIR`]) : void 0,
939
- temp: process.env[`${prefix}TEMP_DIR`] ? correctPaths(process.env[`${prefix}TEMP_DIR`]) : void 0,
940
- log: process.env[`${prefix}LOG_DIR`] ? correctPaths(process.env[`${prefix}LOG_DIR`]) : void 0,
941
- build: process.env[`${prefix}BUILD_DIR`] ? correctPaths(process.env[`${prefix}BUILD_DIR`]) : void 0
936
+ 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,
937
+ 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,
938
+ 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,
939
+ 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,
940
+ 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,
941
+ 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
942
942
  },
943
943
  skipCache: process.env[`${prefix}SKIP_CACHE`] !== void 0 ? Boolean(process.env[`${prefix}SKIP_CACHE`]) : void 0,
944
944
  mode: (_nullishCoalesce(_nullishCoalesce(process.env[`${prefix}MODE`], () => ( process.env.NODE_ENV)), () => ( process.env.ENVIRONMENT))) || void 0,
@@ -1158,21 +1158,27 @@ var setConfigEnv = /* @__PURE__ */ _chunk3GQAWCBQjs.__name.call(void 0, (config)
1158
1158
  if (config.directories) {
1159
1159
  if (!config.skipCache && config.directories.cache) {
1160
1160
  process.env[`${prefix}CACHE_DIR`] = correctPaths(config.directories.cache);
1161
+ process.env[`${prefix}CACHE_DIRECTORY`] = process.env[`${prefix}CACHE_DIR`];
1161
1162
  }
1162
1163
  if (config.directories.data) {
1163
1164
  process.env[`${prefix}DATA_DIR`] = correctPaths(config.directories.data);
1165
+ process.env[`${prefix}DATA_DIRECTORY`] = process.env[`${prefix}DATA_DIR`];
1164
1166
  }
1165
1167
  if (config.directories.config) {
1166
1168
  process.env[`${prefix}CONFIG_DIR`] = correctPaths(config.directories.config);
1169
+ process.env[`${prefix}CONFIG_DIRECTORY`] = process.env[`${prefix}CONFIG_DIR`];
1167
1170
  }
1168
1171
  if (config.directories.temp) {
1169
1172
  process.env[`${prefix}TEMP_DIR`] = correctPaths(config.directories.temp);
1173
+ process.env[`${prefix}TEMP_DIRECTORY`] = process.env[`${prefix}TEMP_DIR`];
1170
1174
  }
1171
1175
  if (config.directories.log) {
1172
1176
  process.env[`${prefix}LOG_DIR`] = correctPaths(config.directories.log);
1177
+ process.env[`${prefix}LOG_DIRECTORY`] = process.env[`${prefix}LOG_DIR`];
1173
1178
  }
1174
1179
  if (config.directories.build) {
1175
1180
  process.env[`${prefix}BUILD_DIR`] = correctPaths(config.directories.build);
1181
+ process.env[`${prefix}BUILD_DIRECTORY`] = process.env[`${prefix}BUILD_DIR`];
1176
1182
  }
1177
1183
  }
1178
1184
  if (config.skipCache !== void 0) {
@@ -1340,7 +1346,7 @@ var setBaseThemeColorConfigEnv = /* @__PURE__ */ _chunk3GQAWCBQjs.__name.call(vo
1340
1346
  // ../config-tools/src/create-storm-config.ts
1341
1347
  var _extension_cache = /* @__PURE__ */ new WeakMap();
1342
1348
  var _static_cache = void 0;
1343
- var createStormWorkspaceConfig = /* @__PURE__ */ _chunk3GQAWCBQjs.__name.call(void 0, async (extensionName, schema, workspaceRoot, skipLogs = false) => {
1349
+ var createStormWorkspaceConfig = /* @__PURE__ */ _chunk3GQAWCBQjs.__name.call(void 0, async (extensionName, schema, workspaceRoot, skipLogs = false, useDefault = true) => {
1344
1350
  let result;
1345
1351
  if (!_optionalChain([_static_cache, 'optionalAccess', _57 => _57.data]) || !_optionalChain([_static_cache, 'optionalAccess', _58 => _58.timestamp]) || _static_cache.timestamp < Date.now() - 8e3) {
1346
1352
  let _workspaceRoot = workspaceRoot;
@@ -1348,13 +1354,18 @@ var createStormWorkspaceConfig = /* @__PURE__ */ _chunk3GQAWCBQjs.__name.call(vo
1348
1354
  _workspaceRoot = findWorkspaceRoot();
1349
1355
  }
1350
1356
  const configEnv = getConfigEnv();
1351
- const defaultConfig = await getDefaultConfig(_workspaceRoot);
1352
1357
  const configFile = await getConfigFile(_workspaceRoot);
1353
- if (!configFile && !skipLogs) {
1354
- writeWarning("No Storm Workspace configuration file found in the current repository. Please ensure this is the expected behavior - you can add a `storm-workspace.json` file to the root of your workspace if it is not.\n", {
1355
- logLevel: "all"
1356
- });
1358
+ if (!configFile) {
1359
+ if (!skipLogs) {
1360
+ writeWarning("No Storm Workspace configuration file found in the current repository. Please ensure this is the expected behavior - you can add a `storm-workspace.json` file to the root of your workspace if it is not.\n", {
1361
+ logLevel: "all"
1362
+ });
1363
+ }
1364
+ if (useDefault === false) {
1365
+ return void 0;
1366
+ }
1357
1367
  }
1368
+ const defaultConfig = await getDefaultConfig(_workspaceRoot);
1358
1369
  result = await stormWorkspaceConfigSchema.parseAsync(_defu2.default.call(void 0, configEnv, configFile, defaultConfig));
1359
1370
  result.workspaceRoot ??= _workspaceRoot;
1360
1371
  } else {
@@ -1387,7 +1398,7 @@ var createConfigExtension = /* @__PURE__ */ _chunk3GQAWCBQjs.__name.call(void 0,
1387
1398
  return extension;
1388
1399
  }, "createConfigExtension");
1389
1400
  var loadStormWorkspaceConfig = /* @__PURE__ */ _chunk3GQAWCBQjs.__name.call(void 0, async (workspaceRoot, skipLogs = false) => {
1390
- const config = await createStormWorkspaceConfig(void 0, void 0, workspaceRoot, skipLogs);
1401
+ const config = await createStormWorkspaceConfig(void 0, void 0, workspaceRoot, skipLogs, true);
1391
1402
  setConfigEnv(config);
1392
1403
  if (!skipLogs && !config.skipConfigLogging) {
1393
1404
  writeTrace(`\u2699\uFE0F Using Storm Workspace configuration:
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  withTerraformExecutor
3
- } from "./chunk-UC3CKBDF.mjs";
3
+ } from "./chunk-UF2LVXX3.mjs";
4
4
 
5
5
  // src/executors/destroy/executor.ts
6
6
  var executor_default = withTerraformExecutor("destroy");
@@ -18,7 +18,7 @@ import {
18
18
  writeSuccess,
19
19
  writeTrace,
20
20
  writeWarning
21
- } from "./chunk-ZXR7DVE5.mjs";
21
+ } from "./chunk-2RL7NUCA.mjs";
22
22
  import {
23
23
  __dirname,
24
24
  __name,
@@ -478,12 +478,12 @@ import { createTaskGraph, mapTargetDefaultsToDependencies } from "nx/src/tasks-r
478
478
 
479
479
  // ../esbuild/src/build.ts
480
480
  import { watch as createWatcher } from "chokidar";
481
- import defu from "defu";
481
+ import defu2 from "defu";
482
482
  import { debounce, flatten } from "es-toolkit";
483
483
  import { map } from "es-toolkit/compat";
484
484
  import * as esbuild2 from "esbuild";
485
485
  import { globbySync } from "globby";
486
- import { existsSync as existsSync4 } from "node:fs";
486
+ import { existsSync as existsSync5 } from "node:fs";
487
487
  import hf from "node:fs/promises";
488
488
  import { findWorkspaceRoot as findWorkspaceRoot2 } from "nx/src/utils/find-workspace-root";
489
489
 
@@ -870,7 +870,7 @@ __name(bundleTypeDefinitions, "bundleTypeDefinitions");
870
870
  var tscPlugin = /* @__PURE__ */ __name((options, resolvedOptions) => ({
871
871
  name: "storm:tsc",
872
872
  setup(build4) {
873
- if (options.emitTypes === false) {
873
+ if (options.dts === false) {
874
874
  return;
875
875
  }
876
876
  build4.onStart(async () => {
@@ -922,7 +922,7 @@ var getDefaultBuildPlugins = /* @__PURE__ */ __name((options, resolvedOptions) =
922
922
  var DEFAULT_BUILD_OPTIONS = {
923
923
  platform: "node",
924
924
  target: "node22",
925
- format: "cjs",
925
+ format: "esm",
926
926
  external: [],
927
927
  logLevel: "error",
928
928
  tsconfig: "tsconfig.json",
@@ -1071,6 +1071,155 @@ var shebangRenderer = {
1071
1071
  }
1072
1072
  };
1073
1073
 
1074
+ // ../esbuild/src/tsc.ts
1075
+ import { loadTsConfig } from "bundle-require";
1076
+ import defu from "defu";
1077
+ import { existsSync as existsSync4, mkdirSync, writeFileSync } from "node:fs";
1078
+ import { dirname as dirname2, isAbsolute, join, normalize } from "node:path";
1079
+ import ts from "typescript";
1080
+ function ensureTempDeclarationDir(workspaceConfig) {
1081
+ const root = workspaceConfig.directories.temp || join(workspaceConfig.workspaceRoot, "tmp");
1082
+ const dirPath = join(root, ".tsc", "declaration");
1083
+ if (existsSync4(dirPath)) {
1084
+ return dirPath;
1085
+ }
1086
+ mkdirSync(dirPath, {
1087
+ recursive: true
1088
+ });
1089
+ const gitIgnorePath = join(root, ".tsc", ".gitignore");
1090
+ writeFileSync(gitIgnorePath, "**/*\n");
1091
+ return dirPath;
1092
+ }
1093
+ __name(ensureTempDeclarationDir, "ensureTempDeclarationDir");
1094
+ function slash(path7) {
1095
+ const isExtendedLengthPath = path7.startsWith("\\\\?\\");
1096
+ if (isExtendedLengthPath) {
1097
+ return path7;
1098
+ }
1099
+ return path7.replace(/\\/g, "/");
1100
+ }
1101
+ __name(slash, "slash");
1102
+ function toAbsolutePath(workspaceConfig, p, cwd) {
1103
+ if (isAbsolute(p)) {
1104
+ return p;
1105
+ }
1106
+ return slash(normalize(join(cwd || workspaceConfig.workspaceRoot, p)));
1107
+ }
1108
+ __name(toAbsolutePath, "toAbsolutePath");
1109
+ var AliasPool = class AliasPool2 {
1110
+ static {
1111
+ __name(this, "AliasPool");
1112
+ }
1113
+ seen = /* @__PURE__ */ new Set();
1114
+ assign(name) {
1115
+ let suffix = 0;
1116
+ let alias = name === "default" ? "default_alias" : name;
1117
+ while (this.seen.has(alias)) {
1118
+ alias = `${name}_alias_${++suffix}`;
1119
+ if (suffix >= 1e3) {
1120
+ throw new Error("Alias generation exceeded limit. Possible infinite loop detected.");
1121
+ }
1122
+ }
1123
+ this.seen.add(alias);
1124
+ return alias;
1125
+ }
1126
+ };
1127
+ function getExports(workspaceConfig, program, fileMapping) {
1128
+ const checker = program.getTypeChecker();
1129
+ const aliasPool = new AliasPool();
1130
+ const assignAlias = aliasPool.assign.bind(aliasPool);
1131
+ function extractExports(sourceFileName) {
1132
+ const cwd = program.getCurrentDirectory();
1133
+ sourceFileName = toAbsolutePath(workspaceConfig, sourceFileName, cwd);
1134
+ const sourceFile = program.getSourceFile(sourceFileName);
1135
+ if (!sourceFile) {
1136
+ return [];
1137
+ }
1138
+ const destFileName = fileMapping.get(sourceFileName);
1139
+ if (!destFileName) {
1140
+ return [];
1141
+ }
1142
+ const moduleSymbol = checker.getSymbolAtLocation(sourceFile);
1143
+ if (!moduleSymbol) {
1144
+ return [];
1145
+ }
1146
+ const exports = [];
1147
+ const exportSymbols = checker.getExportsOfModule(moduleSymbol);
1148
+ exportSymbols.forEach((symbol) => {
1149
+ const name = symbol.getName();
1150
+ exports.push({
1151
+ kind: "named",
1152
+ sourceFileName,
1153
+ destFileName,
1154
+ name,
1155
+ alias: assignAlias(name),
1156
+ isTypeOnly: false
1157
+ });
1158
+ });
1159
+ return exports;
1160
+ }
1161
+ __name(extractExports, "extractExports");
1162
+ return program.getRootFileNames().flatMap(extractExports);
1163
+ }
1164
+ __name(getExports, "getExports");
1165
+ function emitDtsFiles(workspaceConfig, program, host, emitOnlyDtsFiles = true, customTransformers) {
1166
+ const fileMapping = /* @__PURE__ */ new Map();
1167
+ const writeFile3 = /* @__PURE__ */ __name((fileName, text, writeByteOrderMark, onError, sourceFiles, data) => {
1168
+ const sourceFile = sourceFiles?.[0];
1169
+ const sourceFileName = sourceFile?.fileName;
1170
+ if (sourceFileName && !fileName.endsWith(".map")) {
1171
+ const cwd = program.getCurrentDirectory();
1172
+ fileMapping.set(toAbsolutePath(workspaceConfig, sourceFileName, cwd), toAbsolutePath(workspaceConfig, fileName, cwd));
1173
+ }
1174
+ return host.writeFile(fileName, text, writeByteOrderMark, onError, sourceFiles, data);
1175
+ }, "writeFile");
1176
+ const emitResult = program.emit(void 0, writeFile3, void 0, emitOnlyDtsFiles, customTransformers);
1177
+ const diagnostics = ts.getPreEmitDiagnostics(program).concat(emitResult.diagnostics);
1178
+ const diagnosticMessages = [];
1179
+ diagnostics.forEach((diagnostic) => {
1180
+ if (diagnostic.file) {
1181
+ const { line, character } = ts.getLineAndCharacterOfPosition(diagnostic.file, diagnostic.start);
1182
+ const message = ts.flattenDiagnosticMessageText(diagnostic.messageText, "\n");
1183
+ diagnosticMessages.push(`${diagnostic.file.fileName} (${line + 1},${character + 1}): ${message}`);
1184
+ } else {
1185
+ const message = ts.flattenDiagnosticMessageText(diagnostic.messageText, "\n");
1186
+ diagnosticMessages.push(message);
1187
+ }
1188
+ });
1189
+ const diagnosticMessage = diagnosticMessages.join("\n");
1190
+ if (diagnosticMessage) {
1191
+ writeError(`Failed to emit declaration files.
1192
+
1193
+ ${diagnosticMessage}`, workspaceConfig);
1194
+ throw new Error("TypeScript compilation failed");
1195
+ }
1196
+ return fileMapping;
1197
+ }
1198
+ __name(emitDtsFiles, "emitDtsFiles");
1199
+ function emitDts(workspaceConfig, tsconfig, tsconfigRaw, emitOnlyDtsFiles = true, customTransformers) {
1200
+ const rawTsconfig = loadTsConfig(workspaceConfig.workspaceRoot, tsconfig);
1201
+ if (!rawTsconfig) {
1202
+ throw new Error(`Unable to find ${tsconfig || "tsconfig.json"} in ${workspaceConfig.workspaceRoot}`);
1203
+ }
1204
+ const declarationDir = ensureTempDeclarationDir(workspaceConfig);
1205
+ const parsedTsconfig = ts.parseJsonConfigFileContent(defu({
1206
+ compilerOptions: {
1207
+ // Enable declaration emit and disable javascript emit
1208
+ noEmit: false,
1209
+ declaration: true,
1210
+ declarationMap: true,
1211
+ declarationDir,
1212
+ emitDeclarationOnly: true
1213
+ }
1214
+ }, tsconfigRaw?.compilerOptions ?? {}, rawTsconfig.data ?? {}), ts.sys, tsconfig ? dirname2(tsconfig) : "./");
1215
+ const options = parsedTsconfig.options;
1216
+ const host = ts.createCompilerHost(options);
1217
+ const program = ts.createProgram(parsedTsconfig.fileNames, options, host);
1218
+ const fileMapping = emitDtsFiles(workspaceConfig, program, host, emitOnlyDtsFiles, customTransformers);
1219
+ return getExports(workspaceConfig, program, fileMapping);
1220
+ }
1221
+ __name(emitDts, "emitDts");
1222
+
1074
1223
  // ../esbuild/src/utilities/get-entry-points.ts
1075
1224
  import { glob as glob3 } from "glob";
1076
1225
  var getEntryPoints = /* @__PURE__ */ __name(async (config, projectRoot, sourceRoot, entry, emitOnAll = false) => {
@@ -1232,7 +1381,7 @@ var resolveOptions = /* @__PURE__ */ __name(async (userOptions) => {
1232
1381
  exitOnError: true
1233
1382
  });
1234
1383
  const projectJsonPath = joinPaths(workspaceRoot3.dir, projectRoot, "project.json");
1235
- if (!existsSync4(projectJsonPath)) {
1384
+ if (!existsSync5(projectJsonPath)) {
1236
1385
  throw new Error("Cannot find project.json configuration");
1237
1386
  }
1238
1387
  const projectJsonFile = await hf.readFile(projectJsonPath, "utf8");
@@ -1242,11 +1391,11 @@ var resolveOptions = /* @__PURE__ */ __name(async (userOptions) => {
1242
1391
  if (!projectConfigurations?.projects?.[projectName]) {
1243
1392
  throw new Error("The Build process failed because the project does not have a valid configuration in the project.json file. Check if the file exists in the root of the project.");
1244
1393
  }
1245
- const options = defu(userOptions, DEFAULT_BUILD_OPTIONS);
1394
+ const options = defu2(userOptions, DEFAULT_BUILD_OPTIONS);
1246
1395
  options.name ??= `${projectName}-${options.format}`;
1247
1396
  options.target ??= DEFAULT_TARGET;
1248
1397
  const packageJsonPath = joinPaths(workspaceRoot3.dir, options.projectRoot, "package.json");
1249
- if (!existsSync4(packageJsonPath)) {
1398
+ if (!existsSync5(packageJsonPath)) {
1250
1399
  throw new Error("Cannot find package.json configuration");
1251
1400
  }
1252
1401
  const env = getEnv("esbuild", options);
@@ -1328,11 +1477,11 @@ var resolveOptions = /* @__PURE__ */ __name(async (userOptions) => {
1328
1477
  return result;
1329
1478
  }, "resolveOptions");
1330
1479
  async function generatePackageJson(context2) {
1331
- if (context2.options.generatePackageJson !== false && existsSync4(joinPaths(context2.options.projectRoot, "package.json"))) {
1480
+ if (context2.options.generatePackageJson !== false && existsSync5(joinPaths(context2.options.projectRoot, "package.json"))) {
1332
1481
  writeDebug(" \u270D\uFE0F Writing package.json file", context2.options.config);
1333
1482
  const stopwatch = getStopwatch("Write package.json file");
1334
1483
  const packageJsonPath = joinPaths(context2.options.projectRoot, "project.json");
1335
- if (!existsSync4(packageJsonPath)) {
1484
+ if (!existsSync5(packageJsonPath)) {
1336
1485
  throw new Error("Cannot find package.json configuration");
1337
1486
  }
1338
1487
  const packageJsonFile = await hf.readFile(joinPaths(context2.options.config.workspaceRoot, context2.options.projectRoot, "package.json"), "utf8");
@@ -1403,6 +1552,7 @@ async function executeEsBuild(context2) {
1403
1552
  options.inject === {}) {
1404
1553
  delete options.inject;
1405
1554
  }
1555
+ delete options.dts;
1406
1556
  delete options.env;
1407
1557
  delete options.name;
1408
1558
  delete options.assets;
@@ -1438,6 +1588,16 @@ ${formatLogMessage({
1438
1588
  return context2;
1439
1589
  }
1440
1590
  __name(executeEsBuild, "executeEsBuild");
1591
+ async function executeTypescript(context2) {
1592
+ if (context2.result?.errors.length === 0 && context2.options.dts) {
1593
+ writeDebug(` \u{1F4CB} Running TypeScript Compiler for ${context2.options.name}`, context2.options.config);
1594
+ const stopwatch = getStopwatch(`${context2.options.name} asset copy`);
1595
+ await emitDts(context2.options.config, context2.options.tsconfig, context2.options.tsconfigRaw, true);
1596
+ stopwatch();
1597
+ }
1598
+ return context2;
1599
+ }
1600
+ __name(executeTypescript, "executeTypescript");
1441
1601
  async function copyBuildAssets(context2) {
1442
1602
  if (context2.result?.errors.length === 0) {
1443
1603
  writeDebug(` \u{1F4CB} Copying asset files to output directory: ${context2.options.outdir}`, context2.options.config);
@@ -1454,6 +1614,9 @@ async function reportResults(context2) {
1454
1614
  writeWarning(` \u{1F6A7} The following warnings occurred during the build: ${context2.result.warnings.map((warning) => warning.text).join("\n")}`, context2.options.config);
1455
1615
  }
1456
1616
  writeSuccess(` \u{1F4E6} The ${context2.options.name} build completed successfully`, context2.options.config);
1617
+ } else if (context2.result?.errors && context2.result?.errors.length > 0) {
1618
+ writeError(` \u274C The ${context2.options.name} build failed with the following errors: ${context2.result.errors.map((error) => error.text).join("\n")}`, context2.options.config);
1619
+ throw new Error(`The ${context2.options.name} build failed with the following errors: ${context2.result.errors.map((error) => error.text).join("\n")}`);
1457
1620
  }
1458
1621
  }
1459
1622
  __name(reportResults, "reportResults");
@@ -1508,7 +1671,7 @@ async function build3(options) {
1508
1671
  throw new Error("No build options were provided");
1509
1672
  }
1510
1673
  void transduce.async(opts, dependencyCheck);
1511
- await transduce.async(await createOptions(opts), pipe.async(generateContext, cleanOutputPath, generatePackageJson, executeEsBuild, copyBuildAssets, reportResults));
1674
+ await transduce.async(await createOptions(opts), pipe.async(generateContext, cleanOutputPath, generatePackageJson, executeTypescript, executeEsBuild, copyBuildAssets, reportResults));
1512
1675
  writeSuccess(" \u{1F3C1} ESBuild pipeline build completed successfully");
1513
1676
  } catch (error) {
1514
1677
  writeFatal("Fatal errors that the build process could not recover from have occured. The build process has been terminated.");
@@ -1585,7 +1748,7 @@ import { execSync as execSync3 } from "node:child_process";
1585
1748
  import { readFile as readFile5 } from "node:fs/promises";
1586
1749
 
1587
1750
  // ../workspace-tools/src/utils/pnpm-deps-update.ts
1588
- import { existsSync as existsSync5 } from "node:fs";
1751
+ import { existsSync as existsSync6 } from "node:fs";
1589
1752
  import { readFile as readFile4, writeFile as writeFile2 } from "node:fs/promises";
1590
1753
  import { format } from "prettier";
1591
1754
  import readYamlFile from "read-yaml-file";
@@ -1664,7 +1827,7 @@ var executor_default8 = withRunExecutor("Typia runtime validation generator", ty
1664
1827
  });
1665
1828
 
1666
1829
  // ../workspace-tools/src/executors/unbuild/executor.ts
1667
- import { defu as defu2 } from "defu";
1830
+ import { defu as defu3 } from "defu";
1668
1831
  import { createJiti } from "jiti";
1669
1832
  async function unbuildExecutorFn(options, context2, config) {
1670
1833
  writeInfo("\u{1F4E6} Running Storm Unbuild executor on the workspace", config);
@@ -1682,7 +1845,7 @@ async function unbuildExecutorFn(options, context2, config) {
1682
1845
  interopDefault: true
1683
1846
  });
1684
1847
  const stormUnbuild = await jiti.import(jiti.esmResolve("@storm-software/unbuild/build"));
1685
- await stormUnbuild.build(defu2({
1848
+ await stormUnbuild.build(defu3({
1686
1849
  ...options,
1687
1850
  projectRoot: context2.projectsConfigurations.projects[context2.projectName].root,
1688
1851
  projectName: context2.projectName,
@@ -3225,27 +3388,27 @@ import { retrieveProjectConfigurationsWithoutPluginInference } from "nx/src/proj
3225
3388
 
3226
3389
  // ../workspace-tools/src/utils/lock-file.ts
3227
3390
  import { output as output2, readJsonFile, workspaceRoot as workspaceRoot2 } from "@nx/devkit";
3228
- import { existsSync as existsSync6 } from "node:fs";
3229
- import { join as join2 } from "node:path";
3391
+ import { existsSync as existsSync7 } from "node:fs";
3392
+ import { join as join3 } from "node:path";
3230
3393
  import { getNpmLockfileDependencies, getNpmLockfileNodes } from "nx/src/plugins/js/lock-file/npm-parser";
3231
3394
  import { getPnpmLockfileDependencies, getPnpmLockfileNodes } from "nx/src/plugins/js/lock-file/pnpm-parser";
3232
3395
  import { getYarnLockfileDependencies, getYarnLockfileNodes } from "nx/src/plugins/js/lock-file/yarn-parser";
3233
3396
  var YARN_LOCK_FILE = "yarn.lock";
3234
3397
  var NPM_LOCK_FILE = "package-lock.json";
3235
3398
  var PNPM_LOCK_FILE = "pnpm-lock.yaml";
3236
- var YARN_LOCK_PATH = join2(workspaceRoot2, YARN_LOCK_FILE);
3237
- var NPM_LOCK_PATH = join2(workspaceRoot2, NPM_LOCK_FILE);
3238
- var PNPM_LOCK_PATH = join2(workspaceRoot2, PNPM_LOCK_FILE);
3399
+ var YARN_LOCK_PATH = join3(workspaceRoot2, YARN_LOCK_FILE);
3400
+ var NPM_LOCK_PATH = join3(workspaceRoot2, NPM_LOCK_FILE);
3401
+ var PNPM_LOCK_PATH = join3(workspaceRoot2, PNPM_LOCK_FILE);
3239
3402
 
3240
3403
  // ../workspace-tools/src/utils/package-helpers.ts
3241
3404
  import { joinPathFragments as joinPathFragments6, readJsonFile as readJsonFile2 } from "@nx/devkit";
3242
- import { existsSync as existsSync7 } from "node:fs";
3405
+ import { existsSync as existsSync8 } from "node:fs";
3243
3406
 
3244
3407
  // ../workspace-tools/src/utils/plugin-helpers.ts
3245
3408
  import { readJsonFile as readJsonFile3 } from "@nx/devkit";
3246
- import defu3 from "defu";
3247
- import { existsSync as existsSync8 } from "node:fs";
3248
- import { dirname as dirname2, join as join3 } from "node:path";
3409
+ import defu4 from "defu";
3410
+ import { existsSync as existsSync9 } from "node:fs";
3411
+ import { dirname as dirname3, join as join4 } from "node:path";
3249
3412
 
3250
3413
  // ../workspace-tools/src/utils/typia-transform.ts
3251
3414
  import transform2 from "typia/lib/transform";
@@ -1,9 +1,9 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
2
 
3
- var _chunkORY6UCS4js = require('./chunk-ORY6UCS4.js');
3
+ var _chunkUMMSLZTKjs = require('./chunk-UMMSLZTK.js');
4
4
 
5
5
  // src/executors/output/executor.ts
6
- var executor_default = _chunkORY6UCS4js.withTerraformExecutor.call(void 0, "output");
6
+ var executor_default = _chunkUMMSLZTKjs.withTerraformExecutor.call(void 0, "output");
7
7
 
8
8
 
9
9
 
@@ -1,9 +1,9 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
2
 
3
- var _chunkORY6UCS4js = require('./chunk-ORY6UCS4.js');
3
+ var _chunkUMMSLZTKjs = require('./chunk-UMMSLZTK.js');
4
4
 
5
5
  // src/executors/destroy/executor.ts
6
- var executor_default = _chunkORY6UCS4js.withTerraformExecutor.call(void 0, "destroy");
6
+ var executor_default = _chunkUMMSLZTKjs.withTerraformExecutor.call(void 0, "destroy");
7
7
 
8
8
 
9
9