@sprucelabs/spruce-cli
Version:
Command line interface for building Spruce skills.
37 lines • 1.61 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const spruce_skill_utils_1 = require("@sprucelabs/spruce-skill-utils");
class FieldTemplateItemBuilder {
generateTemplateItems(fields) {
const templateItems = [];
let generatedImportAsCount = 0;
for (let field of fields) {
const { registration } = field;
const name = registration.className;
let pkg = registration.package;
let importAs = registration.importAs;
if (field.isLocal) {
pkg = `#spruce/../fields/${registration.className}`;
importAs = `generated_import_${generatedImportAsCount++}`;
}
const item = {
namePascal: spruce_skill_utils_1.namesUtil.toPascal(name),
nameCamel: spruce_skill_utils_1.namesUtil.toCamel(name),
package: pkg,
className: registration.className,
importAs,
nameReadable: registration.className,
pascalType: spruce_skill_utils_1.namesUtil.toPascal(registration.type),
camelType: spruce_skill_utils_1.namesUtil.toCamel(registration.type),
isLocal: field.isLocal,
description: registration.description,
valueTypeMapper: registration.valueTypeMapper,
};
generatedImportAsCount++;
templateItems.push(item);
}
return templateItems;
}
}
exports.default = FieldTemplateItemBuilder;
//# sourceMappingURL=FieldTemplateItemBuilder.js.map