lib-portal-angular 0.0.107 → 0.0.109
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.
@@ -26,6 +26,7 @@ export class InputComponent {
|
|
26
26
|
this.useCnpjMask = false;
|
27
27
|
this.useCepMask = false;
|
28
28
|
this.onlyNumbers = false;
|
29
|
+
this.onlyNumbersAndDecimals = false;
|
29
30
|
this.validateInput = false;
|
30
31
|
this.labelFontWeight = 400;
|
31
32
|
this.useMoneyMask = false; // Para ativar/desativar a máscara de moeda
|
@@ -33,6 +34,8 @@ export class InputComponent {
|
|
33
34
|
this.displayCurrencySymbol = true; // Exibir ou não o símbolo da moeda
|
34
35
|
this.prependText = "";
|
35
36
|
this.buttonText = null;
|
37
|
+
this.useLatitudeMask = false;
|
38
|
+
this.useLongitudeMask = false;
|
36
39
|
this.inputEvent = new EventEmitter();
|
37
40
|
this.changeEvent = new EventEmitter();
|
38
41
|
this.focusEvent = new EventEmitter();
|
@@ -50,13 +53,17 @@ export class InputComponent {
|
|
50
53
|
this.subscriptions = [];
|
51
54
|
}
|
52
55
|
getInputType() {
|
53
|
-
return this.onlyNumbers ? "tel" : this.type;
|
56
|
+
return (this.onlyNumbers || this.onlyNumbersAndDecimals) ? "tel" : this.type;
|
54
57
|
}
|
55
58
|
onInput(event) {
|
56
59
|
const inputElement = event.target;
|
57
60
|
let inputValue = inputElement.value;
|
58
|
-
|
59
|
-
|
61
|
+
if (this.useLatitudeMask || this.useLongitudeMask) {
|
62
|
+
inputValue = inputValue.replace(/[^0-9.,-]/g, "");
|
63
|
+
inputValue = inputValue.replace(/,/g, ".");
|
64
|
+
const parts = inputValue.split(".");
|
65
|
+
}
|
66
|
+
else if (this.onlyNumbers &&
|
60
67
|
!(this.useCpfMask ||
|
61
68
|
this.useCnpjMask ||
|
62
69
|
this.useCepMask ||
|
@@ -118,11 +125,38 @@ export class InputComponent {
|
|
118
125
|
}
|
119
126
|
}
|
120
127
|
onKeyDown(event) {
|
121
|
-
if (this.
|
128
|
+
if (this.useLatitudeMask || this.useLongitudeMask) {
|
129
|
+
const allowedKeys = [
|
130
|
+
"Backspace",
|
131
|
+
"ArrowLeft",
|
132
|
+
"ArrowRight",
|
133
|
+
"Tab",
|
134
|
+
"Delete",
|
135
|
+
"Enter",
|
136
|
+
"-",
|
137
|
+
".",
|
138
|
+
",",
|
139
|
+
];
|
140
|
+
if (!allowedKeys.includes(event.key) && !/^\d$/.test(event.key)) {
|
141
|
+
event.preventDefault();
|
142
|
+
}
|
143
|
+
}
|
144
|
+
else if (this.onlyNumbers &&
|
122
145
|
!/^\d$/.test(event.key) &&
|
123
146
|
event.key !== "Backspace" &&
|
124
147
|
event.key !== "ArrowLeft" &&
|
125
148
|
event.key !== "ArrowRight") {
|
149
|
+
event.preventDefault(); // Impede a entrada de caracteres não numéricos
|
150
|
+
}
|
151
|
+
const input = event.target;
|
152
|
+
if (this.onlyNumbersAndDecimals &&
|
153
|
+
!/^\d$/.test(event.key) &&
|
154
|
+
(event.key !== "." || input.value.includes(".")) &&
|
155
|
+
event.key !== "Backspace" &&
|
156
|
+
event.key !== "Delete" &&
|
157
|
+
event.key !== "Tab" && // Adiciona suporte ao Tab
|
158
|
+
event.key !== "ArrowLeft" &&
|
159
|
+
event.key !== "ArrowRight") {
|
126
160
|
event.preventDefault();
|
127
161
|
}
|
128
162
|
}
|
@@ -244,7 +278,7 @@ export class InputComponent {
|
|
244
278
|
this.subscriptions.forEach((sub) => sub.unsubscribe());
|
245
279
|
}
|
246
280
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: InputComponent, deps: [{ token: i1.AuthService }], target: i0.ɵɵFactoryTarget.Component }); }
|
247
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: InputComponent, selector: "argenta-custom-input", inputs: { label: "label", placeholder: "placeholder", id: "id", type: "type", disabled: "disabled", readonly: "readonly", maxlength: "maxlength", minlength: "minlength", required: "required", pattern: "pattern", autofocus: "autofocus", useCpfMask: "useCpfMask", useCnpjMask: "useCnpjMask", useCepMask: "useCepMask", onlyNumbers: "onlyNumbers", validateInput: "validateInput", labelFontWeight: "labelFontWeight", permissions: "permissions", useMoneyMask: "useMoneyMask", currencyCode: "currencyCode", displayCurrencySymbol: "displayCurrencySymbol", prependText: "prependText", buttonText: "buttonText" }, outputs: { inputEvent: "inputEvent", changeEvent: "changeEvent", focusEvent: "focusEvent", blurEvent: "blurEvent", keyupEvent: "keyupEvent", keydownEvent: "keydownEvent", keypressEvent: "keypressEvent", buttonClick: "buttonClick" }, providers: [
|
281
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: InputComponent, selector: "argenta-custom-input", inputs: { label: "label", placeholder: "placeholder", id: "id", type: "type", disabled: "disabled", readonly: "readonly", maxlength: "maxlength", minlength: "minlength", required: "required", pattern: "pattern", autofocus: "autofocus", useCpfMask: "useCpfMask", useCnpjMask: "useCnpjMask", useCepMask: "useCepMask", onlyNumbers: "onlyNumbers", onlyNumbersAndDecimals: "onlyNumbersAndDecimals", validateInput: "validateInput", labelFontWeight: "labelFontWeight", permissions: "permissions", useMoneyMask: "useMoneyMask", currencyCode: "currencyCode", displayCurrencySymbol: "displayCurrencySymbol", prependText: "prependText", buttonText: "buttonText", useLatitudeMask: "useLatitudeMask", useLongitudeMask: "useLongitudeMask" }, outputs: { inputEvent: "inputEvent", changeEvent: "changeEvent", focusEvent: "focusEvent", blurEvent: "blurEvent", keyupEvent: "keyupEvent", keydownEvent: "keydownEvent", keypressEvent: "keypressEvent", buttonClick: "buttonClick" }, providers: [
|
248
282
|
{
|
249
283
|
provide: NG_VALUE_ACCESSOR,
|
250
284
|
useExisting: forwardRef(() => InputComponent),
|
@@ -291,6 +325,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
291
325
|
type: Input
|
292
326
|
}], onlyNumbers: [{
|
293
327
|
type: Input
|
328
|
+
}], onlyNumbersAndDecimals: [{
|
329
|
+
type: Input
|
294
330
|
}], validateInput: [{
|
295
331
|
type: Input
|
296
332
|
}], labelFontWeight: [{
|
@@ -307,6 +343,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
307
343
|
type: Input
|
308
344
|
}], buttonText: [{
|
309
345
|
type: Input
|
346
|
+
}], useLatitudeMask: [{
|
347
|
+
type: Input
|
348
|
+
}], useLongitudeMask: [{
|
349
|
+
type: Input
|
310
350
|
}], inputEvent: [{
|
311
351
|
type: Output
|
312
352
|
}], changeEvent: [{
|
@@ -324,4 +364,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
324
364
|
}], buttonClick: [{
|
325
365
|
type: Output
|
326
366
|
}] } });
|
327
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbGliLXBvcnRhbC1hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy9pbXB1dC9pbnB1dC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9saWItcG9ydGFsLWFuZ3VsYXIvc3JjL2xpYi9jb21wb25lbnRzL2ltcHV0L2lucHV0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFlBQVksRUFDWixVQUFVLEVBQ1YsS0FBSyxFQUVMLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQXdCLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHekUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDhCQUE4QixDQUFDOzs7Ozs7OztBQWU3RCxNQUFNLE9BQU8sY0FBYztJQWlEekIsWUFBb0IsV0FBd0I7UUFBeEIsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFoRG5DLFVBQUssR0FBVyxlQUFlLENBQUM7UUFDaEMsZ0JBQVcsR0FBVyxFQUFFLENBQUM7UUFDekIsT0FBRSxHQUFXLFNBQVMsQ0FBQztRQUN2QixTQUFJLEdBQVcsTUFBTSxDQUFDO1FBQ3RCLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFDMUIsYUFBUSxHQUFZLEtBQUssQ0FBQztRQUMxQixjQUFTLEdBQWtCLElBQUksQ0FBQztRQUNoQyxjQUFTLEdBQWtCLElBQUksQ0FBQztRQUNoQyxhQUFRLEdBQVksS0FBSyxDQUFDO1FBQzFCLFlBQU8sR0FBa0IsSUFBSSxDQUFDO1FBQzlCLGNBQVMsR0FBWSxLQUFLLENBQUM7UUFDM0IsZUFBVSxHQUFZLEtBQUssQ0FBQztRQUM1QixnQkFBVyxHQUFZLEtBQUssQ0FBQztRQUM3QixlQUFVLEdBQVksS0FBSyxD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QixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxxQkFBcUI7c0JBQTdCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUVJLFVBQVU7c0JBQW5CLE1BQU07Z0JBQ0csV0FBVztzQkFBcEIsTUFBTTtnQkFDRyxVQUFVO3NCQUFuQixNQUFNO2dCQUVHLFNBQVM7c0JBQWxCLE1BQU07Z0JBRUcsVUFBVTtzQkFBbkIsTUFBTTtnQkFFRyxZQUFZO3NCQUFyQixNQUFNO2dCQUVHLGFBQWE7c0JBQXRCLE1BQU07Z0JBRUcsV0FBVztzQkFBcEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgZm9yd2FyZFJlZixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT3V0cHV0LFxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tIFwicnhqc1wiO1xuaW1wb3J0IHsgQXV0aFNlcnZpY2UgfSBmcm9tIFwiLi4vLi4vc2VydmljZS9hdXRoLXNlcnZpY2Uuc2VydmljZVwiO1xuaW1wb3J0IHsgQnV0dG9uQ2xhc3NlcyB9IGZyb20gXCIuLi8uLi9lbnVtL0J1dHRvbkNsYXNzZXNFbnVtXCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJhcmdlbnRhLWN1c3RvbS1pbnB1dFwiLFxuICBzdHlsZVVybHM6IFtcIi4vaW5wdXQuY29tcG9uZW50LnNjc3NcIl0sXG4gIHRlbXBsYXRlVXJsOiBcIi4vaW5wdXQuY29tcG9uZW50Lmh0bWxcIixcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBJbnB1dENvbXBvbmVudCksXG4gICAgICBtdWx0aTogdHJ1ZSxcbiAgICB9LFxuICBdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgSW5wdXRDb21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciwgT25EZXN0cm95IHtcbiAgQElucHV0KCkgbGFiZWw6IHN0cmluZyA9IFwiRGVmYXVsdCBMYWJlbFwiO1xuICBASW5wdXQoKSBwbGFjZWhvbGRlcjogc3RyaW5nID0gXCJcIjtcbiAgQElucHV0KCkgaWQ6IHN0cmluZyA9IFwiaW5wdXRJZFwiO1xuICBASW5wdXQoKSB0eXBlOiBzdHJpbmcgPSBcInRleHRcIjtcbiAgQElucHV0KCkgZGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgcmVhZG9ubHk6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgbWF4bGVuZ3RoOiBudW1iZXIgfCBudWxsID0gbnVsbDtcbiAgQElucHV0KCkgbWlubGVuZ3RoOiBudW1iZXIgfCBudWxsID0gbnVsbDtcbiAgQElucHV0KCkgcmVxdWlyZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgcGF0dGVybjogc3RyaW5nIHwgbnVsbCA9IG51bGw7XG4gIEBJbnB1dCgpIGF1dG9mb2N1czogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSB1c2VDcGZNYXNrOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIHVzZUNucGpNYXNrOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIHVzZUNlcE1hc2s6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgb25seU51bWJlcnM6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgdmFsaWRhdGVJbnB1dDogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSBsYWJlbEZvbnRXZWlnaHQ6IG51bWJlciA9IDQwMDtcbiAgQElucHV0KCkgcGVybWlzc2lvbnM6IHN0cmluZ1tdIHwgdW5kZWZpbmVkO1xuICBASW5wdXQoKSB1c2VNb25leU1hc2s6IGJvb2xlYW4gPSBmYWxzZTsgLy8gUGFyYSBhdGl2YXIvZGVzYXRpdmFyIGEgbcOhc2NhcmEgZGUgbW9lZGFcbiAgQElucHV0KCkgY3VycmVuY3lDb2RlOiBzdHJpbmcgPSBcIkJSTFwiOyAvLyBDw7NkaWdvIGRhIG1vZWRhXG4gIEBJbnB1dCgpIGRpc3BsYXlDdXJyZW5jeVN5bWJvbDogYm9vbGVhbiA9IHRydWU7IC8vIEV4aWJpciBvdSBuw6NvIG8gc8OtbWJvbG8gZGEgbW9lZGFcbiAgQElucHV0KCkgcHJlcGVuZFRleHQ6IHN0cmluZyA9IFwiXCI7XG4gIEBJbnB1dCgpIGJ1dHRvblRleHQ6IHN0cmluZyB8IG51bGwgPSBudWxsO1xuXG4gIEBPdXRwdXQoKSBpbnB1dEV2ZW50OiBFdmVudEVtaXR0ZXI8RXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxFdmVudD4oKTtcbiAgQE91dHB1dCgpIGNoYW5nZUV2ZW50OiBFdmVudEVtaXR0ZXI8RXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxFdmVudD4oKTtcbiAgQE91dHB1dCgpIGZvY3VzRXZlbnQ6IEV2ZW50RW1pdHRlcjxGb2N1c0V2ZW50PiA9XG4gICAgbmV3IEV2ZW50RW1pdHRlcjxGb2N1c0V2ZW50PigpO1xuICBAT3V0cHV0KCkgYmx1ckV2ZW50OiBFdmVudEVtaXR0ZXI8Rm9jdXNFdmVudD4gPVxuICAgIG5ldyBFdmVudEVtaXR0ZXI8Rm9jdXNFdmVudD4oKTtcbiAgQE91dHB1dCgpIGtleXVwRXZlbnQ6IEV2ZW50RW1pdHRlcjxLZXlib2FyZEV2ZW50PiA9XG4gICAgbmV3IEV2ZW50RW1pdHRlcjxLZXlib2FyZEV2ZW50PigpO1xuICBAT3V0cHV0KCkga2V5ZG93bkV2ZW50OiBFdmVudEVtaXR0ZXI8S2V5Ym9hcmRFdmVudD4gPVxuICAgIG5ldyBFdmVudEVtaXR0ZXI8S2V5Ym9hcmRFdmVudD4oKTtcbiAgQE91dHB1dCgpIGtleXByZXNzRXZlbnQ6IEV2ZW50RW1pdHRlcjxLZXlib2FyZEV2ZW50PiA9XG4gICAgbmV3IEV2ZW50RW1pdHRlcjxLZXlib2FyZEV2ZW50PigpO1xuICBAT3V0cHV0KCkgYnV0dG9uQ2xpY2s6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICBwcml2YXRlIG9uQ2hhbmdlQ2FsbGJhY2s6IChfOiBhbnkpID0+IHZvaWQgPSAoKSA9PiB7fTtcbiAgcHJpdmF0ZSBvblRvdWNoZWRDYWxsYmFjazogKCkgPT4gdm9pZCA9ICgpID0+IHt9O1xuICBCdXR0b25DbGFzc2VzID0gQnV0dG9uQ2xhc3NlcztcblxuICB2YWx1ZTogc3RyaW5nID0gXCJcIjtcbiAgc2hvd0Vycm9yTW9kYWw6IGJvb2xlYW4gPSBmYWxzZTtcbiAgZXJyb3JNZXNzYWdlOiBzdHJpbmcgPSBcIlwiO1xuXG4gIHByaXZhdGUgc3Vic2NyaXB0aW9uczogU3Vic2NyaXB0aW9uW10gPSBbXTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGF1dGhTZXJ2aWNlOiBBdXRoU2VydmljZSkge31cblxuICBnZXRJbnB1dFR5cGUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5vbmx5TnVtYmVycyA/IFwidGVsXCIgOiB0aGlzLnR5cGU7XG4gIH1cblxuICBvbklucHV0KGV2ZW50OiBFdmVudCkge1xuICAgIGNvbnN0IGlucHV0RWxlbWVudCA9IGV2ZW50LnRhcmdldCBhcyBIVE1MSW5wdXRFbGVtZW50O1xuICAgIGxldCBpbnB1dFZhbHVlID0gaW5wdXRFbGVtZW50LnZhbHVlO1xuXG4gICAgLy8gQXBsaWNhIG3DoXNjYXJhIGRlIG7Dum1lcm9zIHNlIG5lY2Vzc8OhcmlvXG4gICAgaWYgKFxuICAgICAgdGhpcy5vbmx5TnVtYmVycyAmJlxuICAgICAgIShcbiAgICAgICAgdGhpcy51c2VDcGZNYXNrIHx8XG4gICAgICAgIHRoaXMudXNlQ25wak1hc2sgfHxcbiAgICAgICAgdGhpcy51c2VDZXBNYXNrIHx8XG4gICAgICAgIHRoaXMudXNlTW9uZXlNYXNrXG4gICAgICApXG4gICAgKSB7XG4gICAgICBpbnB1dFZhbHVlID0gaW5wdXRWYWx1ZS5yZXBsYWNlKC9cXEQvZywgXCJcIik7IC8vIFJlbW92ZSB0b2RvcyBvcyBuw6NvIG51bcOpcmljb3NcbiAgICB9XG5cbiAgICAvLyBWYWxpZGHDp8OjbyBpbWVkaWF0YSBwYXJhIENQRiwgQ05QSiBvdSBDRVBcbiAgICBjb25zdCBudW1lcmljVmFsdWUgPSBpbnB1dFZhbHVlLnJlcGxhY2UoL1xcRC9nLCBcIlwiKTsgLy8gUmVtb3ZlIHRvZG9zIG9zIGNhcmFjdGVyZXMgbsOjbyBudW3DqXJpY29zXG4gICAgaWYgKHRoaXMudmFsaWRhdGVJbnB1dCkge1xuICAgICAgaWYgKFxuICAgICAgICB0aGlzLnVzZUNwZk1hc2sgJiZcbiAgICAgICAgbnVtZXJpY1ZhbHVlLmxlbmd0aCA9PT0gMTEgJiZcbiAgICAgICAgIXRoaXMudmFsaWRhdGVDcGYobnVtZXJpY1ZhbHVlKVxuICAgICAgKSB7XG4gICAgICAgIHRoaXMuY2xlYXJBbmRTaG93VmFsaWRhdGlvbkVycm9yKFxuICAgICAgICAgIFwiQ1BGIGludsOhbGlkby4gUG9yIGZhdm9yLCBpbnNpcmEgdW0gQ1BGIGNvcnJldG8uXCJcbiAgICAgICAgKTtcbiAgICAgIH0gZWxzZSBpZiAoXG4gICAgICAgIHRoaXMudXNlQ25wak1hc2sgJiZcbiAgICAgICAgbnVtZXJpY1ZhbHVlLmxlbmd0aCA9PT0gMTQgJiZcbiAgICAgICAgIXRoaXMudmFsaWRhdGVDbnBqKG51bWVyaWNWYWx1ZSlcbiAgICAgICkge1xuICAgICAgICB0aGlzLmNsZWFyQW5kU2hvd1ZhbGlkYXRpb25FcnJvcihcbiAgICAgICAgICBcIkNOUEogaW52w6FsaWRvLiBQb3IgZmF2b3IsIGluc2lyYSB1bSBDTlBKIGNvcnJldG8uXCJcbiAgICAgICAgKTtcbiAgICAgIH0gZWxzZSBpZiAoXG4gICAgICAgIHRoaXMudXNlQ2VwTWFzayAmJlxuICAgICAgICBudW1lcmljVmFsdWUubGVuZ3RoID09PSA4ICYmXG4gICAgICAgICF0aGlzLnZhbGlkYXRlQ2VwKG51bWVyaWNWYWx1ZSlcbiAgICAgICkge1xuICAgICAgICB0aGlzLmNsZWFyQW5kU2hvd1ZhbGlkYXRpb25FcnJvcihcbiAgICAgICAgICBcIkNFUCBpbnbDoWxpZG8uIFBvciBmYXZvciwgaW5zaXJhIHVtIENFUCBjb3JyZXRvLlwiXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gTcOhc2NhcmEgZGUgbW9lZGFcbiAgICBpZiAodGhpcy51c2VNb25leU1hc2spIHtcbiAgICAgIGNvbnN0IG51bWVyaWNWYWx1ZSA9IGlucHV0VmFsdWUucmVwbGFjZSgvXFxEL2csIFwiXCIpOyAvLyBSZW1vdmUgdG9kb3Mgb3MgbsOjbyBudW3DqXJpY29zXG4gICAgICBjb25zdCBmb3JtYXR0ZWRWYWx1ZSA9IHRoaXMuZm9ybWF0TW9uZXkobnVtZXJpY1ZhbHVlKTsgLy8gRm9ybWF0YSBjb21vIGRpbmhlaXJvIG91IG7Dum1lcm8gZGVjaW1hbFxuICAgICAgaW5wdXRFbGVtZW50LnZhbHVlID0gZm9ybWF0dGVkVmFsdWU7XG4gICAgICB0aGlzLnZhbHVlID0gZm9ybWF0dGVkVmFsdWU7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudmFsdWUgPSBpbnB1dFZhbHVlO1xuICAgIH1cblxuICAgIC8vIEF0dWFsaXphIG8gdmFsb3IgZSBlbWl0ZSBvIGV2ZW50byBkZSBtdWRhbsOnYVxuICAgIHRoaXMub25DaGFuZ2VDYWxsYmFjayh0aGlzLnZhbHVlKTtcbiAgICB0aGlzLmlucHV0RXZlbnQuZW1pdChldmVudCk7XG4gIH1cblxuICBwcml2YXRlIGZvcm1hdE1vbmV5KHZhbHVlOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGlmICghdmFsdWUpIHJldHVybiBcIlwiOyAvLyBTZSBvIHZhbG9yIGVzdGl2ZXIgdmF6aW8sIHJldG9ybmEgdW1hIHN0cmluZyB2YXppYVxuXG4gICAgY29uc3QgbnVtZXJpY1ZhbHVlID0gcGFyc2VGbG9hdCh2YWx1ZSkgLyAxMDA7XG5cbiAgICAvLyBWZXJpZmljYSBzZSBkZXZlIGV4aWJpciBvIHPDrW1ib2xvIGRhIG1vZWRhIG91IG7Do29cbiAgICBpZiAodGhpcy5kaXNwbGF5Q3VycmVuY3lTeW1ib2wpIHtcbiAgICAgIC8vIEZvcm1hdGEgY29tbyBtb2VkYVxuICAgICAgcmV0dXJuIG5ldyBJbnRsLk51bWJlckZvcm1hdChcInB0LUJSXCIsIHtcbiAgICAgICAgc3R5bGU6IFwiY3VycmVuY3lcIixcbiAgICAgICAgY3VycmVuY3k6IHRoaXMuY3VycmVuY3lDb2RlLFxuICAgICAgfSkuZm9ybWF0KG51bWVyaWNWYWx1ZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIEZvcm1hdGEgY29tbyBuw7ptZXJvIGRlY2ltYWwsIHNlbSBvIHPDrW1ib2xvIGRhIG1vZWRhXG4gICAgICByZXR1cm4gbmV3IEludGwuTnVtYmVyRm9ybWF0KFwicHQtQlJcIiwge1xuICAgICAgICBzdHlsZTogXCJkZWNpbWFsXCIsXG4gICAgICAgIG1pbmltdW1GcmFjdGlvbkRpZ2l0czogMixcbiAgICAgICAgbWF4aW11bUZyYWN0aW9uRGlnaXRzOiAyLFxuICAgICAgfSkuZm9ybWF0KG51bWVyaWNWYWx1ZSk7XG4gICAgfVxuICB9XG5cbiAgb25LZXlEb3duKGV2ZW50OiBLZXlib2FyZEV2ZW50KSB7XG4gICAgaWYgKFxuICAgICAgdGhpcy5vbmx5TnVtYmVycyAmJlxuICAgICAgIS9eXFxkJC8udGVzdChldmVudC5rZXkpICYmXG4gICAgICBldmVudC5rZXkgIT09IFwiQmFja3NwYWNlXCIgJiZcbiAgICAgIGV2ZW50LmtleSAhPT0gXCJBcnJvd0xlZnRcIiAmJlxuICAgICAgZXZlbnQua2V5ICE9PSBcIkFycm93UmlnaHRcIlxuICAgICkge1xuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICB9XG4gIH1cblxuICBvbkNoYW5nZShldmVudDogRXZlbnQpIHtcbiAgICBjb25zdCBudW1lcmljVmFsdWUgPSB0aGlzLnZhbHVlLnJlcGxhY2UoL1xcRC9nLCBcIlwiKTsgLy8gUmVtb3ZlIHRvZG9zIG9zIGNhcmFjdGVyZXMgbsOjbyBudW3DqXJpY29zXG4gICAgLy8gVmFsaWRhw6fDo28gdGFtYsOpbSBvY29ycmUgbm8gYmx1ciBwYXJhIGNhc29zIG9uZGUgbyBpbnB1dCBuw6NvIGVzdMOhIGNvbXBsZXRvXG4gICAgaWYgKHRoaXMudmFsaWRhdGVJbnB1dCkge1xuICAgICAgaWYgKHRoaXMudXNlQ3BmTWFzayAmJiAhdGhpcy52YWxpZGF0ZUNwZihudW1lcmljVmFsdWUpKSB7XG4gICAgICAgIHRoaXMuY2xlYXJBbmRTaG93VmFsaWRhdGlvbkVycm9yKFxuICAgICAgICAgIFwiQ1BGIGludsOhbGlkby4gUG9yIGZhdm9yLCBpbnNpcmEgdW0gQ1BGIGNvcnJldG8uXCJcbiAgICAgICAgKTtcbiAgICAgIH0gZWxzZSBpZiAodGhpcy51c2VDbnBqTWFzayAmJiAhdGhpcy52YWxpZGF0ZUNucGoobnVtZXJpY1ZhbHVlKSkge1xuICAgICAgICB0aGlzLmNsZWFyQW5kU2hvd1ZhbGlkYXRpb25FcnJvcihcbiAgICAgICAgICBcIkNOUEogaW52w6FsaWRvLiBQb3IgZmF2b3IsIGluc2lyYSB1bSBDTlBKIGNvcnJldG8uXCJcbiAgICAgICAgKTtcbiAgICAgIH0gZWxzZSBpZiAodGhpcy51c2VDZXBNYXNrICYmICF0aGlzLnZhbGlkYXRlQ2VwKG51bWVyaWNWYWx1ZSkpIHtcbiAgICAgICAgdGhpcy5jbGVhckFuZFNob3dWYWxpZGF0aW9uRXJyb3IoXG4gICAgICAgICAgXCJDRVAgaW52w6FsaWRvLiBQb3IgZmF2b3IsIGluc2lyYSB1bSBDRVAgY29ycmV0by5cIlxuICAgICAgICApO1xuICAgICAgfVxuICAgIH1cbiAgICB0aGlzLmNoYW5nZUV2ZW50LmVtaXQoZXZlbnQpO1xuICB9XG5cbiAgdmFsaWRhdGVDcGYoY3BmOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICBpZiAoY3BmLmxlbmd0aCAhPT0gMTEgfHwgL14oXFxkKVxcMSskLy50ZXN0KGNwZikpIHJldHVybiBmYWxzZTtcbiAgICBsZXQgc3VtID0gMCxcbiAgICAgIHJlbWFpbmRlcjtcbiAgICBmb3IgKGxldCBpID0gMTsgaSA8PSA5OyBpKyspXG4gICAgICBzdW0gKz0gcGFyc2VJbnQoY3BmLnN1YnN0cmluZyhpIC0gMSwgaSkpICogKDExIC0gaSk7XG4gICAgcmVtYWluZGVyID0gKHN1bSAqIDEwKSAlIDExO1xuICAgIGlmIChyZW1haW5kZXIgPT09IDEwIHx8IHJlbWFpbmRlciA9PT0gMTEpIHJlbWFpbmRlciA9IDA7XG4gICAgaWYgKHJlbWFpbmRlciAhPT0gcGFyc2VJbnQoY3BmLnN1YnN0cmluZyg5LCAxMCkpKSByZXR1cm4gZmFsc2U7XG4gICAgc3VtID0gMDtcbiAgICBmb3IgKGxldCBpID0gMTsgaSA8PSAxMDsgaSsrKVxuICAgICAgc3VtICs9IHBhcnNlSW50KGNwZi5zdWJzdHJpbmcoaSAtIDEsIGkpKSAqICgxMiAtIGkpO1xuICAgIHJlbWFpbmRlciA9IChzdW0gKiAxMCkgJSAxMTtcbiAgICBpZiAocmVtYWluZGVyID09PSAxMCB8fCByZW1haW5kZXIgPT09IDExKSByZW1haW5kZXIgPSAwO1xuICAgIHJldHVybiByZW1haW5kZXIgPT09IHBhcnNlSW50KGNwZi5zdWJzdHJpbmcoMTAsIDExKSk7XG4gIH1cblxuICB2YWxpZGF0ZUNucGooY25wajogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgaWYgKGNucGoubGVuZ3RoICE9PSAxNCkgcmV0dXJuIGZhbHNlO1xuICAgIGxldCBsZW5ndGggPSBjbnBqLmxlbmd0aCAtIDI7XG4gICAgbGV0IG51bWJlcnMgPSBjbnBqLnN1YnN0cmluZygwLCBsZW5ndGgpO1xuICAgIGxldCBkaWdpdHMgPSBjbnBqLnN1YnN0cmluZyhsZW5ndGgpO1xuICAgIGxldCBzdW0gPSAwLFxuICAgICAgcG9zID0gbGVuZ3RoIC0gNztcbiAgICBmb3IgKGxldCBpID0gbGVuZ3RoOyBpID49IDE7IGktLSkge1xuICAgICAgc3VtICs9IHBhcnNlSW50KG51bWJlcnMuY2hhckF0KGxlbmd0aCAtIGkpKSAqIHBvcy0tO1xuICAgICAgaWYgKHBvcyA8IDIpIHBvcyA9IDk7XG4gICAgfVxuICAgIGxldCByZXN1bHQgPSBzdW0gJSAxMSA8IDIgPyAwIDogMTEgLSAoc3VtICUgMTEpO1xuICAgIGlmIChyZXN1bHQgIT09IHBhcnNlSW50KGRpZ2l0cy5jaGFyQXQoMCkpKSByZXR1cm4gZmFsc2U7XG4gICAgbGVuZ3RoID0gbGVuZ3RoICsgMTtcbiAgICBudW1iZXJzID0gY25wai5zdWJzdHJpbmcoMCwgbGVuZ3RoKTtcbiAgICBzdW0gPSAwO1xuICAgIHBvcyA9IGxlbmd0aCAtIDc7XG4gICAgZm9yIChsZXQgaSA9IGxlbmd0aDsgaSA+PSAxOyBpLS0pIHtcbiAgICAgIHN1bSArPSBwYXJzZUludChudW1iZXJzLmNoYXJBdChsZW5ndGggLSBpKSkgKiBwb3MtLTtcbiAgICAgIGlmIChwb3MgPCAyKSBwb3MgPSA5O1xuICAgIH1cbiAgICByZXN1bHQgPSBzdW0gJSAxMSA8IDIgPyAwIDogMTEgLSAoc3VtICUgMTEpO1xuICAgIHJldHVybiByZXN1bHQgPT09IHBhcnNlSW50KGRpZ2l0cy5jaGFyQXQoMSkpO1xuICB9XG5cbiAgdmFsaWRhdGVDZXAoY2VwOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICByZXR1cm4gL15cXGR7OH0kLy50ZXN0KGNlcCk7IC8vIFZhbGlkYSBhcGVuYXMgbsO6bWVyb3MsIHNlbSBjb25zaWRlcmFyIGEgbcOhc2NhcmFcbiAgfVxuXG4gIGNsZWFyQW5kU2hvd1ZhbGlkYXRpb25FcnJvcihtZXNzYWdlOiBzdHJpbmcpIHtcbiAgICB0aGlzLnZhbHVlID0gXCJcIjsgLy8gTGltcGEgbyB2YWxvciBkbyBuZ01vZGVsXG4gICAgdGhpcy5vbkNoYW5nZUNhbGxiYWNrKHRoaXMudmFsdWUpOyAvLyBBdHVhbGl6YSBvIG5nTW9kZWwgY29tIG8gdmFsb3IgbGltcG9cbiAgICB0aGlzLmVycm9yTWVzc2FnZSA9IG1lc3NhZ2U7XG4gICAgdGhpcy5zaG93RXJyb3JNb2RhbCA9IHRydWU7XG4gIH1cblxuICBjbG9zZU1vZGFsKCkge1xuICAgIHRoaXMuc2hvd0Vycm9yTW9kYWwgPSBmYWxzZTtcbiAgICB0aGlzLmVycm9yTWVzc2FnZSA9IFwiXCI7XG4gIH1cblxuICBvbkZvY3VzKGV2ZW50OiBGb2N1c0V2ZW50KSB7XG4gICAgdGhpcy5mb2N1c0V2ZW50LmVtaXQoZXZlbnQpO1xuICB9XG5cbiAgb25CbHVyKGV2ZW50OiBGb2N1c0V2ZW50KSB7XG4gICAgdGhpcy5vblRvdWNoZWRDYWxsYmFjaygpO1xuICAgIHRoaXMuYmx1ckV2ZW50LmVtaXQoZXZlbnQpO1xuICB9XG5cbiAgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KTogdm9pZCB7XG4gICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xuICB9XG5cbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XG4gICAgdGhpcy5vbkNoYW5nZUNhbGxiYWNrID0gZm47XG4gIH1cblxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7XG4gICAgdGhpcy5vblRvdWNoZWRDYWxsYmFjayA9IGZuO1xuICB9XG5cbiAgc2V0RGlzYWJsZWRTdGF0ZT8oaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMuZGlzYWJsZWQgPSBpc0Rpc2FibGVkO1xuICB9XG5cbiAgaGFzUGVybWlzc2lvbigpOiBib29sZWFuIHtcbiAgICBpZiAoIXRoaXMucGVybWlzc2lvbnMgfHwgdGhpcy5wZXJtaXNzaW9ucy5sZW5ndGggPT09IDApIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cblxuICAgIHRyeSB7XG4gICAgICByZXR1cm4gdGhpcy5hdXRoU2VydmljZS5oYXNQZXJtaXNzaW9uKHRoaXMucGVybWlzc2lvbnMpO1xuICAgIH0gY2F0Y2ggKGVycm9yOiB1bmtub3duKSB7XG4gICAgICBpZiAoZXJyb3IgaW5zdGFuY2VvZiBFcnJvcikge1xuICAgICAgICBjb25zb2xlLmVycm9yKFwiUGVybWlzc2lvbiBlcnJvcjpcIiwgZXJyb3IubWVzc2FnZSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb25zb2xlLmVycm9yKFwiVW5rbm93biBlcnJvciBvY2N1cnJlZCBkdXJpbmcgcGVybWlzc2lvbiBjaGVja1wiKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIG9uQnV0dG9uQ2xpY2soKSB7XG4gICAgdGhpcy5idXR0b25DbGljay5lbWl0KCk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMuZm9yRWFjaCgoc3ViKSA9PiBzdWIudW5zdWJzY3JpYmUoKSk7XG4gIH1cbn1cbiIsIjxkaXYgKm5nSWY9XCJoYXNQZXJtaXNzaW9uKClcIiBjbGFzcz1cImZvcm0tZ3JvdXBcIj5cbiAgPGxhYmVsIFtmb3JdPVwiaWRcIiBbbmdDbGFzc109XCInbGFiZWwtc3R5bGVzJ1wiPnt7IGxhYmVsIH19PC9sYWJlbD5cbiAgPGRpdiBjbGFzcz1cImlucHV0LWdyb3VwXCI+XG4gICAgPGRpdiAqbmdJZj1cInByZXBlbmRUZXh0XCIgY2xhc3M9XCJpbnB1dC1ncm91cC1wcmVwZW5kXCI+XG4gICAgICA8c3BhblxuICAgICAgICBjbGFzcz1cImlucHV0LWdyb3VwLXRleHQgY3VzdG9tLWlucHV0LWdyb3VwLXRleHRcIlxuICAgICAgICBpZD1cImJhc2ljLWFkZG9uM1wiXG4gICAgICAgID57eyBwcmVwZW5kVGV4dCB9fTwvc3BhblxuICAgICAgPlxuICAgIDwvZGl2PlxuICAgIDxpbnB1dFxuICAgICAgW3R5cGVdPVwiZ2V0SW5wdXRUeXBlKClcIlxuICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2wgY3VzdG9tLWlucHV0XCJcbiAgICAgIFtpZF09XCJpZFwiXG4gICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxuICAgICAgWyhuZ01vZGVsKV09XCJ2YWx1ZVwiXG4gICAgICAoaW5wdXQpPVwib25JbnB1dCgkZXZlbnQpXCJcbiAgICAgIChjaGFuZ2UpPVwib25DaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAoZm9jdXMpPVwib25Gb2N1cygkZXZlbnQpXCJcbiAgICAgIChibHVyKT1cIm9uQmx1cigkZXZlbnQpXCJcbiAgICAgIChrZXl1cCk9XCJrZXl1cEV2ZW50LmVtaXQoJGV2ZW50KVwiXG4gICAgICAoa2V5ZG93bik9XCJvbktleURvd24oJGV2ZW50KVwiXG4gICAgICAoa2V5cHJlc3MpPVwia2V5cHJlc3NFdmVudC5lbWl0KCRldmVudClcIlxuICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgIFtyZWFkb25seV09XCJyZWFkb25seVwiXG4gICAgICBbYXR0ci5tYXhsZW5ndGhdPVwibWF4bGVuZ3RoXCJcbiAgICAgIFthdHRyLm1pbmxlbmd0aF09XCJtaW5sZW5ndGhcIlxuICAgICAgW3JlcXVpcmVkXT1cInJlcXVpcmVkXCJcbiAgICAgIFthdHRyLnBhdHRlcm5dPVwicGF0dGVyblwiXG4gICAgICBbYXV0b2ZvY3VzXT1cImF1dG9mb2N1c1wiXG4gICAgICBbY3BmTWFza109XCJ1c2VDcGZNYXNrXCJcbiAgICAgIFtjbnBqTWFza109XCJ1c2VDbnBqTWFza1wiXG4gICAgICBbY2VwTWFza109XCJ1c2VDZXBNYXNrXCJcbiAgICAvPlxuXG4gICAgPGRpdiBjbGFzcz1cImlucHV0LWdyb3VwLWFwcGVuZFwiICpuZ0lmPVwiYnV0dG9uVGV4dFwiPlxuICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJidG4tZ3JvdXAtYXBwZW5kXCIgKGNsaWNrKT1cIm9uQnV0dG9uQ2xpY2soKVwiPlxuICAgICAgICB7eyBidXR0b25UZXh0IH19XG4gICAgICA8L2J1dHRvbj5cbiAgICA8L2Rpdj5cblxuICAgIDwhLS0gTW9kYWwgcGFyYSBleGliaXIgbWVuc2FnZW5zIGRlIGVycm8gLS0+XG4gICAgPGRpdiBjbGFzcz1cIm1vZGFsLW92ZXJsYXlcIiAqbmdJZj1cInNob3dFcnJvck1vZGFsXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwibW9kYWwtY29udGVudFwiPlxuICAgICAgICA8c3BhbiBjbGFzcz1cImNsb3NlXCIgKGNsaWNrKT1cImNsb3NlTW9kYWwoKVwiPiZ0aW1lczs8L3NwYW4+XG4gICAgICAgIDxwPnt7IGVycm9yTWVzc2FnZSB9fTwvcD5cbiAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ0bi1va1wiIChjbGljayk9XCJjbG9zZU1vZGFsKClcIj5PSzwvYnV0dG9uPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
|
367
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbGliLXBvcnRhbC1hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy9pbXB1dC9pbnB1dC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9saWItcG9ydGFsLWFuZ3VsYXIvc3JjL2xpYi9jb21wb25lbnRzL2ltcHV0L2lucHV0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFlBQVksRUFDWixVQUFVLEVBQ1YsS0FBSyxFQUVMLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQTtBQUN0QixPQUFPLEVBQXdCLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFFeEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDhCQUE4QixDQUFBOzs7Ozs7OztBQWdCNUQsTUFBTSxPQUFPLGNBQWM7SUFvRHpCLFlBQW9CLFdBQXdCO1FBQXhCLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBbkRuQyxVQUFLLEdBQVcsZUFBZSxDQUFDO1FBQ2hDLGdCQUFXLEdBQVcsRUFBRSxDQUFDO1FBQ3pCLE9BQUUsR0FBVyxTQUFTLENBQUM7UUFDdkIsU0FBSSxHQUFXLE1BQU0sQ0FBQztRQUN0QixhQUFRLEdBQVksS0FBSyxDQUFDO1FBQzFCLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFDMUIsY0FBUyxHQUFrQixJQUFJLENBQUM7UUFDaEMsY0FBUyxHQUFrQixJQUFJLENBQUM7UUFDaEMsYUFBUSxHQUFZLEtBQUssQ0FBQztRQUMxQixZQUFPLEdBQWtCLElBQUksQ0FBQztRQUM5QixjQUFTLEdBQVksS0FBSyxDQUFDO1FBQzNCLGVBQVUsR0FBWSxLQUFLLENBQUM7UUFDNUIsZ0JBQVcsR0FBWSxLQUFLLENBQUM7UUFDN0IsZUFBVSxHQUFZLEtBQUss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QUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csc0JBQXNCO3NCQUE5QixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0csZUFBZTtzQkFBdkIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxxQkFBcUI7c0JBQTdCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUVJLFVBQVU7c0JBQW5CLE1BQU07Z0JBQ0csV0FBVztzQkFBcEIsTUFBTTtnQkFDRyxVQUFVO3NCQUFuQixNQUFNO2dCQUVHLFNBQVM7c0JBQWxCLE1BQU07Z0JBRUcsVUFBVTtzQkFBbkIsTUFBTTtnQkFFRyxZQUFZO3NCQUFyQixNQUFNO2dCQUVHLGFBQWE7c0JBQXRCLE1BQU07Z0JBRUcsV0FBVztzQkFBcEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgZm9yd2FyZFJlZixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT3V0cHV0LFxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiXG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIlxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSBcInJ4anNcIlxuaW1wb3J0IHsgQnV0dG9uQ2xhc3NlcyB9IGZyb20gXCIuLi8uLi9lbnVtL0J1dHRvbkNsYXNzZXNFbnVtXCJcbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSBcIi4uLy4uL3NlcnZpY2UvYXV0aC1zZXJ2aWNlLnNlcnZpY2VcIlxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IFwiYXJnZW50YS1jdXN0b20taW5wdXRcIixcbiAgc3R5bGVVcmxzOiBbXCIuL2lucHV0LmNvbXBvbmVudC5zY3NzXCJdLFxuICB0ZW1wbGF0ZVVybDogXCIuL2lucHV0LmNvbXBvbmVudC5odG1sXCIsXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gSW5wdXRDb21wb25lbnQpLFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgfSxcbiAgXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIElucHV0Q29tcG9uZW50IGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE9uRGVzdHJveSB7XG4gIEBJbnB1dCgpIGxhYmVsOiBzdHJpbmcgPSBcIkRlZmF1bHQgTGFiZWxcIjtcbiAgQElucHV0KCkgcGxhY2Vob2xkZXI6IHN0cmluZyA9IFwiXCI7XG4gIEBJbnB1dCgpIGlkOiBzdHJpbmcgPSBcImlucHV0SWRcIjtcbiAgQElucHV0KCkgdHlwZTogc3RyaW5nID0gXCJ0ZXh0XCI7XG4gIEBJbnB1dCgpIGRpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIHJlYWRvbmx5OiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIG1heGxlbmd0aDogbnVtYmVyIHwgbnVsbCA9IG51bGw7XG4gIEBJbnB1dCgpIG1pbmxlbmd0aDogbnVtYmVyIHwgbnVsbCA9IG51bGw7XG4gIEBJbnB1dCgpIHJlcXVpcmVkOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIHBhdHRlcm46IHN0cmluZyB8IG51bGwgPSBudWxsO1xuICBASW5wdXQoKSBhdXRvZm9jdXM6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgdXNlQ3BmTWFzazogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSB1c2VDbnBqTWFzazogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSB1c2VDZXBNYXNrOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIG9ubHlOdW1iZXJzOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIG9ubHlOdW1iZXJzQW5kRGVjaW1hbHM6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgdmFsaWRhdGVJbnB1dDogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSBsYWJlbEZvbnRXZWlnaHQ6IG51bWJlciA9IDQwMDtcbiAgQElucHV0KCkgcGVybWlzc2lvbnM6IHN0cmluZ1tdIHwgdW5kZWZpbmVkO1xuICBASW5wdXQoKSB1c2VNb25leU1hc2s6IGJvb2xlYW4gPSBmYWxzZTsgLy8gUGFyYSBhdGl2YXIvZGVzYXRpdmFyIGEgbcOhc2NhcmEgZGUgbW9lZGFcbiAgQElucHV0KCkgY3VycmVuY3lDb2RlOiBzdHJpbmcgPSBcIkJSTFwiOyAvLyBDw7NkaWdvIGRhIG1vZWRhXG4gIEBJbnB1dCgpIGRpc3BsYXlDdXJyZW5jeVN5bWJvbDogYm9vbGVhbiA9IHRydWU7IC8vIEV4aWJpciBvdSBuw6NvIG8gc8OtbWJvbG8gZGEgbW9lZGFcbiAgQElucHV0KCkgcHJlcGVuZFRleHQ6IHN0cmluZyA9IFwiXCI7XG4gIEBJbnB1dCgpIGJ1dHRvblRleHQ6IHN0cmluZyB8IG51bGwgPSBudWxsO1xuICBASW5wdXQoKSB1c2VMYXRpdHVkZU1hc2s6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgdXNlTG9uZ2l0dWRlTWFzazogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIEBPdXRwdXQoKSBpbnB1dEV2ZW50OiBFdmVudEVtaXR0ZXI8RXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxFdmVudD4oKTtcbiAgQE91dHB1dCgpIGNoYW5nZUV2ZW50OiBFdmVudEVtaXR0ZXI8RXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxFdmVudD4oKTtcbiAgQE91dHB1dCgpIGZvY3VzRXZlbnQ6IEV2ZW50RW1pdHRlcjxGb2N1c0V2ZW50PiA9XG4gICAgbmV3IEV2ZW50RW1pdHRlcjxGb2N1c0V2ZW50PigpO1xuICBAT3V0cHV0KCkgYmx1ckV2ZW50OiBFdmVudEVtaXR0ZXI8Rm9jdXNFdmVudD4gPVxuICAgIG5ldyBFdmVudEVtaXR0ZXI8Rm9jdXNFdmVudD4oKTtcbiAgQE91dHB1dCgpIGtleXVwRXZlbnQ6IEV2ZW50RW1pdHRlcjxLZXlib2FyZEV2ZW50PiA9XG4gICAgbmV3IEV2ZW50RW1pdHRlcjxLZXlib2FyZEV2ZW50PigpO1xuICBAT3V0cHV0KCkga2V5ZG93bkV2ZW50OiBFdmVudEVtaXR0ZXI8S2V5Ym9hcmRFdmVudD4gPVxuICAgIG5ldyBFdmVudEVtaXR0ZXI8S2V5Ym9hcmRFdmVudD4oKTtcbiAgQE91dHB1dCgpIGtleXByZXNzRXZlbnQ6IEV2ZW50RW1pdHRlcjxLZXlib2FyZEV2ZW50PiA9XG4gICAgbmV3IEV2ZW50RW1pdHRlcjxLZXlib2FyZEV2ZW50PigpO1xuICBAT3V0cHV0KCkgYnV0dG9uQ2xpY2s6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICBwcml2YXRlIG9uQ2hhbmdlQ2FsbGJhY2s6IChfOiBhbnkpID0+IHZvaWQgPSAoKSA9PiB7fTtcbiAgcHJpdmF0ZSBvblRvdWNoZWRDYWxsYmFjazogKCkgPT4gdm9pZCA9ICgpID0+IHt9O1xuICBCdXR0b25DbGFzc2VzID0gQnV0dG9uQ2xhc3NlcztcblxuICB2YWx1ZTogc3RyaW5nID0gXCJcIjtcbiAgc2hvd0Vycm9yTW9kYWw6IGJvb2xlYW4gPSBmYWxzZTtcbiAgZXJyb3JNZXNzYWdlOiBzdHJpbmcgPSBcIlwiO1xuXG4gIHByaXZhdGUgc3Vic2NyaXB0aW9uczogU3Vic2NyaXB0aW9uW10gPSBbXTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGF1dGhTZXJ2aWNlOiBBdXRoU2VydmljZSkge31cblxuICBnZXRJbnB1dFR5cGUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gKHRoaXMub25seU51bWJlcnMgfHwgdGhpcy5vbmx5TnVtYmVyc0FuZERlY2ltYWxzKSA/IFwidGVsXCIgOiB0aGlzLnR5cGU7XG4gIH1cblxuICBvbklucHV0KGV2ZW50OiBFdmVudCkge1xuICAgIGNvbnN0IGlucHV0RWxlbWVudCA9IGV2ZW50LnRhcmdldCBhcyBIVE1MSW5wdXRFbGVtZW50O1xuICAgIGxldCBpbnB1dFZhbHVlID0gaW5wdXRFbGVtZW50LnZhbHVlO1xuXG4gICAgaWYgKHRoaXMudXNlTGF0aXR1ZGVNYXNrIHx8IHRoaXMudXNlTG9uZ2l0dWRlTWFzaykge1xuICAgICAgaW5wdXRWYWx1ZSA9IGlucHV0VmFsdWUucmVwbGFjZSgvW14wLTkuLC1dL2csIFwiXCIpO1xuICAgICAgaW5wdXRWYWx1ZSA9IGlucHV0VmFsdWUucmVwbGFjZSgvLC9nLCBcIi5cIik7XG5cbiAgICAgIGNvbnN0IHBhcnRzID0gaW5wdXRWYWx1ZS5zcGxpdChcIi5cIik7XG4gICAgfSBlbHNlIGlmIChcbiAgICAgIHRoaXMub25seU51bWJlcnMgJiZcbiAgICAgICEoXG4gICAgICAgIHRoaXMudXNlQ3BmTWFzayB8fFxuICAgICAgICB0aGlzLnVzZUNucGpNYXNrIHx8XG4gICAgICAgIHRoaXMudXNlQ2VwTWFzayB8fFxuICAgICAgICB0aGlzLnVzZU1vbmV5TWFza1xuICAgICAgKVxuICAgICkge1xuICAgICAgaW5wdXRWYWx1ZSA9IGlucHV0VmFsdWUucmVwbGFjZSgvXFxEL2csIFwiXCIpOyAvLyBSZW1vdmUgdG9kb3Mgb3MgbsOjbyBudW3DqXJpY29zXG4gICAgfVxuXG4gICAgLy8gVmFsaWRhw6fDo28gaW1lZGlhdGEgcGFyYSBDUEYsIENOUEogb3UgQ0VQXG4gICAgY29uc3QgbnVtZXJpY1ZhbHVlID0gaW5wdXRWYWx1ZS5yZXBsYWNlKC9cXEQvZywgXCJcIik7IC8vIFJlbW92ZSB0b2RvcyBvcyBjYXJhY3RlcmVzIG7Do28gbnVtw6lyaWNvc1xuICAgIGlmICh0aGlzLnZhbGlkYXRlSW5wdXQpIHtcbiAgICAgIGlmIChcbiAgICAgICAgdGhpcy51c2VDcGZNYXNrICYmXG4gICAgICAgIG51bWVyaWNWYWx1ZS5sZW5ndGggPT09IDExICYmXG4gICAgICAgICF0aGlzLnZhbGlkYXRlQ3BmKG51bWVyaWNWYWx1ZSlcbiAgICAgICkge1xuICAgICAgICB0aGlzLmNsZWFyQW5kU2hvd1ZhbGlkYXRpb25FcnJvcihcbiAgICAgICAgICBcIkNQRiBpbnbDoWxpZG8uIFBvciBmYXZvciwgaW5zaXJhIHVtIENQRiBjb3JyZXRvLlwiXG4gICAgICAgICk7XG4gICAgICB9IGVsc2UgaWYgKFxuICAgICAgICB0aGlzLnVzZUNucGpNYXNrICYmXG4gICAgICAgIG51bWVyaWNWYWx1ZS5sZW5ndGggPT09IDE0ICYmXG4gICAgICAgICF0aGlzLnZhbGlkYXRlQ25waihudW1lcmljVmFsdWUpXG4gICAgICApIHtcbiAgICAgICAgdGhpcy5jbGVhckFuZFNob3dWYWxpZGF0aW9uRXJyb3IoXG4gICAgICAgICAgXCJDTlBKIGludsOhbGlkby4gUG9yIGZhdm9yLCBpbnNpcmEgdW0gQ05QSiBjb3JyZXRvLlwiXG4gICAgICAgICk7XG4gICAgICB9IGVsc2UgaWYgKFxuICAgICAgICB0aGlzLnVzZUNlcE1hc2sgJiZcbiAgICAgICAgbnVtZXJpY1ZhbHVlLmxlbmd0aCA9PT0gOCAmJlxuICAgICAgICAhdGhpcy52YWxpZGF0ZUNlcChudW1lcmljVmFsdWUpXG4gICAgICApIHtcbiAgICAgICAgdGhpcy5jbGVhckFuZFNob3dWYWxpZGF0aW9uRXJyb3IoXG4gICAgICAgICAgXCJDRVAgaW52w6FsaWRvLiBQb3IgZmF2b3IsIGluc2lyYSB1bSBDRVAgY29ycmV0by5cIlxuICAgICAgICApO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIE3DoXNjYXJhIGRlIG1vZWRhXG4gICAgaWYgKHRoaXMudXNlTW9uZXlNYXNrKSB7XG4gICAgICBjb25zdCBudW1lcmljVmFsdWUgPSBpbnB1dFZhbHVlLnJlcGxhY2UoL1xcRC9nLCBcIlwiKTsgLy8gUmVtb3ZlIHRvZG9zIG9zIG7Do28gbnVtw6lyaWNvc1xuICAgICAgY29uc3QgZm9ybWF0dGVkVmFsdWUgPSB0aGlzLmZvcm1hdE1vbmV5KG51bWVyaWNWYWx1ZSk7IC8vIEZvcm1hdGEgY29tbyBkaW5oZWlybyBvdSBuw7ptZXJvIGRlY2ltYWxcbiAgICAgIGlucHV0RWxlbWVudC52YWx1ZSA9IGZvcm1hdHRlZFZhbHVlO1xuICAgICAgdGhpcy52YWx1ZSA9IGZvcm1hdHRlZFZhbHVlO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnZhbHVlID0gaW5wdXRWYWx1ZTtcbiAgICB9XG5cbiAgICAvLyBBdHVhbGl6YSBvIHZhbG9yIGUgZW1pdGUgbyBldmVudG8gZGUgbXVkYW7Dp2FcbiAgICB0aGlzLm9uQ2hhbmdlQ2FsbGJhY2sodGhpcy52YWx1ZSk7XG4gICAgdGhpcy5pbnB1dEV2ZW50LmVtaXQoZXZlbnQpO1xuICB9XG5cbiAgcHJpdmF0ZSBmb3JtYXRNb25leSh2YWx1ZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBpZiAoIXZhbHVlKSByZXR1cm4gXCJcIjsgLy8gU2UgbyB2YWxvciBlc3RpdmVyIHZhemlvLCByZXRvcm5hIHVtYSBzdHJpbmcgdmF6aWFcblxuICAgIGNvbnN0IG51bWVyaWNWYWx1ZSA9IHBhcnNlRmxvYXQodmFsdWUpIC8gMTAwO1xuXG4gICAgLy8gVmVyaWZpY2Egc2UgZGV2ZSBleGliaXIgbyBzw61tYm9sbyBkYSBtb2VkYSBvdSBuw6NvXG4gICAgaWYgKHRoaXMuZGlzcGxheUN1cnJlbmN5U3ltYm9sKSB7XG4gICAgICAvLyBGb3JtYXRhIGNvbW8gbW9lZGFcbiAgICAgIHJldHVybiBuZXcgSW50bC5OdW1iZXJGb3JtYXQoXCJwdC1CUlwiLCB7XG4gICAgICAgIHN0eWxlOiBcImN1cnJlbmN5XCIsXG4gICAgICAgIGN1cnJlbmN5OiB0aGlzLmN1cnJlbmN5Q29kZSxcbiAgICAgIH0pLmZvcm1hdChudW1lcmljVmFsdWUpO1xuICAgIH0gZWxzZSB7XG4gICAgICAvLyBGb3JtYXRhIGNvbW8gbsO6bWVybyBkZWNpbWFsLCBzZW0gbyBzw61tYm9sbyBkYSBtb2VkYVxuICAgICAgcmV0dXJuIG5ldyBJbnRsLk51bWJlckZvcm1hdChcInB0LUJSXCIsIHtcbiAgICAgICAgc3R5bGU6IFwiZGVjaW1hbFwiLFxuICAgICAgICBtaW5pbXVtRnJhY3Rpb25EaWdpdHM6IDIsXG4gICAgICAgIG1heGltdW1GcmFjdGlvbkRpZ2l0czogMixcbiAgICAgIH0pLmZvcm1hdChudW1lcmljVmFsdWUpO1xuICAgIH1cbiAgfVxuXG4gIG9uS2V5RG93bihldmVudDogS2V5Ym9hcmRFdmVudCkge1xuICAgIGlmICh0aGlzLnVzZUxhdGl0dWRlTWFzayB8fCB0aGlzLnVzZUxvbmdpdHVkZU1hc2spIHtcbiAgICAgIGNvbnN0IGFsbG93ZWRLZXlzID0gW1xuICAgICAgICBcIkJhY2tzcGFjZVwiLFxuICAgICAgICBcIkFycm93TGVmdFwiLFxuICAgICAgICBcIkFycm93UmlnaHRcIixcbiAgICAgICAgXCJUYWJcIixcbiAgICAgICAgXCJEZWxldGVcIixcbiAgICAgICAgXCJFbnRlclwiLFxuICAgICAgICBcIi1cIixcbiAgICAgICAgXCIuXCIsXG4gICAgICAgIFwiLFwiLFxuICAgICAgXTtcbiAgICAgIGlmICghYWxsb3dlZEtleXMuaW5jbHVkZXMoZXZlbnQua2V5KSAmJiAhL15cXGQkLy50ZXN0KGV2ZW50LmtleSkpIHtcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKFxuICAgICAgdGhpcy5vbmx5TnVtYmVycyAmJlxuICAgICAgIS9eXFxkJC8udGVzdChldmVudC5rZXkpICYmXG4gICAgICBldmVudC5rZXkgIT09IFwiQmFja3NwYWNlXCIgJiZcbiAgICAgIGV2ZW50LmtleSAhPT0gXCJBcnJvd0xlZnRcIiAmJlxuICAgICAgZXZlbnQua2V5ICE9PSBcIkFycm93UmlnaHRcIlxuICAgICkge1xuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTsgLy8gSW1wZWRlIGEgZW50cmFkYSBkZSBjYXJhY3RlcmVzIG7Do28gbnVtw6lyaWNvc1xuICAgIH1cbiAgICBjb25zdCBpbnB1dCA9IGV2ZW50LnRhcmdldCBhcyBIVE1MSW5wdXRFbGVtZW50O1xuICAgIGlmIChcbiAgICAgIHRoaXMub25seU51bWJlcnNBbmREZWNpbWFscyAmJlxuICAgICAgIS9eXFxkJC8udGVzdChldmVudC5rZXkpICYmXG4gICAgICAoZXZlbnQua2V5ICE9PSBcIi5cIiB8fCBpbnB1dC52YWx1ZS5pbmNsdWRlcyhcIi5cIikpICYmXG4gICAgICBldmVudC5rZXkgIT09IFwiQmFja3NwYWNlXCIgJiZcbiAgICAgIGV2ZW50LmtleSAhPT0gXCJEZWxldGVcIiAmJlxuICAgICAgZXZlbnQua2V5ICE9PSBcIlRhYlwiICYmICAgICAgICAgICAgICAvLyBBZGljaW9uYSBzdXBvcnRlIGFvIFRhYlxuICAgICAgZXZlbnQua2V5ICE9PSBcIkFycm93TGVmdFwiICYmXG4gICAgICBldmVudC5rZXkgIT09IFwiQXJyb3dSaWdodFwiXG4gICAgKSB7XG4gICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIH1cbiAgfVxuXG4gIG9uQ2hhbmdlKGV2ZW50OiBFdmVudCkge1xuICAgIGNvbnN0IG51bWVyaWNWYWx1ZSA9IHRoaXMudmFsdWUucmVwbGFjZSgvXFxEL2csIFwiXCIpOyAvLyBSZW1vdmUgdG9kb3Mgb3MgY2FyYWN0ZXJlcyBuw6NvIG51bcOpcmljb3NcbiAgICAvLyBWYWxpZGHDp8OjbyB0YW1iw6ltIG9jb3JyZSBubyBibHVyIHBhcmEgY2Fzb3Mgb25kZSBvIGlucHV0IG7Do28gZXN0w6EgY29tcGxldG9cbiAgICBpZiAodGhpcy52YWxpZGF0ZUlucHV0KSB7XG4gICAgICBpZiAodGhpcy51c2VDcGZNYXNrICYmICF0aGlzLnZhbGlkYXRlQ3BmKG51bWVyaWNWYWx1ZSkpIHtcbiAgICAgICAgdGhpcy5jbGVhckFuZFNob3dWYWxpZGF0aW9uRXJyb3IoXG4gICAgICAgICAgXCJDUEYgaW52w6FsaWRvLiBQb3IgZmF2b3IsIGluc2lyYSB1bSBDUEYgY29ycmV0by5cIlxuICAgICAgICApO1xuICAgICAgfSBlbHNlIGlmICh0aGlzLnVzZUNucGpNYXNrICYmICF0aGlzLnZhbGlkYXRlQ25waihudW1lcmljVmFsdWUpKSB7XG4gICAgICAgIHRoaXMuY2xlYXJBbmRTaG93VmFsaWRhdGlvbkVycm9yKFxuICAgICAgICAgIFwiQ05QSiBpbnbDoWxpZG8uIFBvciBmYXZvciwgaW5zaXJhIHVtIENOUEogY29ycmV0by5cIlxuICAgICAgICApO1xuICAgICAgfSBlbHNlIGlmICh0aGlzLnVzZUNlcE1hc2sgJiYgIXRoaXMudmFsaWRhdGVDZXAobnVtZXJpY1ZhbHVlKSkge1xuICAgICAgICB0aGlzLmNsZWFyQW5kU2hvd1ZhbGlkYXRpb25FcnJvcihcbiAgICAgICAgICBcIkNFUCBpbnbDoWxpZG8uIFBvciBmYXZvciwgaW5zaXJhIHVtIENFUCBjb3JyZXRvLlwiXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfVxuICAgIHRoaXMuY2hhbmdlRXZlbnQuZW1pdChldmVudCk7XG4gIH1cblxuICB2YWxpZGF0ZUNwZihjcGY6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIGlmIChjcGYubGVuZ3RoICE9PSAxMSB8fCAvXihcXGQpXFwxKyQvLnRlc3QoY3BmKSkgcmV0dXJuIGZhbHNlO1xuICAgIGxldCBzdW0gPSAwLFxuICAgICAgcmVtYWluZGVyO1xuICAgIGZvciAobGV0IGkgPSAxOyBpIDw9IDk7IGkrKylcbiAgICAgIHN1bSArPSBwYXJzZUludChjcGYuc3Vic3RyaW5nKGkgLSAxLCBpKSkgKiAoMTEgLSBpKTtcbiAgICByZW1haW5kZXIgPSAoc3VtICogMTApICUgMTE7XG4gICAgaWYgKHJlbWFpbmRlciA9PT0gMTAgfHwgcmVtYWluZGVyID09PSAxMSkgcmVtYWluZGVyID0gMDtcbiAgICBpZiAocmVtYWluZGVyICE9PSBwYXJzZUludChjcGYuc3Vic3RyaW5nKDksIDEwKSkpIHJldHVybiBmYWxzZTtcbiAgICBzdW0gPSAwO1xuICAgIGZvciAobGV0IGkgPSAxOyBpIDw9IDEwOyBpKyspXG4gICAgICBzdW0gKz0gcGFyc2VJbnQoY3BmLnN1YnN0cmluZyhpIC0gMSwgaSkpICogKDEyIC0gaSk7XG4gICAgcmVtYWluZGVyID0gKHN1bSAqIDEwKSAlIDExO1xuICAgIGlmIChyZW1haW5kZXIgPT09IDEwIHx8IHJlbWFpbmRlciA9PT0gMTEpIHJlbWFpbmRlciA9IDA7XG4gICAgcmV0dXJuIHJlbWFpbmRlciA9PT0gcGFyc2VJbnQoY3BmLnN1YnN0cmluZygxMCwgMTEpKTtcbiAgfVxuXG4gIHZhbGlkYXRlQ25waihjbnBqOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICBpZiAoY25wai5sZW5ndGggIT09IDE0KSByZXR1cm4gZmFsc2U7XG4gICAgbGV0IGxlbmd0aCA9IGNucGoubGVuZ3RoIC0gMjtcbiAgICBsZXQgbnVtYmVycyA9IGNucGouc3Vic3RyaW5nKDAsIGxlbmd0aCk7XG4gICAgbGV0IGRpZ2l0cyA9IGNucGouc3Vic3RyaW5nKGxlbmd0aCk7XG4gICAgbGV0IHN1bSA9IDAsXG4gICAgICBwb3MgPSBsZW5ndGggLSA3O1xuICAgIGZvciAobGV0IGkgPSBsZW5ndGg7IGkgPj0gMTsgaS0tKSB7XG4gICAgICBzdW0gKz0gcGFyc2VJbnQobnVtYmVycy5jaGFyQXQobGVuZ3RoIC0gaSkpICogcG9zLS07XG4gICAgICBpZiAocG9zIDwgMikgcG9zID0gOTtcbiAgICB9XG4gICAgbGV0IHJlc3VsdCA9IHN1bSAlIDExIDwgMiA/IDAgOiAxMSAtIChzdW0gJSAxMSk7XG4gICAgaWYgKHJlc3VsdCAhPT0gcGFyc2VJbnQoZGlnaXRzLmNoYXJBdCgwKSkpIHJldHVybiBmYWxzZTtcbiAgICBsZW5ndGggPSBsZW5ndGggKyAxO1xuICAgIG51bWJlcnMgPSBjbnBqLnN1YnN0cmluZygwLCBsZW5ndGgpO1xuICAgIHN1bSA9IDA7XG4gICAgcG9zID0gbGVuZ3RoIC0gNztcbiAgICBmb3IgKGxldCBpID0gbGVuZ3RoOyBpID49IDE7IGktLSkge1xuICAgICAgc3VtICs9IHBhcnNlSW50KG51bWJlcnMuY2hhckF0KGxlbmd0aCAtIGkpKSAqIHBvcy0tO1xuICAgICAgaWYgKHBvcyA8IDIpIHBvcyA9IDk7XG4gICAgfVxuICAgIHJlc3VsdCA9IHN1bSAlIDExIDwgMiA/IDAgOiAxMSAtIChzdW0gJSAxMSk7XG4gICAgcmV0dXJuIHJlc3VsdCA9PT0gcGFyc2VJbnQoZGlnaXRzLmNoYXJBdCgxKSk7XG4gIH1cblxuICB2YWxpZGF0ZUNlcChjZXA6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAvXlxcZHs4fSQvLnRlc3QoY2VwKTsgLy8gVmFsaWRhIGFwZW5hcyBuw7ptZXJvcywgc2VtIGNvbnNpZGVyYXIgYSBtw6FzY2FyYVxuICB9XG5cbiAgY2xlYXJBbmRTaG93VmFsaWRhdGlvbkVycm9yKG1lc3NhZ2U6IHN0cmluZykge1xuICAgIHRoaXMudmFsdWUgPSBcIlwiOyAvLyBMaW1wYSBvIHZhbG9yIGRvIG5nTW9kZWxcbiAgICB0aGlzLm9uQ2hhbmdlQ2FsbGJhY2sodGhpcy52YWx1ZSk7IC8vIEF0dWFsaXphIG8gbmdNb2RlbCBjb20gbyB2YWxvciBsaW1wb1xuICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gbWVzc2FnZTtcbiAgICB0aGlzLnNob3dFcnJvck1vZGFsID0gdHJ1ZTtcbiAgfVxuXG4gIGNsb3NlTW9kYWwoKSB7XG4gICAgdGhpcy5zaG93RXJyb3JNb2RhbCA9IGZhbHNlO1xuICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gXCJcIjtcbiAgfVxuXG4gIG9uRm9jdXMoZXZlbnQ6IEZvY3VzRXZlbnQpIHtcbiAgICB0aGlzLmZvY3VzRXZlbnQuZW1pdChldmVudCk7XG4gIH1cblxuICBvbkJsdXIoZXZlbnQ6IEZvY3VzRXZlbnQpIHtcbiAgICB0aGlzLm9uVG91Y2hlZENhbGxiYWNrKCk7XG4gICAgdGhpcy5ibHVyRXZlbnQuZW1pdChldmVudCk7XG4gIH1cblxuICB3cml0ZVZhbHVlKHZhbHVlOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG4gIH1cblxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLm9uQ2hhbmdlQ2FsbGJhY2sgPSBmbjtcbiAgfVxuXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLm9uVG91Y2hlZENhbGxiYWNrID0gZm47XG4gIH1cblxuICBzZXREaXNhYmxlZFN0YXRlPyhpc0Rpc2FibGVkOiBib29sZWFuKTogdm9pZCB7XG4gICAgdGhpcy5kaXNhYmxlZCA9IGlzRGlzYWJsZWQ7XG4gIH1cblxuICBoYXNQZXJtaXNzaW9uKCk6IGJvb2xlYW4ge1xuICAgIGlmICghdGhpcy5wZXJtaXNzaW9ucyB8fCB0aGlzLnBlcm1pc3Npb25zLmxlbmd0aCA9PT0gMCkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG4gICAgdHJ5IHtcbiAgICAgIHJldHVybiB0aGlzLmF1dGhTZXJ2aWNlLmhhc1Blcm1pc3Npb24odGhpcy5wZXJtaXNzaW9ucyk7XG4gICAgfSBjYXRjaCAoZXJyb3I6IHVua25vd24pIHtcbiAgICAgIGlmIChlcnJvciBpbnN0YW5jZW9mIEVycm9yKSB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoXCJQZXJtaXNzaW9uIGVycm9yOlwiLCBlcnJvci5tZXNzYWdlKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoXCJVbmtub3duIGVycm9yIG9jY3VycmVkIGR1cmluZyBwZXJtaXNzaW9uIGNoZWNrXCIpO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICB9XG5cbiAgb25CdXR0b25DbGljaygpIHtcbiAgICB0aGlzLmJ1dHRvbkNsaWNrLmVtaXQoKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5mb3JFYWNoKChzdWIpID0+IHN1Yi51bnN1YnNjcmliZSgpKTtcbiAgfVxufVxuIiwiPGRpdiAqbmdJZj1cImhhc1Blcm1pc3Npb24oKVwiIGNsYXNzPVwiZm9ybS1ncm91cFwiPlxuICA8bGFiZWwgW2Zvcl09XCJpZFwiIFtuZ0NsYXNzXT1cIidsYWJlbC1zdHlsZXMnXCI+e3sgbGFiZWwgfX08L2xhYmVsPlxuICA8ZGl2IGNsYXNzPVwiaW5wdXQtZ3JvdXBcIj5cbiAgICA8ZGl2ICpuZ0lmPVwicHJlcGVuZFRleHRcIiBjbGFzcz1cImlucHV0LWdyb3VwLXByZXBlbmRcIj5cbiAgICAgIDxzcGFuXG4gICAgICAgIGNsYXNzPVwiaW5wdXQtZ3JvdXAtdGV4dCBjdXN0b20taW5wdXQtZ3JvdXAtdGV4dFwiXG4gICAgICAgIGlkPVwiYmFzaWMtYWRkb24zXCJcbiAgICAgICAgPnt7IHByZXBlbmRUZXh0IH19PC9zcGFuXG4gICAgICA+XG4gICAgPC9kaXY+XG4gICAgPGlucHV0XG4gICAgICBbdHlwZV09XCJnZXRJbnB1dFR5cGUoKVwiXG4gICAgICBjbGFzcz1cImZvcm0tY29udHJvbCBjdXN0b20taW5wdXRcIlxuICAgICAgW2lkXT1cImlkXCJcbiAgICAgIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiXG4gICAgICBbKG5nTW9kZWwpXT1cInZhbHVlXCJcbiAgICAgIChpbnB1dCk9XCJvbklucHV0KCRldmVudClcIlxuICAgICAgKGNoYW5nZSk9XCJvbkNoYW5nZSgkZXZlbnQpXCJcbiAgICAgIChmb2N1cyk9XCJvbkZvY3VzKCRldmVudClcIlxuICAgICAgKGJsdXIpPVwib25CbHVyKCRldmVudClcIlxuICAgICAgKGtleXVwKT1cImtleXVwRXZlbnQuZW1pdCgkZXZlbnQpXCJcbiAgICAgIChrZXlkb3duKT1cIm9uS2V5RG93bigkZXZlbnQpXCJcbiAgICAgIChrZXlwcmVzcyk9XCJrZXlwcmVzc0V2ZW50LmVtaXQoJGV2ZW50KVwiXG4gICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5XCJcbiAgICAgIFthdHRyLm1heGxlbmd0aF09XCJtYXhsZW5ndGhcIlxuICAgICAgW2F0dHIubWlubGVuZ3RoXT1cIm1pbmxlbmd0aFwiXG4gICAgICBbcmVxdWlyZWRdPVwicmVxdWlyZWRcIlxuICAgICAgW2F0dHIucGF0dGVybl09XCJwYXR0ZXJuXCJcbiAgICAgIFthdXRvZm9jdXNdPVwiYXV0b2ZvY3VzXCJcbiAgICAgIFtjcGZNYXNrXT1cInVzZUNwZk1hc2tcIlxuICAgICAgW2NucGpNYXNrXT1cInVzZUNucGpNYXNrXCJcbiAgICAgIFtjZXBNYXNrXT1cInVzZUNlcE1hc2tcIlxuICAgIC8+XG5cbiAgICA8ZGl2IGNsYXNzPVwiaW5wdXQtZ3JvdXAtYXBwZW5kXCIgKm5nSWY9XCJidXR0b25UZXh0XCI+XG4gICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImJ0bi1ncm91cC1hcHBlbmRcIiAoY2xpY2spPVwib25CdXR0b25DbGljaygpXCI+XG4gICAgICAgIHt7IGJ1dHRvblRleHQgfX1cbiAgICAgIDwvYnV0dG9uPlxuICAgIDwvZGl2PlxuXG4gICAgPCEtLSBNb2RhbCBwYXJhIGV4aWJpciBtZW5zYWdlbnMgZGUgZXJybyAtLT5cbiAgICA8ZGl2IGNsYXNzPVwibW9kYWwtb3ZlcmxheVwiICpuZ0lmPVwic2hvd0Vycm9yTW9kYWxcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJtb2RhbC1jb250ZW50XCI+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwiY2xvc2VcIiAoY2xpY2spPVwiY2xvc2VNb2RhbCgpXCI+JnRpbWVzOzwvc3Bhbj5cbiAgICAgICAgPHA+e3sgZXJyb3JNZXNzYWdlIH19PC9wPlxuICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnRuLW9rXCIgKGNsaWNrKT1cImNsb3NlTW9kYWwoKVwiPk9LPC9idXR0b24+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|
@@ -2494,6 +2494,7 @@ class InputComponent {
|
|
2494
2494
|
this.useCnpjMask = false;
|
2495
2495
|
this.useCepMask = false;
|
2496
2496
|
this.onlyNumbers = false;
|
2497
|
+
this.onlyNumbersAndDecimals = false;
|
2497
2498
|
this.validateInput = false;
|
2498
2499
|
this.labelFontWeight = 400;
|
2499
2500
|
this.useMoneyMask = false; // Para ativar/desativar a máscara de moeda
|
@@ -2501,6 +2502,8 @@ class InputComponent {
|
|
2501
2502
|
this.displayCurrencySymbol = true; // Exibir ou não o símbolo da moeda
|
2502
2503
|
this.prependText = "";
|
2503
2504
|
this.buttonText = null;
|
2505
|
+
this.useLatitudeMask = false;
|
2506
|
+
this.useLongitudeMask = false;
|
2504
2507
|
this.inputEvent = new EventEmitter();
|
2505
2508
|
this.changeEvent = new EventEmitter();
|
2506
2509
|
this.focusEvent = new EventEmitter();
|
@@ -2518,13 +2521,17 @@ class InputComponent {
|
|
2518
2521
|
this.subscriptions = [];
|
2519
2522
|
}
|
2520
2523
|
getInputType() {
|
2521
|
-
return this.onlyNumbers ? "tel" : this.type;
|
2524
|
+
return (this.onlyNumbers || this.onlyNumbersAndDecimals) ? "tel" : this.type;
|
2522
2525
|
}
|
2523
2526
|
onInput(event) {
|
2524
2527
|
const inputElement = event.target;
|
2525
2528
|
let inputValue = inputElement.value;
|
2526
|
-
|
2527
|
-
|
2529
|
+
if (this.useLatitudeMask || this.useLongitudeMask) {
|
2530
|
+
inputValue = inputValue.replace(/[^0-9.,-]/g, "");
|
2531
|
+
inputValue = inputValue.replace(/,/g, ".");
|
2532
|
+
const parts = inputValue.split(".");
|
2533
|
+
}
|
2534
|
+
else if (this.onlyNumbers &&
|
2528
2535
|
!(this.useCpfMask ||
|
2529
2536
|
this.useCnpjMask ||
|
2530
2537
|
this.useCepMask ||
|
@@ -2586,9 +2593,36 @@ class InputComponent {
|
|
2586
2593
|
}
|
2587
2594
|
}
|
2588
2595
|
onKeyDown(event) {
|
2589
|
-
if (this.
|
2596
|
+
if (this.useLatitudeMask || this.useLongitudeMask) {
|
2597
|
+
const allowedKeys = [
|
2598
|
+
"Backspace",
|
2599
|
+
"ArrowLeft",
|
2600
|
+
"ArrowRight",
|
2601
|
+
"Tab",
|
2602
|
+
"Delete",
|
2603
|
+
"Enter",
|
2604
|
+
"-",
|
2605
|
+
".",
|
2606
|
+
",",
|
2607
|
+
];
|
2608
|
+
if (!allowedKeys.includes(event.key) && !/^\d$/.test(event.key)) {
|
2609
|
+
event.preventDefault();
|
2610
|
+
}
|
2611
|
+
}
|
2612
|
+
else if (this.onlyNumbers &&
|
2613
|
+
!/^\d$/.test(event.key) &&
|
2614
|
+
event.key !== "Backspace" &&
|
2615
|
+
event.key !== "ArrowLeft" &&
|
2616
|
+
event.key !== "ArrowRight") {
|
2617
|
+
event.preventDefault(); // Impede a entrada de caracteres não numéricos
|
2618
|
+
}
|
2619
|
+
const input = event.target;
|
2620
|
+
if (this.onlyNumbersAndDecimals &&
|
2590
2621
|
!/^\d$/.test(event.key) &&
|
2622
|
+
(event.key !== "." || input.value.includes(".")) &&
|
2591
2623
|
event.key !== "Backspace" &&
|
2624
|
+
event.key !== "Delete" &&
|
2625
|
+
event.key !== "Tab" && // Adiciona suporte ao Tab
|
2592
2626
|
event.key !== "ArrowLeft" &&
|
2593
2627
|
event.key !== "ArrowRight") {
|
2594
2628
|
event.preventDefault();
|
@@ -2712,7 +2746,7 @@ class InputComponent {
|
|
2712
2746
|
this.subscriptions.forEach((sub) => sub.unsubscribe());
|
2713
2747
|
}
|
2714
2748
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: InputComponent, deps: [{ token: AuthService }], target: i0.ɵɵFactoryTarget.Component }); }
|
2715
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: InputComponent, selector: "argenta-custom-input", inputs: { label: "label", placeholder: "placeholder", id: "id", type: "type", disabled: "disabled", readonly: "readonly", maxlength: "maxlength", minlength: "minlength", required: "required", pattern: "pattern", autofocus: "autofocus", useCpfMask: "useCpfMask", useCnpjMask: "useCnpjMask", useCepMask: "useCepMask", onlyNumbers: "onlyNumbers", validateInput: "validateInput", labelFontWeight: "labelFontWeight", permissions: "permissions", useMoneyMask: "useMoneyMask", currencyCode: "currencyCode", displayCurrencySymbol: "displayCurrencySymbol", prependText: "prependText", buttonText: "buttonText" }, outputs: { inputEvent: "inputEvent", changeEvent: "changeEvent", focusEvent: "focusEvent", blurEvent: "blurEvent", keyupEvent: "keyupEvent", keydownEvent: "keydownEvent", keypressEvent: "keypressEvent", buttonClick: "buttonClick" }, providers: [
|
2749
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: InputComponent, selector: "argenta-custom-input", inputs: { label: "label", placeholder: "placeholder", id: "id", type: "type", disabled: "disabled", readonly: "readonly", maxlength: "maxlength", minlength: "minlength", required: "required", pattern: "pattern", autofocus: "autofocus", useCpfMask: "useCpfMask", useCnpjMask: "useCnpjMask", useCepMask: "useCepMask", onlyNumbers: "onlyNumbers", onlyNumbersAndDecimals: "onlyNumbersAndDecimals", validateInput: "validateInput", labelFontWeight: "labelFontWeight", permissions: "permissions", useMoneyMask: "useMoneyMask", currencyCode: "currencyCode", displayCurrencySymbol: "displayCurrencySymbol", prependText: "prependText", buttonText: "buttonText", useLatitudeMask: "useLatitudeMask", useLongitudeMask: "useLongitudeMask" }, outputs: { inputEvent: "inputEvent", changeEvent: "changeEvent", focusEvent: "focusEvent", blurEvent: "blurEvent", keyupEvent: "keyupEvent", keydownEvent: "keydownEvent", keypressEvent: "keypressEvent", buttonClick: "buttonClick" }, providers: [
|
2716
2750
|
{
|
2717
2751
|
provide: NG_VALUE_ACCESSOR,
|
2718
2752
|
useExisting: forwardRef(() => InputComponent),
|
@@ -2759,6 +2793,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
2759
2793
|
type: Input
|
2760
2794
|
}], onlyNumbers: [{
|
2761
2795
|
type: Input
|
2796
|
+
}], onlyNumbersAndDecimals: [{
|
2797
|
+
type: Input
|
2762
2798
|
}], validateInput: [{
|
2763
2799
|
type: Input
|
2764
2800
|
}], labelFontWeight: [{
|
@@ -2775,6 +2811,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
2775
2811
|
type: Input
|
2776
2812
|
}], buttonText: [{
|
2777
2813
|
type: Input
|
2814
|
+
}], useLatitudeMask: [{
|
2815
|
+
type: Input
|
2816
|
+
}], useLongitudeMask: [{
|
2817
|
+
type: Input
|
2778
2818
|
}], inputEvent: [{
|
2779
2819
|
type: Output
|
2780
2820
|
}], changeEvent: [{
|