@sapphire-ion/framework 1.0.17 → 1.0.20
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/classes/inputs/table-field-form-builder.mjs +1 -1
- package/esm2022/lib/components/default/default-list/abstract-list.mjs +1 -1
- package/esm2022/lib/components/default/default-list/default-list.component.mjs +4 -4
- package/esm2022/lib/components/default/default-list/header-list/header-list.component.mjs +1 -1
- package/esm2022/lib/components/default/default-list/list.mjs +1 -1
- package/esm2022/lib/components/default/default-pagination/default-pagination.component.mjs +5 -5
- package/esm2022/lib/components/default/default-table/default-table.component.mjs +161 -163
- package/esm2022/lib/components/default/default-table/th-filter/th-filter.component.mjs +3 -3
- package/esm2022/lib/components/default/default-view/abstract-view.mjs +1 -1
- package/esm2022/lib/components/default/default-view/default-view.component.mjs +3 -3
- package/esm2022/lib/components/default/default-view/view.mjs +19 -6
- package/esm2022/lib/components/default-page/default.page.mjs +3 -3
- package/esm2022/lib/components/drawer/drawer-group/drawer-group.component.mjs +3 -3
- package/esm2022/lib/components/drawer/drawer.component.mjs +5 -5
- package/esm2022/lib/components/filter/filter.component.mjs +8 -3
- package/esm2022/lib/components/inputs/custom-input.mjs +1 -1
- package/esm2022/lib/components/inputs/input-bool/input-bool.component.mjs +11 -5
- package/esm2022/lib/components/inputs/input-cep/input-cep.component.mjs +19 -10
- package/esm2022/lib/components/inputs/input-color/input-color.component.mjs +15 -8
- package/esm2022/lib/components/inputs/input-cpf-cnpj/input-cpf-cnpj.component.mjs +46 -15
- package/esm2022/lib/components/inputs/input-date/input-date.component.mjs +12 -6
- package/esm2022/lib/components/inputs/input-decimal/input-decimal.component.mjs +11 -5
- package/esm2022/lib/components/inputs/input-file/input-file.component.mjs +14 -6
- package/esm2022/lib/components/inputs/input-icon/input-icon.component.mjs +12 -6
- package/esm2022/lib/components/inputs/input-select/directives/sion-label-template.directive.mjs +1 -1
- package/esm2022/lib/components/inputs/input-select/directives/sion-option-template.directive.mjs +1 -3
- package/esm2022/lib/components/inputs/input-select/directives/sion-placeholder-template.directive.mjs +1 -1
- package/esm2022/lib/components/inputs/input-select/input-select.component.mjs +13 -5
- package/esm2022/lib/components/inputs/input-select/input.select.configuration.mjs +5 -5
- package/esm2022/lib/components/inputs/input-string/input-string.component.mjs +12 -6
- package/esm2022/lib/components/inputs/input-telefone/input-telefone.component.mjs +22 -11
- package/esm2022/lib/components/inputs/input-textarea/input-textarea.component.mjs +12 -6
- package/esm2022/lib/components/login/login-admin/login-admin.component.mjs +2 -2
- package/esm2022/lib/components/login/login.component.mjs +4 -4
- package/esm2022/lib/components/popover/sion-popover/sion-popover.component.mjs +15 -4
- package/esm2022/lib/components/sion-card/sion-card.component.mjs +26 -0
- package/esm2022/lib/components/stepper/stepper.component.mjs +4 -4
- package/esm2022/lib/guards/error.interceptor.mjs +3 -3
- package/esm2022/lib/index.mjs +4 -2
- package/esm2022/lib/services/generic.service.mjs +84 -0
- package/esm2022/lib/services/usuario.service.mjs +3 -3
- package/esm2022/lib/services/web/http.ativo.service.mjs +4 -22
- package/esm2022/lib/services/web/http.service.mjs +26 -15
- package/esm2022/lib/services/web/storage.service.mjs +3 -3
- package/fesm2022/sapphire-ion-framework.mjs +662 -510
- package/fesm2022/sapphire-ion-framework.mjs.map +1 -1
- package/lib/classes/inputs/table-field-form-builder.d.ts +1 -1
- package/lib/components/default/default-list/abstract-list.d.ts +1 -1
- package/lib/components/default/default-list/default-list.component.d.ts +1 -1
- package/lib/components/default/default-list/list.d.ts +1 -1
- package/lib/components/default/default-pagination/default-pagination.component.d.ts +1 -1
- package/lib/components/default/default-table/default-table.component.d.ts +60 -44
- package/lib/components/default/default-view/abstract-view.d.ts +1 -1
- package/lib/components/default/default-view/default-view.component.d.ts +1 -1
- package/lib/components/default/default-view/view.d.ts +5 -2
- package/lib/components/default-page/default.page.d.ts +1 -1
- package/lib/components/drawer/drawer-group/drawer-group.component.d.ts +1 -1
- package/lib/components/drawer/drawer.component.d.ts +1 -1
- package/lib/components/inputs/custom-input.d.ts +1 -1
- package/lib/components/inputs/input-bool/input-bool.component.d.ts +1 -1
- package/lib/components/inputs/input-cep/input-cep.component.d.ts +3 -3
- package/lib/components/inputs/input-color/input-color.component.d.ts +2 -2
- package/lib/components/inputs/input-cpf-cnpj/input-cpf-cnpj.component.d.ts +3 -4
- package/lib/components/inputs/input-date/input-date.component.d.ts +1 -1
- package/lib/components/inputs/input-decimal/input-decimal.component.d.ts +1 -1
- package/lib/components/inputs/input-file/input-file.component.d.ts +1 -1
- package/lib/components/inputs/input-icon/input-icon.component.d.ts +1 -1
- package/lib/components/inputs/input-select/directives/sion-label-template.directive.d.ts +6 -0
- package/lib/components/inputs/input-select/directives/sion-option-template.directive.d.ts +4 -1
- package/lib/components/inputs/input-select/directives/sion-placeholder-template.directive.d.ts +8 -2
- package/lib/components/inputs/input-select/input-select.component.d.ts +1 -1
- package/lib/components/inputs/input-select/input.select.configuration.d.ts +1 -1
- package/lib/components/inputs/input-string/input-string.component.d.ts +1 -1
- package/lib/components/inputs/input-telefone/input-telefone.component.d.ts +2 -1
- package/lib/components/inputs/input-textarea/input-textarea.component.d.ts +1 -1
- package/lib/components/login/login.component.d.ts +1 -1
- package/lib/components/popover/sion-popover/sion-popover.component.d.ts +1 -0
- package/lib/components/sion-card/sion-card.component.d.ts +11 -0
- package/lib/components/stepper/stepper.component.d.ts +2 -2
- package/lib/guards/error.interceptor.d.ts +1 -1
- package/lib/index.d.ts +2 -1
- package/lib/services/usuario.service.d.ts +1 -1
- package/lib/services/web/http.ativo.service.d.ts +1 -12
- package/lib/services/web/http.service.d.ts +16 -7
- package/lib/services/web/storage.service.d.ts +1 -1
- package/package.json +5 -5
- package/themes/compiled-styles.scss +17 -6
- package/themes/components/default/default-pagination/default-pagination.component.scss +1 -4
- package/themes/components/default/default-table/default-table.component.scss +3 -19
- package/themes/components/inputs/inputs.scss +1 -1
- package/themes/components/popover/sion-popover/sion-popover.component.scss +1 -1
- package/themes/components/sion-card/sion-card.component.scss +0 -0
- package/themes/styles/core.styles.scss +16 -12
- package/themes/styles/login-default.scss +1 -1
- package/themes/styles/styles.scss +1 -1
- package/esm2022/lib/components/inputs/input-cep/input-cep.configuration.mjs +0 -6
- package/esm2022/lib/services/generics.service.mjs +0 -84
- package/lib/components/inputs/input-cep/input-cep.configuration.d.ts +0 -5
- /package/lib/services/{generics.service.d.ts → generic.service.d.ts} +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Component, computed, ElementRef, HostListener, model, ViewChild } from '@angular/core';
|
|
1
|
+
import { Component, computed, ElementRef, forwardRef, HostListener, model, ViewChild } from '@angular/core';
|
|
2
2
|
import { formatNumber } from '@angular/common';
|
|
3
3
|
import { InputCurrencyConfiguration, InputDecimalConfiguration, InputNumberConfiguration, InputPercentageConfiguration } from './input-decimal.configuration';
|
|
4
4
|
import { InputProviderFactory } from '../input-provider-factory';
|
|
@@ -8,7 +8,7 @@ import * as i0 from "@angular/core";
|
|
|
8
8
|
import * as i1 from "@ionic/angular";
|
|
9
9
|
import * as i2 from "@angular/common";
|
|
10
10
|
export class InputDecimalComponent extends CustomInput {
|
|
11
|
-
|
|
11
|
+
setFocus(event) {
|
|
12
12
|
if (this.input && event.target == this.inputContainer.nativeElement) {
|
|
13
13
|
this.input.nativeElement.focus();
|
|
14
14
|
this.input.nativeElement.setSelectionRange(this.valueString.length, this.valueString.length);
|
|
@@ -209,11 +209,17 @@ export class InputDecimalComponent extends CustomInput {
|
|
|
209
209
|
}
|
|
210
210
|
}
|
|
211
211
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: InputDecimalComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
212
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.13", type: InputDecimalComponent, selector: "input-decimal, input-number, input-currency, input-percentage", inputs: { configuration: { classPropertyName: "configuration", publicName: "configuration", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { configuration: "configurationChange" }, host: { listeners: { "paste": "onPaste($event)" } }, providers: [
|
|
212
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.13", type: InputDecimalComponent, selector: "input-decimal, input-number, input-currency, input-percentage", inputs: { configuration: { classPropertyName: "configuration", publicName: "configuration", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { configuration: "configurationChange" }, host: { listeners: { "paste": "onPaste($event)" } }, providers: [
|
|
213
|
+
...InputProviderFactory.GetProviders(InputDecimalComponent),
|
|
214
|
+
{ provide: CustomInput, useExisting: forwardRef(() => InputDecimalComponent) },
|
|
215
|
+
], viewQueries: [{ propertyName: "input", first: true, predicate: ["input"], descendants: true }, { propertyName: "inputContainer", first: true, predicate: ["inputContainer"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div \r\n #inputContainer\r\n class=\"input-container\" \r\n (click)=\"setFocus($event)\"\r\n [class.required]=\"required()\" \r\n [class.submitted]=\"submitted()\" \r\n [class.invalid]=\"invalid\" \r\n [class.disabled]=\"disabled() || loading()\"\r\n [class.loading]=\"loading()\"\r\n>\r\n <div class=\"input-label\"> \r\n <span class=\"truncate\">\r\n {{label()}} \r\n </span>\r\n </div>\r\n\r\n <div class=\"decimal-input-container text-dark\">\r\n <span *ngIf=\"configuration().prefix\" slot=\"start\">{{configuration().prefix}}</span>\r\n <input #input\r\n inputmode=\"numeric\"\r\n [value]=\"valueString\" \r\n (keydown)=\"onKeyDown($event)\"\r\n [disabled]=\"disabled() || loading()\"\r\n />\r\n <span *ngIf=\"configuration().sufix\" slot=\"end\" >{{configuration().sufix}}</span>\r\n </div>\r\n <div class=\"loading-container\" [class.loading]=\"loading()\">\r\n <ion-spinner></ion-spinner>\r\n </div>\r\n</div>", styles: ["input{text-align:right;width:100%}.decimal-input-container{display:flex;width:100%;align-items:center;justify-content:center;gap:.25rem}.decimal-input-container span{flex-shrink:0}\n", "@property --input-color{syntax: \"<color>\"; initial-value: transparent; inherits: false;}.input-container{position:relative;--tw-scale-x: 1;--tw-scale-y: 1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));cursor:text;border-radius:.75rem;padding:.25rem .75rem;--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition:--input-color .2s ease-in-out,box-shadow .2s ease-in-out,opacity .2s ease-in-out,filter .2s ease-in-out;--color: var(--ion-color-dark);--input-color: var(--input-background, var(--ion-color-step-250));--shadow: 0 3px 4px -1px rgb(0 0 0 / .1);--inset-shadow: var(--input-color) 0px 1.75px 2px 0px inset;--focused-shadow: 0 0 1px 2px color-mix(in srgb, var(--ion-color-medium) 35%, transparent);box-shadow:var(--inset-shadow),var(--shadow);will-change:box-shadow,filter opacity;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;background:radial-gradient(ellipse at 0px top,hsl(from var(--input-color) h s l/.5),hsl(from var(--input-color) h s l/.4)),hsl(from var(--ion-color-light) h s l/.8)}.input-container:hover{--tw-brightness: brightness(.9);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.input-container:focus-within,.input-container:focus,.input-container.manual-focus{box-shadow:var(--inset-shadow),var(--shadow),var(--focused-shadow);--tw-brightness: brightness(.9);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.input-container .input-label{pointer-events:none;display:flex;height:1rem;width:100%;min-width:0px;max-width:100%;align-items:center;justify-content:flex-start;gap:.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;line-height:1rem;color:var(--color)}.input-container input,.input-container textarea{height:1.5rem;width:100%;border-radius:.375rem;background-color:transparent;font-size:.875rem;line-height:1.25rem;color:var(--ion-color-dark);outline:2px solid transparent;outline-offset:2px}.input-container.loading{cursor:wait!important}.input-container.required .input-label:after{content:\"*\";color:var(--ion-color-danger);vertical-align:bottom}.input-container.submitted.invalid{--input-color: color-mix(in srgb, var(--ion-color-danger) 50%, transparent)}.input-container.disabled{cursor:not-allowed;opacity:.5;--tw-brightness: brightness(1);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.input-container.disabled *{pointer-events:none}.loading-container{position:absolute;pointer-events:none;width:100%;height:100%;top:0;left:0;display:flex;justify-content:end;align-items:center;padding-right:.5rem;will-change:opacity;transition:opacity .2s ease-in-out;overflow:hidden;opacity:0;z-index:10}.loading-container ion-spinner{will-change:auto;transition:transform .2s ease-in-out;transform:translateY(-100%)}.loading-container.loading{opacity:1}.loading-container.loading ion-spinner{transform:translateY(0)}ion-modal::part(content){border-radius:.75rem;border:1px solid var(--ion-color-step-250)}\n"], dependencies: [{ kind: "component", type: i1.IonSpinner, selector: "ion-spinner", inputs: ["color", "duration", "name", "paused"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
|
|
213
216
|
}
|
|
214
217
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: InputDecimalComponent, decorators: [{
|
|
215
218
|
type: Component,
|
|
216
|
-
args: [{ selector: 'input-decimal, input-number, input-currency, input-percentage', providers: [
|
|
219
|
+
args: [{ selector: 'input-decimal, input-number, input-currency, input-percentage', providers: [
|
|
220
|
+
...InputProviderFactory.GetProviders(InputDecimalComponent),
|
|
221
|
+
{ provide: CustomInput, useExisting: forwardRef(() => InputDecimalComponent) },
|
|
222
|
+
], template: "<div \r\n #inputContainer\r\n class=\"input-container\" \r\n (click)=\"setFocus($event)\"\r\n [class.required]=\"required()\" \r\n [class.submitted]=\"submitted()\" \r\n [class.invalid]=\"invalid\" \r\n [class.disabled]=\"disabled() || loading()\"\r\n [class.loading]=\"loading()\"\r\n>\r\n <div class=\"input-label\"> \r\n <span class=\"truncate\">\r\n {{label()}} \r\n </span>\r\n </div>\r\n\r\n <div class=\"decimal-input-container text-dark\">\r\n <span *ngIf=\"configuration().prefix\" slot=\"start\">{{configuration().prefix}}</span>\r\n <input #input\r\n inputmode=\"numeric\"\r\n [value]=\"valueString\" \r\n (keydown)=\"onKeyDown($event)\"\r\n [disabled]=\"disabled() || loading()\"\r\n />\r\n <span *ngIf=\"configuration().sufix\" slot=\"end\" >{{configuration().sufix}}</span>\r\n </div>\r\n <div class=\"loading-container\" [class.loading]=\"loading()\">\r\n <ion-spinner></ion-spinner>\r\n </div>\r\n</div>", styles: ["input{text-align:right;width:100%}.decimal-input-container{display:flex;width:100%;align-items:center;justify-content:center;gap:.25rem}.decimal-input-container span{flex-shrink:0}\n", "@property --input-color{syntax: \"<color>\"; initial-value: transparent; inherits: false;}.input-container{position:relative;--tw-scale-x: 1;--tw-scale-y: 1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));cursor:text;border-radius:.75rem;padding:.25rem .75rem;--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition:--input-color .2s ease-in-out,box-shadow .2s ease-in-out,opacity .2s ease-in-out,filter .2s ease-in-out;--color: var(--ion-color-dark);--input-color: var(--input-background, var(--ion-color-step-250));--shadow: 0 3px 4px -1px rgb(0 0 0 / .1);--inset-shadow: var(--input-color) 0px 1.75px 2px 0px inset;--focused-shadow: 0 0 1px 2px color-mix(in srgb, var(--ion-color-medium) 35%, transparent);box-shadow:var(--inset-shadow),var(--shadow);will-change:box-shadow,filter opacity;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;background:radial-gradient(ellipse at 0px top,hsl(from var(--input-color) h s l/.5),hsl(from var(--input-color) h s l/.4)),hsl(from var(--ion-color-light) h s l/.8)}.input-container:hover{--tw-brightness: brightness(.9);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.input-container:focus-within,.input-container:focus,.input-container.manual-focus{box-shadow:var(--inset-shadow),var(--shadow),var(--focused-shadow);--tw-brightness: brightness(.9);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.input-container .input-label{pointer-events:none;display:flex;height:1rem;width:100%;min-width:0px;max-width:100%;align-items:center;justify-content:flex-start;gap:.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;line-height:1rem;color:var(--color)}.input-container input,.input-container textarea{height:1.5rem;width:100%;border-radius:.375rem;background-color:transparent;font-size:.875rem;line-height:1.25rem;color:var(--ion-color-dark);outline:2px solid transparent;outline-offset:2px}.input-container.loading{cursor:wait!important}.input-container.required .input-label:after{content:\"*\";color:var(--ion-color-danger);vertical-align:bottom}.input-container.submitted.invalid{--input-color: color-mix(in srgb, var(--ion-color-danger) 50%, transparent)}.input-container.disabled{cursor:not-allowed;opacity:.5;--tw-brightness: brightness(1);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.input-container.disabled *{pointer-events:none}.loading-container{position:absolute;pointer-events:none;width:100%;height:100%;top:0;left:0;display:flex;justify-content:end;align-items:center;padding-right:.5rem;will-change:opacity;transition:opacity .2s ease-in-out;overflow:hidden;opacity:0;z-index:10}.loading-container ion-spinner{will-change:auto;transition:transform .2s ease-in-out;transform:translateY(-100%)}.loading-container.loading{opacity:1}.loading-container.loading ion-spinner{transform:translateY(0)}ion-modal::part(content){border-radius:.75rem;border:1px solid var(--ion-color-step-250)}\n"] }]
|
|
217
223
|
}], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { input: [{
|
|
218
224
|
type: ViewChild,
|
|
219
225
|
args: ['input']
|
|
@@ -234,4 +240,4 @@ const Sanitize = ((v) => {
|
|
|
234
240
|
const lstNumbers = ["0", "1", "2", "3", "4", "5", "6", "7", "8", "9"];
|
|
235
241
|
const lstIgnoreNotPrevent = ["Tab", "CapsLock", "Shift", "Control", "Alt", "ArrowRight", "ArrowUp", "ArrowDown", "ArrowLeft"];
|
|
236
242
|
const lstEspecialCases = ["Backspace", "Delete"];
|
|
237
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtZGVjaW1hbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvaW5wdXRzL2lucHV0LWRlY2ltYWwvaW5wdXQtZGVjaW1hbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvaW5wdXRzL2lucHV0LWRlY2ltYWwvaW5wdXQtZGVjaW1hbC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBdUIsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3JILE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUseUJBQXlCLEVBQUUsd0JBQXdCLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUM5SixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDOUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGlDQUFpQyxDQUFDOzs7O0FBUTFELE1BQU0sT0FBTyxxQkFBc0IsU0FBUSxXQUFtQjtJQVFuRCxLQUFLLENBQUMsS0FBaUI7UUFDOUIsSUFBRyxJQUFJLENBQUMsS0FBSyxJQUFJLEtBQUssQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLGNBQWMsQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUNuRSxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNqQyxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sRUFBRSxJQUFJ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bzlCQTZCTTs7NEZEaEJPLHFCQUFxQjtrQkFOakMsU0FBUzsrQkFDRSwrREFBK0QsYUFHOUQsQ0FBQyxHQUFHLG9CQUFvQixDQUFDLFlBQVksdUJBQXVCLENBQUM7K0VBUXBELEtBQUs7c0JBQXhCLFNBQVM7dUJBQUMsT0FBTztnQkFDVyxjQUFjO3NCQUExQyxTQUFTO3VCQUFDLGdCQUFnQjtnQkFzQzNCLE9BQU87c0JBRE4sWUFBWTt1QkFBQyxPQUFPLEVBQUUsQ0FBQyxRQUFRLENBQUM7O0FBZ0xuQyxNQUFNLGVBQWUsR0FBRyxvQkFBb0IsQ0FBQTtBQUU1QyxNQUFNLGdCQUFnQixHQUFZLEdBQUcsQ0FBQztBQUN0QyxNQUFNLGlCQUFpQixHQUFXLEdBQUcsQ0FBQztBQUV0QyxNQUFNLFFBQVEsR0FBYSxDQUFDLENBQUMsQ0FBUyxFQUFVLEVBQUU7SUFDaEQsT0FBTyxDQUFDLENBQUMsVUFBVSxDQUFDLGlCQUFpQixFQUFFLEVBQUUsQ0FBQztTQUNqQyxPQUFPLENBQUksZ0JBQWdCLEVBQUcsRUFBRSxDQUFDLENBQUE7QUFDcEMsQ0FBQyxDQUFDLENBQUM7QUFFWCxNQUFNLFVBQVUsR0FBWSxDQUFFLEdBQUcsRUFBQyxHQUFHLEVBQUMsR0FBRyxFQUFDLEdBQUcsRUFBQyxHQUFHLEVBQUMsR0FBRyxFQUFDLEdBQUcsRUFBQyxHQUFHLEVBQUMsR0FBRyxFQUFDLEdBQUcsQ0FBRSxDQUFDO0FBQ3hFLE1BQU0sbUJBQW1CLEdBQUcsQ0FBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLFdBQVcsQ0FBQyxDQUFDO0FBQy9ILE1BQU0sZ0JBQWdCLEdBQU0sQ0FBRSxXQUFXLEVBQUUsUUFBUSxDQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIGNvbXB1dGVkLCBFbGVtZW50UmVmLCBIb3N0TGlzdGVuZXIsIG1vZGVsLCBNb2RlbFNpZ25hbCwgU2lnbmFsLCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgZm9ybWF0TnVtYmVyIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgSW5wdXRDdXJyZW5jeUNvbmZpZ3VyYXRpb24sIElucHV0RGVjaW1hbENvbmZpZ3VyYXRpb24sIElucHV0TnVtYmVyQ29uZmlndXJhdGlvbiwgSW5wdXRQZXJjZW50YWdlQ29uZmlndXJhdGlvbiB9IGZyb20gJy4vaW5wdXQtZGVjaW1hbC5jb25maWd1cmF0aW9uJztcclxuaW1wb3J0IHsgSW5wdXRQcm92aWRlckZhY3RvcnkgfSBmcm9tICcuLi9pbnB1dC1wcm92aWRlci1mYWN0b3J5JztcclxuaW1wb3J0IHsgQ3VzdG9tSW5wdXQgfSBmcm9tICcuLi9jdXN0b20taW5wdXQnO1xyXG5pbXBvcnQgeyBUaW1lb3V0IH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvdXRpbHMuc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2lucHV0LWRlY2ltYWwsIGlucHV0LW51bWJlciwgaW5wdXQtY3VycmVuY3ksIGlucHV0LXBlcmNlbnRhZ2UnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9pbnB1dC1kZWNpbWFsLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9pbnB1dC1kZWNpbWFsLmNvbXBvbmVudC5zY3NzJywgJy4uL2lucHV0cy5zY3NzJ10sXHJcbiAgcHJvdmlkZXJzOiBbLi4uSW5wdXRQcm92aWRlckZhY3RvcnkuR2V0UHJvdmlkZXJzKElucHV0RGVjaW1hbENvbXBvbmVudCldLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgSW5wdXREZWNpbWFsQ29tcG9uZW50IGV4dGVuZHMgQ3VzdG9tSW5wdXQ8bnVtYmVyPiB7XHJcblxyXG4gIGNvbmZpZ3VyYXRpb246IE1vZGVsU2lnbmFsPElucHV0RGVjaW1hbENvbmZpZ3VyYXRpb24+ID0gbW9kZWw8SW5wdXREZWNpbWFsQ29uZmlndXJhdGlvbj4oKTtcclxuICBkaWdpdHNJbmZvOiBTaWduYWw8c3RyaW5nPiA9IGNvbXB1dGVkKCgpID0+IGAxLiR7dGhpcy5jb25maWd1cmF0aW9uKCkucHJlY2lzaW9ufS0ke3RoaXMuY29uZmlndXJhdGlvbigpLnByZWNpc2lvbn1gKTtcclxuICBkaXZpZGVyOiBTaWduYWw8bnVtYmVyPiA9IGNvbXB1dGVkKCgpID0+IE1hdGgucG93KDEwLCB0aGlzLmNvbmZpZ3VyYXRpb24oKS5wcmVjaXNpb24pKTtcclxuXHJcbiAgQFZpZXdDaGlsZCgnaW5wdXQnKSBpbnB1dDogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PjtcclxuICBAVmlld0NoaWxkKCdpbnB1dENvbnRhaW5lcicpIGlucHV0Q29udGFpbmVyOiBFbGVtZW50UmVmPEhUTUxEaXZFbGVtZW50PjtcclxuICBvdmVycmlkZSBmb2N1cyhldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xyXG4gICAgaWYodGhpcy5pbnB1dCAmJiBldmVudC50YXJnZXQgPT0gdGhpcy5pbnB1dENvbnRhaW5lci5uYXRpdmVFbGVtZW50KSB7IFxyXG4gICAgICB0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTsgXHJcbiAgICAgIHRoaXMuaW5wdXQubmF0aXZlRWxlbWVudC5zZXRTZWxlY3Rpb25SYW5nZSh0aGlzLnZhbHVlU3RyaW5nLmxlbmd0aCwgdGhpcy52YWx1ZVN0cmluZy5sZW5ndGgpOyBcclxuICAgIH0gICAgICBcclxuICB9XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBvdmVycmlkZSBlbGVtZW50UmVmOiBFbGVtZW50UmVmXHJcbiAgKSB7IFxyXG4gICAgc3VwZXIoKTsgXHJcbiAgICB0aGlzLnZhbHVlLnNldCgwKTtcclxuICAgIGNvbnN0IHNlbGVjdG9yOiBzdHJpbmcgPSB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC50YWdOYW1lLnRvTG93ZXJDYXNlKCkuc3BsaXQoJy0nKS5hdCgtMSk7XHJcbiAgICBpZihzZWxlY3RvciA9PSBcIm51bWJlclwiICAgICAmJiAhdGhpcy5jb25maWd1cmF0aW9uKCkpeyB0aGlzLmNvbmZpZ3VyYXRpb24uc2V0KG5ldyBJbnB1dE51bWJlckNvbmZpZ3VyYXRpb24oKSk7ICAgICB9IGVsc2VcclxuICAgIGlmKHNlbGVjdG9yID09IFwiZGVjaW1hbFwiICAgICYmICF0aGlzLmNvbmZpZ3VyYXRpb24oKSl7IHRoaXMuY29uZmlndXJhdGlvbi5zZXQobmV3IElucHV0RGVjaW1hbENvbmZpZ3VyYXRpb24oKSk7ICAgIH0gZWxzZVxyXG4gICAgaWYoc2VsZWN0b3IgPT0gXCJjdXJyZW5jeVwiICAgJiYgIXRoaXMuY29uZmlndXJhdGlvbigpKXsgdGhpcy5jb25maWd1cmF0aW9uLnNldChuZXcgSW5wdXRDdXJyZW5jeUNvbmZpZ3VyYXRpb24oKSk7ICAgfSBlbHNlXHJcbiAgICBpZihzZWxlY3RvciA9PSBcInBlcmNlbnRhZ2VcIiAmJiAhdGhpcy5jb25maWd1cmF0aW9uKCkpeyB0aGlzLmNvbmZpZ3VyYXRpb24uc2V0KG5ldyBJbnB1dFBlcmNlbnRhZ2VDb25maWd1cmF0aW9uKCkpOyB9XHJcbiAgICB0aGlzLlNldFZhbHVlU3RyaW5nKCk7IFxyXG4gIH1cclxuICBcclxuICBvdmVycmlkZSB3cml0ZVZhbHVlKG9iajogbnVtYmVyKTogdm9pZCB8IFByb21pc2U8dm9pZD4ge1xyXG4gICAgdGhpcy52YWx1ZS5zZXQob2JqKTtcclxuICAgIHRoaXMuU2V0VmFsdWVTdHJpbmcoKTtcclxuICAgIHRoaXMucnVuVmFsaWRhdGlvbigpO1xyXG4gIH1cclxuICBvdmVycmlkZSBTZXRWYWx1ZShvYmo6IG51bWJlcik6IHZvaWQge1xyXG4gICAgdGhpcy52YWx1ZS5zZXQob2JqKTtcclxuICAgIHRoaXMuU2V0VmFsdWVTdHJpbmcoKTtcclxuICAgIHRoaXMucnVuVmFsaWRhdGlvbigpO1xyXG4gICAgdGhpcy5wcm9wYWdhdGVDaGFuZ2Uob2JqKTsgXHJcbiAgfVxyXG4gIFNldFZhbHVlU3RyaW5nKCk6IHZvaWQge1xyXG4gICAgdGhpcy52YWx1ZVN0cmluZyA9IGZvcm1hdE51bWJlcih0aGlzLnZhbHVlKCksIFwicHQtQlJcIiwgdGhpcy5kaWdpdHNJbmZvKCkpO1xyXG4gIH1cclxuICBcclxuICB2YWx1ZVN0cmluZzogc3RyaW5nO1xyXG5cclxuICBASG9zdExpc3RlbmVyKCdwYXN0ZScsIFsnJGV2ZW50J10pXHJcbiAgb25QYXN0ZShldmVudDogQ2xpcGJvYXJkRXZlbnQpOiB2b2lkIHtcclxuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICBcclxuICAgIGxldCBjbGlwYm9hcmREYXRhID0gZXZlbnQuY2xpcGJvYXJkRGF0YSB8fCB3aW5kb3dbJ2NsaXBib2FyZERhdGEnXTtcclxuICAgIGxldCBwYXN0ZWRUZXh0ICAgID0gY2xpcGJvYXJkRGF0YS5nZXREYXRhKCd0ZXh0Jyk7XHJcblxyXG4gICAgY29uc3QgcyA9IHBhc3RlZFRleHQucmVwbGFjZUFsbCgnLicsICcnKS5yZXBsYWNlQWxsKCcsJywgJy4nKTtcclxuICAgIGNvbnN0IG4gPSBOdW1iZXIocyk7XHJcblxyXG4gICAgaWYoTnVtYmVyKHMpICYmIGlzRmluaXRlKG4pKXsgXHJcbiAgICAgIHRoaXMuU2V0VmFsdWUobik7XHJcbiAgICB9XHJcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gIH1cclxuXHJcbiAgYXN5bmMgb25LZXlEb3duKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogUHJvbWlzZTx2b2lkPntcclxuICAgIGNvbnN0IHZhbHVlOiBzdHJpbmcgPSB0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQudmFsdWU7XHJcblxyXG4gICAgY29uc3Qgc2VsZWN0aW9uU3RhcnQ6IG51bWJlciA9IHRoaXMuaW5wdXQubmF0aXZlRWxlbWVudC5zZWxlY3Rpb25TdGFydDtcclxuICAgIGNvbnN0IHNlbGVjdGlvbkVuZCAgOiBudW1iZXIgPSB0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQuc2VsZWN0aW9uRW5kO1xyXG5cclxuICAgIGNvbnN0IGF0TGVmdCAgPSB2YWx1ZS5zbGljZSgwLCBzZWxlY3Rpb25TdGFydCk7IFxyXG4gICAgY29uc3QgYXRSaWdodCA9IHZhbHVlLnNsaWNlKHNlbGVjdGlvbkVuZCwgdmFsdWUubGVuZ3RoKTsgXHJcbiAgICBpZihbXCItXCJdLmluY2x1ZGVzKGV2ZW50LmtleSkpeyBcclxuICAgICAgcmV0dXJuIGF3YWl0IHRoaXMuSGFuZGxlTmVnYXRpdmUoZXZlbnQsIHNlbGVjdGlvblN0YXJ0LCBzZWxlY3Rpb25FbmQsIHZhbHVlLCBhdExlZnQsIGF0UmlnaHQpO1xyXG4gICAgfWVsc2VcclxuICAgIGlmKGxzdE51bWJlcnMuaW5jbHVkZXMoZXZlbnQua2V5KSl7IFxyXG4gICAgICByZXR1cm4gYXdhaXQgdGhpcy5IYW5kbGVOdW1iZXIoZXZlbnQsIHNlbGVjdGlvblN0YXJ0LCBzZWxlY3Rpb25FbmQsIHZhbHVlLCBhdExlZnQsIGF0UmlnaHQpOyBcclxuICAgIH1lbHNlXHJcbiAgICBpZihsc3RFc3BlY2lhbENhc2VzLmluY2x1ZGVzKGV2ZW50LmtleSkpeyBcclxuICAgICAgcmV0dXJuIGF3YWl0IHRoaXMuSGFuZGxlRXNwZWNpYWwoZXZlbnQsIHNlbGVjdGlvblN0YXJ0LCBzZWxlY3Rpb25FbmQsIHZhbHVlLCBhdExlZnQsIGF0UmlnaHQpOyBcclxuICAgIH1lbHNlXHJcbiAgICBpZihbXCJBXCIsIFwiYVwiXS5pbmNsdWRlcyhldmVudC5rZXkpICYmIGV2ZW50LmN0cmxLZXkpeyBcclxuICAgICAgcmV0dXJuOyBcclxuICAgIH1lbHNlXHJcbiAgICBpZihbXCJDXCIsIFwiY1wiXS5pbmNsdWRlcyhldmVudC5rZXkpICYmIGV2ZW50LmN0cmxLZXkpeyBcclxuICAgICAgcmV0dXJuOyBcclxuICAgIH1lbHNlXHJcbiAgICBpZihbXCJWXCIsIFwidlwiXS5pbmNsdWRlcyhldmVudC5rZXkpICYmIGV2ZW50LmN0cmxLZXkpeyBcclxuICAgICAgcmV0dXJuOyBcclxuICAgIH1lbHNlXHJcbiAgICBpZihsc3RJZ25vcmVOb3RQcmV2ZW50LmluY2x1ZGVzKGV2ZW50LmtleSkpeyBcclxuICAgICAgcmV0dXJuOyBcclxuICAgIH1lbHNle1xyXG4gICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgYXN5bmMgSGFuZGxlTmVnYXRpdmUoZXZlbnQ6IEtleWJvYXJkRXZlbnQsIHNlbGVjdGlvblN0YXJ0OiBudW1iZXIsIHNlbGVjdGlvbkVuZDogbnVtYmVyLCB2YWx1ZTogc3RyaW5nLCBhdExlZnQ6IHN0cmluZywgYXRSaWdodDogc3RyaW5nKTogUHJvbWlzZTx2b2lkPntcclxuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcblxyXG4gICAgbGV0IGZvY3VzRW5kID0gKHNlbGVjdGlvblN0YXJ0ID09IDAgJiYgc2VsZWN0aW9uRW5kID09IHRoaXMudmFsdWVTdHJpbmcubGVuZ3RoKTtcclxuICAgIC8qKiBbIFJlbW92ZSBkZWNpbWFsU2VwYXJhdG9yICYgdGhvdXNhbmRTZXBhcmF0b3IgXSAqL1xyXG4gICAgbGV0IGY7XHJcbiAgICBpZighYXRMZWZ0LmluY2x1ZGVzKCctJykpe1xyXG4gICAgICBmID0gZXZlbnQua2V5ICsgYXRMZWZ0ICsgYXRSaWdodDtcclxuICAgIH1lbHNle1xyXG4gICAgICBmID0gKGF0TGVmdCArIGF0UmlnaHQpLnJlcGxhY2UoJy0nLCAnJylcclxuICAgIH1cclxuXHJcbiAgICBpZihmID09IFwiLVwiKXsgXHJcbiAgICAgIGlmKHZhbHVlLmluY2x1ZGVzKCctJykpe1xyXG4gICAgICAgIGYgPSB2YWx1ZS5yZXBsYWNlKCctJywgJycpO1xyXG4gICAgICB9XHJcbiAgICAgIGVsc2V7XHJcbiAgICAgICAgZiA9IGAtJHt2YWx1ZX1gO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgQ3VycmVudFZhbHVlOiBudW1iZXIgPSB0aGlzLlNhbml0aXplVmFsdWUoZik7XHJcbiAgICBpZihDdXJyZW50VmFsdWUgPT0gdGhpcy52YWx1ZSgpKXsgcmV0dXJuOyB9XHJcbiAgICBcclxuICAgIC8vWyBIYW5kbGUgU2V0IEN1cnNvciBQb3NpdGlvbl1cclxuICAgIHRoaXMuU2V0VmFsdWUoQ3VycmVudFZhbHVlKTtcclxuICAgIGNvbnN0IG5ld1BvcyA9IHNlbGVjdGlvblN0YXJ0ICsgMSArIHRoaXMudmFsdWVTdHJpbmcuc3BsaXQoJy4nKS5sZW5ndGggLSB2YWx1ZS5zcGxpdCgnLicpLmxlbmd0aDtcclxuICAgIFxyXG4gICAgLy9Ib3JyaXZlbCwgbWFzIG5hbyB0ZW0gdW1hIGFsdGVybmF0aXZhIGJvYSwgaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvNTExMDg4L3VzZS1qYXZhc2NyaXB0LXRvLXBsYWNlLWN1cnNvci1hdC1lbmQtb2YtdGV4dC1pbi10ZXh0LWlucHV0LWVsZW1lbnRcclxuICAgIGF3YWl0IFRpbWVvdXQoMCk7XHJcbiAgICB0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQuc2V0U2VsZWN0aW9uUmFuZ2UobmV3UG9zLCBuZXdQb3MpOyBcclxuICAgIGlmKGZvY3VzRW5kKXtcclxuICAgICAgdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50LnNldFNlbGVjdGlvblJhbmdlKHRoaXMudmFsdWVTdHJpbmcubGVuZ3RoLCB0aGlzLnZhbHVlU3RyaW5nLmxlbmd0aCk7IFxyXG4gICAgfVxyXG4gICAgcmV0dXJuO1xyXG4gIH1cclxuXHJcbiAgYXN5bmMgSGFuZGxlTnVtYmVyKGV2ZW50OiBLZXlib2FyZEV2ZW50LCBzZWxlY3Rpb25TdGFydDogbnVtYmVyLCBzZWxlY3Rpb25FbmQ6IG51bWJlciwgdmFsdWU6IHN0cmluZywgYXRMZWZ0OiBzdHJpbmcsIGF0UmlnaHQ6IHN0cmluZyk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICAgIFxyXG4gICAgbGV0IGZvY3VzRW5kID0gKHNlbGVjdGlvblN0YXJ0ID09IDAgJiYgc2VsZWN0aW9uRW5kID09IHRoaXMudmFsdWVTdHJpbmcubGVuZ3RoKTtcclxuICAgIC8qKiBbIFJlbW92ZSBkZWNpbWFsU2VwYXJhdG9yICYgdGhvdXNhbmRTZXBhcmF0b3IgXSAqL1xyXG4gICAgY29uc3QgZiA9IGF0TGVmdCArIGV2ZW50LmtleSArIGF0UmlnaHQ7XHJcbiAgICBjb25zdCBDdXJyZW50VmFsdWU6IG51bWJlciA9IHRoaXMuU2FuaXRpemVWYWx1ZShmKTtcclxuICAgIGlmKEN1cnJlbnRWYWx1ZSA9PSB0aGlzLnZhbHVlKCkpeyByZXR1cm47IH1cclxuICAgIGlmKEN1cnJlbnRWYWx1ZSA+IGRlY2ltYWxNYXhWYWx1ZSl7IHJldHVybjsgfVxyXG4gICAgXHJcbiAgICAvL1sgSGFuZGxlIFNldCBDdXJzb3IgUG9zaXRpb25dXHJcbiAgICB0aGlzLlNldFZhbHVlKEN1cnJlbnRWYWx1ZSk7XHJcbiAgICBjb25zdCBuZXdQb3NpdGlvbiA9IHNlbGVjdGlvblN0YXJ0ICsgMSArIHRoaXMudmFsdWVTdHJpbmcuc3BsaXQoJy4nKS5sZW5ndGggLSB2YWx1ZS5zcGxpdCgnLicpLmxlbmd0aDtcclxuICAgIFxyXG4gICAgLy9Ib3JyaXZlbCwgbWFzIG5hbyBzZW0gdW1hIGFsdGVybmF0aXZhIGJvYSwgaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvNTExMDg4L3VzZS1qYXZhc2NyaXB0LXRvLXBsYWNlLWN1cnNvci1hdC1lbmQtb2YtdGV4dC1pbi10ZXh0LWlucHV0LWVsZW1lbnRcclxuICAgIGF3YWl0IFRpbWVvdXQoMCk7XHJcbiAgICB0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQuc2V0U2VsZWN0aW9uUmFuZ2UobmV3UG9zaXRpb24sIG5ld1Bvc2l0aW9uKTsgXHJcbiAgICBpZihmb2N1c0VuZCl7XHJcbiAgICAgIHRoaXMuaW5wdXQubmF0aXZlRWxlbWVudC5zZXRTZWxlY3Rpb25SYW5nZSh0aGlzLnZhbHVlU3RyaW5nLmxlbmd0aCwgdGhpcy52YWx1ZVN0cmluZy5sZW5ndGgpOyBcclxuICAgIH1cclxuICAgIHJldHVybjtcclxuICB9XHJcblxyXG4gIFNhbml0aXplVmFsdWUoZjogc3RyaW5nKTogbnVtYmVye1xyXG4gICAgdmFyIEN1cnJlbnRWYWx1ZTogbnVtYmVyID0gTnVtYmVyKFNhbml0aXplKGYpKSAvIHRoaXMuZGl2aWRlcigpO1xyXG4gICAgaWYoQ3VycmVudFZhbHVlID49IGRlY2ltYWxNYXhWYWx1ZSl7IFxyXG4gICAgICByZXR1cm4gdGhpcy52YWx1ZSgpOyBcclxuICAgIH1cclxuICAgIHJldHVybiBDdXJyZW50VmFsdWU7XHJcbiAgfVxyXG5cclxuICBhc3luYyBIYW5kbGVFc3BlY2lhbChldmVudDogS2V5Ym9hcmRFdmVudCwgc2VsZWN0aW9uU3RhcnQ6IG51bWJlciwgc2VsZWN0aW9uRW5kOiBudW1iZXIsIHZhbHVlOiBzdHJpbmcsIGF0TGVmdDogc3RyaW5nLCBhdFJpZ2h0OiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICBpZihzZWxlY3Rpb25TdGFydCA9PSBzZWxlY3Rpb25FbmQpe1xyXG4gICAgICBpZihldmVudC5rZXkgPT0gXCJCYWNrc3BhY2VcIil7XHJcbiAgICAgICAgaWYoc2VsZWN0aW9uU3RhcnQgPT0gIHNlbGVjdGlvbkVuZCAmJiBzZWxlY3Rpb25TdGFydCA9PSAwKXsgXHJcbiAgICAgICAgICByZXR1cm47IFxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgY29uc3QgcHJldmlvdXNDaGFyOiBzdHJpbmcgPSBhdExlZnQuYXQoLTEpO1xyXG4gICAgICAgIGNvbnN0IGlzTnVtYmVyID0gbHN0TnVtYmVycy5pbmNsdWRlcyhwcmV2aW91c0NoYXIpO1xyXG4gICAgICAgIGNvbnN0IGYgPSBhdExlZnQuc2xpY2UoMCwgYXRMZWZ0Lmxlbmd0aCAtIChpc051bWJlciA/IDEgOiAyKSkgKyBhdFJpZ2h0O1xyXG4gICAgICAgIGNvbnN0IEN1cnJlbnRWYWx1ZSA9IHRoaXMuU2FuaXRpemVWYWx1ZShmKTtcclxuICAgICAgICBcclxuICAgICAgICAvL1sgSGFuZGxlIFNldCBDdXJzb3IgUG9zaXRpb25dXHJcbiAgICAgICAgdGhpcy5TZXRWYWx1ZShDdXJyZW50VmFsdWUpO1xyXG4gICAgICAgIGF3YWl0IFRpbWVvdXQoMCk7XHJcbiAgICAgICAgbGV0IHBvcyA9IGlzTnVtYmVyID8gc2VsZWN0aW9uU3RhcnQgLSAxIDogc2VsZWN0aW9uU3RhcnQgLSAyO1xyXG5cclxuICAgICAgICBpZiAoc2VsZWN0aW9uRW5kID09IHRoaXMudmFsdWVTdHJpbmcubGVuZ3RoKSB7XHJcbiAgICAgICAgICBwb3MrKztcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50LnNldFNlbGVjdGlvblJhbmdlKHBvcywgcG9zKTsgXHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9ZWxzZVxyXG4gICAgICBpZihldmVudC5rZXkgPT0gXCJEZWxldGVcIil7XHJcbiAgICAgICAgY29uc3QgbmV4dENoYXI6IHN0cmluZyA9ICBhdFJpZ2h0WzBdO1xyXG4gICAgICAgIGNvbnN0IGlzTnVtYmVyID0gbHN0TnVtYmVycy5pbmNsdWRlcyhuZXh0Q2hhcik7XHJcbiAgICAgICAgY29uc3QgZiA9IGF0TGVmdCArIGF0UmlnaHQuc2xpY2UoaXNOdW1iZXIgPyAxIDogMik7XHJcbiAgICAgICAgY29uc3QgQ3VycmVudFZhbHVlID0gIHRoaXMuU2FuaXRpemVWYWx1ZShmKTtcclxuICAgICAgICBcclxuICAgICAgICAvL1sgSGFuZGxlIFNldCBDdXJzb3IgUG9zaXRpb25dXHJcbiAgICAgICAgdGhpcy5TZXRWYWx1ZShDdXJyZW50VmFsdWUpO1xyXG4gICAgICAgIHZhciBwb3M6IG51bWJlciA9IHNlbGVjdGlvblN0YXJ0O1xyXG4gICAgICAgIGlmKHBvcyA8PSAtMSl7IHBvcyA9IDA7IH1cclxuICAgICAgICBpZihDdXJyZW50VmFsdWUgPCAxKXtcclxuICAgICAgICAgIHBvcysrO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZighaXNOdW1iZXIpe1xyXG4gICAgICAgICAgcG9zKys7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBhd2FpdCBUaW1lb3V0KDApO1xyXG4gICAgICAgIHRoaXMuaW5wdXQubmF0aXZlRWxlbWVudC5zZXRTZWxlY3Rpb25SYW5nZShwb3MsIHBvcyk7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcbiAgICB9ZWxzZXtcclxuICAgICAgY29uc3QgZiA9IGF0TGVmdCArIGF0UmlnaHQ7XHJcbiAgICAgIGNvbnN0IEN1cnJlbnRWYWx1ZSA9IHRoaXMuU2FuaXRpemVWYWx1ZShmKTtcclxuICAgICAgdGhpcy5TZXRWYWx1ZShDdXJyZW50VmFsdWUpO1xyXG4gICAgICBcclxuICAgICAgYXdhaXQgVGltZW91dCgwKTtcclxuICAgICAgdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50LnNldFNlbGVjdGlvblJhbmdlKHRoaXMudmFsdWVTdHJpbmcubGVuZ3RoLCB0aGlzLnZhbHVlU3RyaW5nLmxlbmd0aCk7IFxyXG5cclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcbmNvbnN0IGRlY2ltYWxNYXhWYWx1ZSA9IDlfMDAwXzAwMF8wMDBfMDAwLjAwXHJcblxyXG5jb25zdCBkZWNpbWFsU2VwYXJhdG9yIDogc3RyaW5nID0gXCIsXCI7XHJcbmNvbnN0IHRob3VzYW5kU2VwYXJhdG9yOiBzdHJpbmcgPSBcIi5cIjtcclxuXHJcbmNvbnN0IFNhbml0aXplOiBGdW5jdGlvbiA9ICgodjogc3RyaW5nKTogc3RyaW5nID0+IHsgXHJcbiAgcmV0dXJuIHYucmVwbGFjZUFsbCh0aG91c2FuZFNlcGFyYXRvciwgJycpXHJcbiAgICAgICAgICAucmVwbGFjZSAgIChkZWNpbWFsU2VwYXJhdG9yICwgJycpIFxyXG4gICAgICAgIH0pO1xyXG5cclxuY29uc3QgbHN0TnVtYmVycyAgICAgICAgICA9IFsgXCIwXCIsXCIxXCIsXCIyXCIsXCIzXCIsXCI0XCIsXCI1XCIsXCI2XCIsXCI3XCIsXCI4XCIsXCI5XCIgXTtcclxuY29uc3QgbHN0SWdub3JlTm90UHJldmVudCA9IFsgXCJUYWJcIiwgXCJDYXBzTG9ja1wiLCBcIlNoaWZ0XCIsIFwiQ29udHJvbFwiLCBcIkFsdFwiLCBcIkFycm93UmlnaHRcIiwgXCJBcnJvd1VwXCIsIFwiQXJyb3dEb3duXCIsIFwiQXJyb3dMZWZ0XCJdO1xyXG5jb25zdCBsc3RFc3BlY2lhbENhc2VzICAgID0gWyBcIkJhY2tzcGFjZVwiLCBcIkRlbGV0ZVwiIF07IiwiPGRpdiBcclxuICAjaW5wdXRDb250YWluZXJcclxuICBjbGFzcz1cImlucHV0LWNvbnRhaW5lclwiIFxyXG4gIChjbGljayk9XCJmb2N1cygkZXZlbnQpXCJcclxuICBbY2xhc3MucmVxdWlyZWRdPVwicmVxdWlyZWQoKVwiIFxyXG4gIFtjbGFzcy5zdWJtaXR0ZWRdPVwic3VibWl0dGVkKClcIiBcclxuICBbY2xhc3MuaW52YWxpZF09XCJpbnZhbGlkXCIgXHJcbiAgW2NsYXNzLmRpc2FibGVkXT1cImRpc2FibGVkKCkgfHwgbG9hZGluZygpXCJcclxuICBbY2xhc3MubG9hZGluZ109XCJsb2FkaW5nKClcIlxyXG4+XHJcbiAgPGRpdiBjbGFzcz1cImlucHV0LWxhYmVsXCI+IFxyXG4gICAgPHNwYW4gY2xhc3M9XCJ0cnVuY2F0ZVwiPlxyXG4gICAgICB7e2xhYmVsKCl9fSBcclxuICAgIDwvc3Bhbj5cclxuICA8L2Rpdj5cclxuXHJcbiAgPGRpdiBjbGFzcz1cImRlY2ltYWwtaW5wdXQtY29udGFpbmVyIHRleHQtZGFya1wiPlxyXG4gICAgPHNwYW4gKm5nSWY9XCJjb25maWd1cmF0aW9uKCkucHJlZml4XCIgc2xvdD1cInN0YXJ0XCI+e3tjb25maWd1cmF0aW9uKCkucHJlZml4fX08L3NwYW4+XHJcbiAgICA8aW5wdXQgI2lucHV0XHJcbiAgICAgIGlucHV0bW9kZT1cIm51bWVyaWNcIlxyXG4gICAgICBbdmFsdWVdPVwidmFsdWVTdHJpbmdcIiBcclxuICAgICAgKGtleWRvd24pPVwib25LZXlEb3duKCRldmVudClcIlxyXG4gICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWQoKSB8fCBsb2FkaW5nKClcIlxyXG4gICAgLz5cclxuICAgIDxzcGFuICpuZ0lmPVwiY29uZmlndXJhdGlvbigpLnN1Zml4XCIgIHNsb3Q9XCJlbmRcIiAgPnt7Y29uZmlndXJhdGlvbigpLnN1Zml4fX08L3NwYW4+XHJcbiAgPC9kaXY+XHJcbiAgPGRpdiBjbGFzcz1cImxvYWRpbmctY29udGFpbmVyXCIgW2NsYXNzLmxvYWRpbmddPVwibG9hZGluZygpXCI+XHJcbiAgICA8aW9uLXNwaW5uZXI+PC9pb24tc3Bpbm5lcj5cclxuICA8L2Rpdj5cclxuPC9kaXY+Il19
|
|
243
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtZGVjaW1hbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvaW5wdXRzL2lucHV0LWRlY2ltYWwvaW5wdXQtZGVjaW1hbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvaW5wdXRzL2lucHV0LWRlY2ltYWwvaW5wdXQtZGVjaW1hbC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQXVCLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqSSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLDBCQUEwQixFQUFFLHlCQUF5QixFQUFFLHdCQUF3QixFQUFFLDRCQUE0QixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDOUosT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDakUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQzs7OztBQVcxRCxNQUFNLE9BQU8scUJBQXNCLFNBQVEsV0FBbUI7SUFRbkQsUUFBUSxDQUFDLEtBQXdCO1FBQ3hDLElBQUcsSUFBSSxDQUFDLEtBQUssSUFBSSxLQUFLLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxjQUFjLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDbkUsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDakMsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFN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Q0FBQyxDQUFDO0FBQy9ILE1BQU0sZ0JBQWdCLEdBQU0sQ0FBRSxXQUFXLEVBQUUsUUFBUSxDQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIGNvbXB1dGVkLCBFbGVtZW50UmVmLCBmb3J3YXJkUmVmLCBIb3N0TGlzdGVuZXIsIG1vZGVsLCBNb2RlbFNpZ25hbCwgU2lnbmFsLCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgZm9ybWF0TnVtYmVyIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgSW5wdXRDdXJyZW5jeUNvbmZpZ3VyYXRpb24sIElucHV0RGVjaW1hbENvbmZpZ3VyYXRpb24sIElucHV0TnVtYmVyQ29uZmlndXJhdGlvbiwgSW5wdXRQZXJjZW50YWdlQ29uZmlndXJhdGlvbiB9IGZyb20gJy4vaW5wdXQtZGVjaW1hbC5jb25maWd1cmF0aW9uJztcclxuaW1wb3J0IHsgSW5wdXRQcm92aWRlckZhY3RvcnkgfSBmcm9tICcuLi9pbnB1dC1wcm92aWRlci1mYWN0b3J5JztcclxuaW1wb3J0IHsgQ3VzdG9tSW5wdXQgfSBmcm9tICcuLi9jdXN0b20taW5wdXQnO1xyXG5pbXBvcnQgeyBUaW1lb3V0IH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvdXRpbHMuc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2lucHV0LWRlY2ltYWwsIGlucHV0LW51bWJlciwgaW5wdXQtY3VycmVuY3ksIGlucHV0LXBlcmNlbnRhZ2UnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9pbnB1dC1kZWNpbWFsLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9pbnB1dC1kZWNpbWFsLmNvbXBvbmVudC5zY3NzJywgJy4uL2lucHV0cy5zY3NzJ10sXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICAuLi5JbnB1dFByb3ZpZGVyRmFjdG9yeS5HZXRQcm92aWRlcnMoSW5wdXREZWNpbWFsQ29tcG9uZW50KSxcclxuICAgIHsgcHJvdmlkZTogQ3VzdG9tSW5wdXQsIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IElucHV0RGVjaW1hbENvbXBvbmVudCkgfSxcclxuICBdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgSW5wdXREZWNpbWFsQ29tcG9uZW50IGV4dGVuZHMgQ3VzdG9tSW5wdXQ8bnVtYmVyPiB7XHJcblxyXG4gIGNvbmZpZ3VyYXRpb246IE1vZGVsU2lnbmFsPElucHV0RGVjaW1hbENvbmZpZ3VyYXRpb24+ID0gbW9kZWw8SW5wdXREZWNpbWFsQ29uZmlndXJhdGlvbj4oKTtcclxuICBkaWdpdHNJbmZvOiBTaWduYWw8c3RyaW5nPiA9IGNvbXB1dGVkKCgpID0+IGAxLiR7dGhpcy5jb25maWd1cmF0aW9uKCkucHJlY2lzaW9ufS0ke3RoaXMuY29uZmlndXJhdGlvbigpLnByZWNpc2lvbn1gKTtcclxuICBkaXZpZGVyOiBTaWduYWw8bnVtYmVyPiA9IGNvbXB1dGVkKCgpID0+IE1hdGgucG93KDEwLCB0aGlzLmNvbmZpZ3VyYXRpb24oKS5wcmVjaXNpb24pKTtcclxuXHJcbiAgQFZpZXdDaGlsZCgnaW5wdXQnKSBpbnB1dDogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PjtcclxuICBAVmlld0NoaWxkKCdpbnB1dENvbnRhaW5lcicpIGlucHV0Q29udGFpbmVyOiBFbGVtZW50UmVmPEhUTUxEaXZFbGVtZW50PjtcclxuICBvdmVycmlkZSBzZXRGb2N1cyhldmVudDogTW91c2VFdmVudCB8IG51bGwpOiB2b2lkIHtcclxuICAgIGlmKHRoaXMuaW5wdXQgJiYgZXZlbnQudGFyZ2V0ID09IHRoaXMuaW5wdXRDb250YWluZXIubmF0aXZlRWxlbWVudCkgeyBcclxuICAgICAgdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50LmZvY3VzKCk7IFxyXG4gICAgICB0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQuc2V0U2VsZWN0aW9uUmFuZ2UodGhpcy52YWx1ZVN0cmluZy5sZW5ndGgsIHRoaXMudmFsdWVTdHJpbmcubGVuZ3RoKTsgXHJcbiAgICB9ICAgICAgXHJcbiAgfVxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgb3ZlcnJpZGUgZWxlbWVudFJlZjogRWxlbWVudFJlZlxyXG4gICkgeyBcclxuICAgIHN1cGVyKCk7IFxyXG4gICAgdGhpcy52YWx1ZS5zZXQoMCk7XHJcbiAgICBjb25zdCBzZWxlY3Rvcjogc3RyaW5nID0gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQudGFnTmFtZS50b0xvd2VyQ2FzZSgpLnNwbGl0KCctJykuYXQoLTEpO1xyXG4gICAgaWYoc2VsZWN0b3IgPT0gXCJudW1iZXJcIiAgICAgJiYgIXRoaXMuY29uZmlndXJhdGlvbigpKXsgdGhpcy5jb25maWd1cmF0aW9uLnNldChuZXcgSW5wdXROdW1iZXJDb25maWd1cmF0aW9uKCkpOyAgICAgfSBlbHNlXHJcbiAgICBpZihzZWxlY3RvciA9PSBcImRlY2ltYWxcIiAgICAmJiAhdGhpcy5jb25maWd1cmF0aW9uKCkpeyB0aGlzLmNvbmZpZ3VyYXRpb24uc2V0KG5ldyBJbnB1dERlY2ltYWxDb25maWd1cmF0aW9uKCkpOyAgICB9IGVsc2VcclxuICAgIGlmKHNlbGVjdG9yID09IFwiY3VycmVuY3lcIiAgICYmICF0aGlzLmNvbmZpZ3VyYXRpb24oKSl7IHRoaXMuY29uZmlndXJhdGlvbi5zZXQobmV3IElucHV0Q3VycmVuY3lDb25maWd1cmF0aW9uKCkpOyAgIH0gZWxzZVxyXG4gICAgaWYoc2VsZWN0b3IgPT0gXCJwZXJjZW50YWdlXCIgJiYgIXRoaXMuY29uZmlndXJhdGlvbigpKXsgdGhpcy5jb25maWd1cmF0aW9uLnNldChuZXcgSW5wdXRQZXJjZW50YWdlQ29uZmlndXJhdGlvbigpKTsgfVxyXG4gICAgdGhpcy5TZXRWYWx1ZVN0cmluZygpOyBcclxuICB9XHJcbiAgXHJcbiAgb3ZlcnJpZGUgd3JpdGVWYWx1ZShvYmo6IG51bWJlcik6IHZvaWQgfCBQcm9taXNlPHZvaWQ+IHtcclxuICAgIHRoaXMudmFsdWUuc2V0KG9iaik7XHJcbiAgICB0aGlzLlNldFZhbHVlU3RyaW5nKCk7XHJcbiAgICB0aGlzLnJ1blZhbGlkYXRpb24oKTtcclxuICB9XHJcbiAgb3ZlcnJpZGUgU2V0VmFsdWUob2JqOiBudW1iZXIpOiB2b2lkIHtcclxuICAgIHRoaXMudmFsdWUuc2V0KG9iaik7XHJcbiAgICB0aGlzLlNldFZhbHVlU3RyaW5nKCk7XHJcbiAgICB0aGlzLnJ1blZhbGlkYXRpb24oKTtcclxuICAgIHRoaXMucHJvcGFnYXRlQ2hhbmdlKG9iaik7IFxyXG4gIH1cclxuICBTZXRWYWx1ZVN0cmluZygpOiB2b2lkIHtcclxuICAgIHRoaXMudmFsdWVTdHJpbmcgPSBmb3JtYXROdW1iZXIodGhpcy52YWx1ZSgpLCBcInB0LUJSXCIsIHRoaXMuZGlnaXRzSW5mbygpKTtcclxuICB9XHJcbiAgXHJcbiAgdmFsdWVTdHJpbmc6IHN0cmluZztcclxuXHJcbiAgQEhvc3RMaXN0ZW5lcigncGFzdGUnLCBbJyRldmVudCddKVxyXG4gIG9uUGFzdGUoZXZlbnQ6IENsaXBib2FyZEV2ZW50KTogdm9pZCB7XHJcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgXHJcbiAgICBsZXQgY2xpcGJvYXJkRGF0YSA9IGV2ZW50LmNsaXBib2FyZERhdGEgfHwgd2luZG93WydjbGlwYm9hcmREYXRhJ107XHJcbiAgICBsZXQgcGFzdGVkVGV4dCAgICA9IGNsaXBib2FyZERhdGEuZ2V0RGF0YSgndGV4dCcpO1xyXG5cclxuICAgIGNvbnN0IHMgPSBwYXN0ZWRUZXh0LnJlcGxhY2VBbGwoJy4nLCAnJykucmVwbGFjZUFsbCgnLCcsICcuJyk7XHJcbiAgICBjb25zdCBuID0gTnVtYmVyKHMpO1xyXG5cclxuICAgIGlmKE51bWJlcihzKSAmJiBpc0Zpbml0ZShuKSl7IFxyXG4gICAgICB0aGlzLlNldFZhbHVlKG4pO1xyXG4gICAgfVxyXG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICB9XHJcblxyXG4gIGFzeW5jIG9uS2V5RG93bihldmVudDogS2V5Ym9hcmRFdmVudCk6IFByb21pc2U8dm9pZD57XHJcbiAgICBjb25zdCB2YWx1ZTogc3RyaW5nID0gdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50LnZhbHVlO1xyXG5cclxuICAgIGNvbnN0IHNlbGVjdGlvblN0YXJ0OiBudW1iZXIgPSB0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQuc2VsZWN0aW9uU3RhcnQ7XHJcbiAgICBjb25zdCBzZWxlY3Rpb25FbmQgIDogbnVtYmVyID0gdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50LnNlbGVjdGlvbkVuZDtcclxuXHJcbiAgICBjb25zdCBhdExlZnQgID0gdmFsdWUuc2xpY2UoMCwgc2VsZWN0aW9uU3RhcnQpOyBcclxuICAgIGNvbnN0IGF0UmlnaHQgPSB2YWx1ZS5zbGljZShzZWxlY3Rpb25FbmQsIHZhbHVlLmxlbmd0aCk7IFxyXG4gICAgaWYoW1wiLVwiXS5pbmNsdWRlcyhldmVudC5rZXkpKXsgXHJcbiAgICAgIHJldHVybiBhd2FpdCB0aGlzLkhhbmRsZU5lZ2F0aXZlKGV2ZW50LCBzZWxlY3Rpb25TdGFydCwgc2VsZWN0aW9uRW5kLCB2YWx1ZSwgYXRMZWZ0LCBhdFJpZ2h0KTtcclxuICAgIH1lbHNlXHJcbiAgICBpZihsc3ROdW1iZXJzLmluY2x1ZGVzKGV2ZW50LmtleSkpeyBcclxuICAgICAgcmV0dXJuIGF3YWl0IHRoaXMuSGFuZGxlTnVtYmVyKGV2ZW50LCBzZWxlY3Rpb25TdGFydCwgc2VsZWN0aW9uRW5kLCB2YWx1ZSwgYXRMZWZ0LCBhdFJpZ2h0KTsgXHJcbiAgICB9ZWxzZVxyXG4gICAgaWYobHN0RXNwZWNpYWxDYXNlcy5pbmNsdWRlcyhldmVudC5rZXkpKXsgXHJcbiAgICAgIHJldHVybiBhd2FpdCB0aGlzLkhhbmRsZUVzcGVjaWFsKGV2ZW50LCBzZWxlY3Rpb25TdGFydCwgc2VsZWN0aW9uRW5kLCB2YWx1ZSwgYXRMZWZ0LCBhdFJpZ2h0KTsgXHJcbiAgICB9ZWxzZVxyXG4gICAgaWYoW1wiQVwiLCBcImFcIl0uaW5jbHVkZXMoZXZlbnQua2V5KSAmJiBldmVudC5jdHJsS2V5KXsgXHJcbiAgICAgIHJldHVybjsgXHJcbiAgICB9ZWxzZVxyXG4gICAgaWYoW1wiQ1wiLCBcImNcIl0uaW5jbHVkZXMoZXZlbnQua2V5KSAmJiBldmVudC5jdHJsS2V5KXsgXHJcbiAgICAgIHJldHVybjsgXHJcbiAgICB9ZWxzZVxyXG4gICAgaWYoW1wiVlwiLCBcInZcIl0uaW5jbHVkZXMoZXZlbnQua2V5KSAmJiBldmVudC5jdHJsS2V5KXsgXHJcbiAgICAgIHJldHVybjsgXHJcbiAgICB9ZWxzZVxyXG4gICAgaWYobHN0SWdub3JlTm90UHJldmVudC5pbmNsdWRlcyhldmVudC5rZXkpKXsgXHJcbiAgICAgIHJldHVybjsgXHJcbiAgICB9ZWxzZXtcclxuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGFzeW5jIEhhbmRsZU5lZ2F0aXZlKGV2ZW50OiBLZXlib2FyZEV2ZW50LCBzZWxlY3Rpb25TdGFydDogbnVtYmVyLCBzZWxlY3Rpb25FbmQ6IG51bWJlciwgdmFsdWU6IHN0cmluZywgYXRMZWZ0OiBzdHJpbmcsIGF0UmlnaHQ6IHN0cmluZyk6IFByb21pc2U8dm9pZD57XHJcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG5cclxuICAgIGxldCBmb2N1c0VuZCA9IChzZWxlY3Rpb25TdGFydCA9PSAwICYmIHNlbGVjdGlvbkVuZCA9PSB0aGlzLnZhbHVlU3RyaW5nLmxlbmd0aCk7XHJcbiAgICAvKiogWyBSZW1vdmUgZGVjaW1hbFNlcGFyYXRvciAmIHRob3VzYW5kU2VwYXJhdG9yIF0gKi9cclxuICAgIGxldCBmO1xyXG4gICAgaWYoIWF0TGVmdC5pbmNsdWRlcygnLScpKXtcclxuICAgICAgZiA9IGV2ZW50LmtleSArIGF0TGVmdCArIGF0UmlnaHQ7XHJcbiAgICB9ZWxzZXtcclxuICAgICAgZiA9IChhdExlZnQgKyBhdFJpZ2h0KS5yZXBsYWNlKCctJywgJycpXHJcbiAgICB9XHJcblxyXG4gICAgaWYoZiA9PSBcIi1cIil7IFxyXG4gICAgICBpZih2YWx1ZS5pbmNsdWRlcygnLScpKXtcclxuICAgICAgICBmID0gdmFsdWUucmVwbGFjZSgnLScsICcnKTtcclxuICAgICAgfVxyXG4gICAgICBlbHNle1xyXG4gICAgICAgIGYgPSBgLSR7dmFsdWV9YDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IEN1cnJlbnRWYWx1ZTogbnVtYmVyID0gdGhpcy5TYW5pdGl6ZVZhbHVlKGYpO1xyXG4gICAgaWYoQ3VycmVudFZhbHVlID09IHRoaXMudmFsdWUoKSl7IHJldHVybjsgfVxyXG4gICAgXHJcbiAgICAvL1sgSGFuZGxlIFNldCBDdXJzb3IgUG9zaXRpb25dXHJcbiAgICB0aGlzLlNldFZhbHVlKEN1cnJlbnRWYWx1ZSk7XHJcbiAgICBjb25zdCBuZXdQb3MgPSBzZWxlY3Rpb25TdGFydCArIDEgKyB0aGlzLnZhbHVlU3RyaW5nLnNwbGl0KCcuJykubGVuZ3RoIC0gdmFsdWUuc3BsaXQoJy4nKS5sZW5ndGg7XHJcbiAgICBcclxuICAgIC8vSG9ycml2ZWwsIG1hcyBuYW8gdGVtIHVtYSBhbHRlcm5hdGl2YSBib2EsIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzUxMTA4OC91c2UtamF2YXNjcmlwdC10by1wbGFjZS1jdXJzb3ItYXQtZW5kLW9mLXRleHQtaW4tdGV4dC1pbnB1dC1lbGVtZW50XHJcbiAgICBhd2FpdCBUaW1lb3V0KDApO1xyXG4gICAgdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50LnNldFNlbGVjdGlvblJhbmdlKG5ld1BvcywgbmV3UG9zKTsgXHJcbiAgICBpZihmb2N1c0VuZCl7XHJcbiAgICAgIHRoaXMuaW5wdXQubmF0aXZlRWxlbWVudC5zZXRTZWxlY3Rpb25SYW5nZSh0aGlzLnZhbHVlU3RyaW5nLmxlbmd0aCwgdGhpcy52YWx1ZVN0cmluZy5sZW5ndGgpOyBcclxuICAgIH1cclxuICAgIHJldHVybjtcclxuICB9XHJcblxyXG4gIGFzeW5jIEhhbmRsZU51bWJlcihldmVudDogS2V5Ym9hcmRFdmVudCwgc2VsZWN0aW9uU3RhcnQ6IG51bWJlciwgc2VsZWN0aW9uRW5kOiBudW1iZXIsIHZhbHVlOiBzdHJpbmcsIGF0TGVmdDogc3RyaW5nLCBhdFJpZ2h0OiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICBcclxuICAgIGxldCBmb2N1c0VuZCA9IChzZWxlY3Rpb25TdGFydCA9PSAwICYmIHNlbGVjdGlvbkVuZCA9PSB0aGlzLnZhbHVlU3RyaW5nLmxlbmd0aCk7XHJcbiAgICAvKiogWyBSZW1vdmUgZGVjaW1hbFNlcGFyYXRvciAmIHRob3VzYW5kU2VwYXJhdG9yIF0gKi9cclxuICAgIGNvbnN0IGYgPSBhdExlZnQgKyBldmVudC5rZXkgKyBhdFJpZ2h0O1xyXG4gICAgY29uc3QgQ3VycmVudFZhbHVlOiBudW1iZXIgPSB0aGlzLlNhbml0aXplVmFsdWUoZik7XHJcbiAgICBpZihDdXJyZW50VmFsdWUgPT0gdGhpcy52YWx1ZSgpKXsgcmV0dXJuOyB9XHJcbiAgICBpZihDdXJyZW50VmFsdWUgPiBkZWNpbWFsTWF4VmFsdWUpeyByZXR1cm47IH1cclxuICAgIFxyXG4gICAgLy9bIEhhbmRsZSBTZXQgQ3Vyc29yIFBvc2l0aW9uXVxyXG4gICAgdGhpcy5TZXRWYWx1ZShDdXJyZW50VmFsdWUpO1xyXG4gICAgY29uc3QgbmV3UG9zaXRpb24gPSBzZWxlY3Rpb25TdGFydCArIDEgKyB0aGlzLnZhbHVlU3RyaW5nLnNwbGl0KCcuJykubGVuZ3RoIC0gdmFsdWUuc3BsaXQoJy4nKS5sZW5ndGg7XHJcbiAgICBcclxuICAgIC8vSG9ycml2ZWwsIG1hcyBuYW8gc2VtIHVtYSBhbHRlcm5hdGl2YSBib2EsIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzUxMTA4OC91c2UtamF2YXNjcmlwdC10by1wbGFjZS1jdXJzb3ItYXQtZW5kLW9mLXRleHQtaW4tdGV4dC1pbnB1dC1lbGVtZW50XHJcbiAgICBhd2FpdCBUaW1lb3V0KDApO1xyXG4gICAgdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50LnNldFNlbGVjdGlvblJhbmdlKG5ld1Bvc2l0aW9uLCBuZXdQb3NpdGlvbik7IFxyXG4gICAgaWYoZm9jdXNFbmQpe1xyXG4gICAgICB0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQuc2V0U2VsZWN0aW9uUmFuZ2UodGhpcy52YWx1ZVN0cmluZy5sZW5ndGgsIHRoaXMudmFsdWVTdHJpbmcubGVuZ3RoKTsgXHJcbiAgICB9XHJcbiAgICByZXR1cm47XHJcbiAgfVxyXG5cclxuICBTYW5pdGl6ZVZhbHVlKGY6IHN0cmluZyk6IG51bWJlcntcclxuICAgIHZhciBDdXJyZW50VmFsdWU6IG51bWJlciA9IE51bWJlcihTYW5pdGl6ZShmKSkgLyB0aGlzLmRpdmlkZXIoKTtcclxuICAgIGlmKEN1cnJlbnRWYWx1ZSA+PSBkZWNpbWFsTWF4VmFsdWUpeyBcclxuICAgICAgcmV0dXJuIHRoaXMudmFsdWUoKTsgXHJcbiAgICB9XHJcbiAgICByZXR1cm4gQ3VycmVudFZhbHVlO1xyXG4gIH1cclxuXHJcbiAgYXN5bmMgSGFuZGxlRXNwZWNpYWwoZXZlbnQ6IEtleWJvYXJkRXZlbnQsIHNlbGVjdGlvblN0YXJ0OiBudW1iZXIsIHNlbGVjdGlvbkVuZDogbnVtYmVyLCB2YWx1ZTogc3RyaW5nLCBhdExlZnQ6IHN0cmluZywgYXRSaWdodDogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgaWYoc2VsZWN0aW9uU3RhcnQgPT0gc2VsZWN0aW9uRW5kKXtcclxuICAgICAgaWYoZXZlbnQua2V5ID09IFwiQmFja3NwYWNlXCIpe1xyXG4gICAgICAgIGlmKHNlbGVjdGlvblN0YXJ0ID09ICBzZWxlY3Rpb25FbmQgJiYgc2VsZWN0aW9uU3RhcnQgPT0gMCl7IFxyXG4gICAgICAgICAgcmV0dXJuOyBcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGNvbnN0IHByZXZpb3VzQ2hhcjogc3RyaW5nID0gYXRMZWZ0LmF0KC0xKTtcclxuICAgICAgICBjb25zdCBpc051bWJlciA9IGxzdE51bWJlcnMuaW5jbHVkZXMocHJldmlvdXNDaGFyKTtcclxuICAgICAgICBjb25zdCBmID0gYXRMZWZ0LnNsaWNlKDAsIGF0TGVmdC5sZW5ndGggLSAoaXNOdW1iZXIgPyAxIDogMikpICsgYXRSaWdodDtcclxuICAgICAgICBjb25zdCBDdXJyZW50VmFsdWUgPSB0aGlzLlNhbml0aXplVmFsdWUoZik7XHJcbiAgICAgICAgXHJcbiAgICAgICAgLy9bIEhhbmRsZSBTZXQgQ3Vyc29yIFBvc2l0aW9uXVxyXG4gICAgICAgIHRoaXMuU2V0VmFsdWUoQ3VycmVudFZhbHVlKTtcclxuICAgICAgICBhd2FpdCBUaW1lb3V0KDApO1xyXG4gICAgICAgIGxldCBwb3MgPSBpc051bWJlciA/IHNlbGVjdGlvblN0YXJ0IC0gMSA6IHNlbGVjdGlvblN0YXJ0IC0gMjtcclxuXHJcbiAgICAgICAgaWYgKHNlbGVjdGlvbkVuZCA9PSB0aGlzLnZhbHVlU3RyaW5nLmxlbmd0aCkge1xyXG4gICAgICAgICAgcG9zKys7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuaW5wdXQubmF0aXZlRWxlbWVudC5zZXRTZWxlY3Rpb25SYW5nZShwb3MsIHBvcyk7IFxyXG4gICAgICAgIHJldHVybjtcclxuICAgICAgfWVsc2VcclxuICAgICAgaWYoZXZlbnQua2V5ID09IFwiRGVsZXRlXCIpe1xyXG4gICAgICAgIGNvbnN0IG5leHRDaGFyOiBzdHJpbmcgPSAgYXRSaWdodFswXTtcclxuICAgICAgICBjb25zdCBpc051bWJlciA9IGxzdE51bWJlcnMuaW5jbHVkZXMobmV4dENoYXIpO1xyXG4gICAgICAgIGNvbnN0IGYgPSBhdExlZnQgKyBhdFJpZ2h0LnNsaWNlKGlzTnVtYmVyID8gMSA6IDIpO1xyXG4gICAgICAgIGNvbnN0IEN1cnJlbnRWYWx1ZSA9ICB0aGlzLlNhbml0aXplVmFsdWUoZik7XHJcbiAgICAgICAgXHJcbiAgICAgICAgLy9bIEhhbmRsZSBTZXQgQ3Vyc29yIFBvc2l0aW9uXVxyXG4gICAgICAgIHRoaXMuU2V0VmFsdWUoQ3VycmVudFZhbHVlKTtcclxuICAgICAgICB2YXIgcG9zOiBudW1iZXIgPSBzZWxlY3Rpb25TdGFydDtcclxuICAgICAgICBpZihwb3MgPD0gLTEpeyBwb3MgPSAwOyB9XHJcbiAgICAgICAgaWYoQ3VycmVudFZhbHVlIDwgMSl7XHJcbiAgICAgICAgICBwb3MrKztcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYoIWlzTnVtYmVyKXtcclxuICAgICAgICAgIHBvcysrO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgYXdhaXQgVGltZW91dCgwKTtcclxuICAgICAgICB0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQuc2V0U2VsZWN0aW9uUmFuZ2UocG9zLCBwb3MpO1xyXG4gICAgICAgIHJldHVybjtcclxuICAgICAgfVxyXG4gICAgfWVsc2V7XHJcbiAgICAgIGNvbnN0IGYgPSBhdExlZnQgKyBhdFJpZ2h0O1xyXG4gICAgICBjb25zdCBDdXJyZW50VmFsdWUgPSB0aGlzLlNhbml0aXplVmFsdWUoZik7XHJcbiAgICAgIHRoaXMuU2V0VmFsdWUoQ3VycmVudFZhbHVlKTtcclxuICAgICAgXHJcbiAgICAgIGF3YWl0IFRpbWVvdXQoMCk7XHJcbiAgICAgIHRoaXMuaW5wdXQubmF0aXZlRWxlbWVudC5zZXRTZWxlY3Rpb25SYW5nZSh0aGlzLnZhbHVlU3RyaW5nLmxlbmd0aCwgdGhpcy52YWx1ZVN0cmluZy5sZW5ndGgpOyBcclxuXHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcblxyXG5jb25zdCBkZWNpbWFsTWF4VmFsdWUgPSA5XzAwMF8wMDBfMDAwXzAwMC4wMFxyXG5cclxuY29uc3QgZGVjaW1hbFNlcGFyYXRvciA6IHN0cmluZyA9IFwiLFwiO1xyXG5jb25zdCB0aG91c2FuZFNlcGFyYXRvcjogc3RyaW5nID0gXCIuXCI7XHJcblxyXG5jb25zdCBTYW5pdGl6ZTogRnVuY3Rpb24gPSAoKHY6IHN0cmluZyk6IHN0cmluZyA9PiB7IFxyXG4gIHJldHVybiB2LnJlcGxhY2VBbGwodGhvdXNhbmRTZXBhcmF0b3IsICcnKVxyXG4gICAgICAgICAgLnJlcGxhY2UgICAoZGVjaW1hbFNlcGFyYXRvciAsICcnKSBcclxuICAgICAgICB9KTtcclxuXHJcbmNvbnN0IGxzdE51bWJlcnMgICAgICAgICAgPSBbIFwiMFwiLFwiMVwiLFwiMlwiLFwiM1wiLFwiNFwiLFwiNVwiLFwiNlwiLFwiN1wiLFwiOFwiLFwiOVwiIF07XHJcbmNvbnN0IGxzdElnbm9yZU5vdFByZXZlbnQgPSBbIFwiVGFiXCIsIFwiQ2Fwc0xvY2tcIiwgXCJTaGlmdFwiLCBcIkNvbnRyb2xcIiwgXCJBbHRcIiwgXCJBcnJvd1JpZ2h0XCIsIFwiQXJyb3dVcFwiLCBcIkFycm93RG93blwiLCBcIkFycm93TGVmdFwiXTtcclxuY29uc3QgbHN0RXNwZWNpYWxDYXNlcyAgICA9IFsgXCJCYWNrc3BhY2VcIiwgXCJEZWxldGVcIiBdOyIsIjxkaXYgXHJcbiAgI2lucHV0Q29udGFpbmVyXHJcbiAgY2xhc3M9XCJpbnB1dC1jb250YWluZXJcIiBcclxuICAoY2xpY2spPVwic2V0Rm9jdXMoJGV2ZW50KVwiXHJcbiAgW2NsYXNzLnJlcXVpcmVkXT1cInJlcXVpcmVkKClcIiBcclxuICBbY2xhc3Muc3VibWl0dGVkXT1cInN1Ym1pdHRlZCgpXCIgXHJcbiAgW2NsYXNzLmludmFsaWRdPVwiaW52YWxpZFwiIFxyXG4gIFtjbGFzcy5kaXNhYmxlZF09XCJkaXNhYmxlZCgpIHx8IGxvYWRpbmcoKVwiXHJcbiAgW2NsYXNzLmxvYWRpbmddPVwibG9hZGluZygpXCJcclxuPlxyXG4gIDxkaXYgY2xhc3M9XCJpbnB1dC1sYWJlbFwiPiBcclxuICAgIDxzcGFuIGNsYXNzPVwidHJ1bmNhdGVcIj5cclxuICAgICAge3tsYWJlbCgpfX0gXHJcbiAgICA8L3NwYW4+XHJcbiAgPC9kaXY+XHJcblxyXG4gIDxkaXYgY2xhc3M9XCJkZWNpbWFsLWlucHV0LWNvbnRhaW5lciB0ZXh0LWRhcmtcIj5cclxuICAgIDxzcGFuICpuZ0lmPVwiY29uZmlndXJhdGlvbigpLnByZWZpeFwiIHNsb3Q9XCJzdGFydFwiPnt7Y29uZmlndXJhdGlvbigpLnByZWZpeH19PC9zcGFuPlxyXG4gICAgPGlucHV0ICNpbnB1dFxyXG4gICAgICBpbnB1dG1vZGU9XCJudW1lcmljXCJcclxuICAgICAgW3ZhbHVlXT1cInZhbHVlU3RyaW5nXCIgXHJcbiAgICAgIChrZXlkb3duKT1cIm9uS2V5RG93bigkZXZlbnQpXCJcclxuICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkKCkgfHwgbG9hZGluZygpXCJcclxuICAgIC8+XHJcbiAgICA8c3BhbiAqbmdJZj1cImNvbmZpZ3VyYXRpb24oKS5zdWZpeFwiICBzbG90PVwiZW5kXCIgID57e2NvbmZpZ3VyYXRpb24oKS5zdWZpeH19PC9zcGFuPlxyXG4gIDwvZGl2PlxyXG4gIDxkaXYgY2xhc3M9XCJsb2FkaW5nLWNvbnRhaW5lclwiIFtjbGFzcy5sb2FkaW5nXT1cImxvYWRpbmcoKVwiPlxyXG4gICAgPGlvbi1zcGlubmVyPjwvaW9uLXNwaW5uZXI+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PiJdfQ==
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Component, ElementRef, input, ViewChild } from '@angular/core';
|
|
1
|
+
import { Component, ElementRef, forwardRef, input, ViewChild } from '@angular/core';
|
|
2
2
|
import { CustomInput } from '../custom-input';
|
|
3
3
|
import { InputFileConfiguration } from './input-file.configuration';
|
|
4
4
|
import { InputProviderFactory } from '../input-provider-factory';
|
|
@@ -10,8 +10,10 @@ import * as i2 from "../../../services/web/storage.service";
|
|
|
10
10
|
import * as i3 from "@ionic/angular";
|
|
11
11
|
import * as i4 from "../../image/image.component";
|
|
12
12
|
export class InputFileComponent extends CustomInput {
|
|
13
|
-
|
|
14
|
-
|
|
13
|
+
setFocus(event) {
|
|
14
|
+
if (event) {
|
|
15
|
+
this.Upload();
|
|
16
|
+
}
|
|
15
17
|
this.inputContainer.nativeElement.focus();
|
|
16
18
|
}
|
|
17
19
|
constructor(utilsService, storageService) {
|
|
@@ -65,11 +67,17 @@ export class InputFileComponent extends CustomInput {
|
|
|
65
67
|
this.storageService.StartDownload(this.value());
|
|
66
68
|
}
|
|
67
69
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: InputFileComponent, deps: [{ token: i1.UtilsService }, { token: i2.StorageService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
68
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: InputFileComponent, selector: "input-file", inputs: { configuration: { classPropertyName: "configuration", publicName: "configuration", isSignal: true, isRequired: false, transformFunction: null } }, providers: [
|
|
70
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: InputFileComponent, selector: "input-file", inputs: { configuration: { classPropertyName: "configuration", publicName: "configuration", isSignal: true, isRequired: false, transformFunction: null } }, providers: [
|
|
71
|
+
...InputProviderFactory.GetProviders(InputFileComponent),
|
|
72
|
+
{ provide: CustomInput, useExisting: forwardRef(() => InputFileComponent) },
|
|
73
|
+
], viewQueries: [{ propertyName: "inputContainer", first: true, predicate: ["inputContainer"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div \r\n #inputContainer\r\n class=\"input-container\" \r\n (click)=\"setFocus($event)\"\r\n [class.required]=\"required()\" \r\n [class.submitted]=\"submitted()\" \r\n [class.invalid]=\"invalid\" \r\n [class.disabled]=\"disabled() || loading()\"\r\n [class.loading]=\"loading()\"\r\n>\r\n <div class=\"input-label\"> \r\n <span class=\"truncate\">\r\n {{label()}} \r\n </span>\r\n </div>\r\n <div tabindex=\"0\" class=\"file-label-container text-dark\" [title]=\"valueString\" (click)=\"Upload()\">\r\n <ion-icon class=\"shrink-0\" color=\"dark\" name=\"document\"></ion-icon> \r\n <span class=\"shrink truncate\">\r\n {{valueString}}\r\n </span>\r\n\r\n <ion-button [class.available]=\"value()\" color=\"medium\" class=\"ellipsis-button ml-auto shrink-0\" fill=\"clear\" style=\"--border-radius: .5rem\" size=\"small\" (click)=\"popover.present($event); $event.stopPropagation()\">\r\n <ion-icon name=\"ellipsis-vertical\" slot=\"icon-only\"></ion-icon>\r\n </ion-button>\r\n <ion-popover #popover>\r\n <ng-template>\r\n <ion-content>\r\n <div class=\"size-full flex flex-col\">\r\n @if(value()){\r\n <ion-button color=\"danger\"size=\"small\" style=\"--border-radius: 0rem\" (click)=\"Clear($event); popover.dismiss()\">\r\n <ion-icon color=\"dark\" name=\"trash\" slot=\"icon-only\"></ion-icon>\r\n Limpar\r\n </ion-button>\r\n }\r\n @if(isString){\r\n <ion-button color=\"secondary\" size=\"small\" style=\"--border-radius: 0rem\" (click)=\"Download()\">\r\n <ion-icon color=\"dark\" name=\"download\" slot=\"start\"></ion-icon>\r\n Download\r\n </ion-button>\r\n @if(storageService.GetProgress(this.value().toString())){\r\n <ion-progress-bar [value]=\"storageService.GetProgress(this.value().toString())\"></ion-progress-bar>\r\n }\r\n @if(isImage){\r\n <image fill=\"clear\" [src]=\"value().toString()\"></image>\r\n }\r\n }\r\n @else if(isImage){\r\n <ion-img [src]=\"objectURL\" class=\"w-full h-32\"></ion-img>\r\n }\r\n </div>\r\n </ion-content>\r\n </ng-template>\r\n </ion-popover>\r\n </div>\r\n\r\n <div class=\"loading-container\" [class.loading]=\"loading()\">\r\n <ion-spinner></ion-spinner>\r\n </div>\r\n</div>", styles: [".file-label-container{position:relative;display:flex;height:1.5rem;width:100%;align-items:center;justify-content:flex-start;gap:.25rem}.input-container{padding-right:.25rem!important}.ellipsis-button{opacity:0;pointer-events:none;will-change:opacity;transition:opacity .2s ease-in-out}.ellipsis-button.available{pointer-events:auto;opacity:1}\n", "@property --input-color{syntax: \"<color>\"; initial-value: transparent; inherits: false;}.input-container{position:relative;--tw-scale-x: 1;--tw-scale-y: 1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));cursor:text;border-radius:.75rem;padding:.25rem .75rem;--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition:--input-color .2s ease-in-out,box-shadow .2s ease-in-out,opacity .2s ease-in-out,filter .2s ease-in-out;--color: var(--ion-color-dark);--input-color: var(--input-background, var(--ion-color-step-250));--shadow: 0 3px 4px -1px rgb(0 0 0 / .1);--inset-shadow: var(--input-color) 0px 1.75px 2px 0px inset;--focused-shadow: 0 0 1px 2px color-mix(in srgb, var(--ion-color-medium) 35%, transparent);box-shadow:var(--inset-shadow),var(--shadow);will-change:box-shadow,filter opacity;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;background:radial-gradient(ellipse at 0px top,hsl(from var(--input-color) h s l/.5),hsl(from var(--input-color) h s l/.4)),hsl(from var(--ion-color-light) h s l/.8)}.input-container:hover{--tw-brightness: brightness(.9);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.input-container:focus-within,.input-container:focus,.input-container.manual-focus{box-shadow:var(--inset-shadow),var(--shadow),var(--focused-shadow);--tw-brightness: brightness(.9);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.input-container .input-label{pointer-events:none;display:flex;height:1rem;width:100%;min-width:0px;max-width:100%;align-items:center;justify-content:flex-start;gap:.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;line-height:1rem;color:var(--color)}.input-container input,.input-container textarea{height:1.5rem;width:100%;border-radius:.375rem;background-color:transparent;font-size:.875rem;line-height:1.25rem;color:var(--ion-color-dark);outline:2px solid transparent;outline-offset:2px}.input-container.loading{cursor:wait!important}.input-container.required .input-label:after{content:\"*\";color:var(--ion-color-danger);vertical-align:bottom}.input-container.submitted.invalid{--input-color: color-mix(in srgb, var(--ion-color-danger) 50%, transparent)}.input-container.disabled{cursor:not-allowed;opacity:.5;--tw-brightness: brightness(1);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.input-container.disabled *{pointer-events:none}.loading-container{position:absolute;pointer-events:none;width:100%;height:100%;top:0;left:0;display:flex;justify-content:end;align-items:center;padding-right:.5rem;will-change:opacity;transition:opacity .2s ease-in-out;overflow:hidden;opacity:0;z-index:10}.loading-container ion-spinner{will-change:auto;transition:transform .2s ease-in-out;transform:translateY(-100%)}.loading-container.loading{opacity:1}.loading-container.loading ion-spinner{transform:translateY(0)}ion-modal::part(content){border-radius:.75rem;border:1px solid var(--ion-color-step-250)}\n"], dependencies: [{ kind: "component", type: i3.IonButton, selector: "ion-button", inputs: ["buttonType", "color", "disabled", "download", "expand", "fill", "form", "href", "mode", "rel", "routerAnimation", "routerDirection", "shape", "size", "strong", "target", "type"] }, { kind: "component", type: i3.IonContent, selector: "ion-content", inputs: ["color", "fixedSlotPlacement", "forceOverscroll", "fullscreen", "scrollEvents", "scrollX", "scrollY"] }, { kind: "component", type: i3.IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }, { kind: "component", type: i3.IonImg, selector: "ion-img", inputs: ["alt", "src"] }, { kind: "component", type: i3.IonProgressBar, selector: "ion-progress-bar", inputs: ["buffer", "color", "mode", "reversed", "type", "value"] }, { kind: "component", type: i3.IonSpinner, selector: "ion-spinner", inputs: ["color", "duration", "name", "paused"] }, { kind: "component", type: i3.IonPopover, selector: "ion-popover" }, { kind: "component", type: i4.ImageComponent, selector: "image", inputs: ["fill", "object", "src"] }] }); }
|
|
69
74
|
}
|
|
70
75
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: InputFileComponent, decorators: [{
|
|
71
76
|
type: Component,
|
|
72
|
-
args: [{ selector: 'input-file', providers: [
|
|
77
|
+
args: [{ selector: 'input-file', providers: [
|
|
78
|
+
...InputProviderFactory.GetProviders(InputFileComponent),
|
|
79
|
+
{ provide: CustomInput, useExisting: forwardRef(() => InputFileComponent) },
|
|
80
|
+
], template: "<div \r\n #inputContainer\r\n class=\"input-container\" \r\n (click)=\"setFocus($event)\"\r\n [class.required]=\"required()\" \r\n [class.submitted]=\"submitted()\" \r\n [class.invalid]=\"invalid\" \r\n [class.disabled]=\"disabled() || loading()\"\r\n [class.loading]=\"loading()\"\r\n>\r\n <div class=\"input-label\"> \r\n <span class=\"truncate\">\r\n {{label()}} \r\n </span>\r\n </div>\r\n <div tabindex=\"0\" class=\"file-label-container text-dark\" [title]=\"valueString\" (click)=\"Upload()\">\r\n <ion-icon class=\"shrink-0\" color=\"dark\" name=\"document\"></ion-icon> \r\n <span class=\"shrink truncate\">\r\n {{valueString}}\r\n </span>\r\n\r\n <ion-button [class.available]=\"value()\" color=\"medium\" class=\"ellipsis-button ml-auto shrink-0\" fill=\"clear\" style=\"--border-radius: .5rem\" size=\"small\" (click)=\"popover.present($event); $event.stopPropagation()\">\r\n <ion-icon name=\"ellipsis-vertical\" slot=\"icon-only\"></ion-icon>\r\n </ion-button>\r\n <ion-popover #popover>\r\n <ng-template>\r\n <ion-content>\r\n <div class=\"size-full flex flex-col\">\r\n @if(value()){\r\n <ion-button color=\"danger\"size=\"small\" style=\"--border-radius: 0rem\" (click)=\"Clear($event); popover.dismiss()\">\r\n <ion-icon color=\"dark\" name=\"trash\" slot=\"icon-only\"></ion-icon>\r\n Limpar\r\n </ion-button>\r\n }\r\n @if(isString){\r\n <ion-button color=\"secondary\" size=\"small\" style=\"--border-radius: 0rem\" (click)=\"Download()\">\r\n <ion-icon color=\"dark\" name=\"download\" slot=\"start\"></ion-icon>\r\n Download\r\n </ion-button>\r\n @if(storageService.GetProgress(this.value().toString())){\r\n <ion-progress-bar [value]=\"storageService.GetProgress(this.value().toString())\"></ion-progress-bar>\r\n }\r\n @if(isImage){\r\n <image fill=\"clear\" [src]=\"value().toString()\"></image>\r\n }\r\n }\r\n @else if(isImage){\r\n <ion-img [src]=\"objectURL\" class=\"w-full h-32\"></ion-img>\r\n }\r\n </div>\r\n </ion-content>\r\n </ng-template>\r\n </ion-popover>\r\n </div>\r\n\r\n <div class=\"loading-container\" [class.loading]=\"loading()\">\r\n <ion-spinner></ion-spinner>\r\n </div>\r\n</div>", styles: [".file-label-container{position:relative;display:flex;height:1.5rem;width:100%;align-items:center;justify-content:flex-start;gap:.25rem}.input-container{padding-right:.25rem!important}.ellipsis-button{opacity:0;pointer-events:none;will-change:opacity;transition:opacity .2s ease-in-out}.ellipsis-button.available{pointer-events:auto;opacity:1}\n", "@property --input-color{syntax: \"<color>\"; initial-value: transparent; inherits: false;}.input-container{position:relative;--tw-scale-x: 1;--tw-scale-y: 1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));cursor:text;border-radius:.75rem;padding:.25rem .75rem;--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition:--input-color .2s ease-in-out,box-shadow .2s ease-in-out,opacity .2s ease-in-out,filter .2s ease-in-out;--color: var(--ion-color-dark);--input-color: var(--input-background, var(--ion-color-step-250));--shadow: 0 3px 4px -1px rgb(0 0 0 / .1);--inset-shadow: var(--input-color) 0px 1.75px 2px 0px inset;--focused-shadow: 0 0 1px 2px color-mix(in srgb, var(--ion-color-medium) 35%, transparent);box-shadow:var(--inset-shadow),var(--shadow);will-change:box-shadow,filter opacity;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;background:radial-gradient(ellipse at 0px top,hsl(from var(--input-color) h s l/.5),hsl(from var(--input-color) h s l/.4)),hsl(from var(--ion-color-light) h s l/.8)}.input-container:hover{--tw-brightness: brightness(.9);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.input-container:focus-within,.input-container:focus,.input-container.manual-focus{box-shadow:var(--inset-shadow),var(--shadow),var(--focused-shadow);--tw-brightness: brightness(.9);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.input-container .input-label{pointer-events:none;display:flex;height:1rem;width:100%;min-width:0px;max-width:100%;align-items:center;justify-content:flex-start;gap:.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;line-height:1rem;color:var(--color)}.input-container input,.input-container textarea{height:1.5rem;width:100%;border-radius:.375rem;background-color:transparent;font-size:.875rem;line-height:1.25rem;color:var(--ion-color-dark);outline:2px solid transparent;outline-offset:2px}.input-container.loading{cursor:wait!important}.input-container.required .input-label:after{content:\"*\";color:var(--ion-color-danger);vertical-align:bottom}.input-container.submitted.invalid{--input-color: color-mix(in srgb, var(--ion-color-danger) 50%, transparent)}.input-container.disabled{cursor:not-allowed;opacity:.5;--tw-brightness: brightness(1);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.input-container.disabled *{pointer-events:none}.loading-container{position:absolute;pointer-events:none;width:100%;height:100%;top:0;left:0;display:flex;justify-content:end;align-items:center;padding-right:.5rem;will-change:opacity;transition:opacity .2s ease-in-out;overflow:hidden;opacity:0;z-index:10}.loading-container ion-spinner{will-change:auto;transition:transform .2s ease-in-out;transform:translateY(-100%)}.loading-container.loading{opacity:1}.loading-container.loading ion-spinner{transform:translateY(0)}ion-modal::part(content){border-radius:.75rem;border:1px solid var(--ion-color-step-250)}\n"] }]
|
|
73
81
|
}], ctorParameters: () => [{ type: i1.UtilsService }, { type: i2.StorageService }], propDecorators: { inputContainer: [{
|
|
74
82
|
type: ViewChild,
|
|
75
83
|
args: ['inputContainer']
|
|
@@ -90,4 +98,4 @@ export const lstImage = [
|
|
|
90
98
|
'jfif',
|
|
91
99
|
'avif',
|
|
92
100
|
];
|
|
93
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtZmlsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvaW5wdXRzL2lucHV0LWZpbGUvaW5wdXQtZmlsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvaW5wdXRzL2lucHV0LWZpbGUvaW5wdXQtZmlsZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQXVCLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3RixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDOUMsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDcEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDakUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQy9ELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQzs7Ozs7O0FBUXZFLE1BQU0sT0FBTyxrQkFBbUIsU0FBUSxXQUEwQjtJQUt2RCxLQUFLLENBQUMsS0FBaUI7UUFDOUIsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ2QsSUFBSSxDQUFDLGNBQWMsQ0FBQyxhQUFhLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDNUMsQ0FBQztJQUVELFlBQ1UsWUFBMEIsRUFDM0IsY0FBOEI7UUFDbkMsS0FBSyxFQUFFLENBQUM7UUFGRixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUMzQixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFWdkMsa0JBQWEsR0FBd0MsS0FBSyxDQUF5QixJQUFJLHNCQUFzQixFQUFFLENBQUMsQ0FBQztRQWFqSCxnQkFBVyxHQUFXLEVBQUUsQ0FBQztRQUN6QixhQUFR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QUFRLEdBQWE7SUFDaEMsS0FBSztJQUNMLEtBQUs7SUFDTCxNQUFNO0lBQ04sS0FBSztJQUNMLEtBQUs7SUFDTCxLQUFLO0lBQ0wsS0FBSztJQUNMLEtBQUs7SUFDTCxNQUFNO0lBQ04sS0FBSztJQUNMLE1BQU07SUFDTixNQUFNO0lBQ04sTUFBTTtJQUNOLE1BQU07Q0FDUCxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBpbnB1dCwgSW5wdXRTaWduYWwsIE9uSW5pdCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEN1c3RvbUlucHV0IH0gZnJvbSAnLi4vY3VzdG9tLWlucHV0JztcclxuaW1wb3J0IHsgSW5wdXRGaWxlQ29uZmlndXJhdGlvbiB9IGZyb20gJy4vaW5wdXQtZmlsZS5jb25maWd1cmF0aW9uJztcclxuaW1wb3J0IHsgSW5wdXRQcm92aWRlckZhY3RvcnkgfSBmcm9tICcuLi9pbnB1dC1wcm92aWRlci1mYWN0b3J5JztcclxuaW1wb3J0IHsgVXRpbHNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvdXRpbHMuc2VydmljZSc7XHJcbmltcG9ydCB7IFN0b3JhZ2VTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvd2ViL3N0b3JhZ2Uuc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2lucHV0LWZpbGUnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9pbnB1dC1maWxlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9pbnB1dC1maWxlLmNvbXBvbmVudC5zY3NzJywgJy4uL2lucHV0cy5zY3NzJ10sXHJcbiAgcHJvdmlkZXJzOiBbLi4uSW5wdXRQcm92aWRlckZhY3RvcnkuR2V0UHJvdmlkZXJzKElucHV0RmlsZUNvbXBvbmVudCldLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgSW5wdXRGaWxlQ29tcG9uZW50IGV4dGVuZHMgQ3VzdG9tSW5wdXQ8RmlsZSB8IHN0cmluZz4ge1xyXG5cclxuICBjb25maWd1cmF0aW9uOiBJbnB1dFNpZ25hbDxJbnB1dEZpbGVDb25maWd1cmF0aW9uPiA9IGlucHV0PElucHV0RmlsZUNvbmZpZ3VyYXRpb24+KG5ldyBJbnB1dEZpbGVDb25maWd1cmF0aW9uKCkpO1xyXG5cclxuICBAVmlld0NoaWxkKCdpbnB1dENvbnRhaW5lcicpIGlucHV0Q29udGFpbmVyOiBFbGVtZW50UmVmPEhUTUxEaXZFbGVtZW50PjtcclxuICBvdmVycmlkZSBmb2N1cyhldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xyXG4gICAgdGhpcy5VcGxvYWQoKTtcclxuICAgIHRoaXMuaW5wdXRDb250YWluZXIubmF0aXZlRWxlbWVudC5mb2N1cygpO1xyXG4gIH1cclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIHV0aWxzU2VydmljZTogVXRpbHNTZXJ2aWNlLFxyXG4gICAgcHVibGljIHN0b3JhZ2VTZXJ2aWNlOiBTdG9yYWdlU2VydmljZVxyXG4gICkgeyBzdXBlcigpOyB9XHJcblxyXG4gIHZhbHVlU3RyaW5nOiBzdHJpbmcgPSBcIlwiO1xyXG4gIGlzU3RyaW5nOiBib29sZWFuID0gZmFsc2U7XHJcbiAgaXNJbWFnZTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIG9iamVjdFVSTDogc3RyaW5nIHwgbnVsbCA9IG51bGw7XHJcblxyXG5cclxuICBvdmVycmlkZSB3cml0ZVZhbHVlKG9iajogRmlsZSB8IHN0cmluZyk6IHZvaWQgfCBQcm9taXNlPHZvaWQ+IHtcclxuICAgIHRoaXMudmFsdWUuc2V0KG9iaik7XHJcbiAgICB0aGlzLlNldFZhbHVlU3RyaW5nKCk7XHJcbiAgICB0aGlzLnJ1blZhbGlkYXRpb24oKTtcclxuICB9XHJcbiAgb3ZlcnJpZGUgU2V0VmFsdWUodmFsdWU6IEZpbGUgfCBzdHJpbmcpOiB2b2lkIHtcclxuICAgIHRoaXMudmFsdWUuc2V0KHZhbHVlKTtcclxuICAgIHRoaXMuU2V0VmFsdWVTdHJpbmcoKTtcclxuICAgIHRoaXMucnVuVmFsaWRhdGlvbigpO1xyXG4gICAgdGhpcy5wcm9wYWdhdGVDaGFuZ2UodGhpcy52YWx1ZSgpKTtcclxuICB9XHJcbiAgXHJcbiAgU2V0VmFsdWVTdHJpbmcoKTogdm9pZCB7XHJcbiAgICB0aGlzLm9iamVjdFVSTCA9IG51bGw7XHJcbiAgICB0aGlzLmlzU3RyaW5nID0gdHlwZW9mIHRoaXMudmFsdWUoKSA9PSBcInN0cmluZ1wiO1xyXG4gICAgaWYoIXRoaXMudmFsdWUoKSkgeyB0aGlzLnZhbHVlU3RyaW5nID0gXCIuLi5cIjsgcmV0dXJuOyB9XHJcbiAgICB0aGlzLnZhbHVlU3RyaW5nID0gdHlwZW9mIHRoaXMudmFsdWUoKSA9PSBcInN0cmluZ1wiID8gIFN0b3JhZ2VTZXJ2aWNlLlNhbml0aXplRmlsZU5hbWUodGhpcy52YWx1ZSgpLnRvU3RyaW5nKCkpIDogKHRoaXMudmFsdWUoKSBhcyBGaWxlKS5uYW1lO1xyXG4gICAgXHJcbiAgICB0aGlzLmlzSW1hZ2UgPSBsc3RJbWFnZS5pbmNsdWRlcyh0aGlzLnZhbHVlU3RyaW5nLnNwbGl0KCcuJykuYXQoLTEpLnRvTG93ZXJDYXNlKCkpO1xyXG4gICAgaWYodGhpcy5pc0ltYWdlICYmICF0aGlzLmlzU3RyaW5nKXtcclxuICAgICAgdGhpcy5vYmplY3RVUkwgPSBVUkwuY3JlYXRlT2JqZWN0VVJMKHRoaXMudmFsdWUoKSBhcyBGaWxlKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGFzeW5jIFVwbG9hZCgpOiBQcm9taXNlPHZvaWQ+e1xyXG4gICAgdHJ5e1xyXG4gICAgICBjb25zdCByZXMgPSBhd2FpdCB0aGlzLnV0aWxzU2VydmljZS5TZWxlY3RGaWxlKHRoaXMuY29uZmlndXJhdGlvbigpKTtcclxuICAgICAgaWYocmVzKXsgdGhpcy5TZXRWYWx1ZShyZXMpOyB9XHJcbiAgICB9Y2F0Y2h7fVxyXG4gIH1cclxuXHJcbiAgQ2xlYXIoZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcclxuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gICAgdGhpcy5TZXRWYWx1ZShudWxsKTtcclxuICB9XHJcblxyXG4gIERvd25sb2FkKCk6IHZvaWR7XHJcbiAgICB0aGlzLnN0b3JhZ2VTZXJ2aWNlLlN0YXJ0RG93bmxvYWQodGhpcy52YWx1ZSgpIGFzIHN0cmluZyk7XHJcbiAgfVxyXG59XHJcbmV4cG9ydCBjb25zdCBsc3RJbWFnZTogc3RyaW5nW10gPSBbXHJcbiAgJ2pwZScsXHJcbiAgJ2pwZycsXHJcbiAgJ2pwZWcnLFxyXG4gICdnaWYnLFxyXG4gICdwbmcnLFxyXG4gICdibXAnLFxyXG4gICdpY28nLFxyXG4gICdzdmcnLFxyXG4gICdzdmd6JyxcclxuICAndGlmJyxcclxuICAndGlmZicsXHJcbiAgJ3dlYnAnLFxyXG4gICdqZmlmJyxcclxuICAnYXZpZicsXHJcbl0gIiwiPGRpdiBcclxuICAjaW5wdXRDb250YWluZXJcclxuICBjbGFzcz1cImlucHV0LWNvbnRhaW5lclwiIFxyXG4gIChjbGljayk9XCJmb2N1cygkZXZlbnQpXCJcclxuICBbY2xhc3MucmVxdWlyZWRdPVwicmVxdWlyZWQoKVwiIFxyXG4gIFtjbGFzcy5zdWJtaXR0ZWRdPVwic3VibWl0dGVkKClcIiBcclxuICBbY2xhc3MuaW52YWxpZF09XCJpbnZhbGlkXCIgXHJcbiAgW2NsYXNzLmRpc2FibGVkXT1cImRpc2FibGVkKCkgfHwgbG9hZGluZygpXCJcclxuICBbY2xhc3MubG9hZGluZ109XCJsb2FkaW5nKClcIlxyXG4+XHJcbiAgPGRpdiBjbGFzcz1cImlucHV0LWxhYmVsXCI+IFxyXG4gICAgPHNwYW4gY2xhc3M9XCJ0cnVuY2F0ZVwiPlxyXG4gICAgICB7e2xhYmVsKCl9fSBcclxuICAgIDwvc3Bhbj5cclxuICA8L2Rpdj5cclxuICA8ZGl2IHRhYmluZGV4PVwiMFwiIGNsYXNzPVwiZmlsZS1sYWJlbC1jb250YWluZXIgdGV4dC1kYXJrXCIgW3RpdGxlXT1cInZhbHVlU3RyaW5nXCIgKGNsaWNrKT1cIlVwbG9hZCgpXCI+XHJcbiAgICA8aW9uLWljb24gY2xhc3M9XCJzaHJpbmstMFwiIGNvbG9yPVwiZGFya1wiIG5hbWU9XCJkb2N1bWVudFwiPjwvaW9uLWljb24+IFxyXG4gICAgPHNwYW4gY2xhc3M9XCJzaHJpbmsgdHJ1bmNhdGVcIj5cclxuICAgICAge3t2YWx1ZVN0cmluZ319XHJcbiAgICA8L3NwYW4+XHJcblxyXG4gICAgPGlvbi1idXR0b24gW2NsYXNzLmF2YWlsYWJsZV09XCJ2YWx1ZSgpXCIgY29sb3I9XCJtZWRpdW1cIiBjbGFzcz1cImVsbGlwc2lzLWJ1dHRvbiBtbC1hdXRvIHNocmluay0wXCIgZmlsbD1cImNsZWFyXCIgc3R5bGU9XCItLWJvcmRlci1yYWRpdXM6IC41cmVtXCIgc2l6ZT1cInNtYWxsXCIgKGNsaWNrKT1cInBvcG92ZXIucHJlc2VudCgkZXZlbnQpOyAkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIj5cclxuICAgICAgPGlvbi1pY29uIG5hbWU9XCJlbGxpcHNpcy12ZXJ0aWNhbFwiIHNsb3Q9XCJpY29uLW9ubHlcIj48L2lvbi1pY29uPlxyXG4gICAgPC9pb24tYnV0dG9uPlxyXG4gICAgPGlvbi1wb3BvdmVyICNwb3BvdmVyPlxyXG4gICAgICA8bmctdGVtcGxhdGU+XHJcbiAgICAgICAgPGlvbi1jb250ZW50PlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cInNpemUtZnVsbCBmbGV4IGZsZXgtY29sXCI+XHJcbiAgICAgICAgICAgIEBpZih2YWx1ZSgpKXtcclxuICAgICAgICAgICAgICA8aW9uLWJ1dHRvbiBjb2xvcj1cImRhbmdlclwic2l6ZT1cInNtYWxsXCIgIHN0eWxlPVwiLS1ib3JkZXItcmFkaXVzOiAwcmVtXCIgKGNsaWNrKT1cIkNsZWFyKCRldmVudCk7IHBvcG92ZXIuZGlzbWlzcygpXCI+XHJcbiAgICAgICAgICAgICAgICA8aW9uLWljb24gY29sb3I9XCJkYXJrXCIgbmFtZT1cInRyYXNoXCIgc2xvdD1cImljb24tb25seVwiPjwvaW9uLWljb24+XHJcbiAgICAgICAgICAgICAgICBMaW1wYXJcclxuICAgICAgICAgICAgICA8L2lvbi1idXR0b24+XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQGlmKGlzU3RyaW5nKXtcclxuICAgICAgICAgICAgICA8aW9uLWJ1dHRvbiBjb2xvcj1cInNlY29uZGFyeVwiIHNpemU9XCJzbWFsbFwiIHN0eWxlPVwiLS1ib3JkZXItcmFkaXVzOiAwcmVtXCIgKGNsaWNrKT1cIkRvd25sb2FkKClcIj5cclxuICAgICAgICAgICAgICAgIDxpb24taWNvbiBjb2xvcj1cImRhcmtcIiBuYW1lPVwiZG93bmxvYWRcIiBzbG90PVwic3RhcnRcIj48L2lvbi1pY29uPlxyXG4gICAgICAgICAgICAgICAgRG93bmxvYWRcclxuICAgICAgICAgICAgICA8L2lvbi1idXR0b24+XHJcbiAgICAgICAgICAgICAgQGlmKHN0b3JhZ2VTZXJ2aWNlLkdldFByb2dyZXNzKHRoaXMudmFsdWUoKS50b1N0cmluZygpKSl7XHJcbiAgICAgICAgICAgICAgICA8aW9uLXByb2dyZXNzLWJhciBbdmFsdWVdPVwic3RvcmFnZVNlcnZpY2UuR2V0UHJvZ3Jlc3ModGhpcy52YWx1ZSgpLnRvU3RyaW5nKCkpXCI+PC9pb24tcHJvZ3Jlc3MtYmFyPlxyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICBAaWYoaXNJbWFnZSl7XHJcbiAgICAgICAgICAgICAgICA8aW1hZ2UgZmlsbD1cImNsZWFyXCIgW3NyY109XCJ2YWx1ZSgpLnRvU3RyaW5nKClcIj48L2ltYWdlPlxyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAZWxzZSBpZihpc0ltYWdlKXtcclxuICAgICAgICAgICAgICA8aW9uLWltZyBbc3JjXT1cIm9iamVjdFVSTFwiIGNsYXNzPVwidy1mdWxsIGgtMzJcIj48L2lvbi1pbWc+XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvaW9uLWNvbnRlbnQ+XHJcbiAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICA8L2lvbi1wb3BvdmVyPlxyXG4gIDwvZGl2PlxyXG5cclxuICA8ZGl2IGNsYXNzPVwibG9hZGluZy1jb250YWluZXJcIiBbY2xhc3MubG9hZGluZ109XCJsb2FkaW5nKClcIj5cclxuICAgIDxpb24tc3Bpbm5lcj48L2lvbi1zcGlubmVyPlxyXG4gIDwvZGl2PlxyXG48L2Rpdj4iXX0=
|
|
101
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtZmlsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvaW5wdXRzL2lucHV0LWZpbGUvaW5wdXQtZmlsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvaW5wdXRzL2lucHV0LWZpbGUvaW5wdXQtZmlsZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUF1QixTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekcsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUMvRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sdUNBQXVDLENBQUM7Ozs7OztBQVl2RSxNQUFNLE9BQU8sa0JBQW1CLFNBQVEsV0FBMEI7SUFLdkQsUUFBUSxDQUFDLEtBQXdCO1FBQ3hDLElBQUcsS0FBSyxFQUFDLENBQUM7WUFDUixJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDaEIsQ0FBQztRQUNELElBQUksQ0FBQyxjQUFjLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQzVDLENBQUM7SUFFRCxZQUNVLFlBQTBCLEVBQzNCLGNBQThCO1FBQ25DLEtBQUssRUFBRSxDQUFDO1FBRkYsaUJBQVksR0FBWixZQUFZLENBQWM7UUFDM0IsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBWnZDLGtCQUFhLEdBQXdDLEtBQUssQ0FBeUIsSUFBSSxzQkFBc0IsRUFBRSxD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O2tCQVY5QixTQUFTOytCQUNFLFlBQVksYUFHWDt3QkFDVCxHQUFHLG9CQUFvQixDQUFDLFlBQVksb0JBQW9CO3dCQUN4RCxFQUFFLE9BQU8sRUFBRSxXQUFXLEVBQUUsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsbUJBQW1CLENBQUMsRUFBRTtxQkFDNUU7OEdBTzRCLGNBQWM7c0JBQTFDLFNBQVM7dUJBQUMsZ0JBQWdCOztBQTJEN0IsTUFBTSxDQUFDLE1BQU0sUUFBUSxHQUFhO0lBQ2hDLEtBQUs7SUFDTCxLQUFLO0lBQ0wsTUFBTTtJQUNOLEtBQUs7SUFDTCxLQUFLO0lBQ0wsS0FBSztJQUNMLEtBQUs7SUFDTCxLQUFLO0lBQ0wsTUFBTTtJQUNOLEtBQUs7SUFDTCxNQUFNO0lBQ04sTUFBTTtJQUNOLE1BQU07SUFDTixNQUFNO0NBQ1AsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRWxlbWVudFJlZiwgZm9yd2FyZFJlZiwgaW5wdXQsIElucHV0U2lnbmFsLCBPbkluaXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDdXN0b21JbnB1dCB9IGZyb20gJy4uL2N1c3RvbS1pbnB1dCc7XHJcbmltcG9ydCB7IElucHV0RmlsZUNvbmZpZ3VyYXRpb24gfSBmcm9tICcuL2lucHV0LWZpbGUuY29uZmlndXJhdGlvbic7XHJcbmltcG9ydCB7IElucHV0UHJvdmlkZXJGYWN0b3J5IH0gZnJvbSAnLi4vaW5wdXQtcHJvdmlkZXItZmFjdG9yeSc7XHJcbmltcG9ydCB7IFV0aWxzU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3V0aWxzLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBTdG9yYWdlU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3dlYi9zdG9yYWdlLnNlcnZpY2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdpbnB1dC1maWxlJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vaW5wdXQtZmlsZS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vaW5wdXQtZmlsZS5jb21wb25lbnQuc2NzcycsICcuLi9pbnB1dHMuc2NzcyddLFxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAgLi4uSW5wdXRQcm92aWRlckZhY3RvcnkuR2V0UHJvdmlkZXJzKElucHV0RmlsZUNvbXBvbmVudCksXHJcbiAgICB7IHByb3ZpZGU6IEN1c3RvbUlucHV0LCB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBJbnB1dEZpbGVDb21wb25lbnQpIH0sXHJcbiAgXSxcclxuICBcclxufSlcclxuZXhwb3J0IGNsYXNzIElucHV0RmlsZUNvbXBvbmVudCBleHRlbmRzIEN1c3RvbUlucHV0PEZpbGUgfCBzdHJpbmc+IHtcclxuXHJcbiAgY29uZmlndXJhdGlvbjogSW5wdXRTaWduYWw8SW5wdXRGaWxlQ29uZmlndXJhdGlvbj4gPSBpbnB1dDxJbnB1dEZpbGVDb25maWd1cmF0aW9uPihuZXcgSW5wdXRGaWxlQ29uZmlndXJhdGlvbigpKTtcclxuXHJcbiAgQFZpZXdDaGlsZCgnaW5wdXRDb250YWluZXInKSBpbnB1dENvbnRhaW5lcjogRWxlbWVudFJlZjxIVE1MRGl2RWxlbWVudD47XHJcbiAgb3ZlcnJpZGUgc2V0Rm9jdXMoZXZlbnQ6IE1vdXNlRXZlbnQgfCBudWxsKTogdm9pZCB7XHJcbiAgICBpZihldmVudCl7XHJcbiAgICAgIHRoaXMuVXBsb2FkKCk7XHJcbiAgICB9XHJcbiAgICB0aGlzLmlucHV0Q29udGFpbmVyLm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSB1dGlsc1NlcnZpY2U6IFV0aWxzU2VydmljZSxcclxuICAgIHB1YmxpYyBzdG9yYWdlU2VydmljZTogU3RvcmFnZVNlcnZpY2VcclxuICApIHsgc3VwZXIoKTsgfVxyXG5cclxuICB2YWx1ZVN0cmluZzogc3RyaW5nID0gXCJcIjtcclxuICBpc1N0cmluZzogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIGlzSW1hZ2U6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBvYmplY3RVUkw6IHN0cmluZyB8IG51bGwgPSBudWxsO1xyXG5cclxuXHJcbiAgb3ZlcnJpZGUgd3JpdGVWYWx1ZShvYmo6IEZpbGUgfCBzdHJpbmcpOiB2b2lkIHwgUHJvbWlzZTx2b2lkPiB7XHJcbiAgICB0aGlzLnZhbHVlLnNldChvYmopO1xyXG4gICAgdGhpcy5TZXRWYWx1ZVN0cmluZygpO1xyXG4gICAgdGhpcy5ydW5WYWxpZGF0aW9uKCk7XHJcbiAgfVxyXG4gIG92ZXJyaWRlIFNldFZhbHVlKHZhbHVlOiBGaWxlIHwgc3RyaW5nKTogdm9pZCB7XHJcbiAgICB0aGlzLnZhbHVlLnNldCh2YWx1ZSk7XHJcbiAgICB0aGlzLlNldFZhbHVlU3RyaW5nKCk7XHJcbiAgICB0aGlzLnJ1blZhbGlkYXRpb24oKTtcclxuICAgIHRoaXMucHJvcGFnYXRlQ2hhbmdlKHRoaXMudmFsdWUoKSk7XHJcbiAgfVxyXG4gIFxyXG4gIFNldFZhbHVlU3RyaW5nKCk6IHZvaWQge1xyXG4gICAgdGhpcy5vYmplY3RVUkwgPSBudWxsO1xyXG4gICAgdGhpcy5pc1N0cmluZyA9IHR5cGVvZiB0aGlzLnZhbHVlKCkgPT0gXCJzdHJpbmdcIjtcclxuICAgIGlmKCF0aGlzLnZhbHVlKCkpIHsgdGhpcy52YWx1ZVN0cmluZyA9IFwiLi4uXCI7IHJldHVybjsgfVxyXG4gICAgdGhpcy52YWx1ZVN0cmluZyA9IHR5cGVvZiB0aGlzLnZhbHVlKCkgPT0gXCJzdHJpbmdcIiA/ICBTdG9yYWdlU2VydmljZS5TYW5pdGl6ZUZpbGVOYW1lKHRoaXMudmFsdWUoKS50b1N0cmluZygpKSA6ICh0aGlzLnZhbHVlKCkgYXMgRmlsZSkubmFtZTtcclxuICAgIFxyXG4gICAgdGhpcy5pc0ltYWdlID0gbHN0SW1hZ2UuaW5jbHVkZXModGhpcy52YWx1ZVN0cmluZy5zcGxpdCgnLicpLmF0KC0xKS50b0xvd2VyQ2FzZSgpKTtcclxuICAgIGlmKHRoaXMuaXNJbWFnZSAmJiAhdGhpcy5pc1N0cmluZyl7XHJcbiAgICAgIHRoaXMub2JqZWN0VVJMID0gVVJMLmNyZWF0ZU9iamVjdFVSTCh0aGlzLnZhbHVlKCkgYXMgRmlsZSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBhc3luYyBVcGxvYWQoKTogUHJvbWlzZTx2b2lkPntcclxuICAgIHRyeXtcclxuICAgICAgY29uc3QgcmVzID0gYXdhaXQgdGhpcy51dGlsc1NlcnZpY2UuU2VsZWN0RmlsZSh0aGlzLmNvbmZpZ3VyYXRpb24oKSk7XHJcbiAgICAgIGlmKHJlcyl7IHRoaXMuU2V0VmFsdWUocmVzKTsgfVxyXG4gICAgfWNhdGNoe31cclxuICB9XHJcblxyXG4gIENsZWFyKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XHJcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcclxuICAgIHRoaXMuU2V0VmFsdWUobnVsbCk7XHJcbiAgfVxyXG5cclxuICBEb3dubG9hZCgpOiB2b2lke1xyXG4gICAgdGhpcy5zdG9yYWdlU2VydmljZS5TdGFydERvd25sb2FkKHRoaXMudmFsdWUoKSBhcyBzdHJpbmcpO1xyXG4gIH1cclxufVxyXG5leHBvcnQgY29uc3QgbHN0SW1hZ2U6IHN0cmluZ1tdID0gW1xyXG4gICdqcGUnLFxyXG4gICdqcGcnLFxyXG4gICdqcGVnJyxcclxuICAnZ2lmJyxcclxuICAncG5nJyxcclxuICAnYm1wJyxcclxuICAnaWNvJyxcclxuICAnc3ZnJyxcclxuICAnc3ZneicsXHJcbiAgJ3RpZicsXHJcbiAgJ3RpZmYnLFxyXG4gICd3ZWJwJyxcclxuICAnamZpZicsXHJcbiAgJ2F2aWYnLFxyXG5dICIsIjxkaXYgXHJcbiAgI2lucHV0Q29udGFpbmVyXHJcbiAgY2xhc3M9XCJpbnB1dC1jb250YWluZXJcIiBcclxuICAoY2xpY2spPVwic2V0Rm9jdXMoJGV2ZW50KVwiXHJcbiAgW2NsYXNzLnJlcXVpcmVkXT1cInJlcXVpcmVkKClcIiBcclxuICBbY2xhc3Muc3VibWl0dGVkXT1cInN1Ym1pdHRlZCgpXCIgXHJcbiAgW2NsYXNzLmludmFsaWRdPVwiaW52YWxpZFwiIFxyXG4gIFtjbGFzcy5kaXNhYmxlZF09XCJkaXNhYmxlZCgpIHx8IGxvYWRpbmcoKVwiXHJcbiAgW2NsYXNzLmxvYWRpbmddPVwibG9hZGluZygpXCJcclxuPlxyXG4gIDxkaXYgY2xhc3M9XCJpbnB1dC1sYWJlbFwiPiBcclxuICAgIDxzcGFuIGNsYXNzPVwidHJ1bmNhdGVcIj5cclxuICAgICAge3tsYWJlbCgpfX0gXHJcbiAgICA8L3NwYW4+XHJcbiAgPC9kaXY+XHJcbiAgPGRpdiB0YWJpbmRleD1cIjBcIiBjbGFzcz1cImZpbGUtbGFiZWwtY29udGFpbmVyIHRleHQtZGFya1wiIFt0aXRsZV09XCJ2YWx1ZVN0cmluZ1wiIChjbGljayk9XCJVcGxvYWQoKVwiPlxyXG4gICAgPGlvbi1pY29uIGNsYXNzPVwic2hyaW5rLTBcIiBjb2xvcj1cImRhcmtcIiBuYW1lPVwiZG9jdW1lbnRcIj48L2lvbi1pY29uPiBcclxuICAgIDxzcGFuIGNsYXNzPVwic2hyaW5rIHRydW5jYXRlXCI+XHJcbiAgICAgIHt7dmFsdWVTdHJpbmd9fVxyXG4gICAgPC9zcGFuPlxyXG5cclxuICAgIDxpb24tYnV0dG9uIFtjbGFzcy5hdmFpbGFibGVdPVwidmFsdWUoKVwiIGNvbG9yPVwibWVkaXVtXCIgY2xhc3M9XCJlbGxpcHNpcy1idXR0b24gbWwtYXV0byBzaHJpbmstMFwiIGZpbGw9XCJjbGVhclwiIHN0eWxlPVwiLS1ib3JkZXItcmFkaXVzOiAuNXJlbVwiIHNpemU9XCJzbWFsbFwiIChjbGljayk9XCJwb3BvdmVyLnByZXNlbnQoJGV2ZW50KTsgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCI+XHJcbiAgICAgIDxpb24taWNvbiBuYW1lPVwiZWxsaXBzaXMtdmVydGljYWxcIiBzbG90PVwiaWNvbi1vbmx5XCI+PC9pb24taWNvbj5cclxuICAgIDwvaW9uLWJ1dHRvbj5cclxuICAgIDxpb24tcG9wb3ZlciAjcG9wb3Zlcj5cclxuICAgICAgPG5nLXRlbXBsYXRlPlxyXG4gICAgICAgIDxpb24tY29udGVudD5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJzaXplLWZ1bGwgZmxleCBmbGV4LWNvbFwiPlxyXG4gICAgICAgICAgICBAaWYodmFsdWUoKSl7XHJcbiAgICAgICAgICAgICAgPGlvbi1idXR0b24gY29sb3I9XCJkYW5nZXJcInNpemU9XCJzbWFsbFwiICBzdHlsZT1cIi0tYm9yZGVyLXJhZGl1czogMHJlbVwiIChjbGljayk9XCJDbGVhcigkZXZlbnQpOyBwb3BvdmVyLmRpc21pc3MoKVwiPlxyXG4gICAgICAgICAgICAgICAgPGlvbi1pY29uIGNvbG9yPVwiZGFya1wiIG5hbWU9XCJ0cmFzaFwiIHNsb3Q9XCJpY29uLW9ubHlcIj48L2lvbi1pY29uPlxyXG4gICAgICAgICAgICAgICAgTGltcGFyXHJcbiAgICAgICAgICAgICAgPC9pb24tYnV0dG9uPlxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIEBpZihpc1N0cmluZyl7XHJcbiAgICAgICAgICAgICAgPGlvbi1idXR0b24gY29sb3I9XCJzZWNvbmRhcnlcIiBzaXplPVwic21hbGxcIiBzdHlsZT1cIi0tYm9yZGVyLXJhZGl1czogMHJlbVwiIChjbGljayk9XCJEb3dubG9hZCgpXCI+XHJcbiAgICAgICAgICAgICAgICA8aW9uLWljb24gY29sb3I9XCJkYXJrXCIgbmFtZT1cImRvd25sb2FkXCIgc2xvdD1cInN0YXJ0XCI+PC9pb24taWNvbj5cclxuICAgICAgICAgICAgICAgIERvd25sb2FkXHJcbiAgICAgICAgICAgICAgPC9pb24tYnV0dG9uPlxyXG4gICAgICAgICAgICAgIEBpZihzdG9yYWdlU2VydmljZS5HZXRQcm9ncmVzcyh0aGlzLnZhbHVlKCkudG9TdHJpbmcoKSkpe1xyXG4gICAgICAgICAgICAgICAgPGlvbi1wcm9ncmVzcy1iYXIgW3ZhbHVlXT1cInN0b3JhZ2VTZXJ2aWNlLkdldFByb2dyZXNzKHRoaXMudmFsdWUoKS50b1N0cmluZygpKVwiPjwvaW9uLXByb2dyZXNzLWJhcj5cclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgQGlmKGlzSW1hZ2Upe1xyXG4gICAgICAgICAgICAgICAgPGltYWdlIGZpbGw9XCJjbGVhclwiIFtzcmNdPVwidmFsdWUoKS50b1N0cmluZygpXCI+PC9pbWFnZT5cclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQGVsc2UgaWYoaXNJbWFnZSl7XHJcbiAgICAgICAgICAgICAgPGlvbi1pbWcgW3NyY109XCJvYmplY3RVUkxcIiBjbGFzcz1cInctZnVsbCBoLTMyXCI+PC9pb24taW1nPlxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2lvbi1jb250ZW50PlxyXG4gICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgPC9pb24tcG9wb3Zlcj5cclxuICA8L2Rpdj5cclxuXHJcbiAgPGRpdiBjbGFzcz1cImxvYWRpbmctY29udGFpbmVyXCIgW2NsYXNzLmxvYWRpbmddPVwibG9hZGluZygpXCI+XHJcbiAgICA8aW9uLXNwaW5uZXI+PC9pb24tc3Bpbm5lcj5cclxuICA8L2Rpdj5cclxuPC9kaXY+Il19
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Component, ElementRef, ViewChild } from '@angular/core';
|
|
1
|
+
import { Component, ElementRef, forwardRef, ViewChild } from '@angular/core';
|
|
2
2
|
import { CustomInput } from '../custom-input';
|
|
3
3
|
import { InputProviderFactory } from '../input-provider-factory';
|
|
4
4
|
import { EnvironmentService } from '../../../services/environment.service';
|
|
@@ -13,8 +13,8 @@ import * as i4 from "../input-select/input-select.component";
|
|
|
13
13
|
import * as i5 from "../input-select/directives/sion-label-template.directive";
|
|
14
14
|
import * as i6 from "../input-select/directives/sion-option-template.directive";
|
|
15
15
|
export class InputIconComponent extends CustomInput {
|
|
16
|
-
|
|
17
|
-
if (this.input && event.target == this.inputContainer.nativeElement) {
|
|
16
|
+
setFocus(event) {
|
|
17
|
+
if (this.input && (event == null || event.target == this.inputContainer.nativeElement)) {
|
|
18
18
|
this.input.nativeElement.focus();
|
|
19
19
|
}
|
|
20
20
|
}
|
|
@@ -39,11 +39,17 @@ export class InputIconComponent extends CustomInput {
|
|
|
39
39
|
this.propagateChange(obj);
|
|
40
40
|
}
|
|
41
41
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: InputIconComponent, deps: [{ token: i1.EnvironmentService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
42
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: InputIconComponent, selector: "input-icon", providers: [
|
|
42
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: InputIconComponent, selector: "input-icon", providers: [
|
|
43
|
+
...InputProviderFactory.GetProviders(InputIconComponent),
|
|
44
|
+
{ provide: CustomInput, useExisting: forwardRef(() => InputIconComponent) },
|
|
45
|
+
], viewQueries: [{ propertyName: "input", first: true, predicate: ["input"], descendants: true }, { propertyName: "inputContainer", first: true, predicate: ["inputContainer"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<input-select [ngModel]=\"value()\" (ngModelChange)=\"SetValue($event)\" [items]=\"lstIcons\" [configuration]=\"config\" [submitted]=\"submitted()\" [label]=\"label()\" [required]=\"required()\" [disabled]=\"disabled()\" [loading]=\"loading()\">\r\n <ng-template sionLabelTemplate sionOptionTemplate let-item=\"item\">\r\n <div class=\"flex truncate items-center justify-start gap-2 text-dark\">\r\n <ion-icon [name]=\"item.name\" class=\"size-5\"></ion-icon>\r\n <span class=\"truncate\">{{item.name}}</span>\r\n </div>\r\n </ng-template>\r\n</input-select>", styles: ["", "@property --input-color{syntax: \"<color>\"; initial-value: transparent; inherits: false;}.input-container{position:relative;--tw-scale-x: 1;--tw-scale-y: 1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));cursor:text;border-radius:.75rem;padding:.25rem .75rem;--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition:--input-color .2s ease-in-out,box-shadow .2s ease-in-out,opacity .2s ease-in-out,filter .2s ease-in-out;--color: var(--ion-color-dark);--input-color: var(--input-background, var(--ion-color-step-250));--shadow: 0 3px 4px -1px rgb(0 0 0 / .1);--inset-shadow: var(--input-color) 0px 1.75px 2px 0px inset;--focused-shadow: 0 0 1px 2px color-mix(in srgb, var(--ion-color-medium) 35%, transparent);box-shadow:var(--inset-shadow),var(--shadow);will-change:box-shadow,filter opacity;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;background:radial-gradient(ellipse at 0px top,hsl(from var(--input-color) h s l/.5),hsl(from var(--input-color) h s l/.4)),hsl(from var(--ion-color-light) h s l/.8)}.input-container:hover{--tw-brightness: brightness(.9);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.input-container:focus-within,.input-container:focus,.input-container.manual-focus{box-shadow:var(--inset-shadow),var(--shadow),var(--focused-shadow);--tw-brightness: brightness(.9);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.input-container .input-label{pointer-events:none;display:flex;height:1rem;width:100%;min-width:0px;max-width:100%;align-items:center;justify-content:flex-start;gap:.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;line-height:1rem;color:var(--color)}.input-container input,.input-container textarea{height:1.5rem;width:100%;border-radius:.375rem;background-color:transparent;font-size:.875rem;line-height:1.25rem;color:var(--ion-color-dark);outline:2px solid transparent;outline-offset:2px}.input-container.loading{cursor:wait!important}.input-container.required .input-label:after{content:\"*\";color:var(--ion-color-danger);vertical-align:bottom}.input-container.submitted.invalid{--input-color: color-mix(in srgb, var(--ion-color-danger) 50%, transparent)}.input-container.disabled{cursor:not-allowed;opacity:.5;--tw-brightness: brightness(1);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.input-container.disabled *{pointer-events:none}.loading-container{position:absolute;pointer-events:none;width:100%;height:100%;top:0;left:0;display:flex;justify-content:end;align-items:center;padding-right:.5rem;will-change:opacity;transition:opacity .2s ease-in-out;overflow:hidden;opacity:0;z-index:10}.loading-container ion-spinner{will-change:auto;transition:transform .2s ease-in-out;transform:translateY(-100%)}.loading-container.loading{opacity:1}.loading-container.loading ion-spinner{transform:translateY(0)}ion-modal::part(content){border-radius:.75rem;border:1px solid var(--ion-color-step-250)}\n"], dependencies: [{ kind: "component", type: i2.IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i4.InputSelectComponent, selector: "input-select", inputs: ["items", "configuration"], outputs: ["itemsChange"] }, { kind: "directive", type: i5.SIonLabelTemplateDirective, selector: "[sionLabelTemplate]" }, { kind: "directive", type: i6.SIonOptionTemplateDirective, selector: "[sionOptionTemplate]" }] }); }
|
|
43
46
|
}
|
|
44
47
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: InputIconComponent, decorators: [{
|
|
45
48
|
type: Component,
|
|
46
|
-
args: [{ selector: 'input-icon', providers: [
|
|
49
|
+
args: [{ selector: 'input-icon', providers: [
|
|
50
|
+
...InputProviderFactory.GetProviders(InputIconComponent),
|
|
51
|
+
{ provide: CustomInput, useExisting: forwardRef(() => InputIconComponent) },
|
|
52
|
+
], template: "<input-select [ngModel]=\"value()\" (ngModelChange)=\"SetValue($event)\" [items]=\"lstIcons\" [configuration]=\"config\" [submitted]=\"submitted()\" [label]=\"label()\" [required]=\"required()\" [disabled]=\"disabled()\" [loading]=\"loading()\">\r\n <ng-template sionLabelTemplate sionOptionTemplate let-item=\"item\">\r\n <div class=\"flex truncate items-center justify-start gap-2 text-dark\">\r\n <ion-icon [name]=\"item.name\" class=\"size-5\"></ion-icon>\r\n <span class=\"truncate\">{{item.name}}</span>\r\n </div>\r\n </ng-template>\r\n</input-select>", styles: ["@property --input-color{syntax: \"<color>\"; initial-value: transparent; inherits: false;}.input-container{position:relative;--tw-scale-x: 1;--tw-scale-y: 1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));cursor:text;border-radius:.75rem;padding:.25rem .75rem;--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition:--input-color .2s ease-in-out,box-shadow .2s ease-in-out,opacity .2s ease-in-out,filter .2s ease-in-out;--color: var(--ion-color-dark);--input-color: var(--input-background, var(--ion-color-step-250));--shadow: 0 3px 4px -1px rgb(0 0 0 / .1);--inset-shadow: var(--input-color) 0px 1.75px 2px 0px inset;--focused-shadow: 0 0 1px 2px color-mix(in srgb, var(--ion-color-medium) 35%, transparent);box-shadow:var(--inset-shadow),var(--shadow);will-change:box-shadow,filter opacity;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;background:radial-gradient(ellipse at 0px top,hsl(from var(--input-color) h s l/.5),hsl(from var(--input-color) h s l/.4)),hsl(from var(--ion-color-light) h s l/.8)}.input-container:hover{--tw-brightness: brightness(.9);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.input-container:focus-within,.input-container:focus,.input-container.manual-focus{box-shadow:var(--inset-shadow),var(--shadow),var(--focused-shadow);--tw-brightness: brightness(.9);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.input-container .input-label{pointer-events:none;display:flex;height:1rem;width:100%;min-width:0px;max-width:100%;align-items:center;justify-content:flex-start;gap:.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;line-height:1rem;color:var(--color)}.input-container input,.input-container textarea{height:1.5rem;width:100%;border-radius:.375rem;background-color:transparent;font-size:.875rem;line-height:1.25rem;color:var(--ion-color-dark);outline:2px solid transparent;outline-offset:2px}.input-container.loading{cursor:wait!important}.input-container.required .input-label:after{content:\"*\";color:var(--ion-color-danger);vertical-align:bottom}.input-container.submitted.invalid{--input-color: color-mix(in srgb, var(--ion-color-danger) 50%, transparent)}.input-container.disabled{cursor:not-allowed;opacity:.5;--tw-brightness: brightness(1);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.input-container.disabled *{pointer-events:none}.loading-container{position:absolute;pointer-events:none;width:100%;height:100%;top:0;left:0;display:flex;justify-content:end;align-items:center;padding-right:.5rem;will-change:opacity;transition:opacity .2s ease-in-out;overflow:hidden;opacity:0;z-index:10}.loading-container ion-spinner{will-change:auto;transition:transform .2s ease-in-out;transform:translateY(-100%)}.loading-container.loading{opacity:1}.loading-container.loading ion-spinner{transform:translateY(0)}ion-modal::part(content){border-radius:.75rem;border:1px solid var(--ion-color-step-250)}\n"] }]
|
|
47
53
|
}], ctorParameters: () => [{ type: i1.EnvironmentService }], propDecorators: { input: [{
|
|
48
54
|
type: ViewChild,
|
|
49
55
|
args: ['input']
|
|
@@ -51,4 +57,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
51
57
|
type: ViewChild,
|
|
52
58
|
args: ['inputContainer']
|
|
53
59
|
}] } });
|
|
54
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
60
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtaWNvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvaW5wdXRzL2lucHV0LWljb24vaW5wdXQtaWNvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvaW5wdXRzL2lucHV0LWljb24vaW5wdXQtaWNvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQVUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM5QyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUMzRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDOUMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMvQyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQzs7Ozs7Ozs7QUFXdEYsTUFBTSxPQUFPLGtCQUFtQixTQUFRLFdBQW1CO0lBTWhELFFBQVEsQ0FBQyxLQUF3QjtRQUN4QyxJQUFHLElBQUksQ0FBQyxLQUFLLElBQUksQ0FBQyxLQUFLLElBQUksSUFBSSxJQUFJLEtBQUssQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLGNBQWMsQ0FBQyxhQUFhLENBQUMsRUFBRSxDQUFDO1lBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsS0FBSyxFQUFFLENBQUM7UUFBQyxDQUFDO0lBQzlILENBQUM7SUFJRCxZQUNVLGtCQUFzQztRQUM1QyxLQUFLLEVBQUUsQ0FBQztRQURGLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7UUFYaEQsYUFBUSxHQUF1QixFQUFFLENBQUM7UUFhaEMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxvREFBb0QsRUFBRSxJQUFJLENBQUMsa0JBQWtCLENBQUMsV0FBVyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ3RILE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxXQUFXLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsZ0JBQWdCLEVBQUUsR0FBRyxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLGdCQUFnQixDQUFDLENBQUM7UUFDbEksSUFBSSxDQUFDLFFBQVEsR0FBRyxHQUFHLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQzdCLE9BQU8sRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQztRQUMvQyxDQUFDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSx3QkFBd0IsQ0FBQyxNQUFNLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3RGLENBQUM7SUFFUSxVQUFVLENBQUMsR0FBVztRQUM3QixJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNwQixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDdkIsQ0FBQztJQUVRLFFBQVEsQ0FBQyxHQUFXO1FBQzNCLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3BCLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUNyQixJQUFJLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzVCLENBQUM7K0dBaENVLGtCQUFrQjttR0FBbEIsa0JBQWtCLHFDQUxsQjtZQUNULEdBQUcsb0JBQW9CLENBQUMsWUFBWSxDQUFDLGtCQUFrQixDQUFDO1lBQ3hELEVBQUUsT0FBTyxFQUFFLFdBQVcsRUFBRSxXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGtCQUFrQixDQUFDLEVBQUU7U0FDNUUsb1BDZkgsa2tCQU9lOzs0RkRVRixrQkFBa0I7a0JBVDlCLFNBQVM7K0JBQ0UsWUFBWSxhQUdYO3dCQUNULEdBQUcsb0JBQW9CLENBQUMsWUFBWSxvQkFBb0I7d0JBQ3hELEVBQUUsT0FBTyxFQUFFLFdBQVcsRUFBRSxXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxtQkFBbUIsQ0FBQyxFQUFFO3FCQUM1RTt1RkFNbUIsS0FBSztzQkFBeEIsU0FBUzt1QkFBQyxPQUFPO2dCQUNXLGNBQWM7c0JBQTFDLFNBQVM7dUJBQUMsZ0JBQWdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBmb3J3YXJkUmVmLCBPbkluaXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDdXN0b21JbnB1dCB9IGZyb20gJy4uL2N1c3RvbS1pbnB1dCc7XHJcbmltcG9ydCB7IElucHV0UHJvdmlkZXJGYWN0b3J5IH0gZnJvbSAnLi4vaW5wdXQtcHJvdmlkZXItZmFjdG9yeSc7XHJcbmltcG9ydCB7IEVudmlyb25tZW50U2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2Vudmlyb25tZW50LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBsc3RJY29uc0lvbmljb25zIH0gZnJvbSAnLi9pb25pY29ucyc7XHJcbmltcG9ydCB7IGxzdEZsdWVudGljb25zIH0gZnJvbSAnLi9mbHVlbnRpY29ucyc7XHJcbmltcG9ydCB7IElucHV0U2VsZWN0Q29uZmlndXJhdGlvbiB9IGZyb20gJy4uL2lucHV0LXNlbGVjdC9pbnB1dC5zZWxlY3QuY29uZmlndXJhdGlvbic7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2lucHV0LWljb24nLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9pbnB1dC1pY29uLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9pbnB1dC1pY29uLmNvbXBvbmVudC5zY3NzJywgJy4uL2lucHV0cy5zY3NzJ10sXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICAuLi5JbnB1dFByb3ZpZGVyRmFjdG9yeS5HZXRQcm92aWRlcnMoSW5wdXRJY29uQ29tcG9uZW50KSxcclxuICAgIHsgcHJvdmlkZTogQ3VzdG9tSW5wdXQsIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IElucHV0SWNvbkNvbXBvbmVudCkgfSxcclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBJbnB1dEljb25Db21wb25lbnQgZXh0ZW5kcyBDdXN0b21JbnB1dDxzdHJpbmc+IHtcclxuICBcclxuICBsc3RJY29uczogeyBuYW1lOiBzdHJpbmcgfVtdID0gW107XHJcblxyXG4gIEBWaWV3Q2hpbGQoJ2lucHV0JykgaW5wdXQ6IEVsZW1lbnRSZWY8SFRNTElucHV0RWxlbWVudD47XHJcbiAgQFZpZXdDaGlsZCgnaW5wdXRDb250YWluZXInKSBpbnB1dENvbnRhaW5lcjogRWxlbWVudFJlZjxIVE1MRGl2RWxlbWVudD47XHJcbiAgb3ZlcnJpZGUgc2V0Rm9jdXMoZXZlbnQ6IE1vdXNlRXZlbnQgfCBudWxsKTogdm9pZCB7XHJcbiAgICBpZih0aGlzLmlucHV0ICYmIChldmVudCA9PSBudWxsIHx8IGV2ZW50LnRhcmdldCA9PSB0aGlzLmlucHV0Q29udGFpbmVyLm5hdGl2ZUVsZW1lbnQpKSB7IHRoaXMuaW5wdXQubmF0aXZlRWxlbWVudC5mb2N1cygpOyB9ICAgICAgXHJcbiAgfVxyXG5cclxuICBjb25maWc6IElucHV0U2VsZWN0Q29uZmlndXJhdGlvbjtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGVudmlyb25tZW50U2VydmljZTogRW52aXJvbm1lbnRTZXJ2aWNlXHJcbiAgKSB7IHN1cGVyKCk7IFxyXG4gICAgY29uc29sZS5sb2coJ3RoaXMuZW52aXJvbm1lbnRTZXJ2aWNlLmVudmlyb25tZW50LnVzZUZsdWVudEljb25zJywgdGhpcy5lbnZpcm9ubWVudFNlcnZpY2UuZW52aXJvbm1lbnQudXNlRmx1ZW50SWNvbnMpO1xyXG4gICAgY29uc3QgbHN0ID0gdGhpcy5lbnZpcm9ubWVudFNlcnZpY2UuZW52aXJvbm1lbnQudXNlRmx1ZW50SWNvbnMgPyBbLi4ubHN0SWNvbnNJb25pY29ucywgLi4ubHN0Rmx1ZW50aWNvbnNdIDogWy4uLmxzdEljb25zSW9uaWNvbnNdO1xyXG4gICAgdGhpcy5sc3RJY29ucyA9IGxzdC5tYXAoaWNvbiA9PiB7IFxyXG4gICAgICByZXR1cm4geyBuYW1lOiBpY29uLnJlcGxhY2VBbGwoJy5zdmcnLCAnJykgfTtcclxuICAgIH0pO1xyXG4gICAgdGhpcy5jb25maWcgPSBuZXcgSW5wdXRTZWxlY3RDb25maWd1cmF0aW9uKFwibmFtZVwiLCBcIm5hbWVcIiwgdHJ1ZSwgdHJ1ZSwgbnVsbCwgZmFsc2UpO1xyXG4gIH1cclxuXHJcbiAgb3ZlcnJpZGUgd3JpdGVWYWx1ZShvYmo6IHN0cmluZyk6IHZvaWQgfCBQcm9taXNlPHZvaWQ+IHtcclxuICAgIHRoaXMudmFsdWUuc2V0KG9iaik7XHJcbiAgICB0aGlzLnJ1blZhbGlkYXRpb24oKTtcclxuICB9XHJcblxyXG4gIG92ZXJyaWRlIFNldFZhbHVlKG9iajogc3RyaW5nKTogdm9pZCB7XHJcbiAgICB0aGlzLnZhbHVlLnNldChvYmopO1xyXG4gICAgdGhpcy5ydW5WYWxpZGF0aW9uKCk7XHJcbiAgICB0aGlzLnByb3BhZ2F0ZUNoYW5nZShvYmopO1xyXG4gIH1cclxufVxyXG5cclxuIiwiPGlucHV0LXNlbGVjdCBbbmdNb2RlbF09XCJ2YWx1ZSgpXCIgKG5nTW9kZWxDaGFuZ2UpPVwiU2V0VmFsdWUoJGV2ZW50KVwiIFtpdGVtc109XCJsc3RJY29uc1wiIFtjb25maWd1cmF0aW9uXT1cImNvbmZpZ1wiIFtzdWJtaXR0ZWRdPVwic3VibWl0dGVkKClcIiBbbGFiZWxdPVwibGFiZWwoKVwiIFtyZXF1aXJlZF09XCJyZXF1aXJlZCgpXCIgW2Rpc2FibGVkXT1cImRpc2FibGVkKClcIiBbbG9hZGluZ109XCJsb2FkaW5nKClcIj5cclxuICA8bmctdGVtcGxhdGUgc2lvbkxhYmVsVGVtcGxhdGUgc2lvbk9wdGlvblRlbXBsYXRlIGxldC1pdGVtPVwiaXRlbVwiPlxyXG4gICAgPGRpdiBjbGFzcz1cImZsZXggdHJ1bmNhdGUgaXRlbXMtY2VudGVyIGp1c3RpZnktc3RhcnQgZ2FwLTIgdGV4dC1kYXJrXCI+XHJcbiAgICAgIDxpb24taWNvbiBbbmFtZV09XCJpdGVtLm5hbWVcIiBjbGFzcz1cInNpemUtNVwiPjwvaW9uLWljb24+XHJcbiAgICAgIDxzcGFuIGNsYXNzPVwidHJ1bmNhdGVcIj57e2l0ZW0ubmFtZX19PC9zcGFuPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9uZy10ZW1wbGF0ZT5cclxuPC9pbnB1dC1zZWxlY3Q+Il19
|
package/esm2022/lib/components/inputs/input-select/directives/sion-label-template.directive.mjs
CHANGED
|
@@ -13,4 +13,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
13
13
|
selector: '[sionLabelTemplate]',
|
|
14
14
|
}]
|
|
15
15
|
}], ctorParameters: () => [{ type: i0.TemplateRef }] });
|
|
16
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lvbi1sYWJlbC10ZW1wbGF0ZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvaW5wdXRzL2lucHV0LXNlbGVjdC9kaXJlY3RpdmVzL3Npb24tbGFiZWwtdGVtcGxhdGUuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUt2RCxNQUFNLE9BQU8sMEJBQTBCO0lBQ3JDLFlBQW1CLFFBQThDO1FBQTlDLGFBQVEsR0FBUixRQUFRLENBQXNDO0lBQUcsQ0FBQzsrR0FEMUQsMEJBQTBCO21HQUExQiwwQkFBMEI7OzRGQUExQiwwQkFBMEI7a0JBSHRDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHFCQUFxQjtpQkFDaEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIFRlbXBsYXRlUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5ARGlyZWN0aXZlKHtcclxuICBzZWxlY3RvcjogJ1tzaW9uTGFiZWxUZW1wbGF0ZV0nLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU0lvbkxhYmVsVGVtcGxhdGVEaXJlY3RpdmU8VD4ge1xyXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyB0ZW1wbGF0ZTogVGVtcGxhdGVSZWY8TGFiZWxUZW1wbGF0ZUNvbnRleHQ8VD4+KSB7fVxyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIExhYmVsVGVtcGxhdGVDb250ZXh0PFQ+
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lvbi1sYWJlbC10ZW1wbGF0ZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvaW5wdXRzL2lucHV0LXNlbGVjdC9kaXJlY3RpdmVzL3Npb24tbGFiZWwtdGVtcGxhdGUuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUt2RCxNQUFNLE9BQU8sMEJBQTBCO0lBQ3JDLFlBQW1CLFFBQThDO1FBQTlDLGFBQVEsR0FBUixRQUFRLENBQXNDO0lBQUcsQ0FBQzsrR0FEMUQsMEJBQTBCO21HQUExQiwwQkFBMEI7OzRGQUExQiwwQkFBMEI7a0JBSHRDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHFCQUFxQjtpQkFDaEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIFRlbXBsYXRlUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5ARGlyZWN0aXZlKHtcclxuICBzZWxlY3RvcjogJ1tzaW9uTGFiZWxUZW1wbGF0ZV0nLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU0lvbkxhYmVsVGVtcGxhdGVEaXJlY3RpdmU8VD4ge1xyXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyB0ZW1wbGF0ZTogVGVtcGxhdGVSZWY8TGFiZWxUZW1wbGF0ZUNvbnRleHQ8VD4+KSB7fVxyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIExhYmVsVGVtcGxhdGVDb250ZXh0PFQ+IHtcclxuICAvKipcclxuICAgKiBPIHZhbG9yIGRvIGl0ZW0gdmlhIGJpbmRMYWJlbCBxdWUgZXN0w6Egc2VuZG8gcmVuZGVyaXphZG8uXHJcbiAgICovXHJcbiAgJGltcGxpY2l0OiBzdHJpbmc7XHJcbiAgLyoqXHJcbiAgICogTyBpdGVtIHNlbGVjaW9uYWRvIG5vIGNvbXBvbmVudGUgZGUgaW5wdXQgc2VsZWN0LlxyXG4gICAqL1xyXG4gIGl0ZW06IFQ7XHJcbn0iXX0=
|
package/esm2022/lib/components/inputs/input-select/directives/sion-option-template.directive.mjs
CHANGED
|
@@ -13,6 +13,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
13
13
|
selector: '[sionOptionTemplate]',
|
|
14
14
|
}]
|
|
15
15
|
}], ctorParameters: () => [{ type: i0.TemplateRef }] });
|
|
16
|
-
|
|
17
|
-
}
|
|
18
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lvbi1vcHRpb24tdGVtcGxhdGUuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL2lucHV0cy9pbnB1dC1zZWxlY3QvZGlyZWN0aXZlcy9zaW9uLW9wdGlvbi10ZW1wbGF0ZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBS3ZELE1BQU0sT0FBTywyQkFBMkI7SUFDdEMsWUFBbUIsUUFBK0M7UUFBL0MsYUFBUSxHQUFSLFFBQVEsQ0FBdUM7SUFBRyxDQUFDOytHQUQzRCwyQkFBMkI7bUdBQTNCLDJCQUEyQjs7NEZBQTNCLDJCQUEyQjtrQkFIdkMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsc0JBQXNCO2lCQUNqQzs7QUFNRCxNQUFNLE9BQU8scUJBQXFCO0NBRWpDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgc2VsZWN0b3I6ICdbc2lvbk9wdGlvblRlbXBsYXRlXScsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTSW9uT3B0aW9uVGVtcGxhdGVEaXJlY3RpdmU8VD4ge1xyXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyB0ZW1wbGF0ZTogVGVtcGxhdGVSZWY8T3B0aW9uVGVtcGxhdGVDb250ZXh0PFQ+Pikge31cclxufVxyXG5cclxuXHJcbmV4cG9ydCBjbGFzcyBPcHRpb25UZW1wbGF0ZUNvbnRleHQ8VD4ge1xyXG4gIGl0ZW06IFQ7XHJcbn0iXX0=
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lvbi1vcHRpb24tdGVtcGxhdGUuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL2lucHV0cy9pbnB1dC1zZWxlY3QvZGlyZWN0aXZlcy9zaW9uLW9wdGlvbi10ZW1wbGF0ZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBS3ZELE1BQU0sT0FBTywyQkFBMkI7SUFDdEMsWUFBbUIsUUFBK0M7UUFBL0MsYUFBUSxHQUFSLFFBQVEsQ0FBdUM7SUFBRyxDQUFDOytHQUQzRCwyQkFBMkI7bUdBQTNCLDJCQUEyQjs7NEZBQTNCLDJCQUEyQjtrQkFIdkMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsc0JBQXNCO2lCQUNqQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiAnW3Npb25PcHRpb25UZW1wbGF0ZV0nLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU0lvbk9wdGlvblRlbXBsYXRlRGlyZWN0aXZlPFQ+IHtcclxuICBjb25zdHJ1Y3RvcihwdWJsaWMgdGVtcGxhdGU6IFRlbXBsYXRlUmVmPE9wdGlvblRlbXBsYXRlQ29udGV4dDxUPj4pIHt9XHJcbn1cclxuXHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIE9wdGlvblRlbXBsYXRlQ29udGV4dDxUPiB7XHJcbiAgLyoqXHJcbiAgICogTyBpdGVtIG5hcXVlbGEgb3DDp8Ojb1xyXG4gICAqL1xyXG4gIGl0ZW06IFQ7XHJcbn0iXX0=
|
|
@@ -13,4 +13,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
13
13
|
selector: '[sionPlaceholderTemplate]',
|
|
14
14
|
}]
|
|
15
15
|
}], ctorParameters: () => [{ type: i0.TemplateRef }] });
|
|
16
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lvbi1wbGFjZWhvbGRlci10ZW1wbGF0ZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvaW5wdXRzL2lucHV0LXNlbGVjdC9kaXJlY3RpdmVzL3Npb24tcGxhY2Vob2xkZXItdGVtcGxhdGUuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUt2RCxNQUFNLE9BQU8sZ0NBQWdDO0lBQzNDLFlBQW1CLFFBQWlEO1FBQWpELGFBQVEsR0FBUixRQUFRLENBQXlDO0lBQUcsQ0FBQzsrR0FEN0QsZ0NBQWdDO21HQUFoQyxnQ0FBZ0M7OzRGQUFoQyxnQ0FBZ0M7a0JBSDVDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLDJCQUEyQjtpQkFDdEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIFRlbXBsYXRlUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5ARGlyZWN0aXZlKHtcclxuICBzZWxlY3RvcjogJ1tzaW9uUGxhY2Vob2xkZXJUZW1wbGF0ZV0nLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU0lvblBsYWNlaG9sZGVyVGVtcGxhdGVEaXJlY3RpdmUge1xyXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyB0ZW1wbGF0ZTogVGVtcGxhdGVSZWY8UGxhY2Vob2xkZXJUZW1wbGF0ZUNvbnRleHQ+KSB7fVxyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFBsYWNlaG9sZGVyVGVtcGxhdGVDb250ZXh0IHtcclxuICAvKipcclxuICAgKiBQbGFjZWhvbGRlciBuYSBjb25maWd1cmHDp8OjbyBkbyBjb21wb25lbnRlIGRlIGlucHV0IHNlbGVjdC5cclxuICAgKi9cclxuICAkaW1wbGljaXQ6IHN0cmluZztcclxuICAvKipcclxuICAgKiBQbGFjZWhvbGRlciBuYSBjb25maWd1cmHDp8OjbyBkbyBjb21wb25lbnRlIGRlIGlucHV0IHNlbGVjdC5cclxuICAgKi9cclxuICBwbGFjZWhvbGRlcjogc3RyaW5nO1xyXG59XHJcbiJdfQ==
|