UNPKG

ngx-schema-forms

Version:

New features: - Ajv schema validator. - Angular forms compatible: Property tree is created using FormGroup, FormArray and FormControl classes. - Array now properly loads initial data from model. - WidgetTyep: WidgetRegistry now supports WidgetType, now wo

86 lines (85 loc) 4.99 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,uselessCode} checked by tsc */ /** @enum {string} */ var TemplateElementType = { Field: 'field', Button: 'button', }; export { TemplateElementType }; var TemplateSchemaElementRegistry = /** @class */ (function () { function TemplateSchemaElementRegistry() { this.elements = {}; } /** * @param {?} id * @param {?=} type * @return {?} */ TemplateSchemaElementRegistry.prototype.hasElement = /** * @param {?} id * @param {?=} type * @return {?} */ function (id, type) { if (type === void 0) { type = TemplateElementType.Field; } if (!this.elements.hasOwnProperty(type)) { return false; } return this.elements[type].hasOwnProperty(id); }; /** * @param {?} id * @param {?} element * @param {?=} type * @return {?} */ TemplateSchemaElementRegistry.prototype.register = /** * @param {?} id * @param {?} element * @param {?=} type * @return {?} */ function (id, element, type) { if (type === void 0) { type = TemplateElementType.Field; } if (!this.elements.hasOwnProperty(type)) { this.elements[type] = {}; } this.elements[type][id] = element; }; /** * @template T * @param {?} id * @param {?=} type * @return {?} */ TemplateSchemaElementRegistry.prototype.getElement = /** * @template T * @param {?} id * @param {?=} type * @return {?} */ function (id, type) { if (type === void 0) { type = TemplateElementType.Field; } if (this.hasElement(id, type)) { return this.elements[type][id]; } }; /** * @return {?} */ TemplateSchemaElementRegistry.prototype.clear = /** * @return {?} */ function () { this.elements = {}; }; return TemplateSchemaElementRegistry; }()); export { TemplateSchemaElementRegistry }; if (false) { /** @type {?} */ TemplateSchemaElementRegistry.prototype.elements; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVtcGxhdGUtc2NoZW1hLWVsZW1lbnQtcmVnaXN0cnkuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9uZ3gtc2NoZW1hLWZvcm1zLyIsInNvdXJjZXMiOlsibGliL3RlbXBsYXRlLXNjaGVtYS90ZW1wbGF0ZS1zY2hlbWEtZWxlbWVudC1yZWdpc3RyeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7SUFHRSxPQUFRLE9BQU87SUFDZixRQUFTLFFBQVE7OztBQUduQixJQUFBOzt3QkFFZ0UsRUFBRTs7Ozs7OztJQUVoRSxrREFBVTs7Ozs7SUFBVixVQUFXLEVBQVUsRUFBRSxJQUFnQztRQUFoQyxxQkFBQSxFQUFBLE9BQU8sbUJBQW1CLENBQUMsS0FBSztRQUNyRCxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUN4QyxNQUFNLENBQUMsS0FBSyxDQUFDO1NBQ2Q7UUFDRCxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxjQUFjLENBQUMsRUFBRSxDQUFDLENBQUM7S0FDL0M7Ozs7Ozs7SUFFRCxnREFBUTs7Ozs7O0lBQVIsVUFBUyxFQUFVLEVBQUUsT0FBWSxFQUFFLElBQWdDO1FBQWhDLHFCQUFBLEVBQUEsT0FBTyxtQkFBbUIsQ0FBQyxLQUFLO1FBQ2pFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3hDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDO1NBQzFCO1FBQ0QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFLENBQUMsR0FBRyxPQUFPLENBQUM7S0FDbkM7Ozs7Ozs7SUFFRCxrREFBVTs7Ozs7O0lBQVYsVUFBK0IsRUFBVSxFQUFFLElBQWdDO1FBQWhDLHFCQUFBLEVBQUEsT0FBTyxtQkFBbUIsQ0FBQyxLQUFLO1FBQ3pFLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUM5QixNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztTQUNoQztLQUNGOzs7O0lBRUQsNkNBQUs7OztJQUFMO1FBQ0UsSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUM7S0FDcEI7d0NBakNIO0lBa0NDLENBQUE7QUEzQkQseUNBMkJDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRmllbGRDb21wb25lbnQgfSBmcm9tICcuL2ZpZWxkL2ZpZWxkLmNvbXBvbmVudCc7XG5cbmV4cG9ydCBlbnVtIFRlbXBsYXRlRWxlbWVudFR5cGUge1xuICBGaWVsZCA9ICdmaWVsZCcsXG4gIEJ1dHRvbiA9ICdidXR0b24nXG59XG5cbmV4cG9ydCBjbGFzcyBUZW1wbGF0ZVNjaGVtYUVsZW1lbnRSZWdpc3RyeSB7XG5cbiAgcHJpdmF0ZSBlbGVtZW50czogeyBbdHlwZTogc3RyaW5nXTogeyBbaWQ6IHN0cmluZ106IGFueSB9IH0gPSB7fTtcblxuICBoYXNFbGVtZW50KGlkOiBzdHJpbmcsIHR5cGUgPSBUZW1wbGF0ZUVsZW1lbnRUeXBlLkZpZWxkKSB7XG4gICAgaWYgKCF0aGlzLmVsZW1lbnRzLmhhc093blByb3BlcnR5KHR5cGUpKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLmVsZW1lbnRzW3R5cGVdLmhhc093blByb3BlcnR5KGlkKTtcbiAgfVxuXG4gIHJlZ2lzdGVyKGlkOiBzdHJpbmcsIGVsZW1lbnQ6IGFueSwgdHlwZSA9IFRlbXBsYXRlRWxlbWVudFR5cGUuRmllbGQpIHtcbiAgICBpZiAoIXRoaXMuZWxlbWVudHMuaGFzT3duUHJvcGVydHkodHlwZSkpIHtcbiAgICAgIHRoaXMuZWxlbWVudHNbdHlwZV0gPSB7fTtcbiAgICB9XG4gICAgdGhpcy5lbGVtZW50c1t0eXBlXVtpZF0gPSBlbGVtZW50O1xuICB9XG5cbiAgZ2V0RWxlbWVudDxUID0gRmllbGRDb21wb25lbnQ+KGlkOiBzdHJpbmcsIHR5cGUgPSBUZW1wbGF0ZUVsZW1lbnRUeXBlLkZpZWxkKTogVCB7XG4gICAgaWYgKHRoaXMuaGFzRWxlbWVudChpZCwgdHlwZSkpIHtcbiAgICAgIHJldHVybiB0aGlzLmVsZW1lbnRzW3R5cGVdW2lkXTtcbiAgICB9XG4gIH1cblxuICBjbGVhcigpOiB2b2lkIHtcbiAgICB0aGlzLmVsZW1lbnRzID0ge307XG4gIH1cbn1cbiJdfQ==