@storm-software/terraform-tools 0.66.28 → 0.66.30

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -2,6 +2,27 @@
2
2
 
3
3
  # Changelog for Storm Ops - Terraform Tools
4
4
 
5
+ ## [0.66.29](https://github.com/storm-software/storm-ops/releases/tag/terraform-tools%400.66.29) (11/12/2025)
6
+
7
+ ### Miscellaneous
8
+
9
+ - **monorepo:** Regenerate README markdown files
10
+ ([89dfbdb7f](https://github.com/storm-software/storm-ops/commit/89dfbdb7f))
11
+
12
+ ### Updated Dependencies
13
+
14
+ - Updated **workspace-tools** to **v1.292.29**
15
+ - Updated **config-tools** to **v1.188.29**
16
+ - Updated **config** to **v1.134.29**
17
+
18
+ ## [0.66.28](https://github.com/storm-software/storm-ops/releases/tag/terraform-tools%400.66.28) (11/12/2025)
19
+
20
+ ### Updated Dependencies
21
+
22
+ - Updated **workspace-tools** to **v1.292.28**
23
+ - Updated **config-tools** to **v1.188.28**
24
+ - Updated **config** to **v1.134.28**
25
+
5
26
  ## [0.66.27](https://github.com/storm-software/storm-ops/releases/tag/terraform-tools%400.66.27) (11/12/2025)
6
27
 
7
28
  ### 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.66.25-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.66.29-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 -->
@@ -40,6 +40,7 @@ This package is part of the <b>⚡Storm-Ops</b> monorepo. The Storm-Ops packages
40
40
 
41
41
  <!-- START doctoc -->
42
42
  <!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->
43
+
43
44
  ## Table of Contents
44
45
 
45
46
  - [Storm Terraform Tools](#storm-terraform-tools)
@@ -984,6 +984,63 @@ var executor_default6 = _chunkYDAVIV5Rjs.withRunExecutor.call(void 0,
984
984
  }
985
985
  );
986
986
 
987
+ // ../workspace-tools/src/executors/napi/executor.ts
988
+ var _jiti = require('jiti');
989
+ var _fileutils = require('nx/src/utils/fileutils');
990
+ async function napiExecutor(options, context, config) {
991
+ const jiti = _jiti.createJiti.call(void 0, config.workspaceRoot, {
992
+ fsCache: config.skipCache ? false : _chunkYDAVIV5Rjs.joinPaths.call(void 0,
993
+ config.workspaceRoot,
994
+ config.directories.cache || "node_modules/.cache/storm",
995
+ "jiti"
996
+ ),
997
+ interopDefault: true
998
+ });
999
+ const { NapiCli } = await jiti.import(
1000
+ jiti.esmResolve("@napi-rs/cli")
1001
+ );
1002
+ if (!_optionalChain([context, 'access', _58 => _58.projectGraph, 'optionalAccess', _59 => _59.nodes, 'access', _60 => _60[_nullishCoalesce(context.projectName, () => ( ""))]])) {
1003
+ throw new Error(
1004
+ "The Napi Build process failed because the project could not be found in the project graph. Please run this command from a workspace root directory."
1005
+ );
1006
+ }
1007
+ const projectRoot = _optionalChain([context, 'access', _61 => _61.projectGraph, 'optionalAccess', _62 => _62.nodes, 'access', _63 => _63[_nullishCoalesce(context.projectName, () => ( ""))], 'access', _64 => _64.data, 'access', _65 => _65.root]);
1008
+ const packageJson = _chunkYDAVIV5Rjs.joinPaths.call(void 0, _nullishCoalesce(projectRoot, () => ( ".")), "package.json");
1009
+ if (!_fileutils.fileExists.call(void 0, packageJson)) {
1010
+ throw new Error(`Could not find package.json at ${packageJson}`);
1011
+ }
1012
+ const napi = new NapiCli();
1013
+ const buildOptions = { ...options };
1014
+ const metadata = cargoMetadata();
1015
+ buildOptions.outputDir = options.outputPath;
1016
+ buildOptions.packageJsonPath = options.packageJsonPath || packageJson;
1017
+ buildOptions.targetDir = options.targetDir || _optionalChain([metadata, 'optionalAccess', _66 => _66.target_directory]) || _chunkYDAVIV5Rjs.joinPaths.call(void 0, config.workspaceRoot, "dist", "target");
1018
+ if (process.env.VERCEL) {
1019
+ return { success: true };
1020
+ }
1021
+ const { task } = await napi.build(buildOptions);
1022
+ return { success: true, terminalOutput: await task };
1023
+ }
1024
+ var executor_default7 = _chunkYDAVIV5Rjs.withRunExecutor.call(void 0,
1025
+ "Napi - Build Bindings",
1026
+ napiExecutor,
1027
+ {
1028
+ skipReadingConfig: false,
1029
+ hooks: {
1030
+ applyDefaultOptions: (options) => {
1031
+ options.outputPath ??= "dist/{projectRoot}/target";
1032
+ options.toolchain ??= "stable";
1033
+ options.dtsCache ??= true;
1034
+ options.platform ??= true;
1035
+ options.constEnum ??= false;
1036
+ options.jsBinding ??= "binding.js";
1037
+ options.dts ??= "binding.d.ts";
1038
+ return options;
1039
+ }
1040
+ }
1041
+ }
1042
+ );
1043
+
987
1044
  // ../npm-tools/src/helpers/get-registry.ts
988
1045
 
989
1046
 
@@ -1093,15 +1150,15 @@ var _esbuildwhy = require('@size-limit/esbuild-why'); var _esbuildwhy2 = _intero
1093
1150
  var _file = require('@size-limit/file'); var _file2 = _interopRequireDefault(_file);
1094
1151
  var _sizelimit = require('size-limit'); var _sizelimit2 = _interopRequireDefault(_sizelimit);
1095
1152
  async function sizeLimitExecutorFn(options, context, config) {
1096
- if (!_optionalChain([context, 'optionalAccess', _58 => _58.projectName]) || !_optionalChain([context, 'access', _59 => _59.projectsConfigurations, 'optionalAccess', _60 => _60.projects]) || !context.projectsConfigurations.projects[context.projectName]) {
1153
+ if (!_optionalChain([context, 'optionalAccess', _67 => _67.projectName]) || !_optionalChain([context, 'access', _68 => _68.projectsConfigurations, 'optionalAccess', _69 => _69.projects]) || !context.projectsConfigurations.projects[context.projectName]) {
1097
1154
  throw new Error(
1098
1155
  "The Size-Limit process failed because the context is not valid. Please run this command from a workspace."
1099
1156
  );
1100
1157
  }
1101
1158
  _chunkYDAVIV5Rjs.writeInfo.call(void 0, `\u{1F4CF} Running Size-Limit on ${context.projectName}`, config);
1102
1159
  _sizelimit2.default.call(void 0, [_file2.default, _esbuild2.default, _esbuildwhy2.default], {
1103
- checks: _nullishCoalesce(_nullishCoalesce(options.entry, () => ( _optionalChain([context, 'access', _61 => _61.projectsConfigurations, 'access', _62 => _62.projects, 'access', _63 => _63[context.projectName], 'optionalAccess', _64 => _64.sourceRoot]))), () => ( _devkit.joinPathFragments.call(void 0,
1104
- _nullishCoalesce(_optionalChain([context, 'access', _65 => _65.projectsConfigurations, 'access', _66 => _66.projects, 'access', _67 => _67[context.projectName], 'optionalAccess', _68 => _68.root]), () => ( "./")),
1160
+ checks: _nullishCoalesce(_nullishCoalesce(options.entry, () => ( _optionalChain([context, 'access', _70 => _70.projectsConfigurations, 'access', _71 => _71.projects, 'access', _72 => _72[context.projectName], 'optionalAccess', _73 => _73.sourceRoot]))), () => ( _devkit.joinPathFragments.call(void 0,
1161
+ _nullishCoalesce(_optionalChain([context, 'access', _74 => _74.projectsConfigurations, 'access', _75 => _75.projects, 'access', _76 => _76[context.projectName], 'optionalAccess', _77 => _77.root]), () => ( "./")),
1105
1162
  "src"
1106
1163
  )))
1107
1164
  }).then((result) => {
@@ -1114,7 +1171,7 @@ async function sizeLimitExecutorFn(options, context, config) {
1114
1171
  success: true
1115
1172
  };
1116
1173
  }
1117
- var executor_default7 = _chunkYDAVIV5Rjs.withRunExecutor.call(void 0,
1174
+ var executor_default8 = _chunkYDAVIV5Rjs.withRunExecutor.call(void 0,
1118
1175
  "Size-Limit Performance Test Executor",
1119
1176
  sizeLimitExecutorFn,
1120
1177
  {
@@ -1199,7 +1256,7 @@ var resolveOptions = async (userOptions) => {
1199
1256
  const projectJson = JSON.parse(projectJsonFile);
1200
1257
  const projectName = projectJson.name;
1201
1258
  const projectConfigurations = _devkit.readProjectsConfigurationFromProjectGraph.call(void 0, projectGraph);
1202
- if (!_optionalChain([projectConfigurations, 'optionalAccess', _69 => _69.projects, 'optionalAccess', _70 => _70[projectName]])) {
1259
+ if (!_optionalChain([projectConfigurations, 'optionalAccess', _78 => _78.projects, 'optionalAccess', _79 => _79[projectName]])) {
1203
1260
  throw new Error(
1204
1261
  "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."
1205
1262
  );
@@ -1421,7 +1478,7 @@ async function build3(options) {
1421
1478
  // ../workspace-tools/src/executors/tsdown/executor.ts
1422
1479
  async function tsdownExecutorFn(options, context, config) {
1423
1480
  _chunkYDAVIV5Rjs.writeInfo.call(void 0, "\u{1F4E6} Running Storm TSDown executor on the workspace", config);
1424
- if (!_optionalChain([context, 'access', _71 => _71.projectsConfigurations, 'optionalAccess', _72 => _72.projects]) || !context.projectName || !context.projectsConfigurations.projects[context.projectName] || !_optionalChain([context, 'access', _73 => _73.projectsConfigurations, 'access', _74 => _74.projects, 'access', _75 => _75[context.projectName], 'optionalAccess', _76 => _76.root])) {
1481
+ if (!_optionalChain([context, 'access', _80 => _80.projectsConfigurations, 'optionalAccess', _81 => _81.projects]) || !context.projectName || !context.projectsConfigurations.projects[context.projectName] || !_optionalChain([context, 'access', _82 => _82.projectsConfigurations, 'access', _83 => _83.projects, 'access', _84 => _84[context.projectName], 'optionalAccess', _85 => _85.root])) {
1425
1482
  throw new Error(
1426
1483
  "The Build process failed because the context is not valid. Please run this command from a workspace."
1427
1484
  );
@@ -1430,10 +1487,10 @@ async function tsdownExecutorFn(options, context, config) {
1430
1487
  ...options,
1431
1488
  projectRoot: (
1432
1489
  // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
1433
- _optionalChain([context, 'access', _77 => _77.projectsConfigurations, 'access', _78 => _78.projects, 'optionalAccess', _79 => _79[context.projectName], 'access', _80 => _80.root])
1490
+ _optionalChain([context, 'access', _86 => _86.projectsConfigurations, 'access', _87 => _87.projects, 'optionalAccess', _88 => _88[context.projectName], 'access', _89 => _89.root])
1434
1491
  ),
1435
1492
  name: context.projectName,
1436
- sourceRoot: _optionalChain([context, 'access', _81 => _81.projectsConfigurations, 'access', _82 => _82.projects, 'optionalAccess', _83 => _83[context.projectName], 'optionalAccess', _84 => _84.sourceRoot]),
1493
+ sourceRoot: _optionalChain([context, 'access', _90 => _90.projectsConfigurations, 'access', _91 => _91.projects, 'optionalAccess', _92 => _92[context.projectName], 'optionalAccess', _93 => _93.sourceRoot]),
1437
1494
  format: options.format,
1438
1495
  platform: options.platform
1439
1496
  });
@@ -1441,7 +1498,7 @@ async function tsdownExecutorFn(options, context, config) {
1441
1498
  success: true
1442
1499
  };
1443
1500
  }
1444
- var executor_default8 = _chunkYDAVIV5Rjs.withRunExecutor.call(void 0,
1501
+ var executor_default9 = _chunkYDAVIV5Rjs.withRunExecutor.call(void 0,
1445
1502
  "Storm TSDown build",
1446
1503
  tsdownExecutorFn,
1447
1504
  {
@@ -1479,7 +1536,7 @@ async function typiaExecutorFn(options, _, config) {
1479
1536
  success: true
1480
1537
  };
1481
1538
  }
1482
- var executor_default9 = _chunkYDAVIV5Rjs.withRunExecutor.call(void 0,
1539
+ var executor_default10 = _chunkYDAVIV5Rjs.withRunExecutor.call(void 0,
1483
1540
  "Typia runtime validation generator",
1484
1541
  typiaExecutorFn,
1485
1542
  {
@@ -1498,10 +1555,10 @@ var executor_default9 = _chunkYDAVIV5Rjs.withRunExecutor.call(void 0,
1498
1555
 
1499
1556
  // ../workspace-tools/src/executors/unbuild/executor.ts
1500
1557
 
1501
- var _jiti = require('jiti');
1558
+
1502
1559
  async function unbuildExecutorFn(options, context, config) {
1503
1560
  _chunkYDAVIV5Rjs.writeInfo.call(void 0, "\u{1F4E6} Running Storm Unbuild executor on the workspace", config);
1504
- if (!_optionalChain([context, 'access', _85 => _85.projectsConfigurations, 'optionalAccess', _86 => _86.projects]) || !context.projectName || !context.projectsConfigurations.projects[context.projectName]) {
1561
+ if (!_optionalChain([context, 'access', _94 => _94.projectsConfigurations, 'optionalAccess', _95 => _95.projects]) || !context.projectName || !context.projectsConfigurations.projects[context.projectName]) {
1505
1562
  throw new Error(
1506
1563
  "The Build process failed because the context is not valid. Please run this command from a workspace root directory."
1507
1564
  );
@@ -1568,7 +1625,7 @@ async function unbuildExecutorFn(options, context, config) {
1568
1625
  success: true
1569
1626
  };
1570
1627
  }
1571
- var executor_default10 = _chunkYDAVIV5Rjs.withRunExecutor.call(void 0,
1628
+ var executor_default11 = _chunkYDAVIV5Rjs.withRunExecutor.call(void 0,
1572
1629
  "TypeScript Unbuild build",
1573
1630
  unbuildExecutorFn,
1574
1631
  {
@@ -1615,7 +1672,7 @@ var withRunGenerator = (name, generatorFn, generatorOptions = {
1615
1672
  );
1616
1673
  config = await _chunkYDAVIV5Rjs.getConfig.call(void 0, workspaceRoot2);
1617
1674
  }
1618
- if (_optionalChain([generatorOptions, 'optionalAccess', _87 => _87.hooks, 'optionalAccess', _88 => _88.applyDefaultOptions])) {
1675
+ if (_optionalChain([generatorOptions, 'optionalAccess', _96 => _96.hooks, 'optionalAccess', _97 => _97.applyDefaultOptions])) {
1619
1676
  _chunkYDAVIV5Rjs.writeDebug.call(void 0, "Running the applyDefaultOptions hook...", config);
1620
1677
  options = await Promise.resolve(
1621
1678
  generatorOptions.hooks.applyDefaultOptions(options, config)
@@ -1632,7 +1689,7 @@ ${Object.keys(_nullishCoalesce(options, () => ( {}))).map((key) => ` - ${key}=${
1632
1689
  { workspaceRoot: tree.root, config },
1633
1690
  _chunkYDAVIV5Rjs.applyWorkspaceBaseTokens
1634
1691
  );
1635
- if (_optionalChain([generatorOptions, 'optionalAccess', _89 => _89.hooks, 'optionalAccess', _90 => _90.preProcess])) {
1692
+ if (_optionalChain([generatorOptions, 'optionalAccess', _98 => _98.hooks, 'optionalAccess', _99 => _99.preProcess])) {
1636
1693
  _chunkYDAVIV5Rjs.writeDebug.call(void 0, "Running the preProcess hook...", config);
1637
1694
  await Promise.resolve(
1638
1695
  generatorOptions.hooks.preProcess(tokenized, config)
@@ -1643,15 +1700,15 @@ ${Object.keys(_nullishCoalesce(options, () => ( {}))).map((key) => ` - ${key}=${
1643
1700
  generatorFn(tree, tokenized, config)
1644
1701
  );
1645
1702
  if (result) {
1646
- if (result.success === false || result.error && _optionalChain([result, 'optionalAccess', _91 => _91.error, 'optionalAccess', _92 => _92.message]) && typeof _optionalChain([result, 'optionalAccess', _93 => _93.error, 'optionalAccess', _94 => _94.message]) === "string" && _optionalChain([result, 'optionalAccess', _95 => _95.error, 'optionalAccess', _96 => _96.name]) && typeof _optionalChain([result, 'optionalAccess', _97 => _97.error, 'optionalAccess', _98 => _98.name]) === "string") {
1703
+ if (result.success === false || result.error && _optionalChain([result, 'optionalAccess', _100 => _100.error, 'optionalAccess', _101 => _101.message]) && typeof _optionalChain([result, 'optionalAccess', _102 => _102.error, 'optionalAccess', _103 => _103.message]) === "string" && _optionalChain([result, 'optionalAccess', _104 => _104.error, 'optionalAccess', _105 => _105.name]) && typeof _optionalChain([result, 'optionalAccess', _106 => _106.error, 'optionalAccess', _107 => _107.name]) === "string") {
1647
1704
  throw new Error(`The ${name} generator failed to run`, {
1648
- cause: _optionalChain([result, 'optionalAccess', _99 => _99.error])
1705
+ cause: _optionalChain([result, 'optionalAccess', _108 => _108.error])
1649
1706
  });
1650
1707
  } else if (result.success && result.data) {
1651
1708
  return result;
1652
1709
  }
1653
1710
  }
1654
- if (_optionalChain([generatorOptions, 'optionalAccess', _100 => _100.hooks, 'optionalAccess', _101 => _101.postProcess])) {
1711
+ if (_optionalChain([generatorOptions, 'optionalAccess', _109 => _109.hooks, 'optionalAccess', _110 => _110.postProcess])) {
1655
1712
  _chunkYDAVIV5Rjs.writeDebug.call(void 0, "Running the postProcess hook...", config);
1656
1713
  await Promise.resolve(generatorOptions.hooks.postProcess(config));
1657
1714
  _chunkYDAVIV5Rjs.writeDebug.call(void 0, "Completed the postProcess hook", config);
@@ -1783,15 +1840,15 @@ async function typeScriptLibraryGeneratorFn(tree, options, config) {
1783
1840
  _devkit.addProjectConfiguration.call(void 0, tree, normalized.name, projectConfig);
1784
1841
  let repository = {
1785
1842
  type: "github",
1786
- url: _optionalChain([config, 'optionalAccess', _102 => _102.repository]) || `https://github.com/${(typeof _optionalChain([config, 'optionalAccess', _103 => _103.organization]) === "string" ? _optionalChain([config, 'optionalAccess', _104 => _104.organization]) : _optionalChain([config, 'optionalAccess', _105 => _105.organization, 'optionalAccess', _106 => _106.name])) || "storm-software"}/${_optionalChain([config, 'optionalAccess', _107 => _107.namespace]) || _optionalChain([config, 'optionalAccess', _108 => _108.name]) || "repository"}.git`
1843
+ url: _optionalChain([config, 'optionalAccess', _111 => _111.repository]) || `https://github.com/${(typeof _optionalChain([config, 'optionalAccess', _112 => _112.organization]) === "string" ? _optionalChain([config, 'optionalAccess', _113 => _113.organization]) : _optionalChain([config, 'optionalAccess', _114 => _114.organization, 'optionalAccess', _115 => _115.name])) || "storm-software"}/${_optionalChain([config, 'optionalAccess', _116 => _116.namespace]) || _optionalChain([config, 'optionalAccess', _117 => _117.name]) || "repository"}.git`
1787
1844
  };
1788
1845
  let description = options.description || "A package developed by Storm Software used to create modern, scalable web applications.";
1789
1846
  if (tree.exists("package.json")) {
1790
1847
  const packageJson = _devkit.readJson.call(void 0, tree, "package.json");
1791
- if (_optionalChain([packageJson, 'optionalAccess', _109 => _109.repository])) {
1848
+ if (_optionalChain([packageJson, 'optionalAccess', _118 => _118.repository])) {
1792
1849
  repository = packageJson.repository;
1793
1850
  }
1794
- if (_optionalChain([packageJson, 'optionalAccess', _110 => _110.description])) {
1851
+ if (_optionalChain([packageJson, 'optionalAccess', _119 => _119.description])) {
1795
1852
  description = packageJson.description;
1796
1853
  }
1797
1854
  }
@@ -1846,9 +1903,9 @@ async function typeScriptLibraryGeneratorFn(tree, options, config) {
1846
1903
  _devkit.updateJson.call(void 0, tree, "package.json", (json) => ({
1847
1904
  ...json,
1848
1905
  pnpm: {
1849
- ..._optionalChain([json, 'optionalAccess', _111 => _111.pnpm]),
1906
+ ..._optionalChain([json, 'optionalAccess', _120 => _120.pnpm]),
1850
1907
  overrides: {
1851
- ..._optionalChain([json, 'optionalAccess', _112 => _112.pnpm, 'optionalAccess', _113 => _113.overrides]),
1908
+ ..._optionalChain([json, 'optionalAccess', _121 => _121.pnpm, 'optionalAccess', _122 => _122.overrides]),
1852
1909
  [_nullishCoalesce(normalized.importPath, () => ( ""))]: "workspace:*"
1853
1910
  }
1854
1911
  }
@@ -1866,10 +1923,10 @@ async function typeScriptLibraryGeneratorFn(tree, options, config) {
1866
1923
  ]);
1867
1924
  if (tree.exists("package.json")) {
1868
1925
  const packageJson = _devkit.readJson.call(void 0, tree, "package.json");
1869
- if (_optionalChain([packageJson, 'optionalAccess', _114 => _114.repository])) {
1926
+ if (_optionalChain([packageJson, 'optionalAccess', _123 => _123.repository])) {
1870
1927
  repository = packageJson.repository;
1871
1928
  }
1872
- if (_optionalChain([packageJson, 'optionalAccess', _115 => _115.description])) {
1929
+ if (_optionalChain([packageJson, 'optionalAccess', _124 => _124.description])) {
1873
1930
  description = packageJson.description;
1874
1931
  }
1875
1932
  }
@@ -1906,22 +1963,22 @@ function getOutputPath(options) {
1906
1963
  function createProjectTsConfigJson(tree, options) {
1907
1964
  const tsconfig = {
1908
1965
  extends: options.rootProject ? void 0 : _js.getRelativePathToRootTsConfig.call(void 0, tree, options.projectRoot),
1909
- ..._nullishCoalesce(_optionalChain([options, 'optionalAccess', _116 => _116.tsconfigOptions]), () => ( {})),
1966
+ ..._nullishCoalesce(_optionalChain([options, 'optionalAccess', _125 => _125.tsconfigOptions]), () => ( {})),
1910
1967
  compilerOptions: {
1911
1968
  ...options.rootProject ? _js.tsConfigBaseOptions : {},
1912
1969
  outDir: _chunkYDAVIV5Rjs.joinPaths.call(void 0, _devkit.offsetFromRoot.call(void 0, options.projectRoot), "dist/out-tsc"),
1913
1970
  noEmit: true,
1914
- ..._nullishCoalesce(_optionalChain([options, 'optionalAccess', _117 => _117.tsconfigOptions, 'optionalAccess', _118 => _118.compilerOptions]), () => ( {}))
1971
+ ..._nullishCoalesce(_optionalChain([options, 'optionalAccess', _126 => _126.tsconfigOptions, 'optionalAccess', _127 => _127.compilerOptions]), () => ( {}))
1915
1972
  },
1916
- files: [..._nullishCoalesce(_optionalChain([options, 'optionalAccess', _119 => _119.tsconfigOptions, 'optionalAccess', _120 => _120.files]), () => ( []))],
1973
+ files: [..._nullishCoalesce(_optionalChain([options, 'optionalAccess', _128 => _128.tsconfigOptions, 'optionalAccess', _129 => _129.files]), () => ( []))],
1917
1974
  include: [
1918
- ..._nullishCoalesce(_optionalChain([options, 'optionalAccess', _121 => _121.tsconfigOptions, 'optionalAccess', _122 => _122.include]), () => ( [])),
1975
+ ..._nullishCoalesce(_optionalChain([options, 'optionalAccess', _130 => _130.tsconfigOptions, 'optionalAccess', _131 => _131.include]), () => ( [])),
1919
1976
  "src/**/*.ts",
1920
1977
  "src/**/*.js",
1921
1978
  "bin/**/*"
1922
1979
  ],
1923
1980
  exclude: [
1924
- ..._nullishCoalesce(_optionalChain([options, 'optionalAccess', _123 => _123.tsconfigOptions, 'optionalAccess', _124 => _124.exclude]), () => ( [])),
1981
+ ..._nullishCoalesce(_optionalChain([options, 'optionalAccess', _132 => _132.tsconfigOptions, 'optionalAccess', _133 => _133.exclude]), () => ( [])),
1925
1982
  "jest.config.ts",
1926
1983
  "src/**/*.spec.ts",
1927
1984
  "src/**/*.test.ts"
@@ -1931,8 +1988,8 @@ function createProjectTsConfigJson(tree, options) {
1931
1988
  }
1932
1989
  async function normalizeOptions(tree, options, config) {
1933
1990
  let importPath = options.importPath;
1934
- if (!importPath && _optionalChain([config, 'optionalAccess', _125 => _125.namespace])) {
1935
- importPath = `@${_optionalChain([config, 'optionalAccess', _126 => _126.namespace])}/${options.name}`;
1991
+ if (!importPath && _optionalChain([config, 'optionalAccess', _134 => _134.namespace])) {
1992
+ importPath = `@${_optionalChain([config, 'optionalAccess', _135 => _135.namespace])}/${options.name}`;
1936
1993
  }
1937
1994
  if (options.publishable) {
1938
1995
  if (!importPath) {
@@ -2097,7 +2154,7 @@ async function configSchemaGeneratorFn(tree, options, config) {
2097
2154
  );
2098
2155
  }
2099
2156
  const outputPath = options.outputFile.replaceAll("{workspaceRoot}", "").replaceAll(
2100
- _nullishCoalesce(_optionalChain([config, 'optionalAccess', _127 => _127.workspaceRoot]), () => ( _chunkYDAVIV5Rjs.findWorkspaceRoot.call(void 0, ))),
2157
+ _nullishCoalesce(_optionalChain([config, 'optionalAccess', _136 => _136.workspaceRoot]), () => ( _chunkYDAVIV5Rjs.findWorkspaceRoot.call(void 0, ))),
2101
2158
  options.outputFile.startsWith("./") ? "" : "./"
2102
2159
  );
2103
2160
  _chunkYDAVIV5Rjs.writeTrace.call(void 0,
@@ -987,6 +987,63 @@ var executor_default6 = withRunExecutor(
987
987
  }
988
988
  );
989
989
 
990
+ // ../workspace-tools/src/executors/napi/executor.ts
991
+ import { createJiti } from "jiti";
992
+ import { fileExists } from "nx/src/utils/fileutils";
993
+ async function napiExecutor(options, context, config) {
994
+ const jiti = createJiti(config.workspaceRoot, {
995
+ fsCache: config.skipCache ? false : joinPaths(
996
+ config.workspaceRoot,
997
+ config.directories.cache || "node_modules/.cache/storm",
998
+ "jiti"
999
+ ),
1000
+ interopDefault: true
1001
+ });
1002
+ const { NapiCli } = await jiti.import(
1003
+ jiti.esmResolve("@napi-rs/cli")
1004
+ );
1005
+ if (!context.projectGraph?.nodes[context.projectName ?? ""]) {
1006
+ throw new Error(
1007
+ "The Napi Build process failed because the project could not be found in the project graph. Please run this command from a workspace root directory."
1008
+ );
1009
+ }
1010
+ const projectRoot = context.projectGraph?.nodes[context.projectName ?? ""].data.root;
1011
+ const packageJson = joinPaths(projectRoot ?? ".", "package.json");
1012
+ if (!fileExists(packageJson)) {
1013
+ throw new Error(`Could not find package.json at ${packageJson}`);
1014
+ }
1015
+ const napi = new NapiCli();
1016
+ const buildOptions = { ...options };
1017
+ const metadata = cargoMetadata();
1018
+ buildOptions.outputDir = options.outputPath;
1019
+ buildOptions.packageJsonPath = options.packageJsonPath || packageJson;
1020
+ buildOptions.targetDir = options.targetDir || metadata?.target_directory || joinPaths(config.workspaceRoot, "dist", "target");
1021
+ if (process.env.VERCEL) {
1022
+ return { success: true };
1023
+ }
1024
+ const { task } = await napi.build(buildOptions);
1025
+ return { success: true, terminalOutput: await task };
1026
+ }
1027
+ var executor_default7 = withRunExecutor(
1028
+ "Napi - Build Bindings",
1029
+ napiExecutor,
1030
+ {
1031
+ skipReadingConfig: false,
1032
+ hooks: {
1033
+ applyDefaultOptions: (options) => {
1034
+ options.outputPath ??= "dist/{projectRoot}/target";
1035
+ options.toolchain ??= "stable";
1036
+ options.dtsCache ??= true;
1037
+ options.platform ??= true;
1038
+ options.constEnum ??= false;
1039
+ options.jsBinding ??= "binding.js";
1040
+ options.dts ??= "binding.d.ts";
1041
+ return options;
1042
+ }
1043
+ }
1044
+ }
1045
+ );
1046
+
990
1047
  // ../npm-tools/src/helpers/get-registry.ts
991
1048
  import { exec } from "node:child_process";
992
1049
 
@@ -1117,7 +1174,7 @@ async function sizeLimitExecutorFn(options, context, config) {
1117
1174
  success: true
1118
1175
  };
1119
1176
  }
1120
- var executor_default7 = withRunExecutor(
1177
+ var executor_default8 = withRunExecutor(
1121
1178
  "Size-Limit Performance Test Executor",
1122
1179
  sizeLimitExecutorFn,
1123
1180
  {
@@ -1444,7 +1501,7 @@ async function tsdownExecutorFn(options, context, config) {
1444
1501
  success: true
1445
1502
  };
1446
1503
  }
1447
- var executor_default8 = withRunExecutor(
1504
+ var executor_default9 = withRunExecutor(
1448
1505
  "Storm TSDown build",
1449
1506
  tsdownExecutorFn,
1450
1507
  {
@@ -1482,7 +1539,7 @@ async function typiaExecutorFn(options, _, config) {
1482
1539
  success: true
1483
1540
  };
1484
1541
  }
1485
- var executor_default9 = withRunExecutor(
1542
+ var executor_default10 = withRunExecutor(
1486
1543
  "Typia runtime validation generator",
1487
1544
  typiaExecutorFn,
1488
1545
  {
@@ -1501,7 +1558,7 @@ var executor_default9 = withRunExecutor(
1501
1558
 
1502
1559
  // ../workspace-tools/src/executors/unbuild/executor.ts
1503
1560
  import { defu as defu3 } from "defu";
1504
- import { createJiti } from "jiti";
1561
+ import { createJiti as createJiti2 } from "jiti";
1505
1562
  async function unbuildExecutorFn(options, context, config) {
1506
1563
  writeInfo("\u{1F4E6} Running Storm Unbuild executor on the workspace", config);
1507
1564
  if (!context.projectsConfigurations?.projects || !context.projectName || !context.projectsConfigurations.projects[context.projectName]) {
@@ -1519,7 +1576,7 @@ async function unbuildExecutorFn(options, context, config) {
1519
1576
  "The Build process failed because the project's source root is not valid. Please run this command from a workspace root directory."
1520
1577
  );
1521
1578
  }
1522
- const jiti = createJiti(config.workspaceRoot, {
1579
+ const jiti = createJiti2(config.workspaceRoot, {
1523
1580
  fsCache: config.skipCache ? false : joinPaths(
1524
1581
  config.workspaceRoot,
1525
1582
  config.directories.cache || "node_modules/.cache/storm",
@@ -1571,7 +1628,7 @@ async function unbuildExecutorFn(options, context, config) {
1571
1628
  success: true
1572
1629
  };
1573
1630
  }
1574
- var executor_default10 = withRunExecutor(
1631
+ var executor_default11 = withRunExecutor(
1575
1632
  "TypeScript Unbuild build",
1576
1633
  unbuildExecutorFn,
1577
1634
  {
package/dist/executors.js CHANGED
@@ -1,7 +1,7 @@
1
1
  "use strict";require('./chunk-E7SPQEPH.js');
2
2
  require('./chunk-Y4UTAL3Q.js');
3
- require('./chunk-4KZE37RJ.js');
4
3
  require('./chunk-CLOQAFSP.js');
4
+ require('./chunk-4KZE37RJ.js');
5
5
  require('./chunk-UTU6JZAG.js');
6
6
  require('./chunk-OJPLIJFJ.js');
7
7
  require('./chunk-YDAVIV5R.js');
@@ -1,7 +1,7 @@
1
1
  import "./chunk-HYHKZPRR.mjs";
2
2
  import "./chunk-RJHUDWTG.mjs";
3
- import "./chunk-5WM6Y5TA.mjs";
4
3
  import "./chunk-MLCA6E37.mjs";
4
+ import "./chunk-5WM6Y5TA.mjs";
5
5
  import "./chunk-IGSKGEFE.mjs";
6
6
  import "./chunk-2DMNEOTY.mjs";
7
7
  import "./chunk-CDTJAYLJ.mjs";
@@ -1,8 +1,8 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});require('./chunk-N2YKXZ5R.js');
2
2
 
3
3
 
4
- var _chunkRNGLEU7Rjs = require('./chunk-RNGLEU7R.js');
4
+ var _chunkD645XPQQjs = require('./chunk-D645XPQQ.js');
5
5
  require('./chunk-YDAVIV5R.js');
6
6
 
7
7
 
8
- exports.initGenerator = _chunkRNGLEU7Rjs.initGenerator;
8
+ exports.initGenerator = _chunkD645XPQQjs.initGenerator;
@@ -1,7 +1,7 @@
1
1
  import "./chunk-23KFTIT2.mjs";
2
2
  import {
3
3
  initGenerator
4
- } from "./chunk-ZH7TPK7T.mjs";
4
+ } from "./chunk-XS5BAACH.mjs";
5
5
  import "./chunk-CDTJAYLJ.mjs";
6
6
  import "./chunk-5BBAVVSK.mjs";
7
7
  export {
package/dist/index.js CHANGED
@@ -1,11 +1,11 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});require('./chunk-E7SPQEPH.js');
2
2
  require('./chunk-Y4UTAL3Q.js');
3
- require('./chunk-4KZE37RJ.js');
4
3
  require('./chunk-CLOQAFSP.js');
4
+ require('./chunk-4KZE37RJ.js');
5
5
  require('./chunk-N2YKXZ5R.js');
6
6
 
7
7
 
8
- var _chunkRNGLEU7Rjs = require('./chunk-RNGLEU7R.js');
8
+ var _chunkD645XPQQjs = require('./chunk-D645XPQQ.js');
9
9
  require('./chunk-GUQOEBFW.js');
10
10
 
11
11
 
@@ -19,4 +19,4 @@ require('./chunk-YDAVIV5R.js');
19
19
 
20
20
 
21
21
 
22
- exports.baseTerraformExecutorSchema = _chunkILC773N2js.base_terraform_executor_untyped_default; exports.initGenerator = _chunkRNGLEU7Rjs.initGenerator; exports.withTerraformExecutor = _chunkOJPLIJFJjs.withTerraformExecutor;
22
+ exports.baseTerraformExecutorSchema = _chunkILC773N2js.base_terraform_executor_untyped_default; exports.initGenerator = _chunkD645XPQQjs.initGenerator; exports.withTerraformExecutor = _chunkOJPLIJFJjs.withTerraformExecutor;
package/dist/index.mjs CHANGED
@@ -1,11 +1,11 @@
1
1
  import "./chunk-HYHKZPRR.mjs";
2
2
  import "./chunk-RJHUDWTG.mjs";
3
- import "./chunk-5WM6Y5TA.mjs";
4
3
  import "./chunk-MLCA6E37.mjs";
4
+ import "./chunk-5WM6Y5TA.mjs";
5
5
  import "./chunk-23KFTIT2.mjs";
6
6
  import {
7
7
  initGenerator
8
- } from "./chunk-ZH7TPK7T.mjs";
8
+ } from "./chunk-XS5BAACH.mjs";
9
9
  import "./chunk-CA7S5MOH.mjs";
10
10
  import {
11
11
  base_terraform_executor_untyped_default
@@ -1,9 +1,9 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
2
 
3
3
 
4
- var _chunkRNGLEU7Rjs = require('../../../chunk-RNGLEU7R.js');
4
+ var _chunkD645XPQQjs = require('../../../chunk-D645XPQQ.js');
5
5
  require('../../../chunk-YDAVIV5R.js');
6
6
 
7
7
 
8
8
 
9
- exports.default = _chunkRNGLEU7Rjs.init_default; exports.initGenerator = _chunkRNGLEU7Rjs.initGenerator;
9
+ exports.default = _chunkD645XPQQjs.init_default; exports.initGenerator = _chunkD645XPQQjs.initGenerator;
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  initGenerator,
3
3
  init_default
4
- } from "../../../chunk-ZH7TPK7T.mjs";
4
+ } from "../../../chunk-XS5BAACH.mjs";
5
5
  import "../../../chunk-CDTJAYLJ.mjs";
6
6
  import "../../../chunk-5BBAVVSK.mjs";
7
7
  export {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@storm-software/terraform-tools",
3
- "version": "0.66.28",
3
+ "version": "0.66.30",
4
4
  "description": "Tools for managing Terraform infrastructure within a Nx workspace.",
5
5
  "repository": {
6
6
  "type": "github",
@@ -114,9 +114,9 @@
114
114
  ],
115
115
  "peerDependencies": {
116
116
  "@nx/devkit": "^22.0.3",
117
- "@storm-software/config": "1.134.27",
118
- "@storm-software/config-tools": "1.188.27",
119
- "@storm-software/workspace-tools": "1.292.27",
117
+ "@storm-software/config": "1.134.29",
118
+ "@storm-software/config-tools": "1.188.29",
119
+ "@storm-software/workspace-tools": "1.292.29",
120
120
  "tsup": "8.4.0",
121
121
  "untyped": "1.5.2"
122
122
  },
@@ -135,5 +135,5 @@
135
135
  "publishConfig": { "access": "public" },
136
136
  "executors": "./executors.json",
137
137
  "generators": "./generators.json",
138
- "gitHead": "fb8e2634c4a094f22dce9c0bb87a38be0e569cc0"
138
+ "gitHead": "9cb94503bd31113afe1893deb47dba3808c80e13"
139
139
  }