kwikid-forms 0.0.5 → 0.0.7

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.
Files changed (35) hide show
  1. package/bundles/kwikid-forms.umd.js +570 -188
  2. package/bundles/kwikid-forms.umd.js.map +1 -1
  3. package/esm2015/lib/renderer/form-view/definitions/apis/form-view.apis.type.definitions.js +1 -1
  4. package/esm2015/lib/renderer/form-view/definitions/fields/form-view.fields.type.definitions.js +1 -1
  5. package/esm2015/lib/renderer/form-view/definitions/sources/form-view.sources.enum.definitions.js +2 -1
  6. package/esm2015/lib/renderer/form-view/definitions/sources/form-view.sources.type.definitions.js +1 -1
  7. package/esm2015/lib/renderer/form-view/form-view.component.js +31 -12
  8. package/esm2015/lib/renderer/form-view/form-view.module.js +9 -2
  9. package/esm2015/lib/renderer/form-view/form-view.service.js +3 -2
  10. package/esm2015/lib/renderer/form-view/helpers/form-view.fields.helper.js +38 -49
  11. package/esm2015/lib/renderer/helpers/renderer.actions.helper.js +20 -0
  12. package/esm2015/lib/renderer/helpers/renderer.condition.helper.js +41 -0
  13. package/esm2015/lib/renderer/helpers/renderer.rules.helper.js +63 -0
  14. package/esm2015/lib/renderer/helpers/renderer.sources.helper.js +91 -0
  15. package/esm2015/lib/renderer/helpers/renderer.validations.helper.js +33 -0
  16. package/esm2015/lib/renderer/renderer.component.js +50 -4
  17. package/esm2015/lib/renderer/renderer.config-converter.helper.js +16 -18
  18. package/esm2015/lib/renderer/renderer.module.js +15 -4
  19. package/fesm2015/kwikid-forms.js +422 -127
  20. package/fesm2015/kwikid-forms.js.map +1 -1
  21. package/lib/renderer/form-view/definitions/apis/form-view.apis.type.definitions.d.ts +1 -1
  22. package/lib/renderer/form-view/definitions/fields/form-view.fields.type.definitions.d.ts +1 -1
  23. package/lib/renderer/form-view/definitions/sources/form-view.sources.enum.definitions.d.ts +1 -0
  24. package/lib/renderer/form-view/definitions/sources/form-view.sources.type.definitions.d.ts +1 -1
  25. package/lib/renderer/form-view/form-view.component.d.ts +7 -2
  26. package/lib/renderer/form-view/form-view.module.d.ts +3 -2
  27. package/lib/renderer/form-view/helpers/form-view.fields.helper.d.ts +4 -3
  28. package/lib/renderer/helpers/renderer.actions.helper.d.ts +8 -0
  29. package/lib/renderer/helpers/renderer.condition.helper.d.ts +8 -0
  30. package/lib/renderer/helpers/renderer.rules.helper.d.ts +8 -0
  31. package/lib/renderer/helpers/renderer.sources.helper.d.ts +13 -0
  32. package/lib/renderer/helpers/renderer.validations.helper.d.ts +8 -0
  33. package/lib/renderer/renderer.component.d.ts +4 -0
  34. package/lib/renderer/renderer.module.d.ts +3 -1
  35. package/package.json +1 -1
