kwikid-forms 0.1.10 → 0.1.12

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.
@@ -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('@taiga-ui/core'), require('@taiga-ui/kit'), require('kwikid-toolkit'), require('rxjs/operators'), require('@taiga-ui/cdk'), require('@angular/common'), require('@angular/platform-browser'), 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', 'kwikid-toolkit', 'rxjs/operators', '@taiga-ui/cdk', '@angular/common', '@angular/platform-browser', '@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.kwikui, global.lodash, global["@taiga-ui/core"], global["@taiga-ui/kit"], global["kwikid-toolkit"], global.rxjs.operators, global["@taiga-ui/cdk"], global.ng.common, global.ng.platformBrowser, global.ng.animations, global.ng.common.http));
5
- })(this, (function (exports, dragDrop, i0, i6, i2, lodash, i3, i4, kwikidToolkit, operators, cdk, i5, i1, 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('kwikid-toolkit'), require('rxjs/operators'), require('@taiga-ui/cdk'), require('@angular/common'), require('@angular/platform-browser'), require('@angular/animations'), require('lodash/cloneDeep'), 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', 'kwikid-toolkit', 'rxjs/operators', '@taiga-ui/cdk', '@angular/common', '@angular/platform-browser', '@angular/animations', 'lodash/cloneDeep', '@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.kwikui, global.lodash, global["@taiga-ui/core"], global["@taiga-ui/kit"], global["kwikid-toolkit"], global.rxjs.operators, global["@taiga-ui/cdk"], global.ng.common, global.ng.platformBrowser, global.ng.animations, global.cloneDeep, global.ng.common.http));
5
+ })(this, (function (exports, dragDrop, i0, i6, i2, lodash, i3, i4, kwikidToolkit, operators, cdk, i5, i1, animations, cloneDeep, http) { 'use strict';
6
6
 
7
7
  function _interopNamespace(e) {
8
8
  if (e && e.__esModule) return e;
@@ -29,6 +29,7 @@
29
29
  var i4__namespace = /*#__PURE__*/_interopNamespace(i4);
30
30
  var i5__namespace = /*#__PURE__*/_interopNamespace(i5);
31
31
  var i1__namespace = /*#__PURE__*/_interopNamespace(i1);
32
+ var cloneDeep__namespace = /*#__PURE__*/_interopNamespace(cloneDeep);
32
33
 
33
34
  /******************************************************************************
34
35
  Copyright (c) Microsoft Corporation.
@@ -1410,7 +1411,6 @@
1410
1411
  this.onClickViewForms = new i0.EventEmitter();
1411
1412
  this.onClickSaveForm = new i0.EventEmitter();
1412
1413
  this.onClickApiCall = new i0.EventEmitter();
1413
- this.getActiveFormData = new i0.EventEmitter();
1414
1414
  this.fieldGroups = {};
1415
1415
  this.formFields = [];
1416
1416
  this.previousFormData = {};
@@ -1431,7 +1431,15 @@
1431
1431
  (function () { return __awaiter(_this, void 0, void 0, function () {
1432
1432
  return __generator(this, function (_a) {
1433
1433
  switch (_a.label) {
1434
- case 0: return [4 /*yield*/, this.initFormConfig(this.formConfig)];
1434
+ case 0:
1435
+ this.formsList = this.formsList.filter(function (form) {
1436
+ if (kwikidToolkit.checkObjectKeyExists(form, "hidden")) {
1437
+ if (!form.hidden) {
1438
+ return form;
1439
+ }
1440
+ }
1441
+ });
1442
+ return [4 /*yield*/, this.initFormConfig(this.formConfig)];
1435
1443
  case 1:
1436
1444
  _a.sent();
1437
1445
  this.loading = false;
@@ -1482,7 +1490,13 @@
1482
1490
  this.allFormsData = changes.allFormsData.currentValue;
1483
1491
  }
1484
1492
  if (verifyChange("formsList")) {
1485
- this.formsList = changes.formsList.currentValue;
1493
+ this.formsList = changes.formsList.currentValue.filter(function (form) {
1494
+ if (kwikidToolkit.checkObjectKeyExists(form, "hidden")) {
1495
+ if (!form.hidden) {
1496
+ return form;
1497
+ }
1498
+ }
1499
+ });
1486
1500
  }
1487
1501
  if (verifyChange("formConfig")) {
1488
1502
  this.formConfig = changes.formConfig.currentValue;
@@ -2424,7 +2438,7 @@
2424
2438
  return KwikIDFormViewComponent;
2425
2439
  }());
2426
2440
  /** @nocollapse */ KwikIDFormViewComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: KwikIDFormViewComponent, deps: [{ token: i4.TuiPushService }, { token: i3.TuiAlertService }, { token: KwikIDFormViewService }], target: i0__namespace.ɵɵFactoryTarget.Component });
