@rxap/schematics-ts-morph
Version:
This package provides utilities for manipulating TypeScript code using ts-morph, particularly for Angular and NestJS projects. It offers functions to add, coerce, and modify code elements like classes, methods, decorators, and imports. The package also in
32 lines • 1.58 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.GetFormDefinitionClassName = GetFormDefinitionClassName;
exports.GetFormDefinitionInterfaceName = GetFormDefinitionInterfaceName;
exports.CoerceFormDefinitionClass = CoerceFormDefinitionClass;
exports.GetFormDefinitionFileName = GetFormDefinitionFileName;
exports.GetFormDefinitionFileImportPath = GetFormDefinitionFileImportPath;
exports.GetFormDefinitionFilePath = GetFormDefinitionFilePath;
const schematics_utilities_1 = require("@rxap/schematics-utilities");
const ts_morph_1 = require("@rxap/ts-morph");
const utilities_1 = require("@rxap/utilities");
function GetFormDefinitionClassName({ name }) {
return (0, schematics_utilities_1.CoerceSuffix)((0, schematics_utilities_1.classify)(name), 'Form');
}
function GetFormDefinitionInterfaceName(options) {
const className = GetFormDefinitionClassName(options);
return `I${className}`;
}
function CoerceFormDefinitionClass(sourceFile, options) {
const className = GetFormDefinitionClassName(options);
return (0, ts_morph_1.CoerceClass)(sourceFile, className, { isExported: true });
}
function GetFormDefinitionFileName({ name }) {
return (0, schematics_utilities_1.CoerceSuffix)((0, utilities_1.dasherize)(name), '.form.ts');
}
function GetFormDefinitionFileImportPath(options) {
return './' + GetFormDefinitionFileName(options).replace(/\.ts$/, '');
}
function GetFormDefinitionFilePath(options) {
return '/' + GetFormDefinitionFileName(options) + '?';
}
//# sourceMappingURL=form-definition-utilities.js.map