@@ -1,8 +1,8 @@
1
1
  (function (global, factory) {
2
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/cdk/drag-drop'), require('@angular/core'), require('@angular/forms'), require('kwikui'), require('lodash'), require('rxjs/operators'), require('jsonpath'), require('@taiga-ui/cdk'), require('@taiga-ui/core'), require('@angular/common'), require('@angular/animations'), require('@angular/common/http')) :
3
- typeof define === 'function' && define.amd ? define('kwikid-forms', ['exports', '@angular/cdk/drag-drop', '@angular/core', '@angular/forms', 'kwikui', 'lodash', 'rxjs/operators', 'jsonpath', '@taiga-ui/cdk', '@taiga-ui/core', '@angular/common', '@angular/animations', '@angular/common/http'], factory) :
4
- (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global["kwikid-forms"] = {}, global.ng.cdk.dragDrop, global.ng.core, global.ng.forms, global.i2, global._, global.rxjs.operators, global.jp, global["@taiga-ui/cdk"], global["@taiga-ui/core"], global.ng.common, global.ng.animations, global.ng.common.http));
5
- })(this, (function (exports, dragDrop, i0, i5, i2, _, operators, jp, cdk, i3, i4, animations, http) { 'use strict';
2
+ typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/cdk/drag-drop'), require('@angular/core'), require('@angular/forms'), require('kwikui'), require('lodash'), require('@taiga-ui/core'), require('@taiga-ui/kit'), require('rxjs/operators'), require('jsonpath'), require('@taiga-ui/cdk'), require('@angular/common'), require('@angular/animations'), require('@angular/common/http')) :
3
+ typeof define === 'function' && define.amd ? define('kwikid-forms', ['exports', '@angular/cdk/drag-drop', '@angular/core', '@angular/forms', 'kwikui', 'lodash', '@taiga-ui/core', '@taiga-ui/kit', 'rxjs/operators', 'jsonpath', '@taiga-ui/cdk', '@angular/common', '@angular/animations', '@angular/common/http'], factory) :
4
+ (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global["kwikid-forms"] = {}, global.ng.cdk.dragDrop, global.ng.core, global.ng.forms, global.i2, global._, global["@taiga-ui/core"], global["@taiga-ui/kit"], global.rxjs.operators, global.jp, global["@taiga-ui/cdk"], global.ng.common, global.ng.animations, global.ng.common.http));
5
+ })(this, (function (exports, dragDrop, i0, i6, i2, _, i3, i4, operators, jp, cdk, i5, animations, http) { 'use strict';
6
6
 
7
7
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
8
8
 
@@ -25,12 +25,13 @@
25
25
  }
26
26
 
27
27
  var i0__namespace = /*#__PURE__*/_interopNamespace(i0);
28
- var i5__namespace = /*#__PURE__*/_interopNamespace(i5);
28
+ var i6__namespace = /*#__PURE__*/_interopNamespace(i6);
29
29
  var i2__namespace = /*#__PURE__*/_interopNamespace(i2);
30
30
  var ___default = /*#__PURE__*/_interopDefaultLegacy(_);
31
- var jp__default = /*#__PURE__*/_interopDefaultLegacy(jp);
32
31
  var i3__namespace = /*#__PURE__*/_interopNamespace(i3);
33
32
  var i4__namespace = /*#__PURE__*/_interopNamespace(i4);
33
+ var jp__default = /*#__PURE__*/_interopDefaultLegacy(jp);
34
+ var i5__namespace = /*#__PURE__*/_interopNamespace(i5);
34
35
 
35
36
  /******************************************************************************
36
37
  Copyright (c) Microsoft Corporation.
@@ -394,7 +395,7 @@
394
395
  required: true
395
396
  }
396
397
  };
397
- this.formGroup = new i5.FormGroup({});
398
+ this.formGroup = new i6.FormGroup({});
398
399
  this.name = "Angular " + i0.VERSION.major;
399
400
  this.menu = [
400
401
  {
@@ -454,10 +455,10 @@
454
455
  var clone = _.cloneDeep(event.previousContainer.data[event.previousIndex]);
455
456
  clone.id = clone.key + "__" + this.revisedRandId();
456
457
  event.previousContainer.data[event.previousIndex] = clone;
457
- var newFormGroup_1 = new i5.FormGroup({});
458
+ var newFormGroup_1 = new i6.FormGroup({});
458
459
  var props_1 = clone.props;
459
460
  Object.keys(props_1).forEach(function (key) {
460
- newFormGroup_1.addControl(key, new i5.FormControl({ value: props_1[key], disabled: false }));
461
+ newFormGroup_1.addControl(key, new i6.FormControl({ value: props_1[key], disabled: false }));
461
462
  });
462
463
  this.formGroup.addControl(clone.id, newFormGroup_1);
463
464
  dragDrop.copyArrayItem(event.previousContainer.data, event.container.data, event.previousIndex, event.currentIndex);
@@ -932,7 +933,7 @@
932
933
  return value;
933
934
  };
934
935
 
935
- var Condition = /** @class */ (function () {
936
+ var Condition$1 = /** @class */ (function () {
936
937
  function Condition(condition, rulesMapping) {
937
938
  this._condition = condition;
938
939
  this._rulesMapping = rulesMapping;
@@ -974,9 +975,9 @@
974
975
  }());
975
976
  __decorate([
976
977
  log
977
- ], Condition.prototype, "evaluate", null);
978
+ ], Condition$1.prototype, "evaluate", null);
978
979
 
979
- var Actions = /** @class */ (function () {
980
+ var Actions$1 = /** @class */ (function () {
980
981
  function Actions(action, field, ruleMapping, allFormsData, formData, previousFormData, takeAction) {
981
982
  this._action = action;
982
983
  this._field = field;
@@ -990,7 +991,7 @@
990
991
  return __awaiter(this, void 0, void 0, function () {
991
992
  var condition, actionSuccess;
992
993
  return __generator(this, function (_a) {
993
- condition = new Condition(this._action.condition, this._ruleMapping);
994
+ condition = new Condition$1(this._action.condition, this._ruleMapping);
994
995
  actionSuccess = condition.evaluate();
995
996
  if (actionSuccess) {
996
997
  return [2 /*return*/, this._takeAction(this._action, this._field, this._allFormsData, this._formData, this._previousFormData)];
@@ -1003,7 +1004,7 @@
1003
1004
  }());
1004
1005
  __decorate([
1005
1006
  log
1006
- ], Actions.prototype, "execute", null);
1007
+ ], Actions$1.prototype, "execute", null);
1007
1008
 
1008
1009
  var ERuleKey;
1009
1010
  (function (ERuleKey) {
@@ -1020,6 +1021,7 @@
1020
1021
  ESourceKey["ALL_FORMS_DATA"] = "ALL_FORMS_DATA";
1021
1022
  ESourceKey["BROWSER_STORAGE"] = "BROWSER_STORAGE";
1022
1023
  ESourceKey["PREDEFINED"] = "PREDEFINED";
1024
+ ESourceKey["USER_CONFIG"] = "USER_CONFIG";
1023
1025
  ESourceKey["CUSTOM"] = "CUSTOM";
1024
1026
  })(ESourceKey || (ESourceKey = {}));
1025
1027
  var EBrowserStorageType;
@@ -1028,7 +1030,7 @@
1028
1030
  EBrowserStorageType["SESSION_STORAGE"] = "SESSION_STORAGE";
1029
1031
  })(EBrowserStorageType || (EBrowserStorageType = {}));
1030
1032
 
1031
- var Sources = /** @class */ (function () {
1033
+ var Sources$1 = /** @class */ (function () {
1032
1034
  function Sources(field, formData, previousFormData, allFormsData) {
1033
1035
  this._field = field;
1034
1036
  this._formData = formData;
@@ -1211,12 +1213,12 @@
1211
1213
  }());
1212
1214
  __decorate([
1213
1215
  log
1214
- ], Sources.prototype, "getValueFromSource", null);
1216
+ ], Sources$1.prototype, "getValueFromSource", null);
1215
1217
  __decorate([
1216
1218
  log
1217
- ], Sources.prototype, "setValueToSource", null);
1219
+ ], Sources$1.prototype, "setValueToSource", null);
1218
1220
 
1219
- var Rules = /** @class */ (function () {
1221
+ var Rules$1 = /** @class */ (function () {
1220
1222
  function Rules(rules, field, formData, previousFormData, allFormsData) {
1221
1223
  this._field = field;
1222
1224
  this._formData = formData;
@@ -1230,7 +1232,7 @@
1230
1232
  if (this._field.type === "radio") {
1231
1233
  this._formData[this._field.key] = this._formData[this._field.key].label;
1232
1234
  }
1233
- var source = new Sources(this._field, this._formData, this._previousFormData, this._allFormsData);
1235
+ var source = new Sources$1(this._field, this._formData, this._previousFormData, this._allFormsData);
1234
1236
  switch (ruleType) {
1235
1237
  case ERuleKey.OBJECT_PATH_EXISTS:
1236
1238
  var ruleObjectPathExists = rule;
@@ -1302,10 +1304,10 @@
1302
1304
  }());
1303
1305
  __decorate([
1304
1306
  log
1305
- ], Rules.prototype, "evaluate", null);
1307
+ ], Rules$1.prototype, "evaluate", null);
1306
1308
  __decorate([
1307
1309
  log
1308
- ], Rules.prototype, "mapping", null);
1310
+ ], Rules$1.prototype, "mapping", null);
1309
1311
 
1310
1312
  var Defaults = /** @class */ (function () {
1311
1313
  function Defaults(field, allFormsData, formData, previousFormData, takeAction) {
@@ -1332,7 +1334,7 @@
1332
1334
  case 2:
1333
1335
  if (!!sources_1_1.done) return [3 /*break*/, 12];
1334
1336
  source = sources_1_1.value;
1335
- sources_2 = new Sources(this._field, this._formData, this._previousFormData, this._allFormsData);
1337
+ sources_2 = new Sources$1(this._field, this._formData, this._previousFormData, this._allFormsData);
1336
1338
  value = sources_2.getValueFromSource(source);
1337
1339
  // Set the Value of current source.
1338
1340
  this._field = setValueToObject(this._field, "default.value.sources.[" + sourceIndex + "].value", value);
@@ -1340,7 +1342,7 @@
1340
1342
  triggers = validation.triggers;
1341
1343
  rules = validation.rules;
1342
1344
  actions = validation.actions;
1343
- rulesMapping = new Rules(rules, this._field, this._formData, this._previousFormData, this._allFormsData).mapping();
1345
+ rulesMapping = new Rules$1(rules, this._field, this._formData, this._previousFormData, this._allFormsData).mapping();
1344
1346
  _c.label = 3;
1345
1347
  case 3:
1346
1348
  _c.trys.push([3, 8, 9, 10]);
@@ -1349,9 +1351,9 @@
1349
1351
  case 4:
1350
1352
  if (!!actions_1_1.done) return [3 /*break*/, 7];
1351
1353
  action = actions_1_1.value;
1352
- conditionEvaluation = new Condition(action.condition, rulesMapping).evaluate();
1354
+ conditionEvaluation = new Condition$1(action.condition, rulesMapping).evaluate();
1353
1355
  if (!conditionEvaluation) return [3 /*break*/, 6];
1354
- actions_2 = new Actions(action, this._field, rulesMapping, this._allFormsData, this._formData, this._previousFormData, this._takeAction);
1356
+ actions_2 = new Actions$1(action, this._field, rulesMapping, this._allFormsData, this._formData, this._previousFormData, this._takeAction);
1355
1357
  return [4 /*yield*/, actions_2.execute()];
1356
1358
  case 5:
1357
1359
  _c.sent();
@@ -1459,14 +1461,6 @@
1459
1461
  return title;
1460
1462
  });
1461
1463
  };
1462
- var formatDateToStandardFormat = function (date) {
1463
- var formattedDate;
1464
- var year = date.year;
1465
- var month = date.month;
1466
- var day = date.day;
1467
- formattedDate = day + "-" + (month + 1) + "-" + year;
1468
- return formattedDate;
1469
- };
1470
1464
  function highlightFieldError(field, error) {
1471
1465
  field.invalid = error;
1472
1466
  field.focus = error;
@@ -1562,19 +1556,29 @@
1562
1556
  fields[fieldIndex] = highlightFieldError(fields[fieldIndex], error);
1563
1557
  return fields;
1564
1558
  }
1565
- var convertValueFromKwikUIFormatToBasicFormat = function (type, value) {
1559
+ var convertDateStringToTuiDayFormat = function (date) {
1560
+ var splitDate = date.split("-");
1561
+ var tuiDay = new cdk.TuiDay(Number(splitDate[2]), // Year
1562
+ Number(splitDate[1]) - 1, // Month, Why '-1' => Because Taiga-UI Required It, So...
1563
+ Number(splitDate[0]) // Day
1564
+ );
1565
+ return tuiDay;
1566
+ };
1567
+ var convertTuiDayFormatToDateString = function (date) {
1568
+ var formattedDate;
1569
+ var year = date.year;
1570
+ var month = date.month;
1571
+ var day = date.day;
1572
+ formattedDate = day.toString().padStart(2, "0") + "-" + (month + 1)
1573
+ .toString()
1574
+ .padStart(2, "0") + "-" + year;
1575
+ return formattedDate;
1576
+ };
1577
+ var convertValueFromKwikUIFormatToBasicFormat = function (field, value) {
1566
1578
  var convertedValue = value;
1567
- switch (type) {
1579
+ switch (field.type) {
1568
1580
  case EFieldType.DATE:
1569
- var convertDateStringToTuiDayFormat = function (date) {
1570
- var splitDate = date.split("-");
1571
- var tuiDay = new cdk.TuiDay(Number(splitDate[2]), // Year
1572
- Number(splitDate[1]) - 1, // Month, Why '-1' => Because Taiga-UI Required It, So...
1573
- Number(splitDate[0]) // Day
1574
- );
1575
- return tuiDay;
1576
- };
1577
- convertedValue = convertDateStringToTuiDayFormat(value);
1581
+ convertedValue = convertTuiDayFormatToDateString(value);
1578
1582
  break;
1579
1583
  default:
1580
1584
  break;
@@ -1583,39 +1587,26 @@
1583
1587
  };
1584
1588
  var convertValueFromBasicFormatToKwikUIFormat = function (field, value) {
1585
1589
  var convertedValue = value;
1586
- switch (field.type) {
1587
- case EFieldType.RADIO:
1588
- if (hasKey$1(value, "label")) {
1589
- convertedValue = value.label;
1590
- }
1591
- else {
1592
- convertedValue = "";
1593
- }
1594
- break;
1595
- case EFieldType.DATE:
1596
- if (isNull(value)) {
1597
- convertedValue = "";
1598
- }
1599
- else {
1600
- convertedValue = formatDateToStandardFormat(value);
1601
- }
1602
- break;
1603
- case EFieldType.PHONE:
1604
- var fieldPhone = field;
1605
- convertedValue = value.replace(String(fieldPhone.properties.countryCode), "");
1606
- break;
1607
- case EFieldType.TITLE:
1608
- break;
1609
- default:
1610
- if (isEmpty(value)) {
1611
- convertedValue = "";
1612
- }
1613
- break;
1590
+ if (isNotEmpty(value)) {
1591
+ switch (field.type) {
1592
+ case EFieldType.RADIO:
1593
+ if (hasKey$1(value, "label")) {
1594
+ convertedValue = value.label;
1595
+ }
1596
+ break;
1597
+ case EFieldType.DATE:
1598
+ convertedValue = convertDateStringToTuiDayFormat(value);
1599
+ break;
1600
+ case EFieldType.TITLE:
1601
+ break;
1602
+ default:
1603
+ break;
1604
+ }
1614
1605
  }
1615
1606
  return convertedValue;
1616
1607
  };
1617
1608
 
1618
- var Validations = /** @class */ (function () {
1609
+ var Validations$1 = /** @class */ (function () {
1619
1610
  function Validations(field, formData, previousFormData, allFormsData, takeAction) {
1620
1611
  this._field = field;
1621
1612
  this._formData = formData;
@@ -1668,36 +1659,36 @@
1668
1659
  if (hasKey$1(field, "validators") &&
1669
1660
  hasKey$1(field.validators, "min") &&
1670
1661
  isNotEmpty(field.validators.min)) {
1671
- validators.push(i5.Validators.min(field.validators.min));
1662
+ validators.push(i6.Validators.min(field.validators.min));
1672
1663
  }
1673
1664
  if (hasKey$1(field, "validators") &&
1674
1665
  hasKey$1(field.validators, "max") &&
1675
1666
  isNotEmpty(field.validators.max)) {
1676
- validators.push(i5.Validators.max(field.validators.max));
1667
+ validators.push(i6.Validators.max(field.validators.max));
1677
1668
  }
1678
1669
  if (hasKey$1(field, "required") ||
1679
1670
  (hasKey$1(field, "validators") && hasKey$1(field.validators, "required"))) {
1680
- validators.push(i5.Validators.required);
1671
+ validators.push(i6.Validators.required);
1681
1672
  }
1682
1673
  if (hasKey$1(field, "validators") &&
1683
1674
  hasKey$1(field.validators, "minLength") &&
1684
1675
  isNotEmpty(field.validators.minLength)) {
1685
- validators.push(i5.Validators.minLength(field.validators.minLength));
1676
+ validators.push(i6.Validators.minLength(field.validators.minLength));
1686
1677
  }
1687
1678
  if (hasKey$1(field, "validators") &&
1688
1679
  hasKey$1(field.validators, "maxLength") &&
1689
1680
  isNotEmpty(field.validators.maxLength)) {
1690
- validators.push(i5.Validators.maxLength(field.validators.maxLength));
1681
+ validators.push(i6.Validators.maxLength(field.validators.maxLength));
1691
1682
  }
1692
1683
  if (hasKey$1(field, "validators") &&
1693
1684
  hasKey$1(field.validators, "pattern") &&
1694
1685
  isNotEmpty(field.validators.pattern)) {
1695
1686
  if (hasKey$1(field.validators.pattern, "key")) {
1696
1687
  if (field.validators.pattern.key === EPatternKey.CUSTOM) {
1697
- validators.push(i5.Validators.pattern(field.validators.pattern.pattern));
1688
+ validators.push(i6.Validators.pattern(field.validators.pattern.pattern));
1698
1689
  }
1699
1690
  else {
1700
- validators.push(i5.Validators.pattern(EPattern[field.validators.pattern.key]));
1691
+ validators.push(i6.Validators.pattern(EPattern[field.validators.pattern.key]));
1701
1692
  }
1702
1693
  }
1703
1694
  }
@@ -1738,10 +1729,10 @@
1738
1729
  invalid: false
1739
1730
  });
1740
1731
  }
1741
- if (control instanceof i5.FormGroup) {
1732
+ if (control instanceof i6.FormGroup) {
1742
1733
  recursiveFunc(control);
1743
1734
  }
1744
- else if (control instanceof i5.FormArray) {
1735
+ else if (control instanceof i6.FormArray) {
1745
1736
  recursiveFunc(control);
1746
1737
  }
1747
1738
  });
@@ -1760,7 +1751,7 @@
1760
1751
  triggers = validations.triggers;
1761
1752
  rules = validations.rules;
1762
1753
  actions = validations.actions;
1763
- rulesMapping = new Rules(rules, this._field, this._formData, this._previousFormData, this._allFormsData).mapping();
1754
+ rulesMapping = new Rules$1(rules, this._field, this._formData, this._previousFormData, this._allFormsData).mapping();
1764
1755
  _b.label = 1;
1765
1756
  case 1:
1766
1757
  _b.trys.push([1, 6, 7, 8]);
@@ -1769,9 +1760,9 @@
1769
1760
  case 2:
1770
1761
  if (!!actions_1_1.done) return [3 /*break*/, 5];
1771
1762
  action = actions_1_1.value;
1772
- conditionEvaluation = new Condition(action.condition, rulesMapping).evaluate();
1763
+ conditionEvaluation = new Condition$1(action.condition, rulesMapping).evaluate();
1773
1764
  if (!conditionEvaluation) return [3 /*break*/, 4];
1774
- actions_2 = new Actions(action, this._field, rulesMapping, this._allFormsData, this._formData, this._previousFormData, this._takeAction);
1765
+ actions_2 = new Actions$1(action, this._field, rulesMapping, this._allFormsData, this._formData, this._previousFormData, this._takeAction);
1775
1766
  return [4 /*yield*/, actions_2.execute()];
1776
1767
  case 3:
1777
1768
  _b.sent();
@@ -1799,16 +1790,16 @@
1799
1790
  }());
1800
1791
  __decorate([
1801
1792
  log
1802
- ], Validations.prototype, "getFieldValidators", null);
1793
+ ], Validations$1.prototype, "getFieldValidators", null);
1803
1794
  __decorate([
1804
1795
  log
1805
- ], Validations.prototype, "getFormValidationErrors", null);
1796
+ ], Validations$1.prototype, "getFormValidationErrors", null);
1806
1797
  __decorate([
1807
1798
  log
1808
- ], Validations.prototype, "findInvalidControlsRecursive", null);
1799
+ ], Validations$1.prototype, "findInvalidControlsRecursive", null);
1809
1800
  __decorate([
1810
1801
  log
1811
- ], Validations.prototype, "validateField", null);
1802
+ ], Validations$1.prototype, "validateField", null);
1812
1803
 
1813
1804
  var KwikIDFormViewService = /** @class */ (function () {
1814
1805
  function KwikIDFormViewService() {
@@ -1816,41 +1807,40 @@
1816
1807
  // 'init' stage of the form
1817
1808
  KwikIDFormViewService.prototype.createFormGroup = function (fields, formData, previousFormData, allFormsData, takeAction) {
1818
1809
  return __awaiter(this, void 0, void 0, function () {
1819
- var formGroup, fields_1, fields_1_1, field, defaults, value, _a, _b, validators, e_1_1;
1820
- var e_1, _c;
1821
- return __generator(this, function (_d) {
1822
- switch (_d.label) {
1810
+ var formGroup, fields_1, fields_1_1, field, defaults, value, validators, e_1_1;
1811
+ var e_1, _a;
1812
+ return __generator(this, function (_b) {
1813
+ switch (_b.label) {
1823
1814
  case 0:
1824
- formGroup = new i5.FormGroup({});
1825
- _d.label = 1;
1815
+ formGroup = new i6.FormGroup({});
1816
+ _b.label = 1;
1826
1817
  case 1:
1827
- _d.trys.push([1, 6, 7, 8]);
1818
+ _b.trys.push([1, 6, 7, 8]);
1828
1819
  fields_1 = __values(fields), fields_1_1 = fields_1.next();
1829
- _d.label = 2;
1820
+ _b.label = 2;
1830
1821
  case 2:
1831
1822
  if (!!fields_1_1.done) return [3 /*break*/, 5];
1832
1823
  field = fields_1_1.value;
1833
1824
  if (!(field.type !== "title")) return [3 /*break*/, 4];
1834
1825
  defaults = new Defaults(field, allFormsData, formData, previousFormData, takeAction);
1835
- _a = convertValueFromBasicFormatToKwikUIFormat;
1836
- _b = [field.type];
1837
1826
  return [4 /*yield*/, defaults.getDefaultValue()];
1838
1827
  case 3:
1839
- value = _a.apply(void 0, _b.concat([_d.sent()]));
1840
- validators = new Validations(field, formData, previousFormData, allFormsData, takeAction).getFieldValidators(field);
1841
- formGroup.addControl(field.key, new i5.FormControl({ value: value, disabled: field.disabled }, { validators: validators }));
1842
- _d.label = 4;
1828
+ value = _b.sent();
1829
+ value = convertValueFromBasicFormatToKwikUIFormat(field, value);
1830
+ validators = new Validations$1(field, formData, previousFormData, allFormsData, takeAction).getFieldValidators(field);
1831
+ formGroup.addControl(field.key, new i6.FormControl({ value: value, disabled: field.disabled }, { validators: validators }));
1832
+ _b.label = 4;
1843
1833
  case 4:
1844
1834
  fields_1_1 = fields_1.next();
1845
1835
  return [3 /*break*/, 2];
1846
1836
  case 5: return [3 /*break*/, 8];
1847
1837
  case 6:
1848
- e_1_1 = _d.sent();
1838
+ e_1_1 = _b.sent();
1849
1839
  e_1 = { error: e_1_1 };
1850
1840
  return [3 /*break*/, 8];
1851
1841
  case 7:
1852
1842
  try {
1853
- if (fields_1_1 && !fields_1_1.done && (_c = fields_1.return)) _c.call(fields_1);
1843
+ if (fields_1_1 && !fields_1_1.done && (_a = fields_1.return)) _a.call(fields_1);
1854
1844
  }
1855
1845
  finally { if (e_1) throw e_1.error; }
1856
1846
  return [7 /*endfinally*/];
@@ -1905,7 +1895,7 @@
1905
1895
  case 4:
1906
1896
  if (!!sources_1_1.done) return [3 /*break*/, 14];
1907
1897
  source = sources_1_1.value;
1908
- sources_2 = new Sources(this._field, this._formData, this._previousFormData, this._allFormsData);
1898
+ sources_2 = new Sources$1(this._field, this._formData, this._previousFormData, this._allFormsData);
1909
1899
  value = sources_2.getValueFromSource(source);
1910
1900
  // Set the Value of current source.
1911
1901
  this._field = setValueToObject(this._field, "api.request.body.params[" + paramIndex + "].sources[" + sourceIndex + "].value", value);
@@ -1913,7 +1903,7 @@
1913
1903
  triggers = (_a = validation === null || validation === void 0 ? void 0 : validation.triggers) !== null && _a !== void 0 ? _a : [];
1914
1904
  rules = (_b = validation === null || validation === void 0 ? void 0 : validation.rules) !== null && _b !== void 0 ? _b : [];
1915
1905
  actions = (_c = validation === null || validation === void 0 ? void 0 : validation.actions) !== null && _c !== void 0 ? _c : [];
1916
- rulesMapping = new Rules(rules, this._field, this._formData, this._previousFormData, this._allFormsData).mapping();
1906
+ rulesMapping = new Rules$1(rules, this._field, this._formData, this._previousFormData, this._allFormsData).mapping();
1917
1907
  _g.label = 5;
1918
1908
  case 5:
1919
1909
  _g.trys.push([5, 10, 11, 12]);
@@ -1922,9 +1912,9 @@
1922
1912
  case 6:
1923
1913
  if (!!actions_1_1.done) return [3 /*break*/, 9];
1924
1914
  action = actions_1_1.value;
1925
- conditionEvaluation = new Condition(action.condition, rulesMapping).evaluate();
1915
+ conditionEvaluation = new Condition$1(action.condition, rulesMapping).evaluate();
1926
1916
  if (!conditionEvaluation) return [3 /*break*/, 8];
1927
- actions_2 = new Actions(action, this._field, rulesMapping, this._allFormsData, this._formData, this._previousFormData, this._takeAction);
1917
+ actions_2 = new Actions$1(action, this._field, rulesMapping, this._allFormsData, this._formData, this._previousFormData, this._takeAction);
1928
1918
  return [4 /*yield*/, actions_2.execute()];
1929
1919
  case 7:
1930
1920
  _g.sent();
@@ -1994,7 +1984,7 @@
1994
1984
  triggers = validation.triggers;
1995
1985
  rules = validation.rules;
1996
1986
  actions = validation.actions;
1997
- rulesMapping = new Rules(rules, this._field, this._formData, this._previousFormData, this._allFormsData).mapping();
1987
+ rulesMapping = new Rules$1(rules, this._field, this._formData, this._previousFormData, this._allFormsData).mapping();
1998
1988
  _e.label = 1;
1999
1989
  case 1:
2000
1990
  _e.trys.push([1, 6, 7, 8]);
@@ -2003,9 +1993,9 @@
2003
1993
  case 2:
2004
1994
  if (!!actions_3_1.done) return [3 /*break*/, 5];
2005
1995
  action = actions_3_1.value;
2006
- conditionSuccess = new Condition(action.condition, rulesMapping).evaluate();
1996
+ conditionSuccess = new Condition$1(action.condition, rulesMapping).evaluate();
2007
1997
  if (!conditionSuccess) return [3 /*break*/, 4];
2008
- actions_4 = new Actions(action, this._field, rulesMapping, this._allFormsData, this._formData, this._previousFormData, this._takeAction);
1998
+ actions_4 = new Actions$1(action, this._field, rulesMapping, this._allFormsData, this._formData, this._previousFormData, this._takeAction);
2009
1999
  return [4 /*yield*/, actions_4.execute()];
2010
2000
  case 3:
2011
2001
  _e.sent();
@@ -2040,7 +2030,7 @@
2040
2030
  triggers = validation.triggers;
2041
2031
  rules = validation.rules;
2042
2032
  actions = validation.actions;
2043
- rulesMapping = new Rules(rules, this._field, this._formData, this._previousFormData, this._allFormsData).mapping();
2033
+ rulesMapping = new Rules$1(rules, this._field, this._formData, this._previousFormData, this._allFormsData).mapping();
2044
2034
  _e.label = 1;
2045
2035
  case 1:
2046
2036
  _e.trys.push([1, 6, 7, 8]);
@@ -2049,9 +2039,9 @@
2049
2039
  case 2:
2050
2040
  if (!!actions_5_1.done) return [3 /*break*/, 5];
2051
2041
  action = actions_5_1.value;
2052
- conditionSuccess = new Condition(action.condition, rulesMapping).evaluate();
2042
+ conditionSuccess = new Condition$1(action.condition, rulesMapping).evaluate();
2053
2043
  if (!conditionSuccess) return [3 /*break*/, 4];
2054
- actions_6 = new Actions(action, this._field, rulesMapping, this._allFormsData, this._formData, this._previousFormData, this._takeAction);
2044
+ actions_6 = new Actions$1(action, this._field, rulesMapping, this._allFormsData, this._formData, this._previousFormData, this._takeAction);
2055
2045
  return [4 /*yield*/, actions_6.execute()];
2056
2046
  case 3:
2057
2047
  _e.sent();
@@ -2096,9 +2086,10 @@
2096
2086
  ], Apis.prototype, "validateApiCallResponse", null);
2097
2087
 
2098
2088
  var KwikIDFormViewComponent = /** @class */ (function () {
2099
- function KwikIDFormViewComponent(formViewService) {
2089
+ function KwikIDFormViewComponent(push, alert, formViewService) {
2090
+ this.push = push;
2091
+ this.alert = alert;
2100
2092
  this.formViewService = formViewService;
2101
- this.componentThis = this;
2102
2093
  this.apiCallResponse = {};
2103
2094
  this.isMobileView = false;
2104
2095
  this.onClickViewForms = new i0.EventEmitter();
@@ -2116,7 +2107,8 @@
2116
2107
  disabled: false,
2117
2108
  showLoader: false
2118
2109
  };
2119
- this.formGroup = new i5.FormGroup({});
2110
+ this.formGroup = new i6.FormGroup({});
2111
+ this.showErrorNotification = false;
2120
2112
  }
2121
2113
  KwikIDFormViewComponent.prototype.ngOnInit = function () {
2122
2114
  var _this = this;
@@ -2286,7 +2278,7 @@
2286
2278
  switch (_d.label) {
2287
2279
  case 0:
2288
2280
  if (!hasKey$1(connectedFieldConfig, "rules")) return [3 /*break*/, 8];
2289
- rulesMapping = new Rules(connectedFieldConfig.rules, connectedField, this.formData, this.previousFormData, this.allFormsData).mapping();
2281
+ rulesMapping = new Rules$1(connectedFieldConfig.rules, connectedField, this.formData, this.previousFormData, this.allFormsData).mapping();
2290
2282
  _d.label = 1;
2291
2283
  case 1:
2292
2284
  _d.trys.push([1, 6, 7, 8]);
@@ -2295,9 +2287,9 @@
2295
2287
  case 2:
2296
2288
  if (!!_b.done) return [3 /*break*/, 5];
2297
2289
  action = _b.value;
2298
- conditionSuccess = new Condition(action.condition, rulesMapping).evaluate();
2290
+ conditionSuccess = new Condition$1(action.condition, rulesMapping).evaluate();
2299
2291
  if (!conditionSuccess) return [3 /*break*/, 4];
2300
- actions = new Actions(action, connectedField, rulesMapping, this.allFormsData, this.formData, this.previousFormData, this.takeAction.bind(this));
2292
+ actions = new Actions$1(action, connectedField, rulesMapping, this.allFormsData, this.formData, this.previousFormData, this.takeAction.bind(this));
2301
2293
  return [4 /*yield*/, actions.execute()];
2302
2294
  case 3:
2303
2295
  _d.sent();
@@ -2441,7 +2433,7 @@
2441
2433
  var field = findFieldFromKey(this.formFields, e.key);
2442
2434
  if (field.type !== "title" &&
2443
2435
  field.validation.triggers.includes("ON_CHANGE")) {
2444
- var validations_1 = new Validations(field, this.formData, this.previousFormData, this.allFormsData, this.takeAction.bind(this));
2436
+ var validations_1 = new Validations$1(field, this.formData, this.previousFormData, this.allFormsData, this.takeAction.bind(this));
2445
2437
  (function () { return __awaiter(_this, void 0, void 0, function () {
2446
2438
  return __generator(this, function (_a) {
2447
2439
  switch (_a.label) {
@@ -2480,7 +2472,7 @@
2480
2472
  if (!!_d.done) return [3 /*break*/, 6];
2481
2473
  a = _d.value;
2482
2474
  resetField = findFieldFromKey(this.formFields, a.props.fieldKey);
2483
- actions = new Actions(a, resetField, {}, this.allFormsData, this.formData, this.previousFormData, this.takeAction.bind(this));
2475
+ actions = new Actions$1(a, resetField, {}, this.allFormsData, this.formData, this.previousFormData, this.takeAction.bind(this));
2484
2476
  return [4 /*yield*/, actions.execute()];
2485
2477
  case 4:
2486
2478
  _g.sent();
@@ -2547,7 +2539,8 @@
2547
2539
  request: {
2548
2540
  mode: "POST",
2549
2541
  body: field.api.request.body.value,
2550
- headers: {}
2542
+ headers: {},
2543
+ url: field.api.request.url
2551
2544
  }
2552
2545
  });
2553
2546
  }
@@ -2602,7 +2595,7 @@
2602
2595
  var _loop_3 = function (field) {
2603
2596
  if (field.type !== EFieldType.TITLE &&
2604
2597
  field.validation.triggers.includes("ON_SAVE")) {
2605
- var validations_2 = new Validations(field, formData, this_2.previousFormData, this_2.allFormsData, this_2.takeAction.bind(this_2));
2598
+ var validations_2 = new Validations$1(field, formData, this_2.previousFormData, this_2.allFormsData, this_2.takeAction.bind(this_2));
2606
2599
  (function () { return __awaiter(_this, void 0, void 0, function () {
2607
2600
  return __generator(this, function (_a) {
2608
2601
  switch (_a.label) {
@@ -2630,7 +2623,7 @@
2630
2623
  finally { if (e_9) throw e_9.error; }
2631
2624
  }
2632
2625
  if (this.formGroup.invalid) {
2633
- var controls = new Validations(undefined, formData, this.previousFormData, this.allFormsData, this.takeAction.bind(this)).findInvalidControlsRecursive(this.formGroup);
2626
+ var controls = new Validations$1(undefined, formData, this.previousFormData, this.allFormsData, this.takeAction.bind(this)).findInvalidControlsRecursive(this.formGroup);
2634
2627
  var firstFieldWithError = "";
2635
2628
  try {
2636
2629
  for (var controls_1 = __values(controls), controls_1_1 = controls_1.next(); !controls_1_1.done; controls_1_1 = controls_1.next()) {
@@ -2648,6 +2641,7 @@
2648
2641
  }
2649
2642
  finally { if (e_10) throw e_10.error; }
2650
2643
  }
2644
+ this.toggleErrorNotification(true);
2651
2645
  return;
2652
2646
  }
2653
2647
  Object.keys(formData).map(function (key) {
@@ -2655,7 +2649,10 @@
2655
2649
  formData[key] = "";
2656
2650
  }
2657
2651
  });
2658
- this.onClickSaveForm.emit({ data: formData });
2652
+ this.onClickSaveForm.emit({ formConfig: this.formConfig, data: formData });
2653
+ };
2654
+ KwikIDFormViewComponent.prototype.toggleErrorNotification = function (show) {
2655
+ this.showErrorNotification = show;
2659
2656
  };
2660
2657
  // Component Helpers
2661
2658
  KwikIDFormViewComponent.prototype.fieldHide = function (fieldKey) {
@@ -2854,7 +2851,7 @@
2854
2851
  this.fieldMessageHide(action.props.fieldKey, action.props.message);
2855
2852
  return [3 /*break*/, 15];
2856
2853
  case 10:
2857
- sources = new Sources(field, this.formData, this.previousFormData, this.allFormsData);
2854
+ sources = new Sources$1(field, this.formData, this.previousFormData, this.allFormsData);
2858
2855
  return [4 /*yield*/, sources.getValueFromSource(action.props.value.source)];
2859
2856
  case 11:
2860
2857
  sourceValue = _b.sent();
@@ -2876,8 +2873,8 @@
2876
2873
  };
2877
2874
  return KwikIDFormViewComponent;
2878
2875
  }());
2879
- /** @nocollapse */ KwikIDFormViewComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: KwikIDFormViewComponent, deps: [{ token: KwikIDFormViewService }], target: i0__namespace.ɵɵFactoryTarget.Component });
2880
- /** @nocollapse */ KwikIDFormViewComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: KwikIDFormViewComponent, selector: "kwikid-form-view", inputs: { formConfig: "formConfig", formData: "formData", apiCallResponse: "apiCallResponse", isMobileView: "isMobileView", allFormsData: "allFormsData", formsList: "formsList" }, outputs: { onClickViewForms: "onClickViewForms", onClickSaveForm: "onClickSaveForm", onClickApiCall: "onClickApiCall", getActiveFormData: "getActiveFormData" }, providers: [KwikIDFormViewService], usesOnChanges: true, ngImport: i0__namespace, template: "<div\r\n class=\"kwikid-form-container\"\r\n *ngIf=\"!this.loading\"\r\n>\r\n <div id=\"uf-form-fields-header-container\">\r\n <div id=\"uf-form-fields-title\">\r\n {{ this.formConfig.title }}\r\n </div>\r\n <div id=\"uf-form-fields-steps\">\r\n Step {{ this.formConfig.sequenceNo }} of {{ this.formsList.length }}\r\n </div>\r\n <hr />\r\n </div>\r\n <form\r\n class=\"kwikid-form show\"\r\n [formGroup]=\"this.formGroup\"\r\n >\r\n <ng-container *ngFor=\"let field of this.formFields; let i = index\">\r\n <ng-container [ngSwitch]=\"field.type\">\r\n <!-- Form Title -->\r\n <ng-container *ngSwitchCase=\"'title'\">\r\n <div class=\"title\">\r\n <div>\r\n {{ field.label }}\r\n </div>\r\n <kwikui-button\r\n *ngIf=\"field?.reset\"\r\n appearance=\"whiteblock\"\r\n size=\"s\"\r\n label=\"Reset\"\r\n (onClick)=\"this.handleOnClickResetFormFields($event, field)\"\r\n ></kwikui-button>\r\n </div>\r\n </ng-container>\r\n <!-- Input Text -->\r\n <ng-container *ngSwitchCase=\"'text'\">\r\n <div [hidden]=\"field?.hidden\">\r\n <kwikui-input\r\n [case]=\"field?.properties?.case\"\r\n [disabled]=\"field?.disabled\"\r\n [focus]=\"field?.focus\"\r\n [formControl]=\"formGroup.controls[field.key]\"\r\n [formControlName]=\"field.key\"\r\n [id]=\"field.key\"\r\n [invalid]=\"field?.invalid\"\r\n [label]=\"field.label\"\r\n [placeholder]=\"field?.properties?.placeholder\"\r\n [type]=\"'text'\"\r\n [validators]=\"field?.validators\"\r\n (getKeyValue)=\"handleGetKeyValue($event)\"\r\n ></kwikui-input>\r\n <kwikui-messages\r\n [messages]=\"field.messages\"\r\n [id]=\"field.key\"\r\n ></kwikui-messages>\r\n </div>\r\n </ng-container>\r\n <!-- Checkbox -->\r\n <ng-container *ngSwitchCase=\"'checkbox'\">\r\n <div [hidden]=\"field?.hidden\">\r\n <kwikui-checkbox-block\r\n [contentAlign]=\"field?.properties?.contentAlign ?? 'left'\"\r\n [disabled]=\"field?.disabled\"\r\n [focus]=\"field?.focus\"\r\n [formControl]=\"formGroup.controls[field.key]\"\r\n [formControlName]=\"field.key\"\r\n [id]=\"field.key\"\r\n [invalid]=\"field?.invalid\"\r\n [label]=\"field?.properties?.placeholder\"\r\n [placeholder]=\"field?.properties?.placeholder\"\r\n [properties]=\"field?.properties\"\r\n [size]=\"field?.properties?.size ?? 'l'\"\r\n [validators]=\"field?.validators\"\r\n (getKeyValue)=\"handleGetKeyValue($event)\"\r\n ></kwikui-checkbox-block\r\n ><kwikui-messages\r\n [messages]=\"field.messages\"\r\n [id]=\"field.key\"\r\n ></kwikui-messages>\r\n </div>\r\n </ng-container>\r\n <!-- Input Number -->\r\n <ng-container *ngSwitchCase=\"'number'\">\r\n <div [hidden]=\"field?.hidden\">\r\n <kwikui-input-number\r\n [decimal]=\"field?.properties?.decimal\"\r\n [disabled]=\"field?.disabled\"\r\n [focus]=\"field?.focus\"\r\n [formControl]=\"formGroup.controls[field.key]\"\r\n [formControlName]=\"field.key\"\r\n [id]=\"field.key\"\r\n [invalid]=\"field?.invalid\"\r\n [label]=\"field?.label\"\r\n [max]=\"field?.properties?.max\"\r\n [min]=\"field?.properties?.min\"\r\n [placeholder]=\"field?.properties?.placeholder\"\r\n [postfix]=\"field?.properties?.postfix ?? ''\"\r\n [precision]=\"field?.properties?.precision\"\r\n [prefix]=\"field?.properties?.prefix ?? ''\"\r\n [properties]=\"field?.properties\"\r\n [validators]=\"field?.validators\"\r\n (getKeyValue)=\"handleGetKeyValue($event)\"\r\n ></kwikui-input-number\r\n ><kwikui-messages\r\n [messages]=\"field.messages\"\r\n [id]=\"field.key\"\r\n ></kwikui-messages>\r\n </div>\r\n </ng-container>\r\n <!-- Input Date -->\r\n <ng-container *ngSwitchCase=\"'date'\">\r\n <div [hidden]=\"field?.hidden\">\r\n <kwikui-input-date\r\n [disabled]=\"field?.disabled\"\r\n [focus]=\"field?.focus\"\r\n [formControl]=\"formGroup.controls[field.key]\"\r\n [formControlName]=\"field.key\"\r\n [id]=\"field.key\"\r\n [invalid]=\"field?.invalid\"\r\n [label]=\"field.label\"\r\n [max]=\"field?.properties?.max\"\r\n [min]=\"field?.properties?.min\"\r\n [placeholder]=\"field?.placeholder\"\r\n [properties]=\"field?.properties\"\r\n [validators]=\"field?.validators\"\r\n (getKeyValue)=\"handleGetKeyValue($event)\"\r\n ></kwikui-input-date>\r\n <kwikui-messages\r\n [messages]=\"field.messages\"\r\n [id]=\"field.key\"\r\n ></kwikui-messages>\r\n </div>\r\n </ng-container>\r\n <!-- Input Phone -->\r\n <ng-container *ngSwitchCase=\"'phone'\">\r\n <div [hidden]=\"field?.hidden\">\r\n <kwikui-input-phone\r\n [countryCode]=\"field?.properties?.countryCode\"\r\n [disabled]=\"field?.disabled\"\r\n [focus]=\"field?.focus\"\r\n [formControl]=\"formGroup.controls[field.key]\"\r\n [formControlName]=\"field.key\"\r\n [id]=\"field.key\"\r\n [invalid]=\"field?.invalid\"\r\n [label]=\"field?.label\"\r\n [phoneMaskAfterCountryCode]=\"\r\n field?.properties?.phoneMaskAfterCountryCode\r\n \"\r\n [placeholder]=\"field?.placeholder\"\r\n [validators]=\"field?.validators\"\r\n (getKeyValue)=\"handleGetKeyValue($event)\"\r\n ></kwikui-input-phone>\r\n <kwikui-messages\r\n [messages]=\"field.messages\"\r\n [id]=\"field.key\"\r\n ></kwikui-messages>\r\n </div>\r\n </ng-container>\r\n <!-- Input Radio -->\r\n <ng-container *ngSwitchCase=\"'radio'\">\r\n <div [hidden]=\"field?.hidden\">\r\n <label\r\n [tuiLabel]=\"labelTemplate\"\r\n style=\"min-height: auto\"\r\n >\r\n <kwikui-radio-list\r\n [disabled]=\"field?.disabled\"\r\n [focus]=\"field?.focus\"\r\n [formControl]=\"formGroup.controls[field.key]\"\r\n [formControlName]=\"field.key\"\r\n [id]=\"field.key\"\r\n [invalid]=\"field?.invalid\"\r\n [items]=\"field?.options\"\r\n [label]=\"field?.label\"\r\n [orientation]=\"field?.properties?.orientation\"\r\n [placeholder]=\"field?.placeholder\"\r\n [properties]=\"field?.properties\"\r\n [size]=\"field?.properties?.size\"\r\n [validators]=\"field?.validators\"\r\n (getKeyValue)=\"handleGetKeyValue($event)\"\r\n ></kwikui-radio-list>\r\n </label>\r\n <ng-template #labelTemplate>\r\n <p\r\n class=\"tui-space_bottom-2\"\r\n [hidden]=\"field?.hidden\"\r\n >\r\n <b>\r\n {{ field.label }}\r\n <span *ngIf=\"field.validators?.required\"></span>\r\n </b>\r\n </p>\r\n </ng-template>\r\n <kwikui-messages\r\n [messages]=\"field.messages\"\r\n [id]=\"field.key\"\r\n ></kwikui-messages>\r\n </div>\r\n </ng-container>\r\n <!-- Dropdown -->\r\n <ng-container *ngSwitchCase=\"'dropdown-with-search'\">\r\n <div [hidden]=\"field?.hidden\">\r\n <kwikui-select-combobox\r\n [disabled]=\"field?.disabled\"\r\n [focus]=\"field?.focus\"\r\n [formControl]=\"formGroup.controls[field.key]\"\r\n [formControlName]=\"field.key\"\r\n [id]=\"field.key\"\r\n [invalid]=\"field?.invalid\"\r\n [label]=\"field.label\"\r\n [options]=\"field.options\"\r\n [placeholder]=\"field?.properties?.placeholder\"\r\n [properties]=\"field?.properties\"\r\n [validators]=\"field?.validators\"\r\n (getKeyValue)=\"handleGetKeyValue($event)\"\r\n ></kwikui-select-combobox>\r\n <kwikui-messages\r\n [messages]=\"field.messages\"\r\n [id]=\"field.key\"\r\n ></kwikui-messages>\r\n </div>\r\n </ng-container>\r\n <!-- API Call -->\r\n <ng-container *ngSwitchCase=\"'api-call'\">\r\n <div [hidden]=\"field?.hidden\">\r\n <kwikui-button-api-call\r\n [apiStatus]=\"field?.api?.status?.value\"\r\n [class]=\"field?.class\"\r\n [disabled]=\"field?.disabled\"\r\n [id]=\"field.key\"\r\n [label]=\"field?.api?.status?.labels[field?.api?.status?.value]\"\r\n [showLoader]=\"field?.disabled === 'loading'\"\r\n shape=\"null\"\r\n size=\"m\"\r\n styles=\"width: fit-content\"\r\n (onClick)=\"this.handleOnClickApiCall($event)\"\r\n ></kwikui-button-api-call>\r\n <kwikui-messages\r\n [messages]=\"field.messages\"\r\n [id]=\"field.key\"\r\n ></kwikui-messages>\r\n </div>\r\n </ng-container>\r\n <!-- Mobile OTP -->\r\n <ng-container *ngSwitchCase=\"'otp'\">\r\n <div [hidden]=\"field?.hidden\">\r\n <kwikui-input-otp\r\n [disabled]=\"field?.disabled\"\r\n [focus]=\"field?.focus\"\r\n [formControl]=\"formGroup.controls[field.key]\"\r\n [formControlName]=\"field.key\"\r\n [id]=\"field.key\"\r\n [invalid]=\"field?.invalid\"\r\n [label]=\"field?.label\"\r\n [mask]=\"field?.properties?.mask\"\r\n [placeholder]=\"field?.properties?.placeholder\"\r\n [properties]=\"field?.properties\"\r\n [validators]=\"field?.validators\"\r\n (getKeyValue)=\"handleGetKeyValue($event)\"\r\n ></kwikui-input-otp>\r\n <kwikui-messages\r\n [messages]=\"field.messages\"\r\n [id]=\"field.key\"\r\n ></kwikui-messages>\r\n </div>\r\n </ng-container>\r\n <!-- Aadhaar Number -->\r\n <ng-container *ngSwitchCase=\"'aadhaar-number'\">\r\n <div [hidden]=\"field?.hidden\">\r\n <kwikui-input-aadhaar\r\n [disabled]=\"field?.disabled\"\r\n [focus]=\"field?.focus\"\r\n [formControl]=\"formGroup.controls[field.key]\"\r\n [formControlName]=\"field.key\"\r\n [id]=\"field.key\"\r\n [invalid]=\"field?.invalid\"\r\n [label]=\"field?.label\"\r\n [placeholder]=\"field?.placeholder\"\r\n [properties]=\"field?.properties\"\r\n [validators]=\"field?.validators\"\r\n (getKeyValue)=\"handleGetKeyValue($event)\"\r\n ></kwikui-input-aadhaar>\r\n <kwikui-messages\r\n [messages]=\"field.messages\"\r\n [id]=\"field.key\"\r\n ></kwikui-messages>\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n </ng-container>\r\n </form>\r\n <div class=\"kwikid-form-buttons\">\r\n <kwikui-button\r\n *ngIf=\"this.isMobileView\"\r\n [disabled]=\"viewFormsButton.disabled\"\r\n id=\"\"\r\n label=\"View Forms\"\r\n [showLoader]=\"viewFormsButton.showLoader\"\r\n styles=\"\"\r\n class=\"\"\r\n type=\"button\"\r\n appearance=\"secondary\"\r\n icon=\"\"\r\n iconRight=\"\"\r\n shape=\"null\"\r\n size=\"m\"\r\n styles=\"width: 100%\"\r\n (onClick)=\"this.handleOnClickViewForms($event)\"\r\n ></kwikui-button>\r\n <kwikui-button\r\n [disabled]=\"saveFormButton.disabled\"\r\n id=\"\"\r\n label=\"Save\"\r\n [showLoader]=\"saveFormButton.showLoader\"\r\n styles=\"\"\r\n class=\"\"\r\n type=\"button\"\r\n appearance=\"primary\"\r\n icon=\"\"\r\n iconRight=\"\"\r\n shape=\"null\"\r\n size=\"m\"\r\n styles=\"width: 100%\"\r\n (onClick)=\"this.handleOnClickSaveForm($event)\"\r\n ></kwikui-button>\r\n </div>\r\n</div>\r\n<div\r\n class=\"kwikid-form-container-loading\"\r\n *ngIf=\"this.loading\"\r\n>\r\n <div\r\n class=\"large-wrapper\"\r\n [class.tui-skeleton]=\"this.loading\"\r\n [class.tui-skeleton_rounded]=\"this.loading\"\r\n ></div>\r\n <div\r\n class=\"large-wrapper\"\r\n [class.tui-skeleton]=\"this.loading\"\r\n [class.tui-skeleton_rounded]=\"this.loading\"\r\n ></div>\r\n <div\r\n class=\"large-wrapper\"\r\n [class.tui-skeleton]=\"this.loading\"\r\n [class.tui-skeleton_rounded]=\"this.loading\"\r\n ></div>\r\n <div\r\n class=\"large-wrapper\"\r\n [class.tui-skeleton]=\"this.loading\"\r\n [class.tui-skeleton_rounded]=\"this.loading\"\r\n ></div>\r\n <div\r\n class=\"large-wrapper\"\r\n [class.tui-skeleton]=\"this.loading\"\r\n [class.tui-skeleton_rounded]=\"this.loading\"\r\n ></div>\r\n <div\r\n class=\"large-wrapper\"\r\n [class.tui-skeleton]=\"this.loading\"\r\n [class.tui-skeleton_rounded]=\"this.loading\"\r\n ></div>\r\n <div\r\n class=\"large-wrapper\"\r\n [class.tui-skeleton]=\"this.loading\"\r\n [class.tui-skeleton_rounded]=\"this.loading\"\r\n ></div>\r\n</div>\r\n", styles: ["::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{border-radius:10px}::-webkit-scrollbar-thumb{background:lightgray;border-radius:10px}::-webkit-scrollbar-thumb:hover{background:gray}.kwikid-form-container{width:100%;height:100%;margin:0 auto;display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;align-content:center}.kwikid-form.show{width:100%;height:100%;padding:1rem;overflow-y:auto;display:flex;flex-direction:column;align-content:center;justify-content:flex-start;align-items:stretch;grid-row-gap:1rem;row-gap:1rem}.kwikid-form-buttons{width:100%;bottom:0px;padding:1rem;display:flex;flex-direction:row;align-content:center;justify-content:center;align-items:center;grid-column-gap:10px;column-gap:10px}.kwikid-form-buttons *{flex-grow:1}#uf-form-fields-header-container{display:flex;flex-direction:column;align-content:center;justify-content:center;align-items:flex-start;grid-row-gap:.5rem;row-gap:.5rem;padding:1rem}#uf-form-fields-header-container hr{width:100%}#uf-form-fields-title{color:#000;font-size:1.75em;font-weight:bold}#uf-form-fields-steps{color:var(--color-on-secondary-container);font-size:1em}.title{border-left:.25rem solid var(--tui-primary);padding:.75rem;font-size:1.4em;font-weight:bold;background-color:var(--tui-secondary);display:flex;flex-direction:row;align-content:center;justify-content:space-between;align-items:center;grid-gap:.5rem;gap:.5rem}.title:not(:first-child){margin-top:.5rem}.large-wrapper{width:100%;height:60px}.large-wrapper:first-child{margin-bottom:auto}.large-wrapper:last-child{margin-top:auto}.kwikid-form-container-loading{width:100%;height:100%;margin:0 auto;display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;align-content:center;grid-row-gap:1rem;row-gap:1rem;padding:1rem}\n"], components: [{ type: i2__namespace.KwikUIButtonComponent, selector: "kwikui-button", inputs: ["disabled", "id", "label", "showLoader", "styles", "class", "type", "appearance", "icon", "iconRight", "shape", "size"], outputs: ["onClick"] }, { type: i2__namespace.KwikUIInputComponent, selector: "kwikui-input", inputs: ["label", "id", "type", "formControlName", "formControl", "placeholder", "focus", "invalid", "disabled", "validators", "case", "properties"], outputs: ["getKeyValue"] }, { type: i2__namespace.KwikUIMessagesComponent, selector: "kwikui-messages", inputs: ["messages", "id"] }, { type: i2__namespace.KwikUICheckboxBlockComponent, selector: "kwikui-checkbox-block", inputs: ["label", "id", "formControlName", "formControl", "placeholder", "focus", "invalid", "disabled", "size", "contentAlign", "validators", "properties"], outputs: ["getKeyValue"] }, { type: i2__namespace.KwikUIInputNumberComponent, selector: "kwikui-input-number", inputs: ["label", "id", "formControlName", "formControl", "focus", "invalid", "disabled", "placeholder", "min", "max", "prefix", "postfix", "precision", "decimal", "validators", "properties"], outputs: ["getKeyValue"] }, { type: i2__namespace.KwikUIInputDateComponent, selector: "kwikui-input-date", inputs: ["label", "id", "formControlName", "formControl", "focus", "invalid", "disabled", "placeholder", "min", "max", "validators", "properties"], outputs: ["getKeyValue"] }, { type: i2__namespace.KwikUIInputPhoneComponent, selector: "kwikui-input-phone", inputs: ["label", "id", "formControlName", "formControl", "focus", "invalid", "disabled", "placeholder", "countryCode", "phoneMaskAfterCountryCode", "validators", "properties"], outputs: ["getKeyValue"] }, { type: i3__namespace.TuiLabelComponent, selector: "label[tuiLabel]", inputs: ["tuiLabel", "context"] }, { type: i2__namespace.KwikUIRadioListComponent, selector: "kwikui-radio-list", inputs: ["label", "id", "formControlName", "formControl", "placeholder", "focus", "invalid", "disabled", "size", "items", "orientation", "validators", "properties"], outputs: ["getKeyValue"] }, { type: i2__namespace.KwikUISelectComboboxComponent, selector: "kwikui-select-combobox", inputs: ["label", "id", "formControlName", "formControl", "placeholder", "focus", "invalid", "disabled", "options", "validators", "properties"], outputs: ["getKeyValue"] }, { type: i2__namespace.KwikUIButtonApiCallComponent, selector: "kwikui-button-api-call", inputs: ["disabled", "id", "label", "showLoader", "styles", "class", "shape", "size", "apiStatus"], outputs: ["onClick"] }, { type: i2__namespace.KwikUIInputOtpComponent, selector: "kwikui-input-otp", inputs: ["label", "id", "formControlName", "formControl", "focus", "invalid", "disabled", "placeholder", "mask", "validators", "properties"], outputs: ["getKeyValue"] }, { type: i2__namespace.KwikUIInputAadhaarComponent, selector: "kwikui-input-aadhaar", inputs: ["label", "id", "formControlName", "formControl", "focus", "invalid", "disabled", "placeholder", "mask", "validators", "properties"], outputs: ["getKeyValue"] }], directives: [{ type: i4__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5__namespace.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i5__namespace.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i5__namespace.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i4__namespace.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i4__namespace.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i4__namespace.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i5__namespace.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i5__namespace.FormControlDirective, selector: "[formControl]", inputs: ["disabled", "formControl", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { type: i5__namespace.FormControlName, selector: "[formControlName]", inputs: ["disabled", "formControlName", "ngModel"], outputs: ["ngModelChange"] }] });
2876
+ /** @nocollapse */ KwikIDFormViewComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: KwikIDFormViewComponent, deps: [{ token: i4.TuiPushService }, { token: i3.TuiAlertService }, { token: KwikIDFormViewService }], target: i0__namespace.ɵɵFactoryTarget.Component });
2877
+ /** @nocollapse */ KwikIDFormViewComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: KwikIDFormViewComponent, selector: "kwikid-form-view", inputs: { formConfig: "formConfig", formData: "formData", apiCallResponse: "apiCallResponse", isMobileView: "isMobileView", allFormsData: "allFormsData", formsList: "formsList" }, outputs: { onClickViewForms: "onClickViewForms", onClickSaveForm: "onClickSaveForm", onClickApiCall: "onClickApiCall", getActiveFormData: "getActiveFormData" }, providers: [KwikIDFormViewService], usesOnChanges: true, ngImport: i0__namespace, template: "<div\r\n class=\"kwikid-form-container\"\r\n *ngIf=\"!this.loading\"\r\n>\r\n <div id=\"uf-form-fields-header-container\">\r\n <div id=\"uf-form-fields-title\">\r\n {{ this.formConfig.title }}\r\n </div>\r\n <div id=\"uf-form-fields-steps\">\r\n Step {{ this.formConfig.sequenceNo }} of {{ this.formsList.length }}\r\n </div>\r\n <hr />\r\n </div>\r\n <form\r\n class=\"kwikid-form show\"\r\n [formGroup]=\"this.formGroup\"\r\n >\r\n <ng-container *ngFor=\"let field of this.formFields; let i = index\">\r\n <ng-container [ngSwitch]=\"field.type\">\r\n <!-- Form Title -->\r\n <ng-container *ngSwitchCase=\"'title'\">\r\n <div\r\n class=\"title\"\r\n id=\"field_{{ field.key }}\"\r\n >\r\n <div>\r\n {{ field.label }}\r\n </div>\r\n <kwikui-button\r\n *ngIf=\"field?.reset\"\r\n appearance=\"whiteblock\"\r\n size=\"s\"\r\n label=\"Reset\"\r\n (onClick)=\"this.handleOnClickResetFormFields($event, field)\"\r\n ></kwikui-button>\r\n </div>\r\n </ng-container>\r\n <!-- Input Text -->\r\n <ng-container *ngSwitchCase=\"'text'\">\r\n <div\r\n [hidden]=\"field?.hidden\"\r\n id=\"field_{{ field.key }}\"\r\n >\r\n <kwikui-input\r\n [case]=\"field?.properties?.case\"\r\n [disabled]=\"field?.disabled\"\r\n [focus]=\"field?.focus\"\r\n [formControl]=\"formGroup.controls[field.key]\"\r\n [formControlName]=\"field.key\"\r\n [id]=\"field.key\"\r\n [invalid]=\"field?.invalid\"\r\n [label]=\"field.label\"\r\n [placeholder]=\"field?.properties?.placeholder\"\r\n [type]=\"'text'\"\r\n [validators]=\"field?.validators\"\r\n (getKeyValue)=\"handleGetKeyValue($event)\"\r\n ></kwikui-input>\r\n <kwikui-messages\r\n [messages]=\"field.messages\"\r\n [id]=\"field.key\"\r\n ></kwikui-messages>\r\n </div>\r\n </ng-container>\r\n <!-- Checkbox -->\r\n <ng-container *ngSwitchCase=\"'checkbox'\">\r\n <div\r\n [hidden]=\"field?.hidden\"\r\n id=\"field_{{ field.key }}\"\r\n >\r\n <kwikui-checkbox-block\r\n [contentAlign]=\"field?.properties?.contentAlign ?? 'left'\"\r\n [disabled]=\"field?.disabled\"\r\n [focus]=\"field?.focus\"\r\n [formControl]=\"formGroup.controls[field.key]\"\r\n [formControlName]=\"field.key\"\r\n [id]=\"field.key\"\r\n [invalid]=\"field?.invalid\"\r\n [label]=\"field?.properties?.placeholder\"\r\n [placeholder]=\"field?.properties?.placeholder\"\r\n [properties]=\"field?.properties\"\r\n [size]=\"field?.properties?.size ?? 'l'\"\r\n [validators]=\"field?.validators\"\r\n (getKeyValue)=\"handleGetKeyValue($event)\"\r\n ></kwikui-checkbox-block\r\n ><kwikui-messages\r\n [messages]=\"field.messages\"\r\n [id]=\"field.key\"\r\n ></kwikui-messages>\r\n </div>\r\n </ng-container>\r\n <!-- Input Number -->\r\n <ng-container *ngSwitchCase=\"'number'\">\r\n <div\r\n [hidden]=\"field?.hidden\"\r\n id=\"field_{{ field.key }}\"\r\n >\r\n <kwikui-input-number\r\n [decimal]=\"field?.properties?.decimal\"\r\n [disabled]=\"field?.disabled\"\r\n [focus]=\"field?.focus\"\r\n [formControl]=\"formGroup.controls[field.key]\"\r\n [formControlName]=\"field.key\"\r\n [id]=\"field.key\"\r\n [invalid]=\"field?.invalid\"\r\n [label]=\"field?.label\"\r\n [max]=\"field?.properties?.max\"\r\n [min]=\"field?.properties?.min\"\r\n [placeholder]=\"field?.properties?.placeholder\"\r\n [postfix]=\"field?.properties?.postfix ?? ''\"\r\n [precision]=\"field?.properties?.precision\"\r\n [prefix]=\"field?.properties?.prefix ?? ''\"\r\n [properties]=\"field?.properties\"\r\n [validators]=\"field?.validators\"\r\n (getKeyValue)=\"handleGetKeyValue($event)\"\r\n ></kwikui-input-number\r\n ><kwikui-messages\r\n [messages]=\"field.messages\"\r\n [id]=\"field.key\"\r\n ></kwikui-messages>\r\n </div>\r\n </ng-container>\r\n <!-- Input Date -->\r\n <ng-container *ngSwitchCase=\"'date'\">\r\n <div\r\n [hidden]=\"field?.hidden\"\r\n id=\"field_{{ field.key }}\"\r\n >\r\n <kwikui-input-date\r\n [disabled]=\"field?.disabled\"\r\n [focus]=\"field?.focus\"\r\n [formControl]=\"formGroup.controls[field.key]\"\r\n [formControlName]=\"field.key\"\r\n [id]=\"field.key\"\r\n [invalid]=\"field?.invalid\"\r\n [label]=\"field.label\"\r\n [max]=\"field?.properties?.max\"\r\n [min]=\"field?.properties?.min\"\r\n [placeholder]=\"field?.placeholder\"\r\n [properties]=\"field?.properties\"\r\n [validators]=\"field?.validators\"\r\n (getKeyValue)=\"handleGetKeyValue($event)\"\r\n ></kwikui-input-date>\r\n <kwikui-messages\r\n [messages]=\"field.messages\"\r\n [id]=\"field.key\"\r\n ></kwikui-messages>\r\n </div>\r\n </ng-container>\r\n <!-- Input Phone -->\r\n <ng-container *ngSwitchCase=\"'phone'\">\r\n <div\r\n [hidden]=\"field?.hidden\"\r\n id=\"field_{{ field.key }}\"\r\n >\r\n <kwikui-input-phone\r\n [countryCode]=\"field?.properties?.countryCode\"\r\n [disabled]=\"field?.disabled\"\r\n [focus]=\"field?.focus\"\r\n [formControl]=\"formGroup.controls[field.key]\"\r\n [formControlName]=\"field.key\"\r\n [id]=\"field.key\"\r\n [invalid]=\"field?.invalid\"\r\n [label]=\"field?.label\"\r\n [phoneMaskAfterCountryCode]=\"\r\n field?.properties?.phoneMaskAfterCountryCode\r\n \"\r\n [placeholder]=\"field?.placeholder\"\r\n [validators]=\"field?.validators\"\r\n (getKeyValue)=\"handleGetKeyValue($event)\"\r\n ></kwikui-input-phone>\r\n <kwikui-messages\r\n [messages]=\"field.messages\"\r\n [id]=\"field.key\"\r\n ></kwikui-messages>\r\n </div>\r\n </ng-container>\r\n <!-- Input Radio -->\r\n <ng-container *ngSwitchCase=\"'radio'\">\r\n <div\r\n [hidden]=\"field?.hidden\"\r\n id=\"field_{{ field.key }}\"\r\n >\r\n <label\r\n [tuiLabel]=\"labelTemplate\"\r\n style=\"min-height: auto\"\r\n >\r\n <kwikui-radio-list\r\n [disabled]=\"field?.disabled\"\r\n [focus]=\"field?.focus\"\r\n [formControl]=\"formGroup.controls[field.key]\"\r\n [formControlName]=\"field.key\"\r\n [id]=\"field.key\"\r\n [invalid]=\"field?.invalid\"\r\n [items]=\"field?.options\"\r\n [label]=\"field?.label\"\r\n [orientation]=\"field?.properties?.orientation\"\r\n [placeholder]=\"field?.placeholder\"\r\n [properties]=\"field?.properties\"\r\n [size]=\"field?.properties?.size\"\r\n [validators]=\"field?.validators\"\r\n (getKeyValue)=\"handleGetKeyValue($event)\"\r\n ></kwikui-radio-list>\r\n </label>\r\n <ng-template #labelTemplate>\r\n <p\r\n class=\"tui-space_bottom-2\"\r\n [hidden]=\"field?.hidden\"\r\n id=\"field_{{ field.key }}\"\r\n >\r\n <b>\r\n {{ field.label }}\r\n <span *ngIf=\"field.validators?.required\"></span>\r\n </b>\r\n </p>\r\n </ng-template>\r\n <kwikui-messages\r\n [messages]=\"field.messages\"\r\n [id]=\"field.key\"\r\n ></kwikui-messages>\r\n </div>\r\n </ng-container>\r\n <!-- Dropdown -->\r\n <ng-container *ngSwitchCase=\"'dropdown-with-search'\">\r\n <div\r\n [hidden]=\"field?.hidden\"\r\n id=\"field_{{ field.key }}\"\r\n >\r\n <kwikui-select-combobox\r\n [disabled]=\"field?.disabled\"\r\n [focus]=\"field?.focus\"\r\n [formControl]=\"formGroup.controls[field.key]\"\r\n [formControlName]=\"field.key\"\r\n [id]=\"field.key\"\r\n [invalid]=\"field?.invalid\"\r\n [label]=\"field.label\"\r\n [options]=\"field.options\"\r\n [placeholder]=\"field?.properties?.placeholder\"\r\n [properties]=\"field?.properties\"\r\n [validators]=\"field?.validators\"\r\n (getKeyValue)=\"handleGetKeyValue($event)\"\r\n ></kwikui-select-combobox>\r\n <kwikui-messages\r\n [messages]=\"field.messages\"\r\n [id]=\"field.key\"\r\n ></kwikui-messages>\r\n </div>\r\n </ng-container>\r\n <!-- API Call -->\r\n <ng-container *ngSwitchCase=\"'api-call'\">\r\n <div\r\n [hidden]=\"field?.hidden\"\r\n id=\"field_{{ field.key }}\"\r\n >\r\n <kwikui-button-api-call\r\n [apiStatus]=\"field?.api?.status?.value\"\r\n [class]=\"field?.class\"\r\n [disabled]=\"field?.disabled\"\r\n [id]=\"field.key\"\r\n [label]=\"field?.api?.status?.labels[field?.api?.status?.value]\"\r\n [showLoader]=\"field?.disabled === 'loading'\"\r\n shape=\"null\"\r\n size=\"m\"\r\n styles=\"width: fit-content\"\r\n (onClick)=\"this.handleOnClickApiCall($event)\"\r\n ></kwikui-button-api-call>\r\n <kwikui-messages\r\n [messages]=\"field.messages\"\r\n [id]=\"field.key\"\r\n ></kwikui-messages>\r\n </div>\r\n </ng-container>\r\n <!-- Mobile OTP -->\r\n <ng-container *ngSwitchCase=\"'otp'\">\r\n <div\r\n [hidden]=\"field?.hidden\"\r\n id=\"field_{{ field.key }}\"\r\n >\r\n <kwikui-input-otp\r\n [disabled]=\"field?.disabled\"\r\n [focus]=\"field?.focus\"\r\n [formControl]=\"formGroup.controls[field.key]\"\r\n [formControlName]=\"field.key\"\r\n [id]=\"field.key\"\r\n [invalid]=\"field?.invalid\"\r\n [label]=\"field?.label\"\r\n [mask]=\"field?.properties?.mask\"\r\n [placeholder]=\"field?.properties?.placeholder\"\r\n [properties]=\"field?.properties\"\r\n [validators]=\"field?.validators\"\r\n (getKeyValue)=\"handleGetKeyValue($event)\"\r\n ></kwikui-input-otp>\r\n <kwikui-messages\r\n [messages]=\"field.messages\"\r\n [id]=\"field.key\"\r\n ></kwikui-messages>\r\n </div>\r\n </ng-container>\r\n <!-- Aadhaar Number -->\r\n <ng-container *ngSwitchCase=\"'aadhaar-number'\">\r\n <div\r\n [hidden]=\"field?.hidden\"\r\n id=\"field_{{ field.key }}\"\r\n >\r\n <kwikui-input-aadhaar\r\n [disabled]=\"field?.disabled\"\r\n [focus]=\"field?.focus\"\r\n [formControl]=\"formGroup.controls[field.key]\"\r\n [formControlName]=\"field.key\"\r\n [id]=\"field.key\"\r\n [invalid]=\"field?.invalid\"\r\n [label]=\"field?.label\"\r\n [placeholder]=\"field?.placeholder\"\r\n [properties]=\"field?.properties\"\r\n [validators]=\"field?.validators\"\r\n (getKeyValue)=\"handleGetKeyValue($event)\"\r\n ></kwikui-input-aadhaar>\r\n <kwikui-messages\r\n [messages]=\"field.messages\"\r\n [id]=\"field.key\"\r\n ></kwikui-messages>\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n </ng-container>\r\n </form>\r\n <div class=\"kwikid-form-buttons\">\r\n <kwikui-button\r\n *ngIf=\"this.isMobileView\"\r\n [disabled]=\"viewFormsButton.disabled\"\r\n id=\"\"\r\n label=\"View Forms\"\r\n [showLoader]=\"viewFormsButton.showLoader\"\r\n styles=\"\"\r\n class=\"\"\r\n type=\"button\"\r\n appearance=\"secondary\"\r\n icon=\"\"\r\n iconRight=\"\"\r\n shape=\"null\"\r\n size=\"m\"\r\n styles=\"width: 100%\"\r\n (onClick)=\"this.handleOnClickViewForms($event)\"\r\n ></kwikui-button>\r\n <kwikui-button\r\n [disabled]=\"saveFormButton.disabled\"\r\n id=\"\"\r\n label=\"Save\"\r\n [showLoader]=\"saveFormButton.showLoader\"\r\n styles=\"\"\r\n class=\"\"\r\n type=\"button\"\r\n appearance=\"primary\"\r\n icon=\"\"\r\n iconRight=\"\"\r\n shape=\"null\"\r\n size=\"m\"\r\n styles=\"width: 100%\"\r\n (onClick)=\"this.handleOnClickSaveForm($event)\"\r\n ></kwikui-button>\r\n </div>\r\n</div>\r\n<div\r\n class=\"kwikid-form-container-loading\"\r\n *ngIf=\"this.loading\"\r\n>\r\n <div\r\n class=\"large-wrapper\"\r\n [class.tui-skeleton]=\"this.loading\"\r\n [class.tui-skeleton_rounded]=\"this.loading\"\r\n ></div>\r\n <div\r\n class=\"large-wrapper\"\r\n [class.tui-skeleton]=\"this.loading\"\r\n [class.tui-skeleton_rounded]=\"this.loading\"\r\n ></div>\r\n <div\r\n class=\"large-wrapper\"\r\n [class.tui-skeleton]=\"this.loading\"\r\n [class.tui-skeleton_rounded]=\"this.loading\"\r\n ></div>\r\n <div\r\n class=\"large-wrapper\"\r\n [class.tui-skeleton]=\"this.loading\"\r\n [class.tui-skeleton_rounded]=\"this.loading\"\r\n ></div>\r\n <div\r\n class=\"large-wrapper\"\r\n [class.tui-skeleton]=\"this.loading\"\r\n [class.tui-skeleton_rounded]=\"this.loading\"\r\n ></div>\r\n <div\r\n class=\"large-wrapper\"\r\n [class.tui-skeleton]=\"this.loading\"\r\n [class.tui-skeleton_rounded]=\"this.loading\"\r\n ></div>\r\n <div\r\n class=\"large-wrapper\"\r\n [class.tui-skeleton]=\"this.loading\"\r\n [class.tui-skeleton_rounded]=\"this.loading\"\r\n ></div>\r\n</div>\r\n<tui-push\r\n id=\"field-error-notification\"\r\n *tuiPush=\"showErrorNotification\"\r\n heading=\"Missing/Incorrect Fields!\"\r\n type=\"Error\"\r\n (close)=\"toggleErrorNotification(false)\"\r\n>\r\n <tui-svg\r\n src=\"tuiIconCancel\"\r\n style=\"color: #fff !important\"\r\n >\r\n </tui-svg>\r\n</tui-push>\r\n", styles: ["::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{border-radius:10px}::-webkit-scrollbar-thumb{background:lightgray;border-radius:10px}::-webkit-scrollbar-thumb:hover{background:gray}.kwikid-form-container{width:100%;height:100%;margin:0 auto;display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;align-content:center}.kwikid-form.show{width:100%;height:100%;padding:1rem;overflow-y:auto;display:flex;flex-direction:column;align-content:center;justify-content:flex-start;align-items:stretch;grid-row-gap:1rem;row-gap:1rem}.kwikid-form-buttons{width:100%;bottom:0px;padding:1rem;display:flex;flex-direction:row;align-content:center;justify-content:center;align-items:center;grid-column-gap:10px;column-gap:10px}.kwikid-form-buttons *{flex-grow:1}#uf-form-fields-header-container{display:flex;flex-direction:column;align-content:center;justify-content:center;align-items:flex-start;grid-row-gap:.5rem;row-gap:.5rem;padding:1rem}#uf-form-fields-header-container hr{width:100%}#uf-form-fields-title{color:#000;font-size:1.75em;font-weight:bold}#uf-form-fields-steps{color:var(--color-on-secondary-container);font-size:1em}.title{border-left:.25rem solid var(--tui-primary);padding:.75rem;font-size:1.4em;font-weight:bold;background-color:var(--tui-secondary);display:flex;flex-direction:row;align-content:center;justify-content:space-between;align-items:center;grid-gap:.5rem;gap:.5rem}.title:not(:first-child){margin-top:.5rem}.large-wrapper{width:100%;height:60px}.large-wrapper:first-child{margin-bottom:auto}.large-wrapper:last-child{margin-top:auto}.kwikid-form-container-loading{width:100%;height:100%;margin:0 auto;display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;align-content:center;grid-row-gap:1rem;row-gap:1rem;padding:1rem}#field-error-notification{background-color:var(--tui-error-fill);color:#fff!important}#field-error-notification .t-top{color:#fff!important}#field-error-notification .t-close{color:#fff!important}\n"], components: [{ type: i2__namespace.KwikUIButtonComponent, selector: "kwikui-button", inputs: ["disabled", "id", "label", "showLoader", "styles", "class", "type", "appearance", "icon", "iconRight", "shape", "size"], outputs: ["onClick"] }, { type: i2__namespace.KwikUIInputComponent, selector: "kwikui-input", inputs: ["label", "id", "type", "formControlName", "formControl", "placeholder", "focus", "invalid", "disabled", "validators", "case", "properties"], outputs: ["getKeyValue"] }, { type: i2__namespace.KwikUIMessagesComponent, selector: "kwikui-messages", inputs: ["messages", "id"] }, { type: i2__namespace.KwikUICheckboxBlockComponent, selector: "kwikui-checkbox-block", inputs: ["label", "id", "formControlName", "formControl", "placeholder", "focus", "invalid", "disabled", "size", "contentAlign", "validators", "properties"], outputs: ["getKeyValue"] }, { type: i2__namespace.KwikUIInputNumberComponent, selector: "kwikui-input-number", inputs: ["label", "id", "formControlName", "formControl", "focus", "invalid", "disabled", "placeholder", "min", "max", "prefix", "postfix", "precision", "decimal", "validators", "properties"], outputs: ["getKeyValue"] }, { type: i2__namespace.KwikUIInputDateComponent, selector: "kwikui-input-date", inputs: ["label", "id", "formControlName", "formControl", "focus", "invalid", "disabled", "placeholder", "min", "max", "validators", "properties"], outputs: ["getKeyValue"] }, { type: i2__namespace.KwikUIInputPhoneComponent, selector: "kwikui-input-phone", inputs: ["label", "id", "formControlName", "formControl", "focus", "invalid", "disabled", "placeholder", "countryCode", "phoneMaskAfterCountryCode", "validators", "properties"], outputs: ["getKeyValue"] }, { type: i3__namespace.TuiLabelComponent, selector: "label[tuiLabel]", inputs: ["tuiLabel", "context"] }, { type: i2__namespace.KwikUIRadioListComponent, selector: "kwikui-radio-list", inputs: ["label", "id", "formControlName", "formControl", "placeholder", "focus", "invalid", "disabled", "size", "items", "orientation", "validators", "properties"], outputs: ["getKeyValue"] }, { type: i2__namespace.KwikUISelectComboboxComponent, selector: "kwikui-select-combobox", inputs: ["label", "id", "formControlName", "formControl", "placeholder", "focus", "invalid", "disabled", "options", "validators", "properties"], outputs: ["getKeyValue"] }, { type: i2__namespace.KwikUIButtonApiCallComponent, selector: "kwikui-button-api-call", inputs: ["disabled", "id", "label", "showLoader", "styles", "class", "shape", "size", "apiStatus"], outputs: ["onClick"] }, { type: i2__namespace.KwikUIInputOtpComponent, selector: "kwikui-input-otp", inputs: ["label", "id", "formControlName", "formControl", "focus", "invalid", "disabled", "placeholder", "mask", "validators", "properties"], outputs: ["getKeyValue"] }, { type: i2__namespace.KwikUIInputAadhaarComponent, selector: "kwikui-input-aadhaar", inputs: ["label", "id", "formControlName", "formControl", "focus", "invalid", "disabled", "placeholder", "mask", "validators", "properties"], outputs: ["getKeyValue"] }, { type: i4__namespace.TuiPushComponent, selector: "tui-push", inputs: ["heading", "type", "timestamp"], outputs: ["close"] }, { type: i3__namespace.TuiSvgComponent, selector: "tui-svg", inputs: ["src"] }], directives: [{ type: i5__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6__namespace.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i6__namespace.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i6__namespace.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i5__namespace.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i5__namespace.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i5__namespace.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i6__namespace.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i6__namespace.FormControlDirective, selector: "[formControl]", inputs: ["disabled", "formControl", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { type: i6__namespace.FormControlName, selector: "[formControlName]", inputs: ["disabled", "formControlName", "ngModel"], outputs: ["ngModelChange"] }, { type: i4__namespace.TuiPushAlertDirective, selector: "[tuiPush]", inputs: ["tuiPush"] }, { type: i4__namespace.TuiPushDirective, selector: "tui-push" }] });
2881
2878
  __decorate([
2882
2879
  log
2883
2880
  ], KwikIDFormViewComponent.prototype, "ngOnInit", null);
@@ -2920,6 +2917,9 @@
2920
2917
  __decorate([
2921
2918
  log
2922
2919
  ], KwikIDFormViewComponent.prototype, "handleOnClickSaveForm", null);
2920
+ __decorate([
2921
+ log
2922
+ ], KwikIDFormViewComponent.prototype, "toggleErrorNotification", null);
2923
2923
  __decorate([
2924
2924
  log
2925
2925
  ], KwikIDFormViewComponent.prototype, "fieldHide", null);
@@ -2976,7 +2976,15 @@
2976
2976
  styleUrls: ["./form-view.component.scss"],
2977
2977
  providers: [KwikIDFormViewService]
2978
2978
  }]
2979
- }], ctorParameters: function () { return [{ type: KwikIDFormViewService }]; }, propDecorators: { formConfig: [{
2979
+ }], ctorParameters: function () {
2980
+ return [{ type: i4__namespace.TuiPushService, decorators: [{
2981
+ type: i0.Inject,
2982
+ args: [i4.TuiPushService]
2983
+ }] }, { type: i3__namespace.TuiAlertService, decorators: [{
2984
+ type: i0.Inject,
2985
+ args: [i3.TuiAlertService]
2986
+ }] }, { type: KwikIDFormViewService }];
2987
+ }, propDecorators: { formConfig: [{
2980
2988
  type: i0.Input
2981
2989
  }], formData: [{
2982
2990
  type: i0.Input
@@ -2996,7 +3004,7 @@
2996
3004
  type: i0.Output
2997
3005
  }], getActiveFormData: [{
2998
3006
  type: i0.Output
2999
- }], ngOnInit: [], ngAfterViewInit: [], ngOnChanges: [], initFormConfig: [], setFormFieldsFromFormConfig: [], setFormDataFromAllFormsData: [], handleConnectedElementFieldActions: [], handleConnectedElementFields: [], handleConnectedElements: [], handleGetKeyValue: [], handleOnClickResetFormFields: [], handleOnClickApiCall: [], handleOnClickViewForms: [], handleOnClickSaveForm: [], fieldHide: [], fieldShow: [], fieldDisable: [], fieldEnable: [], fieldReset: [], fieldErrorShow: [], fieldErrorHide: [], fieldMessageShow: [], fieldMessageHide: [], setObjectValue: [], patchFieldControlValue: [], isFieldValid: [], isFieldEnabled: [], getFormGroupRawValues: [], handleFieldTypeSearchText: [], takeAction: [] } });
3007
+ }], ngOnInit: [], ngAfterViewInit: [], ngOnChanges: [], initFormConfig: [], setFormFieldsFromFormConfig: [], setFormDataFromAllFormsData: [], handleConnectedElementFieldActions: [], handleConnectedElementFields: [], handleConnectedElements: [], handleGetKeyValue: [], handleOnClickResetFormFields: [], handleOnClickApiCall: [], handleOnClickViewForms: [], handleOnClickSaveForm: [], toggleErrorNotification: [], fieldHide: [], fieldShow: [], fieldDisable: [], fieldEnable: [], fieldReset: [], fieldErrorShow: [], fieldErrorHide: [], fieldMessageShow: [], fieldMessageHide: [], setObjectValue: [], patchFieldControlValue: [], isFieldValid: [], isFieldEnabled: [], getFormGroupRawValues: [], handleFieldTypeSearchText: [], takeAction: [] } });
3000
3008
 
3001
3009
  var hasKey = function (object, key) {
3002
3010
  return object.hasOwnProperty(key);
@@ -3067,7 +3075,7 @@
3067
3075
  return KwikIDFormsListComponent;
3068
3076
  }());
3069
3077
  /** @nocollapse */ KwikIDFormsListComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: KwikIDFormsListComponent, deps: [], target: i0__namespace.ɵɵFactoryTarget.Component });
3070
- /** @nocollapse */ KwikIDFormsListComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: KwikIDFormsListComponent, selector: "kwikid-forms-list", inputs: { showFormFields: "showFormFields", userConfig: "userConfig", formsList: "formsList", formsListCompleted: "formsListCompleted", isMobileView: "isMobileView" }, outputs: { onClickSetActiveForm: "onClickSetActiveForm", onClickHideFormsList: "onClickHideFormsList", onClickSubmitForms: "onClickSubmitForms" }, usesOnChanges: true, ngImport: i0__namespace, template: "<div id=\"sidebar-container\">\r\n <div id=\"sidebar\">\r\n <div ngClass=\"kwikid-form-header\">\r\n <div id=\"uf-header\">\r\n <div id=\"uf-header-logo-container\">\r\n <img\r\n id=\"uf-header-logo\"\r\n src=\"{{ this.userConfig.theme.clientLogo }}\"\r\n [ngClass]=\"'large-icon'\"\r\n />\r\n </div>\r\n </div>\r\n <hr />\r\n </div>\r\n <div id=\"uf-progress\">\r\n <div id=\"uf-progress-steps\">\r\n {{ this.formsListCompleted.length }} / {{ this.formsList.length }} Steps\r\n Completed\r\n </div>\r\n <kwikui-progress-segmented\r\n [max]=\"this.formsList.length\"\r\n size=\"m\"\r\n [value]=\"this.formsListCompleted.length\"\r\n ></kwikui-progress-segmented>\r\n </div>\r\n <div id=\"uf-sections-container\">\r\n <div\r\n *ngFor=\"let form of formsList; let i = index\"\r\n [class]=\"'uf-section-item'\"\r\n [class.completed]=\"form.status === 'completed' && !form.disabled\"\r\n [class.edit]=\"form.status === 'editable' && !form.disabled\"\r\n [class.locked]=\"form.status === 'locked' && form.disabled\"\r\n (click)=\"\r\n form.status === 'locked' && form.disabled\r\n ? undefined\r\n : handleOnClickSetActiveForm(form.key)\r\n \"\r\n >\r\n <div class=\"uf-form-section-card-title\">\r\n {{ form.title }}\r\n </div>\r\n <div class=\"uf-form-section-card-action\">\r\n <div\r\n *ngIf=\"form.status === 'completed' && !form.disabled\"\r\n class=\"uf-form-section-card-action-img completed\"\r\n >\r\n <tui-svg src=\"tuiIconCheckLarge\"></tui-svg>\r\n </div>\r\n <div\r\n *ngIf=\"form.status !== 'completed' && !form.disabled\"\r\n class=\"uf-form-section-card-action-img edit\"\r\n >\r\n <tui-svg src=\"tuiIconEdit\"></tui-svg>\r\n </div>\r\n <div\r\n *ngIf=\"form.status !== 'completed' && form.disabled\"\r\n class=\"uf-form-section-card-action-img locked\"\r\n >\r\n <tui-svg src=\"tuiIconLock\"></tui-svg>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div id=\"submit-sidebar-btn-container\">\r\n <kwikui-button\r\n [disabled]=\"false\"\r\n id=\"\"\r\n label=\"Submit\"\r\n [showLoader]=\"false\"\r\n styles=\"\"\r\n class=\"\"\r\n type=\"button\"\r\n appearance=\"primary\"\r\n icon=\"\"\r\n iconRight=\"\"\r\n shape=\"null\"\r\n size=\"m\"\r\n styles=\"width: 100%\"\r\n (onClick)=\"handleOnSubmitForms($event)\"\r\n ></kwikui-button>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: ["::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{border-radius:10px}::-webkit-scrollbar-thumb{background:lightgray;border-radius:10px}::-webkit-scrollbar-thumb:hover{background:gray}#sidebar-container{width:100%;height:100%;margin:0 auto;display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;align-content:center}#sidebar{width:100%;height:100%;display:flex;flex-direction:column;align-content:center;justify-content:flex-start;align-items:stretch}.uf-section-item{width:100%;display:flex;flex-direction:row;align-items:center;justify-content:space-between;align-content:center;padding:1rem;grid-gap:1rem;gap:1rem;cursor:pointer;box-shadow:0 .1rem .5rem -.25rem gray;border-radius:.5rem;background-color:var(--tui-base-02)}.uf-section-item:hover{box-shadow:0 .2rem .75rem -.5rem #656565}#submit-sidebar-btn-container{width:100%;bottom:0px;z-index:1;padding:1rem;display:flex;flex-direction:row;align-content:center;justify-content:center;align-items:center;grid-gap:1rem;gap:1rem}#submit-sidebar-btn-container *{flex-grow:1}#uf-sections-container{display:flex;flex-direction:column;height:100%;grid-row-gap:20px;row-gap:20px;padding:1rem;overflow-y:auto}.uf-form-section-card{display:flex;flex-direction:row;align-content:center;justify-content:space-between;align-items:center;grid-column-gap:10px;column-gap:10px;border:none;border-radius:8px;background-color:#e9e9e9;height:-moz-fit-content;height:fit-content;min-height:60px;padding:10px 15px;width:100%;max-width:350px;margin:0 auto}.uf-section-item.locked{-webkit-user-select:none;user-select:none;cursor:not-allowed}.uf-form-section-card .uf-form-section-card-title{font-size:1.2em;text-align:left;line-height:1.25em}.uf-form-section-card .uf-form-section-card-action{width:30px;height:30px;display:flex;flex-direction:row;align-content:center;justify-content:center;align-items:center}.uf-form-section-card .uf-form-section-card-action .uf-form-section-card-action-img{width:30px;height:30px;display:flex;flex-direction:row;align-content:center;justify-content:center;align-items:center;border-radius:100%;color:#fff;font-weight:bold}.uf-form-section-card-action-img.completed{background-color:#228b22;padding:.25rem;border-radius:50%;color:#fff}.uf-form-section-card-action-img.edit{background-color:#dc143c;padding:.25rem;border-radius:50%;color:#fff}.uf-form-section-card-action-img.locked{background-color:gray;padding:.25rem;border-radius:50%;color:#fff}#uf-progress{display:flex;padding:1rem;flex-direction:column;align-content:center;justify-content:center;align-items:stretch;grid-gap:.5rem;gap:.5rem}#uf-progress-steps{font-size:1em;text-align:right;color:#3d3d3d}.uf-form-section-card-title{font-size:1em;font-weight:bold;color:#121212}@media screen and (max-width: 600px){#sidebar-container{max-width:unset}}.kwikid-form-header{height:70px;z-index:6}.kwikid-form-header hr{width:calc(100% - 1rem);margin-left:auto;margin-right:auto}#uf-header{display:flex;flex-direction:row;align-content:center;align-items:center;justify-content:flex-start;grid-column-gap:10px;column-gap:10px;padding:10px 20px;width:100%;max-width:calc(400px + 50vw + 2rem);margin:0 auto;height:70px;z-index:1}#uf-header #uf-header-goback-container{display:none}#uf-header #uf-header-goback-container:hover{border-radius:50%;background-color:#d3d3d3}#uf-header #uf-header-goback-container #uf-header-goback{width:100%;height:auto}#uf-header #uf-header-logo-container{display:flex;flex-direction:row;align-content:center;justify-content:center;align-items:center}#uf-header #uf-header-logo-container #uf-header-logo.small-icon{width:100%;height:50px}#uf-header #uf-header-logo-container #uf-header-logo.large-icon{width:100%;height:50px}#uf-header #uf-header-title-container{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;grid-row-gap:4px;row-gap:4px}#uf-header #uf-header-title-container #uf-header-title{font-size:1.4em;color:#121212}#uf-header #uf-header-title-container #uf-header-subtitle{font-size:1.2em;color:#121212}\n"], components: [{ type: i2__namespace.KwikUIProgressSegmentedComponent, selector: "kwikui-progress-segmented", inputs: ["value", "max", "size", "colors"] }, { type: i3__namespace.TuiSvgComponent, selector: "tui-svg", inputs: ["src"] }, { type: i2__namespace.KwikUIButtonComponent, selector: "kwikui-button", inputs: ["disabled", "id", "label", "showLoader", "styles", "class", "type", "appearance", "icon", "iconRight", "shape", "size"], outputs: ["onClick"] }], directives: [{ type: i4__namespace.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i4__namespace.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i4__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
3078
+ /** @nocollapse */ KwikIDFormsListComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: KwikIDFormsListComponent, selector: "kwikid-forms-list", inputs: { showFormFields: "showFormFields", userConfig: "userConfig", formsList: "formsList", formsListCompleted: "formsListCompleted", isMobileView: "isMobileView" }, outputs: { onClickSetActiveForm: "onClickSetActiveForm", onClickHideFormsList: "onClickHideFormsList", onClickSubmitForms: "onClickSubmitForms" }, usesOnChanges: true, ngImport: i0__namespace, template: "<div id=\"sidebar-container\">\r\n <div id=\"sidebar\">\r\n <div ngClass=\"kwikid-form-header\">\r\n <div id=\"uf-header\">\r\n <div id=\"uf-header-logo-container\">\r\n <img\r\n id=\"uf-header-logo\"\r\n src=\"{{ this.userConfig.theme.clientLogo }}\"\r\n [ngClass]=\"'large-icon'\"\r\n />\r\n </div>\r\n </div>\r\n <hr />\r\n </div>\r\n <div id=\"uf-progress\">\r\n <div id=\"uf-progress-steps\">\r\n {{ this.formsListCompleted.length }} / {{ this.formsList.length }} Steps\r\n Completed\r\n </div>\r\n <kwikui-progress-segmented\r\n [max]=\"this.formsList.length\"\r\n size=\"m\"\r\n [value]=\"this.formsListCompleted.length\"\r\n ></kwikui-progress-segmented>\r\n </div>\r\n <div id=\"uf-sections-container\">\r\n <div\r\n *ngFor=\"let form of formsList; let i = index\"\r\n [class]=\"'uf-section-item'\"\r\n [class.completed]=\"form.status === 'completed' && !form.disabled\"\r\n [class.edit]=\"form.status === 'editable' && !form.disabled\"\r\n [class.locked]=\"form.status === 'locked' && form.disabled\"\r\n (click)=\"\r\n form.status === 'locked' && form.disabled\r\n ? undefined\r\n : handleOnClickSetActiveForm(form.key)\r\n \"\r\n >\r\n <div class=\"uf-form-section-card-title\">\r\n {{ form.title }}\r\n </div>\r\n <div class=\"uf-form-section-card-action\">\r\n <div\r\n *ngIf=\"form.status === 'completed' && !form.disabled\"\r\n class=\"uf-form-section-card-action-img completed\"\r\n >\r\n <tui-svg src=\"tuiIconCheckLarge\"></tui-svg>\r\n </div>\r\n <div\r\n *ngIf=\"form.status !== 'completed' && !form.disabled\"\r\n class=\"uf-form-section-card-action-img edit\"\r\n >\r\n <tui-svg src=\"tuiIconEdit\"></tui-svg>\r\n </div>\r\n <div\r\n *ngIf=\"form.status !== 'completed' && form.disabled\"\r\n class=\"uf-form-section-card-action-img locked\"\r\n >\r\n <tui-svg src=\"tuiIconLock\"></tui-svg>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div id=\"submit-sidebar-btn-container\">\r\n <kwikui-button\r\n [disabled]=\"false\"\r\n id=\"\"\r\n label=\"Submit\"\r\n [showLoader]=\"false\"\r\n styles=\"\"\r\n class=\"\"\r\n type=\"button\"\r\n appearance=\"primary\"\r\n icon=\"\"\r\n iconRight=\"\"\r\n shape=\"null\"\r\n size=\"m\"\r\n styles=\"width: 100%\"\r\n (onClick)=\"handleOnSubmitForms($event)\"\r\n ></kwikui-button>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: ["::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{border-radius:10px}::-webkit-scrollbar-thumb{background:lightgray;border-radius:10px}::-webkit-scrollbar-thumb:hover{background:gray}#sidebar-container{width:100%;height:100%;margin:0 auto;display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;align-content:center}#sidebar{width:100%;height:100%;display:flex;flex-direction:column;align-content:center;justify-content:flex-start;align-items:stretch}.uf-section-item{width:100%;display:flex;flex-direction:row;align-items:center;justify-content:space-between;align-content:center;padding:1rem;grid-gap:1rem;gap:1rem;cursor:pointer;box-shadow:0 .1rem .5rem -.25rem gray;border-radius:.5rem;background-color:var(--tui-base-02)}.uf-section-item:hover{box-shadow:0 .2rem .75rem -.5rem #656565}#submit-sidebar-btn-container{width:100%;bottom:0px;z-index:1;padding:1rem;display:flex;flex-direction:row;align-content:center;justify-content:center;align-items:center;grid-gap:1rem;gap:1rem}#submit-sidebar-btn-container *{flex-grow:1}#uf-sections-container{display:flex;flex-direction:column;height:100%;grid-row-gap:20px;row-gap:20px;padding:1rem;overflow-y:auto}.uf-form-section-card{display:flex;flex-direction:row;align-content:center;justify-content:space-between;align-items:center;grid-column-gap:10px;column-gap:10px;border:none;border-radius:8px;background-color:#e9e9e9;height:-moz-fit-content;height:fit-content;min-height:60px;padding:10px 15px;width:100%;max-width:350px;margin:0 auto}.uf-section-item.locked{-webkit-user-select:none;user-select:none;cursor:not-allowed}.uf-form-section-card .uf-form-section-card-title{font-size:1.2em;text-align:left;line-height:1.25em}.uf-form-section-card .uf-form-section-card-action{width:30px;height:30px;display:flex;flex-direction:row;align-content:center;justify-content:center;align-items:center}.uf-form-section-card .uf-form-section-card-action .uf-form-section-card-action-img{width:30px;height:30px;display:flex;flex-direction:row;align-content:center;justify-content:center;align-items:center;border-radius:100%;color:#fff;font-weight:bold}.uf-form-section-card-action-img.completed{background-color:#228b22;padding:.25rem;border-radius:50%;color:#fff}.uf-form-section-card-action-img.edit{background-color:#dc143c;padding:.25rem;border-radius:50%;color:#fff}.uf-form-section-card-action-img.locked{background-color:gray;padding:.25rem;border-radius:50%;color:#fff}#uf-progress{display:flex;padding:1rem;flex-direction:column;align-content:center;justify-content:center;align-items:stretch;grid-gap:.5rem;gap:.5rem}#uf-progress-steps{font-size:1em;text-align:right;color:#3d3d3d}.uf-form-section-card-title{font-size:1em;font-weight:bold;color:#121212}@media screen and (max-width: 600px){#sidebar-container{max-width:unset}}.kwikid-form-header{height:70px;z-index:6}.kwikid-form-header hr{width:calc(100% - 1rem);margin-left:auto;margin-right:auto}#uf-header{display:flex;flex-direction:row;align-content:center;align-items:center;justify-content:flex-start;grid-column-gap:10px;column-gap:10px;padding:10px 20px;width:100%;max-width:calc(400px + 50vw + 2rem);margin:0 auto;height:70px;z-index:1}#uf-header #uf-header-goback-container{display:none}#uf-header #uf-header-goback-container:hover{border-radius:50%;background-color:#d3d3d3}#uf-header #uf-header-goback-container #uf-header-goback{width:100%;height:auto}#uf-header #uf-header-logo-container{display:flex;flex-direction:row;align-content:center;justify-content:center;align-items:center}#uf-header #uf-header-logo-container #uf-header-logo.small-icon{width:100%;height:50px}#uf-header #uf-header-logo-container #uf-header-logo.large-icon{width:100%;height:50px}#uf-header #uf-header-title-container{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;grid-row-gap:4px;row-gap:4px}#uf-header #uf-header-title-container #uf-header-title{font-size:1.4em;color:#121212}#uf-header #uf-header-title-container #uf-header-subtitle{font-size:1.2em;color:#121212}\n"], components: [{ type: i2__namespace.KwikUIProgressSegmentedComponent, selector: "kwikui-progress-segmented", inputs: ["value", "max", "size", "colors"] }, { type: i3__namespace.TuiSvgComponent, selector: "tui-svg", inputs: ["src"] }, { type: i2__namespace.KwikUIButtonComponent, selector: "kwikui-button", inputs: ["disabled", "id", "label", "showLoader", "styles", "class", "type", "appearance", "icon", "iconRight", "shape", "size"], outputs: ["onClick"] }], directives: [{ type: i5__namespace.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i5__namespace.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i5__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
3071
3079
  i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: KwikIDFormsListComponent, decorators: [{
3072
3080
  type: i0.Component,
3073
3081
  args: [{
@@ -3093,6 +3101,308 @@
3093
3101
  type: i0.Output
3094
3102
  }] } });
3095
3103
 
3104
+ var Sources = /** @class */ (function () {
3105
+ function Sources(userConfig) {
3106
+ this._userConfig = userConfig;
3107
+ }
3108
+ Object.defineProperty(Sources.prototype, "userConfig", {
3109
+ get: function () {
3110
+ return this._userConfig;
3111
+ },
3112
+ set: function (value) {
3113
+ this._userConfig = value;
3114
+ },
3115
+ enumerable: false,
3116
+ configurable: true
3117
+ });
3118
+ Sources.prototype.getValueFromUserConfig = function (path) {
3119
+ var value = "";
3120
+ if (isNotEmpty(path)) {
3121
+ value = jpQueryWrapper(this._userConfig, path);
3122
+ }
3123
+ else {
3124
+ value = setEmptyValue(this._userConfig);
3125
+ }
3126
+ return value;
3127
+ };
3128
+ Sources.prototype.getValueFromBrowserStorage = function (type, key) {
3129
+ var value = "";
3130
+ switch (type) {
3131
+ case EBrowserStorageType.LOCAL_STORAGE:
3132
+ value = isNotEmptyBrowserStorageValue(localStorage.getItem(key))
3133
+ ? localStorage.getItem(key)
3134
+ : "";
3135
+ break;
3136
+ case EBrowserStorageType.SESSION_STORAGE:
3137
+ value = isNotEmptyBrowserStorageValue(sessionStorage.getItem(key))
3138
+ ? sessionStorage.getItem(key)
3139
+ : "";
3140
+ break;
3141
+ default:
3142
+ value = "";
3143
+ break;
3144
+ }
3145
+ return value;
3146
+ };
3147
+ Sources.prototype.getValueFromSource = function (source) {
3148
+ var value = "";
3149
+ switch (source.key) {
3150
+ case ESourceKey.USER_CONFIG:
3151
+ value = this.getValueFromUserConfig(source.props.path);
3152
+ break;
3153
+ case ESourceKey.BROWSER_STORAGE:
3154
+ value = this.getValueFromBrowserStorage(source.props.browserStorage.type, source.props.browserStorage.key);
3155
+ break;
3156
+ case ESourceKey.PREDEFINED:
3157
+ value = source.value;
3158
+ break;
3159
+ default:
3160
+ value = "";
3161
+ break;
3162
+ }
3163
+ return value;
3164
+ };
3165
+ Sources.prototype.setValueToUserConfig = function (path, value) {
3166
+ this._userConfig = setValueToObject(this._userConfig, path, value);
3167
+ };
3168
+ Sources.prototype.setValueToBrowserStorage = function (type, key, value) {
3169
+ switch (type) {
3170
+ case EBrowserStorageType.LOCAL_STORAGE:
3171
+ localStorage.setItem(key, value);
3172
+ break;
3173
+ case EBrowserStorageType.SESSION_STORAGE:
3174
+ sessionStorage.setItem(key, value);
3175
+ break;
3176
+ default:
3177
+ break;
3178
+ }
3179
+ };
3180
+ Sources.prototype.setValueToSource = function (source, value) {
3181
+ return __awaiter(this, void 0, void 0, function () {
3182
+ var _a;
3183
+ return __generator(this, function (_b) {
3184
+ switch (_b.label) {
3185
+ case 0:
3186
+ _a = source.key;
3187
+ switch (_a) {
3188
+ case ESourceKey.USER_CONFIG: return [3 /*break*/, 1];
3189
+ case ESourceKey.BROWSER_STORAGE: return [3 /*break*/, 2];
3190
+ }
3191
+ return [3 /*break*/, 4];
3192
+ case 1:
3193
+ this.setValueToUserConfig(source.props.path, value);
3194
+ return [3 /*break*/, 5];
3195
+ case 2: return [4 /*yield*/, this.setValueToBrowserStorage(source.props.browserStorage.type, source.props.browserStorage.key, value)];
3196
+ case 3:
3197
+ _b.sent();
3198
+ return [3 /*break*/, 5];
3199
+ case 4: return [3 /*break*/, 5];
3200
+ case 5: return [2 /*return*/];
3201
+ }
3202
+ });
3203
+ });
3204
+ };
3205
+ return Sources;
3206
+ }());
3207
+
3208
+ var Condition = /** @class */ (function () {
3209
+ function Condition(condition, rulesMapping) {
3210
+ this._condition = condition;
3211
+ this._rulesMapping = rulesMapping;
3212
+ }
3213
+ Condition.prototype.parseKeys = function (condition, rulesEvaluationMapping) {
3214
+ Object.keys(rulesEvaluationMapping).forEach(function (key) {
3215
+ condition = replaceString(condition, key, rulesEvaluationMapping[key]);
3216
+ });
3217
+ return condition;
3218
+ };
3219
+ Condition.prototype.parseOperators = function (condition) {
3220
+ return condition.replace(/AND|OR|NOT|XOR|NAND|NOR|XNOR/g, function (match) {
3221
+ switch (match) {
3222
+ case "AND":
3223
+ return "&&";
3224
+ case "OR":
3225
+ return "||";
3226
+ case "NOT":
3227
+ return "!";
3228
+ case "XOR":
3229
+ return "^";
3230
+ case "NAND":
3231
+ return "!&";
3232
+ case "NOR":
3233
+ return "!|";
3234
+ case "XNOR":
3235
+ return "!^";
3236
+ default:
3237
+ return match;
3238
+ }
3239
+ });
3240
+ };
3241
+ Condition.prototype.evaluate = function () {
3242
+ this._condition = this.parseKeys(this._condition, this._rulesMapping);
3243
+ this._condition = this.parseOperators(this._condition);
3244
+ return eval(this._condition);
3245
+ };
3246
+ return Condition;
3247
+ }());
3248
+
3249
+ var Actions = /** @class */ (function () {
3250
+ function Actions(action, ruleMapping, userConfig, takeAction) {
3251
+ this._action = action;
3252
+ this._userConfig = userConfig;
3253
+ this._ruleMapping = ruleMapping;
3254
+ this._takeAction = takeAction;
3255
+ }
3256
+ Actions.prototype.execute = function () {
3257
+ return __awaiter(this, void 0, void 0, function () {
3258
+ var condition, actionSuccess;
3259
+ return __generator(this, function (_a) {
3260
+ condition = new Condition(this._action.condition, this._ruleMapping);
3261
+ actionSuccess = condition.evaluate();
3262
+ if (actionSuccess) {
3263
+ return [2 /*return*/, this._takeAction(this._action, this._userConfig)];
3264
+ }
3265
+ return [2 /*return*/];
3266
+ });
3267
+ });
3268
+ };
3269
+ return Actions;
3270
+ }());
3271
+
3272
+ var Rules = /** @class */ (function () {
3273
+ function Rules(rules, userConfig) {
3274
+ this._userConfig = userConfig;
3275
+ this._rules = rules;
3276
+ }
3277
+ Rules.prototype.evaluate = function (rule) {
3278
+ var ruleType = rule.key;
3279
+ var ruleEvaluationStatus = false;
3280
+ var source = new Sources(this._userConfig);
3281
+ switch (ruleType) {
3282
+ case ERuleKey.OBJECT_PATH_EXISTS:
3283
+ var ruleObjectPathExists = rule;
3284
+ var ruleObjectPathExistsObject = ruleObjectPathExists.props.object;
3285
+ var ruleObjectPathExistsPath = ruleObjectPathExists.props.path;
3286
+ switch (ruleObjectPathExistsObject) {
3287
+ case ESourceKey.USER_CONFIG:
3288
+ ruleEvaluationStatus = hasPath(this._userConfig, ruleObjectPathExistsPath);
3289
+ break;
3290
+ default:
3291
+ ruleEvaluationStatus = false;
3292
+ break;
3293
+ }
3294
+ break;
3295
+ case ERuleKey.VALUE_CHECK:
3296
+ var ruleValueCheck = rule;
3297
+ var ruleValueCheckSource = ruleValueCheck.props.value.source;
3298
+ var ruleValueCheckValue = source.getValueFromSource(ruleValueCheckSource);
3299
+ if (ruleValueCheck.props.pattern.key === EPatternKey.CUSTOM) {
3300
+ var re = new RegExp(ruleValueCheck.props.pattern.pattern);
3301
+ }
3302
+ else {
3303
+ var re = new RegExp(EPattern[ruleValueCheck.props.pattern.key]);
3304
+ }
3305
+ ruleEvaluationStatus = re.test(ruleValueCheckValue);
3306
+ break;
3307
+ case ERuleKey.VALUE_CHANGE:
3308
+ var ruleValueChange = rule;
3309
+ var ruleValueChangeCurrentSource = ruleValueChange.props.value.current.source;
3310
+ var ruleValueChangePreviousSource = ruleValueChange.props.value.previous.source;
3311
+ var previousValue = source.getValueFromSource(ruleValueChangePreviousSource);
3312
+ var currentValue = source.getValueFromSource(ruleValueChangeCurrentSource);
3313
+ ruleEvaluationStatus = previousValue === currentValue;
3314
+ break;
3315
+ default:
3316
+ break;
3317
+ }
3318
+ return ruleEvaluationStatus;
3319
+ };
3320
+ Rules.prototype.mapping = function () {
3321
+ var e_1, _a, _b;
3322
+ var rulesEvaluationMapping = {};
3323
+ try {
3324
+ for (var _c = __values(this._rules), _d = _c.next(); !_d.done; _d = _c.next()) {
3325
+ var rule = _d.value;
3326
+ var ruleEvaluationStatus = this.evaluate(rule);
3327
+ rulesEvaluationMapping = Object.assign(Object.assign({}, rulesEvaluationMapping), (_b = {}, _b[rule.id] = ruleEvaluationStatus, _b));
3328
+ }
3329
+ }
3330
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
3331
+ finally {
3332
+ try {
3333
+ if (_d && !_d.done && (_a = _c.return)) _a.call(_c);
3334
+ }
3335
+ finally { if (e_1) throw e_1.error; }
3336
+ }
3337
+ return rulesEvaluationMapping;
3338
+ };
3339
+ return Rules;
3340
+ }());
3341
+
3342
+ var Validations = /** @class */ (function () {
3343
+ function Validations(userConfig, takeAction) {
3344
+ this._userConfig = userConfig;
3345
+ this._takeAction = takeAction;
3346
+ }
3347
+ Object.defineProperty(Validations.prototype, "userConfig", {
3348
+ get: function () {
3349
+ return this._userConfig;
3350
+ },
3351
+ set: function (value) {
3352
+ this._userConfig = value;
3353
+ },
3354
+ enumerable: false,
3355
+ configurable: true
3356
+ });
3357
+ Validations.prototype.validateField = function () {
3358
+ return __awaiter(this, void 0, void 0, function () {
3359
+ var validations, triggers, rules, actions, rulesMapping, actions_1, actions_1_1, action, conditionEvaluation, actions_2, e_1_1;
3360
+ var e_1, _a;
3361
+ return __generator(this, function (_b) {
3362
+ switch (_b.label) {
3363
+ case 0:
3364
+ validations = this._userConfig.userFormFieldsConfig.validation;
3365
+ triggers = validations === null || validations === void 0 ? void 0 : validations.triggers;
3366
+ rules = validations.rules;
3367
+ actions = validations.actions;
3368
+ rulesMapping = new Rules(rules, this._userConfig).mapping();
3369
+ _b.label = 1;
3370
+ case 1:
3371
+ _b.trys.push([1, 6, 7, 8]);
3372
+ actions_1 = __values(actions), actions_1_1 = actions_1.next();
3373
+ _b.label = 2;
3374
+ case 2:
3375
+ if (!!actions_1_1.done) return [3 /*break*/, 5];
3376
+ action = actions_1_1.value;
3377
+ conditionEvaluation = new Condition(action.condition, rulesMapping).evaluate();
3378
+ if (!conditionEvaluation) return [3 /*break*/, 4];
3379
+ actions_2 = new Actions(action, rulesMapping, this._userConfig, this._takeAction);
3380
+ return [4 /*yield*/, actions_2.execute()];
3381
+ case 3:
3382
+ _b.sent();
3383
+ _b.label = 4;
3384
+ case 4:
3385
+ actions_1_1 = actions_1.next();
3386
+ return [3 /*break*/, 2];
3387
+ case 5: return [3 /*break*/, 8];
3388
+ case 6:
3389
+ e_1_1 = _b.sent();
3390
+ e_1 = { error: e_1_1 };
3391
+ return [3 /*break*/, 8];
3392
+ case 7:
3393
+ try {
3394
+ if (actions_1_1 && !actions_1_1.done && (_a = actions_1.return)) _a.call(actions_1);
3395
+ }
3396
+ finally { if (e_1) throw e_1.error; }
3397
+ return [7 /*endfinally*/];
3398
+ case 8: return [2 /*return*/];
3399
+ }
3400
+ });
3401
+ });
3402
+ };
3403
+ return Validations;
3404
+ }());
3405
+
3096
3406
  var Converter = /** @class */ (function () {
3097
3407
  function Converter() {
3098
3408
  this.getFormFields = function (formConfig) {
@@ -3150,14 +3460,6 @@
3150
3460
  return field;
3151
3461
  };
3152
3462
  var formatFieldTypeDate = function (field) {
3153
- var convertDateStringToTuiDayFormat = function (date) {
3154
- var splitDate = date.split("-");
3155
- var tuiDay = new cdk.TuiDay(Number(splitDate[2]), // Year
3156
- Number(splitDate[1]) - 1, // Month, Why '-1' => Because Taiga-UI Required It, So...
3157
- Number(splitDate[0]) // Day
3158
- );
3159
- return tuiDay;
3160
- };
3161
3463
  if (hasKey$2(field, "min")) {
3162
3464
  var tuiDay = convertDateStringToTuiDayFormat(field["min"]);
3163
3465
  field.properties = _this.setFieldKeyValue(field.properties, "min", tuiDay);
@@ -3187,10 +3489,15 @@
3187
3489
  field = _this.setFieldKeyValue(field, "type", "phone");
3188
3490
  field.properties = _this.setMissingFieldKeyValue(field.properties, "countryCode", "+91");
3189
3491
  field.properties = _this.setMissingFieldKeyValue(field.properties, "phoneMaskAfterCountryCode", "####-######");
3190
- field.properties = _this.setFieldKeyValue(field.properties, "decimal", "not-zero");
3191
- field.properties = _this.setFieldKeyValue(field.properties, "min", -Infinity);
3192
- field.properties = _this.setFieldKeyValue(field.properties, "max", Infinity);
3193
- field.properties = _this.setFieldKeyValue(field.properties, "precision", 0);
3492
+ field.properties = _this.setMissingFieldKeyValue(field.properties, "removeCountryCodeFromValue", true);
3493
+ }
3494
+ if (field.type === "phone" || field.type === "number") {
3495
+ field.properties = _this.setMissingFieldKeyValue(field.properties, "decimal", "never");
3496
+ field.properties = _this.setMissingFieldKeyValue(field.properties, "prefix", "");
3497
+ field.properties = _this.setMissingFieldKeyValue(field.properties, "postfix", "");
3498
+ field.properties = _this.setMissingFieldKeyValue(field.properties, "min", -Infinity);
3499
+ field.properties = _this.setMissingFieldKeyValue(field.properties, "max", Infinity);
3500
+ field.properties = _this.setMissingFieldKeyValue(field.properties, "precision", 2);
3194
3501
  }
3195
3502
  }
3196
3503
  field = _this.setFieldKeyValue(field, "hidden", false);
@@ -3630,11 +3937,6 @@
3630
3937
  }
3631
3938
  return field;
3632
3939
  };
3633
- var fields = this.getFormFields(formConfig);
3634
- var connectedFieldMapping = {
3635
- parent: {},
3636
- child: {}
3637
- };
3638
3940
  var setFormFields = function (formConfig, fields) {
3639
3941
  if (hasKey$2(formConfig, "multiForm")) {
3640
3942
  formConfig.multiForm["fields"] = fields;
@@ -3644,6 +3946,11 @@
3644
3946
  }
3645
3947
  return formConfig;
3646
3948
  };
3949
+ var connectedFieldMapping = {
3950
+ parent: {},
3951
+ child: {}
3952
+ };
3953
+ var fields = this.getFormFields(formConfig);
3647
3954
  try {
3648
3955
  for (var fields_1 = __values(fields), fields_1_1 = fields_1.next(); !fields_1_1.done; fields_1_1 = fields_1.next()) {
3649
3956
  var field = fields_1_1.value;
@@ -3839,10 +4146,12 @@
3839
4146
  this.getFormData = new i0.EventEmitter();
3840
4147
  this.onClickApiCall = new i0.EventEmitter();
3841
4148
  this.loading = false;
4149
+ this.loader = false;
3842
4150
  // display forms and list conditionally
3843
4151
  this.showForm = false;
3844
4152
  this.showFormFields = true;
3845
4153
  this.showFormSections = true;
4154
+ this.showErrorNotification = false;
3846
4155
  }
3847
4156
  // The final value should be provided to service, so that it can be used in all components
3848
4157
  KwikIDFormsRendererComponent.prototype.windowResizeWatcher = function () {
@@ -3870,9 +4179,11 @@
3870
4179
  }
3871
4180
  };
3872
4181
  KwikIDFormsRendererComponent.prototype.ngOnInit = function () {
4182
+ this.loader = true;
3873
4183
  this.loading = true;
3874
4184
  this.rendererService.setFormsList(this.userConfig.userFormFields);
3875
4185
  this.initializeForms();
4186
+ this.loader = false;
3876
4187
  };
3877
4188
  KwikIDFormsRendererComponent.prototype.ngOnChanges = function (changes) {
3878
4189
  var verifyChange = function (prop) {
@@ -3880,6 +4191,7 @@
3880
4191
  };
3881
4192
  if (verifyChange("userConfig")) {
3882
4193
  this.userConfig = changes.userConfig.currentValue;
4194
+ this.loader = false;
3883
4195
  }
3884
4196
  if (verifyChange("formsData")) {
3885
4197
  this.formsData = changes.formsData.currentValue;
@@ -3887,6 +4199,7 @@
3887
4199
  }
3888
4200
  if (verifyChange("apiCallResponse")) {
3889
4201
  this.apiCallResponse = changes.apiCallResponse.currentValue;
4202
+ this.loader = false;
3890
4203
  }
3891
4204
  };
3892
4205
  KwikIDFormsRendererComponent.prototype.initializeForms = function () {
@@ -3894,6 +4207,7 @@
3894
4207
  return __generator(this, function (_b) {
3895
4208
  switch (_b.label) {
3896
4209
  case 0:
4210
+ this.loader = true;
3897
4211
  this.rendererService.setAllFormsData(this.formsData);
3898
4212
  this.rendererService.updateFormsList();
3899
4213
  this.handleResize(this.rendererService.formsList);
@@ -3908,6 +4222,7 @@
3908
4222
  this.showFormFields = false;
3909
4223
  _b.label = 3;
3910
4224
  case 3:
4225
+ this.loader = false;
3911
4226
  this.loading = false;
3912
4227
  return [2 /*return*/];
3913
4228
  }
@@ -3941,6 +4256,7 @@
3941
4256
  switch (_b.label) {
3942
4257
  case 0:
3943
4258
  this.showForm = false;
4259
+ this.loader = true;
3944
4260
  activeFormConfig = this.rendererService.formsList.find(function (form) {
3945
4261
  if (form.key === selectedForm) {
3946
4262
  return form;
@@ -3962,6 +4278,7 @@
3962
4278
  this.showFormFields = true;
3963
4279
  }
3964
4280
  this.showForm = true;
4281
+ this.loader = false;
3965
4282
  return [2 /*return*/];
3966
4283
  }
3967
4284
  });
@@ -3969,16 +4286,37 @@
3969
4286
  };
3970
4287
  // forms-list listener
3971
4288
  KwikIDFormsRendererComponent.prototype.handleOnClickSubmitForms = function (e) {
4289
+ var _this = this;
3972
4290
  console.log(e);
3973
- this.onClickSubmit.emit(e);
4291
+ if (this.userConfig.userFormFieldsConfig.validation) {
4292
+ var validations_1 = new Validations(this.userConfig, this.takeAction.bind(this));
4293
+ (function () { return __awaiter(_this, void 0, void 0, function () {
4294
+ return __generator(this, function (_b) {
4295
+ switch (_b.label) {
4296
+ case 0: return [4 /*yield*/, validations_1.validateField()];
4297
+ case 1:
4298
+ _b.sent();
4299
+ if (this.userConfig.userFormFieldsConfig.status === "completed") {
4300
+ this.onClickSubmit.emit(e);
4301
+ }
4302
+ else {
4303
+ this.toggleErrorNotification(true);
4304
+ }
4305
+ return [2 /*return*/];
4306
+ }
4307
+ });
4308
+ }); })();
4309
+ }
3974
4310
  };
3975
4311
  // form-view listener
3976
4312
  KwikIDFormsRendererComponent.prototype.handleOnClickApiCall = function (e) {
4313
+ this.loader = true;
3977
4314
  this.onClickApiCall.emit(e);
3978
4315
  };
3979
4316
  // form-view listener
3980
4317
  KwikIDFormsRendererComponent.prototype.handleGetActiveFormData = function (e) {
3981
4318
  var _b;
4319
+ this.loader = true;
3982
4320
  this.getFormData.emit((_b = {},
3983
4321
  _b[this.rendererService.activeFormConfig.key] = e["data"],
3984
4322
  _b));
@@ -3986,6 +4324,7 @@
3986
4324
  // form-view listener
3987
4325
  KwikIDFormsRendererComponent.prototype.handleOnClickSaveForm = function (e) {
3988
4326
  var _b;
4327
+ this.loader = true;
3989
4328
  this.rendererService.setActiveFormData({});
3990
4329
  this.getFormData.emit((_b = {},
3991
4330
  _b[this.rendererService.activeFormConfig.key] = e["data"],
@@ -3997,10 +4336,38 @@
3997
4336
  this.showForm = false;
3998
4337
  this.showFormFields = false;
3999
4338
  };
4339
+ KwikIDFormsRendererComponent.prototype.toggleErrorNotification = function (show) {
4340
+ this.showErrorNotification = show;
4341
+ };
4342
+ KwikIDFormsRendererComponent.prototype.takeAction = function (action, userConfig) {
4343
+ return __awaiter(this, void 0, void 0, function () {
4344
+ var _b, sources, sourceValue;
4345
+ return __generator(this, function (_c) {
4346
+ switch (_c.label) {
4347
+ case 0:
4348
+ _b = action.key;
4349
+ switch (_b) {
4350
+ case EActionKey.SET_VALUE: return [3 /*break*/, 1];
4351
+ }
4352
+ return [3 /*break*/, 3];
4353
+ case 1:
4354
+ sources = new Sources(userConfig);
4355
+ return [4 /*yield*/, sources.getValueFromSource(action.props.value.source)];
4356
+ case 2:
4357
+ sourceValue = _c.sent();
4358
+ sources.setValueToSource(action.props.value.destination, sourceValue);
4359
+ this.userConfig = sources.userConfig;
4360
+ return [3 /*break*/, 4];
4361
+ case 3: return [3 /*break*/, 4];
4362
+ case 4: return [2 /*return*/];
4363
+ }
4364
+ });
4365
+ });
4366
+ };
4000
4367
  return KwikIDFormsRendererComponent;
4001
4368
  }());
4002
4369
  /** @nocollapse */ KwikIDFormsRendererComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: KwikIDFormsRendererComponent, deps: [{ token: KwikIDRendererService }, { token: i0__namespace.ElementRef }], target: i0__namespace.ɵɵFactoryTarget.Component });
4003
- /** @nocollapse */ KwikIDFormsRendererComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: KwikIDFormsRendererComponent, selector: "kwikid-forms-renderer", inputs: { userConfig: "userConfig", formsData: "formsData", apiCallResponse: "apiCallResponse" }, outputs: { onClickSubmit: "onClickSubmit", getFormData: "getFormData", onClickApiCall: "onClickApiCall" }, host: { listeners: { "window:resize": "windowResizeWatcher($event)" } }, providers: [KwikIDRendererService], usesOnChanges: true, ngImport: i0__namespace, template: "<div ngClass=\"kwikid-renderer\">\r\n <div\r\n ngClass=\"kwikid-layout-container\"\r\n *ngIf=\"!loading\"\r\n >\r\n <div\r\n ngClass=\"kwikid-sections-container\"\r\n *ngIf=\"showFormSections\"\r\n class=\"active\"\r\n [class.active]=\"showFormSections\"\r\n [class.mobile]=\"rendererService.isMobileView\"\r\n >\r\n <kwikid-forms-list\r\n [showFormFields]=\"this.showFormFields\"\r\n [userConfig]=\"this.userConfig\"\r\n [formsList]=\"this.rendererService.formsList\"\r\n [formsListCompleted]=\"this.rendererService.formsListCompleted\"\r\n [isMobileView]=\"this.rendererService.isMobileView\"\r\n (onClickSetActiveForm)=\"this.handleOnClickSetActiveForm($event)\"\r\n (onClickSubmitForms)=\"this.handleOnClickSubmitForms($event)\"\r\n ></kwikid-forms-list>\r\n </div>\r\n <div\r\n ngClass=\"kwikid-forms-container\"\r\n *ngIf=\"this.showForm && this.showFormFields\"\r\n [class.active]=\"showFormFields\"\r\n [class.mobile]=\"rendererService.isMobileView\"\r\n [@panelInOut]\r\n >\r\n <kwikid-form-view\r\n [formConfig]=\"this.rendererService.activeFormConfig\"\r\n [formData]=\"this.rendererService.activeFormData\"\r\n [apiCallResponse]=\"this.apiCallResponse\"\r\n [formsList]=\"this.rendererService.formsList\"\r\n [allFormsData]=\"this.rendererService.allFormsData\"\r\n [isMobileView]=\"this.rendererService.isMobileView\"\r\n (onClickApiCall)=\"this.handleOnClickApiCall($event)\"\r\n (onClickViewForms)=\"this.handleOnClickViewForms($event)\"\r\n (onClickSaveForm)=\"this.handleOnClickSaveForm($event)\"\r\n (getActiveFormData)=\"this.handleGetActiveFormData($event)\"\r\n ></kwikid-form-view>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".kwikid-root{width:100%;height:100%}.kwikid-renderer{display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;align-content:center;width:100%;height:100%}.kwikid-layout-container{display:flex;flex-direction:row;padding:0 1rem;height:100%;justify-content:center;align-items:stretch;background:var(--tui-secondary);position:relative}.kwikid-sections-container{display:block;width:100%;max-width:400px;height:calc(100% - 2rem);padding:.25rem .5rem 0;border-radius:1rem;background-color:var(--tui-base-01);margin:auto 1rem auto 0;box-shadow:0 0 12px -8px var(--tui-primary)}.kwikid-sections-container.mobile{position:absolute;top:0;left:0;z-index:5;opacity:1;visibility:visible;transition:all 1s;height:100%;border-radius:0;max-width:unset}.kwikid-forms-container{display:block;width:100%;max-width:50%;margin:auto 0;height:calc(100% - 2rem);padding:.25rem .5rem 0;border-radius:1rem;background-color:var(--tui-base-01);box-shadow:0 0 12px -8px var(--tui-primary)}.kwikid-forms-container.mobile{position:absolute;top:0;left:0;z-index:5;opacity:1;visibility:visible;transition:all 1s;height:100%;border-radius:0;max-width:unset}@media screen and (max-width: 600px){.kwikid-layout-container{padding:0;background:transparent}.kwikid-sections-container{position:absolute;max-width:100%;bottom:-10000px;left:-10000px;opacity:0;padding:0;visibility:hidden}.kwikid-sections-container.active{visibility:visible}.kwikid-sections-container.mobile{height:100%;opacity:1;visibility:visible;transition:all 2s;border-radius:0;box-shadow:none;top:0px;margin:0;position:absolute}.kwikid-forms-container{display:none;max-width:100%;height:100%;padding:0;border-radius:0;box-shadow:none}.kwikid-forms-container.mobile{height:100%;opacity:1;visibility:visible;transition:all 2s;border-radius:0;box-shadow:none;top:0px;margin:0;position:absolute}.kwikid-forms-container.active{display:block}}\n"], components: [{ type: KwikIDFormsListComponent, selector: "kwikid-forms-list", inputs: ["showFormFields", "userConfig", "formsList", "formsListCompleted", "isMobileView"], outputs: ["onClickSetActiveForm", "onClickHideFormsList", "onClickSubmitForms"] }, { type: KwikIDFormViewComponent, selector: "kwikid-form-view", inputs: ["formConfig", "formData", "apiCallResponse", "isMobileView", "allFormsData", "formsList"], outputs: ["onClickViewForms", "onClickSaveForm", "onClickApiCall", "getActiveFormData"] }], directives: [{ type: i4__namespace.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i4__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], animations: [
4370
+ /** @nocollapse */ KwikIDFormsRendererComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: KwikIDFormsRendererComponent, selector: "kwikid-forms-renderer", inputs: { userConfig: "userConfig", formsData: "formsData", apiCallResponse: "apiCallResponse" }, outputs: { onClickSubmit: "onClickSubmit", getFormData: "getFormData", onClickApiCall: "onClickApiCall" }, host: { listeners: { "window:resize": "windowResizeWatcher($event)" } }, providers: [KwikIDRendererService], usesOnChanges: true, ngImport: i0__namespace, template: "<div ngClass=\"kwikid-renderer\">\r\n <div\r\n ngClass=\"kwikid-layout-container\"\r\n *ngIf=\"!loading\"\r\n >\r\n <div\r\n ngClass=\"kwikid-sections-container\"\r\n *ngIf=\"showFormSections\"\r\n class=\"active\"\r\n [class.active]=\"showFormSections\"\r\n [class.mobile]=\"rendererService.isMobileView\"\r\n >\r\n <kwikid-forms-list\r\n [showFormFields]=\"this.showFormFields\"\r\n [userConfig]=\"this.userConfig\"\r\n [formsList]=\"this.rendererService.formsList\"\r\n [formsListCompleted]=\"this.rendererService.formsListCompleted\"\r\n [isMobileView]=\"this.rendererService.isMobileView\"\r\n (onClickSetActiveForm)=\"this.handleOnClickSetActiveForm($event)\"\r\n (onClickSubmitForms)=\"this.handleOnClickSubmitForms($event)\"\r\n ></kwikid-forms-list>\r\n </div>\r\n <div\r\n ngClass=\"kwikid-forms-container\"\r\n *ngIf=\"this.showForm && this.showFormFields\"\r\n [class.active]=\"showFormFields\"\r\n [class.mobile]=\"rendererService.isMobileView\"\r\n [@panelInOut]\r\n >\r\n <kwikid-form-view\r\n [formConfig]=\"this.rendererService.activeFormConfig\"\r\n [formData]=\"this.rendererService.activeFormData\"\r\n [apiCallResponse]=\"this.apiCallResponse\"\r\n [formsList]=\"this.rendererService.formsList\"\r\n [allFormsData]=\"this.rendererService.allFormsData\"\r\n [isMobileView]=\"this.rendererService.isMobileView\"\r\n (onClickApiCall)=\"this.handleOnClickApiCall($event)\"\r\n (onClickViewForms)=\"this.handleOnClickViewForms($event)\"\r\n (onClickSaveForm)=\"this.handleOnClickSaveForm($event)\"\r\n (getActiveFormData)=\"this.handleGetActiveFormData($event)\"\r\n ></kwikid-form-view>\r\n </div>\r\n </div>\r\n</div>\r\n<div\r\n ngClass=\"kwikid-forms-renderer-loader\"\r\n *ngIf=\"loader\"\r\n>\r\n <span class=\"loader\"></span>\r\n</div>\r\n<tui-push\r\n id=\"error-notification\"\r\n *tuiPush=\"showErrorNotification\"\r\n heading=\"Please complete the required Forms!\"\r\n type=\"Error\"\r\n (close)=\"toggleErrorNotification(false)\"\r\n>\r\n <tui-svg\r\n src=\"tuiIconCancel\"\r\n style=\"color: #fff !important\"\r\n >\r\n </tui-svg>\r\n</tui-push>\r\n", styles: [":host{position:relative}.kwikid-root{width:100%;height:100%}.kwikid-renderer{display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;align-content:center;width:100%;height:100%}.kwikid-layout-container{display:flex;flex-direction:row;padding:0 1rem;height:100%;justify-content:center;align-items:stretch;background:var(--tui-secondary);position:relative}.kwikid-sections-container{display:block;width:100%;max-width:400px;height:calc(100% - 2rem);padding:.25rem .5rem 0;border-radius:1rem;background-color:var(--tui-base-01);margin:auto 1rem auto 0;box-shadow:0 0 12px -8px var(--tui-primary)}.kwikid-sections-container.mobile{position:absolute;top:0;left:0;z-index:5;opacity:1;visibility:visible;transition:all 1s;height:100%;border-radius:0;max-width:unset}.kwikid-forms-container{display:block;width:100%;max-width:50%;margin:auto 0;height:calc(100% - 2rem);padding:.25rem .5rem 0;border-radius:1rem;background-color:var(--tui-base-01);box-shadow:0 0 12px -8px var(--tui-primary)}.kwikid-forms-container.mobile{position:absolute;top:0;left:0;z-index:5;opacity:1;visibility:visible;transition:all 1s;height:100%;border-radius:0;max-width:unset}@media screen and (max-width: 600px){.kwikid-layout-container{padding:0;background:transparent}.kwikid-sections-container{position:absolute;max-width:100%;bottom:-10000px;left:-10000px;opacity:0;padding:0;visibility:hidden}.kwikid-sections-container.active{visibility:visible}.kwikid-sections-container.mobile{height:100%;opacity:1;visibility:visible;transition:all 2s;border-radius:0;box-shadow:none;top:0px;margin:0;position:absolute}.kwikid-forms-container{display:none;max-width:100%;height:100%;padding:0;border-radius:0;box-shadow:none}.kwikid-forms-container.mobile{height:100%;opacity:1;visibility:visible;transition:all 2s;border-radius:0;box-shadow:none;top:0px;margin:0;position:absolute}.kwikid-forms-container.active{display:block}}.kwikid-forms-renderer-loader{position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.75);display:flex;flex-direction:row;align-content:center;justify-content:center;align-items:center;z-index:100}.kwikid-forms-renderer-loader .loader{width:48px;height:48px;border-radius:50%;display:inline-block;position:relative;border:3px solid;border-color:#fff #fff transparent;box-sizing:border-box;animation:rotation 1s linear infinite}.kwikid-forms-renderer-loader .loader:after{content:\"\";box-sizing:border-box;position:absolute;left:0;right:0;top:0;bottom:0;margin:auto;border:3px solid;border-color:transparent var(--tui-primary) var(--tui-primary);width:24px;height:24px;border-radius:50%;animation:rotationBack .5s linear infinite;transform-origin:center center}@keyframes rotation{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes rotationBack{0%{transform:rotate(0)}to{transform:rotate(-360deg)}}.kwikid-forms-renderer-loader .t-loader{display:none!important}#error-notification{background-color:var(--tui-error-fill);color:#fff!important}#error-notification .t-top{color:#fff!important}#error-notification .t-close{color:#fff!important}\n"], components: [{ type: KwikIDFormsListComponent, selector: "kwikid-forms-list", inputs: ["showFormFields", "userConfig", "formsList", "formsListCompleted", "isMobileView"], outputs: ["onClickSetActiveForm", "onClickHideFormsList", "onClickSubmitForms"] }, { type: KwikIDFormViewComponent, selector: "kwikid-form-view", inputs: ["formConfig", "formData", "apiCallResponse", "isMobileView", "allFormsData", "formsList"], outputs: ["onClickViewForms", "onClickSaveForm", "onClickApiCall", "getActiveFormData"] }, { type: i4__namespace.TuiPushComponent, selector: "tui-push", inputs: ["heading", "type", "timestamp"], outputs: ["close"] }, { type: i3__namespace.TuiSvgComponent, selector: "tui-svg", inputs: ["src"] }], directives: [{ type: i5__namespace.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i5__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4__namespace.TuiPushAlertDirective, selector: "[tuiPush]", inputs: ["tuiPush"] }, { type: i4__namespace.TuiPushDirective, selector: "tui-push" }], animations: [
4004
4371
  animations.trigger("panelInOut", [
4005
4372
  animations.transition(":enter", [
4006
4373
  animations.style({ transform: "translateY(100%)" }),
@@ -4053,13 +4420,13 @@
4053
4420
  return KwikIDFormBuilderModule;
4054
4421
  }());
4055
4422
  /** @nocollapse */ KwikIDFormBuilderModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: KwikIDFormBuilderModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
4056
- /** @nocollapse */ KwikIDFormBuilderModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: KwikIDFormBuilderModule, declarations: [KwikIDFormsBuilderComponent], imports: [i4.CommonModule, i5.FormsModule, i5.ReactiveFormsModule, dragDrop.DragDropModule], exports: [KwikIDFormsBuilderComponent] });
4057
- /** @nocollapse */ KwikIDFormBuilderModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: KwikIDFormBuilderModule, providers: [], imports: [[i4.CommonModule, i5.FormsModule, i5.ReactiveFormsModule, dragDrop.DragDropModule]] });
4423
+ /** @nocollapse */ KwikIDFormBuilderModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: KwikIDFormBuilderModule, declarations: [KwikIDFormsBuilderComponent], imports: [i5.CommonModule, i6.FormsModule, i6.ReactiveFormsModule, dragDrop.DragDropModule], exports: [KwikIDFormsBuilderComponent] });
4424
+ /** @nocollapse */ KwikIDFormBuilderModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: KwikIDFormBuilderModule, providers: [], imports: [[i5.CommonModule, i6.FormsModule, i6.ReactiveFormsModule, dragDrop.DragDropModule]] });
4058
4425
  i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: KwikIDFormBuilderModule, decorators: [{
4059
4426
  type: i0.NgModule,
4060
4427
  args: [{
4061
4428
  declarations: [KwikIDFormsBuilderComponent],
4062
- imports: [i4.CommonModule, i5.FormsModule, i5.ReactiveFormsModule, dragDrop.DragDropModule],
4429
+ imports: [i5.CommonModule, i6.FormsModule, i6.ReactiveFormsModule, dragDrop.DragDropModule],
4063
4430
  providers: [],
4064
4431
  exports: [KwikIDFormsBuilderComponent]
4065
4432
  }]
@@ -4071,16 +4438,20 @@
4071
4438
  return KwikIDFormViewModule;
4072
4439
  }());
4073
4440
  /** @nocollapse */ KwikIDFormViewModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: KwikIDFormViewModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
4074
- /** @nocollapse */ KwikIDFormViewModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: KwikIDFormViewModule, declarations: [KwikIDFormViewComponent], imports: [i4.CommonModule,
4075
- i5.FormsModule,
4076
- i5.ReactiveFormsModule,
4441
+ /** @nocollapse */ KwikIDFormViewModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: KwikIDFormViewModule, declarations: [KwikIDFormViewComponent], imports: [i5.CommonModule,
4442
+ i6.FormsModule,
4443
+ i6.ReactiveFormsModule,
4077
4444
  i3.TuiLabelModule,
4445
+ i4.TuiPushModule,
4446
+ i3.TuiSvgModule,
4078
4447
  i2.KwikUIModule], exports: [KwikIDFormViewComponent] });
4079
4448
  /** @nocollapse */ KwikIDFormViewModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: KwikIDFormViewModule, imports: [[
4080
- i4.CommonModule,
4081
- i5.FormsModule,
4082
- i5.ReactiveFormsModule,
4449
+ i5.CommonModule,
4450
+ i6.FormsModule,
4451
+ i6.ReactiveFormsModule,
4083
4452
  i3.TuiLabelModule,
4453
+ i4.TuiPushModule,
4454
+ i3.TuiSvgModule,
4084
4455
  i2.KwikUIModule
4085
4456
  ]] });
4086
4457
  i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: KwikIDFormViewModule, decorators: [{
@@ -4088,10 +4459,12 @@
4088
4459
  args: [{
4089
4460
  declarations: [KwikIDFormViewComponent],
4090
4461
  imports: [
4091
- i4.CommonModule,
4092
- i5.FormsModule,
4093
- i5.ReactiveFormsModule,
4462
+ i5.CommonModule,
4463
+ i6.FormsModule,
4464
+ i6.ReactiveFormsModule,
4094
4465
  i3.TuiLabelModule,
4466
+ i4.TuiPushModule,
4467
+ i3.TuiSvgModule,
4095
4468
  i2.KwikUIModule
4096
4469
  ],
4097
4470
  exports: [KwikIDFormViewComponent]
@@ -4104,15 +4477,15 @@
4104
4477
  return KwikIDFormsListModule;
4105
4478
  }());
4106
4479
  /** @nocollapse */ KwikIDFormsListModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: KwikIDFormsListModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
4107
- /** @nocollapse */ KwikIDFormsListModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: KwikIDFormsListModule, declarations: [KwikIDFormsListComponent], imports: [i4.CommonModule,
4108
- i5.FormsModule,
4109
- i5.ReactiveFormsModule,
4480
+ /** @nocollapse */ KwikIDFormsListModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: KwikIDFormsListModule, declarations: [KwikIDFormsListComponent], imports: [i5.CommonModule,
4481
+ i6.FormsModule,
4482
+ i6.ReactiveFormsModule,
4110
4483
  i2.KwikUIModule,
4111
4484
  i3.TuiSvgModule], exports: [KwikIDFormsListComponent] });
4112
4485
  /** @nocollapse */ KwikIDFormsListModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: KwikIDFormsListModule, imports: [[
4113
- i4.CommonModule,
4114
- i5.FormsModule,
4115
- i5.ReactiveFormsModule,
4486
+ i5.CommonModule,
4487
+ i6.FormsModule,
4488
+ i6.ReactiveFormsModule,
4116
4489
  i2.KwikUIModule,
4117
4490
  i3.TuiSvgModule
4118
4491
  ]] });
