@storm-software/unbuild 0.37.16 → 0.37.17

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/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.37.15-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.37.17-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 -->
package/bin/unbuild.cjs CHANGED
@@ -31,6 +31,26 @@ var STORM_DEFAULT_DOCS = "https://docs.stormsoftware.com";
31
31
  var STORM_DEFAULT_HOMEPAGE = "https://stormsoftware.com";
32
32
  var STORM_DEFAULT_LICENSING = "https://license.stormsoftware.com";
33
33
  var STORM_DEFAULT_LICENSE = "Apache-2.0";
34
+ var STORM_DEFAULT_RELEASE_BANNER = "https://public.storm-cdn.com/logo-banner.png";
35
+ var STORM_DEFAULT_RELEASE_FOOTER = `
36
+ Storm Software is an open source software development organization and creator
37
+ of Cyclone UI, Storm Stack and Acidic.
38
+
39
+ Our mission is to make software development more accessible. Our ideal future is
40
+ one where anyone can create software without years of prior development
41
+ experience serving as a barrier to entry. We hope to achieve this via LLMs,
42
+ Generative AI, and intuitive, high-level data modeling/programming languages.
43
+
44
+ Join us on [Discord](https://discord.gg/MQ6YVzakM5) to chat with the team,
45
+ receive release notifications, ask questions, and get involved.
46
+
47
+ If this sounds interesting, and you would like to help us in creating the next
48
+ generation of development tools, please reach out on our [website](https://stormsoftware.com/contact) or join our
49
+ [Slack](https://join.slack.com/t/storm-software/shared_invite/zt-2gsmk04hs-i6yhK_r6urq0dkZYAwq2pA) channel!
50
+
51
+ ![Storm Software](https://public.storm-cdn.com/icon-fill.png){ width="200" style="display: block; margin: 0 auto" }
52
+ ![Visit us at stormsoftware.com](https://public.storm-cdn.com/visit-us-text.svg){ height="90" style="display: block; margin: 0 auto" }
53
+ `;
34
54
 
35
55
  // ../config/src/schema.ts
