kwikid-forms 0.0.9 → 0.1.1

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.
@@ -529,6 +529,10 @@
529
529
  EActionKey["FIELD_RESET"] = "FIELD_RESET";
530
530
  EActionKey["HANDLE_CONNECTED_ELEMENTS"] = "HANDLE_CONNECTED_ELEMENTS";
531
531
  EActionKey["CUSTOM"] = "CUSTOM";
532
+ EActionKey["FIELD_GROUP_SHOW"] = "FIELD_GROUP_SHOW";
533
+ EActionKey["FIELD_GROUP_HIDE"] = "FIELD_GROUP_HIDE";
534
+ EActionKey["FIELD_GROUP_ENABLE"] = "FIELD_GROUP_ENABLE";
535
+ EActionKey["FIELD_GROUP_DISABLE"] = "FIELD_GROUP_DISABLE";
532
536
  })(EActionKey || (EActionKey = {}));
533
537
 
534
538
  var EApiStatusType;
@@ -2103,6 +2107,7 @@
2103
2107
  this.onClickSaveForm = new i0.EventEmitter();
2104
2108
  this.onClickApiCall = new i0.EventEmitter();
2105
2109
  this.getActiveFormData = new i0.EventEmitter();
2110
+ this.fieldGroups = {};
2106
2111
  this.formFields = [];
2107
2112
  this.previousFormData = {};
2108
2113
  this.loading = true;
@@ -2192,6 +2197,7 @@
2192
2197
  switch (_h.label) {
2193
2198
  case 0:
2194
2199
  this.setFormFieldsFromFormConfig(formConfig);
2200
+ this.setFormFieldGroupsFromFormConfig(formConfig);
2195
2201
  this.setFormDataFromAllFormsData();
2196
2202
  _a = this;
2197
2203
  return [4 /*yield*/, this.formViewService.createFormGroup(this.formFields, this.formData, this.previousFormData, this.allFormsData, this.takeAction.bind(this))];
@@ -2269,6 +2275,9 @@
2269
2275
  this.formFields = formConfig.multiForm.fields;
2270
2276
  }
2271
2277
  };
2278
+ KwikIDFormViewComponent.prototype.setFormFieldGroupsFromFormConfig = function (formConfig) {
2279
+ this.fieldGroups = formConfig.fieldGroups;
2280
+ };
2272
2281
  KwikIDFormViewComponent.prototype.setFormDataFromAllFormsData = function () {
2273
2282
  if (hasKey$1(this.allFormsData, this.formConfig.key)) {
2274
2283
  this.formData = this.allFormsData[this.formConfig.key];
@@ -2277,10 +2286,101 @@
2277
2286
  this.formData = {};
2278
2287
  }
2279
2288
  };
