UNPKG

@itrocks/framework

Version:

RAD framework for intuitive web application development, blending data and domain-driven design with modular architecture

31 lines 1.56 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.ReflectProperty = void 0; const core_transformers_1 = require("@itrocks/core-transformers"); const reflect_1 = require("@itrocks/reflect"); const transformer_1 = require("@itrocks/transformer"); const transformer_2 = require("@itrocks/transformer"); const reflect_class_1 = require("./reflect-class"); class ReflectProperty extends reflect_1.ReflectProperty { get class() { return Object.setPrototypeOf(super.class, reflect_class_1.ReflectClass.prototype); } async edit(format = transformer_2.HTML) { const object = this.object ?? this.class.type; const value = this.object ? this.object[this.name] : undefined; return (0, transformer_1.applyTransformer)(await value, object, this.name, format, transformer_2.EDIT); } async output(format = transformer_2.HTML, askFor) { const object = this.object ?? this.class.type; const value = this.object ? await this.object[this.name] : undefined; return (0, transformer_1.applyTransformer)(value, object, this.name, format, transformer_2.OUTPUT, askFor); } async outputMandatoryContainer(format = transformer_2.HTML) { return this.output(format, new core_transformers_1.HtmlContainer(true)); } async outputOptionalContainer(format = transformer_2.HTML) { return this.output(format, new core_transformers_1.HtmlContainer(false)); } } exports.ReflectProperty = ReflectProperty; //# sourceMappingURL=reflect-property.js.map