UNPKG

@storm-software/workspace-tools

Version:

Tools for managing a Storm workspace, including various Nx generators and executors for common development tasks.

51 lines (42 loc) 1.52 kB
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); var _chunkWCTC7R27js = require('./chunk-WCTC7R27.js'); var _chunkIHMF6RANjs = require('./chunk-IHMF6RAN.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) { _chunkIHMF6RANjs.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) => { _chunkIHMF6RANjs.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 }; } var executor_default = _chunkWCTC7R27js.withRunExecutor.call(void 0, "Typia runtime validation generator", typiaExecutorFn, { skipReadingConfig: false, hooks: { applyDefaultOptions: (options) => { options.entry ??= ["{sourceRoot}/index.ts"]; options.outputPath ??= "{sourceRoot}/__generated__/typia"; options.tsconfig ??= "{projectRoot}/tsconfig.json"; options.clean ??= true; return options; } } } ); exports.typiaExecutorFn = typiaExecutorFn; exports.executor_default = executor_default;