2280
- KwikIDFormViewComponent.prototype.handleConnectedElementFieldActions = function (connectedFieldConfig, connectedField) {
2289
+ KwikIDFormViewComponent.prototype.handleConnectedElementFieldGroupActions = function (childFieldGroupConfig, parentField) {
2281
2290
  return __awaiter(this, void 0, void 0, function () {
2282
2291
  var rulesMapping, _a, _b, action, conditionSuccess, actions, e_3_1;
2283
2292
  var e_3, _c;
2293
+ return __generator(this, function (_d) {
2294
+ switch (_d.label) {
2295
+ case 0:
2296
+ if (!hasKey$1(childFieldGroupConfig, "rules")) return [3 /*break*/, 8];
2297
+ rulesMapping = new Rules$1(childFieldGroupConfig.rules, parentField, this.formData, this.previousFormData, this.allFormsData).mapping();
2298
+ _d.label = 1;
2299
+ case 1:
2300
+ _d.trys.push([1, 6, 7, 8]);
2301
+ _a = __values(childFieldGroupConfig.actions), _b = _a.next();
2302
+ _d.label = 2;
2303
+ case 2:
2304
+ if (!!_b.done) return [3 /*break*/, 5];
2305
+ action = _b.value;
2306
+ conditionSuccess = new Condition$1(action.condition, rulesMapping).evaluate();
2307
+ if (!conditionSuccess) return [3 /*break*/, 4];
2308
+ actions = new Actions$1(action, parentField, rulesMapping, this.allFormsData, this.formData, this.previousFormData, this.takeActionOnFieldGroup.bind(this));
2309
+ return [4 /*yield*/, actions.execute()];
2310
+ case 3:
2311
+ _d.sent();
2312
+ _d.label = 4;
2313
+ case 4:
2314
+ _b = _a.next();
2315
+ return [3 /*break*/, 2];
2316
+ case 5: return [3 /*break*/, 8];
2317
+ case 6:
2318
+ e_3_1 = _d.sent();
2319
+ e_3 = { error: e_3_1 };
2320
+ return [3 /*break*/, 8];
2321
+ case 7:
2322
+ try {
2323
+ if (_b && !_b.done && (_c = _a.return)) _c.call(_a);
2324
+ }
2325
+ finally { if (e_3) throw e_3.error; }
2326
+ return [7 /*endfinally*/];
2327
+ case 8: return [2 /*return*/];
2328
+ }
2329
+ });
2330
+ });
2331
+ };
2332
+ KwikIDFormViewComponent.prototype.handleConnectedElementFieldGroup = function (currentField, connectedFieldGroupConfig, eventType) {
2333
+ return __awaiter(this, void 0, void 0, function () {
2334
+ var _a;
2335
+ return __generator(this, function (_b) {
2336
+ switch (_b.label) {
2337
+ case 0:
2338
+ _a = eventType;
2339
+ switch (_a) {
2340
+ case "INIT": return [3 /*break*/, 1];
2341
+ case "VALUE_CHANGE": return [3 /*break*/, 4];
2342
+ case "NESTED_LINK": return [3 /*break*/, 7];
2343
+ }
2344
+ return [3 /*break*/, 9];
2345
+ case 1:
2346
+ if (!(hasKey$1(connectedFieldGroupConfig, "triggers") &&
2347
+ connectedFieldGroupConfig.triggers.includes("INIT"))) return [3 /*break*/, 3];
2348
+ return [4 /*yield*/, this.handleConnectedElementFieldGroupActions(connectedFieldGroupConfig, currentField)];
2349
+ case 2:
2350
+ _b.sent();
2351
+ _b.label = 3;
2352
+ case 3: return [3 /*break*/, 12];
2353
+ case 4:
2354
+ if (!(hasKey$1(connectedFieldGroupConfig, "triggers") &&
2355
+ connectedFieldGroupConfig.triggers.includes("VALUE_CHANGE"))) return [3 /*break*/, 6];
2356
+ return [4 /*yield*/, this.handleConnectedElementFieldGroupActions(connectedFieldGroupConfig, currentField)];
2357
+ case 5:
2358
+ _b.sent();
2359
+ _b.label = 6;
2360
+ case 6: return [3 /*break*/, 12];
2361
+ case 7:
2362
+ if (!(hasKey$1(connectedFieldGroupConfig, "triggers") &&
2363
+ connectedFieldGroupConfig.triggers.includes("NESTED_LINK"))) return [3 /*break*/, 9];
2364
+ return [4 /*yield*/, this.handleConnectedElementFieldGroupActions(connectedFieldGroupConfig, currentField)];
2365
+ case 8:
2366
+ _b.sent();
2367
+ _b.label = 9;
2368
+ case 9:
2369
+ if (!hasKey$1(connectedFieldGroupConfig, "triggers")) return [3 /*break*/, 11];
2370
+ return [4 /*yield*/, this.handleConnectedElementFieldGroupActions(connectedFieldGroupConfig, currentField)];
2371
+ case 10:
2372
+ _b.sent();
2373
+ _b.label = 11;
2374
+ case 11: return [3 /*break*/, 12];
2375
+ case 12: return [2 /*return*/];
2376
+ }
2377
+ });
2378
+ });
2379
+ };
2380
+ KwikIDFormViewComponent.prototype.handleConnectedElementFieldActions = function (connectedFieldConfig, connectedField) {
2381
+ return __awaiter(this, void 0, void 0, function () {
2382
+ var rulesMapping, _a, _b, action, conditionSuccess, actions, e_4_1;
2383
+ var e_4, _c;
2284
2384
  return __generator(this, function (_d) {
2285
2385
  switch (_d.label) {
2286
2386
  case 0:
@@ -2306,14 +2406,14 @@
2306
2406
  return [3 /*break*/, 2];
2307
2407
  case 5: return [3 /*break*/, 8];
2308
2408
  case 6:
2309
- e_3_1 = _d.sent();
2310
- e_3 = { error: e_3_1 };
2409
+ e_4_1 = _d.sent();
2410
+ e_4 = { error: e_4_1 };
2311
2411
  return [3 /*break*/, 8];
2312
2412
  case 7:
2313
2413
  try {
2314
2414
  if (_b && !_b.done && (_c = _a.return)) _c.call(_a);
2315
2415
  }
2316
- finally { if (e_3) throw e_3.error; }
2416
+ finally { if (e_4) throw e_4.error; }
2317
2417
  return [7 /*endfinally*/];
2318
2418
  case 8: return [2 /*return*/, connectedField];
2319
2419
  }
@@ -2323,7 +2423,7 @@
2323
2423
  KwikIDFormViewComponent.prototype.handleConnectedElementFields = function (currentField, connectedFieldConfig, eventType) {
2324
2424
  return __awaiter(this, void 0, void 0, function () {
2325
2425
  var connectedField, _a, _b, _c, _d, _e, connectedFieldConfig_1;
2326
- var e_4, _f;
2426
+ var e_5, _f;
2327
2427
  return __generator(this, function (_g) {
2328
2428
  switch (_g.label) {
2329
2429
  case 0:
@@ -2389,19 +2489,21 @@
2389
2489
  case 19: return [3 /*break*/, 20];
2390
2490
  case 20:
2391
2491
  if (hasKey$1(connectedField, "connectedElements")) {
2392
- try {
2393
- for (_d = __values(connectedField.connectedElements
2394
- .fields), _e = _d.next(); !_e.done; _e = _d.next()) {
2395
- connectedFieldConfig_1 = _e.value;
2396
- connectedField = this.handleConnectedElementFields(connectedField, connectedFieldConfig_1, "NESTED_LINK");
2397
- }
2398
- }
2399
- catch (e_4_1) { e_4 = { error: e_4_1 }; }
2400
- finally {
2492
+ if (hasKey$1(connectedField.connectedElements, "connectedFields")) {
2401
2493
  try {
2402
- if (_e && !_e.done && (_f = _d.return)) _f.call(_d);
2494
+ for (_d = __values(connectedField.connectedElements
2495
+ .connectedFields), _e = _d.next(); !_e.done; _e = _d.next()) {
2496
+ connectedFieldConfig_1 = _e.value;
2497
+ connectedField = this.handleConnectedElementFields(connectedField, connectedFieldConfig_1, "NESTED_LINK");
2498
+ }
2499
+ }
2500
+ catch (e_5_1) { e_5 = { error: e_5_1 }; }
2501
+ finally {
2502
+ try {
2503
+ if (_e && !_e.done && (_f = _d.return)) _f.call(_d);
2504
+ }
2505
+ finally { if (e_5) throw e_5.error; }
2403
2506
  }
2404
- finally { if (e_4) throw e_4.error; }
2405
2507
  }
2406
2508
  }
2407
2509
  return [2 /*return*/, currentField];
@@ -2410,24 +2512,75 @@
2410
2512
  });
2411
2513
  };
2412
2514
  KwikIDFormViewComponent.prototype.handleConnectedElements = function (e, eventType) {
2413
- var e_5, _a;
2414
- var currentField = findFieldFromKey(this.formFields, e.key);
2415
- if (hasKey$1(currentField, "connectedElements")) {
2416
- var connectedFields = currentField.connectedElements.connectedFields;
2417
- try {
2418
- for (var connectedFields_1 = __values(connectedFields), connectedFields_1_1 = connectedFields_1.next(); !connectedFields_1_1.done; connectedFields_1_1 = connectedFields_1.next()) {
2419
- var connectedFieldConfig = connectedFields_1_1.value;
2420
- currentField = this.handleConnectedElementFields(currentField, connectedFieldConfig, eventType);
2421
- }
2422
- }
2423
- catch (e_5_1) { e_5 = { error: e_5_1 }; }
2424
- finally {
2425
- try {
2426
- if (connectedFields_1_1 && !connectedFields_1_1.done && (_a = connectedFields_1.return)) _a.call(connectedFields_1);
2515
+ return __awaiter(this, void 0, void 0, function () {
2516
+ var currentField, connectedFieldGroups, connectedFieldGroups_1, connectedFieldGroups_1_1, connectedFieldGroupConfig, e_6_1, connectedFields, connectedFields_1, connectedFields_1_1, connectedFieldConfig, e_7_1;
2517
+ var e_6, _a, e_7, _b;
2518
+ return __generator(this, function (_c) {
2519
+ switch (_c.label) {
2520
+ case 0:
2521
+ currentField = findFieldFromKey(this.formFields, e.key);
2522
+ if (!hasKey$1(currentField, "connectedElements")) return [3 /*break*/, 16];
2523
+ if (!hasKey$1(currentField.connectedElements, "connectedFieldGroups")) return [3 /*break*/, 8];
2524
+ connectedFieldGroups = currentField.connectedElements.connectedFieldGroups;
2525
+ _c.label = 1;
2526
+ case 1:
2527
+ _c.trys.push([1, 6, 7, 8]);
2528
+ connectedFieldGroups_1 = __values(connectedFieldGroups), connectedFieldGroups_1_1 = connectedFieldGroups_1.next();
2529
+ _c.label = 2;
2530
+ case 2:
2531
+ if (!!connectedFieldGroups_1_1.done) return [3 /*break*/, 5];
2532
+ connectedFieldGroupConfig = connectedFieldGroups_1_1.value;
2533
+ return [4 /*yield*/, this.handleConnectedElementFieldGroup(currentField, connectedFieldGroupConfig, eventType)];
2534
+ case 3:
2535
+ _c.sent();
2536
+ _c.label = 4;
2537
+ case 4:
2538
+ connectedFieldGroups_1_1 = connectedFieldGroups_1.next();
2539
+ return [3 /*break*/, 2];
2540
+ case 5: return [3 /*break*/, 8];
2541
+ case 6:
2542
+ e_6_1 = _c.sent();
2543
+ e_6 = { error: e_6_1 };
2544
+ return [3 /*break*/, 8];
2545
+ case 7:
2546
+ try {
2547
+ if (connectedFieldGroups_1_1 && !connectedFieldGroups_1_1.done && (_a = connectedFieldGroups_1.return)) _a.call(connectedFieldGroups_1);
2548
+ }
2549
+ finally { if (e_6) throw e_6.error; }
2550
+ return [7 /*endfinally*/];
2551
+ case 8:
2552
+ if (!hasKey$1(currentField.connectedElements, "connectedFields")) return [3 /*break*/, 16];
2553
+ connectedFields = currentField.connectedElements.connectedFields;
2554
+ _c.label = 9;
2555
+ case 9:
2556
+ _c.trys.push([9, 14, 15, 16]);
2557
+ connectedFields_1 = __values(connectedFields), connectedFields_1_1 = connectedFields_1.next();
2558
+ _c.label = 10;
2559
+ case 10:
2560
+ if (!!connectedFields_1_1.done) return [3 /*break*/, 13];
2561
+ connectedFieldConfig = connectedFields_1_1.value;
2562
+ return [4 /*yield*/, this.handleConnectedElementFields(currentField, connectedFieldConfig, eventType)];
2563
+ case 11:
2564
+ currentField = _c.sent();
2565
+ _c.label = 12;
2566
+ case 12:
2567
+ connectedFields_1_1 = connectedFields_1.next();
2568
+ return [3 /*break*/, 10];
2569
+ case 13: return [3 /*break*/, 16];
2570
+ case 14:
2571
+ e_7_1 = _c.sent();
2572
+ e_7 = { error: e_7_1 };
2573
+ return [3 /*break*/, 16];
2574
+ case 15:
2575
+ try {
2576
+ if (connectedFields_1_1 && !connectedFields_1_1.done && (_b = connectedFields_1.return)) _b.call(connectedFields_1);
2577
+ }
2578
+ finally { if (e_7) throw e_7.error; }
2579
+ return [7 /*endfinally*/];
2580
+ case 16: return [2 /*return*/];
2427
2581
  }
2428
- finally { if (e_5) throw e_5.error; }
2429
- }
2430
- }
2582
+ });
2583
+ });
2431
2584
  };
2432
2585
  // DOM Event Handlers
2433
2586
  KwikIDFormViewComponent.prototype.handleGetKeyValue = function (e) {
@@ -2459,8 +2612,8 @@
2459
2612
  };
2460
2613
  KwikIDFormViewComponent.prototype.handleOnClickResetFormFields = function (e, field) {
2461
2614
  return __awaiter(this, void 0, void 0, function () {
2462
- var _a, _b, f, _c, _d, a, resetField, actions, e_6_1, e_7_1;
2463
- var e_7, _e, e_6, _f;
2615
+ var _a, _b, f, _c, _d, a, resetField, actions, e_8_1, e_9_1;
2616
+ var e_9, _e, e_8, _f;
2464
2617
  return __generator(this, function (_g) {
2465
2618
  switch (_g.label) {
2466
2619
  case 0:
@@ -2473,7 +2626,7 @@
2473
2626
  _g.label = 2;
2474
2627
  case 2:
2475
2628
  _g.trys.push([2, 7, 8, 9]);
2476
- _c = (e_6 = void 0, __values(f.actions)), _d = _c.next();
2629
+ _c = (e_8 = void 0, __values(f.actions)), _d = _c.next();
2477
2630
  _g.label = 3;
2478
2631
  case 3:
2479
2632
  if (!!_d.done) return [3 /*break*/, 6];
@@ -2489,28 +2642,28 @@
2489
2642
  return [3 /*break*/, 3];
2490
2643
  case 6: return [3 /*break*/, 9];
2491
2644
  case 7:
2492
- e_6_1 = _g.sent();
2493
- e_6 = { error: e_6_1 };
2645
+ e_8_1 = _g.sent();
2646
+ e_8 = { error: e_8_1 };
2494
2647
  return [3 /*break*/, 9];
2495
2648
  case 8:
2496
2649
  try {
2497
2650
  if (_d && !_d.done && (_f = _c.return)) _f.call(_c);
2498
2651
  }
2499
- finally { if (e_6) throw e_6.error; }
2652
+ finally { if (e_8) throw e_8.error; }
2500
2653
  return [7 /*endfinally*/];
2501
2654
  case 9:
2502
2655
  _b = _a.next();
2503
2656
  return [3 /*break*/, 1];
2504
2657
  case 10: return [3 /*break*/, 13];
2505
2658
  case 11:
2506
- e_7_1 = _g.sent();
2507
- e_7 = { error: e_7_1 };
2659
+ e_9_1 = _g.sent();
2660
+ e_9 = { error: e_9_1 };
2508
2661
  return [3 /*break*/, 13];
2509
2662
  case 12:
2510
2663
  try {
2511
2664
  if (_b && !_b.done && (_e = _a.return)) _e.call(_a);
2512
2665
  }
2513
- finally { if (e_7) throw e_7.error; }
2666
+ finally { if (e_9) throw e_9.error; }
2514
2667
  return [7 /*endfinally*/];
2515
2668
  case 13: return [2 /*return*/];
2516
2669
  }
@@ -2576,7 +2729,7 @@
2576
2729
  });
2577
2730
  };
2578
2731
  KwikIDFormViewComponent.prototype.handleOnClickSaveForm = function (e) {
2579
- var e_8, _a, e_9, _b, e_10, _c;
2732
+ var e_10, _a, e_11, _b, e_12, _c;
2580
2733
  var _this = this;
2581
2734
  var formData = this.formGroup.getRawValue();
2582
2735
  try {
@@ -2592,12 +2745,12 @@
2592
2745
  }
2593
2746
  }
2594
2747
  }
2595
- catch (e_8_1) { e_8 = { error: e_8_1 }; }
2748
+ catch (e_10_1) { e_10 = { error: e_10_1 }; }
2596
2749
  finally {
2597
2750
  try {
2598
2751
  if (_e && !_e.done && (_a = _d.return)) _a.call(_d);
2599
2752
  }
2600
- finally { if (e_8) throw e_8.error; }
2753
+ finally { if (e_10) throw e_10.error; }
2601
2754
  }
2602
2755
  var _loop_3 = function (field) {
2603
2756
  if (field.type !== EFieldType.TITLE &&
@@ -2622,12 +2775,12 @@
2622
2775
  _loop_3(field);
2623
2776
  }
2624
2777
  }
2625
- catch (e_9_1) { e_9 = { error: e_9_1 }; }
2778
+ catch (e_11_1) { e_11 = { error: e_11_1 }; }
2626
2779
  finally {
2627
2780
  try {
2628
2781
  if (_g && !_g.done && (_b = _f.return)) _b.call(_f);
2629
2782
  }
2630
- finally { if (e_9) throw e_9.error; }
2783
+ finally { if (e_11) throw e_11.error; }
2631
2784
  }
2632
2785
  if (this.formGroup.invalid) {
2633
2786
  var controls = new Validations$1(undefined, formData, this.previousFormData, this.allFormsData, this.takeAction.bind(this)).findInvalidControlsRecursive(this.formGroup);
@@ -2641,14 +2794,17 @@
2641
2794
  this.formFields = setFieldError(this.formFields, this.formGroup.controls[control.key].errors, control.key, control.invalid);
2642
2795
  }
2643
2796
  }
2644
- catch (e_10_1) { e_10 = { error: e_10_1 }; }
2797
+ catch (e_12_1) { e_12 = { error: e_12_1 }; }
2645
2798
  finally {
2646
2799
  try {
2647
2800
  if (controls_1_1 && !controls_1_1.done && (_c = controls_1.return)) _c.call(controls_1);
2648
2801
  }
2649
- finally { if (e_10) throw e_10.error; }
2802
+ finally { if (e_12) throw e_12.error; }
2650
2803
  }
2651
2804
  this.toggleErrorNotification(true);
2805
+ setTimeout(function () {
2806
+ _this.toggleErrorNotification(false);
2807
+ }, 3000);
2652
2808
  return;
2653
2809
  }
2654
2810
  Object.keys(formData).map(function (key) {
@@ -2668,6 +2824,23 @@
2668
2824
  return field.key === _.key;
2669
2825
  });
2670
2826
  this.formFields[fieldIndex]["hidden"] = true;
2827
+ this.formGroup.updateValueAndValidity();
2828
+ };
2829
+ KwikIDFormViewComponent.prototype.fieldGroupHide = function (fieldGroup) {
2830
+ var e_13, _a;
2831
+ try {
2832
+ for (var _b = __values(this.fieldGroups[fieldGroup]), _c = _b.next(); !_c.done; _c = _b.next()) {
2833
+ var fieldKey = _c.value;
2834
+ this.fieldHide(fieldKey);
2835
+ }
2836
+ }
2837
+ catch (e_13_1) { e_13 = { error: e_13_1 }; }
2838
+ finally {
2839
+ try {
2840
+ if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
2841
+ }
2842
+ finally { if (e_13) throw e_13.error; }
2843
+ }
2671
2844
  };
2672
2845
  KwikIDFormViewComponent.prototype.fieldShow = function (fieldKey) {
2673
2846
  var field = findFieldFromKey(this.formFields, fieldKey);
@@ -2677,16 +2850,51 @@
2677
2850
  this.formFields[fieldIndex]["hidden"] = false;
2678
2851
  this.formGroup.updateValueAndValidity();
2679
2852
  };
2853
+ KwikIDFormViewComponent.prototype.fieldGroupShow = function (fieldGroup) {
2854
+ var e_14, _a;
2855
+ try {
2856
+ for (var _b = __values(this.fieldGroups[fieldGroup]), _c = _b.next(); !_c.done; _c = _b.next()) {
2857
+ var fieldKey = _c.value;
2858
+ this.fieldShow(fieldKey);
2859
+ }
2860
+ }
2861
+ catch (e_14_1) { e_14 = { error: e_14_1 }; }
2862
+ finally {
2863
+ try {
2864
+ if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
2865
+ }
2866
+ finally { if (e_14) throw e_14.error; }
2867
+ }
2868
+ };
2680
2869
  KwikIDFormViewComponent.prototype.fieldDisable = function (fieldKey) {
2681
2870
  var field = findFieldFromKey(this.formFields, fieldKey);
2682
2871
  var fieldIndex = this.formFields.findIndex(function (_) {
2683
2872
  return field.key === _.key;
2684
2873
  });
2685
- this.formFields[fieldIndex]["disabled"] = true;
2686
- if (isNotEmpty(this.formGroup.controls)) {
2687
- this.formGroup.controls[field.key].disable({
2688
- emitEvent: false
2689
- });
2874
+ if (field.type !== EFieldType.TITLE) {
2875
+ this.formFields[fieldIndex]["disabled"] = true;
2876
+ if (isNotEmpty(this.formGroup.controls)) {
2877
+ this.formGroup.controls[field.key].disable({
2878
+ emitEvent: false
2879
+ });
2880
+ }
2881
+ this.formGroup.updateValueAndValidity();
2882
+ }
2883
+ };
2884
+ KwikIDFormViewComponent.prototype.fieldGroupDisable = function (fieldGroup) {
2885
+ var e_15, _a;
2886
+ try {
2887
+ for (var _b = __values(this.fieldGroups[fieldGroup]), _c = _b.next(); !_c.done; _c = _b.next()) {
2888
+ var fieldKey = _c.value;
2889
+ this.fieldDisable(fieldKey);
2890
+ }
2891
+ }
2892
+ catch (e_15_1) { e_15 = { error: e_15_1 }; }
2893
+ finally {
2894
+ try {
2895
+ if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
2896
+ }
2897
+ finally { if (e_15) throw e_15.error; }
2690
2898
  }
2691
2899
  };
2692
2900
  KwikIDFormViewComponent.prototype.fieldEnable = function (fieldKey) {
@@ -2694,11 +2902,30 @@
2694
2902
  var fieldIndex = this.formFields.findIndex(function (_) {
2695
2903
  return field.key === _.key;
2696
2904
  });
2697
- this.formFields[fieldIndex]["disabled"] = false;
2698
- if (isNotEmpty(this.formGroup.controls)) {
2699
- this.formGroup.controls[field.key].enable({
2700
- emitEvent: false
2701
- });
2905
+ if (field.type !== EFieldType.TITLE) {
2906
+ this.formFields[fieldIndex]["disabled"] = false;
2907
+ if (isNotEmpty(this.formGroup.controls)) {
2908
+ this.formGroup.controls[field.key].enable({
2909
+ emitEvent: false
2910
+ });
2911
+ }
2912
+ this.formGroup.updateValueAndValidity();
2913
+ }
2914
+ };
2915
+ KwikIDFormViewComponent.prototype.fieldGroupEnable = function (fieldGroup) {
2916
+ var e_16, _a;
2917
+ try {
2918
+ for (var _b = __values(this.fieldGroups[fieldGroup]), _c = _b.next(); !_c.done; _c = _b.next()) {
2919
+ var fieldKey = _c.value;
2920
+ this.fieldEnable(fieldKey);
2921
+ }
2922
+ }
2923
+ catch (e_16_1) { e_16 = { error: e_16_1 }; }
2924
+ finally {
2925
+ try {
2926
+ if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
2927
+ }
2928
+ finally { if (e_16) throw e_16.error; }
2702
2929
  }
2703
2930
  };
2704
2931
  KwikIDFormViewComponent.prototype.fieldReset = function (fieldKey) {
@@ -2808,6 +3035,29 @@
2808
3035
  });
2809
3036
  });
2810
3037
  };
3038
+ KwikIDFormViewComponent.prototype.takeActionOnFieldGroup = function (action, field, allFormsData, formData, previousFormData) {
3039
+ return __awaiter(this, void 0, void 0, function () {
3040
+ return __generator(this, function (_a) {
3041
+ switch (action.key) {
3042
+ case EActionKey.FIELD_GROUP_HIDE:
3043
+ this.fieldGroupHide(action.props.groupKey);
3044
+ break;
3045
+ case EActionKey.FIELD_GROUP_SHOW:
3046
+ this.fieldGroupShow(action.props.groupKey);
3047
+ break;
3048
+ case EActionKey.FIELD_GROUP_ENABLE:
3049
+ this.fieldGroupEnable(action.props.groupKey);
3050
+ break;
3051
+ case EActionKey.FIELD_GROUP_DISABLE:
3052
+ this.fieldGroupDisable(action.props.groupKey);
3053
+ break;
3054
+ default:
3055
+ break;
3056
+ }
3057
+ return [2 /*return*/];
3058
+ });
3059
+ });
3060
+ };
2811
3061
  KwikIDFormViewComponent.prototype.takeAction = function (action, field, allFormsData, formData, previousFormData) {
2812
3062
  return __awaiter(this, void 0, void 0, function () {
2813
3063
  var _a, sources, sourceValue;
@@ -2881,7 +3131,7 @@
2881
3131
  return KwikIDFormViewComponent;
2882
3132
  }());
2883
3133
  /** @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 });
2884
- /** @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?.properties?.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" }] });
3134
+ /** @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 [class.hidden]=\"field?.hidden\"\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?.properties?.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}.title.hidden{display:none}.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", "placeholder", "focus", "invalid", "disabled", "min", "max", "prefix", "postfix", "precision", "decimal", "validators", "properties"], outputs: ["getKeyValue"] }, { type: i2__namespace.KwikUIInputDateComponent, selector: "kwikui-input-date", inputs: ["label", "id", "formControlName", "formControl", "placeholder", "focus", "invalid", "disabled", "min", "max", "validators", "properties"], outputs: ["getKeyValue"] }, { type: i2__namespace.KwikUIInputPhoneComponent, selector: "kwikui-input-phone", inputs: ["label", "id", "formControlName", "formControl", "placeholder", "focus", "invalid", "disabled", "countryCode", "phoneMaskAfterCountryCode", "removeCountryCodeFromValue", "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", "orientation", "items", "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" }] });
2885
3135
  __decorate([
2886
3136
  log
2887
3137
  ], KwikIDFormViewComponent.prototype, "ngOnInit", null);
@@ -2897,9 +3147,18 @@
2897
3147
  __decorate([
2898
3148
  log
2899
3149
  ], KwikIDFormViewComponent.prototype, "setFormFieldsFromFormConfig", null);
3150
+ __decorate([
3151
+ log
3152
+ ], KwikIDFormViewComponent.prototype, "setFormFieldGroupsFromFormConfig", null);
2900
3153
  __decorate([
2901
3154
  log
2902
3155
  ], KwikIDFormViewComponent.prototype, "setFormDataFromAllFormsData", null);
3156
+ __decorate([
3157
+ log
3158
+ ], KwikIDFormViewComponent.prototype, "handleConnectedElementFieldGroupActions", null);
3159
+ __decorate([
3160
+ log
3161
+ ], KwikIDFormViewComponent.prototype, "handleConnectedElementFieldGroup", null);
2903
3162
  __decorate([
2904
3163
  log
2905
3164
  ], KwikIDFormViewComponent.prototype, "handleConnectedElementFieldActions", null);
@@ -2930,15 +3189,27 @@
2930
3189
  __decorate([
2931
3190
  log
2932
3191
  ], KwikIDFormViewComponent.prototype, "fieldHide", null);
3192
+ __decorate([
3193
+ log
3194
+ ], KwikIDFormViewComponent.prototype, "fieldGroupHide", null);
2933
3195
  __decorate([
2934
3196
  log
2935
3197
  ], KwikIDFormViewComponent.prototype, "fieldShow", null);
3198
+ __decorate([
3199
+ log
3200
+ ], KwikIDFormViewComponent.prototype, "fieldGroupShow", null);
2936
3201
  __decorate([
2937
3202
  log
2938
3203
  ], KwikIDFormViewComponent.prototype, "fieldDisable", null);
3204
+ __decorate([
3205
+ log
3206
+ ], KwikIDFormViewComponent.prototype, "fieldGroupDisable", null);
2939
3207
  __decorate([
2940
3208
  log
2941
3209
  ], KwikIDFormViewComponent.prototype, "fieldEnable", null);
3210
+ __decorate([
3211
+ log
3212
+ ], KwikIDFormViewComponent.prototype, "fieldGroupEnable", null);
2942
3213
  __decorate([
2943
3214
  log
2944
3215
  ], KwikIDFormViewComponent.prototype, "fieldReset", null);
@@ -2972,6 +3243,9 @@
2972
3243
  __decorate([
2973
3244
  log
2974
3245
  ], KwikIDFormViewComponent.prototype, "handleFieldTypeSearchText", null);
3246
+ __decorate([
3247
+ log
3248
+ ], KwikIDFormViewComponent.prototype, "takeActionOnFieldGroup", null);
2975
3249
  __decorate([
2976
3250
  log
2977
3251
  ], KwikIDFormViewComponent.prototype, "takeAction", null);
@@ -3011,7 +3285,7 @@
3011
3285
  type: i0.Output
3012
3286
  }], getActiveFormData: [{
3013
3287
  type: i0.Output
3014
- }], 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: [] } });
3288
+ }], ngOnInit: [], ngAfterViewInit: [], ngOnChanges: [], initFormConfig: [], setFormFieldsFromFormConfig: [], setFormFieldGroupsFromFormConfig: [], setFormDataFromAllFormsData: [], handleConnectedElementFieldGroupActions: [], handleConnectedElementFieldGroup: [], handleConnectedElementFieldActions: [], handleConnectedElementFields: [], handleConnectedElements: [], handleGetKeyValue: [], handleOnClickResetFormFields: [], handleOnClickApiCall: [], handleOnClickViewForms: [], handleOnClickSaveForm: [], toggleErrorNotification: [], fieldHide: [], fieldGroupHide: [], fieldShow: [], fieldGroupShow: [], fieldDisable: [], fieldGroupDisable: [], fieldEnable: [], fieldGroupEnable: [], fieldReset: [], fieldErrorShow: [], fieldErrorHide: [], fieldMessageShow: [], fieldMessageHide: [], setObjectValue: [], patchFieldControlValue: [], isFieldValid: [], isFieldEnabled: [], getFormGroupRawValues: [], handleFieldTypeSearchText: [], takeActionOnFieldGroup: [], takeAction: [] } });
3015
3289
 
3016
3290
  var hasKey = function (object, key) {
3017
3291
  return object.hasOwnProperty(key);
@@ -3082,7 +3356,7 @@
3082
3356
  return KwikIDFormsListComponent;
3083
3357
  }());
3084
3358
  /** @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 });
3085
- /** @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"] }] });
3359
+ /** @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"] }] });
3086
3360
  i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: KwikIDFormsListComponent, decorators: [{
3087
3361
  type: i0.Component,
3088
3362
  args: [{
@@ -3444,11 +3718,6 @@
3444
3718
  var _this = this;
3445
3719
  var updateOnFieldType = function (field) {
3446
3720
  var formatFieldTypeTitle = function (field) {
3447
- var fieldKey = field.type + "_" + field.label
3448
- .split(" ")
3449
- .join("_")
3450
- .toLocaleLowerCase();
3451
- field = _this.setFieldKeyValue(field, "key", fieldKey);
3452
3721
  field = _this.setFieldKeyValue(field, "hidden", false);
3453
3722
  return field;
3454
3723
  };
@@ -3735,7 +4004,6 @@
3735
4004
  default:
3736
4005
  break;
3737
4006
  }
3738
- console.log(field.key, field.validators);
3739
4007
  if (isEmpty$1((_a = field.validators) === null || _a === void 0 ? void 0 : _a.min)) {
3740
4008
  delete field.validators.min;
3741
4009
  }
@@ -3751,6 +4019,8 @@
3751
4019
  if (isEmpty$1((_e = field.validators) === null || _e === void 0 ? void 0 : _e.pattern)) {
3752
4020
  delete field.validators.pattern;
3753
4021
  }
4022
+ field.focus = false;
4023
+ field.invalid = false;
3754
4024
  }
3755
4025
  return field;
3756
4026
  };
@@ -3961,11 +4231,27 @@
3961
4231
  }
3962
4232
  return formConfig;
3963
4233
  };
4234
+ var setFormFieldGroups = function (formConfig, groups) {
4235
+ formConfig["fieldGroups"] = groups;
4236
+ return formConfig;
4237
+ };
4238
+ var updateFormFieldGroups = function (fieldGroups, field) {
4239
+ if (hasKey$2(field, "groupKey")) {
4240
+ if (hasKey$2(fieldGroups, field.groupKey)) {
4241
+ fieldGroups[field.groupKey].push(field.key);
4242
+ }
4243
+ else {
4244
+ fieldGroups[field.groupKey] = [field.key];
4245
+ }
4246
+ }
4247
+ return fieldGroups;
4248
+ };
3964
4249
  var connectedFieldMapping = {
3965
4250
  parent: {},
3966
4251
  child: {}
3967
4252
  };
3968
4253
  var fields = this.getFormFields(formConfig);
4254
+ var fieldGroups = {};
3969
4255
  try {
3970
4256
  for (var fields_1 = __values(fields), fields_1_1 = fields_1.next(); !fields_1_1.done; fields_1_1 = fields_1.next()) {
3971
4257
  var field = fields_1_1.value;
@@ -3976,6 +4262,7 @@
3976
4262
  // connectedFieldMapping
3977
4263
  // );
3978
4264
  // field = updateConnectedElementsKeyValue(field, connectedFieldMapping);
4265
+ fieldGroups = updateFormFieldGroups(fieldGroups, field);
3979
4266
  field = updateFieldDefaultValueConfig(field);
3980
4267
  field = updateFieldValidatorConfig(field);
3981
4268
  field = updateFieldResetButton(field);
@@ -3989,6 +4276,7 @@
3989
4276
  }
3990
4277
  finally { if (e_1) throw e_1.error; }
3991
4278
  }
4279
+ formConfig = setFormFieldGroups(formConfig, fieldGroups);
3992
4280
  formConfig = setFormFields(formConfig, fields);
3993
4281
  return formConfig;
3994
4282
  };
@@ -4125,12 +4413,39 @@
4125
4413
  }
4126
4414
  return formsList;
4127
4415
  };
4416
+ KwikIDRendererService.prototype.filterAllFormsData = function (allFormsData, formsList) {
4417
+ var e_4, _a, _b;
4418
+ var currentUserFormAllFormsData = {};
4419
+ try {
4420
+ for (var formsList_4 = __values(formsList), formsList_4_1 = formsList_4.next(); !formsList_4_1.done; formsList_4_1 = formsList_4.next()) {
4421
+ var form = formsList_4_1.value;
4422
+ if (hasKey$2(allFormsData, form.key)) {
4423
+ currentUserFormAllFormsData = Object.assign(Object.assign({}, currentUserFormAllFormsData), (_b = {}, _b[form.key] = allFormsData[form.key], _b));
4424
+ }
4425
+ }
4426
+ }
4427
+ catch (e_4_1) { e_4 = { error: e_4_1 }; }
4428
+ finally {
4429
+ try {
4430
+ if (formsList_4_1 && !formsList_4_1.done && (_a = formsList_4.return)) _a.call(formsList_4);
4431
+ }
4432
+ finally { if (e_4) throw e_4.error; }
4433
+ }
4434
+ return currentUserFormAllFormsData;
4435
+ };
4128
4436
  KwikIDRendererService.prototype.updateFormsList = function () {
4129
4437
  var formsList = this.formsList;
4130
4438
  var formsListCompleted;
4131
4439
  var activeFormConfig;
4132
4440
  formsList = this.assignSequenceNoToForm(formsList);
4133
- formsListCompleted = this.findCompletedFormsList(this.allFormsData);
4441
+ /**
4442
+ * Below code identifies the allFormsData required for the current User Form.
4443
+ * Why? Because allFormsData will actually contain the whole journey's all
4444
+ * possible User Form steps. So, it is important to set the form data which
4445
+ * this particular User Form only has to LOCAL METHOD Variable.
4446
+ */
4447
+ var currentUserFormAllFormsData = this.filterAllFormsData(this.allFormsData, formsList);
4448
+ formsListCompleted = this.findCompletedFormsList(currentUserFormAllFormsData);
4134
4449
  formsList = this.markFormInFormsListAsCompleted(formsList, formsListCompleted);
4135
4450
  formsList = this.markFormInFormsListAsDisabled(formsList, formsListCompleted);
4136
4451
  if (formsList.length !== formsListCompleted.length) {
@@ -4306,6 +4621,7 @@
4306
4621
  if (this.userConfig.userFormFieldsConfig.validation) {
4307
4622
  var validations_1 = new Validations(this.userConfig, this.takeAction.bind(this));
4308
4623
  (function () { return __awaiter(_this, void 0, void 0, function () {
4624
+ var _this = this;
4309
4625
  return __generator(this, function (_b) {
4310
4626
  switch (_b.label) {
4311
4627
  case 0: return [4 /*yield*/, validations_1.validateField()];
@@ -4316,6 +4632,9 @@
4316
4632
  }
4317
4633
  else {
4318
4634
  this.toggleErrorNotification(true);
4635
+ setTimeout(function () {
4636
+ _this.toggleErrorNotification(false);
4637
+ }, 3000);
4319
4638
  }
4320
4639
  return [2 /*return*/];
4321
4640
  }