@norwegian/core-components 7.9.3 → 7.11.0

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.
@@ -150,11 +150,11 @@ export class InputComponent extends NasComponentBase {
150
150
  this.lastWasTab = false;
151
151
  }
152
152
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: InputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
153
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: InputComponent, selector: "nas-input", inputs: { id: "id", model: "model", error: "error", disabled: "disabled", spaceless: "spaceless", label: "label", labelInside: "labelInside", errorMessage: "errorMessage", placeholder: "placeholder", minLength: "minLength", maxLength: "maxLength", info: "info", icon: "icon", type: "type", readonly: "readonly", name: "name", ariaDescribedby: ["aria-describedby", "ariaDescribedby"], required: "required", nasFormControlName: "nasFormControlName", nasFormGroup: "nasFormGroup", min: "min", max: "max", line: "line", pattern: "pattern" }, outputs: { modelChange: "modelChange", blur: "blur" }, host: { listeners: { "document:keydown": "onKeydown($event)" } }, viewQueries: [{ propertyName: "inputReactive", first: true, predicate: ["inputReactive"], descendants: true }, { propertyName: "inputNotReactive", first: true, predicate: ["inputNotReactive"], descendants: true }, { propertyName: "controls", first: true, predicate: ["controls"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"!nasFormControlName; else reactiveForm\">\n <label [nasClass]=\"mainClass()\">\n <div #controls [nasClass]=\"getClass('controls', exists(labelInside) && 'label-inside')\" (keydown)=\"onKeyDown()\"\n (focusin)=\"setActiveInput(true)\" (focusout)=\"setActiveInput(false)\">\n <p [nasClass]=\"getClass('label')\" *ngIf=\"label\">{{ label }}</p>\n <input #inputNotReactive [nasClass]=\"getClass('text')\" [attr.id]=\"inputId\" [attr.type]=\"type\" [attr.name]=\"name\"\n [attr.placeholder]=\"placeholder\" [attr.readonly]=\"readonly\" [required]=\"required\"\n [attr.aria-describedby]=\"ariaDescribedby\" [attr.aria-invalid]=\"error\" [attr.aria-required]=\"required\"\n [attr.minlength]=\"minLength\" [attr.maxlength]=\"maxLength\" [attr.min]=\"min\" [attr.max]=\"max\"\n [attr.pattern]=\"pattern\" (blur)=\"onBlur($event.target.value)\" [(ngModel)]=\"model\" />\n <span [nasClass]=\"getClass('icon')\" *ngIf=\"icon && !error\">\n <nas-icon [icon]=\"icon\"></nas-icon>\n </span>\n </div>\n <span *ngIf=\"exists(error)\" [nasClass]=\"getClass('message')\">\n <div [nasClass]=\"getClass('message--icon')\">\n <nas-icon type=\"negative\"></nas-icon>\n </div>\n <p [nasClass]=\"getClass('message--text')\" [id]=\"errorId\" *ngIf=\"exists(error) && errorMessage\"> {{ errorMessage }}\n </p>\n </span>\n <span [nasClass]=\"getClass('info')\" *ngIf=\"info\">{{ info }}</span>\n </label>\n</ng-container>\n<ng-template #reactiveForm>\n <label [nasClass]=\"mainClass()\" [formGroup]=\"nasFormGroup\">\n <div #controls [nasClass]=\"getClass('controls', exists(labelInside) && 'label-inside')\" \n (focusin)=\"setActiveInput(true)\" (focusout)=\"setActiveInput(false)\" (keydown)=\"onKeyDown()\">\n <p [nasClass]=\"getClass('label')\" *ngIf=\"label\">{{ label }}</p>\n <input #inputReactive [nasClass]=\"getClass('text')\" [formControlName]=\"nasFormControlName\" [attr.id]=\"inputId\"\n [attr.type]=\"type\" [attr.name]=\"name\" [attr.placeholder]=\"placeholder\" [attr.readonly]=\"readonly\"\n [required]=\"required\" [attr.aria-describedby]=\"ariaDescribedby\" [attr.aria-invalid]=\"error\"\n [attr.aria-required]=\"required\" [attr.minlength]=\"minLength\" [attr.maxlength]=\"maxLength\" [attr.min]=\"min\"\n [attr.max]=\"max\" [attr.pattern]=\"pattern\" (blur)=\"onBlur($event.target.value)\" />\n <span [nasClass]=\"getClass('icon')\" *ngIf=\"icon && !error\">\n <nas-icon [icon]=\"icon\"></nas-icon>\n </span>\n </div>\n <span *ngIf=\"exists(error)\" [nasClass]=\"getClass('message')\">\n <div [nasClass]=\"getClass('message--icon')\">\n <nas-icon type=\"negative\"></nas-icon>\n </div>\n <p [nasClass]=\"getClass('message--text')\" [id]=\"errorId\" *ngIf=\"exists(error) && errorMessage\">{{ errorMessage }}\n </p>\n </span>\n <span [nasClass]=\"getClass('info')\" *ngIf=\"info\">{{ info }}</span>\n </label>\n</ng-template>", styles: ["@keyframes fade-in{0%{opacity:0}}@keyframes fade-in-down{0%{opacity:0;transform:translateY(-30px)}}@keyframes fade-in-left{0%{opacity:0;transform:translate(-30px)}}@keyframes fade-in-right{0%{opacity:0;transform:translate(30px)}}@keyframes fade-out{to{opacity:0}}@keyframes flip-in{0%{opacity:0;transform:rotateX(-90deg)}40%{opacity:1;transform:rotateX(10deg)}}@keyframes flip-out{to{opacity:0;transform:rotateX(-90deg)}}@keyframes pop-in-from-top{0%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-100,1,1);opacity:0}6.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-30.227,1,1)}13.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,1.76,1,1)}20%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,7.08,1,1)}26.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,3.838,1,1)}33.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.902,1,1);opacity:1}40%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.237,1,1)}46.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.312,1,1)}53.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.141,1,1)}60%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.021,1,1)}66.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.015,1,1)}73.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.013,1,1)}80%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.005,1,1)}86.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,0,1,1)}93.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.001,1,1);-webkit-transform:translate3d(0,0,0)}to{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.001,1,1);-webkit-transform:translate3d(0,0,0)}}.nas-input{display:block;margin-bottom:16px;position:relative}.nas-input input{padding:12px 16px;border:2px solid #6F6F6F}.nas-input input:placeholder-shown{border-color:#6f6f6f}.nas-input input:not:placeholder-shown{border-color:#6f6f6f}.nas-input--error input{border:2px solid #E5212D!important;background-color:#fff5f3;color:#15273f}.nas-input--error .nas-input__controls--label-inside{background-color:#fff5f3;border:2px solid #E5212D!important}.nas-input--disabled input{background-color:#e9e7e4;border:0;color:#6f6f6f}.nas-input--disabled .nas-input__controls--label-inside{background-color:#e9e7e4}.nas-input--active input{border:2px solid #15273F!important;color:#15273f;background-color:#ebf4ff}.nas-input--active input::placeholder{color:#6f6f6f}.nas-input--active .nas-input__controls--label-inside{border:2px solid #15273F;background-color:#ebf4ff}.nas-input--valid input,.nas-input--valid .nas-input__controls--label-inside{border:2px solid #15273F}.nas-input--focus input,.nas-input--focus .nas-input__controls--label-inside{outline:2px solid #0978E8;outline-offset:2px}.nas-input--focus .nas-input__controls--label-inside input{outline:none}.nas-input--spaceless input{margin-bottom:0}.nas-input__label{font-family:NorwegianTextPro,Arial,Helvetica Neue,Helvetica,sans-serif;font-weight:700;letter-spacing:-.025em;word-spacing:-.025em;display:block;margin-top:0;margin-bottom:6px}@media (min-width: 640px){.nas-input__label{letter-spacing:inherit;word-spacing:inherit}}.nas-input__label~.nas-input__icon{top:43px}.nas-input__info{display:block;right:12px;margin-bottom:24px}.nas-input__icon{position:absolute;pointer-events:none;right:12px;top:15px}.nas-input__message{margin-top:2px;display:flex;gap:8px}.nas-input__message--icon{transform:scale(.9)}.nas-input__message--text{color:#b12a0b;font-size:14px;font-weight:400;line-height:20px;margin-top:3px}.nas-input__controls{margin-bottom:0;position:relative}.nas-input__controls--label-inside{background-color:#fff;border:2px solid #6F6F6F}.nas-input__controls--label-inside .nas-input__label{font-size:14px;line-height:20px;margin-bottom:0;padding-top:12px;padding-left:16px}.nas-input__controls--label-inside .nas-input__label~.nas-input__icon{top:22px}.nas-input__controls--label-inside input{padding-top:0;border:0!important}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.IconComponent, selector: "nas-icon", inputs: ["icon", "type", "isIndicator", "lightCircularBackground", "cssClass"] }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { 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: "directive", type: i4.NasClassDirective, selector: "[nasClass]", inputs: ["nasClass", "attr.class"] }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }], encapsulation: i0.ViewEncapsulation.None }); }
153
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: InputComponent, selector: "nas-input", inputs: { id: "id", model: "model", error: "error", disabled: "disabled", spaceless: "spaceless", label: "label", labelInside: "labelInside", errorMessage: "errorMessage", placeholder: "placeholder", minLength: "minLength", maxLength: "maxLength", info: "info", icon: "icon", numeric: "numeric", type: "type", readonly: "readonly", name: "name", ariaDescribedby: ["aria-describedby", "ariaDescribedby"], required: "required", nasFormControlName: "nasFormControlName", nasFormGroup: "nasFormGroup", min: "min", max: "max", line: "line", pattern: "pattern" }, outputs: { modelChange: "modelChange", blur: "blur" }, host: { listeners: { "document:keydown": "onKeydown($event)" } }, viewQueries: [{ propertyName: "inputReactive", first: true, predicate: ["inputReactive"], descendants: true }, { propertyName: "inputNotReactive", first: true, predicate: ["inputNotReactive"], descendants: true }, { propertyName: "controls", first: true, predicate: ["controls"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"!nasFormControlName; else reactiveForm\">\n <label [nasClass]=\"mainClass()\">\n <div #controls [nasClass]=\"getClass('controls', exists(labelInside) && 'label-inside')\" (keydown)=\"onKeyDown()\"\n (focusin)=\"setActiveInput(true)\" (focusout)=\"setActiveInput(false)\">\n <p [nasClass]=\"getClass('label')\" *ngIf=\"label\">{{ label }}</p>\n <input #inputNotReactive [nasClass]=\"getClass('text')\" [attr.id]=\"inputId\" [attr.type]=\"type\" [attr.name]=\"name\"\n [attr.placeholder]=\"placeholder\" [attr.readonly]=\"readonly\" [required]=\"required\"\n [attr.aria-describedby]=\"ariaDescribedby\" [attr.aria-invalid]=\"error\" [attr.aria-required]=\"required\"\n [attr.minlength]=\"minLength\" [attr.maxlength]=\"maxLength\" [attr.min]=\"min\" [attr.max]=\"max\"\n [attr.pattern]=\"pattern\" [attr.inputmode]=\"exists(numeric) ? 'numeric' : null\" autocomplete=\"one-time-code\" (blur)=\"onBlur($event.target.value)\" [(ngModel)]=\"model\" />\n <span [nasClass]=\"getClass('icon')\" *ngIf=\"icon && !error\">\n <nas-icon [icon]=\"icon\"></nas-icon>\n </span>\n </div>\n <span *ngIf=\"exists(error)\" [nasClass]=\"getClass('message')\">\n <div [nasClass]=\"getClass('message--icon')\">\n <nas-icon type=\"negative\"></nas-icon>\n </div>\n <p [nasClass]=\"getClass('message--text')\" [id]=\"errorId\" *ngIf=\"exists(error) && errorMessage\"> {{ errorMessage }}\n </p>\n </span>\n <span [nasClass]=\"getClass('info')\" *ngIf=\"info\">{{ info }}</span>\n </label>\n</ng-container>\n<ng-template #reactiveForm>\n <label [nasClass]=\"mainClass()\" [formGroup]=\"nasFormGroup\">\n <div #controls [nasClass]=\"getClass('controls', exists(labelInside) && 'label-inside')\" \n (focusin)=\"setActiveInput(true)\" (focusout)=\"setActiveInput(false)\" (keydown)=\"onKeyDown()\">\n <p [nasClass]=\"getClass('label')\" *ngIf=\"label\">{{ label }}</p>\n <input #inputReactive [nasClass]=\"getClass('text')\" [formControlName]=\"nasFormControlName\" [attr.id]=\"inputId\"\n [attr.type]=\"type\" [attr.name]=\"name\" [attr.placeholder]=\"placeholder\" [attr.readonly]=\"readonly\"\n [required]=\"required\" [attr.aria-describedby]=\"ariaDescribedby\" [attr.aria-invalid]=\"error\"\n [attr.aria-required]=\"required\" [attr.minlength]=\"minLength\" [attr.maxlength]=\"maxLength\" [attr.min]=\"min\"\n [attr.max]=\"max\" [attr.pattern]=\"pattern\" [attr.inputmode]=\"numeric ? 'numeric' : null\" autocomplete=\"one-time-code\" (blur)=\"onBlur($event.target.value)\" />\n <span [nasClass]=\"getClass('icon')\" *ngIf=\"icon && !error\">\n <nas-icon [icon]=\"icon\"></nas-icon>\n </span>\n </div>\n <span *ngIf=\"exists(error)\" [nasClass]=\"getClass('message')\">\n <div [nasClass]=\"getClass('message--icon')\">\n <nas-icon type=\"negative\"></nas-icon>\n </div>\n <p [nasClass]=\"getClass('message--text')\" [id]=\"errorId\" *ngIf=\"exists(error) && errorMessage\">{{ errorMessage }}\n </p>\n </span>\n <span [nasClass]=\"getClass('info')\" *ngIf=\"info\">{{ info }}</span>\n </label>\n</ng-template>", styles: ["@keyframes fade-in{0%{opacity:0}}@keyframes fade-in-down{0%{opacity:0;transform:translateY(-30px)}}@keyframes fade-in-left{0%{opacity:0;transform:translate(-30px)}}@keyframes fade-in-right{0%{opacity:0;transform:translate(30px)}}@keyframes fade-out{to{opacity:0}}@keyframes flip-in{0%{opacity:0;transform:rotateX(-90deg)}40%{opacity:1;transform:rotateX(10deg)}}@keyframes flip-out{to{opacity:0;transform:rotateX(-90deg)}}@keyframes pop-in-from-top{0%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-100,1,1);opacity:0}6.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-30.227,1,1)}13.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,1.76,1,1)}20%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,7.08,1,1)}26.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,3.838,1,1)}33.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.902,1,1);opacity:1}40%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.237,1,1)}46.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.312,1,1)}53.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.141,1,1)}60%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.021,1,1)}66.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.015,1,1)}73.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.013,1,1)}80%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.005,1,1)}86.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,0,1,1)}93.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.001,1,1);-webkit-transform:translate3d(0,0,0)}to{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.001,1,1);-webkit-transform:translate3d(0,0,0)}}.nas-input{display:block;margin-bottom:16px;position:relative}.nas-input input{padding:12px 16px;border:2px solid #6F6F6F}.nas-input input:placeholder-shown{border-color:#6f6f6f}.nas-input input:not:placeholder-shown{border-color:#6f6f6f}.nas-input--error input{border:2px solid #E5212D!important;background-color:#fff5f3;color:#15273f}.nas-input--error .nas-input__controls--label-inside{background-color:#fff5f3;border:2px solid #E5212D!important}.nas-input--disabled input{background-color:#e9e7e4;border:0;color:#6f6f6f}.nas-input--disabled .nas-input__controls--label-inside{background-color:#e9e7e4}.nas-input--active input{border:2px solid #15273F!important;color:#15273f;background-color:#ebf4ff}.nas-input--active input::placeholder{color:#6f6f6f}.nas-input--active .nas-input__controls--label-inside{border:2px solid #15273F;background-color:#ebf4ff}.nas-input--valid input,.nas-input--valid .nas-input__controls--label-inside{border:2px solid #15273F}.nas-input--focus input,.nas-input--focus .nas-input__controls--label-inside{outline:2px solid #0978E8;outline-offset:2px}.nas-input--focus .nas-input__controls--label-inside input{outline:none}.nas-input--spaceless input{margin-bottom:0}.nas-input__label{font-family:NorwegianTextPro,Arial,Helvetica Neue,Helvetica,sans-serif;font-weight:700;letter-spacing:-.025em;word-spacing:-.025em;display:block;margin-top:0;margin-bottom:6px}@media (min-width: 640px){.nas-input__label{letter-spacing:inherit;word-spacing:inherit}}.nas-input__label~.nas-input__icon{top:43px}.nas-input__info{display:block;right:12px;margin-bottom:24px}.nas-input__icon{position:absolute;pointer-events:none;right:12px;top:15px}.nas-input__message{margin-top:2px;display:flex;gap:8px}.nas-input__message--icon{transform:scale(.9)}.nas-input__message--text{color:#b12a0b;font-size:14px;font-weight:400;line-height:20px;margin-top:3px}.nas-input__controls{margin-bottom:0;position:relative}.nas-input__controls--label-inside{background-color:#fff;border:2px solid #6F6F6F}.nas-input__controls--label-inside .nas-input__label{font-size:14px;line-height:20px;margin-bottom:0;padding-top:12px;padding-left:16px}.nas-input__controls--label-inside .nas-input__label~.nas-input__icon{top:22px}.nas-input__controls--label-inside input{padding-top:0;border:0!important}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.IconComponent, selector: "nas-icon", inputs: ["icon", "type", "isIndicator", "lightCircularBackground", "cssClass"] }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { 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: "directive", type: i4.NasClassDirective, selector: "[nasClass]", inputs: ["nasClass", "attr.class"] }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }], encapsulation: i0.ViewEncapsulation.None }); }
154
154
  }
155
155
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: InputComponent, decorators: [{
156
156
  type: Component,
157
- args: [{ selector: 'nas-input', encapsulation: ViewEncapsulation.None, template: "<ng-container *ngIf=\"!nasFormControlName; else reactiveForm\">\n <label [nasClass]=\"mainClass()\">\n <div #controls [nasClass]=\"getClass('controls', exists(labelInside) && 'label-inside')\" (keydown)=\"onKeyDown()\"\n (focusin)=\"setActiveInput(true)\" (focusout)=\"setActiveInput(false)\">\n <p [nasClass]=\"getClass('label')\" *ngIf=\"label\">{{ label }}</p>\n <input #inputNotReactive [nasClass]=\"getClass('text')\" [attr.id]=\"inputId\" [attr.type]=\"type\" [attr.name]=\"name\"\n [attr.placeholder]=\"placeholder\" [attr.readonly]=\"readonly\" [required]=\"required\"\n [attr.aria-describedby]=\"ariaDescribedby\" [attr.aria-invalid]=\"error\" [attr.aria-required]=\"required\"\n [attr.minlength]=\"minLength\" [attr.maxlength]=\"maxLength\" [attr.min]=\"min\" [attr.max]=\"max\"\n [attr.pattern]=\"pattern\" (blur)=\"onBlur($event.target.value)\" [(ngModel)]=\"model\" />\n <span [nasClass]=\"getClass('icon')\" *ngIf=\"icon && !error\">\n <nas-icon [icon]=\"icon\"></nas-icon>\n </span>\n </div>\n <span *ngIf=\"exists(error)\" [nasClass]=\"getClass('message')\">\n <div [nasClass]=\"getClass('message--icon')\">\n <nas-icon type=\"negative\"></nas-icon>\n </div>\n <p [nasClass]=\"getClass('message--text')\" [id]=\"errorId\" *ngIf=\"exists(error) && errorMessage\"> {{ errorMessage }}\n </p>\n </span>\n <span [nasClass]=\"getClass('info')\" *ngIf=\"info\">{{ info }}</span>\n </label>\n</ng-container>\n<ng-template #reactiveForm>\n <label [nasClass]=\"mainClass()\" [formGroup]=\"nasFormGroup\">\n <div #controls [nasClass]=\"getClass('controls', exists(labelInside) && 'label-inside')\" \n (focusin)=\"setActiveInput(true)\" (focusout)=\"setActiveInput(false)\" (keydown)=\"onKeyDown()\">\n <p [nasClass]=\"getClass('label')\" *ngIf=\"label\">{{ label }}</p>\n <input #inputReactive [nasClass]=\"getClass('text')\" [formControlName]=\"nasFormControlName\" [attr.id]=\"inputId\"\n [attr.type]=\"type\" [attr.name]=\"name\" [attr.placeholder]=\"placeholder\" [attr.readonly]=\"readonly\"\n [required]=\"required\" [attr.aria-describedby]=\"ariaDescribedby\" [attr.aria-invalid]=\"error\"\n [attr.aria-required]=\"required\" [attr.minlength]=\"minLength\" [attr.maxlength]=\"maxLength\" [attr.min]=\"min\"\n [attr.max]=\"max\" [attr.pattern]=\"pattern\" (blur)=\"onBlur($event.target.value)\" />\n <span [nasClass]=\"getClass('icon')\" *ngIf=\"icon && !error\">\n <nas-icon [icon]=\"icon\"></nas-icon>\n </span>\n </div>\n <span *ngIf=\"exists(error)\" [nasClass]=\"getClass('message')\">\n <div [nasClass]=\"getClass('message--icon')\">\n <nas-icon type=\"negative\"></nas-icon>\n </div>\n <p [nasClass]=\"getClass('message--text')\" [id]=\"errorId\" *ngIf=\"exists(error) && errorMessage\">{{ errorMessage }}\n </p>\n </span>\n <span [nasClass]=\"getClass('info')\" *ngIf=\"info\">{{ info }}</span>\n </label>\n</ng-template>", styles: ["@keyframes fade-in{0%{opacity:0}}@keyframes fade-in-down{0%{opacity:0;transform:translateY(-30px)}}@keyframes fade-in-left{0%{opacity:0;transform:translate(-30px)}}@keyframes fade-in-right{0%{opacity:0;transform:translate(30px)}}@keyframes fade-out{to{opacity:0}}@keyframes flip-in{0%{opacity:0;transform:rotateX(-90deg)}40%{opacity:1;transform:rotateX(10deg)}}@keyframes flip-out{to{opacity:0;transform:rotateX(-90deg)}}@keyframes pop-in-from-top{0%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-100,1,1);opacity:0}6.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-30.227,1,1)}13.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,1.76,1,1)}20%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,7.08,1,1)}26.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,3.838,1,1)}33.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.902,1,1);opacity:1}40%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.237,1,1)}46.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.312,1,1)}53.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.141,1,1)}60%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.021,1,1)}66.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.015,1,1)}73.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.013,1,1)}80%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.005,1,1)}86.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,0,1,1)}93.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.001,1,1);-webkit-transform:translate3d(0,0,0)}to{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.001,1,1);-webkit-transform:translate3d(0,0,0)}}.nas-input{display:block;margin-bottom:16px;position:relative}.nas-input input{padding:12px 16px;border:2px solid #6F6F6F}.nas-input input:placeholder-shown{border-color:#6f6f6f}.nas-input input:not:placeholder-shown{border-color:#6f6f6f}.nas-input--error input{border:2px solid #E5212D!important;background-color:#fff5f3;color:#15273f}.nas-input--error .nas-input__controls--label-inside{background-color:#fff5f3;border:2px solid #E5212D!important}.nas-input--disabled input{background-color:#e9e7e4;border:0;color:#6f6f6f}.nas-input--disabled .nas-input__controls--label-inside{background-color:#e9e7e4}.nas-input--active input{border:2px solid #15273F!important;color:#15273f;background-color:#ebf4ff}.nas-input--active input::placeholder{color:#6f6f6f}.nas-input--active .nas-input__controls--label-inside{border:2px solid #15273F;background-color:#ebf4ff}.nas-input--valid input,.nas-input--valid .nas-input__controls--label-inside{border:2px solid #15273F}.nas-input--focus input,.nas-input--focus .nas-input__controls--label-inside{outline:2px solid #0978E8;outline-offset:2px}.nas-input--focus .nas-input__controls--label-inside input{outline:none}.nas-input--spaceless input{margin-bottom:0}.nas-input__label{font-family:NorwegianTextPro,Arial,Helvetica Neue,Helvetica,sans-serif;font-weight:700;letter-spacing:-.025em;word-spacing:-.025em;display:block;margin-top:0;margin-bottom:6px}@media (min-width: 640px){.nas-input__label{letter-spacing:inherit;word-spacing:inherit}}.nas-input__label~.nas-input__icon{top:43px}.nas-input__info{display:block;right:12px;margin-bottom:24px}.nas-input__icon{position:absolute;pointer-events:none;right:12px;top:15px}.nas-input__message{margin-top:2px;display:flex;gap:8px}.nas-input__message--icon{transform:scale(.9)}.nas-input__message--text{color:#b12a0b;font-size:14px;font-weight:400;line-height:20px;margin-top:3px}.nas-input__controls{margin-bottom:0;position:relative}.nas-input__controls--label-inside{background-color:#fff;border:2px solid #6F6F6F}.nas-input__controls--label-inside .nas-input__label{font-size:14px;line-height:20px;margin-bottom:0;padding-top:12px;padding-left:16px}.nas-input__controls--label-inside .nas-input__label~.nas-input__icon{top:22px}.nas-input__controls--label-inside input{padding-top:0;border:0!important}\n"] }]
157
+ args: [{ selector: 'nas-input', encapsulation: ViewEncapsulation.None, template: "<ng-container *ngIf=\"!nasFormControlName; else reactiveForm\">\n <label [nasClass]=\"mainClass()\">\n <div #controls [nasClass]=\"getClass('controls', exists(labelInside) && 'label-inside')\" (keydown)=\"onKeyDown()\"\n (focusin)=\"setActiveInput(true)\" (focusout)=\"setActiveInput(false)\">\n <p [nasClass]=\"getClass('label')\" *ngIf=\"label\">{{ label }}</p>\n <input #inputNotReactive [nasClass]=\"getClass('text')\" [attr.id]=\"inputId\" [attr.type]=\"type\" [attr.name]=\"name\"\n [attr.placeholder]=\"placeholder\" [attr.readonly]=\"readonly\" [required]=\"required\"\n [attr.aria-describedby]=\"ariaDescribedby\" [attr.aria-invalid]=\"error\" [attr.aria-required]=\"required\"\n [attr.minlength]=\"minLength\" [attr.maxlength]=\"maxLength\" [attr.min]=\"min\" [attr.max]=\"max\"\n [attr.pattern]=\"pattern\" [attr.inputmode]=\"exists(numeric) ? 'numeric' : null\" autocomplete=\"one-time-code\" (blur)=\"onBlur($event.target.value)\" [(ngModel)]=\"model\" />\n <span [nasClass]=\"getClass('icon')\" *ngIf=\"icon && !error\">\n <nas-icon [icon]=\"icon\"></nas-icon>\n </span>\n </div>\n <span *ngIf=\"exists(error)\" [nasClass]=\"getClass('message')\">\n <div [nasClass]=\"getClass('message--icon')\">\n <nas-icon type=\"negative\"></nas-icon>\n </div>\n <p [nasClass]=\"getClass('message--text')\" [id]=\"errorId\" *ngIf=\"exists(error) && errorMessage\"> {{ errorMessage }}\n </p>\n </span>\n <span [nasClass]=\"getClass('info')\" *ngIf=\"info\">{{ info }}</span>\n </label>\n</ng-container>\n<ng-template #reactiveForm>\n <label [nasClass]=\"mainClass()\" [formGroup]=\"nasFormGroup\">\n <div #controls [nasClass]=\"getClass('controls', exists(labelInside) && 'label-inside')\" \n (focusin)=\"setActiveInput(true)\" (focusout)=\"setActiveInput(false)\" (keydown)=\"onKeyDown()\">\n <p [nasClass]=\"getClass('label')\" *ngIf=\"label\">{{ label }}</p>\n <input #inputReactive [nasClass]=\"getClass('text')\" [formControlName]=\"nasFormControlName\" [attr.id]=\"inputId\"\n [attr.type]=\"type\" [attr.name]=\"name\" [attr.placeholder]=\"placeholder\" [attr.readonly]=\"readonly\"\n [required]=\"required\" [attr.aria-describedby]=\"ariaDescribedby\" [attr.aria-invalid]=\"error\"\n [attr.aria-required]=\"required\" [attr.minlength]=\"minLength\" [attr.maxlength]=\"maxLength\" [attr.min]=\"min\"\n [attr.max]=\"max\" [attr.pattern]=\"pattern\" [attr.inputmode]=\"numeric ? 'numeric' : null\" autocomplete=\"one-time-code\" (blur)=\"onBlur($event.target.value)\" />\n <span [nasClass]=\"getClass('icon')\" *ngIf=\"icon && !error\">\n <nas-icon [icon]=\"icon\"></nas-icon>\n </span>\n </div>\n <span *ngIf=\"exists(error)\" [nasClass]=\"getClass('message')\">\n <div [nasClass]=\"getClass('message--icon')\">\n <nas-icon type=\"negative\"></nas-icon>\n </div>\n <p [nasClass]=\"getClass('message--text')\" [id]=\"errorId\" *ngIf=\"exists(error) && errorMessage\">{{ errorMessage }}\n </p>\n </span>\n <span [nasClass]=\"getClass('info')\" *ngIf=\"info\">{{ info }}</span>\n </label>\n</ng-template>", styles: ["@keyframes fade-in{0%{opacity:0}}@keyframes fade-in-down{0%{opacity:0;transform:translateY(-30px)}}@keyframes fade-in-left{0%{opacity:0;transform:translate(-30px)}}@keyframes fade-in-right{0%{opacity:0;transform:translate(30px)}}@keyframes fade-out{to{opacity:0}}@keyframes flip-in{0%{opacity:0;transform:rotateX(-90deg)}40%{opacity:1;transform:rotateX(10deg)}}@keyframes flip-out{to{opacity:0;transform:rotateX(-90deg)}}@keyframes pop-in-from-top{0%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-100,1,1);opacity:0}6.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-30.227,1,1)}13.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,1.76,1,1)}20%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,7.08,1,1)}26.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,3.838,1,1)}33.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.902,1,1);opacity:1}40%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.237,1,1)}46.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.312,1,1)}53.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.141,1,1)}60%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.021,1,1)}66.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.015,1,1)}73.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.013,1,1)}80%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.005,1,1)}86.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,0,1,1)}93.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.001,1,1);-webkit-transform:translate3d(0,0,0)}to{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.001,1,1);-webkit-transform:translate3d(0,0,0)}}.nas-input{display:block;margin-bottom:16px;position:relative}.nas-input input{padding:12px 16px;border:2px solid #6F6F6F}.nas-input input:placeholder-shown{border-color:#6f6f6f}.nas-input input:not:placeholder-shown{border-color:#6f6f6f}.nas-input--error input{border:2px solid #E5212D!important;background-color:#fff5f3;color:#15273f}.nas-input--error .nas-input__controls--label-inside{background-color:#fff5f3;border:2px solid #E5212D!important}.nas-input--disabled input{background-color:#e9e7e4;border:0;color:#6f6f6f}.nas-input--disabled .nas-input__controls--label-inside{background-color:#e9e7e4}.nas-input--active input{border:2px solid #15273F!important;color:#15273f;background-color:#ebf4ff}.nas-input--active input::placeholder{color:#6f6f6f}.nas-input--active .nas-input__controls--label-inside{border:2px solid #15273F;background-color:#ebf4ff}.nas-input--valid input,.nas-input--valid .nas-input__controls--label-inside{border:2px solid #15273F}.nas-input--focus input,.nas-input--focus .nas-input__controls--label-inside{outline:2px solid #0978E8;outline-offset:2px}.nas-input--focus .nas-input__controls--label-inside input{outline:none}.nas-input--spaceless input{margin-bottom:0}.nas-input__label{font-family:NorwegianTextPro,Arial,Helvetica Neue,Helvetica,sans-serif;font-weight:700;letter-spacing:-.025em;word-spacing:-.025em;display:block;margin-top:0;margin-bottom:6px}@media (min-width: 640px){.nas-input__label{letter-spacing:inherit;word-spacing:inherit}}.nas-input__label~.nas-input__icon{top:43px}.nas-input__info{display:block;right:12px;margin-bottom:24px}.nas-input__icon{position:absolute;pointer-events:none;right:12px;top:15px}.nas-input__message{margin-top:2px;display:flex;gap:8px}.nas-input__message--icon{transform:scale(.9)}.nas-input__message--text{color:#b12a0b;font-size:14px;font-weight:400;line-height:20px;margin-top:3px}.nas-input__controls{margin-bottom:0;position:relative}.nas-input__controls--label-inside{background-color:#fff;border:2px solid #6F6F6F}.nas-input__controls--label-inside .nas-input__label{font-size:14px;line-height:20px;margin-bottom:0;padding-top:12px;padding-left:16px}.nas-input__controls--label-inside .nas-input__label~.nas-input__icon{top:22px}.nas-input__controls--label-inside input{padding-top:0;border:0!important}\n"] }]
158
158
  }], ctorParameters: function () { return []; }, propDecorators: { inputReactive: [{
159
159
  type: ViewChild,
160
160
  args: ['inputReactive']
@@ -194,6 +194,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
194
194
  type: Input
195
195
  }], icon: [{
196
196
  type: Input
197
+ }], numeric: [{
198
+ type: Input
197
199
  }], type: [{
198
200
  type: Input
199
201
  }], readonly: [{
@@ -221,4 +223,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
221
223
  type: HostListener,
222
224
  args: ['document:keydown', ['$event']]
223
225
  }] } });
224
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9pbnB1dC9pbnB1dC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2lucHV0L2lucHV0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7R0FHRztBQUNILE9BQU8sRUFDTCxTQUFTLEVBRVQsWUFBWSxFQUNaLFlBQVksRUFDWixLQUFLLEVBRUwsTUFBTSxFQUNOLFNBQVMsRUFDVCxpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFHdkIsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7Ozs7OztBQUV0RSxJQUFJLE1BQU0sR0FBRyxDQUFDLENBQUM7QUFFZjs7O0dBR0c7QUFPSCxNQUFNLE9BQU8sY0FBZSxTQUFRLGdCQUFnQjtJQVlsRDs7OztPQUlHO0lBQ0gsSUFBYSxLQUFLO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQztJQUN6QixDQUFDO0lBQ0QsSUFBSSxLQUFLLENBQUMsS0FBYTtRQUNyQixJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQztRQUN4QixJQUFJLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQyxLQUFLLENBQUM7UUFDckIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3pDLENBQUM7SUFZRDs7OztPQUlHO0lBQ0gsSUFDSSxRQUFRO1FBQ1YsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDO0lBQzVCLENBQUM7SUFDRCxJQUFJLFFBQVEsQ0FBQyxLQUFjO1FBQ3pCLElBQUksQ0FBQyxhQUFhLEdBQUcsS0FBSyxDQUFDO1FBRTNCLE1B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QUFLO2dCQVdHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBU0csR0FBRztzQkFBWCxLQUFLO2dCQVNHLEdBQUc7c0JBQVgsS0FBSztnQkFTRyxJQUFJO3NCQUFaLEtBQUs7Z0JBT0csT0FBTztzQkFBZixLQUFLO2dCQTJCTixTQUFTO3NCQURSLFlBQVk7dUJBQUMsa0JBQWtCLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgTm9yd2VnaWFuIEFpciBTaHV0dGxlLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICovXG5pbXBvcnQge1xuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSG9zdExpc3RlbmVyLFxuICBJbnB1dCxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIFZpZXdDaGlsZCxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQ2xhc3NNb2RlbCB9IGZyb20gJy4uLy4uL2NvcmUnO1xuaW1wb3J0IHsgTmFzQ29tcG9uZW50QmFzZSB9IGZyb20gJy4uLy4uL2NvcmUvYmFzZS9uYXMtY29tcG9uZW50LmJhc2UnO1xuXG5sZXQgbmV4dElkID0gMDtcblxuLyoqXG4gKiBAZGVzY3JpcHRpb25cbiAqIE5vcndlZ2lhbiBJbnB1dCBDb21wb25lbnQgfCBGb3JtIENvbnRyb2xzIHwgTmV3IGRlc2lnblxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICduYXMtaW5wdXQnLFxuICB0ZW1wbGF0ZVVybDogJy4vaW5wdXQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9pbnB1dC5jb21wb25lbnQuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxufSlcbmV4cG9ydCBjbGFzcyBJbnB1dENvbXBvbmVudCBleHRlbmRzIE5hc0NvbXBvbmVudEJhc2UgaW1wbGVtZW50cyBPbkluaXQge1xuICBAVmlld0NoaWxkKCdpbnB1dFJlYWN0aXZlJykgaW5wdXRSZWFjdGl2ZTogRWxlbWVudFJlZjxIVE1MRWxlbWVudD47XG4gIEBWaWV3Q2hpbGQoJ2lucHV0Tm90UmVhY3RpdmUnKSBpbnB1dE5vdFJlYWN0aXZlOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PjtcbiAgQFZpZXdDaGlsZCgnY29udHJvbHMnKSBjb250cm9sczogRWxlbWVudFJlZjxIVE1MRWxlbWVudD47XG5cbiAgLyoqXG4gICAqIEBwcm9wZXJ0eSBJbnB1dFxuICAgKiBAZGVzY3JpcHRpb25cbiAgICogVGhlIElEIG9mIHRoZSBuYXRpdmUgaW5wdXQgZWxlbWVudFxuICAgKi9cbiAgQElucHV0KCkgaWQ6IHN0cmluZztcblxuICAvKipcbiAgICogQHByb3BlcnR5IElucHV0XG4gICAqIEBkZXNjcmlwdGlvblxuICAgKiBUaGUgdmFsdWUgb2YgdGhlIG5hdGl2ZSBpbnB1dCBlbGVtZW50XG4gICAqL1xuICBASW5wdXQoKSBnZXQgbW9kZWwoKSB7XG4gICAgcmV0dXJuIHRoaXMubW9kZWxWYWx1ZTtcbiAgfVxuICBzZXQgbW9kZWwodmFsdWU6IHN0cmluZykge1xuICAgIHRoaXMubW9kZWxWYWx1ZSA9IHZhbHVlO1xuICAgIHRoaXMudmFsaWQgPSAhIXZhbHVlO1xuICAgIHRoaXMubW9kZWxDaGFuZ2UuZW1pdCh0aGlzLm1vZGVsVmFsdWUpO1xuICB9XG5cbiAgQE91dHB1dCgpIG1vZGVsQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KGZhbHNlKTtcbiAgQE91dHB1dCgpIGJsdXIgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oZmFsc2UpO1xuXG4gIC8qKlxuICAgKiBAcHJvcGVydHkgSW5wdXRcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqIFdoZXRoZXIgdGhlIGNvbnRyb2wgaXMgaW4gYW4gZXJyb3Igc3RhdGUuXG4gICAqL1xuICBASW5wdXQoKSBlcnJvcjogYm9vbGVhbjtcblxuICAvKipcbiAgICogQHByb3BlcnR5IElucHV0XG4gICAqIEBkZXNjcmlwdGlvblxuICAgKiBXaGV0aGVyIHRoZSBuYXRpdmUgaW5wdXQgZWxlbWVudCBpcyBkaXNhYmxlZCBvciBubywgd2l0aCBkaXNhYmxlZCBzdHlsaW5nLlxuICAgKi9cbiAgQElucHV0KClcbiAgZ2V0IGRpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmRpc2FibGVkVmFsdWU7XG4gIH1cbiAgc2V0IGRpc2FibGVkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5kaXNhYmxlZFZhbHVlID0gdmFsdWU7XG5cbiAgICBjb25zdCBpbnB1dEVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCh0aGlzLmlucHV0SWQpO1xuXG4gICAgaWYgKCFpbnB1dEVsZW1lbnQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5leGlzdHModmFsdWUpKSB7XG4gICAgICBpbnB1dEVsZW1lbnQuc2V0QXR0cmlidXRlKCdkaXNhYmxlZCcsICdkaXNhYmxlZCcpO1xuICAgIH0gZWxzZSB7XG4gICAgICBpbnB1dEVsZW1lbnQucmVtb3ZlQXR0cmlidXRlKCdkaXNhYmxlZCcpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBAcHJvcGVydHkgSW5wdXRcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqIFNldCBzcGFjZWxlc3Mgc3R5bGluZyAocmVtb3Zpbmcgc3BhY2luZylcbiAgICovXG4gIEBJbnB1dCgpIHNwYWNlbGVzczogYm9vbGVhbjtcblxuICAvKipcbiAgICogQHByb3BlcnR5IElucHV0XG4gICAqIEBkZXNjcmlwdGlvblxuICAgKiBTZXRzIHRoZSBsYWJlbCBvZiB0aGUgaW5wdXRcbiAgICovXG4gIEBJbnB1dCgpIGxhYmVsOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEBwcm9wZXJ0eSBJbnB1dFxuICAgKiBAZGVzY3JpcHRpb25cbiAgICogU2V0cyB0aGUgbGFiZWwgb2YgdGhlIGlucHV0IGluc2lkZSB0aGUgd2hpdGUgYXJlYVxuICAgKi9cbiAgQElucHV0KCkgbGFiZWxJbnNpZGU6IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEBwcm9wZXJ0eSBJbnB1dFxuICAgKiBAZGVzY3JpcHRpb25cbiAgICogVGhlIGVycm9yIG1lc3NhZ2UgdG8gZGlzcGxheSB3aGVuIGVycm9yIG9jY3VyLiBFcnJvciBhdHRyaWJ1dGUgbmVlZCB0byBiZSB0cnVlLlxuICAgKi9cbiAgQElucHV0KCkgZXJyb3JNZXNzYWdlOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEBwcm9wZXJ0eSBJbnB1dFxuICAgKiBAZGVzY3JpcHRpb25cbiAgICogU2V0cyBwbGFjZWhvbGRlciB0ZXh0IGluIHRoZSBuYXRpdmUgaW5wdXQgZWxlbWVudFxuICAgKi9cbiAgQElucHV0KCkgcGxhY2Vob2xkZXI6IHN0cmluZztcblxuICAvKipcbiAgICogQHByb3BlcnR5IElucHV0XG4gICAqIEBkZXNjcmlwdGlvblxuICAgKiBTZXRzIG1pbiBsZW5ndGggb24gdGhlIG5hdGl2ZSBpbnB1dCBlbGVtZW50LlxuICAgKi9cbiAgQElucHV0KCkgbWluTGVuZ3RoOiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIEBwcm9wZXJ0eSBJbnB1dFxuICAgKiBAZGVzY3JpcHRpb25cbiAgICogU2V0cyBtYXggbGVuZ3RoIG9uIHRoZSBuYXRpdmUgaW5wdXQgZWxlbWVudC5cbiAgICovXG4gIEBJbnB1dCgpIG1heExlbmd0aDogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBAcHJvcGVydHkgSW5wdXRcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqIFNldHMgdGhlIGluZm8gdGV4dCByZWxhdGVkIHRvIHRoZSBpbnB1dFxuICAgKi9cbiAgQElucHV0KCkgaW5mbzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBAcHJvcGVydHkgSW5wdXRcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqIFNldHMgdGhlIGljb24gb24gdGhlIGlucHV0XG4gICAqL1xuICBASW5wdXQoKSBpY29uOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEBwcm9wZXJ0eSBJbnB1dFxuICAgKiBAZGVzY3JpcHRpb25cbiAgICogSW5wdXQgdHlwZSBvZiB0aGUgZWxlbWVudC5cbiAgICovXG4gIEBJbnB1dCgpIHR5cGUgPSAndGV4dCc7XG5cbiAgLyoqXG4gICAqIEBwcm9wZXJ0eSBJbnB1dFxuICAgKiBAZGVzY3JpcHRpb25cbiAgICogV2hldGhlciB0aGUgZWxlbWVudCBpcyByZWFkb25seS5cbiAgICovXG4gIEBJbnB1dCgpIHJlYWRvbmx5OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBAcHJvcGVydHkgSW5wdXRcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqIFN0cmluZyB0byBzZXQgbmFtZSBvbiBuYXRpdmUgaW5wdXQgZWxlbWVudC5cbiAgICovXG4gIEBJbnB1dCgpXG4gIGdldCBuYW1lKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMubmFtZVZhbHVlO1xuICB9XG4gIHNldCBuYW1lKHZhbHVlOiBzdHJpbmcpIHtcbiAgICBpZiAoIXZhbHVlKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMubmFtZVZhbHVlID0gdmFsdWU7XG4gICAgdGhpcy5zZXROYW1lQXR0cmlidXRlKCk7XG4gIH1cblxuICAvKipcbiAgICogQHByb3BlcnR5IElucHV0XG4gICAqIEBkZXNjcmlwdGlvblxuICAgKiBTZXRzIGFyaWEgZGVzY3JpYmVkYnkgZm9yIGFjY2Vzc2liaWxpdHlcbiAgICovXG4gIEBJbnB1dCgnYXJpYS1kZXNjcmliZWRieScpIGFyaWFEZXNjcmliZWRieTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBAcHJvcGVydHkgSW5wdXRcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqIFNldHMgdGhlIHJlcXVpcmVkIGF0dHJpYnV0ZSBvbiB0aGUgbmF0aXZlIGlucHV0IGVsZW1lbnQuXG4gICAqL1xuICBASW5wdXQoKSByZXF1aXJlZDogYm9vbGVhbjtcblxuICAvKipcbiAgICogQHByb3BlcnR5IElucHV0XG4gICAqIEBkZXNjcmlwdGlvblxuICAgKiBTZXRzIGEgZm9ybUNvbnRyb2xOYW1lIGRpcmVjdGl2ZSB0byB0aGUgaW5wdXQuXG4gICAqIEl0IHJlcXVpcmVzIHRoYXQgdGhlIGNvbnN1bWVyIGluY2x1ZGVkIFJlYWN0aXZlRm9ybXNNb2R1bGUgaW4gaXQncyBtb2R1bGUuXG4gICAqIEl0IHJlcXVpZXJzIHRoYXQgdGhlIG5hc0Zvcm1Hcm91cCBpbnB1dCBpcyBmaWxsZWQuXG4gICAqIEBleGFtcGxlXG4gICAqIDxuYXMtaW5wdXQgW25hc0Zvcm1Db250cm9sTmFtZV09XCIndXNlcm5hbWUnXCI+PC9uYXMtaW5wdXQ+XG4gICAqL1xuICBASW5wdXQoKSBuYXNGb3JtQ29udHJvbE5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogQHByb3BlcnR5IElucHV0XG4gICAqIEBkZXNjcmlwdGlvblxuICAgKiBBZGRzIHRoZSBwYXJlbnQncyBmb3JtIGdyb3VwLlxuICAgKiBJdCByZXF1aXJlcyB0aGF0IHRoZSBjb25zdW1lciBpbmNsdWRlZCBSZWFjdGl2ZUZvcm1zTW9kdWxlIGluIGl0J3MgbW9kdWxlLlxuICAgKiBJdCBpcyByZXF1aWVyZWQgdG8gYmUgZmlsbGVkIGlmIG5hc0Zvcm1Db250cm9sTmFtZSBhZGRlZC5cbiAgICogQGV4YW1wbGVcbiAgICogPG5hcy1pbnB1dCBbbmFzRm9ybUdyb3VwXT1cImxvZ2luR3JvdXBcIj48L25hcy1pbnB1dD5cbiAgICovXG4gIEBJbnB1dCgpIG5hc0Zvcm1Hcm91cDogRm9ybUdyb3VwO1xuXG4gIC8qKlxuICAgKiBAcHJvcGVydHkgSW5wdXRcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqIFRoZSBtaW5pbXVtIHZhbHVlIHRvIGFjY2VwdCBmb3IgdGhpcyBpbnB1dC5cbiAgICogQGV4YW1wbGVcbiAgICogPG5hcy1pbnB1dCBbdHlwZV09XCInbnVtYmVyJ1wiIFttaW5dPVwiMFwiPjwvbmFzLWlucHV0PlxuICAgKi9cbiAgQElucHV0KCkgbWluOiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIEBwcm9wZXJ0eSBJbnB1dFxuICAgKiBAZGVzY3JpcHRpb25cbiAgICogVGhlIG1heGltdW0gdmFsdWUgdG8gYWNjZXB0IGZvciB0aGlzIGlucHV0LlxuICAgKiBAZXhhbXBsZVxuICAgKiA8bmFzLWlucHV0IFt0eXBlXT1cIidudW1iZXInXCIgW21heF09XCIxMFwiPjwvbmFzLWlucHV0PlxuICAgKi9cbiAgQElucHV0KCkgbWF4OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIEBwcm9wZXJ0eSBJbnB1dFxuICAgKiBAZGVzY3JpcHRpb25cbiAgICogQWRkcyBhIGxpbmUgYmVsb3cgdGhlIGlucHV0IGVsZW1lbnQuIERlZmF1bHQgdmFsdWUgaXMgdHJ1ZS5cbiAgICogQGV4YW1wbGVcbiAgICogPG5hcy1pbnB1dCBbbGluZV09XCJmYWxzZVwiPjwvbmFzLWlucHV0PlxuICAgKi9cbiAgQElucHV0KCkgbGluZSA9IHRydWU7XG5cbiAgLyoqXG4gICAqIEBwcm9wZXJ0eSBJbnB1dFxuICAgKiBAZGVzY3JpcHRpb25cbiAgICogU3BlY2lmaWVzIGEgcmVndWxhciBleHByZXNzaW9uIHRoYXQgdGhlIGlucHV0IHZhbHVlIGlzIGNoZWNrZWQgYWdhaW5zdCBvbiBmb3JtIHN1Ym1pc3Npb25cbiAgICovXG4gIEBJbnB1dCgpIHBhdHRlcm46IHN0cmluZztcblxuICBnZXQgaW5wdXRJZCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmlkID8gdGhpcy5pZCA6IGBuYXMtaW5wdXQtJHt0aGlzLmNvbXBvbmVudElkfWA7XG4gIH1cblxuICBnZXQgZXJyb3JJZCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmlkXG4gICAgICA/IHRoaXMuaWQgKyAnX19lcnJvcidcbiAgICAgIDogYG5hcy1pbnB1dC0ke3RoaXMuY29tcG9uZW50SWR9X19lcnJvcmA7XG4gIH1cblxuICBwcml2YXRlIGNvbXBvbmVudElkOiBudW1iZXI7XG4gIHByaXZhdGUgbW9kZWxWYWx1ZTogc3RyaW5nO1xuICBwcml2YXRlIGRpc2FibGVkVmFsdWU6IGJvb2xlYW47XG4gIHByaXZhdGUgbmFtZVZhbHVlOiBzdHJpbmc7XG4gIHB1YmxpYyBhY3RpdmU6IGJvb2xlYW47XG4gIHB1YmxpYyBmb2N1czogYm9vbGVhbjtcbiAgcHVibGljIHZhbGlkOiBib29sZWFuO1xuICBwdWJsaWMgbGFzdFdhc1RhYiA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCduYXMtaW5wdXQnKTtcbiAgICB0aGlzLmNvbXBvbmVudElkID0gbmV4dElkKys7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDprZXlkb3duJywgWyckZXZlbnQnXSlcbiAgb25LZXlkb3duKGU6IEtleWJvYXJkRXZlbnQpIHtcbiAgICB0aGlzLmxhc3RXYXNUYWIgPSBlLmtleSA9PT0gJ1RhYic7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5uYXNGb3JtR3JvdXAgJiYgdGhpcy5uYXNGb3JtQ29udHJvbE5hbWUpIHtcbiAgICAgIGNvbnN0IGZvcm1Db250cm9sID0gdGhpcy5uYXNGb3JtR3JvdXAuZ2V0KHRoaXMubmFzRm9ybUNvbnRyb2xOYW1lKTtcbiAgICAgIGZvcm1Db250cm9sLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUodmFsdWUgPT4ge1xuICAgICAgICB0aGlzLnZhbGlkID0gISF2YWx1ZVxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmV4aXN0cyh0aGlzLmRpc2FibGVkKSkge1xuICAgICAgY29uc3QgaW5wdXRFbGVtZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQodGhpcy5pbnB1dElkKTtcbiAgICAgIGlucHV0RWxlbWVudC5zZXRBdHRyaWJ1dGUoJ2Rpc2FibGVkJywgJ2Rpc2FibGVkJyk7XG4gICAgfVxuICAgIHRoaXMuc2V0TmFtZUF0dHJpYnV0ZSgpO1xuICB9XG5cbiAgbWFpbkNsYXNzKCk6IENsYXNzTW9kZWwge1xuICAgIHJldHVybiB0aGlzLmdldENsYXNzKCcnLCBbXG4gICAgICB0aGlzLmV4aXN0cyh0aGlzLmVycm9yKSAmJiAnZXJyb3InLFxuICAgICAgdGhpcy5leGlzdHModGhpcy5kaXNhYmxlZCkgJiYgJ2Rpc2FibGVkJyxcbiAgICAgIHRoaXMuZXhpc3RzKHRoaXMuYWN0aXZlKSAmJiAnYWN0aXZlJyxcbiAgICAgIHRoaXMuZXhpc3RzKHRoaXMuZm9jdXMpICYmICdmb2N1cycsXG4gICAgICB0aGlzLmV4aXN0cyh0aGlzLnZhbGlkKSAmJiAndmFsaWQnLFxuICAgICAgdGhpcy5leGlzdHModGhpcy5zcGFjZWxlc3MpICYmICdzcGFjZWxlc3MnLFxuICAgIF0pO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXROYW1lQXR0cmlidXRlKCkge1xuICAgIGlmICh0aGlzLm5hbWVWYWx1ZSkge1xuICAgICAgaWYgKCF0aGlzLm5hc0Zvcm1Db250cm9sTmFtZSB8fCAhdGhpcy5uYXNGb3JtR3JvdXApIHtcbiAgICAgICAgdGhpcy5pbnB1dE5vdFJlYWN0aXZlPy5uYXRpdmVFbGVtZW50Py5zZXRBdHRyaWJ1dGUoXG4gICAgICAgICAgJ25hbWUnLFxuICAgICAgICAgIHRoaXMubmFtZVZhbHVlXG4gICAgICAgICk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmlucHV0UmVhY3RpdmU/Lm5hdGl2ZUVsZW1lbnQ/LnNldEF0dHJpYnV0ZSgnbmFtZScsIHRoaXMubmFtZVZhbHVlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwdWJsaWMgb25CbHVyKHZhbHVlOiBzdHJpbmcpIHtcbiAgICB0aGlzLmFjdGl2ZSA9IGZhbHNlO1xuICAgIHRoaXMuZm9jdXMgPSBmYWxzZTtcbiAgICB0aGlzLmJsdXIuZW1pdCh2YWx1ZSk7XG4gIH1cblxuICBvbktleURvd24oKTogdm9pZCB7XG4gICAgdGhpcy5sYXN0V2FzVGFiID0gZmFsc2U7XG4gIH1cblxuICBzZXRBY3RpdmVJbnB1dChhY3RpdmU6IGJvb2xlYW4pOiB2b2lkIHsgICAgXG4gICAgaWYodGhpcy5leGlzdHModGhpcy5lcnJvcikgfHwgIHRoaXMuZXhpc3RzKHRoaXMuZGlzYWJsZWQpKSB7XG4gICAgICB0aGlzLmFjdGl2ZSA9IGZhbHNlO1xuICAgICAgdGhpcy5mb2N1cyA9IHRoaXMubGFzdFdhc1RhYjtcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIHRoaXMuYWN0aXZlID0gYWN0aXZlO1xuICAgIHRoaXMuZm9jdXMgPSBhY3RpdmUgJiYgdGhpcy5sYXN0V2FzVGFiO1xuXG4gICAgdGhpcy5sYXN0V2FzVGFiID0gZmFsc2U7XG4gIH1cblxufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFuYXNGb3JtQ29udHJvbE5hbWU7IGVsc2UgcmVhY3RpdmVGb3JtXCI+XG4gIDxsYWJlbCBbbmFzQ2xhc3NdPVwibWFpbkNsYXNzKClcIj5cbiAgICA8ZGl2ICNjb250cm9scyBbbmFzQ2xhc3NdPVwiZ2V0Q2xhc3MoJ2NvbnRyb2xzJywgZXhpc3RzKGxhYmVsSW5zaWRlKSAmJiAnbGFiZWwtaW5zaWRlJylcIiAoa2V5ZG93bik9XCJvbktleURvd24oKVwiXG4gICAgICAoZm9jdXNpbik9XCJzZXRBY3RpdmVJbnB1dCh0cnVlKVwiIChmb2N1c291dCk9XCJzZXRBY3RpdmVJbnB1dChmYWxzZSlcIj5cbiAgICAgIDxwIFtuYXNDbGFzc109XCJnZXRDbGFzcygnbGFiZWwnKVwiICpuZ0lmPVwibGFiZWxcIj57eyBsYWJlbCB9fTwvcD5cbiAgICAgIDxpbnB1dCAjaW5wdXROb3RSZWFjdGl2ZSBbbmFzQ2xhc3NdPVwiZ2V0Q2xhc3MoJ3RleHQnKVwiIFthdHRyLmlkXT1cImlucHV0SWRcIiBbYXR0ci50eXBlXT1cInR5cGVcIiBbYXR0ci5uYW1lXT1cIm5hbWVcIlxuICAgICAgICBbYXR0ci5wbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiIFthdHRyLnJlYWRvbmx5XT1cInJlYWRvbmx5XCIgW3JlcXVpcmVkXT1cInJlcXVpcmVkXCJcbiAgICAgICAgW2F0dHIuYXJpYS1kZXNjcmliZWRieV09XCJhcmlhRGVzY3JpYmVkYnlcIiBbYXR0ci5hcmlhLWludmFsaWRdPVwiZXJyb3JcIiBbYXR0ci5hcmlhLXJlcXVpcmVkXT1cInJlcXVpcmVkXCJcbiAgICAgICAgW2F0dHIubWlubGVuZ3RoXT1cIm1pbkxlbmd0aFwiIFthdHRyLm1heGxlbmd0aF09XCJtYXhMZW5ndGhcIiBbYXR0ci5taW5dPVwibWluXCIgW2F0dHIubWF4XT1cIm1heFwiXG4gICAgICAgIFthdHRyLnBhdHRlcm5dPVwicGF0dGVyblwiIChibHVyKT1cIm9uQmx1cigkZXZlbnQudGFyZ2V0LnZhbHVlKVwiIFsobmdNb2RlbCldPVwibW9kZWxcIiAvPlxuICAgICAgPHNwYW4gW25hc0NsYXNzXT1cImdldENsYXNzKCdpY29uJylcIiAqbmdJZj1cImljb24gJiYgIWVycm9yXCI+XG4gICAgICAgIDxuYXMtaWNvbiBbaWNvbl09XCJpY29uXCI+PC9uYXMtaWNvbj5cbiAgICAgIDwvc3Bhbj5cbiAgICA8L2Rpdj5cbiAgICA8c3BhbiAqbmdJZj1cImV4aXN0cyhlcnJvcilcIiBbbmFzQ2xhc3NdPVwiZ2V0Q2xhc3MoJ21lc3NhZ2UnKVwiPlxuICAgICAgPGRpdiBbbmFzQ2xhc3NdPVwiZ2V0Q2xhc3MoJ21lc3NhZ2UtLWljb24nKVwiPlxuICAgICAgICA8bmFzLWljb24gdHlwZT1cIm5lZ2F0aXZlXCI+PC9uYXMtaWNvbj5cbiAgICAgIDwvZGl2PlxuICAgICAgPHAgW25hc0NsYXNzXT1cImdldENsYXNzKCdtZXNzYWdlLS10ZXh0JylcIiBbaWRdPVwiZXJyb3JJZFwiICpuZ0lmPVwiZXhpc3RzKGVycm9yKSAmJiBlcnJvck1lc3NhZ2VcIj4ge3sgZXJyb3JNZXNzYWdlIH19XG4gICAgICA8L3A+XG4gICAgPC9zcGFuPlxuICAgIDxzcGFuIFtuYXNDbGFzc109XCJnZXRDbGFzcygnaW5mbycpXCIgKm5nSWY9XCJpbmZvXCI+e3sgaW5mbyB9fTwvc3Bhbj5cbiAgPC9sYWJlbD5cbjwvbmctY29udGFpbmVyPlxuPG5nLXRlbXBsYXRlICNyZWFjdGl2ZUZvcm0+XG4gIDxsYWJlbCBbbmFzQ2xhc3NdPVwibWFpbkNsYXNzKClcIiBbZm9ybUdyb3VwXT1cIm5hc0Zvcm1Hcm91cFwiPlxuICAgIDxkaXYgI2NvbnRyb2xzIFtuYXNDbGFzc109XCJnZXRDbGFzcygnY29udHJvbHMnLCBleGlzdHMobGFiZWxJbnNpZGUpICYmICdsYWJlbC1pbnNpZGUnKVwiIFxuICAgICAgKGZvY3VzaW4pPVwic2V0QWN0aXZlSW5wdXQodHJ1ZSlcIiAoZm9jdXNvdXQpPVwic2V0QWN0aXZlSW5wdXQoZmFsc2UpXCIgKGtleWRvd24pPVwib25LZXlEb3duKClcIj5cbiAgICAgIDxwIFtuYXNDbGFzc109XCJnZXRDbGFzcygnbGFiZWwnKVwiICpuZ0lmPVwibGFiZWxcIj57eyBsYWJlbCB9fTwvcD5cbiAgICAgIDxpbnB1dCAjaW5wdXRSZWFjdGl2ZSBbbmFzQ2xhc3NdPVwiZ2V0Q2xhc3MoJ3RleHQnKVwiIFtmb3JtQ29udHJvbE5hbWVdPVwibmFzRm9ybUNvbnRyb2xOYW1lXCIgW2F0dHIuaWRdPVwiaW5wdXRJZFwiXG4gICAgICAgIFthdHRyLnR5cGVdPVwidHlwZVwiIFthdHRyLm5hbWVdPVwibmFtZVwiIFthdHRyLnBsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCIgW2F0dHIucmVhZG9ubHldPVwicmVhZG9ubHlcIlxuICAgICAgICBbcmVxdWlyZWRdPVwicmVxdWlyZWRcIiBbYXR0ci5hcmlhLWRlc2NyaWJlZGJ5XT1cImFyaWFEZXNjcmliZWRieVwiIFthdHRyLmFyaWEtaW52YWxpZF09XCJlcnJvclwiXG4gICAgICAgIFthdHRyLmFyaWEtcmVxdWlyZWRdPVwicmVxdWlyZWRcIiBbYXR0ci5taW5sZW5ndGhdPVwibWluTGVuZ3RoXCIgW2F0dHIubWF4bGVuZ3RoXT1cIm1heExlbmd0aFwiIFthdHRyLm1pbl09XCJtaW5cIlxuICAgICAgICBbYXR0ci5tYXhdPVwibWF4XCIgW2F0dHIucGF0dGVybl09XCJwYXR0ZXJuXCIgKGJsdXIpPVwib25CbHVyKCRldmVudC50YXJnZXQudmFsdWUpXCIgLz5cbiAgICAgIDxzcGFuIFtuYXNDbGFzc109XCJnZXRDbGFzcygnaWNvbicpXCIgKm5nSWY9XCJpY29uICYmICFlcnJvclwiPlxuICAgICAgICA8bmFzLWljb24gW2ljb25dPVwiaWNvblwiPjwvbmFzLWljb24+XG4gICAgICA8L3NwYW4+XG4gICAgPC9kaXY+XG4gICAgPHNwYW4gKm5nSWY9XCJleGlzdHMoZXJyb3IpXCIgW25hc0NsYXNzXT1cImdldENsYXNzKCdtZXNzYWdlJylcIj5cbiAgICAgIDxkaXYgW25hc0NsYXNzXT1cImdldENsYXNzKCdtZXNzYWdlLS1pY29uJylcIj5cbiAgICAgICAgPG5hcy1pY29uIHR5cGU9XCJuZWdhdGl2ZVwiPjwvbmFzLWljb24+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxwIFtuYXNDbGFzc109XCJnZXRDbGFzcygnbWVzc2FnZS0tdGV4dCcpXCIgW2lkXT1cImVycm9ySWRcIiAqbmdJZj1cImV4aXN0cyhlcnJvcikgJiYgZXJyb3JNZXNzYWdlXCI+e3sgZXJyb3JNZXNzYWdlIH19XG4gICAgICA8L3A+XG4gICAgPC9zcGFuPlxuICAgIDxzcGFuIFtuYXNDbGFzc109XCJnZXRDbGFzcygnaW5mbycpXCIgKm5nSWY9XCJpbmZvXCI+e3sgaW5mbyB9fTwvc3Bhbj5cbiAgPC9sYWJlbD5cbjwvbmctdGVtcGxhdGU+Il19
226
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9pbnB1dC9pbnB1dC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2lucHV0L2lucHV0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7R0FHRztBQUNILE9BQU8sRUFDTCxTQUFTLEVBRVQsWUFBWSxFQUNaLFlBQVksRUFDWixLQUFLLEVBRUwsTUFBTSxFQUNOLFNBQVMsRUFDVCxpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFHdkIsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7Ozs7OztBQUV0RSxJQUFJLE1BQU0sR0FBRyxDQUFDLENBQUM7QUFFZjs7O0dBR0c7QUFPSCxNQUFNLE9BQU8sY0FBZSxTQUFRLGdCQUFnQjtJQVlsRDs7OztPQUlHO0lBQ0gsSUFBYSxLQUFLO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQztJQUN6QixDQUFDO0lBQ0QsSUFBSSxLQUFLLENBQUMsS0FBYTtRQUNyQixJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQztRQUN4QixJQUFJLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQyxLQUFLLENBQUM7UUFDckIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3pDLENBQUM7SUFZRDs7OztPQUlHO0lBQ0gsSUFDSSxRQUFRO1FBQ1YsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDO0lBQzVCLENBQUM7SUFDRCxJQUFJLFFBQVEsQ0FBQyxLQUFjO1FBQ3pCLElBQUksQ0FBQyxhQUFhLEdBQUcsS0FBSyxDQUFDO1FBRTNCLE1B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O2dCQVdHLGtCQUFrQjtzQkFBMUIsS0FBSztnQkFXRyxZQUFZO3NCQUFwQixLQUFLO2dCQVNHLEdBQUc7c0JBQVgsS0FBSztnQkFTRyxHQUFHO3NCQUFYLEtBQUs7Z0JBU0csSUFBSTtzQkFBWixLQUFLO2dCQU9HLE9BQU87c0JBQWYsS0FBSztnQkEyQk4sU0FBUztzQkFEUixZQUFZO3VCQUFDLGtCQUFrQixFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IE5vcndlZ2lhbiBBaXIgU2h1dHRsZS4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqL1xuaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIEhvc3RMaXN0ZW5lcixcbiAgSW5wdXQsXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxuICBWaWV3Q2hpbGQsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IENsYXNzTW9kZWwgfSBmcm9tICcuLi8uLi9jb3JlJztcbmltcG9ydCB7IE5hc0NvbXBvbmVudEJhc2UgfSBmcm9tICcuLi8uLi9jb3JlL2Jhc2UvbmFzLWNvbXBvbmVudC5iYXNlJztcblxubGV0IG5leHRJZCA9IDA7XG5cbi8qKlxuICogQGRlc2NyaXB0aW9uXG4gKiBOb3J3ZWdpYW4gSW5wdXQgQ29tcG9uZW50IHwgRm9ybSBDb250cm9scyB8IE5ldyBkZXNpZ25cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbmFzLWlucHV0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2lucHV0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vaW5wdXQuY29tcG9uZW50LnNjc3MnXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbn0pXG5leHBvcnQgY2xhc3MgSW5wdXRDb21wb25lbnQgZXh0ZW5kcyBOYXNDb21wb25lbnRCYXNlIGltcGxlbWVudHMgT25Jbml0IHtcbiAgQFZpZXdDaGlsZCgnaW5wdXRSZWFjdGl2ZScpIGlucHV0UmVhY3RpdmU6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+O1xuICBAVmlld0NoaWxkKCdpbnB1dE5vdFJlYWN0aXZlJykgaW5wdXROb3RSZWFjdGl2ZTogRWxlbWVudFJlZjxIVE1MRWxlbWVudD47XG4gIEBWaWV3Q2hpbGQoJ2NvbnRyb2xzJykgY29udHJvbHM6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+O1xuXG4gIC8qKlxuICAgKiBAcHJvcGVydHkgSW5wdXRcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqIFRoZSBJRCBvZiB0aGUgbmF0aXZlIGlucHV0IGVsZW1lbnRcbiAgICovXG4gIEBJbnB1dCgpIGlkOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEBwcm9wZXJ0eSBJbnB1dFxuICAgKiBAZGVzY3JpcHRpb25cbiAgICogVGhlIHZhbHVlIG9mIHRoZSBuYXRpdmUgaW5wdXQgZWxlbWVudFxuICAgKi9cbiAgQElucHV0KCkgZ2V0IG1vZGVsKCkge1xuICAgIHJldHVybiB0aGlzLm1vZGVsVmFsdWU7XG4gIH1cbiAgc2V0IG1vZGVsKHZhbHVlOiBzdHJpbmcpIHtcbiAgICB0aGlzLm1vZGVsVmFsdWUgPSB2YWx1ZTtcbiAgICB0aGlzLnZhbGlkID0gISF2YWx1ZTtcbiAgICB0aGlzLm1vZGVsQ2hhbmdlLmVtaXQodGhpcy5tb2RlbFZhbHVlKTtcbiAgfVxuXG4gIEBPdXRwdXQoKSBtb2RlbENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPihmYWxzZSk7XG4gIEBPdXRwdXQoKSBibHVyID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KGZhbHNlKTtcblxuICAvKipcbiAgICogQHByb3BlcnR5IElucHV0XG4gICAqIEBkZXNjcmlwdGlvblxuICAgKiBXaGV0aGVyIHRoZSBjb250cm9sIGlzIGluIGFuIGVycm9yIHN0YXRlLlxuICAgKi9cbiAgQElucHV0KCkgZXJyb3I6IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEBwcm9wZXJ0eSBJbnB1dFxuICAgKiBAZGVzY3JpcHRpb25cbiAgICogV2hldGhlciB0aGUgbmF0aXZlIGlucHV0IGVsZW1lbnQgaXMgZGlzYWJsZWQgb3Igbm8sIHdpdGggZGlzYWJsZWQgc3R5bGluZy5cbiAgICovXG4gIEBJbnB1dCgpXG4gIGdldCBkaXNhYmxlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5kaXNhYmxlZFZhbHVlO1xuICB9XG4gIHNldCBkaXNhYmxlZCh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuZGlzYWJsZWRWYWx1ZSA9IHZhbHVlO1xuXG4gICAgY29uc3QgaW5wdXRFbGVtZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQodGhpcy5pbnB1dElkKTtcblxuICAgIGlmICghaW5wdXRFbGVtZW50KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuZXhpc3RzKHZhbHVlKSkge1xuICAgICAgaW5wdXRFbGVtZW50LnNldEF0dHJpYnV0ZSgnZGlzYWJsZWQnLCAnZGlzYWJsZWQnKTtcbiAgICB9IGVsc2Uge1xuICAgICAgaW5wdXRFbGVtZW50LnJlbW92ZUF0dHJpYnV0ZSgnZGlzYWJsZWQnKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQHByb3BlcnR5IElucHV0XG4gICAqIEBkZXNjcmlwdGlvblxuICAgKiBTZXQgc3BhY2VsZXNzIHN0eWxpbmcgKHJlbW92aW5nIHNwYWNpbmcpXG4gICAqL1xuICBASW5wdXQoKSBzcGFjZWxlc3M6IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEBwcm9wZXJ0eSBJbnB1dFxuICAgKiBAZGVzY3JpcHRpb25cbiAgICogU2V0cyB0aGUgbGFiZWwgb2YgdGhlIGlucHV0XG4gICAqL1xuICBASW5wdXQoKSBsYWJlbDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBAcHJvcGVydHkgSW5wdXRcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqIFNldHMgdGhlIGxhYmVsIG9mIHRoZSBpbnB1dCBpbnNpZGUgdGhlIHdoaXRlIGFyZWFcbiAgICovXG4gIEBJbnB1dCgpIGxhYmVsSW5zaWRlOiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBAcHJvcGVydHkgSW5wdXRcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqIFRoZSBlcnJvciBtZXNzYWdlIHRvIGRpc3BsYXkgd2hlbiBlcnJvciBvY2N1ci4gRXJyb3IgYXR0cmlidXRlIG5lZWQgdG8gYmUgdHJ1ZS5cbiAgICovXG4gIEBJbnB1dCgpIGVycm9yTWVzc2FnZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBAcHJvcGVydHkgSW5wdXRcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqIFNldHMgcGxhY2Vob2xkZXIgdGV4dCBpbiB0aGUgbmF0aXZlIGlucHV0IGVsZW1lbnRcbiAgICovXG4gIEBJbnB1dCgpIHBsYWNlaG9sZGVyOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEBwcm9wZXJ0eSBJbnB1dFxuICAgKiBAZGVzY3JpcHRpb25cbiAgICogU2V0cyBtaW4gbGVuZ3RoIG9uIHRoZSBuYXRpdmUgaW5wdXQgZWxlbWVudC5cbiAgICovXG4gIEBJbnB1dCgpIG1pbkxlbmd0aDogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBAcHJvcGVydHkgSW5wdXRcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqIFNldHMgbWF4IGxlbmd0aCBvbiB0aGUgbmF0aXZlIGlucHV0IGVsZW1lbnQuXG4gICAqL1xuICBASW5wdXQoKSBtYXhMZW5ndGg6IG51bWJlcjtcblxuICAvKipcbiAgICogQHByb3BlcnR5IElucHV0XG4gICAqIEBkZXNjcmlwdGlvblxuICAgKiBTZXRzIHRoZSBpbmZvIHRleHQgcmVsYXRlZCB0byB0aGUgaW5wdXRcbiAgICovXG4gIEBJbnB1dCgpIGluZm86IHN0cmluZztcblxuICAvKipcbiAgICogQHByb3BlcnR5IElucHV0XG4gICAqIEBkZXNjcmlwdGlvblxuICAgKiBTZXRzIHRoZSBpY29uIG9uIHRoZSBpbnB1dFxuICAgKi9cbiAgQElucHV0KCkgaWNvbjogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAqIEBwcm9wZXJ0eSBJbnB1dFxuICAgKiBAZGVzY3JpcHRpb25cbiAgICogQm9vbGVhbiB0aGF0IHNldHMgaW5wdXQgbW9kZSB0byBudW1lcmljIGlmIHRydWUsIGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIEBJbnB1dCgpIG51bWVyaWM6IGJvb2xlYW47XG5cblxuICAvKipcbiAgICogQHByb3BlcnR5IElucHV0XG4gICAqIEBkZXNjcmlwdGlvblxuICAgKiBJbnB1dCB0eXBlIG9mIHRoZSBlbGVtZW50LlxuICAgKi9cbiAgQElucHV0KCkgdHlwZSA9ICd0ZXh0JztcblxuICAvKipcbiAgICogQHByb3BlcnR5IElucHV0XG4gICAqIEBkZXNjcmlwdGlvblxuICAgKiBXaGV0aGVyIHRoZSBlbGVtZW50IGlzIHJlYWRvbmx5LlxuICAgKi9cbiAgQElucHV0KCkgcmVhZG9ubHk6IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEBwcm9wZXJ0eSBJbnB1dFxuICAgKiBAZGVzY3JpcHRpb25cbiAgICogU3RyaW5nIHRvIHNldCBuYW1lIG9uIG5hdGl2ZSBpbnB1dCBlbGVtZW50LlxuICAgKi9cbiAgQElucHV0KClcbiAgZ2V0IG5hbWUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5uYW1lVmFsdWU7XG4gIH1cbiAgc2V0IG5hbWUodmFsdWU6IHN0cmluZykge1xuICAgIGlmICghdmFsdWUpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5uYW1lVmFsdWUgPSB2YWx1ZTtcbiAgICB0aGlzLnNldE5hbWVBdHRyaWJ1dGUoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAcHJvcGVydHkgSW5wdXRcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqIFNldHMgYXJpYSBkZXNjcmliZWRieSBmb3IgYWNjZXNzaWJpbGl0eVxuICAgKi9cbiAgQElucHV0KCdhcmlhLWRlc2NyaWJlZGJ5JykgYXJpYURlc2NyaWJlZGJ5OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEBwcm9wZXJ0eSBJbnB1dFxuICAgKiBAZGVzY3JpcHRpb25cbiAgICogU2V0cyB0aGUgcmVxdWlyZWQgYXR0cmlidXRlIG9uIHRoZSBuYXRpdmUgaW5wdXQgZWxlbWVudC5cbiAgICovXG4gIEBJbnB1dCgpIHJlcXVpcmVkOiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBAcHJvcGVydHkgSW5wdXRcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqIFNldHMgYSBmb3JtQ29udHJvbE5hbWUgZGlyZWN0aXZlIHRvIHRoZSBpbnB1dC5cbiAgICogSXQgcmVxdWlyZXMgdGhhdCB0aGUgY29uc3VtZXIgaW5jbHVkZWQgUmVhY3RpdmVGb3Jtc01vZHVsZSBpbiBpdCdzIG1vZHVsZS5cbiAgICogSXQgcmVxdWllcnMgdGhhdCB0aGUgbmFzRm9ybUdyb3VwIGlucHV0IGlzIGZpbGxlZC5cbiAgICogQGV4YW1wbGVcbiAgICogPG5hcy1pbnB1dCBbbmFzRm9ybUNvbnRyb2xOYW1lXT1cIid1c2VybmFtZSdcIj48L25hcy1pbnB1dD5cbiAgICovXG4gIEBJbnB1dCgpIG5hc0Zvcm1Db250cm9sTmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBAcHJvcGVydHkgSW5wdXRcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqIEFkZHMgdGhlIHBhcmVudCdzIGZvcm0gZ3JvdXAuXG4gICAqIEl0IHJlcXVpcmVzIHRoYXQgdGhlIGNvbnN1bWVyIGluY2x1ZGVkIFJlYWN0aXZlRm9ybXNNb2R1bGUgaW4gaXQncyBtb2R1bGUuXG4gICAqIEl0IGlzIHJlcXVpZXJlZCB0byBiZSBmaWxsZWQgaWYgbmFzRm9ybUNvbnRyb2xOYW1lIGFkZGVkLlxuICAgKiBAZXhhbXBsZVxuICAgKiA8bmFzLWlucHV0IFtuYXNGb3JtR3JvdXBdPVwibG9naW5Hcm91cFwiPjwvbmFzLWlucHV0PlxuICAgKi9cbiAgQElucHV0KCkgbmFzRm9ybUdyb3VwOiBGb3JtR3JvdXA7XG5cbiAgLyoqXG4gICAqIEBwcm9wZXJ0eSBJbnB1dFxuICAgKiBAZGVzY3JpcHRpb25cbiAgICogVGhlIG1pbmltdW0gdmFsdWUgdG8gYWNjZXB0IGZvciB0aGlzIGlucHV0LlxuICAgKiBAZXhhbXBsZVxuICAgKiA8bmFzLWlucHV0IFt0eXBlXT1cIidudW1iZXInXCIgW21pbl09XCIwXCI+PC9uYXMtaW5wdXQ+XG4gICAqL1xuICBASW5wdXQoKSBtaW46IG51bWJlcjtcblxuICAvKipcbiAgICogQHByb3BlcnR5IElucHV0XG4gICAqIEBkZXNjcmlwdGlvblxuICAgKiBUaGUgbWF4aW11bSB2YWx1ZSB0byBhY2NlcHQgZm9yIHRoaXMgaW5wdXQuXG4gICAqIEBleGFtcGxlXG4gICAqIDxuYXMtaW5wdXQgW3R5cGVdPVwiJ251bWJlcidcIiBbbWF4XT1cIjEwXCI+PC9uYXMtaW5wdXQ+XG4gICAqL1xuICBASW5wdXQoKSBtYXg6IG51bWJlcjtcblxuICAvKipcbiAgICogQHByb3BlcnR5IElucHV0XG4gICAqIEBkZXNjcmlwdGlvblxuICAgKiBBZGRzIGEgbGluZSBiZWxvdyB0aGUgaW5wdXQgZWxlbWVudC4gRGVmYXVsdCB2YWx1ZSBpcyB0cnVlLlxuICAgKiBAZXhhbXBsZVxuICAgKiA8bmFzLWlucHV0IFtsaW5lXT1cImZhbHNlXCI+PC9uYXMtaW5wdXQ+XG4gICAqL1xuICBASW5wdXQoKSBsaW5lID0gdHJ1ZTtcblxuICAvKipcbiAgICogQHByb3BlcnR5IElucHV0XG4gICAqIEBkZXNjcmlwdGlvblxuICAgKiBTcGVjaWZpZXMgYSByZWd1bGFyIGV4cHJlc3Npb24gdGhhdCB0aGUgaW5wdXQgdmFsdWUgaXMgY2hlY2tlZCBhZ2FpbnN0IG9uIGZvcm0gc3VibWlzc2lvblxuICAgKi9cbiAgQElucHV0KCkgcGF0dGVybjogc3RyaW5nO1xuXG4gIGdldCBpbnB1dElkKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuaWQgPyB0aGlzLmlkIDogYG5hcy1pbnB1dC0ke3RoaXMuY29tcG9uZW50SWR9YDtcbiAgfVxuXG4gIGdldCBlcnJvcklkKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuaWRcbiAgICAgID8gdGhpcy5pZCArICdfX2Vycm9yJ1xuICAgICAgOiBgbmFzLWlucHV0LSR7dGhpcy5jb21wb25lbnRJZH1fX2Vycm9yYDtcbiAgfVxuXG4gIHByaXZhdGUgY29tcG9uZW50SWQ6IG51bWJlcjtcbiAgcHJpdmF0ZSBtb2RlbFZhbHVlOiBzdHJpbmc7XG4gIHByaXZhdGUgZGlzYWJsZWRWYWx1ZTogYm9vbGVhbjtcbiAgcHJpdmF0ZSBuYW1lVmFsdWU6IHN0cmluZztcbiAgcHVibGljIGFjdGl2ZTogYm9vbGVhbjtcbiAgcHVibGljIGZvY3VzOiBib29sZWFuO1xuICBwdWJsaWMgdmFsaWQ6IGJvb2xlYW47XG4gIHB1YmxpYyBsYXN0V2FzVGFiID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoJ25hcy1pbnB1dCcpO1xuICAgIHRoaXMuY29tcG9uZW50SWQgPSBuZXh0SWQrKztcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50OmtleWRvd24nLCBbJyRldmVudCddKVxuICBvbktleWRvd24oZTogS2V5Ym9hcmRFdmVudCkge1xuICAgIHRoaXMubGFzdFdhc1RhYiA9IGUua2V5ID09PSAnVGFiJztcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLm5hc0Zvcm1Hcm91cCAmJiB0aGlzLm5hc0Zvcm1Db250cm9sTmFtZSkge1xuICAgICAgY29uc3QgZm9ybUNvbnRyb2wgPSB0aGlzLm5hc0Zvcm1Hcm91cC5nZXQodGhpcy5uYXNGb3JtQ29udHJvbE5hbWUpO1xuICAgICAgZm9ybUNvbnRyb2wudmFsdWVDaGFuZ2VzLnN1YnNjcmliZSh2YWx1ZSA9PiB7XG4gICAgICAgIHRoaXMudmFsaWQgPSAhIXZhbHVlXG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuZXhpc3RzKHRoaXMuZGlzYWJsZWQpKSB7XG4gICAgICBjb25zdCBpbnB1dEVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCh0aGlzLmlucHV0SWQpO1xuICAgICAgaW5wdXRFbGVtZW50LnNldEF0dHJpYnV0ZSgnZGlzYWJsZWQnLCAnZGlzYWJsZWQnKTtcbiAgICB9XG4gICAgdGhpcy5zZXROYW1lQXR0cmlidXRlKCk7XG4gIH1cblxuICBtYWluQ2xhc3MoKTogQ2xhc3NNb2RlbCB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0Q2xhc3MoJycsIFtcbiAgICAgIHRoaXMuZXhpc3RzKHRoaXMuZXJyb3IpICYmICdlcnJvcicsXG4gICAgICB0aGlzLmV4aXN0cyh0aGlzLmRpc2FibGVkKSAmJiAnZGlzYWJsZWQnLFxuICAgICAgdGhpcy5leGlzdHModGhpcy5hY3RpdmUpICYmICdhY3RpdmUnLFxuICAgICAgdGhpcy5leGlzdHModGhpcy5mb2N1cykgJiYgJ2ZvY3VzJyxcbiAgICAgIHRoaXMuZXhpc3RzKHRoaXMudmFsaWQpICYmICd2YWxpZCcsXG4gICAgICB0aGlzLmV4aXN0cyh0aGlzLnNwYWNlbGVzcykgJiYgJ3NwYWNlbGVzcycsXG4gICAgXSk7XG4gIH1cblxuICBwcml2YXRlIHNldE5hbWVBdHRyaWJ1dGUoKSB7XG4gICAgaWYgKHRoaXMubmFtZVZhbHVlKSB7XG4gICAgICBpZiAoIXRoaXMubmFzRm9ybUNvbnRyb2xOYW1lIHx8ICF0aGlzLm5hc0Zvcm1Hcm91cCkge1xuICAgICAgICB0aGlzLmlucHV0Tm90UmVhY3RpdmU/Lm5hdGl2ZUVsZW1lbnQ/LnNldEF0dHJpYnV0ZShcbiAgICAgICAgICAnbmFtZScsXG4gICAgICAgICAgdGhpcy5uYW1lVmFsdWVcbiAgICAgICAgKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuaW5wdXRSZWFjdGl2ZT8ubmF0aXZlRWxlbWVudD8uc2V0QXR0cmlidXRlKCduYW1lJywgdGhpcy5uYW1lVmFsdWUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBvbkJsdXIodmFsdWU6IHN0cmluZykge1xuICAgIHRoaXMuYWN0aXZlID0gZmFsc2U7XG4gICAgdGhpcy5mb2N1cyA9IGZhbHNlO1xuICAgIHRoaXMuYmx1ci5lbWl0KHZhbHVlKTtcbiAgfVxuXG4gIG9uS2V5RG93bigpOiB2b2lkIHtcbiAgICB0aGlzLmxhc3RXYXNUYWIgPSBmYWxzZTtcbiAgfVxuXG4gIHNldEFjdGl2ZUlucHV0KGFjdGl2ZTogYm9vbGVhbik6IHZvaWQgeyAgICBcbiAgICBpZih0aGlzLmV4aXN0cyh0aGlzLmVycm9yKSB8fCAgdGhpcy5leGlzdHModGhpcy5kaXNhYmxlZCkpIHtcbiAgICAgIHRoaXMuYWN0aXZlID0gZmFsc2U7XG4gICAgICB0aGlzLmZvY3VzID0gdGhpcy5sYXN0V2FzVGFiO1xuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgdGhpcy5hY3RpdmUgPSBhY3RpdmU7XG4gICAgdGhpcy5mb2N1cyA9IGFjdGl2ZSAmJiB0aGlzLmxhc3RXYXNUYWI7XG5cbiAgICB0aGlzLmxhc3RXYXNUYWIgPSBmYWxzZTtcbiAgfVxuXG59XG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwiIW5hc0Zvcm1Db250cm9sTmFtZTsgZWxzZSByZWFjdGl2ZUZvcm1cIj5cbiAgPGxhYmVsIFtuYXNDbGFzc109XCJtYWluQ2xhc3MoKVwiPlxuICAgIDxkaXYgI2NvbnRyb2xzIFtuYXNDbGFzc109XCJnZXRDbGFzcygnY29udHJvbHMnLCBleGlzdHMobGFiZWxJbnNpZGUpICYmICdsYWJlbC1pbnNpZGUnKVwiIChrZXlkb3duKT1cIm9uS2V5RG93bigpXCJcbiAgICAgIChmb2N1c2luKT1cInNldEFjdGl2ZUlucHV0KHRydWUpXCIgKGZvY3Vzb3V0KT1cInNldEFjdGl2ZUlucHV0KGZhbHNlKVwiPlxuICAgICAgPHAgW25hc0NsYXNzXT1cImdldENsYXNzKCdsYWJlbCcpXCIgKm5nSWY9XCJsYWJlbFwiPnt7IGxhYmVsIH19PC9wPlxuICAgICAgPGlucHV0ICNpbnB1dE5vdFJlYWN0aXZlIFtuYXNDbGFzc109XCJnZXRDbGFzcygndGV4dCcpXCIgW2F0dHIuaWRdPVwiaW5wdXRJZFwiIFthdHRyLnR5cGVdPVwidHlwZVwiIFthdHRyLm5hbWVdPVwibmFtZVwiXG4gICAgICAgIFthdHRyLnBsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCIgW2F0dHIucmVhZG9ubHldPVwicmVhZG9ubHlcIiBbcmVxdWlyZWRdPVwicmVxdWlyZWRcIlxuICAgICAgICBbYXR0ci5hcmlhLWRlc2NyaWJlZGJ5XT1cImFyaWFEZXNjcmliZWRieVwiIFthdHRyLmFyaWEtaW52YWxpZF09XCJlcnJvclwiIFthdHRyLmFyaWEtcmVxdWlyZWRdPVwicmVxdWlyZWRcIlxuICAgICAgICBbYXR0ci5taW5sZW5ndGhdPVwibWluTGVuZ3RoXCIgW2F0dHIubWF4bGVuZ3RoXT1cIm1heExlbmd0aFwiIFthdHRyLm1pbl09XCJtaW5cIiBbYXR0ci5tYXhdPVwibWF4XCJcbiAgICAgICAgW2F0dHIucGF0dGVybl09XCJwYXR0ZXJuXCIgW2F0dHIuaW5wdXRtb2RlXT1cImV4aXN0cyhudW1lcmljKSA/ICdudW1lcmljJyA6IG51bGxcIiBhdXRvY29tcGxldGU9XCJvbmUtdGltZS1jb2RlXCIgKGJsdXIpPVwib25CbHVyKCRldmVudC50YXJnZXQudmFsdWUpXCIgWyhuZ01vZGVsKV09XCJtb2RlbFwiIC8+XG4gICAgICA8c3BhbiBbbmFzQ2xhc3NdPVwiZ2V0Q2xhc3MoJ2ljb24nKVwiICpuZ0lmPVwiaWNvbiAmJiAhZXJyb3JcIj5cbiAgICAgICAgPG5hcy1pY29uIFtpY29uXT1cImljb25cIj48L25hcy1pY29uPlxuICAgICAgPC9zcGFuPlxuICAgIDwvZGl2PlxuICAgIDxzcGFuICpuZ0lmPVwiZXhpc3RzKGVycm9yKVwiIFtuYXNDbGFzc109XCJnZXRDbGFzcygnbWVzc2FnZScpXCI+XG4gICAgICA8ZGl2IFtuYXNDbGFzc109XCJnZXRDbGFzcygnbWVzc2FnZS0taWNvbicpXCI+XG4gICAgICAgIDxuYXMtaWNvbiB0eXBlPVwibmVnYXRpdmVcIj48L25hcy1pY29uPlxuICAgICAgPC9kaXY+XG4gICAgICA8cCBbbmFzQ2xhc3NdPVwiZ2V0Q2xhc3MoJ21lc3NhZ2UtLXRleHQnKVwiIFtpZF09XCJlcnJvcklkXCIgKm5nSWY9XCJleGlzdHMoZXJyb3IpICYmIGVycm9yTWVzc2FnZVwiPiB7eyBlcnJvck1lc3NhZ2UgfX1cbiAgICAgIDwvcD5cbiAgICA8L3NwYW4+XG4gICAgPHNwYW4gW25hc0NsYXNzXT1cImdldENsYXNzKCdpbmZvJylcIiAqbmdJZj1cImluZm9cIj57eyBpbmZvIH19PC9zcGFuPlxuICA8L2xhYmVsPlxuPC9uZy1jb250YWluZXI+XG48bmctdGVtcGxhdGUgI3JlYWN0aXZlRm9ybT5cbiAgPGxhYmVsIFtuYXNDbGFzc109XCJtYWluQ2xhc3MoKVwiIFtmb3JtR3JvdXBdPVwibmFzRm9ybUdyb3VwXCI+XG4gICAgPGRpdiAjY29udHJvbHMgW25hc0NsYXNzXT1cImdldENsYXNzKCdjb250cm9scycsIGV4aXN0cyhsYWJlbEluc2lkZSkgJiYgJ2xhYmVsLWluc2lkZScpXCIgXG4gICAgICAoZm9jdXNpbik9XCJzZXRBY3RpdmVJbnB1dCh0cnVlKVwiIChmb2N1c291dCk9XCJzZXRBY3RpdmVJbnB1dChmYWxzZSlcIiAoa2V5ZG93bik9XCJvbktleURvd24oKVwiPlxuICAgICAgPHAgW25hc0NsYXNzXT1cImdldENsYXNzKCdsYWJlbCcpXCIgKm5nSWY9XCJsYWJlbFwiPnt7IGxhYmVsIH19PC9wPlxuICAgICAgPGlucHV0ICNpbnB1dFJlYWN0aXZlIFtuYXNDbGFzc109XCJnZXRDbGFzcygndGV4dCcpXCIgW2Zvcm1Db250cm9sTmFtZV09XCJuYXNGb3JtQ29udHJvbE5hbWVcIiBbYXR0ci5pZF09XCJpbnB1dElkXCJcbiAgICAgICAgW2F0dHIudHlwZV09XCJ0eXBlXCIgW2F0dHIubmFtZV09XCJuYW1lXCIgW2F0dHIucGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIiBbYXR0ci5yZWFkb25seV09XCJyZWFkb25seVwiXG4gICAgICAgIFtyZXF1aXJlZF09XCJyZXF1aXJlZFwiIFthdHRyLmFyaWEtZGVzY3JpYmVkYnldPVwiYXJpYURlc2NyaWJlZGJ5XCIgW2F0dHIuYXJpYS1pbnZhbGlkXT1cImVycm9yXCJcbiAgICAgICAgW2F0dHIuYXJpYS1yZXF1aXJlZF09XCJyZXF1aXJlZFwiIFthdHRyLm1pbmxlbmd0aF09XCJtaW5MZW5ndGhcIiBbYXR0ci5tYXhsZW5ndGhdPVwibWF4TGVuZ3RoXCIgW2F0dHIubWluXT1cIm1pblwiXG4gICAgICAgIFthdHRyLm1heF09XCJtYXhcIiBbYXR0ci5wYXR0ZXJuXT1cInBhdHRlcm5cIiBbYXR0ci5pbnB1dG1vZGVdPVwibnVtZXJpYyA/ICdudW1lcmljJyA6IG51bGxcIiBhdXRvY29tcGxldGU9XCJvbmUtdGltZS1jb2RlXCIgKGJsdXIpPVwib25CbHVyKCRldmVudC50YXJnZXQudmFsdWUpXCIgLz5cbiAgICAgIDxzcGFuIFtuYXNDbGFzc109XCJnZXRDbGFzcygnaWNvbicpXCIgKm5nSWY9XCJpY29uICYmICFlcnJvclwiPlxuICAgICAgICA8bmFzLWljb24gW2ljb25dPVwiaWNvblwiPjwvbmFzLWljb24+XG4gICAgICA8L3NwYW4+XG4gICAgPC9kaXY+XG4gICAgPHNwYW4gKm5nSWY9XCJleGlzdHMoZXJyb3IpXCIgW25hc0NsYXNzXT1cImdldENsYXNzKCdtZXNzYWdlJylcIj5cbiAgICAgIDxkaXYgW25hc0NsYXNzXT1cImdldENsYXNzKCdtZXNzYWdlLS1pY29uJylcIj5cbiAgICAgICAgPG5hcy1pY29uIHR5cGU9XCJuZWdhdGl2ZVwiPjwvbmFzLWljb24+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxwIFtuYXNDbGFzc109XCJnZXRDbGFzcygnbWVzc2FnZS0tdGV4dCcpXCIgW2lkXT1cImVycm9ySWRcIiAqbmdJZj1cImV4aXN0cyhlcnJvcikgJiYgZXJyb3JNZXNzYWdlXCI+e3sgZXJyb3JNZXNzYWdlIH19XG4gICAgICA8L3A+XG4gICAgPC9zcGFuPlxuICAgIDxzcGFuIFtuYXNDbGFzc109XCJnZXRDbGFzcygnaW5mbycpXCIgKm5nSWY9XCJpbmZvXCI+e3sgaW5mbyB9fTwvc3Bhbj5cbiAgPC9sYWJlbD5cbjwvbmctdGVtcGxhdGU+Il19
@@ -46,7 +46,7 @@ export class WalletComponent extends NasComponentBase {
46
46
  return this.getCurrentHref().includes(this.walletModel?.urls?.myTravelsUrl?.href) ? true : false;
47
47
  }
48
48
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: WalletComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
49
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: WalletComponent, selector: "nas-wallet", inputs: { walletModel: "walletModel" }, usesInheritance: true, ngImport: i0, template: "<div [nasClass]=\"getClass('')\">\n <div *ngIf=\"this.showContent\" [nasClass]=\"getClass('backdrop')\" (click)=\"onClickToggleContent()\"></div>\n <div [nasClass]=\"getClass('header')\">\n <div *ngIf=\"walletModel?.rewardNumber\" [nasClass]=\"getClass('header-points')\">\n <div *ngIf=\"pointsBalance >= 0 && (walletModel?.cashpointsBalance != null || walletModel?.spennBalance != null); else showTag\">\n <p>{{pointsBalance}}</p>\n </div>\n <ng-template #showTag>\n <nas-tag [nasClass]=\"getClass('tag--header')\" neutral [text]=\"'--'\"></nas-tag>\n </ng-template>\n <div *ngIf=\"!spennAndCashpointUnavailable\" [nasClass]=\"getClass('points-logo', icon)\">\n <nas-icon [nasClass]=\"getClass('icon')\" [type]=\"icon\"></nas-icon>\n </div>\n </div>\n </div>\n <button [nasClass]=\"getClass('dropdown')\" (click)=\"onClickToggleContent()\">\n <div [nasClass]=\"getClass('dropdown-icon', this.showContent && 'rotate')\">\n <nas-icon [icon]=\"'arrow-right'\" [type]=\"'chevron-down'\"></nas-icon>\n </div>\n </button>\n <div *ngIf=\"this.showContent\" [nasClass]=\"getClass('content')\">\n <div *ngIf=\"walletModel?.rewardNumber\">\n <div [nasClass]=\"getClass('title')\">{{walletModel?.texts?.rewardPoints}}</div>\n <div *ngIf=\"!showNotAvailableMessage; else showAlert\">\n <div *ngIf=\"walletModel?.spennEnabled\" [nasClass]=\"getClass('spenn')\">\n <nas-icon [type]=\"'spenn'\"></nas-icon>\n <div *ngIf=\"walletModel?.spennBalance != null; else showTag\">\n <p>{{walletModel?.spennBalance}}</p>\n </div>\n </div>\n <div [nasClass]=\"getClass('cashpoints')\">\n <nas-icon [type]=\"'cashpoints-logo'\"></nas-icon>\n <div *ngIf=\"walletModel?.cashpointsBalance != null; else showTag\">\n <p>{{walletModel?.cashpointsBalance}}</p> \n </div>\n </div>\n <ng-template #showTag>\n <nas-tag [nasClass]=\"getClass('tag')\" neutral [text]=\"walletModel?.texts?.notAvailable\"></nas-tag>\n </ng-template>\n </div>\n <ng-template #showAlert>\n <div [nasClass]=\"getClass('info-box')\">\n <nas-alert neutral [text]=\"walletModel?.texts?.notAvailableMessage\"></nas-alert>\n </div>\n </ng-template>\n <div [nasClass]=\"getClass('info')\">{{pointsDescription}}</div>\n <div [nasClass]=\"getClass('reward')\">{{walletModel?.texts?.rewardNumber}} {{walletModel?.rewardNumber}}</div>\n </div>\n <div [nasClass]=\"getClass('button')\">\n <nas-button *ngIf=\"!myTravelsPage() && walletModel?.urls?.myTravelsUrl?.href\" \n light\n block\n [href]=\"walletModel?.urls?.myTravelsUrl?.href\" \n [nasClass]=\"getClass('button--mytravel')\">\n {{walletModel?.urls?.myTravelsUrl.text}}\n </nas-button>\n <nas-button *ngIf=\"walletModel?.urls?.signOutUrl?.href\" \n buttonlink \n block \n [href]=\"walletModel?.urls?.signOutUrl?.href\">\n {{walletModel?.urls?.signOutUrl?.text}}\n </nas-button>\n </div>\n </div>\n</div>", styles: ["@keyframes fade-in{0%{opacity:0}}@keyframes fade-in-down{0%{opacity:0;transform:translateY(-30px)}}@keyframes fade-in-left{0%{opacity:0;transform:translate(-30px)}}@keyframes fade-in-right{0%{opacity:0;transform:translate(30px)}}@keyframes fade-out{to{opacity:0}}@keyframes flip-in{0%{opacity:0;transform:rotateX(-90deg)}40%{opacity:1;transform:rotateX(10deg)}}@keyframes flip-out{to{opacity:0;transform:rotateX(-90deg)}}@keyframes pop-in-from-top{0%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-100,1,1);opacity:0}6.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-30.227,1,1)}13.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,1.76,1,1)}20%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,7.08,1,1)}26.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,3.838,1,1)}33.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.902,1,1);opacity:1}40%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.237,1,1)}46.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.312,1,1)}53.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.141,1,1)}60%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.021,1,1)}66.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.015,1,1)}73.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.013,1,1)}80%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.005,1,1)}86.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,0,1,1)}93.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.001,1,1);-webkit-transform:translate3d(0,0,0)}to{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.001,1,1);-webkit-transform:translate3d(0,0,0)}}.nas-wallet{display:inline-flex;position:unset;background-color:#fff}@media (min-width: 640px){.nas-wallet{position:relative;margin-left:16px}}.nas-wallet__header{display:flex;align-items:center}.nas-wallet__header-points,.nas-wallet__icon{display:none}@media (min-width: 640px){.nas-wallet__header-points,.nas-wallet__icon{display:flex}}.nas-wallet__points-logo{padding-top:0}.nas-wallet__points-logo--spenn{padding-top:5px}.nas-wallet__profile-name{padding-right:24px;color:#15273f}.nas-wallet__dropdown{padding:0 12px 0 16px}@media (min-width: 640px){.nas-wallet__dropdown{padding:0 16px}}.nas-wallet__dropdown-icon{transition:transform .2s cubic-bezier(0,0,.1,1);transform-origin:45% 55%}.nas-wallet__dropdown-icon--rotate{transform:rotate(180deg)}.nas-wallet__content{z-index:50;background:linear-gradient(180deg,#fff,#f8f8f8);box-shadow:0 0 14px #00325126;border-top:2px solid #15273F;position:absolute;padding:16px;top:70px;left:0}@media (min-width: 640px){.nas-wallet__content{width:334px;right:0;top:48px;left:unset}}.nas-wallet__profile-user{display:none;font-size:16px;color:#15273f;padding-bottom:16px}@media (min-width: 640px){.nas-wallet__profile-user{display:block}}.nas-wallet__profile-icon{transform:scale(.75)}.nas-wallet__title{font-weight:700;font-size:18px;line-height:24px;color:#15273f;padding-bottom:16px}.nas-wallet__spenn{display:flex;justify-content:space-between}.nas-wallet__cashpoints{display:flex;justify-content:space-between;padding-bottom:16px}.nas-wallet__info{padding-bottom:12px;border-bottom:solid 1px #E9E7E4}.nas-wallet__reward{padding:12px 0;text-align:center}.nas-wallet__info-box{margin-bottom:12px}.nas-wallet__button{display:flex;flex-direction:column}.nas-wallet__button--mytravel{margin-bottom:16px}.nas-wallet__tag--header{margin-right:12px}.nas-wallet__tag--wallet{padding-bottom:6px}.nas-wallet__backdrop{z-index:10;display:block;position:fixed;top:70px;left:0;width:100%;height:100%;color:transparent;background:var(--Color-UI-Overlay-40, rgba(21, 39, 63, .4));opacity:.2;animation:fade-in .3s ease-out both}.nas-wallet p{margin:0;padding-right:8px;color:#15273f;font-weight:700;font-size:21px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.IconComponent, selector: "nas-icon", inputs: ["icon", "type", "isIndicator", "lightCircularBackground", "cssClass"] }, { kind: "directive", type: i3.NasClassDirective, selector: "[nasClass]", inputs: ["nasClass", "attr.class"] }, { kind: "component", type: i4.ButtonComponent, selector: "nas-button", inputs: ["primary", "secondary", "link", "light", "large", "block", "flex", "compact", "right", "spaceless", "href", "trackingvalue", "canContinueOnDisabled", "disabled", "type", "cssClass", "ariaLabel", "cssStyle", "tabindex", "overrideBaseCssClass", "useRouterLink", "id", "target", "icon", "iconLeft", "iconType", "buttonlink"], outputs: ["clickChange", "focusOnNext"] }, { kind: "component", type: i5.TagComponent, selector: "nas-tag", inputs: ["info", "warning", "error", "success", "neutral", "text", "icon", "iconType"] }, { kind: "component", type: i6.AlertComponent, selector: "nas-alert", inputs: ["timestamp", "title", "info", "warning", "error", "success", "neutral", "text", "show", "removable", "removeIcon", "trustTextHtml", "allowAutoScroll", "server", "correlation", "alert"], outputs: ["showChange"] }], encapsulation: i0.ViewEncapsulation.None }); }
49
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: WalletComponent, selector: "nas-wallet", inputs: { walletModel: "walletModel" }, usesInheritance: true, ngImport: i0, template: "<div [nasClass]=\"getClass('')\">\n <div *ngIf=\"this.showContent\" [nasClass]=\"getClass('backdrop')\" (click)=\"onClickToggleContent()\"></div>\n <div [nasClass]=\"getClass('header')\">\n <div *ngIf=\"walletModel?.rewardNumber\" [nasClass]=\"getClass('header-points')\">\n <div *ngIf=\"pointsBalance >= 0 && (walletModel?.cashpointsBalance != null || walletModel?.spennBalance != null); else showTag\">\n <p>{{pointsBalance}}</p>\n </div>\n <ng-template #showTag>\n <nas-tag [nasClass]=\"getClass('tag--header')\" neutral [text]=\"'--'\"></nas-tag>\n </ng-template>\n <div *ngIf=\"!spennAndCashpointUnavailable\" [nasClass]=\"getClass('points-logo', icon)\">\n <nas-icon [nasClass]=\"getClass('icon')\" [type]=\"icon\"></nas-icon>\n </div>\n </div>\n </div>\n <button [nasClass]=\"getClass('dropdown')\" (click)=\"onClickToggleContent()\">\n <div [nasClass]=\"getClass('dropdown-icon', this.showContent && 'rotate')\">\n <nas-icon [icon]=\"'arrow-right'\" [type]=\"'chevron-down'\"></nas-icon>\n </div>\n </button>\n <div *ngIf=\"this.showContent\" [nasClass]=\"getClass('content')\">\n <div *ngIf=\"walletModel?.rewardNumber\">\n <div [nasClass]=\"getClass('title')\">{{walletModel?.texts?.rewardPoints}}</div>\n <div *ngIf=\"!showNotAvailableMessage; else showAlert\">\n <div *ngIf=\"walletModel?.spennEnabled\" [nasClass]=\"getClass('spenn')\">\n <nas-icon [type]=\"'spenn'\"></nas-icon>\n <div *ngIf=\"walletModel?.spennBalance != null; else showTag\">\n <p>{{walletModel?.spennBalance}}</p>\n </div>\n </div>\n <div [nasClass]=\"getClass('cashpoints')\">\n <nas-icon [type]=\"'cashpoints-logo'\"></nas-icon>\n <div *ngIf=\"walletModel?.cashpointsBalance != null; else showTag\">\n <p>{{walletModel?.cashpointsBalance}}</p> \n </div>\n </div>\n <ng-template #showTag>\n <nas-tag [nasClass]=\"getClass('tag')\" neutral [text]=\"walletModel?.texts?.notAvailable\"></nas-tag>\n </ng-template>\n </div>\n <ng-template #showAlert>\n <div [nasClass]=\"getClass('info-box')\">\n <nas-alert neutral [text]=\"walletModel?.texts?.notAvailableMessage\"></nas-alert>\n </div>\n </ng-template>\n <div [nasClass]=\"getClass('info')\">{{pointsDescription}}</div>\n <div [nasClass]=\"getClass('reward')\">{{walletModel?.texts?.rewardNumber}} {{walletModel?.rewardNumber}}</div>\n </div>\n <div [nasClass]=\"getClass('button')\">\n <nas-button *ngIf=\"!myTravelsPage() && walletModel?.urls?.myTravelsUrl?.href\" \n light\n block\n [href]=\"walletModel?.urls?.myTravelsUrl?.href\" \n [nasClass]=\"getClass('button--mytravel')\">\n {{walletModel?.urls?.myTravelsUrl.text}}\n </nas-button>\n <nas-button *ngIf=\"walletModel?.urls?.signOutUrl?.href\" \n buttonlink \n block \n [href]=\"walletModel?.urls?.signOutUrl?.href\">\n {{walletModel?.urls?.signOutUrl?.text}}\n </nas-button>\n </div>\n </div>\n</div>", styles: ["@keyframes fade-in{0%{opacity:0}}@keyframes fade-in-down{0%{opacity:0;transform:translateY(-30px)}}@keyframes fade-in-left{0%{opacity:0;transform:translate(-30px)}}@keyframes fade-in-right{0%{opacity:0;transform:translate(30px)}}@keyframes fade-out{to{opacity:0}}@keyframes flip-in{0%{opacity:0;transform:rotateX(-90deg)}40%{opacity:1;transform:rotateX(10deg)}}@keyframes flip-out{to{opacity:0;transform:rotateX(-90deg)}}@keyframes pop-in-from-top{0%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-100,1,1);opacity:0}6.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-30.227,1,1)}13.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,1.76,1,1)}20%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,7.08,1,1)}26.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,3.838,1,1)}33.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.902,1,1);opacity:1}40%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.237,1,1)}46.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.312,1,1)}53.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.141,1,1)}60%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.021,1,1)}66.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.015,1,1)}73.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.013,1,1)}80%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.005,1,1)}86.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,0,1,1)}93.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.001,1,1);-webkit-transform:translate3d(0,0,0)}to{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.001,1,1);-webkit-transform:translate3d(0,0,0)}}.nas-wallet{display:inline-flex;position:unset;background-color:#fff}@media (min-width: 640px){.nas-wallet{position:relative;margin-left:16px}}.nas-wallet__header{display:flex;align-items:center}.nas-wallet__header-points,.nas-wallet__icon{display:none}@media (min-width: 640px){.nas-wallet__header-points,.nas-wallet__icon{display:flex}}.nas-wallet__points-logo{padding-top:0}.nas-wallet__points-logo--spenn{padding-top:5px}.nas-wallet__profile-name{padding-right:24px;color:#15273f}.nas-wallet__dropdown{padding:0 12px 0 16px}@media (min-width: 640px){.nas-wallet__dropdown{padding:0 16px}}.nas-wallet__dropdown-icon{transition:transform .2s cubic-bezier(0,0,.1,1);transform-origin:45% 55%}.nas-wallet__dropdown-icon--rotate{transform:rotate(180deg)}.nas-wallet__content{z-index:50;background:linear-gradient(180deg,#fff,#f8f8f8);box-shadow:0 0 14px #00325126;border-top:2px solid #15273F;position:absolute;padding:16px;top:70px;left:0}@media (min-width: 640px){.nas-wallet__content{width:334px;right:0;top:48px;left:unset}}.nas-wallet__profile-user{display:none;font-size:16px;color:#15273f;padding-bottom:16px}@media (min-width: 640px){.nas-wallet__profile-user{display:block}}.nas-wallet__profile-icon{transform:scale(.75)}.nas-wallet__title{font-weight:700;font-size:18px;line-height:24px;color:#15273f;padding-bottom:16px}.nas-wallet__spenn{display:flex;justify-content:space-between}.nas-wallet__cashpoints{display:flex;justify-content:space-between;padding-bottom:16px}.nas-wallet__info{padding-bottom:12px;border-bottom:solid 1px #E9E7E4}.nas-wallet__reward{padding:12px 0;text-align:center}.nas-wallet__info-box{margin-bottom:12px}.nas-wallet__button{display:flex;flex-direction:column}.nas-wallet__button--mytravel{margin-bottom:16px}.nas-wallet__tag--header{margin-right:12px}.nas-wallet__tag--wallet{padding-bottom:6px}.nas-wallet__backdrop{z-index:10;display:block;position:fixed;top:70px;left:0;width:100%;height:100%;color:transparent;background:var(--Color-UI-Overlay-40, rgba(21, 39, 63, .4));opacity:.2;animation:fade-in .3s ease-out both}.nas-wallet p{margin:0;padding-right:8px;color:#15273f;font-weight:700;font-size:21px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.IconComponent, selector: "nas-icon", inputs: ["icon", "type", "isIndicator", "lightCircularBackground", "cssClass"] }, { kind: "directive", type: i3.NasClassDirective, selector: "[nasClass]", inputs: ["nasClass", "attr.class"] }, { kind: "component", type: i4.ButtonComponent, selector: "nas-button", inputs: ["primary", "secondary", "link", "light", "large", "block", "flex", "compact", "right", "spaceless", "href", "trackingvalue", "canContinueOnDisabled", "disabled", "type", "cssClass", "ariaLabel", "cssStyle", "tabindex", "overrideBaseCssClass", "useRouterLink", "id", "target", "icon", "iconLeft", "iconType", "buttonlink"], outputs: ["clickChange", "focusOnNext"] }, { kind: "component", type: i5.TagComponent, selector: "nas-tag", inputs: ["info", "warning", "error", "success", "neutral", "text", "icon", "iconType"] }, { kind: "component", type: i6.AlertComponent, selector: "nas-alert", inputs: ["timestamp", "title", "info", "warning", "error", "success", "neutral", "text", "stackTraceLabel", "show", "removable", "removeIcon", "trustTextHtml", "allowAutoScroll", "server", "correlation", "alert"], outputs: ["showChange"] }], encapsulation: i0.ViewEncapsulation.None }); }
50
50
  }
51
51
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: WalletComponent, decorators: [{
52
52
  type: Component,
@@ -0,0 +1,3 @@
1
+ export * from './tooltip.component';
2
+ export * from './tooltip.module';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL3Rvb2x0aXAvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLGtCQUFrQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi90b29sdGlwLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3Rvb2x0aXAubW9kdWxlJztcbiJdfQ==
@@ -0,0 +1,129 @@
1
+ /**
2
+ * @license
3
+ * Copyright Norwegian Air Shuttle. All Rights Reserved.
4
+ */
5
+ import { Component, HostListener, Input, ViewChild } from '@angular/core';
6
+ import { NasComponentBase } from '../../core';
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "../../core/services/device/device-helper.service";
9
+ import * as i2 from "../../core/directives/nas-class/nas-class.directive";
10
+ import * as i3 from "../icon/icon.component";
11
+ /**
12
+ * @description
13
+ * Norwegian Tooltip Component | Functional | Beta
14
+ */
15
+ export class TooltipComponent extends NasComponentBase {
16
+ constructor(deviceHelper) {
17
+ super('nas-tooltip');
18
+ this.deviceHelper = deviceHelper;
19
+ this.innerWidth = window.innerWidth;
20
+ }
21
+ onMouseEnter() {
22
+ if (this.hostListenerIgnored) {
23
+ return;
24
+ }
25
+ this.enabled = true;
26
+ setTimeout(() => {
27
+ this.adjustTooltipPosition();
28
+ });
29
+ }
30
+ onMouseLeave() {
31
+ if (this.hostListenerIgnored) {
32
+ return;
33
+ }
34
+ this.enabled = false;
35
+ }
36
+ onResize() {
37
+ this.innerWidth = window.innerWidth;
38
+ }
39
+ ngOnInit() {
40
+ //If "enabled" attribute exists, ignore hostlistener
41
+ this.hostListenerIgnored = this.exists(this.enabled);
42
+ this.enabled = true;
43
+ }
44
+ ngAfterViewInit() {
45
+ setTimeout(() => {
46
+ if (this.hostListenerIgnored) {
47
+ this.renderViewHostListenerIgnoredOnInit();
48
+ return;
49
+ }
50
+ this.adjustTooltipPosition();
51
+ this.enabled = false;
52
+ });
53
+ }
54
+ getClasses(element, modifiers) {
55
+ const classes = [this.getClass(element, modifiers)];
56
+ return classes;
57
+ }
58
+ onClickClose() {
59
+ this.enabled = false;
60
+ }
61
+ onClickOpenMobileView() {
62
+ if (!this.deviceHelper.isMobileWidth()) {
63
+ return;
64
+ }
65
+ this.enabled = true;
66
+ }
67
+ adjustTooltipPosition() {
68
+ if (!this.tooltip || !this.content) {
69
+ return;
70
+ }
71
+ const tooltipElement = this.tooltip.nativeElement;
72
+ const contentElement = this.content.nativeElement;
73
+ const rect = tooltipElement.getBoundingClientRect();
74
+ const toolTipLeftPosition = rect?.left;
75
+ const toolTipRightPosition = rect?.right;
76
+ if (toolTipLeftPosition < 0) {
77
+ this.left = true;
78
+ }
79
+ if (toolTipRightPosition > this.innerWidth) {
80
+ const contentWidth = contentElement.getBoundingClientRect()?.width;
81
+ tooltipElement.style.right = `${contentWidth / 2}px`;
82
+ this.right = true;
83
+ }
84
+ }
85
+ renderViewHostListenerIgnoredOnInit() {
86
+ if (this.exists(this.left)) {
87
+ this.left = true;
88
+ }
89
+ if (this.exists(this.right)) {
90
+ this.right = true;
91
+ const tooltipElement = this.tooltip?.nativeElement;
92
+ const contentElement = this.content?.nativeElement;
93
+ if (tooltipElement && contentElement) {
94
+ const contentWidth = contentElement.getBoundingClientRect()?.width;
95
+ tooltipElement.style.right = `${contentWidth / 2}px`;
96
+ }
97
+ }
98
+ }
99
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TooltipComponent, deps: [{ token: i1.DeviceHelper }], target: i0.ɵɵFactoryTarget.Component }); }
100
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TooltipComponent, selector: "nas-tooltip", inputs: { text: "text", enabled: "enabled", left: "left", right: "right" }, host: { listeners: { "mouseenter": "onMouseEnter()", "mouseleave": "onMouseLeave()", "window:resize": "onResize($event)" } }, viewQueries: [{ propertyName: "tooltip", first: true, predicate: ["tooltip"], descendants: true }, { propertyName: "content", first: true, predicate: ["content"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div [nasClass]=\"getClasses('')\">\n <div [hidden]=\"!text || !enabled\" [nasClass]=\"getClasses('tooltip', [left && 'left', right && 'right'])\" #tooltip>\n <button [nasClass]=\"getClasses('close')\" (click)=\"onClickClose()\">\n <nas-icon [icon]=\"'close--light'\" [type]=\"'small'\"></nas-icon>\n </button>\n <p [nasClass]=\"getClasses('text')\">{{text}}</p>\n <span [nasClass]=\"getClasses('tooltip--arrow', [left && 'left', right && 'right'])\"></span>\n </div>\n <div [nasClass]=\"getClasses('content')\" #content (click)=\"onClickOpenMobileView()\">\n <ng-content></ng-content>\n </div>\n</div>", styles: ["@keyframes fade-in{0%{opacity:0}}@keyframes fade-in-down{0%{opacity:0;transform:translateY(-30px)}}@keyframes fade-in-left{0%{opacity:0;transform:translate(-30px)}}@keyframes fade-in-right{0%{opacity:0;transform:translate(30px)}}@keyframes fade-out{to{opacity:0}}@keyframes flip-in{0%{opacity:0;transform:rotateX(-90deg)}40%{opacity:1;transform:rotateX(10deg)}}@keyframes flip-out{to{opacity:0;transform:rotateX(-90deg)}}@keyframes pop-in-from-top{0%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-100,1,1);opacity:0}6.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-30.227,1,1)}13.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,1.76,1,1)}20%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,7.08,1,1)}26.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,3.838,1,1)}33.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.902,1,1);opacity:1}40%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.237,1,1)}46.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.312,1,1)}53.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.141,1,1)}60%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.021,1,1)}66.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.015,1,1)}73.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.013,1,1)}80%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.005,1,1)}86.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,0,1,1)}93.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.001,1,1);-webkit-transform:translate3d(0,0,0)}to{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.001,1,1);-webkit-transform:translate3d(0,0,0)}}:host{display:block;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}.nas-tooltip{position:relative}.nas-tooltip__tooltip{position:absolute;bottom:100%;left:50%;transform:translate(-50%) translateY(-16px);background-color:#15273f;padding:16px;width:-webkit-max-content;width:max-content;max-width:250px}.nas-tooltip__tooltip--left{transform:translate(0) translateY(-16px)}.nas-tooltip__tooltip--right{transform:translate(0) translateY(-16px);left:unset}.nas-tooltip__tooltip--arrow{position:absolute;display:block;bottom:-8px;left:50%;transform:translate(-50%) rotate(45deg);border-top:24px solid #15273F;border-right:24px solid #15273F}.nas-tooltip__tooltip--arrow--left{transform:translate(0) rotate(0);left:0;bottom:-12px;border-top:16px solid #15273F;border-right:24px solid transparent}.nas-tooltip__tooltip--arrow--right{transform:translate(0) rotate(0);left:unset;right:0;bottom:-12px;border-top:16px solid #15273F;border-left:24px solid transparent;border-right:0}.nas-tooltip__text{font-size:14px;line-height:20px;color:#fff;margin:0}.nas-tooltip__close{float:right;height:auto;display:block}@media (min-width: 640px){.nas-tooltip__close{display:none}}.nas-tooltip__close ::ng-deep nas-icon,.nas-tooltip__close ::ng-deep .nas-icon-small{display:block;height:16px;width:16px;margin:0}\n"], dependencies: [{ kind: "directive", type: i2.NasClassDirective, selector: "[nasClass]", inputs: ["nasClass", "attr.class"] }, { kind: "component", type: i3.IconComponent, selector: "nas-icon", inputs: ["icon", "type", "isIndicator", "lightCircularBackground", "cssClass"] }] }); }
101
+ }
102
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TooltipComponent, decorators: [{
103
+ type: Component,
104
+ args: [{ selector: 'nas-tooltip', template: "<div [nasClass]=\"getClasses('')\">\n <div [hidden]=\"!text || !enabled\" [nasClass]=\"getClasses('tooltip', [left && 'left', right && 'right'])\" #tooltip>\n <button [nasClass]=\"getClasses('close')\" (click)=\"onClickClose()\">\n <nas-icon [icon]=\"'close--light'\" [type]=\"'small'\"></nas-icon>\n </button>\n <p [nasClass]=\"getClasses('text')\">{{text}}</p>\n <span [nasClass]=\"getClasses('tooltip--arrow', [left && 'left', right && 'right'])\"></span>\n </div>\n <div [nasClass]=\"getClasses('content')\" #content (click)=\"onClickOpenMobileView()\">\n <ng-content></ng-content>\n </div>\n</div>", styles: ["@keyframes fade-in{0%{opacity:0}}@keyframes fade-in-down{0%{opacity:0;transform:translateY(-30px)}}@keyframes fade-in-left{0%{opacity:0;transform:translate(-30px)}}@keyframes fade-in-right{0%{opacity:0;transform:translate(30px)}}@keyframes fade-out{to{opacity:0}}@keyframes flip-in{0%{opacity:0;transform:rotateX(-90deg)}40%{opacity:1;transform:rotateX(10deg)}}@keyframes flip-out{to{opacity:0;transform:rotateX(-90deg)}}@keyframes pop-in-from-top{0%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-100,1,1);opacity:0}6.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-30.227,1,1)}13.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,1.76,1,1)}20%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,7.08,1,1)}26.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,3.838,1,1)}33.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.902,1,1);opacity:1}40%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.237,1,1)}46.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.312,1,1)}53.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.141,1,1)}60%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.021,1,1)}66.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.015,1,1)}73.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.013,1,1)}80%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.005,1,1)}86.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,0,1,1)}93.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.001,1,1);-webkit-transform:translate3d(0,0,0)}to{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.001,1,1);-webkit-transform:translate3d(0,0,0)}}:host{display:block;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}.nas-tooltip{position:relative}.nas-tooltip__tooltip{position:absolute;bottom:100%;left:50%;transform:translate(-50%) translateY(-16px);background-color:#15273f;padding:16px;width:-webkit-max-content;width:max-content;max-width:250px}.nas-tooltip__tooltip--left{transform:translate(0) translateY(-16px)}.nas-tooltip__tooltip--right{transform:translate(0) translateY(-16px);left:unset}.nas-tooltip__tooltip--arrow{position:absolute;display:block;bottom:-8px;left:50%;transform:translate(-50%) rotate(45deg);border-top:24px solid #15273F;border-right:24px solid #15273F}.nas-tooltip__tooltip--arrow--left{transform:translate(0) rotate(0);left:0;bottom:-12px;border-top:16px solid #15273F;border-right:24px solid transparent}.nas-tooltip__tooltip--arrow--right{transform:translate(0) rotate(0);left:unset;right:0;bottom:-12px;border-top:16px solid #15273F;border-left:24px solid transparent;border-right:0}.nas-tooltip__text{font-size:14px;line-height:20px;color:#fff;margin:0}.nas-tooltip__close{float:right;height:auto;display:block}@media (min-width: 640px){.nas-tooltip__close{display:none}}.nas-tooltip__close ::ng-deep nas-icon,.nas-tooltip__close ::ng-deep .nas-icon-small{display:block;height:16px;width:16px;margin:0}\n"] }]
105
+ }], ctorParameters: function () { return [{ type: i1.DeviceHelper }]; }, propDecorators: { tooltip: [{
106
+ type: ViewChild,
107
+ args: ['tooltip', { static: false }]
108
+ }], content: [{
109
+ type: ViewChild,
110
+ args: ['content', { static: false }]
111
+ }], text: [{
112
+ type: Input
113
+ }], enabled: [{
114
+ type: Input
115
+ }], left: [{
116
+ type: Input
117
+ }], right: [{
118
+ type: Input
119
+ }], onMouseEnter: [{
120
+ type: HostListener,
121
+ args: ['mouseenter']
122
+ }], onMouseLeave: [{
123
+ type: HostListener,
124
+ args: ['mouseleave']
125
+ }], onResize: [{
126
+ type: HostListener,
127
+ args: ['window:resize', ['$event']]
128
+ }] } });
129
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL3Rvb2x0aXAvdG9vbHRpcC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL3Rvb2x0aXAvdG9vbHRpcC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7O0dBR0c7QUFDSCxPQUFPLEVBQWlCLFNBQVMsRUFBYyxZQUFZLEVBQUUsS0FBSyxFQUFVLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU3RyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxZQUFZLENBQUM7Ozs7O0FBRzlDOzs7R0FHRztBQU9ILE1BQU0sT0FBTyxnQkFBaUIsU0FBUSxnQkFBZ0I7SUFtQ3BELFlBQW9CLFlBQTBCO1FBQzVDLEtBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQztRQURILGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBRnRDLGVBQVUsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDO0lBSXZDLENBQUM7SUFHRCxZQUFZO1FBQ1YsSUFBRyxJQUFJLENBQUMsbUJBQW1CLEVBQUU7WUFDekIsT0FBTztTQUNWO1FBQ0QsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7UUFDcEIsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNaLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1FBQ2pDLENBQUMsQ0FBQyxDQUFBO0lBQ0osQ0FBQztJQUdELFlBQVk7UUFDVixJQUFHLElBQUksQ0FBQyxtQkFBbUIsRUFBRTtZQUN6QixPQUFPO1NBQ1Y7UUFDRCxJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztJQUN2QixDQUFDO0lBR0QsUUFBUTtRQUNOLElBQUksQ0FBQyxVQUFVLEdB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SjtJQUNILENBQUM7K0dBdklVLGdCQUFnQjttR0FBaEIsZ0JBQWdCLDZjQ25CN0Isc3BCQVdNOzs0RkRRTyxnQkFBZ0I7a0JBTDVCLFNBQVM7K0JBQ0UsYUFBYTttR0FLZ0IsT0FBTztzQkFBL0MsU0FBUzt1QkFBQyxTQUFTLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFO2dCQUNFLE9BQU87c0JBQS9DLFNBQVM7dUJBQUMsU0FBUyxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTtnQkFPNUIsSUFBSTtzQkFBWixLQUFLO2dCQU9HLE9BQU87c0JBQWYsS0FBSztnQkFPRyxJQUFJO3NCQUFaLEtBQUs7Z0JBT0csS0FBSztzQkFBYixLQUFLO2dCQVVOLFlBQVk7c0JBRFosWUFBWTt1QkFBQyxZQUFZO2dCQVl6QixZQUFZO3NCQURYLFlBQVk7dUJBQUMsWUFBWTtnQkFTMUIsUUFBUTtzQkFEUCxZQUFZO3VCQUFDLGVBQWUsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBOb3J3ZWdpYW4gQWlyIFNodXR0bGUuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKi9cbmltcG9ydCB7IEFmdGVyVmlld0luaXQsIENvbXBvbmVudCwgRWxlbWVudFJlZiwgSG9zdExpc3RlbmVyLCBJbnB1dCwgT25Jbml0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENsYXNzTW9kZWwgfSBmcm9tICcuLi8uLi9jb3JlL21vZGVscy9jbGFzcy5tb2RlbCc7XG5pbXBvcnQgeyBOYXNDb21wb25lbnRCYXNlIH0gZnJvbSAnLi4vLi4vY29yZSc7XG5pbXBvcnQgeyBEZXZpY2VIZWxwZXIgfSBmcm9tICcuLi8uLi9jb3JlL3NlcnZpY2VzL2RldmljZS9kZXZpY2UtaGVscGVyLnNlcnZpY2UnO1xuXG4vKipcbiAqIEBkZXNjcmlwdGlvblxuICogTm9yd2VnaWFuIFRvb2x0aXAgQ29tcG9uZW50IHwgRnVuY3Rpb25hbCB8IEJldGFcbiAqL1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICduYXMtdG9vbHRpcCcsXG4gIHRlbXBsYXRlVXJsOiAnLi90b29sdGlwLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdG9vbHRpcC5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIFRvb2x0aXBDb21wb25lbnQgZXh0ZW5kcyBOYXNDb21wb25lbnRCYXNlIGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0IHtcbkBWaWV3Q2hpbGQoJ3Rvb2x0aXAnLCB7IHN0YXRpYzogZmFsc2UgfSkgdG9vbHRpcDogRWxlbWVudFJlZjtcbkBWaWV3Q2hpbGQoJ2NvbnRlbnQnLCB7IHN0YXRpYzogZmFsc2UgfSkgY29udGVudDogRWxlbWVudFJlZjtcblxuICAvKipcbiAgKiBAcHJvcGVydHkgSW5wdXRcbiAgKiBAZGVzY3JpcHRpb25cbiAgKiBTZXRzIHRleHQgb24gdGhlIHRvb2x0aXAuXG4gICovXG4gIEBJbnB1dCgpIHRleHQ6IHN0cmluZztcblxuICAvKipcbiAgKiBAcHJvcGVydHkgSW5wdXRcbiAgKiBAZGVzY3JpcHRpb25cbiAgKiBEaXNwbGF5cyB0aGUgdG9vbHRpcCwgaG92ZXIgbGlzdGVuZXIgd2lsbCBiZSBpZ25vcmVkXG4gICovXG4gIEBJbnB1dCgpIGVuYWJsZWQ6IGJvb2xlYW47XG5cbiAvKipcbiAgKiBAcHJvcGVydHkgSW5wdXRcbiAgKiBAZGVzY3JpcHRpb25cbiAgKiBTZXRzIGxlZnQgc3R5bGluZyBmb3IgdG9vbCB0aXAsIGF1dG8gcG9zaXRpb25pbmcgb24gc2NyZWVuIHNpemUgd2lsbCBiZSBpZ25vcmVkIFxuICAqL1xuICBASW5wdXQoKSBsZWZ0OiBib29sZWFuO1xuXG4gIC8qKlxuICAqIEBwcm9wZXJ0eSBJbnB1dFxuICAqIEBkZXNjcmlwdGlvblxuICAqIFNldHMgcmlnaHQgc3R5bGluZyBmb3IgdG9vbCB0aXAsIGF1dG8gcG9zaXRpb25pbmcgb24gc2NyZWVuIHNpemUgd2lsbCBiZSBpZ25vcmVkXG4gICovXG4gIEBJbnB1dCgpIHJpZ2h0OiBib29sZWFuO1xuXG4gIHByaXZhdGUgaG9zdExpc3RlbmVySWdub3JlZDogYm9vbGVhbjtcbiAgcHJpdmF0ZSBpbm5lcldpZHRoID0gd2luZG93LmlubmVyV2lkdGg7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBkZXZpY2VIZWxwZXI6IERldmljZUhlbHBlcikge1xuICAgIHN1cGVyKCduYXMtdG9vbHRpcCcpO1xuICB9XG5cbiBASG9zdExpc3RlbmVyKCdtb3VzZWVudGVyJylcbiAgb25Nb3VzZUVudGVyKCkge1xuICAgIGlmKHRoaXMuaG9zdExpc3RlbmVySWdub3JlZCkge1xuICAgICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuZW5hYmxlZCA9IHRydWU7XG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIHRoaXMuYWRqdXN0VG9vbHRpcFBvc2l0aW9uKCk7XG4gICAgfSlcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ21vdXNlbGVhdmUnKVxuICBvbk1vdXNlTGVhdmUoKSB7XG4gICAgaWYodGhpcy5ob3N0TGlzdGVuZXJJZ25vcmVkKSB7XG4gICAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5lbmFibGVkID0gZmFsc2U7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCd3aW5kb3c6cmVzaXplJywgWyckZXZlbnQnXSlcbiAgb25SZXNpemUoKSB7XG4gICAgdGhpcy5pbm5lcldpZHRoID0gd2luZG93LmlubmVyV2lkdGg7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAvL0lmIFwiZW5hYmxlZFwiIGF0dHJpYnV0ZSBleGlzdHMsIGlnbm9yZSBob3N0bGlzdGVuZXJcbiAgICB0aGlzLmhvc3RMaXN0ZW5lcklnbm9yZWQgPSB0aGlzLmV4aXN0cyh0aGlzLmVuYWJsZWQpO1xuICAgIHRoaXMuZW5hYmxlZCA9IHRydWU7XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICBpZih0aGlzLmhvc3RMaXN0ZW5lcklnbm9yZWQpIHtcbiAgICAgICAgICB0aGlzLnJlbmRlclZpZXdIb3N0TGlzdGVuZXJJZ25vcmVkT25Jbml0KCk7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgdGhpcy5hZGp1c3RUb29sdGlwUG9zaXRpb24oKTtcbiAgICAgIHRoaXMuZW5hYmxlZCA9IGZhbHNlO1xuICAgIH0pXG4gIH1cblxuICBnZXRDbGFzc2VzKGVsZW1lbnQ/OiBzdHJpbmcsIG1vZGlmaWVycz86IGFueSk6IEFycmF5PENsYXNzTW9kZWw+IHtcbiAgICAgIGNvbnN0IGNsYXNzZXM6IEFycmF5PENsYXNzTW9kZWw+ID0gW3RoaXMuZ2V0Q2xhc3MoZWxlbWVudCwgbW9kaWZpZXJzKV07XG4gICAgICByZXR1cm4gY2xhc3NlcztcbiAgfVxuXG4gIG9uQ2xpY2tDbG9zZSgpOiB2b2lkIHtcbiAgICB0aGlzLmVuYWJsZWQgPSBmYWxzZTtcbiAgfVxuXG4gIG9uQ2xpY2tPcGVuTW9iaWxlVmlldygpOiB2b2lkIHtcbiAgICBpZighdGhpcy5kZXZpY2VIZWxwZXIuaXNNb2JpbGVXaWR0aCgpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuZW5hYmxlZCA9IHRydWU7XG4gIH1cblxuICBwcml2YXRlIGFkanVzdFRvb2x0aXBQb3NpdGlvbigpOiB2b2lkIHtcbiAgICBpZighdGhpcy50b29sdGlwIHx8ICF0aGlzLmNvbnRlbnQpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IHRvb2x0aXBFbGVtZW50ID0gdGhpcy50b29sdGlwLm5hdGl2ZUVsZW1lbnQ7XG4gICAgY29uc3QgY29udGVudEVsZW1lbnQgPSB0aGlzLmNvbnRlbnQubmF0aXZlRWxlbWVudDtcblxuICAgIGNvbnN0IHJlY3QgPSB0b29sdGlwRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICBjb25zdCB0b29sVGlwTGVmdFBvc2l0aW9uID0gcmVjdD8ubGVmdDtcbiAgICBjb25zdCB0b29sVGlwUmlnaHRQb3NpdGlvbiA9IHJlY3Q/LnJpZ2h0O1xuXG4gICAgaWYodG9vbFRpcExlZnRQb3NpdGlvbiA8IDApIHtcbiAgICAgICAgdGhpcy5sZWZ0ID0gdHJ1ZTtcbiAgICB9XG5cbiAgICBpZih0b29sVGlwUmlnaHRQb3NpdGlvbiA+IHRoaXMuaW5uZXJXaWR0aCkge1xuICAgICAgICBjb25zdCBjb250ZW50V2lkdGggPSBjb250ZW50RWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKT8ud2lkdGg7XG4gICAgICAgIHRvb2x0aXBFbGVtZW50LnN0eWxlLnJpZ2h0ID0gYCR7Y29udGVudFdpZHRoLzJ9cHhgO1xuICAgICAgICB0aGlzLnJpZ2h0ID0gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHJlbmRlclZpZXdIb3N0TGlzdGVuZXJJZ25vcmVkT25Jbml0KCk6IHZvaWQge1xuICAgIGlmKHRoaXMuZXhpc3RzKHRoaXMubGVmdCkpIHtcbiAgICAgICAgdGhpcy5sZWZ0ID0gdHJ1ZTtcbiAgICB9XG5cbiAgICBpZih0aGlzLmV4aXN0cyh0aGlzLnJpZ2h0KSkge1xuICAgICAgICB0aGlzLnJpZ2h0ID0gdHJ1ZTtcblxuICAgICAgICBjb25zdCB0b29sdGlwRWxlbWVudCA9IHRoaXMudG9vbHRpcD8ubmF0aXZlRWxlbWVudDtcbiAgICAgICAgY29uc3QgY29udGVudEVsZW1lbnQgPSB0aGlzLmNvbnRlbnQ/Lm5hdGl2ZUVsZW1lbnQ7XG5cbiAgICAgICAgaWYodG9vbHRpcEVsZW1lbnQgJiYgY29udGVudEVsZW1lbnQpIHtcbiAgICAgICAgICAgIGNvbnN0IGNvbnRlbnRXaWR0aCA9IGNvbnRlbnRFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpPy53aWR0aDtcbiAgICAgICAgICAgIHRvb2x0aXBFbGVtZW50LnN0eWxlLnJpZ2h0ID0gYCR7Y29udGVudFdpZHRoLzJ9cHhgO1xuICAgICAgICB9XG4gICAgfVxuICB9XG59IiwiPGRpdiBbbmFzQ2xhc3NdPVwiZ2V0Q2xhc3NlcygnJylcIj5cbiAgICA8ZGl2IFtoaWRkZW5dPVwiIXRleHQgfHwgIWVuYWJsZWRcIiBbbmFzQ2xhc3NdPVwiZ2V0Q2xhc3NlcygndG9vbHRpcCcsIFtsZWZ0ICYmICdsZWZ0JywgcmlnaHQgJiYgJ3JpZ2h0J10pXCIgI3Rvb2x0aXA+XG4gICAgICAgIDxidXR0b24gW25hc0NsYXNzXT1cImdldENsYXNzZXMoJ2Nsb3NlJylcIiAoY2xpY2spPVwib25DbGlja0Nsb3NlKClcIj5cbiAgICAgICAgICAgIDxuYXMtaWNvbiBbaWNvbl09XCInY2xvc2UtLWxpZ2h0J1wiIFt0eXBlXT1cIidzbWFsbCdcIj48L25hcy1pY29uPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPHAgW25hc0NsYXNzXT1cImdldENsYXNzZXMoJ3RleHQnKVwiPnt7dGV4dH19PC9wPlxuICAgICAgICA8c3BhbiBbbmFzQ2xhc3NdPVwiZ2V0Q2xhc3NlcygndG9vbHRpcC0tYXJyb3cnLCBbbGVmdCAmJiAnbGVmdCcsIHJpZ2h0ICYmICdyaWdodCddKVwiPjwvc3Bhbj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IFtuYXNDbGFzc109XCJnZXRDbGFzc2VzKCdjb250ZW50JylcIiAjY29udGVudCAoY2xpY2spPVwib25DbGlja09wZW5Nb2JpbGVWaWV3KClcIj5cbiAgICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgIDwvZGl2PlxuPC9kaXY+Il19
@@ -0,0 +1,30 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { TooltipComponent } from './tooltip.component';
4
+ import { IconModule } from '../icon';
5
+ import { NasClassModule } from '../../core/directives/nas-class/nas-class.module';
6
+ import { DeviceHelper } from '../../core/services/device/device-helper.service';
7
+ import * as i0 from "@angular/core";
8
+ export class TooltipModule {
9
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TooltipModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
10
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: TooltipModule, declarations: [TooltipComponent], imports: [CommonModule,
11
+ NasClassModule,
12
+ IconModule], exports: [TooltipComponent] }); }
13
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TooltipModule, providers: [DeviceHelper], imports: [CommonModule,
14
+ NasClassModule,
15
+ IconModule] }); }
16
+ }
17
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TooltipModule, decorators: [{
18
+ type: NgModule,
19
+ args: [{
20
+ declarations: [TooltipComponent],
21
+ imports: [
22
+ CommonModule,
23
+ NasClassModule,
24
+ IconModule
25
+ ],
26
+ exports: [TooltipComponent],
27
+ providers: [DeviceHelper]
28
+ }]
29
+ }] });
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL3Rvb2x0aXAvdG9vbHRpcC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdkQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUNyQyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFDbEYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGtEQUFrRCxDQUFDOztBQVloRixNQUFNLE9BQU8sYUFBYTsrR0FBYixhQUFhO2dIQUFiLGFBQWEsaUJBVFQsZ0JBQWdCLGFBRTdCLFlBQVk7WUFDWixjQUFjO1lBQ2QsVUFBVSxhQUVGLGdCQUFnQjtnSEFHZixhQUFhLGFBRmIsQ0FBQyxZQUFZLENBQUMsWUFMdkIsWUFBWTtZQUNaLGNBQWM7WUFDZCxVQUFVOzs0RkFLRCxhQUFhO2tCQVZ6QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLGdCQUFnQixDQUFDO29CQUNoQyxPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixjQUFjO3dCQUNkLFVBQVU7cUJBQ1g7b0JBQ0QsT0FBTyxFQUFFLENBQUMsZ0JBQWdCLENBQUM7b0JBQzNCLFNBQVMsRUFBRSxDQUFDLFlBQVksQ0FBQztpQkFDMUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IFRvb2x0aXBDb21wb25lbnQgfSBmcm9tICcuL3Rvb2x0aXAuY29tcG9uZW50JztcbmltcG9ydCB7IEljb25Nb2R1bGUgfSBmcm9tICcuLi9pY29uJztcbmltcG9ydCB7IE5hc0NsYXNzTW9kdWxlIH0gZnJvbSAnLi4vLi4vY29yZS9kaXJlY3RpdmVzL25hcy1jbGFzcy9uYXMtY2xhc3MubW9kdWxlJztcbmltcG9ydCB7IERldmljZUhlbHBlciB9IGZyb20gJy4uLy4uL2NvcmUvc2VydmljZXMvZGV2aWNlL2RldmljZS1oZWxwZXIuc2VydmljZSc7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1Rvb2x0aXBDb21wb25lbnRdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIE5hc0NsYXNzTW9kdWxlLFxuICAgIEljb25Nb2R1bGVcbiAgXSxcbiAgZXhwb3J0czogW1Rvb2x0aXBDb21wb25lbnRdLFxuICBwcm92aWRlcnM6IFtEZXZpY2VIZWxwZXJdXG59KVxuZXhwb3J0IGNsYXNzIFRvb2x0aXBNb2R1bGUgeyB9Il19