master-control 0.3.17 → 0.3.19
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/esm2022/lib/age-date/age-date.component.mjs +6 -3
- package/esm2022/lib/autocomplete/autocomplete.component.mjs +7 -3
- package/esm2022/lib/discount-v2/discount-v2.component.mjs +3 -3
- package/esm2022/lib/dob/dob.component.mjs +5 -1
- package/esm2022/lib/email-with-domain/email-with-domain.component.mjs +18 -9
- package/esm2022/lib/master-control.component.mjs +2 -2
- package/esm2022/lib/master-control.service.mjs +14 -1
- package/esm2022/lib/medial-questions/medial-questions.component.mjs +2 -2
- package/esm2022/lib/mob-number/mob-number.component.mjs +7 -3
- package/esm2022/lib/search-multi-select/search-multi-select.component.mjs +19 -13
- package/esm2022/lib/select/select.component.mjs +14 -5
- package/esm2022/lib/select-textbox/select-textbox.component.mjs +19 -11
- package/esm2022/lib/stepper-with-arrow/stepper-with-arrow.component.mjs +179 -9
- package/esm2022/lib/subscript-textbox/subscript-textbox.component.mjs +18 -9
- package/esm2022/lib/suffix-textbox/suffix-textbox.component.mjs +19 -10
- package/esm2022/lib/textarea/textarea.component.mjs +7 -3
- package/esm2022/lib/textbox/textbox.component.mjs +7 -3
- package/esm2022/lib/textbox-with-image/textbox-with-image.component.mjs +18 -9
- package/esm2022/lib/textbox-with-text/textbox-with-text.component.mjs +18 -9
- package/esm2022/lib/textbox-with-underscore/textbox-with-underscore.component.mjs +18 -9
- package/esm2022/lib/underscore-mob-number/underscore-mob-number.component.mjs +18 -9
- package/fesm2022/master-control.mjs +418 -135
- package/fesm2022/master-control.mjs.map +1 -1
- package/lib/age-date/age-date.component.d.ts +1 -0
- package/lib/autocomplete/autocomplete.component.d.ts +1 -0
- package/lib/dob/dob.component.d.ts +1 -0
- package/lib/email-with-domain/email-with-domain.component.d.ts +4 -0
- package/lib/master-control.service.d.ts +1 -0
- package/lib/mob-number/mob-number.component.d.ts +1 -0
- package/lib/search-multi-select/search-multi-select.component.d.ts +4 -0
- package/lib/select/select.component.d.ts +4 -1
- package/lib/select-textbox/select-textbox.component.d.ts +4 -0
- package/lib/stepper-with-arrow/stepper-with-arrow.component.d.ts +18 -2
- package/lib/subscript-textbox/subscript-textbox.component.d.ts +4 -0
- package/lib/suffix-textbox/suffix-textbox.component.d.ts +4 -0
- package/lib/textarea/textarea.component.d.ts +1 -0
- package/lib/textbox/textbox.component.d.ts +1 -0
- package/lib/textbox-with-image/textbox-with-image.component.d.ts +4 -0
- package/lib/textbox-with-text/textbox-with-text.component.d.ts +4 -0
- package/lib/textbox-with-underscore/textbox-with-underscore.component.d.ts +4 -0
- package/lib/underscore-mob-number/underscore-mob-number.component.d.ts +4 -0
- package/master-control-0.3.19.tgz +0 -0
- package/package.json +2 -2
- package/master-control-0.3.17.tgz +0 -0
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { CommonModule } from '@angular/common';
|
|
2
|
-
import { Component, input, output } from '@angular/core';
|
|
2
|
+
import { Component, input, output, effect } from '@angular/core';
|
|
3
3
|
import { MatStepperModule } from '@angular/material/stepper';
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
5
|
import * as i1 from "../master-control.service";
|
|
@@ -8,25 +8,77 @@ import * as i3 from "@angular/common";
|
|
|
8
8
|
export class StepperWIthArrowComponent {
|
|
9
9
|
masterSharedService;
|
|
10
10
|
field = input.required();
|
|
11
|
+
currentStepValue = input(); // Input to receive current step value from parent
|
|
12
|
+
autoProgress = input(false); // Input to enable automatic step progression
|
|
13
|
+
autoProgressDelay = input(3000); // Delay between auto-progression (in ms)
|
|
11
14
|
selectedStep = output();
|
|
12
15
|
masterStepper;
|
|
13
16
|
selectedStepIndex = -1;
|
|
17
|
+
autoProgressTimer;
|
|
14
18
|
constructor(masterSharedService) {
|
|
15
19
|
this.masterSharedService = masterSharedService;
|
|
20
|
+
// Watch for changes in currentStepValue input
|
|
21
|
+
effect(() => {
|
|
22
|
+
const stepValue = this.currentStepValue();
|
|
23
|
+
if (stepValue && this.field()?.editStepper) {
|
|
24
|
+
this.updateStepFromExternal(stepValue);
|
|
25
|
+
}
|
|
26
|
+
});
|
|
16
27
|
}
|
|
17
28
|
ngOnInit() {
|
|
18
29
|
this.field().editStepper = this.field().configData.stepperData ? this.field().configData.stepperData : this.masterSharedService?.configData?.stepper?.stepperData;
|
|
19
30
|
this.initializeStepperState();
|
|
31
|
+
this.emitActiveStepOnLoad();
|
|
32
|
+
// Start auto-progression if enabled
|
|
33
|
+
if (this.autoProgress()) {
|
|
34
|
+
this.startAutoProgression();
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
ngOnDestroy() {
|
|
38
|
+
// Clean up timer
|
|
39
|
+
if (this.autoProgressTimer) {
|
|
40
|
+
clearInterval(this.autoProgressTimer);
|
|
41
|
+
}
|
|
20
42
|
}
|
|
21
43
|
initializeStepperState() {
|
|
22
44
|
if (this.field().editStepper) {
|
|
45
|
+
let activeStepIndex = -1;
|
|
46
|
+
// Find the current active step based on step properties or field value
|
|
47
|
+
// Check if any step is already marked as active
|
|
48
|
+
activeStepIndex = this.field().editStepper.findIndex((step) => step.isActive === true);
|
|
49
|
+
// If no active step found, check for current value in field
|
|
50
|
+
if (activeStepIndex === -1 && this.field().value) {
|
|
51
|
+
activeStepIndex = this.field().editStepper.findIndex((step) => step.displayLabel === this.field().value ||
|
|
52
|
+
step.value === this.field().value);
|
|
53
|
+
}
|
|
54
|
+
// If still no active step found, default to first step
|
|
55
|
+
if (activeStepIndex === -1) {
|
|
56
|
+
activeStepIndex = 0;
|
|
57
|
+
}
|
|
23
58
|
this.field().editStepper.forEach((step, index) => {
|
|
24
59
|
// Set default values if not provided
|
|
25
60
|
if (step.isDisplay === undefined) {
|
|
26
61
|
step.isDisplay = true;
|
|
27
62
|
}
|
|
28
|
-
|
|
63
|
+
// Set step states based on the active step logic
|
|
64
|
+
if (index < activeStepIndex) {
|
|
65
|
+
// Steps before active step are completed and enabled
|
|
66
|
+
step.isCompleted = true;
|
|
67
|
+
step.isActive = false;
|
|
68
|
+
step.isDisabled = false; // Completed steps can be clicked
|
|
69
|
+
}
|
|
70
|
+
else if (index === activeStepIndex) {
|
|
71
|
+
// Current active step
|
|
72
|
+
step.isCompleted = false;
|
|
73
|
+
step.isActive = true;
|
|
29
74
|
step.isDisabled = false;
|
|
75
|
+
this.selectedStepIndex = index; // Set as selected
|
|
76
|
+
}
|
|
77
|
+
else {
|
|
78
|
+
// Steps after active step are pending and disabled
|
|
79
|
+
step.isCompleted = false;
|
|
80
|
+
step.isActive = false;
|
|
81
|
+
step.isDisabled = true;
|
|
30
82
|
}
|
|
31
83
|
});
|
|
32
84
|
}
|
|
@@ -52,18 +104,136 @@ export class StepperWIthArrowComponent {
|
|
|
52
104
|
return (this.selectedStepIndex === -1 || this.selectedStepIndex === index) && !this.isStepCompleted(index);
|
|
53
105
|
}
|
|
54
106
|
shouldShowAsDisabled(step, index) {
|
|
55
|
-
// Show as disabled if step is actually disabled
|
|
56
|
-
return step.isDisabled
|
|
107
|
+
// Show as disabled if step is actually disabled
|
|
108
|
+
return step.isDisabled === true;
|
|
57
109
|
}
|
|
58
110
|
isStepCompleted(index) {
|
|
59
|
-
//
|
|
60
|
-
|
|
111
|
+
// Check if step is marked as completed
|
|
112
|
+
if (this.field().editStepper && this.field().editStepper[index]) {
|
|
113
|
+
return this.field().editStepper[index].isCompleted === true;
|
|
114
|
+
}
|
|
115
|
+
return false;
|
|
116
|
+
}
|
|
117
|
+
isStepActive(index) {
|
|
118
|
+
// Check if step is marked as active
|
|
119
|
+
if (this.field().editStepper && this.field().editStepper[index]) {
|
|
120
|
+
return this.field().editStepper[index].isActive === true;
|
|
121
|
+
}
|
|
122
|
+
return false;
|
|
123
|
+
}
|
|
124
|
+
emitActiveStepOnLoad() {
|
|
125
|
+
// Automatically emit the active step when component loads
|
|
126
|
+
if (this.field().editStepper && this.selectedStepIndex >= 0) {
|
|
127
|
+
const activeStep = this.field().editStepper[this.selectedStepIndex];
|
|
128
|
+
if (activeStep) {
|
|
129
|
+
const stepData = {
|
|
130
|
+
step: activeStep,
|
|
131
|
+
index: this.selectedStepIndex,
|
|
132
|
+
label: activeStep.displayLabel,
|
|
133
|
+
value: activeStep.value || activeStep.displayLabel
|
|
134
|
+
};
|
|
135
|
+
this.selectedStep.emit(stepData);
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
// Method to programmatically move to the next step
|
|
140
|
+
moveToNextStep() {
|
|
141
|
+
if (this.selectedStepIndex < this.field().editStepper.length - 1) {
|
|
142
|
+
this.moveToStep(this.selectedStepIndex + 1);
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
// Method to programmatically move to the previous step
|
|
146
|
+
moveToPreviousStep() {
|
|
147
|
+
if (this.selectedStepIndex > 0) {
|
|
148
|
+
this.moveToStep(this.selectedStepIndex - 1);
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
// Method to programmatically move to a specific step
|
|
152
|
+
moveToStep(stepIndex) {
|
|
153
|
+
if (stepIndex >= 0 && stepIndex < this.field().editStepper.length) {
|
|
154
|
+
// Update step states
|
|
155
|
+
this.field().editStepper.forEach((step, index) => {
|
|
156
|
+
if (index < stepIndex) {
|
|
157
|
+
// Mark previous steps as completed
|
|
158
|
+
step.isCompleted = true;
|
|
159
|
+
step.isActive = false;
|
|
160
|
+
step.isDisabled = false;
|
|
161
|
+
}
|
|
162
|
+
else if (index === stepIndex) {
|
|
163
|
+
// Mark current step as active
|
|
164
|
+
step.isCompleted = false;
|
|
165
|
+
step.isActive = true;
|
|
166
|
+
step.isDisabled = false;
|
|
167
|
+
}
|
|
168
|
+
else {
|
|
169
|
+
// Mark future steps as pending/disabled
|
|
170
|
+
step.isCompleted = false;
|
|
171
|
+
step.isActive = false;
|
|
172
|
+
step.isDisabled = true;
|
|
173
|
+
}
|
|
174
|
+
});
|
|
175
|
+
this.selectedStepIndex = stepIndex;
|
|
176
|
+
// Emit the step change
|
|
177
|
+
const stepData = {
|
|
178
|
+
step: this.field().editStepper[stepIndex],
|
|
179
|
+
index: stepIndex,
|
|
180
|
+
label: this.field().editStepper[stepIndex].displayLabel,
|
|
181
|
+
value: this.field().editStepper[stepIndex].value || this.field().editStepper[stepIndex].displayLabel
|
|
182
|
+
};
|
|
183
|
+
this.selectedStep.emit(stepData);
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
// Method to complete current step and move to next
|
|
187
|
+
completeCurrentStepAndMoveNext() {
|
|
188
|
+
if (this.selectedStepIndex >= 0 && this.selectedStepIndex < this.field().editStepper.length - 1) {
|
|
189
|
+
// Mark current step as completed
|
|
190
|
+
this.field().editStepper[this.selectedStepIndex].isCompleted = true;
|
|
191
|
+
this.field().editStepper[this.selectedStepIndex].isActive = false;
|
|
192
|
+
// Move to next step
|
|
193
|
+
this.moveToNextStep();
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
// Method to watch for external step changes (can be called from parent)
|
|
197
|
+
updateStepFromExternal(stepValue) {
|
|
198
|
+
if (this.field().editStepper) {
|
|
199
|
+
const stepIndex = this.field().editStepper.findIndex((step) => step.displayLabel === stepValue || step.value === stepValue);
|
|
200
|
+
if (stepIndex >= 0 && stepIndex !== this.selectedStepIndex) {
|
|
201
|
+
this.moveToStep(stepIndex);
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
// Auto-progression methods
|
|
206
|
+
startAutoProgression() {
|
|
207
|
+
if (this.autoProgressTimer) {
|
|
208
|
+
clearInterval(this.autoProgressTimer);
|
|
209
|
+
}
|
|
210
|
+
this.autoProgressTimer = setInterval(() => {
|
|
211
|
+
this.moveToNextStep();
|
|
212
|
+
// Stop auto-progression when reaching the last step
|
|
213
|
+
if (this.selectedStepIndex >= this.field().editStepper.length - 1) {
|
|
214
|
+
this.stopAutoProgression();
|
|
215
|
+
}
|
|
216
|
+
}, this.autoProgressDelay());
|
|
217
|
+
}
|
|
218
|
+
stopAutoProgression() {
|
|
219
|
+
if (this.autoProgressTimer) {
|
|
220
|
+
clearInterval(this.autoProgressTimer);
|
|
221
|
+
this.autoProgressTimer = null;
|
|
222
|
+
}
|
|
223
|
+
}
|
|
224
|
+
// Method to reset stepper to first step
|
|
225
|
+
resetToFirstStep() {
|
|
226
|
+
this.stopAutoProgression();
|
|
227
|
+
this.moveToStep(0);
|
|
228
|
+
if (this.autoProgress()) {
|
|
229
|
+
this.startAutoProgression();
|
|
230
|
+
}
|
|
61
231
|
}
|
|
62
232
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: StepperWIthArrowComponent, deps: [{ token: i1.MasterControlService }], target: i0.ɵɵFactoryTarget.Component });
|
|
63
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.13", type: StepperWIthArrowComponent, isStandalone: true, selector: "lib-stepper-with-arrow", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { selectedStep: "selectedStep" }, ngImport: i0, template: "<div *ngIf=\"field() && field()?.isVisible\">\r\n <mat-stepper #stepperHeader>\r\n <ng-container *ngFor=\"let steps of field().editStepper; let i = index\">\r\n <mat-step \r\n *ngIf=\"steps.isDisplay !== false\"\r\n [completed]=\"false\"\r\n [optional]=\"false\">\r\n <ng-template matStepLabel>\r\n <div \r\n class=\"step-container\"\r\n [class.step-disabled]=\"shouldShowAsDisabled(steps, i)\"\r\n [class.step-
|
|
233
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.13", type: StepperWIthArrowComponent, isStandalone: true, selector: "lib-stepper-with-arrow", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, currentStepValue: { classPropertyName: "currentStepValue", publicName: "currentStepValue", isSignal: true, isRequired: false, transformFunction: null }, autoProgress: { classPropertyName: "autoProgress", publicName: "autoProgress", isSignal: true, isRequired: false, transformFunction: null }, autoProgressDelay: { classPropertyName: "autoProgressDelay", publicName: "autoProgressDelay", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { selectedStep: "selectedStep" }, ngImport: i0, template: "<div *ngIf=\"field() && field()?.isVisible\" style=\"zoom: 0.85;\">\r\n <mat-stepper #stepperHeader>\r\n <ng-container *ngFor=\"let steps of field().editStepper; let i = index\">\r\n <mat-step \r\n *ngIf=\"steps.isDisplay !== false\"\r\n [completed]=\"false\"\r\n [optional]=\"false\">\r\n <ng-template matStepLabel>\r\n <div \r\n class=\"step-container\"\r\n [class.step-disabled]=\"shouldShowAsDisabled(steps, i)\"\r\n [class.step-active]=\"isStepActive(i)\"\r\n [class.step-completed]=\"isStepCompleted(i)\"\r\n [class.step-collapsed]=\"!shouldShowLabel(i)\"\r\n (click)=\"onStepClick(steps, i)\">\r\n <span \r\n class=\"step-circle\"\r\n [class.circle-disabled]=\"shouldShowAsDisabled(steps, i)\"\r\n [class.circle-active]=\"isStepActive(i)\"\r\n [class.circle-completed]=\"isStepCompleted(i)\">\r\n {{i + 1}}\r\n </span>\r\n <span \r\n class=\"step-label mx-2\"\r\n [class.label-disabled]=\"shouldShowAsDisabled(steps, i)\"\r\n [class.label-active]=\"isStepActive(i)\"\r\n [class.label-completed]=\"isStepCompleted(i)\"\r\n [class.label-hidden]=\"!shouldShowLabel(i)\">\r\n {{steps?.displayLabel}}\r\n </span>\r\n <span \r\n class=\"arrow\" \r\n [class.arrow-disabled]=\"shouldShowAsDisabled(steps, i)\"\r\n [class.arrow-active]=\"isStepActive(i)\"\r\n [class.arrow-completed]=\"isStepCompleted(i)\"\r\n *ngIf=\"i < field().editStepper.length - 1\">\r\n </span>\r\n </div>\r\n </ng-template>\r\n </mat-step>\r\n </ng-container>\r\n </mat-stepper>\r\n</div>", styles: ["*{font-family:mulish!important}.step-container{display:flex;align-items:center;cursor:pointer;padding:4px 8px;border-radius:6px;border:none;transition:all .3s ease}.step-container:hover:not(.step-disabled){background-color:#f5f5f5}.step-container.step-selected{border:none}.step-container.step-disabled{cursor:not-allowed;opacity:.6}.step-container.step-collapsed{padding:4px;justify-content:center}.step-circle{width:24px;height:24px;min-width:24px;min-height:24px;border-radius:50%;background:#0bb68b;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:800;margin-right:8px;transition:all .3s ease;flex-shrink:0;box-sizing:border-box}.step-circle.circle-disabled{background:#999;color:#ccc}.step-circle.circle-selected{background:#0a9c75}.step-circle.circle-completed{background:#0a9c75;color:#fff}.step-label{color:#444;font-size:13px;font-weight:600;transition:color .3s ease}.step-label.label-disabled{color:#999}.step-label.label-selected{color:#444;font-weight:700}.step-label.label-hidden{display:none}.step-label.label-active{color:#0bb68b;font-weight:700}.step-label.label-completed{color:#0a9c75;font-weight:600}.arrow{border:solid #444;border-width:0 2px 2px 0;display:inline-block;padding:3px;transform:rotate(315deg);margin-left:12px;transition:border-color .3s ease}.arrow.arrow-disabled{border-color:#999}.arrow.arrow-hidden{display:none}.arrow.arrow-active,.arrow.arrow-completed{border-color:#444}::ng-deep .mat-step-icon{display:none}::ng-deep .mat-horizontal-stepper-header-container{background:#fff!important}::ng-deep .mat-stepper-horizontal-line{border-top:1px dashed!important;display:none}::ng-deep .mat-horizontal-content-container{display:none}::ng-deep .mat-horizontal-stepper-header{padding:0 8px!important}::ng-deep .mat-step-header.step-disabled .mat-step-label{pointer-events:none}::ng-deep .mat-step-header{max-height:fit-content!important}\n"], dependencies: [{ kind: "ngmodule", type: MatStepperModule }, { kind: "component", type: i2.MatStep, selector: "mat-step", inputs: ["color"], exportAs: ["matStep"] }, { kind: "directive", type: i2.MatStepLabel, selector: "[matStepLabel]" }, { kind: "component", type: i2.MatStepper, selector: "mat-stepper, mat-vertical-stepper, mat-horizontal-stepper, [matStepper]", inputs: ["disableRipple", "color", "labelPosition", "headerPosition", "animationDuration"], outputs: ["animationDone"], exportAs: ["matStepper", "matVerticalStepper", "matHorizontalStepper"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
64
234
|
}
|
|
65
235
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: StepperWIthArrowComponent, decorators: [{
|
|
66
236
|
type: Component,
|
|
67
|
-
args: [{ selector: 'lib-stepper-with-arrow', standalone: true, imports: [MatStepperModule, CommonModule], template: "<div *ngIf=\"field() && field()?.isVisible\">\r\n <mat-stepper #stepperHeader>\r\n <ng-container *ngFor=\"let steps of field().editStepper; let i = index\">\r\n <mat-step \r\n *ngIf=\"steps.isDisplay !== false\"\r\n [completed]=\"false\"\r\n [optional]=\"false\">\r\n <ng-template matStepLabel>\r\n <div \r\n class=\"step-container\"\r\n [class.step-disabled]=\"shouldShowAsDisabled(steps, i)\"\r\n [class.step-
|
|
237
|
+
args: [{ selector: 'lib-stepper-with-arrow', standalone: true, imports: [MatStepperModule, CommonModule], template: "<div *ngIf=\"field() && field()?.isVisible\" style=\"zoom: 0.85;\">\r\n <mat-stepper #stepperHeader>\r\n <ng-container *ngFor=\"let steps of field().editStepper; let i = index\">\r\n <mat-step \r\n *ngIf=\"steps.isDisplay !== false\"\r\n [completed]=\"false\"\r\n [optional]=\"false\">\r\n <ng-template matStepLabel>\r\n <div \r\n class=\"step-container\"\r\n [class.step-disabled]=\"shouldShowAsDisabled(steps, i)\"\r\n [class.step-active]=\"isStepActive(i)\"\r\n [class.step-completed]=\"isStepCompleted(i)\"\r\n [class.step-collapsed]=\"!shouldShowLabel(i)\"\r\n (click)=\"onStepClick(steps, i)\">\r\n <span \r\n class=\"step-circle\"\r\n [class.circle-disabled]=\"shouldShowAsDisabled(steps, i)\"\r\n [class.circle-active]=\"isStepActive(i)\"\r\n [class.circle-completed]=\"isStepCompleted(i)\">\r\n {{i + 1}}\r\n </span>\r\n <span \r\n class=\"step-label mx-2\"\r\n [class.label-disabled]=\"shouldShowAsDisabled(steps, i)\"\r\n [class.label-active]=\"isStepActive(i)\"\r\n [class.label-completed]=\"isStepCompleted(i)\"\r\n [class.label-hidden]=\"!shouldShowLabel(i)\">\r\n {{steps?.displayLabel}}\r\n </span>\r\n <span \r\n class=\"arrow\" \r\n [class.arrow-disabled]=\"shouldShowAsDisabled(steps, i)\"\r\n [class.arrow-active]=\"isStepActive(i)\"\r\n [class.arrow-completed]=\"isStepCompleted(i)\"\r\n *ngIf=\"i < field().editStepper.length - 1\">\r\n </span>\r\n </div>\r\n </ng-template>\r\n </mat-step>\r\n </ng-container>\r\n </mat-stepper>\r\n</div>", styles: ["*{font-family:mulish!important}.step-container{display:flex;align-items:center;cursor:pointer;padding:4px 8px;border-radius:6px;border:none;transition:all .3s ease}.step-container:hover:not(.step-disabled){background-color:#f5f5f5}.step-container.step-selected{border:none}.step-container.step-disabled{cursor:not-allowed;opacity:.6}.step-container.step-collapsed{padding:4px;justify-content:center}.step-circle{width:24px;height:24px;min-width:24px;min-height:24px;border-radius:50%;background:#0bb68b;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:800;margin-right:8px;transition:all .3s ease;flex-shrink:0;box-sizing:border-box}.step-circle.circle-disabled{background:#999;color:#ccc}.step-circle.circle-selected{background:#0a9c75}.step-circle.circle-completed{background:#0a9c75;color:#fff}.step-label{color:#444;font-size:13px;font-weight:600;transition:color .3s ease}.step-label.label-disabled{color:#999}.step-label.label-selected{color:#444;font-weight:700}.step-label.label-hidden{display:none}.step-label.label-active{color:#0bb68b;font-weight:700}.step-label.label-completed{color:#0a9c75;font-weight:600}.arrow{border:solid #444;border-width:0 2px 2px 0;display:inline-block;padding:3px;transform:rotate(315deg);margin-left:12px;transition:border-color .3s ease}.arrow.arrow-disabled{border-color:#999}.arrow.arrow-hidden{display:none}.arrow.arrow-active,.arrow.arrow-completed{border-color:#444}::ng-deep .mat-step-icon{display:none}::ng-deep .mat-horizontal-stepper-header-container{background:#fff!important}::ng-deep .mat-stepper-horizontal-line{border-top:1px dashed!important;display:none}::ng-deep .mat-horizontal-content-container{display:none}::ng-deep .mat-horizontal-stepper-header{padding:0 8px!important}::ng-deep .mat-step-header.step-disabled .mat-step-label{pointer-events:none}::ng-deep .mat-step-header{max-height:fit-content!important}\n"] }]
|
|
68
238
|
}], ctorParameters: () => [{ type: i1.MasterControlService }] });
|
|
69
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RlcHBlci13aXRoLWFycm93LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21hc3Rlci1jb250cm9sL3NyYy9saWIvc3RlcHBlci13aXRoLWFycm93L3N0ZXBwZXItd2l0aC1hcnJvdy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXN0ZXItY29udHJvbC9zcmMvbGliL3N0ZXBwZXItd2l0aC1hcnJvdy9zdGVwcGVyLXdpdGgtYXJyb3cuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7Ozs7QUFVN0QsTUFBTSxPQUFPLHlCQUF5QjtJQU1qQjtJQUxuQixLQUFLLEdBQVEsS0FBSyxDQUFDLFFBQVEsRUFBTyxDQUFDO0lBQ25DLFlBQVksR0FBRyxNQUFNLEVBQU8sQ0FBQztJQUM3QixhQUFhLENBQU07SUFDbkIsaUJBQWlCLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFFdkIsWUFBbUIsbUJBQXlDO1FBQXpDLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBc0I7SUFBSSxDQUFDO0lBRWpFLFFBQVE7UUFDTixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxVQUFVLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLG1CQUFtQixFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsV0FBVyxDQUFDO1FBQ2xLLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO0lBQ2hDLENBQUM7SUFFRCxzQkFBc0I7UUFDcEIsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDN0IsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFTLEVBQUUsS0FBYSxFQUFFLEVBQUU7Z0JBQzVELHFDQUFxQztnQkFDckMsSUFBSSxJQUFJLENBQUMsU0FBUyxLQUFLLFNBQVMsRUFBRSxDQUFDO29CQUNqQyxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztnQkFDeEIsQ0FBQztnQkFDRCxJQUFJLElBQUksQ0FBQyxVQUFVLEtBQUssU0FBUyxFQUFFLENBQUM7b0JBQ2xDLElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDO2dCQUMxQixDQUFDO1lBQ0gsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDO0lBQ0gsQ0FBQztJQUVELFdBQVcsQ0FBQyxJQUFTLEVBQUUsS0FBYTtRQUNsQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ3JCLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxLQUFLLENBQUM7WUFDL0IsTUFBTSxRQUFRLEdBQUc7Z0JBQ2YsSUFBSSxFQUFFLElBQUk7Z0JBQ1YsS0FBSyxFQUFFLEtBQUs7Z0JBQ1osS0FBSyxFQUFFLElBQUksQ0FBQyxZQUFZO2dCQUN4QixLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsWUFBWTthQUN2QyxDQUFDO1lBQ0YsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDbkMsQ0FBQztJQUNILENBQUM7SUFFRCxjQUFjLENBQUMsS0FBYTtRQUMxQixPQUFPLElBQUksQ0FBQyxpQkFBaUIsS0FBSyxLQUFLLENBQUM7SUFDMUMsQ0FBQztJQUVELGVBQWUsQ0FBQyxLQUFhO1FBQzNCLDZFQUE2RTtRQUM3RSxrQ0FBa0M7UUFDbEMsT0FBTyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsS0FBSyxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUMsaUJBQWlCLEtBQUssS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzdHLENBQUM7SUFFRCxvQkFBb0IsQ0FBQyxJQUFTLEVBQUUsS0FBYTtRQUMzQyw4RkFBOEY7UUFDOUYsT0FBTyxJQUFJLENBQUMsVUFBVSxJQUFJLENBQUMsSUFBSSxDQUFDLGlCQUFpQixLQUFLLENBQUMsQ0FBQyxJQUFJLEtBQUssR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQztJQUM5RixDQUFDO0lBRUQsZUFBZSxDQUFDLEtBQWE7UUFDM0IseURBQXlEO1FBQ3pELE9BQU8sSUFBSSxDQUFDLGlCQUFpQixLQUFLLENBQUMsQ0FBQyxJQUFJLEtBQUssR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUM7SUFDekUsQ0FBQzt3R0ExRFUseUJBQXlCOzRGQUF6Qix5QkFBeUIsZ1FDWnRDLGlsREFzQ00sMHVERDlCTSxnQkFBZ0Isa2hCQUFFLFlBQVk7OzRGQUk3Qix5QkFBeUI7a0JBUHJDLFNBQVM7K0JBQ0Usd0JBQXdCLGNBQ3RCLElBQUksV0FDUCxDQUFDLGdCQUFnQixFQUFFLFlBQVksQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgaW5wdXQsIG91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBNYXRTdGVwcGVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc3RlcHBlcic7XHJcbmltcG9ydCB7IE1hc3RlckNvbnRyb2xTZXJ2aWNlIH0gZnJvbSAnLi4vbWFzdGVyLWNvbnRyb2wuc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xpYi1zdGVwcGVyLXdpdGgtYXJyb3cnLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW01hdFN0ZXBwZXJNb2R1bGUsIENvbW1vbk1vZHVsZV0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3N0ZXBwZXItd2l0aC1hcnJvdy5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmw6ICcuL3N0ZXBwZXItd2l0aC1hcnJvdy5jb21wb25lbnQuY3NzJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgU3RlcHBlcldJdGhBcnJvd0NvbXBvbmVudCB7XHJcbiAgZmllbGQ6IGFueSA9IGlucHV0LnJlcXVpcmVkPGFueT4oKTtcclxuICBzZWxlY3RlZFN0ZXAgPSBvdXRwdXQ8YW55PigpO1xyXG4gIG1hc3RlclN0ZXBwZXI6IGFueTtcclxuICBzZWxlY3RlZFN0ZXBJbmRleCA9IC0xO1xyXG5cclxuICBjb25zdHJ1Y3RvcihwdWJsaWMgbWFzdGVyU2hhcmVkU2VydmljZTogTWFzdGVyQ29udHJvbFNlcnZpY2UpIHsgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuZmllbGQoKS5lZGl0U3RlcHBlciA9IHRoaXMuZmllbGQoKS5jb25maWdEYXRhLnN0ZXBwZXJEYXRhID8gdGhpcy5maWVsZCgpLmNvbmZpZ0RhdGEuc3RlcHBlckRhdGEgOiB0aGlzLm1hc3RlclNoYXJlZFNlcnZpY2U/LmNvbmZpZ0RhdGE/LnN0ZXBwZXI/LnN0ZXBwZXJEYXRhO1xyXG4gICAgdGhpcy5pbml0aWFsaXplU3RlcHBlclN0YXRlKCk7XHJcbiAgfVxyXG5cclxuICBpbml0aWFsaXplU3RlcHBlclN0YXRlKCkge1xyXG4gICAgaWYgKHRoaXMuZmllbGQoKS5lZGl0U3RlcHBlcikge1xyXG4gICAgICB0aGlzLmZpZWxkKCkuZWRpdFN0ZXBwZXIuZm9yRWFjaCgoc3RlcDogYW55LCBpbmRleDogbnVtYmVyKSA9PiB7XHJcbiAgICAgICAgLy8gU2V0IGRlZmF1bHQgdmFsdWVzIGlmIG5vdCBwcm92aWRlZFxyXG4gICAgICAgIGlmIChzdGVwLmlzRGlzcGxheSA9PT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgICBzdGVwLmlzRGlzcGxheSA9IHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChzdGVwLmlzRGlzYWJsZWQgPT09IHVuZGVmaW5lZCkge1xyXG4gICAgICAgICAgc3RlcC5pc0Rpc2FibGVkID0gZmFsc2U7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG9uU3RlcENsaWNrKHN0ZXA6IGFueSwgaW5kZXg6IG51bWJlcikge1xyXG4gICAgaWYgKCFzdGVwLmlzRGlzYWJsZWQpIHtcclxuICAgICAgdGhpcy5zZWxlY3RlZFN0ZXBJbmRleCA9IGluZGV4O1xyXG4gICAgICBjb25zdCBzdGVwRGF0YSA9IHtcclxuICAgICAgICBzdGVwOiBzdGVwLFxyXG4gICAgICAgIGluZGV4OiBpbmRleCxcclxuICAgICAgICBsYWJlbDogc3RlcC5kaXNwbGF5TGFiZWwsXHJcbiAgICAgICAgdmFsdWU6IHN0ZXAudmFsdWUgfHwgc3RlcC5kaXNwbGF5TGFiZWxcclxuICAgICAgfTtcclxuICAgICAgdGhpcy5zZWxlY3RlZFN0ZXAuZW1pdChzdGVwRGF0YSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBpc1N0ZXBTZWxlY3RlZChpbmRleDogbnVtYmVyKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5zZWxlY3RlZFN0ZXBJbmRleCA9PT0gaW5kZXg7XHJcbiAgfVxyXG5cclxuICBzaG91bGRTaG93TGFiZWwoaW5kZXg6IG51bWJlcik6IGJvb2xlYW4ge1xyXG4gICAgLy8gU2hvdyBsYWJlbCBvbmx5IGlmIG5vIHN0ZXAgaXMgc2VsZWN0ZWQgT1IgaWYgdGhpcyBzdGVwIGlzIHRoZSBzZWxlY3RlZCBvbmVcclxuICAgIC8vIEhpZGUgbGFiZWxzIGZvciBjb21wbGV0ZWQgc3RlcHNcclxuICAgIHJldHVybiAodGhpcy5zZWxlY3RlZFN0ZXBJbmRleCA9PT0gLTEgfHwgdGhpcy5zZWxlY3RlZFN0ZXBJbmRleCA9PT0gaW5kZXgpICYmICF0aGlzLmlzU3RlcENvbXBsZXRlZChpbmRleCk7XHJcbiAgfVxyXG5cclxuICBzaG91bGRTaG93QXNEaXNhYmxlZChzdGVwOiBhbnksIGluZGV4OiBudW1iZXIpOiBib29sZWFuIHtcclxuICAgIC8vIFNob3cgYXMgZGlzYWJsZWQgaWYgc3RlcCBpcyBhY3R1YWxseSBkaXNhYmxlZCBPUiBpZiBpdCdzIGFuIHVudmlzaXRlZCBzdGVwIChhZnRlciBzZWxlY3RlZClcclxuICAgIHJldHVybiBzdGVwLmlzRGlzYWJsZWQgfHwgKHRoaXMuc2VsZWN0ZWRTdGVwSW5kZXggIT09IC0xICYmIGluZGV4ID4gdGhpcy5zZWxlY3RlZFN0ZXBJbmRleCk7XHJcbiAgfVxyXG5cclxuICBpc1N0ZXBDb21wbGV0ZWQoaW5kZXg6IG51bWJlcik6IGJvb2xlYW4ge1xyXG4gICAgLy8gU3RlcCBpcyBjb21wbGV0ZWQgaWYgaXQgY29tZXMgYmVmb3JlIHRoZSBzZWxlY3RlZCBzdGVwXHJcbiAgICByZXR1cm4gdGhpcy5zZWxlY3RlZFN0ZXBJbmRleCAhPT0gLTEgJiYgaW5kZXggPCB0aGlzLnNlbGVjdGVkU3RlcEluZGV4O1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2ICpuZ0lmPVwiZmllbGQoKSAmJiBmaWVsZCgpPy5pc1Zpc2libGVcIj5cclxuICA8bWF0LXN0ZXBwZXIgI3N0ZXBwZXJIZWFkZXI+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBzdGVwcyBvZiBmaWVsZCgpLmVkaXRTdGVwcGVyOyBsZXQgaSA9IGluZGV4XCI+XHJcbiAgICAgIDxtYXQtc3RlcCBcclxuICAgICAgICAqbmdJZj1cInN0ZXBzLmlzRGlzcGxheSAhPT0gZmFsc2VcIlxyXG4gICAgICAgIFtjb21wbGV0ZWRdPVwiZmFsc2VcIlxyXG4gICAgICAgIFtvcHRpb25hbF09XCJmYWxzZVwiPlxyXG4gICAgICAgIDxuZy10ZW1wbGF0ZSBtYXRTdGVwTGFiZWw+XHJcbiAgICAgICAgICA8ZGl2IFxyXG4gICAgICAgICAgICBjbGFzcz1cInN0ZXAtY29udGFpbmVyXCJcclxuICAgICAgICAgICAgW2NsYXNzLnN0ZXAtZGlzYWJsZWRdPVwic2hvdWxkU2hvd0FzRGlzYWJsZWQoc3RlcHMsIGkpXCJcclxuICAgICAgICAgICAgW2NsYXNzLnN0ZXAtc2VsZWN0ZWRdPVwiaXNTdGVwU2VsZWN0ZWQoaSlcIlxyXG4gICAgICAgICAgICBbY2xhc3Muc3RlcC1jb2xsYXBzZWRdPVwiIXNob3VsZFNob3dMYWJlbChpKVwiXHJcbiAgICAgICAgICAgIChjbGljayk9XCJvblN0ZXBDbGljayhzdGVwcywgaSlcIj5cclxuICAgICAgICAgICAgPHNwYW4gXHJcbiAgICAgICAgICAgICAgY2xhc3M9XCJzdGVwLWNpcmNsZVwiXHJcbiAgICAgICAgICAgICAgW2NsYXNzLmNpcmNsZS1kaXNhYmxlZF09XCJzaG91bGRTaG93QXNEaXNhYmxlZChzdGVwcywgaSlcIlxyXG4gICAgICAgICAgICAgIFtjbGFzcy5jaXJjbGUtc2VsZWN0ZWRdPVwiaXNTdGVwU2VsZWN0ZWQoaSlcIlxyXG4gICAgICAgICAgICAgIFtjbGFzcy5jaXJjbGUtY29tcGxldGVkXT1cImlzU3RlcENvbXBsZXRlZChpKVwiPlxyXG4gICAgICAgICAgICAgIHt7aSArIDF9fVxyXG4gICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgIDxzcGFuIFxyXG4gICAgICAgICAgICAgIGNsYXNzPVwic3RlcC1sYWJlbCBteC0yXCJcclxuICAgICAgICAgICAgICBbY2xhc3MubGFiZWwtZGlzYWJsZWRdPVwic2hvdWxkU2hvd0FzRGlzYWJsZWQoc3RlcHMsIGkpXCJcclxuICAgICAgICAgICAgICBbY2xhc3MubGFiZWwtc2VsZWN0ZWRdPVwiaXNTdGVwU2VsZWN0ZWQoaSlcIlxyXG4gICAgICAgICAgICAgIFtjbGFzcy5sYWJlbC1oaWRkZW5dPVwiIXNob3VsZFNob3dMYWJlbChpKVwiPlxyXG4gICAgICAgICAgICAgIHt7c3RlcHM/LmRpc3BsYXlMYWJlbH19XHJcbiAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgPHNwYW4gXHJcbiAgICAgICAgICAgICAgY2xhc3M9XCJhcnJvd1wiIFxyXG4gICAgICAgICAgICAgIFtjbGFzcy5hcnJvdy1kaXNhYmxlZF09XCJzaG91bGRTaG93QXNEaXNhYmxlZChzdGVwcywgaSlcIlxyXG4gICAgICAgICAgICAgICpuZ0lmPVwiaSA8IGZpZWxkKCkuZWRpdFN0ZXBwZXIubGVuZ3RoIC0gMVwiPlxyXG4gICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICA8L21hdC1zdGVwPlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcbiAgPC9tYXQtc3RlcHBlcj5cclxuPC9kaXY+Il19
|
|
239
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RlcHBlci13aXRoLWFycm93LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21hc3Rlci1jb250cm9sL3NyYy9saWIvc3RlcHBlci13aXRoLWFycm93L3N0ZXBwZXItd2l0aC1hcnJvdy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXN0ZXItY29udHJvbC9zcmMvbGliL3N0ZXBwZXItd2l0aC1hcnJvdy9zdGVwcGVyLXdpdGgtYXJyb3cuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBQ3BGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDOzs7OztBQVU3RCxNQUFNLE9BQU8seUJBQXlCO0lBVWpCO0lBVG5CLEtBQUssR0FBUSxLQUFLLENBQUMsUUFBUSxFQUFPLENBQUM7SUFDbkMsZ0JBQWdCLEdBQUcsS0FBSyxFQUFVLENBQUMsQ0FBQyxrREFBa0Q7SUFDdEYsWUFBWSxHQUFHLEtBQUssQ0FBVSxLQUFLLENBQUMsQ0FBQyxDQUFDLDZDQUE2QztJQUNuRixpQkFBaUIsR0FBRyxLQUFLLENBQVMsSUFBSSxDQUFDLENBQUMsQ0FBQyx5Q0FBeUM7SUFDbEYsWUFBWSxHQUFHLE1BQU0sRUFBTyxDQUFDO0lBQzdCLGFBQWEsQ0FBTTtJQUNuQixpQkFBaUIsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUNmLGlCQUFpQixDQUFNO0lBRS9CLFlBQW1CLG1CQUF5QztRQUF6Qyx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXNCO1FBQzFELDhDQUE4QztRQUM5QyxNQUFNLENBQUMsR0FBRyxFQUFFO1lBQ1YsTUFBTSxTQUFTLEdBQUcs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LGNBQWMsRUFBRSxDQUFDO1lBRXRCLG9EQUFvRDtZQUNwRCxJQUFJLElBQUksQ0FBQyxpQkFBaUIsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsV0FBVyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztnQkFDbEUsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7WUFDN0IsQ0FBQztRQUNILENBQUMsRUFBRSxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFFRCxtQkFBbUI7UUFDakIsSUFBSSxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztZQUMzQixhQUFhLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUM7WUFDdEMsSUFBSSxDQUFDLGlCQUFpQixHQUFHLElBQUksQ0FBQztRQUNoQyxDQUFDO0lBQ0gsQ0FBQztJQUVELHdDQUF3QztJQUN4QyxnQkFBZ0I7UUFDZCxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztRQUMzQixJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBRW5CLElBQUksSUFBSSxDQUFDLFlBQVksRUFBRSxFQUFFLENBQUM7WUFDeEIsSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUM7UUFDOUIsQ0FBQztJQUNILENBQUM7d0dBN1BVLHlCQUF5Qjs0RkFBekIseUJBQXlCLGtzQkNadEMsazFEQTBDTSw0N0REbENNLGdCQUFnQixraEJBQUUsWUFBWTs7NEZBSTdCLHlCQUF5QjtrQkFQckMsU0FBUzsrQkFDRSx3QkFBd0IsY0FDdEIsSUFBSSxXQUNQLENBQUMsZ0JBQWdCLEVBQUUsWUFBWSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBpbnB1dCwgb3V0cHV0LCBlZmZlY3QsIE9uSW5pdCwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE1hdFN0ZXBwZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zdGVwcGVyJztcclxuaW1wb3J0IHsgTWFzdGVyQ29udHJvbFNlcnZpY2UgfSBmcm9tICcuLi9tYXN0ZXItY29udHJvbC5zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGliLXN0ZXBwZXItd2l0aC1hcnJvdycsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbTWF0U3RlcHBlck1vZHVsZSwgQ29tbW9uTW9kdWxlXSxcclxuICB0ZW1wbGF0ZVVybDogJy4vc3RlcHBlci13aXRoLWFycm93LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybDogJy4vc3RlcHBlci13aXRoLWFycm93LmNvbXBvbmVudC5jc3MnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTdGVwcGVyV0l0aEFycm93Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gIGZpZWxkOiBhbnkgPSBpbnB1dC5yZXF1aXJlZDxhbnk+KCk7XHJcbiAgY3VycmVudFN0ZXBWYWx1ZSA9IGlucHV0PHN0cmluZz4oKTsgLy8gSW5wdXQgdG8gcmVjZWl2ZSBjdXJyZW50IHN0ZXAgdmFsdWUgZnJvbSBwYXJlbnRcclxuICBhdXRvUHJvZ3Jlc3MgPSBpbnB1dDxib29sZWFuPihmYWxzZSk7IC8vIElucHV0IHRvIGVuYWJsZSBhdXRvbWF0aWMgc3RlcCBwcm9ncmVzc2lvblxyXG4gIGF1dG9Qcm9ncmVzc0RlbGF5ID0gaW5wdXQ8bnVtYmVyPigzMDAwKTsgLy8gRGVsYXkgYmV0d2VlbiBhdXRvLXByb2dyZXNzaW9uIChpbiBtcylcclxuICBzZWxlY3RlZFN0ZXAgPSBvdXRwdXQ8YW55PigpO1xyXG4gIG1hc3RlclN0ZXBwZXI6IGFueTtcclxuICBzZWxlY3RlZFN0ZXBJbmRleCA9IC0xO1xyXG4gIHByaXZhdGUgYXV0b1Byb2dyZXNzVGltZXI6IGFueTtcclxuXHJcbiAgY29uc3RydWN0b3IocHVibGljIG1hc3RlclNoYXJlZFNlcnZpY2U6IE1hc3RlckNvbnRyb2xTZXJ2aWNlKSB7XHJcbiAgICAvLyBXYXRjaCBmb3IgY2hhbmdlcyBpbiBjdXJyZW50U3RlcFZhbHVlIGlucHV0XHJcbiAgICBlZmZlY3QoKCkgPT4ge1xyXG4gICAgICBjb25zdCBzdGVwVmFsdWUgPSB0aGlzLmN1cnJlbnRTdGVwVmFsdWUoKTtcclxuICAgICAgaWYgKHN0ZXBWYWx1ZSAmJiB0aGlzLmZpZWxkKCk/LmVkaXRTdGVwcGVyKSB7XHJcbiAgICAgICAgdGhpcy51cGRhdGVTdGVwRnJvbUV4dGVybmFsKHN0ZXBWYWx1ZSk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLmZpZWxkKCkuZWRpdFN0ZXBwZXIgPSB0aGlzLmZpZWxkKCkuY29uZmlnRGF0YS5zdGVwcGVyRGF0YSA/IHRoaXMuZmllbGQoKS5jb25maWdEYXRhLnN0ZXBwZXJEYXRhIDogdGhpcy5tYXN0ZXJTaGFyZWRTZXJ2aWNlPy5jb25maWdEYXRhPy5zdGVwcGVyPy5zdGVwcGVyRGF0YTtcclxuICAgIHRoaXMuaW5pdGlhbGl6ZVN0ZXBwZXJTdGF0ZSgpO1xyXG4gICAgdGhpcy5lbWl0QWN0aXZlU3RlcE9uTG9hZCgpO1xyXG4gICAgXHJcbiAgICAvLyBTdGFydCBhdXRvLXByb2dyZXNzaW9uIGlmIGVuYWJsZWRcclxuICAgIGlmICh0aGlzLmF1dG9Qcm9ncmVzcygpKSB7XHJcbiAgICAgIHRoaXMuc3RhcnRBdXRvUHJvZ3Jlc3Npb24oKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCkge1xyXG4gICAgLy8gQ2xlYW4gdXAgdGltZXJcclxuICAgIGlmICh0aGlzLmF1dG9Qcm9ncmVzc1RpbWVyKSB7XHJcbiAgICAgIGNsZWFySW50ZXJ2YWwodGhpcy5hdXRvUHJvZ3Jlc3NUaW1lcik7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBpbml0aWFsaXplU3RlcHBlclN0YXRlKCkge1xyXG4gICAgaWYgKHRoaXMuZmllbGQoKS5lZGl0U3RlcHBlcikge1xyXG4gICAgICBsZXQgYWN0aXZlU3RlcEluZGV4ID0gLTE7XHJcbiAgICAgIFxyXG4gICAgICAvLyBGaW5kIHRoZSBjdXJyZW50IGFjdGl2ZSBzdGVwIGJhc2VkIG9uIHN0ZXAgcHJvcGVydGllcyBvciBmaWVsZCB2YWx1ZVxyXG4gICAgICAvLyBDaGVjayBpZiBhbnkgc3RlcCBpcyBhbHJlYWR5IG1hcmtlZCBhcyBhY3RpdmVcclxuICAgICAgYWN0aXZlU3RlcEluZGV4ID0gdGhpcy5maWVsZCgpLmVkaXRTdGVwcGVyLmZpbmRJbmRleCgoc3RlcDogYW55KSA9PiBzdGVwLmlzQWN0aXZlID09PSB0cnVlKTtcclxuICAgICAgXHJcbiAgICAgIC8vIElmIG5vIGFjdGl2ZSBzdGVwIGZvdW5kLCBjaGVjayBmb3IgY3VycmVudCB2YWx1ZSBpbiBmaWVsZFxyXG4gICAgICBpZiAoYWN0aXZlU3RlcEluZGV4ID09PSAtMSAmJiB0aGlzLmZpZWxkKCkudmFsdWUpIHtcclxuICAgICAgICBhY3RpdmVTdGVwSW5kZXggPSB0aGlzLmZpZWxkKCkuZWRpdFN0ZXBwZXIuZmluZEluZGV4KChzdGVwOiBhbnkpID0+IFxyXG4gICAgICAgICAgc3RlcC5kaXNwbGF5TGFiZWwgPT09IHRoaXMuZmllbGQoKS52YWx1ZSB8fCBcclxuICAgICAgICAgIHN0ZXAudmFsdWUgPT09IHRoaXMuZmllbGQoKS52YWx1ZVxyXG4gICAgICAgICk7XHJcbiAgICAgIH1cclxuICAgICAgXHJcbiAgICAgIC8vIElmIHN0aWxsIG5vIGFjdGl2ZSBzdGVwIGZvdW5kLCBkZWZhdWx0IHRvIGZpcnN0IHN0ZXBcclxuICAgICAgaWYgKGFjdGl2ZVN0ZXBJbmRleCA9PT0gLTEpIHtcclxuICAgICAgICBhY3RpdmVTdGVwSW5kZXggPSAwO1xyXG4gICAgICB9XHJcbiAgICAgIFxyXG4gICAgICB0aGlzLmZpZWxkKCkuZWRpdFN0ZXBwZXIuZm9yRWFjaCgoc3RlcDogYW55LCBpbmRleDogbnVtYmVyKSA9PiB7XHJcbiAgICAgICAgLy8gU2V0IGRlZmF1bHQgdmFsdWVzIGlmIG5vdCBwcm92aWRlZFxyXG4gICAgICAgIGlmIChzdGVwLmlzRGlzcGxheSA9PT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgICBzdGVwLmlzRGlzcGxheSA9IHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIFxyXG4gICAgICAgIC8vIFNldCBzdGVwIHN0YXRlcyBiYXNlZCBvbiB0aGUgYWN0aXZlIHN0ZXAgbG9naWNcclxuICAgICAgICBpZiAoaW5kZXggPCBhY3RpdmVTdGVwSW5kZXgpIHtcclxuICAgICAgICAgIC8vIFN0ZXBzIGJlZm9yZSBhY3RpdmUgc3RlcCBhcmUgY29tcGxldGVkIGFuZCBlbmFibGVkXHJcbiAgICAgICAgICBzdGVwLmlzQ29tcGxldGVkID0gdHJ1ZTtcclxuICAgICAgICAgIHN0ZXAuaXNBY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICAgIHN0ZXAuaXNEaXNhYmxlZCA9IGZhbHNlOyAvLyBDb21wbGV0ZWQgc3RlcHMgY2FuIGJlIGNsaWNrZWRcclxuICAgICAgICB9IGVsc2UgaWYgKGluZGV4ID09PSBhY3RpdmVTdGVwSW5kZXgpIHtcclxuICAgICAgICAgIC8vIEN1cnJlbnQgYWN0aXZlIHN0ZXBcclxuICAgICAgICAgIHN0ZXAuaXNDb21wbGV0ZWQgPSBmYWxzZTtcclxuICAgICAgICAgIHN0ZXAuaXNBY3RpdmUgPSB0cnVlO1xyXG4gICAgICAgICAgc3RlcC5pc0Rpc2FibGVkID0gZmFsc2U7XHJcbiAgICAgICAgICB0aGlzLnNlbGVjdGVkU3RlcEluZGV4ID0gaW5kZXg7IC8vIFNldCBhcyBzZWxlY3RlZFxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAvLyBTdGVwcyBhZnRlciBhY3RpdmUgc3RlcCBhcmUgcGVuZGluZyBhbmQgZGlzYWJsZWRcclxuICAgICAgICAgIHN0ZXAuaXNDb21wbGV0ZWQgPSBmYWxzZTtcclxuICAgICAgICAgIHN0ZXAuaXNBY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICAgIHN0ZXAuaXNEaXNhYmxlZCA9IHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG9uU3RlcENsaWNrKHN0ZXA6IGFueSwgaW5kZXg6IG51bWJlcikge1xyXG4gICAgaWYgKCFzdGVwLmlzRGlzYWJsZWQpIHtcclxuICAgICAgdGhpcy5zZWxlY3RlZFN0ZXBJbmRleCA9IGluZGV4O1xyXG4gICAgICBjb25zdCBzdGVwRGF0YSA9IHtcclxuICAgICAgICBzdGVwOiBzdGVwLFxyXG4gICAgICAgIGluZGV4OiBpbmRleCxcclxuICAgICAgICBsYWJlbDogc3RlcC5kaXNwbGF5TGFiZWwsXHJcbiAgICAgICAgdmFsdWU6IHN0ZXAudmFsdWUgfHwgc3RlcC5kaXNwbGF5TGFiZWxcclxuICAgICAgfTtcclxuICAgICAgdGhpcy5zZWxlY3RlZFN0ZXAuZW1pdChzdGVwRGF0YSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBpc1N0ZXBTZWxlY3RlZChpbmRleDogbnVtYmVyKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5zZWxlY3RlZFN0ZXBJbmRleCA9PT0gaW5kZXg7XHJcbiAgfVxyXG5cclxuICBzaG91bGRTaG93TGFiZWwoaW5kZXg6IG51bWJlcik6IGJvb2xlYW4ge1xyXG4gICAgLy8gU2hvdyBsYWJlbCBvbmx5IGlmIG5vIHN0ZXAgaXMgc2VsZWN0ZWQgT1IgaWYgdGhpcyBzdGVwIGlzIHRoZSBzZWxlY3RlZCBvbmVcclxuICAgIC8vIEhpZGUgbGFiZWxzIGZvciBjb21wbGV0ZWQgc3RlcHNcclxuICAgIHJldHVybiAodGhpcy5zZWxlY3RlZFN0ZXBJbmRleCA9PT0gLTEgfHwgdGhpcy5zZWxlY3RlZFN0ZXBJbmRleCA9PT0gaW5kZXgpICYmICF0aGlzLmlzU3RlcENvbXBsZXRlZChpbmRleCk7XHJcbiAgfVxyXG5cclxuICBzaG91bGRTaG93QXNEaXNhYmxlZChzdGVwOiBhbnksIGluZGV4OiBudW1iZXIpOiBib29sZWFuIHtcclxuICAgIC8vIFNob3cgYXMgZGlzYWJsZWQgaWYgc3RlcCBpcyBhY3R1YWxseSBkaXNhYmxlZFxyXG4gICAgcmV0dXJuIHN0ZXAuaXNEaXNhYmxlZCA9PT0gdHJ1ZTtcclxuICB9XHJcblxyXG4gIGlzU3RlcENvbXBsZXRlZChpbmRleDogbnVtYmVyKTogYm9vbGVhbiB7XHJcbiAgICAvLyBDaGVjayBpZiBzdGVwIGlzIG1hcmtlZCBhcyBjb21wbGV0ZWRcclxuICAgIGlmICh0aGlzLmZpZWxkKCkuZWRpdFN0ZXBwZXIgJiYgdGhpcy5maWVsZCgpLmVkaXRTdGVwcGVyW2luZGV4XSkge1xyXG4gICAgICByZXR1cm4gdGhpcy5maWVsZCgpLmVkaXRTdGVwcGVyW2luZGV4XS5pc0NvbXBsZXRlZCA9PT0gdHJ1ZTtcclxuICAgIH1cclxuICAgIHJldHVybiBmYWxzZTtcclxuICB9XHJcblxyXG4gIGlzU3RlcEFjdGl2ZShpbmRleDogbnVtYmVyKTogYm9vbGVhbiB7XHJcbiAgICAvLyBDaGVjayBpZiBzdGVwIGlzIG1hcmtlZCBhcyBhY3RpdmVcclxuICAgIGlmICh0aGlzLmZpZWxkKCkuZWRpdFN0ZXBwZXIgJiYgdGhpcy5maWVsZCgpLmVkaXRTdGVwcGVyW2luZGV4XSkge1xyXG4gICAgICByZXR1cm4gdGhpcy5maWVsZCgpLmVkaXRTdGVwcGVyW2luZGV4XS5pc0FjdGl2ZSA9PT0gdHJ1ZTtcclxuICAgIH1cclxuICAgIHJldHVybiBmYWxzZTtcclxuICB9XHJcblxyXG4gIGVtaXRBY3RpdmVTdGVwT25Mb2FkKCkge1xyXG4gICAgLy8gQXV0b21hdGljYWxseSBlbWl0IHRoZSBhY3RpdmUgc3RlcCB3aGVuIGNvbXBvbmVudCBsb2Fkc1xyXG4gICAgaWYgKHRoaXMuZmllbGQoKS5lZGl0U3RlcHBlciAmJiB0aGlzLnNlbGVjdGVkU3RlcEluZGV4ID49IDApIHtcclxuICAgICAgY29uc3QgYWN0aXZlU3RlcCA9IHRoaXMuZmllbGQoKS5lZGl0U3RlcHBlclt0aGlzLnNlbGVjdGVkU3RlcEluZGV4XTtcclxuICAgICAgaWYgKGFjdGl2ZVN0ZXApIHtcclxuICAgICAgICBjb25zdCBzdGVwRGF0YSA9IHtcclxuICAgICAgICAgIHN0ZXA6IGFjdGl2ZVN0ZXAsXHJcbiAgICAgICAgICBpbmRleDogdGhpcy5zZWxlY3RlZFN0ZXBJbmRleCxcclxuICAgICAgICAgIGxhYmVsOiBhY3RpdmVTdGVwLmRpc3BsYXlMYWJlbCxcclxuICAgICAgICAgIHZhbHVlOiBhY3RpdmVTdGVwLnZhbHVlIHx8IGFjdGl2ZVN0ZXAuZGlzcGxheUxhYmVsXHJcbiAgICAgICAgfTtcclxuICAgICAgICB0aGlzLnNlbGVjdGVkU3RlcC5lbWl0KHN0ZXBEYXRhKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8gTWV0aG9kIHRvIHByb2dyYW1tYXRpY2FsbHkgbW92ZSB0byB0aGUgbmV4dCBzdGVwXHJcbiAgbW92ZVRvTmV4dFN0ZXAoKSB7XHJcbiAgICBpZiAodGhpcy5zZWxlY3RlZFN0ZXBJbmRleCA8IHRoaXMuZmllbGQoKS5lZGl0U3RlcHBlci5sZW5ndGggLSAxKSB7XHJcbiAgICAgIHRoaXMubW92ZVRvU3RlcCh0aGlzLnNlbGVjdGVkU3RlcEluZGV4ICsgMSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyBNZXRob2QgdG8gcHJvZ3JhbW1hdGljYWxseSBtb3ZlIHRvIHRoZSBwcmV2aW91cyBzdGVwXHJcbiAgbW92ZVRvUHJldmlvdXNTdGVwKCkge1xyXG4gICAgaWYgKHRoaXMuc2VsZWN0ZWRTdGVwSW5kZXggPiAwKSB7XHJcbiAgICAgIHRoaXMubW92ZVRvU3RlcCh0aGlzLnNlbGVjdGVkU3RlcEluZGV4IC0gMSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyBNZXRob2QgdG8gcHJvZ3JhbW1hdGljYWxseSBtb3ZlIHRvIGEgc3BlY2lmaWMgc3RlcFxyXG4gIG1vdmVUb1N0ZXAoc3RlcEluZGV4OiBudW1iZXIpIHtcclxuICAgIGlmIChzdGVwSW5kZXggPj0gMCAmJiBzdGVwSW5kZXggPCB0aGlzLmZpZWxkKCkuZWRpdFN0ZXBwZXIubGVuZ3RoKSB7XHJcbiAgICAgIC8vIFVwZGF0ZSBzdGVwIHN0YXRlc1xyXG4gICAgICB0aGlzLmZpZWxkKCkuZWRpdFN0ZXBwZXIuZm9yRWFjaCgoc3RlcDogYW55LCBpbmRleDogbnVtYmVyKSA9PiB7XHJcbiAgICAgICAgaWYgKGluZGV4IDwgc3RlcEluZGV4KSB7XHJcbiAgICAgICAgICAvLyBNYXJrIHByZXZpb3VzIHN0ZXBzIGFzIGNvbXBsZXRlZFxyXG4gICAgICAgICAgc3RlcC5pc0NvbXBsZXRlZCA9IHRydWU7XHJcbiAgICAgICAgICBzdGVwLmlzQWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgICBzdGVwLmlzRGlzYWJsZWQgPSBmYWxzZTtcclxuICAgICAgICB9IGVsc2UgaWYgKGluZGV4ID09PSBzdGVwSW5kZXgpIHtcclxuICAgICAgICAgIC8vIE1hcmsgY3VycmVudCBzdGVwIGFzIGFjdGl2ZVxyXG4gICAgICAgICAgc3RlcC5pc0NvbXBsZXRlZCA9IGZhbHNlO1xyXG4gICAgICAgICAgc3RlcC5pc0FjdGl2ZSA9IHRydWU7XHJcbiAgICAgICAgICBzdGVwLmlzRGlzYWJsZWQgPSBmYWxzZTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgLy8gTWFyayBmdXR1cmUgc3RlcHMgYXMgcGVuZGluZy9kaXNhYmxlZFxyXG4gICAgICAgICAgc3RlcC5pc0NvbXBsZXRlZCA9IGZhbHNlO1xyXG4gICAgICAgICAgc3RlcC5pc0FjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgICAgc3RlcC5pc0Rpc2FibGVkID0gdHJ1ZTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG5cclxuICAgICAgdGhpcy5zZWxlY3RlZFN0ZXBJbmRleCA9IHN0ZXBJbmRleDtcclxuICAgICAgXHJcbiAgICAgIC8vIEVtaXQgdGhlIHN0ZXAgY2hhbmdlXHJcbiAgICAgIGNvbnN0IHN0ZXBEYXRhID0ge1xyXG4gICAgICAgIHN0ZXA6IHRoaXMuZmllbGQoKS5lZGl0U3RlcHBlcltzdGVwSW5kZXhdLFxyXG4gICAgICAgIGluZGV4OiBzdGVwSW5kZXgsXHJcbiAgICAgICAgbGFiZWw6IHRoaXMuZmllbGQoKS5lZGl0U3RlcHBlcltzdGVwSW5kZXhdLmRpc3BsYXlMYWJlbCxcclxuICAgICAgICB2YWx1ZTogdGhpcy5maWVsZCgpLmVkaXRTdGVwcGVyW3N0ZXBJbmRleF0udmFsdWUgfHwgdGhpcy5maWVsZCgpLmVkaXRTdGVwcGVyW3N0ZXBJbmRleF0uZGlzcGxheUxhYmVsXHJcbiAgICAgIH07XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRTdGVwLmVtaXQoc3RlcERhdGEpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8gTWV0aG9kIHRvIGNvbXBsZXRlIGN1cnJlbnQgc3RlcCBhbmQgbW92ZSB0byBuZXh0XHJcbiAgY29tcGxldGVDdXJyZW50U3RlcEFuZE1vdmVOZXh0KCkge1xyXG4gICAgaWYgKHRoaXMuc2VsZWN0ZWRTdGVwSW5kZXggPj0gMCAmJiB0aGlzLnNlbGVjdGVkU3RlcEluZGV4IDwgdGhpcy5maWVsZCgpLmVkaXRTdGVwcGVyLmxlbmd0aCAtIDEpIHtcclxuICAgICAgLy8gTWFyayBjdXJyZW50IHN0ZXAgYXMgY29tcGxldGVkXHJcbiAgICAgIHRoaXMuZmllbGQoKS5lZGl0U3RlcHBlclt0aGlzLnNlbGVjdGVkU3RlcEluZGV4XS5pc0NvbXBsZXRlZCA9IHRydWU7XHJcbiAgICAgIHRoaXMuZmllbGQoKS5lZGl0U3RlcHBlclt0aGlzLnNlbGVjdGVkU3RlcEluZGV4XS5pc0FjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICBcclxuICAgICAgLy8gTW92ZSB0byBuZXh0IHN0ZXBcclxuICAgICAgdGhpcy5tb3ZlVG9OZXh0U3RlcCgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8gTWV0aG9kIHRvIHdhdGNoIGZvciBleHRlcm5hbCBzdGVwIGNoYW5nZXMgKGNhbiBiZSBjYWxsZWQgZnJvbSBwYXJlbnQpXHJcbiAgdXBkYXRlU3RlcEZyb21FeHRlcm5hbChzdGVwVmFsdWU6IHN0cmluZykge1xyXG4gICAgaWYgKHRoaXMuZmllbGQoKS5lZGl0U3RlcHBlcikge1xyXG4gICAgICBjb25zdCBzdGVwSW5kZXggPSB0aGlzLmZpZWxkKCkuZWRpdFN0ZXBwZXIuZmluZEluZGV4KChzdGVwOiBhbnkpID0+IFxyXG4gICAgICAgIHN0ZXAuZGlzcGxheUxhYmVsID09PSBzdGVwVmFsdWUgfHwgc3RlcC52YWx1ZSA9PT0gc3RlcFZhbHVlXHJcbiAgICAgICk7XHJcbiAgICAgIFxyXG4gICAgICBpZiAoc3RlcEluZGV4ID49IDAgJiYgc3RlcEluZGV4ICE9PSB0aGlzLnNlbGVjdGVkU3RlcEluZGV4KSB7XHJcbiAgICAgICAgdGhpcy5tb3ZlVG9TdGVwKHN0ZXBJbmRleCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIEF1dG8tcHJvZ3Jlc3Npb24gbWV0aG9kc1xyXG4gIHN0YXJ0QXV0b1Byb2dyZXNzaW9uKCkge1xyXG4gICAgaWYgKHRoaXMuYXV0b1Byb2dyZXNzVGltZXIpIHtcclxuICAgICAgY2xlYXJJbnRlcnZhbCh0aGlzLmF1dG9Qcm9ncmVzc1RpbWVyKTtcclxuICAgIH1cclxuICAgIFxyXG4gICAgdGhpcy5hdXRvUHJvZ3Jlc3NUaW1lciA9IHNldEludGVydmFsKCgpID0+IHtcclxuICAgICAgdGhpcy5tb3ZlVG9OZXh0U3RlcCgpO1xyXG4gICAgICBcclxuICAgICAgLy8gU3RvcCBhdXRvLXByb2dyZXNzaW9uIHdoZW4gcmVhY2hpbmcgdGhlIGxhc3Qgc3RlcFxyXG4gICAgICBpZiAodGhpcy5zZWxlY3RlZFN0ZXBJbmRleCA+PSB0aGlzLmZpZWxkKCkuZWRpdFN0ZXBwZXIubGVuZ3RoIC0gMSkge1xyXG4gICAgICAgIHRoaXMuc3RvcEF1dG9Qcm9ncmVzc2lvbigpO1xyXG4gICAgICB9XHJcbiAgICB9LCB0aGlzLmF1dG9Qcm9ncmVzc0RlbGF5KCkpO1xyXG4gIH1cclxuXHJcbiAgc3RvcEF1dG9Qcm9ncmVzc2lvbigpIHtcclxuICAgIGlmICh0aGlzLmF1dG9Qcm9ncmVzc1RpbWVyKSB7XHJcbiAgICAgIGNsZWFySW50ZXJ2YWwodGhpcy5hdXRvUHJvZ3Jlc3NUaW1lcik7XHJcbiAgICAgIHRoaXMuYXV0b1Byb2dyZXNzVGltZXIgPSBudWxsO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8gTWV0aG9kIHRvIHJlc2V0IHN0ZXBwZXIgdG8gZmlyc3Qgc3RlcFxyXG4gIHJlc2V0VG9GaXJzdFN0ZXAoKSB7XHJcbiAgICB0aGlzLnN0b3BBdXRvUHJvZ3Jlc3Npb24oKTtcclxuICAgIHRoaXMubW92ZVRvU3RlcCgwKTtcclxuICAgIFxyXG4gICAgaWYgKHRoaXMuYXV0b1Byb2dyZXNzKCkpIHtcclxuICAgICAgdGhpcy5zdGFydEF1dG9Qcm9ncmVzc2lvbigpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCI8ZGl2ICpuZ0lmPVwiZmllbGQoKSAmJiBmaWVsZCgpPy5pc1Zpc2libGVcIiBzdHlsZT1cInpvb206IDAuODU7XCI+XHJcbiAgPG1hdC1zdGVwcGVyICNzdGVwcGVySGVhZGVyPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgc3RlcHMgb2YgZmllbGQoKS5lZGl0U3RlcHBlcjsgbGV0IGkgPSBpbmRleFwiPlxyXG4gICAgICA8bWF0LXN0ZXAgXHJcbiAgICAgICAgKm5nSWY9XCJzdGVwcy5pc0Rpc3BsYXkgIT09IGZhbHNlXCJcclxuICAgICAgICBbY29tcGxldGVkXT1cImZhbHNlXCJcclxuICAgICAgICBbb3B0aW9uYWxdPVwiZmFsc2VcIj5cclxuICAgICAgICA8bmctdGVtcGxhdGUgbWF0U3RlcExhYmVsPlxyXG4gICAgICAgICAgPGRpdiBcclxuICAgICAgICAgICAgY2xhc3M9XCJzdGVwLWNvbnRhaW5lclwiXHJcbiAgICAgICAgICAgIFtjbGFzcy5zdGVwLWRpc2FibGVkXT1cInNob3VsZFNob3dBc0Rpc2FibGVkKHN0ZXBzLCBpKVwiXHJcbiAgICAgICAgICAgIFtjbGFzcy5zdGVwLWFjdGl2ZV09XCJpc1N0ZXBBY3RpdmUoaSlcIlxyXG4gICAgICAgICAgICBbY2xhc3Muc3RlcC1jb21wbGV0ZWRdPVwiaXNTdGVwQ29tcGxldGVkKGkpXCJcclxuICAgICAgICAgICAgW2NsYXNzLnN0ZXAtY29sbGFwc2VkXT1cIiFzaG91bGRTaG93TGFiZWwoaSlcIlxyXG4gICAgICAgICAgICAoY2xpY2spPVwib25TdGVwQ2xpY2soc3RlcHMsIGkpXCI+XHJcbiAgICAgICAgICAgIDxzcGFuIFxyXG4gICAgICAgICAgICAgIGNsYXNzPVwic3RlcC1jaXJjbGVcIlxyXG4gICAgICAgICAgICAgIFtjbGFzcy5jaXJjbGUtZGlzYWJsZWRdPVwic2hvdWxkU2hvd0FzRGlzYWJsZWQoc3RlcHMsIGkpXCJcclxuICAgICAgICAgICAgICBbY2xhc3MuY2lyY2xlLWFjdGl2ZV09XCJpc1N0ZXBBY3RpdmUoaSlcIlxyXG4gICAgICAgICAgICAgIFtjbGFzcy5jaXJjbGUtY29tcGxldGVkXT1cImlzU3RlcENvbXBsZXRlZChpKVwiPlxyXG4gICAgICAgICAgICAgIHt7aSArIDF9fVxyXG4gICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgIDxzcGFuIFxyXG4gICAgICAgICAgICAgIGNsYXNzPVwic3RlcC1sYWJlbCBteC0yXCJcclxuICAgICAgICAgICAgICBbY2xhc3MubGFiZWwtZGlzYWJsZWRdPVwic2hvdWxkU2hvd0FzRGlzYWJsZWQoc3RlcHMsIGkpXCJcclxuICAgICAgICAgICAgICBbY2xhc3MubGFiZWwtYWN0aXZlXT1cImlzU3RlcEFjdGl2ZShpKVwiXHJcbiAgICAgICAgICAgICAgW2NsYXNzLmxhYmVsLWNvbXBsZXRlZF09XCJpc1N0ZXBDb21wbGV0ZWQoaSlcIlxyXG4gICAgICAgICAgICAgIFtjbGFzcy5sYWJlbC1oaWRkZW5dPVwiIXNob3VsZFNob3dMYWJlbChpKVwiPlxyXG4gICAgICAgICAgICAgIHt7c3RlcHM/LmRpc3BsYXlMYWJlbH19XHJcbiAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgPHNwYW4gXHJcbiAgICAgICAgICAgICAgY2xhc3M9XCJhcnJvd1wiIFxyXG4gICAgICAgICAgICAgIFtjbGFzcy5hcnJvdy1kaXNhYmxlZF09XCJzaG91bGRTaG93QXNEaXNhYmxlZChzdGVwcywgaSlcIlxyXG4gICAgICAgICAgICAgIFtjbGFzcy5hcnJvdy1hY3RpdmVdPVwiaXNTdGVwQWN0aXZlKGkpXCJcclxuICAgICAgICAgICAgICBbY2xhc3MuYXJyb3ctY29tcGxldGVkXT1cImlzU3RlcENvbXBsZXRlZChpKVwiXHJcbiAgICAgICAgICAgICAgKm5nSWY9XCJpIDwgZmllbGQoKS5lZGl0U3RlcHBlci5sZW5ndGggLSAxXCI+XHJcbiAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgIDwvbWF0LXN0ZXA+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuICA8L21hdC1zdGVwcGVyPlxyXG48L2Rpdj4iXX0=
|
|
@@ -4,11 +4,17 @@ import { NG_VALUE_ACCESSOR, ReactiveFormsModule } from '@angular/forms';
|
|
|
4
4
|
import { MatFormFieldModule } from '@angular/material/form-field';
|
|
5
5
|
import { MatInputModule } from '@angular/material/input';
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
7
|
-
import * as i1 from "
|
|
8
|
-
import * as i2 from "@angular/material/
|
|
9
|
-
import * as i3 from "@angular/
|
|
10
|
-
import * as i4 from "@angular/
|
|
7
|
+
import * as i1 from "../master-control.service";
|
|
8
|
+
import * as i2 from "@angular/material/input";
|
|
9
|
+
import * as i3 from "@angular/material/form-field";
|
|
10
|
+
import * as i4 from "@angular/common";
|
|
11
|
+
import * as i5 from "@angular/forms";
|
|
11
12
|
export class SubscriptTextboxComponent {
|
|
13
|
+
masterService;
|
|
14
|
+
constructor(masterService) {
|
|
15
|
+
this.masterService = masterService;
|
|
16
|
+
}
|
|
17
|
+
isShowMandatoryValidation = false;
|
|
12
18
|
inputValue = null;
|
|
13
19
|
field = input.required();
|
|
14
20
|
reactiveFormControlobject = input();
|
|
@@ -30,19 +36,22 @@ export class SubscriptTextboxComponent {
|
|
|
30
36
|
;
|
|
31
37
|
onInputChange(event) {
|
|
32
38
|
this.inputValue = event.target.value;
|
|
39
|
+
this.masterService.onInputChangeRegexValidation(this.field(), event.target.value);
|
|
40
|
+
this.isShowMandatoryValidation = this.masterService.checkIfValueIsEmpty(event.target.value);
|
|
33
41
|
this._onChange(this.inputValue);
|
|
34
42
|
}
|
|
35
43
|
onInputBlur() {
|
|
44
|
+
this.isShowMandatoryValidation = this.masterService.checkIfValueIsEmpty(this.inputValue);
|
|
36
45
|
this._unTouched();
|
|
37
46
|
}
|
|
38
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SubscriptTextboxComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
47
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SubscriptTextboxComponent, deps: [{ token: i1.MasterControlService }], target: i0.ɵɵFactoryTarget.Component });
|
|
39
48
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: SubscriptTextboxComponent, isStandalone: true, selector: "lib-subscript-textbox", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, reactiveFormControlobject: { classPropertyName: "reactiveFormControlobject", publicName: "reactiveFormControlobject", isSignal: true, isRequired: false, transformFunction: null } }, providers: [
|
|
40
49
|
{
|
|
41
50
|
provide: NG_VALUE_ACCESSOR,
|
|
42
51
|
useExisting: SubscriptTextboxComponent,
|
|
43
52
|
multi: true
|
|
44
53
|
}
|
|
45
|
-
], ngImport: i0, template: "<label\r\n class=\"field-lable\"\r\n *ngIf=\"field() && field()?.isVisible && field().isShowLabel\"\r\n >{{ field()?.label\r\n }}<span style=\"color: red\" *ngIf=\"field() && field()?.validators?.isRequired\"\r\n >*</span\r\n ></label\r\n>\r\n<mat-form-field\r\n class=\"w-100\"\r\n appearance=\"outline\"\r\n *ngIf=\"field() && field()?.isVisible\"\r\n [ngStyle]=\"{\r\n'--custom-border-color': field()?.controlStyle?.borderColor ,\r\n'--custom-border-width': field()?.controlStyle?.borderWidth ,\r\n'--custom-border-radius': field()?.controlStyle?.borderRadius ,\r\n'--custom-bg-color': field()?.controlStyle?.background ,\r\n'--custom-border-color-focus': field()?.controlStyle?.focusBorderColor ,\r\n'--custom-border-width-focus': field()?.controlStyle?.focusBorderWidth ,\r\n'--custom-bg-color-focus': field()?.controlStyle?.focusBackground ,\r\n'--custom-border-color-hover': field()?.controlStyle?.hoverBorderColor ,\r\n'--custom-border-width-hover': field()?.controlStyle?.hoverBorderWidth ,\r\n'--custom-border-color-error': field()?.controlStyle?.errorBorderColor ,\r\n'--custom-border-width-error': field()?.controlStyle?.errorBorderWidth ,\r\n'--custom-font-size': field()?.controlStyle?.fontSize ,\r\n'--custom-font-weight': field()?.controlStyle?.fontWeight ,\r\n'--custom-font-family': field()?.controlStyle?.fontFamily ,\r\n'--custom-font-color': field()?.controlStyle?.color ,\r\n'--custom-caret-color': field()?.controlStyle?.caretColor ,\r\n'--custom-font-color-disabled' : field()?.controlStyle?.disableColor ,\r\n'--custom-bg-color-disabled' : field()?.controlStyle?.disableBackground ,\r\n}\"\r\n>\r\n @if(reactiveFormControlobject()) {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [maxLength]=\"field()?.validators?.maxLength\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n [formControl]=\"reactiveFormControlobject()\"\r\n />\r\n }@else {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [maxLength]=\"field()?.validators?.maxLength\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n />\r\n }\r\n\r\n <p class=\"years-text\" *ngIf=\"inputValue\">Years</p>\r\n <p class=\"textbox-subscript\">till 2026</p>\r\n <mat-error *ngIf=\"false\">\r\n {{ field()?.validators?.isRequiredMessage }}\r\n </mat-error>\r\n</mat-form-field>\r\n<div>\r\n <span class=\"below-input-text\">{{field()?.configData?.subscriptText}}</span>\r\n</div>\r\n<div class=\"error-message\" *ngIf=\"
|
|
54
|
+
], ngImport: i0, template: "<label\r\n class=\"field-lable\"\r\n *ngIf=\"field() && field()?.isVisible && field().isShowLabel\"\r\n >{{ field()?.label\r\n }}<span style=\"color: red\" *ngIf=\"field() && field()?.validators?.isRequired\"\r\n >*</span\r\n ></label\r\n>\r\n<mat-form-field\r\n class=\"w-100\"\r\n appearance=\"outline\"\r\n *ngIf=\"field() && field()?.isVisible\"\r\n [ngStyle]=\"{\r\n'--custom-border-color': field()?.controlStyle?.borderColor ,\r\n'--custom-border-width': field()?.controlStyle?.borderWidth ,\r\n'--custom-border-radius': field()?.controlStyle?.borderRadius ,\r\n'--custom-bg-color': field()?.controlStyle?.background ,\r\n'--custom-border-color-focus': field()?.controlStyle?.focusBorderColor ,\r\n'--custom-border-width-focus': field()?.controlStyle?.focusBorderWidth ,\r\n'--custom-bg-color-focus': field()?.controlStyle?.focusBackground ,\r\n'--custom-border-color-hover': field()?.controlStyle?.hoverBorderColor ,\r\n'--custom-border-width-hover': field()?.controlStyle?.hoverBorderWidth ,\r\n'--custom-border-color-error': field()?.controlStyle?.errorBorderColor ,\r\n'--custom-border-width-error': field()?.controlStyle?.errorBorderWidth ,\r\n'--custom-font-size': field()?.controlStyle?.fontSize ,\r\n'--custom-font-weight': field()?.controlStyle?.fontWeight ,\r\n'--custom-font-family': field()?.controlStyle?.fontFamily ,\r\n'--custom-font-color': field()?.controlStyle?.color ,\r\n'--custom-caret-color': field()?.controlStyle?.caretColor ,\r\n'--custom-font-color-disabled' : field()?.controlStyle?.disableColor ,\r\n'--custom-bg-color-disabled' : field()?.controlStyle?.disableBackground ,\r\n}\"\r\n>\r\n @if(reactiveFormControlobject()) {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [maxLength]=\"field()?.validators?.maxLength\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n [formControl]=\"reactiveFormControlobject()\"\r\n />\r\n }@else {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [maxLength]=\"field()?.validators?.maxLength\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n />\r\n }\r\n\r\n <p class=\"years-text\" *ngIf=\"inputValue\">Years</p>\r\n <p class=\"textbox-subscript\">till 2026</p>\r\n <mat-error *ngIf=\"false\">\r\n {{ field()?.validators?.isRequiredMessage }}\r\n </mat-error>\r\n</mat-form-field>\r\n<div>\r\n <span class=\"below-input-text\">{{field()?.configData?.subscriptText}}</span>\r\n</div>\r\n<div class=\"error-message\" *ngIf=\"isShowMandatoryValidation && field()?.configData?.isTriggerValidation && (field()?.validators?.requiredMessage)\">\r\n {{ field()?.validators?.requiredMessage }}.\r\n</div>\r\n<div class=\"error-message\" *ngIf=\"isShowMandatoryValidation && field()?.configData?.isTriggerValidation && field()?.configData?.isInvalidPattern && !masterService.checkIfValueIsEmpty(field()?.validators?.patternMessage)\">\r\n {{ field()?.validators?.patternMessage }}.\r\n</div>\r\n\r\n", styles: [".field-lable{font-size:12px!important;font-weight:700!important;color:#444!important;margin-bottom:0!important}*{font-family:mulish!important}.years-text{position:absolute;left:5%;bottom:5px;font-size:14px}.error-message{color:red}.below-input-text{font-weight:400;font-size:12px;color:#444;font-family:Mulish}.textbox-subscript{color:#8f8f8f;font-size:14px;font-weight:400;position:absolute;left:15%;bottom:5px}::ng-deep .mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--focused .mat-mdc-notch-piece{border-color:var(--custom-border-color-focus, #ffbb00)!important;border-width:var(--custom-border-width-focus, 1.5px)!important}::ng-deep .mat-mdc-form-field{background-color:var(--custom-bg-color, #ffffff)!important;border-radius:var(--custom-border-radius , 4px)!important}::ng-deep .mdc-text-field--outlined:not(.mdc-text-field--disabled):not(.mdc-text-field--focused):hover .mdc-notched-outline .mdc-notched-outline__leading{border-color:var(--custom-border-color-hover, #ffbb00)!important;border-width:var(--custom-border-width-hover, 1.5px)!important}::ng-deep .mdc-text-field--outlined:not(.mdc-text-field--disabled):not(.mdc-text-field--focused):hover .mdc-notched-outline .mdc-notched-outline__notch{border-color:var(--custom-border-color-hover, #ffbb00)!important;border-width:var(--custom-border-width-hover, 1.5px)!important}::ng-deep .mdc-text-field--outlined:not(.mdc-text-field--disabled):not(.mdc-text-field--focused):hover .mdc-notched-outline .mdc-notched-outline__trailing{border-color:var(--custom-border-color-hover, #ffbb00)!important;border-width:var(--custom-border-width-hover, 1.5px)!important}::ng-deep .mdc-text-field--outlined .mat-mdc-notch-piece{border-color:var(--custom-border-color, #dddddd)!important;border-width:var(--custom-border-width, 1.5px)!important}::ng-deep .mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-text-field__input{caret-color:var(--custom-caret-color, #ffbb00)!important;font-size:12px!important;font-weight:var(--custom-font-weight, 400)!important;font-family:var(--custom-font-family, \"Mulish\")!important;color:var(--custom-font-color, #444444)!important}::ng-deep .mat-form-field-invalid .mdc-text-field--outlined .mat-mdc-notch-piece{border-color:var(--custom-border-color-error, red)!important;border-width:var(--custom-border-width-error, 1.5px)!important}::ng-deep .mat-mdc-form-field.mat-form-field-disabled{background:var(--custom-bg-color-disabled, #ECECEC)!important}::ng-deep .mdc-text-field--outlined.mdc-text-field--disabled .mdc-text-field__input{color:var(--custom-font-color-disabled, #999999)!important}::ng-deep .mdc-label{color:var(--custom-font-color, #444)!important;font-size:var(--custom-font-size, 16px)!important;font-weight:var(--custom-font-weight, 400)!important;font-family:var(--custom-font-family, \"Mulish\")!important}::placeholder{color:#8f8f8f!important;font-size:12px!important}::ng-deep .mat-mdc-form-field-hint-wrapper{padding:0!important}::ng-deep .mat-mdc-form-field-error-wrapper{padding:0!important}::ng-deep .mat-mdc-form-field-error{color:#e00!important;font-size:12px;font-weight:500;font-family:Mulish!important;letter-spacing:0}::ng-deep .mdc-text-field--outlined{--mdc-outlined-text-field-container-shape: var(--custom-border-radius , 4px) !important}::ng-deep .mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--invalid .mat-mdc-notch-piece{border-color:var(--custom-border-color-error, red)!important;border-width:var(--custom-border-width-error, 1.5px)!important}::ng-deep .mat-mdc-form-field-subscript-wrapper{display:none!important}\n"], dependencies: [{ kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i2.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i5.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }, { kind: "directive", type: i5.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }] });
|
|
46
55
|
}
|
|
47
56
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SubscriptTextboxComponent, decorators: [{
|
|
48
57
|
type: Component,
|
|
@@ -57,6 +66,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
57
66
|
useExisting: SubscriptTextboxComponent,
|
|
58
67
|
multi: true
|
|
59
68
|
}
|
|
60
|
-
], template: "<label\r\n class=\"field-lable\"\r\n *ngIf=\"field() && field()?.isVisible && field().isShowLabel\"\r\n >{{ field()?.label\r\n }}<span style=\"color: red\" *ngIf=\"field() && field()?.validators?.isRequired\"\r\n >*</span\r\n ></label\r\n>\r\n<mat-form-field\r\n class=\"w-100\"\r\n appearance=\"outline\"\r\n *ngIf=\"field() && field()?.isVisible\"\r\n [ngStyle]=\"{\r\n'--custom-border-color': field()?.controlStyle?.borderColor ,\r\n'--custom-border-width': field()?.controlStyle?.borderWidth ,\r\n'--custom-border-radius': field()?.controlStyle?.borderRadius ,\r\n'--custom-bg-color': field()?.controlStyle?.background ,\r\n'--custom-border-color-focus': field()?.controlStyle?.focusBorderColor ,\r\n'--custom-border-width-focus': field()?.controlStyle?.focusBorderWidth ,\r\n'--custom-bg-color-focus': field()?.controlStyle?.focusBackground ,\r\n'--custom-border-color-hover': field()?.controlStyle?.hoverBorderColor ,\r\n'--custom-border-width-hover': field()?.controlStyle?.hoverBorderWidth ,\r\n'--custom-border-color-error': field()?.controlStyle?.errorBorderColor ,\r\n'--custom-border-width-error': field()?.controlStyle?.errorBorderWidth ,\r\n'--custom-font-size': field()?.controlStyle?.fontSize ,\r\n'--custom-font-weight': field()?.controlStyle?.fontWeight ,\r\n'--custom-font-family': field()?.controlStyle?.fontFamily ,\r\n'--custom-font-color': field()?.controlStyle?.color ,\r\n'--custom-caret-color': field()?.controlStyle?.caretColor ,\r\n'--custom-font-color-disabled' : field()?.controlStyle?.disableColor ,\r\n'--custom-bg-color-disabled' : field()?.controlStyle?.disableBackground ,\r\n}\"\r\n>\r\n @if(reactiveFormControlobject()) {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [maxLength]=\"field()?.validators?.maxLength\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n [formControl]=\"reactiveFormControlobject()\"\r\n />\r\n }@else {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [maxLength]=\"field()?.validators?.maxLength\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n />\r\n }\r\n\r\n <p class=\"years-text\" *ngIf=\"inputValue\">Years</p>\r\n <p class=\"textbox-subscript\">till 2026</p>\r\n <mat-error *ngIf=\"false\">\r\n {{ field()?.validators?.isRequiredMessage }}\r\n </mat-error>\r\n</mat-form-field>\r\n<div>\r\n <span class=\"below-input-text\">{{field()?.configData?.subscriptText}}</span>\r\n</div>\r\n<div class=\"error-message\" *ngIf=\"
|
|
61
|
-
}] });
|
|
62
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Vic2NyaXB0LXRleHRib3guY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWFzdGVyLWNvbnRyb2wvc3JjL2xpYi9zdWJzY3JpcHQtdGV4dGJveC9zdWJzY3JpcHQtdGV4dGJveC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXN0ZXItY29udHJvbC9zcmMvbGliL3N1YnNjcmlwdC10ZXh0Ym94L3N1YnNjcmlwdC10ZXh0Ym94LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7Ozs7OztBQXFCekQsTUFBTSxPQUFPLHlCQUF5QjtJQUNyQyxVQUFVLEdBQVEsSUFBSSxDQUFDO0lBQ3RCLEtBQUssR0FBUyxLQUFLLENBQUMsUUFBUSxFQUFPLENBQUM7SUFDcEMseUJBQXlCLEdBQVMsS0FBSyxFQUFPLENBQUM7SUFFL0MsU0FBUyxHQUFRLENBQUMsVUFBYyxFQUFFLEVBQUUsR0FBRSxDQUFDLENBQUM7SUFDeEMsVUFBVSxHQUFRLEdBQUcsRUFBRSxHQUFFLENBQUMsQ0FBQztJQUUzQixVQUFVLENBQUMsR0FBUTtRQUNqQixJQUFJLENBQUMsVUFBVSxHQUFDLEdBQUcsQ0FBQztJQUN0QixDQUFDO0lBQUEsQ0FBQztJQUNGLGdCQUFnQixDQUFDLEVBQU87UUFDdEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUM7SUFDdEIsQ0FBQztJQUFBLENBQUM7SUFDRixpQkFBaUIsQ0FBQyxFQUFPO1FBQ3ZCLElBQUksQ0FBQyxVQUFVLEdBQUcsRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFBQSxDQUFDO0lBQ0YsZ0JBQWdCLENBQUUsVUFBbUIsSUFBUSxDQUFDO0lBQUEsQ0FBQztJQUUvQyxhQUFhLENBQUMsS0FBVTtRQUN0QixJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDO1FBQ3JDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQ3BCLENBQUM7d0dBMUJVLHlCQUF5Qjs0RkFBekIseUJBQXlCLDJYQVJ4QjtZQUNSO2dCQUNFLE9BQU8sRUFBRSxpQkFBaUI7Z0JBQzFCLFdBQVcsRUFBRSx5QkFBeUI7Z0JBQ3RDLEtBQUssRUFBRSxJQUFJO2FBQ1o7U0FDRiwwQkN2QkwsdzRHQXFGQSw2a0hEM0VJLGNBQWMsa3BCQUNkLGtCQUFrQiw4QkFDbEIsWUFBWSx1TkFDWixtQkFBbUI7OzRGQVlWLHlCQUF5QjtrQkFuQnJDLFNBQVM7K0JBQ0UsdUJBQXVCLGNBQ3JCLElBQUksV0FDUDt3QkFDUCxjQUFjO3dCQUNkLGtCQUFrQjt3QkFDbEIsWUFBWTt3QkFDWixtQkFBbUI7cUJBQ3BCLGFBR1c7d0JBQ1I7NEJBQ0UsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVywyQkFBMkI7NEJBQ3RDLEtBQUssRUFBRSxJQUFJO3lCQUNaO3FCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBpbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBOR19WQUxVRV9BQ0NFU1NPUiwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgTWF0Rm9ybUZpZWxkTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZCc7XHJcbmltcG9ydCB7IE1hdElucHV0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWItc3Vic2NyaXB0LXRleHRib3gnLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW1xyXG4gICAgTWF0SW5wdXRNb2R1bGUsXHJcbiAgICBNYXRGb3JtRmllbGRNb2R1bGUgLFxyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZVxyXG4gIF0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3N1YnNjcmlwdC10ZXh0Ym94LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybDogJy4vc3Vic2NyaXB0LXRleHRib3guY29tcG9uZW50LmNzcycsXHJcbiAgIHByb3ZpZGVyczogW1xyXG4gICAgICB7XHJcbiAgICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXHJcbiAgICAgICAgdXNlRXhpc3Rpbmc6IFN1YnNjcmlwdFRleHRib3hDb21wb25lbnQsXHJcbiAgICAgICAgbXVsdGk6IHRydWVcclxuICAgICAgfVxyXG4gICAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgU3Vic2NyaXB0VGV4dGJveENvbXBvbmVudCB7XHJcbiBpbnB1dFZhbHVlOiBhbnkgPSBudWxsO1xyXG4gIGZpZWxkIDogYW55ID0gaW5wdXQucmVxdWlyZWQ8YW55PigpO1xyXG4gIHJlYWN0aXZlRm9ybUNvbnRyb2xvYmplY3QgOiBhbnkgPSBpbnB1dDxhbnk+KCk7XHJcblxyXG4gIF9vbkNoYW5nZTogYW55ID0gKGlucHV0VmFsdWU6YW55KSA9PiB7fTtcclxuICBfdW5Ub3VjaGVkOiBhbnkgPSAoKSA9PiB7fTtcclxuXHJcbiAgd3JpdGVWYWx1ZShvYmo6IGFueSk6IHZvaWR7XHJcbiAgICB0aGlzLmlucHV0VmFsdWU9b2JqO1xyXG4gIH07XHJcbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZHtcclxuICAgIHRoaXMuX29uQ2hhbmdlID0gZm47XHJcbiAgfTtcclxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZHtcclxuICAgIHRoaXMuX3VuVG91Y2hlZCA9IGZuO1xyXG4gIH07XHJcbiAgc2V0RGlzYWJsZWRTdGF0ZT8oaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWR7fTtcclxuXHJcbiAgb25JbnB1dENoYW5nZShldmVudDogYW55KTogdm9pZCB7XHJcbiAgICB0aGlzLmlucHV0VmFsdWUgPSBldmVudC50YXJnZXQudmFsdWU7XHJcbiAgICB0aGlzLl9vbkNoYW5nZSh0aGlzLmlucHV0VmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgb25JbnB1dEJsdXIoKTogdm9pZCB7XHJcbiAgICB0aGlzLl91blRvdWNoZWQoKTtcclxuICB9XHJcbn1cclxuIiwiPGxhYmVsXHJcbiAgY2xhc3M9XCJmaWVsZC1sYWJsZVwiXHJcbiAgKm5nSWY9XCJmaWVsZCgpICYmIGZpZWxkKCk/LmlzVmlzaWJsZSAmJiBmaWVsZCgpLmlzU2hvd0xhYmVsXCJcclxuICA+e3sgZmllbGQoKT8ubGFiZWxcclxuICB9fTxzcGFuIHN0eWxlPVwiY29sb3I6IHJlZFwiICpuZ0lmPVwiZmllbGQoKSAmJiBmaWVsZCgpPy52YWxpZGF0b3JzPy5pc1JlcXVpcmVkXCJcclxuICAgID4qPC9zcGFuXHJcbiAgPjwvbGFiZWxcclxuPlxyXG48bWF0LWZvcm0tZmllbGRcclxuICBjbGFzcz1cInctMTAwXCJcclxuICBhcHBlYXJhbmNlPVwib3V0bGluZVwiXHJcbiAgKm5nSWY9XCJmaWVsZCgpICYmIGZpZWxkKCk/LmlzVmlzaWJsZVwiXHJcbiAgW25nU3R5bGVdPVwie1xyXG4nLS1jdXN0b20tYm9yZGVyLWNvbG9yJzogZmllbGQoKT8uY29udHJvbFN0eWxlPy5ib3JkZXJDb2xvciAsXHJcbictLWN1c3RvbS1ib3JkZXItd2lkdGgnOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmJvcmRlcldpZHRoICxcclxuJy0tY3VzdG9tLWJvcmRlci1yYWRpdXMnOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmJvcmRlclJhZGl1cyAsXHJcbictLWN1c3RvbS1iZy1jb2xvcic6IGZpZWxkKCk/LmNvbnRyb2xTdHlsZT8uYmFja2dyb3VuZCAsXHJcbictLWN1c3RvbS1ib3JkZXItY29sb3ItZm9jdXMnOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmZvY3VzQm9yZGVyQ29sb3IgLFxyXG4nLS1jdXN0b20tYm9yZGVyLXdpZHRoLWZvY3VzJzogZmllbGQoKT8uY29udHJvbFN0eWxlPy5mb2N1c0JvcmRlcldpZHRoICxcclxuJy0tY3VzdG9tLWJnLWNvbG9yLWZvY3VzJzogZmllbGQoKT8uY29udHJvbFN0eWxlPy5mb2N1c0JhY2tncm91bmQgLFxyXG4nLS1jdXN0b20tYm9yZGVyLWNvbG9yLWhvdmVyJzogZmllbGQoKT8uY29udHJvbFN0eWxlPy5ob3ZlckJvcmRlckNvbG9yICxcclxuJy0tY3VzdG9tLWJvcmRlci13aWR0aC1ob3Zlcic6IGZpZWxkKCk/LmNvbnRyb2xTdHlsZT8uaG92ZXJCb3JkZXJXaWR0aCAsXHJcbictLWN1c3RvbS1ib3JkZXItY29sb3ItZXJyb3InOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmVycm9yQm9yZGVyQ29sb3IgLFxyXG4nLS1jdXN0b20tYm9yZGVyLXdpZHRoLWVycm9yJzogZmllbGQoKT8uY29udHJvbFN0eWxlPy5lcnJvckJvcmRlcldpZHRoICxcclxuJy0tY3VzdG9tLWZvbnQtc2l6ZSc6IGZpZWxkKCk/LmNvbnRyb2xTdHlsZT8uZm9udFNpemUgLFxyXG4nLS1jdXN0b20tZm9udC13ZWlnaHQnOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmZvbnRXZWlnaHQgLFxyXG4nLS1jdXN0b20tZm9udC1mYW1pbHknOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmZvbnRGYW1pbHkgLFxyXG4nLS1jdXN0b20tZm9udC1jb2xvcic6IGZpZWxkKCk/LmNvbnRyb2xTdHlsZT8uY29sb3IgLFxyXG4nLS1jdXN0b20tY2FyZXQtY29sb3InOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmNhcmV0Q29sb3IgLFxyXG4nLS1jdXN0b20tZm9udC1jb2xvci1kaXNhYmxlZCcgOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmRpc2FibGVDb2xvciAsXHJcbictLWN1c3RvbS1iZy1jb2xvci1kaXNhYmxlZCcgOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmRpc2FibGVCYWNrZ3JvdW5kICxcclxufVwiXHJcbj5cclxuICBAaWYocmVhY3RpdmVGb3JtQ29udHJvbG9iamVjdCgpKSB7XHJcbiAgPGlucHV0XHJcbiAgICBtYXRJbnB1dFxyXG4gICAgYXV0b2NvbXBsZXRlPVwibm9uZVwiXHJcbiAgICBbdHlwZV09XCJmaWVsZCgpPy5jb250cm9sVHlwZVwiXHJcbiAgICBbbmFtZV09XCJmaWVsZCgpPy5maWVsZE5hbWVcIlxyXG4gICAgW2lkXT1cImZpZWxkKCk/LmZpZWxkTmFtZVwiXHJcbiAgICBbcGxhY2Vob2xkZXJdPVwiZmllbGQoKT8ucGxhY2VIb2xkZXJcIlxyXG4gICAgW21heExlbmd0aF09XCJmaWVsZCgpPy52YWxpZGF0b3JzPy5tYXhMZW5ndGhcIlxyXG4gICAgW21pbkxlbmd0aF09XCJmaWVsZCgpPy52YWxpZGF0b3JzPy5taW5MZW5ndGhcIlxyXG4gICAgW2Rpc2FibGVkXT1cImZpZWxkKCk/LmlzRGlzYWJsZVwiXHJcbiAgICBbcmVxdWlyZWRdPVwiZmllbGQoKT8udmFsaWRhdG9ycz8uaXNSZXF1aXJlZFwiXHJcbiAgICBbcGF0dGVybl09XCJmaWVsZCgpPy52YWxpZGF0b3JzPy5wYXR0ZXJuXCJcclxuICAgIChpbnB1dCk9XCJvbklucHV0Q2hhbmdlKCRldmVudClcIlxyXG4gICAgKGJsdXIpPVwib25JbnB1dEJsdXIoKVwiXHJcbiAgICBbdmFsdWVdPVwiaW5wdXRWYWx1ZVwiXHJcbiAgICBbZm9ybUNvbnRyb2xdPVwicmVhY3RpdmVGb3JtQ29udHJvbG9iamVjdCgpXCJcclxuICAvPlxyXG4gIH1AZWxzZSB7XHJcbiAgPGlucHV0XHJcbiAgICBtYXRJbnB1dFxyXG4gICAgYXV0b2NvbXBsZXRlPVwibm9uZVwiXHJcbiAgICBbdHlwZV09XCJmaWVsZCgpPy5jb250cm9sVHlwZVwiXHJcbiAgICBbbmFtZV09XCJmaWVsZCgpPy5maWVsZE5hbWVcIlxyXG4gICAgW2lkXT1cImZpZWxkKCk/LmZpZWxkTmFtZVwiXHJcbiAgICBbcGxhY2Vob2xkZXJdPVwiZmllbGQoKT8ucGxhY2VIb2xkZXJcIlxyXG4gICAgW21heExlbmd0aF09XCJmaWVsZCgpPy52YWxpZGF0b3JzPy5tYXhMZW5ndGhcIlxyXG4gICAgW21pbkxlbmd0aF09XCJmaWVsZCgpPy52YWxpZGF0b3JzPy5taW5MZW5ndGhcIlxyXG4gICAgW2Rpc2FibGVkXT1cImZpZWxkKCk/LmlzRGlzYWJsZVwiXHJcbiAgICBbcmVxdWlyZWRdPVwiZmllbGQoKT8udmFsaWRhdG9ycz8uaXNSZXF1aXJlZFwiXHJcbiAgICBbcGF0dGVybl09XCJmaWVsZCgpPy52YWxpZGF0b3JzPy5wYXR0ZXJuXCJcclxuICAgIChpbnB1dCk9XCJvbklucHV0Q2hhbmdlKCRldmVudClcIlxyXG4gICAgKGJsdXIpPVwib25JbnB1dEJsdXIoKVwiXHJcbiAgICBbdmFsdWVdPVwiaW5wdXRWYWx1ZVwiXHJcbiAgLz5cclxuICB9XHJcblxyXG4gIDxwIGNsYXNzPVwieWVhcnMtdGV4dFwiICpuZ0lmPVwiaW5wdXRWYWx1ZVwiPlllYXJzPC9wPlxyXG4gIDxwIGNsYXNzPVwidGV4dGJveC1zdWJzY3JpcHRcIj50aWxsIDIwMjY8L3A+XHJcbiAgPG1hdC1lcnJvciAqbmdJZj1cImZhbHNlXCI+XHJcbiAgICB7eyBmaWVsZCgpPy52YWxpZGF0b3JzPy5pc1JlcXVpcmVkTWVzc2FnZSB9fVxyXG4gIDwvbWF0LWVycm9yPlxyXG48L21hdC1mb3JtLWZpZWxkPlxyXG48ZGl2PlxyXG4gPHNwYW4gY2xhc3M9XCJiZWxvdy1pbnB1dC10ZXh0XCI+e3tmaWVsZCgpPy5jb25maWdEYXRhPy5zdWJzY3JpcHRUZXh0fX08L3NwYW4+XHJcbjwvZGl2PlxyXG48ZGl2IGNsYXNzPVwiZXJyb3ItbWVzc2FnZVwiICpuZ0lmPVwiZmFsc2VcIj5cclxuICB7eyBmaWVsZCgpPy52YWxpZGF0b3JzPy5pc1JlcXVpcmVkTWVzc2FnZSB9fS5cclxuPC9kaXY+XHJcbjxkaXYgY2xhc3M9XCJlcnJvci1tZXNzYWdlXCIgKm5nSWY9XCJmYWxzZVwiPlxyXG4gIHt7IGZpZWxkKCk/LnZhbGlkYXRvcnM/LnBhdHRlcm5NZXNzYWdlIH19LlxyXG48L2Rpdj5cclxuIl19
|
|
69
|
+
], template: "<label\r\n class=\"field-lable\"\r\n *ngIf=\"field() && field()?.isVisible && field().isShowLabel\"\r\n >{{ field()?.label\r\n }}<span style=\"color: red\" *ngIf=\"field() && field()?.validators?.isRequired\"\r\n >*</span\r\n ></label\r\n>\r\n<mat-form-field\r\n class=\"w-100\"\r\n appearance=\"outline\"\r\n *ngIf=\"field() && field()?.isVisible\"\r\n [ngStyle]=\"{\r\n'--custom-border-color': field()?.controlStyle?.borderColor ,\r\n'--custom-border-width': field()?.controlStyle?.borderWidth ,\r\n'--custom-border-radius': field()?.controlStyle?.borderRadius ,\r\n'--custom-bg-color': field()?.controlStyle?.background ,\r\n'--custom-border-color-focus': field()?.controlStyle?.focusBorderColor ,\r\n'--custom-border-width-focus': field()?.controlStyle?.focusBorderWidth ,\r\n'--custom-bg-color-focus': field()?.controlStyle?.focusBackground ,\r\n'--custom-border-color-hover': field()?.controlStyle?.hoverBorderColor ,\r\n'--custom-border-width-hover': field()?.controlStyle?.hoverBorderWidth ,\r\n'--custom-border-color-error': field()?.controlStyle?.errorBorderColor ,\r\n'--custom-border-width-error': field()?.controlStyle?.errorBorderWidth ,\r\n'--custom-font-size': field()?.controlStyle?.fontSize ,\r\n'--custom-font-weight': field()?.controlStyle?.fontWeight ,\r\n'--custom-font-family': field()?.controlStyle?.fontFamily ,\r\n'--custom-font-color': field()?.controlStyle?.color ,\r\n'--custom-caret-color': field()?.controlStyle?.caretColor ,\r\n'--custom-font-color-disabled' : field()?.controlStyle?.disableColor ,\r\n'--custom-bg-color-disabled' : field()?.controlStyle?.disableBackground ,\r\n}\"\r\n>\r\n @if(reactiveFormControlobject()) {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [maxLength]=\"field()?.validators?.maxLength\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n [formControl]=\"reactiveFormControlobject()\"\r\n />\r\n }@else {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [maxLength]=\"field()?.validators?.maxLength\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n />\r\n }\r\n\r\n <p class=\"years-text\" *ngIf=\"inputValue\">Years</p>\r\n <p class=\"textbox-subscript\">till 2026</p>\r\n <mat-error *ngIf=\"false\">\r\n {{ field()?.validators?.isRequiredMessage }}\r\n </mat-error>\r\n</mat-form-field>\r\n<div>\r\n <span class=\"below-input-text\">{{field()?.configData?.subscriptText}}</span>\r\n</div>\r\n<div class=\"error-message\" *ngIf=\"isShowMandatoryValidation && field()?.configData?.isTriggerValidation && (field()?.validators?.requiredMessage)\">\r\n {{ field()?.validators?.requiredMessage }}.\r\n</div>\r\n<div class=\"error-message\" *ngIf=\"isShowMandatoryValidation && field()?.configData?.isTriggerValidation && field()?.configData?.isInvalidPattern && !masterService.checkIfValueIsEmpty(field()?.validators?.patternMessage)\">\r\n {{ field()?.validators?.patternMessage }}.\r\n</div>\r\n\r\n", styles: [".field-lable{font-size:12px!important;font-weight:700!important;color:#444!important;margin-bottom:0!important}*{font-family:mulish!important}.years-text{position:absolute;left:5%;bottom:5px;font-size:14px}.error-message{color:red}.below-input-text{font-weight:400;font-size:12px;color:#444;font-family:Mulish}.textbox-subscript{color:#8f8f8f;font-size:14px;font-weight:400;position:absolute;left:15%;bottom:5px}::ng-deep .mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--focused .mat-mdc-notch-piece{border-color:var(--custom-border-color-focus, #ffbb00)!important;border-width:var(--custom-border-width-focus, 1.5px)!important}::ng-deep .mat-mdc-form-field{background-color:var(--custom-bg-color, #ffffff)!important;border-radius:var(--custom-border-radius , 4px)!important}::ng-deep .mdc-text-field--outlined:not(.mdc-text-field--disabled):not(.mdc-text-field--focused):hover .mdc-notched-outline .mdc-notched-outline__leading{border-color:var(--custom-border-color-hover, #ffbb00)!important;border-width:var(--custom-border-width-hover, 1.5px)!important}::ng-deep .mdc-text-field--outlined:not(.mdc-text-field--disabled):not(.mdc-text-field--focused):hover .mdc-notched-outline .mdc-notched-outline__notch{border-color:var(--custom-border-color-hover, #ffbb00)!important;border-width:var(--custom-border-width-hover, 1.5px)!important}::ng-deep .mdc-text-field--outlined:not(.mdc-text-field--disabled):not(.mdc-text-field--focused):hover .mdc-notched-outline .mdc-notched-outline__trailing{border-color:var(--custom-border-color-hover, #ffbb00)!important;border-width:var(--custom-border-width-hover, 1.5px)!important}::ng-deep .mdc-text-field--outlined .mat-mdc-notch-piece{border-color:var(--custom-border-color, #dddddd)!important;border-width:var(--custom-border-width, 1.5px)!important}::ng-deep .mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-text-field__input{caret-color:var(--custom-caret-color, #ffbb00)!important;font-size:12px!important;font-weight:var(--custom-font-weight, 400)!important;font-family:var(--custom-font-family, \"Mulish\")!important;color:var(--custom-font-color, #444444)!important}::ng-deep .mat-form-field-invalid .mdc-text-field--outlined .mat-mdc-notch-piece{border-color:var(--custom-border-color-error, red)!important;border-width:var(--custom-border-width-error, 1.5px)!important}::ng-deep .mat-mdc-form-field.mat-form-field-disabled{background:var(--custom-bg-color-disabled, #ECECEC)!important}::ng-deep .mdc-text-field--outlined.mdc-text-field--disabled .mdc-text-field__input{color:var(--custom-font-color-disabled, #999999)!important}::ng-deep .mdc-label{color:var(--custom-font-color, #444)!important;font-size:var(--custom-font-size, 16px)!important;font-weight:var(--custom-font-weight, 400)!important;font-family:var(--custom-font-family, \"Mulish\")!important}::placeholder{color:#8f8f8f!important;font-size:12px!important}::ng-deep .mat-mdc-form-field-hint-wrapper{padding:0!important}::ng-deep .mat-mdc-form-field-error-wrapper{padding:0!important}::ng-deep .mat-mdc-form-field-error{color:#e00!important;font-size:12px;font-weight:500;font-family:Mulish!important;letter-spacing:0}::ng-deep .mdc-text-field--outlined{--mdc-outlined-text-field-container-shape: var(--custom-border-radius , 4px) !important}::ng-deep .mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--invalid .mat-mdc-notch-piece{border-color:var(--custom-border-color-error, red)!important;border-width:var(--custom-border-width-error, 1.5px)!important}::ng-deep .mat-mdc-form-field-subscript-wrapper{display:none!important}\n"] }]
|
|
70
|
+
}], ctorParameters: () => [{ type: i1.MasterControlService }] });
|
|
71
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Vic2NyaXB0LXRleHRib3guY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWFzdGVyLWNvbnRyb2wvc3JjL2xpYi9zdWJzY3JpcHQtdGV4dGJveC9zdWJzY3JpcHQtdGV4dGJveC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXN0ZXItY29udHJvbC9zcmMvbGliL3N1YnNjcmlwdC10ZXh0Ym94L3N1YnNjcmlwdC10ZXh0Ym94LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7Ozs7Ozs7QUFzQnpELE1BQU0sT0FBTyx5QkFBeUI7SUFDakI7SUFBbkIsWUFBbUIsYUFBb0M7UUFBcEMsa0JBQWEsR0FBYixhQUFhLENBQXVCO0lBQUUsQ0FBQztJQUMxRCx5QkFBeUIsR0FBUyxLQUFLLENBQUM7SUFDekMsVUFBVSxHQUFRLElBQUksQ0FBQztJQUN0QixLQUFLLEdBQVMsS0FBSyxDQUFDLFFBQVEsRUFBTyxDQUFDO0lBQ3BDLHlCQUF5QixHQUFTLEtBQUssRUFBTyxDQUFDO0lBRS9DLFNBQVMsR0FBUSxDQUFDLFVBQWMsRUFBRSxFQUFFLEdBQUUsQ0FBQyxDQUFDO0lBQ3hDLFVBQVUsR0FBUSxHQUFHLEVBQUUsR0FBRSxDQUFDLENBQUM7SUFFM0IsVUFBVSxDQUFDLEdBQVE7UUFDakIsSUFBSSxDQUFDLFVBQVUsR0FBQyxHQUFHLENBQUM7SUFDdEIsQ0FBQztJQUFBLENBQUM7SUFDRixnQkFBZ0IsQ0FBQyxFQUFPO1FBQ3RCLElBQUksQ0FBQyxTQUFTLEdBQUcsRUFBRSxDQUFDO0lBQ3RCLENBQUM7SUFBQSxDQUFDO0lBQ0YsaUJBQWlCLENBQUMsRUFBTztRQUN2QixJQUFJLENBQUMsVUFBVSxHQUFHLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBQUEsQ0FBQztJQUNGLGdCQUFnQixDQUFFLFVBQW1CLElBQVEsQ0FBQztJQUFBLENBQUM7SUFFL0MsYUFBYSxDQUFDLEtBQVU7UUFDdEIsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQztRQUNyQyxJQUFJLENBQUMsYUFBYSxDQUFDLDRCQUE0QixDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsRUFBRSxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFBO1FBQ2pGLElBQUksQ0FBQyx5QkFBeUIsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLG1CQUFtQixDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUE7UUFDM0YsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMseUJBQXlCLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDekYsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQ3BCLENBQUM7d0dBL0JVLHlCQUF5Qjs0RkFBekIseUJBQXlCLDJYQVJ4QjtZQUNSO2dCQUNFLE9BQU8sRUFBRSxpQkFBaUI7Z0JBQzFCLFdBQVcsRUFBRSx5QkFBeUI7Z0JBQ3RDLEtBQUssRUFBRSxJQUFJO2FBQ1o7U0FDRiwwQkN4Qkwsd3FIQXNGQSw2a0hEM0VJLGNBQWMsa3BCQUNkLGtCQUFrQiw4QkFDbEIsWUFBWSx1TkFDWixtQkFBbUI7OzRGQVlWLHlCQUF5QjtrQkFuQnJDLFNBQVM7K0JBQ0UsdUJBQXVCLGNBQ3JCLElBQUksV0FDUDt3QkFDUCxjQUFjO3dCQUNkLGtCQUFrQjt3QkFDbEIsWUFBWTt3QkFDWixtQkFBbUI7cUJBQ3BCLGFBR1c7d0JBQ1I7NEJBQ0UsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVywyQkFBMkI7NEJBQ3RDLEtBQUssRUFBRSxJQUFJO3lCQUNaO3FCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBpbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBOR19WQUxVRV9BQ0NFU1NPUiwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgTWF0Rm9ybUZpZWxkTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZCc7XHJcbmltcG9ydCB7IE1hdElucHV0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xyXG5pbXBvcnQgeyBNYXN0ZXJDb250cm9sU2VydmljZSB9IGZyb20gJy4uL21hc3Rlci1jb250cm9sLnNlcnZpY2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWItc3Vic2NyaXB0LXRleHRib3gnLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW1xyXG4gICAgTWF0SW5wdXRNb2R1bGUsXHJcbiAgICBNYXRGb3JtRmllbGRNb2R1bGUgLFxyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZVxyXG4gIF0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3N1YnNjcmlwdC10ZXh0Ym94LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybDogJy4vc3Vic2NyaXB0LXRleHRib3guY29tcG9uZW50LmNzcycsXHJcbiAgIHByb3ZpZGVyczogW1xyXG4gICAgICB7XHJcbiAgICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXHJcbiAgICAgICAgdXNlRXhpc3Rpbmc6IFN1YnNjcmlwdFRleHRib3hDb21wb25lbnQsXHJcbiAgICAgICAgbXVsdGk6IHRydWVcclxuICAgICAgfVxyXG4gICAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgU3Vic2NyaXB0VGV4dGJveENvbXBvbmVudCB7XHJcbiAgY29uc3RydWN0b3IocHVibGljIG1hc3RlclNlcnZpY2UgOiBNYXN0ZXJDb250cm9sU2VydmljZSl7fVxyXG4gIGlzU2hvd01hbmRhdG9yeVZhbGlkYXRpb24gOiBhbnkgPSBmYWxzZTtcclxuIGlucHV0VmFsdWU6IGFueSA9IG51bGw7XHJcbiAgZmllbGQgOiBhbnkgPSBpbnB1dC5yZXF1aXJlZDxhbnk+KCk7XHJcbiAgcmVhY3RpdmVGb3JtQ29udHJvbG9iamVjdCA6IGFueSA9IGlucHV0PGFueT4oKTtcclxuXHJcbiAgX29uQ2hhbmdlOiBhbnkgPSAoaW5wdXRWYWx1ZTphbnkpID0+IHt9O1xyXG4gIF91blRvdWNoZWQ6IGFueSA9ICgpID0+IHt9O1xyXG5cclxuICB3cml0ZVZhbHVlKG9iajogYW55KTogdm9pZHtcclxuICAgIHRoaXMuaW5wdXRWYWx1ZT1vYmo7XHJcbiAgfTtcclxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lke1xyXG4gICAgdGhpcy5fb25DaGFuZ2UgPSBmbjtcclxuICB9O1xyXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lke1xyXG4gICAgdGhpcy5fdW5Ub3VjaGVkID0gZm47XHJcbiAgfTtcclxuICBzZXREaXNhYmxlZFN0YXRlPyhpc0Rpc2FibGVkOiBib29sZWFuKTogdm9pZHt9O1xyXG5cclxuICBvbklucHV0Q2hhbmdlKGV2ZW50OiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMuaW5wdXRWYWx1ZSA9IGV2ZW50LnRhcmdldC52YWx1ZTtcclxuICAgIHRoaXMubWFzdGVyU2VydmljZS5vbklucHV0Q2hhbmdlUmVnZXhWYWxpZGF0aW9uKHRoaXMuZmllbGQoKSwgZXZlbnQudGFyZ2V0LnZhbHVlKVxyXG4gICAgdGhpcy5pc1Nob3dNYW5kYXRvcnlWYWxpZGF0aW9uID0gdGhpcy5tYXN0ZXJTZXJ2aWNlLmNoZWNrSWZWYWx1ZUlzRW1wdHkoZXZlbnQudGFyZ2V0LnZhbHVlKVxyXG4gICAgdGhpcy5fb25DaGFuZ2UodGhpcy5pbnB1dFZhbHVlKTtcclxuICB9XHJcblxyXG4gIG9uSW5wdXRCbHVyKCk6IHZvaWQge1xyXG4gICAgdGhpcy5pc1Nob3dNYW5kYXRvcnlWYWxpZGF0aW9uID0gdGhpcy5tYXN0ZXJTZXJ2aWNlLmNoZWNrSWZWYWx1ZUlzRW1wdHkodGhpcy5pbnB1dFZhbHVlKTtcclxuICAgIHRoaXMuX3VuVG91Y2hlZCgpO1xyXG4gIH1cclxufVxyXG4iLCI8bGFiZWxcclxuICBjbGFzcz1cImZpZWxkLWxhYmxlXCJcclxuICAqbmdJZj1cImZpZWxkKCkgJiYgZmllbGQoKT8uaXNWaXNpYmxlICYmIGZpZWxkKCkuaXNTaG93TGFiZWxcIlxyXG4gID57eyBmaWVsZCgpPy5sYWJlbFxyXG4gIH19PHNwYW4gc3R5bGU9XCJjb2xvcjogcmVkXCIgKm5nSWY9XCJmaWVsZCgpICYmIGZpZWxkKCk/LnZhbGlkYXRvcnM/LmlzUmVxdWlyZWRcIlxyXG4gICAgPio8L3NwYW5cclxuICA+PC9sYWJlbFxyXG4+XHJcbjxtYXQtZm9ybS1maWVsZFxyXG4gIGNsYXNzPVwidy0xMDBcIlxyXG4gIGFwcGVhcmFuY2U9XCJvdXRsaW5lXCJcclxuICAqbmdJZj1cImZpZWxkKCkgJiYgZmllbGQoKT8uaXNWaXNpYmxlXCJcclxuICBbbmdTdHlsZV09XCJ7XHJcbictLWN1c3RvbS1ib3JkZXItY29sb3InOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmJvcmRlckNvbG9yICxcclxuJy0tY3VzdG9tLWJvcmRlci13aWR0aCc6IGZpZWxkKCk/LmNvbnRyb2xTdHlsZT8uYm9yZGVyV2lkdGggLFxyXG4nLS1jdXN0b20tYm9yZGVyLXJhZGl1cyc6IGZpZWxkKCk/LmNvbnRyb2xTdHlsZT8uYm9yZGVyUmFkaXVzICxcclxuJy0tY3VzdG9tLWJnLWNvbG9yJzogZmllbGQoKT8uY29udHJvbFN0eWxlPy5iYWNrZ3JvdW5kICxcclxuJy0tY3VzdG9tLWJvcmRlci1jb2xvci1mb2N1cyc6IGZpZWxkKCk/LmNvbnRyb2xTdHlsZT8uZm9jdXNCb3JkZXJDb2xvciAsXHJcbictLWN1c3RvbS1ib3JkZXItd2lkdGgtZm9jdXMnOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmZvY3VzQm9yZGVyV2lkdGggLFxyXG4nLS1jdXN0b20tYmctY29sb3ItZm9jdXMnOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmZvY3VzQmFja2dyb3VuZCAsXHJcbictLWN1c3RvbS1ib3JkZXItY29sb3ItaG92ZXInOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmhvdmVyQm9yZGVyQ29sb3IgLFxyXG4nLS1jdXN0b20tYm9yZGVyLXdpZHRoLWhvdmVyJzogZmllbGQoKT8uY29udHJvbFN0eWxlPy5ob3ZlckJvcmRlcldpZHRoICxcclxuJy0tY3VzdG9tLWJvcmRlci1jb2xvci1lcnJvcic6IGZpZWxkKCk/LmNvbnRyb2xTdHlsZT8uZXJyb3JCb3JkZXJDb2xvciAsXHJcbictLWN1c3RvbS1ib3JkZXItd2lkdGgtZXJyb3InOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmVycm9yQm9yZGVyV2lkdGggLFxyXG4nLS1jdXN0b20tZm9udC1zaXplJzogZmllbGQoKT8uY29udHJvbFN0eWxlPy5mb250U2l6ZSAsXHJcbictLWN1c3RvbS1mb250LXdlaWdodCc6IGZpZWxkKCk/LmNvbnRyb2xTdHlsZT8uZm9udFdlaWdodCAsXHJcbictLWN1c3RvbS1mb250LWZhbWlseSc6IGZpZWxkKCk/LmNvbnRyb2xTdHlsZT8uZm9udEZhbWlseSAsXHJcbictLWN1c3RvbS1mb250LWNvbG9yJzogZmllbGQoKT8uY29udHJvbFN0eWxlPy5jb2xvciAsXHJcbictLWN1c3RvbS1jYXJldC1jb2xvcic6IGZpZWxkKCk/LmNvbnRyb2xTdHlsZT8uY2FyZXRDb2xvciAsXHJcbictLWN1c3RvbS1mb250LWNvbG9yLWRpc2FibGVkJyA6IGZpZWxkKCk/LmNvbnRyb2xTdHlsZT8uZGlzYWJsZUNvbG9yICxcclxuJy0tY3VzdG9tLWJnLWNvbG9yLWRpc2FibGVkJyA6IGZpZWxkKCk/LmNvbnRyb2xTdHlsZT8uZGlzYWJsZUJhY2tncm91bmQgLFxyXG59XCJcclxuPlxyXG4gIEBpZihyZWFjdGl2ZUZvcm1Db250cm9sb2JqZWN0KCkpIHtcclxuICA8aW5wdXRcclxuICAgIG1hdElucHV0XHJcbiAgICBhdXRvY29tcGxldGU9XCJub25lXCJcclxuICAgIFt0eXBlXT1cImZpZWxkKCk/LmNvbnRyb2xUeXBlXCJcclxuICAgIFtuYW1lXT1cImZpZWxkKCk/LmZpZWxkTmFtZVwiXHJcbiAgICBbaWRdPVwiZmllbGQoKT8uZmllbGROYW1lXCJcclxuICAgIFtwbGFjZWhvbGRlcl09XCJmaWVsZCgpPy5wbGFjZUhvbGRlclwiXHJcbiAgICBbbWF4TGVuZ3RoXT1cImZpZWxkKCk/LnZhbGlkYXRvcnM/Lm1heExlbmd0aFwiXHJcbiAgICBbbWluTGVuZ3RoXT1cImZpZWxkKCk/LnZhbGlkYXRvcnM/Lm1pbkxlbmd0aFwiXHJcbiAgICBbZGlzYWJsZWRdPVwiZmllbGQoKT8uaXNEaXNhYmxlXCJcclxuICAgIFtyZXF1aXJlZF09XCJmaWVsZCgpPy52YWxpZGF0b3JzPy5pc1JlcXVpcmVkXCJcclxuICAgIFtwYXR0ZXJuXT1cImZpZWxkKCk/LnZhbGlkYXRvcnM/LnBhdHRlcm5cIlxyXG4gICAgKGlucHV0KT1cIm9uSW5wdXRDaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICAoYmx1cik9XCJvbklucHV0Qmx1cigpXCJcclxuICAgIFt2YWx1ZV09XCJpbnB1dFZhbHVlXCJcclxuICAgIFtmb3JtQ29udHJvbF09XCJyZWFjdGl2ZUZvcm1Db250cm9sb2JqZWN0KClcIlxyXG4gIC8+XHJcbiAgfUBlbHNlIHtcclxuICA8aW5wdXRcclxuICAgIG1hdElucHV0XHJcbiAgICBhdXRvY29tcGxldGU9XCJub25lXCJcclxuICAgIFt0eXBlXT1cImZpZWxkKCk/LmNvbnRyb2xUeXBlXCJcclxuICAgIFtuYW1lXT1cImZpZWxkKCk/LmZpZWxkTmFtZVwiXHJcbiAgICBbaWRdPVwiZmllbGQoKT8uZmllbGROYW1lXCJcclxuICAgIFtwbGFjZWhvbGRlcl09XCJmaWVsZCgpPy5wbGFjZUhvbGRlclwiXHJcbiAgICBbbWF4TGVuZ3RoXT1cImZpZWxkKCk/LnZhbGlkYXRvcnM/Lm1heExlbmd0aFwiXHJcbiAgICBbbWluTGVuZ3RoXT1cImZpZWxkKCk/LnZhbGlkYXRvcnM/Lm1pbkxlbmd0aFwiXHJcbiAgICBbZGlzYWJsZWRdPVwiZmllbGQoKT8uaXNEaXNhYmxlXCJcclxuICAgIFtyZXF1aXJlZF09XCJmaWVsZCgpPy52YWxpZGF0b3JzPy5pc1JlcXVpcmVkXCJcclxuICAgIFtwYXR0ZXJuXT1cImZpZWxkKCk/LnZhbGlkYXRvcnM/LnBhdHRlcm5cIlxyXG4gICAgKGlucHV0KT1cIm9uSW5wdXRDaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICAoYmx1cik9XCJvbklucHV0Qmx1cigpXCJcclxuICAgIFt2YWx1ZV09XCJpbnB1dFZhbHVlXCJcclxuICAvPlxyXG4gIH1cclxuXHJcbiAgPHAgY2xhc3M9XCJ5ZWFycy10ZXh0XCIgKm5nSWY9XCJpbnB1dFZhbHVlXCI+WWVhcnM8L3A+XHJcbiAgPHAgY2xhc3M9XCJ0ZXh0Ym94LXN1YnNjcmlwdFwiPnRpbGwgMjAyNjwvcD5cclxuICA8bWF0LWVycm9yICpuZ0lmPVwiZmFsc2VcIj5cclxuICAgIHt7IGZpZWxkKCk/LnZhbGlkYXRvcnM/LmlzUmVxdWlyZWRNZXNzYWdlIH19XHJcbiAgPC9tYXQtZXJyb3I+XHJcbjwvbWF0LWZvcm0tZmllbGQ+XHJcbjxkaXY+XHJcbiA8c3BhbiBjbGFzcz1cImJlbG93LWlucHV0LXRleHRcIj57e2ZpZWxkKCk/LmNvbmZpZ0RhdGE/LnN1YnNjcmlwdFRleHR9fTwvc3Bhbj5cclxuPC9kaXY+XHJcbjxkaXYgY2xhc3M9XCJlcnJvci1tZXNzYWdlXCIgKm5nSWY9XCJpc1Nob3dNYW5kYXRvcnlWYWxpZGF0aW9uICYmIGZpZWxkKCk/LmNvbmZpZ0RhdGE/LmlzVHJpZ2dlclZhbGlkYXRpb24gJiYgKGZpZWxkKCk/LnZhbGlkYXRvcnM/LnJlcXVpcmVkTWVzc2FnZSlcIj5cclxuICB7eyBmaWVsZCgpPy52YWxpZGF0b3JzPy5yZXF1aXJlZE1lc3NhZ2UgfX0uXHJcbjwvZGl2PlxyXG48ZGl2IGNsYXNzPVwiZXJyb3ItbWVzc2FnZVwiICpuZ0lmPVwiaXNTaG93TWFuZGF0b3J5VmFsaWRhdGlvbiAmJiBmaWVsZCgpPy5jb25maWdEYXRhPy5pc1RyaWdnZXJWYWxpZGF0aW9uICYmIGZpZWxkKCk/LmNvbmZpZ0RhdGE/LmlzSW52YWxpZFBhdHRlcm4gJiYgIW1hc3RlclNlcnZpY2UuY2hlY2tJZlZhbHVlSXNFbXB0eShmaWVsZCgpPy52YWxpZGF0b3JzPy5wYXR0ZXJuTWVzc2FnZSlcIj5cclxuICB7eyBmaWVsZCgpPy52YWxpZGF0b3JzPy5wYXR0ZXJuTWVzc2FnZSB9fS5cclxuPC9kaXY+XHJcblxyXG4iXX0=
|