@@ -4121,9 +4494,9 @@
4121
4494
  args: [{
4122
4495
  declarations: [KwikIDFormsListComponent],
4123
4496
  imports: [
4124
- i4.CommonModule,
4125
- i5.FormsModule,
4126
- i5.ReactiveFormsModule,
4497
+ i5.CommonModule,
4498
+ i6.FormsModule,
4499
+ i6.ReactiveFormsModule,
4127
4500
  i2.KwikUIModule,
4128
4501
  i3.TuiSvgModule
4129
4502
  ],
@@ -4137,28 +4510,37 @@
4137
4510
  return KwikIDFormRendererModule;
4138
4511
  }());
4139
4512
  /** @nocollapse */ KwikIDFormRendererModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: KwikIDFormRendererModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
4140
- /** @nocollapse */ KwikIDFormRendererModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: KwikIDFormRendererModule, declarations: [KwikIDFormsRendererComponent], imports: [i4.CommonModule,
4513
+ /** @nocollapse */ KwikIDFormRendererModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: KwikIDFormRendererModule, declarations: [KwikIDFormsRendererComponent], imports: [i5.CommonModule,
4141
4514
  http.HttpClientModule,
4142
4515
  KwikIDFormViewModule,
4143
4516
  KwikIDFormsListModule,
4144
- i2.KwikUIModule], exports: [KwikIDFormsRendererComponent] });
4517
+ i2.KwikUIModule,
4518
+ i3.TuiLoaderModule,
4519
+ i4.TuiPushModule,
4520
+ i3.TuiSvgModule], exports: [KwikIDFormsRendererComponent] });
4145
4521
  /** @nocollapse */ KwikIDFormRendererModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: KwikIDFormRendererModule, providers: [], imports: [[
4146
- i4.CommonModule,
4522
+ i5.CommonModule,
4147
4523
  http.HttpClientModule,
4148
4524
  KwikIDFormViewModule,
4149
4525
  KwikIDFormsListModule,
4150
- i2.KwikUIModule
4526
+ i2.KwikUIModule,
4527
+ i3.TuiLoaderModule,
4528
+ i4.TuiPushModule,
4529
+ i3.TuiSvgModule
4151
4530
  ]] });
