UNPKG

@storm-software/workspace-tools

Version:

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

78 lines (75 loc) 1.97 kB
import { normalizeOptions, typeScriptLibraryGeneratorFn } from "./chunk-M3YWCYUX.mjs"; import { withRunGenerator } from "./chunk-C76K2E2A.mjs"; import { joinPaths } from "./chunk-TBW5MCN6.mjs"; import { __dirname } from "./chunk-3YDFOWNH.mjs"; // src/generators/neutral-library/generator.ts import { formatFiles, generateFiles, names, offsetFromRoot } from "@nx/devkit"; async function neutralLibraryGeneratorFn(tree, schema, config) { const filesDir = joinPaths( __dirname, "src", "generators", "neutral-library", "files" ); const tsLibraryGeneratorOptions = { ...schema, platform: "neutral", devDependencies: {}, buildExecutor: "@storm-software/workspace-tools:unbuild" }; const options = await normalizeOptions(tree, tsLibraryGeneratorOptions); const { className, name, propertyName } = names( options.projectNames.projectFileName ); generateFiles(tree, filesDir, options.projectRoot, { ...schema, dot: ".", className, name, namespace: process.env.STORM_NAMESPACE ?? "storm-software", description: schema.description ?? "", propertyName, js: !!options.js, cliCommand: "nx", strict: void 0, tmpl: "", offsetFromRoot: offsetFromRoot(options.projectRoot), buildable: options.bundler && options.bundler !== "none", hasUnitTestRunner: options.unitTestRunner !== "none" }); await typeScriptLibraryGeneratorFn(tree, tsLibraryGeneratorOptions, config); await formatFiles(tree); return null; } var generator_default = withRunGenerator( "TypeScript Library Creator (Neutral Platform)", neutralLibraryGeneratorFn, { hooks: { applyDefaultOptions: (options) => { options.description ??= "A library used by Storm Software to support either browser or NodeJs applications"; options.platform = "neutral"; return options; } } } ); export { neutralLibraryGeneratorFn, generator_default };