2427
- /** @nocollapse */ KwikIDFormViewComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", 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\n class=\"kwikid-form-container\"\n *ngIf=\"!this.loading\"\n>\n <div id=\"uf-form-fields-header-container\">\n <div id=\"uf-form-fields-title\">\n {{ this.formConfig.title }}\n </div>\n <div id=\"uf-form-fields-steps\">\n Step {{ this.formConfig.sequenceNo }} of {{ this.formsList.length }}\n </div>\n <hr />\n </div>\n <form\n class=\"kwikid-form show\"\n [formGroup]=\"this.formGroup\"\n >\n <ng-container *ngFor=\"let field of this.formFields; let i = index\">\n <ng-container [ngSwitch]=\"field.type\">\n <!-- HTML Content -->\n <ng-container *ngSwitchCase=\"'html'\">\n <div\n [hidden]=\"field?.hidden\"\n id=\"field_{{ field.key }}\"\n >\n <div [innerHtml]=\"field.html | safeHtml\"></div>\n </div>\n </ng-container>\n <!-- Form Title -->\n <ng-container *ngSwitchCase=\"'title'\">\n <div\n class=\"title\"\n [class.hidden]=\"field?.hidden\"\n id=\"field_{{ field.key }}\"\n >\n <div>\n {{ field.label }}\n </div>\n <kwikui-button\n *ngIf=\"field?.reset\"\n appearance=\"whiteblock\"\n size=\"s\"\n label=\"Reset\"\n (onClick)=\"this.handleOnClickResetFormFields($event, field)\"\n ></kwikui-button>\n </div>\n </ng-container>\n <!-- Input Text -->\n <ng-container *ngSwitchCase=\"'text'\">\n <div\n [hidden]=\"field?.hidden\"\n id=\"field_{{ field.key }}\"\n >\n <kwikui-input\n [case]=\"field?.properties?.case\"\n [disabled]=\"field?.disabled\"\n [focus]=\"field?.focus\"\n [formControl]=\"formGroup.controls[field.key]\"\n [formControlName]=\"field.key\"\n [id]=\"field.key\"\n [invalid]=\"field?.invalid\"\n [label]=\"field.label\"\n [placeholder]=\"field?.properties?.placeholder\"\n [type]=\"'text'\"\n [validators]=\"field?.validators\"\n (getKeyValue)=\"handleGetKeyValue($event)\"\n ></kwikui-input>\n <kwikui-messages\n [messages]=\"field.messages\"\n [id]=\"field.key\"\n ></kwikui-messages>\n </div>\n </ng-container>\n <!-- Checkbox -->\n <ng-container *ngSwitchCase=\"'checkbox'\">\n <div\n [hidden]=\"field?.hidden\"\n id=\"field_{{ field.key }}\"\n >\n <kwikui-checkbox-block\n [contentAlign]=\"field?.properties?.contentAlign ?? 'left'\"\n [disabled]=\"field?.disabled\"\n [focus]=\"field?.focus\"\n [formControl]=\"formGroup.controls[field.key]\"\n [formControlName]=\"field.key\"\n [id]=\"field.key\"\n [invalid]=\"field?.invalid\"\n [label]=\"field?.properties?.placeholder\"\n [placeholder]=\"field?.properties?.placeholder\"\n [properties]=\"field?.properties\"\n [size]=\"field?.properties?.size ?? 'l'\"\n [validators]=\"field?.validators\"\n (getKeyValue)=\"handleGetKeyValue($event)\"\n ></kwikui-checkbox-block\n ><kwikui-messages\n [messages]=\"field.messages\"\n [id]=\"field.key\"\n ></kwikui-messages>\n </div>\n </ng-container>\n <!-- Input Number -->\n <ng-container *ngSwitchCase=\"'number'\">\n <div\n [hidden]=\"field?.hidden\"\n id=\"field_{{ field.key }}\"\n >\n <kwikui-input-number\n [decimal]=\"field?.properties?.decimal\"\n [disabled]=\"field?.disabled\"\n [focus]=\"field?.focus\"\n [formControl]=\"formGroup.controls[field.key]\"\n [formControlName]=\"field.key\"\n [id]=\"field.key\"\n [invalid]=\"field?.invalid\"\n [label]=\"field?.label\"\n [max]=\"field?.properties?.max\"\n [min]=\"field?.properties?.min\"\n [placeholder]=\"field?.properties?.placeholder\"\n [postfix]=\"field?.properties?.postfix ?? ''\"\n [precision]=\"field?.properties?.precision\"\n [prefix]=\"field?.properties?.prefix ?? ''\"\n [properties]=\"field?.properties\"\n [validators]=\"field?.validators\"\n (getKeyValue)=\"handleGetKeyValue($event)\"\n ></kwikui-input-number\n ><kwikui-messages\n [messages]=\"field.messages\"\n [id]=\"field.key\"\n ></kwikui-messages>\n </div>\n </ng-container>\n <!-- Input Date -->\n <ng-container *ngSwitchCase=\"'date'\">\n <div\n [hidden]=\"field?.hidden\"\n id=\"field_{{ field.key }}\"\n >\n <kwikui-input-date\n [disabled]=\"field?.disabled\"\n [focus]=\"field?.focus\"\n [formControl]=\"formGroup.controls[field.key]\"\n [formControlName]=\"field.key\"\n [id]=\"field.key\"\n [invalid]=\"field?.invalid\"\n [label]=\"field.label\"\n [max]=\"field?.properties?.max\"\n [min]=\"field?.properties?.min\"\n [placeholder]=\"field?.properties?.placeholder\"\n [properties]=\"field?.properties\"\n [validators]=\"field?.validators\"\n (getKeyValue)=\"handleGetKeyValue($event)\"\n ></kwikui-input-date>\n <kwikui-messages\n [messages]=\"field.messages\"\n [id]=\"field.key\"\n ></kwikui-messages>\n </div>\n </ng-container>\n <!-- Input Phone -->\n <ng-container *ngSwitchCase=\"'phone'\">\n <div\n [hidden]=\"field?.hidden\"\n id=\"field_{{ field.key }}\"\n >\n <kwikui-input-phone\n [countryCode]=\"field?.properties?.countryCode\"\n [disabled]=\"field?.disabled\"\n [focus]=\"field?.focus\"\n [formControl]=\"formGroup.controls[field.key]\"\n [formControlName]=\"field.key\"\n [id]=\"field.key\"\n [invalid]=\"field?.invalid\"\n [label]=\"field?.label\"\n [phoneMaskAfterCountryCode]=\"\n field?.properties?.phoneMaskAfterCountryCode\n \"\n [placeholder]=\"field?.properties?.placeholder\"\n [validators]=\"field?.validators\"\n (getKeyValue)=\"handleGetKeyValue($event)\"\n ></kwikui-input-phone>\n <kwikui-messages\n [messages]=\"field.messages\"\n [id]=\"field.key\"\n ></kwikui-messages>\n </div>\n </ng-container>\n <!-- Input Radio -->\n <ng-container *ngSwitchCase=\"'radio'\">\n <div\n [hidden]=\"field?.hidden\"\n id=\"field_{{ field.key }}\"\n >\n <label\n [tuiLabel]=\"labelTemplate\"\n style=\"min-height: auto\"\n >\n <kwikui-radio-list\n [disabled]=\"field?.disabled\"\n [focus]=\"field?.focus\"\n [formControl]=\"formGroup.controls[field.key]\"\n [formControlName]=\"field.key\"\n [id]=\"field.key\"\n [invalid]=\"field?.invalid\"\n [items]=\"field?.options\"\n [label]=\"field?.label\"\n [orientation]=\"field?.properties?.orientation\"\n [placeholder]=\"field?.properties?.placeholder\"\n [properties]=\"field?.properties\"\n [size]=\"field?.properties?.size\"\n [validators]=\"field?.validators\"\n (getKeyValue)=\"handleGetKeyValue($event)\"\n ></kwikui-radio-list>\n </label>\n <ng-template #labelTemplate>\n <p\n class=\"tui-space_bottom-2\"\n [hidden]=\"field?.hidden\"\n id=\"field_{{ field.key }}\"\n >\n <b>\n {{ field.label }}\n <span *ngIf=\"field.validators?.required\"></span>\n </b>\n </p>\n </ng-template>\n <kwikui-messages\n [messages]=\"field.messages\"\n [id]=\"field.key\"\n ></kwikui-messages>\n </div>\n </ng-container>\n <!-- Dropdown -->\n <ng-container *ngSwitchCase=\"'dropdown-with-search'\">\n <div\n [hidden]=\"field?.hidden\"\n id=\"field_{{ field.key }}\"\n >\n <kwikui-select-combobox\n [disabled]=\"field?.disabled\"\n [focus]=\"field?.focus\"\n [formControl]=\"formGroup.controls[field.key]\"\n [formControlName]=\"field.key\"\n [id]=\"field.key\"\n [invalid]=\"field?.invalid\"\n [label]=\"field.label\"\n [options]=\"field.options\"\n [placeholder]=\"field?.properties?.placeholder\"\n [properties]=\"field?.properties\"\n [validators]=\"field?.validators\"\n (getKeyValue)=\"handleGetKeyValue($event)\"\n ></kwikui-select-combobox>\n <kwikui-messages\n [messages]=\"field.messages\"\n [id]=\"field.key\"\n ></kwikui-messages>\n </div>\n </ng-container>\n <!-- API Call -->\n <ng-container *ngSwitchCase=\"'api-call'\">\n <div\n [hidden]=\"field?.hidden\"\n id=\"field_{{ field.key }}\"\n >\n <kwikui-button-api-call\n [apiStatus]=\"field?.api?.status?.value\"\n [class]=\"field?.class\"\n [disabled]=\"field?.disabled\"\n [id]=\"field.key\"\n [label]=\"field?.api?.status?.labels[field?.api?.status?.value]\"\n [showLoader]=\"field?.disabled === 'loading'\"\n shape=\"null\"\n size=\"m\"\n styles=\"width: fit-content\"\n (onClick)=\"this.handleOnClickApiCall($event)\"\n ></kwikui-button-api-call>\n <kwikui-messages\n [messages]=\"field.messages\"\n [id]=\"field.key\"\n ></kwikui-messages>\n </div>\n </ng-container>\n <!-- Mobile OTP -->\n <ng-container *ngSwitchCase=\"'otp'\">\n <div\n [hidden]=\"field?.hidden\"\n id=\"field_{{ field.key }}\"\n >\n <kwikui-input-otp\n [disabled]=\"field?.disabled\"\n [focus]=\"field?.focus\"\n [formControl]=\"formGroup.controls[field.key]\"\n [formControlName]=\"field.key\"\n [id]=\"field.key\"\n [invalid]=\"field?.invalid\"\n [label]=\"field?.label\"\n [mask]=\"field?.properties?.mask\"\n [placeholder]=\"field?.properties?.placeholder\"\n [properties]=\"field?.properties\"\n [validators]=\"field?.validators\"\n (getKeyValue)=\"handleGetKeyValue($event)\"\n ></kwikui-input-otp>\n <kwikui-messages\n [messages]=\"field.messages\"\n [id]=\"field.key\"\n ></kwikui-messages>\n </div>\n </ng-container>\n <!-- Aadhaar Number -->\n <ng-container *ngSwitchCase=\"'aadhaar-number'\">\n <div\n [hidden]=\"field?.hidden\"\n id=\"field_{{ field.key }}\"\n >\n <kwikui-input-aadhaar\n [disabled]=\"field?.disabled\"\n [focus]=\"field?.focus\"\n [formControl]=\"formGroup.controls[field.key]\"\n [formControlName]=\"field.key\"\n [id]=\"field.key\"\n [invalid]=\"field?.invalid\"\n [label]=\"field?.label\"\n [placeholder]=\"field?.placeholder\"\n [properties]=\"field?.properties\"\n [validators]=\"field?.validators\"\n (getKeyValue)=\"handleGetKeyValue($event)\"\n ></kwikui-input-aadhaar>\n <kwikui-messages\n [messages]=\"field.messages\"\n [id]=\"field.key\"\n ></kwikui-messages>\n </div>\n </ng-container>\n </ng-container>\n </ng-container>\n </form>\n <div class=\"kwikid-form-buttons\">\n <kwikui-button\n *ngIf=\"this.isMobileView\"\n [disabled]=\"viewFormsButton.disabled\"\n id=\"\"\n label=\"View Forms\"\n [showLoader]=\"viewFormsButton.showLoader\"\n styles=\"\"\n class=\"\"\n type=\"button\"\n appearance=\"secondary\"\n icon=\"\"\n iconRight=\"\"\n [shape]=\"null\"\n size=\"m\"\n styles=\"width: 100%\"\n (onClick)=\"this.handleOnClickViewForms($event)\"\n ></kwikui-button>\n <kwikui-button\n [disabled]=\"saveFormButton.disabled\"\n id=\"\"\n label=\"Save\"\n [showLoader]=\"saveFormButton.showLoader\"\n styles=\"\"\n class=\"\"\n type=\"button\"\n appearance=\"primary\"\n icon=\"\"\n iconRight=\"\"\n [shape]=\"null\"\n size=\"m\"\n styles=\"width: 100%\"\n (onClick)=\"this.handleOnClickSaveForm($event)\"\n ></kwikui-button>\n </div>\n</div>\n<div\n class=\"kwikid-form-container-loading\"\n *ngIf=\"this.loading\"\n>\n <div\n class=\"large-wrapper\"\n [class.tui-skeleton]=\"this.loading\"\n [class.tui-skeleton_rounded]=\"this.loading\"\n ></div>\n <div\n class=\"large-wrapper\"\n [class.tui-skeleton]=\"this.loading\"\n [class.tui-skeleton_rounded]=\"this.loading\"\n ></div>\n <div\n class=\"large-wrapper\"\n [class.tui-skeleton]=\"this.loading\"\n [class.tui-skeleton_rounded]=\"this.loading\"\n ></div>\n <div\n class=\"large-wrapper\"\n [class.tui-skeleton]=\"this.loading\"\n [class.tui-skeleton_rounded]=\"this.loading\"\n ></div>\n <div\n class=\"large-wrapper\"\n [class.tui-skeleton]=\"this.loading\"\n [class.tui-skeleton_rounded]=\"this.loading\"\n ></div>\n <div\n class=\"large-wrapper\"\n [class.tui-skeleton]=\"this.loading\"\n [class.tui-skeleton_rounded]=\"this.loading\"\n ></div>\n <div\n class=\"large-wrapper\"\n [class.tui-skeleton]=\"this.loading\"\n [class.tui-skeleton_rounded]=\"this.loading\"\n ></div>\n</div>\n<tui-push\n id=\"field-error-notification\"\n *tuiPush=\"showErrorNotification\"\n heading=\"Missing/Incorrect Fields!\"\n type=\"Error\"\n (close)=\"toggleErrorNotification(false)\"\n>\n <tui-svg\n src=\"tuiIconCancel\"\n style=\"color: #fff !important\"\n >\n </tui-svg>\n</tui-push>\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" }], pipes: { "safeHtml": SafeHtmlPipe } });
2441
+ /** @nocollapse */ KwikIDFormViewComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", 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" }, providers: [KwikIDFormViewService], usesOnChanges: true, ngImport: i0__namespace, template: "<div\n class=\"kwikid-form-container\"\n *ngIf=\"!this.loading\"\n>\n <div id=\"uf-form-fields-header-container\">\n <div id=\"uf-form-fields-title\">\n {{ this.formConfig.title }}\n </div>\n <div id=\"uf-form-fields-steps\">\n Step {{ this.formConfig.sequenceNo }} of {{ this.formsList.length }}\n </div>\n <hr />\n </div>\n <form\n class=\"kwikid-form show\"\n [formGroup]=\"this.formGroup\"\n >\n <ng-container *ngFor=\"let field of this.formFields; let i = index\">\n <ng-container [ngSwitch]=\"field.type\">\n <!-- HTML Content -->\n <ng-container *ngSwitchCase=\"'html'\">\n <div\n [hidden]=\"field?.hidden\"\n id=\"field_{{ field.key }}\"\n >\n <div [innerHtml]=\"field.html | safeHtml\"></div>\n </div>\n </ng-container>\n <!-- Form Title -->\n <ng-container *ngSwitchCase=\"'title'\">\n <div\n class=\"title\"\n [class.hidden]=\"field?.hidden\"\n id=\"field_{{ field.key }}\"\n >\n <div>\n {{ field.label }}\n </div>\n <kwikui-button\n *ngIf=\"field?.reset\"\n appearance=\"whiteblock\"\n size=\"s\"\n label=\"Reset\"\n (onClick)=\"this.handleOnClickResetFormFields($event, field)\"\n ></kwikui-button>\n </div>\n </ng-container>\n <!-- Input Text -->\n <ng-container *ngSwitchCase=\"'text'\">\n <div\n [hidden]=\"field?.hidden\"\n id=\"field_{{ field.key }}\"\n >\n <kwikui-input\n [case]=\"field?.properties?.case\"\n [disabled]=\"field?.disabled\"\n [focus]=\"field?.focus\"\n [formControl]=\"formGroup.controls[field.key]\"\n [formControlName]=\"field.key\"\n [id]=\"field.key\"\n [invalid]=\"field?.invalid\"\n [label]=\"field.label\"\n [placeholder]=\"field?.properties?.placeholder\"\n [type]=\"'text'\"\n [validators]=\"field?.validators\"\n (getKeyValue)=\"handleGetKeyValue($event)\"\n ></kwikui-input>\n <kwikui-messages\n [messages]=\"field.messages\"\n [id]=\"field.key\"\n ></kwikui-messages>\n </div>\n </ng-container>\n <!-- Checkbox -->\n <ng-container *ngSwitchCase=\"'checkbox'\">\n <div\n [hidden]=\"field?.hidden\"\n id=\"field_{{ field.key }}\"\n >\n <kwikui-checkbox-block\n [contentAlign]=\"field?.properties?.contentAlign ?? 'left'\"\n [disabled]=\"field?.disabled\"\n [focus]=\"field?.focus\"\n [formControl]=\"formGroup.controls[field.key]\"\n [formControlName]=\"field.key\"\n [id]=\"field.key\"\n [invalid]=\"field?.invalid\"\n [label]=\"field?.properties?.placeholder\"\n [placeholder]=\"field?.properties?.placeholder\"\n [properties]=\"field?.properties\"\n [size]=\"field?.properties?.size ?? 'l'\"\n [validators]=\"field?.validators\"\n (getKeyValue)=\"handleGetKeyValue($event)\"\n ></kwikui-checkbox-block\n ><kwikui-messages\n [messages]=\"field.messages\"\n [id]=\"field.key\"\n ></kwikui-messages>\n </div>\n </ng-container>\n <!-- Input Number -->\n <ng-container *ngSwitchCase=\"'number'\">\n <div\n [hidden]=\"field?.hidden\"\n id=\"field_{{ field.key }}\"\n >\n <kwikui-input-number\n [decimal]=\"field?.properties?.decimal\"\n [disabled]=\"field?.disabled\"\n [focus]=\"field?.focus\"\n [formControl]=\"formGroup.controls[field.key]\"\n [formControlName]=\"field.key\"\n [id]=\"field.key\"\n [invalid]=\"field?.invalid\"\n [label]=\"field?.label\"\n [max]=\"field?.properties?.max\"\n [min]=\"field?.properties?.min\"\n [placeholder]=\"field?.properties?.placeholder\"\n [postfix]=\"field?.properties?.postfix ?? ''\"\n [precision]=\"field?.properties?.precision\"\n [prefix]=\"field?.properties?.prefix ?? ''\"\n [properties]=\"field?.properties\"\n [validators]=\"field?.validators\"\n (getKeyValue)=\"handleGetKeyValue($event)\"\n ></kwikui-input-number\n ><kwikui-messages\n [messages]=\"field.messages\"\n [id]=\"field.key\"\n ></kwikui-messages>\n </div>\n </ng-container>\n <!-- Input Date -->\n <ng-container *ngSwitchCase=\"'date'\">\n <div\n [hidden]=\"field?.hidden\"\n id=\"field_{{ field.key }}\"\n >\n <kwikui-input-date\n [disabled]=\"field?.disabled\"\n [focus]=\"field?.focus\"\n [formControl]=\"formGroup.controls[field.key]\"\n [formControlName]=\"field.key\"\n [id]=\"field.key\"\n [invalid]=\"field?.invalid\"\n [label]=\"field.label\"\n [max]=\"field?.properties?.max\"\n [min]=\"field?.properties?.min\"\n [placeholder]=\"field?.properties?.placeholder\"\n [properties]=\"field?.properties\"\n [validators]=\"field?.validators\"\n (getKeyValue)=\"handleGetKeyValue($event)\"\n ></kwikui-input-date>\n <kwikui-messages\n [messages]=\"field.messages\"\n [id]=\"field.key\"\n ></kwikui-messages>\n </div>\n </ng-container>\n <!-- Input Phone -->\n <ng-container *ngSwitchCase=\"'phone'\">\n <div\n [hidden]=\"field?.hidden\"\n id=\"field_{{ field.key }}\"\n >\n <kwikui-input-phone\n [countryCode]=\"field?.properties?.countryCode\"\n [disabled]=\"field?.disabled\"\n [focus]=\"field?.focus\"\n [formControl]=\"formGroup.controls[field.key]\"\n [formControlName]=\"field.key\"\n [id]=\"field.key\"\n [invalid]=\"field?.invalid\"\n [label]=\"field?.label\"\n [phoneMaskAfterCountryCode]=\"\n field?.properties?.phoneMaskAfterCountryCode\n \"\n [placeholder]=\"field?.properties?.placeholder\"\n [validators]=\"field?.validators\"\n (getKeyValue)=\"handleGetKeyValue($event)\"\n ></kwikui-input-phone>\n <kwikui-messages\n [messages]=\"field.messages\"\n [id]=\"field.key\"\n ></kwikui-messages>\n </div>\n </ng-container>\n <!-- Input Radio -->\n <ng-container *ngSwitchCase=\"'radio'\">\n <div\n [hidden]=\"field?.hidden\"\n id=\"field_{{ field.key }}\"\n >\n <label\n [tuiLabel]=\"labelTemplate\"\n style=\"min-height: auto\"\n >\n <kwikui-radio-list\n [disabled]=\"field?.disabled\"\n [focus]=\"field?.focus\"\n [formControl]=\"formGroup.controls[field.key]\"\n [formControlName]=\"field.key\"\n [id]=\"field.key\"\n [invalid]=\"field?.invalid\"\n [items]=\"field?.options\"\n [label]=\"field?.label\"\n [orientation]=\"field?.properties?.orientation\"\n [placeholder]=\"field?.properties?.placeholder\"\n [properties]=\"field?.properties\"\n [size]=\"field?.properties?.size\"\n [validators]=\"field?.validators\"\n (getKeyValue)=\"handleGetKeyValue($event)\"\n ></kwikui-radio-list>\n </label>\n <ng-template #labelTemplate>\n <p\n class=\"tui-space_bottom-2\"\n [hidden]=\"field?.hidden\"\n id=\"field_{{ field.key }}\"\n >\n <b>\n {{ field.label }}\n <span *ngIf=\"field.validators?.required\"></span>\n </b>\n </p>\n </ng-template>\n <kwikui-messages\n [messages]=\"field.messages\"\n [id]=\"field.key\"\n ></kwikui-messages>\n </div>\n </ng-container>\n <!-- Dropdown -->\n <ng-container *ngSwitchCase=\"'dropdown-with-search'\">\n <div\n [hidden]=\"field?.hidden\"\n id=\"field_{{ field.key }}\"\n >\n <kwikui-select-combobox\n [disabled]=\"field?.disabled\"\n [focus]=\"field?.focus\"\n [formControl]=\"formGroup.controls[field.key]\"\n [formControlName]=\"field.key\"\n [id]=\"field.key\"\n [invalid]=\"field?.invalid\"\n [label]=\"field.label\"\n [options]=\"field.options\"\n [placeholder]=\"field?.properties?.placeholder\"\n [properties]=\"field?.properties\"\n [validators]=\"field?.validators\"\n (getKeyValue)=\"handleGetKeyValue($event)\"\n ></kwikui-select-combobox>\n <kwikui-messages\n [messages]=\"field.messages\"\n [id]=\"field.key\"\n ></kwikui-messages>\n </div>\n </ng-container>\n <!-- API Call -->\n <ng-container *ngSwitchCase=\"'api-call'\">\n <div\n [hidden]=\"field?.hidden\"\n id=\"field_{{ field.key }}\"\n >\n <kwikui-button-api-call\n [apiStatus]=\"field?.api?.status?.value\"\n [class]=\"field?.class\"\n [disabled]=\"field?.disabled\"\n [id]=\"field.key\"\n [label]=\"field?.api?.status?.labels[field?.api?.status?.value]\"\n [showLoader]=\"field?.disabled === 'loading'\"\n shape=\"null\"\n size=\"m\"\n styles=\"width: fit-content\"\n (onClick)=\"this.handleOnClickApiCall($event)\"\n ></kwikui-button-api-call>\n <kwikui-messages\n [messages]=\"field.messages\"\n [id]=\"field.key\"\n ></kwikui-messages>\n </div>\n </ng-container>\n <!-- Mobile OTP -->\n <ng-container *ngSwitchCase=\"'otp'\">\n <div\n [hidden]=\"field?.hidden\"\n id=\"field_{{ field.key }}\"\n >\n <kwikui-input-otp\n [disabled]=\"field?.disabled\"\n [focus]=\"field?.focus\"\n [formControl]=\"formGroup.controls[field.key]\"\n [formControlName]=\"field.key\"\n [id]=\"field.key\"\n [invalid]=\"field?.invalid\"\n [label]=\"field?.label\"\n [mask]=\"field?.properties?.mask\"\n [placeholder]=\"field?.properties?.placeholder\"\n [properties]=\"field?.properties\"\n [validators]=\"field?.validators\"\n (getKeyValue)=\"handleGetKeyValue($event)\"\n ></kwikui-input-otp>\n <kwikui-messages\n [messages]=\"field.messages\"\n [id]=\"field.key\"\n ></kwikui-messages>\n </div>\n </ng-container>\n <!-- Aadhaar Number -->\n <ng-container *ngSwitchCase=\"'aadhaar-number'\">\n <div\n [hidden]=\"field?.hidden\"\n id=\"field_{{ field.key }}\"\n >\n <kwikui-input-aadhaar\n [disabled]=\"field?.disabled\"\n [focus]=\"field?.focus\"\n [formControl]=\"formGroup.controls[field.key]\"\n [formControlName]=\"field.key\"\n [id]=\"field.key\"\n [invalid]=\"field?.invalid\"\n [label]=\"field?.label\"\n [placeholder]=\"field?.placeholder\"\n [properties]=\"field?.properties\"\n [validators]=\"field?.validators\"\n (getKeyValue)=\"handleGetKeyValue($event)\"\n ></kwikui-input-aadhaar>\n <kwikui-messages\n [messages]=\"field.messages\"\n [id]=\"field.key\"\n ></kwikui-messages>\n </div>\n </ng-container>\n </ng-container>\n </ng-container>\n </form>\n <div class=\"kwikid-form-buttons\">\n <kwikui-button\n *ngIf=\"this.isMobileView\"\n [disabled]=\"viewFormsButton.disabled\"\n id=\"\"\n label=\"View Forms\"\n [showLoader]=\"viewFormsButton.showLoader\"\n styles=\"\"\n class=\"\"\n type=\"button\"\n appearance=\"secondary\"\n icon=\"\"\n iconRight=\"\"\n [shape]=\"null\"\n size=\"m\"\n styles=\"width: 100%\"\n (onClick)=\"this.handleOnClickViewForms($event)\"\n ></kwikui-button>\n <kwikui-button\n [disabled]=\"saveFormButton.disabled\"\n id=\"\"\n label=\"Save\"\n [showLoader]=\"saveFormButton.showLoader\"\n styles=\"\"\n class=\"\"\n type=\"button\"\n appearance=\"primary\"\n icon=\"\"\n iconRight=\"\"\n [shape]=\"null\"\n size=\"m\"\n styles=\"width: 100%\"\n (onClick)=\"this.handleOnClickSaveForm($event)\"\n ></kwikui-button>\n </div>\n</div>\n<div\n class=\"kwikid-form-container-loading\"\n *ngIf=\"this.loading\"\n>\n <div\n class=\"large-wrapper\"\n [class.tui-skeleton]=\"this.loading\"\n [class.tui-skeleton_rounded]=\"this.loading\"\n ></div>\n <div\n class=\"large-wrapper\"\n [class.tui-skeleton]=\"this.loading\"\n [class.tui-skeleton_rounded]=\"this.loading\"\n ></div>\n <div\n class=\"large-wrapper\"\n [class.tui-skeleton]=\"this.loading\"\n [class.tui-skeleton_rounded]=\"this.loading\"\n ></div>\n <div\n class=\"large-wrapper\"\n [class.tui-skeleton]=\"this.loading\"\n [class.tui-skeleton_rounded]=\"this.loading\"\n ></div>\n <div\n class=\"large-wrapper\"\n [class.tui-skeleton]=\"this.loading\"\n [class.tui-skeleton_rounded]=\"this.loading\"\n ></div>\n <div\n class=\"large-wrapper\"\n [class.tui-skeleton]=\"this.loading\"\n [class.tui-skeleton_rounded]=\"this.loading\"\n ></div>\n <div\n class=\"large-wrapper\"\n [class.tui-skeleton]=\"this.loading\"\n [class.tui-skeleton_rounded]=\"this.loading\"\n ></div>\n</div>\n<tui-push\n id=\"field-error-notification\"\n *tuiPush=\"showErrorNotification\"\n heading=\"Missing/Incorrect Fields!\"\n type=\"Error\"\n (close)=\"toggleErrorNotification(false)\"\n>\n <tui-svg\n src=\"tuiIconCancel\"\n style=\"color: #fff !important\"\n >\n </tui-svg>\n</tui-push>\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" }], pipes: { "safeHtml": SafeHtmlPipe } });
2428
2442
  __decorate([
2429
2443
  kwikidToolkit.logMethod
2430
2444
  ], KwikIDFormViewComponent.prototype, "ngOnInit", null);
