@storm-software/workspace-tools
Version:
Tools for managing a Storm workspace, including various Nx generators and executors for common development tasks.
51 lines (40 loc) • 1.7 kB
JavaScript
;Object.defineProperty(exports, "__esModule", {value: true});
var _chunkP6PFHXHQjs = require('./chunk-P6PFHXHQ.js');
var _chunkSKMT7WD5js = require('./chunk-SKMT7WD5.js');
var _chunk3GQAWCBQjs = require('./chunk-3GQAWCBQ.js');
// src/executors/typia/executor.ts
var _fsextra = require('fs-extra');
var _TypiaProgrammerjs = require('typia/lib/programmers/TypiaProgrammer.js');
async function typiaExecutorFn(options, _, config) {
if (options.clean !== false) {
_chunkSKMT7WD5js.writeInfo.call(void 0, `\u{1F9F9} Cleaning output path: ${options.outputPath}`, config);
_fsextra.removeSync.call(void 0, options.outputPath);
}
await Promise.all(options.entry.map((entry) => {
_chunkSKMT7WD5js.writeInfo.call(void 0, `\u{1F680} Running Typia on entry: ${entry}`, config);
return _TypiaProgrammerjs.TypiaProgrammer.build({
input: entry,
output: options.outputPath,
project: options.tsconfig
});
}));
return {
success: true
};
}
_chunk3GQAWCBQjs.__name.call(void 0, typiaExecutorFn, "typiaExecutorFn");
var executor_default = _chunkP6PFHXHQjs.withRunExecutor.call(void 0, "Typia runtime validation generator", typiaExecutorFn, {
skipReadingConfig: false,
hooks: {
applyDefaultOptions: /* @__PURE__ */ _chunk3GQAWCBQjs.__name.call(void 0, (options) => {
options.entry ??= [
"{sourceRoot}/index.ts"
];
options.outputPath ??= "{sourceRoot}/__generated__/typia";
options.tsconfig ??= "{projectRoot}/tsconfig.json";
options.clean ??= true;
return options;
}, "applyDefaultOptions")
}
});
exports.typiaExecutorFn = typiaExecutorFn; exports.executor_default = executor_default;