UNPKG

@itrocks/framework

Version:

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

35 lines 1.59 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.parseDecorator = parseDecorator; const class_type_1 = require("@itrocks/class-type"); const class_view_1 = require("@itrocks/class-view"); const class_view_2 = require("@itrocks/class-view"); const property_view_1 = require("@itrocks/property-view"); const reflect_1 = require("@itrocks/reflect"); const reflect_2 = require("@itrocks/reflect"); const rename_1 = require("@itrocks/rename"); const route_1 = require("@itrocks/route"); const translate_1 = require("@itrocks/translate"); function parseDecorator(variable, data) { if ((typeof data !== 'function') && (typeof data !== 'object')) { console.error('Bad data for variable', variable, 'data', data); } switch (variable) { case '@display': if (data instanceof reflect_2.ReflectProperty) return (0, translate_1.tr)((0, property_view_1.displayOf)(data.class.object ?? data.class.type, data.name)); if (data instanceof reflect_1.ReflectClass) return (0, translate_1.tr)((0, class_view_1.displayOf)(data.type)); if (typeof data === 'object') return (0, class_view_1.displayOf)(data); return data; case '@output': return new rename_1.Str((0, class_view_2.trOutputOf)(data)); case '@route': return (0, route_1.routeOf)(data); case '@typeRoute': return (0, route_1.routeOf)((0, class_type_1.typeOf)(data)); } return '?'; } //# sourceMappingURL=parseDecorator.js.map