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,11 +1,11 @@
1
1
  import { copyArrayItem, moveItemInArray, DragDropModule } from '@angular/cdk/drag-drop';
2
2
  import * as i0 from '@angular/core';
3
- import { VERSION, Component, Pipe, EventEmitter, Inject, Input, Output, Injectable, HostListener, NgModule } from '@angular/core';
3
+ import { VERSION, Component, Pipe, EventEmitter, Inject, Input, Output, HostListener, NgModule } from '@angular/core';
4
4
  import * as i6 from '@angular/forms';
5
5
  import { FormGroup, FormControl, Validators, FormArray, FormsModule, ReactiveFormsModule } from '@angular/forms';
6
6
  import * as i2 from 'kwikui';
7
7
  import { KwikUIButtonComponent, KwikUIProgressSegmentedComponent, KwikUIInputComponent, KwikUIModule } from 'kwikui';
8
- import { cloneDeep } from 'lodash';
8
+ import { cloneDeep as cloneDeep$1 } from 'lodash';
9
9
  import { __awaiter, __decorate } from 'tslib';
10
10
  import * as i3 from '@taiga-ui/core';
11
11
  import { TuiAlertService, TuiLabelModule, TuiSvgModule, TuiLoaderModule } from '@taiga-ui/core';
@@ -18,6 +18,7 @@ import * as i5 from '@angular/common';
18
18
  import { CommonModule } from '@angular/common';
19
19
  import * as i1 from '@angular/platform-browser';
20
20
  import { trigger, transition, style, animate } from '@angular/animations';
21
+ import * as cloneDeep from 'lodash/cloneDeep';
21
22
  import { HttpClientModule } from '@angular/common/http';
22
23
 