36
56
  var DarkColorSchema = import_zod.default.string().trim().toLowerCase().regex(/^#([0-9a-f]{3}){1,2}$/i).length(7).default("#1d1e22").describe("The dark background color of the workspace");
@@ -120,6 +140,11 @@ var WorkspaceBotConfigSchema = import_zod.default.object({
120
140
  name: import_zod.default.string().trim().default("stormie-bot").describe("The workspace bot user's name (this is the bot that will be used to perform various tasks)"),
121
141
  email: import_zod.default.string().trim().email().default("bot@stormsoftware.com").describe("The email of the workspace bot")
122
142
  }).describe("The workspace's bot user's config used to automated various operations tasks");
143
+ var WorkspaceReleaseConfigSchema = import_zod.default.object({
144
+ banner: import_zod.default.string().trim().default(STORM_DEFAULT_RELEASE_BANNER).describe("A URL to a banner image used to display the workspace's release"),
145
+ header: import_zod.default.string().trim().optional().describe("A header message appended to the start of the workspace's release notes"),
146
+ footer: import_zod.default.string().trim().default(STORM_DEFAULT_RELEASE_FOOTER).describe("A footer message appended to the end of the workspace's release notes")
147
+ }).describe("The workspace's release config used during the release process");
123
148
  var WorkspaceDirectoryConfigSchema = import_zod.default.object({
124
149
  cache: import_zod.default.string().trim().optional().describe("The directory used to store the environment's cached file data"),
125
150
  data: import_zod.default.string().trim().optional().describe("The directory used to store the environment's data files"),
@@ -143,6 +168,7 @@ var StormConfigSchema = import_zod.default.object({
143
168
  preid: import_zod.default.string().optional().describe("A tag specifying the version pre-release identifier"),
144
169
  owner: import_zod.default.string().trim().default("@storm-software/admin").describe("The owner of the package"),
145
170
  bot: WorkspaceBotConfigSchema,
171
+ release: WorkspaceReleaseConfigSchema,
146
172
  mode: import_zod.default.enum([
147
173
  "development",
148
174
  "staging",
@@ -849,6 +875,11 @@ var getConfigEnv = /* @__PURE__ */ __name(() => {
849
875
  name: process.env[`${prefix}BOT_NAME`] || void 0,
850
876
  email: process.env[`${prefix}BOT_EMAIL`] || void 0
851
877
  },
878
+ release: {
879
+ banner: process.env[`${prefix}RELEASE_BANNER`] || void 0,
880
+ header: process.env[`${prefix}RELEASE_HEADER`] || void 0,
881
+ footer: process.env[`${prefix}RELEASE_FOOTER`] || void 0
882
+ },
852
883
  organization: process.env[`${prefix}ORGANIZATION`] || void 0,
853
884
  packageManager: process.env[`${prefix}PACKAGE_MANAGER`] || void 0,
854
885
  license: process.env[`${prefix}LICENSE`] || void 0,
@@ -1013,6 +1044,11 @@ var setConfigEnv = /* @__PURE__ */ __name((config) => {
1013
1044
  process.env[`${prefix}BOT_NAME`] = config.bot.name;
1014
1045
  process.env[`${prefix}BOT_EMAIL`] = config.bot.email;
1015
1046
  }
1047
+ if (config.release) {
1048
+ process.env[`${prefix}RELEASE_BANNER`] = config.release.banner;
1049
+ process.env[`${prefix}RELEASE_HEADER`] = config.release.header;
1050
+ process.env[`${prefix}RELEASE_FOOTER`] = config.release.footer;
1051
+ }
1016
1052
  if (config.organization) {
1017
1053
  process.env[`${prefix}ORGANIZATION`] = config.organization;
1018
1054
  }
@@ -1129,7 +1165,9 @@ var setConfigEnv = /* @__PURE__ */ __name((config) => {
1129
1165
  }
1130
1166
  process.env[`${prefix}CONFIG`] = JSON.stringify(config);
1131
1167
  for (const key of Object.keys(config.extensions ?? {})) {
1132
- config.extensions[key] && Object.keys(config.extensions[key]) && setExtensionEnv(key, config.extensions[key]);
1168
+ if (config.extensions[key] && Object.keys(config.extensions[key])) {
1169
+ setExtensionEnv(key, config.extensions[key]);
1170
+ }
1133
1171
  }
1134
1172
  }, "setConfigEnv");
1135
1173
  var setThemeColorConfigEnv = /* @__PURE__ */ __name((prefix, config) => {
@@ -1380,7 +1418,7 @@ var addPackageDependencies = /* @__PURE__ */ __name(async (workspaceRoot, projec
1380
1418
  const projectGraph = (0, import_project_graph.readCachedProjectGraph)();
1381
1419
  const projectDependencies = (0, import_buildable_libs_utils.calculateProjectBuildableDependencies)(void 0, projectGraph, workspaceRoot, projectName, process.env.NX_TASK_TARGET_TARGET || "build", process.env.NX_TASK_TARGET_CONFIGURATION || "production", true);
1382
1420
  const localPackages = [];
1383
- for (const project of projectDependencies.dependencies.filter((dep) => dep.node.type === "lib" && dep.node.data.root !== projectRoot && dep.node.data.root !== workspaceRoot)) {
1421
+ for (const project of projectDependencies.dependencies.filter((dep) => dep.node.type === "lib" && dep.node.data?.root !== projectRoot && dep.node.data?.root !== workspaceRoot)) {
1384
1422
  const projectNode = project.node;
1385
1423
  if (projectNode.data.root) {
1386
1424
  const projectPackageJsonPath = joinPaths(workspaceRoot, projectNode.data.root, "package.json");
package/bin/unbuild.js CHANGED
@@ -10,6 +10,26 @@ var STORM_DEFAULT_DOCS = "https://docs.stormsoftware.com";
10
10
  var STORM_DEFAULT_HOMEPAGE = "https://stormsoftware.com";
11
11
  var STORM_DEFAULT_LICENSING = "https://license.stormsoftware.com";
12
12
  var STORM_DEFAULT_LICENSE = "Apache-2.0";
13
+ var STORM_DEFAULT_RELEASE_BANNER = "https://public.storm-cdn.com/logo-banner.png";
14
+ var STORM_DEFAULT_RELEASE_FOOTER = `
15
+ Storm Software is an open source software development organization and creator
16
+ of Cyclone UI, Storm Stack and Acidic.
17
+
18
+ Our mission is to make software development more accessible. Our ideal future is
19
+ one where anyone can create software without years of prior development
20
+ experience serving as a barrier to entry. We hope to achieve this via LLMs,
21
+ Generative AI, and intuitive, high-level data modeling/programming languages.
22
+
23
+ Join us on [Discord](https://discord.gg/MQ6YVzakM5) to chat with the team,
24
+ receive release notifications, ask questions, and get involved.
25
+
26
+ If this sounds interesting, and you would like to help us in creating the next
27
+ generation of development tools, please reach out on our [website](https://stormsoftware.com/contact) or join our
28
+ [Slack](https://join.slack.com/t/storm-software/shared_invite/zt-2gsmk04hs-i6yhK_r6urq0dkZYAwq2pA) channel!
29
+
30
+ ![Storm Software](https://public.storm-cdn.com/icon-fill.png){ width="200" style="display: block; margin: 0 auto" }
31
+ ![Visit us at stormsoftware.com](https://public.storm-cdn.com/visit-us-text.svg){ height="90" style="display: block; margin: 0 auto" }
32
+ `;
13
33
 
14
34
  // ../config/src/schema.ts
15
35
  var DarkColorSchema = z.string().trim().toLowerCase().regex(/^#([0-9a-f]{3}){1,2}$/i).length(7).default("#1d1e22").describe("The dark background color of the workspace");
@@ -99,6 +119,11 @@ var WorkspaceBotConfigSchema = z.object({
99
119
  name: z.string().trim().default("stormie-bot").describe("The workspace bot user's name (this is the bot that will be used to perform various tasks)"),
100
120
  email: z.string().trim().email().default("bot@stormsoftware.com").describe("The email of the workspace bot")
101
121
  }).describe("The workspace's bot user's config used to automated various operations tasks");
122
+ var WorkspaceReleaseConfigSchema = z.object({
123
+ banner: z.string().trim().default(STORM_DEFAULT_RELEASE_BANNER).describe("A URL to a banner image used to display the workspace's release"),
124
+ header: z.string().trim().optional().describe("A header message appended to the start of the workspace's release notes"),
125
+ footer: z.string().trim().default(STORM_DEFAULT_RELEASE_FOOTER).describe("A footer message appended to the end of the workspace's release notes")
126
+ }).describe("The workspace's release config used during the release process");
102
127
  var WorkspaceDirectoryConfigSchema = z.object({
103
128
  cache: z.string().trim().optional().describe("The directory used to store the environment's cached file data"),
104
129
  data: z.string().trim().optional().describe("The directory used to store the environment's data files"),
@@ -122,6 +147,7 @@ var StormConfigSchema = z.object({
122
147
  preid: z.string().optional().describe("A tag specifying the version pre-release identifier"),
123
148
  owner: z.string().trim().default("@storm-software/admin").describe("The owner of the package"),
124
149
  bot: WorkspaceBotConfigSchema,
150
+ release: WorkspaceReleaseConfigSchema,
125
151
  mode: z.enum([
126
152
  "development",
127
153
  "staging",
@@ -828,6 +854,11 @@ var getConfigEnv = /* @__PURE__ */ __name(() => {
828
854
  name: process.env[`${prefix}BOT_NAME`] || void 0,
829
855
  email: process.env[`${prefix}BOT_EMAIL`] || void 0
830
856
  },
857
+ release: {
858
+ banner: process.env[`${prefix}RELEASE_BANNER`] || void 0,
859
+ header: process.env[`${prefix}RELEASE_HEADER`] || void 0,
860
+ footer: process.env[`${prefix}RELEASE_FOOTER`] || void 0
861
+ },
831
862
  organization: process.env[`${prefix}ORGANIZATION`] || void 0,
832
863
  packageManager: process.env[`${prefix}PACKAGE_MANAGER`] || void 0,
833
864
  license: process.env[`${prefix}LICENSE`] || void 0,
@@ -992,6 +1023,11 @@ var setConfigEnv = /* @__PURE__ */ __name((config) => {
992
1023
  process.env[`${prefix}BOT_NAME`] = config.bot.name;
993
1024
  process.env[`${prefix}BOT_EMAIL`] = config.bot.email;
994
1025
  }
1026
+ if (config.release) {
1027
+ process.env[`${prefix}RELEASE_BANNER`] = config.release.banner;
1028
+ process.env[`${prefix}RELEASE_HEADER`] = config.release.header;
1029
+ process.env[`${prefix}RELEASE_FOOTER`] = config.release.footer;
1030
+ }
995
1031
  if (config.organization) {
996
1032
  process.env[`${prefix}ORGANIZATION`] = config.organization;
997
1033
  }
@@ -1108,7 +1144,9 @@ var setConfigEnv = /* @__PURE__ */ __name((config) => {
1108
1144
  }
1109
1145
  process.env[`${prefix}CONFIG`] = JSON.stringify(config);
1110
1146
  for (const key of Object.keys(config.extensions ?? {})) {
1111
- config.extensions[key] && Object.keys(config.extensions[key]) && setExtensionEnv(key, config.extensions[key]);
1147
+ if (config.extensions[key] && Object.keys(config.extensions[key])) {
1148
+ setExtensionEnv(key, config.extensions[key]);
1149
+ }
1112
1150
  }
1113
1151
  }, "setConfigEnv");
1114
1152
  var setThemeColorConfigEnv = /* @__PURE__ */ __name((prefix, config) => {
@@ -1359,7 +1397,7 @@ var addPackageDependencies = /* @__PURE__ */ __name(async (workspaceRoot, projec
1359
1397
  const projectGraph = readCachedProjectGraph();
1360
1398
  const projectDependencies = calculateProjectBuildableDependencies(void 0, projectGraph, workspaceRoot, projectName, process.env.NX_TASK_TARGET_TARGET || "build", process.env.NX_TASK_TARGET_CONFIGURATION || "production", true);
1361
1399
  const localPackages = [];
1362
- for (const project of projectDependencies.dependencies.filter((dep) => dep.node.type === "lib" && dep.node.data.root !== projectRoot && dep.node.data.root !== workspaceRoot)) {
1400
+ for (const project of projectDependencies.dependencies.filter((dep) => dep.node.type === "lib" && dep.node.data?.root !== projectRoot && dep.node.data?.root !== workspaceRoot)) {
1363
1401
  const projectNode = project.node;
1364
1402
  if (projectNode.data.root) {
1365
1403
  const projectPackageJsonPath = joinPaths(workspaceRoot, projectNode.data.root, "package.json");
package/dist/build.cjs CHANGED
@@ -5,13 +5,13 @@
5
5
 
6
6
 
7
7
 
8
- var _chunk2J4W3I3Fcjs = require('./chunk-2J4W3I3F.cjs');
8
+ var _chunkQGOT7WGScjs = require('./chunk-QGOT7WGS.cjs');
9
9
  require('./chunk-OD3ULBE3.cjs');
10
- require('./chunk-72UMCYVT.cjs');
11
- require('./chunk-XFGV6VMY.cjs');
12
- require('./chunk-QCZV56KW.cjs');
13
- require('./chunk-SZEXG5I5.cjs');
14
- require('./chunk-RGZ72JHN.cjs');
10
+ require('./chunk-KPTADQKR.cjs');
11
+ require('./chunk-JYA6JCRL.cjs');
12
+ require('./chunk-QVPMLUN5.cjs');
13
+ require('./chunk-4BHCESVF.cjs');
14
+ require('./chunk-LC3URRVG.cjs');
15
15
  require('./chunk-BGYQAVKQ.cjs');
16
16
 
17
17
 
@@ -20,4 +20,4 @@ require('./chunk-BGYQAVKQ.cjs');
20
20
 
21
21
 
22
22
 
23
- exports.build = _chunk2J4W3I3Fcjs.build; exports.cleanOutputPath = _chunk2J4W3I3Fcjs.cleanOutputPath; exports.copyBuildAssets = _chunk2J4W3I3Fcjs.copyBuildAssets; exports.executeUnbuild = _chunk2J4W3I3Fcjs.executeUnbuild; exports.generatePackageJson = _chunk2J4W3I3Fcjs.generatePackageJson; exports.resolveOptions = _chunk2J4W3I3Fcjs.resolveOptions;
23
+ exports.build = _chunkQGOT7WGScjs.build; exports.cleanOutputPath = _chunkQGOT7WGScjs.cleanOutputPath; exports.copyBuildAssets = _chunkQGOT7WGScjs.copyBuildAssets; exports.executeUnbuild = _chunkQGOT7WGScjs.executeUnbuild; exports.generatePackageJson = _chunkQGOT7WGScjs.generatePackageJson; exports.resolveOptions = _chunkQGOT7WGScjs.resolveOptions;
package/dist/build.js CHANGED
@@ -5,13 +5,13 @@ import {
5
5
  executeUnbuild,
6
6
  generatePackageJson,
7
7
  resolveOptions
8
- } from "./chunk-A6EYKSQX.js";
8
+ } from "./chunk-UL4V5CAD.js";
9
9
  import "./chunk-RBYYB7X2.js";
10
- import "./chunk-Y2RJXSMQ.js";
11
- import "./chunk-W5OXMTPE.js";
12
- import "./chunk-WCG32SVT.js";
13
- import "./chunk-UNH7U3EZ.js";
14
- import "./chunk-MCSJC6ZH.js";
10
+ import "./chunk-DE7LC4AM.js";
11
+ import "./chunk-FAMMFENI.js";
12
+ import "./chunk-7CXLOA6P.js";
13
+ import "./chunk-JMK7ICRX.js";
14
+ import "./chunk-EUO7BJ7F.js";
15
15
  import "./chunk-3GQAWCBQ.js";
16
16
  export {
17
17
  build,
@@ -1,6 +1,6 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } }
2
2
 
3
- var _chunkRGZ72JHNcjs = require('./chunk-RGZ72JHN.cjs');
3
+ var _chunkLC3URRVGcjs = require('./chunk-LC3URRVG.cjs');
4
4
 
5
5
 
6
6
  var _chunkBGYQAVKQcjs = require('./chunk-BGYQAVKQ.cjs');
@@ -32,7 +32,7 @@ async function createTsCompilerOptions(config, tsConfigPath, projectRoot, depend
32
32
  declaration: true,
33
33
  paths: _buildablelibsutils.computeCompilerOptionsPaths.call(void 0, tsConfig, _nullishCoalesce(dependencies, () => ( [])))
34
34
  };
35
- _chunkRGZ72JHNcjs.writeTrace.call(void 0, compilerOptions, config);
35
+ _chunkLC3URRVGcjs.writeTrace.call(void 0, compilerOptions, config);
36
36
  return compilerOptions;
37
37
  }
38
38
  _chunkBGYQAVKQcjs.__name.call(void 0, createTsCompilerOptions, "createTsCompilerOptions");
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  writeError
3
- } from "./chunk-MCSJC6ZH.js";
3
+ } from "./chunk-EUO7BJ7F.js";
4
4
  import {
5
5
  __name
6
6
  } from "./chunk-3GQAWCBQ.js";
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  getStopwatch,
3
3
  writeDebug
4
- } from "./chunk-MCSJC6ZH.js";
4
+ } from "./chunk-EUO7BJ7F.js";
5
5
  import {
6
6
  __name
7
7
  } from "./chunk-3GQAWCBQ.js";
@@ -213,6 +213,26 @@ var STORM_DEFAULT_DOCS = "https://docs.stormsoftware.com";
213
213
  var STORM_DEFAULT_HOMEPAGE = "https://stormsoftware.com";
214
214
  var STORM_DEFAULT_LICENSING = "https://license.stormsoftware.com";
215
215
  var STORM_DEFAULT_LICENSE = "Apache-2.0";
216
+ var STORM_DEFAULT_RELEASE_BANNER = "https://public.storm-cdn.com/logo-banner.png";
217
+ var STORM_DEFAULT_RELEASE_FOOTER = `
218
+ Storm Software is an open source software development organization and creator
219
+ of Cyclone UI, Storm Stack and Acidic.
220
+
221
+ Our mission is to make software development more accessible. Our ideal future is
222
+ one where anyone can create software without years of prior development
223
+ experience serving as a barrier to entry. We hope to achieve this via LLMs,
224
+ Generative AI, and intuitive, high-level data modeling/programming languages.
225
+
226
+ Join us on [Discord](https://discord.gg/MQ6YVzakM5) to chat with the team,
227
+ receive release notifications, ask questions, and get involved.
228
+
229
+ If this sounds interesting, and you would like to help us in creating the next
230
+ generation of development tools, please reach out on our [website](https://stormsoftware.com/contact) or join our
231
+ [Slack](https://join.slack.com/t/storm-software/shared_invite/zt-2gsmk04hs-i6yhK_r6urq0dkZYAwq2pA) channel!
232
+
233
+ ![Storm Software](https://public.storm-cdn.com/icon-fill.png){ width="200" style="display: block; margin: 0 auto" }
234
+ ![Visit us at stormsoftware.com](https://public.storm-cdn.com/visit-us-text.svg){ height="90" style="display: block; margin: 0 auto" }
235
+ `;
216
236
 
217
237
  // ../config/src/schema.ts
218
238
  import z from "zod";
@@ -303,6 +323,11 @@ var WorkspaceBotConfigSchema = z.object({
303
323
  name: z.string().trim().default("stormie-bot").describe("The workspace bot user's name (this is the bot that will be used to perform various tasks)"),
304
324
  email: z.string().trim().email().default("bot@stormsoftware.com").describe("The email of the workspace bot")
305
325
  }).describe("The workspace's bot user's config used to automated various operations tasks");
326
+ var WorkspaceReleaseConfigSchema = z.object({
327
+ banner: z.string().trim().default(STORM_DEFAULT_RELEASE_BANNER).describe("A URL to a banner image used to display the workspace's release"),
328
+ header: z.string().trim().optional().describe("A header message appended to the start of the workspace's release notes"),
329
+ footer: z.string().trim().default(STORM_DEFAULT_RELEASE_FOOTER).describe("A footer message appended to the end of the workspace's release notes")
330
+ }).describe("The workspace's release config used during the release process");
306
331
  var WorkspaceDirectoryConfigSchema = z.object({
307
332
  cache: z.string().trim().optional().describe("The directory used to store the environment's cached file data"),
308
333
  data: z.string().trim().optional().describe("The directory used to store the environment's data files"),
@@ -326,6 +351,7 @@ var StormConfigSchema = z.object({
326
351
  preid: z.string().optional().describe("A tag specifying the version pre-release identifier"),
327
352
  owner: z.string().trim().default("@storm-software/admin").describe("The owner of the package"),
328
353
  bot: WorkspaceBotConfigSchema,
354
+ release: WorkspaceReleaseConfigSchema,
329
355
  mode: z.enum([
330
356
  "development",
331
357
  "staging",
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  writeInfo
3
- } from "./chunk-MCSJC6ZH.js";
3
+ } from "./chunk-EUO7BJ7F.js";
4
4
  import {
5
5
  __name
6
6
  } from "./chunk-3GQAWCBQ.js";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  writeTrace
3
- } from "./chunk-MCSJC6ZH.js";
3
+ } from "./chunk-EUO7BJ7F.js";
4
4
  import {
5
5
  __name
6
6
  } from "./chunk-3GQAWCBQ.js";
@@ -1,6 +1,6 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
2
 
3
- var _chunkRGZ72JHNcjs = require('./chunk-RGZ72JHN.cjs');
3
+ var _chunkLC3URRVGcjs = require('./chunk-LC3URRVG.cjs');
4
4
 
5
5
 
6
6
  var _chunkBGYQAVKQcjs = require('./chunk-BGYQAVKQ.cjs');
@@ -25,7 +25,7 @@ var analyzePlugin = /* @__PURE__ */ _chunkBGYQAVKQcjs.__name.call(void 0, (optio
25
25
  renderChunk(source, chunk) {
26
26
  const sourceBytes = formatBytes(source.length);
27
27
  const fileName = chunk.fileName;
28
- _chunkRGZ72JHNcjs.writeInfo.call(void 0, ` - ${fileName} ${sourceBytes}`, options.config);
28
+ _chunkLC3URRVGcjs.writeInfo.call(void 0, ` - ${fileName} ${sourceBytes}`, options.config);
29
29
  }
30
30
  };
31
31
  }, "analyzePlugin");
@@ -1,7 +1,7 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
2
 
3
3
 
4
- var _chunkRGZ72JHNcjs = require('./chunk-RGZ72JHN.cjs');
4
+ var _chunkLC3URRVGcjs = require('./chunk-LC3URRVG.cjs');
5
5
 
6
6
 
7
7
  var _chunkBGYQAVKQcjs = require('./chunk-BGYQAVKQ.cjs');
@@ -9,8 +9,8 @@ var _chunkBGYQAVKQcjs = require('./chunk-BGYQAVKQ.cjs');
9
9
  // src/clean.ts
10
10
  var _promises = require('fs/promises');
11
11
  async function clean(name = "Unbuild", directory, config) {
12
- _chunkRGZ72JHNcjs.writeDebug.call(void 0, ` \u{1F9F9} Cleaning ${name} output path: ${directory}`, config);
13
- const stopwatch = _chunkRGZ72JHNcjs.getStopwatch.call(void 0, `${name} output clean`);
12
+ _chunkLC3URRVGcjs.writeDebug.call(void 0, ` \u{1F9F9} Cleaning ${name} output path: ${directory}`, config);
13
+ const stopwatch = _chunkLC3URRVGcjs.getStopwatch.call(void 0, `${name} output clean`);
14
14
  await cleanDirectories(name, directory, config);
15
15
  stopwatch();
16
16
  }
@@ -213,6 +213,26 @@ var STORM_DEFAULT_DOCS = "https://docs.stormsoftware.com";
213
213
  var STORM_DEFAULT_HOMEPAGE = "https://stormsoftware.com";
214
214
  var STORM_DEFAULT_LICENSING = "https://license.stormsoftware.com";
215
215
  var STORM_DEFAULT_LICENSE = "Apache-2.0";
216
+ var STORM_DEFAULT_RELEASE_BANNER = "https://public.storm-cdn.com/logo-banner.png";
217
+ var STORM_DEFAULT_RELEASE_FOOTER = `
218
+ Storm Software is an open source software development organization and creator
219
+ of Cyclone UI, Storm Stack and Acidic.
220
+
221
+ Our mission is to make software development more accessible. Our ideal future is
222
+ one where anyone can create software without years of prior development
223
+ experience serving as a barrier to entry. We hope to achieve this via LLMs,
224
+ Generative AI, and intuitive, high-level data modeling/programming languages.
225
+
226
+ Join us on [Discord](https://discord.gg/MQ6YVzakM5) to chat with the team,
227
+ receive release notifications, ask questions, and get involved.
228
+
229
+ If this sounds interesting, and you would like to help us in creating the next
230
+ generation of development tools, please reach out on our [website](https://stormsoftware.com/contact) or join our
231
+ [Slack](https://join.slack.com/t/storm-software/shared_invite/zt-2gsmk04hs-i6yhK_r6urq0dkZYAwq2pA) channel!
232
+
233
+ ![Storm Software](https://public.storm-cdn.com/icon-fill.png){ width="200" style="display: block; margin: 0 auto" }
234
+ ![Visit us at stormsoftware.com](https://public.storm-cdn.com/visit-us-text.svg){ height="90" style="display: block; margin: 0 auto" }
235
+ `;
216
236
 
217
237
  // ../config/src/schema.ts
218
238
  var _zod = require('zod'); var _zod2 = _interopRequireDefault(_zod);
@@ -303,6 +323,11 @@ var WorkspaceBotConfigSchema = _zod2.default.object({
303
323
  name: _zod2.default.string().trim().default("stormie-bot").describe("The workspace bot user's name (this is the bot that will be used to perform various tasks)"),
304
324
  email: _zod2.default.string().trim().email().default("bot@stormsoftware.com").describe("The email of the workspace bot")
305
325
  }).describe("The workspace's bot user's config used to automated various operations tasks");
326
+ var WorkspaceReleaseConfigSchema = _zod2.default.object({
327
+ banner: _zod2.default.string().trim().default(STORM_DEFAULT_RELEASE_BANNER).describe("A URL to a banner image used to display the workspace's release"),
328
+ header: _zod2.default.string().trim().optional().describe("A header message appended to the start of the workspace's release notes"),
329
+ footer: _zod2.default.string().trim().default(STORM_DEFAULT_RELEASE_FOOTER).describe("A footer message appended to the end of the workspace's release notes")
330
+ }).describe("The workspace's release config used during the release process");
306
331
  var WorkspaceDirectoryConfigSchema = _zod2.default.object({
307
332
  cache: _zod2.default.string().trim().optional().describe("The directory used to store the environment's cached file data"),
308
333
  data: _zod2.default.string().trim().optional().describe("The directory used to store the environment's data files"),
@@ -326,6 +351,7 @@ var StormConfigSchema = _zod2.default.object({
326
351
  preid: _zod2.default.string().optional().describe("A tag specifying the version pre-release identifier"),
327
352
  owner: _zod2.default.string().trim().default("@storm-software/admin").describe("The owner of the package"),
328
353
  bot: WorkspaceBotConfigSchema,
354
+ release: WorkspaceReleaseConfigSchema,
329
355
  mode: _zod2.default.enum([
330
356
  "development",
331
357
  "staging",