@@ -2576,8 +2590,6 @@
2576
2590
  type: i0.Output
2577
2591
  }], onClickApiCall: [{
2578
2592
  type: i0.Output
2579
- }], getActiveFormData: [{
2580
- type: i0.Output
2581
2593
  }], 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: [], patchFormGroup: [], isFieldValid: [], isFieldEnabled: [], getFormGroupRawValues: [], takeActionOnFieldGroup: [], takeAction: [] } });
2582
2594
 
2583
2595
  var KwikIDFormsListComponent = /** @class */ (function () {
@@ -2594,6 +2606,13 @@
2594
2606
  this.isAllFormsCompleted = true;
2595
2607
  }
2596
2608
  KwikIDFormsListComponent.prototype.ngOnInit = function () {
2609
+ this.formsList = this.formsList.filter(function (form) {
2610
+ if (kwikidToolkit.checkObjectKeyExists(form, "hidden")) {
2611
+ if (!form.hidden) {
2612
+ return form;
2613
+ }
2614
+ }
2615
+ });
2597
2616
  this.isAllFormsCompleted = this.checkIsAllFormsCompleted(this.formsList);
2598
2617
  };
2599
2618
  KwikIDFormsListComponent.prototype.ngOnChanges = function (changes) {
@@ -2604,7 +2623,13 @@
2604
2623
  this.showFormFields = changes.showFormFields.currentValue;
2605
2624
  }
2606
2625
  if (verifyChange("formsList")) {
2607
- this.formsList = changes.formsList.currentValue;
2626
+ this.formsList = changes.formsList.currentValue.filter(function (form) {
2627
+ if (kwikidToolkit.checkObjectKeyExists(form, "hidden")) {
2628
+ if (!form.hidden) {
2629
+ return form;
2630
+ }
2631
+ }
2632
+ });
2608
2633
  this.isAllFormsCompleted = this.checkIsAllFormsCompleted(this.formsList);
2609
2634
  }
2610
2635
  if (verifyChange("isMobileView")) {
@@ -2674,6 +2699,15 @@
2674
2699
  type: i0.Output
2675
2700
  }], ngOnChanges: [] } });
