@ruc-lib/metaform 2.0.5 → 2.0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2020/lib/ruclib-metaform/ruclib-metaform.component.mjs +10 -8
- package/esm2020/lib/ruclib-metaform.module.mjs +11 -7
- package/fesm2015/ruc-lib-metaform.mjs +14 -8
- package/fesm2015/ruc-lib-metaform.mjs.map +1 -1
- package/fesm2020/ruc-lib-metaform.mjs +14 -8
- package/fesm2020/ruc-lib-metaform.mjs.map +1 -1
- package/lib/ruclib-metaform.module.d.ts +3 -1
- package/package.json +1 -1
|
@@ -6,11 +6,13 @@ import * as i2 from "@angular/common";
|
|
|
6
6
|
import * as i3 from "@angular/forms";
|
|
7
7
|
import * as i4 from "@angular/material/button";
|
|
8
8
|
import * as i5 from "@angular/material/stepper";
|
|
9
|
-
import * as i6 from "
|
|
10
|
-
import * as i7 from "
|
|
11
|
-
import * as i8 from "../../components/ruc-meta-
|
|
12
|
-
import * as i9 from "../../components/ruc-meta-
|
|
13
|
-
import * as i10 from "../../components/ruc-
|
|
9
|
+
import * as i6 from "@ruc-lib/multi-select";
|
|
10
|
+
import * as i7 from "@ruc-lib/multi-file-upload";
|
|
11
|
+
import * as i8 from "../../components/ruc-meta-inputs/ruc-meta-inputs.component";
|
|
12
|
+
import * as i9 from "../../components/ruc-meta-radio-group/ruc-meta-radio-group.component";
|
|
13
|
+
import * as i10 from "../../components/ruc-meta-checkbox-group/ruc-meta-checkbox-group.component";
|
|
14
|
+
import * as i11 from "../../components/ruc-meta-select/ruc-meta-select.component";
|
|
15
|
+
import * as i12 from "../../components/ruc-text-area/ruc-text-area.component";
|
|
14
16
|
export class RuclibMetaformComponent {
|
|
15
17
|
constructor(service) {
|
|
16
18
|
this.service = service;
|
|
@@ -81,10 +83,10 @@ export class RuclibMetaformComponent {
|
|
|
81
83
|
}
|
|
82
84
|
}
|
|
83
85
|
RuclibMetaformComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RuclibMetaformComponent, deps: [{ token: i1.RucMetaFormService }], target: i0.ɵɵFactoryTarget.Component });
|
|
84
|
-
RuclibMetaformComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: RuclibMetaformComponent, selector: "uxp-ruclib-metaform", inputs: { rucInputData: "rucInputData", childForm: "childForm", customTheme: "customTheme", isChild: "isChild", selectedParentId: "selectedParentId" }, outputs: { rucEvent: "rucEvent", childRucEvent: "childRucEvent" }, ngImport: i0, template: "<form novalidate>\r\n <ng-container *ngFor=\"let dynamicField of formData; let j = index;\" [ngSwitch]=\"dynamicField?.fieldType\">\r\n <div [ngStyle] = \"{ 'width.%': dynamicField.sameRowColumnWidth - 2 }\" [ngClass]=\"dynamicField.sameRow === true ? 'margin-5 column-in-same-row' : 'margin-5 column-in-new-row'\" \r\n *ngIf=\"dynamicField.formType != 'stepper'\">\r\n \r\n <ng-template [ngSwitchCase]=\"'input'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.hasDependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId)\">\r\n <ruc-meta-inputs [customTheme] = \"customTheme\" [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-inputs>\r\n </div>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'radio'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-radio-group [customTheme] = \"customTheme\" [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-radio-group>\r\n </div>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'checkbox'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-checkbox-group [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-checkbox-group>\r\n </div>\r\n </ng-template>\r\n <ng-template class=\"\" [ngSwitchCase]=\"'select'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-select [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-select>\r\n </div>\r\n </ng-template>\r\n <ng-template class=\"\" [ngSwitchCase]=\"'textarea'\">\r\n <ruc-text-area [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-text-area>\r\n </ng-template>\r\n <!-- <ng-template [ngSwitchCase]=\"'rucMultiSelect'\">\r\n <uxp-ruclib-multi-select [rucInputData]=\"dynamicField?.rucMultiselectInput?.rucInputData\"\r\n [dataSource]=\"dynamicField?.rucMultiselectInput?.dataSource\" [customTheme]=\"customTheme\"\r\n (rucEvent)=\"passEvent($event)\"></uxp-ruclib-multi-select>\r\n </ng-template> -->\r\n <!-- <ng-template [ngSwitchCase]=\"'rucMultiFileUpload'\">\r\n <uxp-ruclib-multi-file-upload\r\n [rucInputData]=\"dynamicField?.rucMultiFileUploadInput?.rucInputData\" [customTheme]=\"customTheme\"\r\n (rucEvent)=\"passEvent($event,dynamicField)\"></uxp-ruclib-multi-file-upload>\r\n </ng-template> -->\r\n <div *ngIf=\"dynamicField.hasDependentFields && dynamicField.value\">\r\n <uxp-ruclib-metaform #dynamicField.id [rucInputData]=\"formData\" [childForm] =\"dynamicField.dependentFields\"\r\n [isChild]=\"true\" [selectedParentId] = \"dynamicField.selectedParentId\" (rucEvent)=\"passEvent($event,dynamicField.id)\"></uxp-ruclib-metaform>\r\n </div>\r\n \r\n </div>\r\n <div *ngIf=\"dynamicField.formType == 'stepper'\">\r\n <mat-stepper linear #stepper>\r\n <div *ngFor=\"let stapperField of dynamicField.stepper; let s = index;\" [ngSwitch]=\"stapperField?.fieldType\">\r\n <mat-step [stepControl]=\"stapperField.stepControl\" *ngIf=\"stapperField.stepControl != 'done'\">\r\n <ng-template matStepLabel>{{stapperField.stepperlabel}}</ng-template>\r\n <ng-container *ngFor=\"let stepperFormData of stapperField.stepperFormData; let j = index;\" [ngSwitch]=\"stepperFormData?.fieldType\">\r\n <div [ngStyle] = \"{ 'width.%': dynamicField.sameRowColumnWidth - 2 }\" [ngClass]=\"dynamicField.sameRow === true ? 'margin-5 column-in-same-row' : 'margin-5 column-in-new-row'\" \r\n >\r\n <ng-template [ngSwitchCase]=\"'input'\">\r\n <div>\r\n <ruc-meta-inputs [customTheme] = \"customTheme\" [rucInputData]=\"stepperFormData\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-inputs>\r\n </div>\r\n </ng-template>\r\n <ng-template class=\"\" [ngSwitchCase]=\"'textarea'\">\r\n <ruc-text-area [rucInputData]=\"stepperFormData\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-text-area>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'radio'\">\r\n <div>\r\n <ruc-meta-radio-group [customTheme] = \"customTheme\" [rucInputData]=\"stepperFormData\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-radio-group>\r\n </div>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'checkbox'\">\r\n <div >\r\n <ruc-meta-checkbox-group [rucInputData]=\"stepperFormData\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-checkbox-group>\r\n </div>\r\n </ng-template>\r\n <ng-template class=\"\" [ngSwitchCase]=\"'select'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-select [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-select>\r\n </div>\r\n </ng-template>\r\n </div>\r\n </ng-container>\r\n <div>\r\n <button mat-button matStepperPrevious *ngIf=\"s > 0\">Back</button>\r\n <button mat-button matStepperNext *ngIf=\"s< dynamicField.stepper.length\">Next</button>\r\n </div>\r\n </mat-step>\r\n <mat-step *ngIf=\"stapperField.stepControl == 'done'\">\r\n <ng-template matStepLabel>{{stapperField.stepControl}}</ng-template>\r\n <p>{{stapperField.stepperlabel}}</p>\r\n <div>\r\n <button mat-button matStepperPrevious>Back</button>\r\n <button mat-button (click)=\"stepper.reset()\">Reset</button>\r\n </div>\r\n </mat-step>\r\n </div>\r\n </mat-stepper>\r\n </div>\r\n </ng-container>\r\n <ng-container>\r\n <button mat-raised-button color=\"primary\" (click)=\"clearForm()\" *ngIf=\"!isChild\">Clear Form</button>\r\n </ng-container>\r\n \r\n</form>", styles: [".form-error{color:red}.column-in-same-row{float:left}.column-in-new-row{clear:left}.margin-5{margin:1%}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i4.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i5.MatStep, selector: "mat-step", inputs: ["color"], exportAs: ["matStep"] }, { kind: "directive", type: i5.MatStepLabel, selector: "[matStepLabel]" }, { kind: "component", type: i5.MatStepper, selector: "mat-stepper, mat-vertical-stepper, mat-horizontal-stepper, [matStepper]", inputs: ["selectedIndex", "disableRipple", "color", "labelPosition", "headerPosition", "animationDuration"], outputs: ["animationDone"], exportAs: ["matStepper", "matVerticalStepper", "matHorizontalStepper"] }, { kind: "directive", type: i5.MatStepperNext, selector: "button[matStepperNext]", inputs: ["type"] }, { kind: "directive", type: i5.MatStepperPrevious, selector: "button[matStepperPrevious]", inputs: ["type"] }, { kind: "component", type: RuclibMetaformComponent, selector: "uxp-ruclib-metaform", inputs: ["rucInputData", "childForm", "customTheme", "isChild", "selectedParentId"], outputs: ["rucEvent", "childRucEvent"] }, { kind: "component", type: i6.RucMetaInputsComponent, selector: "ruc-meta-inputs", inputs: ["rucInputData", "selectedParentId", "customTheme"], outputs: ["transferUserInput"] }, { kind: "component", type: i7.RucMetaRadioGroupComponent, selector: "ruc-meta-radio-group", inputs: ["rucInputData", "customTheme"], outputs: ["transferUserInput"] }, { kind: "component", type: i8.RucMetaCheckboxGroupComponent, selector: "ruc-meta-checkbox-group", inputs: ["rucInputData"], outputs: ["transferUserInput"] }, { kind: "component", type: i9.RucMetaSelectComponent, selector: "ruc-meta-select", inputs: ["rucInputData"], outputs: ["transferUserInput"] }, { kind: "component", type: i10.RucTextAreaComponent, selector: "ruc-text-area", inputs: ["rucInputData", "customTheme"], outputs: ["transferUserInput"] }] });
|
|
86
|
+
RuclibMetaformComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: RuclibMetaformComponent, selector: "uxp-ruclib-metaform", inputs: { rucInputData: "rucInputData", childForm: "childForm", customTheme: "customTheme", isChild: "isChild", selectedParentId: "selectedParentId" }, outputs: { rucEvent: "rucEvent", childRucEvent: "childRucEvent" }, ngImport: i0, template: "<form novalidate>\r\n <ng-container *ngFor=\"let dynamicField of formData; let j = index;\" [ngSwitch]=\"dynamicField?.fieldType\">\r\n <div [ngStyle] = \"{ 'width.%': dynamicField.sameRowColumnWidth - 2 }\" [ngClass]=\"dynamicField.sameRow === true ? 'margin-5 column-in-same-row' : 'margin-5 column-in-new-row'\" \r\n *ngIf=\"dynamicField.formType != 'stepper'\">\r\n \r\n <ng-template [ngSwitchCase]=\"'input'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.hasDependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId)\">\r\n <ruc-meta-inputs [customTheme] = \"customTheme\" [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-inputs>\r\n </div>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'radio'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-radio-group [customTheme] = \"customTheme\" [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-radio-group>\r\n </div>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'checkbox'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-checkbox-group [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-checkbox-group>\r\n </div>\r\n </ng-template>\r\n <ng-template class=\"\" [ngSwitchCase]=\"'select'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-select [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-select>\r\n </div>\r\n </ng-template>\r\n <ng-template class=\"\" [ngSwitchCase]=\"'textarea'\">\r\n <ruc-text-area [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-text-area>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'rucMultiSelect'\">\r\n <uxp-ruclib-multi-select [rucInputData]=\"dynamicField?.rucMultiselectInput?.rucInputData\"\r\n [dataSource]=\"dynamicField?.rucMultiselectInput?.dataSource\" [customTheme]=\"customTheme\"\r\n (rucEvent)=\"passEvent($event)\"></uxp-ruclib-multi-select>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'rucMultiFileUpload'\">\r\n <uxp-ruclib-multi-file-upload\r\n [rucInputData]=\"dynamicField?.rucMultiFileUploadInput?.rucInputData\" [customTheme]=\"customTheme\"\r\n (rucEvent)=\"passEvent($event,dynamicField)\"></uxp-ruclib-multi-file-upload>\r\n </ng-template>\r\n <div *ngIf=\"dynamicField.hasDependentFields && dynamicField.value\">\r\n <uxp-ruclib-metaform #dynamicField.id [rucInputData]=\"formData\" [childForm] =\"dynamicField.dependentFields\"\r\n [isChild]=\"true\" [selectedParentId] = \"dynamicField.selectedParentId\" (rucEvent)=\"passEvent($event,dynamicField.id)\"></uxp-ruclib-metaform>\r\n </div>\r\n \r\n </div>\r\n <div *ngIf=\"dynamicField.formType == 'stepper'\">\r\n <mat-stepper linear #stepper>\r\n <div *ngFor=\"let stapperField of dynamicField.stepper; let s = index;\" [ngSwitch]=\"stapperField?.fieldType\">\r\n <mat-step [stepControl]=\"stapperField.stepControl\" *ngIf=\"stapperField.stepControl != 'done'\">\r\n <ng-template matStepLabel>{{stapperField.stepperlabel}}</ng-template>\r\n <ng-container *ngFor=\"let stepperFormData of stapperField.stepperFormData; let j = index;\" [ngSwitch]=\"stepperFormData?.fieldType\">\r\n <div [ngStyle] = \"{ 'width.%': dynamicField.sameRowColumnWidth - 2 }\" [ngClass]=\"dynamicField.sameRow === true ? 'margin-5 column-in-same-row' : 'margin-5 column-in-new-row'\" \r\n >\r\n <ng-template [ngSwitchCase]=\"'input'\">\r\n <div>\r\n <ruc-meta-inputs [customTheme] = \"customTheme\" [rucInputData]=\"stepperFormData\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-inputs>\r\n </div>\r\n </ng-template>\r\n <ng-template class=\"\" [ngSwitchCase]=\"'textarea'\">\r\n <ruc-text-area [rucInputData]=\"stepperFormData\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-text-area>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'radio'\">\r\n <div>\r\n <ruc-meta-radio-group [customTheme] = \"customTheme\" [rucInputData]=\"stepperFormData\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-radio-group>\r\n </div>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'checkbox'\">\r\n <div >\r\n <ruc-meta-checkbox-group [rucInputData]=\"stepperFormData\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-checkbox-group>\r\n </div>\r\n </ng-template>\r\n <ng-template class=\"\" [ngSwitchCase]=\"'select'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-select [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-select>\r\n </div>\r\n </ng-template>\r\n </div>\r\n </ng-container>\r\n <div>\r\n <button mat-button matStepperPrevious *ngIf=\"s > 0\">Back</button>\r\n <button mat-button matStepperNext *ngIf=\"s< dynamicField.stepper.length\">Next</button>\r\n </div>\r\n </mat-step>\r\n <mat-step *ngIf=\"stapperField.stepControl == 'done'\">\r\n <ng-template matStepLabel>{{stapperField.stepControl}}</ng-template>\r\n <p>{{stapperField.stepperlabel}}</p>\r\n <div>\r\n <button mat-button matStepperPrevious>Back</button>\r\n <button mat-button (click)=\"stepper.reset()\">Reset</button>\r\n </div>\r\n </mat-step>\r\n </div>\r\n </mat-stepper>\r\n </div>\r\n </ng-container>\r\n <ng-container>\r\n <button mat-raised-button color=\"primary\" (click)=\"clearForm()\" *ngIf=\"!isChild\">Clear Form</button>\r\n </ng-container>\r\n \r\n</form>", styles: [".form-error{color:red}.column-in-same-row{float:left}.column-in-new-row{clear:left}.margin-5{margin:1%}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i4.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i5.MatStep, selector: "mat-step", inputs: ["color"], exportAs: ["matStep"] }, { kind: "directive", type: i5.MatStepLabel, selector: "[matStepLabel]" }, { kind: "component", type: i5.MatStepper, selector: "mat-stepper, mat-vertical-stepper, mat-horizontal-stepper, [matStepper]", inputs: ["selectedIndex", "disableRipple", "color", "labelPosition", "headerPosition", "animationDuration"], outputs: ["animationDone"], exportAs: ["matStepper", "matVerticalStepper", "matHorizontalStepper"] }, { kind: "directive", type: i5.MatStepperNext, selector: "button[matStepperNext]", inputs: ["type"] }, { kind: "directive", type: i5.MatStepperPrevious, selector: "button[matStepperPrevious]", inputs: ["type"] }, { kind: "component", type: i6.RuclibMultiSelectComponent, selector: "uxp-ruclib-multi-select", inputs: ["rucInputData", "customTheme", "dataSource"], outputs: ["rucEvent"] }, { kind: "component", type: i7.RuclibMultiFileUploadComponent, selector: "uxp-ruclib-multi-file-upload", inputs: ["rucInputData", "customTheme"], outputs: ["rucEvent"] }, { kind: "component", type: RuclibMetaformComponent, selector: "uxp-ruclib-metaform", inputs: ["rucInputData", "childForm", "customTheme", "isChild", "selectedParentId"], outputs: ["rucEvent", "childRucEvent"] }, { kind: "component", type: i8.RucMetaInputsComponent, selector: "ruc-meta-inputs", inputs: ["rucInputData", "selectedParentId", "customTheme"], outputs: ["transferUserInput"] }, { kind: "component", type: i9.RucMetaRadioGroupComponent, selector: "ruc-meta-radio-group", inputs: ["rucInputData", "customTheme"], outputs: ["transferUserInput"] }, { kind: "component", type: i10.RucMetaCheckboxGroupComponent, selector: "ruc-meta-checkbox-group", inputs: ["rucInputData"], outputs: ["transferUserInput"] }, { kind: "component", type: i11.RucMetaSelectComponent, selector: "ruc-meta-select", inputs: ["rucInputData"], outputs: ["transferUserInput"] }, { kind: "component", type: i12.RucTextAreaComponent, selector: "ruc-text-area", inputs: ["rucInputData", "customTheme"], outputs: ["transferUserInput"] }] });
|
|
85
87
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RuclibMetaformComponent, decorators: [{
|
|
86
88
|
type: Component,
|
|
87
|
-
args: [{ selector: 'uxp-ruclib-metaform', template: "<form novalidate>\r\n <ng-container *ngFor=\"let dynamicField of formData; let j = index;\" [ngSwitch]=\"dynamicField?.fieldType\">\r\n <div [ngStyle] = \"{ 'width.%': dynamicField.sameRowColumnWidth - 2 }\" [ngClass]=\"dynamicField.sameRow === true ? 'margin-5 column-in-same-row' : 'margin-5 column-in-new-row'\" \r\n *ngIf=\"dynamicField.formType != 'stepper'\">\r\n \r\n <ng-template [ngSwitchCase]=\"'input'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.hasDependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId)\">\r\n <ruc-meta-inputs [customTheme] = \"customTheme\" [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-inputs>\r\n </div>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'radio'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-radio-group [customTheme] = \"customTheme\" [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-radio-group>\r\n </div>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'checkbox'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-checkbox-group [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-checkbox-group>\r\n </div>\r\n </ng-template>\r\n <ng-template class=\"\" [ngSwitchCase]=\"'select'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-select [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-select>\r\n </div>\r\n </ng-template>\r\n <ng-template class=\"\" [ngSwitchCase]=\"'textarea'\">\r\n <ruc-text-area [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-text-area>\r\n </ng-template>\r\n
|
|
89
|
+
args: [{ selector: 'uxp-ruclib-metaform', template: "<form novalidate>\r\n <ng-container *ngFor=\"let dynamicField of formData; let j = index;\" [ngSwitch]=\"dynamicField?.fieldType\">\r\n <div [ngStyle] = \"{ 'width.%': dynamicField.sameRowColumnWidth - 2 }\" [ngClass]=\"dynamicField.sameRow === true ? 'margin-5 column-in-same-row' : 'margin-5 column-in-new-row'\" \r\n *ngIf=\"dynamicField.formType != 'stepper'\">\r\n \r\n <ng-template [ngSwitchCase]=\"'input'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.hasDependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId)\">\r\n <ruc-meta-inputs [customTheme] = \"customTheme\" [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-inputs>\r\n </div>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'radio'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-radio-group [customTheme] = \"customTheme\" [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-radio-group>\r\n </div>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'checkbox'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-checkbox-group [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-checkbox-group>\r\n </div>\r\n </ng-template>\r\n <ng-template class=\"\" [ngSwitchCase]=\"'select'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-select [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-select>\r\n </div>\r\n </ng-template>\r\n <ng-template class=\"\" [ngSwitchCase]=\"'textarea'\">\r\n <ruc-text-area [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-text-area>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'rucMultiSelect'\">\r\n <uxp-ruclib-multi-select [rucInputData]=\"dynamicField?.rucMultiselectInput?.rucInputData\"\r\n [dataSource]=\"dynamicField?.rucMultiselectInput?.dataSource\" [customTheme]=\"customTheme\"\r\n (rucEvent)=\"passEvent($event)\"></uxp-ruclib-multi-select>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'rucMultiFileUpload'\">\r\n <uxp-ruclib-multi-file-upload\r\n [rucInputData]=\"dynamicField?.rucMultiFileUploadInput?.rucInputData\" [customTheme]=\"customTheme\"\r\n (rucEvent)=\"passEvent($event,dynamicField)\"></uxp-ruclib-multi-file-upload>\r\n </ng-template>\r\n <div *ngIf=\"dynamicField.hasDependentFields && dynamicField.value\">\r\n <uxp-ruclib-metaform #dynamicField.id [rucInputData]=\"formData\" [childForm] =\"dynamicField.dependentFields\"\r\n [isChild]=\"true\" [selectedParentId] = \"dynamicField.selectedParentId\" (rucEvent)=\"passEvent($event,dynamicField.id)\"></uxp-ruclib-metaform>\r\n </div>\r\n \r\n </div>\r\n <div *ngIf=\"dynamicField.formType == 'stepper'\">\r\n <mat-stepper linear #stepper>\r\n <div *ngFor=\"let stapperField of dynamicField.stepper; let s = index;\" [ngSwitch]=\"stapperField?.fieldType\">\r\n <mat-step [stepControl]=\"stapperField.stepControl\" *ngIf=\"stapperField.stepControl != 'done'\">\r\n <ng-template matStepLabel>{{stapperField.stepperlabel}}</ng-template>\r\n <ng-container *ngFor=\"let stepperFormData of stapperField.stepperFormData; let j = index;\" [ngSwitch]=\"stepperFormData?.fieldType\">\r\n <div [ngStyle] = \"{ 'width.%': dynamicField.sameRowColumnWidth - 2 }\" [ngClass]=\"dynamicField.sameRow === true ? 'margin-5 column-in-same-row' : 'margin-5 column-in-new-row'\" \r\n >\r\n <ng-template [ngSwitchCase]=\"'input'\">\r\n <div>\r\n <ruc-meta-inputs [customTheme] = \"customTheme\" [rucInputData]=\"stepperFormData\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-inputs>\r\n </div>\r\n </ng-template>\r\n <ng-template class=\"\" [ngSwitchCase]=\"'textarea'\">\r\n <ruc-text-area [rucInputData]=\"stepperFormData\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-text-area>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'radio'\">\r\n <div>\r\n <ruc-meta-radio-group [customTheme] = \"customTheme\" [rucInputData]=\"stepperFormData\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-radio-group>\r\n </div>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'checkbox'\">\r\n <div >\r\n <ruc-meta-checkbox-group [rucInputData]=\"stepperFormData\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-checkbox-group>\r\n </div>\r\n </ng-template>\r\n <ng-template class=\"\" [ngSwitchCase]=\"'select'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-select [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-select>\r\n </div>\r\n </ng-template>\r\n </div>\r\n </ng-container>\r\n <div>\r\n <button mat-button matStepperPrevious *ngIf=\"s > 0\">Back</button>\r\n <button mat-button matStepperNext *ngIf=\"s< dynamicField.stepper.length\">Next</button>\r\n </div>\r\n </mat-step>\r\n <mat-step *ngIf=\"stapperField.stepControl == 'done'\">\r\n <ng-template matStepLabel>{{stapperField.stepControl}}</ng-template>\r\n <p>{{stapperField.stepperlabel}}</p>\r\n <div>\r\n <button mat-button matStepperPrevious>Back</button>\r\n <button mat-button (click)=\"stepper.reset()\">Reset</button>\r\n </div>\r\n </mat-step>\r\n </div>\r\n </mat-stepper>\r\n </div>\r\n </ng-container>\r\n <ng-container>\r\n <button mat-raised-button color=\"primary\" (click)=\"clearForm()\" *ngIf=\"!isChild\">Clear Form</button>\r\n </ng-container>\r\n \r\n</form>", styles: [".form-error{color:red}.column-in-same-row{float:left}.column-in-new-row{clear:left}.margin-5{margin:1%}\n"] }]
|
|
88
90
|
}], ctorParameters: function () { return [{ type: i1.RucMetaFormService }]; }, propDecorators: { rucEvent: [{
|
|
89
91
|
type: Output
|
|
90
92
|
}], childRucEvent: [{
|
|
@@ -100,4 +102,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
100
102
|
}], selectedParentId: [{
|
|
101
103
|
type: Input
|
|
102
104
|
}] } });
|
|
103
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVjbGliLW1ldGFmb3JtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvcnVjbGliLW1ldGFmb3JtL3J1Y2xpYi1tZXRhZm9ybS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9zcmMvbGliL3J1Y2xpYi1tZXRhZm9ybS9ydWNsaWItbWV0YWZvcm0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFVLFlBQVksRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUUxRixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQTs7Ozs7Ozs7Ozs7O0FBT3pFLE1BQU0sT0FBTyx1QkFBdUI7SUFZbEMsWUFBbUIsT0FBMkI7UUFBM0IsWUFBTyxHQUFQLE9BQU8sQ0FBb0I7UUFYcEMsYUFBUSxHQUFJLElBQUksWUFBWSxFQUFPLENBQUM7UUFDcEMsa0JBQWEsR0FBSSxJQUFJLFlBQVksRUFBTyxDQUFDO1FBQzFDLGlCQUFZLEdBQXFCLEVBQUUsQ0FBQTtJQVNNLENBQUM7SUFFbkQsUUFBUTtRQUNOLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ2pCLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztZQUM1QyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7U0FDcEI7YUFBTTtZQUNMLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQztTQUNoQztRQUNELElBQUksQ0FBQyw4QkFBOEIsR0FBRztZQUNwQyxrQkFBa0IsRUFBRSxJQUFJO1lBQ3hCLGdCQUFnQixFQUFFLElBQUk7WUFDdEIsS0FBSyxFQUFFLGFBQWE7WUFDcEIsU0FBUyxFQUFFLGFBQWE7WUFDeEIsU0FBUyxFQUFFLGFBQWE7U0FDekIsQ0FBQztJQUNKLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsU0FBUyxDQUFDLFNBQWMsRUFBRSxXQUFpQjtRQUN6QyxNQUFNLFdBQVcsR0FBRyxTQUFTLEVBQUUsV0FBVyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGtCQUFrQixDQUFDO1FBQ3JHLElBQUcsU0FBUyxFQUFFLFNBQVMsSUFBSSxhQUFhLEVBQUM7WUFDdkMsV0FBVyxDQUFDLEtBQUssR0FBRyxTQUFTLEVBQUUsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsU0FBUyxFQUFFLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLFNBQVMsRUFBRSxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO1NBQ2hIO1FBQ0QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxXQUFXLEVBQUUsY0FBYyxFQUFFLGFBQWEsRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUUsbUJBQW1CLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUM7SUFDeEosQ0FBQztJQUVEOztPQUVHO0lBQ0gsV0FBVztRQUNSLElBQUksQ0FBQyx1QkFBdUIsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxZQUFZLEVBQUU7YUFDbEUsU0FBUyxDQUNQLENBQUMsUUFBUSxFQUFDLEVBQUU7WUFDVixJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztZQUN6QixJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDO1FBQzVDLENBQUMsQ0FDRixDQUFDO0lBQ04sQ0FBQztJQUVEOzs7T0FHRztJQUNILGVBQWUsQ0FBQyxLQUFVO1FBQ3hCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsV0FBVyxFQUFFLGNBQWMsRUFBRSxhQUFhLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztJQUN2RyxDQUFDO0lBRUQ7O09BRUc7SUFDSCxTQUFTO1FBQ1AsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFnQixFQUFDLEVBQUU7WUFDcEMsQ0FBQyxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUM7UUFDZixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRDs7T0FFRztJQUNILFdBQVc7UUFDVCxJQUFJLElBQUksQ0FBQyx1QkFBdUIsRUFBRTtZQUNoQyxJQUFJLENBQUMsdUJBQXVCLENBQUMsV0FBVyxFQUFFLENBQUM7U0FDNUM7SUFDSCxDQUFDOztxSEFoRlUsdUJBQXVCO3lHQUF2Qix1QkFBdUIsc1JDVHBDLHltUEFrR08sa25FRHpGTSx1QkFBdUI7NEZBQXZCLHVCQUF1QjtrQkFMbkMsU0FBUzsrQkFDRSxxQkFBcUI7eUdBS3JCLFFBQVE7c0JBQWpCLE1BQU07Z0JBQ0csYUFBYTtzQkFBdEIsTUFBTTtnQkFDRSxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBRU4sV0FBVztzQkFEVixLQUFLO2dCQUVHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxnQkFBZ0I7c0JBQXhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPdXRwdXQsIE9uSW5pdCwgRXZlbnRFbWl0dGVyLCBPbkRlc3Ryb3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtNZXRhRm9ybUNvbmZpZ30gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9tZXRhRm9ybXNEZWZhdWx0JztcclxuaW1wb3J0IHsgUnVjTWV0YUZvcm1TZXJ2aWNlIH0gZnJvbSBcIi4uLy4uL3NlcnZpY2VzL3J1Yy1tZXRhLWZvcm0uc2VydmljZVwiXHJcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3V4cC1ydWNsaWItbWV0YWZvcm0nLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9ydWNsaWItbWV0YWZvcm0uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3J1Y2xpYi1tZXRhZm9ybS5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBSdWNsaWJNZXRhZm9ybUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCxPbkRlc3Ryb3l7XHJcbiAgQE91dHB1dCgpIHJ1Y0V2ZW50ICA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG4gIEBPdXRwdXQoKSBjaGlsZFJ1Y0V2ZW50ICA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG4gIEBJbnB1dCgpIHJ1Y0lucHV0RGF0YTogTWV0YUZvcm1Db25maWdbXSA9IFtdXHJcbiAgQElucHV0KCkgY2hpbGRGb3JtPzogTWV0YUZvcm1Db25maWdbXVxyXG4gIEBJbnB1dCgpXHJcbiAgY3VzdG9tVGhlbWUhOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgaXNDaGlsZD86IGJvb2xlYW47XHJcbiAgQElucHV0KCkgc2VsZWN0ZWRQYXJlbnRJZDogYW55O1xyXG4gIGlucHV0T2JqZWN0RGF0YU11bHRpRmlsZVVwbG9hZD86YW55O1xyXG4gIG1ldGFGb3JtU3Vic2NyaWJlSW5wdXRzOiBTdWJzY3JpcHRpb24gfCB1bmRlZmluZWQ7XHJcbiAgZm9ybURhdGE6IGFueVxyXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBzZXJ2aWNlOiBSdWNNZXRhRm9ybVNlcnZpY2UpIHsgfVxyXG4gIFxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgaWYgKCF0aGlzLmlzQ2hpbGQpIHtcclxuICAgICAgdGhpcy5zZXJ2aWNlLmdldEZvcm1Kc29uKHRoaXMucnVjSW5wdXREYXRhKTtcclxuICAgICAgdGhpcy5nZXRGb3JtSnNvbigpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5mb3JtRGF0YSA9IHRoaXMuY2hpbGRGb3JtO1xyXG4gICAgfVxyXG4gICAgdGhpcy5pbnB1dE9iamVjdERhdGFNdWx0aUZpbGVVcGxvYWQgPSB7XHJcbiAgICAgIG11bHRpZmlsZVNlbGVjdGlvbjogdHJ1ZSxcclxuICAgICAgZGlzcGxheVRodW1ibmFpbDogdHJ1ZSxcclxuICAgICAgbGFiZWw6ICdDaG9vc2UgRmlsZScsXHJcbiAgICAgIHVwbG9hZFVybDogJy9hcGkvdXBsb2FkJyxcclxuICAgICAgZGVsZXRlVXJsOiAnL2FwaS9kZWxldGUnLFxyXG4gICAgfTtcclxuICB9XHJcbiAgXHJcbiAgLyoqXHJcbiAgICogVGhlIHB1cnBvc2Ugb2YgdGhpcyBmdW5jdGlvbiB0byBwYXNzIGRhdGEgZnJvbSBkZXBlbmRlbnRGaWVsZHMgdG8gcGFyZW50IGZpZWxkXHJcbiAgICogQHBhcmFtIGdldE9iamVjdCBcclxuICAgKiBAcGFyYW0gaiBcclxuICAgKi9cclxuICBwYXNzRXZlbnQoZ2V0T2JqZWN0OiBhbnksIGZvcm1FbGVtZW50PzogYW55KSB7XHJcbiAgICBjb25zdCBldmVudE91dHB1dCA9IGdldE9iamVjdD8uZXZlbnRPdXRwdXQgPyBnZXRPYmplY3QuZXZlbnRPdXRwdXQgOiB0aGlzLnNlcnZpY2UuY3VycmVudEZvcm1FbGVtZW50O1xyXG4gICAgaWYoZ2V0T2JqZWN0Py5ldmVudE5hbWUgPT0gXCJvblVwbG9hZGluZ1wiKXtcclxuICAgICAgZm9ybUVsZW1lbnQudmFsdWUgPSBnZXRPYmplY3Q/LmV2ZW50T3V0cHV0Lm5hbWUgPyBnZXRPYmplY3Q/LmV2ZW50T3V0cHV0Lm5hbWUgOiBnZXRPYmplY3Q/LmV2ZW50T3V0cHV0WzBdLm5hbWU7XHJcbiAgICB9XHJcbiAgICB0aGlzLnJ1Y0V2ZW50LmVtaXQoeyAnZXZlbnROYW1lJzogJ21ldGFGb3JtRGF0YScsICdldmVudE91dHB1dCc6IGV2ZW50T3V0cHV0LCAnZm9ybURhdGEnOiB0aGlzLmZvcm1EYXRhLCAncnVjQ29tcG9uZW50RXZlbnQnOiBnZXRPYmplY3Q/LmV2ZW50TmFtZSB9KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEluaXRpYWwgZnVuY3Rpb24gdG8gbG9hZCBmb3IgZGF0YVxyXG4gICAqL1xyXG4gIGdldEZvcm1Kc29uKCkge1xyXG4gICAgIHRoaXMubWV0YUZvcm1TdWJzY3JpYmVJbnB1dHMgPSB0aGlzLnNlcnZpY2UuZm9ybURhdGEuYXNPYnNlcnZhYmxlKClcclxuICAgICAuc3Vic2NyaWJlKFxyXG4gICAgICAgIChmb3JtRGF0YSk9PntcclxuICAgICAgICAgIHRoaXMuZm9ybURhdGEgPSBmb3JtRGF0YTtcclxuICAgICAgICAgIHRoaXMuc2VydmljZS5tZXRhRm9ybURhdGEgPSB0aGlzLmZvcm1EYXRhO1xyXG4gICAgICAgIH0gICAgXHJcbiAgICAgICk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiAgVGhpcyBmdW5jdGlvbiBpcyB0byBlbWl0IGZvcm0gZGF0YVxyXG4gICAqIEBwYXJhbSBldmVudCBcclxuICAgKi9cclxuICBnZXRNZXRhRm9ybURhdGEoZXZlbnQ6IGFueSkge1xyXG4gICAgdGhpcy5ydWNFdmVudC5lbWl0KHsgJ2V2ZW50TmFtZSc6ICdtZXRhRm9ybURhdGEnLCAnZXZlbnRPdXRwdXQnOiBldmVudCwgJ2Zvcm1EYXRhJzogdGhpcy5mb3JtRGF0YSB9KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIENsZWFyIGZvcm0gZGF0YVxyXG4gICAqL1xyXG4gIGNsZWFyRm9ybSgpe1xyXG4gICAgdGhpcy5mb3JtRGF0YS5tYXAoKHg6TWV0YUZvcm1Db25maWcpPT57XHJcbiAgICAgIHgudmFsdWUgPSAnJztcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogRGVzdHJveSB0aGUgc3Vic2NyaWJlclxyXG4gICAqL1xyXG4gIG5nT25EZXN0cm95KCkge1xyXG4gICAgaWYgKHRoaXMubWV0YUZvcm1TdWJzY3JpYmVJbnB1dHMpIHtcclxuICAgICAgdGhpcy5tZXRhRm9ybVN1YnNjcmliZUlucHV0cy51bnN1YnNjcmliZSgpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCI8Zm9ybSBub3ZhbGlkYXRlPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgZHluYW1pY0ZpZWxkIG9mIGZvcm1EYXRhOyBsZXQgaiA9IGluZGV4O1wiIFtuZ1N3aXRjaF09XCJkeW5hbWljRmllbGQ/LmZpZWxkVHlwZVwiPlxyXG4gICAgICAgIDxkaXYgW25nU3R5bGVdID0gXCJ7ICd3aWR0aC4lJzogZHluYW1pY0ZpZWxkLnNhbWVSb3dDb2x1bW5XaWR0aCAtIDIgfVwiICBbbmdDbGFzc109XCJkeW5hbWljRmllbGQuc2FtZVJvdyA9PT0gdHJ1ZSA/ICdtYXJnaW4tNSBjb2x1bW4taW4tc2FtZS1yb3cnIDogJ21hcmdpbi01IGNvbHVtbi1pbi1uZXctcm93J1wiIFxyXG4gICAgICAgICpuZ0lmPVwiZHluYW1pY0ZpZWxkLmZvcm1UeXBlICE9ICdzdGVwcGVyJ1wiPlxyXG4gICAgICAgXHJcbiAgICAgICAgPG5nLXRlbXBsYXRlIFtuZ1N3aXRjaENhc2VdPVwiJ2lucHV0J1wiPlxyXG4gICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiKCFzZWxlY3RlZFBhcmVudElkICYmICFkeW5hbWljRmllbGQuaGFzRGVwZW5kZW50RmllbGRzKSB8fCAoc2VsZWN0ZWRQYXJlbnRJZCAmJiBzZWxlY3RlZFBhcmVudElkID09IGR5bmFtaWNGaWVsZC5kZXBlbmRlbnRGaWVsZFBhcmVudElkKVwiPlxyXG4gICAgICAgICAgICAgICAgPHJ1Yy1tZXRhLWlucHV0cyBbY3VzdG9tVGhlbWVdID0gXCJjdXN0b21UaGVtZVwiIFtydWNJbnB1dERhdGFdPVwiZHluYW1pY0ZpZWxkXCIgKHRyYW5zZmVyVXNlcklucHV0KT1cImdldE1ldGFGb3JtRGF0YSgkZXZlbnQpXCI+PC9ydWMtbWV0YS1pbnB1dHM+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgPG5nLXRlbXBsYXRlIFtuZ1N3aXRjaENhc2VdPVwiJ3JhZGlvJ1wiPlxyXG4gICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiKCFzZWxlY3RlZFBhcmVudElkICYmICFkeW5hbWljRmllbGQuZGVwZW5kZW50RmllbGRzKSB8fCAoc2VsZWN0ZWRQYXJlbnRJZCAmJiBzZWxlY3RlZFBhcmVudElkID09IGR5bmFtaWNGaWVsZC5kZXBlbmRlbnRGaWVsZFBhcmVudElkKSB8fCAoIXNlbGVjdGVkUGFyZW50SWQgJiYgZHluYW1pY0ZpZWxkLmRlcGVuZGVudEZpZWxkcyAmJiAhaXNDaGlsZClcIj5cclxuICAgICAgICAgICAgICAgIDxydWMtbWV0YS1yYWRpby1ncm91cCBbY3VzdG9tVGhlbWVdID0gXCJjdXN0b21UaGVtZVwiIFtydWNJbnB1dERhdGFdPVwiZHluYW1pY0ZpZWxkXCIgKHRyYW5zZmVyVXNlcklucHV0KT1cImdldE1ldGFGb3JtRGF0YSgkZXZlbnQpXCI+PC9ydWMtbWV0YS1yYWRpby1ncm91cD5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICA8bmctdGVtcGxhdGUgW25nU3dpdGNoQ2FzZV09XCInY2hlY2tib3gnXCI+XHJcbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCIoIXNlbGVjdGVkUGFyZW50SWQgJiYgIWR5bmFtaWNGaWVsZC5kZXBlbmRlbnRGaWVsZHMpIHx8IChzZWxlY3RlZFBhcmVudElkICYmIHNlbGVjdGVkUGFyZW50SWQgPT0gZHluYW1pY0ZpZWxkLmRlcGVuZGVudEZpZWxkUGFyZW50SWQpIHx8ICghc2VsZWN0ZWRQYXJlbnRJZCAmJiBkeW5hbWljRmllbGQuZGVwZW5kZW50RmllbGRzICYmICFpc0NoaWxkKVwiPlxyXG4gICAgICAgICAgICAgICAgPHJ1Yy1tZXRhLWNoZWNrYm94LWdyb3VwIFtydWNJbnB1dERhdGFdPVwiZHluYW1pY0ZpZWxkXCIgKHRyYW5zZmVyVXNlcklucHV0KT1cImdldE1ldGFGb3JtRGF0YSgkZXZlbnQpXCI+PC9ydWMtbWV0YS1jaGVja2JveC1ncm91cD5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICA8bmctdGVtcGxhdGUgY2xhc3M9XCJcIiBbbmdTd2l0Y2hDYXNlXT1cIidzZWxlY3QnXCI+XHJcbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCIoIXNlbGVjdGVkUGFyZW50SWQgJiYgIWR5bmFtaWNGaWVsZC5kZXBlbmRlbnRGaWVsZHMpIHx8IChzZWxlY3RlZFBhcmVudElkICYmIHNlbGVjdGVkUGFyZW50SWQgPT0gZHluYW1pY0ZpZWxkLmRlcGVuZGVudEZpZWxkUGFyZW50SWQpIHx8ICghc2VsZWN0ZWRQYXJlbnRJZCAmJiBkeW5hbWljRmllbGQuZGVwZW5kZW50RmllbGRzICYmICFpc0NoaWxkKVwiPlxyXG4gICAgICAgICAgICAgICAgPHJ1Yy1tZXRhLXNlbGVjdCBbcnVjSW5wdXREYXRhXT1cImR5bmFtaWNGaWVsZFwiICh0cmFuc2ZlclVzZXJJbnB1dCk9XCJnZXRNZXRhRm9ybURhdGEoJGV2ZW50KVwiPjwvcnVjLW1ldGEtc2VsZWN0PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgIDxuZy10ZW1wbGF0ZSBjbGFzcz1cIlwiIFtuZ1N3aXRjaENhc2VdPVwiJ3RleHRhcmVhJ1wiPlxyXG4gICAgICAgICAgICA8cnVjLXRleHQtYXJlYSBbcnVjSW5wdXREYXRhXT1cImR5bmFtaWNGaWVsZFwiICh0cmFuc2ZlclVzZXJJbnB1dCk9XCJnZXRNZXRhRm9ybURhdGEoJGV2ZW50KVwiPjwvcnVjLXRleHQtYXJlYT5cclxuICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgIDwhLS0gPG5nLXRlbXBsYXRlIFtuZ1N3aXRjaENhc2VdPVwiJ3J1Y011bHRpU2VsZWN0J1wiPlxyXG4gICAgICAgICAgICA8dXhwLXJ1Y2xpYi1tdWx0aS1zZWxlY3QgW3J1Y0lucHV0RGF0YV09XCJkeW5hbWljRmllbGQ/LnJ1Y011bHRpc2VsZWN0SW5wdXQ/LnJ1Y0lucHV0RGF0YVwiXHJcbiAgICAgICAgICAgIFtkYXRhU291cmNlXT1cImR5bmFtaWNGaWVsZD8ucnVjTXVsdGlzZWxlY3RJbnB1dD8uZGF0YVNvdXJjZVwiIFtjdXN0b21UaGVtZV09XCJjdXN0b21UaGVtZVwiXHJcbiAgICAgICAgICAgICAgICAocnVjRXZlbnQpPVwicGFzc0V2ZW50KCRldmVudClcIj48L3V4cC1ydWNsaWItbXVsdGktc2VsZWN0PlxyXG4gICAgICAgIDwvbmctdGVtcGxhdGU+IC0tPlxyXG4gICAgICAgIDwhLS0gPG5nLXRlbXBsYXRlIFtuZ1N3aXRjaENhc2VdPVwiJ3J1Y011bHRpRmlsZVVwbG9hZCdcIj5cclxuICAgICAgICAgICAgPHV4cC1ydWNsaWItbXVsdGktZmlsZS11cGxvYWRcclxuICAgICAgICAgICAgICAgIFtydWNJbnB1dERhdGFdPVwiZHluYW1pY0ZpZWxkPy5ydWNNdWx0aUZpbGVVcGxvYWRJbnB1dD8ucnVjSW5wdXREYXRhXCIgW2N1c3RvbVRoZW1lXT1cImN1c3RvbVRoZW1lXCJcclxuICAgICAgICAgICAgICAgIChydWNFdmVudCk9XCJwYXNzRXZlbnQoJGV2ZW50LGR5bmFtaWNGaWVsZClcIj48L3V4cC1ydWNsaWItbXVsdGktZmlsZS11cGxvYWQ+XHJcbiAgICAgICAgPC9uZy10ZW1wbGF0ZT4gLS0+XHJcbiAgICAgICAgPGRpdiAqbmdJZj1cImR5bmFtaWNGaWVsZC5oYXNEZXBlbmRlbnRGaWVsZHMgJiYgZHluYW1pY0ZpZWxkLnZhbHVlXCI+XHJcbiAgICAgICAgICAgIDx1eHAtcnVjbGliLW1ldGFmb3JtICNkeW5hbWljRmllbGQuaWQgW3J1Y0lucHV0RGF0YV09XCJmb3JtRGF0YVwiIFtjaGlsZEZvcm1dID1cImR5bmFtaWNGaWVsZC5kZXBlbmRlbnRGaWVsZHNcIlxyXG4gICAgICAgICAgICAgICAgICAgICBbaXNDaGlsZF09XCJ0cnVlXCIgW3NlbGVjdGVkUGFyZW50SWRdID0gXCJkeW5hbWljRmllbGQuc2VsZWN0ZWRQYXJlbnRJZFwiIChydWNFdmVudCk9XCJwYXNzRXZlbnQoJGV2ZW50LGR5bmFtaWNGaWVsZC5pZClcIj48L3V4cC1ydWNsaWItbWV0YWZvcm0+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgXHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgKm5nSWY9XCJkeW5hbWljRmllbGQuZm9ybVR5cGUgPT0gJ3N0ZXBwZXInXCI+XHJcbiAgICAgICAgICAgIDxtYXQtc3RlcHBlciBsaW5lYXIgI3N0ZXBwZXI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBzdGFwcGVyRmllbGQgb2YgZHluYW1pY0ZpZWxkLnN0ZXBwZXI7IGxldCBzID0gaW5kZXg7XCIgIFtuZ1N3aXRjaF09XCJzdGFwcGVyRmllbGQ/LmZpZWxkVHlwZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxtYXQtc3RlcCBbc3RlcENvbnRyb2xdPVwic3RhcHBlckZpZWxkLnN0ZXBDb250cm9sXCIgKm5nSWY9XCJzdGFwcGVyRmllbGQuc3RlcENvbnRyb2wgIT0gJ2RvbmUnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBtYXRTdGVwTGFiZWw+e3tzdGFwcGVyRmllbGQuc3RlcHBlcmxhYmVsfX08L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBzdGVwcGVyRm9ybURhdGEgb2Ygc3RhcHBlckZpZWxkLnN0ZXBwZXJGb3JtRGF0YTsgbGV0IGogPSBpbmRleDtcIiBbbmdTd2l0Y2hdPVwic3RlcHBlckZvcm1EYXRhPy5maWVsZFR5cGVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgW25nU3R5bGVdID0gXCJ7ICd3aWR0aC4lJzogZHluYW1pY0ZpZWxkLnNhbWVSb3dDb2x1bW5XaWR0aCAtIDIgfVwiICBbbmdDbGFzc109XCJkeW5hbWljRmllbGQuc2FtZVJvdyA9PT0gdHJ1ZSA/ICdtYXJnaW4tNSBjb2x1bW4taW4tc2FtZS1yb3cnIDogJ21hcmdpbi01IGNvbHVtbi1pbi1uZXctcm93J1wiIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlIFtuZ1N3aXRjaENhc2VdPVwiJ2lucHV0J1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxydWMtbWV0YS1pbnB1dHMgW2N1c3RvbVRoZW1lXSA9IFwiY3VzdG9tVGhlbWVcIiBbcnVjSW5wdXREYXRhXT1cInN0ZXBwZXJGb3JtRGF0YVwiICh0cmFuc2ZlclVzZXJJbnB1dCk9XCJnZXRNZXRhRm9ybURhdGEoJGV2ZW50KVwiPjwvcnVjLW1ldGEtaW5wdXRzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBjbGFzcz1cIlwiIFtuZ1N3aXRjaENhc2VdPVwiJ3RleHRhcmVhJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxydWMtdGV4dC1hcmVhIFtydWNJbnB1dERhdGFdPVwic3RlcHBlckZvcm1EYXRhXCIgKHRyYW5zZmVyVXNlcklucHV0KT1cImdldE1ldGFGb3JtRGF0YSgkZXZlbnQpXCI+PC9ydWMtdGV4dC1hcmVhPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBbbmdTd2l0Y2hDYXNlXT1cIidyYWRpbydcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cnVjLW1ldGEtcmFkaW8tZ3JvdXAgW2N1c3RvbVRoZW1lXSA9IFwiY3VzdG9tVGhlbWVcIiBbcnVjSW5wdXREYXRhXT1cInN0ZXBwZXJGb3JtRGF0YVwiICh0cmFuc2ZlclVzZXJJbnB1dCk9XCJnZXRNZXRhRm9ybURhdGEoJGV2ZW50KVwiPjwvcnVjLW1ldGEtcmFkaW8tZ3JvdXA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlIFtuZ1N3aXRjaENhc2VdPVwiJ2NoZWNrYm94J1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cnVjLW1ldGEtY2hlY2tib3gtZ3JvdXAgW3J1Y0lucHV0RGF0YV09XCJzdGVwcGVyRm9ybURhdGFcIiAodHJhbnNmZXJVc2VySW5wdXQpPVwiZ2V0TWV0YUZvcm1EYXRhKCRldmVudClcIj48L3J1Yy1tZXRhLWNoZWNrYm94LWdyb3VwPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBjbGFzcz1cIlwiIFtuZ1N3aXRjaENhc2VdPVwiJ3NlbGVjdCdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiKCFzZWxlY3RlZFBhcmVudElkICYmICFkeW5hbWljRmllbGQuZGVwZW5kZW50RmllbGRzKSB8fCAoc2VsZWN0ZWRQYXJlbnRJZCAmJiBzZWxlY3RlZFBhcmVudElkID09IGR5bmFtaWNGaWVsZC5kZXBlbmRlbnRGaWVsZFBhcmVudElkKSB8fCAoIXNlbGVjdGVkUGFyZW50SWQgJiYgZHluYW1pY0ZpZWxkLmRlcGVuZGVudEZpZWxkcyAmJiAhaXNDaGlsZClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJ1Yy1tZXRhLXNlbGVjdCBbcnVjSW5wdXREYXRhXT1cImR5bmFtaWNGaWVsZFwiICh0cmFuc2ZlclVzZXJJbnB1dCk9XCJnZXRNZXRhRm9ybURhdGEoJGV2ZW50KVwiPjwvcnVjLW1ldGEtc2VsZWN0PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBtYXQtYnV0dG9uIG1hdFN0ZXBwZXJQcmV2aW91cyAqbmdJZj1cInMgPiAwXCI+QmFjazwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBtYXQtYnV0dG9uIG1hdFN0ZXBwZXJOZXh0ICpuZ0lmPVwiczwgZHluYW1pY0ZpZWxkLnN0ZXBwZXIubGVuZ3RoXCI+TmV4dDwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvbWF0LXN0ZXA+XHJcbiAgICAgICAgICAgICAgICAgICAgPG1hdC1zdGVwICpuZ0lmPVwic3RhcHBlckZpZWxkLnN0ZXBDb250cm9sID09ICdkb25lJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgbWF0U3RlcExhYmVsPnt7c3RhcHBlckZpZWxkLnN0ZXBDb250cm9sfX08L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD57e3N0YXBwZXJGaWVsZC5zdGVwcGVybGFiZWx9fTwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIG1hdC1idXR0b24gbWF0U3RlcHBlclByZXZpb3VzPkJhY2s8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIG1hdC1idXR0b24gKGNsaWNrKT1cInN0ZXBwZXIucmVzZXQoKVwiPlJlc2V0PC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvbWF0LXN0ZXA+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9tYXQtc3RlcHBlcj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPG5nLWNvbnRhaW5lcj5cclxuICAgICAgICA8YnV0dG9uIG1hdC1yYWlzZWQtYnV0dG9uIGNvbG9yPVwicHJpbWFyeVwiIChjbGljayk9XCJjbGVhckZvcm0oKVwiICpuZ0lmPVwiIWlzQ2hpbGRcIj5DbGVhciBGb3JtPC9idXR0b24+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgIFxyXG48L2Zvcm0+Il19
|
|
105
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVjbGliLW1ldGFmb3JtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvcnVjbGliLW1ldGFmb3JtL3J1Y2xpYi1tZXRhZm9ybS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9zcmMvbGliL3J1Y2xpYi1tZXRhZm9ybS9ydWNsaWItbWV0YWZvcm0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFVLFlBQVksRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUUxRixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQTs7Ozs7Ozs7Ozs7Ozs7QUFPekUsTUFBTSxPQUFPLHVCQUF1QjtJQVlsQyxZQUFtQixPQUEyQjtRQUEzQixZQUFPLEdBQVAsT0FBTyxDQUFvQjtRQVhwQyxhQUFRLEdBQUksSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUNwQyxrQkFBYSxHQUFJLElBQUksWUFBWSxFQUFPLENBQUM7UUFDMUMsaUJBQVksR0FBcUIsRUFBRSxDQUFBO0lBU00sQ0FBQztJQUVuRCxRQUFRO1FBQ04sSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDakIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1lBQzVDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztTQUNwQjthQUFNO1lBQ0wsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDO1NBQ2hDO1FBQ0QsSUFBSSxDQUFDLDhCQUE4QixHQUFHO1lBQ3BDLGtCQUFrQixFQUFFLElBQUk7WUFDeEIsZ0JBQWdCLEVBQUUsSUFBSTtZQUN0QixLQUFLLEVBQUUsYUFBYTtZQUNwQixTQUFTLEVBQUUsYUFBYTtZQUN4QixTQUFTLEVBQUUsYUFBYTtTQUN6QixDQUFDO0lBQ0osQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxTQUFTLENBQUMsU0FBYyxFQUFFLFdBQWlCO1FBQ3pDLE1BQU0sV0FBVyxHQUFHLFNBQVMsRUFBRSxXQUFXLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsa0JBQWtCLENBQUM7UUFDckcsSUFBRyxTQUFTLEVBQUUsU0FBUyxJQUFJLGFBQWEsRUFBQztZQUN2QyxXQUFXLENBQUMsS0FBSyxHQUFHLFNBQVMsRUFBRSxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxTQUFTLEVBQUUsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsU0FBUyxFQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7U0FDaEg7UUFDRCxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxFQUFFLFdBQVcsRUFBRSxjQUFjLEVBQUUsYUFBYSxFQUFFLFdBQVcsRUFBRSxVQUFVLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRSxtQkFBbUIsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQztJQUN4SixDQUFDO0lBRUQ7O09BRUc7SUFDSCxXQUFXO1FBQ1IsSUFBSSxDQUFDLHVCQUF1QixHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLFlBQVksRUFBRTthQUNsRSxTQUFTLENBQ1AsQ0FBQyxRQUFRLEVBQUMsRUFBRTtZQUNWLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO1lBQ3pCLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUM7UUFDNUMsQ0FBQyxDQUNGLENBQUM7SUFDTixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsZUFBZSxDQUFDLEtBQVU7UUFDeEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxXQUFXLEVBQUUsY0FBYyxFQUFFLGFBQWEsRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO0lBQ3ZHLENBQUM7SUFFRDs7T0FFRztJQUNILFNBQVM7UUFDUCxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQWdCLEVBQUMsRUFBRTtZQUNwQyxDQUFDLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQztRQUNmLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVEOztPQUVHO0lBQ0gsV0FBVztRQUNULElBQUksSUFBSSxDQUFDLHVCQUF1QixFQUFFO1lBQ2hDLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxXQUFXLEVBQUUsQ0FBQztTQUM1QztJQUNILENBQUM7O3FIQWhGVSx1QkFBdUI7eUdBQXZCLHVCQUF1QixzUkNUcEMsdWxQQWtHTywyOEVEekZNLHVCQUF1Qjs0RkFBdkIsdUJBQXVCO2tCQUxuQyxTQUFTOytCQUNFLHFCQUFxQjt5R0FLckIsUUFBUTtzQkFBakIsTUFBTTtnQkFDRyxhQUFhO3NCQUF0QixNQUFNO2dCQUNFLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFFTixXQUFXO3NCQURWLEtBQUs7Z0JBRUcsT0FBTztzQkFBZixLQUFLO2dCQUNHLGdCQUFnQjtzQkFBeEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE91dHB1dCwgT25Jbml0LCBFdmVudEVtaXR0ZXIsIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge01ldGFGb3JtQ29uZmlnfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL21ldGFGb3Jtc0RlZmF1bHQnO1xyXG5pbXBvcnQgeyBSdWNNZXRhRm9ybVNlcnZpY2UgfSBmcm9tIFwiLi4vLi4vc2VydmljZXMvcnVjLW1ldGEtZm9ybS5zZXJ2aWNlXCJcclxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAndXhwLXJ1Y2xpYi1tZXRhZm9ybScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3J1Y2xpYi1tZXRhZm9ybS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vcnVjbGliLW1ldGFmb3JtLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIFJ1Y2xpYk1ldGFmb3JtQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LE9uRGVzdHJveXtcclxuICBAT3V0cHV0KCkgcnVjRXZlbnQgID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcbiAgQE91dHB1dCgpIGNoaWxkUnVjRXZlbnQgID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcbiAgQElucHV0KCkgcnVjSW5wdXREYXRhOiBNZXRhRm9ybUNvbmZpZ1tdID0gW11cclxuICBASW5wdXQoKSBjaGlsZEZvcm0/OiBNZXRhRm9ybUNvbmZpZ1tdXHJcbiAgQElucHV0KClcclxuICBjdXN0b21UaGVtZSE6IHN0cmluZztcclxuICBASW5wdXQoKSBpc0NoaWxkPzogYm9vbGVhbjtcclxuICBASW5wdXQoKSBzZWxlY3RlZFBhcmVudElkOiBhbnk7XHJcbiAgaW5wdXRPYmplY3REYXRhTXVsdGlGaWxlVXBsb2FkPzphbnk7XHJcbiAgbWV0YUZvcm1TdWJzY3JpYmVJbnB1dHM6IFN1YnNjcmlwdGlvbiB8IHVuZGVmaW5lZDtcclxuICBmb3JtRGF0YTogYW55XHJcbiAgY29uc3RydWN0b3IocHVibGljIHNlcnZpY2U6IFJ1Y01ldGFGb3JtU2VydmljZSkgeyB9XHJcbiAgXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICBpZiAoIXRoaXMuaXNDaGlsZCkge1xyXG4gICAgICB0aGlzLnNlcnZpY2UuZ2V0Rm9ybUpzb24odGhpcy5ydWNJbnB1dERhdGEpO1xyXG4gICAgICB0aGlzLmdldEZvcm1Kc29uKCk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmZvcm1EYXRhID0gdGhpcy5jaGlsZEZvcm07XHJcbiAgICB9XHJcbiAgICB0aGlzLmlucHV0T2JqZWN0RGF0YU11bHRpRmlsZVVwbG9hZCA9IHtcclxuICAgICAgbXVsdGlmaWxlU2VsZWN0aW9uOiB0cnVlLFxyXG4gICAgICBkaXNwbGF5VGh1bWJuYWlsOiB0cnVlLFxyXG4gICAgICBsYWJlbDogJ0Nob29zZSBGaWxlJyxcclxuICAgICAgdXBsb2FkVXJsOiAnL2FwaS91cGxvYWQnLFxyXG4gICAgICBkZWxldGVVcmw6ICcvYXBpL2RlbGV0ZScsXHJcbiAgICB9O1xyXG4gIH1cclxuICBcclxuICAvKipcclxuICAgKiBUaGUgcHVycG9zZSBvZiB0aGlzIGZ1bmN0aW9uIHRvIHBhc3MgZGF0YSBmcm9tIGRlcGVuZGVudEZpZWxkcyB0byBwYXJlbnQgZmllbGRcclxuICAgKiBAcGFyYW0gZ2V0T2JqZWN0IFxyXG4gICAqIEBwYXJhbSBqIFxyXG4gICAqL1xyXG4gIHBhc3NFdmVudChnZXRPYmplY3Q6IGFueSwgZm9ybUVsZW1lbnQ/OiBhbnkpIHtcclxuICAgIGNvbnN0IGV2ZW50T3V0cHV0ID0gZ2V0T2JqZWN0Py5ldmVudE91dHB1dCA/IGdldE9iamVjdC5ldmVudE91dHB1dCA6IHRoaXMuc2VydmljZS5jdXJyZW50Rm9ybUVsZW1lbnQ7XHJcbiAgICBpZihnZXRPYmplY3Q/LmV2ZW50TmFtZSA9PSBcIm9uVXBsb2FkaW5nXCIpe1xyXG4gICAgICBmb3JtRWxlbWVudC52YWx1ZSA9IGdldE9iamVjdD8uZXZlbnRPdXRwdXQubmFtZSA/IGdldE9iamVjdD8uZXZlbnRPdXRwdXQubmFtZSA6IGdldE9iamVjdD8uZXZlbnRPdXRwdXRbMF0ubmFtZTtcclxuICAgIH1cclxuICAgIHRoaXMucnVjRXZlbnQuZW1pdCh7ICdldmVudE5hbWUnOiAnbWV0YUZvcm1EYXRhJywgJ2V2ZW50T3V0cHV0JzogZXZlbnRPdXRwdXQsICdmb3JtRGF0YSc6IHRoaXMuZm9ybURhdGEsICdydWNDb21wb25lbnRFdmVudCc6IGdldE9iamVjdD8uZXZlbnROYW1lIH0pO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogSW5pdGlhbCBmdW5jdGlvbiB0byBsb2FkIGZvciBkYXRhXHJcbiAgICovXHJcbiAgZ2V0Rm9ybUpzb24oKSB7XHJcbiAgICAgdGhpcy5tZXRhRm9ybVN1YnNjcmliZUlucHV0cyA9IHRoaXMuc2VydmljZS5mb3JtRGF0YS5hc09ic2VydmFibGUoKVxyXG4gICAgIC5zdWJzY3JpYmUoXHJcbiAgICAgICAgKGZvcm1EYXRhKT0+e1xyXG4gICAgICAgICAgdGhpcy5mb3JtRGF0YSA9IGZvcm1EYXRhO1xyXG4gICAgICAgICAgdGhpcy5zZXJ2aWNlLm1ldGFGb3JtRGF0YSA9IHRoaXMuZm9ybURhdGE7XHJcbiAgICAgICAgfSAgICBcclxuICAgICAgKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqICBUaGlzIGZ1bmN0aW9uIGlzIHRvIGVtaXQgZm9ybSBkYXRhXHJcbiAgICogQHBhcmFtIGV2ZW50IFxyXG4gICAqL1xyXG4gIGdldE1ldGFGb3JtRGF0YShldmVudDogYW55KSB7XHJcbiAgICB0aGlzLnJ1Y0V2ZW50LmVtaXQoeyAnZXZlbnROYW1lJzogJ21ldGFGb3JtRGF0YScsICdldmVudE91dHB1dCc6IGV2ZW50LCAnZm9ybURhdGEnOiB0aGlzLmZvcm1EYXRhIH0pO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ2xlYXIgZm9ybSBkYXRhXHJcbiAgICovXHJcbiAgY2xlYXJGb3JtKCl7XHJcbiAgICB0aGlzLmZvcm1EYXRhLm1hcCgoeDpNZXRhRm9ybUNvbmZpZyk9PntcclxuICAgICAgeC52YWx1ZSA9ICcnO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBEZXN0cm95IHRoZSBzdWJzY3JpYmVyXHJcbiAgICovXHJcbiAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICBpZiAodGhpcy5tZXRhRm9ybVN1YnNjcmliZUlucHV0cykge1xyXG4gICAgICB0aGlzLm1ldGFGb3JtU3Vic2NyaWJlSW5wdXRzLnVuc3Vic2NyaWJlKCk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIjxmb3JtIG5vdmFsaWRhdGU+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBkeW5hbWljRmllbGQgb2YgZm9ybURhdGE7IGxldCBqID0gaW5kZXg7XCIgW25nU3dpdGNoXT1cImR5bmFtaWNGaWVsZD8uZmllbGRUeXBlXCI+XHJcbiAgICAgICAgPGRpdiBbbmdTdHlsZV0gPSBcInsgJ3dpZHRoLiUnOiBkeW5hbWljRmllbGQuc2FtZVJvd0NvbHVtbldpZHRoIC0gMiB9XCIgIFtuZ0NsYXNzXT1cImR5bmFtaWNGaWVsZC5zYW1lUm93ID09PSB0cnVlID8gJ21hcmdpbi01IGNvbHVtbi1pbi1zYW1lLXJvdycgOiAnbWFyZ2luLTUgY29sdW1uLWluLW5ldy1yb3cnXCIgXHJcbiAgICAgICAgKm5nSWY9XCJkeW5hbWljRmllbGQuZm9ybVR5cGUgIT0gJ3N0ZXBwZXInXCI+XHJcbiAgICAgICBcclxuICAgICAgICA8bmctdGVtcGxhdGUgW25nU3dpdGNoQ2FzZV09XCInaW5wdXQnXCI+XHJcbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCIoIXNlbGVjdGVkUGFyZW50SWQgJiYgIWR5bmFtaWNGaWVsZC5oYXNEZXBlbmRlbnRGaWVsZHMpIHx8IChzZWxlY3RlZFBhcmVudElkICYmIHNlbGVjdGVkUGFyZW50SWQgPT0gZHluYW1pY0ZpZWxkLmRlcGVuZGVudEZpZWxkUGFyZW50SWQpXCI+XHJcbiAgICAgICAgICAgICAgICA8cnVjLW1ldGEtaW5wdXRzIFtjdXN0b21UaGVtZV0gPSBcImN1c3RvbVRoZW1lXCIgW3J1Y0lucHV0RGF0YV09XCJkeW5hbWljRmllbGRcIiAodHJhbnNmZXJVc2VySW5wdXQpPVwiZ2V0TWV0YUZvcm1EYXRhKCRldmVudClcIj48L3J1Yy1tZXRhLWlucHV0cz5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICA8bmctdGVtcGxhdGUgW25nU3dpdGNoQ2FzZV09XCIncmFkaW8nXCI+XHJcbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCIoIXNlbGVjdGVkUGFyZW50SWQgJiYgIWR5bmFtaWNGaWVsZC5kZXBlbmRlbnRGaWVsZHMpIHx8IChzZWxlY3RlZFBhcmVudElkICYmIHNlbGVjdGVkUGFyZW50SWQgPT0gZHluYW1pY0ZpZWxkLmRlcGVuZGVudEZpZWxkUGFyZW50SWQpIHx8ICghc2VsZWN0ZWRQYXJlbnRJZCAmJiBkeW5hbWljRmllbGQuZGVwZW5kZW50RmllbGRzICYmICFpc0NoaWxkKVwiPlxyXG4gICAgICAgICAgICAgICAgPHJ1Yy1tZXRhLXJhZGlvLWdyb3VwIFtjdXN0b21UaGVtZV0gPSBcImN1c3RvbVRoZW1lXCIgW3J1Y0lucHV0RGF0YV09XCJkeW5hbWljRmllbGRcIiAodHJhbnNmZXJVc2VySW5wdXQpPVwiZ2V0TWV0YUZvcm1EYXRhKCRldmVudClcIj48L3J1Yy1tZXRhLXJhZGlvLWdyb3VwPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgIDxuZy10ZW1wbGF0ZSBbbmdTd2l0Y2hDYXNlXT1cIidjaGVja2JveCdcIj5cclxuICAgICAgICAgICAgPGRpdiAqbmdJZj1cIighc2VsZWN0ZWRQYXJlbnRJZCAmJiAhZHluYW1pY0ZpZWxkLmRlcGVuZGVudEZpZWxkcykgfHwgKHNlbGVjdGVkUGFyZW50SWQgJiYgc2VsZWN0ZWRQYXJlbnRJZCA9PSBkeW5hbWljRmllbGQuZGVwZW5kZW50RmllbGRQYXJlbnRJZCkgfHwgKCFzZWxlY3RlZFBhcmVudElkICYmIGR5bmFtaWNGaWVsZC5kZXBlbmRlbnRGaWVsZHMgJiYgIWlzQ2hpbGQpXCI+XHJcbiAgICAgICAgICAgICAgICA8cnVjLW1ldGEtY2hlY2tib3gtZ3JvdXAgW3J1Y0lucHV0RGF0YV09XCJkeW5hbWljRmllbGRcIiAodHJhbnNmZXJVc2VySW5wdXQpPVwiZ2V0TWV0YUZvcm1EYXRhKCRldmVudClcIj48L3J1Yy1tZXRhLWNoZWNrYm94LWdyb3VwPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgIDxuZy10ZW1wbGF0ZSBjbGFzcz1cIlwiIFtuZ1N3aXRjaENhc2VdPVwiJ3NlbGVjdCdcIj5cclxuICAgICAgICAgICAgPGRpdiAqbmdJZj1cIighc2VsZWN0ZWRQYXJlbnRJZCAmJiAhZHluYW1pY0ZpZWxkLmRlcGVuZGVudEZpZWxkcykgfHwgKHNlbGVjdGVkUGFyZW50SWQgJiYgc2VsZWN0ZWRQYXJlbnRJZCA9PSBkeW5hbWljRmllbGQuZGVwZW5kZW50RmllbGRQYXJlbnRJZCkgfHwgKCFzZWxlY3RlZFBhcmVudElkICYmIGR5bmFtaWNGaWVsZC5kZXBlbmRlbnRGaWVsZHMgJiYgIWlzQ2hpbGQpXCI+XHJcbiAgICAgICAgICAgICAgICA8cnVjLW1ldGEtc2VsZWN0IFtydWNJbnB1dERhdGFdPVwiZHluYW1pY0ZpZWxkXCIgKHRyYW5zZmVyVXNlcklucHV0KT1cImdldE1ldGFGb3JtRGF0YSgkZXZlbnQpXCI+PC9ydWMtbWV0YS1zZWxlY3Q+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgPG5nLXRlbXBsYXRlIGNsYXNzPVwiXCIgW25nU3dpdGNoQ2FzZV09XCIndGV4dGFyZWEnXCI+XHJcbiAgICAgICAgICAgIDxydWMtdGV4dC1hcmVhIFtydWNJbnB1dERhdGFdPVwiZHluYW1pY0ZpZWxkXCIgKHRyYW5zZmVyVXNlcklucHV0KT1cImdldE1ldGFGb3JtRGF0YSgkZXZlbnQpXCI+PC9ydWMtdGV4dC1hcmVhPlxyXG4gICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgPG5nLXRlbXBsYXRlIFtuZ1N3aXRjaENhc2VdPVwiJ3J1Y011bHRpU2VsZWN0J1wiPlxyXG4gICAgICAgICAgICA8dXhwLXJ1Y2xpYi1tdWx0aS1zZWxlY3QgW3J1Y0lucHV0RGF0YV09XCJkeW5hbWljRmllbGQ/LnJ1Y011bHRpc2VsZWN0SW5wdXQ/LnJ1Y0lucHV0RGF0YVwiXHJcbiAgICAgICAgICAgIFtkYXRhU291cmNlXT1cImR5bmFtaWNGaWVsZD8ucnVjTXVsdGlzZWxlY3RJbnB1dD8uZGF0YVNvdXJjZVwiIFtjdXN0b21UaGVtZV09XCJjdXN0b21UaGVtZVwiXHJcbiAgICAgICAgICAgICAgICAocnVjRXZlbnQpPVwicGFzc0V2ZW50KCRldmVudClcIj48L3V4cC1ydWNsaWItbXVsdGktc2VsZWN0PlxyXG4gICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgPG5nLXRlbXBsYXRlIFtuZ1N3aXRjaENhc2VdPVwiJ3J1Y011bHRpRmlsZVVwbG9hZCdcIj5cclxuICAgICAgICAgICAgPHV4cC1ydWNsaWItbXVsdGktZmlsZS11cGxvYWRcclxuICAgICAgICAgICAgICAgIFtydWNJbnB1dERhdGFdPVwiZHluYW1pY0ZpZWxkPy5ydWNNdWx0aUZpbGVVcGxvYWRJbnB1dD8ucnVjSW5wdXREYXRhXCIgW2N1c3RvbVRoZW1lXT1cImN1c3RvbVRoZW1lXCJcclxuICAgICAgICAgICAgICAgIChydWNFdmVudCk9XCJwYXNzRXZlbnQoJGV2ZW50LGR5bmFtaWNGaWVsZClcIj48L3V4cC1ydWNsaWItbXVsdGktZmlsZS11cGxvYWQ+XHJcbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICA8ZGl2ICpuZ0lmPVwiZHluYW1pY0ZpZWxkLmhhc0RlcGVuZGVudEZpZWxkcyAmJiBkeW5hbWljRmllbGQudmFsdWVcIj5cclxuICAgICAgICAgICAgPHV4cC1ydWNsaWItbWV0YWZvcm0gI2R5bmFtaWNGaWVsZC5pZCBbcnVjSW5wdXREYXRhXT1cImZvcm1EYXRhXCIgW2NoaWxkRm9ybV0gPVwiZHluYW1pY0ZpZWxkLmRlcGVuZGVudEZpZWxkc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgIFtpc0NoaWxkXT1cInRydWVcIiBbc2VsZWN0ZWRQYXJlbnRJZF0gPSBcImR5bmFtaWNGaWVsZC5zZWxlY3RlZFBhcmVudElkXCIgKHJ1Y0V2ZW50KT1cInBhc3NFdmVudCgkZXZlbnQsZHluYW1pY0ZpZWxkLmlkKVwiPjwvdXhwLXJ1Y2xpYi1tZXRhZm9ybT5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICBcclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiAqbmdJZj1cImR5bmFtaWNGaWVsZC5mb3JtVHlwZSA9PSAnc3RlcHBlcidcIj5cclxuICAgICAgICAgICAgPG1hdC1zdGVwcGVyIGxpbmVhciAjc3RlcHBlcj5cclxuICAgICAgICAgICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IHN0YXBwZXJGaWVsZCBvZiBkeW5hbWljRmllbGQuc3RlcHBlcjsgbGV0IHMgPSBpbmRleDtcIiAgW25nU3dpdGNoXT1cInN0YXBwZXJGaWVsZD8uZmllbGRUeXBlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPG1hdC1zdGVwIFtzdGVwQ29udHJvbF09XCJzdGFwcGVyRmllbGQuc3RlcENvbnRyb2xcIiAqbmdJZj1cInN0YXBwZXJGaWVsZC5zdGVwQ29udHJvbCAhPSAnZG9uZSdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlIG1hdFN0ZXBMYWJlbD57e3N0YXBwZXJGaWVsZC5zdGVwcGVybGFiZWx9fTwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IHN0ZXBwZXJGb3JtRGF0YSBvZiBzdGFwcGVyRmllbGQuc3RlcHBlckZvcm1EYXRhOyBsZXQgaiA9IGluZGV4O1wiIFtuZ1N3aXRjaF09XCJzdGVwcGVyRm9ybURhdGE/LmZpZWxkVHlwZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBbbmdTdHlsZV0gPSBcInsgJ3dpZHRoLiUnOiBkeW5hbWljRmllbGQuc2FtZVJvd0NvbHVtbldpZHRoIC0gMiB9XCIgIFtuZ0NsYXNzXT1cImR5bmFtaWNGaWVsZC5zYW1lUm93ID09PSB0cnVlID8gJ21hcmdpbi01IGNvbHVtbi1pbi1zYW1lLXJvdycgOiAnbWFyZ2luLTUgY29sdW1uLWluLW5ldy1yb3cnXCIgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgW25nU3dpdGNoQ2FzZV09XCInaW5wdXQnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJ1Yy1tZXRhLWlucHV0cyBbY3VzdG9tVGhlbWVdID0gXCJjdXN0b21UaGVtZVwiIFtydWNJbnB1dERhdGFdPVwic3RlcHBlckZvcm1EYXRhXCIgKHRyYW5zZmVyVXNlcklucHV0KT1cImdldE1ldGFGb3JtRGF0YSgkZXZlbnQpXCI+PC9ydWMtbWV0YS1pbnB1dHM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlIGNsYXNzPVwiXCIgW25nU3dpdGNoQ2FzZV09XCIndGV4dGFyZWEnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJ1Yy10ZXh0LWFyZWEgW3J1Y0lucHV0RGF0YV09XCJzdGVwcGVyRm9ybURhdGFcIiAodHJhbnNmZXJVc2VySW5wdXQpPVwiZ2V0TWV0YUZvcm1EYXRhKCRldmVudClcIj48L3J1Yy10ZXh0LWFyZWE+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlIFtuZ1N3aXRjaENhc2VdPVwiJ3JhZGlvJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxydWMtbWV0YS1yYWRpby1ncm91cCBbY3VzdG9tVGhlbWVdID0gXCJjdXN0b21UaGVtZVwiIFtydWNJbnB1dERhdGFdPVwic3RlcHBlckZvcm1EYXRhXCIgKHRyYW5zZmVyVXNlcklucHV0KT1cImdldE1ldGFGb3JtRGF0YSgkZXZlbnQpXCI+PC9ydWMtbWV0YS1yYWRpby1ncm91cD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgW25nU3dpdGNoQ2FzZV09XCInY2hlY2tib3gnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxydWMtbWV0YS1jaGVja2JveC1ncm91cCBbcnVjSW5wdXREYXRhXT1cInN0ZXBwZXJGb3JtRGF0YVwiICh0cmFuc2ZlclVzZXJJbnB1dCk9XCJnZXRNZXRhRm9ybURhdGEoJGV2ZW50KVwiPjwvcnVjLW1ldGEtY2hlY2tib3gtZ3JvdXA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlIGNsYXNzPVwiXCIgW25nU3dpdGNoQ2FzZV09XCInc2VsZWN0J1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCIoIXNlbGVjdGVkUGFyZW50SWQgJiYgIWR5bmFtaWNGaWVsZC5kZXBlbmRlbnRGaWVsZHMpIHx8IChzZWxlY3RlZFBhcmVudElkICYmIHNlbGVjdGVkUGFyZW50SWQgPT0gZHluYW1pY0ZpZWxkLmRlcGVuZGVudEZpZWxkUGFyZW50SWQpIHx8ICghc2VsZWN0ZWRQYXJlbnRJZCAmJiBkeW5hbWljRmllbGQuZGVwZW5kZW50RmllbGRzICYmICFpc0NoaWxkKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cnVjLW1ldGEtc2VsZWN0IFtydWNJbnB1dERhdGFdPVwiZHluYW1pY0ZpZWxkXCIgKHRyYW5zZmVyVXNlcklucHV0KT1cImdldE1ldGFGb3JtRGF0YSgkZXZlbnQpXCI+PC9ydWMtbWV0YS1zZWxlY3Q+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIG1hdC1idXR0b24gbWF0U3RlcHBlclByZXZpb3VzICpuZ0lmPVwicyA+IDBcIj5CYWNrPC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIG1hdC1idXR0b24gbWF0U3RlcHBlck5leHQgKm5nSWY9XCJzPCBkeW5hbWljRmllbGQuc3RlcHBlci5sZW5ndGhcIj5OZXh0PC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9tYXQtc3RlcD5cclxuICAgICAgICAgICAgICAgICAgICA8bWF0LXN0ZXAgKm5nSWY9XCJzdGFwcGVyRmllbGQuc3RlcENvbnRyb2wgPT0gJ2RvbmUnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBtYXRTdGVwTGFiZWw+e3tzdGFwcGVyRmllbGQuc3RlcENvbnRyb2x9fTwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPnt7c3RhcHBlckZpZWxkLnN0ZXBwZXJsYWJlbH19PC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gbWF0LWJ1dHRvbiBtYXRTdGVwcGVyUHJldmlvdXM+QmFjazwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gbWF0LWJ1dHRvbiAoY2xpY2spPVwic3RlcHBlci5yZXNldCgpXCI+UmVzZXQ8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9tYXQtc3RlcD5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L21hdC1zdGVwcGVyPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcbiAgICA8bmctY29udGFpbmVyPlxyXG4gICAgICAgIDxidXR0b24gbWF0LXJhaXNlZC1idXR0b24gY29sb3I9XCJwcmltYXJ5XCIgKGNsaWNrKT1cImNsZWFyRm9ybSgpXCIgKm5nSWY9XCIhaXNDaGlsZFwiPkNsZWFyIEZvcm08L2J1dHRvbj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgXHJcbjwvZm9ybT4iXX0=
|
|
@@ -19,9 +19,9 @@ import { RucMetaRadioGroupComponent } from '../components/ruc-meta-radio-group/r
|
|
|
19
19
|
import { RucMetaCheckboxGroupComponent } from '../components/ruc-meta-checkbox-group/ruc-meta-checkbox-group.component';
|
|
20
20
|
import { RucMetaSelectComponent } from '../components/ruc-meta-select/ruc-meta-select.component';
|
|
21
21
|
import { RucTextAreaComponent } from '../components/ruc-text-area/ruc-text-area.component';
|
|
22
|
+
import { RuclibMultiSelectModule } from '@ruc-lib/multi-select';
|
|
23
|
+
import { RuclibMultiFileUploadModule } from '@ruc-lib/multi-file-upload';
|
|
22
24
|
import * as i0 from "@angular/core";
|
|
23
|
-
// import {RuclibMultiSelectModule} from '@ruc-lib/multi-select';
|
|
24
|
-
// import {RuclibMultiFileUploadModule} from '@ruc-lib/multi-file-upload';
|
|
25
25
|
export class RuclibMetaformModule {
|
|
26
26
|
}
|
|
27
27
|
RuclibMetaformModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RuclibMetaformModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
@@ -42,7 +42,9 @@ RuclibMetaformModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", ve
|
|
|
42
42
|
MatButtonModule,
|
|
43
43
|
MatTooltipModule,
|
|
44
44
|
TextFieldModule,
|
|
45
|
-
MatStepperModule
|
|
45
|
+
MatStepperModule,
|
|
46
|
+
RuclibMultiSelectModule,
|
|
47
|
+
RuclibMultiFileUploadModule], exports: [RuclibMetaformComponent] });
|
|
46
48
|
RuclibMetaformModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RuclibMetaformModule, providers: [
|
|
47
49
|
RucMetaFormService
|
|
48
50
|
], imports: [CommonModule,
|
|
@@ -57,7 +59,9 @@ RuclibMetaformModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", ve
|
|
|
57
59
|
MatButtonModule,
|
|
58
60
|
MatTooltipModule,
|
|
59
61
|
TextFieldModule,
|
|
60
|
-
MatStepperModule
|
|
62
|
+
MatStepperModule,
|
|
63
|
+
RuclibMultiSelectModule,
|
|
64
|
+
RuclibMultiFileUploadModule] });
|
|
61
65
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RuclibMetaformModule, decorators: [{
|
|
62
66
|
type: NgModule,
|
|
63
67
|
args: [{
|
|
@@ -74,8 +78,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
74
78
|
MatTooltipModule,
|
|
75
79
|
TextFieldModule,
|
|
76
80
|
MatStepperModule,
|
|
77
|
-
|
|
78
|
-
|
|
81
|
+
RuclibMultiSelectModule,
|
|
82
|
+
RuclibMultiFileUploadModule
|
|
79
83
|
],
|
|
80
84
|
declarations: [
|
|
81
85
|
RuclibMetaformComponent,
|
|
@@ -93,4 +97,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
93
97
|
]
|
|
94
98
|
}]
|
|
95
99
|
}] });
|
|
96
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
100
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVjbGliLW1ldGFmb3JtLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvcnVjbGliLW1ldGFmb3JtLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUN0RixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDdkUsT0FBTyxFQUFFLGVBQWUsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBQzFELE9BQU8sRUFBRSxnQkFBZ0IsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQzVELE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQzNELE9BQU8sRUFBRSxlQUFlLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUN2RSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSx5REFBeUQsQ0FBQztBQUNqRyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxtRUFBbUUsQ0FBQztBQUMvRyxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSx5RUFBeUUsQ0FBQztBQUN4SCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSx5REFBeUQsQ0FBQztBQUNqRyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxxREFBcUQsQ0FBQztBQUUzRixPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUM5RCxPQUFPLEVBQUMsMkJBQTJCLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQzs7QUFtQ3ZFLE1BQU0sT0FBTyxvQkFBb0I7O2tIQUFwQixvQkFBb0I7bUhBQXBCLG9CQUFvQixpQkFkN0IsdUJBQXVCO1FBQ3ZCLHNCQUFzQjtRQUN0QiwwQkFBMEI7UUFDMUIsNkJBQTZCO1FBQzdCLHNCQUFzQjtRQUN0QixvQkFBb0IsYUF0QlosWUFBWTtRQUNwQixnQkFBZ0I7UUFDaEIsV0FBVztRQUNYLGtCQUFrQjtRQUNsQixjQUFjO1FBQ2QsY0FBYztRQUNkLGlCQUFpQjtRQUNqQixlQUFlO1FBQ2YscUJBQXFCO1FBQ3JCLGVBQWU7UUFDZixnQkFBZ0I7UUFDaEIsZUFBZTtRQUNmLGdCQUFnQjtRQUNoQix1QkFBdUI7UUFDdkIsMkJBQTJCLGFBVzNCLHVCQUF1QjttSEFNZCxvQkFBb0IsYUFKcEI7UUFDVCxrQkFBa0I7S0FDbkIsWUE3QlMsWUFBWTtRQUNwQixnQkFBZ0I7UUFDaEIsV0FBVztRQUNYLGtCQUFrQjtRQUNsQixjQUFjO1FBQ2QsY0FBYztRQUNkLGlCQUFpQjtRQUNqQixlQUFlO1FBQ2YscUJBQXFCO1FBQ3JCLGVBQWU7UUFDZixnQkFBZ0I7UUFDaEIsZUFBZTtRQUNmLGdCQUFnQjtRQUNoQix1QkFBdUI7UUFDdkIsMkJBQTJCOzRGQWlCbEIsb0JBQW9CO2tCQWhDaEMsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyxZQUFZO3dCQUNwQixnQkFBZ0I7d0JBQ2hCLFdBQVc7d0JBQ1gsa0JBQWtCO3dCQUNsQixjQUFjO3dCQUNkLGNBQWM7d0JBQ2QsaUJBQWlCO3dCQUNqQixlQUFlO3dCQUNmLHFCQUFxQjt3QkFDckIsZUFBZTt3QkFDZixnQkFBZ0I7d0JBQ2hCLGVBQWU7d0JBQ2YsZ0JBQWdCO3dCQUNoQix1QkFBdUI7d0JBQ3ZCLDJCQUEyQjtxQkFDNUI7b0JBQ0QsWUFBWSxFQUFFO3dCQUNaLHVCQUF1Qjt3QkFDdkIsc0JBQXNCO3dCQUN0QiwwQkFBMEI7d0JBQzFCLDZCQUE2Qjt3QkFDN0Isc0JBQXNCO3dCQUN0QixvQkFBb0I7cUJBQ3JCO29CQUNELE9BQU8sRUFBRTt3QkFDUCx1QkFBdUI7cUJBQ3hCO29CQUNELFNBQVMsRUFBRTt3QkFDVCxrQkFBa0I7cUJBQ25CO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgUnVjbGliTWV0YWZvcm1Db21wb25lbnQgfSBmcm9tICcuL3J1Y2xpYi1tZXRhZm9ybS9ydWNsaWItbWV0YWZvcm0uY29tcG9uZW50JztcclxuaW1wb3J0IHsgSHR0cENsaWVudE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IE1hdEZvcm1GaWVsZE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2Zvcm0tZmllbGQnO1xyXG5pbXBvcnQgeyBNYXRJbnB1dE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2lucHV0JztcclxuaW1wb3J0IHsgTWF0UmFkaW9Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9yYWRpbyc7XHJcbmltcG9ydCB7IE1hdENoZWNrYm94TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY2hlY2tib3gnO1xyXG5pbXBvcnQgeyBNYXRTZWxlY3RNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zZWxlY3QnO1xyXG5pbXBvcnQgeyBNYXRBdXRvY29tcGxldGVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9hdXRvY29tcGxldGUnO1xyXG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XHJcbmltcG9ydCB7IE1hdFRvb2x0aXBNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2x0aXAnO1xyXG5pbXBvcnQge01hdFN0ZXBwZXJNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3N0ZXBwZXInO1xyXG5pbXBvcnQgeyBUZXh0RmllbGRNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2Nkay90ZXh0LWZpZWxkJztcclxuaW1wb3J0IHsgUnVjTWV0YUZvcm1TZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvcnVjLW1ldGEtZm9ybS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgUnVjTWV0YUlucHV0c0NvbXBvbmVudCB9IGZyb20gJy4uL2NvbXBvbmVudHMvcnVjLW1ldGEtaW5wdXRzL3J1Yy1tZXRhLWlucHV0cy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBSdWNNZXRhUmFkaW9Hcm91cENvbXBvbmVudCB9IGZyb20gJy4uL2NvbXBvbmVudHMvcnVjLW1ldGEtcmFkaW8tZ3JvdXAvcnVjLW1ldGEtcmFkaW8tZ3JvdXAuY29tcG9uZW50JztcclxuaW1wb3J0IHsgUnVjTWV0YUNoZWNrYm94R3JvdXBDb21wb25lbnQgfSBmcm9tICcuLi9jb21wb25lbnRzL3J1Yy1tZXRhLWNoZWNrYm94LWdyb3VwL3J1Yy1tZXRhLWNoZWNrYm94LWdyb3VwLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFJ1Y01ldGFTZWxlY3RDb21wb25lbnQgfSBmcm9tICcuLi9jb21wb25lbnRzL3J1Yy1tZXRhLXNlbGVjdC9ydWMtbWV0YS1zZWxlY3QuY29tcG9uZW50JztcclxuaW1wb3J0IHsgUnVjVGV4dEFyZWFDb21wb25lbnQgfSBmcm9tICcuLi9jb21wb25lbnRzL3J1Yy10ZXh0LWFyZWEvcnVjLXRleHQtYXJlYS5jb21wb25lbnQnO1xyXG5cclxuaW1wb3J0IHtSdWNsaWJNdWx0aVNlbGVjdE1vZHVsZX0gZnJvbSAnQHJ1Yy1saWIvbXVsdGktc2VsZWN0JztcclxuaW1wb3J0IHtSdWNsaWJNdWx0aUZpbGVVcGxvYWRNb2R1bGV9IGZyb20gJ0BydWMtbGliL211bHRpLWZpbGUtdXBsb2FkJztcclxuXHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsXHJcbiAgICBIdHRwQ2xpZW50TW9kdWxlLFxyXG4gICAgRm9ybXNNb2R1bGUsXHJcbiAgICBNYXRGb3JtRmllbGRNb2R1bGUsXHJcbiAgICBNYXRJbnB1dE1vZHVsZSxcclxuICAgIE1hdFJhZGlvTW9kdWxlLFxyXG4gICAgTWF0Q2hlY2tib3hNb2R1bGUsXHJcbiAgICBNYXRTZWxlY3RNb2R1bGUsXHJcbiAgICBNYXRBdXRvY29tcGxldGVNb2R1bGUsXHJcbiAgICBNYXRCdXR0b25Nb2R1bGUsICAgIFxyXG4gICAgTWF0VG9vbHRpcE1vZHVsZSxcclxuICAgIFRleHRGaWVsZE1vZHVsZSxcclxuICAgIE1hdFN0ZXBwZXJNb2R1bGUsXHJcbiAgICBSdWNsaWJNdWx0aVNlbGVjdE1vZHVsZSxcclxuICAgIFJ1Y2xpYk11bHRpRmlsZVVwbG9hZE1vZHVsZVxyXG4gIF0sXHJcbiAgZGVjbGFyYXRpb25zOiBbXHJcbiAgICBSdWNsaWJNZXRhZm9ybUNvbXBvbmVudCxcclxuICAgIFJ1Y01ldGFJbnB1dHNDb21wb25lbnQsXHJcbiAgICBSdWNNZXRhUmFkaW9Hcm91cENvbXBvbmVudCxcclxuICAgIFJ1Y01ldGFDaGVja2JveEdyb3VwQ29tcG9uZW50LFxyXG4gICAgUnVjTWV0YVNlbGVjdENvbXBvbmVudCxcclxuICAgIFJ1Y1RleHRBcmVhQ29tcG9uZW50XHJcbiAgXSxcclxuICBleHBvcnRzOiBbXHJcbiAgICBSdWNsaWJNZXRhZm9ybUNvbXBvbmVudFxyXG4gIF0sXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICBSdWNNZXRhRm9ybVNlcnZpY2VcclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBSdWNsaWJNZXRhZm9ybU1vZHVsZSB7fVxyXG4iXX0=
|
|
@@ -11,6 +11,10 @@ import * as i4$1 from '@angular/material/button';
|
|
|
11
11
|
import { MatButtonModule } from '@angular/material/button';
|
|
12
12
|
import * as i5$3 from '@angular/material/stepper';
|
|
13
13
|
import { MatStepperModule } from '@angular/material/stepper';
|
|
14
|
+
import * as i6$3 from '@ruc-lib/multi-select';
|
|
15
|
+
import { RuclibMultiSelectModule } from '@ruc-lib/multi-select';
|
|
16
|
+
import * as i7$1 from '@ruc-lib/multi-file-upload';
|
|
17
|
+
import { RuclibMultiFileUploadModule } from '@ruc-lib/multi-file-upload';
|
|
14
18
|
import * as i4 from '@angular/material/form-field';
|
|
15
19
|
import { MatFormFieldModule } from '@angular/material/form-field';
|
|
16
20
|
import * as i5 from '@angular/material/input';
|
|
@@ -324,10 +328,10 @@ class RuclibMetaformComponent {
|
|
|
324
328
|
}
|
|
325
329
|
}
|
|
326
330
|
RuclibMetaformComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RuclibMetaformComponent, deps: [{ token: RucMetaFormService }], target: i0.ɵɵFactoryTarget.Component });
|
|
327
|
-
RuclibMetaformComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: RuclibMetaformComponent, selector: "uxp-ruclib-metaform", inputs: { rucInputData: "rucInputData", childForm: "childForm", customTheme: "customTheme", isChild: "isChild", selectedParentId: "selectedParentId" }, outputs: { rucEvent: "rucEvent", childRucEvent: "childRucEvent" }, ngImport: i0, template: "<form novalidate>\r\n <ng-container *ngFor=\"let dynamicField of formData; let j = index;\" [ngSwitch]=\"dynamicField?.fieldType\">\r\n <div [ngStyle] = \"{ 'width.%': dynamicField.sameRowColumnWidth - 2 }\" [ngClass]=\"dynamicField.sameRow === true ? 'margin-5 column-in-same-row' : 'margin-5 column-in-new-row'\" \r\n *ngIf=\"dynamicField.formType != 'stepper'\">\r\n \r\n <ng-template [ngSwitchCase]=\"'input'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.hasDependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId)\">\r\n <ruc-meta-inputs [customTheme] = \"customTheme\" [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-inputs>\r\n </div>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'radio'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-radio-group [customTheme] = \"customTheme\" [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-radio-group>\r\n </div>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'checkbox'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-checkbox-group [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-checkbox-group>\r\n </div>\r\n </ng-template>\r\n <ng-template class=\"\" [ngSwitchCase]=\"'select'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-select [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-select>\r\n </div>\r\n </ng-template>\r\n <ng-template class=\"\" [ngSwitchCase]=\"'textarea'\">\r\n <ruc-text-area [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-text-area>\r\n </ng-template>\r\n <!-- <ng-template [ngSwitchCase]=\"'rucMultiSelect'\">\r\n <uxp-ruclib-multi-select [rucInputData]=\"dynamicField?.rucMultiselectInput?.rucInputData\"\r\n [dataSource]=\"dynamicField?.rucMultiselectInput?.dataSource\" [customTheme]=\"customTheme\"\r\n (rucEvent)=\"passEvent($event)\"></uxp-ruclib-multi-select>\r\n </ng-template> -->\r\n <!-- <ng-template [ngSwitchCase]=\"'rucMultiFileUpload'\">\r\n <uxp-ruclib-multi-file-upload\r\n [rucInputData]=\"dynamicField?.rucMultiFileUploadInput?.rucInputData\" [customTheme]=\"customTheme\"\r\n (rucEvent)=\"passEvent($event,dynamicField)\"></uxp-ruclib-multi-file-upload>\r\n </ng-template> -->\r\n <div *ngIf=\"dynamicField.hasDependentFields && dynamicField.value\">\r\n <uxp-ruclib-metaform #dynamicField.id [rucInputData]=\"formData\" [childForm] =\"dynamicField.dependentFields\"\r\n [isChild]=\"true\" [selectedParentId] = \"dynamicField.selectedParentId\" (rucEvent)=\"passEvent($event,dynamicField.id)\"></uxp-ruclib-metaform>\r\n </div>\r\n \r\n </div>\r\n <div *ngIf=\"dynamicField.formType == 'stepper'\">\r\n <mat-stepper linear #stepper>\r\n <div *ngFor=\"let stapperField of dynamicField.stepper; let s = index;\" [ngSwitch]=\"stapperField?.fieldType\">\r\n <mat-step [stepControl]=\"stapperField.stepControl\" *ngIf=\"stapperField.stepControl != 'done'\">\r\n <ng-template matStepLabel>{{stapperField.stepperlabel}}</ng-template>\r\n <ng-container *ngFor=\"let stepperFormData of stapperField.stepperFormData; let j = index;\" [ngSwitch]=\"stepperFormData?.fieldType\">\r\n <div [ngStyle] = \"{ 'width.%': dynamicField.sameRowColumnWidth - 2 }\" [ngClass]=\"dynamicField.sameRow === true ? 'margin-5 column-in-same-row' : 'margin-5 column-in-new-row'\" \r\n >\r\n <ng-template [ngSwitchCase]=\"'input'\">\r\n <div>\r\n <ruc-meta-inputs [customTheme] = \"customTheme\" [rucInputData]=\"stepperFormData\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-inputs>\r\n </div>\r\n </ng-template>\r\n <ng-template class=\"\" [ngSwitchCase]=\"'textarea'\">\r\n <ruc-text-area [rucInputData]=\"stepperFormData\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-text-area>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'radio'\">\r\n <div>\r\n <ruc-meta-radio-group [customTheme] = \"customTheme\" [rucInputData]=\"stepperFormData\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-radio-group>\r\n </div>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'checkbox'\">\r\n <div >\r\n <ruc-meta-checkbox-group [rucInputData]=\"stepperFormData\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-checkbox-group>\r\n </div>\r\n </ng-template>\r\n <ng-template class=\"\" [ngSwitchCase]=\"'select'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-select [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-select>\r\n </div>\r\n </ng-template>\r\n </div>\r\n </ng-container>\r\n <div>\r\n <button mat-button matStepperPrevious *ngIf=\"s > 0\">Back</button>\r\n <button mat-button matStepperNext *ngIf=\"s< dynamicField.stepper.length\">Next</button>\r\n </div>\r\n </mat-step>\r\n <mat-step *ngIf=\"stapperField.stepControl == 'done'\">\r\n <ng-template matStepLabel>{{stapperField.stepControl}}</ng-template>\r\n <p>{{stapperField.stepperlabel}}</p>\r\n <div>\r\n <button mat-button matStepperPrevious>Back</button>\r\n <button mat-button (click)=\"stepper.reset()\">Reset</button>\r\n </div>\r\n </mat-step>\r\n </div>\r\n </mat-stepper>\r\n </div>\r\n </ng-container>\r\n <ng-container>\r\n <button mat-raised-button color=\"primary\" (click)=\"clearForm()\" *ngIf=\"!isChild\">Clear Form</button>\r\n </ng-container>\r\n \r\n</form>", styles: [".form-error{color:red}.column-in-same-row{float:left}.column-in-new-row{clear:left}.margin-5{margin:1%}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i4$1.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i5$3.MatStep, selector: "mat-step", inputs: ["color"], exportAs: ["matStep"] }, { kind: "directive", type: i5$3.MatStepLabel, selector: "[matStepLabel]" }, { kind: "component", type: i5$3.MatStepper, selector: "mat-stepper, mat-vertical-stepper, mat-horizontal-stepper, [matStepper]", inputs: ["selectedIndex", "disableRipple", "color", "labelPosition", "headerPosition", "animationDuration"], outputs: ["animationDone"], exportAs: ["matStepper", "matVerticalStepper", "matHorizontalStepper"] }, { kind: "directive", type: i5$3.MatStepperNext, selector: "button[matStepperNext]", inputs: ["type"] }, { kind: "directive", type: i5$3.MatStepperPrevious, selector: "button[matStepperPrevious]", inputs: ["type"] }, { kind: "component", type: RuclibMetaformComponent, selector: "uxp-ruclib-metaform", inputs: ["rucInputData", "childForm", "customTheme", "isChild", "selectedParentId"], outputs: ["rucEvent", "childRucEvent"] }, { kind: "component", type: RucMetaInputsComponent, selector: "ruc-meta-inputs", inputs: ["rucInputData", "selectedParentId", "customTheme"], outputs: ["transferUserInput"] }, { kind: "component", type: RucMetaRadioGroupComponent, selector: "ruc-meta-radio-group", inputs: ["rucInputData", "customTheme"], outputs: ["transferUserInput"] }, { kind: "component", type: RucMetaCheckboxGroupComponent, selector: "ruc-meta-checkbox-group", inputs: ["rucInputData"], outputs: ["transferUserInput"] }, { kind: "component", type: RucMetaSelectComponent, selector: "ruc-meta-select", inputs: ["rucInputData"], outputs: ["transferUserInput"] }, { kind: "component", type: RucTextAreaComponent, selector: "ruc-text-area", inputs: ["rucInputData", "customTheme"], outputs: ["transferUserInput"] }] });
|
|
331
|
+
RuclibMetaformComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: RuclibMetaformComponent, selector: "uxp-ruclib-metaform", inputs: { rucInputData: "rucInputData", childForm: "childForm", customTheme: "customTheme", isChild: "isChild", selectedParentId: "selectedParentId" }, outputs: { rucEvent: "rucEvent", childRucEvent: "childRucEvent" }, ngImport: i0, template: "<form novalidate>\r\n <ng-container *ngFor=\"let dynamicField of formData; let j = index;\" [ngSwitch]=\"dynamicField?.fieldType\">\r\n <div [ngStyle] = \"{ 'width.%': dynamicField.sameRowColumnWidth - 2 }\" [ngClass]=\"dynamicField.sameRow === true ? 'margin-5 column-in-same-row' : 'margin-5 column-in-new-row'\" \r\n *ngIf=\"dynamicField.formType != 'stepper'\">\r\n \r\n <ng-template [ngSwitchCase]=\"'input'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.hasDependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId)\">\r\n <ruc-meta-inputs [customTheme] = \"customTheme\" [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-inputs>\r\n </div>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'radio'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-radio-group [customTheme] = \"customTheme\" [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-radio-group>\r\n </div>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'checkbox'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-checkbox-group [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-checkbox-group>\r\n </div>\r\n </ng-template>\r\n <ng-template class=\"\" [ngSwitchCase]=\"'select'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-select [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-select>\r\n </div>\r\n </ng-template>\r\n <ng-template class=\"\" [ngSwitchCase]=\"'textarea'\">\r\n <ruc-text-area [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-text-area>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'rucMultiSelect'\">\r\n <uxp-ruclib-multi-select [rucInputData]=\"dynamicField?.rucMultiselectInput?.rucInputData\"\r\n [dataSource]=\"dynamicField?.rucMultiselectInput?.dataSource\" [customTheme]=\"customTheme\"\r\n (rucEvent)=\"passEvent($event)\"></uxp-ruclib-multi-select>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'rucMultiFileUpload'\">\r\n <uxp-ruclib-multi-file-upload\r\n [rucInputData]=\"dynamicField?.rucMultiFileUploadInput?.rucInputData\" [customTheme]=\"customTheme\"\r\n (rucEvent)=\"passEvent($event,dynamicField)\"></uxp-ruclib-multi-file-upload>\r\n </ng-template>\r\n <div *ngIf=\"dynamicField.hasDependentFields && dynamicField.value\">\r\n <uxp-ruclib-metaform #dynamicField.id [rucInputData]=\"formData\" [childForm] =\"dynamicField.dependentFields\"\r\n [isChild]=\"true\" [selectedParentId] = \"dynamicField.selectedParentId\" (rucEvent)=\"passEvent($event,dynamicField.id)\"></uxp-ruclib-metaform>\r\n </div>\r\n \r\n </div>\r\n <div *ngIf=\"dynamicField.formType == 'stepper'\">\r\n <mat-stepper linear #stepper>\r\n <div *ngFor=\"let stapperField of dynamicField.stepper; let s = index;\" [ngSwitch]=\"stapperField?.fieldType\">\r\n <mat-step [stepControl]=\"stapperField.stepControl\" *ngIf=\"stapperField.stepControl != 'done'\">\r\n <ng-template matStepLabel>{{stapperField.stepperlabel}}</ng-template>\r\n <ng-container *ngFor=\"let stepperFormData of stapperField.stepperFormData; let j = index;\" [ngSwitch]=\"stepperFormData?.fieldType\">\r\n <div [ngStyle] = \"{ 'width.%': dynamicField.sameRowColumnWidth - 2 }\" [ngClass]=\"dynamicField.sameRow === true ? 'margin-5 column-in-same-row' : 'margin-5 column-in-new-row'\" \r\n >\r\n <ng-template [ngSwitchCase]=\"'input'\">\r\n <div>\r\n <ruc-meta-inputs [customTheme] = \"customTheme\" [rucInputData]=\"stepperFormData\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-inputs>\r\n </div>\r\n </ng-template>\r\n <ng-template class=\"\" [ngSwitchCase]=\"'textarea'\">\r\n <ruc-text-area [rucInputData]=\"stepperFormData\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-text-area>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'radio'\">\r\n <div>\r\n <ruc-meta-radio-group [customTheme] = \"customTheme\" [rucInputData]=\"stepperFormData\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-radio-group>\r\n </div>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'checkbox'\">\r\n <div >\r\n <ruc-meta-checkbox-group [rucInputData]=\"stepperFormData\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-checkbox-group>\r\n </div>\r\n </ng-template>\r\n <ng-template class=\"\" [ngSwitchCase]=\"'select'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-select [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-select>\r\n </div>\r\n </ng-template>\r\n </div>\r\n </ng-container>\r\n <div>\r\n <button mat-button matStepperPrevious *ngIf=\"s > 0\">Back</button>\r\n <button mat-button matStepperNext *ngIf=\"s< dynamicField.stepper.length\">Next</button>\r\n </div>\r\n </mat-step>\r\n <mat-step *ngIf=\"stapperField.stepControl == 'done'\">\r\n <ng-template matStepLabel>{{stapperField.stepControl}}</ng-template>\r\n <p>{{stapperField.stepperlabel}}</p>\r\n <div>\r\n <button mat-button matStepperPrevious>Back</button>\r\n <button mat-button (click)=\"stepper.reset()\">Reset</button>\r\n </div>\r\n </mat-step>\r\n </div>\r\n </mat-stepper>\r\n </div>\r\n </ng-container>\r\n <ng-container>\r\n <button mat-raised-button color=\"primary\" (click)=\"clearForm()\" *ngIf=\"!isChild\">Clear Form</button>\r\n </ng-container>\r\n \r\n</form>", styles: [".form-error{color:red}.column-in-same-row{float:left}.column-in-new-row{clear:left}.margin-5{margin:1%}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i4$1.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i5$3.MatStep, selector: "mat-step", inputs: ["color"], exportAs: ["matStep"] }, { kind: "directive", type: i5$3.MatStepLabel, selector: "[matStepLabel]" }, { kind: "component", type: i5$3.MatStepper, selector: "mat-stepper, mat-vertical-stepper, mat-horizontal-stepper, [matStepper]", inputs: ["selectedIndex", "disableRipple", "color", "labelPosition", "headerPosition", "animationDuration"], outputs: ["animationDone"], exportAs: ["matStepper", "matVerticalStepper", "matHorizontalStepper"] }, { kind: "directive", type: i5$3.MatStepperNext, selector: "button[matStepperNext]", inputs: ["type"] }, { kind: "directive", type: i5$3.MatStepperPrevious, selector: "button[matStepperPrevious]", inputs: ["type"] }, { kind: "component", type: i6$3.RuclibMultiSelectComponent, selector: "uxp-ruclib-multi-select", inputs: ["rucInputData", "customTheme", "dataSource"], outputs: ["rucEvent"] }, { kind: "component", type: i7$1.RuclibMultiFileUploadComponent, selector: "uxp-ruclib-multi-file-upload", inputs: ["rucInputData", "customTheme"], outputs: ["rucEvent"] }, { kind: "component", type: RuclibMetaformComponent, selector: "uxp-ruclib-metaform", inputs: ["rucInputData", "childForm", "customTheme", "isChild", "selectedParentId"], outputs: ["rucEvent", "childRucEvent"] }, { kind: "component", type: RucMetaInputsComponent, selector: "ruc-meta-inputs", inputs: ["rucInputData", "selectedParentId", "customTheme"], outputs: ["transferUserInput"] }, { kind: "component", type: RucMetaRadioGroupComponent, selector: "ruc-meta-radio-group", inputs: ["rucInputData", "customTheme"], outputs: ["transferUserInput"] }, { kind: "component", type: RucMetaCheckboxGroupComponent, selector: "ruc-meta-checkbox-group", inputs: ["rucInputData"], outputs: ["transferUserInput"] }, { kind: "component", type: RucMetaSelectComponent, selector: "ruc-meta-select", inputs: ["rucInputData"], outputs: ["transferUserInput"] }, { kind: "component", type: RucTextAreaComponent, selector: "ruc-text-area", inputs: ["rucInputData", "customTheme"], outputs: ["transferUserInput"] }] });
|
|
328
332
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RuclibMetaformComponent, decorators: [{
|
|
329
333
|
type: Component,
|
|
330
|
-
args: [{ selector: 'uxp-ruclib-metaform', template: "<form novalidate>\r\n <ng-container *ngFor=\"let dynamicField of formData; let j = index;\" [ngSwitch]=\"dynamicField?.fieldType\">\r\n <div [ngStyle] = \"{ 'width.%': dynamicField.sameRowColumnWidth - 2 }\" [ngClass]=\"dynamicField.sameRow === true ? 'margin-5 column-in-same-row' : 'margin-5 column-in-new-row'\" \r\n *ngIf=\"dynamicField.formType != 'stepper'\">\r\n \r\n <ng-template [ngSwitchCase]=\"'input'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.hasDependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId)\">\r\n <ruc-meta-inputs [customTheme] = \"customTheme\" [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-inputs>\r\n </div>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'radio'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-radio-group [customTheme] = \"customTheme\" [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-radio-group>\r\n </div>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'checkbox'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-checkbox-group [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-checkbox-group>\r\n </div>\r\n </ng-template>\r\n <ng-template class=\"\" [ngSwitchCase]=\"'select'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-select [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-select>\r\n </div>\r\n </ng-template>\r\n <ng-template class=\"\" [ngSwitchCase]=\"'textarea'\">\r\n <ruc-text-area [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-text-area>\r\n </ng-template>\r\n
|
|
334
|
+
args: [{ selector: 'uxp-ruclib-metaform', template: "<form novalidate>\r\n <ng-container *ngFor=\"let dynamicField of formData; let j = index;\" [ngSwitch]=\"dynamicField?.fieldType\">\r\n <div [ngStyle] = \"{ 'width.%': dynamicField.sameRowColumnWidth - 2 }\" [ngClass]=\"dynamicField.sameRow === true ? 'margin-5 column-in-same-row' : 'margin-5 column-in-new-row'\" \r\n *ngIf=\"dynamicField.formType != 'stepper'\">\r\n \r\n <ng-template [ngSwitchCase]=\"'input'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.hasDependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId)\">\r\n <ruc-meta-inputs [customTheme] = \"customTheme\" [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-inputs>\r\n </div>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'radio'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-radio-group [customTheme] = \"customTheme\" [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-radio-group>\r\n </div>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'checkbox'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-checkbox-group [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-checkbox-group>\r\n </div>\r\n </ng-template>\r\n <ng-template class=\"\" [ngSwitchCase]=\"'select'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-select [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-select>\r\n </div>\r\n </ng-template>\r\n <ng-template class=\"\" [ngSwitchCase]=\"'textarea'\">\r\n <ruc-text-area [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-text-area>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'rucMultiSelect'\">\r\n <uxp-ruclib-multi-select [rucInputData]=\"dynamicField?.rucMultiselectInput?.rucInputData\"\r\n [dataSource]=\"dynamicField?.rucMultiselectInput?.dataSource\" [customTheme]=\"customTheme\"\r\n (rucEvent)=\"passEvent($event)\"></uxp-ruclib-multi-select>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'rucMultiFileUpload'\">\r\n <uxp-ruclib-multi-file-upload\r\n [rucInputData]=\"dynamicField?.rucMultiFileUploadInput?.rucInputData\" [customTheme]=\"customTheme\"\r\n (rucEvent)=\"passEvent($event,dynamicField)\"></uxp-ruclib-multi-file-upload>\r\n </ng-template>\r\n <div *ngIf=\"dynamicField.hasDependentFields && dynamicField.value\">\r\n <uxp-ruclib-metaform #dynamicField.id [rucInputData]=\"formData\" [childForm] =\"dynamicField.dependentFields\"\r\n [isChild]=\"true\" [selectedParentId] = \"dynamicField.selectedParentId\" (rucEvent)=\"passEvent($event,dynamicField.id)\"></uxp-ruclib-metaform>\r\n </div>\r\n \r\n </div>\r\n <div *ngIf=\"dynamicField.formType == 'stepper'\">\r\n <mat-stepper linear #stepper>\r\n <div *ngFor=\"let stapperField of dynamicField.stepper; let s = index;\" [ngSwitch]=\"stapperField?.fieldType\">\r\n <mat-step [stepControl]=\"stapperField.stepControl\" *ngIf=\"stapperField.stepControl != 'done'\">\r\n <ng-template matStepLabel>{{stapperField.stepperlabel}}</ng-template>\r\n <ng-container *ngFor=\"let stepperFormData of stapperField.stepperFormData; let j = index;\" [ngSwitch]=\"stepperFormData?.fieldType\">\r\n <div [ngStyle] = \"{ 'width.%': dynamicField.sameRowColumnWidth - 2 }\" [ngClass]=\"dynamicField.sameRow === true ? 'margin-5 column-in-same-row' : 'margin-5 column-in-new-row'\" \r\n >\r\n <ng-template [ngSwitchCase]=\"'input'\">\r\n <div>\r\n <ruc-meta-inputs [customTheme] = \"customTheme\" [rucInputData]=\"stepperFormData\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-inputs>\r\n </div>\r\n </ng-template>\r\n <ng-template class=\"\" [ngSwitchCase]=\"'textarea'\">\r\n <ruc-text-area [rucInputData]=\"stepperFormData\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-text-area>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'radio'\">\r\n <div>\r\n <ruc-meta-radio-group [customTheme] = \"customTheme\" [rucInputData]=\"stepperFormData\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-radio-group>\r\n </div>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'checkbox'\">\r\n <div >\r\n <ruc-meta-checkbox-group [rucInputData]=\"stepperFormData\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-checkbox-group>\r\n </div>\r\n </ng-template>\r\n <ng-template class=\"\" [ngSwitchCase]=\"'select'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-select [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-select>\r\n </div>\r\n </ng-template>\r\n </div>\r\n </ng-container>\r\n <div>\r\n <button mat-button matStepperPrevious *ngIf=\"s > 0\">Back</button>\r\n <button mat-button matStepperNext *ngIf=\"s< dynamicField.stepper.length\">Next</button>\r\n </div>\r\n </mat-step>\r\n <mat-step *ngIf=\"stapperField.stepControl == 'done'\">\r\n <ng-template matStepLabel>{{stapperField.stepControl}}</ng-template>\r\n <p>{{stapperField.stepperlabel}}</p>\r\n <div>\r\n <button mat-button matStepperPrevious>Back</button>\r\n <button mat-button (click)=\"stepper.reset()\">Reset</button>\r\n </div>\r\n </mat-step>\r\n </div>\r\n </mat-stepper>\r\n </div>\r\n </ng-container>\r\n <ng-container>\r\n <button mat-raised-button color=\"primary\" (click)=\"clearForm()\" *ngIf=\"!isChild\">Clear Form</button>\r\n </ng-container>\r\n \r\n</form>", styles: [".form-error{color:red}.column-in-same-row{float:left}.column-in-new-row{clear:left}.margin-5{margin:1%}\n"] }]
|
|
331
335
|
}], ctorParameters: function () { return [{ type: RucMetaFormService }]; }, propDecorators: { rucEvent: [{
|
|
332
336
|
type: Output
|
|
333
337
|
}], childRucEvent: [{
|
|
@@ -344,8 +348,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
344
348
|
type: Input
|
|
345
349
|
}] } });
|
|
346
350
|
|
|
347
|
-
// import {RuclibMultiSelectModule} from '@ruc-lib/multi-select';
|
|
348
|
-
// import {RuclibMultiFileUploadModule} from '@ruc-lib/multi-file-upload';
|
|
349
351
|
class RuclibMetaformModule {
|
|
350
352
|
}
|
|
351
353
|
RuclibMetaformModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RuclibMetaformModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
@@ -366,7 +368,9 @@ RuclibMetaformModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", ve
|
|
|
366
368
|
MatButtonModule,
|
|
367
369
|
MatTooltipModule,
|
|
368
370
|
TextFieldModule,
|
|
369
|
-
MatStepperModule
|
|
371
|
+
MatStepperModule,
|
|
372
|
+
RuclibMultiSelectModule,
|
|
373
|
+
RuclibMultiFileUploadModule], exports: [RuclibMetaformComponent] });
|
|
370
374
|
RuclibMetaformModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RuclibMetaformModule, providers: [
|
|
371
375
|
RucMetaFormService
|
|
372
376
|
], imports: [CommonModule,
|
|
@@ -381,7 +385,9 @@ RuclibMetaformModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", ve
|
|
|
381
385
|
MatButtonModule,
|
|
382
386
|
MatTooltipModule,
|
|
383
387
|
TextFieldModule,
|
|
384
|
-
MatStepperModule
|
|
388
|
+
MatStepperModule,
|
|
389
|
+
RuclibMultiSelectModule,
|
|
390
|
+
RuclibMultiFileUploadModule] });
|
|
385
391
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RuclibMetaformModule, decorators: [{
|
|
386
392
|
type: NgModule,
|
|
387
393
|
args: [{
|
|
@@ -398,8 +404,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
398
404
|
MatTooltipModule,
|
|
399
405
|
TextFieldModule,
|
|
400
406
|
MatStepperModule,
|
|
401
|
-
|
|
402
|
-
|
|
407
|
+
RuclibMultiSelectModule,
|
|
408
|
+
RuclibMultiFileUploadModule
|
|
403
409
|
],
|
|
404
410
|
declarations: [
|
|
405
411
|
RuclibMetaformComponent,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ruc-lib-metaform.mjs","sources":["../../src/services/ruc-meta-form.service.ts","../../src/services/ruc-meta-form-validation.service.ts","../../src/components/ruc-meta-inputs/ruc-meta-inputs.component.ts","../../src/components/ruc-meta-inputs/ruc-meta-inputs.component.html","../../src/components/ruc-meta-radio-group/ruc-meta-radio-group.component.ts","../../src/components/ruc-meta-radio-group/ruc-meta-radio-group.component.html","../../src/components/ruc-meta-checkbox-group/ruc-meta-checkbox-group.component.ts","../../src/components/ruc-meta-checkbox-group/ruc-meta-checkbox-group.component.html","../../src/components/ruc-meta-select/ruc-meta-select.component.ts","../../src/components/ruc-meta-select/ruc-meta-select.component.html","../../src/components/ruc-text-area/ruc-text-area.component.ts","../../src/components/ruc-text-area/ruc-text-area.component.html","../../src/lib/ruclib-metaform/ruclib-metaform.component.ts","../../src/lib/ruclib-metaform/ruclib-metaform.component.html","../../src/lib/ruclib-metaform.module.ts","../../src/ruc-lib-metaform.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\r\nimport { Observable,Subject, BehaviorSubject } from 'rxjs';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport {MetaFormConfig} from '../interfaces/metaFormsDefault';\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class RucMetaFormService {\r\n\r\n public metaFormData:MetaFormConfig | undefined;\r\n public currentFormElement: MetaFormConfig | undefined;\r\n\r\n constructor(private http: HttpClient) { }\r\n\r\n public formData: BehaviorSubject<any> = new BehaviorSubject([] as any);\r\n\r\n getFormJson(form: any){\r\n this.formData.next(form);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport {MetaFormConfig} from '../interfaces/metaFormsDefault';\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class RucMetaFormValidationService {\r\n\r\n public defaultErrorMessage = 'Invalid Input';\r\n\r\n constructor() { \r\n }\r\n\r\n nospaceValidator(formData:MetaFormConfig){\r\n const re = / /;\r\n if(formData.value.match(re)){\r\n return { nullTable: true }\r\n }else{\r\n return false;\r\n }\r\n }\r\n\r\n alphaNumericValidator(formData:MetaFormConfig){\r\n const re = '^[a-zA-Z0-9_]+$'\r\n return formData.value ? !formData.value.match(re) : false;\r\n }\r\n\r\n \r\n}\r\n","import { Component, Input, OnInit, EventEmitter, Output } from '@angular/core';\r\nimport {RucMetaFormValidationService} from '../../services/ruc-meta-form-validation.service';\r\n\r\n@Component({\r\n selector: 'ruc-meta-inputs',\r\n templateUrl: './ruc-meta-inputs.component.html',\r\n styleUrls: ['./ruc-meta-inputs.component.css']\r\n})\r\nexport class RucMetaInputsComponent implements OnInit {\r\n @Input() rucInputData : any;\r\n @Input() selectedParentId?:any; \r\n @Output() transferUserInput = new EventEmitter<any>();\r\n @Input() customTheme: string | undefined;\r\n errorMessage: string | undefined\r\n options: string[] = [];\r\n filteredOptions: any;\r\n constructor(public validationService:RucMetaFormValidationService) { \r\n \r\n }\r\n\r\n ngOnInit(): void {\r\n this.errorMessage = this.validationService.defaultErrorMessage; \r\n this.rucInputData.value === undefined ? \"\" : this.rucInputData.value;\r\n this.options = this.rucInputData.autocomplete;\r\n }\r\n /**\r\n * \r\n * @param e \r\n */\r\n modelChangeFn(e:any) {\r\n const validate = this.validationService.alphaNumericValidator(this.rucInputData);\r\n this.rucInputData.errorMsg = validate;\r\n if(this.rucInputData.autocomplete){\r\n this.filteredOptions = this._filter(this.rucInputData.value);\r\n }\r\n this.transferUserInput.emit(this.rucInputData);\r\n }\r\n\r\n private _filter(value: string): string[] {\r\n const filterValue = value.toLowerCase();\r\n return this.options.filter(option => option.toLowerCase().includes(filterValue));\r\n }\r\n\r\n}\r\n","<mat-form-field class=\"{{customTheme }}\" [ngStyle]=\"{ 'width.%': rucInputData?.width }\" [appearance]=\"rucInputData?.appearance || 'fill'\">\r\n <mat-label>{{rucInputData?.label}}</mat-label>\r\n <input type=\"{{rucInputData?.inputType}}\" color=\"accent\" matInput placeholder=\"{{rucInputData?.placeholder}}\" [(ngModel)]=\"rucInputData.value\" \r\n (ngModelChange)=\"modelChangeFn($event.target)\" required=\"{{rucInputData?.required}}\" size=\"{{rucInputData?.size}}\"\r\n maxlength=\"{{rucInputData?.maxlength}}\" min=\"{{rucInputData?.min}}\" max=\"{{rucInputData?.max}}\" pattern=\"{{rucInputData?.pattern}}\"\r\n step=\"{{rucInputData?.step}}\" autofocus=\"{{rucInputData?.autofocus}}\" width=\"{{rucInputData?.width}}\" height=\"{{rucInputData?.height}}\"\r\n matTooltip=\"{{rucInputData?.tooltip}}\"\r\n [matAutocomplete]=\"auto\" [matAutocompleteDisabled]=\"!rucInputData?.autocomplete\" [readonly]=\"rucInputData?.readonly\" [matTooltipPosition]=\"rucInputData?.tooltipPosition\"\r\n > \r\n <mat-autocomplete autoActiveFirstOption #auto=\"matAutocomplete\">\r\n <mat-option *ngFor=\"let option of filteredOptions\" [value]=\"option\">\r\n {{option}}\r\n </mat-option>\r\n </mat-autocomplete>\r\n </mat-form-field>\r\n <div *ngIf=\"rucInputData?.errorMsg\" class=\"form-error\">\r\n {{rucInputData?.customErrorMessage ? rucInputData?.customErrorMessage : errorMessage}}\r\n </div> \r\n","import { Component, Input, OnInit,EventEmitter, Output } from '@angular/core';\r\nimport {RucMetaFormValidationService} from '../../services/ruc-meta-form-validation.service';\r\nimport { MatRadioChange } from '@angular/material/radio';\r\n@Component({\r\n selector: 'ruc-meta-radio-group',\r\n templateUrl: './ruc-meta-radio-group.component.html',\r\n styleUrls: ['./ruc-meta-radio-group.component.css'],\r\n})\r\nexport class RucMetaRadioGroupComponent implements OnInit {\r\n @Input() rucInputData : any;\r\n @Input() customTheme: string | undefined;\r\n @Output() transferUserInput = new EventEmitter<any>();\r\n errorMessage: string | undefined\r\n radioValue: string | undefined;\r\n constructor(public validationService:RucMetaFormValidationService) { }\r\n\r\n ngOnInit(): void {\r\n this.errorMessage = this.validationService.defaultErrorMessage;\r\n }\r\n /**\r\n * \r\n * @param e \r\n */\r\n modelChangeFn(e:any) {\r\n this.rucInputData.value = e.value;\r\n this.transferUserInput.emit(this.rucInputData);\r\n }\r\n}\r\n","<mat-label>{{rucInputData?.label}}</mat-label>\r\n<mat-radio-group \r\n aria-labelledby=\"radio-group-label\"\r\n class=\"{{customTheme}} radio-group\" [(ngModel)]=\"radioValue\">\r\n <mat-radio-button class=\"radio-button\" *ngFor=\"let item of rucInputData?.groupOptions\" [value]=\"item.value\"\r\n (change)=\"modelChangeFn($event)\">\r\n {{item?.name}}\r\n </mat-radio-button>\r\n</mat-radio-group>\r\n<div *ngIf=\"rucInputData?.errorMsg\" class=\"form-error\">\r\n {{rucInputData?.customErrorMessage ? rucInputData?.customErrorMessage : errorMessage}}\r\n</div> \r\n","import { Component, Input, OnInit, EventEmitter, Output } from '@angular/core';\r\nimport {RucMetaFormValidationService} from '../../services/ruc-meta-form-validation.service';\r\n\r\n@Component({\r\n selector: 'ruc-meta-checkbox-group',\r\n templateUrl: './ruc-meta-checkbox-group.component.html',\r\n styleUrls: ['./ruc-meta-checkbox-group.component.css']\r\n})\r\nexport class RucMetaCheckboxGroupComponent implements OnInit {\r\n @Input() rucInputData : any;\r\n @Output() transferUserInput = new EventEmitter<any>();\r\n errorMessage: string | undefined\r\n\r\n constructor(public validationService:RucMetaFormValidationService) { }\r\n\r\n ngOnInit(): void {\r\n this.errorMessage = this.validationService.defaultErrorMessage;\r\n }\r\n /**\r\n * \r\n * @param e \r\n */\r\n modelChangeFn(e:any) {\r\n const checkboxValues: any[] = [];\r\n this.rucInputData.groupOptions.forEach((x: any)=>{\r\n if(x.value){\r\n checkboxValues.push(x.name);\r\n }\r\n });\r\n this.rucInputData.value = checkboxValues;\r\n this.transferUserInput.emit(this.rucInputData);\r\n }\r\n}\r\n","<mat-label class=\"margin-\">{{rucInputData?.label}}</mat-label>\r\n<ul class=\"ruc-checkbox\">\r\n <li *ngFor=\"let item of rucInputData?.groupOptions\">\r\n <mat-checkbox [(ngModel)]=\"item.value\" (ngModelChange)=\"modelChangeFn($event)\">\r\n {{item?.name}}\r\n </mat-checkbox>\r\n </li>\r\n</ul>\r\n<div *ngIf=\"rucInputData?.errorMsg\" class=\"form-error\">\r\n {{rucInputData?.customErrorMessage ? rucInputData?.customErrorMessage : errorMessage}}\r\n</div>","import { Component, Input, OnInit, EventEmitter, Output } from '@angular/core';\r\nimport { RucMetaFormService } from \"../../services/ruc-meta-form.service\"\r\nimport {RucMetaFormValidationService} from '../../services/ruc-meta-form-validation.service';\r\n\r\n@Component({\r\n selector: 'ruc-meta-select',\r\n templateUrl: './ruc-meta-select.component.html',\r\n styleUrls: ['./ruc-meta-select.component.css']\r\n})\r\nexport class RucMetaSelectComponent implements OnInit {\r\n \r\n @Input() rucInputData : any;\r\n errorMessage: string | undefined\r\n @Output() transferUserInput = new EventEmitter<any>();\r\n constructor(public service: RucMetaFormService,public validationService:RucMetaFormValidationService) { }\r\n\r\n ngOnInit(): void {\r\n this.errorMessage = this.validationService.defaultErrorMessage;\r\n }\r\n\r\n modelChangeFn(e:any) { \r\n this.rucInputData.groupOptions.forEach((x: any)=>{\r\n if(x.value == e.value){\r\n this.rucInputData.selectedParentId = x.id;\r\n }\r\n });\r\n if(this.rucInputData.dependentFields){\r\n this.removDependentFieldParentIdFromOther(this.rucInputData.dependentFields);\r\n }\r\n this.service.currentFormElement = this.rucInputData;\r\n this.transferUserInput.emit(this.rucInputData);\r\n }\r\n\r\n removDependentFieldParentIdFromOther(child: any){\r\n child.forEach((x:any)=>{\r\n if(x.selectedParentId){\r\n delete(x.selectedParentId);\r\n x.value = \"\";\r\n if(x.dependentFields){\r\n this.removDependentFieldParentIdFromOther(x.dependentFields);\r\n } \r\n } \r\n })\r\n }\r\n}\r\n","<div class=\"select-label\">\r\n <mat-label>{{rucInputData?.label}}</mat-label>\r\n</div>\r\n<mat-form-field [ngStyle]=\"{ 'width.%': rucInputData?.width }\" matTooltip=\"{{rucInputData?.tooltip}}\" [appearance]=\"rucInputData?.appearance || 'fill'\">\r\n <mat-label>Choose an option</mat-label>\r\n <mat-select (selectionChange)=\"modelChangeFn($event)\" [(ngModel)]=\"rucInputData.value\">\r\n <mat-option *ngFor=\"let item of rucInputData?.groupOptions\" [value]=\"item.value\" [disabled]=\"item?.disable\"> {{item.name}}</mat-option>\r\n </mat-select>\r\n</mat-form-field>\r\n<div *ngIf=\"rucInputData?.errorMsg\" class=\"form-error\">\r\n {{rucInputData?.customErrorMessage ? rucInputData?.customErrorMessage : errorMessage}}\r\n</div>","import { Component, Input, OnInit, EventEmitter, Output } from '@angular/core';\r\nimport {RucMetaFormValidationService} from '../../services/ruc-meta-form-validation.service';\r\n\r\n@Component({\r\n selector: 'ruc-text-area',\r\n templateUrl: './ruc-text-area.component.html',\r\n styleUrls: ['./ruc-text-area.component.css']\r\n})\r\nexport class RucTextAreaComponent implements OnInit {\r\n @Input() rucInputData : any;\r\n @Output() transferUserInput = new EventEmitter<any>();\r\n @Input() customTheme: string | undefined;\r\n errorMessage: string | undefined\r\n\r\n constructor(public validationService:RucMetaFormValidationService) { \r\n \r\n }\r\n\r\n ngOnInit(): void {\r\n this.errorMessage = this.validationService.defaultErrorMessage;\r\n }\r\n /**\r\n * \r\n * @param e \r\n */\r\n modelChangeFn(e:any) {\r\n this.transferUserInput.emit(this.rucInputData);\r\n }\r\n\r\n}\r\n","<mat-form-field [ngStyle]=\"{ 'width.%': rucInputData?.width }\" [appearance]=\"rucInputData?.appearance || 'fill'\" class=\"{{customTheme}}\">\r\n <mat-label>{{rucInputData?.label}}</mat-label>\r\n <textarea matInput\r\n placeholder=\"{{rucInputData?.placeholder}}\"\r\n cdkTextareaAutosize\r\n #autosize=\"cdkTextareaAutosize\"\r\n cdkAutosizeMinRows=\"{{rucInputData.min}}\"\r\n cdkAutosizeMaxRows=\"{{rucInputData.max}}\"\r\n [readonly]=\"rucInputData?.readonly\"\r\n [(ngModel)]=\"rucInputData.value\" \r\n matTooltip=\"{{rucInputData?.tooltip}}\"\r\n (ngModelChange)=\"modelChangeFn($event.target)\"></textarea>\r\n </mat-form-field>\r\n <div *ngIf=\"rucInputData?.errorMsg\" class=\"form-error\">\r\n {{rucInputData?.customErrorMessage ? rucInputData?.customErrorMessage : errorMessage}}\r\n </div>\r\n","import { Component, Input, Output, OnInit, EventEmitter, OnDestroy } from '@angular/core';\r\nimport {MetaFormConfig} from '../../interfaces/metaFormsDefault';\r\nimport { RucMetaFormService } from \"../../services/ruc-meta-form.service\"\r\nimport { Subscription } from 'rxjs';\r\n@Component({\r\n selector: 'uxp-ruclib-metaform',\r\n templateUrl: './ruclib-metaform.component.html',\r\n styleUrls: ['./ruclib-metaform.component.scss']\r\n})\r\nexport class RuclibMetaformComponent implements OnInit,OnDestroy{\r\n @Output() rucEvent = new EventEmitter<any>();\r\n @Output() childRucEvent = new EventEmitter<any>();\r\n @Input() rucInputData: MetaFormConfig[] = []\r\n @Input() childForm?: MetaFormConfig[]\r\n @Input()\r\n customTheme!: string;\r\n @Input() isChild?: boolean;\r\n @Input() selectedParentId: any;\r\n inputObjectDataMultiFileUpload?:any;\r\n metaFormSubscribeInputs: Subscription | undefined;\r\n formData: any\r\n constructor(public service: RucMetaFormService) { }\r\n \r\n ngOnInit(): void {\r\n if (!this.isChild) {\r\n this.service.getFormJson(this.rucInputData);\r\n this.getFormJson();\r\n } else {\r\n this.formData = this.childForm;\r\n }\r\n this.inputObjectDataMultiFileUpload = {\r\n multifileSelection: true,\r\n displayThumbnail: true,\r\n label: 'Choose File',\r\n uploadUrl: '/api/upload',\r\n deleteUrl: '/api/delete',\r\n };\r\n }\r\n \r\n /**\r\n * The purpose of this function to pass data from dependentFields to parent field\r\n * @param getObject \r\n * @param j \r\n */\r\n passEvent(getObject: any, formElement?: any) {\r\n const eventOutput = getObject?.eventOutput ? getObject.eventOutput : this.service.currentFormElement;\r\n if(getObject?.eventName == \"onUploading\"){\r\n formElement.value = getObject?.eventOutput.name ? getObject?.eventOutput.name : getObject?.eventOutput[0].name;\r\n }\r\n this.rucEvent.emit({ 'eventName': 'metaFormData', 'eventOutput': eventOutput, 'formData': this.formData, 'rucComponentEvent': getObject?.eventName });\r\n }\r\n\r\n /**\r\n * Initial function to load for data\r\n */\r\n getFormJson() {\r\n this.metaFormSubscribeInputs = this.service.formData.asObservable()\r\n .subscribe(\r\n (formData)=>{\r\n this.formData = formData;\r\n this.service.metaFormData = this.formData;\r\n } \r\n );\r\n }\r\n\r\n /**\r\n * This function is to emit form data\r\n * @param event \r\n */\r\n getMetaFormData(event: any) {\r\n this.rucEvent.emit({ 'eventName': 'metaFormData', 'eventOutput': event, 'formData': this.formData });\r\n }\r\n\r\n /**\r\n * Clear form data\r\n */\r\n clearForm(){\r\n this.formData.map((x:MetaFormConfig)=>{\r\n x.value = '';\r\n });\r\n }\r\n\r\n /**\r\n * Destroy the subscriber\r\n */\r\n ngOnDestroy() {\r\n if (this.metaFormSubscribeInputs) {\r\n this.metaFormSubscribeInputs.unsubscribe();\r\n }\r\n }\r\n}\r\n","<form novalidate>\r\n <ng-container *ngFor=\"let dynamicField of formData; let j = index;\" [ngSwitch]=\"dynamicField?.fieldType\">\r\n <div [ngStyle] = \"{ 'width.%': dynamicField.sameRowColumnWidth - 2 }\" [ngClass]=\"dynamicField.sameRow === true ? 'margin-5 column-in-same-row' : 'margin-5 column-in-new-row'\" \r\n *ngIf=\"dynamicField.formType != 'stepper'\">\r\n \r\n <ng-template [ngSwitchCase]=\"'input'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.hasDependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId)\">\r\n <ruc-meta-inputs [customTheme] = \"customTheme\" [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-inputs>\r\n </div>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'radio'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-radio-group [customTheme] = \"customTheme\" [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-radio-group>\r\n </div>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'checkbox'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-checkbox-group [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-checkbox-group>\r\n </div>\r\n </ng-template>\r\n <ng-template class=\"\" [ngSwitchCase]=\"'select'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-select [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-select>\r\n </div>\r\n </ng-template>\r\n <ng-template class=\"\" [ngSwitchCase]=\"'textarea'\">\r\n <ruc-text-area [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-text-area>\r\n </ng-template>\r\n <!-- <ng-template [ngSwitchCase]=\"'rucMultiSelect'\">\r\n <uxp-ruclib-multi-select [rucInputData]=\"dynamicField?.rucMultiselectInput?.rucInputData\"\r\n [dataSource]=\"dynamicField?.rucMultiselectInput?.dataSource\" [customTheme]=\"customTheme\"\r\n (rucEvent)=\"passEvent($event)\"></uxp-ruclib-multi-select>\r\n </ng-template> -->\r\n <!-- <ng-template [ngSwitchCase]=\"'rucMultiFileUpload'\">\r\n <uxp-ruclib-multi-file-upload\r\n [rucInputData]=\"dynamicField?.rucMultiFileUploadInput?.rucInputData\" [customTheme]=\"customTheme\"\r\n (rucEvent)=\"passEvent($event,dynamicField)\"></uxp-ruclib-multi-file-upload>\r\n </ng-template> -->\r\n <div *ngIf=\"dynamicField.hasDependentFields && dynamicField.value\">\r\n <uxp-ruclib-metaform #dynamicField.id [rucInputData]=\"formData\" [childForm] =\"dynamicField.dependentFields\"\r\n [isChild]=\"true\" [selectedParentId] = \"dynamicField.selectedParentId\" (rucEvent)=\"passEvent($event,dynamicField.id)\"></uxp-ruclib-metaform>\r\n </div>\r\n \r\n </div>\r\n <div *ngIf=\"dynamicField.formType == 'stepper'\">\r\n <mat-stepper linear #stepper>\r\n <div *ngFor=\"let stapperField of dynamicField.stepper; let s = index;\" [ngSwitch]=\"stapperField?.fieldType\">\r\n <mat-step [stepControl]=\"stapperField.stepControl\" *ngIf=\"stapperField.stepControl != 'done'\">\r\n <ng-template matStepLabel>{{stapperField.stepperlabel}}</ng-template>\r\n <ng-container *ngFor=\"let stepperFormData of stapperField.stepperFormData; let j = index;\" [ngSwitch]=\"stepperFormData?.fieldType\">\r\n <div [ngStyle] = \"{ 'width.%': dynamicField.sameRowColumnWidth - 2 }\" [ngClass]=\"dynamicField.sameRow === true ? 'margin-5 column-in-same-row' : 'margin-5 column-in-new-row'\" \r\n >\r\n <ng-template [ngSwitchCase]=\"'input'\">\r\n <div>\r\n <ruc-meta-inputs [customTheme] = \"customTheme\" [rucInputData]=\"stepperFormData\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-inputs>\r\n </div>\r\n </ng-template>\r\n <ng-template class=\"\" [ngSwitchCase]=\"'textarea'\">\r\n <ruc-text-area [rucInputData]=\"stepperFormData\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-text-area>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'radio'\">\r\n <div>\r\n <ruc-meta-radio-group [customTheme] = \"customTheme\" [rucInputData]=\"stepperFormData\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-radio-group>\r\n </div>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'checkbox'\">\r\n <div >\r\n <ruc-meta-checkbox-group [rucInputData]=\"stepperFormData\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-checkbox-group>\r\n </div>\r\n </ng-template>\r\n <ng-template class=\"\" [ngSwitchCase]=\"'select'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-select [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-select>\r\n </div>\r\n </ng-template>\r\n </div>\r\n </ng-container>\r\n <div>\r\n <button mat-button matStepperPrevious *ngIf=\"s > 0\">Back</button>\r\n <button mat-button matStepperNext *ngIf=\"s< dynamicField.stepper.length\">Next</button>\r\n </div>\r\n </mat-step>\r\n <mat-step *ngIf=\"stapperField.stepControl == 'done'\">\r\n <ng-template matStepLabel>{{stapperField.stepControl}}</ng-template>\r\n <p>{{stapperField.stepperlabel}}</p>\r\n <div>\r\n <button mat-button matStepperPrevious>Back</button>\r\n <button mat-button (click)=\"stepper.reset()\">Reset</button>\r\n </div>\r\n </mat-step>\r\n </div>\r\n </mat-stepper>\r\n </div>\r\n </ng-container>\r\n <ng-container>\r\n <button mat-raised-button color=\"primary\" (click)=\"clearForm()\" *ngIf=\"!isChild\">Clear Form</button>\r\n </ng-container>\r\n \r\n</form>","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { RuclibMetaformComponent } from './ruclib-metaform/ruclib-metaform.component';\r\nimport { HttpClientModule } from '@angular/common/http';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatRadioModule } from '@angular/material/radio';\r\nimport { MatCheckboxModule } from '@angular/material/checkbox';\r\nimport { MatSelectModule } from '@angular/material/select';\r\nimport { MatAutocompleteModule } from '@angular/material/autocomplete';\r\nimport { MatButtonModule} from '@angular/material/button';\r\nimport { MatTooltipModule} from '@angular/material/tooltip';\r\nimport {MatStepperModule} from '@angular/material/stepper';\r\nimport { TextFieldModule} from '@angular/cdk/text-field';\r\nimport { RucMetaFormService } from '../services/ruc-meta-form.service';\r\nimport { RucMetaInputsComponent } from '../components/ruc-meta-inputs/ruc-meta-inputs.component';\r\nimport { RucMetaRadioGroupComponent } from '../components/ruc-meta-radio-group/ruc-meta-radio-group.component';\r\nimport { RucMetaCheckboxGroupComponent } from '../components/ruc-meta-checkbox-group/ruc-meta-checkbox-group.component';\r\nimport { RucMetaSelectComponent } from '../components/ruc-meta-select/ruc-meta-select.component';\r\nimport { RucTextAreaComponent } from '../components/ruc-text-area/ruc-text-area.component';\r\n\r\n// import {RuclibMultiSelectModule} from '@ruc-lib/multi-select';\r\n// import {RuclibMultiFileUploadModule} from '@ruc-lib/multi-file-upload';\r\n\r\n\r\n@NgModule({\r\n imports: [CommonModule,\r\n HttpClientModule,\r\n FormsModule,\r\n MatFormFieldModule,\r\n MatInputModule,\r\n MatRadioModule,\r\n MatCheckboxModule,\r\n MatSelectModule,\r\n MatAutocompleteModule,\r\n MatButtonModule, \r\n MatTooltipModule,\r\n TextFieldModule,\r\n MatStepperModule,\r\n // RuclibMultiSelectModule,\r\n // RuclibMultiFileUploadModule\r\n ],\r\n declarations: [\r\n RuclibMetaformComponent,\r\n RucMetaInputsComponent,\r\n RucMetaRadioGroupComponent,\r\n RucMetaCheckboxGroupComponent,\r\n RucMetaSelectComponent,\r\n RucTextAreaComponent\r\n ],\r\n exports: [\r\n RuclibMetaformComponent\r\n ],\r\n providers: [\r\n RucMetaFormService\r\n ]\r\n})\r\nexport class RuclibMetaformModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.RucMetaFormValidationService","i5","i1.RucMetaFormService","i2.RucMetaFormValidationService","i3","i4","i6","i7","i6.RucMetaInputsComponent","i7.RucMetaRadioGroupComponent","i8.RucMetaCheckboxGroupComponent","i9.RucMetaSelectComponent","i10.RucTextAreaComponent"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ruc-lib-metaform.mjs","sources":["../../src/services/ruc-meta-form.service.ts","../../src/services/ruc-meta-form-validation.service.ts","../../src/components/ruc-meta-inputs/ruc-meta-inputs.component.ts","../../src/components/ruc-meta-inputs/ruc-meta-inputs.component.html","../../src/components/ruc-meta-radio-group/ruc-meta-radio-group.component.ts","../../src/components/ruc-meta-radio-group/ruc-meta-radio-group.component.html","../../src/components/ruc-meta-checkbox-group/ruc-meta-checkbox-group.component.ts","../../src/components/ruc-meta-checkbox-group/ruc-meta-checkbox-group.component.html","../../src/components/ruc-meta-select/ruc-meta-select.component.ts","../../src/components/ruc-meta-select/ruc-meta-select.component.html","../../src/components/ruc-text-area/ruc-text-area.component.ts","../../src/components/ruc-text-area/ruc-text-area.component.html","../../src/lib/ruclib-metaform/ruclib-metaform.component.ts","../../src/lib/ruclib-metaform/ruclib-metaform.component.html","../../src/lib/ruclib-metaform.module.ts","../../src/ruc-lib-metaform.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\r\nimport { Observable,Subject, BehaviorSubject } from 'rxjs';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport {MetaFormConfig} from '../interfaces/metaFormsDefault';\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class RucMetaFormService {\r\n\r\n public metaFormData:MetaFormConfig | undefined;\r\n public currentFormElement: MetaFormConfig | undefined;\r\n\r\n constructor(private http: HttpClient) { }\r\n\r\n public formData: BehaviorSubject<any> = new BehaviorSubject([] as any);\r\n\r\n getFormJson(form: any){\r\n this.formData.next(form);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport {MetaFormConfig} from '../interfaces/metaFormsDefault';\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class RucMetaFormValidationService {\r\n\r\n public defaultErrorMessage = 'Invalid Input';\r\n\r\n constructor() { \r\n }\r\n\r\n nospaceValidator(formData:MetaFormConfig){\r\n const re = / /;\r\n if(formData.value.match(re)){\r\n return { nullTable: true }\r\n }else{\r\n return false;\r\n }\r\n }\r\n\r\n alphaNumericValidator(formData:MetaFormConfig){\r\n const re = '^[a-zA-Z0-9_]+$'\r\n return formData.value ? !formData.value.match(re) : false;\r\n }\r\n\r\n \r\n}\r\n","import { Component, Input, OnInit, EventEmitter, Output } from '@angular/core';\r\nimport {RucMetaFormValidationService} from '../../services/ruc-meta-form-validation.service';\r\n\r\n@Component({\r\n selector: 'ruc-meta-inputs',\r\n templateUrl: './ruc-meta-inputs.component.html',\r\n styleUrls: ['./ruc-meta-inputs.component.css']\r\n})\r\nexport class RucMetaInputsComponent implements OnInit {\r\n @Input() rucInputData : any;\r\n @Input() selectedParentId?:any; \r\n @Output() transferUserInput = new EventEmitter<any>();\r\n @Input() customTheme: string | undefined;\r\n errorMessage: string | undefined\r\n options: string[] = [];\r\n filteredOptions: any;\r\n constructor(public validationService:RucMetaFormValidationService) { \r\n \r\n }\r\n\r\n ngOnInit(): void {\r\n this.errorMessage = this.validationService.defaultErrorMessage; \r\n this.rucInputData.value === undefined ? \"\" : this.rucInputData.value;\r\n this.options = this.rucInputData.autocomplete;\r\n }\r\n /**\r\n * \r\n * @param e \r\n */\r\n modelChangeFn(e:any) {\r\n const validate = this.validationService.alphaNumericValidator(this.rucInputData);\r\n this.rucInputData.errorMsg = validate;\r\n if(this.rucInputData.autocomplete){\r\n this.filteredOptions = this._filter(this.rucInputData.value);\r\n }\r\n this.transferUserInput.emit(this.rucInputData);\r\n }\r\n\r\n private _filter(value: string): string[] {\r\n const filterValue = value.toLowerCase();\r\n return this.options.filter(option => option.toLowerCase().includes(filterValue));\r\n }\r\n\r\n}\r\n","<mat-form-field class=\"{{customTheme }}\" [ngStyle]=\"{ 'width.%': rucInputData?.width }\" [appearance]=\"rucInputData?.appearance || 'fill'\">\r\n <mat-label>{{rucInputData?.label}}</mat-label>\r\n <input type=\"{{rucInputData?.inputType}}\" color=\"accent\" matInput placeholder=\"{{rucInputData?.placeholder}}\" [(ngModel)]=\"rucInputData.value\" \r\n (ngModelChange)=\"modelChangeFn($event.target)\" required=\"{{rucInputData?.required}}\" size=\"{{rucInputData?.size}}\"\r\n maxlength=\"{{rucInputData?.maxlength}}\" min=\"{{rucInputData?.min}}\" max=\"{{rucInputData?.max}}\" pattern=\"{{rucInputData?.pattern}}\"\r\n step=\"{{rucInputData?.step}}\" autofocus=\"{{rucInputData?.autofocus}}\" width=\"{{rucInputData?.width}}\" height=\"{{rucInputData?.height}}\"\r\n matTooltip=\"{{rucInputData?.tooltip}}\"\r\n [matAutocomplete]=\"auto\" [matAutocompleteDisabled]=\"!rucInputData?.autocomplete\" [readonly]=\"rucInputData?.readonly\" [matTooltipPosition]=\"rucInputData?.tooltipPosition\"\r\n > \r\n <mat-autocomplete autoActiveFirstOption #auto=\"matAutocomplete\">\r\n <mat-option *ngFor=\"let option of filteredOptions\" [value]=\"option\">\r\n {{option}}\r\n </mat-option>\r\n </mat-autocomplete>\r\n </mat-form-field>\r\n <div *ngIf=\"rucInputData?.errorMsg\" class=\"form-error\">\r\n {{rucInputData?.customErrorMessage ? rucInputData?.customErrorMessage : errorMessage}}\r\n </div> \r\n","import { Component, Input, OnInit,EventEmitter, Output } from '@angular/core';\r\nimport {RucMetaFormValidationService} from '../../services/ruc-meta-form-validation.service';\r\nimport { MatRadioChange } from '@angular/material/radio';\r\n@Component({\r\n selector: 'ruc-meta-radio-group',\r\n templateUrl: './ruc-meta-radio-group.component.html',\r\n styleUrls: ['./ruc-meta-radio-group.component.css'],\r\n})\r\nexport class RucMetaRadioGroupComponent implements OnInit {\r\n @Input() rucInputData : any;\r\n @Input() customTheme: string | undefined;\r\n @Output() transferUserInput = new EventEmitter<any>();\r\n errorMessage: string | undefined\r\n radioValue: string | undefined;\r\n constructor(public validationService:RucMetaFormValidationService) { }\r\n\r\n ngOnInit(): void {\r\n this.errorMessage = this.validationService.defaultErrorMessage;\r\n }\r\n /**\r\n * \r\n * @param e \r\n */\r\n modelChangeFn(e:any) {\r\n this.rucInputData.value = e.value;\r\n this.transferUserInput.emit(this.rucInputData);\r\n }\r\n}\r\n","<mat-label>{{rucInputData?.label}}</mat-label>\r\n<mat-radio-group \r\n aria-labelledby=\"radio-group-label\"\r\n class=\"{{customTheme}} radio-group\" [(ngModel)]=\"radioValue\">\r\n <mat-radio-button class=\"radio-button\" *ngFor=\"let item of rucInputData?.groupOptions\" [value]=\"item.value\"\r\n (change)=\"modelChangeFn($event)\">\r\n {{item?.name}}\r\n </mat-radio-button>\r\n</mat-radio-group>\r\n<div *ngIf=\"rucInputData?.errorMsg\" class=\"form-error\">\r\n {{rucInputData?.customErrorMessage ? rucInputData?.customErrorMessage : errorMessage}}\r\n</div> \r\n","import { Component, Input, OnInit, EventEmitter, Output } from '@angular/core';\r\nimport {RucMetaFormValidationService} from '../../services/ruc-meta-form-validation.service';\r\n\r\n@Component({\r\n selector: 'ruc-meta-checkbox-group',\r\n templateUrl: './ruc-meta-checkbox-group.component.html',\r\n styleUrls: ['./ruc-meta-checkbox-group.component.css']\r\n})\r\nexport class RucMetaCheckboxGroupComponent implements OnInit {\r\n @Input() rucInputData : any;\r\n @Output() transferUserInput = new EventEmitter<any>();\r\n errorMessage: string | undefined\r\n\r\n constructor(public validationService:RucMetaFormValidationService) { }\r\n\r\n ngOnInit(): void {\r\n this.errorMessage = this.validationService.defaultErrorMessage;\r\n }\r\n /**\r\n * \r\n * @param e \r\n */\r\n modelChangeFn(e:any) {\r\n const checkboxValues: any[] = [];\r\n this.rucInputData.groupOptions.forEach((x: any)=>{\r\n if(x.value){\r\n checkboxValues.push(x.name);\r\n }\r\n });\r\n this.rucInputData.value = checkboxValues;\r\n this.transferUserInput.emit(this.rucInputData);\r\n }\r\n}\r\n","<mat-label class=\"margin-\">{{rucInputData?.label}}</mat-label>\r\n<ul class=\"ruc-checkbox\">\r\n <li *ngFor=\"let item of rucInputData?.groupOptions\">\r\n <mat-checkbox [(ngModel)]=\"item.value\" (ngModelChange)=\"modelChangeFn($event)\">\r\n {{item?.name}}\r\n </mat-checkbox>\r\n </li>\r\n</ul>\r\n<div *ngIf=\"rucInputData?.errorMsg\" class=\"form-error\">\r\n {{rucInputData?.customErrorMessage ? rucInputData?.customErrorMessage : errorMessage}}\r\n</div>","import { Component, Input, OnInit, EventEmitter, Output } from '@angular/core';\r\nimport { RucMetaFormService } from \"../../services/ruc-meta-form.service\"\r\nimport {RucMetaFormValidationService} from '../../services/ruc-meta-form-validation.service';\r\n\r\n@Component({\r\n selector: 'ruc-meta-select',\r\n templateUrl: './ruc-meta-select.component.html',\r\n styleUrls: ['./ruc-meta-select.component.css']\r\n})\r\nexport class RucMetaSelectComponent implements OnInit {\r\n \r\n @Input() rucInputData : any;\r\n errorMessage: string | undefined\r\n @Output() transferUserInput = new EventEmitter<any>();\r\n constructor(public service: RucMetaFormService,public validationService:RucMetaFormValidationService) { }\r\n\r\n ngOnInit(): void {\r\n this.errorMessage = this.validationService.defaultErrorMessage;\r\n }\r\n\r\n modelChangeFn(e:any) { \r\n this.rucInputData.groupOptions.forEach((x: any)=>{\r\n if(x.value == e.value){\r\n this.rucInputData.selectedParentId = x.id;\r\n }\r\n });\r\n if(this.rucInputData.dependentFields){\r\n this.removDependentFieldParentIdFromOther(this.rucInputData.dependentFields);\r\n }\r\n this.service.currentFormElement = this.rucInputData;\r\n this.transferUserInput.emit(this.rucInputData);\r\n }\r\n\r\n removDependentFieldParentIdFromOther(child: any){\r\n child.forEach((x:any)=>{\r\n if(x.selectedParentId){\r\n delete(x.selectedParentId);\r\n x.value = \"\";\r\n if(x.dependentFields){\r\n this.removDependentFieldParentIdFromOther(x.dependentFields);\r\n } \r\n } \r\n })\r\n }\r\n}\r\n","<div class=\"select-label\">\r\n <mat-label>{{rucInputData?.label}}</mat-label>\r\n</div>\r\n<mat-form-field [ngStyle]=\"{ 'width.%': rucInputData?.width }\" matTooltip=\"{{rucInputData?.tooltip}}\" [appearance]=\"rucInputData?.appearance || 'fill'\">\r\n <mat-label>Choose an option</mat-label>\r\n <mat-select (selectionChange)=\"modelChangeFn($event)\" [(ngModel)]=\"rucInputData.value\">\r\n <mat-option *ngFor=\"let item of rucInputData?.groupOptions\" [value]=\"item.value\" [disabled]=\"item?.disable\"> {{item.name}}</mat-option>\r\n </mat-select>\r\n</mat-form-field>\r\n<div *ngIf=\"rucInputData?.errorMsg\" class=\"form-error\">\r\n {{rucInputData?.customErrorMessage ? rucInputData?.customErrorMessage : errorMessage}}\r\n</div>","import { Component, Input, OnInit, EventEmitter, Output } from '@angular/core';\r\nimport {RucMetaFormValidationService} from '../../services/ruc-meta-form-validation.service';\r\n\r\n@Component({\r\n selector: 'ruc-text-area',\r\n templateUrl: './ruc-text-area.component.html',\r\n styleUrls: ['./ruc-text-area.component.css']\r\n})\r\nexport class RucTextAreaComponent implements OnInit {\r\n @Input() rucInputData : any;\r\n @Output() transferUserInput = new EventEmitter<any>();\r\n @Input() customTheme: string | undefined;\r\n errorMessage: string | undefined\r\n\r\n constructor(public validationService:RucMetaFormValidationService) { \r\n \r\n }\r\n\r\n ngOnInit(): void {\r\n this.errorMessage = this.validationService.defaultErrorMessage;\r\n }\r\n /**\r\n * \r\n * @param e \r\n */\r\n modelChangeFn(e:any) {\r\n this.transferUserInput.emit(this.rucInputData);\r\n }\r\n\r\n}\r\n","<mat-form-field [ngStyle]=\"{ 'width.%': rucInputData?.width }\" [appearance]=\"rucInputData?.appearance || 'fill'\" class=\"{{customTheme}}\">\r\n <mat-label>{{rucInputData?.label}}</mat-label>\r\n <textarea matInput\r\n placeholder=\"{{rucInputData?.placeholder}}\"\r\n cdkTextareaAutosize\r\n #autosize=\"cdkTextareaAutosize\"\r\n cdkAutosizeMinRows=\"{{rucInputData.min}}\"\r\n cdkAutosizeMaxRows=\"{{rucInputData.max}}\"\r\n [readonly]=\"rucInputData?.readonly\"\r\n [(ngModel)]=\"rucInputData.value\" \r\n matTooltip=\"{{rucInputData?.tooltip}}\"\r\n (ngModelChange)=\"modelChangeFn($event.target)\"></textarea>\r\n </mat-form-field>\r\n <div *ngIf=\"rucInputData?.errorMsg\" class=\"form-error\">\r\n {{rucInputData?.customErrorMessage ? rucInputData?.customErrorMessage : errorMessage}}\r\n </div>\r\n","import { Component, Input, Output, OnInit, EventEmitter, OnDestroy } from '@angular/core';\r\nimport {MetaFormConfig} from '../../interfaces/metaFormsDefault';\r\nimport { RucMetaFormService } from \"../../services/ruc-meta-form.service\"\r\nimport { Subscription } from 'rxjs';\r\n@Component({\r\n selector: 'uxp-ruclib-metaform',\r\n templateUrl: './ruclib-metaform.component.html',\r\n styleUrls: ['./ruclib-metaform.component.scss']\r\n})\r\nexport class RuclibMetaformComponent implements OnInit,OnDestroy{\r\n @Output() rucEvent = new EventEmitter<any>();\r\n @Output() childRucEvent = new EventEmitter<any>();\r\n @Input() rucInputData: MetaFormConfig[] = []\r\n @Input() childForm?: MetaFormConfig[]\r\n @Input()\r\n customTheme!: string;\r\n @Input() isChild?: boolean;\r\n @Input() selectedParentId: any;\r\n inputObjectDataMultiFileUpload?:any;\r\n metaFormSubscribeInputs: Subscription | undefined;\r\n formData: any\r\n constructor(public service: RucMetaFormService) { }\r\n \r\n ngOnInit(): void {\r\n if (!this.isChild) {\r\n this.service.getFormJson(this.rucInputData);\r\n this.getFormJson();\r\n } else {\r\n this.formData = this.childForm;\r\n }\r\n this.inputObjectDataMultiFileUpload = {\r\n multifileSelection: true,\r\n displayThumbnail: true,\r\n label: 'Choose File',\r\n uploadUrl: '/api/upload',\r\n deleteUrl: '/api/delete',\r\n };\r\n }\r\n \r\n /**\r\n * The purpose of this function to pass data from dependentFields to parent field\r\n * @param getObject \r\n * @param j \r\n */\r\n passEvent(getObject: any, formElement?: any) {\r\n const eventOutput = getObject?.eventOutput ? getObject.eventOutput : this.service.currentFormElement;\r\n if(getObject?.eventName == \"onUploading\"){\r\n formElement.value = getObject?.eventOutput.name ? getObject?.eventOutput.name : getObject?.eventOutput[0].name;\r\n }\r\n this.rucEvent.emit({ 'eventName': 'metaFormData', 'eventOutput': eventOutput, 'formData': this.formData, 'rucComponentEvent': getObject?.eventName });\r\n }\r\n\r\n /**\r\n * Initial function to load for data\r\n */\r\n getFormJson() {\r\n this.metaFormSubscribeInputs = this.service.formData.asObservable()\r\n .subscribe(\r\n (formData)=>{\r\n this.formData = formData;\r\n this.service.metaFormData = this.formData;\r\n } \r\n );\r\n }\r\n\r\n /**\r\n * This function is to emit form data\r\n * @param event \r\n */\r\n getMetaFormData(event: any) {\r\n this.rucEvent.emit({ 'eventName': 'metaFormData', 'eventOutput': event, 'formData': this.formData });\r\n }\r\n\r\n /**\r\n * Clear form data\r\n */\r\n clearForm(){\r\n this.formData.map((x:MetaFormConfig)=>{\r\n x.value = '';\r\n });\r\n }\r\n\r\n /**\r\n * Destroy the subscriber\r\n */\r\n ngOnDestroy() {\r\n if (this.metaFormSubscribeInputs) {\r\n this.metaFormSubscribeInputs.unsubscribe();\r\n }\r\n }\r\n}\r\n","<form novalidate>\r\n <ng-container *ngFor=\"let dynamicField of formData; let j = index;\" [ngSwitch]=\"dynamicField?.fieldType\">\r\n <div [ngStyle] = \"{ 'width.%': dynamicField.sameRowColumnWidth - 2 }\" [ngClass]=\"dynamicField.sameRow === true ? 'margin-5 column-in-same-row' : 'margin-5 column-in-new-row'\" \r\n *ngIf=\"dynamicField.formType != 'stepper'\">\r\n \r\n <ng-template [ngSwitchCase]=\"'input'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.hasDependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId)\">\r\n <ruc-meta-inputs [customTheme] = \"customTheme\" [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-inputs>\r\n </div>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'radio'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-radio-group [customTheme] = \"customTheme\" [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-radio-group>\r\n </div>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'checkbox'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-checkbox-group [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-checkbox-group>\r\n </div>\r\n </ng-template>\r\n <ng-template class=\"\" [ngSwitchCase]=\"'select'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-select [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-select>\r\n </div>\r\n </ng-template>\r\n <ng-template class=\"\" [ngSwitchCase]=\"'textarea'\">\r\n <ruc-text-area [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-text-area>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'rucMultiSelect'\">\r\n <uxp-ruclib-multi-select [rucInputData]=\"dynamicField?.rucMultiselectInput?.rucInputData\"\r\n [dataSource]=\"dynamicField?.rucMultiselectInput?.dataSource\" [customTheme]=\"customTheme\"\r\n (rucEvent)=\"passEvent($event)\"></uxp-ruclib-multi-select>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'rucMultiFileUpload'\">\r\n <uxp-ruclib-multi-file-upload\r\n [rucInputData]=\"dynamicField?.rucMultiFileUploadInput?.rucInputData\" [customTheme]=\"customTheme\"\r\n (rucEvent)=\"passEvent($event,dynamicField)\"></uxp-ruclib-multi-file-upload>\r\n </ng-template>\r\n <div *ngIf=\"dynamicField.hasDependentFields && dynamicField.value\">\r\n <uxp-ruclib-metaform #dynamicField.id [rucInputData]=\"formData\" [childForm] =\"dynamicField.dependentFields\"\r\n [isChild]=\"true\" [selectedParentId] = \"dynamicField.selectedParentId\" (rucEvent)=\"passEvent($event,dynamicField.id)\"></uxp-ruclib-metaform>\r\n </div>\r\n \r\n </div>\r\n <div *ngIf=\"dynamicField.formType == 'stepper'\">\r\n <mat-stepper linear #stepper>\r\n <div *ngFor=\"let stapperField of dynamicField.stepper; let s = index;\" [ngSwitch]=\"stapperField?.fieldType\">\r\n <mat-step [stepControl]=\"stapperField.stepControl\" *ngIf=\"stapperField.stepControl != 'done'\">\r\n <ng-template matStepLabel>{{stapperField.stepperlabel}}</ng-template>\r\n <ng-container *ngFor=\"let stepperFormData of stapperField.stepperFormData; let j = index;\" [ngSwitch]=\"stepperFormData?.fieldType\">\r\n <div [ngStyle] = \"{ 'width.%': dynamicField.sameRowColumnWidth - 2 }\" [ngClass]=\"dynamicField.sameRow === true ? 'margin-5 column-in-same-row' : 'margin-5 column-in-new-row'\" \r\n >\r\n <ng-template [ngSwitchCase]=\"'input'\">\r\n <div>\r\n <ruc-meta-inputs [customTheme] = \"customTheme\" [rucInputData]=\"stepperFormData\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-inputs>\r\n </div>\r\n </ng-template>\r\n <ng-template class=\"\" [ngSwitchCase]=\"'textarea'\">\r\n <ruc-text-area [rucInputData]=\"stepperFormData\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-text-area>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'radio'\">\r\n <div>\r\n <ruc-meta-radio-group [customTheme] = \"customTheme\" [rucInputData]=\"stepperFormData\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-radio-group>\r\n </div>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'checkbox'\">\r\n <div >\r\n <ruc-meta-checkbox-group [rucInputData]=\"stepperFormData\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-checkbox-group>\r\n </div>\r\n </ng-template>\r\n <ng-template class=\"\" [ngSwitchCase]=\"'select'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-select [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-select>\r\n </div>\r\n </ng-template>\r\n </div>\r\n </ng-container>\r\n <div>\r\n <button mat-button matStepperPrevious *ngIf=\"s > 0\">Back</button>\r\n <button mat-button matStepperNext *ngIf=\"s< dynamicField.stepper.length\">Next</button>\r\n </div>\r\n </mat-step>\r\n <mat-step *ngIf=\"stapperField.stepControl == 'done'\">\r\n <ng-template matStepLabel>{{stapperField.stepControl}}</ng-template>\r\n <p>{{stapperField.stepperlabel}}</p>\r\n <div>\r\n <button mat-button matStepperPrevious>Back</button>\r\n <button mat-button (click)=\"stepper.reset()\">Reset</button>\r\n </div>\r\n </mat-step>\r\n </div>\r\n </mat-stepper>\r\n </div>\r\n </ng-container>\r\n <ng-container>\r\n <button mat-raised-button color=\"primary\" (click)=\"clearForm()\" *ngIf=\"!isChild\">Clear Form</button>\r\n </ng-container>\r\n \r\n</form>","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { RuclibMetaformComponent } from './ruclib-metaform/ruclib-metaform.component';\r\nimport { HttpClientModule } from '@angular/common/http';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatRadioModule } from '@angular/material/radio';\r\nimport { MatCheckboxModule } from '@angular/material/checkbox';\r\nimport { MatSelectModule } from '@angular/material/select';\r\nimport { MatAutocompleteModule } from '@angular/material/autocomplete';\r\nimport { MatButtonModule} from '@angular/material/button';\r\nimport { MatTooltipModule} from '@angular/material/tooltip';\r\nimport {MatStepperModule} from '@angular/material/stepper';\r\nimport { TextFieldModule} from '@angular/cdk/text-field';\r\nimport { RucMetaFormService } from '../services/ruc-meta-form.service';\r\nimport { RucMetaInputsComponent } from '../components/ruc-meta-inputs/ruc-meta-inputs.component';\r\nimport { RucMetaRadioGroupComponent } from '../components/ruc-meta-radio-group/ruc-meta-radio-group.component';\r\nimport { RucMetaCheckboxGroupComponent } from '../components/ruc-meta-checkbox-group/ruc-meta-checkbox-group.component';\r\nimport { RucMetaSelectComponent } from '../components/ruc-meta-select/ruc-meta-select.component';\r\nimport { RucTextAreaComponent } from '../components/ruc-text-area/ruc-text-area.component';\r\n\r\nimport {RuclibMultiSelectModule} from '@ruc-lib/multi-select';\r\nimport {RuclibMultiFileUploadModule} from '@ruc-lib/multi-file-upload';\r\n\r\n\r\n@NgModule({\r\n imports: [CommonModule,\r\n HttpClientModule,\r\n FormsModule,\r\n MatFormFieldModule,\r\n MatInputModule,\r\n MatRadioModule,\r\n MatCheckboxModule,\r\n MatSelectModule,\r\n MatAutocompleteModule,\r\n MatButtonModule, \r\n MatTooltipModule,\r\n TextFieldModule,\r\n MatStepperModule,\r\n RuclibMultiSelectModule,\r\n RuclibMultiFileUploadModule\r\n ],\r\n declarations: [\r\n RuclibMetaformComponent,\r\n RucMetaInputsComponent,\r\n RucMetaRadioGroupComponent,\r\n RucMetaCheckboxGroupComponent,\r\n RucMetaSelectComponent,\r\n RucTextAreaComponent\r\n ],\r\n exports: [\r\n RuclibMetaformComponent\r\n ],\r\n providers: [\r\n RucMetaFormService\r\n ]\r\n})\r\nexport class RuclibMetaformModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.RucMetaFormValidationService","i5","i1.RucMetaFormService","i2.RucMetaFormValidationService","i3","i4","i6","i7","i8.RucMetaInputsComponent","i9.RucMetaRadioGroupComponent","i10.RucMetaCheckboxGroupComponent","i11.RucMetaSelectComponent","i12.RucTextAreaComponent"],"mappings":"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"}
|
|
@@ -11,6 +11,10 @@ import * as i4$1 from '@angular/material/button';
|
|
|
11
11
|
import { MatButtonModule } from '@angular/material/button';
|
|
12
12
|
import * as i5$3 from '@angular/material/stepper';
|
|
13
13
|
import { MatStepperModule } from '@angular/material/stepper';
|
|
14
|
+
import * as i6$3 from '@ruc-lib/multi-select';
|
|
15
|
+
import { RuclibMultiSelectModule } from '@ruc-lib/multi-select';
|
|
16
|
+
import * as i7$1 from '@ruc-lib/multi-file-upload';
|
|
17
|
+
import { RuclibMultiFileUploadModule } from '@ruc-lib/multi-file-upload';
|
|
14
18
|
import * as i4 from '@angular/material/form-field';
|
|
15
19
|
import { MatFormFieldModule } from '@angular/material/form-field';
|
|
16
20
|
import * as i5 from '@angular/material/input';
|
|
@@ -324,10 +328,10 @@ class RuclibMetaformComponent {
|
|
|
324
328
|
}
|
|
325
329
|
}
|
|
326
330
|
RuclibMetaformComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RuclibMetaformComponent, deps: [{ token: RucMetaFormService }], target: i0.ɵɵFactoryTarget.Component });
|
|
327
|
-
RuclibMetaformComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: RuclibMetaformComponent, selector: "uxp-ruclib-metaform", inputs: { rucInputData: "rucInputData", childForm: "childForm", customTheme: "customTheme", isChild: "isChild", selectedParentId: "selectedParentId" }, outputs: { rucEvent: "rucEvent", childRucEvent: "childRucEvent" }, ngImport: i0, template: "<form novalidate>\r\n <ng-container *ngFor=\"let dynamicField of formData; let j = index;\" [ngSwitch]=\"dynamicField?.fieldType\">\r\n <div [ngStyle] = \"{ 'width.%': dynamicField.sameRowColumnWidth - 2 }\" [ngClass]=\"dynamicField.sameRow === true ? 'margin-5 column-in-same-row' : 'margin-5 column-in-new-row'\" \r\n *ngIf=\"dynamicField.formType != 'stepper'\">\r\n \r\n <ng-template [ngSwitchCase]=\"'input'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.hasDependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId)\">\r\n <ruc-meta-inputs [customTheme] = \"customTheme\" [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-inputs>\r\n </div>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'radio'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-radio-group [customTheme] = \"customTheme\" [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-radio-group>\r\n </div>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'checkbox'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-checkbox-group [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-checkbox-group>\r\n </div>\r\n </ng-template>\r\n <ng-template class=\"\" [ngSwitchCase]=\"'select'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-select [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-select>\r\n </div>\r\n </ng-template>\r\n <ng-template class=\"\" [ngSwitchCase]=\"'textarea'\">\r\n <ruc-text-area [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-text-area>\r\n </ng-template>\r\n <!-- <ng-template [ngSwitchCase]=\"'rucMultiSelect'\">\r\n <uxp-ruclib-multi-select [rucInputData]=\"dynamicField?.rucMultiselectInput?.rucInputData\"\r\n [dataSource]=\"dynamicField?.rucMultiselectInput?.dataSource\" [customTheme]=\"customTheme\"\r\n (rucEvent)=\"passEvent($event)\"></uxp-ruclib-multi-select>\r\n </ng-template> -->\r\n <!-- <ng-template [ngSwitchCase]=\"'rucMultiFileUpload'\">\r\n <uxp-ruclib-multi-file-upload\r\n [rucInputData]=\"dynamicField?.rucMultiFileUploadInput?.rucInputData\" [customTheme]=\"customTheme\"\r\n (rucEvent)=\"passEvent($event,dynamicField)\"></uxp-ruclib-multi-file-upload>\r\n </ng-template> -->\r\n <div *ngIf=\"dynamicField.hasDependentFields && dynamicField.value\">\r\n <uxp-ruclib-metaform #dynamicField.id [rucInputData]=\"formData\" [childForm] =\"dynamicField.dependentFields\"\r\n [isChild]=\"true\" [selectedParentId] = \"dynamicField.selectedParentId\" (rucEvent)=\"passEvent($event,dynamicField.id)\"></uxp-ruclib-metaform>\r\n </div>\r\n \r\n </div>\r\n <div *ngIf=\"dynamicField.formType == 'stepper'\">\r\n <mat-stepper linear #stepper>\r\n <div *ngFor=\"let stapperField of dynamicField.stepper; let s = index;\" [ngSwitch]=\"stapperField?.fieldType\">\r\n <mat-step [stepControl]=\"stapperField.stepControl\" *ngIf=\"stapperField.stepControl != 'done'\">\r\n <ng-template matStepLabel>{{stapperField.stepperlabel}}</ng-template>\r\n <ng-container *ngFor=\"let stepperFormData of stapperField.stepperFormData; let j = index;\" [ngSwitch]=\"stepperFormData?.fieldType\">\r\n <div [ngStyle] = \"{ 'width.%': dynamicField.sameRowColumnWidth - 2 }\" [ngClass]=\"dynamicField.sameRow === true ? 'margin-5 column-in-same-row' : 'margin-5 column-in-new-row'\" \r\n >\r\n <ng-template [ngSwitchCase]=\"'input'\">\r\n <div>\r\n <ruc-meta-inputs [customTheme] = \"customTheme\" [rucInputData]=\"stepperFormData\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-inputs>\r\n </div>\r\n </ng-template>\r\n <ng-template class=\"\" [ngSwitchCase]=\"'textarea'\">\r\n <ruc-text-area [rucInputData]=\"stepperFormData\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-text-area>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'radio'\">\r\n <div>\r\n <ruc-meta-radio-group [customTheme] = \"customTheme\" [rucInputData]=\"stepperFormData\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-radio-group>\r\n </div>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'checkbox'\">\r\n <div >\r\n <ruc-meta-checkbox-group [rucInputData]=\"stepperFormData\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-checkbox-group>\r\n </div>\r\n </ng-template>\r\n <ng-template class=\"\" [ngSwitchCase]=\"'select'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-select [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-select>\r\n </div>\r\n </ng-template>\r\n </div>\r\n </ng-container>\r\n <div>\r\n <button mat-button matStepperPrevious *ngIf=\"s > 0\">Back</button>\r\n <button mat-button matStepperNext *ngIf=\"s< dynamicField.stepper.length\">Next</button>\r\n </div>\r\n </mat-step>\r\n <mat-step *ngIf=\"stapperField.stepControl == 'done'\">\r\n <ng-template matStepLabel>{{stapperField.stepControl}}</ng-template>\r\n <p>{{stapperField.stepperlabel}}</p>\r\n <div>\r\n <button mat-button matStepperPrevious>Back</button>\r\n <button mat-button (click)=\"stepper.reset()\">Reset</button>\r\n </div>\r\n </mat-step>\r\n </div>\r\n </mat-stepper>\r\n </div>\r\n </ng-container>\r\n <ng-container>\r\n <button mat-raised-button color=\"primary\" (click)=\"clearForm()\" *ngIf=\"!isChild\">Clear Form</button>\r\n </ng-container>\r\n \r\n</form>", styles: [".form-error{color:red}.column-in-same-row{float:left}.column-in-new-row{clear:left}.margin-5{margin:1%}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i4$1.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i5$3.MatStep, selector: "mat-step", inputs: ["color"], exportAs: ["matStep"] }, { kind: "directive", type: i5$3.MatStepLabel, selector: "[matStepLabel]" }, { kind: "component", type: i5$3.MatStepper, selector: "mat-stepper, mat-vertical-stepper, mat-horizontal-stepper, [matStepper]", inputs: ["selectedIndex", "disableRipple", "color", "labelPosition", "headerPosition", "animationDuration"], outputs: ["animationDone"], exportAs: ["matStepper", "matVerticalStepper", "matHorizontalStepper"] }, { kind: "directive", type: i5$3.MatStepperNext, selector: "button[matStepperNext]", inputs: ["type"] }, { kind: "directive", type: i5$3.MatStepperPrevious, selector: "button[matStepperPrevious]", inputs: ["type"] }, { kind: "component", type: RuclibMetaformComponent, selector: "uxp-ruclib-metaform", inputs: ["rucInputData", "childForm", "customTheme", "isChild", "selectedParentId"], outputs: ["rucEvent", "childRucEvent"] }, { kind: "component", type: RucMetaInputsComponent, selector: "ruc-meta-inputs", inputs: ["rucInputData", "selectedParentId", "customTheme"], outputs: ["transferUserInput"] }, { kind: "component", type: RucMetaRadioGroupComponent, selector: "ruc-meta-radio-group", inputs: ["rucInputData", "customTheme"], outputs: ["transferUserInput"] }, { kind: "component", type: RucMetaCheckboxGroupComponent, selector: "ruc-meta-checkbox-group", inputs: ["rucInputData"], outputs: ["transferUserInput"] }, { kind: "component", type: RucMetaSelectComponent, selector: "ruc-meta-select", inputs: ["rucInputData"], outputs: ["transferUserInput"] }, { kind: "component", type: RucTextAreaComponent, selector: "ruc-text-area", inputs: ["rucInputData", "customTheme"], outputs: ["transferUserInput"] }] });
|
|
331
|
+
RuclibMetaformComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: RuclibMetaformComponent, selector: "uxp-ruclib-metaform", inputs: { rucInputData: "rucInputData", childForm: "childForm", customTheme: "customTheme", isChild: "isChild", selectedParentId: "selectedParentId" }, outputs: { rucEvent: "rucEvent", childRucEvent: "childRucEvent" }, ngImport: i0, template: "<form novalidate>\r\n <ng-container *ngFor=\"let dynamicField of formData; let j = index;\" [ngSwitch]=\"dynamicField?.fieldType\">\r\n <div [ngStyle] = \"{ 'width.%': dynamicField.sameRowColumnWidth - 2 }\" [ngClass]=\"dynamicField.sameRow === true ? 'margin-5 column-in-same-row' : 'margin-5 column-in-new-row'\" \r\n *ngIf=\"dynamicField.formType != 'stepper'\">\r\n \r\n <ng-template [ngSwitchCase]=\"'input'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.hasDependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId)\">\r\n <ruc-meta-inputs [customTheme] = \"customTheme\" [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-inputs>\r\n </div>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'radio'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-radio-group [customTheme] = \"customTheme\" [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-radio-group>\r\n </div>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'checkbox'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-checkbox-group [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-checkbox-group>\r\n </div>\r\n </ng-template>\r\n <ng-template class=\"\" [ngSwitchCase]=\"'select'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-select [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-select>\r\n </div>\r\n </ng-template>\r\n <ng-template class=\"\" [ngSwitchCase]=\"'textarea'\">\r\n <ruc-text-area [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-text-area>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'rucMultiSelect'\">\r\n <uxp-ruclib-multi-select [rucInputData]=\"dynamicField?.rucMultiselectInput?.rucInputData\"\r\n [dataSource]=\"dynamicField?.rucMultiselectInput?.dataSource\" [customTheme]=\"customTheme\"\r\n (rucEvent)=\"passEvent($event)\"></uxp-ruclib-multi-select>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'rucMultiFileUpload'\">\r\n <uxp-ruclib-multi-file-upload\r\n [rucInputData]=\"dynamicField?.rucMultiFileUploadInput?.rucInputData\" [customTheme]=\"customTheme\"\r\n (rucEvent)=\"passEvent($event,dynamicField)\"></uxp-ruclib-multi-file-upload>\r\n </ng-template>\r\n <div *ngIf=\"dynamicField.hasDependentFields && dynamicField.value\">\r\n <uxp-ruclib-metaform #dynamicField.id [rucInputData]=\"formData\" [childForm] =\"dynamicField.dependentFields\"\r\n [isChild]=\"true\" [selectedParentId] = \"dynamicField.selectedParentId\" (rucEvent)=\"passEvent($event,dynamicField.id)\"></uxp-ruclib-metaform>\r\n </div>\r\n \r\n </div>\r\n <div *ngIf=\"dynamicField.formType == 'stepper'\">\r\n <mat-stepper linear #stepper>\r\n <div *ngFor=\"let stapperField of dynamicField.stepper; let s = index;\" [ngSwitch]=\"stapperField?.fieldType\">\r\n <mat-step [stepControl]=\"stapperField.stepControl\" *ngIf=\"stapperField.stepControl != 'done'\">\r\n <ng-template matStepLabel>{{stapperField.stepperlabel}}</ng-template>\r\n <ng-container *ngFor=\"let stepperFormData of stapperField.stepperFormData; let j = index;\" [ngSwitch]=\"stepperFormData?.fieldType\">\r\n <div [ngStyle] = \"{ 'width.%': dynamicField.sameRowColumnWidth - 2 }\" [ngClass]=\"dynamicField.sameRow === true ? 'margin-5 column-in-same-row' : 'margin-5 column-in-new-row'\" \r\n >\r\n <ng-template [ngSwitchCase]=\"'input'\">\r\n <div>\r\n <ruc-meta-inputs [customTheme] = \"customTheme\" [rucInputData]=\"stepperFormData\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-inputs>\r\n </div>\r\n </ng-template>\r\n <ng-template class=\"\" [ngSwitchCase]=\"'textarea'\">\r\n <ruc-text-area [rucInputData]=\"stepperFormData\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-text-area>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'radio'\">\r\n <div>\r\n <ruc-meta-radio-group [customTheme] = \"customTheme\" [rucInputData]=\"stepperFormData\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-radio-group>\r\n </div>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'checkbox'\">\r\n <div >\r\n <ruc-meta-checkbox-group [rucInputData]=\"stepperFormData\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-checkbox-group>\r\n </div>\r\n </ng-template>\r\n <ng-template class=\"\" [ngSwitchCase]=\"'select'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-select [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-select>\r\n </div>\r\n </ng-template>\r\n </div>\r\n </ng-container>\r\n <div>\r\n <button mat-button matStepperPrevious *ngIf=\"s > 0\">Back</button>\r\n <button mat-button matStepperNext *ngIf=\"s< dynamicField.stepper.length\">Next</button>\r\n </div>\r\n </mat-step>\r\n <mat-step *ngIf=\"stapperField.stepControl == 'done'\">\r\n <ng-template matStepLabel>{{stapperField.stepControl}}</ng-template>\r\n <p>{{stapperField.stepperlabel}}</p>\r\n <div>\r\n <button mat-button matStepperPrevious>Back</button>\r\n <button mat-button (click)=\"stepper.reset()\">Reset</button>\r\n </div>\r\n </mat-step>\r\n </div>\r\n </mat-stepper>\r\n </div>\r\n </ng-container>\r\n <ng-container>\r\n <button mat-raised-button color=\"primary\" (click)=\"clearForm()\" *ngIf=\"!isChild\">Clear Form</button>\r\n </ng-container>\r\n \r\n</form>", styles: [".form-error{color:red}.column-in-same-row{float:left}.column-in-new-row{clear:left}.margin-5{margin:1%}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i4$1.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i5$3.MatStep, selector: "mat-step", inputs: ["color"], exportAs: ["matStep"] }, { kind: "directive", type: i5$3.MatStepLabel, selector: "[matStepLabel]" }, { kind: "component", type: i5$3.MatStepper, selector: "mat-stepper, mat-vertical-stepper, mat-horizontal-stepper, [matStepper]", inputs: ["selectedIndex", "disableRipple", "color", "labelPosition", "headerPosition", "animationDuration"], outputs: ["animationDone"], exportAs: ["matStepper", "matVerticalStepper", "matHorizontalStepper"] }, { kind: "directive", type: i5$3.MatStepperNext, selector: "button[matStepperNext]", inputs: ["type"] }, { kind: "directive", type: i5$3.MatStepperPrevious, selector: "button[matStepperPrevious]", inputs: ["type"] }, { kind: "component", type: i6$3.RuclibMultiSelectComponent, selector: "uxp-ruclib-multi-select", inputs: ["rucInputData", "customTheme", "dataSource"], outputs: ["rucEvent"] }, { kind: "component", type: i7$1.RuclibMultiFileUploadComponent, selector: "uxp-ruclib-multi-file-upload", inputs: ["rucInputData", "customTheme"], outputs: ["rucEvent"] }, { kind: "component", type: RuclibMetaformComponent, selector: "uxp-ruclib-metaform", inputs: ["rucInputData", "childForm", "customTheme", "isChild", "selectedParentId"], outputs: ["rucEvent", "childRucEvent"] }, { kind: "component", type: RucMetaInputsComponent, selector: "ruc-meta-inputs", inputs: ["rucInputData", "selectedParentId", "customTheme"], outputs: ["transferUserInput"] }, { kind: "component", type: RucMetaRadioGroupComponent, selector: "ruc-meta-radio-group", inputs: ["rucInputData", "customTheme"], outputs: ["transferUserInput"] }, { kind: "component", type: RucMetaCheckboxGroupComponent, selector: "ruc-meta-checkbox-group", inputs: ["rucInputData"], outputs: ["transferUserInput"] }, { kind: "component", type: RucMetaSelectComponent, selector: "ruc-meta-select", inputs: ["rucInputData"], outputs: ["transferUserInput"] }, { kind: "component", type: RucTextAreaComponent, selector: "ruc-text-area", inputs: ["rucInputData", "customTheme"], outputs: ["transferUserInput"] }] });
|
|
328
332
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RuclibMetaformComponent, decorators: [{
|
|
329
333
|
type: Component,
|
|
330
|
-
args: [{ selector: 'uxp-ruclib-metaform', template: "<form novalidate>\r\n <ng-container *ngFor=\"let dynamicField of formData; let j = index;\" [ngSwitch]=\"dynamicField?.fieldType\">\r\n <div [ngStyle] = \"{ 'width.%': dynamicField.sameRowColumnWidth - 2 }\" [ngClass]=\"dynamicField.sameRow === true ? 'margin-5 column-in-same-row' : 'margin-5 column-in-new-row'\" \r\n *ngIf=\"dynamicField.formType != 'stepper'\">\r\n \r\n <ng-template [ngSwitchCase]=\"'input'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.hasDependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId)\">\r\n <ruc-meta-inputs [customTheme] = \"customTheme\" [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-inputs>\r\n </div>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'radio'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-radio-group [customTheme] = \"customTheme\" [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-radio-group>\r\n </div>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'checkbox'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-checkbox-group [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-checkbox-group>\r\n </div>\r\n </ng-template>\r\n <ng-template class=\"\" [ngSwitchCase]=\"'select'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-select [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-select>\r\n </div>\r\n </ng-template>\r\n <ng-template class=\"\" [ngSwitchCase]=\"'textarea'\">\r\n <ruc-text-area [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-text-area>\r\n </ng-template>\r\n
|
|
334
|
+
args: [{ selector: 'uxp-ruclib-metaform', template: "<form novalidate>\r\n <ng-container *ngFor=\"let dynamicField of formData; let j = index;\" [ngSwitch]=\"dynamicField?.fieldType\">\r\n <div [ngStyle] = \"{ 'width.%': dynamicField.sameRowColumnWidth - 2 }\" [ngClass]=\"dynamicField.sameRow === true ? 'margin-5 column-in-same-row' : 'margin-5 column-in-new-row'\" \r\n *ngIf=\"dynamicField.formType != 'stepper'\">\r\n \r\n <ng-template [ngSwitchCase]=\"'input'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.hasDependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId)\">\r\n <ruc-meta-inputs [customTheme] = \"customTheme\" [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-inputs>\r\n </div>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'radio'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-radio-group [customTheme] = \"customTheme\" [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-radio-group>\r\n </div>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'checkbox'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-checkbox-group [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-checkbox-group>\r\n </div>\r\n </ng-template>\r\n <ng-template class=\"\" [ngSwitchCase]=\"'select'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-select [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-select>\r\n </div>\r\n </ng-template>\r\n <ng-template class=\"\" [ngSwitchCase]=\"'textarea'\">\r\n <ruc-text-area [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-text-area>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'rucMultiSelect'\">\r\n <uxp-ruclib-multi-select [rucInputData]=\"dynamicField?.rucMultiselectInput?.rucInputData\"\r\n [dataSource]=\"dynamicField?.rucMultiselectInput?.dataSource\" [customTheme]=\"customTheme\"\r\n (rucEvent)=\"passEvent($event)\"></uxp-ruclib-multi-select>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'rucMultiFileUpload'\">\r\n <uxp-ruclib-multi-file-upload\r\n [rucInputData]=\"dynamicField?.rucMultiFileUploadInput?.rucInputData\" [customTheme]=\"customTheme\"\r\n (rucEvent)=\"passEvent($event,dynamicField)\"></uxp-ruclib-multi-file-upload>\r\n </ng-template>\r\n <div *ngIf=\"dynamicField.hasDependentFields && dynamicField.value\">\r\n <uxp-ruclib-metaform #dynamicField.id [rucInputData]=\"formData\" [childForm] =\"dynamicField.dependentFields\"\r\n [isChild]=\"true\" [selectedParentId] = \"dynamicField.selectedParentId\" (rucEvent)=\"passEvent($event,dynamicField.id)\"></uxp-ruclib-metaform>\r\n </div>\r\n \r\n </div>\r\n <div *ngIf=\"dynamicField.formType == 'stepper'\">\r\n <mat-stepper linear #stepper>\r\n <div *ngFor=\"let stapperField of dynamicField.stepper; let s = index;\" [ngSwitch]=\"stapperField?.fieldType\">\r\n <mat-step [stepControl]=\"stapperField.stepControl\" *ngIf=\"stapperField.stepControl != 'done'\">\r\n <ng-template matStepLabel>{{stapperField.stepperlabel}}</ng-template>\r\n <ng-container *ngFor=\"let stepperFormData of stapperField.stepperFormData; let j = index;\" [ngSwitch]=\"stepperFormData?.fieldType\">\r\n <div [ngStyle] = \"{ 'width.%': dynamicField.sameRowColumnWidth - 2 }\" [ngClass]=\"dynamicField.sameRow === true ? 'margin-5 column-in-same-row' : 'margin-5 column-in-new-row'\" \r\n >\r\n <ng-template [ngSwitchCase]=\"'input'\">\r\n <div>\r\n <ruc-meta-inputs [customTheme] = \"customTheme\" [rucInputData]=\"stepperFormData\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-inputs>\r\n </div>\r\n </ng-template>\r\n <ng-template class=\"\" [ngSwitchCase]=\"'textarea'\">\r\n <ruc-text-area [rucInputData]=\"stepperFormData\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-text-area>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'radio'\">\r\n <div>\r\n <ruc-meta-radio-group [customTheme] = \"customTheme\" [rucInputData]=\"stepperFormData\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-radio-group>\r\n </div>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'checkbox'\">\r\n <div >\r\n <ruc-meta-checkbox-group [rucInputData]=\"stepperFormData\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-checkbox-group>\r\n </div>\r\n </ng-template>\r\n <ng-template class=\"\" [ngSwitchCase]=\"'select'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-select [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-select>\r\n </div>\r\n </ng-template>\r\n </div>\r\n </ng-container>\r\n <div>\r\n <button mat-button matStepperPrevious *ngIf=\"s > 0\">Back</button>\r\n <button mat-button matStepperNext *ngIf=\"s< dynamicField.stepper.length\">Next</button>\r\n </div>\r\n </mat-step>\r\n <mat-step *ngIf=\"stapperField.stepControl == 'done'\">\r\n <ng-template matStepLabel>{{stapperField.stepControl}}</ng-template>\r\n <p>{{stapperField.stepperlabel}}</p>\r\n <div>\r\n <button mat-button matStepperPrevious>Back</button>\r\n <button mat-button (click)=\"stepper.reset()\">Reset</button>\r\n </div>\r\n </mat-step>\r\n </div>\r\n </mat-stepper>\r\n </div>\r\n </ng-container>\r\n <ng-container>\r\n <button mat-raised-button color=\"primary\" (click)=\"clearForm()\" *ngIf=\"!isChild\">Clear Form</button>\r\n </ng-container>\r\n \r\n</form>", styles: [".form-error{color:red}.column-in-same-row{float:left}.column-in-new-row{clear:left}.margin-5{margin:1%}\n"] }]
|
|
331
335
|
}], ctorParameters: function () { return [{ type: RucMetaFormService }]; }, propDecorators: { rucEvent: [{
|
|
332
336
|
type: Output
|
|
333
337
|
}], childRucEvent: [{
|
|
@@ -344,8 +348,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
344
348
|
type: Input
|
|
345
349
|
}] } });
|
|
346
350
|
|
|
347
|
-
// import {RuclibMultiSelectModule} from '@ruc-lib/multi-select';
|
|
348
|
-
// import {RuclibMultiFileUploadModule} from '@ruc-lib/multi-file-upload';
|
|
349
351
|
class RuclibMetaformModule {
|
|
350
352
|
}
|
|
351
353
|
RuclibMetaformModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RuclibMetaformModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
@@ -366,7 +368,9 @@ RuclibMetaformModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", ve
|
|
|
366
368
|
MatButtonModule,
|
|
367
369
|
MatTooltipModule,
|
|
368
370
|
TextFieldModule,
|
|
369
|
-
MatStepperModule
|
|
371
|
+
MatStepperModule,
|
|
372
|
+
RuclibMultiSelectModule,
|
|
373
|
+
RuclibMultiFileUploadModule], exports: [RuclibMetaformComponent] });
|
|
370
374
|
RuclibMetaformModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RuclibMetaformModule, providers: [
|
|
371
375
|
RucMetaFormService
|
|
372
376
|
], imports: [CommonModule,
|
|
@@ -381,7 +385,9 @@ RuclibMetaformModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", ve
|
|
|
381
385
|
MatButtonModule,
|
|
382
386
|
MatTooltipModule,
|
|
383
387
|
TextFieldModule,
|
|
384
|
-
MatStepperModule
|
|
388
|
+
MatStepperModule,
|
|
389
|
+
RuclibMultiSelectModule,
|
|
390
|
+
RuclibMultiFileUploadModule] });
|
|
385
391
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RuclibMetaformModule, decorators: [{
|
|
386
392
|
type: NgModule,
|
|
387
393
|
args: [{
|
|
@@ -398,8 +404,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
398
404
|
MatTooltipModule,
|
|
399
405
|
TextFieldModule,
|
|
400
406
|
MatStepperModule,
|
|
401
|
-
|
|
402
|
-
|
|
407
|
+
RuclibMultiSelectModule,
|
|
408
|
+
RuclibMultiFileUploadModule
|
|
403
409
|
],
|
|
404
410
|
declarations: [
|
|
405
411
|
RuclibMetaformComponent,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ruc-lib-metaform.mjs","sources":["../../src/services/ruc-meta-form.service.ts","../../src/services/ruc-meta-form-validation.service.ts","../../src/components/ruc-meta-inputs/ruc-meta-inputs.component.ts","../../src/components/ruc-meta-inputs/ruc-meta-inputs.component.html","../../src/components/ruc-meta-radio-group/ruc-meta-radio-group.component.ts","../../src/components/ruc-meta-radio-group/ruc-meta-radio-group.component.html","../../src/components/ruc-meta-checkbox-group/ruc-meta-checkbox-group.component.ts","../../src/components/ruc-meta-checkbox-group/ruc-meta-checkbox-group.component.html","../../src/components/ruc-meta-select/ruc-meta-select.component.ts","../../src/components/ruc-meta-select/ruc-meta-select.component.html","../../src/components/ruc-text-area/ruc-text-area.component.ts","../../src/components/ruc-text-area/ruc-text-area.component.html","../../src/lib/ruclib-metaform/ruclib-metaform.component.ts","../../src/lib/ruclib-metaform/ruclib-metaform.component.html","../../src/lib/ruclib-metaform.module.ts","../../src/ruc-lib-metaform.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\r\nimport { Observable,Subject, BehaviorSubject } from 'rxjs';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport {MetaFormConfig} from '../interfaces/metaFormsDefault';\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class RucMetaFormService {\r\n\r\n public metaFormData:MetaFormConfig | undefined;\r\n public currentFormElement: MetaFormConfig | undefined;\r\n\r\n constructor(private http: HttpClient) { }\r\n\r\n public formData: BehaviorSubject<any> = new BehaviorSubject([] as any);\r\n\r\n getFormJson(form: any){\r\n this.formData.next(form);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport {MetaFormConfig} from '../interfaces/metaFormsDefault';\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class RucMetaFormValidationService {\r\n\r\n public defaultErrorMessage = 'Invalid Input';\r\n\r\n constructor() { \r\n }\r\n\r\n nospaceValidator(formData:MetaFormConfig){\r\n const re = / /;\r\n if(formData.value.match(re)){\r\n return { nullTable: true }\r\n }else{\r\n return false;\r\n }\r\n }\r\n\r\n alphaNumericValidator(formData:MetaFormConfig){\r\n const re = '^[a-zA-Z0-9_]+$'\r\n return formData.value ? !formData.value.match(re) : false;\r\n }\r\n\r\n \r\n}\r\n","import { Component, Input, OnInit, EventEmitter, Output } from '@angular/core';\r\nimport {RucMetaFormValidationService} from '../../services/ruc-meta-form-validation.service';\r\n\r\n@Component({\r\n selector: 'ruc-meta-inputs',\r\n templateUrl: './ruc-meta-inputs.component.html',\r\n styleUrls: ['./ruc-meta-inputs.component.css']\r\n})\r\nexport class RucMetaInputsComponent implements OnInit {\r\n @Input() rucInputData : any;\r\n @Input() selectedParentId?:any; \r\n @Output() transferUserInput = new EventEmitter<any>();\r\n @Input() customTheme: string | undefined;\r\n errorMessage: string | undefined\r\n options: string[] = [];\r\n filteredOptions: any;\r\n constructor(public validationService:RucMetaFormValidationService) { \r\n \r\n }\r\n\r\n ngOnInit(): void {\r\n this.errorMessage = this.validationService.defaultErrorMessage; \r\n this.rucInputData.value === undefined ? \"\" : this.rucInputData.value;\r\n this.options = this.rucInputData.autocomplete;\r\n }\r\n /**\r\n * \r\n * @param e \r\n */\r\n modelChangeFn(e:any) {\r\n const validate = this.validationService.alphaNumericValidator(this.rucInputData);\r\n this.rucInputData.errorMsg = validate;\r\n if(this.rucInputData.autocomplete){\r\n this.filteredOptions = this._filter(this.rucInputData.value);\r\n }\r\n this.transferUserInput.emit(this.rucInputData);\r\n }\r\n\r\n private _filter(value: string): string[] {\r\n const filterValue = value.toLowerCase();\r\n return this.options.filter(option => option.toLowerCase().includes(filterValue));\r\n }\r\n\r\n}\r\n","<mat-form-field class=\"{{customTheme }}\" [ngStyle]=\"{ 'width.%': rucInputData?.width }\" [appearance]=\"rucInputData?.appearance || 'fill'\">\r\n <mat-label>{{rucInputData?.label}}</mat-label>\r\n <input type=\"{{rucInputData?.inputType}}\" color=\"accent\" matInput placeholder=\"{{rucInputData?.placeholder}}\" [(ngModel)]=\"rucInputData.value\" \r\n (ngModelChange)=\"modelChangeFn($event.target)\" required=\"{{rucInputData?.required}}\" size=\"{{rucInputData?.size}}\"\r\n maxlength=\"{{rucInputData?.maxlength}}\" min=\"{{rucInputData?.min}}\" max=\"{{rucInputData?.max}}\" pattern=\"{{rucInputData?.pattern}}\"\r\n step=\"{{rucInputData?.step}}\" autofocus=\"{{rucInputData?.autofocus}}\" width=\"{{rucInputData?.width}}\" height=\"{{rucInputData?.height}}\"\r\n matTooltip=\"{{rucInputData?.tooltip}}\"\r\n [matAutocomplete]=\"auto\" [matAutocompleteDisabled]=\"!rucInputData?.autocomplete\" [readonly]=\"rucInputData?.readonly\" [matTooltipPosition]=\"rucInputData?.tooltipPosition\"\r\n > \r\n <mat-autocomplete autoActiveFirstOption #auto=\"matAutocomplete\">\r\n <mat-option *ngFor=\"let option of filteredOptions\" [value]=\"option\">\r\n {{option}}\r\n </mat-option>\r\n </mat-autocomplete>\r\n </mat-form-field>\r\n <div *ngIf=\"rucInputData?.errorMsg\" class=\"form-error\">\r\n {{rucInputData?.customErrorMessage ? rucInputData?.customErrorMessage : errorMessage}}\r\n </div> \r\n","import { Component, Input, OnInit,EventEmitter, Output } from '@angular/core';\r\nimport {RucMetaFormValidationService} from '../../services/ruc-meta-form-validation.service';\r\nimport { MatRadioChange } from '@angular/material/radio';\r\n@Component({\r\n selector: 'ruc-meta-radio-group',\r\n templateUrl: './ruc-meta-radio-group.component.html',\r\n styleUrls: ['./ruc-meta-radio-group.component.css'],\r\n})\r\nexport class RucMetaRadioGroupComponent implements OnInit {\r\n @Input() rucInputData : any;\r\n @Input() customTheme: string | undefined;\r\n @Output() transferUserInput = new EventEmitter<any>();\r\n errorMessage: string | undefined\r\n radioValue: string | undefined;\r\n constructor(public validationService:RucMetaFormValidationService) { }\r\n\r\n ngOnInit(): void {\r\n this.errorMessage = this.validationService.defaultErrorMessage;\r\n }\r\n /**\r\n * \r\n * @param e \r\n */\r\n modelChangeFn(e:any) {\r\n this.rucInputData.value = e.value;\r\n this.transferUserInput.emit(this.rucInputData);\r\n }\r\n}\r\n","<mat-label>{{rucInputData?.label}}</mat-label>\r\n<mat-radio-group \r\n aria-labelledby=\"radio-group-label\"\r\n class=\"{{customTheme}} radio-group\" [(ngModel)]=\"radioValue\">\r\n <mat-radio-button class=\"radio-button\" *ngFor=\"let item of rucInputData?.groupOptions\" [value]=\"item.value\"\r\n (change)=\"modelChangeFn($event)\">\r\n {{item?.name}}\r\n </mat-radio-button>\r\n</mat-radio-group>\r\n<div *ngIf=\"rucInputData?.errorMsg\" class=\"form-error\">\r\n {{rucInputData?.customErrorMessage ? rucInputData?.customErrorMessage : errorMessage}}\r\n</div> \r\n","import { Component, Input, OnInit, EventEmitter, Output } from '@angular/core';\r\nimport {RucMetaFormValidationService} from '../../services/ruc-meta-form-validation.service';\r\n\r\n@Component({\r\n selector: 'ruc-meta-checkbox-group',\r\n templateUrl: './ruc-meta-checkbox-group.component.html',\r\n styleUrls: ['./ruc-meta-checkbox-group.component.css']\r\n})\r\nexport class RucMetaCheckboxGroupComponent implements OnInit {\r\n @Input() rucInputData : any;\r\n @Output() transferUserInput = new EventEmitter<any>();\r\n errorMessage: string | undefined\r\n\r\n constructor(public validationService:RucMetaFormValidationService) { }\r\n\r\n ngOnInit(): void {\r\n this.errorMessage = this.validationService.defaultErrorMessage;\r\n }\r\n /**\r\n * \r\n * @param e \r\n */\r\n modelChangeFn(e:any) {\r\n const checkboxValues: any[] = [];\r\n this.rucInputData.groupOptions.forEach((x: any)=>{\r\n if(x.value){\r\n checkboxValues.push(x.name);\r\n }\r\n });\r\n this.rucInputData.value = checkboxValues;\r\n this.transferUserInput.emit(this.rucInputData);\r\n }\r\n}\r\n","<mat-label class=\"margin-\">{{rucInputData?.label}}</mat-label>\r\n<ul class=\"ruc-checkbox\">\r\n <li *ngFor=\"let item of rucInputData?.groupOptions\">\r\n <mat-checkbox [(ngModel)]=\"item.value\" (ngModelChange)=\"modelChangeFn($event)\">\r\n {{item?.name}}\r\n </mat-checkbox>\r\n </li>\r\n</ul>\r\n<div *ngIf=\"rucInputData?.errorMsg\" class=\"form-error\">\r\n {{rucInputData?.customErrorMessage ? rucInputData?.customErrorMessage : errorMessage}}\r\n</div>","import { Component, Input, OnInit, EventEmitter, Output } from '@angular/core';\r\nimport { RucMetaFormService } from \"../../services/ruc-meta-form.service\"\r\nimport {RucMetaFormValidationService} from '../../services/ruc-meta-form-validation.service';\r\n\r\n@Component({\r\n selector: 'ruc-meta-select',\r\n templateUrl: './ruc-meta-select.component.html',\r\n styleUrls: ['./ruc-meta-select.component.css']\r\n})\r\nexport class RucMetaSelectComponent implements OnInit {\r\n \r\n @Input() rucInputData : any;\r\n errorMessage: string | undefined\r\n @Output() transferUserInput = new EventEmitter<any>();\r\n constructor(public service: RucMetaFormService,public validationService:RucMetaFormValidationService) { }\r\n\r\n ngOnInit(): void {\r\n this.errorMessage = this.validationService.defaultErrorMessage;\r\n }\r\n\r\n modelChangeFn(e:any) { \r\n this.rucInputData.groupOptions.forEach((x: any)=>{\r\n if(x.value == e.value){\r\n this.rucInputData.selectedParentId = x.id;\r\n }\r\n });\r\n if(this.rucInputData.dependentFields){\r\n this.removDependentFieldParentIdFromOther(this.rucInputData.dependentFields);\r\n }\r\n this.service.currentFormElement = this.rucInputData;\r\n this.transferUserInput.emit(this.rucInputData);\r\n }\r\n\r\n removDependentFieldParentIdFromOther(child: any){\r\n child.forEach((x:any)=>{\r\n if(x.selectedParentId){\r\n delete(x.selectedParentId);\r\n x.value = \"\";\r\n if(x.dependentFields){\r\n this.removDependentFieldParentIdFromOther(x.dependentFields);\r\n } \r\n } \r\n })\r\n }\r\n}\r\n","<div class=\"select-label\">\r\n <mat-label>{{rucInputData?.label}}</mat-label>\r\n</div>\r\n<mat-form-field [ngStyle]=\"{ 'width.%': rucInputData?.width }\" matTooltip=\"{{rucInputData?.tooltip}}\" [appearance]=\"rucInputData?.appearance || 'fill'\">\r\n <mat-label>Choose an option</mat-label>\r\n <mat-select (selectionChange)=\"modelChangeFn($event)\" [(ngModel)]=\"rucInputData.value\">\r\n <mat-option *ngFor=\"let item of rucInputData?.groupOptions\" [value]=\"item.value\" [disabled]=\"item?.disable\"> {{item.name}}</mat-option>\r\n </mat-select>\r\n</mat-form-field>\r\n<div *ngIf=\"rucInputData?.errorMsg\" class=\"form-error\">\r\n {{rucInputData?.customErrorMessage ? rucInputData?.customErrorMessage : errorMessage}}\r\n</div>","import { Component, Input, OnInit, EventEmitter, Output } from '@angular/core';\r\nimport {RucMetaFormValidationService} from '../../services/ruc-meta-form-validation.service';\r\n\r\n@Component({\r\n selector: 'ruc-text-area',\r\n templateUrl: './ruc-text-area.component.html',\r\n styleUrls: ['./ruc-text-area.component.css']\r\n})\r\nexport class RucTextAreaComponent implements OnInit {\r\n @Input() rucInputData : any;\r\n @Output() transferUserInput = new EventEmitter<any>();\r\n @Input() customTheme: string | undefined;\r\n errorMessage: string | undefined\r\n\r\n constructor(public validationService:RucMetaFormValidationService) { \r\n \r\n }\r\n\r\n ngOnInit(): void {\r\n this.errorMessage = this.validationService.defaultErrorMessage;\r\n }\r\n /**\r\n * \r\n * @param e \r\n */\r\n modelChangeFn(e:any) {\r\n this.transferUserInput.emit(this.rucInputData);\r\n }\r\n\r\n}\r\n","<mat-form-field [ngStyle]=\"{ 'width.%': rucInputData?.width }\" [appearance]=\"rucInputData?.appearance || 'fill'\" class=\"{{customTheme}}\">\r\n <mat-label>{{rucInputData?.label}}</mat-label>\r\n <textarea matInput\r\n placeholder=\"{{rucInputData?.placeholder}}\"\r\n cdkTextareaAutosize\r\n #autosize=\"cdkTextareaAutosize\"\r\n cdkAutosizeMinRows=\"{{rucInputData.min}}\"\r\n cdkAutosizeMaxRows=\"{{rucInputData.max}}\"\r\n [readonly]=\"rucInputData?.readonly\"\r\n [(ngModel)]=\"rucInputData.value\" \r\n matTooltip=\"{{rucInputData?.tooltip}}\"\r\n (ngModelChange)=\"modelChangeFn($event.target)\"></textarea>\r\n </mat-form-field>\r\n <div *ngIf=\"rucInputData?.errorMsg\" class=\"form-error\">\r\n {{rucInputData?.customErrorMessage ? rucInputData?.customErrorMessage : errorMessage}}\r\n </div>\r\n","import { Component, Input, Output, OnInit, EventEmitter, OnDestroy } from '@angular/core';\r\nimport {MetaFormConfig} from '../../interfaces/metaFormsDefault';\r\nimport { RucMetaFormService } from \"../../services/ruc-meta-form.service\"\r\nimport { Subscription } from 'rxjs';\r\n@Component({\r\n selector: 'uxp-ruclib-metaform',\r\n templateUrl: './ruclib-metaform.component.html',\r\n styleUrls: ['./ruclib-metaform.component.scss']\r\n})\r\nexport class RuclibMetaformComponent implements OnInit,OnDestroy{\r\n @Output() rucEvent = new EventEmitter<any>();\r\n @Output() childRucEvent = new EventEmitter<any>();\r\n @Input() rucInputData: MetaFormConfig[] = []\r\n @Input() childForm?: MetaFormConfig[]\r\n @Input()\r\n customTheme!: string;\r\n @Input() isChild?: boolean;\r\n @Input() selectedParentId: any;\r\n inputObjectDataMultiFileUpload?:any;\r\n metaFormSubscribeInputs: Subscription | undefined;\r\n formData: any\r\n constructor(public service: RucMetaFormService) { }\r\n \r\n ngOnInit(): void {\r\n if (!this.isChild) {\r\n this.service.getFormJson(this.rucInputData);\r\n this.getFormJson();\r\n } else {\r\n this.formData = this.childForm;\r\n }\r\n this.inputObjectDataMultiFileUpload = {\r\n multifileSelection: true,\r\n displayThumbnail: true,\r\n label: 'Choose File',\r\n uploadUrl: '/api/upload',\r\n deleteUrl: '/api/delete',\r\n };\r\n }\r\n \r\n /**\r\n * The purpose of this function to pass data from dependentFields to parent field\r\n * @param getObject \r\n * @param j \r\n */\r\n passEvent(getObject: any, formElement?: any) {\r\n const eventOutput = getObject?.eventOutput ? getObject.eventOutput : this.service.currentFormElement;\r\n if(getObject?.eventName == \"onUploading\"){\r\n formElement.value = getObject?.eventOutput.name ? getObject?.eventOutput.name : getObject?.eventOutput[0].name;\r\n }\r\n this.rucEvent.emit({ 'eventName': 'metaFormData', 'eventOutput': eventOutput, 'formData': this.formData, 'rucComponentEvent': getObject?.eventName });\r\n }\r\n\r\n /**\r\n * Initial function to load for data\r\n */\r\n getFormJson() {\r\n this.metaFormSubscribeInputs = this.service.formData.asObservable()\r\n .subscribe(\r\n (formData)=>{\r\n this.formData = formData;\r\n this.service.metaFormData = this.formData;\r\n } \r\n );\r\n }\r\n\r\n /**\r\n * This function is to emit form data\r\n * @param event \r\n */\r\n getMetaFormData(event: any) {\r\n this.rucEvent.emit({ 'eventName': 'metaFormData', 'eventOutput': event, 'formData': this.formData });\r\n }\r\n\r\n /**\r\n * Clear form data\r\n */\r\n clearForm(){\r\n this.formData.map((x:MetaFormConfig)=>{\r\n x.value = '';\r\n });\r\n }\r\n\r\n /**\r\n * Destroy the subscriber\r\n */\r\n ngOnDestroy() {\r\n if (this.metaFormSubscribeInputs) {\r\n this.metaFormSubscribeInputs.unsubscribe();\r\n }\r\n }\r\n}\r\n","<form novalidate>\r\n <ng-container *ngFor=\"let dynamicField of formData; let j = index;\" [ngSwitch]=\"dynamicField?.fieldType\">\r\n <div [ngStyle] = \"{ 'width.%': dynamicField.sameRowColumnWidth - 2 }\" [ngClass]=\"dynamicField.sameRow === true ? 'margin-5 column-in-same-row' : 'margin-5 column-in-new-row'\" \r\n *ngIf=\"dynamicField.formType != 'stepper'\">\r\n \r\n <ng-template [ngSwitchCase]=\"'input'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.hasDependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId)\">\r\n <ruc-meta-inputs [customTheme] = \"customTheme\" [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-inputs>\r\n </div>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'radio'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-radio-group [customTheme] = \"customTheme\" [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-radio-group>\r\n </div>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'checkbox'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-checkbox-group [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-checkbox-group>\r\n </div>\r\n </ng-template>\r\n <ng-template class=\"\" [ngSwitchCase]=\"'select'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-select [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-select>\r\n </div>\r\n </ng-template>\r\n <ng-template class=\"\" [ngSwitchCase]=\"'textarea'\">\r\n <ruc-text-area [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-text-area>\r\n </ng-template>\r\n <!-- <ng-template [ngSwitchCase]=\"'rucMultiSelect'\">\r\n <uxp-ruclib-multi-select [rucInputData]=\"dynamicField?.rucMultiselectInput?.rucInputData\"\r\n [dataSource]=\"dynamicField?.rucMultiselectInput?.dataSource\" [customTheme]=\"customTheme\"\r\n (rucEvent)=\"passEvent($event)\"></uxp-ruclib-multi-select>\r\n </ng-template> -->\r\n <!-- <ng-template [ngSwitchCase]=\"'rucMultiFileUpload'\">\r\n <uxp-ruclib-multi-file-upload\r\n [rucInputData]=\"dynamicField?.rucMultiFileUploadInput?.rucInputData\" [customTheme]=\"customTheme\"\r\n (rucEvent)=\"passEvent($event,dynamicField)\"></uxp-ruclib-multi-file-upload>\r\n </ng-template> -->\r\n <div *ngIf=\"dynamicField.hasDependentFields && dynamicField.value\">\r\n <uxp-ruclib-metaform #dynamicField.id [rucInputData]=\"formData\" [childForm] =\"dynamicField.dependentFields\"\r\n [isChild]=\"true\" [selectedParentId] = \"dynamicField.selectedParentId\" (rucEvent)=\"passEvent($event,dynamicField.id)\"></uxp-ruclib-metaform>\r\n </div>\r\n \r\n </div>\r\n <div *ngIf=\"dynamicField.formType == 'stepper'\">\r\n <mat-stepper linear #stepper>\r\n <div *ngFor=\"let stapperField of dynamicField.stepper; let s = index;\" [ngSwitch]=\"stapperField?.fieldType\">\r\n <mat-step [stepControl]=\"stapperField.stepControl\" *ngIf=\"stapperField.stepControl != 'done'\">\r\n <ng-template matStepLabel>{{stapperField.stepperlabel}}</ng-template>\r\n <ng-container *ngFor=\"let stepperFormData of stapperField.stepperFormData; let j = index;\" [ngSwitch]=\"stepperFormData?.fieldType\">\r\n <div [ngStyle] = \"{ 'width.%': dynamicField.sameRowColumnWidth - 2 }\" [ngClass]=\"dynamicField.sameRow === true ? 'margin-5 column-in-same-row' : 'margin-5 column-in-new-row'\" \r\n >\r\n <ng-template [ngSwitchCase]=\"'input'\">\r\n <div>\r\n <ruc-meta-inputs [customTheme] = \"customTheme\" [rucInputData]=\"stepperFormData\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-inputs>\r\n </div>\r\n </ng-template>\r\n <ng-template class=\"\" [ngSwitchCase]=\"'textarea'\">\r\n <ruc-text-area [rucInputData]=\"stepperFormData\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-text-area>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'radio'\">\r\n <div>\r\n <ruc-meta-radio-group [customTheme] = \"customTheme\" [rucInputData]=\"stepperFormData\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-radio-group>\r\n </div>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'checkbox'\">\r\n <div >\r\n <ruc-meta-checkbox-group [rucInputData]=\"stepperFormData\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-checkbox-group>\r\n </div>\r\n </ng-template>\r\n <ng-template class=\"\" [ngSwitchCase]=\"'select'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-select [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-select>\r\n </div>\r\n </ng-template>\r\n </div>\r\n </ng-container>\r\n <div>\r\n <button mat-button matStepperPrevious *ngIf=\"s > 0\">Back</button>\r\n <button mat-button matStepperNext *ngIf=\"s< dynamicField.stepper.length\">Next</button>\r\n </div>\r\n </mat-step>\r\n <mat-step *ngIf=\"stapperField.stepControl == 'done'\">\r\n <ng-template matStepLabel>{{stapperField.stepControl}}</ng-template>\r\n <p>{{stapperField.stepperlabel}}</p>\r\n <div>\r\n <button mat-button matStepperPrevious>Back</button>\r\n <button mat-button (click)=\"stepper.reset()\">Reset</button>\r\n </div>\r\n </mat-step>\r\n </div>\r\n </mat-stepper>\r\n </div>\r\n </ng-container>\r\n <ng-container>\r\n <button mat-raised-button color=\"primary\" (click)=\"clearForm()\" *ngIf=\"!isChild\">Clear Form</button>\r\n </ng-container>\r\n \r\n</form>","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { RuclibMetaformComponent } from './ruclib-metaform/ruclib-metaform.component';\r\nimport { HttpClientModule } from '@angular/common/http';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatRadioModule } from '@angular/material/radio';\r\nimport { MatCheckboxModule } from '@angular/material/checkbox';\r\nimport { MatSelectModule } from '@angular/material/select';\r\nimport { MatAutocompleteModule } from '@angular/material/autocomplete';\r\nimport { MatButtonModule} from '@angular/material/button';\r\nimport { MatTooltipModule} from '@angular/material/tooltip';\r\nimport {MatStepperModule} from '@angular/material/stepper';\r\nimport { TextFieldModule} from '@angular/cdk/text-field';\r\nimport { RucMetaFormService } from '../services/ruc-meta-form.service';\r\nimport { RucMetaInputsComponent } from '../components/ruc-meta-inputs/ruc-meta-inputs.component';\r\nimport { RucMetaRadioGroupComponent } from '../components/ruc-meta-radio-group/ruc-meta-radio-group.component';\r\nimport { RucMetaCheckboxGroupComponent } from '../components/ruc-meta-checkbox-group/ruc-meta-checkbox-group.component';\r\nimport { RucMetaSelectComponent } from '../components/ruc-meta-select/ruc-meta-select.component';\r\nimport { RucTextAreaComponent } from '../components/ruc-text-area/ruc-text-area.component';\r\n\r\n// import {RuclibMultiSelectModule} from '@ruc-lib/multi-select';\r\n// import {RuclibMultiFileUploadModule} from '@ruc-lib/multi-file-upload';\r\n\r\n\r\n@NgModule({\r\n imports: [CommonModule,\r\n HttpClientModule,\r\n FormsModule,\r\n MatFormFieldModule,\r\n MatInputModule,\r\n MatRadioModule,\r\n MatCheckboxModule,\r\n MatSelectModule,\r\n MatAutocompleteModule,\r\n MatButtonModule, \r\n MatTooltipModule,\r\n TextFieldModule,\r\n MatStepperModule,\r\n // RuclibMultiSelectModule,\r\n // RuclibMultiFileUploadModule\r\n ],\r\n declarations: [\r\n RuclibMetaformComponent,\r\n RucMetaInputsComponent,\r\n RucMetaRadioGroupComponent,\r\n RucMetaCheckboxGroupComponent,\r\n RucMetaSelectComponent,\r\n RucTextAreaComponent\r\n ],\r\n exports: [\r\n RuclibMetaformComponent\r\n ],\r\n providers: [\r\n RucMetaFormService\r\n ]\r\n})\r\nexport class RuclibMetaformModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.RucMetaFormValidationService","i5","i1.RucMetaFormService","i2.RucMetaFormValidationService","i3","i4","i6","i7","i6.RucMetaInputsComponent","i7.RucMetaRadioGroupComponent","i8.RucMetaCheckboxGroupComponent","i9.RucMetaSelectComponent","i10.RucTextAreaComponent"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAOa,kBAAkB,CAAA;AAK7B,IAAA,WAAA,CAAoB,IAAgB,EAAA;QAAhB,IAAI,CAAA,IAAA,GAAJ,IAAI,CAAY;AAE7B,QAAA,IAAA,CAAA,QAAQ,GAAyB,IAAI,eAAe,CAAC,EAAS,CAAC,CAAC;KAF9B;AAIzC,IAAA,WAAW,CAAC,IAAS,EAAA;AACnB,QAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KAC1B;;gHAXU,kBAAkB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAlB,kBAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,kBAAkB,cAFjB,MAAM,EAAA,CAAA,CAAA;4FAEP,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAH9B,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA,CAAA;;;MCCY,4BAA4B,CAAA;AAIvC,IAAA,WAAA,GAAA;QAFO,IAAmB,CAAA,mBAAA,GAAG,eAAe,CAAC;KAG5C;AAED,IAAA,gBAAgB,CAAC,QAAuB,EAAA;QACtC,MAAM,EAAE,GAAG,GAAG,CAAC;QACf,IAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,EAAC;AAC1B,YAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAA;AAC3B,SAAA;AAAI,aAAA;AACH,YAAA,OAAO,KAAK,CAAC;AACd,SAAA;KACF;AAED,IAAA,qBAAqB,CAAC,QAAuB,EAAA;QAC3C,MAAM,EAAE,GAAG,iBAAiB,CAAA;AAC5B,QAAA,OAAO,QAAQ,CAAC,KAAK,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC;KAC3D;;0HAnBU,4BAA4B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAA5B,4BAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,4BAA4B,cAF3B,MAAM,EAAA,CAAA,CAAA;4FAEP,4BAA4B,EAAA,UAAA,EAAA,CAAA;kBAHxC,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA,CAAA;;;MCEY,sBAAsB,CAAA;AAQjC,IAAA,WAAA,CAAmB,iBAA8C,EAAA;QAA9C,IAAiB,CAAA,iBAAA,GAAjB,iBAAiB,CAA6B;AALvD,QAAA,IAAA,CAAA,iBAAiB,GAAG,IAAI,YAAY,EAAO,CAAC;QAGtD,IAAO,CAAA,OAAA,GAAa,EAAE,CAAC;KAItB;IAED,QAAQ,GAAA;QACN,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,iBAAiB,CAAC,mBAAmB,CAAC;AAC/D,QAAA,IAAI,CAAC,YAAY,CAAC,KAAK,KAAK,SAAS,GAAG,EAAE,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC;QACrE,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC;KAC/C;AACD;;;AAGG;AACH,IAAA,aAAa,CAAC,CAAK,EAAA;AACjB,QAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,iBAAiB,CAAC,qBAAqB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;AACjF,QAAA,IAAI,CAAC,YAAY,CAAC,QAAQ,GAAG,QAAQ,CAAC;AACtC,QAAA,IAAG,IAAI,CAAC,YAAY,CAAC,YAAY,EAAC;AAChC,YAAA,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;AAC9D,SAAA;QACD,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;KAChD;AAEO,IAAA,OAAO,CAAC,KAAa,EAAA;AAC3B,QAAA,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;QACxC,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC;KAClF;;oHAjCU,sBAAsB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAA,4BAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAtB,sBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,sBAAsB,wNCRnC,q7CAkBA,EAAA,MAAA,EAAA,CAAA,kJAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,8MAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,QAAA,EAAA,wIAAA,EAAA,MAAA,EAAA,CAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,kBAAA,EAAA,QAAA,EAAA,4EAAA,EAAA,MAAA,EAAA,CAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,sEAAA,EAAA,MAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,qDAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,YAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,oBAAA,EAAA,OAAA,EAAA,YAAA,EAAA,YAAA,EAAA,iBAAA,EAAA,WAAA,CAAA,EAAA,QAAA,EAAA,CAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,QAAA,EAAA,QAAA,EAAA,WAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,QAAA,EAAA,QAAA,EAAA,yHAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,IAAA,EAAA,aAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,mBAAA,EAAA,kBAAA,EAAA,OAAA,EAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,YAAA,EAAA,QAAA,EAAA,CAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,eAAA,EAAA,8BAAA,CAAA,EAAA,QAAA,EAAA,CAAA,iBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,sBAAA,EAAA,QAAA,EAAA,mDAAA,EAAA,QAAA,EAAA,CAAA,wBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,UAAA,EAAA,QAAA,EAAA,cAAA,EAAA,QAAA,EAAA,CAAA,YAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;4FDVa,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBALlC,SAAS;+BACE,iBAAiB,EAAA,QAAA,EAAA,q7CAAA,EAAA,MAAA,EAAA,CAAA,kJAAA,CAAA,EAAA,CAAA;gHAKlB,YAAY,EAAA,CAAA;sBAApB,KAAK;gBACG,gBAAgB,EAAA,CAAA;sBAAxB,KAAK;gBACI,iBAAiB,EAAA,CAAA;sBAA1B,MAAM;gBACE,WAAW,EAAA,CAAA;sBAAnB,KAAK;;;MEJK,0BAA0B,CAAA;AAMrC,IAAA,WAAA,CAAmB,iBAA8C,EAAA;QAA9C,IAAiB,CAAA,iBAAA,GAAjB,iBAAiB,CAA6B;AAHvD,QAAA,IAAA,CAAA,iBAAiB,GAAG,IAAI,YAAY,EAAO,CAAC;KAGgB;IAEtE,QAAQ,GAAA;QACN,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,iBAAiB,CAAC,mBAAmB,CAAC;KAChE;AACD;;;AAGG;AACH,IAAA,aAAa,CAAC,CAAK,EAAA;QACjB,IAAI,CAAC,YAAY,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC;QAClC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;KAChD;;wHAlBU,0BAA0B,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAA,4BAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA1B,0BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,0BAA0B,uLCRvC,ukBAYA,EAAA,MAAA,EAAA,CAAA,wIAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,qDAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,QAAA,EAAA,QAAA,EAAA,WAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,IAAA,CAAA,aAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,QAAA,EAAA,CAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,cAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,eAAA,EAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;4FDJa,0BAA0B,EAAA,UAAA,EAAA,CAAA;kBALtC,SAAS;+BACE,sBAAsB,EAAA,QAAA,EAAA,ukBAAA,EAAA,MAAA,EAAA,CAAA,wIAAA,CAAA,EAAA,CAAA;gHAKvB,YAAY,EAAA,CAAA;sBAApB,KAAK;gBACG,WAAW,EAAA,CAAA;sBAAnB,KAAK;gBACI,iBAAiB,EAAA,CAAA;sBAA1B,MAAM;;;MEHI,6BAA6B,CAAA;AAKxC,IAAA,WAAA,CAAmB,iBAA8C,EAAA;QAA9C,IAAiB,CAAA,iBAAA,GAAjB,iBAAiB,CAA6B;AAHvD,QAAA,IAAA,CAAA,iBAAiB,GAAG,IAAI,YAAY,EAAO,CAAC;KAGgB;IAEtE,QAAQ,GAAA;QACN,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,iBAAiB,CAAC,mBAAmB,CAAC;KAChE;AACD;;;AAGG;AACH,IAAA,aAAa,CAAC,CAAK,EAAA;QACjB,MAAM,cAAc,GAAU,EAAE,CAAC;QACjC,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAM,KAAG;YAC/C,IAAG,CAAC,CAAC,KAAK,EAAC;AACT,gBAAA,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;AAC7B,aAAA;AACH,SAAC,CAAC,CAAC;AACH,QAAA,IAAI,CAAC,YAAY,CAAC,KAAK,GAAG,cAAc,CAAC;QACzC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;KAChD;;2HAvBU,6BAA6B,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAD,4BAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA7B,6BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,6BAA6B,8JCR1C,ofAUM,EAAA,MAAA,EAAA,CAAA,iGAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,qDAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,QAAA,EAAA,QAAA,EAAA,WAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,IAAA,CAAA,WAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,eAAA,EAAA,OAAA,EAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,aAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;4FDFO,6BAA6B,EAAA,UAAA,EAAA,CAAA;kBALzC,SAAS;+BACE,yBAAyB,EAAA,QAAA,EAAA,ofAAA,EAAA,MAAA,EAAA,CAAA,iGAAA,CAAA,EAAA,CAAA;gHAK1B,YAAY,EAAA,CAAA;sBAApB,KAAK;gBACI,iBAAiB,EAAA,CAAA;sBAA1B,MAAM;;;MEDI,sBAAsB,CAAA;IAKjC,WAAmB,CAAA,OAA2B,EAAQ,iBAA8C,EAAA;QAAjF,IAAO,CAAA,OAAA,GAAP,OAAO,CAAoB;QAAQ,IAAiB,CAAA,iBAAA,GAAjB,iBAAiB,CAA6B;AAD1F,QAAA,IAAA,CAAA,iBAAiB,GAAG,IAAI,YAAY,EAAO,CAAC;KACmD;IAEzG,QAAQ,GAAA;QACN,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,iBAAiB,CAAC,mBAAmB,CAAC;KAChE;AAED,IAAA,aAAa,CAAC,CAAK,EAAA;QACjB,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAM,KAAG;AAC/C,YAAA,IAAG,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK,EAAC;gBACpB,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,CAAC,CAAC,EAAE,CAAC;AAC3C,aAAA;AACH,SAAC,CAAC,CAAC;AACH,QAAA,IAAG,IAAI,CAAC,YAAY,CAAC,eAAe,EAAC;YACnC,IAAI,CAAC,oCAAoC,CAAC,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC;AAC9E,SAAA;QACD,IAAI,CAAC,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,YAAY,CAAC;QACpD,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;KAChD;AAED,IAAA,oCAAoC,CAAC,KAAU,EAAA;AAC3C,QAAA,KAAK,CAAC,OAAO,CAAC,CAAC,CAAK,KAAG;YACrB,IAAG,CAAC,CAAC,gBAAgB,EAAC;AACpB,gBAAA,QAAO,CAAC,CAAC,gBAAgB,CAAC,CAAC;AAC3B,gBAAA,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;gBACb,IAAG,CAAC,CAAC,eAAe,EAAC;AACnB,oBAAA,IAAI,CAAC,oCAAoC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC;AAC9D,iBAAA;AACF,aAAA;AACH,SAAC,CAAC,CAAA;KACL;;oHAlCU,sBAAsB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAC,kBAAA,EAAA,EAAA,EAAA,KAAA,EAAAC,4BAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAtB,sBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,sBAAsB,sJCTnC,8uBAWM,EAAA,MAAA,EAAA,CAAA,6FAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,qDAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAJ,EAAA,CAAA,YAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,oBAAA,EAAA,OAAA,EAAA,YAAA,EAAA,YAAA,EAAA,iBAAA,EAAA,WAAA,CAAA,EAAA,QAAA,EAAA,CAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,QAAA,EAAA,QAAA,EAAA,WAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAK,IAAA,CAAA,SAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,eAAA,EAAA,UAAA,EAAA,8BAAA,CAAA,EAAA,QAAA,EAAA,CAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,YAAA,EAAA,QAAA,EAAA,CAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,UAAA,EAAA,QAAA,EAAA,cAAA,EAAA,QAAA,EAAA,CAAA,YAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;4FDFO,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBALlC,SAAS;+BACE,iBAAiB,EAAA,QAAA,EAAA,8uBAAA,EAAA,MAAA,EAAA,CAAA,6FAAA,CAAA,EAAA,CAAA;8IAMlB,YAAY,EAAA,CAAA;sBAApB,KAAK;gBAEI,iBAAiB,EAAA,CAAA;sBAA1B,MAAM;;;MELI,oBAAoB,CAAA;AAM/B,IAAA,WAAA,CAAmB,iBAA8C,EAAA;QAA9C,IAAiB,CAAA,iBAAA,GAAjB,iBAAiB,CAA6B;AAJvD,QAAA,IAAA,CAAA,iBAAiB,GAAG,IAAI,YAAY,EAAO,CAAC;KAMrD;IAED,QAAQ,GAAA;QACN,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,iBAAiB,CAAC,mBAAmB,CAAC;KAChE;AACD;;;AAGG;AACH,IAAA,aAAa,CAAC,CAAK,EAAA;QACjB,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;KAChD;;kHAnBU,oBAAoB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAP,4BAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAApB,oBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,oBAAoB,gLCRjC,46BAgBA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,8MAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,qDAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,YAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,oBAAA,EAAA,OAAA,EAAA,YAAA,EAAA,YAAA,EAAA,iBAAA,EAAA,WAAA,CAAA,EAAA,QAAA,EAAA,CAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,QAAA,EAAA,QAAA,EAAA,WAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,QAAA,EAAA,QAAA,EAAA,yHAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,IAAA,EAAA,aAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,mBAAA,EAAA,kBAAA,EAAA,OAAA,EAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAM,IAAA,CAAA,mBAAA,EAAA,QAAA,EAAA,+BAAA,EAAA,MAAA,EAAA,CAAA,oBAAA,EAAA,oBAAA,EAAA,qBAAA,EAAA,aAAA,CAAA,EAAA,QAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,EAAA,CAAA,UAAA,EAAA,QAAA,EAAA,cAAA,EAAA,QAAA,EAAA,CAAA,YAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;4FDRa,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBALhC,SAAS;+BACE,eAAe,EAAA,QAAA,EAAA,46BAAA,EAAA,CAAA;gHAKhB,YAAY,EAAA,CAAA;sBAApB,KAAK;gBACI,iBAAiB,EAAA,CAAA;sBAA1B,MAAM;gBACE,WAAW,EAAA,CAAA;sBAAnB,KAAK;;;MEFK,uBAAuB,CAAA;AAYlC,IAAA,WAAA,CAAmB,OAA2B,EAAA;QAA3B,IAAO,CAAA,OAAA,GAAP,OAAO,CAAoB;AAXpC,QAAA,IAAA,CAAA,QAAQ,GAAI,IAAI,YAAY,EAAO,CAAC;AACpC,QAAA,IAAA,CAAA,aAAa,GAAI,IAAI,YAAY,EAAO,CAAC;QAC1C,IAAY,CAAA,YAAA,GAAqB,EAAE,CAAA;KASO;IAEnD,QAAQ,GAAA;AACN,QAAA,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACjB,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAC5C,IAAI,CAAC,WAAW,EAAE,CAAC;AACpB,SAAA;AAAM,aAAA;AACL,YAAA,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC;AAChC,SAAA;QACD,IAAI,CAAC,8BAA8B,GAAG;AACpC,YAAA,kBAAkB,EAAE,IAAI;AACxB,YAAA,gBAAgB,EAAE,IAAI;AACtB,YAAA,KAAK,EAAE,aAAa;AACpB,YAAA,SAAS,EAAE,aAAa;AACxB,YAAA,SAAS,EAAE,aAAa;SACzB,CAAC;KACH;AAED;;;;AAIG;IACH,SAAS,CAAC,SAAc,EAAE,WAAiB,EAAA;AACzC,QAAA,MAAM,WAAW,GAAG,SAAS,EAAE,WAAW,GAAG,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC;AACrG,QAAA,IAAG,SAAS,EAAE,SAAS,IAAI,aAAa,EAAC;YACvC,WAAW,CAAC,KAAK,GAAG,SAAS,EAAE,WAAW,CAAC,IAAI,GAAG,SAAS,EAAE,WAAW,CAAC,IAAI,GAAG,SAAS,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AAChH,SAAA;QACD,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,cAAc,EAAE,aAAa,EAAE,WAAW,EAAE,UAAU,EAAE,IAAI,CAAC,QAAQ,EAAE,mBAAmB,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC;KACvJ;AAED;;AAEG;IACH,WAAW,GAAA;QACR,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,YAAY,EAAE;AAClE,aAAA,SAAS,CACP,CAAC,QAAQ,KAAG;AACV,YAAA,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;YACzB,IAAI,CAAC,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC;AAC5C,SAAC,CACF,CAAC;KACL;AAED;;;AAGG;AACH,IAAA,eAAe,CAAC,KAAU,EAAA;QACxB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,cAAc,EAAE,aAAa,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;KACtG;AAED;;AAEG;IACH,SAAS,GAAA;QACP,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAgB,KAAG;AACpC,YAAA,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;AACf,SAAC,CAAC,CAAC;KACJ;AAED;;AAEG;IACH,WAAW,GAAA;QACT,IAAI,IAAI,CAAC,uBAAuB,EAAE;AAChC,YAAA,IAAI,CAAC,uBAAuB,CAAC,WAAW,EAAE,CAAC;AAC5C,SAAA;KACF;;qHAhFU,uBAAuB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAL,kBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;yGAAvB,uBAAuB,EAAA,QAAA,EAAA,qBAAA,EAAA,MAAA,EAAA,EAAA,YAAA,EAAA,cAAA,EAAA,SAAA,EAAA,WAAA,EAAA,WAAA,EAAA,aAAA,EAAA,OAAA,EAAA,SAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,EAAA,OAAA,EAAA,EAAA,QAAA,EAAA,UAAA,EAAA,aAAA,EAAA,eAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECTpC,ymPAkGO,EAAA,MAAA,EAAA,CAAA,2GAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,QAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,CAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,YAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,aAAA,EAAA,QAAA,EAAA,8CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,0FAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,MAAA,EAAA,QAAA,EAAA,wDAAA,EAAA,MAAA,EAAA,CAAA,eAAA,CAAA,EAAA,OAAA,EAAA,CAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAG,IAAA,CAAA,SAAA,EAAA,QAAA,EAAA,6GAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,eAAA,EAAA,OAAA,CAAA,EAAA,QAAA,EAAA,CAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAJ,IAAA,CAAA,OAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,OAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,YAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,UAAA,EAAA,QAAA,EAAA,yEAAA,EAAA,MAAA,EAAA,CAAA,eAAA,EAAA,eAAA,EAAA,OAAA,EAAA,eAAA,EAAA,gBAAA,EAAA,mBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,YAAA,EAAA,oBAAA,EAAA,sBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,cAAA,EAAA,QAAA,EAAA,wBAAA,EAAA,MAAA,EAAA,CAAA,MAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,kBAAA,EAAA,QAAA,EAAA,4BAAA,EAAA,MAAA,EAAA,CAAA,MAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDzFM,uBAAuB,EAAA,QAAA,EAAA,qBAAA,EAAA,MAAA,EAAA,CAAA,cAAA,EAAA,WAAA,EAAA,aAAA,EAAA,SAAA,EAAA,kBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,UAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAO,sBAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,CAAA,cAAA,EAAA,kBAAA,EAAA,aAAA,CAAA,EAAA,OAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,0BAAA,EAAA,QAAA,EAAA,sBAAA,EAAA,MAAA,EAAA,CAAA,cAAA,EAAA,aAAA,CAAA,EAAA,OAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,6BAAA,EAAA,QAAA,EAAA,yBAAA,EAAA,MAAA,EAAA,CAAA,cAAA,CAAA,EAAA,OAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,sBAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,CAAA,cAAA,CAAA,EAAA,OAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,oBAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,cAAA,EAAA,aAAA,CAAA,EAAA,OAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;4FAAvB,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBALnC,SAAS;+BACE,qBAAqB,EAAA,QAAA,EAAA,ymPAAA,EAAA,MAAA,EAAA,CAAA,2GAAA,CAAA,EAAA,CAAA;sGAKrB,QAAQ,EAAA,CAAA;sBAAjB,MAAM;gBACG,aAAa,EAAA,CAAA;sBAAtB,MAAM;gBACE,YAAY,EAAA,CAAA;sBAApB,KAAK;gBACG,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBAEN,WAAW,EAAA,CAAA;sBADV,KAAK;gBAEG,OAAO,EAAA,CAAA;sBAAf,KAAK;gBACG,gBAAgB,EAAA,CAAA;sBAAxB,KAAK;;;AEKR;AACA;MAmCa,oBAAoB,CAAA;;kHAApB,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAApB,oBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,oBAAoB,iBAd7B,uBAAuB;QACvB,sBAAsB;QACtB,0BAA0B;QAC1B,6BAA6B;QAC7B,sBAAsB;AACtB,QAAA,oBAAoB,aAtBZ,YAAY;QACpB,gBAAgB;QAChB,WAAW;QACX,kBAAkB;QAClB,cAAc;QACd,cAAc;QACd,iBAAiB;QACjB,eAAe;QACf,qBAAqB;QACrB,eAAe;QACf,gBAAgB;QAChB,eAAe;AACf,QAAA,gBAAgB,aAahB,uBAAuB,CAAA,EAAA,CAAA,CAAA;AAMd,oBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,oBAAoB,EAJpB,SAAA,EAAA;QACT,kBAAkB;AACnB,KAAA,EAAA,OAAA,EAAA,CA7BS,YAAY;QACpB,gBAAgB;QAChB,WAAW;QACX,kBAAkB;QAClB,cAAc;QACd,cAAc;QACd,iBAAiB;QACjB,eAAe;QACf,qBAAqB;QACrB,eAAe;QACf,gBAAgB;QAChB,eAAe;QACf,gBAAgB,CAAA,EAAA,CAAA,CAAA;4FAmBP,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAhChC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,OAAO,EAAE,CAAC,YAAY;wBACpB,gBAAgB;wBAChB,WAAW;wBACX,kBAAkB;wBAClB,cAAc;wBACd,cAAc;wBACd,iBAAiB;wBACjB,eAAe;wBACf,qBAAqB;wBACrB,eAAe;wBACf,gBAAgB;wBAChB,eAAe;wBACf,gBAAgB;;;AAGjB,qBAAA;AACD,oBAAA,YAAY,EAAE;wBACZ,uBAAuB;wBACvB,sBAAsB;wBACtB,0BAA0B;wBAC1B,6BAA6B;wBAC7B,sBAAsB;wBACtB,oBAAoB;AACrB,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,uBAAuB;AACxB,qBAAA;AACD,oBAAA,SAAS,EAAE;wBACT,kBAAkB;AACnB,qBAAA;AACF,iBAAA,CAAA;;;ACzDD;;AAEG;;;;"}
|
|
1
|
+
{"version":3,"file":"ruc-lib-metaform.mjs","sources":["../../src/services/ruc-meta-form.service.ts","../../src/services/ruc-meta-form-validation.service.ts","../../src/components/ruc-meta-inputs/ruc-meta-inputs.component.ts","../../src/components/ruc-meta-inputs/ruc-meta-inputs.component.html","../../src/components/ruc-meta-radio-group/ruc-meta-radio-group.component.ts","../../src/components/ruc-meta-radio-group/ruc-meta-radio-group.component.html","../../src/components/ruc-meta-checkbox-group/ruc-meta-checkbox-group.component.ts","../../src/components/ruc-meta-checkbox-group/ruc-meta-checkbox-group.component.html","../../src/components/ruc-meta-select/ruc-meta-select.component.ts","../../src/components/ruc-meta-select/ruc-meta-select.component.html","../../src/components/ruc-text-area/ruc-text-area.component.ts","../../src/components/ruc-text-area/ruc-text-area.component.html","../../src/lib/ruclib-metaform/ruclib-metaform.component.ts","../../src/lib/ruclib-metaform/ruclib-metaform.component.html","../../src/lib/ruclib-metaform.module.ts","../../src/ruc-lib-metaform.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\r\nimport { Observable,Subject, BehaviorSubject } from 'rxjs';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport {MetaFormConfig} from '../interfaces/metaFormsDefault';\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class RucMetaFormService {\r\n\r\n public metaFormData:MetaFormConfig | undefined;\r\n public currentFormElement: MetaFormConfig | undefined;\r\n\r\n constructor(private http: HttpClient) { }\r\n\r\n public formData: BehaviorSubject<any> = new BehaviorSubject([] as any);\r\n\r\n getFormJson(form: any){\r\n this.formData.next(form);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport {MetaFormConfig} from '../interfaces/metaFormsDefault';\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class RucMetaFormValidationService {\r\n\r\n public defaultErrorMessage = 'Invalid Input';\r\n\r\n constructor() { \r\n }\r\n\r\n nospaceValidator(formData:MetaFormConfig){\r\n const re = / /;\r\n if(formData.value.match(re)){\r\n return { nullTable: true }\r\n }else{\r\n return false;\r\n }\r\n }\r\n\r\n alphaNumericValidator(formData:MetaFormConfig){\r\n const re = '^[a-zA-Z0-9_]+$'\r\n return formData.value ? !formData.value.match(re) : false;\r\n }\r\n\r\n \r\n}\r\n","import { Component, Input, OnInit, EventEmitter, Output } from '@angular/core';\r\nimport {RucMetaFormValidationService} from '../../services/ruc-meta-form-validation.service';\r\n\r\n@Component({\r\n selector: 'ruc-meta-inputs',\r\n templateUrl: './ruc-meta-inputs.component.html',\r\n styleUrls: ['./ruc-meta-inputs.component.css']\r\n})\r\nexport class RucMetaInputsComponent implements OnInit {\r\n @Input() rucInputData : any;\r\n @Input() selectedParentId?:any; \r\n @Output() transferUserInput = new EventEmitter<any>();\r\n @Input() customTheme: string | undefined;\r\n errorMessage: string | undefined\r\n options: string[] = [];\r\n filteredOptions: any;\r\n constructor(public validationService:RucMetaFormValidationService) { \r\n \r\n }\r\n\r\n ngOnInit(): void {\r\n this.errorMessage = this.validationService.defaultErrorMessage; \r\n this.rucInputData.value === undefined ? \"\" : this.rucInputData.value;\r\n this.options = this.rucInputData.autocomplete;\r\n }\r\n /**\r\n * \r\n * @param e \r\n */\r\n modelChangeFn(e:any) {\r\n const validate = this.validationService.alphaNumericValidator(this.rucInputData);\r\n this.rucInputData.errorMsg = validate;\r\n if(this.rucInputData.autocomplete){\r\n this.filteredOptions = this._filter(this.rucInputData.value);\r\n }\r\n this.transferUserInput.emit(this.rucInputData);\r\n }\r\n\r\n private _filter(value: string): string[] {\r\n const filterValue = value.toLowerCase();\r\n return this.options.filter(option => option.toLowerCase().includes(filterValue));\r\n }\r\n\r\n}\r\n","<mat-form-field class=\"{{customTheme }}\" [ngStyle]=\"{ 'width.%': rucInputData?.width }\" [appearance]=\"rucInputData?.appearance || 'fill'\">\r\n <mat-label>{{rucInputData?.label}}</mat-label>\r\n <input type=\"{{rucInputData?.inputType}}\" color=\"accent\" matInput placeholder=\"{{rucInputData?.placeholder}}\" [(ngModel)]=\"rucInputData.value\" \r\n (ngModelChange)=\"modelChangeFn($event.target)\" required=\"{{rucInputData?.required}}\" size=\"{{rucInputData?.size}}\"\r\n maxlength=\"{{rucInputData?.maxlength}}\" min=\"{{rucInputData?.min}}\" max=\"{{rucInputData?.max}}\" pattern=\"{{rucInputData?.pattern}}\"\r\n step=\"{{rucInputData?.step}}\" autofocus=\"{{rucInputData?.autofocus}}\" width=\"{{rucInputData?.width}}\" height=\"{{rucInputData?.height}}\"\r\n matTooltip=\"{{rucInputData?.tooltip}}\"\r\n [matAutocomplete]=\"auto\" [matAutocompleteDisabled]=\"!rucInputData?.autocomplete\" [readonly]=\"rucInputData?.readonly\" [matTooltipPosition]=\"rucInputData?.tooltipPosition\"\r\n > \r\n <mat-autocomplete autoActiveFirstOption #auto=\"matAutocomplete\">\r\n <mat-option *ngFor=\"let option of filteredOptions\" [value]=\"option\">\r\n {{option}}\r\n </mat-option>\r\n </mat-autocomplete>\r\n </mat-form-field>\r\n <div *ngIf=\"rucInputData?.errorMsg\" class=\"form-error\">\r\n {{rucInputData?.customErrorMessage ? rucInputData?.customErrorMessage : errorMessage}}\r\n </div> \r\n","import { Component, Input, OnInit,EventEmitter, Output } from '@angular/core';\r\nimport {RucMetaFormValidationService} from '../../services/ruc-meta-form-validation.service';\r\nimport { MatRadioChange } from '@angular/material/radio';\r\n@Component({\r\n selector: 'ruc-meta-radio-group',\r\n templateUrl: './ruc-meta-radio-group.component.html',\r\n styleUrls: ['./ruc-meta-radio-group.component.css'],\r\n})\r\nexport class RucMetaRadioGroupComponent implements OnInit {\r\n @Input() rucInputData : any;\r\n @Input() customTheme: string | undefined;\r\n @Output() transferUserInput = new EventEmitter<any>();\r\n errorMessage: string | undefined\r\n radioValue: string | undefined;\r\n constructor(public validationService:RucMetaFormValidationService) { }\r\n\r\n ngOnInit(): void {\r\n this.errorMessage = this.validationService.defaultErrorMessage;\r\n }\r\n /**\r\n * \r\n * @param e \r\n */\r\n modelChangeFn(e:any) {\r\n this.rucInputData.value = e.value;\r\n this.transferUserInput.emit(this.rucInputData);\r\n }\r\n}\r\n","<mat-label>{{rucInputData?.label}}</mat-label>\r\n<mat-radio-group \r\n aria-labelledby=\"radio-group-label\"\r\n class=\"{{customTheme}} radio-group\" [(ngModel)]=\"radioValue\">\r\n <mat-radio-button class=\"radio-button\" *ngFor=\"let item of rucInputData?.groupOptions\" [value]=\"item.value\"\r\n (change)=\"modelChangeFn($event)\">\r\n {{item?.name}}\r\n </mat-radio-button>\r\n</mat-radio-group>\r\n<div *ngIf=\"rucInputData?.errorMsg\" class=\"form-error\">\r\n {{rucInputData?.customErrorMessage ? rucInputData?.customErrorMessage : errorMessage}}\r\n</div> \r\n","import { Component, Input, OnInit, EventEmitter, Output } from '@angular/core';\r\nimport {RucMetaFormValidationService} from '../../services/ruc-meta-form-validation.service';\r\n\r\n@Component({\r\n selector: 'ruc-meta-checkbox-group',\r\n templateUrl: './ruc-meta-checkbox-group.component.html',\r\n styleUrls: ['./ruc-meta-checkbox-group.component.css']\r\n})\r\nexport class RucMetaCheckboxGroupComponent implements OnInit {\r\n @Input() rucInputData : any;\r\n @Output() transferUserInput = new EventEmitter<any>();\r\n errorMessage: string | undefined\r\n\r\n constructor(public validationService:RucMetaFormValidationService) { }\r\n\r\n ngOnInit(): void {\r\n this.errorMessage = this.validationService.defaultErrorMessage;\r\n }\r\n /**\r\n * \r\n * @param e \r\n */\r\n modelChangeFn(e:any) {\r\n const checkboxValues: any[] = [];\r\n this.rucInputData.groupOptions.forEach((x: any)=>{\r\n if(x.value){\r\n checkboxValues.push(x.name);\r\n }\r\n });\r\n this.rucInputData.value = checkboxValues;\r\n this.transferUserInput.emit(this.rucInputData);\r\n }\r\n}\r\n","<mat-label class=\"margin-\">{{rucInputData?.label}}</mat-label>\r\n<ul class=\"ruc-checkbox\">\r\n <li *ngFor=\"let item of rucInputData?.groupOptions\">\r\n <mat-checkbox [(ngModel)]=\"item.value\" (ngModelChange)=\"modelChangeFn($event)\">\r\n {{item?.name}}\r\n </mat-checkbox>\r\n </li>\r\n</ul>\r\n<div *ngIf=\"rucInputData?.errorMsg\" class=\"form-error\">\r\n {{rucInputData?.customErrorMessage ? rucInputData?.customErrorMessage : errorMessage}}\r\n</div>","import { Component, Input, OnInit, EventEmitter, Output } from '@angular/core';\r\nimport { RucMetaFormService } from \"../../services/ruc-meta-form.service\"\r\nimport {RucMetaFormValidationService} from '../../services/ruc-meta-form-validation.service';\r\n\r\n@Component({\r\n selector: 'ruc-meta-select',\r\n templateUrl: './ruc-meta-select.component.html',\r\n styleUrls: ['./ruc-meta-select.component.css']\r\n})\r\nexport class RucMetaSelectComponent implements OnInit {\r\n \r\n @Input() rucInputData : any;\r\n errorMessage: string | undefined\r\n @Output() transferUserInput = new EventEmitter<any>();\r\n constructor(public service: RucMetaFormService,public validationService:RucMetaFormValidationService) { }\r\n\r\n ngOnInit(): void {\r\n this.errorMessage = this.validationService.defaultErrorMessage;\r\n }\r\n\r\n modelChangeFn(e:any) { \r\n this.rucInputData.groupOptions.forEach((x: any)=>{\r\n if(x.value == e.value){\r\n this.rucInputData.selectedParentId = x.id;\r\n }\r\n });\r\n if(this.rucInputData.dependentFields){\r\n this.removDependentFieldParentIdFromOther(this.rucInputData.dependentFields);\r\n }\r\n this.service.currentFormElement = this.rucInputData;\r\n this.transferUserInput.emit(this.rucInputData);\r\n }\r\n\r\n removDependentFieldParentIdFromOther(child: any){\r\n child.forEach((x:any)=>{\r\n if(x.selectedParentId){\r\n delete(x.selectedParentId);\r\n x.value = \"\";\r\n if(x.dependentFields){\r\n this.removDependentFieldParentIdFromOther(x.dependentFields);\r\n } \r\n } \r\n })\r\n }\r\n}\r\n","<div class=\"select-label\">\r\n <mat-label>{{rucInputData?.label}}</mat-label>\r\n</div>\r\n<mat-form-field [ngStyle]=\"{ 'width.%': rucInputData?.width }\" matTooltip=\"{{rucInputData?.tooltip}}\" [appearance]=\"rucInputData?.appearance || 'fill'\">\r\n <mat-label>Choose an option</mat-label>\r\n <mat-select (selectionChange)=\"modelChangeFn($event)\" [(ngModel)]=\"rucInputData.value\">\r\n <mat-option *ngFor=\"let item of rucInputData?.groupOptions\" [value]=\"item.value\" [disabled]=\"item?.disable\"> {{item.name}}</mat-option>\r\n </mat-select>\r\n</mat-form-field>\r\n<div *ngIf=\"rucInputData?.errorMsg\" class=\"form-error\">\r\n {{rucInputData?.customErrorMessage ? rucInputData?.customErrorMessage : errorMessage}}\r\n</div>","import { Component, Input, OnInit, EventEmitter, Output } from '@angular/core';\r\nimport {RucMetaFormValidationService} from '../../services/ruc-meta-form-validation.service';\r\n\r\n@Component({\r\n selector: 'ruc-text-area',\r\n templateUrl: './ruc-text-area.component.html',\r\n styleUrls: ['./ruc-text-area.component.css']\r\n})\r\nexport class RucTextAreaComponent implements OnInit {\r\n @Input() rucInputData : any;\r\n @Output() transferUserInput = new EventEmitter<any>();\r\n @Input() customTheme: string | undefined;\r\n errorMessage: string | undefined\r\n\r\n constructor(public validationService:RucMetaFormValidationService) { \r\n \r\n }\r\n\r\n ngOnInit(): void {\r\n this.errorMessage = this.validationService.defaultErrorMessage;\r\n }\r\n /**\r\n * \r\n * @param e \r\n */\r\n modelChangeFn(e:any) {\r\n this.transferUserInput.emit(this.rucInputData);\r\n }\r\n\r\n}\r\n","<mat-form-field [ngStyle]=\"{ 'width.%': rucInputData?.width }\" [appearance]=\"rucInputData?.appearance || 'fill'\" class=\"{{customTheme}}\">\r\n <mat-label>{{rucInputData?.label}}</mat-label>\r\n <textarea matInput\r\n placeholder=\"{{rucInputData?.placeholder}}\"\r\n cdkTextareaAutosize\r\n #autosize=\"cdkTextareaAutosize\"\r\n cdkAutosizeMinRows=\"{{rucInputData.min}}\"\r\n cdkAutosizeMaxRows=\"{{rucInputData.max}}\"\r\n [readonly]=\"rucInputData?.readonly\"\r\n [(ngModel)]=\"rucInputData.value\" \r\n matTooltip=\"{{rucInputData?.tooltip}}\"\r\n (ngModelChange)=\"modelChangeFn($event.target)\"></textarea>\r\n </mat-form-field>\r\n <div *ngIf=\"rucInputData?.errorMsg\" class=\"form-error\">\r\n {{rucInputData?.customErrorMessage ? rucInputData?.customErrorMessage : errorMessage}}\r\n </div>\r\n","import { Component, Input, Output, OnInit, EventEmitter, OnDestroy } from '@angular/core';\r\nimport {MetaFormConfig} from '../../interfaces/metaFormsDefault';\r\nimport { RucMetaFormService } from \"../../services/ruc-meta-form.service\"\r\nimport { Subscription } from 'rxjs';\r\n@Component({\r\n selector: 'uxp-ruclib-metaform',\r\n templateUrl: './ruclib-metaform.component.html',\r\n styleUrls: ['./ruclib-metaform.component.scss']\r\n})\r\nexport class RuclibMetaformComponent implements OnInit,OnDestroy{\r\n @Output() rucEvent = new EventEmitter<any>();\r\n @Output() childRucEvent = new EventEmitter<any>();\r\n @Input() rucInputData: MetaFormConfig[] = []\r\n @Input() childForm?: MetaFormConfig[]\r\n @Input()\r\n customTheme!: string;\r\n @Input() isChild?: boolean;\r\n @Input() selectedParentId: any;\r\n inputObjectDataMultiFileUpload?:any;\r\n metaFormSubscribeInputs: Subscription | undefined;\r\n formData: any\r\n constructor(public service: RucMetaFormService) { }\r\n \r\n ngOnInit(): void {\r\n if (!this.isChild) {\r\n this.service.getFormJson(this.rucInputData);\r\n this.getFormJson();\r\n } else {\r\n this.formData = this.childForm;\r\n }\r\n this.inputObjectDataMultiFileUpload = {\r\n multifileSelection: true,\r\n displayThumbnail: true,\r\n label: 'Choose File',\r\n uploadUrl: '/api/upload',\r\n deleteUrl: '/api/delete',\r\n };\r\n }\r\n \r\n /**\r\n * The purpose of this function to pass data from dependentFields to parent field\r\n * @param getObject \r\n * @param j \r\n */\r\n passEvent(getObject: any, formElement?: any) {\r\n const eventOutput = getObject?.eventOutput ? getObject.eventOutput : this.service.currentFormElement;\r\n if(getObject?.eventName == \"onUploading\"){\r\n formElement.value = getObject?.eventOutput.name ? getObject?.eventOutput.name : getObject?.eventOutput[0].name;\r\n }\r\n this.rucEvent.emit({ 'eventName': 'metaFormData', 'eventOutput': eventOutput, 'formData': this.formData, 'rucComponentEvent': getObject?.eventName });\r\n }\r\n\r\n /**\r\n * Initial function to load for data\r\n */\r\n getFormJson() {\r\n this.metaFormSubscribeInputs = this.service.formData.asObservable()\r\n .subscribe(\r\n (formData)=>{\r\n this.formData = formData;\r\n this.service.metaFormData = this.formData;\r\n } \r\n );\r\n }\r\n\r\n /**\r\n * This function is to emit form data\r\n * @param event \r\n */\r\n getMetaFormData(event: any) {\r\n this.rucEvent.emit({ 'eventName': 'metaFormData', 'eventOutput': event, 'formData': this.formData });\r\n }\r\n\r\n /**\r\n * Clear form data\r\n */\r\n clearForm(){\r\n this.formData.map((x:MetaFormConfig)=>{\r\n x.value = '';\r\n });\r\n }\r\n\r\n /**\r\n * Destroy the subscriber\r\n */\r\n ngOnDestroy() {\r\n if (this.metaFormSubscribeInputs) {\r\n this.metaFormSubscribeInputs.unsubscribe();\r\n }\r\n }\r\n}\r\n","<form novalidate>\r\n <ng-container *ngFor=\"let dynamicField of formData; let j = index;\" [ngSwitch]=\"dynamicField?.fieldType\">\r\n <div [ngStyle] = \"{ 'width.%': dynamicField.sameRowColumnWidth - 2 }\" [ngClass]=\"dynamicField.sameRow === true ? 'margin-5 column-in-same-row' : 'margin-5 column-in-new-row'\" \r\n *ngIf=\"dynamicField.formType != 'stepper'\">\r\n \r\n <ng-template [ngSwitchCase]=\"'input'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.hasDependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId)\">\r\n <ruc-meta-inputs [customTheme] = \"customTheme\" [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-inputs>\r\n </div>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'radio'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-radio-group [customTheme] = \"customTheme\" [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-radio-group>\r\n </div>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'checkbox'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-checkbox-group [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-checkbox-group>\r\n </div>\r\n </ng-template>\r\n <ng-template class=\"\" [ngSwitchCase]=\"'select'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-select [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-select>\r\n </div>\r\n </ng-template>\r\n <ng-template class=\"\" [ngSwitchCase]=\"'textarea'\">\r\n <ruc-text-area [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-text-area>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'rucMultiSelect'\">\r\n <uxp-ruclib-multi-select [rucInputData]=\"dynamicField?.rucMultiselectInput?.rucInputData\"\r\n [dataSource]=\"dynamicField?.rucMultiselectInput?.dataSource\" [customTheme]=\"customTheme\"\r\n (rucEvent)=\"passEvent($event)\"></uxp-ruclib-multi-select>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'rucMultiFileUpload'\">\r\n <uxp-ruclib-multi-file-upload\r\n [rucInputData]=\"dynamicField?.rucMultiFileUploadInput?.rucInputData\" [customTheme]=\"customTheme\"\r\n (rucEvent)=\"passEvent($event,dynamicField)\"></uxp-ruclib-multi-file-upload>\r\n </ng-template>\r\n <div *ngIf=\"dynamicField.hasDependentFields && dynamicField.value\">\r\n <uxp-ruclib-metaform #dynamicField.id [rucInputData]=\"formData\" [childForm] =\"dynamicField.dependentFields\"\r\n [isChild]=\"true\" [selectedParentId] = \"dynamicField.selectedParentId\" (rucEvent)=\"passEvent($event,dynamicField.id)\"></uxp-ruclib-metaform>\r\n </div>\r\n \r\n </div>\r\n <div *ngIf=\"dynamicField.formType == 'stepper'\">\r\n <mat-stepper linear #stepper>\r\n <div *ngFor=\"let stapperField of dynamicField.stepper; let s = index;\" [ngSwitch]=\"stapperField?.fieldType\">\r\n <mat-step [stepControl]=\"stapperField.stepControl\" *ngIf=\"stapperField.stepControl != 'done'\">\r\n <ng-template matStepLabel>{{stapperField.stepperlabel}}</ng-template>\r\n <ng-container *ngFor=\"let stepperFormData of stapperField.stepperFormData; let j = index;\" [ngSwitch]=\"stepperFormData?.fieldType\">\r\n <div [ngStyle] = \"{ 'width.%': dynamicField.sameRowColumnWidth - 2 }\" [ngClass]=\"dynamicField.sameRow === true ? 'margin-5 column-in-same-row' : 'margin-5 column-in-new-row'\" \r\n >\r\n <ng-template [ngSwitchCase]=\"'input'\">\r\n <div>\r\n <ruc-meta-inputs [customTheme] = \"customTheme\" [rucInputData]=\"stepperFormData\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-inputs>\r\n </div>\r\n </ng-template>\r\n <ng-template class=\"\" [ngSwitchCase]=\"'textarea'\">\r\n <ruc-text-area [rucInputData]=\"stepperFormData\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-text-area>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'radio'\">\r\n <div>\r\n <ruc-meta-radio-group [customTheme] = \"customTheme\" [rucInputData]=\"stepperFormData\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-radio-group>\r\n </div>\r\n </ng-template>\r\n <ng-template [ngSwitchCase]=\"'checkbox'\">\r\n <div >\r\n <ruc-meta-checkbox-group [rucInputData]=\"stepperFormData\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-checkbox-group>\r\n </div>\r\n </ng-template>\r\n <ng-template class=\"\" [ngSwitchCase]=\"'select'\">\r\n <div *ngIf=\"(!selectedParentId && !dynamicField.dependentFields) || (selectedParentId && selectedParentId == dynamicField.dependentFieldParentId) || (!selectedParentId && dynamicField.dependentFields && !isChild)\">\r\n <ruc-meta-select [rucInputData]=\"dynamicField\" (transferUserInput)=\"getMetaFormData($event)\"></ruc-meta-select>\r\n </div>\r\n </ng-template>\r\n </div>\r\n </ng-container>\r\n <div>\r\n <button mat-button matStepperPrevious *ngIf=\"s > 0\">Back</button>\r\n <button mat-button matStepperNext *ngIf=\"s< dynamicField.stepper.length\">Next</button>\r\n </div>\r\n </mat-step>\r\n <mat-step *ngIf=\"stapperField.stepControl == 'done'\">\r\n <ng-template matStepLabel>{{stapperField.stepControl}}</ng-template>\r\n <p>{{stapperField.stepperlabel}}</p>\r\n <div>\r\n <button mat-button matStepperPrevious>Back</button>\r\n <button mat-button (click)=\"stepper.reset()\">Reset</button>\r\n </div>\r\n </mat-step>\r\n </div>\r\n </mat-stepper>\r\n </div>\r\n </ng-container>\r\n <ng-container>\r\n <button mat-raised-button color=\"primary\" (click)=\"clearForm()\" *ngIf=\"!isChild\">Clear Form</button>\r\n </ng-container>\r\n \r\n</form>","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { RuclibMetaformComponent } from './ruclib-metaform/ruclib-metaform.component';\r\nimport { HttpClientModule } from '@angular/common/http';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatRadioModule } from '@angular/material/radio';\r\nimport { MatCheckboxModule } from '@angular/material/checkbox';\r\nimport { MatSelectModule } from '@angular/material/select';\r\nimport { MatAutocompleteModule } from '@angular/material/autocomplete';\r\nimport { MatButtonModule} from '@angular/material/button';\r\nimport { MatTooltipModule} from '@angular/material/tooltip';\r\nimport {MatStepperModule} from '@angular/material/stepper';\r\nimport { TextFieldModule} from '@angular/cdk/text-field';\r\nimport { RucMetaFormService } from '../services/ruc-meta-form.service';\r\nimport { RucMetaInputsComponent } from '../components/ruc-meta-inputs/ruc-meta-inputs.component';\r\nimport { RucMetaRadioGroupComponent } from '../components/ruc-meta-radio-group/ruc-meta-radio-group.component';\r\nimport { RucMetaCheckboxGroupComponent } from '../components/ruc-meta-checkbox-group/ruc-meta-checkbox-group.component';\r\nimport { RucMetaSelectComponent } from '../components/ruc-meta-select/ruc-meta-select.component';\r\nimport { RucTextAreaComponent } from '../components/ruc-text-area/ruc-text-area.component';\r\n\r\nimport {RuclibMultiSelectModule} from '@ruc-lib/multi-select';\r\nimport {RuclibMultiFileUploadModule} from '@ruc-lib/multi-file-upload';\r\n\r\n\r\n@NgModule({\r\n imports: [CommonModule,\r\n HttpClientModule,\r\n FormsModule,\r\n MatFormFieldModule,\r\n MatInputModule,\r\n MatRadioModule,\r\n MatCheckboxModule,\r\n MatSelectModule,\r\n MatAutocompleteModule,\r\n MatButtonModule, \r\n MatTooltipModule,\r\n TextFieldModule,\r\n MatStepperModule,\r\n RuclibMultiSelectModule,\r\n RuclibMultiFileUploadModule\r\n ],\r\n declarations: [\r\n RuclibMetaformComponent,\r\n RucMetaInputsComponent,\r\n RucMetaRadioGroupComponent,\r\n RucMetaCheckboxGroupComponent,\r\n RucMetaSelectComponent,\r\n RucTextAreaComponent\r\n ],\r\n exports: [\r\n RuclibMetaformComponent\r\n ],\r\n providers: [\r\n RucMetaFormService\r\n ]\r\n})\r\nexport class RuclibMetaformModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.RucMetaFormValidationService","i5","i1.RucMetaFormService","i2.RucMetaFormValidationService","i3","i4","i6","i7","i8.RucMetaInputsComponent","i9.RucMetaRadioGroupComponent","i10.RucMetaCheckboxGroupComponent","i11.RucMetaSelectComponent","i12.RucTextAreaComponent"],"mappings":"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"}
|
|
@@ -18,8 +18,10 @@ import * as i16 from "@angular/material/button";
|
|
|
18
18
|
import * as i17 from "@angular/material/tooltip";
|
|
19
19
|
import * as i18 from "@angular/cdk/text-field";
|
|
20
20
|
import * as i19 from "@angular/material/stepper";
|
|
21
|
+
import * as i20 from "@ruc-lib/multi-select";
|
|
22
|
+
import * as i21 from "@ruc-lib/multi-file-upload";
|
|
21
23
|
export declare class RuclibMetaformModule {
|
|
22
24
|
static ɵfac: i0.ɵɵFactoryDeclaration<RuclibMetaformModule, never>;
|
|
23
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<RuclibMetaformModule, [typeof i1.RuclibMetaformComponent, typeof i2.RucMetaInputsComponent, typeof i3.RucMetaRadioGroupComponent, typeof i4.RucMetaCheckboxGroupComponent, typeof i5.RucMetaSelectComponent, typeof i6.RucTextAreaComponent], [typeof i7.CommonModule, typeof i8.HttpClientModule, typeof i9.FormsModule, typeof i10.MatFormFieldModule, typeof i11.MatInputModule, typeof i12.MatRadioModule, typeof i13.MatCheckboxModule, typeof i14.MatSelectModule, typeof i15.MatAutocompleteModule, typeof i16.MatButtonModule, typeof i17.MatTooltipModule, typeof i18.TextFieldModule, typeof i19.MatStepperModule], [typeof i1.RuclibMetaformComponent]>;
|
|
25
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<RuclibMetaformModule, [typeof i1.RuclibMetaformComponent, typeof i2.RucMetaInputsComponent, typeof i3.RucMetaRadioGroupComponent, typeof i4.RucMetaCheckboxGroupComponent, typeof i5.RucMetaSelectComponent, typeof i6.RucTextAreaComponent], [typeof i7.CommonModule, typeof i8.HttpClientModule, typeof i9.FormsModule, typeof i10.MatFormFieldModule, typeof i11.MatInputModule, typeof i12.MatRadioModule, typeof i13.MatCheckboxModule, typeof i14.MatSelectModule, typeof i15.MatAutocompleteModule, typeof i16.MatButtonModule, typeof i17.MatTooltipModule, typeof i18.TextFieldModule, typeof i19.MatStepperModule, typeof i20.RuclibMultiSelectModule, typeof i21.RuclibMultiFileUploadModule], [typeof i1.RuclibMetaformComponent]>;
|
|
24
26
|
static ɵinj: i0.ɵɵInjectorDeclaration<RuclibMetaformModule>;
|
|
25
27
|
}
|