kwikid-forms 0.3.21 → 0.5.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundles/kwikid-forms.umd.js +7199 -7736
- package/bundles/kwikid-forms.umd.js.map +1 -1
- package/esm2015/lib/builder/builder-form-editor/builder-form-editor.component.js +403 -0
- package/esm2015/lib/builder/builder-form-editor/builder-form-editor.definitions.js +6 -0
- package/esm2015/lib/builder/builder-form-editor/builder-form-editor.helper.js +29 -0
- package/esm2015/lib/builder/builder-form-editor/builder-form-editor.module.js +39 -0
- package/esm2015/lib/builder/builder-form-editor/builder.form-editor.constants.js +189 -0
- package/esm2015/lib/builder/builder-form-editor/builder.form-editor.service.js +43 -0
- package/esm2015/lib/builder/builder-form-list/builder-forms-list.component.js +99 -0
- package/esm2015/lib/builder/builder-form-list/builder-forms-list.module.js +40 -0
- package/esm2015/lib/builder/builder.component.js +111 -258
- package/esm2015/lib/builder/builder.helper.js +78 -0
- package/esm2015/lib/builder/builder.module.js +15 -75
- package/esm2015/lib/kwikid-forms.module.js +4 -4
- package/esm2015/lib/renderer/config-converter/config-converter.constants.js +74 -0
- package/esm2015/lib/renderer/config-converter/config-converter.helper.js +49 -0
- package/esm2015/lib/renderer/config-converter/config-converter.js +514 -0
- package/esm2015/lib/renderer/form-view/definitions/form-view.fields.definition.js +5 -1
- package/esm2015/lib/renderer/form-view/form-view.component.js +198 -60
- package/esm2015/lib/renderer/form-view/form-view.module.js +7 -6
- package/esm2015/lib/renderer/form-view/helpers/form-view.fields.helper.js +17 -2
- package/esm2015/lib/renderer/forms-list/forms-list.component.js +6 -6
- package/esm2015/lib/renderer/forms-list/forms-list.module.js +7 -5
- package/esm2015/lib/renderer/renderer.component.js +73 -27
- package/esm2015/lib/renderer/renderer.definitions.js +6 -0
- package/fesm2015/kwikid-forms.js +1820 -4292
- package/fesm2015/kwikid-forms.js.map +1 -1
- package/lib/builder/builder-form-editor/builder-form-editor.component.d.ts +108 -0
- package/lib/builder/builder-form-editor/builder-form-editor.definitions.d.ts +5 -0
- package/lib/builder/builder-form-editor/builder-form-editor.helper.d.ts +3 -0
- package/lib/builder/builder-form-editor/builder-form-editor.module.d.ts +11 -0
- package/lib/builder/builder-form-editor/builder.form-editor.constants.d.ts +696 -0
- package/lib/builder/builder-form-editor/builder.form-editor.service.d.ts +7 -0
- package/lib/builder/builder-form-list/builder-forms-list.component.d.ts +20 -0
- package/lib/builder/builder-form-list/builder-forms-list.module.d.ts +11 -0
- package/lib/builder/builder.component.d.ts +15 -34
- package/lib/builder/builder.helper.d.ts +1 -0
- package/lib/builder/builder.module.d.ts +7 -21
- package/lib/kwikid-forms.module.d.ts +1 -1
- package/lib/renderer/config-converter/config-converter.constants.d.ts +73 -0
- package/lib/renderer/config-converter/config-converter.d.ts +5 -0
- package/lib/renderer/config-converter/config-converter.helper.d.ts +7 -0
- package/lib/renderer/form-view/definitions/form-view.fields.definition.d.ts +11 -7
- package/lib/renderer/form-view/form-view.component.d.ts +20 -7
- package/lib/renderer/form-view/form-view.module.d.ts +7 -9
- package/lib/renderer/form-view/helpers/form-view.fields.helper.d.ts +1 -0
- package/lib/renderer/forms-list/forms-list.module.d.ts +5 -6
- package/lib/renderer/renderer.definitions.d.ts +5 -0
- package/package.json +4 -17
- package/esm2015/lib/builder/element-config-editor/editors/basic/checkbox-config.editor.component.js +0 -72
- package/esm2015/lib/builder/element-config-editor/editors/basic/date-config.editor.component.js +0 -72
- package/esm2015/lib/builder/element-config-editor/editors/basic/dropdown-with-search-config.editor.component.js +0 -302
- package/esm2015/lib/builder/element-config-editor/editors/basic/number-config.editor.component.js +0 -72
- package/esm2015/lib/builder/element-config-editor/editors/basic/otp-config.editor.component.js +0 -130
- package/esm2015/lib/builder/element-config-editor/editors/basic/phone-config.editor.component.js +0 -132
- package/esm2015/lib/builder/element-config-editor/editors/basic/radio-config.editor.component.js +0 -396
- package/esm2015/lib/builder/element-config-editor/editors/basic/text-config.editor.component.js +0 -132
- package/esm2015/lib/builder/element-config-editor/editors/basic-element-config.editor.component.js +0 -698
- package/esm2015/lib/builder/element-config-editor/editors/document/aadhaar-number-config.editor.component.js +0 -130
- package/esm2015/lib/builder/element-config-editor/editors/document/pan-number-config.editor.component.js +0 -135
- package/esm2015/lib/builder/element-config-editor/editors/document-element-config.editor.component.js +0 -610
- package/esm2015/lib/builder/element-config-editor/editors/other/html-config.editor.component.js +0 -120
- package/esm2015/lib/builder/element-config-editor/editors/other/title-config.editor.component.js +0 -121
- package/esm2015/lib/builder/element-config-editor/editors/other-element-config.editor.component.js +0 -214
- package/esm2015/lib/builder/element-config-editor/element-config-editor.component.js +0 -97
- package/esm2015/lib/builder/shared/elements.js +0 -81
- package/esm2015/lib/builder/shared/helpers.js +0 -6
- package/esm2015/lib/renderer/config-converter.helper.js +0 -552
- package/esm2015/lib/renderer/form-view/pipes/safe-html.pipe.js +0 -25
- package/esm2015/lib/renderer/form-view/pipes/safe-url.pipe.js +0 -25
- package/esm2015/lib/renderer/forms-list/pipes/safe-html.pipe.js +0 -25
- package/lib/builder/element-config-editor/editors/basic/checkbox-config.editor.component.d.ts +0 -16
- package/lib/builder/element-config-editor/editors/basic/date-config.editor.component.d.ts +0 -16
- package/lib/builder/element-config-editor/editors/basic/dropdown-with-search-config.editor.component.d.ts +0 -24
- package/lib/builder/element-config-editor/editors/basic/number-config.editor.component.d.ts +0 -16
- package/lib/builder/element-config-editor/editors/basic/otp-config.editor.component.d.ts +0 -16
- package/lib/builder/element-config-editor/editors/basic/phone-config.editor.component.d.ts +0 -16
- package/lib/builder/element-config-editor/editors/basic/radio-config.editor.component.d.ts +0 -25
- package/lib/builder/element-config-editor/editors/basic/text-config.editor.component.d.ts +0 -16
- package/lib/builder/element-config-editor/editors/basic-element-config.editor.component.d.ts +0 -20
- package/lib/builder/element-config-editor/editors/document/aadhaar-number-config.editor.component.d.ts +0 -16
- package/lib/builder/element-config-editor/editors/document/pan-number-config.editor.component.d.ts +0 -16
- package/lib/builder/element-config-editor/editors/document-element-config.editor.component.d.ts +0 -20
- package/lib/builder/element-config-editor/editors/other/html-config.editor.component.d.ts +0 -16
- package/lib/builder/element-config-editor/editors/other/title-config.editor.component.d.ts +0 -16
- package/lib/builder/element-config-editor/editors/other-element-config.editor.component.d.ts +0 -20
- package/lib/builder/element-config-editor/element-config-editor.component.d.ts +0 -20
- package/lib/builder/shared/elements.d.ts +0 -34
- package/lib/builder/shared/helpers.d.ts +0 -1
- package/lib/renderer/config-converter.helper.d.ts +0 -9
- package/lib/renderer/form-view/pipes/safe-html.pipe.d.ts +0 -15
- package/lib/renderer/form-view/pipes/safe-url.pipe.d.ts +0 -15
- package/lib/renderer/forms-list/pipes/safe-html.pipe.d.ts +0 -15
package/esm2015/lib/builder/element-config-editor/editors/basic/phone-config.editor.component.js
DELETED
|
@@ -1,132 +0,0 @@
|
|
|
1
|
-
import { __decorate } from "tslib";
|
|
2
|
-
import { Component, EventEmitter, Input, Output } from "@angular/core";
|
|
3
|
-
import { FormControl, FormGroup } from "@angular/forms";
|
|
4
|
-
import { logMethod } from "kwikid-toolkit";
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
import * as i1 from "kwikui";
|
|
7
|
-
import * as i2 from "@angular/forms";
|
|
8
|
-
export class BasicPhoneConfigEditor {
|
|
9
|
-
constructor() {
|
|
10
|
-
this.saveBasicClickCounter = 0;
|
|
11
|
-
this.elementConfig = {
|
|
12
|
-
properties: {
|
|
13
|
-
countryCode: "+91",
|
|
14
|
-
removeCountryCodeFromValue: true,
|
|
15
|
-
phoneMaskAfterCountryCode: "##########"
|
|
16
|
-
}
|
|
17
|
-
};
|
|
18
|
-
this.updateElement = new EventEmitter();
|
|
19
|
-
this.basicPhoneFormGroup = undefined;
|
|
20
|
-
}
|
|
21
|
-
ngOnInit() {
|
|
22
|
-
this.createBasicPhoneFormGroup();
|
|
23
|
-
}
|
|
24
|
-
ngOnChanges(changes) {
|
|
25
|
-
var _a;
|
|
26
|
-
const verifyChange = (key) => {
|
|
27
|
-
return changes.hasOwnProperty(key) && !changes[key].firstChange;
|
|
28
|
-
};
|
|
29
|
-
if (verifyChange("elementConfig")) {
|
|
30
|
-
this.elementConfig = changes.elementConfig.currentValue;
|
|
31
|
-
(_a = this.basicPhoneFormGroup) === null || _a === void 0 ? void 0 : _a.reset(this.elementConfig);
|
|
32
|
-
}
|
|
33
|
-
if (verifyChange("saveBasicClickCounter")) {
|
|
34
|
-
if (changes.saveBasicClickCounter.previousValue !==
|
|
35
|
-
changes.saveBasicClickCounter.currentValue) {
|
|
36
|
-
this.saveBasicClickCounter = changes.saveBasicClickCounter.currentValue;
|
|
37
|
-
this.handleOnSave();
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
createBasicPhoneFormGroup() {
|
|
42
|
-
this.basicPhoneFormGroup = new FormGroup({
|
|
43
|
-
properties: new FormGroup({
|
|
44
|
-
mask: new FormControl(this.elementConfig.properties.mask, {
|
|
45
|
-
updateOn: "change"
|
|
46
|
-
})
|
|
47
|
-
})
|
|
48
|
-
});
|
|
49
|
-
this.basicPhoneFormGroup.updateValueAndValidity();
|
|
50
|
-
}
|
|
51
|
-
handleOnSave() {
|
|
52
|
-
let basicElementConfig = this.basicPhoneFormGroup.getRawValue();
|
|
53
|
-
this.updateElement.emit({
|
|
54
|
-
basicElementConfig: basicElementConfig
|
|
55
|
-
});
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
/** @nocollapse */ BasicPhoneConfigEditor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: BasicPhoneConfigEditor, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
59
|
-
/** @nocollapse */ BasicPhoneConfigEditor.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: BasicPhoneConfigEditor, selector: "basic-phone-config-editor", inputs: { saveBasicClickCounter: "saveBasicClickCounter", elementConfig: "elementConfig" }, outputs: { updateElement: "updateElement" }, usesOnChanges: true, ngImport: i0, template: `
|
|
60
|
-
<form [formGroup]="basicPhoneFormGroup">
|
|
61
|
-
<div formGroupName="properties">
|
|
62
|
-
<div class="form-group-title">Properties</div>
|
|
63
|
-
<div class="form-group">
|
|
64
|
-
<kwikui-input
|
|
65
|
-
[label]="'Mask'"
|
|
66
|
-
[id]="'basic-phone-config-mask'"
|
|
67
|
-
[type]="'text'"
|
|
68
|
-
[formControlName]="'mask'"
|
|
69
|
-
[formControl]="
|
|
70
|
-
basicPhoneFormGroup.controls.properties['controls'].mask
|
|
71
|
-
"
|
|
72
|
-
[disabled]="false"
|
|
73
|
-
[placeholder]="'Please enter your mask'"
|
|
74
|
-
[focus]="false"
|
|
75
|
-
[invalid]="false"
|
|
76
|
-
[case]="'default'"
|
|
77
|
-
size="m"
|
|
78
|
-
></kwikui-input>
|
|
79
|
-
</div>
|
|
80
|
-
</div>
|
|
81
|
-
</form>
|
|
82
|
-
`, isInline: true, styles: [""], components: [{ type: i1.KwikUIInputComponent, selector: "kwikui-input", inputs: ["label", "id", "type", "formControlName", "formControl", "placeholder", "focus", "invalid", "disabled", "validators", "case", "size", "icon", "properties"], outputs: ["getKeyValue"] }], directives: [{ type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i2.FormGroupName, selector: "[formGroupName]", inputs: ["formGroupName"] }, { type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i2.FormControlName, selector: "[formControlName]", inputs: ["disabled", "formControlName", "ngModel"], outputs: ["ngModelChange"] }, { type: i2.FormControlDirective, selector: "[formControl]", inputs: ["disabled", "formControl", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }] });
|
|
83
|
-
__decorate([
|
|
84
|
-
logMethod
|
|
85
|
-
], BasicPhoneConfigEditor.prototype, "ngOnInit", null);
|
|
86
|
-
__decorate([
|
|
87
|
-
logMethod
|
|
88
|
-
], BasicPhoneConfigEditor.prototype, "ngOnChanges", null);
|
|
89
|
-
__decorate([
|
|
90
|
-
logMethod
|
|
91
|
-
], BasicPhoneConfigEditor.prototype, "createBasicPhoneFormGroup", null);
|
|
92
|
-
__decorate([
|
|
93
|
-
logMethod
|
|
94
|
-
], BasicPhoneConfigEditor.prototype, "handleOnSave", null);
|
|
95
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: BasicPhoneConfigEditor, decorators: [{
|
|
96
|
-
type: Component,
|
|
97
|
-
args: [{
|
|
98
|
-
selector: "basic-phone-config-editor",
|
|
99
|
-
template: `
|
|
100
|
-
<form [formGroup]="basicPhoneFormGroup">
|
|
101
|
-
<div formGroupName="properties">
|
|
102
|
-
<div class="form-group-title">Properties</div>
|
|
103
|
-
<div class="form-group">
|
|
104
|
-
<kwikui-input
|
|
105
|
-
[label]="'Mask'"
|
|
106
|
-
[id]="'basic-phone-config-mask'"
|
|
107
|
-
[type]="'text'"
|
|
108
|
-
[formControlName]="'mask'"
|
|
109
|
-
[formControl]="
|
|
110
|
-
basicPhoneFormGroup.controls.properties['controls'].mask
|
|
111
|
-
"
|
|
112
|
-
[disabled]="false"
|
|
113
|
-
[placeholder]="'Please enter your mask'"
|
|
114
|
-
[focus]="false"
|
|
115
|
-
[invalid]="false"
|
|
116
|
-
[case]="'default'"
|
|
117
|
-
size="m"
|
|
118
|
-
></kwikui-input>
|
|
119
|
-
</div>
|
|
120
|
-
</div>
|
|
121
|
-
</form>
|
|
122
|
-
`,
|
|
123
|
-
styles: [``]
|
|
124
|
-
}]
|
|
125
|
-
}], ctorParameters: function () { return []; }, propDecorators: { saveBasicClickCounter: [{
|
|
126
|
-
type: Input
|
|
127
|
-
}], elementConfig: [{
|
|
128
|
-
type: Input
|
|
129
|
-
}], updateElement: [{
|
|
130
|
-
type: Output
|
|
131
|
-
}], ngOnInit: [], ngOnChanges: [], createBasicPhoneFormGroup: [], handleOnSave: [] } });
|
|
132
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGhvbmUtY29uZmlnLmVkaXRvci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rd2lraWQtZm9ybXMvc3JjL2xpYi9idWlsZGVyL2VsZW1lbnQtY29uZmlnLWVkaXRvci9lZGl0b3JzL2Jhc2ljL3Bob25lLWNvbmZpZy5lZGl0b3IuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBRUwsTUFBTSxFQUVQLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7O0FBOEIzQyxNQUFNLE9BQU8sc0JBQXNCO0lBa0JqQztRQWhCQSwwQkFBcUIsR0FBVyxDQUFDLENBQUM7UUFHbEMsa0JBQWEsR0FBUTtZQUNuQixVQUFVLEVBQUU7Z0JBQ1YsV0FBVyxFQUFFLEtBQUs7Z0JBQ2xCLDBCQUEwQixFQUFFLElBQUk7Z0JBQ2hDLHlCQUF5QixFQUFFLFlBQVk7YUFDeEM7U0FDRixDQUFDO1FBR0Ysa0JBQWEsR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO1FBRXhDLHdCQUFtQixHQUFjLFNBQVMsQ0FBQztJQUU1QixDQUFDO0lBR2hCLFFBQVE7UUFDTixJQUFJLENBQUMseUJBQXlCLEVBQUUsQ0FBQztJQUNuQyxDQUFDO0lBR0QsV0FBVyxDQUFDLE9BQXNCOztRQUNoQyxNQUFNLFlBQVksR0FBRyxDQUFDLEdBQVcsRUFBRSxFQUFFO1lBQ25DLE9BQU8sT0FBTyxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxXQUFXLENBQUM7UUFDbEUsQ0FBQyxDQUFDO1FBRUYsSUFBSSxZQUFZLENBQUMsZUFBZSxDQUFDLEVBQUU7WUFDakMsSUFBSSxDQUFDLGFBQWEsR0FBRyxPQUFPLENBQUMsYUFBYSxDQUFDLFlBQVksQ0FBQztZQUN4RCxNQUFBLElBQUksQ0FBQyxtQkFBbUIsMENBQUUsS0FBSyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztTQUNyRDtRQUNELElBQUksWUFBWSxDQUFDLHVCQUF1QixDQUFDLEVBQUU7WUFDekMsSUFDRSxPQUFPLENBQUMscUJBQXFCLENBQUMsYUFBYTtnQkFDM0MsT0FBTyxDQUFDLHFCQUFxQixDQUFDLFlBQVksRUFDMUM7Z0JBQ0EsSUFBSSxDQUFDLHFCQUFxQixHQUFHLE9BQU8sQ0FBQyxxQkFBcUIsQ0FBQyxZQUFZLENBQUM7Z0JBRXhFLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQzthQUNyQjtTQUNGO0lBQ0gsQ0FBQztJQUdELHlCQUF5QjtRQUN2QixJQUFJLENBQUMsbUJBQW1CLEdBQUcsSUFBSSxTQUFTLENBQUM7WUFDdkMsVUFBVSxFQUFFLElBQUksU0FBUyxDQUFDO2dCQUN4QixJQUFJLEVBQUUsSUFBSSxXQUFXLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFO29CQUN4RCxRQUFRLEVBQUUsUUFBUTtpQkFDbkIsQ0FBQzthQUNILENBQUM7U0FDSCxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsbUJBQW1CLENBQUMsc0JBQXNCLEVBQUUsQ0FBQztJQUNwRCxDQUFDO0lBR0QsWUFBWTtRQUNWLElBQUksa0JBQWtCLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDLFdBQVcsRUFBRSxDQUFDO1FBRWhFLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDO1lBQ3RCLGtCQUFrQixFQUFFLGtCQUFrQjtTQUN2QyxDQUFDLENBQUM7SUFDTCxDQUFDOzt1SUFsRVUsc0JBQXNCOzJIQUF0QixzQkFBc0IsK05BMUJ2Qjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0F1QlQ7QUF3QkQ7SUFEQyxTQUFTO3NEQUdUO0FBR0Q7SUFEQyxTQUFTO3lEQW9CVDtBQUdEO0lBREMsU0FBUzt1RUFVVDtBQUdEO0lBREMsU0FBUzswREFPVDs0RkFsRVUsc0JBQXNCO2tCQTVCbEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsMkJBQTJCO29CQUNyQyxRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBdUJUO29CQUNELE1BQU0sRUFBRSxDQUFDLEVBQUUsQ0FBQztpQkFDYjswRUFHQyxxQkFBcUI7c0JBRHBCLEtBQUs7Z0JBSU4sYUFBYTtzQkFEWixLQUFLO2dCQVVOLGFBQWE7c0JBRFosTUFBTTtnQkFRUCxRQUFRLE1BS1IsV0FBVyxNQXNCWCx5QkFBeUIsTUFZekIsWUFBWSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIFNpbXBsZUNoYW5nZXNcbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IEZvcm1Db250cm9sLCBGb3JtR3JvdXAgfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcbmltcG9ydCB7IGxvZ01ldGhvZCB9IGZyb20gXCJrd2lraWQtdG9vbGtpdFwiO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IFwiYmFzaWMtcGhvbmUtY29uZmlnLWVkaXRvclwiLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxmb3JtIFtmb3JtR3JvdXBdPVwiYmFzaWNQaG9uZUZvcm1Hcm91cFwiPlxuICAgICAgPGRpdiBmb3JtR3JvdXBOYW1lPVwicHJvcGVydGllc1wiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cC10aXRsZVwiPlByb3BlcnRpZXM8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tZ3JvdXBcIj5cbiAgICAgICAgICA8a3dpa3VpLWlucHV0XG4gICAgICAgICAgICBbbGFiZWxdPVwiJ01hc2snXCJcbiAgICAgICAgICAgIFtpZF09XCInYmFzaWMtcGhvbmUtY29uZmlnLW1hc2snXCJcbiAgICAgICAgICAgIFt0eXBlXT1cIid0ZXh0J1wiXG4gICAgICAgICAgICBbZm9ybUNvbnRyb2xOYW1lXT1cIidtYXNrJ1wiXG4gICAgICAgICAgICBbZm9ybUNvbnRyb2xdPVwiXG4gICAgICAgICAgICAgIGJhc2ljUGhvbmVGb3JtR3JvdXAuY29udHJvbHMucHJvcGVydGllc1snY29udHJvbHMnXS5tYXNrXG4gICAgICAgICAgICBcIlxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cImZhbHNlXCJcbiAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInUGxlYXNlIGVudGVyIHlvdXIgbWFzaydcIlxuICAgICAgICAgICAgW2ZvY3VzXT1cImZhbHNlXCJcbiAgICAgICAgICAgIFtpbnZhbGlkXT1cImZhbHNlXCJcbiAgICAgICAgICAgIFtjYXNlXT1cIidkZWZhdWx0J1wiXG4gICAgICAgICAgICBzaXplPVwibVwiXG4gICAgICAgICAgPjwva3dpa3VpLWlucHV0PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZm9ybT5cbiAgYCxcbiAgc3R5bGVzOiBbYGBdXG59KVxuZXhwb3J0IGNsYXNzIEJhc2ljUGhvbmVDb25maWdFZGl0b3IgaW1wbGVtZW50cyBPbkluaXQge1xuICBASW5wdXQoKVxuICBzYXZlQmFzaWNDbGlja0NvdW50ZXI6IG51bWJlciA9IDA7XG5cbiAgQElucHV0KClcbiAgZWxlbWVudENvbmZpZzogYW55ID0ge1xuICAgIHByb3BlcnRpZXM6IHtcbiAgICAgIGNvdW50cnlDb2RlOiBcIis5MVwiLFxuICAgICAgcmVtb3ZlQ291bnRyeUNvZGVGcm9tVmFsdWU6IHRydWUsXG4gICAgICBwaG9uZU1hc2tBZnRlckNvdW50cnlDb2RlOiBcIiMjIyMjIyMjIyNcIlxuICAgIH1cbiAgfTtcblxuICBAT3V0cHV0KClcbiAgdXBkYXRlRWxlbWVudCA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuXG4gIGJhc2ljUGhvbmVGb3JtR3JvdXA6IEZvcm1Hcm91cCA9IHVuZGVmaW5lZDtcblxuICBjb25zdHJ1Y3RvcigpIHt9XG5cbiAgQGxvZ01ldGhvZFxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmNyZWF0ZUJhc2ljUGhvbmVGb3JtR3JvdXAoKTtcbiAgfVxuXG4gIEBsb2dNZXRob2RcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgIGNvbnN0IHZlcmlmeUNoYW5nZSA9IChrZXk6IHN0cmluZykgPT4ge1xuICAgICAgcmV0dXJuIGNoYW5nZXMuaGFzT3duUHJvcGVydHkoa2V5KSAmJiAhY2hhbmdlc1trZXldLmZpcnN0Q2hhbmdlO1xuICAgIH07XG5cbiAgICBpZiAodmVyaWZ5Q2hhbmdlKFwiZWxlbWVudENvbmZpZ1wiKSkge1xuICAgICAgdGhpcy5lbGVtZW50Q29uZmlnID0gY2hhbmdlcy5lbGVtZW50Q29uZmlnLmN1cnJlbnRWYWx1ZTtcbiAgICAgIHRoaXMuYmFzaWNQaG9uZUZvcm1Hcm91cD8ucmVzZXQodGhpcy5lbGVtZW50Q29uZmlnKTtcbiAgICB9XG4gICAgaWYgKHZlcmlmeUNoYW5nZShcInNhdmVCYXNpY0NsaWNrQ291bnRlclwiKSkge1xuICAgICAgaWYgKFxuICAgICAgICBjaGFuZ2VzLnNhdmVCYXNpY0NsaWNrQ291bnRlci5wcmV2aW91c1ZhbHVlICE9PVxuICAgICAgICBjaGFuZ2VzLnNhdmVCYXNpY0NsaWNrQ291bnRlci5jdXJyZW50VmFsdWVcbiAgICAgICkge1xuICAgICAgICB0aGlzLnNhdmVCYXNpY0NsaWNrQ291bnRlciA9IGNoYW5nZXMuc2F2ZUJhc2ljQ2xpY2tDb3VudGVyLmN1cnJlbnRWYWx1ZTtcblxuICAgICAgICB0aGlzLmhhbmRsZU9uU2F2ZSgpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBsb2dNZXRob2RcbiAgY3JlYXRlQmFzaWNQaG9uZUZvcm1Hcm91cCgpOiB2b2lkIHtcbiAgICB0aGlzLmJhc2ljUGhvbmVGb3JtR3JvdXAgPSBuZXcgRm9ybUdyb3VwKHtcbiAgICAgIHByb3BlcnRpZXM6IG5ldyBGb3JtR3JvdXAoe1xuICAgICAgICBtYXNrOiBuZXcgRm9ybUNvbnRyb2wodGhpcy5lbGVtZW50Q29uZmlnLnByb3BlcnRpZXMubWFzaywge1xuICAgICAgICAgIHVwZGF0ZU9uOiBcImNoYW5nZVwiXG4gICAgICAgIH0pXG4gICAgICB9KVxuICAgIH0pO1xuICAgIHRoaXMuYmFzaWNQaG9uZUZvcm1Hcm91cC51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XG4gIH1cblxuICBAbG9nTWV0aG9kXG4gIGhhbmRsZU9uU2F2ZSgpIHtcbiAgICBsZXQgYmFzaWNFbGVtZW50Q29uZmlnID0gdGhpcy5iYXNpY1Bob25lRm9ybUdyb3VwLmdldFJhd1ZhbHVlKCk7XG5cbiAgICB0aGlzLnVwZGF0ZUVsZW1lbnQuZW1pdCh7XG4gICAgICBiYXNpY0VsZW1lbnRDb25maWc6IGJhc2ljRWxlbWVudENvbmZpZ1xuICAgIH0pO1xuICB9XG59XG4iXX0=
|
package/esm2015/lib/builder/element-config-editor/editors/basic/radio-config.editor.component.js
DELETED
|
@@ -1,396 +0,0 @@
|
|
|
1
|
-
import { __decorate } from "tslib";
|
|
2
|
-
import { Component, EventEmitter, Input, Output } from "@angular/core";
|
|
3
|
-
import { FormArray, FormControl, FormGroup } from "@angular/forms";
|
|
4
|
-
import { logMethod, setMissingKeyValue } from "kwikid-toolkit";
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
import * as i1 from "kwikui";
|
|
7
|
-
import * as i2 from "@angular/forms";
|
|
8
|
-
import * as i3 from "@angular/common";
|
|
9
|
-
export class BasicRadioConfigEditor {
|
|
10
|
-
constructor() {
|
|
11
|
-
this.optionType = {
|
|
12
|
-
label: "",
|
|
13
|
-
disabled: false,
|
|
14
|
-
description: ""
|
|
15
|
-
};
|
|
16
|
-
this.saveBasicClickCounter = 0;
|
|
17
|
-
this.elementConfig = {
|
|
18
|
-
properties: {
|
|
19
|
-
orientation: "horizontal"
|
|
20
|
-
},
|
|
21
|
-
options: []
|
|
22
|
-
};
|
|
23
|
-
this.updateElement = new EventEmitter();
|
|
24
|
-
this.basicRadioFormGroup = undefined;
|
|
25
|
-
}
|
|
26
|
-
ngOnInit() {
|
|
27
|
-
this.createBasicRadioFormGroup();
|
|
28
|
-
}
|
|
29
|
-
ngOnChanges(changes) {
|
|
30
|
-
var _a;
|
|
31
|
-
const verifyChange = (key) => {
|
|
32
|
-
return changes.hasOwnProperty(key) && !changes[key].firstChange;
|
|
33
|
-
};
|
|
34
|
-
if (verifyChange("elementConfig")) {
|
|
35
|
-
this.elementConfig = changes.elementConfig.currentValue;
|
|
36
|
-
(_a = this.basicRadioFormGroup) === null || _a === void 0 ? void 0 : _a.reset(this.elementConfig);
|
|
37
|
-
}
|
|
38
|
-
if (verifyChange("saveBasicClickCounter")) {
|
|
39
|
-
if (changes.saveBasicClickCounter.previousValue !==
|
|
40
|
-
changes.saveBasicClickCounter.currentValue) {
|
|
41
|
-
this.saveBasicClickCounter = changes.saveBasicClickCounter.currentValue;
|
|
42
|
-
this.handleOnSave();
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
createBasicRadioFormGroup() {
|
|
47
|
-
let optionsFormArray = [];
|
|
48
|
-
this.elementConfig = setMissingKeyValue(this.elementConfig, "options", [
|
|
49
|
-
this.optionType
|
|
50
|
-
]);
|
|
51
|
-
for (let option of this.elementConfig.options) {
|
|
52
|
-
optionsFormArray.push(this.createOptionConfigFormGroup(option));
|
|
53
|
-
}
|
|
54
|
-
this.basicRadioFormGroup = new FormGroup({
|
|
55
|
-
properties: new FormGroup({
|
|
56
|
-
orientation: new FormControl(this.elementConfig.properties.orientation, {
|
|
57
|
-
updateOn: "change"
|
|
58
|
-
})
|
|
59
|
-
}),
|
|
60
|
-
options: new FormArray(optionsFormArray)
|
|
61
|
-
});
|
|
62
|
-
this.basicRadioFormGroup.updateValueAndValidity();
|
|
63
|
-
}
|
|
64
|
-
handleOnSave() {
|
|
65
|
-
let basicElementConfig = this.basicRadioFormGroup.getRawValue();
|
|
66
|
-
this.updateElement.emit({
|
|
67
|
-
basicElementConfig: basicElementConfig
|
|
68
|
-
});
|
|
69
|
-
}
|
|
70
|
-
get optionsArray() {
|
|
71
|
-
return this.basicRadioFormGroup.get("options");
|
|
72
|
-
}
|
|
73
|
-
createOptionConfigFormGroup(optionConfig) {
|
|
74
|
-
const optionFormGroup = new FormGroup({
|
|
75
|
-
label: new FormControl(optionConfig.label, {
|
|
76
|
-
updateOn: "change"
|
|
77
|
-
}),
|
|
78
|
-
disabled: new FormControl(optionConfig.disabled, {
|
|
79
|
-
updateOn: "change"
|
|
80
|
-
}),
|
|
81
|
-
description: new FormControl(optionConfig.description, {
|
|
82
|
-
updateOn: "change"
|
|
83
|
-
})
|
|
84
|
-
});
|
|
85
|
-
return optionFormGroup;
|
|
86
|
-
}
|
|
87
|
-
addOption() {
|
|
88
|
-
const options = this.basicRadioFormGroup.get("options");
|
|
89
|
-
options.push(this.createOptionConfigFormGroup(this.optionType));
|
|
90
|
-
}
|
|
91
|
-
removeOption(optionIndex) {
|
|
92
|
-
const options = this.basicRadioFormGroup.get("options");
|
|
93
|
-
if (options.length > 1) {
|
|
94
|
-
options.removeAt(optionIndex);
|
|
95
|
-
}
|
|
96
|
-
else {
|
|
97
|
-
this.addOption();
|
|
98
|
-
// options.reset();
|
|
99
|
-
}
|
|
100
|
-
}
|
|
101
|
-
}
|
|
102
|
-
/** @nocollapse */ BasicRadioConfigEditor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: BasicRadioConfigEditor, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
103
|
-
/** @nocollapse */ BasicRadioConfigEditor.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: BasicRadioConfigEditor, selector: "basic-radio-config-editor", inputs: { saveBasicClickCounter: "saveBasicClickCounter", elementConfig: "elementConfig" }, outputs: { updateElement: "updateElement" }, usesOnChanges: true, ngImport: i0, template: `
|
|
104
|
-
<form [formGroup]="basicRadioFormGroup">
|
|
105
|
-
<fieldset>
|
|
106
|
-
<legend class="form-group-title">Options</legend>
|
|
107
|
-
<div formArrayName="options">
|
|
108
|
-
<ng-container
|
|
109
|
-
*ngFor="let option of optionsArray.controls; let i = index"
|
|
110
|
-
>
|
|
111
|
-
<div [formGroupName]="i">
|
|
112
|
-
<div class="form-group">
|
|
113
|
-
<kwikui-input
|
|
114
|
-
[label]="'Label'"
|
|
115
|
-
[id]="'basic-radio-config-placeholder'"
|
|
116
|
-
[type]="'text'"
|
|
117
|
-
[formControlName]="'label'"
|
|
118
|
-
[formControl]="
|
|
119
|
-
basicRadioFormGroup['controls'].options['controls'][i][
|
|
120
|
-
'controls'
|
|
121
|
-
].label
|
|
122
|
-
"
|
|
123
|
-
[disabled]="false"
|
|
124
|
-
[placeholder]="'Please enter your label'"
|
|
125
|
-
[focus]="false"
|
|
126
|
-
[invalid]="false"
|
|
127
|
-
[case]="'default'"
|
|
128
|
-
size="m"
|
|
129
|
-
></kwikui-input>
|
|
130
|
-
</div>
|
|
131
|
-
<div class="form-group">
|
|
132
|
-
<kwikui-select-combobox
|
|
133
|
-
[options]="[true, false]"
|
|
134
|
-
[label]="'disabled'"
|
|
135
|
-
[id]="'basic-radio-config-disabled'"
|
|
136
|
-
size="m"
|
|
137
|
-
[formControlName]="'disabled'"
|
|
138
|
-
[formControl]="
|
|
139
|
-
basicRadioFormGroup['controls'].options['controls'][i][
|
|
140
|
-
'controls'
|
|
141
|
-
].disabled
|
|
142
|
-
"
|
|
143
|
-
[focus]="false"
|
|
144
|
-
[disabled]="false"
|
|
145
|
-
[invalid]="false"
|
|
146
|
-
[placeholder]="'Please select either true or false'"
|
|
147
|
-
></kwikui-select-combobox>
|
|
148
|
-
</div>
|
|
149
|
-
<div class="form-group">
|
|
150
|
-
<kwikui-input
|
|
151
|
-
[label]="'Description'"
|
|
152
|
-
[id]="'basic-radio-config-description'"
|
|
153
|
-
[type]="'text'"
|
|
154
|
-
[formControlName]="'description'"
|
|
155
|
-
[formControl]="
|
|
156
|
-
basicRadioFormGroup['controls'].options['controls'][i][
|
|
157
|
-
'controls'
|
|
158
|
-
].description
|
|
159
|
-
"
|
|
160
|
-
[disabled]="false"
|
|
161
|
-
[placeholder]="'Please enter your description'"
|
|
162
|
-
[focus]="false"
|
|
163
|
-
[invalid]="false"
|
|
164
|
-
[case]="'default'"
|
|
165
|
-
size="m"
|
|
166
|
-
></kwikui-input>
|
|
167
|
-
</div>
|
|
168
|
-
<div class="form-array-actions">
|
|
169
|
-
<kwikui-button
|
|
170
|
-
[disabled]="false"
|
|
171
|
-
label="Remove"
|
|
172
|
-
[showLoader]="false"
|
|
173
|
-
styles=""
|
|
174
|
-
class="save-button"
|
|
175
|
-
type="button"
|
|
176
|
-
appearance="secondary"
|
|
177
|
-
icon=""
|
|
178
|
-
iconRight=""
|
|
179
|
-
[shape]="'rounded'"
|
|
180
|
-
size="s"
|
|
181
|
-
(onClick)="removeOption(i)"
|
|
182
|
-
></kwikui-button>
|
|
183
|
-
<kwikui-button
|
|
184
|
-
[disabled]="false"
|
|
185
|
-
label="Add"
|
|
186
|
-
[showLoader]="false"
|
|
187
|
-
styles=""
|
|
188
|
-
class="save-button"
|
|
189
|
-
type="button"
|
|
190
|
-
appearance="secondary"
|
|
191
|
-
icon=""
|
|
192
|
-
iconRight=""
|
|
193
|
-
[shape]="'rounded'"
|
|
194
|
-
size="s"
|
|
195
|
-
(onClick)="addOption()"
|
|
196
|
-
></kwikui-button>
|
|
197
|
-
</div>
|
|
198
|
-
</div>
|
|
199
|
-
</ng-container>
|
|
200
|
-
</div>
|
|
201
|
-
</fieldset>
|
|
202
|
-
|
|
203
|
-
<div formGroupName="properties">
|
|
204
|
-
<fieldset>
|
|
205
|
-
<legend class="form-group-title">Miscellaneous</legend>
|
|
206
|
-
<div class="form-group">
|
|
207
|
-
<kwikui-select-combobox
|
|
208
|
-
[options]="['horizontal', 'vertical']"
|
|
209
|
-
[label]="'Orientation'"
|
|
210
|
-
[id]="'basic-radio-config-orientation'"
|
|
211
|
-
size="m"
|
|
212
|
-
[formControlName]="'orientation'"
|
|
213
|
-
[formControl]="
|
|
214
|
-
basicRadioFormGroup['controls'].properties['controls']
|
|
215
|
-
.orientation
|
|
216
|
-
"
|
|
217
|
-
[focus]="false"
|
|
218
|
-
[disabled]="false"
|
|
219
|
-
[invalid]="false"
|
|
220
|
-
[placeholder]="'Please select orientation'"
|
|
221
|
-
></kwikui-select-combobox>
|
|
222
|
-
</div>
|
|
223
|
-
</fieldset>
|
|
224
|
-
</div>
|
|
225
|
-
</form>
|
|
226
|
-
`, isInline: true, styles: ["\n .form-array-actions {\n display: flex;\n flex-direction: row;\n align-content: center;\n justify-content: center;\n align-items: center;\n gap: 1rem;\n }\n "], components: [{ type: i1.KwikUIInputComponent, selector: "kwikui-input", inputs: ["label", "id", "type", "formControlName", "formControl", "placeholder", "focus", "invalid", "disabled", "validators", "case", "size", "icon", "properties"], outputs: ["getKeyValue"] }, { type: i1.KwikUISelectComboboxComponent, selector: "kwikui-select-combobox", inputs: ["label", "id", "formControlName", "formControl", "placeholder", "focus", "invalid", "disabled", "options", "size", "validators", "properties"], outputs: ["getKeyValue"] }, { type: i1.KwikUIButtonComponent, selector: "kwikui-button", inputs: ["disabled", "id", "label", "showLoader", "styles", "class", "type", "appearance", "icon", "iconRight", "shape", "size"], outputs: ["onClick"] }], directives: [{ type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i2.FormArrayName, selector: "[formArrayName]", inputs: ["formArrayName"] }, { type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2.FormGroupName, selector: "[formGroupName]", inputs: ["formGroupName"] }, { type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i2.FormControlName, selector: "[formControlName]", inputs: ["disabled", "formControlName", "ngModel"], outputs: ["ngModelChange"] }, { type: i2.FormControlDirective, selector: "[formControl]", inputs: ["disabled", "formControl", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }] });
|
|
227
|
-
__decorate([
|
|
228
|
-
logMethod
|
|
229
|
-
], BasicRadioConfigEditor.prototype, "ngOnInit", null);
|
|
230
|
-
__decorate([
|
|
231
|
-
logMethod
|
|
232
|
-
], BasicRadioConfigEditor.prototype, "ngOnChanges", null);
|
|
233
|
-
__decorate([
|
|
234
|
-
logMethod
|
|
235
|
-
], BasicRadioConfigEditor.prototype, "createBasicRadioFormGroup", null);
|
|
236
|
-
__decorate([
|
|
237
|
-
logMethod
|
|
238
|
-
], BasicRadioConfigEditor.prototype, "handleOnSave", null);
|
|
239
|
-
__decorate([
|
|
240
|
-
logMethod
|
|
241
|
-
], BasicRadioConfigEditor.prototype, "createOptionConfigFormGroup", null);
|
|
242
|
-
__decorate([
|
|
243
|
-
logMethod
|
|
244
|
-
], BasicRadioConfigEditor.prototype, "addOption", null);
|
|
245
|
-
__decorate([
|
|
246
|
-
logMethod
|
|
247
|
-
], BasicRadioConfigEditor.prototype, "removeOption", null);
|
|
248
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: BasicRadioConfigEditor, decorators: [{
|
|
249
|
-
type: Component,
|
|
250
|
-
args: [{
|
|
251
|
-
selector: "basic-radio-config-editor",
|
|
252
|
-
template: `
|
|
253
|
-
<form [formGroup]="basicRadioFormGroup">
|
|
254
|
-
<fieldset>
|
|
255
|
-
<legend class="form-group-title">Options</legend>
|
|
256
|
-
<div formArrayName="options">
|
|
257
|
-
<ng-container
|
|
258
|
-
*ngFor="let option of optionsArray.controls; let i = index"
|
|
259
|
-
>
|
|
260
|
-
<div [formGroupName]="i">
|
|
261
|
-
<div class="form-group">
|
|
262
|
-
<kwikui-input
|
|
263
|
-
[label]="'Label'"
|
|
264
|
-
[id]="'basic-radio-config-placeholder'"
|
|
265
|
-
[type]="'text'"
|
|
266
|
-
[formControlName]="'label'"
|
|
267
|
-
[formControl]="
|
|
268
|
-
basicRadioFormGroup['controls'].options['controls'][i][
|
|
269
|
-
'controls'
|
|
270
|
-
].label
|
|
271
|
-
"
|
|
272
|
-
[disabled]="false"
|
|
273
|
-
[placeholder]="'Please enter your label'"
|
|
274
|
-
[focus]="false"
|
|
275
|
-
[invalid]="false"
|
|
276
|
-
[case]="'default'"
|
|
277
|
-
size="m"
|
|
278
|
-
></kwikui-input>
|
|
279
|
-
</div>
|
|
280
|
-
<div class="form-group">
|
|
281
|
-
<kwikui-select-combobox
|
|
282
|
-
[options]="[true, false]"
|
|
283
|
-
[label]="'disabled'"
|
|
284
|
-
[id]="'basic-radio-config-disabled'"
|
|
285
|
-
size="m"
|
|
286
|
-
[formControlName]="'disabled'"
|
|
287
|
-
[formControl]="
|
|
288
|
-
basicRadioFormGroup['controls'].options['controls'][i][
|
|
289
|
-
'controls'
|
|
290
|
-
].disabled
|
|
291
|
-
"
|
|
292
|
-
[focus]="false"
|
|
293
|
-
[disabled]="false"
|
|
294
|
-
[invalid]="false"
|
|
295
|
-
[placeholder]="'Please select either true or false'"
|
|
296
|
-
></kwikui-select-combobox>
|
|
297
|
-
</div>
|
|
298
|
-
<div class="form-group">
|
|
299
|
-
<kwikui-input
|
|
300
|
-
[label]="'Description'"
|
|
301
|
-
[id]="'basic-radio-config-description'"
|
|
302
|
-
[type]="'text'"
|
|
303
|
-
[formControlName]="'description'"
|
|
304
|
-
[formControl]="
|
|
305
|
-
basicRadioFormGroup['controls'].options['controls'][i][
|
|
306
|
-
'controls'
|
|
307
|
-
].description
|
|
308
|
-
"
|
|
309
|
-
[disabled]="false"
|
|
310
|
-
[placeholder]="'Please enter your description'"
|
|
311
|
-
[focus]="false"
|
|
312
|
-
[invalid]="false"
|
|
313
|
-
[case]="'default'"
|
|
314
|
-
size="m"
|
|
315
|
-
></kwikui-input>
|
|
316
|
-
</div>
|
|
317
|
-
<div class="form-array-actions">
|
|
318
|
-
<kwikui-button
|
|
319
|
-
[disabled]="false"
|
|
320
|
-
label="Remove"
|
|
321
|
-
[showLoader]="false"
|
|
322
|
-
styles=""
|
|
323
|
-
class="save-button"
|
|
324
|
-
type="button"
|
|
325
|
-
appearance="secondary"
|
|
326
|
-
icon=""
|
|
327
|
-
iconRight=""
|
|
328
|
-
[shape]="'rounded'"
|
|
329
|
-
size="s"
|
|
330
|
-
(onClick)="removeOption(i)"
|
|
331
|
-
></kwikui-button>
|
|
332
|
-
<kwikui-button
|
|
333
|
-
[disabled]="false"
|
|
334
|
-
label="Add"
|
|
335
|
-
[showLoader]="false"
|
|
336
|
-
styles=""
|
|
337
|
-
class="save-button"
|
|
338
|
-
type="button"
|
|
339
|
-
appearance="secondary"
|
|
340
|
-
icon=""
|
|
341
|
-
iconRight=""
|
|
342
|
-
[shape]="'rounded'"
|
|
343
|
-
size="s"
|
|
344
|
-
(onClick)="addOption()"
|
|
345
|
-
></kwikui-button>
|
|
346
|
-
</div>
|
|
347
|
-
</div>
|
|
348
|
-
</ng-container>
|
|
349
|
-
</div>
|
|
350
|
-
</fieldset>
|
|
351
|
-
|
|
352
|
-
<div formGroupName="properties">
|
|
353
|
-
<fieldset>
|
|
354
|
-
<legend class="form-group-title">Miscellaneous</legend>
|
|
355
|
-
<div class="form-group">
|
|
356
|
-
<kwikui-select-combobox
|
|
357
|
-
[options]="['horizontal', 'vertical']"
|
|
358
|
-
[label]="'Orientation'"
|
|
359
|
-
[id]="'basic-radio-config-orientation'"
|
|
360
|
-
size="m"
|
|
361
|
-
[formControlName]="'orientation'"
|
|
362
|
-
[formControl]="
|
|
363
|
-
basicRadioFormGroup['controls'].properties['controls']
|
|
364
|
-
.orientation
|
|
365
|
-
"
|
|
366
|
-
[focus]="false"
|
|
367
|
-
[disabled]="false"
|
|
368
|
-
[invalid]="false"
|
|
369
|
-
[placeholder]="'Please select orientation'"
|
|
370
|
-
></kwikui-select-combobox>
|
|
371
|
-
</div>
|
|
372
|
-
</fieldset>
|
|
373
|
-
</div>
|
|
374
|
-
</form>
|
|
375
|
-
`,
|
|
376
|
-
styles: [
|
|
377
|
-
`
|
|
378
|
-
.form-array-actions {
|
|
379
|
-
display: flex;
|
|
380
|
-
flex-direction: row;
|
|
381
|
-
align-content: center;
|
|
382
|
-
justify-content: center;
|
|
383
|
-
align-items: center;
|
|
384
|
-
gap: 1rem;
|
|
385
|
-
}
|
|
386
|
-
`
|
|
387
|
-
]
|
|
388
|
-
}]
|
|
389
|
-
}], ctorParameters: function () { return []; }, propDecorators: { saveBasicClickCounter: [{
|
|
390
|
-
type: Input
|
|
391
|
-
}], elementConfig: [{
|
|
392
|
-
type: Input
|
|
393
|
-
}], updateElement: [{
|
|
394
|
-
type: Output
|
|
395
|
-
}], ngOnInit: [], ngOnChanges: [], createBasicRadioFormGroup: [], handleOnSave: [], createOptionConfigFormGroup: [], addOption: [], removeOption: [] } });
|
|
396
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8tY29uZmlnLmVkaXRvci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rd2lraWQtZm9ybXMvc3JjL2xpYi9idWlsZGVyL2VsZW1lbnQtY29uZmlnLWVkaXRvci9lZGl0b3JzL2Jhc2ljL3JhZGlvLWNvbmZpZy5lZGl0b3IuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBRUwsTUFBTSxFQUVQLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ25FLE9BQU8sRUFBRSxTQUFTLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7QUE2SS9ELE1BQU0sT0FBTyxzQkFBc0I7SUF1QmpDO1FBdEJTLGVBQVUsR0FBRztZQUNwQixLQUFLLEVBQUUsRUFBRTtZQUNULFFBQVEsRUFBRSxLQUFLO1lBQ2YsV0FBVyxFQUFFLEVBQUU7U0FDaEIsQ0FBQztRQUdGLDBCQUFxQixHQUFXLENBQUMsQ0FBQztRQUdsQyxrQkFBYSxHQUFRO1lBQ25CLFVBQVUsRUFBRTtnQkFDVixXQUFXLEVBQUUsWUFBWTthQUMxQjtZQUNELE9BQU8sRUFBRSxFQUFFO1NBQ1osQ0FBQztRQUdGLGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUV4Qyx3QkFBbUIsR0FBYyxTQUFTLENBQUM7SUFFNUIsQ0FBQztJQUdoQixRQUFRO1FBQ04sSUFBSSxDQUFDLHlCQUF5QixFQUFFLENBQUM7SUFDbkMsQ0FBQztJQUdELFdBQVcsQ0FBQyxPQUFzQjs7UUFDaEMsTUFBTSxZQUFZLEdBQUcsQ0FBQyxHQUFXLEVBQUUsRUFBRTtZQUNuQyxPQUFPLE9BQU8sQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFD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eUJBQXlCLE1BMEJ6QixZQUFZLE1BYVosMkJBQTJCLE1BZ0IzQixTQUFTLE1BTVQsWUFBWSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIFNpbXBsZUNoYW5nZXNcbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IEZvcm1BcnJheSwgRm9ybUNvbnRyb2wsIEZvcm1Hcm91cCB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xuaW1wb3J0IHsgbG9nTWV0aG9kLCBzZXRNaXNzaW5nS2V5VmFsdWUgfSBmcm9tIFwia3dpa2lkLXRvb2xraXRcIjtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiBcImJhc2ljLXJhZGlvLWNvbmZpZy1lZGl0b3JcIixcbiAgdGVtcGxhdGU6IGBcbiAgICA8Zm9ybSBbZm9ybUdyb3VwXT1cImJhc2ljUmFkaW9Gb3JtR3JvdXBcIj5cbiAgICAgIDxmaWVsZHNldD5cbiAgICAgICAgPGxlZ2VuZCBjbGFzcz1cImZvcm0tZ3JvdXAtdGl0bGVcIj5PcHRpb25zPC9sZWdlbmQ+XG4gICAgICAgIDxkaXYgZm9ybUFycmF5TmFtZT1cIm9wdGlvbnNcIj5cbiAgICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAqbmdGb3I9XCJsZXQgb3B0aW9uIG9mIG9wdGlvbnNBcnJheS5jb250cm9sczsgbGV0IGkgPSBpbmRleFwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPGRpdiBbZm9ybUdyb3VwTmFtZV09XCJpXCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwXCI+XG4gICAgICAgICAgICAgICAgPGt3aWt1aS1pbnB1dFxuICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cIidMYWJlbCdcIlxuICAgICAgICAgICAgICAgICAgW2lkXT1cIidiYXNpYy1yYWRpby1jb25maWctcGxhY2Vob2xkZXInXCJcbiAgICAgICAgICAgICAgICAgIFt0eXBlXT1cIid0ZXh0J1wiXG4gICAgICAgICAgICAgICAgICBbZm9ybUNvbnRyb2xOYW1lXT1cIidsYWJlbCdcIlxuICAgICAgICAgICAgICAgICAgW2Zvcm1Db250cm9sXT1cIlxuICAgICAgICAgICAgICAgICAgICBiYXNpY1JhZGlvRm9ybUdyb3VwWydjb250cm9scyddLm9wdGlvbnNbJ2NvbnRyb2xzJ11baV1bXG4gICAgICAgICAgICAgICAgICAgICAgJ2NvbnRyb2xzJ1xuICAgICAgICAgICAgICAgICAgICBdLmxhYmVsXG4gICAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cImZhbHNlXCJcbiAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInUGxlYXNlIGVudGVyIHlvdXIgbGFiZWwnXCJcbiAgICAgICAgICAgICAgICAgIFtmb2N1c109XCJmYWxzZVwiXG4gICAgICAgICAgICAgICAgICBbaW52YWxpZF09XCJmYWxzZVwiXG4gICAgICAgICAgICAgICAgICBbY2FzZV09XCInZGVmYXVsdCdcIlxuICAgICAgICAgICAgICAgICAgc2l6ZT1cIm1cIlxuICAgICAgICAgICAgICAgID48L2t3aWt1aS1pbnB1dD5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwXCI+XG4gICAgICAgICAgICAgICAgPGt3aWt1aS1zZWxlY3QtY29tYm9ib3hcbiAgICAgICAgICAgICAgICAgIFtvcHRpb25zXT1cIlt0cnVlLCBmYWxzZV1cIlxuICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cIidkaXNhYmxlZCdcIlxuICAgICAgICAgICAgICAgICAgW2lkXT1cIidiYXNpYy1yYWRpby1jb25maWctZGlzYWJsZWQnXCJcbiAgICAgICAgICAgICAgICAgIHNpemU9XCJtXCJcbiAgICAgICAgICAgICAgICAgIFtmb3JtQ29udHJvbE5hbWVdPVwiJ2Rpc2FibGVkJ1wiXG4gICAgICAgICAgICAgICAgICBbZm9ybUNvbnRyb2xdPVwiXG4gICAgICAgICAgICAgICAgICAgIGJhc2ljUmFkaW9Gb3JtR3JvdXBbJ2NvbnRyb2xzJ10ub3B0aW9uc1snY29udHJvbHMnXVtpXVtcbiAgICAgICAgICAgICAgICAgICAgICAnY29udHJvbHMnXG4gICAgICAgICAgICAgICAgICAgIF0uZGlzYWJsZWRcbiAgICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICAgICBbZm9jdXNdPVwiZmFsc2VcIlxuICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cImZhbHNlXCJcbiAgICAgICAgICAgICAgICAgIFtpbnZhbGlkXT1cImZhbHNlXCJcbiAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInUGxlYXNlIHNlbGVjdCBlaXRoZXIgdHJ1ZSBvciBmYWxzZSdcIlxuICAgICAgICAgICAgICAgID48L2t3aWt1aS1zZWxlY3QtY29tYm9ib3g+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cFwiPlxuICAgICAgICAgICAgICAgIDxrd2lrdWktaW5wdXRcbiAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCInRGVzY3JpcHRpb24nXCJcbiAgICAgICAgICAgICAgICAgIFtpZF09XCInYmFzaWMtcmFkaW8tY29uZmlnLWRlc2NyaXB0aW9uJ1wiXG4gICAgICAgICAgICAgICAgICBbdHlwZV09XCIndGV4dCdcIlxuICAgICAgICAgICAgICAgICAgW2Zvcm1Db250cm9sTmFtZV09XCInZGVzY3JpcHRpb24nXCJcbiAgICAgICAgICAgICAgICAgIFtmb3JtQ29udHJvbF09XCJcbiAgICAgICAgICAgICAgICAgICAgYmFzaWNSYWRpb0Zvcm1Hcm91cFsnY29udHJvbHMnXS5vcHRpb25zWydjb250cm9scyddW2ldW1xuICAgICAgICAgICAgICAgICAgICAgICdjb250cm9scydcbiAgICAgICAgICAgICAgICAgICAgXS5kZXNjcmlwdGlvblxuICAgICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJmYWxzZVwiXG4gICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ1BsZWFzZSBlbnRlciB5b3VyIGRlc2NyaXB0aW9uJ1wiXG4gICAgICAgICAgICAgICAgICBbZm9jdXNdPVwiZmFsc2VcIlxuICAgICAgICAgICAgICAgICAgW2ludmFsaWRdPVwiZmFsc2VcIlxuICAgICAgICAgICAgICAgICAgW2Nhc2VdPVwiJ2RlZmF1bHQnXCJcbiAgICAgICAgICAgICAgICAgIHNpemU9XCJtXCJcbiAgICAgICAgICAgICAgICA+PC9rd2lrdWktaW5wdXQ+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1hcnJheS1hY3Rpb25zXCI+XG4gICAgICAgICAgICAgICAgPGt3aWt1aS1idXR0b25cbiAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJmYWxzZVwiXG4gICAgICAgICAgICAgICAgICBsYWJlbD1cIlJlbW92ZVwiXG4gICAgICAgICAgICAgICAgICBbc2hvd0xvYWRlcl09XCJmYWxzZVwiXG4gICAgICAgICAgICAgICAgICBzdHlsZXM9XCJcIlxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJzYXZlLWJ1dHRvblwiXG4gICAgICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgICAgIGFwcGVhcmFuY2U9XCJzZWNvbmRhcnlcIlxuICAgICAgICAgICAgICAgICAgaWNvbj1cIlwiXG4gICAgICAgICAgICAgICAgICBpY29uUmlnaHQ9XCJcIlxuICAgICAgICAgICAgICAgICAgW3NoYXBlXT1cIidyb3VuZGVkJ1wiXG4gICAgICAgICAgICAgICAgICBzaXplPVwic1wiXG4gICAgICAgICAgICAgICAgICAob25DbGljayk9XCJyZW1vdmVPcHRpb24oaSlcIlxuICAgICAgICAgICAgICAgID48L2t3aWt1aS1idXR0b24+XG4gICAgICAgICAgICAgICAgPGt3aWt1aS1idXR0b25cbiAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJmYWxzZVwiXG4gICAgICAgICAgICAgICAgICBsYWJlbD1cIkFkZFwiXG4gICAgICAgICAgICAgICAgICBbc2hvd0xvYWRlcl09XCJmYWxzZVwiXG4gICAgICAgICAgICAgICAgICBzdHlsZXM9XCJcIlxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJzYXZlLWJ1dHRvblwiXG4gICAgICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgICAgIGFwcGVhcmFuY2U9XCJzZWNvbmRhcnlcIlxuICAgICAgICAgICAgICAgICAgaWNvbj1cIlwiXG4gICAgICAgICAgICAgICAgICBpY29uUmlnaHQ9XCJcIlxuICAgICAgICAgICAgICAgICAgW3NoYXBlXT1cIidyb3VuZGVkJ1wiXG4gICAgICAgICAgICAgICAgICBzaXplPVwic1wiXG4gICAgICAgICAgICAgICAgICAob25DbGljayk9XCJhZGRPcHRpb24oKVwiXG4gICAgICAgICAgICAgICAgPjwva3dpa3VpLWJ1dHRvbj5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2ZpZWxkc2V0PlxuXG4gICAgICA8ZGl2IGZvcm1Hcm91cE5hbWU9XCJwcm9wZXJ0aWVzXCI+XG4gICAgICAgIDxmaWVsZHNldD5cbiAgICAgICAgICA8bGVnZW5kIGNsYXNzPVwiZm9ybS1ncm91cC10aXRsZVwiPk1pc2NlbGxhbmVvdXM8L2xlZ2VuZD5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cFwiPlxuICAgICAgICAgICAgPGt3aWt1aS1zZWxlY3QtY29tYm9ib3hcbiAgICAgICAgICAgICAgW29wdGlvbnNdPVwiWydob3Jpem9udGFsJywgJ3ZlcnRpY2FsJ11cIlxuICAgICAgICAgICAgICBbbGFiZWxdPVwiJ09yaWVudGF0aW9uJ1wiXG4gICAgICAgICAgICAgIFtpZF09XCInYmFzaWMtcmFkaW8tY29uZmlnLW9yaWVudGF0aW9uJ1wiXG4gICAgICAgICAgICAgIHNpemU9XCJtXCJcbiAgICAgICAgICAgICAgW2Zvcm1Db250cm9sTmFtZV09XCInb3JpZW50YXRpb24nXCJcbiAgICAgICAgICAgICAgW2Zvcm1Db250cm9sXT1cIlxuICAgICAgICAgICAgICAgIGJhc2ljUmFkaW9Gb3JtR3JvdXBbJ2NvbnRyb2xzJ10ucHJvcGVydGllc1snY29udHJvbHMnXVxuICAgICAgICAgICAgICAgICAgLm9yaWVudGF0aW9uXG4gICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgIFtmb2N1c109XCJmYWxzZVwiXG4gICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJmYWxzZVwiXG4gICAgICAgICAgICAgIFtpbnZhbGlkXT1cImZhbHNlXCJcbiAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidQbGVhc2Ugc2VsZWN0IG9yaWVudGF0aW9uJ1wiXG4gICAgICAgICAgICA+PC9rd2lrdWktc2VsZWN0LWNvbWJvYm94PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2ZpZWxkc2V0PlxuICAgICAgPC9kaXY+XG4gICAgPC9mb3JtPlxuICBgLFxuICBzdHlsZXM6IFtcbiAgICBgXG4gICAgICAuZm9ybS1hcnJheS1hY3Rpb25zIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgYWxpZ24tY29udGVudDogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZ2FwOiAxcmVtO1xuICAgICAgfVxuICAgIGBcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBCYXNpY1JhZGlvQ29uZmlnRWRpdG9yIGltcGxlbWVudHMgT25Jbml0IHtcbiAgcmVhZG9ubHkgb3B0aW9uVHlwZSA9IHtcbiAgICBsYWJlbDogXCJcIixcbiAgICBkaXNhYmxlZDogZmFsc2UsXG4gICAgZGVzY3JpcHRpb246IFwiXCJcbiAgfTtcblxuICBASW5wdXQoKVxuICBzYXZlQmFzaWNDbGlja0NvdW50ZXI6IG51bWJlciA9IDA7XG5cbiAgQElucHV0KClcbiAgZWxlbWVudENvbmZpZzogYW55ID0ge1xuICAgIHByb3BlcnRpZXM6IHtcbiAgICAgIG9yaWVudGF0aW9uOiBcImhvcml6b250YWxcIlxuICAgIH0sXG4gICAgb3B0aW9uczogW11cbiAgfTtcblxuICBAT3V0cHV0KClcbiAgdXBkYXRlRWxlbWVudCA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuXG4gIGJhc2ljUmFkaW9Gb3JtR3JvdXA6IEZvcm1Hcm91cCA9IHVuZGVmaW5lZDtcblxuICBjb25zdHJ1Y3RvcigpIHt9XG5cbiAgQGxvZ01ldGhvZFxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmNyZWF0ZUJhc2ljUmFkaW9Gb3JtR3JvdXAoKTtcbiAgfVxuXG4gIEBsb2dNZXRob2RcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgIGNvbnN0IHZlcmlmeUNoYW5nZSA9IChrZXk6IHN0cmluZykgPT4ge1xuICAgICAgcmV0dXJuIGNoYW5nZXMuaGFzT3duUHJvcGVydHkoa2V5KSAmJiAhY2hhbmdlc1trZXldLmZpcnN0Q2hhbmdlO1xuICAgIH07XG5cbiAgICBpZiAodmVyaWZ5Q2hhbmdlKFwiZWxlbWVudENvbmZpZ1wiKSkge1xuICAgICAgdGhpcy5lbGVtZW50Q29uZmlnID0gY2hhbmdlcy5lbGVtZW50Q29uZmlnLmN1cnJlbnRWYWx1ZTtcbiAgICAgIHRoaXMuYmFzaWNSYWRpb0Zvcm1Hcm91cD8ucmVzZXQodGhpcy5lbGVtZW50Q29uZmlnKTtcbiAgICB9XG4gICAgaWYgKHZlcmlmeUNoYW5nZShcInNhdmVCYXNpY0NsaWNrQ291bnRlclwiKSkge1xuICAgICAgaWYgKFxuICAgICAgICBjaGFuZ2VzLnNhdmVCYXNpY0NsaWNrQ291bnRlci5wcmV2aW91c1ZhbHVlICE9PVxuICAgICAgICBjaGFuZ2VzLnNhdmVCYXNpY0NsaWNrQ291bnRlci5jdXJyZW50VmFsdWVcbiAgICAgICkge1xuICAgICAgICB0aGlzLnNhdmVCYXNpY0NsaWNrQ291bnRlciA9IGNoYW5nZXMuc2F2ZUJhc2ljQ2xpY2tDb3VudGVyLmN1cnJlbnRWYWx1ZTtcblxuICAgICAgICB0aGlzLmhhbmRsZU9uU2F2ZSgpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBsb2dNZXRob2RcbiAgY3JlYXRlQmFzaWNSYWRpb0Zvcm1Hcm91cCgpOiB2b2lkIHtcbiAgICBsZXQgb3B0aW9uc0Zvcm1BcnJheSA9IFtdO1xuXG4gICAgdGhpcy5lbGVtZW50Q29uZmlnID0gc2V0TWlzc2luZ0tleVZhbHVlKHRoaXMuZWxlbWVudENvbmZpZywgXCJvcHRpb25zXCIsIFtcbiAgICAgIHRoaXMub3B0aW9uVHlwZVxuICAgIF0pO1xuXG4gICAgZm9yIChsZXQgb3B0aW9uIG9mIHRoaXMuZWxlbWVudENvbmZpZy5vcHRpb25zKSB7XG4gICAgICBvcHRpb25zRm9ybUFycmF5LnB1c2godGhpcy5jcmVhdGVPcHRpb25Db25maWdGb3JtR3JvdXAob3B0aW9uKSk7XG4gICAgfVxuXG4gICAgdGhpcy5iYXNpY1JhZGlvRm9ybUdyb3VwID0gbmV3IEZvcm1Hcm91cCh7XG4gICAgICBwcm9wZXJ0aWVzOiBuZXcgRm9ybUdyb3VwKHtcbiAgICAgICAgb3JpZW50YXRpb246IG5ldyBGb3JtQ29udHJvbChcbiAgICAgICAgICB0aGlzLmVsZW1lbnRDb25maWcucHJvcGVydGllcy5vcmllbnRhdGlvbixcbiAgICAgICAgICB7XG4gICAgICAgICAgICB1cGRhdGVPbjogXCJjaGFuZ2VcIlxuICAgICAgICAgIH1cbiAgICAgICAgKVxuICAgICAgfSksXG4gICAgICBvcHRpb25zOiBuZXcgRm9ybUFycmF5KG9wdGlvbnNGb3JtQXJyYXkpXG4gICAgfSk7XG4gICAgdGhpcy5iYXNpY1JhZGlvRm9ybUdyb3VwLnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkoKTtcbiAgfVxuXG4gIEBsb2dNZXRob2RcbiAgaGFuZGxlT25TYXZlKCkge1xuICAgIGxldCBiYXNpY0VsZW1lbnRDb25maWcgPSB0aGlzLmJhc2ljUmFkaW9Gb3JtR3JvdXAuZ2V0UmF3VmFsdWUoKTtcblxuICAgIHRoaXMudXBkYXRlRWxlbWVudC5lbWl0KHtcbiAgICAgIGJhc2ljRWxlbWVudENvbmZpZzogYmFzaWNFbGVtZW50Q29uZmlnXG4gICAgfSk7XG4gIH1cblxuICBnZXQgb3B0aW9uc0FycmF5KCk6IEZvcm1BcnJheSB7XG4gICAgcmV0dXJuIHRoaXMuYmFzaWNSYWRpb0Zvcm1Hcm91cC5nZXQoXCJvcHRpb25zXCIpIGFzIEZvcm1BcnJheTtcbiAgfVxuXG4gIEBsb2dNZXRob2RcbiAgY3JlYXRlT3B0aW9uQ29uZmlnRm9ybUdyb3VwKG9wdGlvbkNvbmZpZzogYW55KTogRm9ybUdyb3VwIHtcbiAgICBjb25zdCBvcHRpb25Gb3JtR3JvdXAgPSBuZXcgRm9ybUdyb3VwKHtcbiAgICAgIGxhYmVsOiBuZXcgRm9ybUNvbnRyb2wob3B0aW9uQ29uZmlnLmxhYmVsLCB7XG4gICAgICAgIHVwZGF0ZU9uOiBcImNoYW5nZVwiXG4gICAgICB9KSxcbiAgICAgIGRpc2FibGVkOiBuZXcgRm9ybUNvbnRyb2wob3B0aW9uQ29uZmlnLmRpc2FibGVkLCB7XG4gICAgICAgIHVwZGF0ZU9uOiBcImNoYW5nZVwiXG4gICAgICB9KSxcbiAgICAgIGRlc2NyaXB0aW9uOiBuZXcgRm9ybUNvbnRyb2wob3B0aW9uQ29uZmlnLmRlc2NyaXB0aW9uLCB7XG4gICAgICAgIHVwZGF0ZU9uOiBcImNoYW5nZVwiXG4gICAgICB9KVxuICAgIH0pO1xuICAgIHJldHVybiBvcHRpb25Gb3JtR3JvdXA7XG4gIH1cblxuICBAbG9nTWV0aG9kXG4gIGFkZE9wdGlvbigpIHtcbiAgICBjb25zdCBvcHRpb25zID0gdGhpcy5iYXNpY1JhZGlvRm9ybUdyb3VwLmdldChcIm9wdGlvbnNcIikgYXMgRm9ybUFycmF5O1xuICAgIG9wdGlvbnMucHVzaCh0aGlzLmNyZWF0ZU9wdGlvbkNvbmZpZ0Zvcm1Hcm91cCh0aGlzLm9wdGlvblR5cGUpKTtcbiAgfVxuXG4gIEBsb2dNZXRob2RcbiAgcmVtb3ZlT3B0aW9uKG9wdGlvbkluZGV4OiBudW1iZXIpIHtcbiAgICBjb25zdCBvcHRpb25zID0gdGhpcy5iYXNpY1JhZGlvRm9ybUdyb3VwLmdldChcIm9wdGlvbnNcIikgYXMgRm9ybUFycmF5O1xuICAgIGlmIChvcHRpb25zLmxlbmd0aCA+IDEpIHtcbiAgICAgIG9wdGlvbnMucmVtb3ZlQXQob3B0aW9uSW5kZXgpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmFkZE9wdGlvbigpO1xuICAgICAgLy8gb3B0aW9ucy5yZXNldCgpO1xuICAgIH1cbiAgfVxufVxuIl19
|