2676
2701
 
2702
+ var ERendererActionKey;
2703
+ (function (ERendererActionKey) {
2704
+ ERendererActionKey["SET_VALUE"] = "SET_VALUE";
2705
+ ERendererActionKey["FORM_HIDE"] = "FORM_HIDE";
2706
+ ERendererActionKey["FORM_SHOW"] = "FORM_SHOW";
2707
+ ERendererActionKey["FORM_DISABLE"] = "FORM_DISABLE";
2708
+ ERendererActionKey["FORM_ENABLE"] = "FORM_ENABLE";
2709
+ })(ERendererActionKey || (ERendererActionKey = {}));
2710
+
2677
2711
  var Converter = /** @class */ (function () {
2678
2712
  function Converter() {
2679
2713
  this.getFormFields = function (formConfig) {
@@ -3335,229 +3369,19 @@
3335
3369
  kwikidToolkit.logMethod
3336
3370
  ], Converter.prototype, "convertFormConfig", null);
3337
3371
 
3338
- var KwikIDRendererService = /** @class */ (function () {
3339
- function KwikIDRendererService() {
3340
- this.isMobileView = false;
3341
- this.allFormsData = {};
3342
- }
3343
- KwikIDRendererService.prototype.setIsMobileView = function (isMobileView) {
3344
- this.isMobileView = isMobileView;
3345
- };
3346
- KwikIDRendererService.prototype.setFormsList = function (formsList) {
3347
- this.formsList = formsList;
3348
- };
3349
- KwikIDRendererService.prototype.setFormsListCompleted = function (formsListCompleted) {
3350
- this.formsListCompleted = formsListCompleted;
3351
- };
3352
- KwikIDRendererService.prototype.setAllFormsData = function (allFormsData) {
3353
- this.allFormsData = allFormsData;
3354
- };
3355
- KwikIDRendererService.prototype.setActiveFormConfig = function (activeFormConfig) {
3356
- this.activeFormConfig = activeFormConfig;
3357
- };
3358
- KwikIDRendererService.prototype.setActiveFormFields = function (activeFormFields) {
3359
- this.activeFormFields = activeFormFields;
3360
- };
3361
- KwikIDRendererService.prototype.setActiveFormData = function (activeFormData) {
3362
- this.activeFormData = activeFormData;
3363
- };
3364
- KwikIDRendererService.prototype.fetchFormConfig = function (url) {
3365
- return __awaiter(this, void 0, void 0, function () {
3366
- var response, data;
3367
- return __generator(this, function (_a) {
3368
- switch (_a.label) {
3369
- case 0: return [4 /*yield*/, fetch(url, { method: "GET" })];
3370
- case 1:
3371
- response = _a.sent();
3372
- return [4 /*yield*/, response.json()];
3373
- case 2:
3374
- data = _a.sent();
3375
- return [2 /*return*/, data];
3376
- }
3377
- });
3378
- });
3379
- };
3380
- KwikIDRendererService.prototype.findActiveFormConfig = function (formsList) {
3381
- var activeFormConfig = formsList.find(function (form) {
3382
- return form.status === "editable" && !form.disabled;
3383
- });
3384
- return activeFormConfig;
3385
- };
3386
- KwikIDRendererService.prototype.findCompletedFormsList = function (allFormsData) {
3387
- var formsListCompleted = [];
3388
- Object.keys(allFormsData).map(function (formKey) {
3389
- formsListCompleted.push(formKey);
3390
- });
3391
- return formsListCompleted;
3392
- };
3393
- KwikIDRendererService.prototype.markFormInFormsListAsCompleted = function (formsList, formsListCompleted) {
3394
- var e_1, _a;
3395
- try {
3396
- for (var formsList_1 = __values(formsList), formsList_1_1 = formsList_1.next(); !formsList_1_1.done; formsList_1_1 = formsList_1.next()) {
3397
- var form = formsList_1_1.value;
3398
- if (formsListCompleted.includes(form.key)) {
3399
- form = kwikidToolkit.setValueToObjectPath(form, "status", "completed");
3400
- form = kwikidToolkit.setValueToObjectPath(form, "disabled", false);
3401
- }
3402
- }
3372
+ var getFormConfigByKey = function (forms, key) {
3373
+ var form = forms.find(function (form) {
3374
+ if (form.key === key) {
3375
+ return form;
3403
3376
  }
3404
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
3405
- finally {
3406
- try {
3407
- if (formsList_1_1 && !formsList_1_1.done && (_a = formsList_1.return)) _a.call(formsList_1);
3408
- }
3409
- finally { if (e_1) throw e_1.error; }
3410
- }
3411
- return formsList;
3412
- };
3413
- KwikIDRendererService.prototype.markFormInFormsListAsDisabled = function (formsList, formsListCompleted) {
3414
- var e_2, _a;
3415
- try {
3416
- for (var formsList_2 = __values(formsList), formsList_2_1 = formsList_2.next(); !formsList_2_1.done; formsList_2_1 = formsList_2.next()) {
3417
- var form = formsList_2_1.value;
3418
- if (form.status !== "completed") {
3419
- if (kwikidToolkit.checkObjectKeyExists(form, "dependentOn")) {
3420
- var isDependent = form.dependentOn.every(function (r) { return formsListCompleted.includes(r); });
3421
- if (isDependent) {
3422
- form = kwikidToolkit.setValueToObjectPath(form, "status", "editable");
3423
- form = kwikidToolkit.setValueToObjectPath(form, "disabled", false);
3424
- }
3425
- else {
3426
- form = kwikidToolkit.setValueToObjectPath(form, "status", "locked");
3427
- form = kwikidToolkit.setValueToObjectPath(form, "disabled", true);
3428
- }
3429
- }
3430
- else {
3431
- form = kwikidToolkit.setValueToObjectPath(form, "dependentOn", []);
3432
- form = kwikidToolkit.setValueToObjectPath(form, "status", "editable");
3433
- form = kwikidToolkit.setValueToObjectPath(form, "disabled", false);
3434
- }
3435
- }
3436
- }
3437
- }
3438
- catch (e_2_1) { e_2 = { error: e_2_1 }; }
3439
- finally {
3440
- try {
3441
- if (formsList_2_1 && !formsList_2_1.done && (_a = formsList_2.return)) _a.call(formsList_2);
3442
- }
3443
- finally { if (e_2) throw e_2.error; }
3444
- }
3445
- return formsList;
3446
- };
3447
- KwikIDRendererService.prototype.assignSequenceNoToForm = function (formsList) {
3448
- var e_3, _a;
3449
- var sequenceNo = 1;
3450
- try {
3451
- for (var formsList_3 = __values(formsList), formsList_3_1 = formsList_3.next(); !formsList_3_1.done; formsList_3_1 = formsList_3.next()) {
3452
- var form = formsList_3_1.value;
3453
- form.sequenceNo = sequenceNo++;
3454
- }
3455
- }
3456
- catch (e_3_1) { e_3 = { error: e_3_1 }; }
3457
- finally {
3458
- try {
3459
- if (formsList_3_1 && !formsList_3_1.done && (_a = formsList_3.return)) _a.call(formsList_3);
3460
- }
3461
- finally { if (e_3) throw e_3.error; }
3462
- }
3463
- return formsList;
3464
- };
3465
- KwikIDRendererService.prototype.filterAllFormsData = function (allFormsData, formsList) {
3466
- var e_4, _a, _b;
3467
- var currentUserFormAllFormsData = {};
3468
- try {
3469
- for (var formsList_4 = __values(formsList), formsList_4_1 = formsList_4.next(); !formsList_4_1.done; formsList_4_1 = formsList_4.next()) {
3470
- var form = formsList_4_1.value;
3471
- if (kwikidToolkit.checkObjectKeyExists(allFormsData, form.key)) {
3472
- currentUserFormAllFormsData = Object.assign(Object.assign({}, currentUserFormAllFormsData), (_b = {}, _b[form.key] = allFormsData[form.key], _b));
3473
- }
3474
- }
3475
- }
3476
- catch (e_4_1) { e_4 = { error: e_4_1 }; }
3477
- finally {
3478
- try {
3479
- if (formsList_4_1 && !formsList_4_1.done && (_a = formsList_4.return)) _a.call(formsList_4);
3480
- }
3481
- finally { if (e_4) throw e_4.error; }
3482
- }
3483
- return currentUserFormAllFormsData;
3484
- };
3485
- KwikIDRendererService.prototype.updateFormsList = function () {
3486
- var formsList = this.formsList;
3487
- var formsListCompleted;
3488
- var activeFormConfig;
3489
- formsList = this.assignSequenceNoToForm(formsList);
3490
- /**
3491
- * Below code identifies the allFormsData required for the current User Form.
3492
- * Why? Because allFormsData will actually contain the whole journey's all
3493
- * possible User Form steps. So, it is important to set the form data which
3494
- * this particular User Form only has to LOCAL METHOD Variable.
3495
- */
3496
- var currentUserFormAllFormsData = this.filterAllFormsData(this.allFormsData, formsList);
3497
- formsListCompleted = this.findCompletedFormsList(currentUserFormAllFormsData);
3498
- formsList = this.markFormInFormsListAsCompleted(formsList, formsListCompleted);
3499
- formsList = this.markFormInFormsListAsDisabled(formsList, formsListCompleted);
3500
- if (formsList.length !== formsListCompleted.length) {
3501
- activeFormConfig = this.findActiveFormConfig(formsList);
3502
- this.setActiveFormConfig(activeFormConfig);
3503
- }
3504
- this.setFormsList(formsList);
3505
- this.setFormsListCompleted(formsListCompleted);
3506
- };
3507
- return KwikIDRendererService;
3508
- }());
3509
- /** @nocollapse */ KwikIDRendererService.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: KwikIDRendererService, deps: [], target: i0__namespace.ɵɵFactoryTarget.Injectable });
3510
- /** @nocollapse */ KwikIDRendererService.ɵprov = i0__namespace.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: KwikIDRendererService, providedIn: "root" });
3511
- __decorate([
3512
- kwikidToolkit.logMethod
3513
- ], KwikIDRendererService.prototype, "setFormsList", null);
3514
- __decorate([
3515
- kwikidToolkit.logMethod
3516
- ], KwikIDRendererService.prototype, "setFormsListCompleted", null);
3517
- __decorate([
3518
- kwikidToolkit.logMethod
3519
- ], KwikIDRendererService.prototype, "setAllFormsData", null);
3520
- __decorate([
3521
- kwikidToolkit.logMethod
3522
- ], KwikIDRendererService.prototype, "setActiveFormConfig", null);
3523
- __decorate([
3524
- kwikidToolkit.logMethod
3525
- ], KwikIDRendererService.prototype, "setActiveFormFields", null);
3526
- __decorate([
3527
- kwikidToolkit.logMethod
3528
- ], KwikIDRendererService.prototype, "setActiveFormData", null);
3529
- __decorate([
3530
- kwikidToolkit.logMethod
3531
- ], KwikIDRendererService.prototype, "findActiveFormConfig", null);
3532
- __decorate([
3533
- kwikidToolkit.logMethod
3534
- ], KwikIDRendererService.prototype, "findCompletedFormsList", null);
3535
- __decorate([
3536
- kwikidToolkit.logMethod
3537
- ], KwikIDRendererService.prototype, "markFormInFormsListAsCompleted", null);
3538
- __decorate([
3539
- kwikidToolkit.logMethod
3540
- ], KwikIDRendererService.prototype, "markFormInFormsListAsDisabled", null);
3541
- __decorate([
3542
- kwikidToolkit.logMethod
3543
- ], KwikIDRendererService.prototype, "assignSequenceNoToForm", null);
3544
- __decorate([
3545
- kwikidToolkit.logMethod
3546
- ], KwikIDRendererService.prototype, "filterAllFormsData", null);
3547
- __decorate([
3548
- kwikidToolkit.logMethod
3549
- ], KwikIDRendererService.prototype, "updateFormsList", null);
3550
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: KwikIDRendererService, decorators: [{
3551
- type: i0.Injectable,
3552
- args: [{
3553
- providedIn: "root"
3554
- }]
3555
- }], ctorParameters: function () { return []; }, propDecorators: { setFormsList: [], setFormsListCompleted: [], setAllFormsData: [], setActiveFormConfig: [], setActiveFormFields: [], setActiveFormData: [], findActiveFormConfig: [], findCompletedFormsList: [], markFormInFormsListAsCompleted: [], markFormInFormsListAsDisabled: [], assignSequenceNoToForm: [], filterAllFormsData: [], updateFormsList: [] } });
3377
+ });
3378
+ return form;
3379
+ };
3556
3380
 
