UNPKG

128 kBSource Map (JSON)View Raw
1{"version":3,"file":"soushians-form.umd.js","sources":["../node_modules/tslib/tslib.es6.js","ng://@soushians/form/lib/models/add-form.api-model.ts","ng://@soushians/form/lib/models/edit-form.api-model.ts","ng://@soushians/form/lib/models/form-list.api-model.ts","ng://@soushians/form/lib/models/form-field-validator.model.ts","ng://@soushians/form/lib/models/field-config.model.ts","ng://@soushians/form/lib/models/form-schema.model.ts","ng://@soushians/form/lib/models/field.interface.ts","ng://@soushians/form/lib/form.config.ts","ng://@soushians/form/lib/services/form-configuration.service.ts","ng://@soushians/form/lib/services/form.service.ts","ng://@soushians/form/lib/view/form-controls/select/select.component.ts","ng://@soushians/form/lib/view/form-controls/checkbox/checkbox.component.ts","ng://@soushians/form/lib/view/form-controls/email/email.component.ts","ng://@soushians/form/lib/view/form-controls/color/color.component.ts","ng://@soushians/form/lib/view/form-controls/table/table.component.ts","ng://@soushians/form/lib/view/form-controls/number/number.component.ts","ng://@soushians/form/lib/view/form-controls/text/text.component.ts","ng://@soushians/form/lib/list/list.actions.ts","ng://@soushians/form/lib/view/form-controls/date/date.component.ts","ng://@soushians/form/lib/view/form-controls/file/file.component.ts","ng://@soushians/form/lib/services/form-captcha.service.ts","ng://@soushians/form/lib/models/captcha.model.ts","ng://@soushians/form/lib/view/form-controls/form-captcha/form-captcha.component.ts","ng://@soushians/form/lib/view/form-view/form-view.component.ts","ng://@soushians/form/lib/list/list.reducers.ts","ng://@soushians/form/lib/main-container/main-container.reducers.ts","ng://@soushians/form/lib/add/form-group/form-group.component.ts","ng://@soushians/form/lib/add/form-array/form-array.component.ts","ng://@soushians/form/lib/add/form-control/form-control.component.ts","ng://@soushians/form/lib/edit/edit-form.actions.ts","ng://@soushians/form/lib/add/add-form.actions.ts","ng://@soushians/form/lib/add/add-form-container/add-form-container.component.ts","ng://@soushians/form/lib/edit/edit-form-container/edit-form-container.component.ts","ng://@soushians/form/lib/add/add-form/add-form.component.ts","ng://@soushians/form/lib/edit/edit-form/edit-form.component.ts","ng://@soushians/form/lib/list/form-list-container/form-list.container.component.ts","ng://@soushians/form/lib/list/form-list/form-list.component.ts","ng://@soushians/form/lib/main-container/main-container.component/main-container.component.ts","ng://@soushians/form/lib/add/add-form.effects.ts","ng://@soushians/form/lib/list/list.effects.ts","ng://@soushians/form/lib/edit/edit-form.effects.ts","ng://@soushians/form/lib/form-routing.module.ts","ng://@soushians/form/lib/add/captcha.actions.ts","ng://@soushians/form/lib/add/captcha.effects.ts","ng://@soushians/form/lib/form.module.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { HttpRequestBaseModel } from \"@soushians/shared\";\r\nimport { FormGroup, FormControl, Validators } from \"@angular/forms\";\r\nimport { FormSchemaModel } from \"../models\";\r\n\r\nexport namespace AddFormApiModel {\r\n\texport class Request implements HttpRequestBaseModel<Request> {\r\n\t\t_id: string;\r\n\t\tname: string;\r\n\t\tform: any[];\r\n\t\tevents: any[];\r\n\t\tconstructor(initValue = {} as AddFormApiModel.Request) {\r\n\t\t\tObject.keys(initValue).forEach(key => (this[key] = initValue[key]));\r\n\t\t}\r\n\r\n\t\tgetRequestBody() {\r\n\t\t\treturn {\r\n\t\t\t\tname: this.name,\r\n\t\t\t\tform: this.form,\r\n\t\t\t\tevents: this.events\r\n\t\t\t};\r\n\t\t}\r\n\t\tstatic get formGroup() {\r\n\t\t\treturn new FormGroup({\r\n\t\t\t\t_id: new FormControl(\"\", [ Validators.required ]),\r\n\t\t\t\tname: new FormControl(\"\", [ Validators.required ]),\r\n\t\t\t\ttitle: new FormControl(\"\", [ Validators.required ]),\r\n\t\t\t\tform: new FormControl({}),\r\n\t\t\t\tevents: new FormGroup({\r\n\t\t\t\t\taccept: new FormGroup({\r\n\t\t\t\t\t\tshow: new FormControl(false),\r\n\t\t\t\t\t\ttext: new FormControl(\"ثبت\")\r\n\t\t\t\t\t}),\r\n\t\t\t\t\tcancel: new FormGroup({\r\n\t\t\t\t\t\tshow: new FormControl(false),\r\n\t\t\t\t\t\ttext: new FormControl(\"انصراف\")\r\n\t\t\t\t\t})\r\n\t\t\t\t})\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\r\n\texport class Response {\r\n\t\tResult: FormSchemaModel;\r\n\t\tconstructor() {}\r\n\t}\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { HttpRequestBaseModel } from \"@soushians/shared\";\r\nimport { FormGroup, FormControl, Validators } from \"@angular/forms\";\r\nimport { FormSchemaModel } from \"../models\";\r\n\r\nexport namespace EditFormApiModel {\r\n\texport class Request implements HttpRequestBaseModel<Request> {\r\n\t\t_id: string;\r\n\t\tname: string;\r\n\t\tform: any[];\r\n\t\tevents: any[];\r\n\t\tconstructor(initValue = {} as EditFormApiModel.Request) {\r\n\t\t\tObject.keys(initValue).forEach(key => (this[key] = initValue[key]));\r\n\t\t}\r\n\r\n\t\tgetRequestBody() {\r\n\t\t\treturn {\r\n\t\t\t\t_id: this._id,\r\n\t\t\t\tname: this.name,\r\n\t\t\t\tform: this.form,\r\n\t\t\t\tevents: this.events\r\n\t\t\t};\r\n\t\t}\r\n\t\tstatic get formGroup() {\r\n\t\t\treturn new FormGroup({\r\n\t\t\t\t_id: new FormControl(\"\", [ Validators.required ]),\r\n\t\t\t\tname: new FormControl(\"\", [ Validators.required ]),\r\n\t\t\t\tform: new FormControl({}),\r\n\t\t\t\tevents: new FormGroup({\r\n\t\t\t\t\taccept: new FormGroup({\r\n\t\t\t\t\t\tshow: new FormControl(false),\r\n\t\t\t\t\t\ttext: new FormControl(\"ثبت\")\r\n\t\t\t\t\t}),\r\n\t\t\t\t\tcancel: new FormGroup({\r\n\t\t\t\t\t\tshow: new FormControl(false),\r\n\t\t\t\t\t\ttext: new FormControl(\"انصراف\")\r\n\t\t\t\t\t})\r\n\t\t\t\t})\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\r\n\texport class Response {\r\n\t\tResult: FormSchemaModel;\r\n\t\tconstructor() {}\r\n\t}\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { HttpRequestBaseModel } from \"@soushians/shared\";\r\nimport { FormGroup, FormControl, Validators } from \"@angular/forms\";\r\nimport { FormSchemaModel } from \"../models\";\r\n\r\nexport namespace FormListApiModel {\r\n\texport class Request implements HttpRequestBaseModel<Request> {\r\n\t\tName: string;\r\n\t\tControls: object[];\r\n\t\tconstructor(initValue = {} as FormListApiModel.Request) {\r\n\t\t\tObject.keys(initValue).forEach((key) => (this[key] = initValue[key]));\r\n\t\t}\r\n\r\n\t\tgetRequestBody() {\r\n\t\t\treturn {\r\n\t\t\t\tName: this.Name,\r\n\t\t\t\tControls: this.Controls\r\n\t\t\t};\r\n\t\t}\r\n\t\tstatic get formGroup() {\r\n\t\t\treturn new FormGroup({\r\n\t\t\t\tName: new FormControl(\"\", [ Validators.required ]),\r\n\t\t\t\tControls: new FormGroup({})\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\r\n\texport class Response {\r\n\t\tResult: FormSchemaModel[];\r\n\t\tconstructor() {}\r\n\t}\r\n}\r\n","export interface validation {\r\n\tactive: boolean;\r\n\tmessage: string;\r\n\tvalue?: any;\r\n}\r\nexport class Validator {\r\n\trequired: validation;\r\n\tminlength: validation;\r\n\temail: validation;\r\n\r\n\tconstructor() {\r\n\t\tthis.required = {\r\n\t\t\tactive: false,\r\n\t\t\tmessage: \"این فیلد الزامی است\"\r\n\t\t};\r\n\t\tthis.minlength = {\r\n\t\t\tactive: false,\r\n\t\t\tmessage: \"حداقل تعداد کارکترها\",\r\n\t\t\tvalue: 5\r\n\t\t};\r\n\t\tthis.email = {\r\n\t\t\tactive: false,\r\n\t\t\tmessage: \"لطفا ایمیل صحیح وارد نمایید\"\r\n\t\t};\r\n\t}\r\n}\r\n","import { Validator } from \"./form-field-validator.model\";\r\n\r\nexport class FieldConfig {\r\n\tid: number;\r\n\ttype: \"group\" | \"array\" | \"control\";\r\n\tname: string;\r\n\tsubtype: string;\r\n\tdisabled?: boolean;\r\n\ttitle: string;\r\n\tparentType?: \"array\" | \"group\";\r\n\tformGroupPath?: string;\r\n\tpath?: string;\r\n\tinputType: \"select\" | \"text\" | \"number\" | \"email\" | \"color\" | \"checkbox\" | \"table\";\r\n\tvalue?: any;\r\n\torder?: number;\r\n\twidth?: number;\r\n\toptions: {\r\n\t\t[key: string]: string | number | boolean;\r\n\t}[];\r\n\tdataEndpoint?: string;\r\n\toptionsEndpoint: string;\r\n\tfields?: FieldConfig[];\r\n\tvalidator: Validator;\r\n\tconstructor(type: \"group\" | \"array\" | \"control\") {\r\n\t\tthis.type = type;\r\n\t\tif (type != \"control\") this.fields = [];\r\n\t\tthis.width = 3;\r\n\t\tthis.validator = new Validator();\r\n\t}\r\n}\r\n","import { FieldConfig } from \"./field-config.model\";\r\n\r\nexport class FormSchemaModel {\r\n\t_id: string;\r\n\tname: string;\r\n\tdescription: string;\r\n\tform: FieldConfig;\r\n\tevents = {\r\n\t\taccept: {\r\n\t\t\tshow: false,\r\n\t\t\ttext: \"ثبت\"\r\n\t\t},\r\n\t\tcancel: {\r\n\t\t\tshow: false,\r\n\t\t\ttext: \"انصراف\"\r\n\t\t}\r\n\t};\r\n\r\n\tconstructor() {\r\n\t\tthis.form = new FieldConfig(\"group\");\r\n\t}\r\n\tinit() {\r\n\t\tthis._id = (Math.random() * 10).toString();\r\n\t}\r\n}\r\n","import { FormGroup } from \"@angular/forms\";\r\nimport { FieldConfig } from \"./field-config.model\";\r\n\r\nexport interface Field {\r\n\tconfig: FieldConfig;\r\n\tgroup: FormGroup;\r\n}\r\n","import { InjectionToken } from \"@angular/core\";\r\n\r\nexport interface FormModuleConfig {\r\n\tenv?: {\r\n\t\tproduction: boolean;\r\n\t\tfrontend_server: string;\r\n\t\tserver: string;\r\n\t};\r\n\tendpoints?: {\r\n\t\taddForm: string;\r\n\t\teditForm: string;\r\n\t\tgetForm: string;\r\n\t\tgetList: string;\r\n\t\tdeleteForm: string;\r\n\t\tcaptchaUrl: string;\r\n\t};\r\n}\r\nexport const MODULE_DEFAULT_CONFIG: FormModuleConfig = {\r\n\tenv: {\r\n\t\tproduction: false,\r\n\t\tfrontend_server: \"frontend/server/did/not/set\",\r\n\t\tserver: \"server/did/not/set\"\r\n\t},\r\n\tendpoints: {\r\n\t\taddForm: \"\",\r\n\t\teditForm: \"\",\r\n\t\tgetForm: \"\",\r\n\t\tgetList: \"\",\r\n\t\tdeleteForm: \"\",\r\n\t\tcaptchaUrl: \"\"\r\n\r\n\t},\r\n};\r\nexport const MODULE_CONFIG_TOKEN = new InjectionToken<FormModuleConfig>(\"FormModuleConfig\");\r\n","import { BehaviorSubject } from \"rxjs\";\r\nimport { Inject, Injectable } from \"@angular/core\";\r\nimport { Store } from \"@ngrx/store\";\r\n\r\nimport { getFormModuleConfig } from \"@soushians/config\";\r\n\r\nimport { FormModuleConfig } from \"../form.config\";\r\nimport { MODULE_CONFIG_TOKEN, MODULE_DEFAULT_CONFIG } from \"../form.config\";\r\nimport { MainContainerState } from \"../main-container\";\r\n\r\n@Injectable({\r\n\tprovidedIn: \"root\"\r\n})\r\nexport class FormConfigurationService {\r\n\tprivate _config: FormModuleConfig;\r\n\tget config() {\r\n\t\treturn this._config;\r\n\t}\r\n\tconfig$ = new BehaviorSubject(MODULE_DEFAULT_CONFIG);\r\n\r\n\tconstructor(@Inject(MODULE_CONFIG_TOKEN) configFile, private store: Store<MainContainerState>) {\r\n\t\tthis._config = Object.assign({}, MODULE_DEFAULT_CONFIG, configFile);\r\n\t\tthis.config$.next(this._config);\r\n\t\tthis.store.select(getFormModuleConfig).subscribe(userConfig => {\r\n\t\t\tif (!userConfig) return;\r\n\t\t\tthis._config = Object.assign({}, this._config, userConfig.Config);\r\n\t\t\tthis.config$.next(this._config);\r\n\t\t});\r\n\t}\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { HttpClient } from \"@angular/common/http\";\r\nimport { Observable } from \"rxjs/Rx\";\r\nimport { Store } from \"@ngrx/store\";\r\nimport { BehaviorSubject } from \"rxjs/BehaviorSubject\";\r\nimport { filter, map } from \"rxjs/operators\";\r\n\r\nimport { stringTemplate } from \"@soushians/shared\";\r\n\r\nimport { FormSchemaModel, AddFormApiModel, EditFormApiModel, FormListApiModel } from \"../models\";\r\nimport { FormConfigurationService } from \"./form-configuration.service\";\r\n\r\nimport { MainContainerState } from \"../main-container/main-container.reducers\";\r\n\r\n@Injectable({\r\n\tprovidedIn: \"root\"\r\n})\r\nexport class FormService {\r\n\tconstructor(\r\n\t\tprivate http: HttpClient,\r\n\t\tprivate store: Store<MainContainerState>,\r\n\t\tprivate configurationService: FormConfigurationService\r\n\t) {}\r\n\r\n\tadd(data: AddFormApiModel.Request): Observable<FormSchemaModel> {\r\n\t\tconst model = new AddFormApiModel.Request(data);\r\n\t\treturn this.configurationService.config$\r\n\t\t\t.filter((config) => config.endpoints.addForm != \"\")\r\n\t\t\t.take(1)\r\n\t\t\t.switchMap((config) =>\r\n\t\t\t\tthis.http.post(config.env.frontend_server + config.endpoints.addForm, model.getRequestBody())\r\n\t\t\t)\r\n\t\t\t.map((response: AddFormApiModel.Response) => response.Result);\r\n\t}\r\n\tget(_id: string): Observable<FormSchemaModel> {\r\n\t\treturn this.configurationService.config$\r\n\t\t\t.filter((config) => config.endpoints.getForm != \"\")\r\n\t\t\t.take(1)\r\n\t\t\t.switchMap((config) =>\r\n\t\t\t\tthis.http.get(stringTemplate(config.env.frontend_server + config.endpoints.getForm, { _id }))\r\n\t\t\t)\r\n\t\t\t.map((response: EditFormApiModel.Response) => response.Result);\r\n\t}\r\n\tgetList(): Observable<FormSchemaModel[]> {\r\n\t\treturn this.configurationService.config$\r\n\t\t\t.filter((config) => config.endpoints.getList != \"\")\r\n\t\t\t.switchMap((config) => this.http.get(config.env.frontend_server + config.endpoints.getList))\r\n\t\t\t.map((response: FormListApiModel.Response) => response.Result);\r\n\t}\r\n\tupdate(data: EditFormApiModel.Request): Observable<FormSchemaModel> {\r\n\t\tconst model = new EditFormApiModel.Request(data);\r\n\t\treturn this.configurationService.config$\r\n\t\t\t.filter((config) => config.endpoints.editForm != \"\")\r\n\t\t\t.take(1)\r\n\t\t\t.switchMap((config) =>\r\n\t\t\t\tthis.http.put(config.env.frontend_server + config.endpoints.editForm, model.getRequestBody())\r\n\t\t\t)\r\n\t\t\t.map((response: EditFormApiModel.Response) => response.Result);\r\n\t}\r\n\tdelete(_id: string) {\r\n\t\treturn this.configurationService.config$\r\n\t\t\t.filter((config) => config.endpoints.deleteForm != \"\")\r\n\t\t\t.switchMap((config) => this.http.get(config.env.frontend_server + config.endpoints.deleteForm));\r\n\t}\r\n\tselectFormById(_id: string): Observable<FormSchemaModel> {\r\n\t\tconst subject = new BehaviorSubject<FormSchemaModel>(undefined);\r\n\t\tthis.store\r\n\t\t\t.select((state) => state.form.list.data)\r\n\t\t\t.pipe(filter((forms) => forms != null), map((forms) => forms.find((form) => form._id == _id)))\r\n\t\t\t.subscribe((formSchemaModel) => subject.next(formSchemaModel));\r\n\t\treturn subject.asObservable();\r\n\t}\r\n}\r\n","import { Component, OnInit, Input } from \"@angular/core\";\r\nimport { FieldConfig, Field } from \"../../../models\";\r\nimport { FormGroup } from \"@angular/forms\";\r\n\r\n@Component({\r\n\tselector: \"ngs-form-control-select\",\r\n\ttemplateUrl: \"./select.component.html\",\r\n\tstyleUrls: [ \"./select.component.scss\" ]\r\n})\r\nexport class SelectComponent implements Field {\r\n\tconfig: FieldConfig;\r\n\tgroup: FormGroup;\r\n\tconstructor() {}\r\n}\r\n","import { Component, OnInit, Input } from \"@angular/core\";\r\nimport { FormGroup } from \"@angular/forms\";\r\n\r\nimport { Field, FieldConfig } from \"../../../models\";\r\n\r\n@Component({\r\n\tselector: \"ngs-form-control-checkbox\",\r\n\ttemplateUrl: \"./checkbox.component.html\",\r\n\tstyleUrls: [ \"./checkbox.component.scss\" ]\r\n})\r\nexport class CheckboxComponent implements Field {\r\n\tconfig: FieldConfig;\r\n\tgroup: FormGroup;\r\n\r\n\tconstructor() {}\r\n}\r\n","import { Component, OnInit, Input } from \"@angular/core\";\r\nimport { FormGroup } from \"@angular/forms\";\r\n\r\nimport { FieldConfig, Field } from \"../../../models\";\r\n\r\n@Component({\r\n\tselector: \"ngs-form-control-email\",\r\n\ttemplateUrl: \"./email.component.html\",\r\n\tstyleUrls: [ \"./email.component.scss\" ]\r\n})\r\nexport class EmailComponent implements Field {\r\n\tconfig: FieldConfig;\r\n\tgroup: FormGroup;\r\n\r\n\tconstructor() {}\r\n\r\n\tngOnInit() {}\r\n}\r\n","import { Component, OnInit, Input } from \"@angular/core\";\r\nimport { FormGroup } from \"@angular/forms\";\r\n\r\nimport { FieldConfig, Field } from \"../../../models\";\r\n\r\n@Component({\r\n\tselector: \"ngs-form-control-color\",\r\n\ttemplateUrl: \"./color.component.html\",\r\n\tstyleUrls: [ \"./color.component.scss\" ]\r\n})\r\nexport class ColorComponent implements Field {\r\n\tconfig: FieldConfig;\r\n\tgroup: FormGroup;\r\n\r\n\t@Input() form: FormGroup;\r\n\t@Input() schema: FieldConfig;\r\n\tconstructor() {}\r\n\r\n\tngOnInit() {}\r\n}\r\n","import { Component, OnInit, Input } from \"@angular/core\";\r\nimport { FormGroup } from \"@angular/forms\";\r\n\r\nimport { FieldConfig, Field } from \"../../../models\";\r\nimport { HttpClient } from \"@angular/common/http\";\r\nimport { MatTableDataSource } from \"@angular/material\";\r\nimport { SelectionModel } from \"@angular/cdk/collections\";\r\n\r\n@Component({\r\n\tselector: \"ngs-form-control-table\",\r\n\ttemplateUrl: \"./table.component.html\",\r\n\tstyleUrls: [ \"./table.component.scss\" ]\r\n})\r\nexport class TableComponent implements OnInit, Field {\r\n\tconfig: FieldConfig;\r\n\tgroup: FormGroup;\r\n\t@Input() form: FormGroup;\r\n\t@Input() schema: FieldConfig;\r\n\tready: boolean;\r\n\tdisplayedColumns: string[];\r\n\tfiledDisplayedColumns: string[];\r\n\tdataSource: MatTableDataSource<any>;\r\n\r\n\tselection = new SelectionModel<any>(true, []);\r\n\tconstructor(private http: HttpClient) {\r\n\t\tthis.ready = false;\r\n\t}\r\n\tngOnInit() {\r\n\t\tthis.http.get(this.schema.dataEndpoint).subscribe((data: any) => {\r\n\t\t\tthis.ready = true;\r\n\t\t\tthis.displayedColumns = data.displayedColumns;\r\n\t\t\tthis.filedDisplayedColumns = data.filedDisplayedColumns;\r\n\t\t\tthis.dataSource = new MatTableDataSource<any>(data.dataSource);\r\n\t\t});\r\n\t}\r\n\r\n\t/** Whether the number of selected elements matches the total number of rows. */\r\n\tisAllSelected() {\r\n\t\tconst numSelected = this.selection.selected.length;\r\n\t\tthis.form.patchValue({\r\n\t\t\t[this.schema.name]: this.selection.selected\r\n\t\t});\r\n\t\tconst numRows = this.dataSource.data.length;\r\n\t\treturn numSelected === numRows;\r\n\t}\r\n\r\n\t/** Selects all rows if they are not all selected; otherwise clear selection. */\r\n\tmasterToggle() {\r\n\t\tthis.isAllSelected() ? this.selection.clear() : this.dataSource.data.forEach(row => this.selection.select(row));\r\n\t}\r\n}\r\n","import { Component, OnInit, Input } from \"@angular/core\";\r\nimport { FormGroup } from \"@angular/forms\";\r\n\r\nimport { FieldConfig } from \"../../../models\";\r\n\r\n@Component({\r\n\tselector: \"ngs-form-control-number\",\r\n\ttemplateUrl: \"./number.component.html\",\r\n\tstyleUrls: [ \"./number.component.scss\" ]\r\n})\r\nexport class NumberComponent implements OnInit {\r\n\t@Input() form: FormGroup;\r\n\t@Input() schema: FieldConfig;\r\n\tconstructor() {}\r\n\r\n\tngOnInit() {}\r\n}\r\n","import { Component, OnInit, Input } from \"@angular/core\";\r\nimport { FormGroup } from \"@angular/forms\";\r\n\r\nimport { FieldConfig, Field } from \"../../../models\";\r\n\r\n@Component({\r\n\tselector: \"ngs-form-control-text\",\r\n\ttemplateUrl: \"./text.component.html\",\r\n\tstyleUrls: [ \"./text.component.scss\" ]\r\n})\r\nexport class TextComponent implements Field {\r\n\tconfig: FieldConfig;\r\n\tgroup: FormGroup;\r\n\r\n\tconstructor() {}\r\n}\r\n","import { Action } from \"@ngrx/store\";\r\n\r\nimport { FormSchemaModel } from \"../models\";\r\n\r\nexport enum FormsListActionTypes {\r\n\tFORMS_LIST = \"[FORM][LIST] FORMS_LIST\",\r\n\tFORMS_LIST_START = \"[FORM][LIST] FORMS_LIST_START\",\r\n\tFORMS_LIST_SUCCEED = \"[FORM][LIST] FORMS_LIST_SUCCEED\",\r\n\tFORMS_LIST_FAILED = \"[FORM][LIST] FORMS_LIST_FAILED\",\r\n\tADD_FORM_SCHEMA = \"[FORM][LIST] ADD_FORM_SCHEMA\",\r\n\tFORM_SCHEMA_UPDATE = \"[FORM][LIST] FORM_SCHEMA_UPDATE\",\r\n\tGET_FORM_SCHEMA = \"[FORM][LIST] GET_FORM_SCHEMA\",\r\n\tFORM_SCHEMA_FETCHED = \"[FORM][LIST] FORM_SCHEMA_FETCHED\"\r\n}\r\n\r\nexport class FormsListAction implements Action {\r\n\treadonly type = FormsListActionTypes.FORMS_LIST;\r\n}\r\nexport class FormsListStartAction implements Action {\r\n\treadonly type = FormsListActionTypes.FORMS_LIST_START;\r\n}\r\nexport class FormsListSucceedAction implements Action {\r\n\treadonly type = FormsListActionTypes.FORMS_LIST_SUCCEED;\r\n\tconstructor(public payload: FormSchemaModel[]) {}\r\n}\r\nexport class FormsListFailedAction implements Action {\r\n\treadonly type = FormsListActionTypes.FORMS_LIST_FAILED;\r\n}\r\nexport class UpdateFormSchemaAction implements Action {\r\n\treadonly type = FormsListActionTypes.FORM_SCHEMA_UPDATE;\r\n\tconstructor(public payload: FormSchemaModel) {}\r\n}\r\nexport class AddFormSchemaAction implements Action {\r\n\treadonly type = FormsListActionTypes.ADD_FORM_SCHEMA;\r\n\tconstructor(public payload: FormSchemaModel) {}\r\n}\r\nexport class GetFormSchemaAction implements Action {\r\n\treadonly type = FormsListActionTypes.GET_FORM_SCHEMA;\r\n\tconstructor(public payload: string) {}\r\n}\r\nexport class FormSchemaFechedAction implements Action {\r\n\treadonly type = FormsListActionTypes.FORM_SCHEMA_FETCHED;\r\n\tconstructor(public payload: FormSchemaModel) {}\r\n}\r\n\r\nexport type FormsListActions =\r\n\t| FormsListAction\r\n\t| FormsListStartAction\r\n\t| FormsListSucceedAction\r\n\t| FormsListFailedAction\r\n\t| UpdateFormSchemaAction\r\n\t| AddFormSchemaAction\r\n\t| GetFormSchemaAction\r\n\t| FormSchemaFechedAction;\r\n","import { Component, OnInit, Input } from \"@angular/core\";\r\nimport { FormGroup } from \"@angular/forms\";\r\n\r\nimport { FieldConfig, Field } from \"../../../models\";\r\n\r\n@Component({\r\n\tselector: \"ngs-form-control-date\",\r\n\ttemplateUrl: \"./date.component.html\",\r\n\tstyleUrls: [ \"./date.component.scss\" ]\r\n})\r\nexport class DateFormInputControlComponent implements Field {\r\n\tconfig: FieldConfig;\r\n\tgroup: FormGroup;\r\n\r\n\tconstructor() {}\r\n}\r\n","import { Component, OnInit, Input } from \"@angular/core\";\r\nimport { FormGroup } from \"@angular/forms\";\r\n\r\nimport { FieldConfig, Field } from \"../../../models\";\r\n\r\n@Component({\r\n\tselector: \"ngs-form-control-file\",\r\n\ttemplateUrl: \"./file.component.html\",\r\n\tstyleUrls: [ \"./file.component.scss\" ]\r\n})\r\nexport class FileFormInputControlComponent implements Field {\r\n\tconfig: FieldConfig;\r\n\tgroup: FormGroup;\r\n\r\n\tconstructor() {}\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { HttpClient } from \"@angular/common/http\";\r\nimport { Observable } from \"rxjs\";\r\nimport { Store } from \"@ngrx/store\";\r\nimport { BehaviorSubject } from \"rxjs/BehaviorSubject\";\r\nimport { filter, map, take, switchMap } from \"rxjs/operators\";\r\n\r\nimport { stringTemplate } from \"@soushians/shared\";\r\n\r\nimport { FormSchemaModel, AddFormApiModel, EditFormApiModel, FormListApiModel } from \"../models\";\r\nimport { FormConfigurationService } from \"./form-configuration.service\";\r\n\r\nimport { MainContainerState } from \"../main-container/main-container.reducers\";\r\nimport { UpsertCaptchaApiModel } from \"../models/captcha.model\";\r\n\r\n@Injectable({\r\n\tprovidedIn: \"root\"\r\n})\r\nexport class FormCaptchaService {\r\n\tconstructor(\r\n\t\tprivate http: HttpClient,\r\n\t\tprivate store: Store<MainContainerState>,\r\n\t\tprivate configurationService: FormConfigurationService\r\n\t) { }\r\n\r\n\tgetCaptcha(): Observable<any> {\r\n\t\treturn this.configurationService.config$.pipe(\r\n\t\t\tfilter((captcha) => captcha.endpoints.captchaUrl != \"\"),\r\n\t\t\ttake(1),\r\n\t\t\tswitchMap((captcha) =>\r\n\t\t\t\tthis.http.get(captcha.env.server + captcha.endpoints.captchaUrl)\r\n\t\t\t),\r\n\t\t\tmap((response: any) => response.Result),\r\n\t\t);\r\n\t}\r\n\tsendCaptcha(): Observable<FormSchemaModel[]> {\r\n\t\treturn this.configurationService.config$.pipe(\r\n\t\t\tfilter((config) => config.endpoints.getList != \"\"),\r\n\t\t\tswitchMap((config) => this.http.get(config.env.server + config.endpoints.getList)),\r\n\t\t\tmap((response: FormListApiModel.Response) => response.Result)\r\n\t\t);\r\n\t}\r\n}\r\n","\r\nexport class CaptchaModel {\r\n\tcaptchaImg: string;\r\n\tcaptchaCode: string;\r\n\tconstructor({ captchaImg, captchaCode }: { captchaImg?: string; captchaCode?: string; } = {}) {\r\n\t\tthis.captchaImg = `${captchaImg}?${Math.random()}`;\r\n\t\tthis.captchaCode = captchaCode || \"\";\r\n\t}\r\n}\r\n\r\nexport namespace UpsertCaptchaApiModel {\r\n\texport class Request {\r\n\t\tCaptcha: CaptchaModel;\r\n\t\tconstructor(initValue: Partial<UpsertCaptchaApiModel.Request> = {}) {\r\n\t\t\tObject.keys(initValue).forEach(key => (this[key] = initValue[key]));\r\n\t\t}\r\n\t\tgetRequestBody() {\r\n\t\t\treturn this.Captcha.captchaCode;\r\n\t\t}\r\n\t}\r\n\texport class Response {\r\n\t\tResult: CaptchaModel;\r\n\t\tconstructor() { }\r\n\t}\r\n}\r\n","import { Component, OnInit, Input, Output, EventEmitter } from \"@angular/core\";\r\nimport { FormGroup, FormControl, FormArray, Validators } from \"@angular/forms\";\r\nimport { Store } from \"@ngrx/store\";\r\n\r\nimport { Field, FieldConfig } from \"../../../models\";\r\nimport { FormCaptchaService } from \"../../../services/form-captcha.service\";\r\nimport { CaptchaModel } from \"../../../models/captcha.model\";\r\nimport { MainContainerState } from \"../../../main-container\";\r\nimport { FormConfigurationService } from \"../../../services/form-configuration.service\";\r\nimport { map } from \"rxjs/operators\";\r\nimport { generate } from \"rxjs\";\r\n\r\n@Component({\r\n\tselector: \"lib-form-captcha\",\r\n\ttemplateUrl: \"./form-captcha.component.html\",\r\n\tstyleUrls: [\"./form-captcha.component.scss\"]\r\n})\r\nexport class FormCaptchaComponent implements OnInit, Field {\r\n\tconfig: FieldConfig;\r\n\tgroup: FormGroup;\r\n\r\n\tcaptcha: CaptchaModel;\r\n\tcaptchaSrc: string;\r\n\tconstructor(\r\n\t\tprivate service: FormCaptchaService,\r\n\t\tprivate store: Store<MainContainerState>,\r\n\t\tprivate configurationService: FormConfigurationService\r\n\t) {\r\n\t\t// this.captcha = new CaptchaModel({\r\n\t\t// \tcaptchaImg: \"http://172.22.34.28:8001/api/authentication/captcha\"\r\n\t\t// });\r\n\r\n\t\tthis._captcha_generate();\r\n\t}\r\n\tngOnInit() {\r\n\t\tthis.store.select((s: any) => s.authentication.captcha.captcha).subscribe(e => this.refresh());\r\n\t}\r\n\trefresh() {\r\n\t\tthis.captcha.captchaImg = this._captcha_generate() + `?${Math.random()}`;\r\n\t}\r\n\t_captcha_generate() {\r\n\t\tthis.configurationService.config$.pipe(\r\n\t\t\tmap(config => config.env.server + config.endpoints.captchaUrl)).subscribe(captcha => {\r\n\t\t\t\tthis.captcha = new CaptchaModel({\r\n\t\t\t\t\tcaptchaImg: captcha\r\n\t\t\t\t});\r\n\t\t\t});\r\n\t}\r\n\r\n}\r\n","import {\r\n\tComponent,\r\n\tOnInit,\r\n\tViewChild,\r\n\tViewContainerRef,\r\n\tComponentFactoryResolver,\r\n\tCompiler,\r\n\tReflectiveInjector,\r\n\tNgModule,\r\n\tInput,\r\n\tOutput,\r\n\tEventEmitter,\r\n\tOnChanges,\r\n\tDirective,\r\n\tType,\r\n\tOnDestroy\r\n} from \"@angular/core\";\r\nimport { Observable } from \"rxjs/Observable\";\r\nimport { FormControl, FormGroup, FormArray, AbstractControl, Validators } from \"@angular/forms\";\r\nimport { BehaviorSubject } from \"rxjs/BehaviorSubject\";\r\nimport { Subject } from \"rxjs\";\r\nimport { takeUntil } from \"rxjs/operators\";\r\nimport { ComponentRef } from \"@angular/core\";\r\nimport { Store } from \"@ngrx/store\";\r\n\r\nimport {\r\n\tSelectComponent,\r\n\tEmailComponent,\r\n\tColorComponent,\r\n\tCheckboxComponent,\r\n\tTextComponent,\r\n\tTableComponent\r\n} from \"../form-controls\";\r\nimport { FormService } from \"../../services/form.service\";\r\nimport { MainContainerState } from \"../../main-container/main-container.reducers\";\r\nimport { GetFormSchemaAction } from \"../../list/list.actions\";\r\nimport { Field, FieldConfig, FormSchemaModel } from \"../../models\";\r\nimport { DateFormInputControlComponent } from \"../form-controls/date/date.component\";\r\nimport { FileFormInputControlComponent } from \"../form-controls/file/file.component\";\r\nimport { FormCaptchaComponent } from \"../form-controls/form-captcha\";\r\n\r\n@Component({\r\n\tselector: \"ngs-form-view\",\r\n\ttemplateUrl: \"./form-view.component.html\",\r\n\tstyleUrls: [\"./form-view.component.css\"]\r\n})\r\nexport class FormViewComponent implements OnDestroy {\r\n\tunsubscribe = new Subject<void>();\r\n\t@Output() accept = new EventEmitter<FormGroup>();\r\n\t@Output() cancel = new EventEmitter<FormGroup>();\r\n\t@Input() local;\r\n\t@Input() card = false;\r\n\t@Input()\r\n\tset id(id: string) {\r\n\t\tif (!this.local) this.store.dispatch(new GetFormSchemaAction(id));\r\n\t\tthis.service\r\n\t\t\t.selectFormById(id)\r\n\t\t\t.pipe(takeUntil(this.unsubscribe))\r\n\t\t\t.subscribe(schema => this.schema$.next(schema));\r\n\t}\r\n\t@Input()\r\n\tset schema(schema: FormSchemaModel) {\r\n\t\tthis.schema$.next(schema);\r\n\t}\r\n\t_id: string;\r\n\tformGroup: FormGroup;\r\n\tformGroupCreated = false;\r\n\tschema$: BehaviorSubject<FormSchemaModel>;\r\n\r\n\tconstructor(\r\n\t\tprivate service: FormService,\r\n\t\tprivate compiler: Compiler,\r\n\t\tprivate resolver: ComponentFactoryResolver,\r\n\t\tprivate store: Store<MainContainerState>\r\n\t) {\r\n\t\tthis.schema$ = new BehaviorSubject(undefined);\r\n\t\tthis.schema$.pipe(takeUntil(this.unsubscribe)).subscribe(schema => {\r\n\t\t\tif (!schema) return;\r\n\t\t\tthis.formGroup = this.createFrom(schema.form) as FormGroup;\r\n\t\t\tif (!schema.form.name) return;\r\n\t\t\tthis.formGroupCreated = true;\r\n\t\t});\r\n\t}\r\n\tngOnDestroy() {\r\n\t\tthis.unsubscribe.next();\r\n\t\tthis.unsubscribe.complete();\r\n\t}\r\n\tgenerate(schema: FormSchemaModel) {\r\n\t\tthis.schema$.next(schema);\r\n\t}\r\n\r\n\tcreateFrom(data: FieldConfig, parentPath = \"\"): AbstractControl {\r\n\t\tif (data.type == \"control\") {\r\n\t\t\tlet formGroupPath;\r\n\t\t\tif (data.parentType == \"array\") {\r\n\t\t\t\t// parentPath = `${parentPath}.controls[${(data as FieldConfig).name}]`;\r\n\t\t\t} else if (data.parentType == \"group\") {\r\n\t\t\t\tformGroupPath = parentPath;\r\n\t\t\t\tparentPath = `${parentPath}.controls.${(data as FieldConfig).name}`;\r\n\t\t\t}\r\n\t\t\tconst validators = [];\r\n\t\t\tif (data.validator.required && data.validator.required.active) {\r\n\t\t\t\tvalidators.push(Validators.required);\r\n\t\t\t}\r\n\t\t\tif (data.validator.minlength && data.validator.minlength.active) {\r\n\t\t\t\tvalidators.push(Validators.minLength(data.validator.minlength.value));\r\n\t\t\t}\r\n\t\t\tif (data.validator.email && data.validator.email.active) {\r\n\t\t\t\tvalidators.push(Validators.email);\r\n\t\t\t}\r\n\t\t\tconst ctr = new FormControl(data.value, validators);\r\n\t\t\t(ctr as any).schema = data;\r\n\t\t\t(ctr as any).schema.path = parentPath;\r\n\t\t\t(ctr as any).schema.formGroupPath = formGroupPath;\r\n\t\t\treturn ctr;\r\n\t\t} else if (data.type == \"group\") {\r\n\t\t\tconst formGroup = new FormGroup({});\r\n\t\t\tif (data.parentType == undefined) {\r\n\t\t\t\tparentPath = (data as FieldConfig).name;\r\n\t\t\t} else if (data.parentType == \"array\") {\r\n\t\t\t\tparentPath = `${parentPath}.controls[${(data as FieldConfig).name}]`;\r\n\t\t\t} else if (data.parentType == \"group\") {\r\n\t\t\t\tparentPath = `${parentPath}.controls.${(data as FieldConfig).name}`;\r\n\t\t\t}\r\n\r\n\t\t\t(formGroup as any).schema = data;\r\n\t\t\t(formGroup as any).schema.path = parentPath;\r\n\t\t\tdata.fields.forEach(item => {\r\n\t\t\t\titem.parentType = \"group\";\r\n\t\t\t\tformGroup.addControl(item.name, this.createFrom(item, parentPath));\r\n\t\t\t});\r\n\t\t\treturn formGroup;\r\n\t\t} else {\r\n\t\t\tconst formArray: FormArray = new FormArray([]);\r\n\t\t\tparentPath =\r\n\t\t\t\tparentPath == \"\" ? (data as FieldConfig).name : `${parentPath}.controls.${(data as FieldConfig).name}`;\r\n\t\t\t(formArray as any).schema = data;\r\n\t\t\t(formArray as any).schema.path = parentPath;\r\n\t\t\tdata.fields.forEach((item, idx) => {\r\n\t\t\t\titem.parentType = \"array\";\r\n\t\t\t\titem.name = idx.toString();\r\n\t\t\t\tformArray.controls.push(this.createFrom(item, parentPath));\r\n\t\t\t});\r\n\t\t\treturn formArray;\r\n\t\t}\r\n\t}\r\n\r\n\taccepted() {\r\n\t\tthis.accept.emit(this.formGroup);\r\n\t}\r\n\tcanceled() {\r\n\t\tthis.cancel.emit(this.formGroup);\r\n\t}\r\n}\r\n\r\nconst components: { [type: string]: Type<Field> } = {\r\n\tcheckbox: CheckboxComponent,\r\n\ttext: TextComponent,\r\n\tpassword: TextComponent,\r\n\tdate: DateFormInputControlComponent,\r\n\tfile: FileFormInputControlComponent,\r\n\ttable: TableComponent,\r\n\tcolor: ColorComponent,\r\n\temail: EmailComponent,\r\n\tcaptcha: FormCaptchaComponent,\r\n\tselect: SelectComponent\r\n};\r\n\r\n@Directive({\r\n\tselector: \"[dynamicField]\"\r\n})\r\nexport class DynamicFieldDirective implements Field, OnChanges, OnInit {\r\n\t@Input() config: FieldConfig;\r\n\r\n\t@Input() group: FormGroup;\r\n\r\n\tcomponent: ComponentRef<Field>;\r\n\r\n\tconstructor(private resolver: ComponentFactoryResolver, private container: ViewContainerRef) { }\r\n\r\n\tngOnChanges() {\r\n\t\tif (this.component) {\r\n\t\t\tthis.component.instance.config = this.config;\r\n\t\t\tthis.component.instance.group = this.group;\r\n\t\t}\r\n\t}\r\n\r\n\tngOnInit() {\r\n\t\tif (this.config.inputType == undefined) return;\r\n\t\tif (!components[this.config.inputType]) {\r\n\t\t\tconst supportedTypes = Object.keys(components).join(\", \");\r\n\t\t\tthrow new Error(\r\n\t\t\t\t`Trying to use an unsupported type (${this.config.inputType}).\r\n\t\t Supported types: ${supportedTypes}`\r\n\t\t\t);\r\n\t\t}\r\n\t\tconst component = this.resolver.resolveComponentFactory<Field>(components[this.config.inputType]);\r\n\t\tthis.component = this.container.createComponent(component);\r\n\t\tthis.component.instance.config = this.config;\r\n\t\tthis.component.instance.group = this.group;\r\n\t}\r\n}\r\n","import { responseStatusTypes } from \"@soushians/shared\";\r\nimport { FormSchemaModel } from \"../models\";\r\nimport { FormsListActionTypes, FormsListActions } from \"./list.actions\";\r\n\r\nexport interface State {\r\n\tstatus: responseStatusTypes;\r\n\tdata: FormSchemaModel[];\r\n}\r\nexport const initialState: State = {\r\n\tstatus: \"pristine\",\r\n\tdata: []\r\n};\r\nexport function reducer(state = initialState, action: FormsListActions): State {\r\n\tswitch (action.type) {\r\n\t\tcase FormsListActionTypes.FORMS_LIST: {\r\n\t\t\treturn {\r\n\t\t\t\t...state,\r\n\t\t\t\tstatus: \"dirty\"\r\n\t\t\t};\r\n\t\t}\r\n\t\tcase FormsListActionTypes.FORMS_LIST_START: {\r\n\t\t\treturn {\r\n\t\t\t\t...state,\r\n\t\t\t\tstatus: \"pending\"\r\n\t\t\t};\r\n\t\t}\r\n\t\tcase FormsListActionTypes.FORMS_LIST_SUCCEED: {\r\n\t\t\treturn {\r\n\t\t\t\t...state,\r\n\t\t\t\tdata: action.payload,\r\n\t\t\t\tstatus: \"succeed\"\r\n\t\t\t};\r\n\t\t}\r\n\t\tcase FormsListActionTypes.FORMS_LIST_FAILED: {\r\n\t\t\treturn {\r\n\t\t\t\t...state,\r\n\t\t\t\tstatus: \"failed\"\r\n\t\t\t};\r\n\t\t}\r\n\t\tcase FormsListActionTypes.FORM_SCHEMA_UPDATE: {\r\n\t\t\tconst data = state.data.concat();\r\n\t\t\tvar entityIdx = state.data.findIndex(form => form._id == action.payload._id);\r\n\t\t\tif (entityIdx > -1) {\r\n\t\t\t\tdata[entityIdx] = Object.assign({}, data[entityIdx], action.payload);\r\n\t\t\t} else {\r\n\t\t\t\tdata.push(action.payload);\r\n\t\t\t}\r\n\t\t\treturn {\r\n\t\t\t\t...state,\r\n\t\t\t\tdata: data\r\n\t\t\t};\r\n\t\t}\r\n\t\tcase FormsListActionTypes.ADD_FORM_SCHEMA: {\r\n\t\t\tconst data = state.data.concat();\r\n\t\t\tvar entityIdx = state.data.findIndex(form => form._id == action.payload._id);\r\n\t\t\tif (entityIdx > -1) {\r\n\t\t\t\tdata[entityIdx] = Object.assign({}, data[entityIdx], action.payload);\r\n\t\t\t} else {\r\n\t\t\t\tdata.push(action.payload);\r\n\t\t\t}\r\n\t\t\treturn {\r\n\t\t\t\t...state,\r\n\t\t\t\tdata: data\r\n\t\t\t};\r\n\t\t}\r\n\t\tcase FormsListActionTypes.FORM_SCHEMA_FETCHED: {\r\n\t\t\tconst data = state.data.concat();\r\n\t\t\tvar entityIdx = state.data.findIndex(form => form._id == action.payload._id);\r\n\t\t\tif (entityIdx > -1) {\r\n\t\t\t\tdata[entityIdx] = Object.assign({}, data[entityIdx], action.payload);\r\n\t\t\t} else {\r\n\t\t\t\tdata.push(action.payload);\r\n\t\t\t}\r\n\t\t\treturn {\r\n\t\t\t\t...state,\r\n\t\t\t\tdata: data\r\n\t\t\t};\r\n\t\t}\r\n\r\n\t\tdefault: {\r\n\t\t\treturn state;\r\n\t\t}\r\n\t}\r\n}\r\n\r\nexport var getStatus = (state: State) => state.status;\r\n","import * as list from \"../list/list.reducers\";\r\n\r\nexport interface FormState {\r\n\tlist: list.State;\r\n}\r\n\r\nexport const FormReducers = {\r\n\tlist: list.reducer\r\n};\r\n\r\nexport interface MainContainerState {\r\n\t\"form\": FormState;\r\n}\r\n","import { Component, Input, Output, EventEmitter } from \"@angular/core\";\r\nimport { FieldConfig } from \"../../models\";\r\n\r\n@Component({\r\n\tselector: \"app-form-group\",\r\n\ttemplateUrl: \"./form-group.component.html\"\r\n})\r\nexport class FormGroupComponent {\r\n\t@Input() schema: FieldConfig;\r\n\t@Input() noHeader: boolean = false;\r\n\t@Output() changes = new EventEmitter();\r\n\t@Output() delete = new EventEmitter();\r\n\tconstructor() {}\r\n\r\n\tchanged() {\r\n\t\tthis.changes.emit();\r\n\t}\r\n\r\n\taddFormGroup(root: FieldConfig) {\r\n\t\tconst group = new FieldConfig(\"group\");\r\n\t\tgroup.fields = [];\r\n\t\troot.fields.push(group);\r\n\t\tthis.schema.id = this.schema.id + 1;\r\n\t\treturn group;\r\n\t}\r\n\taddFormArray(root: FieldConfig) {\r\n\t\tconst array = new FieldConfig(\"array\");\r\n\t\tarray.fields = [];\r\n\t\troot.fields.push(array);\r\n\t\treturn array;\r\n\t}\r\n\taddFormControl(root: FieldConfig) {\r\n\t\tconst control = new FieldConfig(\"control\");\r\n\t\troot.fields.push(control);\r\n\t\treturn control;\r\n\t}\r\n\tdeleteFormGroup(idx: number) {\r\n\t\tthis.schema.fields.splice(idx, 1);\r\n\t}\r\n}\r\n","import { Component, OnInit, Input, Output, EventEmitter } from \"@angular/core\";\r\nimport { FieldConfig } from \"../../models\";\r\n\r\n@Component({\r\n\tselector: \"app-form-array\",\r\n\ttemplateUrl: \"./form-array.component.html\"\r\n})\r\nexport class FormArrayComponent {\r\n\t@Input() schema: FieldConfig;\r\n\t@Output() changes = new EventEmitter();\r\n\tconstructor() {}\r\n\r\n\tchanged() {\r\n\t\tthis.changes.emit();\r\n\t}\r\n\r\n\taddFormGroup(root: FieldConfig) {\r\n\t\tconst group = new FieldConfig(\"group\");\r\n\t\tgroup.fields = [];\r\n\t\troot.fields.push(group);\r\n\t\treturn group;\r\n\t}\r\n\taddFormArray(root: FieldConfig) {\r\n\t\tconst array = new FieldConfig(\"array\");\r\n\t\tarray.fields = [];\r\n\t\troot.fields.push(array);\r\n\t\treturn array;\r\n\t}\r\n\taddFormControl(root: FieldConfig) {\r\n\t\tconst control = new FieldConfig(\"control\");\r\n\t\troot.fields.push(control);\r\n\t\treturn control;\r\n\t}\r\n}\r\n","import { Component, OnInit, Input, Output, EventEmitter } from \"@angular/core\";\r\nimport { FormGroup, FormControl, FormArray } from \"@angular/forms\";\r\nimport { FieldConfig } from \"../../models\";\r\n\r\n@Component({\r\n\tselector: \"app-form-control\",\r\n\ttemplateUrl: \"./form-control.component.html\"\r\n})\r\nexport class FormControlComponent {\r\n\t@Input() schema: FieldConfig;\r\n\t@Output() changes = new EventEmitter();\r\n\t@Output() delete = new EventEmitter();\r\n\r\n\twidth = [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ];\r\n\toptions = new FormArray([\r\n\t\tnew FormGroup({\r\n\t\t\tkey: new FormControl(),\r\n\t\t\tvalue: new FormControl()\r\n\t\t})\r\n\t]);\r\n\ttableOptions = new FormGroup({\r\n\t\tdataEndpoint: new FormControl(\"\")\r\n\t});\r\n\tconstructor() {}\r\n\r\n\tchanged() {\r\n\t\tif ([ this.schema.name, this.schema.title, this.schema.inputType ].some(item => !item)) return true;\r\n\t\tif (this.schema.inputType == \"table\") {\r\n\t\t\tthis.schema.options = this.tableOptions.value;\r\n\t\t} else if (this.schema.inputType == \"select\") {\r\n\t\t\tthis.schema.options = this.options.value;\r\n\t\t}\r\n\t\tthis.changes.emit();\r\n\t}\r\n\r\n\taddOption() {\r\n\t\tthis.options.push(\r\n\t\t\tnew FormGroup({\r\n\t\t\t\tkey: new FormControl(),\r\n\t\t\t\tvalue: new FormControl()\r\n\t\t\t})\r\n\t\t);\r\n\t}\r\n\tremoveOption(i) {\r\n\t\tthis.options.controls.splice(i, 1);\r\n\t}\r\n\tinsertOptions() {\r\n\t\tthis.schema.options = this.options.value;\r\n\t}\r\n}\r\n","import { Action } from \"@ngrx/store\";\r\n\r\nimport { FormSchemaModel } from \"../models\";\r\n\r\nexport enum EditFormActionTypes {\r\n\tEDIT_FORM = \"[FORM][EDIT] EDIT_FORM\",\r\n\tEDIT_FORM_START = \"[FORM][EDIT] EDIT_FORM_START\",\r\n\tEDIT_FORM_SUCCEED = \"[FORM][EDIT] EDIT_FORM_SUCCEED\",\r\n\tEDIT_FORM_FAILED = \"[FORM][EDIT] EDIT_FORM_FAILED\"\r\n}\r\n\r\nexport class EditFormAction implements Action {\r\n\treadonly type = EditFormActionTypes.EDIT_FORM;\r\n\tconstructor(public payload: FormSchemaModel) {}\r\n}\r\nexport class EditFormStartAction implements Action {\r\n\treadonly type = EditFormActionTypes.EDIT_FORM_START;\r\n\tconstructor(public payload: FormSchemaModel) {}\r\n}\r\nexport class EditFormSucceedAction implements Action {\r\n\treadonly type = EditFormActionTypes.EDIT_FORM_SUCCEED;\r\n\tconstructor(public payload: FormSchemaModel) {}\r\n}\r\nexport class EditFormFailedAction implements Action {\r\n\treadonly type = EditFormActionTypes.EDIT_FORM_FAILED;\r\n}\r\n\r\nexport type EditFormActions = EditFormAction | EditFormStartAction | EditFormSucceedAction | EditFormFailedAction;\r\n","import { Action } from \"@ngrx/store\";\r\n\r\nimport { FormSchemaModel } from \"../models\";\r\n\r\nexport enum AddFormActionTypes {\r\n\tADD_FORM = \"[FORM][ADD] ADD_FORM_PROFILE\",\r\n\tADD_FORM_START = \"[FORM][ADD] ADD_FORM_START\",\r\n\tADD_FORM_SUCCEED = \"[FORM][ADD] ADD_FORM_SUCCEED\",\r\n\tADD_FORM_FAILED = \"[FORM][ADD] ADD_FORM_FAILED\"\r\n}\r\n\r\nexport class AddFormAction implements Action {\r\n\treadonly type = AddFormActionTypes.ADD_FORM;\r\n\tconstructor(public payload: FormSchemaModel) {}\r\n}\r\nexport class AddFormStartAction implements Action {\r\n\treadonly type = AddFormActionTypes.ADD_FORM_START;\r\n\tconstructor(public payload: FormSchemaModel) {}\r\n}\r\nexport class AddFormSucceedAction implements Action {\r\n\treadonly type = AddFormActionTypes.ADD_FORM_SUCCEED;\r\n}\r\nexport class AddFormFailedAction implements Action {\r\n\treadonly type = AddFormActionTypes.ADD_FORM_FAILED;\r\n}\r\n\r\nexport type AddFormActions = AddFormAction | AddFormStartAction | AddFormSucceedAction | AddFormFailedAction;\r\n","import { Component, OnInit } from \"@angular/core\";\r\nimport { Observable } from \"rxjs/Observable\";\r\nimport { FormGroup, FormControl, Validators } from \"@angular/forms\";\r\nimport { Store } from \"@ngrx/store\";\r\n\r\nimport { MainContainerState } from \"../../main-container/main-container.reducers\";\r\nimport { FormSchemaModel } from \"../../models\";\r\nimport { AddFormAction } from \"../add-form.actions\";\r\nimport { AddFormSchemaAction, UpdateFormSchemaAction } from \"../../list/list.actions\";\r\nimport { FormService } from \"../../services/form.service\";\r\n\r\n@Component({\r\n\ttemplate: `<ngs-form-add \r\n\t\t\t\t\t[schema]=\"schema\" \r\n\t\t\t\t\t(changes)=\"update_schema($event)\" \r\n\t\t\t\t\t(submited)=add($event)\r\n\t\t\t\t></ngs-form-add>`\r\n})\r\nexport class AddFormContainerComponent implements OnInit {\r\n\tschema: FormSchemaModel;\r\n\tconstructor(public store: Store<MainContainerState>, public service: FormService) {}\r\n\tngOnInit() {\r\n\t\tthis.schema = new FormSchemaModel();\r\n\t\tthis.schema.init();\r\n\t\tthis.store.dispatch(new AddFormSchemaAction(this.schema));\r\n\t}\r\n\tadd(form: FormSchemaModel) {\r\n\t\tthis.store.dispatch(new AddFormAction(form));\r\n\t}\r\n\tupdate_schema(form: FormSchemaModel) {\r\n\t\tthis.store.dispatch(new UpdateFormSchemaAction(form));\r\n\t}\r\n}\r\n","import { Component } from \"@angular/core\";\r\nimport { ActivatedRoute } from \"@angular/router\";\r\nimport { FormGroup, FormControl, Validators } from \"@angular/forms\";\r\nimport { Store } from \"@ngrx/store\";\r\n\r\nimport { MainContainerState } from \"../../main-container/main-container.reducers\";\r\nimport { EditFormApiModel } from \"../../models\";\r\nimport { FormService } from \"../../services/form.service\";\r\nimport { EditFormAction } from \"../../edit/edit-form.actions\";\r\nimport { AddFormContainerComponent } from \"../../add/add-form-container\";\r\nimport { GetFormSchemaAction } from \"../../list/list.actions\";\r\n\r\n@Component({\r\n\ttemplate: `<edit-form\r\n\t\t\t\t\t[formGroup]=\"formGroup\"\r\n\t\t\t\t\t[schema]=\"schema\"\r\n\t\t\t\t\t(changes)=\"update_schema($event)\"\r\n\t\t\t\t\t(submited)=\"update($event)\">\r\n\t\t\t\t</edit-form>`\r\n})\r\nexport class EditFormContainerComponent extends AddFormContainerComponent {\r\n\tformGroup = EditFormApiModel.Request.formGroup;\r\n\tconstructor(public service: FormService, private route: ActivatedRoute, public store: Store<MainContainerState>) {\r\n\t\tsuper(store, service);\r\n\t}\r\n\r\n\tngOnInit() {\r\n\t\tthis.route.params\r\n\t\t\t.map((params) => params[\"_id\"])\r\n\t\t\t.subscribe((id) => this.store.dispatch(new GetFormSchemaAction(id)));\r\n\r\n\t\tthis.route.params\r\n\t\t\t.map((params) => params[\"_id\"])\r\n\t\t\t.switchMap((id) => this.service.selectFormById(id))\r\n\t\t\t.filter((data) => data != null)\r\n\t\t\t.take(1)\r\n\t\t\t.subscribe((formSchema) => {\r\n\t\t\t\tthis.schema = formSchema;\r\n\t\t\t\tthis.formGroup.patchValue(formSchema);\r\n\t\t\t});\r\n\t}\r\n\r\n\tupdate(data) {\r\n\t\tthis.store.dispatch(new EditFormAction(data));\r\n\t}\r\n}\r\n","import { Component, OnInit, EventEmitter, Output, Input } from \"@angular/core\";\r\nimport { FormGroup } from \"@angular/forms\";\r\n\r\nimport { FormSchemaModel, AddFormApiModel, FieldConfig } from \"../../models\";\r\n\r\n@Component({\r\n\tselector: \"ngs-form-add\",\r\n\ttemplateUrl: \"./add-form.component.html\"\r\n})\r\nexport class AddFormComponent {\r\n\t@Input() schema: FormSchemaModel;\r\n\t@Input() formGroup = AddFormApiModel.Request.formGroup;\r\n\t@Output() submited = new EventEmitter();\r\n\t@Output() changes = new EventEmitter();\r\n\r\n\temit() {\r\n\t\tthis.formGroup.patchValue({ form: this.schema.form });\r\n\t\tthis.submited.emit(this.formGroup.value);\r\n\t}\r\n\tchanged() {\r\n\t\tthis.formGroup.patchValue({ form: this.schema.form });\r\n\t\tthis.changes.emit(this.formGroup.value);\r\n\t}\r\n\tchangeOrder($event) {}\r\n\r\n\taddFormGroup(root: FieldConfig) {\r\n\t\tconst group = new FieldConfig(\"group\");\r\n\t\tgroup.fields = [];\r\n\t\troot.fields.push(group);\r\n\t\treturn group;\r\n\t}\r\n\taddFormArray(root: FieldConfig) {\r\n\t\tconst array = new FieldConfig(\"array\");\r\n\t\tarray.fields = [];\r\n\t\troot.fields.push(array);\r\n\t\treturn array;\r\n\t}\r\n\taddFormControl(root: FieldConfig) {\r\n\t\tconst control = new FieldConfig(\"control\");\r\n\t\troot.fields.push(control);\r\n\t\treturn control;\r\n\t}\r\n}\r\n","import { Component, OnInit, Input, Output, EventEmitter } from \"@angular/core\";\r\nimport { FormGroup, FormControl, Validators } from \"@angular/forms\";\r\n\r\nimport { AddFormComponent } from \"../../add/add-form\";\r\n\r\n@Component({\r\n selector: \"edit-form\",\r\n templateUrl: \"./edit-form.component.html\",\r\n styleUrls: [\"./edit-form.component.scss\"]\r\n})\r\nexport class EditFormComponent extends AddFormComponent {\r\n @Input() schema: any;\r\n emit() {\r\n if (!this.formGroup.valid) return;\r\n return this.submited.emit(this.formGroup.value);\r\n }\r\n}\r\n","import { Component, OnInit } from \"@angular/core\";\r\nimport { Observable } from \"rxjs/Observable\";\r\nimport { Store } from \"@ngrx/store\";\r\n\r\nimport { MainContainerState } from \"../../main-container\";\r\nimport { FormSchemaModel } from \"../../models\";\r\nimport { FormsListAction } from \"../../list/list.actions\";\r\n\r\n@Component({\r\n\ttemplate: `<form-list\r\n\t\t\t\t\t[data]=\"data$\">\r\n\t\t\t\t</form-list>`\r\n})\r\nexport class FormListContainerComponent implements OnInit {\r\n\tdata$: Observable<FormSchemaModel[]>;\r\n\tconstructor(public store: Store<MainContainerState>) {\r\n\t\tthis.data$ = this.store.select(state => state.form.list.data);\r\n\t}\r\n\tngOnInit() {\r\n\t\tthis.store.dispatch(new FormsListAction());\r\n\t}\r\n}\r\n","import { Component, Input } from \"@angular/core\";\r\nimport { Observable } from \"rxjs/Observable\";\r\n\r\nimport { FormSchemaModel } from \"../../models\";\r\n\r\n@Component({\r\n\tselector: \"form-list\",\r\n\ttemplateUrl: \"./form-list.component.html\",\r\n\tstyleUrls: [\"./form-list.component.scss\"]\r\n})\r\nexport class FormListComponent {\r\n\t// tslint:disable-next-line:no-input-rename\r\n\t@Input(\"data\") data$: Observable<FormSchemaModel[]>;\r\n}\r\n","import { Component, OnInit } from \"@angular/core\";\r\n\r\nimport * as MainContainerReducer from \"../../main-container/main-container.reducers\";\r\nimport { Store } from \"@ngrx/store\";\r\nimport { ActivatedRoute } from \"@angular/router\";\r\n\r\n@Component({\r\n\ttemplate: \"<router-outlet></router-outlet>\",\r\n})\r\nexport class MainContainerComponent {\r\n\tconstructor(private route: ActivatedRoute, private store: Store<MainContainerReducer.MainContainerState>) { }\r\n}\r\n","import \"rxjs/add/operator/map\";\r\nimport \"rxjs/add/operator/mergeMap\";\r\nimport \"rxjs/add/operator/switchMap\";\r\n\r\nimport { Injectable } from \"@angular/core\";\r\nimport { Router } from \"@angular/router\";\r\nimport { Observable } from \"rxjs/Observable\";\r\nimport { Action } from \"@ngrx/store\";\r\nimport { Actions, Effect, ofType } from \"@ngrx/effects\";\r\nimport { of } from \"rxjs/observable/of\";\r\nimport { Store } from \"@ngrx/store\";\r\n\r\nimport { FormService } from \"../services/form.service\";\r\nimport { AddFormApiModel } from \"../models\";\r\nimport { AddFormActionTypes, AddFormStartAction, AddFormSucceedAction, AddFormFailedAction } from \"./add-form.actions\";\r\nimport { map, switchMap, catchError } from \"rxjs/operators\";\r\n\r\n@Injectable()\r\nexport class AddFormEffects {\r\n\tconstructor(private actions$: Actions<any>, private router: Router, private service: FormService) {}\r\n\r\n\t@Effect()\r\n\tAddForm$ = this.actions$.pipe(\r\n\t\tofType<any>(AddFormActionTypes.ADD_FORM),\r\n\t\tmap(action => action.payload),\r\n\t\tmap(data => new AddFormStartAction(data))\r\n\t);\r\n\r\n\t@Effect()\r\n\tAddFormStart$ = this.actions$.pipe(\r\n\t\tofType<any>(AddFormActionTypes.ADD_FORM_START),\r\n\t\tmap(action => action.payload),\r\n\t\tswitchMap((data: AddFormApiModel.Request) => this.service.add(data)),\r\n\t\tmap(res => new AddFormSucceedAction()),\r\n\t\tcatchError(() => of(new AddFormFailedAction()))\r\n\t);\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { Router } from \"@angular/router\";\r\nimport { Observable } from \"rxjs/Observable\";\r\nimport { Action } from \"@ngrx/store\";\r\nimport { Actions, Effect, ofType } from \"@ngrx/effects\";\r\nimport { of } from \"rxjs/observable/of\";\r\nimport { Store } from \"@ngrx/store\";\r\nimport { switchMap, map, catchError } from \"rxjs/operators\";\r\n\r\nimport { FormService } from \"../services/form.service\";\r\nimport { FormSchemaModel } from \"../models\";\r\nimport {\r\n\tFormsListAction,\r\n\tFormsListActionTypes,\r\n\tFormsListActions,\r\n\tFormsListFailedAction,\r\n\tFormsListStartAction,\r\n\tFormsListSucceedAction,\r\n\tFormSchemaFechedAction\r\n} from \"./list.actions\";\r\n\r\n@Injectable()\r\nexport class FormsListEffects {\r\n\tconstructor(private actions$: Actions<any>, private router: Router, private service: FormService) {}\r\n\r\n\t@Effect()\r\n\tEditProfileRequest$ = this.actions$.pipe(\r\n\t\tofType<any>(FormsListActionTypes.FORMS_LIST),\r\n\t\tmap(data => new FormsListStartAction())\r\n\t);\r\n\r\n\t@Effect()\r\n\tGetForm$ = this.actions$.pipe(\r\n\t\tofType<any>(FormsListActionTypes.GET_FORM_SCHEMA),\r\n\t\tmap(action => action.payload),\r\n\t\tswitchMap(id => this.service.get(id)),\r\n\t\tmap(formSchema => new FormSchemaFechedAction(formSchema))\r\n\t);\r\n\r\n\t@Effect()\r\n\tget_forms_list$ = this.actions$.pipe(\r\n\t\tofType(FormsListActionTypes.FORMS_LIST_START),\r\n\t\tswitchMap((data: any) => this.service.getList()),\r\n\t\tmap(res => new FormsListSucceedAction(res)),\r\n\t\tcatchError(() => of(new FormsListFailedAction()))\r\n\t);\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { Router } from \"@angular/router\";\r\nimport { Observable } from \"rxjs/Observable\";\r\nimport { Action } from \"@ngrx/store\";\r\nimport { Actions, Effect, ofType } from \"@ngrx/effects\";\r\nimport { of } from \"rxjs/observable/of\";\r\nimport { Store } from \"@ngrx/store\";\r\n\r\nimport { FormService } from \"../services/form.service\";\r\nimport { EditFormApiModel } from \"../models\";\r\nimport {\r\n\tEditFormActionTypes,\r\n\tEditFormStartAction,\r\n\tEditFormSucceedAction,\r\n\tEditFormFailedAction\r\n} from \"./edit-form.actions\";\r\nimport { UpdateFormSchemaAction } from \"../list\";\r\nimport { map, switchMap, catchError } from \"rxjs/operators\";\r\n\r\n@Injectable()\r\nexport class EditFormEffects {\r\n\tconstructor(private actions$: Actions<any>, private router: Router, private service: FormService) {}\r\n\r\n\t@Effect()\r\n\tEditForm$ = this.actions$.pipe(\r\n\t\tofType<any>(EditFormActionTypes.EDIT_FORM),\r\n\t\tmap(action => action.payload),\r\n\t\tmap(data => new EditFormStartAction(data))\r\n\t);\r\n\r\n\t@Effect()\r\n\tEditFormStart$ = this.actions$.pipe(\r\n\t\tofType<any>(EditFormActionTypes.EDIT_FORM_START),\r\n\t\tmap(action => action.payload),\r\n\t\tswitchMap((data: EditFormApiModel.Request) => this.service.update(data)),\r\n\t\tmap(formSchema => new EditFormSucceedAction(formSchema)),\r\n\t\tcatchError(() => of(new EditFormFailedAction()))\r\n\t);\r\n\r\n\t@Effect()\r\n\tUpdateFormsListStart$ = this.actions$.pipe(\r\n\t\tofType<any>(EditFormActionTypes.EDIT_FORM_SUCCEED),\r\n\t\tmap(action => action.payload),\r\n\t\tmap(formSchema => new UpdateFormSchemaAction(formSchema))\r\n\t);\r\n}\r\n","import { ModuleWithProviders } from \"@angular/core\";\r\nimport { RouterModule, Routes } from \"@angular/router\";\r\n\r\nimport { MainContainerComponent } from \"./main-container/main-container.component/main-container.component\";\r\nimport { EditFormContainerComponent } from \"./edit/edit-form-container/edit-form-container.component\";\r\nimport { AddFormContainerComponent } from \"./add/add-form-container/add-form-container.component\";\r\nimport { FormListContainerComponent } from \"./list/form-list-container/form-list.container.component\";\r\n\r\nconst routes: Routes = [\r\n\t{\r\n\t\tpath: \"form\",\r\n\t\tcomponent: MainContainerComponent,\r\n\t\tchildren: [\r\n\t\t\t{\r\n\t\t\t\tpath: \"add\",\r\n\t\t\t\tcomponent: AddFormContainerComponent\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"edit/:_id\",\r\n\t\t\t\tcomponent: EditFormContainerComponent\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: \"\",\r\n\t\t\t\tcomponent: FormListContainerComponent\r\n\t\t\t}\r\n\t\t]\r\n\t}\r\n];\r\n\r\nexport const RoutingModule: ModuleWithProviders = RouterModule.forChild(routes);\r\n","import { Action } from \"@ngrx/store\";\r\n\r\nimport { FormSchemaModel } from \"../models\";\r\nimport { CaptchaModel } from \"../models/captcha.model\";\r\n\r\nexport enum CaptchaActionTypes {\r\n\tGET_CAPTCHA = \"[CAPTCHA][GET] GET_CAPTCHA\",\r\n\tGET_CAPTCHA_START = \"[CAPTCHA][GET] GET_CAPTCHA_START\",\r\n\tGET_CAPTCHA_SUCCEED = \"[CAPTCHA][GET] GET_CAPTCHA_SUCCEED\",\r\n\tGET_CAPTCHA_FAILED = \"[CAPTCHA][GET] GET_CAPTCHA_FAILED\"\r\n}\r\n\r\nexport class GetCaptchaAction implements Action {\r\n\treadonly type = CaptchaActionTypes.GET_CAPTCHA;\r\n\t// constructor(public payload: CaptchaModel) { }\r\n}\r\nexport class GetCaptchaStartAction implements Action {\r\n\treadonly type = CaptchaActionTypes.GET_CAPTCHA_START;\r\n\tconstructor(public payload: CaptchaModel) { }\r\n}\r\nexport class GetCaptchaSucceedAction implements Action {\r\n\treadonly type = CaptchaActionTypes.GET_CAPTCHA_SUCCEED;\r\n}\r\nexport class GetCaptchaFailedAction implements Action {\r\n\treadonly type = CaptchaActionTypes.GET_CAPTCHA_FAILED;\r\n}\r\n\r\nexport type CaptchaActions = GetCaptchaAction | GetCaptchaStartAction | GetCaptchaSucceedAction | GetCaptchaFailedAction;\r\n","import \"rxjs/add/operator/map\";\r\nimport \"rxjs/add/operator/mergeMap\";\r\nimport \"rxjs/add/operator/switchMap\";\r\n\r\nimport { Injectable } from \"@angular/core\";\r\nimport { Router } from \"@angular/router\";\r\nimport { Observable } from \"rxjs/Observable\";\r\nimport { Action } from \"@ngrx/store\";\r\nimport { Actions, Effect, ofType } from \"@ngrx/effects\";\r\nimport { of } from \"rxjs/observable/of\";\r\nimport { Store } from \"@ngrx/store\";\r\n\r\nimport { FormService } from \"../services/form.service\";\r\nimport { AddFormApiModel } from \"../models\";\r\nimport {\r\n\tCaptchaActionTypes,\r\n\tGetCaptchaSucceedAction,\r\n\tGetCaptchaFailedAction,\r\n\tGetCaptchaStartAction\r\n} from \"./captcha.actions\";\r\nimport { map, switchMap, catchError } from \"rxjs/operators\";\r\nimport { FormCaptchaService } from \"../services/form-captcha.service\";\r\n\r\n@Injectable()\r\nexport class CaptchaEffects {\r\n\tconstructor(private actions$: Actions<any>, private router: Router, private service: FormCaptchaService) {}\r\n\r\n\t@Effect()\r\n\tGetCaptcha$ = this.actions$.pipe(\r\n\t\tofType<any>(CaptchaActionTypes.GET_CAPTCHA),\r\n\t\tmap(action => action.payload),\r\n\t\tmap(data => new GetCaptchaStartAction(data))\r\n\t);\r\n\r\n\t@Effect()\r\n\tAddFormStart$ = this.actions$.pipe(\r\n\t\tofType<any>(CaptchaActionTypes.GET_CAPTCHA_START),\r\n\t\tmap(action => action.payload),\r\n\t\tswitchMap((data: AddFormApiModel.Request) => this.service.getCaptcha()),\r\n\t\tmap(res => new GetCaptchaSucceedAction()),\r\n\t\tcatchError(() => of(new GetCaptchaFailedAction()))\r\n\t);\r\n}\r\n","import { NgModule, ModuleWithProviders } from \"@angular/core\";\r\nimport { CommonModule } from \"@angular/common\";\r\nimport { RouterModule, Routes } from \"@angular/router\";\r\nimport { FormsModule, ReactiveFormsModule } from \"@angular/forms\";\r\nimport { HttpClientModule } from \"@angular/common/http\";\r\nimport { FlexLayoutModule } from \"@angular/flex-layout\";\r\nimport {\r\n\tMatExpansionModule,\r\n\tMatSnackBarModule,\r\n\tMatIconModule,\r\n\tMatButtonModule,\r\n\tMatCardModule,\r\n\tMatSelectModule,\r\n\tMatInputModule,\r\n\tMatFormFieldModule,\r\n\tMatTabsModule,\r\n\tMatRadioModule,\r\n\tMatSlideToggleModule,\r\n\tMatDividerModule,\r\n\tMatCheckboxModule,\r\n\tMatTableModule,\r\n\tMatDatepickerModule\r\n} from \"@angular/material\";\r\nimport { StoreModule } from \"@ngrx/store\";\r\nimport { EffectsModule, mergeEffects } from \"@ngrx/effects\";\r\n\r\nimport { FormModuleConfig, MODULE_CONFIG_TOKEN, MODULE_DEFAULT_CONFIG } from \"./form.config\";\r\nimport { FormReducers } from \"./main-container/main-container.reducers\";\r\nimport { SelectComponent } from \"./view/form-controls/select/select.component\";\r\nimport { FormGroupComponent } from \"./add/form-group/form-group.component\";\r\nimport { FormArrayComponent } from \"./add/form-array/form-array.component\";\r\nimport { FormControlComponent } from \"./add/form-control/form-control.component\";\r\nimport { FormViewComponent, DynamicFieldDirective } from \"./view/form-view/form-view.component\";\r\nimport { TextComponent } from \"./view/form-controls/text/text.component\";\r\nimport { CheckboxComponent } from \"./view/form-controls/checkbox/checkbox.component\";\r\nimport { EmailComponent } from \"./view/form-controls/email/email.component\";\r\nimport { ColorComponent } from \"./view/form-controls/color/color.component\";\r\nimport { NumberComponent } from \"./view/form-controls/number/number.component\";\r\nimport { TableComponent } from \"./view/form-controls/table/table.component\";\r\nimport { EditFormContainerComponent } from \"./edit/edit-form-container/edit-form-container.component\";\r\nimport { EditFormComponent } from \"./edit/edit-form/edit-form.component\";\r\nimport { FormListContainerComponent } from \"./list/form-list-container/form-list.container.component\";\r\nimport { FormListComponent } from \"./list/form-list/form-list.component\";\r\nimport { AddFormContainerComponent } from \"./add/add-form-container/add-form-container.component\";\r\nimport { MainContainerComponent } from \"./main-container/main-container.component/main-container.component\";\r\nimport { AddFormComponent } from \"./add/add-form/add-form.component\";\r\nimport { AddFormEffects } from \"./add/add-form.effects\";\r\nimport { EditFormEffects } from \"./edit/edit-form.effects\";\r\nimport { FormsListEffects } from \"./list/list.effects\";\r\nimport { RoutingModule } from \"./form-routing.module\";\r\nimport { DateFormInputControlComponent } from \"./view/form-controls/date/date.component\";\r\nimport { FileFormInputControlComponent } from \"./view/form-controls/file/file.component\";\r\nimport { CaptchaEffects } from \"./add/captcha.effects\";\r\nimport { FormCaptchaComponent } from \"./view/form-controls/form-captcha/form-captcha.component\";\r\nimport { FormConfigurationService } from \"./services/form-configuration.service\";\r\n\r\n@NgModule({\r\n\timports: [\r\n\t\tHttpClientModule,\r\n\t\tFormsModule,\r\n\t\tRouterModule,\r\n\t\tCommonModule,\r\n\t\tMatExpansionModule,\r\n\t\tMatSnackBarModule,\r\n\t\tMatIconModule,\r\n\t\tMatDatepickerModule,\r\n\t\tMatButtonModule,\r\n\t\tMatCardModule,\r\n\t\tMatCheckboxModule,\r\n\t\tMatTableModule,\r\n\t\tMatSelectModule,\r\n\t\tMatInputModule,\r\n\t\tMatFormFieldModule,\r\n\t\tMatTabsModule,\r\n\t\tMatDividerModule,\r\n\t\tFlexLayoutModule,\r\n\t\tMatRadioModule,\r\n\t\tMatSlideToggleModule,\r\n\t\tReactiveFormsModule\r\n\t],\r\n\tdeclarations: [\r\n\t\tEditFormContainerComponent,\r\n\t\tEditFormComponent,\r\n\t\tFormListContainerComponent,\r\n\t\tFormListComponent,\r\n\t\tAddFormContainerComponent,\r\n\t\tMainContainerComponent,\r\n\t\tAddFormComponent,\r\n\t\tFormGroupComponent,\r\n\t\tFormArrayComponent,\r\n\t\tFormControlComponent,\r\n\t\tFormViewComponent,\r\n\t\tDynamicFieldDirective,\r\n\t\tSelectComponent,\r\n\t\tCheckboxComponent,\r\n\t\tEmailComponent,\r\n\t\tColorComponent,\r\n\t\tDateFormInputControlComponent,\r\n\t\tFileFormInputControlComponent,\r\n\t\tTextComponent,\r\n\t\tNumberComponent,\r\n\t\tTableComponent,\r\n\t\tFormCaptchaComponent\r\n\t\t// NgsFormSelectorComponent\r\n\t],\r\n\tentryComponents: [\r\n\t\tSelectComponent,\r\n\t\tCheckboxComponent,\r\n\t\tEmailComponent,\r\n\t\tColorComponent,\r\n\t\tDateFormInputControlComponent,\r\n\t\tFileFormInputControlComponent,\r\n\t\tTextComponent,\r\n\t\tNumberComponent,\r\n\t\tTableComponent,\r\n\t\tFormCaptchaComponent\r\n\t],\r\n\texports: [FormViewComponent]\r\n\t// exports: [ FormViewComponent, NgsFormSelectorComponent ]\r\n})\r\nexport class NgsFormModule {\r\n\tstatic forRoot(config?: FormModuleConfig): ModuleWithProviders {\r\n\t\treturn {\r\n\t\t\tngModule: RootNgsFormModule,\r\n\t\t\tproviders: [{ provide: MODULE_CONFIG_TOKEN, useValue: config }, FormConfigurationService]\r\n\t\t};\r\n\t}\r\n}\r\n\r\n@NgModule({\r\n\timports: [\r\n\t\tNgsFormModule,\r\n\t\tStoreModule.forFeature(\"form\", FormReducers),\r\n\t\tEffectsModule.forFeature([AddFormEffects, EditFormEffects, FormsListEffects, CaptchaEffects]),\r\n\t\tRoutingModule\r\n\t],\r\n\texports: [NgsFormModule]\r\n})\r\nexport class RootNgsFormModule {\r\n\tconstructor() {\r\n\t\t(<any>window).___starter = (<any>window).___starter || {};\r\n\t\t(<any>window).___starter.form = \"8.0.11\";\r\n\t}\r\n}\r\n"],"names":["FormGroup","FormControl","Validators","InjectionToken","BehaviorSubject","getFormModuleConfig","Injectable","Inject","Store","stringTemplate","filter","map","HttpClient","Component","Input","SelectionModel","MatTableDataSource","take","switchMap","Subject","EventEmitter","takeUntil","FormArray","Compiler","ComponentFactoryResolver","Output","Directive","ViewContainerRef","list.reducer","tslib_1.__extends","ActivatedRoute","ofType","catchError","of","Actions","Router","tslib_1.__decorate","Effect","RouterModule","NgModule","HttpClientModule","FormsModule","CommonModule","MatExpansionModule","MatSnackBarModule","MatIconModule","MatDatepickerModule","MatButtonModule","MatCardModule","MatCheckboxModule","MatTableModule","MatSelectModule","MatInputModule","MatFormFieldModule","MatTabsModule","MatDividerModule","FlexLayoutModule","MatRadioModule","MatSlideToggleModule","ReactiveFormsModule","StoreModule","EffectsModule"],"mappings":"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"}
\No newline at end of file