23
24
  class KwikIDFormsBuilderComponent {
@@ -101,7 +102,7 @@ class KwikIDFormsBuilderComponent {
101
102
  if (event.previousContainer !== event.container) {
102
103
  console.log("copying");
103
104
  // Clone the item that was dropped.
104
- let clone = cloneDeep(event.previousContainer.data[event.previousIndex]);
105
+ let clone = cloneDeep$1(event.previousContainer.data[event.previousIndex]);
105
106
  clone.id = clone.key + "__" + this.revisedRandId();
106
107
  event.previousContainer.data[event.previousIndex] = clone;
107
108
  let newFormGroup = new FormGroup({});
@@ -736,7 +737,6 @@ class KwikIDFormViewComponent {
736
737
  this.onClickViewForms = new EventEmitter();
737
738
  this.onClickSaveForm = new EventEmitter();
738
739
  this.onClickApiCall = new EventEmitter();
739
- this.getActiveFormData = new EventEmitter();
740
740
  this.fieldGroups = {};
741
741
  this.formFields = [];
742
742
  this.previousFormData = {};
@@ -754,6 +754,13 @@ class KwikIDFormViewComponent {
754
754
  }
755
755
  ngOnInit() {
756
756
  (() => __awaiter(this, void 0, void 0, function* () {
757
+ this.formsList = this.formsList.filter((form) => {
758
+ if (checkObjectKeyExists(form, "hidden")) {
759
+ if (!form.hidden) {
760
+ return form;
761
+ }
762
+ }
763
+ });
757
764
  yield this.initFormConfig(this.formConfig);
758
765
  this.loading = false;
759
766
  }))();
@@ -791,7 +798,13 @@ class KwikIDFormViewComponent {
791
798
  this.allFormsData = changes.allFormsData.currentValue;
792
799
  }
793
800
  if (verifyChange("formsList")) {
794
- this.formsList = changes.formsList.currentValue;
801
+ this.formsList = changes.formsList.currentValue.filter((form) => {
802
+ if (checkObjectKeyExists(form, "hidden")) {
803
+ if (!form.hidden) {
804
+ return form;
805
+ }
806
+ }
807
+ });
795
808
  }
796
809
  if (verifyChange("formConfig")) {
797
810
  this.formConfig = changes.formConfig.currentValue;
@@ -1367,7 +1380,7 @@ class KwikIDFormViewComponent {
1367
1380
  }
1368
1381
  }
1369
1382
  /** @nocollapse */ KwikIDFormViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: KwikIDFormViewComponent, deps: [{ token: TuiPushService }, { token: TuiAlertService }, { token: KwikIDFormViewService }], target: i0.ɵɵFactoryTarget.Component });
1370
- /** @nocollapse */ KwikIDFormViewComponent.ɵcmp = i0.ɵɵ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, 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.KwikUIButtonComponent, selector: "kwikui-button", inputs: ["disabled", "id", "label", "showLoader", "styles", "class", "type", "appearance", "icon", "iconRight", "shape", "size"], outputs: ["onClick"] }, { type: i2.KwikUIInputComponent, selector: "kwikui-input", inputs: ["label", "id", "type", "formControlName", "formControl", "placeholder", "focus", "invalid", "disabled", "validators", "case", "properties"], outputs: ["getKeyValue"] }, { type: i2.KwikUIMessagesComponent, selector: "kwikui-messages", inputs: ["messages", "id"] }, { type: i2.KwikUICheckboxBlockComponent, selector: "kwikui-checkbox-block", inputs: ["label", "id", "formControlName", "formControl", "placeholder", "focus", "invalid", "disabled", "size", "contentAlign", "validators", "properties"], outputs: ["getKeyValue"] }, { type: i2.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.KwikUIInputDateComponent, selector: "kwikui-input-date", inputs: ["label", "id", "formControlName", "formControl", "placeholder", "focus", "invalid", "disabled", "min", "max", "validators", "properties"], outputs: ["getKeyValue"] }, { type: i2.KwikUIInputPhoneComponent, selector: "kwikui-input-phone", inputs: ["label", "id", "formControlName", "formControl", "placeholder", "focus", "invalid", "disabled", "countryCode", "phoneMaskAfterCountryCode", "removeCountryCodeFromValue", "validators", "properties"], outputs: ["getKeyValue"] }, { type: i3.TuiLabelComponent, selector: "label[tuiLabel]", inputs: ["tuiLabel", "context"] }, { type: i2.KwikUIRadioListComponent, selector: "kwikui-radio-list", inputs: ["label", "id", "formControlName", "formControl", "placeholder", "focus", "invalid", "disabled", "size", "orientation", "items", "validators", "properties"], outputs: ["getKeyValue"] }, { type: i2.KwikUISelectComboboxComponent, selector: "kwikui-select-combobox", inputs: ["label", "id", "formControlName", "formControl", "placeholder", "focus", "invalid", "disabled", "options", "validators", "properties"], outputs: ["getKeyValue"] }, { type: i2.KwikUIButtonApiCallComponent, selector: "kwikui-button-api-call", inputs: ["disabled", "id", "label", "showLoader", "styles", "class", "shape", "size", "apiStatus"], outputs: ["onClick"] }, { type: i2.KwikUIInputOtpComponent, selector: "kwikui-input-otp", inputs: ["label", "id", "formControlName", "formControl", "focus", "invalid", "disabled", "placeholder", "mask", "validators", "properties"], outputs: ["getKeyValue"] }, { type: i2.KwikUIInputAadhaarComponent, selector: "kwikui-input-aadhaar", inputs: ["label", "id", "formControlName", "formControl", "focus", "invalid", "disabled", "placeholder", "mask", "validators", "properties"], outputs: ["getKeyValue"] }, { type: i4.TuiPushComponent, selector: "tui-push", inputs: ["heading", "type", "timestamp"], outputs: ["close"] }, { type: i3.TuiSvgComponent, selector: "tui-svg", inputs: ["src"] }], directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i6.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i6.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i5.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i5.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i6.FormControlDirective, selector: "[formControl]", inputs: ["disabled", "formControl", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { type: i6.FormControlName, selector: "[formControlName]", inputs: ["disabled", "formControlName", "ngModel"], outputs: ["ngModelChange"] }, { type: i4.TuiPushAlertDirective, selector: "[tuiPush]", inputs: ["tuiPush"] }, { type: i4.TuiPushDirective, selector: "tui-push" }], pipes: { "safeHtml": SafeHtmlPipe } });
1383
+ /** @nocollapse */ KwikIDFormViewComponent.ɵcmp = i0.ɵɵ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, 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.KwikUIButtonComponent, selector: "kwikui-button", inputs: ["disabled", "id", "label", "showLoader", "styles", "class", "type", "appearance", "icon", "iconRight", "shape", "size"], outputs: ["onClick"] }, { type: i2.KwikUIInputComponent, selector: "kwikui-input", inputs: ["label", "id", "type", "formControlName", "formControl", "placeholder", "focus", "invalid", "disabled", "validators", "case", "properties"], outputs: ["getKeyValue"] }, { type: i2.KwikUIMessagesComponent, selector: "kwikui-messages", inputs: ["messages", "id"] }, { type: i2.KwikUICheckboxBlockComponent, selector: "kwikui-checkbox-block", inputs: ["label", "id", "formControlName", "formControl", "placeholder", "focus", "invalid", "disabled", "size", "contentAlign", "validators", "properties"], outputs: ["getKeyValue"] }, { type: i2.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.KwikUIInputDateComponent, selector: "kwikui-input-date", inputs: ["label", "id", "formControlName", "formControl", "placeholder", "focus", "invalid", "disabled", "min", "max", "validators", "properties"], outputs: ["getKeyValue"] }, { type: i2.KwikUIInputPhoneComponent, selector: "kwikui-input-phone", inputs: ["label", "id", "formControlName", "formControl", "placeholder", "focus", "invalid", "disabled", "countryCode", "phoneMaskAfterCountryCode", "removeCountryCodeFromValue", "validators", "properties"], outputs: ["getKeyValue"] }, { type: i3.TuiLabelComponent, selector: "label[tuiLabel]", inputs: ["tuiLabel", "context"] }, { type: i2.KwikUIRadioListComponent, selector: "kwikui-radio-list", inputs: ["label", "id", "formControlName", "formControl", "placeholder", "focus", "invalid", "disabled", "size", "orientation", "items", "validators", "properties"], outputs: ["getKeyValue"] }, { type: i2.KwikUISelectComboboxComponent, selector: "kwikui-select-combobox", inputs: ["label", "id", "formControlName", "formControl", "placeholder", "focus", "invalid", "disabled", "options", "validators", "properties"], outputs: ["getKeyValue"] }, { type: i2.KwikUIButtonApiCallComponent, selector: "kwikui-button-api-call", inputs: ["disabled", "id", "label", "showLoader", "styles", "class", "shape", "size", "apiStatus"], outputs: ["onClick"] }, { type: i2.KwikUIInputOtpComponent, selector: "kwikui-input-otp", inputs: ["label", "id", "formControlName", "formControl", "focus", "invalid", "disabled", "placeholder", "mask", "validators", "properties"], outputs: ["getKeyValue"] }, { type: i2.KwikUIInputAadhaarComponent, selector: "kwikui-input-aadhaar", inputs: ["label", "id", "formControlName", "formControl", "focus", "invalid", "disabled", "placeholder", "mask", "validators", "properties"], outputs: ["getKeyValue"] }, { type: i4.TuiPushComponent, selector: "tui-push", inputs: ["heading", "type", "timestamp"], outputs: ["close"] }, { type: i3.TuiSvgComponent, selector: "tui-svg", inputs: ["src"] }], directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i6.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i6.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i5.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i5.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i6.FormControlDirective, selector: "[formControl]", inputs: ["disabled", "formControl", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { type: i6.FormControlName, selector: "[formControlName]", inputs: ["disabled", "formControlName", "ngModel"], outputs: ["ngModelChange"] }, { type: i4.TuiPushAlertDirective, selector: "[tuiPush]", inputs: ["tuiPush"] }, { type: i4.TuiPushDirective, selector: "tui-push" }], pipes: { "safeHtml": SafeHtmlPipe } });
1371
1384
  __decorate([
1372
1385
  logMethod
1373
1386
  ], KwikIDFormViewComponent.prototype, "ngOnInit", null);
@@ -1517,8 +1530,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
1517
1530
  type: Output
1518
1531
  }], onClickApiCall: [{
1519
1532
  type: Output
1520
- }], getActiveFormData: [{
1521
- type: Output
1522
1533
  }], 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: [] } });