3557
3381
  var KwikIDFormsRendererComponent = /** @class */ (function () {
3558
- function KwikIDFormsRendererComponent(rendererService, hostElement) {
3559
- this.rendererService = rendererService;
3382
+ function KwikIDFormsRendererComponent(hostElement, cdr) {
3560
3383
  this.hostElement = hostElement;
3384
+ this.cdr = cdr;
3561
3385
  this.formsData = {};
3562
3386
  this.apiCallResponse = {};
3563
3387
  this.onClickSubmit = new i0.EventEmitter();
@@ -3565,11 +3389,14 @@
3565
3389
  this.onClickApiCall = new i0.EventEmitter();
3566
3390
  this.loading = false;
3567
3391
  this.loader = false;
3392
+ this.showErrorNotification = false;
3393
+ this.allFormsData = {};
3394
+ this.formsList = [];
3395
+ this.isMobileView = false;
3568
3396
  // display forms and list conditionally
3569
3397
  this.showForm = false;
3570
3398
  this.showFormFields = true;
3571
3399
  this.showFormSections = true;
3572
- this.showErrorNotification = false;
3573
3400
  }
3574
3401
  // The final value should be provided to service, so that it can be used in all components
3575
3402
  KwikIDFormsRendererComponent.prototype.windowResizeWatcher = function () {
@@ -3582,7 +3409,7 @@
3582
3409
  this.showFormSections = true;
3583
3410
  this.showFormFields = false;
3584
3411
  }
3585
- this.rendererService.isMobileView = true;
3412
+ this.isMobileView = true;
3586
3413
  }
3587
3414
  else {
3588
3415
  if (this.showForm) {
@@ -3593,9 +3420,12 @@
3593
3420
  this.showFormSections = true;
3594
3421
  this.showFormFields = false;
3595
3422
  }
3596
- this.rendererService.isMobileView = false;
3423
+ this.isMobileView = false;
3597
3424
  }
3598
3425
  };
3426
+ KwikIDFormsRendererComponent.prototype.toggleErrorNotification = function (show) {
3427
+ this.showErrorNotification = show;
3428
+ };
3599
3429
  KwikIDFormsRendererComponent.prototype.ngOnInit = function () {
3600
3430
  var _a, _b, _c;
3601
3431
  this.loader = true;
@@ -3603,10 +3433,10 @@
3603
3433
  var formStepKey = (_c = (_b = (_a = this.stepConfig) === null || _a === void 0 ? void 0 : _a.form) === null || _b === void 0 ? void 0 : _b.key) !== null && _c !== void 0 ? _c : undefined;
3604
3434
  if (formStepKey !== undefined &&
3605
3435
  kwikidToolkit.checkObjectKeyExists(this.userConfig.userFormFields, formStepKey)) {
3606
- this.rendererService.setFormsList(this.userConfig.userFormFields[formStepKey]);
3436
+ this.formsList = this.userConfig.userFormFields[formStepKey];
3607
3437
  }
3608
3438
  else if (Array.isArray(this.userConfig.userFormFields)) {
3609
- this.rendererService.setFormsList(this.userConfig.userFormFields);
3439
+ this.formsList = this.userConfig.userFormFields;
3610
3440
  }
3611
3441
  else {
3612
3442
  throw new Error("userFormFields doesn't have a form defined with key: " + formStepKey);
@@ -3631,26 +3461,48 @@
3631
3461
  this.loader = false;
3632
3462
  }
3633
3463
  };
3464
+ KwikIDFormsRendererComponent.prototype.fetchFormConfig = function (url) {
3465
+ return __awaiter(this, void 0, void 0, function () {
3466
+ var response, data;
3467
+ return __generator(this, function (_d) {
3468
+ switch (_d.label) {
3469
+ case 0: return [4 /*yield*/, fetch(url, { method: "GET" })];
3470
+ case 1:
3471
+ response = _d.sent();
3472
+ return [4 /*yield*/, response.json()];
3473
+ case 2:
3474
+ data = _d.sent();
3475
+ return [2 /*return*/, data];
3476
+ }
3477
+ });
3478
+ });
3479
+ };
3634
3480
  KwikIDFormsRendererComponent.prototype.initializeForms = function () {
3635
3481
  return __awaiter(this, void 0, void 0, function () {
3636
3482
  return __generator(this, function (_d) {
3637
3483
  switch (_d.label) {
3638
3484
  case 0:
3639
3485
  this.loader = true;
3640
- this.rendererService.setAllFormsData(this.formsData);
3641
- this.rendererService.updateFormsList();
3642
- this.handleResize(this.rendererService.formsList);
3643
- if (!(this.rendererService.formsList.length !==
3644
- this.rendererService.formsListCompleted.length)) return [3 /*break*/, 2];
3645
- return [4 /*yield*/, this.handleOnClickSetActiveForm(this.rendererService.activeFormConfig.key)];
3486
+ this.allFormsData = this.formsData;
3487
+ console.log("START");
3488
+ console.log(JSON.parse(JSON.stringify(this.formsList)));
3489
+ return [4 /*yield*/, this.updateFormsList()];
3646
3490
  case 1:
3647
3491
  _d.sent();
3648
- return [3 /*break*/, 3];
3492
+ console.log("END");
3493
+ console.log(JSON.parse(JSON.stringify(this.formsList)));
3494
+ this.handleResize(this.formsList);
3495
+ console.log(JSON.stringify(this.activeFormConfig), this.formsListCompleted);
3496
+ if (!kwikidToolkit.isNotEmptyValue(this.activeFormConfig)) return [3 /*break*/, 3];
3497
+ return [4 /*yield*/, this.handleOnClickSetActiveForm(this.activeFormConfig.key)];
3649
3498
  case 2:
3499
+ _d.sent();
3500
+ return [3 /*break*/, 4];
3501
+ case 3:
3650
3502
  this.showForm = false;
3651
3503
  this.showFormFields = false;
3652
- _d.label = 3;
3653
- case 3:
3504
+ _d.label = 4;
3505
+ case 4:
3654
3506
  this.loader = false;
3655
3507
  this.loading = false;
3656
3508
  return [2 /*return*/];
@@ -3658,28 +3510,318 @@
3658
3510
  });
3659
3511
  });
3660
3512
  };
3661
- KwikIDFormsRendererComponent.prototype.handleResize = function (formsList) {
3662
- if (this.hostElement.nativeElement.offsetWidth < 600) {
3663
- var isSingleForm = function (formsList) {
3664
- return formsList.length === 1;
3665
- };
3666
- if (!isSingleForm(formsList)) {
3667
- this.showFormSections = true;
3668
- this.showFormFields = false;
3669
- this.showForm = false;
3513
+ /**
3514
+ * NOTE: To be deprecated.
3515
+ * Why ? Will be directly assigned while executing 'chakra' for default form config.
3516
+ * @param formsList any[]
3517
+ * @param formsListCompleted string[]
3518
+ * @returns any[]
3519
+ */
3520
+ KwikIDFormsRendererComponent.prototype.assignSequenceNoToForm = function (formsList) {
3521
+ var e_1, _d;
3522
+ var sequenceNo = 1;
3523
+ try {
3524
+ for (var formsList_1 = __values(formsList), formsList_1_1 = formsList_1.next(); !formsList_1_1.done; formsList_1_1 = formsList_1.next()) {
3525
+ var form = formsList_1_1.value;
3526
+ if (kwikidToolkit.checkObjectKeyExists(form, "hidden")) {
3527
+ if (!form.hidden) {
3528
+ form.sequenceNo = sequenceNo++;
3529
+ }
3530
+ else {
3531
+ delete form["sequenceNo"];
3532
+ }
3533
+ }
3670
3534
  }
3671
- else {
3672
- this.showFormSections = true;
3673
- this.showFormFields = false;
3674
- this.showForm = false;
3535
+ }
3536
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
3537
+ finally {
3538
+ try {
3539
+ if (formsList_1_1 && !formsList_1_1.done && (_d = formsList_1.return)) _d.call(formsList_1);
3675
3540
  }
3676
- this.rendererService.isMobileView = true;
3541
+ finally { if (e_1) throw e_1.error; }
3677
3542
  }
3678
- else {
3679
- this.rendererService.isMobileView = false;
3543
+ return formsList;
3544
+ };
3545
+ KwikIDFormsRendererComponent.prototype.findCompletedFormsList = function (allFormsData) {
3546
+ var formsListCompleted = [];
3547
+ Object.keys(allFormsData).map(function (formKey) {
3548
+ formsListCompleted.push(formKey);
3549
+ });
3550
+ return formsListCompleted;
3551
+ };
3552
+ /**
3553
+ * NOTE: To be deprecated. Why ? Will be replaced by 'chakra'.
3554
+ * @param formsList any[]
3555
+ * @param formsListCompleted string[]
3556
+ * @returns any[]
3557
+ */
3558
+ KwikIDFormsRendererComponent.prototype.markFormInFormsListAsCompleted = function (formsList, formsListCompleted) {
3559
+ var e_2, _d;
3560
+ try {
3561
+ for (var formsList_2 = __values(formsList), formsList_2_1 = formsList_2.next(); !formsList_2_1.done; formsList_2_1 = formsList_2.next()) {
3562
+ var form = formsList_2_1.value;
3563
+ if (kwikidToolkit.checkObjectKeyExists(form, "hidden")) {
3564
+ if (!form.hidden) {
3565
+ if (formsListCompleted.includes(form.key)) {
3566
+ form = kwikidToolkit.setValueToObjectPath(form, "status", "completed");
3567
+ form = kwikidToolkit.setValueToObjectPath(form, "disabled", false);
3568
+ }
3569
+ }
3570
+ }
3571
+ }
3680
3572
  }
3573
+ catch (e_2_1) { e_2 = { error: e_2_1 }; }
3574
+ finally {
3575
+ try {
3576
+ if (formsList_2_1 && !formsList_2_1.done && (_d = formsList_2.return)) _d.call(formsList_2);
3577
+ }
3578
+ finally { if (e_2) throw e_2.error; }
3579
+ }
3580
+ return formsList;
3681
3581
  };
3682
- // forms-list listener
3582
+ /**
3583
+ * NOTE: To be deprecated. Why ? Will be replaced by 'chakra'.
3584
+ * @param formsList any[]
3585
+ * @param formsListCompleted string[]
3586
+ * @returns any[]
3587
+ */
3588
+ KwikIDFormsRendererComponent.prototype.markFormInFormsListAsDisabled = function (formsList, formsListCompleted) {
3589
+ var e_3, _d;
3590
+ try {
3591
+ for (var formsList_3 = __values(formsList), formsList_3_1 = formsList_3.next(); !formsList_3_1.done; formsList_3_1 = formsList_3.next()) {
3592
+ var form = formsList_3_1.value;
3593
+ if (kwikidToolkit.checkObjectKeyExists(form, "hidden")) {
3594
+ if (!form.hidden) {
3595
+ if (form.status !== "completed") {
3596
+ if (kwikidToolkit.checkObjectKeyExists(form, "dependentOn")) {
3597
+ var isDependent = form.dependentOn.every(function (r) { return formsListCompleted.includes(r); });
3598
+ if (isDependent) {
3599
+ form = kwikidToolkit.setValueToObjectPath(form, "status", "editable");
3600
+ form = kwikidToolkit.setValueToObjectPath(form, "disabled", false);
3601
+ }
3602
+ else {
3603
+ form = kwikidToolkit.setValueToObjectPath(form, "status", "locked");
3604
+ form = kwikidToolkit.setValueToObjectPath(form, "disabled", true);
3605
+ }
3606
+ }
3607
+ else {
3608
+ form = kwikidToolkit.setValueToObjectPath(form, "dependentOn", []);
3609
+ form = kwikidToolkit.setValueToObjectPath(form, "status", "editable");
3610
+ form = kwikidToolkit.setValueToObjectPath(form, "disabled", false);
3611
+ }
3612
+ }
3613
+ }
3614
+ }
3615
+ }
3616
+ }
3617
+ catch (e_3_1) { e_3 = { error: e_3_1 }; }
3618
+ finally {
3619
+ try {
3620
+ if (formsList_3_1 && !formsList_3_1.done && (_d = formsList_3.return)) _d.call(formsList_3);
3621
+ }
3622
+ finally { if (e_3) throw e_3.error; }
3623
+ }
3624
+ return formsList;
3625
+ };
3626
+ KwikIDFormsRendererComponent.prototype.filterAllFormsData = function (allFormsData, formsList) {
3627
+ var e_4, _d, _e;
3628
+ var currentUserFormAllFormsData = {};
3629
+ try {
3630
+ for (var formsList_4 = __values(formsList), formsList_4_1 = formsList_4.next(); !formsList_4_1.done; formsList_4_1 = formsList_4.next()) {
3631
+ var form = formsList_4_1.value;
3632
+ if (kwikidToolkit.checkObjectKeyExists(form, "hidden") && !form.hidden) {
3633
+ if (kwikidToolkit.checkObjectKeyExists(allFormsData, form.key)) {
3634
+ currentUserFormAllFormsData = Object.assign(Object.assign({}, currentUserFormAllFormsData), (_e = {}, _e[form.key] = allFormsData[form.key], _e));
3635
+ }
3636
+ }
3637
+ }
3638
+ }
3639
+ catch (e_4_1) { e_4 = { error: e_4_1 }; }
3640
+ finally {
3641
+ try {
3642
+ if (formsList_4_1 && !formsList_4_1.done && (_d = formsList_4.return)) _d.call(formsList_4);
3643
+ }
3644
+ finally { if (e_4) throw e_4.error; }
3645
+ }
3646
+ return currentUserFormAllFormsData;
3647
+ };
3648
+ KwikIDFormsRendererComponent.prototype.checkIfFormsStatusCompleted = function (formsList, formsListCompleted) {
3649
+ var e_5, _d;
3650
+ var allFormsCompleted = true;
3651
+ try {
3652
+ for (var formsList_5 = __values(formsList), formsList_5_1 = formsList_5.next(); !formsList_5_1.done; formsList_5_1 = formsList_5.next()) {
3653
+ var form = formsList_5_1.value;
3654
+ if (kwikidToolkit.checkObjectKeyExists(form, "hidden")) {
3655
+ if (!form.hidden) {
3656
+ if (form.status !== "completed") {
3657
+ allFormsCompleted = false;
3658
+ break;
3659
+ }
3660
+ }
3661
+ }
3662
+ }
3663
+ }
3664
+ catch (e_5_1) { e_5 = { error: e_5_1 }; }
3665
+ finally {
3666
+ try {
3667
+ if (formsList_5_1 && !formsList_5_1.done && (_d = formsList_5.return)) _d.call(formsList_5);
3668
+ }
3669
+ finally { if (e_5) throw e_5.error; }
3670
+ }
3671
+ return allFormsCompleted;
3672
+ };
3673
+ KwikIDFormsRendererComponent.prototype.findActiveFormConfig = function (formsList) {
3674
+ var activeFormConfig = formsList.find(function (form) {
3675
+ if (kwikidToolkit.checkObjectKeyExists(form, "hidden")) {
3676
+ if (!form.hidden) {
3677
+ return form.status === "editable" && !form.disabled;
3678
+ }
3679
+ }
3680
+ });
3681
+ return activeFormConfig;
3682
+ };
3683
+ KwikIDFormsRendererComponent.prototype.updateFormsList = function () {
3684
+ return __awaiter(this, void 0, void 0, function () {
3685
+ var _d, _e, form, triggers, rules, actions, rulesMapping, actions_1, actions_1_1, action, conditionEvaluation, actions_2, e_6_1, e_7_1, currentUserFormAllFormsData;
3686
+ var e_7, _f, e_6, _g;
3687
+ return __generator(this, function (_h) {
3688
+ switch (_h.label) {
3689
+ case 0:
3690
+ _h.trys.push([0, 13, 14, 15]);
3691
+ _d = __values(this.formsList), _e = _d.next();
3692
+ _h.label = 1;
3693
+ case 1:
3694
+ if (!!_e.done) return [3 /*break*/, 12];
3695
+ form = _e.value;
3696
+ if (!(kwikidToolkit.checkObjectKeyExists(form, "default") &&
3697
+ kwikidToolkit.isNotEmptyValue(form.default))) return [3 /*break*/, 10];
3698
+ triggers = form.default.triggers;
3699
+ rules = form.default.rules;
3700
+ actions = form.default.actions;
3701
+ rulesMapping = new kwikidToolkit.Rule(rules, {
3702
+ USER_CONFIG: this.userConfig,
3703
+ FORMS_LIST: this.formsList,
3704
+ ALL_FORMS_DATA: this.allFormsData
3705
+ }).mapping();
3706
+ _h.label = 2;
3707
+ case 2:
3708
+ _h.trys.push([2, 7, 8, 9]);
3709
+ actions_1 = (e_6 = void 0, __values(actions)), actions_1_1 = actions_1.next();
3710
+ _h.label = 3;
3711
+ case 3:
3712
+ if (!!actions_1_1.done) return [3 /*break*/, 6];
3713
+ action = actions_1_1.value;
3714
+ conditionEvaluation = new kwikidToolkit.Condition(action.condition, rulesMapping).evaluate();
3715
+ if (!conditionEvaluation) return [3 /*break*/, 5];
3716
+ actions_2 = new kwikidToolkit.Action(action, rulesMapping, {
3717
+ FORMS_LIST: this.formsList,
3718
+ ALL_FORMS_DATA: this.allFormsData
3719
+ }, this.takeAction.bind(this));
3720
+ return [4 /*yield*/, actions_2.execute()];
3721
+ case 4:
3722
+ _h.sent();
3723
+ _h.label = 5;
3724
+ case 5:
3725
+ actions_1_1 = actions_1.next();
3726
+ return [3 /*break*/, 3];
3727
+ case 6: return [3 /*break*/, 9];
3728
+ case 7:
3729
+ e_6_1 = _h.sent();
3730
+ e_6 = { error: e_6_1 };
3731
+ return [3 /*break*/, 9];
3732
+ case 8:
3733
+ try {
3734
+ if (actions_1_1 && !actions_1_1.done && (_g = actions_1.return)) _g.call(actions_1);
3735
+ }
3736
+ finally { if (e_6) throw e_6.error; }
3737
+ return [7 /*endfinally*/];
3738
+ case 9: return [3 /*break*/, 11];
3739
+ case 10:
3740
+ if (!kwikidToolkit.checkObjectKeyExists(form, "hidden")) {
3741
+ form.hidden = false;
3742
+ }
3743
+ _h.label = 11;
3744
+ case 11:
3745
+ _e = _d.next();
3746
+ return [3 /*break*/, 1];
3747
+ case 12: return [3 /*break*/, 15];
3748
+ case 13:
3749
+ e_7_1 = _h.sent();
3750
+ e_7 = { error: e_7_1 };
3751
+ return [3 /*break*/, 15];
3752
+ case 14:
3753
+ try {
3754
+ if (_e && !_e.done && (_f = _d.return)) _f.call(_d);
3755
+ }
3756
+ finally { if (e_7) throw e_7.error; }
3757
+ return [7 /*endfinally*/];
3758
+ case 15:
3759
+ this.formsList = this.assignSequenceNoToForm(this.formsList);
3760
+ currentUserFormAllFormsData = this.filterAllFormsData(this.allFormsData, this.formsList);
3761
+ this.formsListCompleted = this.findCompletedFormsList(currentUserFormAllFormsData);
3762
+ this.formsList = this.markFormInFormsListAsCompleted(this.formsList, this.formsListCompleted);
3763
+ this.formsList = this.markFormInFormsListAsDisabled(this.formsList, this.formsListCompleted);
3764
+ this.formsList = cloneDeep__namespace(this.formsList);
3765
+ if (this.checkIfFormsStatusCompleted(this.formsList, this.formsListCompleted)) {
3766
+ this.activeFormConfig = this.findActiveFormConfig(this.formsList);
3767
+ }
3768
+ return [2 /*return*/];
3769
+ }
3770
+ });
3771
+ });
3772
+ };
3773
+ KwikIDFormsRendererComponent.prototype.formHide = function (formKey) {
3774
+ var form = getFormConfigByKey(this.formsList, formKey);
3775
+ form = kwikidToolkit.setValueToObjectPath(form, "hidden", true);
3776
+ };
3777
+ KwikIDFormsRendererComponent.prototype.formShow = function (formKey) {
3778
+ var form = getFormConfigByKey(this.formsList, formKey);
3779
+ form = kwikidToolkit.setValueToObjectPath(form, "hidden", false);
3780
+ };
3781
+ KwikIDFormsRendererComponent.prototype.takeAction = function (action, object) {
3782
+ return __awaiter(this, void 0, void 0, function () {
3783
+ var _d, sources, sourceValue;
3784
+ return __generator(this, function (_e) {
3785
+ switch (_e.label) {
3786
+ case 0:
3787
+ _d = action.key;
3788
+ switch (_d) {
3789
+ case ERendererActionKey.FORM_HIDE: return [3 /*break*/, 1];
3790
+ case ERendererActionKey.FORM_SHOW: return [3 /*break*/, 2];
3791
+ case EActionKey.SET_VALUE: return [3 /*break*/, 3];
3792
+ }
3793
+ return [3 /*break*/, 5];
3794
+ case 1:
3795
+ this.formHide(action.props.formKey);
3796
+ return [3 /*break*/, 6];
3797
+ case 2:
3798
+ this.formShow(action.props.formKey);
3799
+ return [3 /*break*/, 6];
3800
+ case 3:
3801
+ sources = new kwikidToolkit.Source({
3802
+ USER_CONFIG: this.userConfig,
3803
+ ALL_FORMS_DATA: this.formsData
3804
+ });
3805
+ return [4 /*yield*/, sources.getValueFromSource(action.props.value.source)];
3806
+ case 4:
3807
+ sourceValue = _e.sent();
3808
+ sources.setValueToSource(action.props.value.destination, sourceValue);
3809
+ this.userConfig = sources.object.USER_CONFIG;
3810
+ this.formsData = sources.object.ALL_FORMS_DATA;
3811
+ return [3 /*break*/, 6];
3812
+ case 5: return [3 /*break*/, 6];
3813
+ case 6: return [2 /*return*/];
3814
+ }
3815
+ });
3816
+ });
3817
+ };
3818
+ /**
3819
+ * Library Event Listeners
3820
+ */
3821
+ /**
3822
+ * FormList - Listens to event of opening the FormView of when any form is clicked in FormList
3823
+ * @param selectedForm string
3824
+ */
3683
3825
  KwikIDFormsRendererComponent.prototype.handleOnClickSetActiveForm = function (selectedForm) {
3684
3826
  var _a;
3685
3827
  return __awaiter(this, void 0, void 0, function () {
@@ -3689,18 +3831,17 @@
3689
3831
  case 0:
3690
3832
  this.showForm = false;
3691
3833
  this.loader = true;
3692
- activeFormConfig = this.rendererService.formsList.find(function (form) {
3834
+ activeFormConfig = this.formsList.find(function (form) {
3693
3835
  if (form.key === selectedForm) {
3694
3836
  return form;
3695
3837
  }
3696
3838
  });
3697
- return [4 /*yield*/, this.rendererService.fetchFormConfig(activeFormConfig.formContent.url)];
3839
+ return [4 /*yield*/, this.fetchFormConfig(activeFormConfig.formContent.url)];
3698
3840
  case 1:
3699
3841
  formConfig = _d.sent();
3700
3842
  formConfig = new Converter().convertFormConfig(formConfig);
3701
- activeFormData = (_a = this.rendererService.allFormsData[formConfig.key]) !== null && _a !== void 0 ? _a : {};
3702
- this.rendererService.setActiveFormData(activeFormData);
3703
- this.rendererService.setActiveFormConfig(Object.assign(Object.assign({}, activeFormConfig), formConfig));
3843
+ activeFormData = (_a = this.allFormsData[formConfig.key]) !== null && _a !== void 0 ? _a : {};
3844
+ this.activeFormConfig = Object.assign(Object.assign({}, activeFormConfig), formConfig);
3704
3845
  if (this.hostElement.nativeElement.offsetWidth < 600) {
3705
3846
  this.showFormSections = false;
3706
3847
  this.showFormFields = true;
@@ -3716,12 +3857,45 @@
3716
3857
  });
3717
3858
  });
3718
3859
  };
3719
- // forms-list listener
3860
+ /**
3861
+ * FormView - Listens to event of executing an API call from within the FormView and emits (read as passes) the same event to the library consumer.
3862
+ * @param e any
3863
+ */
3864
+ KwikIDFormsRendererComponent.prototype.handleOnClickApiCall = function (e) {
3865
+ this.loader = true;
3866
+ this.onClickApiCall.emit(e);
3867
+ };
3868
+ /**
3869
+ * FormView - Listens to event of getting the Active Form's Data when the Form is Saved and emits (read as passes) the same event to the library consumer.
3870
+ * @param e any
3871
+ */
3872
+ KwikIDFormsRendererComponent.prototype.handleOnClickSaveForm = function (e) {
3873
+ var _d;
3874
+ this.loader = true;
3875
+ this.activeFormData = {};
3876
+ this.getFormData.emit((_d = {},
3877
+ _d[this.activeFormConfig.key] = e["data"],
3878
+ _d));
3879
+ };
3880
+ /**
3881
+ * FormView - Listens to event of showing the Forms List in Mobile View.
3882
+ * @param e any
3883
+ */
3884
+ KwikIDFormsRendererComponent.prototype.handleOnClickViewForms = function (e) {
3885
+ this.showFormSections = true;
3886
+ this.showForm = false;
3887
+ this.showFormFields = false;
3888
+ };
3889
+ /**
3890
+ * FormList - Listens to event of submitting all the forms and moving out of the library and also handles the validation of all the forms.
3891
+ * @param e any
3892
+ */
3720
3893
  KwikIDFormsRendererComponent.prototype.handleOnClickSubmitForms = function (e) {
3721
3894
  var _this = this;
3722
3895
  if (this.userConfig.userFormFieldsConfig.validation) {
3896
+ console.log(JSON.parse(JSON.stringify(this.userConfig)));
3723
3897
  var validations_1 = new kwikidToolkit.Validation({
3724
- USER_CONFIG: this.userConfig,
3898
+ FORMS_LIST: this.formsList,
3725
3899
  ALL_FORMS_DATA: this.formsData
3726
3900
  }, this.takeAction.bind(this));
3727
3901
  (function () { return __awaiter(_this, void 0, void 0, function () {
@@ -3746,70 +3920,34 @@
3746
3920
  }); })();
3747
3921
  }
3748
3922
  };
3749
- // form-view listener
3750
- KwikIDFormsRendererComponent.prototype.handleOnClickApiCall = function (e) {
3751
- this.loader = true;
3752
- this.onClickApiCall.emit(e);
3753
- };
3754
- // form-view listener
3755
- KwikIDFormsRendererComponent.prototype.handleGetActiveFormData = function (e) {
3756
- var _d;
3757
- this.loader = true;
3758
- this.getFormData.emit((_d = {},
3759
- _d[this.rendererService.activeFormConfig.key] = e["data"],
3760
- _d));
3761
- };
3762
- // form-view listener
3763
- KwikIDFormsRendererComponent.prototype.handleOnClickSaveForm = function (e) {
3764
- var _d;
3765
- this.loader = true;
3766
- this.rendererService.setActiveFormData({});
3767
- this.getFormData.emit((_d = {},
3768
- _d[this.rendererService.activeFormConfig.key] = e["data"],
3769
- _d));
3770
- };
3771
- // form-view listener
3772
- KwikIDFormsRendererComponent.prototype.handleOnClickViewForms = function (e) {
3773
- this.showFormSections = true;
3774
- this.showForm = false;
3775
- this.showFormFields = false;
3776
- };
3777
- KwikIDFormsRendererComponent.prototype.toggleErrorNotification = function (show) {
3778
- this.showErrorNotification = show;
3779
- };
3780
- KwikIDFormsRendererComponent.prototype.takeAction = function (action, userConfig, formsData) {
3781
- return __awaiter(this, void 0, void 0, function () {
3782
- var _d, sources, sourceValue;
3783
- return __generator(this, function (_e) {
3784
- switch (_e.label) {
3785
- case 0:
3786
- _d = action.key;
3787
- switch (_d) {
3788
- case EActionKey.SET_VALUE: return [3 /*break*/, 1];
3789
- }
3790
- return [3 /*break*/, 3];
3791
- case 1:
3792
- sources = new kwikidToolkit.Source({
3793
- USER_CONFIG: this.userConfig,
3794
- ALL_FORMS_DATA: this.formsData
3795
- });
3796
- return [4 /*yield*/, sources.getValueFromSource(action.props.value.source)];
3797
- case 2:
3798
- sourceValue = _e.sent();
3799
- sources.setValueToSource(action.props.value.destination, sourceValue);
3800
- this.userConfig = sources.object.USER_CONFIG;
3801
- this.formsData = sources.object.ALL_FORMS_DATA;
3802
- return [3 /*break*/, 4];
3803
- case 3: return [3 /*break*/, 4];
3804
- case 4: return [2 /*return*/];
3805
- }
3806
- });
3807
- });
3923
+ /**
3924
+ * Miscellaneous Methods
3925
+ */
3926
+ KwikIDFormsRendererComponent.prototype.handleResize = function (formsList) {
3927
+ if (this.hostElement.nativeElement.offsetWidth < 600) {
3928
+ var isSingleForm = function (formsList) {
3929
+ return formsList.length === 1;
3930
+ };
3931
+ if (!isSingleForm(formsList)) {
3932
+ this.showFormSections = true;
3933
+ this.showFormFields = false;
3934
+ this.showForm = false;
3935
+ }
3936
+ else {
3937
+ this.showFormSections = true;
3938
+ this.showFormFields = false;
3939
+ this.showForm = false;
3940
+ }
3941
+ this.isMobileView = true;
3942
+ }
3943
+ else {
3944
+ this.isMobileView = false;
3945
+ }
3808
3946
  };
3809
3947
  return KwikIDFormsRendererComponent;
3810
3948
  }());
3811
- /** @nocollapse */ KwikIDFormsRendererComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: KwikIDFormsRendererComponent, deps: [{ token: KwikIDRendererService }, { token: i0__namespace.ElementRef }], target: i0__namespace.ɵɵFactoryTarget.Component });
3812
- /** @nocollapse */ KwikIDFormsRendererComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: KwikIDFormsRendererComponent, selector: "kwikid-forms-renderer", inputs: { stepConfig: "stepConfig", 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\">\n <div\n ngClass=\"kwikid-layout-container\"\n *ngIf=\"!loading\"\n >\n <div\n ngClass=\"kwikid-sections-container\"\n *ngIf=\"showFormSections\"\n class=\"active\"\n [class.active]=\"showFormSections\"\n [class.mobile]=\"rendererService.isMobileView\"\n >\n <kwikid-forms-list\n [showFormFields]=\"this.showFormFields\"\n [userConfig]=\"this.userConfig\"\n [formsList]=\"this.rendererService.formsList\"\n [formsListCompleted]=\"this.rendererService.formsListCompleted\"\n [isMobileView]=\"this.rendererService.isMobileView\"\n (onClickSetActiveForm)=\"this.handleOnClickSetActiveForm($event)\"\n (onClickSubmitForms)=\"this.handleOnClickSubmitForms($event)\"\n ></kwikid-forms-list>\n </div>\n <div\n ngClass=\"kwikid-forms-container\"\n *ngIf=\"this.showForm && this.showFormFields\"\n [class.active]=\"showFormFields\"\n [class.mobile]=\"rendererService.isMobileView\"\n [@panelInOut]\n >\n <kwikid-form-view\n [formConfig]=\"this.rendererService.activeFormConfig\"\n [formData]=\"this.rendererService.activeFormData\"\n [apiCallResponse]=\"this.apiCallResponse\"\n [formsList]=\"this.rendererService.formsList\"\n [allFormsData]=\"this.rendererService.allFormsData\"\n [isMobileView]=\"this.rendererService.isMobileView\"\n (onClickApiCall)=\"this.handleOnClickApiCall($event)\"\n (onClickViewForms)=\"this.handleOnClickViewForms($event)\"\n (onClickSaveForm)=\"this.handleOnClickSaveForm($event)\"\n (getActiveFormData)=\"this.handleGetActiveFormData($event)\"\n ></kwikid-form-view>\n </div>\n </div>\n</div>\n<div\n ngClass=\"kwikid-forms-renderer-loader\"\n *ngIf=\"loader\"\n>\n <span class=\"loader\"></span>\n</div>\n<tui-push\n id=\"error-notification\"\n *tuiPush=\"showErrorNotification\"\n heading=\"Please complete the required Forms!\"\n type=\"Error\"\n (close)=\"toggleErrorNotification(false)\"\n>\n <tui-svg\n src=\"tuiIconCancel\"\n style=\"color: #fff !important\"\n >\n </tui-svg>\n</tui-push>\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: [
3949
+ /** @nocollapse */ KwikIDFormsRendererComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: KwikIDFormsRendererComponent, deps: [{ token: i0__namespace.ElementRef }, { token: i0__namespace.ChangeDetectorRef }], target: i0__namespace.ɵɵFactoryTarget.Component });
3950
+ /** @nocollapse */ KwikIDFormsRendererComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: KwikIDFormsRendererComponent, selector: "kwikid-forms-renderer", inputs: { stepConfig: "stepConfig", userConfig: "userConfig", formsData: "formsData", apiCallResponse: "apiCallResponse" }, outputs: { onClickSubmit: "onClickSubmit", getFormData: "getFormData", onClickApiCall: "onClickApiCall" }, host: { listeners: { "window:resize": "windowResizeWatcher($event)" } }, usesOnChanges: true, ngImport: i0__namespace, template: "<div ngClass=\"kwikid-renderer\">\n <div\n ngClass=\"kwikid-layout-container\"\n *ngIf=\"!loading\"\n >\n <div\n ngClass=\"kwikid-sections-container\"\n *ngIf=\"showFormSections\"\n class=\"active\"\n [class.active]=\"showFormSections\"\n [class.mobile]=\"isMobileView\"\n >\n <kwikid-forms-list\n [showFormFields]=\"this.showFormFields\"\n [userConfig]=\"this.userConfig\"\n [formsList]=\"this.formsList\"\n [formsListCompleted]=\"this.formsListCompleted\"\n [isMobileView]=\"this.isMobileView\"\n (onClickSetActiveForm)=\"this.handleOnClickSetActiveForm($event)\"\n (onClickSubmitForms)=\"this.handleOnClickSubmitForms($event)\"\n ></kwikid-forms-list>\n </div>\n <div\n ngClass=\"kwikid-forms-container\"\n *ngIf=\"this.showForm && this.showFormFields\"\n [class.active]=\"showFormFields\"\n [class.mobile]=\"isMobileView\"\n [@panelInOut]\n >\n <kwikid-form-view\n [formConfig]=\"this.activeFormConfig\"\n [formData]=\"this.activeFormData\"\n [apiCallResponse]=\"this.apiCallResponse\"\n [formsList]=\"this.formsList\"\n [allFormsData]=\"this.allFormsData\"\n [isMobileView]=\"this.isMobileView\"\n (onClickApiCall)=\"this.handleOnClickApiCall($event)\"\n (onClickViewForms)=\"this.handleOnClickViewForms($event)\"\n (onClickSaveForm)=\"this.handleOnClickSaveForm($event)\"\n ></kwikid-form-view>\n </div>\n </div>\n</div>\n<div\n ngClass=\"kwikid-forms-renderer-loader\"\n *ngIf=\"loader\"\n>\n <span class=\"loader\"></span>\n</div>\n<tui-push\n id=\"error-notification\"\n *tuiPush=\"showErrorNotification\"\n heading=\"Please complete the required Forms!\"\n type=\"Error\"\n (close)=\"toggleErrorNotification(false)\"\n>\n <tui-svg\n src=\"tuiIconCancel\"\n style=\"color: #fff !important\"\n >\n </tui-svg>\n</tui-push>\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"] }, { 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: [
3813
3951
  animations.trigger("panelInOut", [
3814
3952
  animations.transition(":enter", [
3815
3953
  animations.style({ transform: "translateY(100%)" }),
@@ -3820,6 +3958,36 @@
3820
3958
  ])
3821
3959
  ])
3822
3960
  ] });
3961
+ __decorate([
3962
+ kwikidToolkit.logMethod
3963
+ ], KwikIDFormsRendererComponent.prototype, "assignSequenceNoToForm", null);
3964
+ __decorate([
3965
+ kwikidToolkit.logMethod
3966
+ ], KwikIDFormsRendererComponent.prototype, "findCompletedFormsList", null);
3967
+ __decorate([
3968
+ kwikidToolkit.logMethod
3969
+ ], KwikIDFormsRendererComponent.prototype, "markFormInFormsListAsCompleted", null);
3970
+ __decorate([
3971
+ kwikidToolkit.logMethod
3972
+ ], KwikIDFormsRendererComponent.prototype, "markFormInFormsListAsDisabled", null);
3973
+ __decorate([
3974
+ kwikidToolkit.logMethod
3975
+ ], KwikIDFormsRendererComponent.prototype, "filterAllFormsData", null);
3976
+ __decorate([
3977
+ kwikidToolkit.logMethod
3978
+ ], KwikIDFormsRendererComponent.prototype, "checkIfFormsStatusCompleted", null);
3979
+ __decorate([
3980
+ kwikidToolkit.logMethod
3981
+ ], KwikIDFormsRendererComponent.prototype, "findActiveFormConfig", null);
3982
+ __decorate([
3983
+ kwikidToolkit.logMethod
3984
+ ], KwikIDFormsRendererComponent.prototype, "updateFormsList", null);
3985
+ __decorate([
3986
+ kwikidToolkit.logMethod
3987
+ ], KwikIDFormsRendererComponent.prototype, "formHide", null);
3988
+ __decorate([
3989
+ kwikidToolkit.logMethod
3990
+ ], KwikIDFormsRendererComponent.prototype, "formShow", null);
3823
3991
  __decorate([
3824
3992
  kwikidToolkit.logMethod
3825
3993
  ], KwikIDFormsRendererComponent.prototype, "handleOnClickSetActiveForm", null);
@@ -3842,10 +4010,9 @@
3842
4010
  animations.animate(100, animations.style({ transform: "translateY(100%)" }))
3843
4011
  ])