4152
4531
  i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: KwikIDFormRendererModule, decorators: [{
4153
4532
  type: i0.NgModule,
4154
4533
  args: [{
4155
4534
  declarations: [KwikIDFormsRendererComponent],
4156
4535
  imports: [
4157
- i4.CommonModule,
4536
+ i5.CommonModule,
4158
4537
  http.HttpClientModule,
4159
4538
  KwikIDFormViewModule,
4160
4539
  KwikIDFormsListModule,
4161
- i2.KwikUIModule
4540
+ i2.KwikUIModule,
4541
+ i3.TuiLoaderModule,
4542
+ i4.TuiPushModule,
4543
+ i3.TuiSvgModule
4162
4544
  ],
4163
4545
  providers: [],
4164
4546
  exports: [KwikIDFormsRendererComponent]
@@ -4171,15 +4553,15 @@
4171
4553
  return KwikIDFormsModule;
4172
4554
  }());
4173
4555
  /** @nocollapse */ KwikIDFormsModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: KwikIDFormsModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
4174
- /** @nocollapse */ KwikIDFormsModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: KwikIDFormsModule, imports: [i4.CommonModule,
4175
- i5.FormsModule,
4176
- i5.ReactiveFormsModule,
4556
+ /** @nocollapse */ KwikIDFormsModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: KwikIDFormsModule, imports: [i5.CommonModule,
4557
+ i6.FormsModule,
4558
+ i6.ReactiveFormsModule,
4177
4559
  KwikIDFormBuilderModule,
4178
4560
  KwikIDFormRendererModule], exports: [KwikIDFormBuilderModule, KwikIDFormRendererModule] });
4179
4561
  /** @nocollapse */ KwikIDFormsModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: KwikIDFormsModule, providers: [KwikIDRendererService], imports: [[
4180
- i4.CommonModule,
4181
- i5.FormsModule,
4182
- i5.ReactiveFormsModule,
4562
+ i5.CommonModule,
4563
+ i6.FormsModule,
4564
+ i6.ReactiveFormsModule,
4183
4565
  KwikIDFormBuilderModule,
4184
4566
  KwikIDFormRendererModule
4185
4567
  ], KwikIDFormBuilderModule, KwikIDFormRendererModule] });
@@ -4188,9 +4570,9 @@
4188
4570
  args: [{
4189
4571
  declarations: [],
4190
4572
  imports: [
4191
- i4.CommonModule,
4192
- i5.FormsModule,
4193
- i5.ReactiveFormsModule,
4573
+ i5.CommonModule,
4574
+ i6.FormsModule,
4575
+ i6.ReactiveFormsModule,
4194
4576
  KwikIDFormBuilderModule,
4195
4577
  KwikIDFormRendererModule
4196
4578
  ],