monkey-front-components 0.0.113 → 0.0.117
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundles/monkey-front-components.umd.js +45 -14
- package/bundles/monkey-front-components.umd.js.map +1 -1
- package/esm2015/lib/components/base/base-dynamic-array.js +29 -3
- package/esm2015/lib/components/dynamic/dynamic-directive.js +15 -12
- package/esm2015/lib/components/dynamic/input/input.component.js +1 -1
- package/fesm2015/monkey-front-components.js +43 -14
- package/fesm2015/monkey-front-components.js.map +1 -1
- package/lib/components/base/base-dynamic-array.d.ts +1 -0
- package/lib/components/dynamic/dynamic-directive.d.ts +1 -0
- package/monkey-front-components-0.0.117.tgz +0 -0
- package/package.json +3 -3
- package/monkey-front-components-0.0.113.tgz +0 -0
|
@@ -751,6 +751,7 @@
|
|
|
751
751
|
_this._plusValidations[rowIndex] = (_b = {},
|
|
752
752
|
_b[sourceField] = Object.assign(Object.assign({}, valSaved), { alwaysShow: show }),
|
|
753
753
|
_b);
|
|
754
|
+
_this.createOneControl(val.name, _this.formValues.controls[rowIndex], show);
|
|
754
755
|
}
|
|
755
756
|
else {
|
|
756
757
|
_this._plusValidations[rowIndex] = Object.assign({}, valSaved);
|
|
@@ -761,6 +762,33 @@
|
|
|
761
762
|
var validated = validators[operator](data, value);
|
|
762
763
|
changeFields(validated);
|
|
763
764
|
};
|
|
765
|
+
BaseDynamicArray.prototype.createOneControl = function (fieldName, ctrl, create) {
|
|
766
|
+
var _this = this;
|
|
767
|
+
if (create === void 0) { create = true; }
|
|
768
|
+
var fields = this.fields;
|
|
769
|
+
if (!fields)
|
|
770
|
+
return;
|
|
771
|
+
fields.forEach(function (field) {
|
|
772
|
+
var fieldType = field.fieldType, validations = field.validations, name = field.name, disabled = field.disabled;
|
|
773
|
+
if (name !== fieldName)
|
|
774
|
+
return;
|
|
775
|
+
var value = field.value;
|
|
776
|
+
if (fieldType === 'button')
|
|
777
|
+
return;
|
|
778
|
+
if (fieldType === 'radiobutton' || fieldType === 'checkbox' || fieldType === 'select') {
|
|
779
|
+
value = '';
|
|
780
|
+
}
|
|
781
|
+
if (create && !ctrl.controls[name]) {
|
|
782
|
+
var control = _this.fb.control(value, _this.bindValidations(validations || []));
|
|
783
|
+
if (disabled || _this.disabled)
|
|
784
|
+
control.disable();
|
|
785
|
+
ctrl.addControl(name, control);
|
|
786
|
+
}
|
|
787
|
+
else {
|
|
788
|
+
ctrl.removeControl(name);
|
|
789
|
+
}
|
|
790
|
+
});
|
|
791
|
+
};
|
|
764
792
|
BaseDynamicArray.prototype.createControl = function () {
|
|
765
793
|
var _this = this;
|
|
766
794
|
var fields = this.fields;
|
|
@@ -769,9 +797,9 @@
|
|
|
769
797
|
// eslint-disable-next-line object-curly-newline
|
|
770
798
|
var group = this.fb.group({});
|
|
771
799
|
fields.forEach(function (field) {
|
|
772
|
-
var fieldType = field.fieldType, validations = field.validations, name = field.name, disabled = field.disabled;
|
|
800
|
+
var fieldType = field.fieldType, validations = field.validations, name = field.name, disabled = field.disabled, alwaysShow = field.alwaysShow;
|
|
773
801
|
var value = field.value;
|
|
774
|
-
if (fieldType === 'button')
|
|
802
|
+
if (fieldType === 'button' || !alwaysShow)
|
|
775
803
|
return;
|
|
776
804
|
if (fieldType === 'radiobutton' || fieldType === 'checkbox' || fieldType === 'select') {
|
|
777
805
|
value = '';
|
|
@@ -1048,7 +1076,7 @@
|
|
|
1048
1076
|
return MECXDynamicInputComponent;
|
|
1049
1077
|
}());
|
|
1050
1078
|
MECXDynamicInputComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.4", ngImport: i0__namespace, type: MECXDynamicInputComponent, deps: [{ token: i0__namespace.ChangeDetectorRef }], target: i0__namespace.ɵɵFactoryTarget.Component });
|
|
1051
|
-
MECXDynamicInputComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.4", type: MECXDynamicInputComponent, selector: "mecx-dynamic-input", inputs: { _field: "_field", _form: "_form", _formErrors: "_formErrors", self: "self" }, host: { properties: { "class": "this.className" } }, viewQueries: [{ propertyName: "inputElement", first: true, predicate: ["inputElement"], descendants: true, static: true }], usesOnChanges: true, ngImport: i0__namespace, template: "<monkey-input\n errorMessage=\"{{ _formErrors[_field?.name]?.firstMessage | translate }} {{ _formErrors[_field?.name]?.lastMessage }}\"\n [mask]=\"_field?.mask\" [prefix]=\"_field?.prefix\" [name]=\"_field?.name\"\n [formControl]=\"_form.controls[_field?.name]\" [placeholder]=\"_field?.placeholder | translate\"\n [helperMessage]=\"_field?.helperMessage | translate\" [label]=\"_field?.label | translate\"\n [type]=\"_field?.type\" #inputElement (onChange)=\"onChange($event)\"\n [onlyNumber]=\"_field?.onlyNumber\" [currency]=\"_field?.currency\" [maxLength]=\"_field?.maxLength\"\n [maxDateToday]=\"_field?.maxDateToday\">\n</monkey-input>", components: [{ type: i1__namespace$1.MonkeyInputComponent, selector: "monkey-input", inputs: ["name", "helperMessage", "placeholder", "maxLength", "maxDateToday", "value", "type", "label", "icon", "infoMessage", "errorMessage", "mask", "prefix", "onlyNumber", "onlyAlphaNumeric", "upperCase", "lowerCase", "capitalize", "currency"], outputs: ["onChange"] }], directives: [{ type: i1__namespace.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i1__namespace.FormControlDirective, selector: "[formControl]", inputs: ["disabled", "formControl", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }], pipes: { "translate": i4__namespace.TranslatePipe }, encapsulation: i0__namespace.ViewEncapsulation.None });
|
|
1079
|
+
MECXDynamicInputComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.4", type: MECXDynamicInputComponent, selector: "mecx-dynamic-input", inputs: { _field: "_field", _form: "_form", _formErrors: "_formErrors", self: "self" }, host: { properties: { "class": "this.className" } }, viewQueries: [{ propertyName: "inputElement", first: true, predicate: ["inputElement"], descendants: true, static: true }], usesOnChanges: true, ngImport: i0__namespace, template: "<monkey-input\n errorMessage=\"{{ _formErrors[_field?.name]?.firstMessage | translate }} {{ _formErrors[_field?.name]?.lastMessage }}\"\n [mask]=\"_field?.mask\" [prefix]=\"_field?.prefix\" [name]=\"_field?.name\"\n [formControl]=\"_form.controls[_field?.name]\" [placeholder]=\"_field?.placeholder | translate\"\n [helperMessage]=\"_field?.helperMessage | translate\" [label]=\"_field?.label | translate\"\n [type]=\"_field?.type\" #inputElement (onChange)=\"onChange($event)\"\n [onlyNumber]=\"_field?.onlyNumber\" [currency]=\"_field?.currency\" [maxLength]=\"_field?.maxLength\"\n [maxDateToday]=\"_field?.maxDateToday\">\n</monkey-input>", components: [{ type: i1__namespace$1.MonkeyInputComponent, selector: "monkey-input", inputs: ["name", "helperMessage", "placeholder", "maxLength", "maxDateToday", "value", "type", "label", "icon", "infoMessage", "errorMessage", "mask", "prefix", "onlyNumber", "onlyAlphaNumeric", "upperCase", "lowerCase", "capitalize", "currency", "percent"], outputs: ["onChange"] }], directives: [{ type: i1__namespace.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i1__namespace.FormControlDirective, selector: "[formControl]", inputs: ["disabled", "formControl", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }], pipes: { "translate": i4__namespace.TranslatePipe }, encapsulation: i0__namespace.ViewEncapsulation.None });
|
|
1052
1080
|
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.4", ngImport: i0__namespace, type: MECXDynamicInputComponent, decorators: [{
|
|
1053
1081
|
type: i0.Component,
|
|
1054
1082
|
args: [{
|
|
@@ -1264,6 +1292,19 @@
|
|
|
1264
1292
|
this.container = container;
|
|
1265
1293
|
// not to do
|
|
1266
1294
|
}
|
|
1295
|
+
MECXDynamicDirective.prototype.handleInternalPlusValidation = function () {
|
|
1296
|
+
var _a, _b;
|
|
1297
|
+
if (!((_a = this.field) === null || _a === void 0 ? void 0 : _a.alwaysShowPlusValidation))
|
|
1298
|
+
return false;
|
|
1299
|
+
var _c = (_b = this.field) === null || _b === void 0 ? void 0 : _b.alwaysShowPlusValidation, operator = _c.operator, value = _c.value, field = _c.field;
|
|
1300
|
+
var validators = {
|
|
1301
|
+
e: function (val1, val2) { return val1 === val2; },
|
|
1302
|
+
lt: function (val1, val2) { return val1 < val2; },
|
|
1303
|
+
gt: function (val1, val2) { return val1 > val2; }
|
|
1304
|
+
};
|
|
1305
|
+
var data = this.form.controls[field].value;
|
|
1306
|
+
return validators[operator](data, value);
|
|
1307
|
+
};
|
|
1267
1308
|
MECXDynamicDirective.prototype.buildComponent = function () {
|
|
1268
1309
|
var _a;
|
|
1269
1310
|
if ((_a = this.componentRef) === null || _a === void 0 ? void 0 : _a.instance)
|
|
@@ -1277,17 +1318,7 @@
|
|
|
1277
1318
|
this.componentRef.instance.self = this.self;
|
|
1278
1319
|
};
|
|
1279
1320
|
MECXDynamicDirective.prototype.ngOnInit = function () {
|
|
1280
|
-
|
|
1281
|
-
console.log('======!!');
|
|
1282
|
-
console.log(this.field.alwaysShow);
|
|
1283
|
-
console.log((_a = this.field) === null || _a === void 0 ? void 0 : _a.name);
|
|
1284
|
-
console.log(this.form.controls[(_b = this.field) === null || _b === void 0 ? void 0 : _b.name].value);
|
|
1285
|
-
console.log(!!this.form.controls[(_c = this.field) === null || _c === void 0 ? void 0 : _c.name].value);
|
|
1286
|
-
console.log(!this.form.controls[(_d = this.field) === null || _d === void 0 ? void 0 : _d.name].value);
|
|
1287
|
-
console.log('======!!22');
|
|
1288
|
-
console.log(this.plusValidations[this.field.name].alwaysShow);
|
|
1289
|
-
console.log('======!!');
|
|
1290
|
-
if (!this.field.alwaysShow && !this.form.controls[(_e = this.field) === null || _e === void 0 ? void 0 : _e.name].value)
|
|
1321
|
+
if (!this.field.alwaysShow && !this.handleInternalPlusValidation())
|
|
1291
1322
|
return;
|
|
1292
1323
|
this.buildComponent();
|
|
1293
1324
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"monkey-front-components.umd.js","sources":["../../../node_modules/tslib/tslib.es6.js","../../../projects/monkey-front-components/src/lib/components/base/base-component.ts","../../../projects/monkey-front-components/src/lib/components/base/base-validators.ts","../../../projects/monkey-front-components/src/lib/components/base/base-dynamic.ts","../../../projects/monkey-front-components/src/lib/components/base/base-dynamic-array.ts","../../../projects/monkey-front-components/src/lib/components/dynamic/file-upload/file-upload.component.ts","../../../projects/monkey-front-components/src/lib/components/dynamic/file-upload/file-upload.component.html","../../../projects/monkey-front-components/src/lib/components/dynamic/button/button.component.ts","../../../projects/monkey-front-components/src/lib/components/dynamic/button/button.component.html","../../../projects/monkey-front-components/src/lib/components/dynamic/input/input.component.ts","../../../projects/monkey-front-components/src/lib/components/dynamic/input/input.component.html","../../../projects/monkey-front-components/src/lib/components/dynamic/radio/radio.component.ts","../../../projects/monkey-front-components/src/lib/components/dynamic/radio/radio.component.html","../../../projects/monkey-front-components/src/lib/components/dynamic/select/select.component.ts","../../../projects/monkey-front-components/src/lib/components/dynamic/select/select.component.html","../../../projects/monkey-front-components/src/lib/components/dynamic/select-search/select-search.component.ts","../../../projects/monkey-front-components/src/lib/components/dynamic/select-search/select-search.component.html","../../../projects/monkey-front-components/src/lib/components/dynamic/dynamic-directive.ts","../../../projects/monkey-front-components/src/lib/components/dynamic/form/dynamic-form.component.ts","../../../projects/monkey-front-components/src/lib/components/dynamic/form/dynamic-form.component.html","../../../projects/monkey-front-components/src/lib/components/dynamic/form/dynamic-form-array.component.ts","../../../projects/monkey-front-components/src/lib/components/dynamic/form/dynamic-form-array.component.html","../../../projects/monkey-front-components/src/lib/components/dynamic/dynamic.module.ts","../../../projects/monkey-front-components/src/public-api.ts","../../../projects/monkey-front-components/src/monkey-front-components.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\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 (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\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 function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\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) : adopt(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 var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") 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 throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\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\n/** @deprecated */\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\n/** @deprecated */\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 __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || from);\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\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\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 (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, 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\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n 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\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n 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\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n","/* eslint-disable max-len */\nimport { AbstractControl, FormGroup } from '@angular/forms';\nimport { Subject } from 'rxjs';\nimport { OnDestroy, Directive } from '@angular/core';\nimport { takeUntil } from 'rxjs/operators';\nimport { MonkeyUtils } from 'monkey-style-guide';\nimport {\n MonkeyEcxCommonsService,\n MonkeyEcxErrorResponse,\n MonkeyEcxMonkeyIntercomOptions,\n MonkeyEcxPaginationOptions,\n MonkeyEcxTranslateOptions\n} from 'monkey-front-core';\n\n@Directive({\n selector: '[baseComponent]'\n})\nexport abstract class BaseComponent implements OnDestroy {\n __monkeyexcFormErrors: any | any[];\n\n __unsubscribeAll: Subject<any>;\n\n __paginationOptions: MonkeyEcxPaginationOptions;\n\n __i18n: any;\n\n private paginationFunc: any;\n\n protected constructor() {\n this.__unsubscribeAll = new Subject();\n }\n\n private handlePagination(create = true) {\n const { __paginationOptions } = this;\n if (__paginationOptions) {\n const { mainElement, service } = __paginationOptions;\n setTimeout(() => {\n const element = document.getElementById(mainElement);\n if (element) {\n element.scroll = null;\n element.onscroll = null;\n if (create) {\n this.paginationFunc = () => {\n const { scrollTop, scrollHeight, offsetHeight } = element;\n const contentHeight = scrollHeight - offsetHeight;\n if (contentHeight <= scrollTop) {\n service.__onDoPagination$.next(null);\n }\n };\n element.addEventListener('scroll', this.paginationFunc);\n } else {\n element.removeEventListener('scroll', this.paginationFunc);\n }\n }\n }, 200);\n }\n }\n\n private handleIntercom(intercomControls: MonkeyEcxMonkeyIntercomOptions) {\n const { service, show } = intercomControls;\n const method = show ? 'show' : 'hide';\n service[method.toLowerCase()]();\n }\n\n private handleTranslate(translateOptions: MonkeyEcxTranslateOptions) {\n const { service } = translateOptions;\n service.__oni18nDataChanged$\n .pipe(takeUntil(this.__unsubscribeAll))\n .subscribe(() => {\n const data = service.__i18n;\n if (data) {\n this.__i18n = data;\n }\n });\n }\n\n private getErrorFirstMessageTranslated(formControl: AbstractControl) {\n if (formControl.hasError('required')) return 'FIELD-REQUIRED';\n if (formControl.hasError('invalid')) return 'FIELD-INVALID';\n if (formControl.hasError('email')) return 'INVALID-EMAIL';\n if (formControl.hasError('minlength')) return 'MIN-LENGTH';\n if (formControl.hasError('maxlength')) return 'MAX-LENGTH';\n if (formControl.hasError('max')) return 'MAX';\n if (formControl.hasError('min')) return 'MIN';\n if (formControl.hasError('passwordsNotMatching')) return 'MATCH-PASSWORD';\n if (formControl.hasError('invalidDate')) return 'INVALID-DATE';\n if (formControl.hasError('invalidTrue')) return 'INVALID-TRUE';\n if (formControl.hasError('invalidCpfCnpj')) return 'INVALID-DOCUMENT';\n if (formControl.hasError('invalidZipCode')) return 'INVALID-ZIPCODE';\n if (formControl.hasError('invalidCombo')) return 'INVALID-COMBO';\n if (formControl.hasError('invalidUrl')) return 'INVALID-URL';\n if (formControl.hasError('invalidUnlockRegister')) { return 'INVALID-UNLOCK-REGISTER'; }\n if (formControl.hasError('dateStartMustBeLessThanAnd')) {\n return 'DATE-START-MUST-BE-LESS-THAN-AND';\n }\n if (formControl.hasError('dateEndMustBeGreaterThanStart')) {\n return 'DATE-END-MUST-BE-GREATER-THAN-SART';\n }\n\n return 'FIELD-INVALID';\n }\n\n private getErrorLastMessageNotTranslated(formControl: AbstractControl) {\n if (formControl.hasError('minlength')) {\n return `${formControl.getError('minlength').requiredLength} caracteres.`;\n }\n if (formControl.hasError('maxlength')) {\n return `${formControl.getError('maxlength').requiredLength} caracteres.`;\n }\n if (formControl.hasError('max')) { return `${formControl.getError('max').max}`; }\n if (formControl.hasError('min')) { return `${formControl.getError('min').min}`; }\n\n return '';\n }\n\n public validateFormWithTranslate(f: FormGroup, index?: number): boolean {\n const formErrors: any = f.value;\n\n if (f.status === 'VALID') return true;\n\n if (!formErrors) return true;\n Object.entries(formErrors).forEach(([key, value]) => {\n const control = f.get(key);\n formErrors[key] = '';\n if (control && !control.valid) {\n const msg = {\n first: `ERRORS.${this.getErrorFirstMessageTranslated(f.get(key))}`,\n last: this.getErrorLastMessageNotTranslated(f.get(key))\n };\n formErrors[key] = msg;\n }\n });\n\n if (MonkeyUtils.persistNullEmptyUndefined(index)) { this.__monkeyexcFormErrors[index] = formErrors; } else {\n this.__monkeyexcFormErrors = formErrors;\n }\n\n return false;\n }\n\n public copyToClipboard(val: string) {\n const selBox = document.createElement('textarea');\n selBox.style.position = 'fixed';\n selBox.style.left = '0';\n selBox.style.top = '0';\n selBox.style.opacity = '0';\n selBox.value = val;\n document.body.appendChild(selBox);\n selBox.focus();\n selBox.select();\n document.execCommand('copy');\n document.body.removeChild(selBox);\n }\n\n public validateForm(f: FormGroup, index?: number, alias?: string): boolean {\n const formErrors: any = f.value;\n if (f.status === 'VALID') return true;\n\n if (!formErrors) return true;\n Object.entries(formErrors).forEach(([key, value]) => {\n const control = f.get(key);\n formErrors[key] = '';\n if (control && !control.valid) {\n const msg = {\n firstMessage: `ERRORS.${this.getErrorFirstMessageTranslated(\n f.get(key)\n )}`,\n lastMessage: this.getErrorLastMessageNotTranslated(f.get(key))\n };\n formErrors[key] = msg;\n }\n });\n\n if (MonkeyUtils.persistNullEmptyUndefined(index)) {\n this.__monkeyexcFormErrors[index] = formErrors;\n } else {\n let obj: any;\n\n if (alias) {\n obj = {\n [alias]: {\n ...formErrors\n }\n };\n } else {\n obj = formErrors;\n }\n\n this.__monkeyexcFormErrors = {\n ...this.__monkeyexcFormErrors,\n ...obj\n };\n }\n f.markAllAsTouched();\n return false;\n }\n\n public clearAllServiceData(clearData: boolean) {\n const context = this;\n Object.values(context).forEach((ctx: any) => {\n if (ctx instanceof MonkeyEcxCommonsService) {\n ctx.clear(clearData);\n }\n });\n }\n\n public ngOnInit(args: {\n paginationOptions?: MonkeyEcxPaginationOptions;\n intercomControls?: MonkeyEcxMonkeyIntercomOptions;\n translateOptions?: MonkeyEcxTranslateOptions;\n }) {\n if (args?.paginationOptions) {\n this.__paginationOptions = args?.paginationOptions;\n this.handlePagination();\n }\n if (args?.intercomControls) {\n this.handleIntercom(args?.intercomControls);\n }\n if (args?.translateOptions) {\n this.handleTranslate(args?.translateOptions);\n }\n }\n\n public ngOnDestroy(clearData: boolean = true) {\n this.__unsubscribeAll.next();\n this.__unsubscribeAll.complete();\n this.clearAllServiceData(clearData);\n this.handlePagination(false);\n }\n\n public handleErrorFromServices(error: MonkeyEcxErrorResponse, f: FormGroup) {\n this.__monkeyexcFormErrors = null;\n if (error.type === 'Parameter_Error') {\n Object.entries(f.value).forEach(([key, value]) => {\n error.notifications.forEach((_: any) => {\n const field = _.split(':')[0];\n const description = _.split(':')[1];\n if (field === key) {\n const msg = {\n firstMessage: '',\n lastMessage: description\n };\n this.__monkeyexcFormErrors = {\n ...this.__monkeyexcFormErrors,\n [key]: msg\n };\n f.controls[key].setErrors({\n incorrect: true\n });\n }\n });\n });\n }\n\n f.markAllAsTouched();\n }\n\n public goBack() {\n window.history.back();\n }\n\n public goScroll(id: string) {\n const element = document.getElementById(id);\n if (element) element.scrollIntoView();\n }\n}\n","import { Validators } from '@angular/forms';\nimport { ValidateUtils } from 'monkey-front-core';\n\nexport const validators = {\n required: Validators.required,\n email: Validators.email,\n governmentId: ValidateUtils.DocumentValidator.do,\n governmentIdRut: ValidateUtils.DocumentRutValidator.do,\n date: ValidateUtils.DateValidator.do,\n zipCode: ValidateUtils.ZipCodeValidator.do,\n minLength: (param: number) => {\n return Validators.minLength(param);\n },\n maxLength: (param: number) => {\n return Validators.maxLength(param);\n }\n};\n","import { Directive, EventEmitter, Input, OnInit, OnChanges, Output } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { MonkeyUtils } from 'monkey-style-guide';\nimport { MECXFieldConfig, MECXFieldConfigValidator } from '../../interfaces';\nimport { BaseComponent } from './base-component';\nimport { validators } from './base-validators';\n\n@Directive({\n selector: '[baseDynamic]'\n})\nexport abstract class BaseDynamic extends BaseComponent implements OnInit, OnChanges {\n @Input() onHandleSubmit = new EventEmitter<any>();\n\n @Input() onHandleUpdateForm = new EventEmitter<any>();\n\n @Output() onHandleSubmitFormReady: EventEmitter<any> = new EventEmitter<any>();\n\n @Input() self: any;\n\n @Input() fields: MECXFieldConfig[] = [];\n\n @Input() data: any;\n\n @Input() disabled: boolean = false;\n\n _form: FormGroup;\n\n constructor(private fb: FormBuilder) {\n super();\n }\n\n private createControl() {\n const { fields } = this;\n if (!fields) return null;\n // eslint-disable-next-line object-curly-newline\n const group = this.fb.group({});\n fields.forEach((field: MECXFieldConfig) => {\n const { fieldType, validations, name, disabled } = field;\n let { value } = field;\n if (fieldType === 'button') return;\n if (fieldType === 'radiobutton' || fieldType === 'checkbox' || fieldType === 'select') {\n value = '';\n }\n const control = this.fb.control(value, this.bindValidations(validations || []));\n if (disabled || this.disabled) control.disable();\n group.addControl(name, control);\n });\n return group;\n }\n\n private bindValidations(validations: MECXFieldConfigValidator[]) {\n if (validations.length > 0) {\n const validList = [];\n validations.forEach((valid: MECXFieldConfigValidator) => {\n const validated = valid.param\n ? validators[valid.name](valid.param)\n : validators[valid.name];\n validList.push(validated);\n });\n return Validators.compose(validList);\n }\n return null;\n }\n\n public fillValues() {\n const { data } = this;\n if (!data || !this._form) return;\n Object.entries(data).forEach(([key, value]) => {\n if (MonkeyUtils.persistNullEmptyUndefined(value) && this._form.controls[key]) {\n this._form.controls[key].setValue(value);\n }\n });\n }\n\n ngOnInit() {\n this._form = this.createControl();\n this.fillValues();\n\n this.onHandleUpdateForm.subscribe(() => {\n this.fillValues();\n });\n }\n\n ngOnChanges() {\n if (!this._form) {\n this._form = this.createControl();\n }\n this.fillValues();\n }\n}\n","import { Directive, EventEmitter, Input, OnInit, OnChanges, Output } from '@angular/core';\nimport { FormArray, FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { MonkeyUtils } from 'monkey-style-guide';\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\nimport { MECXFieldConfig, MECXFieldConfigValidator } from '../../interfaces';\nimport { BaseComponent } from './base-component';\nimport { validators } from './base-validators';\n\n@Directive({\n selector: '[baseDynamicArray]'\n})\nexport abstract class BaseDynamicArray extends BaseComponent implements OnInit, OnChanges {\n @Input() onHandleSubmit = new EventEmitter<any>();\n\n @Input() onHandleUpdateForm = new EventEmitter<any>();\n\n @Output() onHandleSubmitFormReady: EventEmitter<any> = new EventEmitter<any>();\n\n @Input() self: any;\n\n @Input() fields: MECXFieldConfig[] = [];\n\n @Input() data: any;\n\n @Input() qtd: number = 1;\n\n @Input() disabled: boolean = false;\n\n _form: FormGroup;\n\n // eslint-disable-next-line object-curly-newline\n _plusValidations = [];\n\n private changesUnsubscribe = new Subject();\n\n constructor(private fb: FormBuilder) {\n super();\n }\n\n private makeInternalPlusValidation(\n data: any,\n sourceField: string,\n settings: any,\n rowIndex: number\n ) {\n const { operator, value } = settings;\n\n const validators = {\n e: (val1: any, val2: string) => { return val1 === val2; },\n lt: (val1: any, val2: string) => { return val1 < val2; },\n gt: (val1: any, val2: string) => { return val1 > val2; }\n };\n\n const changeFields = (show: boolean) => {\n const saved = [...this.fields];\n\n saved.map((val) => {\n const valSaved = {\n ...val\n };\n if (val.name === sourceField) {\n this._plusValidations[rowIndex] = {\n [sourceField]: {\n ...valSaved,\n alwaysShow: show\n }\n };\n } else {\n this._plusValidations[rowIndex] = {\n ...valSaved\n };\n }\n return null;\n });\n };\n\n const validated = validators[operator](data, value);\n changeFields(validated);\n }\n\n private createControl() {\n const { fields } = this;\n if (!fields) return null;\n // eslint-disable-next-line object-curly-newline\n const group = this.fb.group({});\n fields.forEach((field: MECXFieldConfig) => {\n const { fieldType, validations, name, disabled } = field;\n let { value } = field;\n if (fieldType === 'button') return;\n if (fieldType === 'radiobutton' || fieldType === 'checkbox' || fieldType === 'select') {\n value = '';\n }\n const control = this.fb.control(value, this.bindValidations(validations || []));\n if (disabled || this.disabled) control.disable();\n group.addControl(name, control);\n });\n\n return group;\n }\n\n private bindValidations(validations: MECXFieldConfigValidator[]) {\n if (validations.length > 0) {\n const validList = [];\n validations.forEach((valid: MECXFieldConfigValidator) => {\n const validated = valid.param\n ? validators[valid.name](valid.param)\n : validators[valid.name];\n validList.push(validated);\n });\n return Validators.compose(validList);\n }\n return null;\n }\n\n private buildForm(): FormGroup {\n const form = this.fb.group({\n fields: this.fb.array([])\n });\n\n form?.controls.fields?.valueChanges.subscribe((_) => {\n this.watchForChanges();\n });\n\n return form;\n }\n\n private watchForChanges() {\n const { fields, changesUnsubscribe } = this;\n changesUnsubscribe.next();\n\n this.formValues.controls.map((control: any, index: number) => {\n fields.forEach((fieldConfig: MECXFieldConfig) => {\n const { name, alwaysShowPlusValidation } = fieldConfig;\n if (!alwaysShowPlusValidation) return;\n const { field } = alwaysShowPlusValidation;\n if (field) {\n control.controls[field]?.valueChanges.pipe(\n takeUntil(changesUnsubscribe)).subscribe((_) => {\n this.makeInternalPlusValidation(\n _,\n name,\n alwaysShowPlusValidation,\n index\n );\n });\n }\n });\n return null;\n });\n }\n\n public formBase = () => {\n // return this.fb.group(this.createControl());\n return this.createControl();\n };\n\n public get formValues() {\n return this._form ? (this._form.get('fields') as FormArray) : null;\n }\n\n public fillValues() {\n const { data, qtd } = this;\n if ((!this._form) && qtd) return;\n if (qtd > 0) {\n Array<any>(qtd)\n .fill(null)\n .map((_, index) => {\n const form = this.createControl();\n if (data && data[index]) {\n const handledData = data[index];\n Object.entries(handledData).forEach(([key, value]) => {\n if (MonkeyUtils.persistNullEmptyUndefined(value) && form.controls[key]) {\n form.controls[key].setValue(value);\n }\n });\n }\n this.formValues.push(form);\n\n return null;\n });\n }\n }\n\n ngOnInit() {\n this._form = this.buildForm();\n this.fillValues();\n\n this.onHandleUpdateForm.subscribe(() => {\n this.fillValues();\n });\n }\n\n ngOnChanges() {\n if (!this._form) {\n this._form = this.buildForm();\n }\n this.fillValues();\n }\n}\n","import { ChangeDetectorRef, Component, HostBinding, Input, ViewEncapsulation } from '@angular/core';\nimport { FormGroup } from '@angular/forms';\nimport { MECXFieldConfig } from '../../../interfaces';\n\n@Component({\n selector: 'mecx-dynamic-file-upload',\n templateUrl: './file-upload.component.html',\n encapsulation: ViewEncapsulation.None\n})\nexport class MECXDynamicFileUploadComponent {\n @Input() _field: MECXFieldConfig;\n\n @Input() _form: FormGroup;\n\n // eslint-disable-next-line object-curly-newline\n @Input() _formErrors: any | any[] = {};\n\n @Input() self: any;\n\n _function: Function = (file: any, callback?: Function) => {\n if (!this._field?.functions?.onHandleUpload) {\n console.error('onHandleUpload not declared');\n return;\n }\n const { func, type } = this._field?.functions?.onHandleUpload;\n if (!func || !this.self[func]) {\n console.error('onHandleUpload not declared');\n return;\n }\n this.self[func](file, type, callback);\n };\n\n constructor(private cdr: ChangeDetectorRef) {\n // not to do\n }\n\n @HostBinding('class')\n get className() {\n return this._field?.style?.class;\n }\n\n ngOnChanges() {\n this.cdr.detectChanges();\n }\n}\n","<monkey-file-upload\n errorMessage=\"{{ _formErrors[_field?.name]?.firstMessage | translate }} {{ _formErrors[_field?.name]?.lastMessage }}\"\n [icon]=\"_field?.icon\" [formControl]=\"_form.controls[_field?.name]\"\n [placeholder]=\"_field?.placeholder | translate\"\n [helperMessage]=\"_field?.helperMessage | translate\" [label]=\"_field?.label | translate\"\n [maxSize]=\"_field?.maxSize || 5242880\" [fileUpload]=\"_function\"\n [maxSizeErrorMessage]=\"'FIELD.FILE.MAX-FILE' | translate\"\n [allowedExtensionErrorMessage]=\"'FIELD.FILE.ALLOWED-EXTENSION' | translate\"\n [allowedExtensions]=\"_field?.allowedExtensions || []\">\n</monkey-file-upload>","import { ChangeDetectorRef, Component, HostBinding, Input, OnChanges, ViewEncapsulation } from '@angular/core';\nimport { FormGroup } from '@angular/forms';\nimport { MECXFieldConfig } from '../../../interfaces';\n\n@Component({\n selector: 'mecx-dynamic-button',\n templateUrl: './button.component.html',\n styleUrls: ['./button.component.scss'],\n encapsulation: ViewEncapsulation.None\n})\nexport class MECXDynamicButtonComponent implements OnChanges {\n @Input() _field: MECXFieldConfig;\n\n @Input() _form: FormGroup;\n\n // eslint-disable-next-line object-curly-newline\n @Input() _formErrors: any | any[] = {};\n\n @Input() self: any;\n\n constructor(private cdr: ChangeDetectorRef) {\n // not to do\n }\n\n @HostBinding('class')\n get className() {\n return this._field?.style?.class;\n }\n\n ngOnChanges() {\n this.cdr.detectChanges();\n }\n\n onClick() {\n const { _form, _field, self } = this;\n const { name, value } = _field;\n const func = _field?.functions?.onClick;\n if (func) {\n self[func]({\n name,\n value,\n form: _form\n });\n }\n }\n}\n","<monkey-button [icon]=\"_field?.icon\" [type]=\"_field?.type\" [color]=\"_field?.color\"\n (click)=\"onClick()\">\n {{ _field?.label | translate }}\n</monkey-button>","import { ChangeDetectorRef, Component, HostBinding, Input, OnChanges, ViewChild, ViewEncapsulation } from '@angular/core';\nimport { FormGroup } from '@angular/forms';\nimport { MonkeyInputComponent } from 'monkey-style-guide';\nimport { MECXFieldConfig } from '../../../interfaces';\n\n@Component({\n selector: 'mecx-dynamic-input',\n templateUrl: './input.component.html',\n encapsulation: ViewEncapsulation.None\n})\nexport class MECXDynamicInputComponent implements OnChanges {\n @Input() _field: MECXFieldConfig;\n\n @Input() _form: FormGroup;\n\n // eslint-disable-next-line object-curly-newline\n @Input() _formErrors: any | any[] = {};\n\n @Input() self: any;\n\n @ViewChild('inputElement', {\n static: true\n }) inputElement: MonkeyInputComponent;\n\n constructor(private cdr: ChangeDetectorRef) {\n // not to do\n }\n\n @HostBinding('class')\n get className() {\n return this._field?.style?.class;\n }\n\n ngOnChanges() {\n this.cdr.detectChanges();\n }\n\n onChange(event: string) {\n const { _form, _field, self } = this;\n const { name } = _field;\n const func = _field?.functions?.onChange;\n const isValid = _form.get(_field.name).valid;\n if (func) {\n self[func]({\n name,\n isValid,\n event,\n ctrl: _form.get(this._field.name),\n form: _form\n });\n }\n }\n}\n","<monkey-input\n errorMessage=\"{{ _formErrors[_field?.name]?.firstMessage | translate }} {{ _formErrors[_field?.name]?.lastMessage }}\"\n [mask]=\"_field?.mask\" [prefix]=\"_field?.prefix\" [name]=\"_field?.name\"\n [formControl]=\"_form.controls[_field?.name]\" [placeholder]=\"_field?.placeholder | translate\"\n [helperMessage]=\"_field?.helperMessage | translate\" [label]=\"_field?.label | translate\"\n [type]=\"_field?.type\" #inputElement (onChange)=\"onChange($event)\"\n [onlyNumber]=\"_field?.onlyNumber\" [currency]=\"_field?.currency\" [maxLength]=\"_field?.maxLength\"\n [maxDateToday]=\"_field?.maxDateToday\">\n</monkey-input>","import { Component, HostBinding, Input, ViewEncapsulation } from '@angular/core';\nimport { FormGroup } from '@angular/forms';\nimport { MECXFieldConfig } from '../../../interfaces';\n\n@Component({\n selector: 'mecx-dynamic-radio',\n templateUrl: './radio.component.html',\n encapsulation: ViewEncapsulation.None\n})\nexport class MECXDynamicRadioComponent {\n @Input() _field: MECXFieldConfig;\n\n @Input() _form: FormGroup;\n\n // eslint-disable-next-line object-curly-newline\n @Input() _formErrors: any | any[] = {};\n\n @HostBinding('class')\n get className() {\n return this._field?.style?.class;\n }\n}\n","<monkey-radiobutton\n errorMessage=\"{{ _formErrors[_field?.name]?.firstMessage | translate }} {{ _formErrors[_field?.name]?.lastMessage }}\"\n [formControl]=\"_form.controls[_field?.name]\" [helperMessage]=\"_field?.helperMessage | translate\"\n [label]=\"_field?.label | translate\">\n <monkey-option *ngFor=\"let value of _field?.value\" [label]=\"value.description | translate\"\n [value]=\"value.value\">\n </monkey-option>\n</monkey-radiobutton>","import {\n Component,\n HostBinding,\n Input,\n EventEmitter,\n ViewEncapsulation\n} from '@angular/core';\nimport { FormGroup } from '@angular/forms';\nimport { MECXFieldConfig, MECXFieldConfigValue } from '../../../interfaces';\n\n@Component({\n selector: 'mecx-dynamic-select',\n templateUrl: './select.component.html',\n encapsulation: ViewEncapsulation.None\n})\nexport class MECXDynamicSelectComponent {\n @Input() _field: MECXFieldConfig;\n\n @Input() _form: FormGroup;\n\n // eslint-disable-next-line object-curly-newline\n @Input() _formErrors: any | any[] = {};\n\n @Input() self: any;\n\n @HostBinding('class')\n get className() {\n return this._field?.style?.class;\n }\n\n _onHandleOptions = new EventEmitter<any>();\n\n onHandleGenericLoad() {\n const { _form, _field, self } = this;\n const { name } = _field;\n if ((_field?.value as MECXFieldConfigValue[])?.length) return;\n const { func, url } = _field?.functions?.onHandleGenericLoad;\n if (!func || !self[func]) {\n console.error('onHandleGenericLoad not declared');\n return;\n }\n _form.disable();\n self[func]({\n name,\n url,\n form: _form,\n callback: (data: any[]) => {\n this._field.value = data;\n this._form.enable();\n this._onHandleOptions.next(null);\n }\n });\n }\n\n onChange(event: string) {\n const { _form, _field, self } = this;\n const { name } = _field;\n const func = _field?.functions?.onChange;\n const isValid = _form.get(_field.name).valid;\n if (func) {\n self[func]({\n name,\n isValid,\n event,\n ctrl: _form.get(this._field.name),\n form: _form,\n value: _field.value\n });\n }\n }\n}\n","<!--<ng-container *ngIf=\"_field?.value?.length; else noValues\">\n <monkey-select\n errorMessage=\"{{ _formErrors[_field?.name]?.firstMessage | translate }} {{ _formErrors[_field?.name]?.lastMessage }}\"\n [formControl]=\"_form.controls[_field?.name]\" [helperMessage]=\"_field?.helperMessage | translate\"\n [label]=\"_field?.label | translate\" #select (click)=\"onHandleGenericLoad(select)\">\n <monkey-option *ngFor=\"let value of _field?.value\" [label]=\"value.description | translate\"\n [value]=\"value.value\">\n </monkey-option>\n </monkey-select>\n</ng-container>\n<ng-template #noValues>\n <monkey-select\n errorMessage=\"{{ _formErrors[_field?.name]?.firstMessage | translate }} {{ _formErrors[_field?.name]?.lastMessage }}\"\n [formControl]=\"_form.controls[_field?.name]\" [helperMessage]=\"_field?.helperMessage | translate\"\n [label]=\"'Clique para carregar'\" (click)=\"onHandleGenericLoad(select)\">\n </monkey-select>\n</ng-template>-->\n\n<monkey-select\n errorMessage=\"{{ _formErrors[_field?.name]?.firstMessage | translate }} {{ _formErrors[_field?.name]?.lastMessage }}\"\n [formControl]=\"_form.controls[_field?.name]\" [helperMessage]=\"_field?.helperMessage | translate\"\n [label]=\"_field?.label | translate\" (click)=\"onHandleGenericLoad()\"\n [onHandleOptions]=\"_onHandleOptions\" (onChange)=\"onChange($event)\"\n [labelSelect]=\"_form.get(_field?.name).value || ('FIELD.SELECT' | translate)\">\n <monkey-option [label]=\"'FIELD.LOADING' | translate\" *ngIf=\"!_field?.value?.length\"\n enableClick=\"false\">\n </monkey-option>\n <monkey-option *ngFor=\"let value of _field?.value\" [label]=\"value.description | translate\"\n [value]=\"value.value\">\n </monkey-option>\n</monkey-select>","import {\n Component,\n HostBinding,\n Input,\n EventEmitter,\n ViewEncapsulation\n} from '@angular/core';\nimport { FormGroup } from '@angular/forms';\nimport { MECXFieldConfig, MECXFieldConfigValue } from '../../../interfaces';\n\n@Component({\n selector: 'mecx-dynamic-select-search',\n templateUrl: './select-search.component.html',\n encapsulation: ViewEncapsulation.None\n})\nexport class MECXDynamicSelectSearchComponent {\n @Input() _field: MECXFieldConfig;\n\n @Input() _form: FormGroup;\n\n // eslint-disable-next-line object-curly-newline\n @Input() _formErrors: any | any[] = {};\n\n @Input() self: any;\n\n @HostBinding('class')\n get className() {\n return this._field?.style?.class;\n }\n\n _onHandleOptions = new EventEmitter<any>();\n\n onHandleGenericLoad() {\n const { _form, _field, self } = this;\n const { name } = _field;\n if ((_field?.value as MECXFieldConfigValue[])?.length) return;\n const { func, url } = _field?.functions?.onHandleGenericLoad;\n if (!func || !self[func]) {\n console.error('onHandleGenericLoad not declared');\n return;\n }\n _form.disable();\n self[func]({\n name,\n url,\n form: _form,\n callback: (data: any[]) => {\n this._field.value = data;\n this._form.enable();\n this._onHandleOptions.next(null);\n }\n });\n }\n}\n","<monkey-select-search\n errorMessage=\"{{ _formErrors[_field?.name]?.firstMessage | translate }} {{ _formErrors[_field?.name]?.lastMessage }}\"\n [formControl]=\"_form.controls[_field?.name]\" [helperMessage]=\"_field?.helperMessage | translate\"\n [label]=\"_field?.label | translate\" (click)=\"onHandleGenericLoad()\"\n [onHandleOptions]=\"_onHandleOptions\" [fieldToCompare]=\"_field?.fieldToCompare\">\n <monkey-option [label]=\"'Carregando...'\" *ngIf=\"!_field?.value?.length\" enableClick=\"false\">\n </monkey-option>\n <monkey-option *ngFor=\"let value of _field?.value\" [label]=\"value.description | translate\"\n [value]=\"value.value\">\n </monkey-option>\n</monkey-select-search>","import {\n ComponentFactoryResolver,\n Directive,\n Input,\n OnChanges,\n OnInit,\n ViewContainerRef\n} from '@angular/core';\nimport { FormGroup } from '@angular/forms';\nimport { MECXFieldConfig } from '../../interfaces';\nimport { MECXDynamicButtonComponent } from './button';\nimport { MECXDynamicFileUploadComponent } from './file-upload';\nimport { MECXDynamicInputComponent } from './input';\nimport { MECXDynamicRadioComponent } from './radio';\nimport { MECXDynamicSelectComponent } from './select';\nimport { MECXDynamicSelectSearchComponent } from './select-search';\n\nconst componentMapper = {\n input: MECXDynamicInputComponent,\n radiobutton: MECXDynamicRadioComponent,\n select: MECXDynamicSelectComponent,\n 'select-search': MECXDynamicSelectSearchComponent,\n 'file-upload': MECXDynamicFileUploadComponent,\n button: MECXDynamicButtonComponent\n};\n\n@Directive({\n selector: '[MECXDynamic]'\n})\nexport class MECXDynamicDirective implements OnInit, OnChanges {\n @Input() field: MECXFieldConfig;\n\n @Input() form: FormGroup;\n\n @Input() formErrors: any;\n\n @Input() self: any;\n\n @Input() plusValidations: any;\n\n componentRef: any;\n\n constructor(private resolver: ComponentFactoryResolver, private container: ViewContainerRef) {\n // not to do\n }\n\n private buildComponent() {\n if (this.componentRef?.instance) return;\n const factory = this.resolver.resolveComponentFactory(componentMapper[this.field.fieldType]);\n this.componentRef = this.container.createComponent(factory);\n this.componentRef.instance._field = this.field;\n this.componentRef.instance._form = this.form;\n // eslint-disable-next-line object-curly-newline\n this.componentRef.instance._formErrors = this.formErrors || {};\n this.componentRef.instance.self = this.self;\n }\n\n ngOnInit() {\n console.log('======!!');\n console.log(this.field.alwaysShow);\n console.log(this.field?.name);\n console.log(this.form.controls[this.field?.name].value);\n console.log(!!this.form.controls[this.field?.name].value);\n console.log(!this.form.controls[this.field?.name].value);\n console.log('======!!22');\n console.log(this.plusValidations[this.field.name].alwaysShow);\n console.log('======!!');\n if (!this.field.alwaysShow && !this.form.controls[this.field?.name].value) return;\n this.buildComponent();\n }\n\n ngOnChanges() {\n if (this.plusValidations && this.plusValidations[this.field.name]) {\n if (!this.field.alwaysShow && this.plusValidations[this.field.name].alwaysShow) {\n this.buildComponent();\n this.form.controls[this.field.name].setValue(null);\n return;\n } if (this.componentRef?.instance) {\n this.componentRef.destroy();\n this.componentRef = null;\n this.form.controls[this.field.name].setValue(null);\n this.form.controls[this.field.name].clearValidators();\n }\n }\n if (!this.componentRef?.instance) return;\n this.componentRef.instance._formErrors = this.formErrors || {\n };\n }\n}\n","import { Component, OnInit, ViewEncapsulation, OnDestroy, ChangeDetectorRef } from '@angular/core';\nimport { FormBuilder } from '@angular/forms';\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\nimport { BaseDynamic } from '../../base/base-dynamic';\n\n@Component({\n selector: 'mecx-dynamic-form',\n templateUrl: './dynamic-form.component.html',\n styles: [],\n encapsulation: ViewEncapsulation.None\n})\nexport class MECXDynamicFormComponent extends BaseDynamic implements OnInit, OnDestroy {\n private unsubscribeAll = new Subject();\n\n constructor(fb: FormBuilder, private cdr: ChangeDetectorRef) {\n super(fb);\n }\n\n ngOnInit() {\n super.ngOnInit();\n\n this.onHandleSubmit.pipe(takeUntil(this.unsubscribeAll)).subscribe((func: Function) => {\n this.onSubmit(func);\n });\n }\n\n ngOnDestroy() {\n this.unsubscribeAll.next();\n this.unsubscribeAll.complete();\n }\n\n onSubmit(callback: Function) {\n const { _form } = this;\n // eslint-disable-next-line object-curly-newline\n this.__monkeyexcFormErrors = {};\n\n const isValid = this.validateForm(_form);\n this.cdr.detectChanges();\n\n this.onHandleSubmitFormReady.next({\n validate: {\n isValid\n },\n callback,\n form: _form\n });\n }\n}\n","<form name=\"form\" [formGroup]=\"_form\" *ngIf=\"_form\">\n <div class=\"row\">\n <div *ngFor=\"let field of fields;\" MECXDynamic [field]=\"field\" [form]=\"_form\" [self]=\"self\"\n [formErrors]=\"__monkeyexcFormErrors\">\n </div>\n </div>\n</form>","import { Component, OnInit, ViewEncapsulation, OnDestroy, ChangeDetectorRef } from '@angular/core';\nimport { FormBuilder, FormGroup } from '@angular/forms';\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\nimport { BaseDynamicArray } from '../../base';\n\n@Component({\n selector: 'mecx-dynamic-form-array',\n templateUrl: './dynamic-form-array.component.html',\n styleUrls: ['./dynamic-form-array.component.scss'],\n encapsulation: ViewEncapsulation.None\n})\nexport class MECXDynamicFormArrayComponent extends BaseDynamicArray implements OnInit, OnDestroy {\n private unsubscribeAll = new Subject();\n\n constructor(fb: FormBuilder, private cdr: ChangeDetectorRef) {\n super(fb);\n this.__monkeyexcFormErrors = [];\n }\n\n ngOnInit() {\n super.ngOnInit();\n\n this.onHandleSubmit.pipe(takeUntil(this.unsubscribeAll)).subscribe((func: Function) => {\n this.onSubmit(func);\n });\n }\n\n ngOnDestroy() {\n this.unsubscribeAll.next();\n this.unsubscribeAll.complete();\n }\n\n onSubmit(callback: Function) {\n const { _form } = this;\n // eslint-disable-next-line object-curly-newline\n this.__monkeyexcFormErrors = [];\n\n let validate = {\n isValid: false\n };\n let hasErrors: boolean = false;\n if (this.formValues) {\n this.__monkeyexcFormErrors = [this.formValues.length];\n this.formValues.controls.forEach((item: any, index: number) => {\n if (item instanceof FormGroup) {\n if (!this.validateForm(item, index)) {\n hasErrors = true;\n }\n }\n });\n }\n validate = {\n isValid: !hasErrors\n };\n\n this.cdr.detectChanges();\n\n this.onHandleSubmitFormReady.next({\n validate,\n callback,\n form: _form\n });\n }\n\n onHandleAdd() {\n this.formValues.push(this.formBase());\n this.cdr.detectChanges();\n }\n\n onHandleRemove(index: number) {\n this.formValues.removeAt(index);\n this._plusValidations.splice(index, 1);\n }\n}\n","<form name=\"form\" [formGroup]=\"_form\" *ngIf=\"_form\">\n <div formArrayName=\"fields\">\n <div *ngFor=\"let item of formValues.controls; let indForm=index\" [formGroupName]=\"indForm\">\n <monkey-button type=\"secondary\" color=\"error\" icon=\"close-20\" iconPosition=\"right\"\n [label]=\"'BUTTONS.REMOVE' | translate\" (click)=\"onHandleRemove(indForm)\"\n *ngIf=\"indForm > 0\">\n </monkey-button>\n <div class=\"row mt-3\">\n <div *ngFor=\"let field of fields;\" MECXDynamic [field]=\"field\" [form]=\"item\" [self]=\"self\"\n [formErrors]=\"__monkeyexcFormErrors[indForm]\"\n [plusValidations]=\"_plusValidations[indForm]\">\n </div>\n </div>\n </div>\n </div>\n</form>\n<monkey-button type=\"secondary\" color=\"theme\" icon=\"more-20\" iconPosition=\"right\"\n [label]=\"'BUTTONS.ADD' | translate\" (click)=\"onHandleAdd()\">\n</monkey-button>","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { TranslateModule } from '@ngx-translate/core';\nimport {\n MonkeyButtonModule,\n MonkeyFileUploadModule,\n MonkeyInputModule,\n MonkeyOptionModule,\n MonkeyRadioButtonModule,\n MonkeySelectModule\n} from 'monkey-style-guide';\nimport { MECXDynamicButtonComponent } from './button';\nimport { MECXDynamicDirective } from './dynamic-directive';\nimport { MECXDynamicFileUploadComponent } from './file-upload';\nimport { MECXDynamicFormComponent, MECXDynamicFormArrayComponent } from './form';\nimport { MECXDynamicInputComponent } from './input';\nimport { MECXDynamicRadioComponent } from './radio';\nimport { MECXDynamicSelectComponent } from './select';\nimport { MECXDynamicSelectSearchComponent } from './select-search';\n\n@NgModule({\n declarations: [\n MECXDynamicButtonComponent,\n MECXDynamicFileUploadComponent,\n MECXDynamicFormComponent,\n MECXDynamicFormArrayComponent,\n MECXDynamicInputComponent,\n MECXDynamicRadioComponent,\n MECXDynamicSelectComponent,\n MECXDynamicSelectSearchComponent,\n MECXDynamicDirective\n ],\n imports: [\n CommonModule,\n FormsModule,\n ReactiveFormsModule,\n MonkeyInputModule,\n MonkeySelectModule,\n MonkeyRadioButtonModule,\n MonkeyOptionModule,\n MonkeyFileUploadModule,\n MonkeyButtonModule,\n TranslateModule.forChild()\n ],\n exports: [MECXDynamicDirective, MECXDynamicFormComponent, MECXDynamicFormArrayComponent],\n entryComponents: [MECXDynamicInputComponent]\n})\nexport class MECXDynamicModule {}\n","/*\n * Public API Surface of monkey-front-components\n */\n\nexport * from './lib/components';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["Subject","takeUntil","MonkeyUtils","MonkeyEcxCommonsService","Directive","Validators","ValidateUtils","EventEmitter","Input","Output","Component","ViewEncapsulation","HostBinding","ViewChild","FormGroup","CommonModule","FormsModule","ReactiveFormsModule","MonkeyInputModule","MonkeySelectModule","MonkeyRadioButtonModule","MonkeyOptionModule","MonkeyFileUploadModule","MonkeyButtonModule","TranslateModule","NgModule"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"monkey-front-components.umd.js","sources":["../../../node_modules/tslib/tslib.es6.js","../../../projects/monkey-front-components/src/lib/components/base/base-component.ts","../../../projects/monkey-front-components/src/lib/components/base/base-validators.ts","../../../projects/monkey-front-components/src/lib/components/base/base-dynamic.ts","../../../projects/monkey-front-components/src/lib/components/base/base-dynamic-array.ts","../../../projects/monkey-front-components/src/lib/components/dynamic/file-upload/file-upload.component.ts","../../../projects/monkey-front-components/src/lib/components/dynamic/file-upload/file-upload.component.html","../../../projects/monkey-front-components/src/lib/components/dynamic/button/button.component.ts","../../../projects/monkey-front-components/src/lib/components/dynamic/button/button.component.html","../../../projects/monkey-front-components/src/lib/components/dynamic/input/input.component.ts","../../../projects/monkey-front-components/src/lib/components/dynamic/input/input.component.html","../../../projects/monkey-front-components/src/lib/components/dynamic/radio/radio.component.ts","../../../projects/monkey-front-components/src/lib/components/dynamic/radio/radio.component.html","../../../projects/monkey-front-components/src/lib/components/dynamic/select/select.component.ts","../../../projects/monkey-front-components/src/lib/components/dynamic/select/select.component.html","../../../projects/monkey-front-components/src/lib/components/dynamic/select-search/select-search.component.ts","../../../projects/monkey-front-components/src/lib/components/dynamic/select-search/select-search.component.html","../../../projects/monkey-front-components/src/lib/components/dynamic/dynamic-directive.ts","../../../projects/monkey-front-components/src/lib/components/dynamic/form/dynamic-form.component.ts","../../../projects/monkey-front-components/src/lib/components/dynamic/form/dynamic-form.component.html","../../../projects/monkey-front-components/src/lib/components/dynamic/form/dynamic-form-array.component.ts","../../../projects/monkey-front-components/src/lib/components/dynamic/form/dynamic-form-array.component.html","../../../projects/monkey-front-components/src/lib/components/dynamic/dynamic.module.ts","../../../projects/monkey-front-components/src/public-api.ts","../../../projects/monkey-front-components/src/monkey-front-components.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\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 (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\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 function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\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) : adopt(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 var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") 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 throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\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\n/** @deprecated */\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\n/** @deprecated */\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 __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || from);\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\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\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 (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, 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\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n 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\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n 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\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n","/* eslint-disable max-len */\nimport { AbstractControl, FormGroup } from '@angular/forms';\nimport { Subject } from 'rxjs';\nimport { OnDestroy, Directive } from '@angular/core';\nimport { takeUntil } from 'rxjs/operators';\nimport { MonkeyUtils } from 'monkey-style-guide';\nimport {\n MonkeyEcxCommonsService,\n MonkeyEcxErrorResponse,\n MonkeyEcxMonkeyIntercomOptions,\n MonkeyEcxPaginationOptions,\n MonkeyEcxTranslateOptions\n} from 'monkey-front-core';\n\n@Directive({\n selector: '[baseComponent]'\n})\nexport abstract class BaseComponent implements OnDestroy {\n __monkeyexcFormErrors: any | any[];\n\n __unsubscribeAll: Subject<any>;\n\n __paginationOptions: MonkeyEcxPaginationOptions;\n\n __i18n: any;\n\n private paginationFunc: any;\n\n protected constructor() {\n this.__unsubscribeAll = new Subject();\n }\n\n private handlePagination(create = true) {\n const { __paginationOptions } = this;\n if (__paginationOptions) {\n const { mainElement, service } = __paginationOptions;\n setTimeout(() => {\n const element = document.getElementById(mainElement);\n if (element) {\n element.scroll = null;\n element.onscroll = null;\n if (create) {\n this.paginationFunc = () => {\n const { scrollTop, scrollHeight, offsetHeight } = element;\n const contentHeight = scrollHeight - offsetHeight;\n if (contentHeight <= scrollTop) {\n service.__onDoPagination$.next(null);\n }\n };\n element.addEventListener('scroll', this.paginationFunc);\n } else {\n element.removeEventListener('scroll', this.paginationFunc);\n }\n }\n }, 200);\n }\n }\n\n private handleIntercom(intercomControls: MonkeyEcxMonkeyIntercomOptions) {\n const { service, show } = intercomControls;\n const method = show ? 'show' : 'hide';\n service[method.toLowerCase()]();\n }\n\n private handleTranslate(translateOptions: MonkeyEcxTranslateOptions) {\n const { service } = translateOptions;\n service.__oni18nDataChanged$\n .pipe(takeUntil(this.__unsubscribeAll))\n .subscribe(() => {\n const data = service.__i18n;\n if (data) {\n this.__i18n = data;\n }\n });\n }\n\n private getErrorFirstMessageTranslated(formControl: AbstractControl) {\n if (formControl.hasError('required')) return 'FIELD-REQUIRED';\n if (formControl.hasError('invalid')) return 'FIELD-INVALID';\n if (formControl.hasError('email')) return 'INVALID-EMAIL';\n if (formControl.hasError('minlength')) return 'MIN-LENGTH';\n if (formControl.hasError('maxlength')) return 'MAX-LENGTH';\n if (formControl.hasError('max')) return 'MAX';\n if (formControl.hasError('min')) return 'MIN';\n if (formControl.hasError('passwordsNotMatching')) return 'MATCH-PASSWORD';\n if (formControl.hasError('invalidDate')) return 'INVALID-DATE';\n if (formControl.hasError('invalidTrue')) return 'INVALID-TRUE';\n if (formControl.hasError('invalidCpfCnpj')) return 'INVALID-DOCUMENT';\n if (formControl.hasError('invalidZipCode')) return 'INVALID-ZIPCODE';\n if (formControl.hasError('invalidCombo')) return 'INVALID-COMBO';\n if (formControl.hasError('invalidUrl')) return 'INVALID-URL';\n if (formControl.hasError('invalidUnlockRegister')) { return 'INVALID-UNLOCK-REGISTER'; }\n if (formControl.hasError('dateStartMustBeLessThanAnd')) {\n return 'DATE-START-MUST-BE-LESS-THAN-AND';\n }\n if (formControl.hasError('dateEndMustBeGreaterThanStart')) {\n return 'DATE-END-MUST-BE-GREATER-THAN-SART';\n }\n\n return 'FIELD-INVALID';\n }\n\n private getErrorLastMessageNotTranslated(formControl: AbstractControl) {\n if (formControl.hasError('minlength')) {\n return `${formControl.getError('minlength').requiredLength} caracteres.`;\n }\n if (formControl.hasError('maxlength')) {\n return `${formControl.getError('maxlength').requiredLength} caracteres.`;\n }\n if (formControl.hasError('max')) { return `${formControl.getError('max').max}`; }\n if (formControl.hasError('min')) { return `${formControl.getError('min').min}`; }\n\n return '';\n }\n\n public validateFormWithTranslate(f: FormGroup, index?: number): boolean {\n const formErrors: any = f.value;\n\n if (f.status === 'VALID') return true;\n\n if (!formErrors) return true;\n Object.entries(formErrors).forEach(([key, value]) => {\n const control = f.get(key);\n formErrors[key] = '';\n if (control && !control.valid) {\n const msg = {\n first: `ERRORS.${this.getErrorFirstMessageTranslated(f.get(key))}`,\n last: this.getErrorLastMessageNotTranslated(f.get(key))\n };\n formErrors[key] = msg;\n }\n });\n\n if (MonkeyUtils.persistNullEmptyUndefined(index)) { this.__monkeyexcFormErrors[index] = formErrors; } else {\n this.__monkeyexcFormErrors = formErrors;\n }\n\n return false;\n }\n\n public copyToClipboard(val: string) {\n const selBox = document.createElement('textarea');\n selBox.style.position = 'fixed';\n selBox.style.left = '0';\n selBox.style.top = '0';\n selBox.style.opacity = '0';\n selBox.value = val;\n document.body.appendChild(selBox);\n selBox.focus();\n selBox.select();\n document.execCommand('copy');\n document.body.removeChild(selBox);\n }\n\n public validateForm(f: FormGroup, index?: number, alias?: string): boolean {\n const formErrors: any = f.value;\n if (f.status === 'VALID') return true;\n\n if (!formErrors) return true;\n Object.entries(formErrors).forEach(([key, value]) => {\n const control = f.get(key);\n formErrors[key] = '';\n if (control && !control.valid) {\n const msg = {\n firstMessage: `ERRORS.${this.getErrorFirstMessageTranslated(\n f.get(key)\n )}`,\n lastMessage: this.getErrorLastMessageNotTranslated(f.get(key))\n };\n formErrors[key] = msg;\n }\n });\n\n if (MonkeyUtils.persistNullEmptyUndefined(index)) {\n this.__monkeyexcFormErrors[index] = formErrors;\n } else {\n let obj: any;\n\n if (alias) {\n obj = {\n [alias]: {\n ...formErrors\n }\n };\n } else {\n obj = formErrors;\n }\n\n this.__monkeyexcFormErrors = {\n ...this.__monkeyexcFormErrors,\n ...obj\n };\n }\n f.markAllAsTouched();\n return false;\n }\n\n public clearAllServiceData(clearData: boolean) {\n const context = this;\n Object.values(context).forEach((ctx: any) => {\n if (ctx instanceof MonkeyEcxCommonsService) {\n ctx.clear(clearData);\n }\n });\n }\n\n public ngOnInit(args: {\n paginationOptions?: MonkeyEcxPaginationOptions;\n intercomControls?: MonkeyEcxMonkeyIntercomOptions;\n translateOptions?: MonkeyEcxTranslateOptions;\n }) {\n if (args?.paginationOptions) {\n this.__paginationOptions = args?.paginationOptions;\n this.handlePagination();\n }\n if (args?.intercomControls) {\n this.handleIntercom(args?.intercomControls);\n }\n if (args?.translateOptions) {\n this.handleTranslate(args?.translateOptions);\n }\n }\n\n public ngOnDestroy(clearData: boolean = true) {\n this.__unsubscribeAll.next();\n this.__unsubscribeAll.complete();\n this.clearAllServiceData(clearData);\n this.handlePagination(false);\n }\n\n public handleErrorFromServices(error: MonkeyEcxErrorResponse, f: FormGroup) {\n this.__monkeyexcFormErrors = null;\n if (error.type === 'Parameter_Error') {\n Object.entries(f.value).forEach(([key, value]) => {\n error.notifications.forEach((_: any) => {\n const field = _.split(':')[0];\n const description = _.split(':')[1];\n if (field === key) {\n const msg = {\n firstMessage: '',\n lastMessage: description\n };\n this.__monkeyexcFormErrors = {\n ...this.__monkeyexcFormErrors,\n [key]: msg\n };\n f.controls[key].setErrors({\n incorrect: true\n });\n }\n });\n });\n }\n\n f.markAllAsTouched();\n }\n\n public goBack() {\n window.history.back();\n }\n\n public goScroll(id: string) {\n const element = document.getElementById(id);\n if (element) element.scrollIntoView();\n }\n}\n","import { Validators } from '@angular/forms';\nimport { ValidateUtils } from 'monkey-front-core';\n\nexport const validators = {\n required: Validators.required,\n email: Validators.email,\n governmentId: ValidateUtils.DocumentValidator.do,\n governmentIdRut: ValidateUtils.DocumentRutValidator.do,\n date: ValidateUtils.DateValidator.do,\n zipCode: ValidateUtils.ZipCodeValidator.do,\n minLength: (param: number) => {\n return Validators.minLength(param);\n },\n maxLength: (param: number) => {\n return Validators.maxLength(param);\n }\n};\n","import { Directive, EventEmitter, Input, OnInit, OnChanges, Output } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { MonkeyUtils } from 'monkey-style-guide';\nimport { MECXFieldConfig, MECXFieldConfigValidator } from '../../interfaces';\nimport { BaseComponent } from './base-component';\nimport { validators } from './base-validators';\n\n@Directive({\n selector: '[baseDynamic]'\n})\nexport abstract class BaseDynamic extends BaseComponent implements OnInit, OnChanges {\n @Input() onHandleSubmit = new EventEmitter<any>();\n\n @Input() onHandleUpdateForm = new EventEmitter<any>();\n\n @Output() onHandleSubmitFormReady: EventEmitter<any> = new EventEmitter<any>();\n\n @Input() self: any;\n\n @Input() fields: MECXFieldConfig[] = [];\n\n @Input() data: any;\n\n @Input() disabled: boolean = false;\n\n _form: FormGroup;\n\n constructor(private fb: FormBuilder) {\n super();\n }\n\n private createControl() {\n const { fields } = this;\n if (!fields) return null;\n // eslint-disable-next-line object-curly-newline\n const group = this.fb.group({});\n fields.forEach((field: MECXFieldConfig) => {\n const { fieldType, validations, name, disabled } = field;\n let { value } = field;\n if (fieldType === 'button') return;\n if (fieldType === 'radiobutton' || fieldType === 'checkbox' || fieldType === 'select') {\n value = '';\n }\n const control = this.fb.control(value, this.bindValidations(validations || []));\n if (disabled || this.disabled) control.disable();\n group.addControl(name, control);\n });\n return group;\n }\n\n private bindValidations(validations: MECXFieldConfigValidator[]) {\n if (validations.length > 0) {\n const validList = [];\n validations.forEach((valid: MECXFieldConfigValidator) => {\n const validated = valid.param\n ? validators[valid.name](valid.param)\n : validators[valid.name];\n validList.push(validated);\n });\n return Validators.compose(validList);\n }\n return null;\n }\n\n public fillValues() {\n const { data } = this;\n if (!data || !this._form) return;\n Object.entries(data).forEach(([key, value]) => {\n if (MonkeyUtils.persistNullEmptyUndefined(value) && this._form.controls[key]) {\n this._form.controls[key].setValue(value);\n }\n });\n }\n\n ngOnInit() {\n this._form = this.createControl();\n this.fillValues();\n\n this.onHandleUpdateForm.subscribe(() => {\n this.fillValues();\n });\n }\n\n ngOnChanges() {\n if (!this._form) {\n this._form = this.createControl();\n }\n this.fillValues();\n }\n}\n","import { Directive, EventEmitter, Input, OnInit, OnChanges, Output } from '@angular/core';\nimport { FormArray, FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { MonkeyUtils } from 'monkey-style-guide';\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\nimport { MECXFieldConfig, MECXFieldConfigValidator } from '../../interfaces';\nimport { BaseComponent } from './base-component';\nimport { validators } from './base-validators';\n\n@Directive({\n selector: '[baseDynamicArray]'\n})\nexport abstract class BaseDynamicArray extends BaseComponent implements OnInit, OnChanges {\n @Input() onHandleSubmit = new EventEmitter<any>();\n\n @Input() onHandleUpdateForm = new EventEmitter<any>();\n\n @Output() onHandleSubmitFormReady: EventEmitter<any> = new EventEmitter<any>();\n\n @Input() self: any;\n\n @Input() fields: MECXFieldConfig[] = [];\n\n @Input() data: any;\n\n @Input() qtd: number = 1;\n\n @Input() disabled: boolean = false;\n\n _form: FormGroup;\n\n // eslint-disable-next-line object-curly-newline\n _plusValidations = [];\n\n private changesUnsubscribe = new Subject();\n\n constructor(private fb: FormBuilder) {\n super();\n }\n\n private makeInternalPlusValidation(\n data: any,\n sourceField: string,\n settings: any,\n rowIndex: number\n ) {\n const { operator, value } = settings;\n\n const validators = {\n e: (val1: any, val2: string) => { return val1 === val2; },\n lt: (val1: any, val2: string) => { return val1 < val2; },\n gt: (val1: any, val2: string) => { return val1 > val2; }\n };\n\n const changeFields = (show: boolean) => {\n const saved = [...this.fields];\n\n saved.map((val) => {\n const valSaved = {\n ...val\n };\n if (val.name === sourceField) {\n this._plusValidations[rowIndex] = {\n [sourceField]: {\n ...valSaved,\n alwaysShow: show\n }\n };\n this.createOneControl(val.name, this.formValues.controls[rowIndex], show);\n } else {\n this._plusValidations[rowIndex] = {\n ...valSaved\n };\n }\n return null;\n });\n };\n\n const validated = validators[operator](data, value);\n changeFields(validated);\n }\n\n private createOneControl(fieldName: string, ctrl: any, create = true) {\n const { fields } = this;\n if (!fields) return;\n\n fields.forEach((field: MECXFieldConfig) => {\n const { fieldType, validations, name, disabled } = field;\n if (name !== fieldName) return;\n let { value } = field;\n if (fieldType === 'button') return;\n if (fieldType === 'radiobutton' || fieldType === 'checkbox' || fieldType === 'select') {\n value = '';\n }\n if (create && !ctrl.controls[name]) {\n const control = this.fb.control(value, this.bindValidations(validations || []));\n if (disabled || this.disabled) control.disable();\n ctrl.addControl(name, control);\n } else {\n ctrl.removeControl(name);\n }\n });\n }\n\n private createControl() {\n const { fields } = this;\n if (!fields) return null;\n // eslint-disable-next-line object-curly-newline\n const group = this.fb.group({});\n fields.forEach((field: MECXFieldConfig) => {\n const { fieldType, validations, name, disabled, alwaysShow } = field;\n let { value } = field;\n if (fieldType === 'button' || !alwaysShow) return;\n if (fieldType === 'radiobutton' || fieldType === 'checkbox' || fieldType === 'select') {\n value = '';\n }\n const control = this.fb.control(value, this.bindValidations(validations || []));\n if (disabled || this.disabled) control.disable();\n group.addControl(name, control);\n });\n\n return group;\n }\n\n private bindValidations(validations: MECXFieldConfigValidator[]) {\n if (validations.length > 0) {\n const validList = [];\n validations.forEach((valid: MECXFieldConfigValidator) => {\n const validated = valid.param\n ? validators[valid.name](valid.param)\n : validators[valid.name];\n validList.push(validated);\n });\n return Validators.compose(validList);\n }\n return null;\n }\n\n private buildForm(): FormGroup {\n const form = this.fb.group({\n fields: this.fb.array([])\n });\n\n form?.controls.fields?.valueChanges.subscribe((_) => {\n this.watchForChanges();\n });\n\n return form;\n }\n\n private watchForChanges() {\n const { fields, changesUnsubscribe } = this;\n changesUnsubscribe.next();\n\n this.formValues.controls.map((control: any, index: number) => {\n fields.forEach((fieldConfig: MECXFieldConfig) => {\n const { name, alwaysShowPlusValidation } = fieldConfig;\n if (!alwaysShowPlusValidation) return;\n const { field } = alwaysShowPlusValidation;\n if (field) {\n control.controls[field]?.valueChanges.pipe(\n takeUntil(changesUnsubscribe)).subscribe((_) => {\n this.makeInternalPlusValidation(\n _,\n name,\n alwaysShowPlusValidation,\n index\n );\n });\n }\n });\n return null;\n });\n }\n\n public formBase = () => {\n // return this.fb.group(this.createControl());\n return this.createControl();\n };\n\n public get formValues() {\n return this._form ? (this._form.get('fields') as FormArray) : null;\n }\n\n public fillValues() {\n const { data, qtd } = this;\n if ((!this._form) && qtd) return;\n if (qtd > 0) {\n Array<any>(qtd)\n .fill(null)\n .map((_, index) => {\n const form = this.createControl();\n if (data && data[index]) {\n const handledData = data[index];\n Object.entries(handledData).forEach(([key, value]) => {\n if (MonkeyUtils.persistNullEmptyUndefined(value) && form.controls[key]) {\n form.controls[key].setValue(value);\n }\n });\n }\n this.formValues.push(form);\n\n return null;\n });\n }\n }\n\n ngOnInit() {\n this._form = this.buildForm();\n this.fillValues();\n\n this.onHandleUpdateForm.subscribe(() => {\n this.fillValues();\n });\n }\n\n ngOnChanges() {\n if (!this._form) {\n this._form = this.buildForm();\n }\n this.fillValues();\n }\n}\n","import { ChangeDetectorRef, Component, HostBinding, Input, ViewEncapsulation } from '@angular/core';\nimport { FormGroup } from '@angular/forms';\nimport { MECXFieldConfig } from '../../../interfaces';\n\n@Component({\n selector: 'mecx-dynamic-file-upload',\n templateUrl: './file-upload.component.html',\n encapsulation: ViewEncapsulation.None\n})\nexport class MECXDynamicFileUploadComponent {\n @Input() _field: MECXFieldConfig;\n\n @Input() _form: FormGroup;\n\n // eslint-disable-next-line object-curly-newline\n @Input() _formErrors: any | any[] = {};\n\n @Input() self: any;\n\n _function: Function = (file: any, callback?: Function) => {\n if (!this._field?.functions?.onHandleUpload) {\n console.error('onHandleUpload not declared');\n return;\n }\n const { func, type } = this._field?.functions?.onHandleUpload;\n if (!func || !this.self[func]) {\n console.error('onHandleUpload not declared');\n return;\n }\n this.self[func](file, type, callback);\n };\n\n constructor(private cdr: ChangeDetectorRef) {\n // not to do\n }\n\n @HostBinding('class')\n get className() {\n return this._field?.style?.class;\n }\n\n ngOnChanges() {\n this.cdr.detectChanges();\n }\n}\n","<monkey-file-upload\n errorMessage=\"{{ _formErrors[_field?.name]?.firstMessage | translate }} {{ _formErrors[_field?.name]?.lastMessage }}\"\n [icon]=\"_field?.icon\" [formControl]=\"_form.controls[_field?.name]\"\n [placeholder]=\"_field?.placeholder | translate\"\n [helperMessage]=\"_field?.helperMessage | translate\" [label]=\"_field?.label | translate\"\n [maxSize]=\"_field?.maxSize || 5242880\" [fileUpload]=\"_function\"\n [maxSizeErrorMessage]=\"'FIELD.FILE.MAX-FILE' | translate\"\n [allowedExtensionErrorMessage]=\"'FIELD.FILE.ALLOWED-EXTENSION' | translate\"\n [allowedExtensions]=\"_field?.allowedExtensions || []\">\n</monkey-file-upload>","import { ChangeDetectorRef, Component, HostBinding, Input, OnChanges, ViewEncapsulation } from '@angular/core';\nimport { FormGroup } from '@angular/forms';\nimport { MECXFieldConfig } from '../../../interfaces';\n\n@Component({\n selector: 'mecx-dynamic-button',\n templateUrl: './button.component.html',\n styleUrls: ['./button.component.scss'],\n encapsulation: ViewEncapsulation.None\n})\nexport class MECXDynamicButtonComponent implements OnChanges {\n @Input() _field: MECXFieldConfig;\n\n @Input() _form: FormGroup;\n\n // eslint-disable-next-line object-curly-newline\n @Input() _formErrors: any | any[] = {};\n\n @Input() self: any;\n\n constructor(private cdr: ChangeDetectorRef) {\n // not to do\n }\n\n @HostBinding('class')\n get className() {\n return this._field?.style?.class;\n }\n\n ngOnChanges() {\n this.cdr.detectChanges();\n }\n\n onClick() {\n const { _form, _field, self } = this;\n const { name, value } = _field;\n const func = _field?.functions?.onClick;\n if (func) {\n self[func]({\n name,\n value,\n form: _form\n });\n }\n }\n}\n","<monkey-button [icon]=\"_field?.icon\" [type]=\"_field?.type\" [color]=\"_field?.color\"\n (click)=\"onClick()\">\n {{ _field?.label | translate }}\n</monkey-button>","import { ChangeDetectorRef, Component, HostBinding, Input, OnChanges, ViewChild, ViewEncapsulation } from '@angular/core';\nimport { FormGroup } from '@angular/forms';\nimport { MonkeyInputComponent } from 'monkey-style-guide';\nimport { MECXFieldConfig } from '../../../interfaces';\n\n@Component({\n selector: 'mecx-dynamic-input',\n templateUrl: './input.component.html',\n encapsulation: ViewEncapsulation.None\n})\nexport class MECXDynamicInputComponent implements OnChanges {\n @Input() _field: MECXFieldConfig;\n\n @Input() _form: FormGroup;\n\n // eslint-disable-next-line object-curly-newline\n @Input() _formErrors: any | any[] = {};\n\n @Input() self: any;\n\n @ViewChild('inputElement', {\n static: true\n }) inputElement: MonkeyInputComponent;\n\n constructor(private cdr: ChangeDetectorRef) {\n // not to do\n }\n\n @HostBinding('class')\n get className() {\n return this._field?.style?.class;\n }\n\n ngOnChanges() {\n this.cdr.detectChanges();\n }\n\n onChange(event: string) {\n const { _form, _field, self } = this;\n const { name } = _field;\n const func = _field?.functions?.onChange;\n const isValid = _form.get(_field.name).valid;\n if (func) {\n self[func]({\n name,\n isValid,\n event,\n ctrl: _form.get(this._field.name),\n form: _form\n });\n }\n }\n}\n","<monkey-input\n errorMessage=\"{{ _formErrors[_field?.name]?.firstMessage | translate }} {{ _formErrors[_field?.name]?.lastMessage }}\"\n [mask]=\"_field?.mask\" [prefix]=\"_field?.prefix\" [name]=\"_field?.name\"\n [formControl]=\"_form.controls[_field?.name]\" [placeholder]=\"_field?.placeholder | translate\"\n [helperMessage]=\"_field?.helperMessage | translate\" [label]=\"_field?.label | translate\"\n [type]=\"_field?.type\" #inputElement (onChange)=\"onChange($event)\"\n [onlyNumber]=\"_field?.onlyNumber\" [currency]=\"_field?.currency\" [maxLength]=\"_field?.maxLength\"\n [maxDateToday]=\"_field?.maxDateToday\">\n</monkey-input>","import { Component, HostBinding, Input, ViewEncapsulation } from '@angular/core';\nimport { FormGroup } from '@angular/forms';\nimport { MECXFieldConfig } from '../../../interfaces';\n\n@Component({\n selector: 'mecx-dynamic-radio',\n templateUrl: './radio.component.html',\n encapsulation: ViewEncapsulation.None\n})\nexport class MECXDynamicRadioComponent {\n @Input() _field: MECXFieldConfig;\n\n @Input() _form: FormGroup;\n\n // eslint-disable-next-line object-curly-newline\n @Input() _formErrors: any | any[] = {};\n\n @HostBinding('class')\n get className() {\n return this._field?.style?.class;\n }\n}\n","<monkey-radiobutton\n errorMessage=\"{{ _formErrors[_field?.name]?.firstMessage | translate }} {{ _formErrors[_field?.name]?.lastMessage }}\"\n [formControl]=\"_form.controls[_field?.name]\" [helperMessage]=\"_field?.helperMessage | translate\"\n [label]=\"_field?.label | translate\">\n <monkey-option *ngFor=\"let value of _field?.value\" [label]=\"value.description | translate\"\n [value]=\"value.value\">\n </monkey-option>\n</monkey-radiobutton>","import {\n Component,\n HostBinding,\n Input,\n EventEmitter,\n ViewEncapsulation\n} from '@angular/core';\nimport { FormGroup } from '@angular/forms';\nimport { MECXFieldConfig, MECXFieldConfigValue } from '../../../interfaces';\n\n@Component({\n selector: 'mecx-dynamic-select',\n templateUrl: './select.component.html',\n encapsulation: ViewEncapsulation.None\n})\nexport class MECXDynamicSelectComponent {\n @Input() _field: MECXFieldConfig;\n\n @Input() _form: FormGroup;\n\n // eslint-disable-next-line object-curly-newline\n @Input() _formErrors: any | any[] = {};\n\n @Input() self: any;\n\n @HostBinding('class')\n get className() {\n return this._field?.style?.class;\n }\n\n _onHandleOptions = new EventEmitter<any>();\n\n onHandleGenericLoad() {\n const { _form, _field, self } = this;\n const { name } = _field;\n if ((_field?.value as MECXFieldConfigValue[])?.length) return;\n const { func, url } = _field?.functions?.onHandleGenericLoad;\n if (!func || !self[func]) {\n console.error('onHandleGenericLoad not declared');\n return;\n }\n _form.disable();\n self[func]({\n name,\n url,\n form: _form,\n callback: (data: any[]) => {\n this._field.value = data;\n this._form.enable();\n this._onHandleOptions.next(null);\n }\n });\n }\n\n onChange(event: string) {\n const { _form, _field, self } = this;\n const { name } = _field;\n const func = _field?.functions?.onChange;\n const isValid = _form.get(_field.name).valid;\n if (func) {\n self[func]({\n name,\n isValid,\n event,\n ctrl: _form.get(this._field.name),\n form: _form,\n value: _field.value\n });\n }\n }\n}\n","<!--<ng-container *ngIf=\"_field?.value?.length; else noValues\">\n <monkey-select\n errorMessage=\"{{ _formErrors[_field?.name]?.firstMessage | translate }} {{ _formErrors[_field?.name]?.lastMessage }}\"\n [formControl]=\"_form.controls[_field?.name]\" [helperMessage]=\"_field?.helperMessage | translate\"\n [label]=\"_field?.label | translate\" #select (click)=\"onHandleGenericLoad(select)\">\n <monkey-option *ngFor=\"let value of _field?.value\" [label]=\"value.description | translate\"\n [value]=\"value.value\">\n </monkey-option>\n </monkey-select>\n</ng-container>\n<ng-template #noValues>\n <monkey-select\n errorMessage=\"{{ _formErrors[_field?.name]?.firstMessage | translate }} {{ _formErrors[_field?.name]?.lastMessage }}\"\n [formControl]=\"_form.controls[_field?.name]\" [helperMessage]=\"_field?.helperMessage | translate\"\n [label]=\"'Clique para carregar'\" (click)=\"onHandleGenericLoad(select)\">\n </monkey-select>\n</ng-template>-->\n\n<monkey-select\n errorMessage=\"{{ _formErrors[_field?.name]?.firstMessage | translate }} {{ _formErrors[_field?.name]?.lastMessage }}\"\n [formControl]=\"_form.controls[_field?.name]\" [helperMessage]=\"_field?.helperMessage | translate\"\n [label]=\"_field?.label | translate\" (click)=\"onHandleGenericLoad()\"\n [onHandleOptions]=\"_onHandleOptions\" (onChange)=\"onChange($event)\"\n [labelSelect]=\"_form.get(_field?.name).value || ('FIELD.SELECT' | translate)\">\n <monkey-option [label]=\"'FIELD.LOADING' | translate\" *ngIf=\"!_field?.value?.length\"\n enableClick=\"false\">\n </monkey-option>\n <monkey-option *ngFor=\"let value of _field?.value\" [label]=\"value.description | translate\"\n [value]=\"value.value\">\n </monkey-option>\n</monkey-select>","import {\n Component,\n HostBinding,\n Input,\n EventEmitter,\n ViewEncapsulation\n} from '@angular/core';\nimport { FormGroup } from '@angular/forms';\nimport { MECXFieldConfig, MECXFieldConfigValue } from '../../../interfaces';\n\n@Component({\n selector: 'mecx-dynamic-select-search',\n templateUrl: './select-search.component.html',\n encapsulation: ViewEncapsulation.None\n})\nexport class MECXDynamicSelectSearchComponent {\n @Input() _field: MECXFieldConfig;\n\n @Input() _form: FormGroup;\n\n // eslint-disable-next-line object-curly-newline\n @Input() _formErrors: any | any[] = {};\n\n @Input() self: any;\n\n @HostBinding('class')\n get className() {\n return this._field?.style?.class;\n }\n\n _onHandleOptions = new EventEmitter<any>();\n\n onHandleGenericLoad() {\n const { _form, _field, self } = this;\n const { name } = _field;\n if ((_field?.value as MECXFieldConfigValue[])?.length) return;\n const { func, url } = _field?.functions?.onHandleGenericLoad;\n if (!func || !self[func]) {\n console.error('onHandleGenericLoad not declared');\n return;\n }\n _form.disable();\n self[func]({\n name,\n url,\n form: _form,\n callback: (data: any[]) => {\n this._field.value = data;\n this._form.enable();\n this._onHandleOptions.next(null);\n }\n });\n }\n}\n","<monkey-select-search\n errorMessage=\"{{ _formErrors[_field?.name]?.firstMessage | translate }} {{ _formErrors[_field?.name]?.lastMessage }}\"\n [formControl]=\"_form.controls[_field?.name]\" [helperMessage]=\"_field?.helperMessage | translate\"\n [label]=\"_field?.label | translate\" (click)=\"onHandleGenericLoad()\"\n [onHandleOptions]=\"_onHandleOptions\" [fieldToCompare]=\"_field?.fieldToCompare\">\n <monkey-option [label]=\"'Carregando...'\" *ngIf=\"!_field?.value?.length\" enableClick=\"false\">\n </monkey-option>\n <monkey-option *ngFor=\"let value of _field?.value\" [label]=\"value.description | translate\"\n [value]=\"value.value\">\n </monkey-option>\n</monkey-select-search>","import {\n ComponentFactoryResolver,\n Directive,\n Input,\n OnChanges,\n OnInit,\n ViewContainerRef\n} from '@angular/core';\nimport { FormGroup } from '@angular/forms';\nimport { MECXFieldConfig } from '../../interfaces';\nimport { MECXDynamicButtonComponent } from './button';\nimport { MECXDynamicFileUploadComponent } from './file-upload';\nimport { MECXDynamicInputComponent } from './input';\nimport { MECXDynamicRadioComponent } from './radio';\nimport { MECXDynamicSelectComponent } from './select';\nimport { MECXDynamicSelectSearchComponent } from './select-search';\n\nconst componentMapper = {\n input: MECXDynamicInputComponent,\n radiobutton: MECXDynamicRadioComponent,\n select: MECXDynamicSelectComponent,\n 'select-search': MECXDynamicSelectSearchComponent,\n 'file-upload': MECXDynamicFileUploadComponent,\n button: MECXDynamicButtonComponent\n};\n\n@Directive({\n selector: '[MECXDynamic]'\n})\nexport class MECXDynamicDirective implements OnInit, OnChanges {\n @Input() field: MECXFieldConfig;\n\n @Input() form: FormGroup;\n\n @Input() formErrors: any;\n\n @Input() self: any;\n\n @Input() plusValidations: any;\n\n componentRef: any;\n\n constructor(private resolver: ComponentFactoryResolver, private container: ViewContainerRef) {\n // not to do\n }\n\n private handleInternalPlusValidation() {\n if (!this.field?.alwaysShowPlusValidation) return false;\n const { operator, value, field } = this.field?.alwaysShowPlusValidation;\n const validators = {\n e: (val1: any, val2: string) => { return val1 === val2; },\n lt: (val1: any, val2: string) => { return val1 < val2; },\n gt: (val1: any, val2: string) => { return val1 > val2; }\n };\n const data = this.form.controls[field].value;\n\n return validators[operator](data, value);\n }\n\n private buildComponent() {\n if (this.componentRef?.instance) return;\n const factory = this.resolver.resolveComponentFactory(componentMapper[this.field.fieldType]);\n this.componentRef = this.container.createComponent(factory);\n this.componentRef.instance._field = this.field;\n this.componentRef.instance._form = this.form;\n // eslint-disable-next-line object-curly-newline\n this.componentRef.instance._formErrors = this.formErrors || {};\n this.componentRef.instance.self = this.self;\n }\n\n ngOnInit() {\n if (!this.field.alwaysShow && !this.handleInternalPlusValidation()) return;\n this.buildComponent();\n }\n\n ngOnChanges() {\n if (this.plusValidations && this.plusValidations[this.field.name]) {\n if (!this.field.alwaysShow && this.plusValidations[this.field.name].alwaysShow) {\n this.buildComponent();\n this.form.controls[this.field.name].setValue(null);\n return;\n } if (this.componentRef?.instance) {\n this.componentRef.destroy();\n this.componentRef = null;\n this.form.controls[this.field.name].setValue(null);\n this.form.controls[this.field.name].clearValidators();\n }\n }\n if (!this.componentRef?.instance) return;\n this.componentRef.instance._formErrors = this.formErrors || {\n };\n }\n}\n","import { Component, OnInit, ViewEncapsulation, OnDestroy, ChangeDetectorRef } from '@angular/core';\nimport { FormBuilder } from '@angular/forms';\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\nimport { BaseDynamic } from '../../base/base-dynamic';\n\n@Component({\n selector: 'mecx-dynamic-form',\n templateUrl: './dynamic-form.component.html',\n styles: [],\n encapsulation: ViewEncapsulation.None\n})\nexport class MECXDynamicFormComponent extends BaseDynamic implements OnInit, OnDestroy {\n private unsubscribeAll = new Subject();\n\n constructor(fb: FormBuilder, private cdr: ChangeDetectorRef) {\n super(fb);\n }\n\n ngOnInit() {\n super.ngOnInit();\n\n this.onHandleSubmit.pipe(takeUntil(this.unsubscribeAll)).subscribe((func: Function) => {\n this.onSubmit(func);\n });\n }\n\n ngOnDestroy() {\n this.unsubscribeAll.next();\n this.unsubscribeAll.complete();\n }\n\n onSubmit(callback: Function) {\n const { _form } = this;\n // eslint-disable-next-line object-curly-newline\n this.__monkeyexcFormErrors = {};\n\n const isValid = this.validateForm(_form);\n this.cdr.detectChanges();\n\n this.onHandleSubmitFormReady.next({\n validate: {\n isValid\n },\n callback,\n form: _form\n });\n }\n}\n","<form name=\"form\" [formGroup]=\"_form\" *ngIf=\"_form\">\n <div class=\"row\">\n <div *ngFor=\"let field of fields;\" MECXDynamic [field]=\"field\" [form]=\"_form\" [self]=\"self\"\n [formErrors]=\"__monkeyexcFormErrors\">\n </div>\n </div>\n</form>","import { Component, OnInit, ViewEncapsulation, OnDestroy, ChangeDetectorRef } from '@angular/core';\nimport { FormBuilder, FormGroup } from '@angular/forms';\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\nimport { BaseDynamicArray } from '../../base';\n\n@Component({\n selector: 'mecx-dynamic-form-array',\n templateUrl: './dynamic-form-array.component.html',\n styleUrls: ['./dynamic-form-array.component.scss'],\n encapsulation: ViewEncapsulation.None\n})\nexport class MECXDynamicFormArrayComponent extends BaseDynamicArray implements OnInit, OnDestroy {\n private unsubscribeAll = new Subject();\n\n constructor(fb: FormBuilder, private cdr: ChangeDetectorRef) {\n super(fb);\n this.__monkeyexcFormErrors = [];\n }\n\n ngOnInit() {\n super.ngOnInit();\n\n this.onHandleSubmit.pipe(takeUntil(this.unsubscribeAll)).subscribe((func: Function) => {\n this.onSubmit(func);\n });\n }\n\n ngOnDestroy() {\n this.unsubscribeAll.next();\n this.unsubscribeAll.complete();\n }\n\n onSubmit(callback: Function) {\n const { _form } = this;\n // eslint-disable-next-line object-curly-newline\n this.__monkeyexcFormErrors = [];\n\n let validate = {\n isValid: false\n };\n let hasErrors: boolean = false;\n if (this.formValues) {\n this.__monkeyexcFormErrors = [this.formValues.length];\n this.formValues.controls.forEach((item: any, index: number) => {\n if (item instanceof FormGroup) {\n if (!this.validateForm(item, index)) {\n hasErrors = true;\n }\n }\n });\n }\n validate = {\n isValid: !hasErrors\n };\n\n this.cdr.detectChanges();\n\n this.onHandleSubmitFormReady.next({\n validate,\n callback,\n form: _form\n });\n }\n\n onHandleAdd() {\n this.formValues.push(this.formBase());\n this.cdr.detectChanges();\n }\n\n onHandleRemove(index: number) {\n this.formValues.removeAt(index);\n this._plusValidations.splice(index, 1);\n }\n}\n","<form name=\"form\" [formGroup]=\"_form\" *ngIf=\"_form\">\n <div formArrayName=\"fields\">\n <div *ngFor=\"let item of formValues.controls; let indForm=index\" [formGroupName]=\"indForm\">\n <monkey-button type=\"secondary\" color=\"error\" icon=\"close-20\" iconPosition=\"right\"\n [label]=\"'BUTTONS.REMOVE' | translate\" (click)=\"onHandleRemove(indForm)\"\n *ngIf=\"indForm > 0\">\n </monkey-button>\n <div class=\"row mt-3\">\n <div *ngFor=\"let field of fields;\" MECXDynamic [field]=\"field\" [form]=\"item\" [self]=\"self\"\n [formErrors]=\"__monkeyexcFormErrors[indForm]\"\n [plusValidations]=\"_plusValidations[indForm]\">\n </div>\n </div>\n </div>\n </div>\n</form>\n<monkey-button type=\"secondary\" color=\"theme\" icon=\"more-20\" iconPosition=\"right\"\n [label]=\"'BUTTONS.ADD' | translate\" (click)=\"onHandleAdd()\">\n</monkey-button>","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { TranslateModule } from '@ngx-translate/core';\nimport {\n MonkeyButtonModule,\n MonkeyFileUploadModule,\n MonkeyInputModule,\n MonkeyOptionModule,\n MonkeyRadioButtonModule,\n MonkeySelectModule\n} from 'monkey-style-guide';\nimport { MECXDynamicButtonComponent } from './button';\nimport { MECXDynamicDirective } from './dynamic-directive';\nimport { MECXDynamicFileUploadComponent } from './file-upload';\nimport { MECXDynamicFormComponent, MECXDynamicFormArrayComponent } from './form';\nimport { MECXDynamicInputComponent } from './input';\nimport { MECXDynamicRadioComponent } from './radio';\nimport { MECXDynamicSelectComponent } from './select';\nimport { MECXDynamicSelectSearchComponent } from './select-search';\n\n@NgModule({\n declarations: [\n MECXDynamicButtonComponent,\n MECXDynamicFileUploadComponent,\n MECXDynamicFormComponent,\n MECXDynamicFormArrayComponent,\n MECXDynamicInputComponent,\n MECXDynamicRadioComponent,\n MECXDynamicSelectComponent,\n MECXDynamicSelectSearchComponent,\n MECXDynamicDirective\n ],\n imports: [\n CommonModule,\n FormsModule,\n ReactiveFormsModule,\n MonkeyInputModule,\n MonkeySelectModule,\n MonkeyRadioButtonModule,\n MonkeyOptionModule,\n MonkeyFileUploadModule,\n MonkeyButtonModule,\n TranslateModule.forChild()\n ],\n exports: [MECXDynamicDirective, MECXDynamicFormComponent, MECXDynamicFormArrayComponent],\n entryComponents: [MECXDynamicInputComponent]\n})\nexport class MECXDynamicModule {}\n","/*\n * Public API Surface of monkey-front-components\n */\n\nexport * from './lib/components';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["Subject","takeUntil","MonkeyUtils","MonkeyEcxCommonsService","Directive","Validators","ValidateUtils","EventEmitter","Input","Output","Component","ViewEncapsulation","HostBinding","ViewChild","FormGroup","CommonModule","FormsModule","ReactiveFormsModule","MonkeyInputModule","MonkeySelectModule","MonkeyRadioButtonModule","MonkeyOptionModule","MonkeyFileUploadModule","MonkeyButtonModule","TranslateModule","NgModule"],"mappings":"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"}
|