1523
1534
 
1524
1535
  class KwikIDFormsListComponent {
@@ -1535,6 +1546,13 @@ class KwikIDFormsListComponent {
1535
1546
  this.isAllFormsCompleted = true;
1536
1547
  }
1537
1548
  ngOnInit() {
1549
+ this.formsList = this.formsList.filter((form) => {
1550
+ if (checkObjectKeyExists(form, "hidden")) {
1551
+ if (!form.hidden) {
1552
+ return form;
1553
+ }
1554
+ }
1555
+ });
1538
1556
  this.isAllFormsCompleted = this.checkIsAllFormsCompleted(this.formsList);
1539
1557
  }
1540
1558
  ngOnChanges(changes) {
@@ -1545,7 +1563,13 @@ class KwikIDFormsListComponent {
1545
1563
  this.showFormFields = changes.showFormFields.currentValue;
1546
1564
  }
1547
1565
  if (verifyChange("formsList")) {
1548
- this.formsList = changes.formsList.currentValue;
1566
+ this.formsList = changes.formsList.currentValue.filter((form) => {
1567
+ if (checkObjectKeyExists(form, "hidden")) {
1568
+ if (!form.hidden) {
1569
+ return form;
1570
+ }
1571
+ }
1572
+ });
1549
1573
  this.isAllFormsCompleted = this.checkIsAllFormsCompleted(this.formsList);
1550
1574
  }
1551
1575
  if (verifyChange("isMobileView")) {
@@ -1603,6 +1627,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
1603
1627
  type: Output
1604
1628
  }], ngOnChanges: [] } });
1605
1629
 
1630
+ var ERendererActionKey;
1631
+ (function (ERendererActionKey) {
1632
+ ERendererActionKey["SET_VALUE"] = "SET_VALUE";
1633
+ ERendererActionKey["FORM_HIDE"] = "FORM_HIDE";
1634
+ ERendererActionKey["FORM_SHOW"] = "FORM_SHOW";
1635
+ ERendererActionKey["FORM_DISABLE"] = "FORM_DISABLE";
1636
+ ERendererActionKey["FORM_ENABLE"] = "FORM_ENABLE";
1637
+ })(ERendererActionKey || (ERendererActionKey = {}));
1638
+
1606
1639
  class Converter {
1607
1640
  constructor() {
1608
1641
  this.getFormFields = (formConfig) => {
@@ -2240,175 +2273,19 @@ __decorate([
2240
2273
  logMethod
2241
2274
  ], Converter.prototype, "convertFormConfig", null);
2242
2275
 
2243
- class KwikIDRendererService {
2244
- constructor() {
2245
- this.isMobileView = false;
2246
- this.allFormsData = {};
2247
- }
2248
- setIsMobileView(isMobileView) {
2249
- this.isMobileView = isMobileView;
2250
- }
2251
- setFormsList(formsList) {
2252
- this.formsList = formsList;
2253
- }
2254
- setFormsListCompleted(formsListCompleted) {
2255
- this.formsListCompleted = formsListCompleted;
2256
- }
2257
- setAllFormsData(allFormsData) {
2258
- this.allFormsData = allFormsData;
2259
- }
2260
- setActiveFormConfig(activeFormConfig) {
2261
- this.activeFormConfig = activeFormConfig;
2262
- }
2263
- setActiveFormFields(activeFormFields) {
2264
- this.activeFormFields = activeFormFields;
2265
- }
2266
- setActiveFormData(activeFormData) {
2267
- this.activeFormData = activeFormData;
2268
- }
2269
- fetchFormConfig(url) {
2270
- return __awaiter(this, void 0, void 0, function* () {
2271
- const response = yield fetch(url, { method: "GET" });
2272
- const data = yield response.json();
2273
- return data;
2274
- });
2275
- }
2276
- findActiveFormConfig(formsList) {
2277
- const activeFormConfig = formsList.find((form) => {
2278
- return form.status === "editable" && !form.disabled;
2279
- });
2280
- return activeFormConfig;
2281
- }
2282
- findCompletedFormsList(allFormsData) {
2283
- let formsListCompleted = [];
2284
- Object.keys(allFormsData).map((formKey) => {
2285
- formsListCompleted.push(formKey);
2286
- });
2287
- return formsListCompleted;
2288
- }
2289
- markFormInFormsListAsCompleted(formsList, formsListCompleted) {
2290
- for (let form of formsList) {
2291
- if (formsListCompleted.includes(form.key)) {
2292
- form = setValueToObjectPath(form, "status", "completed");
2293
- form = setValueToObjectPath(form, "disabled", false);
2294
- }
2295
- }
2296
- return formsList;
2297
- }
2298
- markFormInFormsListAsDisabled(formsList, formsListCompleted) {
2299
- for (let form of formsList) {
2300
- if (form.status !== "completed") {
2301
- if (checkObjectKeyExists(form, "dependentOn")) {
2302
- const isDependent = form.dependentOn.every((r) => formsListCompleted.includes(r));
2303
- if (isDependent) {
2304
- form = setValueToObjectPath(form, "status", "editable");
2305
- form = setValueToObjectPath(form, "disabled", false);
2306
- }
2307
- else {
2308
- form = setValueToObjectPath(form, "status", "locked");
2309
- form = setValueToObjectPath(form, "disabled", true);
2310
- }
2311
- }
2312
- else {
2313
- form = setValueToObjectPath(form, "dependentOn", []);
2314
- form = setValueToObjectPath(form, "status", "editable");
2315
- form = setValueToObjectPath(form, "disabled", false);
2316
- }
2317
- }
2276
+ const getFormConfigByKey = (forms, key) => {
2277
+ const form = forms.find((form) => {
2278
+ if (form.key === key) {
2279
+ return form;
2318
2280
  }
2319
- return formsList;
2320
- }
2321
- assignSequenceNoToForm(formsList) {
2322
- let sequenceNo = 1;
2323
- for (let form of formsList) {
2324
- form.sequenceNo = sequenceNo++;
2325
- }
2326
- return formsList;
2327
- }
2328
- filterAllFormsData(allFormsData, formsList) {
2329
- let currentUserFormAllFormsData = {};
2330
- for (let form of formsList) {
2331
- if (checkObjectKeyExists(allFormsData, form.key)) {
2332
- currentUserFormAllFormsData = Object.assign(Object.assign({}, currentUserFormAllFormsData), { [form.key]: allFormsData[form.key] });
2333
- }
2334
- }
2335
- return currentUserFormAllFormsData;
2336
- }
2337
- updateFormsList() {
2338
- let formsList = this.formsList;
2339
- let formsListCompleted;
2340
- let activeFormConfig;
2341
- formsList = this.assignSequenceNoToForm(formsList);
2342
- /**
2343
- * Below code identifies the allFormsData required for the current User Form.
2344
- * Why? Because allFormsData will actually contain the whole journey's all
2345
- * possible User Form steps. So, it is important to set the form data which
2346
- * this particular User Form only has to LOCAL METHOD Variable.
2347
- */
2348
- const currentUserFormAllFormsData = this.filterAllFormsData(this.allFormsData, formsList);
2349
- formsListCompleted = this.findCompletedFormsList(currentUserFormAllFormsData);
2350
- formsList = this.markFormInFormsListAsCompleted(formsList, formsListCompleted);
2351
- formsList = this.markFormInFormsListAsDisabled(formsList, formsListCompleted);
2352
- if (formsList.length !== formsListCompleted.length) {
2353
- activeFormConfig = this.findActiveFormConfig(formsList);
2354
- this.setActiveFormConfig(activeFormConfig);
2355
- }
2356
- this.setFormsList(formsList);
2357
- this.setFormsListCompleted(formsListCompleted);
2358
- }
2359
- }
2360
- /** @nocollapse */ KwikIDRendererService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: KwikIDRendererService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
2361
- /** @nocollapse */ KwikIDRendererService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: KwikIDRendererService, providedIn: "root" });
2362
- __decorate([
2363
- logMethod
2364
- ], KwikIDRendererService.prototype, "setFormsList", null);
2365
- __decorate([
2366
- logMethod
2367
- ], KwikIDRendererService.prototype, "setFormsListCompleted", null);
2368
- __decorate([
2369
- logMethod
2370
- ], KwikIDRendererService.prototype, "setAllFormsData", null);
2371
- __decorate([
2372
- logMethod
2373
- ], KwikIDRendererService.prototype, "setActiveFormConfig", null);
2374
- __decorate([
2375
- logMethod
2376
- ], KwikIDRendererService.prototype, "setActiveFormFields", null);
2377
- __decorate([
2378
- logMethod
2379
- ], KwikIDRendererService.prototype, "setActiveFormData", null);
2380
- __decorate([
2381
- logMethod
2382
- ], KwikIDRendererService.prototype, "findActiveFormConfig", null);
2383
- __decorate([
2384
- logMethod
2385
- ], KwikIDRendererService.prototype, "findCompletedFormsList", null);
2386
- __decorate([
2387
- logMethod
2388
- ], KwikIDRendererService.prototype, "markFormInFormsListAsCompleted", null);
2389
- __decorate([
2390
- logMethod
2391
- ], KwikIDRendererService.prototype, "markFormInFormsListAsDisabled", null);
2392
- __decorate([
2393
- logMethod
2394
- ], KwikIDRendererService.prototype, "assignSequenceNoToForm", null);
2395
- __decorate([
2396
- logMethod
2397
- ], KwikIDRendererService.prototype, "filterAllFormsData", null);
2398
- __decorate([
2399
- logMethod
2400
- ], KwikIDRendererService.prototype, "updateFormsList", null);
2401
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: KwikIDRendererService, decorators: [{
2402
- type: Injectable,
2403
- args: [{
2404
- providedIn: "root"
2405
- }]
2406
- }], ctorParameters: function () { return []; }, propDecorators: { setFormsList: [], setFormsListCompleted: [], setAllFormsData: [], setActiveFormConfig: [], setActiveFormFields: [], setActiveFormData: [], findActiveFormConfig: [], findCompletedFormsList: [], markFormInFormsListAsCompleted: [], markFormInFormsListAsDisabled: [], assignSequenceNoToForm: [], filterAllFormsData: [], updateFormsList: [] } });
2281
+ });
2282
+ return form;
2283
+ };
2407
2284
 