3844
4012
  ])
3845
- ],
3846
- providers: [KwikIDRendererService]
4013
+ ]
3847
4014
  }]
3848
- }], ctorParameters: function () { return [{ type: KwikIDRendererService }, { type: i0__namespace.ElementRef }]; }, propDecorators: { windowResizeWatcher: [{
4015
+ }], ctorParameters: function () { return [{ type: i0__namespace.ElementRef }, { type: i0__namespace.ChangeDetectorRef }]; }, propDecorators: { windowResizeWatcher: [{
3849
4016
  type: i0.HostListener,
3850
4017
  args: ["window:resize", ["$event"]]
3851
4018
  }], stepConfig: [{
@@ -3862,7 +4029,7 @@
3862
4029
  type: i0.Output
3863
4030
  }], onClickApiCall: [{
3864
4031
  type: i0.Output
3865
- }], handleOnClickSetActiveForm: [], handleOnClickSubmitForms: [] } });
4032
+ }], assignSequenceNoToForm: [], findCompletedFormsList: [], markFormInFormsListAsCompleted: [], markFormInFormsListAsDisabled: [], filterAllFormsData: [], checkIfFormsStatusCompleted: [], findActiveFormConfig: [], updateFormsList: [], formHide: [], formShow: [], handleOnClickSetActiveForm: [], handleOnClickSubmitForms: [] } });
3866
4033
 
