UNPKG

amisa-forms

Version:
80 lines (79 loc) 3.73 kB
var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) { if (kind === "m") throw new TypeError("Private method is not writable"); if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter"); if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it"); return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value; }; var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) { if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter"); if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it"); return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver); }; var _ElementsManager_elements, _ElementsManager_formFactory; export class ElementsManager { constructor(formFactory) { this.initializeElements = () => { this.elements.forEach(element => { element.clearData(); }); }; this.addResponseElement = (element) => { if (this.responses === undefined) { this.responses = []; } this.responses.push(element); }; this.deserializedResponse = (data) => { if (this.responses && this.responses.length > 0) { this.responses.forEach((element) => { element.deseriallize(data.getProp(element.responseKey)); }); } }; this.addPayloadElement = (element) => { if (this.payLoad === undefined) { this.payLoad = []; } this.payLoad.push(element); }; //** return number of error */ this.validate = () => { let numberofError = 0; this.elements.forEach(element => { element.validate(); if (!(typeof element.validation === 'boolean' && element.validation === true)) { numberofError += 1; } }); __classPrivateFieldGet(this, _ElementsManager_formFactory, "f").forceUpdate(); return numberofError; }; _ElementsManager_elements.set(this, void 0); _ElementsManager_formFactory.set(this, void 0); this.addElement = (element) => { this.elements.push(element); }; this.removeElement = (element) => { __classPrivateFieldSet(this, _ElementsManager_elements, this.elements.filter(i => i !== element), "f"); }; this.saveAttachedFiles = async (id) => { // const find = this.elements.find(i => i instanceof AttachedFilesFactory) as AttachedFilesFactory; // if (find) { // await find.save(id); // } }; __classPrivateFieldSet(this, _ElementsManager_elements, [], "f"); __classPrivateFieldSet(this, _ElementsManager_formFactory, formFactory, "f"); } get hasChange() { return this.elements.some(i => i.hasChange); } get elements() { return __classPrivateFieldGet(this, _ElementsManager_elements, "f"); } get formFactory() { return __classPrivateFieldGet(this, _ElementsManager_formFactory, "f"); } } _ElementsManager_elements = new WeakMap(), _ElementsManager_formFactory = new WeakMap();