2408
2285
  class KwikIDFormsRendererComponent {
2409
- constructor(rendererService, hostElement) {
2410
- this.rendererService = rendererService;
2286
+ constructor(hostElement, cdr) {
2411
2287
  this.hostElement = hostElement;
2288
+ this.cdr = cdr;
2412
2289
  this.formsData = {};
2413
2290
  this.apiCallResponse = {};
2414
2291
  this.onClickSubmit = new EventEmitter();
@@ -2416,11 +2293,14 @@ class KwikIDFormsRendererComponent {
2416
2293
  this.onClickApiCall = new EventEmitter();
2417
2294
  this.loading = false;
2418
2295
  this.loader = false;
2296
+ this.showErrorNotification = false;
2297
+ this.allFormsData = {};
2298
+ this.formsList = [];
2299
+ this.isMobileView = false;
2419
2300
  // display forms and list conditionally
2420
2301
  this.showForm = false;
2421
2302
  this.showFormFields = true;
2422
2303
  this.showFormSections = true;
2423
- this.showErrorNotification = false;
2424
2304
  }
2425
2305
  // The final value should be provided to service, so that it can be used in all components
2426
2306
  windowResizeWatcher() {
@@ -2433,7 +2313,7 @@ class KwikIDFormsRendererComponent {
2433
2313
  this.showFormSections = true;
2434
2314
  this.showFormFields = false;
2435
2315
  }
2436
- this.rendererService.isMobileView = true;
2316
+ this.isMobileView = true;
2437
2317
  }
2438
2318
  else {
2439
2319
  if (this.showForm) {
@@ -2444,9 +2324,12 @@ class KwikIDFormsRendererComponent {
2444
2324
  this.showFormSections = true;
2445
2325
  this.showFormFields = false;
2446
2326
  }
2447
- this.rendererService.isMobileView = false;
2327
+ this.isMobileView = false;
2448
2328
  }
2449
2329
  }
2330
+ toggleErrorNotification(show) {
2331
+ this.showErrorNotification = show;
2332
+ }
2450
2333
  ngOnInit() {
2451
2334
  var _a, _b, _c;
2452
2335
  this.loader = true;
@@ -2454,10 +2337,10 @@ class KwikIDFormsRendererComponent {
2454
2337
  const 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;
2455
2338
  if (formStepKey !== undefined &&
2456
2339
  checkObjectKeyExists(this.userConfig.userFormFields, formStepKey)) {
2457
- this.rendererService.setFormsList(this.userConfig.userFormFields[formStepKey]);
2340
+ this.formsList = this.userConfig.userFormFields[formStepKey];
2458
2341
  }
2459
2342
  else if (Array.isArray(this.userConfig.userFormFields)) {
2460
- this.rendererService.setFormsList(this.userConfig.userFormFields);
2343
+ this.formsList = this.userConfig.userFormFields;
2461
2344
  }
2462
2345
  else {
2463
2346
  throw new Error(`userFormFields doesn't have a form defined with key: ${formStepKey}`);
@@ -2482,15 +2365,26 @@ class KwikIDFormsRendererComponent {
2482
2365
  this.loader = false;
2483
2366
  }
2484
2367
  }
2368
+ fetchFormConfig(url) {
2369
+ return __awaiter(this, void 0, void 0, function* () {
2370
+ const response = yield fetch(url, { method: "GET" });
2371
+ const data = yield response.json();
2372
+ return data;
2373
+ });
2374
+ }
2485
2375
  initializeForms() {
2486
2376
  return __awaiter(this, void 0, void 0, function* () {
2487
2377
  this.loader = true;
2488
- this.rendererService.setAllFormsData(this.formsData);
2489
- this.rendererService.updateFormsList();
2490
- this.handleResize(this.rendererService.formsList);
2491
- if (this.rendererService.formsList.length !==
2492
- this.rendererService.formsListCompleted.length) {
2493
- yield this.handleOnClickSetActiveForm(this.rendererService.activeFormConfig.key);
2378
+ this.allFormsData = this.formsData;
2379
+ console.log("START");
2380
+ console.log(JSON.parse(JSON.stringify(this.formsList)));
2381
+ yield this.updateFormsList();
2382
+ console.log("END");
2383
+ console.log(JSON.parse(JSON.stringify(this.formsList)));
2384
+ this.handleResize(this.formsList);
2385
+ console.log(JSON.stringify(this.activeFormConfig), this.formsListCompleted);
2386
+ if (isNotEmptyValue(this.activeFormConfig)) {
2387
+ yield this.handleOnClickSetActiveForm(this.activeFormConfig.key);
2494
2388
  }
2495
2389
  else {
2496
2390
  this.showForm = false;
@@ -2500,43 +2394,221 @@ class KwikIDFormsRendererComponent {
2500
2394
  this.loading = false;
2501
2395
  });
2502
2396
  }
2503
- handleResize(formsList) {
2504
- if (this.hostElement.nativeElement.offsetWidth < 600) {
2505
- const isSingleForm = (formsList) => {
2506
- return formsList.length === 1;
2507
- };
2508
- if (!isSingleForm(formsList)) {
2509
- this.showFormSections = true;
2510
- this.showFormFields = false;
2511
- this.showForm = false;
2397
+ /**
2398
+ * NOTE: To be deprecated.
2399
+ * Why ? Will be directly assigned while executing 'chakra' for default form config.
2400
+ * @param formsList any[]
2401
+ * @param formsListCompleted string[]
2402
+ * @returns any[]
2403
+ */
2404
+ assignSequenceNoToForm(formsList) {
2405
+ let sequenceNo = 1;
2406
+ for (let form of formsList) {
2407
+ if (checkObjectKeyExists(form, "hidden")) {
2408
+ if (!form.hidden) {
2409
+ form.sequenceNo = sequenceNo++;
2410
+ }
2411
+ else {
2412
+ delete form["sequenceNo"];
2413
+ }
2512
2414
  }
2513
- else {
2514
- this.showFormSections = true;
2515
- this.showFormFields = false;
2516
- this.showForm = false;
2415
+ }
2416
+ return formsList;
2417
+ }
2418
+ findCompletedFormsList(allFormsData) {
2419
+ let formsListCompleted = [];
2420
+ Object.keys(allFormsData).map((formKey) => {
2421
+ formsListCompleted.push(formKey);
2422
+ });
2423
+ return formsListCompleted;
2424
+ }
2425
+ /**
2426
+ * NOTE: To be deprecated. Why ? Will be replaced by 'chakra'.
2427
+ * @param formsList any[]
2428
+ * @param formsListCompleted string[]
2429
+ * @returns any[]
2430
+ */
2431
+ markFormInFormsListAsCompleted(formsList, formsListCompleted) {
2432
+ for (let form of formsList) {
2433
+ if (checkObjectKeyExists(form, "hidden")) {
2434
+ if (!form.hidden) {
2435
+ if (formsListCompleted.includes(form.key)) {
2436
+ form = setValueToObjectPath(form, "status", "completed");
2437
+ form = setValueToObjectPath(form, "disabled", false);
2438
+ }
2439
+ }
2517
2440
  }
2518
- this.rendererService.isMobileView = true;
2519
2441
  }
2520
- else {
2521
- this.rendererService.isMobileView = false;
2442
+ return formsList;
2443
+ }
2444
+ /**
2445
+ * NOTE: To be deprecated. Why ? Will be replaced by 'chakra'.
2446
+ * @param formsList any[]
2447
+ * @param formsListCompleted string[]
2448
+ * @returns any[]
2449
+ */
2450
+ markFormInFormsListAsDisabled(formsList, formsListCompleted) {
2451
+ for (let form of formsList) {
2452
+ if (checkObjectKeyExists(form, "hidden")) {
2453
+ if (!form.hidden) {
2454
+ if (form.status !== "completed") {
2455
+ if (checkObjectKeyExists(form, "dependentOn")) {
2456
+ const isDependent = form.dependentOn.every((r) => formsListCompleted.includes(r));
2457
+ if (isDependent) {
2458
+ form = setValueToObjectPath(form, "status", "editable");
2459
+ form = setValueToObjectPath(form, "disabled", false);
2460
+ }
2461
+ else {
2462
+ form = setValueToObjectPath(form, "status", "locked");
2463
+ form = setValueToObjectPath(form, "disabled", true);
2464
+ }
2465
+ }
2466
+ else {
2467
+ form = setValueToObjectPath(form, "dependentOn", []);
2468
+ form = setValueToObjectPath(form, "status", "editable");
2469
+ form = setValueToObjectPath(form, "disabled", false);
2470
+ }
2471
+ }
2472
+ }
2473
+ }
2522
2474
  }
2475
+ return formsList;
2476
+ }
2477
+ filterAllFormsData(allFormsData, formsList) {
2478
+ let currentUserFormAllFormsData = {};
2479
+ for (let form of formsList) {
2480
+ if (checkObjectKeyExists(form, "hidden") && !form.hidden) {
2481
+ if (checkObjectKeyExists(allFormsData, form.key)) {
2482
+ currentUserFormAllFormsData = Object.assign(Object.assign({}, currentUserFormAllFormsData), { [form.key]: allFormsData[form.key] });
2483
+ }
2484
+ }
2485
+ }
2486
+ return currentUserFormAllFormsData;
2523
2487
  }
2524
- // forms-list listener
2488
+ checkIfFormsStatusCompleted(formsList, formsListCompleted) {
2489
+ let allFormsCompleted = true;
2490
+ for (const form of formsList) {
2491
+ if (checkObjectKeyExists(form, "hidden")) {
2492
+ if (!form.hidden) {
2493
+ if (form.status !== "completed") {
2494
+ allFormsCompleted = false;
2495
+ break;
2496
+ }
2497
+ }
2498
+ }
2499
+ }
2500
+ return allFormsCompleted;
2501
+ }
2502
+ findActiveFormConfig(formsList) {
2503
+ const activeFormConfig = formsList.find((form) => {
2504
+ if (checkObjectKeyExists(form, "hidden")) {
2505
+ if (!form.hidden) {
2506
+ return form.status === "editable" && !form.disabled;
2507
+ }
2508
+ }
2509
+ });
2510
+ return activeFormConfig;
2511
+ }
2512
+ updateFormsList() {
2513
+ return __awaiter(this, void 0, void 0, function* () {
2514
+ for (let form of this.formsList) {
2515
+ if (checkObjectKeyExists(form, "default") &&
2516
+ isNotEmptyValue(form.default)) {
2517
+ const triggers = form.default.triggers;
2518
+ const rules = form.default.rules;
2519
+ const actions = form.default.actions;
2520
+ const rulesMapping = new Rule(rules, {
2521
+ USER_CONFIG: this.userConfig,
2522
+ FORMS_LIST: this.formsList,
2523
+ ALL_FORMS_DATA: this.allFormsData
2524
+ }).mapping();
2525
+ for (let action of actions) {
2526
+ const conditionEvaluation = new Condition(action.condition, rulesMapping).evaluate();
2527
+ if (conditionEvaluation) {
2528
+ const actions = new Action(action, rulesMapping, {
2529
+ FORMS_LIST: this.formsList,
2530
+ ALL_FORMS_DATA: this.allFormsData
2531
+ }, this.takeAction.bind(this));
2532
+ yield actions.execute();
2533
+ }
2534
+ }
2535
+ }
2536
+ else {
2537
+ if (!checkObjectKeyExists(form, "hidden")) {
2538
+ form.hidden = false;
2539
+ }
2540
+ }
2541
+ }
2542
+ this.formsList = this.assignSequenceNoToForm(this.formsList);
2543
+ /**
2544
+ * Below code identifies the allFormsData required for the current User Form.
2545
+ * Why? Because allFormsData will actually contain the whole journey's all
2546
+ * possible User Form steps. So, it is important to set the form data which
2547
+ * this particular User Form only has to LOCAL METHOD Variable.
2548
+ */
2549
+ const currentUserFormAllFormsData = this.filterAllFormsData(this.allFormsData, this.formsList);
2550
+ this.formsListCompleted = this.findCompletedFormsList(currentUserFormAllFormsData);
2551
+ this.formsList = this.markFormInFormsListAsCompleted(this.formsList, this.formsListCompleted);
2552
+ this.formsList = this.markFormInFormsListAsDisabled(this.formsList, this.formsListCompleted);
2553
+ this.formsList = cloneDeep(this.formsList);
2554
+ if (this.checkIfFormsStatusCompleted(this.formsList, this.formsListCompleted)) {
2555
+ this.activeFormConfig = this.findActiveFormConfig(this.formsList);
2556
+ }
2557
+ });
2558
+ }
2559
+ formHide(formKey) {
2560
+ let form = getFormConfigByKey(this.formsList, formKey);
2561
+ form = setValueToObjectPath(form, "hidden", true);
2562
+ }
2563
+ formShow(formKey) {
2564
+ let form = getFormConfigByKey(this.formsList, formKey);
2565
+ form = setValueToObjectPath(form, "hidden", false);
2566
+ }
2567
+ takeAction(action, object) {
2568
+ return __awaiter(this, void 0, void 0, function* () {
2569
+ switch (action.key) {
2570
+ case ERendererActionKey.FORM_HIDE:
2571
+ this.formHide(action.props.formKey);
2572
+ break;
2573
+ case ERendererActionKey.FORM_SHOW:
2574
+ this.formShow(action.props.formKey);
2575
+ break;
2576
+ case EActionKey.SET_VALUE:
2577
+ const sources = new Source({
2578
+ USER_CONFIG: this.userConfig,
2579
+ ALL_FORMS_DATA: this.formsData
2580
+ });
2581
+ const sourceValue = yield sources.getValueFromSource(action.props.value.source);
2582
+ sources.setValueToSource(action.props.value.destination, sourceValue);
2583
+ this.userConfig = sources.object.USER_CONFIG;
2584
+ this.formsData = sources.object.ALL_FORMS_DATA;
2585
+ break;
2586
+ default:
2587
+ break;
2588
+ }
2589
+ });
2590
+ }
2591
+ /**
2592
+ * Library Event Listeners
2593
+ */
2594
+ /**
2595
+ * FormList - Listens to event of opening the FormView of when any form is clicked in FormList
2596
+ * @param selectedForm string
2597
+ */
2525
2598
  handleOnClickSetActiveForm(selectedForm) {
2526
2599
  var _a;
2527
2600
  return __awaiter(this, void 0, void 0, function* () {
2528
2601
  this.showForm = false;
2529
2602
  this.loader = true;
2530
- const activeFormConfig = this.rendererService.formsList.find((form) => {
2603
+ const activeFormConfig = this.formsList.find((form) => {
2531
2604
  if (form.key === selectedForm) {
2532
2605
  return form;
2533
2606
  }
2534
2607
  });
2535
- let formConfig = yield this.rendererService.fetchFormConfig(activeFormConfig.formContent.url);
2608
+ let formConfig = yield this.fetchFormConfig(activeFormConfig.formContent.url);
2536
2609
  formConfig = new Converter().convertFormConfig(formConfig);
2537
- const activeFormData = (_a = this.rendererService.allFormsData[formConfig.key]) !== null && _a !== void 0 ? _a : {};
2538
- this.rendererService.setActiveFormData(activeFormData);
2539
- this.rendererService.setActiveFormConfig(Object.assign(Object.assign({}, activeFormConfig), formConfig));
2610
+ const activeFormData = (_a = this.allFormsData[formConfig.key]) !== null && _a !== void 0 ? _a : {};
2611
+ this.activeFormConfig = Object.assign(Object.assign({}, activeFormConfig), formConfig);
2540
2612
  if (this.hostElement.nativeElement.offsetWidth < 600) {
2541
2613
  this.showFormSections = false;
2542
2614
  this.showFormFields = true;
@@ -2549,11 +2621,43 @@ class KwikIDFormsRendererComponent {
2549
2621
  this.loader = false;
2550
2622
  });
2551
2623
  }
2552
- // forms-list listener
2624
+ /**
2625
+ * 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.
2626
+ * @param e any
2627
+ */
2628
+ handleOnClickApiCall(e) {
2629
+ this.loader = true;
2630
+ this.onClickApiCall.emit(e);
2631
+ }
2632
+ /**
2633
+ * 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.
2634
+ * @param e any
2635
+ */
2636
+ handleOnClickSaveForm(e) {
2637
+ this.loader = true;
2638
+ this.activeFormData = {};
2639
+ this.getFormData.emit({
2640
+ [this.activeFormConfig.key]: e["data"]
2641
+ });
2642
+ }
2643
+ /**
2644
+ * FormView - Listens to event of showing the Forms List in Mobile View.
2645
+ * @param e any
2646
+ */
2647
+ handleOnClickViewForms(e) {
2648
+ this.showFormSections = true;
2649
+ this.showForm = false;
2650
+ this.showFormFields = false;
2651
+ }
2652
+ /**
2653
+ * FormList - Listens to event of submitting all the forms and moving out of the library and also handles the validation of all the forms.
2654
+ * @param e any
2655
+ */
2553
2656
  handleOnClickSubmitForms(e) {
2554
2657
  if (this.userConfig.userFormFieldsConfig.validation) {
2658
+ console.log(JSON.parse(JSON.stringify(this.userConfig)));
2555
2659
  const validations = new Validation({
2556
- USER_CONFIG: this.userConfig,
2660
+ FORMS_LIST: this.formsList,
2557
2661
  ALL_FORMS_DATA: this.formsData
2558
2662
  }, this.takeAction.bind(this));
2559
2663
  (() => __awaiter(this, void 0, void 0, function* () {
@@ -2570,56 +2674,33 @@ class KwikIDFormsRendererComponent {
2570
2674
  }))();
2571
2675
  }
2572
2676
  }
2573
- // form-view listener
2574
- handleOnClickApiCall(e) {
2575
- this.loader = true;
2576
- this.onClickApiCall.emit(e);
2577
- }
2578
- // form-view listener
2579
- handleGetActiveFormData(e) {
2580
- this.loader = true;
2581
- this.getFormData.emit({
2582
- [this.rendererService.activeFormConfig.key]: e["data"]
2583
- });
2584
- }
2585
- // form-view listener
2586
- handleOnClickSaveForm(e) {
2587
- this.loader = true;
2588
- this.rendererService.setActiveFormData({});
2589
- this.getFormData.emit({
2590
- [this.rendererService.activeFormConfig.key]: e["data"]
2591
- });
2592
- }
2593
- // form-view listener
2594
- handleOnClickViewForms(e) {
2595
- this.showFormSections = true;
2596
- this.showForm = false;
2597
- this.showFormFields = false;
2598
- }
2599
- toggleErrorNotification(show) {
2600
- this.showErrorNotification = show;
2601
- }
2602
- takeAction(action, userConfig, formsData) {
2603
- return __awaiter(this, void 0, void 0, function* () {
2604
- switch (action.key) {
2605
- case EActionKey.SET_VALUE:
2606
- const sources = new Source({
2607
- USER_CONFIG: this.userConfig,
2608
- ALL_FORMS_DATA: this.formsData
2609
- });
2610
- const sourceValue = yield sources.getValueFromSource(action.props.value.source);
2611
- sources.setValueToSource(action.props.value.destination, sourceValue);
2612
- this.userConfig = sources.object.USER_CONFIG;
2613
- this.formsData = sources.object.ALL_FORMS_DATA;
2614
- break;
2615
- default:
2616
- break;
2677
+ /**
2678
+ * Miscellaneous Methods
2679
+ */
2680
+ handleResize(formsList) {
2681
+ if (this.hostElement.nativeElement.offsetWidth < 600) {
2682
+ const isSingleForm = (formsList) => {
2683
+ return formsList.length === 1;
2684
+ };
2685
+ if (!isSingleForm(formsList)) {
2686
+ this.showFormSections = true;
2687
+ this.showFormFields = false;
2688
+ this.showForm = false;
2617
2689
  }
2618
- });
2690
+ else {
2691
+ this.showFormSections = true;
2692
+ this.showFormFields = false;
2693
+ this.showForm = false;
2694
+ }
2695
+ this.isMobileView = true;
2696
+ }
2697
+ else {
2698
+ this.isMobileView = false;
2699
+ }
2619
2700
  }
2620
2701
  }
2621
- /** @nocollapse */ KwikIDFormsRendererComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: KwikIDFormsRendererComponent, deps: [{ token: KwikIDRendererService }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
2622
- /** @nocollapse */ KwikIDFormsRendererComponent.ɵcmp = i0.ɵɵ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, 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.TuiPushComponent, selector: "tui-push", inputs: ["heading", "type", "timestamp"], outputs: ["close"] }, { type: i3.TuiSvgComponent, selector: "tui-svg", inputs: ["src"] }], directives: [{ type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.TuiPushAlertDirective, selector: "[tuiPush]", inputs: ["tuiPush"] }, { type: i4.TuiPushDirective, selector: "tui-push" }], animations: [
2702
+ /** @nocollapse */ KwikIDFormsRendererComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: KwikIDFormsRendererComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
2703
+ /** @nocollapse */ KwikIDFormsRendererComponent.ɵcmp = i0.ɵɵ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, 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.TuiPushComponent, selector: "tui-push", inputs: ["heading", "type", "timestamp"], outputs: ["close"] }, { type: i3.TuiSvgComponent, selector: "tui-svg", inputs: ["src"] }], directives: [{ type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.TuiPushAlertDirective, selector: "[tuiPush]", inputs: ["tuiPush"] }, { type: i4.TuiPushDirective, selector: "tui-push" }], animations: [
2623
2704
  trigger("panelInOut", [
2624
2705
  transition(":enter", [
2625
2706
  style({ transform: "translateY(100%)" }),
@@ -2630,6 +2711,36 @@ class KwikIDFormsRendererComponent {
2630
2711
  ])
2631
2712
  ])
2632
2713
  ] });
2714
+ __decorate([
2715
+ logMethod
2716
+ ], KwikIDFormsRendererComponent.prototype, "assignSequenceNoToForm", null);
2717
+ __decorate([
2718
+ logMethod
2719
+ ], KwikIDFormsRendererComponent.prototype, "findCompletedFormsList", null);
2720
+ __decorate([
2721
+ logMethod
2722
+ ], KwikIDFormsRendererComponent.prototype, "markFormInFormsListAsCompleted", null);
2723
+ __decorate([
2724
+ logMethod
2725
+ ], KwikIDFormsRendererComponent.prototype, "markFormInFormsListAsDisabled", null);
2726
+ __decorate([
2727
+ logMethod
2728
+ ], KwikIDFormsRendererComponent.prototype, "filterAllFormsData", null);
2729
+ __decorate([
2730
+ logMethod
2731
+ ], KwikIDFormsRendererComponent.prototype, "checkIfFormsStatusCompleted", null);
2732
+ __decorate([
2733
+ logMethod
2734
+ ], KwikIDFormsRendererComponent.prototype, "findActiveFormConfig", null);
2735
+ __decorate([
2736
+ logMethod
2737
+ ], KwikIDFormsRendererComponent.prototype, "updateFormsList", null);
2738
+ __decorate([
2739
+ logMethod
2740
+ ], KwikIDFormsRendererComponent.prototype, "formHide", null);
2741
+ __decorate([
2742
+ logMethod
2743
+ ], KwikIDFormsRendererComponent.prototype, "formShow", null);
2633
2744
  __decorate([
2634
2745
  logMethod
2635
2746
  ], KwikIDFormsRendererComponent.prototype, "handleOnClickSetActiveForm", null);
@@ -2652,10 +2763,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
2652
2763
  animate(100, style({ transform: "translateY(100%)" }))
2653
2764
  ])
2654
2765
  ])
2655
- ],
2656
- providers: [KwikIDRendererService]
2766
+ ]
2657
2767
  }]
2658
- }], ctorParameters: function () { return [{ type: KwikIDRendererService }, { type: i0.ElementRef }]; }, propDecorators: { windowResizeWatcher: [{
2768
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { windowResizeWatcher: [{
2659
2769
  type: HostListener,
2660
2770
  args: ["window:resize", ["$event"]]
2661
2771
  }], stepConfig: [{
@@ -2672,7 +2782,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
2672
2782
  type: Output
2673
2783
  }], onClickApiCall: [{
2674
2784
  type: Output
2675
- }], handleOnClickSetActiveForm: [], handleOnClickSubmitForms: [] } });
2785
+ }], assignSequenceNoToForm: [], findCompletedFormsList: [], markFormInFormsListAsCompleted: [], markFormInFormsListAsDisabled: [], filterAllFormsData: [], checkIfFormsStatusCompleted: [], findActiveFormConfig: [], updateFormsList: [], formHide: [], formShow: [], handleOnClickSetActiveForm: [], handleOnClickSubmitForms: [] } });
2676
2786
 
2677
2787
  class KwikIDFormBuilderModule {
2678
2788
  }
@@ -2803,7 +2913,7 @@ class KwikIDFormsModule {
2803
2913
  ReactiveFormsModule,
2804
2914
  KwikIDFormBuilderModule,
2805
2915
  KwikIDFormRendererModule], exports: [KwikIDFormBuilderModule, KwikIDFormRendererModule] });
2806
- /** @nocollapse */ KwikIDFormsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: KwikIDFormsModule, providers: [KwikIDRendererService], imports: [[
2916
+ /** @nocollapse */ KwikIDFormsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: KwikIDFormsModule, imports: [[
2807
2917
  CommonModule,
2808
2918
  FormsModule,
2809
2919
  ReactiveFormsModule,
@@ -2821,8 +2931,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
2821
2931
  KwikIDFormBuilderModule,
2822
2932
  KwikIDFormRendererModule
2823
2933
  ],
2824
- exports: [KwikIDFormBuilderModule, KwikIDFormRendererModule],
2825
- providers: [KwikIDRendererService]
2934
+ exports: [KwikIDFormBuilderModule, KwikIDFormRendererModule]
2826
2935
  }]
2827
2936
  }] });
2828
2937