3867
4034
  var KwikIDFormBuilderModule = /** @class */ (function () {
3868
4035
  function KwikIDFormBuilderModule() {
@@ -4008,7 +4175,7 @@
4008
4175
  i6.ReactiveFormsModule,
4009
4176
  KwikIDFormBuilderModule,
4010
4177
  KwikIDFormRendererModule], exports: [KwikIDFormBuilderModule, KwikIDFormRendererModule] });
4011
- /** @nocollapse */ KwikIDFormsModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: KwikIDFormsModule, providers: [KwikIDRendererService], imports: [[
4178
+ /** @nocollapse */ KwikIDFormsModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: KwikIDFormsModule, imports: [[
4012
4179
  i5.CommonModule,
4013
4180
  i6.FormsModule,
4014
4181
  i6.ReactiveFormsModule,
@@ -4026,8 +4193,7 @@
4026
4193
  KwikIDFormBuilderModule,
4027
4194
  KwikIDFormRendererModule
4028
4195
  ],
4029
- exports: [KwikIDFormBuilderModule, KwikIDFormRendererModule],
4030
- providers: [KwikIDRendererService]
4196
+ exports: [KwikIDFormBuilderModule, KwikIDFormRendererModule]
4031
4197
  }]
4032
4198
  }] });
4033
4199