@storm-software/workspace-tools
Version:
Tools for managing a Storm workspace, including various Nx generators and executors for common development tasks.
52 lines (36 loc) • 2.95 kB
JavaScript
;Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
var _chunkNQ4W3N7Ojs = require('./chunk-NQ4W3N7O.js');
var _chunkSKMT7WD5js = require('./chunk-SKMT7WD5.js');
var _chunk4JOIS7WWjs = require('./chunk-4JOIS7WW.js');
var _chunk3GQAWCBQjs = require('./chunk-3GQAWCBQ.js');
// src/generators/config-schema/generator.ts
var _devkit = require('@nx/devkit');
var _zodtojsonschema = require('zod-to-json-schema');
async function configSchemaGeneratorFn(tree, options, config) {
_chunkSKMT7WD5js.writeInfo.call(void 0, "\u{1F4E6} Running Storm Workspace Configuration JSON Schema generator", config);
_chunkSKMT7WD5js.writeTrace.call(void 0, `Determining the Storm Workspace Configuration JSON Schema...`, config);
const jsonSchema = _zodtojsonschema.zodToJsonSchema.call(void 0, _chunkSKMT7WD5js.stormWorkspaceConfigSchema, {
name: "StormWorkspaceConfiguration"
});
_chunkSKMT7WD5js.writeTrace.call(void 0, jsonSchema, config);
const outputPath = options.outputFile.replaceAll("{workspaceRoot}", "").replaceAll(_nullishCoalesce(_optionalChain([config, 'optionalAccess', _ => _.workspaceRoot]), () => ( _chunk4JOIS7WWjs.findWorkspaceRoot.call(void 0, ))), _optionalChain([options, 'access', _2 => _2.outputFile, 'optionalAccess', _3 => _3.startsWith, 'call', _4 => _4("./")]) ? "" : "./");
_chunkSKMT7WD5js.writeTrace.call(void 0, `\u{1F4DD} Writing Storm Configuration JSON Schema to "${outputPath}"`, config);
_devkit.writeJson.call(void 0, tree, outputPath, jsonSchema, {
spaces: 2
});
await _devkit.formatFiles.call(void 0, tree);
_chunkSKMT7WD5js.writeSuccess.call(void 0, "\u{1F680} Storm Configuration JSON Schema creation has completed successfully!", config);
return {
success: true
};
}
_chunk3GQAWCBQjs.__name.call(void 0, configSchemaGeneratorFn, "configSchemaGeneratorFn");
var generator_default = _chunkNQ4W3N7Ojs.withRunGenerator.call(void 0, "Configuration Schema Creator", configSchemaGeneratorFn, {
hooks: {
applyDefaultOptions: /* @__PURE__ */ _chunk3GQAWCBQjs.__name.call(void 0, (options) => {
options.outputFile ??= "{workspaceRoot}/storm-workspace.schema.json";
return options;
}, "applyDefaultOptions")
}
});
exports.configSchemaGeneratorFn = configSchemaGeneratorFn; exports.generator_default = generator_default;