@eui/mobile-core 18.0.0-next.15 → 18.0.0-next.17

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.
Files changed (21) hide show
  1. package/docs/components/EuimChipSelectorComponent.html +3 -3
  2. package/docs/components/EuimLanguageListComponent.html +1 -1
  3. package/docs/components/EuimMultiselectFilterComponent.html +1 -1
  4. package/docs/components/EuimToolbarDatepickerComponent.html +1 -8
  5. package/docs/dependencies.html +4 -4
  6. package/docs/js/search/search_index.js +2 -2
  7. package/esm2022/lib/components/euim-alert-message/euim-alert-messsage.component.mjs +2 -2
  8. package/esm2022/lib/components/euim-chip-selector/euim-chip-selector.component.mjs +5 -4
  9. package/esm2022/lib/components/euim-data-summary/euim-data-summary.component.mjs +2 -2
  10. package/esm2022/lib/components/euim-multiselect/euim-multiselect-filter/euim-multiselect-filter.component.mjs +3 -3
  11. package/esm2022/lib/components/euim-search-bar/euim-search-bar.component.mjs +3 -3
  12. package/esm2022/lib/components/euim-toolbar-datepicker/euim-toolbar-datepicker.component.mjs +3 -7
  13. package/esm2022/lib/components/layout/euim-header-details/euim-header-details.component.mjs +2 -2
  14. package/esm2022/lib/components/layout/euim-language-selector/euim-language-list.component.mjs +3 -3
  15. package/fesm2022/eui-mobile-core.mjs +16 -20
  16. package/fesm2022/eui-mobile-core.mjs.map +1 -1
  17. package/lib/components/euim-chip-selector/euim-chip-selector.component.d.ts +2 -2
  18. package/lib/components/euim-chip-selector/euim-chip-selector.component.d.ts.map +1 -1
  19. package/lib/components/euim-toolbar-datepicker/euim-toolbar-datepicker.component.d.ts +0 -4
  20. package/lib/components/euim-toolbar-datepicker/euim-toolbar-datepicker.component.d.ts.map +1 -1
  21. package/package.json +1 -1
@@ -8,10 +8,6 @@ import * as i4 from "../euim-avatar/euim-avatar.component";
8
8
  import * as i5 from "../euim-avatar/euim-avatar-icon/euim-avatar-icon.component";
9
9
  import * as i6 from "../atoms/euim-label/euim-label.component";
10
10
  import * as i7 from "@angular/forms";
11
- /**
12
- * This component is not ready yet for production
13
- * @beta
14
- */
15
11
  export class EuimToolbarDatepickerComponent {
16
12
  get cssClasses() {
17
13
  return this.getCssClasses();
@@ -113,7 +109,7 @@ export class EuimToolbarDatepickerComponent {
113
109
  this.weekDayName = this.weekdays[this.currentDate.getDay()];
114
110
  }
115
111
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: EuimToolbarDatepickerComponent, deps: [{ token: i1.BaseStatesDirective }, { token: i2.TranslateService }, { token: i3.ModalController }], target: i0.ɵɵFactoryTarget.Component }); }
116
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: EuimToolbarDatepickerComponent, selector: "euim-toolbar-datepicker", inputs: { icon: "icon", title: "title", subTitle: "subTitle", euimPrevBtnDisabled: ["euimPrevBtnDisabled", "euimPrevBtnDisabled", booleanAttribute], euimNextBtnDisabled: ["euimNextBtnDisabled", "euimNextBtnDisabled", booleanAttribute], euimReadOnly: ["euimReadOnly", "euimReadOnly", booleanAttribute], selectDateBy: "selectDateBy" }, outputs: { prevBtnClick: "prevBtnClick", nextBtnClick: "nextBtnClick", dateChanged: "dateChanged" }, host: { listeners: { "window:popstate": "dismissModal($event)" }, properties: { "class": "this.cssClasses" } }, hostDirectives: [{ directive: i1.BaseStatesDirective, inputs: ["color", "color"] }], ngImport: i0, template: "<ion-item class=\"euim-toolbar-datepicker__item\" color=\"branding\">\n <euim-avatar fill=\"clear\" slot=\"start\" >\n <euim-avatar-icon>\n <ion-icon [name]=\"icon\"\n class=\"euim-toolbar-datepicker__calendar\"></ion-icon>\n </euim-avatar-icon>\n </euim-avatar>\n @if (!euimReadOnly){\n <ion-datetime-button class=\"euim-toolbar-datepicker__datetime-button--hidden\"\n [datetime]=\"dateTimeId\">\n </ion-datetime-button>\n }\n <div class=\"euim-toolbar-datepicker__datetime-button\" [id]=\"modalId\" [style.cursor]=\"(!euimReadOnly) ? 'pointer' : 'auto'\">\n <ion-label class=\"euim-toolbar-datepicker__date\">\n <div class=\"euim-toolbar-datepicker__title\"\n euimLabel\n euimLabelTitle\n euimLabelTruncate\n disabled=\"euimReadOnly\">{{!title ? weekDayName : title}}</div>\n\n <div euimLabel\n euimLabelSubTitle\n euimLabelTruncate\n disabled=\"euimReadOnly\">{{!subTitle ? formattedDate : subTitle}}</div>\n </ion-label>\n @if (!euimReadOnly){\n <ion-icon class=\"euim-toolbar-datepicker__datetime-caret\"\n name=\"caret-down-sharp\"\n color=\"light\"></ion-icon>\n }\n </div>\n\n @if (!euimReadOnly) {\n <ion-buttons slot=\"end\">\n <ion-button (click)=\"selectPrevDate()\"\n [disabled] = \"euimPrevBtnDisabled\"\n shape=\"round\"\n class=\"euim-toolbar-datepicker__nav-button\">\n <ion-icon name=\"chevron-back-circle-sharp\"\n color=\"light\">\n </ion-icon>\n </ion-button>\n <ion-button\n (click)=\"selectNextDate()\"\n [disabled]=\"euimNextBtnDisabled\"\n shape=\"round\"\n class=\"euim-toolbar-datepicker__nav-button euim-toolbar-datepicker__nav-button--next\">\n <ion-icon name=\"chevron-forward-circle-sharp\"\n color=\"light\"></ion-icon>\n </ion-button>\n </ion-buttons>\n }\n</ion-item>\n\n@if (!euimReadOnly){\n<ion-modal [keepContentsMounted]=\"true\"\n [trigger]=\"modalId\">\n <ng-template>\n <ion-datetime\n [showDefaultButtons]=\"true\"\n (ionChange)=\"calendarDateChanged($event)\"\n size=\"cover\"\n [id]=\"dateTimeId\"\n [locale]=\"currentLang\"\n [(ngModel)]=\"selectedDate\"></ion-datetime>\n </ng-template>\n</ion-modal>\n}\n", styles: [".euim-toolbar-datepicker{--inner-padding-end: var(--eui-s-xs)}.euim-toolbar-datepicker ion-item:has(ion-buttons ion-button ion-icon){--inner-padding-end: var(--eui-s-2xs)}.euim-toolbar-datepicker ion-item ion-buttons[slot=end]{margin-inline-start:0}.euim-toolbar-datepicker__datetime_icon{margin-left:var(--eui-s-l);margin-right:var(--eui-s-l);width:var(--eui-is-xl);height:var(--eui-is-xl)}.euim-toolbar-datepicker__datetime-button{display:flex;align-items:center;height:100%;width:100%;padding-top:var(--eui-s-s);padding-bottom:var(--eui-s-s)}.euim-toolbar-datepicker__datetime-button--hidden{display:none}.euim-toolbar-datepicker__datetime-caret{margin-left:var(--eui-s-xs)!important;margin-right:var(--eui-s-xs)!important;width:var(--eui-s-m);height:var(--eui-s-m);flex-shrink:0}.euim-toolbar-datepicker__nav-button ion-icon{width:var(--eui-is-l);height:var(--eui-is-l)}.euim-toolbar-datepicker__date{flex:0 1 auto}.euim-toolbar-datepicker--primary .euim-toolbar-datepicker__calendar,.euim-toolbar-datepicker--primary .euim-label{color:var(--eui-c-branding-contrast)}.euim-toolbar-datepicker--primary .euim-toolbar-datepicker__datetime-button::part(native){background:var(--eui-c-branding);color:var(--eui-c-branding-contrast)}\n"], dependencies: [{ kind: "component", type: i3.IonButton, selector: "ion-button", inputs: ["buttonType", "color", "disabled", "download", "expand", "fill", "form", "href", "mode", "rel", "routerAnimation", "routerDirection", "shape", "size", "strong", "target", "type"] }, { kind: "component", type: i3.IonButtons, selector: "ion-buttons", inputs: ["collapse"] }, { kind: "component", type: i3.IonDatetime, selector: "ion-datetime", inputs: ["cancelText", "clearText", "color", "dayValues", "disabled", "doneText", "firstDayOfWeek", "formatOptions", "highlightedDates", "hourCycle", "hourValues", "isDateEnabled", "locale", "max", "min", "minuteValues", "mode", "monthValues", "multiple", "name", "preferWheel", "presentation", "readonly", "showClearButton", "showDefaultButtons", "showDefaultTimeLabel", "showDefaultTitle", "size", "titleSelectedDatesFormatter", "value", "yearValues"] }, { kind: "component", type: i3.IonDatetimeButton, selector: "ion-datetime-button", inputs: ["color", "datetime", "disabled", "mode"] }, { kind: "component", type: i3.IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }, { kind: "component", type: i3.IonItem, selector: "ion-item", inputs: ["button", "color", "detail", "detailIcon", "disabled", "download", "href", "lines", "mode", "rel", "routerAnimation", "routerDirection", "target", "type"] }, { kind: "component", type: i3.IonLabel, selector: "ion-label", inputs: ["color", "mode", "position"] }, { kind: "component", type: i3.IonModal, selector: "ion-modal" }, { kind: "directive", type: i3.SelectValueAccessor, selector: "ion-select, ion-radio-group, ion-segment, ion-datetime" }, { kind: "component", type: i4.EuimAvatarComponent, selector: "euim-avatar", inputs: ["color", "size", "fill", "variant", "borderColor"] }, { kind: "component", type: i5.EuimAvatarIconComponent, selector: "euim-avatar-icon" }, { kind: "component", type: i6.EuimLabelComponent, selector: "div[euimLabel], p[euimLabel], span[euimLabel], euim-label", inputs: ["euimLabelTruncateWithLines", "euimLabelTitle", "euimLabelSubTitle", "euimLabelMeta", "euimLabelTruncate", "euimLabelTextWrap"] }, { kind: "directive", type: i7.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i7.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], encapsulation: i0.ViewEncapsulation.None }); }
112
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: EuimToolbarDatepickerComponent, selector: "euim-toolbar-datepicker", inputs: { icon: "icon", title: "title", subTitle: "subTitle", euimPrevBtnDisabled: ["euimPrevBtnDisabled", "euimPrevBtnDisabled", booleanAttribute], euimNextBtnDisabled: ["euimNextBtnDisabled", "euimNextBtnDisabled", booleanAttribute], euimReadOnly: ["euimReadOnly", "euimReadOnly", booleanAttribute], selectDateBy: "selectDateBy" }, outputs: { prevBtnClick: "prevBtnClick", nextBtnClick: "nextBtnClick", dateChanged: "dateChanged" }, host: { listeners: { "window:popstate": "dismissModal($event)" }, properties: { "class": "this.cssClasses" } }, hostDirectives: [{ directive: i1.BaseStatesDirective, inputs: ["color", "color"] }], ngImport: i0, template: "<ion-item class=\"euim-toolbar-datepicker__item\" color=\"branding\">\n <euim-avatar fill=\"clear\" slot=\"start\" >\n <euim-avatar-icon>\n <ion-icon [name]=\"icon\"\n class=\"euim-toolbar-datepicker__calendar\"></ion-icon>\n </euim-avatar-icon>\n </euim-avatar>\n @if (!euimReadOnly){\n <ion-datetime-button class=\"euim-toolbar-datepicker__datetime-button--hidden\"\n [datetime]=\"dateTimeId\">\n </ion-datetime-button>\n }\n <div class=\"euim-toolbar-datepicker__datetime-button\" [id]=\"modalId\" [style.cursor]=\"(!euimReadOnly) ? 'pointer' : 'auto'\">\n <ion-label class=\"euim-toolbar-datepicker__date\">\n <div class=\"euim-toolbar-datepicker__title\"\n euimLabel\n euimLabelTitle\n euimLabelTruncate\n disabled=\"euimReadOnly\">{{!title ? weekDayName : title}}</div>\n\n <div euimLabel\n euimLabelSubTitle\n euimLabelTruncate\n disabled=\"euimReadOnly\">{{!subTitle ? formattedDate : subTitle}}</div>\n </ion-label>\n @if (!euimReadOnly){\n <ion-icon class=\"euim-toolbar-datepicker__datetime-caret\"\n name=\"caret-down-sharp\"></ion-icon>\n }\n </div>\n\n @if (!euimReadOnly) {\n <ion-buttons slot=\"end\">\n <ion-button (click)=\"selectPrevDate()\"\n [disabled] = \"euimPrevBtnDisabled\"\n shape=\"round\"\n class=\"euim-toolbar-datepicker__nav-button\">\n <ion-icon name=\"chevron-back-circle-sharp\">\n </ion-icon>\n </ion-button>\n <ion-button\n (click)=\"selectNextDate()\"\n [disabled]=\"euimNextBtnDisabled\"\n shape=\"round\"\n class=\"euim-toolbar-datepicker__nav-button euim-toolbar-datepicker__nav-button--next\">\n <ion-icon name=\"chevron-forward-circle-sharp\"></ion-icon>\n </ion-button>\n </ion-buttons>\n }\n</ion-item>\n\n@if (!euimReadOnly){\n<ion-modal [keepContentsMounted]=\"true\"\n [trigger]=\"modalId\">\n <ng-template>\n <ion-datetime\n [showDefaultButtons]=\"true\"\n (ionChange)=\"calendarDateChanged($event)\"\n size=\"cover\"\n [id]=\"dateTimeId\"\n [locale]=\"currentLang\"\n [(ngModel)]=\"selectedDate\"></ion-datetime>\n </ng-template>\n</ion-modal>\n}\n", styles: [".euim-toolbar-datepicker{--inner-padding-end: var(--eui-s-xs)}.euim-toolbar-datepicker ion-item:has(ion-buttons ion-button ion-icon){--inner-padding-end: var(--eui-s-2xs)}.euim-toolbar-datepicker ion-item ion-buttons[slot=end]{margin-inline-start:0}.euim-toolbar-datepicker__datetime_icon{margin-left:var(--eui-s-l);margin-right:var(--eui-s-l);width:var(--eui-is-xl);height:var(--eui-is-xl)}.euim-toolbar-datepicker__datetime-button{display:flex;align-items:center;height:100%;width:100%;padding-top:var(--eui-s-s);padding-bottom:var(--eui-s-s)}.euim-toolbar-datepicker__datetime-button--hidden{display:none}.euim-toolbar-datepicker__datetime-caret{margin-left:var(--eui-s-xs)!important;margin-right:var(--eui-s-xs)!important;width:var(--eui-s-m);height:var(--eui-s-m);flex-shrink:0;color:var(--eui-c-branding-contrast)}.euim-toolbar-datepicker__nav-button ion-icon{width:var(--eui-is-l);height:var(--eui-is-l);color:var(--eui-c-branding-contrast)}.euim-toolbar-datepicker__date{flex:0 1 auto}.euim-toolbar-datepicker--primary .euim-toolbar-datepicker__calendar,.euim-toolbar-datepicker--primary .euim-label{color:var(--eui-c-branding-contrast)}.euim-toolbar-datepicker--primary .euim-toolbar-datepicker__datetime-button::part(native){background:var(--eui-c-branding);color:var(--eui-c-branding-contrast)}\n"], dependencies: [{ kind: "component", type: i3.IonButton, selector: "ion-button", inputs: ["buttonType", "color", "disabled", "download", "expand", "fill", "form", "href", "mode", "rel", "routerAnimation", "routerDirection", "shape", "size", "strong", "target", "type"] }, { kind: "component", type: i3.IonButtons, selector: "ion-buttons", inputs: ["collapse"] }, { kind: "component", type: i3.IonDatetime, selector: "ion-datetime", inputs: ["cancelText", "clearText", "color", "dayValues", "disabled", "doneText", "firstDayOfWeek", "formatOptions", "highlightedDates", "hourCycle", "hourValues", "isDateEnabled", "locale", "max", "min", "minuteValues", "mode", "monthValues", "multiple", "name", "preferWheel", "presentation", "readonly", "showClearButton", "showDefaultButtons", "showDefaultTimeLabel", "showDefaultTitle", "size", "titleSelectedDatesFormatter", "value", "yearValues"] }, { kind: "component", type: i3.IonDatetimeButton, selector: "ion-datetime-button", inputs: ["color", "datetime", "disabled", "mode"] }, { kind: "component", type: i3.IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }, { kind: "component", type: i3.IonItem, selector: "ion-item", inputs: ["button", "color", "detail", "detailIcon", "disabled", "download", "href", "lines", "mode", "rel", "routerAnimation", "routerDirection", "target", "type"] }, { kind: "component", type: i3.IonLabel, selector: "ion-label", inputs: ["color", "mode", "position"] }, { kind: "component", type: i3.IonModal, selector: "ion-modal" }, { kind: "directive", type: i3.SelectValueAccessor, selector: "ion-select, ion-radio-group, ion-segment, ion-datetime" }, { kind: "component", type: i4.EuimAvatarComponent, selector: "euim-avatar", inputs: ["color", "size", "fill", "variant", "borderColor"] }, { kind: "component", type: i5.EuimAvatarIconComponent, selector: "euim-avatar-icon" }, { kind: "component", type: i6.EuimLabelComponent, selector: "div[euimLabel], p[euimLabel], span[euimLabel], euim-label", inputs: ["euimLabelTruncateWithLines", "euimLabelTitle", "euimLabelSubTitle", "euimLabelMeta", "euimLabelTruncate", "euimLabelTextWrap"] }, { kind: "directive", type: i7.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i7.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], encapsulation: i0.ViewEncapsulation.None }); }
117
113
  }
118
114
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: EuimToolbarDatepickerComponent, decorators: [{
119
115
  type: Component,
@@ -124,7 +120,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
124
120
  'color',
125
121
  ],
126
122
  },
127
- ], template: "<ion-item class=\"euim-toolbar-datepicker__item\" color=\"branding\">\n <euim-avatar fill=\"clear\" slot=\"start\" >\n <euim-avatar-icon>\n <ion-icon [name]=\"icon\"\n class=\"euim-toolbar-datepicker__calendar\"></ion-icon>\n </euim-avatar-icon>\n </euim-avatar>\n @if (!euimReadOnly){\n <ion-datetime-button class=\"euim-toolbar-datepicker__datetime-button--hidden\"\n [datetime]=\"dateTimeId\">\n </ion-datetime-button>\n }\n <div class=\"euim-toolbar-datepicker__datetime-button\" [id]=\"modalId\" [style.cursor]=\"(!euimReadOnly) ? 'pointer' : 'auto'\">\n <ion-label class=\"euim-toolbar-datepicker__date\">\n <div class=\"euim-toolbar-datepicker__title\"\n euimLabel\n euimLabelTitle\n euimLabelTruncate\n disabled=\"euimReadOnly\">{{!title ? weekDayName : title}}</div>\n\n <div euimLabel\n euimLabelSubTitle\n euimLabelTruncate\n disabled=\"euimReadOnly\">{{!subTitle ? formattedDate : subTitle}}</div>\n </ion-label>\n @if (!euimReadOnly){\n <ion-icon class=\"euim-toolbar-datepicker__datetime-caret\"\n name=\"caret-down-sharp\"\n color=\"light\"></ion-icon>\n }\n </div>\n\n @if (!euimReadOnly) {\n <ion-buttons slot=\"end\">\n <ion-button (click)=\"selectPrevDate()\"\n [disabled] = \"euimPrevBtnDisabled\"\n shape=\"round\"\n class=\"euim-toolbar-datepicker__nav-button\">\n <ion-icon name=\"chevron-back-circle-sharp\"\n color=\"light\">\n </ion-icon>\n </ion-button>\n <ion-button\n (click)=\"selectNextDate()\"\n [disabled]=\"euimNextBtnDisabled\"\n shape=\"round\"\n class=\"euim-toolbar-datepicker__nav-button euim-toolbar-datepicker__nav-button--next\">\n <ion-icon name=\"chevron-forward-circle-sharp\"\n color=\"light\"></ion-icon>\n </ion-button>\n </ion-buttons>\n }\n</ion-item>\n\n@if (!euimReadOnly){\n<ion-modal [keepContentsMounted]=\"true\"\n [trigger]=\"modalId\">\n <ng-template>\n <ion-datetime\n [showDefaultButtons]=\"true\"\n (ionChange)=\"calendarDateChanged($event)\"\n size=\"cover\"\n [id]=\"dateTimeId\"\n [locale]=\"currentLang\"\n [(ngModel)]=\"selectedDate\"></ion-datetime>\n </ng-template>\n</ion-modal>\n}\n", styles: [".euim-toolbar-datepicker{--inner-padding-end: var(--eui-s-xs)}.euim-toolbar-datepicker ion-item:has(ion-buttons ion-button ion-icon){--inner-padding-end: var(--eui-s-2xs)}.euim-toolbar-datepicker ion-item ion-buttons[slot=end]{margin-inline-start:0}.euim-toolbar-datepicker__datetime_icon{margin-left:var(--eui-s-l);margin-right:var(--eui-s-l);width:var(--eui-is-xl);height:var(--eui-is-xl)}.euim-toolbar-datepicker__datetime-button{display:flex;align-items:center;height:100%;width:100%;padding-top:var(--eui-s-s);padding-bottom:var(--eui-s-s)}.euim-toolbar-datepicker__datetime-button--hidden{display:none}.euim-toolbar-datepicker__datetime-caret{margin-left:var(--eui-s-xs)!important;margin-right:var(--eui-s-xs)!important;width:var(--eui-s-m);height:var(--eui-s-m);flex-shrink:0}.euim-toolbar-datepicker__nav-button ion-icon{width:var(--eui-is-l);height:var(--eui-is-l)}.euim-toolbar-datepicker__date{flex:0 1 auto}.euim-toolbar-datepicker--primary .euim-toolbar-datepicker__calendar,.euim-toolbar-datepicker--primary .euim-label{color:var(--eui-c-branding-contrast)}.euim-toolbar-datepicker--primary .euim-toolbar-datepicker__datetime-button::part(native){background:var(--eui-c-branding);color:var(--eui-c-branding-contrast)}\n"] }]
123
+ ], template: "<ion-item class=\"euim-toolbar-datepicker__item\" color=\"branding\">\n <euim-avatar fill=\"clear\" slot=\"start\" >\n <euim-avatar-icon>\n <ion-icon [name]=\"icon\"\n class=\"euim-toolbar-datepicker__calendar\"></ion-icon>\n </euim-avatar-icon>\n </euim-avatar>\n @if (!euimReadOnly){\n <ion-datetime-button class=\"euim-toolbar-datepicker__datetime-button--hidden\"\n [datetime]=\"dateTimeId\">\n </ion-datetime-button>\n }\n <div class=\"euim-toolbar-datepicker__datetime-button\" [id]=\"modalId\" [style.cursor]=\"(!euimReadOnly) ? 'pointer' : 'auto'\">\n <ion-label class=\"euim-toolbar-datepicker__date\">\n <div class=\"euim-toolbar-datepicker__title\"\n euimLabel\n euimLabelTitle\n euimLabelTruncate\n disabled=\"euimReadOnly\">{{!title ? weekDayName : title}}</div>\n\n <div euimLabel\n euimLabelSubTitle\n euimLabelTruncate\n disabled=\"euimReadOnly\">{{!subTitle ? formattedDate : subTitle}}</div>\n </ion-label>\n @if (!euimReadOnly){\n <ion-icon class=\"euim-toolbar-datepicker__datetime-caret\"\n name=\"caret-down-sharp\"></ion-icon>\n }\n </div>\n\n @if (!euimReadOnly) {\n <ion-buttons slot=\"end\">\n <ion-button (click)=\"selectPrevDate()\"\n [disabled] = \"euimPrevBtnDisabled\"\n shape=\"round\"\n class=\"euim-toolbar-datepicker__nav-button\">\n <ion-icon name=\"chevron-back-circle-sharp\">\n </ion-icon>\n </ion-button>\n <ion-button\n (click)=\"selectNextDate()\"\n [disabled]=\"euimNextBtnDisabled\"\n shape=\"round\"\n class=\"euim-toolbar-datepicker__nav-button euim-toolbar-datepicker__nav-button--next\">\n <ion-icon name=\"chevron-forward-circle-sharp\"></ion-icon>\n </ion-button>\n </ion-buttons>\n }\n</ion-item>\n\n@if (!euimReadOnly){\n<ion-modal [keepContentsMounted]=\"true\"\n [trigger]=\"modalId\">\n <ng-template>\n <ion-datetime\n [showDefaultButtons]=\"true\"\n (ionChange)=\"calendarDateChanged($event)\"\n size=\"cover\"\n [id]=\"dateTimeId\"\n [locale]=\"currentLang\"\n [(ngModel)]=\"selectedDate\"></ion-datetime>\n </ng-template>\n</ion-modal>\n}\n", styles: [".euim-toolbar-datepicker{--inner-padding-end: var(--eui-s-xs)}.euim-toolbar-datepicker ion-item:has(ion-buttons ion-button ion-icon){--inner-padding-end: var(--eui-s-2xs)}.euim-toolbar-datepicker ion-item ion-buttons[slot=end]{margin-inline-start:0}.euim-toolbar-datepicker__datetime_icon{margin-left:var(--eui-s-l);margin-right:var(--eui-s-l);width:var(--eui-is-xl);height:var(--eui-is-xl)}.euim-toolbar-datepicker__datetime-button{display:flex;align-items:center;height:100%;width:100%;padding-top:var(--eui-s-s);padding-bottom:var(--eui-s-s)}.euim-toolbar-datepicker__datetime-button--hidden{display:none}.euim-toolbar-datepicker__datetime-caret{margin-left:var(--eui-s-xs)!important;margin-right:var(--eui-s-xs)!important;width:var(--eui-s-m);height:var(--eui-s-m);flex-shrink:0;color:var(--eui-c-branding-contrast)}.euim-toolbar-datepicker__nav-button ion-icon{width:var(--eui-is-l);height:var(--eui-is-l);color:var(--eui-c-branding-contrast)}.euim-toolbar-datepicker__date{flex:0 1 auto}.euim-toolbar-datepicker--primary .euim-toolbar-datepicker__calendar,.euim-toolbar-datepicker--primary .euim-label{color:var(--eui-c-branding-contrast)}.euim-toolbar-datepicker--primary .euim-toolbar-datepicker__datetime-button::part(native){background:var(--eui-c-branding);color:var(--eui-c-branding-contrast)}\n"] }]
128
124
  }], ctorParameters: () => [{ type: i1.BaseStatesDirective }, { type: i2.TranslateService }, { type: i3.ModalController }], propDecorators: { icon: [{
129
125
  type: Input
130
126
  }], title: [{
@@ -155,4 +151,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
155
151
  type: HostListener,
156
152
  args: ['window:popstate', ['$event']]
157
153
  }] } });
158
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXVpbS10b29sYmFyLWRhdGVwaWNrZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL2V1aW0tdG9vbGJhci1kYXRlcGlja2VyL2V1aW0tdG9vbGJhci1kYXRlcGlja2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9ldWltLXRvb2xiYXItZGF0ZXBpY2tlci9ldWltLXRvb2xiYXItZGF0ZXBpY2tlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsZ0JBQWdCLEVBQ2hCLFNBQVMsRUFDVCxZQUFZLEVBQ1osV0FBVyxFQUNYLFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUVOLGlCQUFpQixHQUNwQixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7Ozs7Ozs7O0FBSS9EOzs7R0FHRztBQWVILE1BQU0sT0FBTyw4QkFBOEI7SUEyQnZDLElBQ1csVUFBVTtRQUNqQixPQUFPLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUNoQyxDQUFDO0lBRUQsWUFBbUIsbUJBQXdDLEVBQVUsU0FBMkIsRUFBVSxlQUFnQztRQUF2SCx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFCO1FBQVUsY0FBUyxHQUFULFNBQVMsQ0FBa0I7UUFBVSxvQkFBZSxHQUFmLGVBQWUsQ0FBaUI7UUE5QmpJLFNBQUksR0FBRyxzQkFBc0IsQ0FBQztRQVc3QixpQkFBWSxHQUF1QixJQUFJLFlBQVksRUFBUSxDQUFDO1FBQzVELGlCQUFZLEdBQXVCLElBQUksWUFBWSxFQUFRLENBQUM7UUFDNUQsZ0JBQVcsR0FBdUIsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQU03RCxhQUFRLEdBQUcsRUFBRSxDQUFDO1FBQ2QsZ0JBQVcsR0FBRyxNQUFNLENBQUM7UUFXekIs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LE1BQU07Z0JBQ0csWUFBWTtzQkFBckIsTUFBTTtnQkFDRyxXQUFXO3NCQUFwQixNQUFNO2dCQWFJLFVBQVU7c0JBRHBCLFdBQVc7dUJBQUMsT0FBTztnQkFZZCxZQUFZO3NCQURqQixZQUFZO3VCQUFDLGlCQUFpQixFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBib29sZWFuQXR0cmlidXRlLFxuICAgIENvbXBvbmVudCxcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSG9zdEJpbmRpbmcsXG4gICAgSG9zdExpc3RlbmVyLFxuICAgIElucHV0LCBPbkluaXQsXG4gICAgT3V0cHV0LFxuICAgIE9uRGVzdHJveSxcbiAgICBWaWV3RW5jYXBzdWxhdGlvbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNb2RhbENvbnRyb2xsZXIgfSBmcm9tICdAaW9uaWMvYW5ndWxhcic7XG5pbXBvcnQgeyBCYXNlU3RhdGVzRGlyZWN0aXZlIH0gZnJvbSAnLi4vYmFzZS1zdGF0ZXMuZGlyZWN0aXZlJztcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UsIExhbmdDaGFuZ2VFdmVudCB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5cbi8qKlxuICogVGhpcyBjb21wb25lbnQgaXMgbm90IHJlYWR5IHlldCBmb3IgcHJvZHVjdGlvblxuICogQGJldGFcbiAqL1xuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdldWltLXRvb2xiYXItZGF0ZXBpY2tlcicsXG4gICAgc3R5bGVVcmxzOiBbJy4vc3R5bGVzL19pbmRleC5zY3NzJ10sXG4gICAgdGVtcGxhdGVVcmw6ICdldWltLXRvb2xiYXItZGF0ZXBpY2tlci5jb21wb25lbnQuaHRtbCcsXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBob3N0RGlyZWN0aXZlczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBkaXJlY3RpdmU6IEJhc2VTdGF0ZXNEaXJlY3RpdmUsXG4gICAgICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgICAgICAnY29sb3InLFxuICAgICAgICAgICAgXSxcbiAgICAgICAgfSxcbiAgICBdLFxufSlcbmV4cG9ydCBjbGFzcyBFdWltVG9vbGJhckRhdGVwaWNrZXJDb21wb25lbnRcbiAgICBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgICBASW5wdXQoKSBpY29uID0gJ2NhbGVuZGFyLWNsZWFyLXNoYXJwJztcbiAgICBASW5wdXQoKSB0aXRsZSA6IHN0cmluZztcbiAgICBASW5wdXQoKSBzdWJUaXRsZSA6IHN0cmluZztcbiAgICBASW5wdXQoeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSlcbiAgICBldWltUHJldkJ0bkRpc2FibGVkOiBib29sZWFuO1xuICAgIEBJbnB1dCh7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KVxuICAgIGV1aW1OZXh0QnRuRGlzYWJsZWQ6Ym9vbGVhbjtcbiAgICBASW5wdXQoeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSlcbiAgICBldWltUmVhZE9ubHk6Ym9vbGVhbjtcbiAgICBASW5wdXQoKSBzZWxlY3REYXRlQnk6ICd3ZWVrJztcblxuICAgIEBPdXRwdXQoKSBwcmV2QnRuQ2xpY2s6IEV2ZW50RW1pdHRlcjxEYXRlPiA9IG5ldyBFdmVudEVtaXR0ZXI8RGF0ZT4oKTtcbiAgICBAT3V0cHV0KCkgbmV4dEJ0bkNsaWNrOiBFdmVudEVtaXR0ZXI8RGF0ZT4gPSBuZXcgRXZlbnRFbWl0dGVyPERhdGU+KCk7XG4gICAgQE91dHB1dCgpIGRhdGVDaGFuZ2VkOiBFdmVudEVtaXR0ZXI8RGF0ZT4gPSBuZXcgRXZlbnRFbWl0dGVyPERhdGU+KCk7XG5cbiAgICB3ZWVrRGF5TmFtZTogc3RyaW5nO1xuICAgIHByb3RlY3RlZCBmb3JtYXR0ZWREYXRlOiBzdHJpbmc7XG4gICAgcHJvdGVjdGVkIHNlbGVjdGVkRGF0ZTogc3RyaW5nO1xuXG4gICAgcHJpdmF0ZSB3ZWVrZGF5cyA9IFtdO1xuICAgIHByaXZhdGUgX2RhdGVUaW1lSWQgPSAnZGF0ZSc7XG4gICAgcHJpdmF0ZSBsYW5nQ2hhbmdlU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG4gICAgcHJvdGVjdGVkIGN1cnJlbnRMYW5nOiBzdHJpbmc7XG5cbiAgICBwcm90ZWN0ZWQgbW9kYWxJZDogc3RyaW5nO1xuICAgIEBIb3N0QmluZGluZygnY2xhc3MnKVxuICAgIHB1YmxpYyBnZXQgY3NzQ2xhc3NlcygpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRDc3NDbGFzc2VzKCk7XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3IocHVibGljIGJhc2VTdGF0ZXNEaXJlY3RpdmU6IEJhc2VTdGF0ZXNEaXJlY3RpdmUsIHByaXZhdGUgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLCBwcml2YXRlIG1vZGFsQ29udHJvbGxlcjogTW9kYWxDb250cm9sbGVyKSB7XG4gICAgICAgIHRoaXMuZGF0ZVRpbWVJZCA9ICBjcnlwdG8ucmFuZG9tVVVJRCgpO1xuICAgICAgICB0aGlzLm1vZGFsSWQgPSAgY3J5cHRvLnJhbmRvbVVVSUQoKTtcbiAgICAgICAgdGhpcy5jdXJyZW50RGF0ZSA9IG5ldyBEYXRlKCk7XG4gICAgICAgIHRoaXMuZm9ybWF0dGVkRGF0ZSA9IHRoaXMuY3VycmVudERhdGUudG9Mb2NhbGVEYXRlU3RyaW5nKCk7XG4gICAgfVxuICAgIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzpwb3BzdGF0ZScsIFsnJGV2ZW50J10pXG4gICAgYXN5bmMgZGlzbWlzc01vZGFsKCk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICBjb25zdCB0b3BNb2RhbCA9IGF3YWl0IHRoaXMubW9kYWxDb250cm9sbGVyLmdldFRvcCgpO1xuICAgICAgICBpZiAodG9wTW9kYWwpIHtcbiAgICAgICAgICAgIGF3YWl0IHRoaXMubW9kYWxDb250cm9sbGVyLmRpc21pc3MoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGdldCBkYXRlVGltZUlkKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLl9kYXRlVGltZUlkO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBzZXQgZGF0ZVRpbWVJZCh2YWw6c3RyaW5nKSB7XG4gICAgICAgIHRoaXMuX2RhdGVUaW1lSWQgPSB2YWw7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGN1cnJlbnREYXRlOiBEYXRlO1xuXG4gICAgbmdPbkluaXQgKCk6IHZvaWQge1xuICAgICAgICBpZiAoIXRoaXMuYmFzZVN0YXRlc0RpcmVjdGl2ZS5jb2xvcikge1xuICAgICAgICAgICAgdGhpcy5iYXNlU3RhdGVzRGlyZWN0aXZlLmNvbG9yID0gJ3ByaW1hcnknO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMubG9hZFdlZWtkYXlzVHJhbnNsYXRpb24odGhpcy50cmFuc2xhdGUuY3VycmVudExhbmcpO1xuXG4gICAgICAgIHRoaXMubGFuZ0NoYW5nZVN1YnNjcmlwdGlvbiA9IHRoaXMudHJhbnNsYXRlLm9uTGFuZ0NoYW5nZS5zdWJzY3JpYmUoKGV2ZW50OiBMYW5nQ2hhbmdlRXZlbnQpID0+IHtcbiAgICAgICAgICAgIHRoaXMuY3VycmVudExhbmcgPSBldmVudC5sYW5nO1xuICAgICAgICAgICAgdGhpcy5sb2FkV2Vla2RheXNUcmFuc2xhdGlvbihldmVudC5sYW5nKTtcbiAgICAgICAgICAgIHRoaXMuZm9ybWF0RGF0ZUFuZFdlZWtEYXkoKTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy5mb3JtYXREYXRlQW5kV2Vla0RheSgpO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5sYW5nQ2hhbmdlU3Vic2NyaXB0aW9uKSB7XG4gICAgICAgICAgICB0aGlzLmxhbmdDaGFuZ2VTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBnZXRDc3NDbGFzc2VzKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBbXG4gICAgICAgICAgICB0aGlzLmJhc2VTdGF0ZXNEaXJlY3RpdmUuZ2V0Q3NzQ2xhc3NlcygnZXVpbS10b29sYmFyLWRhdGVwaWNrZXInKSxcbiAgICAgICAgXS5qb2luKCcgJyk7XG4gICAgfVxuXG4gICAgdXBkYXRlQ3VycmVudERhdGUoZGF0ZTpzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jdXJyZW50RGF0ZSA9IChuZXcgRGF0ZShkYXRlKSk7XG4gICAgICAgIHRoaXMuZGF0ZUNoYW5nZWQuZW1pdCh0aGlzLmN1cnJlbnREYXRlKTtcbiAgICAgICAgdGhpcy5mb3JtYXR0ZWREYXRlID0gdGhpcy5jdXJyZW50RGF0ZS50b0xvY2FsZURhdGVTdHJpbmcoKTtcbiAgICAgICAgdGhpcy5mb3JtYXREYXRlQW5kV2Vla0RheSgpO1xuICAgIH1cblxuICAgIGNhbGVuZGFyRGF0ZUNoYW5nZWQoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGN1c3RvbUV2ZW50ID0gZXZlbnQgYXMgQ3VzdG9tRXZlbnQ7XG4gICAgICAgIGlmIChjdXN0b21FdmVudC5kZXRhaWwudmFsdWUpIHtcbiAgICAgICAgICAgIHRoaXMuY3VycmVudERhdGUgPSAobmV3IERhdGUoY3VzdG9tRXZlbnQuZGV0YWlsLnZhbHVlKSk7XG4gICAgICAgICAgICB0aGlzLmZvcm1hdHRlZERhdGUgPSB0aGlzLmN1cnJlbnREYXRlLnRvTG9jYWxlRGF0ZVN0cmluZygpO1xuICAgICAgICAgICAgdGhpcy5mb3JtYXREYXRlQW5kV2Vla0RheSgpO1xuICAgICAgICAgICAgdGhpcy5kYXRlQ2hhbmdlZC5lbWl0KHRoaXMuY3VycmVudERhdGUpO1xuICAgICAgICB9XG4gICAgfVxuICAgIHByb3RlY3RlZCBzZWxlY3RQcmV2RGF0ZSgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuc2VsZWN0RGF0ZUJ5ID09PSAnd2VlaycpIHtcbiAgICAgICAgICAgIHRoaXMuY3VycmVudERhdGUuc2V0RGF0ZSh0aGlzLmN1cnJlbnREYXRlLmdldERhdGUoKSAtIDcgKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuY3VycmVudERhdGUuc2V0RGF0ZSh0aGlzLmN1cnJlbnREYXRlLmdldERhdGUoKSAtIDEgKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuZm9ybWF0dGVkRGF0ZSA9IHRoaXMuY3VycmVudERhdGUudG9Mb2NhbGVEYXRlU3RyaW5nKCk7XG4gICAgICAgIHRoaXMuZm9ybWF0RGF0ZUFuZFdlZWtEYXkoKTtcbiAgICAgICAgdGhpcy5zZWxlY3RlZERhdGUgPSB0aGlzLmN1cnJlbnREYXRlLnRvSVNPU3RyaW5nKCk7XG4gICAgICAgIHRoaXMucHJldkJ0bkNsaWNrLmVtaXQodGhpcy5jdXJyZW50RGF0ZSk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIHNlbGVjdE5leHREYXRlKCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5zZWxlY3REYXRlQnkgPT09ICd3ZWVrJykge1xuICAgICAgICAgICAgdGhpcy5jdXJyZW50RGF0ZS5zZXREYXRlKHRoaXMuY3VycmVudERhdGUuZ2V0RGF0ZSgpICsgNyApO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5jdXJyZW50RGF0ZS5zZXREYXRlKHRoaXMuY3VycmVudERhdGUuZ2V0RGF0ZSgpICsgMSApO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5mb3JtYXR0ZWREYXRlID0gdGhpcy5jdXJyZW50RGF0ZS50b0xvY2FsZURhdGVTdHJpbmcoKTtcbiAgICAgICAgdGhpcy5mb3JtYXREYXRlQW5kV2Vla0RheSgpO1xuICAgICAgICB0aGlzLnNlbGVjdGVkRGF0ZSA9IHRoaXMuY3VycmVudERhdGUudG9JU09TdHJpbmcoKTtcbiAgICAgICAgdGhpcy5uZXh0QnRuQ2xpY2suZW1pdCh0aGlzLmN1cnJlbnREYXRlKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGxvYWRXZWVrZGF5c1RyYW5zbGF0aW9uKGxhbmc6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICB0aGlzLnRyYW5zbGF0ZS5nZXQoJ2V1aW0udG9vbGJhci1kYXRlcGlja2VyLldFRUtEQVlTJykuc3Vic2NyaWJlKCh3ZWVrZGF5czogc3RyaW5nW10pID0+IHtcbiAgICAgICAgICAgIHRoaXMud2Vla2RheXMgPSB3ZWVrZGF5cztcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBmb3JtYXREYXRlQW5kV2Vla0RheSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy53ZWVrRGF5TmFtZSA9IHRoaXMud2Vla2RheXNbdGhpcy5jdXJyZW50RGF0ZS5nZXREYXkoKV07XG4gICAgfVxuXG59XG4iLCI8aW9uLWl0ZW0gY2xhc3M9XCJldWltLXRvb2xiYXItZGF0ZXBpY2tlcl9faXRlbVwiIGNvbG9yPVwiYnJhbmRpbmdcIj5cbiAgICA8ZXVpbS1hdmF0YXIgIGZpbGw9XCJjbGVhclwiIHNsb3Q9XCJzdGFydFwiID5cbiAgICAgICAgPGV1aW0tYXZhdGFyLWljb24+XG4gICAgICAgICAgICA8aW9uLWljb24gW25hbWVdPVwiaWNvblwiXG4gICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJldWltLXRvb2xiYXItZGF0ZXBpY2tlcl9fY2FsZW5kYXJcIj48L2lvbi1pY29uPlxuICAgICAgICA8L2V1aW0tYXZhdGFyLWljb24+XG4gICAgPC9ldWltLWF2YXRhcj5cbiAgICBAaWYgKCFldWltUmVhZE9ubHkpe1xuICAgIDxpb24tZGF0ZXRpbWUtYnV0dG9uIGNsYXNzPVwiZXVpbS10b29sYmFyLWRhdGVwaWNrZXJfX2RhdGV0aW1lLWJ1dHRvbi0taGlkZGVuXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbZGF0ZXRpbWVdPVwiZGF0ZVRpbWVJZFwiPlxuICAgIDwvaW9uLWRhdGV0aW1lLWJ1dHRvbj5cbiAgICB9XG4gICAgPGRpdiBjbGFzcz1cImV1aW0tdG9vbGJhci1kYXRlcGlja2VyX19kYXRldGltZS1idXR0b25cIiBbaWRdPVwibW9kYWxJZFwiIFtzdHlsZS5jdXJzb3JdPVwiKCFldWltUmVhZE9ubHkpID8gJ3BvaW50ZXInIDogJ2F1dG8nXCI+XG4gICAgICAgIDxpb24tbGFiZWwgY2xhc3M9XCJldWltLXRvb2xiYXItZGF0ZXBpY2tlcl9fZGF0ZVwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImV1aW0tdG9vbGJhci1kYXRlcGlja2VyX190aXRsZVwiXG4gICAgICAgICAgICAgICAgIGV1aW1MYWJlbFxuICAgICAgICAgICAgICAgICBldWltTGFiZWxUaXRsZVxuICAgICAgICAgICAgICAgICBldWltTGFiZWxUcnVuY2F0ZVxuICAgICAgICAgICAgICAgICBkaXNhYmxlZD1cImV1aW1SZWFkT25seVwiPnt7IXRpdGxlID8gd2Vla0RheU5hbWUgOiB0aXRsZX19PC9kaXY+XG5cbiAgICAgICAgICAgIDxkaXYgZXVpbUxhYmVsXG4gICAgICAgICAgICAgICAgIGV1aW1MYWJlbFN1YlRpdGxlXG4gICAgICAgICAgICAgICAgIGV1aW1MYWJlbFRydW5jYXRlXG4gICAgICAgICAgICAgICAgIGRpc2FibGVkPVwiZXVpbVJlYWRPbmx5XCI+e3shc3ViVGl0bGUgPyBmb3JtYXR0ZWREYXRlIDogc3ViVGl0bGV9fTwvZGl2PlxuICAgICAgICA8L2lvbi1sYWJlbD5cbiAgICAgICAgQGlmICghZXVpbVJlYWRPbmx5KXtcbiAgICAgICAgICAgIDxpb24taWNvbiBjbGFzcz1cImV1aW0tdG9vbGJhci1kYXRlcGlja2VyX19kYXRldGltZS1jYXJldFwiXG4gICAgICAgICAgICAgICAgICAgICAgbmFtZT1cImNhcmV0LWRvd24tc2hhcnBcIlxuICAgICAgICAgICAgICAgICAgICAgIGNvbG9yPVwibGlnaHRcIj48L2lvbi1pY29uPlxuICAgICAgICB9XG4gICAgPC9kaXY+XG5cbiAgICBAaWYgKCFldWltUmVhZE9ubHkpIHtcbiAgICAgICAgPGlvbi1idXR0b25zIHNsb3Q9XCJlbmRcIj5cbiAgICAgICAgICAgIDxpb24tYnV0dG9uIChjbGljayk9XCJzZWxlY3RQcmV2RGF0ZSgpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF0gPSBcImV1aW1QcmV2QnRuRGlzYWJsZWRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgc2hhcGU9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImV1aW0tdG9vbGJhci1kYXRlcGlja2VyX19uYXYtYnV0dG9uXCI+XG4gICAgICAgICAgICAgICAgPGlvbi1pY29uIG5hbWU9XCJjaGV2cm9uLWJhY2stY2lyY2xlLXNoYXJwXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I9XCJsaWdodFwiPlxuICAgICAgICAgICAgICAgIDwvaW9uLWljb24+XG4gICAgICAgICAgICA8L2lvbi1idXR0b24+XG4gICAgICAgICAgICA8aW9uLWJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInNlbGVjdE5leHREYXRlKClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cImV1aW1OZXh0QnRuRGlzYWJsZWRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgc2hhcGU9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImV1aW0tdG9vbGJhci1kYXRlcGlja2VyX19uYXYtYnV0dG9uIGV1aW0tdG9vbGJhci1kYXRlcGlja2VyX19uYXYtYnV0dG9uLS1uZXh0XCI+XG4gICAgICAgICAgICAgICAgPGlvbi1pY29uIG5hbWU9XCJjaGV2cm9uLWZvcndhcmQtY2lyY2xlLXNoYXJwXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I9XCJsaWdodFwiPjwvaW9uLWljb24+XG4gICAgICAgICAgICA8L2lvbi1idXR0b24+XG4gICAgICAgIDwvaW9uLWJ1dHRvbnM+XG4gICAgfVxuPC9pb24taXRlbT5cblxuQGlmICghZXVpbVJlYWRPbmx5KXtcbjxpb24tbW9kYWwgW2tlZXBDb250ZW50c01vdW50ZWRdPVwidHJ1ZVwiXG4gICAgICAgICAgIFt0cmlnZ2VyXT1cIm1vZGFsSWRcIj5cbiAgICA8bmctdGVtcGxhdGU+XG4gICAgICAgIDxpb24tZGF0ZXRpbWVcbiAgICAgICAgICAgIFtzaG93RGVmYXVsdEJ1dHRvbnNdPVwidHJ1ZVwiXG4gICAgICAgICAgICAoaW9uQ2hhbmdlKT1cImNhbGVuZGFyRGF0ZUNoYW5nZWQoJGV2ZW50KVwiXG4gICAgICAgICAgICBzaXplPVwiY292ZXJcIlxuICAgICAgICAgICAgW2lkXT1cImRhdGVUaW1lSWRcIlxuICAgICAgICAgICAgW2xvY2FsZV09XCJjdXJyZW50TGFuZ1wiXG4gICAgICAgICAgICBbKG5nTW9kZWwpXT1cInNlbGVjdGVkRGF0ZVwiPjwvaW9uLWRhdGV0aW1lPlxuICAgIDwvbmctdGVtcGxhdGU+XG48L2lvbi1tb2RhbD5cbn1cbiJdfQ==
154
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXVpbS10b29sYmFyLWRhdGVwaWNrZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL2V1aW0tdG9vbGJhci1kYXRlcGlja2VyL2V1aW0tdG9vbGJhci1kYXRlcGlja2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9ldWltLXRvb2xiYXItZGF0ZXBpY2tlci9ldWltLXRvb2xiYXItZGF0ZXBpY2tlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsZ0JBQWdCLEVBQ2hCLFNBQVMsRUFDVCxZQUFZLEVBQ1osV0FBVyxFQUNYLFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUVOLGlCQUFpQixHQUNwQixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7Ozs7Ozs7O0FBa0IvRCxNQUFNLE9BQU8sOEJBQThCO0lBMkJ2QyxJQUNXLFVBQVU7UUFDakIsT0FBTyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDaEMsQ0FBQztJQUVELFlBQW1CLG1CQUF3QyxFQUFVLFNBQTJCLEVBQVUsZUFBZ0M7UUFBdkgsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtRQUFVLGNBQVMsR0FBVCxTQUFTLENBQWtCO1FBQVUsb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBOUJqSSxTQUFJLEdBQUcsc0JBQXNCLENBQUM7UUFXN0IsaUJBQVksR0FBdUIsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUM1RCxpQkFBWSxHQUF1QixJQUFJLFlBQVksRUFBUSxDQUFDO1FBQzVELGdCQUFXLEdBQXVCLElBQUksWUFBWSxFQUFRLENBQUM7UUFNN0QsYUFBUSxHQUFHLEVBQUUsQ0FBQztRQUNkLGdCQUFXLEdBQUcsTUFBTSxDQUFDO1FBV3pCLElBQUksQ0FBQyxV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LFlBQVk7c0JBQXJCLE1BQU07Z0JBQ0csV0FBVztzQkFBcEIsTUFBTTtnQkFhSSxVQUFVO3NCQURwQixXQUFXO3VCQUFDLE9BQU87Z0JBWWQsWUFBWTtzQkFEakIsWUFBWTt1QkFBQyxpQkFBaUIsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgYm9vbGVhbkF0dHJpYnV0ZSxcbiAgICBDb21wb25lbnQsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIEhvc3RCaW5kaW5nLFxuICAgIEhvc3RMaXN0ZW5lcixcbiAgICBJbnB1dCwgT25Jbml0LFxuICAgIE91dHB1dCxcbiAgICBPbkRlc3Ryb3ksXG4gICAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTW9kYWxDb250cm9sbGVyIH0gZnJvbSAnQGlvbmljL2FuZ3VsYXInO1xuaW1wb3J0IHsgQmFzZVN0YXRlc0RpcmVjdGl2ZSB9IGZyb20gJy4uL2Jhc2Utc3RhdGVzLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlLCBMYW5nQ2hhbmdlRXZlbnQgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2V1aW0tdG9vbGJhci1kYXRlcGlja2VyJyxcbiAgICBzdHlsZVVybHM6IFsnLi9zdHlsZXMvX2luZGV4LnNjc3MnXSxcbiAgICB0ZW1wbGF0ZVVybDogJ2V1aW0tdG9vbGJhci1kYXRlcGlja2VyLmNvbXBvbmVudC5odG1sJyxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIGhvc3REaXJlY3RpdmVzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIGRpcmVjdGl2ZTogQmFzZVN0YXRlc0RpcmVjdGl2ZSxcbiAgICAgICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAgICAgICdjb2xvcicsXG4gICAgICAgICAgICBdLFxuICAgICAgICB9LFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIEV1aW1Ub29sYmFyRGF0ZXBpY2tlckNvbXBvbmVudFxuICAgIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICAgIEBJbnB1dCgpIGljb24gPSAnY2FsZW5kYXItY2xlYXItc2hhcnAnO1xuICAgIEBJbnB1dCgpIHRpdGxlIDogc3RyaW5nO1xuICAgIEBJbnB1dCgpIHN1YlRpdGxlIDogc3RyaW5nO1xuICAgIEBJbnB1dCh7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KVxuICAgIGV1aW1QcmV2QnRuRGlzYWJsZWQ6IGJvb2xlYW47XG4gICAgQElucHV0KHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0pXG4gICAgZXVpbU5leHRCdG5EaXNhYmxlZDpib29sZWFuO1xuICAgIEBJbnB1dCh7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KVxuICAgIGV1aW1SZWFkT25seTpib29sZWFuO1xuICAgIEBJbnB1dCgpIHNlbGVjdERhdGVCeTogJ3dlZWsnO1xuXG4gICAgQE91dHB1dCgpIHByZXZCdG5DbGljazogRXZlbnRFbWl0dGVyPERhdGU+ID0gbmV3IEV2ZW50RW1pdHRlcjxEYXRlPigpO1xuICAgIEBPdXRwdXQoKSBuZXh0QnRuQ2xpY2s6IEV2ZW50RW1pdHRlcjxEYXRlPiA9IG5ldyBFdmVudEVtaXR0ZXI8RGF0ZT4oKTtcbiAgICBAT3V0cHV0KCkgZGF0ZUNoYW5nZWQ6IEV2ZW50RW1pdHRlcjxEYXRlPiA9IG5ldyBFdmVudEVtaXR0ZXI8RGF0ZT4oKTtcblxuICAgIHdlZWtEYXlOYW1lOiBzdHJpbmc7XG4gICAgcHJvdGVjdGVkIGZvcm1hdHRlZERhdGU6IHN0cmluZztcbiAgICBwcm90ZWN0ZWQgc2VsZWN0ZWREYXRlOiBzdHJpbmc7XG5cbiAgICBwcml2YXRlIHdlZWtkYXlzID0gW107XG4gICAgcHJpdmF0ZSBfZGF0ZVRpbWVJZCA9ICdkYXRlJztcbiAgICBwcml2YXRlIGxhbmdDaGFuZ2VTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcbiAgICBwcm90ZWN0ZWQgY3VycmVudExhbmc6IHN0cmluZztcblxuICAgIHByb3RlY3RlZCBtb2RhbElkOiBzdHJpbmc7XG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXG4gICAgcHVibGljIGdldCBjc3NDbGFzc2VzKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLmdldENzc0NsYXNzZXMoKTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3RvcihwdWJsaWMgYmFzZVN0YXRlc0RpcmVjdGl2ZTogQmFzZVN0YXRlc0RpcmVjdGl2ZSwgcHJpdmF0ZSB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UsIHByaXZhdGUgbW9kYWxDb250cm9sbGVyOiBNb2RhbENvbnRyb2xsZXIpIHtcbiAgICAgICAgdGhpcy5kYXRlVGltZUlkID0gIGNyeXB0by5yYW5kb21VVUlEKCk7XG4gICAgICAgIHRoaXMubW9kYWxJZCA9ICBjcnlwdG8ucmFuZG9tVVVJRCgpO1xuICAgICAgICB0aGlzLmN1cnJlbnREYXRlID0gbmV3IERhdGUoKTtcbiAgICAgICAgdGhpcy5mb3JtYXR0ZWREYXRlID0gdGhpcy5jdXJyZW50RGF0ZS50b0xvY2FsZURhdGVTdHJpbmcoKTtcbiAgICB9XG4gICAgQEhvc3RMaXN0ZW5lcignd2luZG93OnBvcHN0YXRlJywgWyckZXZlbnQnXSlcbiAgICBhc3luYyBkaXNtaXNzTW9kYWwoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIGNvbnN0IHRvcE1vZGFsID0gYXdhaXQgdGhpcy5tb2RhbENvbnRyb2xsZXIuZ2V0VG9wKCk7XG4gICAgICAgIGlmICh0b3BNb2RhbCkge1xuICAgICAgICAgICAgYXdhaXQgdGhpcy5tb2RhbENvbnRyb2xsZXIuZGlzbWlzcygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZ2V0IGRhdGVUaW1lSWQoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2RhdGVUaW1lSWQ7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIHNldCBkYXRlVGltZUlkKHZhbDpzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5fZGF0ZVRpbWVJZCA9IHZhbDtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgY3VycmVudERhdGU6IERhdGU7XG5cbiAgICBuZ09uSW5pdCAoKTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5iYXNlU3RhdGVzRGlyZWN0aXZlLmNvbG9yKSB7XG4gICAgICAgICAgICB0aGlzLmJhc2VTdGF0ZXNEaXJlY3RpdmUuY29sb3IgPSAncHJpbWFyeSc7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5sb2FkV2Vla2RheXNUcmFuc2xhdGlvbih0aGlzLnRyYW5zbGF0ZS5jdXJyZW50TGFuZyk7XG5cbiAgICAgICAgdGhpcy5sYW5nQ2hhbmdlU3Vic2NyaXB0aW9uID0gdGhpcy50cmFuc2xhdGUub25MYW5nQ2hhbmdlLnN1YnNjcmliZSgoZXZlbnQ6IExhbmdDaGFuZ2VFdmVudCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5jdXJyZW50TGFuZyA9IGV2ZW50Lmxhbmc7XG4gICAgICAgICAgICB0aGlzLmxvYWRXZWVrZGF5c1RyYW5zbGF0aW9uKGV2ZW50LmxhbmcpO1xuICAgICAgICAgICAgdGhpcy5mb3JtYXREYXRlQW5kV2Vla0RheSgpO1xuICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLmZvcm1hdERhdGVBbmRXZWVrRGF5KCk7XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmxhbmdDaGFuZ2VTdWJzY3JpcHRpb24pIHtcbiAgICAgICAgICAgIHRoaXMubGFuZ0NoYW5nZVN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgICAgICB9XG4gICAgfVxuICAgIGdldENzc0NsYXNzZXMoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgIHRoaXMuYmFzZVN0YXRlc0RpcmVjdGl2ZS5nZXRDc3NDbGFzc2VzKCdldWltLXRvb2xiYXItZGF0ZXBpY2tlcicpLFxuICAgICAgICBdLmpvaW4oJyAnKTtcbiAgICB9XG5cbiAgICB1cGRhdGVDdXJyZW50RGF0ZShkYXRlOnN0cmluZyk6IHZvaWQge1xuICAgICAgICB0aGlzLmN1cnJlbnREYXRlID0gKG5ldyBEYXRlKGRhdGUpKTtcbiAgICAgICAgdGhpcy5kYXRlQ2hhbmdlZC5lbWl0KHRoaXMuY3VycmVudERhdGUpO1xuICAgICAgICB0aGlzLmZvcm1hdHRlZERhdGUgPSB0aGlzLmN1cnJlbnREYXRlLnRvTG9jYWxlRGF0ZVN0cmluZygpO1xuICAgICAgICB0aGlzLmZvcm1hdERhdGVBbmRXZWVrRGF5KCk7XG4gICAgfVxuXG4gICAgY2FsZW5kYXJEYXRlQ2hhbmdlZChldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgY3VzdG9tRXZlbnQgPSBldmVudCBhcyBDdXN0b21FdmVudDtcbiAgICAgICAgaWYgKGN1c3RvbUV2ZW50LmRldGFpbC52YWx1ZSkge1xuICAgICAgICAgICAgdGhpcy5jdXJyZW50RGF0ZSA9IChuZXcgRGF0ZShjdXN0b21FdmVudC5kZXRhaWwudmFsdWUpKTtcbiAgICAgICAgICAgIHRoaXMuZm9ybWF0dGVkRGF0ZSA9IHRoaXMuY3VycmVudERhdGUudG9Mb2NhbGVEYXRlU3RyaW5nKCk7XG4gICAgICAgICAgICB0aGlzLmZvcm1hdERhdGVBbmRXZWVrRGF5KCk7XG4gICAgICAgICAgICB0aGlzLmRhdGVDaGFuZ2VkLmVtaXQodGhpcy5jdXJyZW50RGF0ZSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcHJvdGVjdGVkIHNlbGVjdFByZXZEYXRlKCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5zZWxlY3REYXRlQnkgPT09ICd3ZWVrJykge1xuICAgICAgICAgICAgdGhpcy5jdXJyZW50RGF0ZS5zZXREYXRlKHRoaXMuY3VycmVudERhdGUuZ2V0RGF0ZSgpIC0gNyApO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5jdXJyZW50RGF0ZS5zZXREYXRlKHRoaXMuY3VycmVudERhdGUuZ2V0RGF0ZSgpIC0gMSApO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5mb3JtYXR0ZWREYXRlID0gdGhpcy5jdXJyZW50RGF0ZS50b0xvY2FsZURhdGVTdHJpbmcoKTtcbiAgICAgICAgdGhpcy5mb3JtYXREYXRlQW5kV2Vla0RheSgpO1xuICAgICAgICB0aGlzLnNlbGVjdGVkRGF0ZSA9IHRoaXMuY3VycmVudERhdGUudG9JU09TdHJpbmcoKTtcbiAgICAgICAgdGhpcy5wcmV2QnRuQ2xpY2suZW1pdCh0aGlzLmN1cnJlbnREYXRlKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgc2VsZWN0TmV4dERhdGUoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLnNlbGVjdERhdGVCeSA9PT0gJ3dlZWsnKSB7XG4gICAgICAgICAgICB0aGlzLmN1cnJlbnREYXRlLnNldERhdGUodGhpcy5jdXJyZW50RGF0ZS5nZXREYXRlKCkgKyA3ICk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmN1cnJlbnREYXRlLnNldERhdGUodGhpcy5jdXJyZW50RGF0ZS5nZXREYXRlKCkgKyAxICk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmZvcm1hdHRlZERhdGUgPSB0aGlzLmN1cnJlbnREYXRlLnRvTG9jYWxlRGF0ZVN0cmluZygpO1xuICAgICAgICB0aGlzLmZvcm1hdERhdGVBbmRXZWVrRGF5KCk7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWREYXRlID0gdGhpcy5jdXJyZW50RGF0ZS50b0lTT1N0cmluZygpO1xuICAgICAgICB0aGlzLm5leHRCdG5DbGljay5lbWl0KHRoaXMuY3VycmVudERhdGUpO1xuICAgIH1cblxuICAgIHByaXZhdGUgbG9hZFdlZWtkYXlzVHJhbnNsYXRpb24obGFuZzogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIHRoaXMudHJhbnNsYXRlLmdldCgnZXVpbS50b29sYmFyLWRhdGVwaWNrZXIuV0VFS0RBWVMnKS5zdWJzY3JpYmUoKHdlZWtkYXlzOiBzdHJpbmdbXSkgPT4ge1xuICAgICAgICAgICAgdGhpcy53ZWVrZGF5cyA9IHdlZWtkYXlzO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGZvcm1hdERhdGVBbmRXZWVrRGF5KCk6IHZvaWQge1xuICAgICAgICB0aGlzLndlZWtEYXlOYW1lID0gdGhpcy53ZWVrZGF5c1t0aGlzLmN1cnJlbnREYXRlLmdldERheSgpXTtcbiAgICB9XG5cbn1cbiIsIjxpb24taXRlbSBjbGFzcz1cImV1aW0tdG9vbGJhci1kYXRlcGlja2VyX19pdGVtXCIgY29sb3I9XCJicmFuZGluZ1wiPlxuICAgIDxldWltLWF2YXRhciAgZmlsbD1cImNsZWFyXCIgc2xvdD1cInN0YXJ0XCIgPlxuICAgICAgICA8ZXVpbS1hdmF0YXItaWNvbj5cbiAgICAgICAgICAgIDxpb24taWNvbiBbbmFtZV09XCJpY29uXCJcbiAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImV1aW0tdG9vbGJhci1kYXRlcGlja2VyX19jYWxlbmRhclwiPjwvaW9uLWljb24+XG4gICAgICAgIDwvZXVpbS1hdmF0YXItaWNvbj5cbiAgICA8L2V1aW0tYXZhdGFyPlxuICAgIEBpZiAoIWV1aW1SZWFkT25seSl7XG4gICAgPGlvbi1kYXRldGltZS1idXR0b24gY2xhc3M9XCJldWltLXRvb2xiYXItZGF0ZXBpY2tlcl9fZGF0ZXRpbWUtYnV0dG9uLS1oaWRkZW5cIlxuICAgICAgICAgICAgICAgICAgICAgICAgIFtkYXRldGltZV09XCJkYXRlVGltZUlkXCI+XG4gICAgPC9pb24tZGF0ZXRpbWUtYnV0dG9uPlxuICAgIH1cbiAgICA8ZGl2IGNsYXNzPVwiZXVpbS10b29sYmFyLWRhdGVwaWNrZXJfX2RhdGV0aW1lLWJ1dHRvblwiIFtpZF09XCJtb2RhbElkXCIgW3N0eWxlLmN1cnNvcl09XCIoIWV1aW1SZWFkT25seSkgPyAncG9pbnRlcicgOiAnYXV0bydcIj5cbiAgICAgICAgPGlvbi1sYWJlbCBjbGFzcz1cImV1aW0tdG9vbGJhci1kYXRlcGlja2VyX19kYXRlXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZXVpbS10b29sYmFyLWRhdGVwaWNrZXJfX3RpdGxlXCJcbiAgICAgICAgICAgICAgICAgZXVpbUxhYmVsXG4gICAgICAgICAgICAgICAgIGV1aW1MYWJlbFRpdGxlXG4gICAgICAgICAgICAgICAgIGV1aW1MYWJlbFRydW5jYXRlXG4gICAgICAgICAgICAgICAgIGRpc2FibGVkPVwiZXVpbVJlYWRPbmx5XCI+e3shdGl0bGUgPyB3ZWVrRGF5TmFtZSA6IHRpdGxlfX08L2Rpdj5cblxuICAgICAgICAgICAgPGRpdiBldWltTGFiZWxcbiAgICAgICAgICAgICAgICAgZXVpbUxhYmVsU3ViVGl0bGVcbiAgICAgICAgICAgICAgICAgZXVpbUxhYmVsVHJ1bmNhdGVcbiAgICAgICAgICAgICAgICAgZGlzYWJsZWQ9XCJldWltUmVhZE9ubHlcIj57eyFzdWJUaXRsZSA/IGZvcm1hdHRlZERhdGUgOiBzdWJUaXRsZX19PC9kaXY+XG4gICAgICAgIDwvaW9uLWxhYmVsPlxuICAgICAgICBAaWYgKCFldWltUmVhZE9ubHkpe1xuICAgICAgICAgICAgPGlvbi1pY29uIGNsYXNzPVwiZXVpbS10b29sYmFyLWRhdGVwaWNrZXJfX2RhdGV0aW1lLWNhcmV0XCJcbiAgICAgICAgICAgICAgICAgICAgICBuYW1lPVwiY2FyZXQtZG93bi1zaGFycFwiPjwvaW9uLWljb24+XG4gICAgICAgIH1cbiAgICA8L2Rpdj5cblxuICAgIEBpZiAoIWV1aW1SZWFkT25seSkge1xuICAgICAgICA8aW9uLWJ1dHRvbnMgc2xvdD1cImVuZFwiPlxuICAgICAgICAgICAgPGlvbi1idXR0b24gKGNsaWNrKT1cInNlbGVjdFByZXZEYXRlKClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXSA9IFwiZXVpbVByZXZCdG5EaXNhYmxlZFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBzaGFwZT1cInJvdW5kXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZXVpbS10b29sYmFyLWRhdGVwaWNrZXJfX25hdi1idXR0b25cIj5cbiAgICAgICAgICAgICAgICA8aW9uLWljb24gbmFtZT1cImNoZXZyb24tYmFjay1jaXJjbGUtc2hhcnBcIj5cbiAgICAgICAgICAgICAgICA8L2lvbi1pY29uPlxuICAgICAgICAgICAgPC9pb24tYnV0dG9uPlxuICAgICAgICAgICAgPGlvbi1idXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJzZWxlY3ROZXh0RGF0ZSgpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJldWltTmV4dEJ0bkRpc2FibGVkXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIHNoYXBlPVwicm91bmRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJldWltLXRvb2xiYXItZGF0ZXBpY2tlcl9fbmF2LWJ1dHRvbiBldWltLXRvb2xiYXItZGF0ZXBpY2tlcl9fbmF2LWJ1dHRvbi0tbmV4dFwiPlxuICAgICAgICAgICAgICAgIDxpb24taWNvbiBuYW1lPVwiY2hldnJvbi1mb3J3YXJkLWNpcmNsZS1zaGFycFwiPjwvaW9uLWljb24+XG4gICAgICAgICAgICA8L2lvbi1idXR0b24+XG4gICAgICAgIDwvaW9uLWJ1dHRvbnM+XG4gICAgfVxuPC9pb24taXRlbT5cblxuQGlmICghZXVpbVJlYWRPbmx5KXtcbjxpb24tbW9kYWwgW2tlZXBDb250ZW50c01vdW50ZWRdPVwidHJ1ZVwiXG4gICAgICAgICAgIFt0cmlnZ2VyXT1cIm1vZGFsSWRcIj5cbiAgICA8bmctdGVtcGxhdGU+XG4gICAgICAgIDxpb24tZGF0ZXRpbWVcbiAgICAgICAgICAgIFtzaG93RGVmYXVsdEJ1dHRvbnNdPVwidHJ1ZVwiXG4gICAgICAgICAgICAoaW9uQ2hhbmdlKT1cImNhbGVuZGFyRGF0ZUNoYW5nZWQoJGV2ZW50KVwiXG4gICAgICAgICAgICBzaXplPVwiY292ZXJcIlxuICAgICAgICAgICAgW2lkXT1cImRhdGVUaW1lSWRcIlxuICAgICAgICAgICAgW2xvY2FsZV09XCJjdXJyZW50TGFuZ1wiXG4gICAgICAgICAgICBbKG5nTW9kZWwpXT1cInNlbGVjdGVkRGF0ZVwiPjwvaW9uLWRhdGV0aW1lPlxuICAgIDwvbmctdGVtcGxhdGU+XG48L2lvbi1tb2RhbD5cbn1cbiJdfQ==
@@ -17,7 +17,7 @@ export class EuimHeaderDetailsComponent {
17
17
  ].join(' ');
18
18
  }
19
19
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: EuimHeaderDetailsComponent, deps: [{ token: i1.BaseStatesDirective }], target: i0.ɵɵFactoryTarget.Component }); }
20
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.2.13", type: EuimHeaderDetailsComponent, selector: "euim-header-details", inputs: { hasBorderBottom: ["hasBorderBottom", "hasBorderBottom", booleanAttribute] }, host: { properties: { "class": "this.cssClasses" } }, hostDirectives: [{ directive: i1.BaseStatesDirective, inputs: ["color", "color"] }], ngImport: i0, template: "<ng-content></ng-content>\n", styles: [".euim-header-details{padding:var(--eui-s-m);display:block;text-align:center;background-color:var(--eui-c-neutral-bg-light);border-bottom:1px solid var(--eui-c-neutral-lightest)}.euim-header-details--no-border-bottom{border-bottom:none}.euim-header-details--branding{background-color:var(--eui-c-branding);border-bottom:none}.euim-header-details--branding .euim-header-details__title,.euim-header-details--branding .euim-header-details__meta{color:var(--eui-c-branding-contrast)}.euim-header-details__title{font:var(--eui-f-m-compact);color:var(--eui-c-neutral)}.euim-header-details__meta{color:var(--eui-c-neutral-light);font:var(--eui-f-s-compact)}.euim-header-details__icon{display:inline-block;margin-bottom:var(--eui-s-xs)}.euim-header-details__title+.euim-header-details__meta,.euim-header-details__meta+.euim-header-details__meta{margin-top:var(--eui-s-2xs)}.euim-header-details p,.euim-header-details span{margin:0}.euim-header-details span[euimHeaderDetailsTitle],.euim-header-details span[euimHeaderDetailsMeta]{display:block}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
20
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.2.13", type: EuimHeaderDetailsComponent, selector: "euim-header-details", inputs: { hasBorderBottom: ["hasBorderBottom", "hasBorderBottom", booleanAttribute] }, host: { properties: { "class": "this.cssClasses" } }, hostDirectives: [{ directive: i1.BaseStatesDirective, inputs: ["color", "color"] }], ngImport: i0, template: "<ng-content></ng-content>\n", styles: [".euim-header-details{padding:var(--eui-s-m);display:block;text-align:center;background-color:var(--eui-c-neutral-bg-light);border-bottom:1px solid var(--eui-c-neutral-lightest)}.euim-header-details--no-border-bottom{border-bottom:none}.euim-header-details--branding{background-color:var(--eui-c-branding);border-bottom:none}.euim-header-details--branding .euim-header-details__title,.euim-header-details--branding .euim-header-details__meta{color:var(--eui-c-branding-contrast)}.euim-header-details--branding .euim-avatar{background-color:var(--eui-c-branding-contrast)}.euim-header-details--branding .euim-avatar ion-icon{color:var(--eui-c-branding)}.euim-header-details__title{font:var(--eui-f-m-compact);color:var(--eui-c-neutral)}.euim-header-details__meta{color:var(--eui-c-neutral-light);font:var(--eui-f-s-compact)}.euim-header-details__icon{display:inline-block;margin-bottom:var(--eui-s-xs)}.euim-header-details__title+.euim-header-details__meta,.euim-header-details__meta+.euim-header-details__meta{margin-top:var(--eui-s-2xs)}.euim-header-details p,.euim-header-details span{margin:0}.euim-header-details span[euimHeaderDetailsTitle],.euim-header-details span[euimHeaderDetailsMeta]{display:block}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
21
21
  }
22
22
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: EuimHeaderDetailsComponent, decorators: [{
23
23
  type: Component,
@@ -28,7 +28,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
28
28
  'color',
29
29
  ],
30
30
  },
31
- ], template: "<ng-content></ng-content>\n", styles: [".euim-header-details{padding:var(--eui-s-m);display:block;text-align:center;background-color:var(--eui-c-neutral-bg-light);border-bottom:1px solid var(--eui-c-neutral-lightest)}.euim-header-details--no-border-bottom{border-bottom:none}.euim-header-details--branding{background-color:var(--eui-c-branding);border-bottom:none}.euim-header-details--branding .euim-header-details__title,.euim-header-details--branding .euim-header-details__meta{color:var(--eui-c-branding-contrast)}.euim-header-details__title{font:var(--eui-f-m-compact);color:var(--eui-c-neutral)}.euim-header-details__meta{color:var(--eui-c-neutral-light);font:var(--eui-f-s-compact)}.euim-header-details__icon{display:inline-block;margin-bottom:var(--eui-s-xs)}.euim-header-details__title+.euim-header-details__meta,.euim-header-details__meta+.euim-header-details__meta{margin-top:var(--eui-s-2xs)}.euim-header-details p,.euim-header-details span{margin:0}.euim-header-details span[euimHeaderDetailsTitle],.euim-header-details span[euimHeaderDetailsMeta]{display:block}\n"] }]
31
+ ], template: "<ng-content></ng-content>\n", styles: [".euim-header-details{padding:var(--eui-s-m);display:block;text-align:center;background-color:var(--eui-c-neutral-bg-light);border-bottom:1px solid var(--eui-c-neutral-lightest)}.euim-header-details--no-border-bottom{border-bottom:none}.euim-header-details--branding{background-color:var(--eui-c-branding);border-bottom:none}.euim-header-details--branding .euim-header-details__title,.euim-header-details--branding .euim-header-details__meta{color:var(--eui-c-branding-contrast)}.euim-header-details--branding .euim-avatar{background-color:var(--eui-c-branding-contrast)}.euim-header-details--branding .euim-avatar ion-icon{color:var(--eui-c-branding)}.euim-header-details__title{font:var(--eui-f-m-compact);color:var(--eui-c-neutral)}.euim-header-details__meta{color:var(--eui-c-neutral-light);font:var(--eui-f-s-compact)}.euim-header-details__icon{display:inline-block;margin-bottom:var(--eui-s-xs)}.euim-header-details__title+.euim-header-details__meta,.euim-header-details__meta+.euim-header-details__meta{margin-top:var(--eui-s-2xs)}.euim-header-details p,.euim-header-details span{margin:0}.euim-header-details span[euimHeaderDetailsTitle],.euim-header-details span[euimHeaderDetailsMeta]{display:block}\n"] }]
32
32
  }], ctorParameters: () => [{ type: i1.BaseStatesDirective }], propDecorators: { hasBorderBottom: [{
33
33
  type: Input,
34
34
  args: [{ transform: booleanAttribute }]
@@ -56,10 +56,10 @@ export class EuimLanguageListComponent {
56
56
  });
57
57
  }
58
58
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: EuimLanguageListComponent, deps: [{ token: i1.EuiAppShellService }, { token: i2.EuimAppService }, { token: i3.ModalController }, { token: i1.I18nService }], target: i0.ɵɵFactoryTarget.Component }); }
59
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: EuimLanguageListComponent, selector: "euim-language-list", ngImport: i0, template: "<ion-header>\n <ion-toolbar color=\"branding\">\n <ion-buttons slot=\"start\">\n <ion-button (click)=\"onClose()\">\n <ion-icon name=\"close-sharp\" slot=\"icon-only\"></ion-icon>\n </ion-button>\n </ion-buttons>\n <ion-title> {{'euim.language-list.SELECT-LANGUAGE' | translate }}</ion-title>\n </ion-toolbar>\n <ion-toolbar color=\"branding\" class=\"euim-language-selector__search\">\n <ion-searchbar (ionChange)=\"handleChange($event)\"></ion-searchbar>\n </ion-toolbar>\n</ion-header>\n<ion-content>\n @if (results.length > 0) {\n <ion-list>\n @for (item of results; track item) {\n @if (firstElementFromEUList?.code === item.code || firstElementFromNonEUList?.code === item.code || euLanguageList[0]?.code === item.code\n || nonEULanguageList[0]?.code === item.code) {\n <ion-item-divider>\n {{ (firstElementFromEUList?.code === item.code || euLanguageList[0]?.code === item.code)\n ? ('euim.language-list.EU-LANGUAGES' | translate)\n : 'euim.language-list.NON-EU-LANGUAGES' | translate }}\n </ion-item-divider>\n }\n <ion-item button (click)=\"onLanguageSelected(item)\" [lines]=\"lastElementFromEUList === item || isLastElementOfArray(euLanguageList, item) || isLastElementOfArray(nonEULanguageList, item) ? 'none' : 'inset'\">\n <euim-avatar fill=\"solid\" slot=\"start\" variant=\"rounded\" class=\"euim-language-selector__avatar\">\n <euim-avatar-icon>\n <ion-icon name=\"language-sharp\" class=\"euim-language-selector__internal-icon\"></ion-icon>\n </euim-avatar-icon>\n </euim-avatar>\n <ion-label>\n <div euimLabel euimLabelTitle>{{item.label}}</div>\n <div euimLabel euimLabelMeta class=\"eui-u-text-uppercase\">\n {{item.code}}\n </div>\n </ion-label>\n @if (selectedLanguage?.code===item.code) {\n <ion-buttons>\n <ion-button fill=\"clear\" >\n <ion-icon name=\"checkmark-sharp\" slot=\"icon-only\" color=\"primary\"></ion-icon>\n </ion-button>\n </ion-buttons>\n }\n </ion-item>\n }\n </ion-list>\n }\n @if (results.length < 1) {\n <euim-empty-list-placeholder euimMarginTopLarge\n class=\"euim-language-selector__empty-placeholder\">\n </euim-empty-list-placeholder>\n }\n</ion-content>\n\n", dependencies: [{ kind: "component", type: i3.IonButton, selector: "ion-button", inputs: ["buttonType", "color", "disabled", "download", "expand", "fill", "form", "href", "mode", "rel", "routerAnimation", "routerDirection", "shape", "size", "strong", "target", "type"] }, { kind: "component", type: i3.IonButtons, selector: "ion-buttons", inputs: ["collapse"] }, { kind: "component", type: i3.IonContent, selector: "ion-content", inputs: ["color", "fixedSlotPlacement", "forceOverscroll", "fullscreen", "scrollEvents", "scrollX", "scrollY"] }, { kind: "component", type: i3.IonHeader, selector: "ion-header", inputs: ["collapse", "mode", "translucent"] }, { kind: "component", type: i3.IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }, { kind: "component", type: i3.IonItem, selector: "ion-item", inputs: ["button", "color", "detail", "detailIcon", "disabled", "download", "href", "lines", "mode", "rel", "routerAnimation", "routerDirection", "target", "type"] }, { kind: "component", type: i3.IonItemDivider, selector: "ion-item-divider", inputs: ["color", "mode", "sticky"] }, { kind: "component", type: i3.IonLabel, selector: "ion-label", inputs: ["color", "mode", "position"] }, { kind: "component", type: i3.IonList, selector: "ion-list", inputs: ["inset", "lines", "mode"] }, { kind: "component", type: i3.IonSearchbar, selector: "ion-searchbar", inputs: ["animated", "autocapitalize", "autocomplete", "autocorrect", "cancelButtonIcon", "cancelButtonText", "clearIcon", "color", "debounce", "disabled", "enterkeyhint", "inputmode", "maxlength", "minlength", "mode", "name", "placeholder", "searchIcon", "showCancelButton", "showClearButton", "spellcheck", "type", "value"] }, { kind: "component", type: i3.IonTitle, selector: "ion-title", inputs: ["color", "size"] }, { kind: "component", type: i3.IonToolbar, selector: "ion-toolbar", inputs: ["color", "mode"] }, { kind: "directive", type: i3.TextValueAccessor, selector: "ion-input:not([type=number]),ion-textarea,ion-searchbar" }, { kind: "component", type: i4.EuimAvatarComponent, selector: "euim-avatar", inputs: ["color", "size", "fill", "variant", "borderColor"] }, { kind: "component", type: i5.EuimAvatarIconComponent, selector: "euim-avatar-icon" }, { kind: "component", type: i6.EuimLabelComponent, selector: "div[euimLabel], p[euimLabel], span[euimLabel], euim-label", inputs: ["euimLabelTruncateWithLines", "euimLabelTitle", "euimLabelSubTitle", "euimLabelMeta", "euimLabelTruncate", "euimLabelTextWrap"] }, { kind: "component", type: i7.EuimEmptyListPlaceholderComponent, selector: "euim-empty-list-placeholder", inputs: ["message", "icon", "description", "button", "euimMarginTopLarge", "euimMarginTopSmall", "euimMarginBottomSmall"] }, { kind: "pipe", type: i8.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
59
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: EuimLanguageListComponent, selector: "euim-language-list", ngImport: i0, template: "<ion-header>\n <ion-toolbar color=\"branding\">\n <ion-buttons slot=\"start\">\n <ion-button (click)=\"onClose()\">\n <ion-icon name=\"close-sharp\" slot=\"icon-only\"></ion-icon>\n </ion-button>\n </ion-buttons>\n <ion-title> {{'euim.language-list.SELECT-LANGUAGE' | translate }}</ion-title>\n </ion-toolbar>\n <ion-toolbar color=\"branding\" class=\"euim-language-selector__search\">\n <ion-searchbar (ionInput)=\"handleChange($event)\"></ion-searchbar>\n </ion-toolbar>\n</ion-header>\n<ion-content>\n @if (results.length > 0) {\n <ion-list>\n @for (item of results; track item) {\n @if (firstElementFromEUList?.code === item.code || firstElementFromNonEUList?.code === item.code || euLanguageList[0]?.code === item.code\n || nonEULanguageList[0]?.code === item.code) {\n <ion-item-divider>\n {{ (firstElementFromEUList?.code === item.code || euLanguageList[0]?.code === item.code)\n ? ('euim.language-list.EU-LANGUAGES' | translate)\n : 'euim.language-list.NON-EU-LANGUAGES' | translate }}\n </ion-item-divider>\n }\n <ion-item button (click)=\"onLanguageSelected(item)\" [lines]=\"lastElementFromEUList === item || isLastElementOfArray(euLanguageList, item) || isLastElementOfArray(nonEULanguageList, item) ? 'none' : 'inset'\">\n <euim-avatar fill=\"solid\" slot=\"start\" variant=\"rounded\" class=\"euim-language-selector__avatar\">\n <euim-avatar-icon>\n <ion-icon name=\"language-sharp\" class=\"euim-language-selector__internal-icon\"></ion-icon>\n </euim-avatar-icon>\n </euim-avatar>\n <ion-label>\n <div euimLabel euimLabelTitle>{{item.label}}</div>\n <div euimLabel euimLabelMeta class=\"eui-u-text-uppercase\">\n {{item.code}}\n </div>\n </ion-label>\n @if (selectedLanguage?.code===item.code) {\n <ion-buttons>\n <ion-button fill=\"clear\" >\n <ion-icon name=\"checkmark-sharp\" slot=\"icon-only\" color=\"primary\"></ion-icon>\n </ion-button>\n </ion-buttons>\n }\n </ion-item>\n }\n </ion-list>\n }\n @if (results.length < 1) {\n <euim-empty-list-placeholder euimMarginTopLarge\n class=\"euim-language-selector__empty-placeholder\">\n </euim-empty-list-placeholder>\n }\n</ion-content>\n\n", dependencies: [{ kind: "component", type: i3.IonButton, selector: "ion-button", inputs: ["buttonType", "color", "disabled", "download", "expand", "fill", "form", "href", "mode", "rel", "routerAnimation", "routerDirection", "shape", "size", "strong", "target", "type"] }, { kind: "component", type: i3.IonButtons, selector: "ion-buttons", inputs: ["collapse"] }, { kind: "component", type: i3.IonContent, selector: "ion-content", inputs: ["color", "fixedSlotPlacement", "forceOverscroll", "fullscreen", "scrollEvents", "scrollX", "scrollY"] }, { kind: "component", type: i3.IonHeader, selector: "ion-header", inputs: ["collapse", "mode", "translucent"] }, { kind: "component", type: i3.IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }, { kind: "component", type: i3.IonItem, selector: "ion-item", inputs: ["button", "color", "detail", "detailIcon", "disabled", "download", "href", "lines", "mode", "rel", "routerAnimation", "routerDirection", "target", "type"] }, { kind: "component", type: i3.IonItemDivider, selector: "ion-item-divider", inputs: ["color", "mode", "sticky"] }, { kind: "component", type: i3.IonLabel, selector: "ion-label", inputs: ["color", "mode", "position"] }, { kind: "component", type: i3.IonList, selector: "ion-list", inputs: ["inset", "lines", "mode"] }, { kind: "component", type: i3.IonSearchbar, selector: "ion-searchbar", inputs: ["animated", "autocapitalize", "autocomplete", "autocorrect", "cancelButtonIcon", "cancelButtonText", "clearIcon", "color", "debounce", "disabled", "enterkeyhint", "inputmode", "maxlength", "minlength", "mode", "name", "placeholder", "searchIcon", "showCancelButton", "showClearButton", "spellcheck", "type", "value"] }, { kind: "component", type: i3.IonTitle, selector: "ion-title", inputs: ["color", "size"] }, { kind: "component", type: i3.IonToolbar, selector: "ion-toolbar", inputs: ["color", "mode"] }, { kind: "directive", type: i3.TextValueAccessor, selector: "ion-input:not([type=number]),ion-textarea,ion-searchbar" }, { kind: "component", type: i4.EuimAvatarComponent, selector: "euim-avatar", inputs: ["color", "size", "fill", "variant", "borderColor"] }, { kind: "component", type: i5.EuimAvatarIconComponent, selector: "euim-avatar-icon" }, { kind: "component", type: i6.EuimLabelComponent, selector: "div[euimLabel], p[euimLabel], span[euimLabel], euim-label", inputs: ["euimLabelTruncateWithLines", "euimLabelTitle", "euimLabelSubTitle", "euimLabelMeta", "euimLabelTruncate", "euimLabelTextWrap"] }, { kind: "component", type: i7.EuimEmptyListPlaceholderComponent, selector: "euim-empty-list-placeholder", inputs: ["message", "icon", "description", "button", "euimMarginTopLarge", "euimMarginTopSmall", "euimMarginBottomSmall"] }, { kind: "pipe", type: i8.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
60
60
  }
61
61
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: EuimLanguageListComponent, decorators: [{
62
62
  type: Component,
63
- args: [{ selector: 'euim-language-list', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ion-header>\n <ion-toolbar color=\"branding\">\n <ion-buttons slot=\"start\">\n <ion-button (click)=\"onClose()\">\n <ion-icon name=\"close-sharp\" slot=\"icon-only\"></ion-icon>\n </ion-button>\n </ion-buttons>\n <ion-title> {{'euim.language-list.SELECT-LANGUAGE' | translate }}</ion-title>\n </ion-toolbar>\n <ion-toolbar color=\"branding\" class=\"euim-language-selector__search\">\n <ion-searchbar (ionChange)=\"handleChange($event)\"></ion-searchbar>\n </ion-toolbar>\n</ion-header>\n<ion-content>\n @if (results.length > 0) {\n <ion-list>\n @for (item of results; track item) {\n @if (firstElementFromEUList?.code === item.code || firstElementFromNonEUList?.code === item.code || euLanguageList[0]?.code === item.code\n || nonEULanguageList[0]?.code === item.code) {\n <ion-item-divider>\n {{ (firstElementFromEUList?.code === item.code || euLanguageList[0]?.code === item.code)\n ? ('euim.language-list.EU-LANGUAGES' | translate)\n : 'euim.language-list.NON-EU-LANGUAGES' | translate }}\n </ion-item-divider>\n }\n <ion-item button (click)=\"onLanguageSelected(item)\" [lines]=\"lastElementFromEUList === item || isLastElementOfArray(euLanguageList, item) || isLastElementOfArray(nonEULanguageList, item) ? 'none' : 'inset'\">\n <euim-avatar fill=\"solid\" slot=\"start\" variant=\"rounded\" class=\"euim-language-selector__avatar\">\n <euim-avatar-icon>\n <ion-icon name=\"language-sharp\" class=\"euim-language-selector__internal-icon\"></ion-icon>\n </euim-avatar-icon>\n </euim-avatar>\n <ion-label>\n <div euimLabel euimLabelTitle>{{item.label}}</div>\n <div euimLabel euimLabelMeta class=\"eui-u-text-uppercase\">\n {{item.code}}\n </div>\n </ion-label>\n @if (selectedLanguage?.code===item.code) {\n <ion-buttons>\n <ion-button fill=\"clear\" >\n <ion-icon name=\"checkmark-sharp\" slot=\"icon-only\" color=\"primary\"></ion-icon>\n </ion-button>\n </ion-buttons>\n }\n </ion-item>\n }\n </ion-list>\n }\n @if (results.length < 1) {\n <euim-empty-list-placeholder euimMarginTopLarge\n class=\"euim-language-selector__empty-placeholder\">\n </euim-empty-list-placeholder>\n }\n</ion-content>\n\n" }]
63
+ args: [{ selector: 'euim-language-list', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ion-header>\n <ion-toolbar color=\"branding\">\n <ion-buttons slot=\"start\">\n <ion-button (click)=\"onClose()\">\n <ion-icon name=\"close-sharp\" slot=\"icon-only\"></ion-icon>\n </ion-button>\n </ion-buttons>\n <ion-title> {{'euim.language-list.SELECT-LANGUAGE' | translate }}</ion-title>\n </ion-toolbar>\n <ion-toolbar color=\"branding\" class=\"euim-language-selector__search\">\n <ion-searchbar (ionInput)=\"handleChange($event)\"></ion-searchbar>\n </ion-toolbar>\n</ion-header>\n<ion-content>\n @if (results.length > 0) {\n <ion-list>\n @for (item of results; track item) {\n @if (firstElementFromEUList?.code === item.code || firstElementFromNonEUList?.code === item.code || euLanguageList[0]?.code === item.code\n || nonEULanguageList[0]?.code === item.code) {\n <ion-item-divider>\n {{ (firstElementFromEUList?.code === item.code || euLanguageList[0]?.code === item.code)\n ? ('euim.language-list.EU-LANGUAGES' | translate)\n : 'euim.language-list.NON-EU-LANGUAGES' | translate }}\n </ion-item-divider>\n }\n <ion-item button (click)=\"onLanguageSelected(item)\" [lines]=\"lastElementFromEUList === item || isLastElementOfArray(euLanguageList, item) || isLastElementOfArray(nonEULanguageList, item) ? 'none' : 'inset'\">\n <euim-avatar fill=\"solid\" slot=\"start\" variant=\"rounded\" class=\"euim-language-selector__avatar\">\n <euim-avatar-icon>\n <ion-icon name=\"language-sharp\" class=\"euim-language-selector__internal-icon\"></ion-icon>\n </euim-avatar-icon>\n </euim-avatar>\n <ion-label>\n <div euimLabel euimLabelTitle>{{item.label}}</div>\n <div euimLabel euimLabelMeta class=\"eui-u-text-uppercase\">\n {{item.code}}\n </div>\n </ion-label>\n @if (selectedLanguage?.code===item.code) {\n <ion-buttons>\n <ion-button fill=\"clear\" >\n <ion-icon name=\"checkmark-sharp\" slot=\"icon-only\" color=\"primary\"></ion-icon>\n </ion-button>\n </ion-buttons>\n }\n </ion-item>\n }\n </ion-list>\n }\n @if (results.length < 1) {\n <euim-empty-list-placeholder euimMarginTopLarge\n class=\"euim-language-selector__empty-placeholder\">\n </euim-empty-list-placeholder>\n }\n</ion-content>\n\n" }]
64
64
  }], ctorParameters: () => [{ type: i1.EuiAppShellService }, { type: i2.EuimAppService }, { type: i3.ModalController }, { type: i1.I18nService }] });
65
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXVpbS1sYW5ndWFnZS1saXN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9sYXlvdXQvZXVpbS1sYW5ndWFnZS1zZWxlY3Rvci9ldWltLWxhbmd1YWdlLWxpc3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL2xheW91dC9ldWltLWxhbmd1YWdlLXNlbGVjdG9yL2V1aW0tbGFuZ3VhZ2UtbGlzdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLHVCQUF1QixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNFLE9BQU8sRUFBc0IsY0FBYyxFQUE0QixNQUFNLFdBQVcsQ0FBQzs7Ozs7Ozs7OztBQVN6RixNQUFNLE9BQU8seUJBQXlCO0lBa0NsQztJQUNJOztPQUVHO0lBQ0ksZUFBbUM7SUFDMUM7O09BRUc7SUFDSSxVQUEwQixFQUN6QixTQUEwQixFQUMxQixXQUF3QjtRQU56QixvQkFBZSxHQUFmLGVBQWUsQ0FBb0I7UUFJbkMsZUFBVSxHQUFWLFVBQVUsQ0FBZ0I7UUFDekIsY0FBUyxHQUFULFNBQVMsQ0FBaUI7UUFDMUIsZ0JBQVcsR0FBWCxXQUFXLENBQWE7SUFDakMsQ0FBQztJQUVKLFFBQVE7UUFDSixJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDeEIsQ0FBQztJQUVELGtCQUFrQixDQUFDLFFBQXFCO1FBQ3BDLElBQUksQ0FBQyxXQUFXLENBQUMsV0FBVyxDQUFDLEVBQUUsVUFBVSxFQUFFLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQzVELElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxRQUFRLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRUQsb0JBQW9CLENBQUksS0FBVSxFQUFFLE9BQVU7UUFDMUMsSUFBSSxLQUFLLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQ3JCLE9BQU8sS0FBSyxDQUFDO1FBQ2pCLENBQUM7UUFDRCxPQUFPLEtBQUssQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxLQUFLLE9BQU8sQ0FBQztJQUMvQyxDQUFDO0lBRVMsWUFBWTtRQUNsQixJQUFJLENBQUMsY0FBYztZQUNmLGNBQWMsQ0FBQyxtQkFBbUIsQ0FDbEMsY0FBYyxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDO1FBRXRELElBQUksQ0FBQyxpQkFBaUI7WUFDbEIsQ0FBQyxHQUFHLGNBQWMsQ0FBQyxtQkFBbUIsQ0FDbEMsY0FBYyxDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFFOUQsSUFBSSxDQUFDLDJCQUEyQixHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsY0FBYyxFQUFFLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFDdkYsSUFBSSxDQUFDLE9BQU8sR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLDJCQUEyQixDQUFDLENBQUM7SUFDekQsQ0FBQztJQUVTLE9BQU87UUFDYixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxRQUFRLENBQUMsQ0FBQztJQUNsRCxDQUFDO0lBRVMsWUFBWSxDQUFDLEtBQUs7UUFDeEIsTUFBTSxLQUFLLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7UUFFL0MsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsMkJBQTJCLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQ3ZELE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUMzQyxDQUFDLENBQUMsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUNsRCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7a0lBdkZRLHlCQUF5QjtzSEFBekIseUJBQXlCLDBEQ1Z0QyxnN0VBdURBOzs0RkQ3Q2EseUJBQXlCO2tCQUxyQyxTQUFTOytCQUNJLG9CQUFvQixtQkFFYix1QkFBdUIsQ0FBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBFdWlBcHBTaGVsbFNlcnZpY2UsIEV1aUV1TGFuZ3VhZ2VzLCBFdWlMYW5ndWFnZSwgSTE4blNlcnZpY2UgfSBmcm9tICdAZXVpL2NvcmUnO1xuaW1wb3J0IHsgRXVpbUFwcFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcyc7XG5pbXBvcnQgeyBNb2RhbENvbnRyb2xsZXIgfSBmcm9tICdAaW9uaWMvYW5ndWxhcic7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZXVpbS1sYW5ndWFnZS1saXN0JyxcbiAgICB0ZW1wbGF0ZVVybDogJ2V1aW0tbGFuZ3VhZ2UtbGlzdC5jb21wb25lbnQuaHRtbCcsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIEV1aW1MYW5ndWFnZUxpc3RDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gICAgLyoqXG4gICAgICogQGRlcHJlY2F0ZWQgd2lsbCBiZSByZW1vdmVkIGluIGVVSSBNb2JpbGUgdjE5LlxuICAgICAqL1xuICAgIG5hbWU6IHN0cmluZztcbiAgICAvKipcbiAgICAgKiBAZGVwcmVjYXRlZCB3aWxsIGJlIHJlbW92ZWQgaW4gZVVJIE1vYmlsZSB2MTkuIFVzZSBub25FVUxhbmd1YWdlTGlzdFswXSBpbnN0ZWFkLlxuICAgICAqL1xuICAgIGZpcnN0RWxlbWVudEZyb21Ob25FVUxpc3Q6IEV1aUxhbmd1YWdlO1xuICAgIC8qKlxuICAgICAqIEBkZXByZWNhdGVkIHdpbGwgYmUgcmVtb3ZlZCBpbiBlVUkgTW9iaWxlIHYxOS4gVXNlIGV1TGFuZ3VhZ2VMaXN0WzBdIGluc3RlYWQuXG4gICAgICovXG4gICAgZmlyc3RFbGVtZW50RnJvbUVVTGlzdDogRXVpTGFuZ3VhZ2U7XG4gICAgLyoqXG4gICAgICogQGRlcHJlY2F0ZWQgd2lsbCBiZSByZW1vdmVkIGluIGVVSSBNb2JpbGUgdjE5LiBVc2UgaXNMYXN0RWxlbWVudE9mQXJyYXkoKSBmdW5jdGlvbiBpbnN0ZWFkLlxuICAgICAqL1xuICAgIGxhc3RFbGVtZW50RnJvbUVVTGlzdDogRXVpTGFuZ3VhZ2U7XG4gICAgbGFuZ3VhZ2VzOiBFdWlMYW5ndWFnZVtdO1xuICAgIHNlbGVjdGVkTGFuZ3VhZ2U6IEV1aUxhbmd1YWdlO1xuICAgIGV1TGFuZ3VhZ2VMaXN0OiBFdWlMYW5ndWFnZVtdO1xuICAgIG5vbkVVTGFuZ3VhZ2VMaXN0OiBFdWlMYW5ndWFnZVtdO1xuICAgIC8qKlxuICAgICAqIEBkZXByZWNhdGVkXG4gICAgICogd2lsbCBiZWNvbWUgcHJpdmF0ZSBpbiBlVUkgTW9iaWxlIHYxOS5cbiAgICAgKi9cbiAgICBsYW5ndWFnZXNTb3J0ZWRCeUVVQW5kTm9uRVU6IEV1aUxhbmd1YWdlW107XG4gICAgcmVzdWx0czogRXVpTGFuZ3VhZ2VbXTtcblxuICAgIC8qKlxuICAgICAqIEBkZXByZWNhdGVkIHdpbGwgYmUgcmVtb3ZlZCBpbiBlVUkgTW9iaWxlIHYxOS5cbiAgICAgKi9cbiAgICBpc0tleWJvYXJkU2hvd24gOiBib29sZWFuO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIC8qKlxuICAgICAgICAgKiBAZGVwcmVjYXRlZCB3aWxsIGJlIHJlbW92ZWQgaW4gZVVJIE1vYmlsZSB2MTkuXG4gICAgICAgICAqL1xuICAgICAgICBwdWJsaWMgYXBwU2hlbGxTZXJ2aWNlOiBFdWlBcHBTaGVsbFNlcnZpY2UsXG4gICAgICAgIC8qKlxuICAgICAgICAgKiBAZGVwcmVjYXRlZCB3aWxsIGJlIHJlbW92ZWQgaW4gZVVJIE1vYmlsZSB2MTkuXG4gICAgICAgICAqL1xuICAgICAgICBwdWJsaWMgYXBwU2VydmljZTogRXVpbUFwcFNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgbW9kYWxDdHJsOiBNb2RhbENvbnRyb2xsZXIsXG4gICAgICAgIHByaXZhdGUgaTE4blNlcnZpY2U6IEkxOG5TZXJ2aWNlLFxuICAgICkge31cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnNldExhbmd1YWdlcygpO1xuICAgIH1cblxuICAgIG9uTGFuZ3VhZ2VTZWxlY3RlZChsYW5ndWFnZTogRXVpTGFuZ3VhZ2UpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5pMThuU2VydmljZS51cGRhdGVTdGF0ZSh7IGFjdGl2ZUxhbmc6IGxhbmd1YWdlLmNvZGUgfSk7XG4gICAgICAgIHRoaXMubW9kYWxDdHJsLmRpc21pc3MobnVsbCwgJ2NhbmNlbCcpO1xuICAgIH1cblxuICAgIGlzTGFzdEVsZW1lbnRPZkFycmF5PFQ+KGFycmF5OiBUW10sIGVsZW1lbnQ6IFQpOiBib29sZWFuIHtcbiAgICAgICAgaWYgKGFycmF5Lmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBhcnJheVthcnJheS5sZW5ndGggLSAxXSA9PT0gZWxlbWVudDtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgc2V0TGFuZ3VhZ2VzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmV1TGFuZ3VhZ2VMaXN0ID1cbiAgICAgICAgICAgIEV1aUV1TGFuZ3VhZ2VzLmdldE9yZGVyZWRMYW5ndWFnZXMoXG4gICAgICAgICAgICBFdWlFdUxhbmd1YWdlcy5maWx0ZXJFVUxhbmd1YWdlcyh0aGlzLmxhbmd1YWdlcykpO1xuXG4gICAgICAgIHRoaXMubm9uRVVMYW5ndWFnZUxpc3QgPVxuICAgICAgICAgICAgWy4uLkV1aUV1TGFuZ3VhZ2VzLmdldE9yZGVyZWRMYW5ndWFnZXMoXG4gICAgICAgICAgICAgICAgRXVpRXVMYW5ndWFnZXMuZmlsdGVyTm9uRVVMYW5ndWFnZXModGhpcy5sYW5ndWFnZXMpKV07XG5cbiAgICAgICAgdGhpcy5sYW5ndWFnZXNTb3J0ZWRCeUVVQW5kTm9uRVUgPSBbLi4udGhpcy5ldUxhbmd1YWdlTGlzdCwgLi4udGhpcy5ub25FVUxhbmd1YWdlTGlzdF07XG4gICAgICAgIHRoaXMucmVzdWx0cyA9IFsuLi50aGlzLmxhbmd1YWdlc1NvcnRlZEJ5RVVBbmROb25FVV07XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIG9uQ2xvc2UoKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgICAgIHJldHVybiB0aGlzLm1vZGFsQ3RybC5kaXNtaXNzKG51bGwsICdjYW5jZWwnKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgaGFuZGxlQ2hhbmdlKGV2ZW50KTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHF1ZXJ5ID0gZXZlbnQudGFyZ2V0LnZhbHVlLnRvTG93ZXJDYXNlKCk7XG5cbiAgICAgICAgdGhpcy5yZXN1bHRzID0gdGhpcy5sYW5ndWFnZXNTb3J0ZWRCeUVVQW5kTm9uRVUuZmlsdGVyKGQgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIGQuY29kZS50b0xvd2VyQ2FzZSgpLmluZGV4T2YocXVlcnkpID4gLTEgfHxcbiAgICAgICAgICAgICAgICBkLmxhYmVsLnRvTG93ZXJDYXNlKCkuaW5kZXhPZihxdWVyeSkgPiAtMTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG59XG4iLCI8aW9uLWhlYWRlcj5cbiAgPGlvbi10b29sYmFyIGNvbG9yPVwiYnJhbmRpbmdcIj5cbiAgICA8aW9uLWJ1dHRvbnMgc2xvdD1cInN0YXJ0XCI+XG4gICAgICA8aW9uLWJ1dHRvbiAoY2xpY2spPVwib25DbG9zZSgpXCI+XG4gICAgICAgIDxpb24taWNvbiBuYW1lPVwiY2xvc2Utc2hhcnBcIiBzbG90PVwiaWNvbi1vbmx5XCI+PC9pb24taWNvbj5cbiAgICAgIDwvaW9uLWJ1dHRvbj5cbiAgICA8L2lvbi1idXR0b25zPlxuICAgIDxpb24tdGl0bGU+IHt7J2V1aW0ubGFuZ3VhZ2UtbGlzdC5TRUxFQ1QtTEFOR1VBR0UnIHwgdHJhbnNsYXRlIH19PC9pb24tdGl0bGU+XG4gIDwvaW9uLXRvb2xiYXI+XG4gIDxpb24tdG9vbGJhciBjb2xvcj1cImJyYW5kaW5nXCIgY2xhc3M9XCJldWltLWxhbmd1YWdlLXNlbGVjdG9yX19zZWFyY2hcIj5cbiAgICA8aW9uLXNlYXJjaGJhciAoaW9uQ2hhbmdlKT1cImhhbmRsZUNoYW5nZSgkZXZlbnQpXCI+PC9pb24tc2VhcmNoYmFyPlxuICA8L2lvbi10b29sYmFyPlxuPC9pb24taGVhZGVyPlxuPGlvbi1jb250ZW50PlxuICBAaWYgKHJlc3VsdHMubGVuZ3RoID4gMCkge1xuICAgIDxpb24tbGlzdD5cbiAgICAgIEBmb3IgKGl0ZW0gb2YgcmVzdWx0czsgdHJhY2sgaXRlbSkge1xuICAgICAgICBAaWYgKGZpcnN0RWxlbWVudEZyb21FVUxpc3Q/LmNvZGUgPT09IGl0ZW0uY29kZSB8fCBmaXJzdEVsZW1lbnRGcm9tTm9uRVVMaXN0Py5jb2RlID09PSBpdGVtLmNvZGUgfHwgZXVMYW5ndWFnZUxpc3RbMF0/LmNvZGUgPT09IGl0ZW0uY29kZVxuICAgICAgICAgIHx8IG5vbkVVTGFuZ3VhZ2VMaXN0WzBdPy5jb2RlID09PSBpdGVtLmNvZGUpIHtcbiAgICAgICAgICA8aW9uLWl0ZW0tZGl2aWRlcj5cbiAgICAgICAgICAgIHt7IChmaXJzdEVsZW1lbnRGcm9tRVVMaXN0Py5jb2RlID09PSBpdGVtLmNvZGUgfHwgZXVMYW5ndWFnZUxpc3RbMF0/LmNvZGUgPT09IGl0ZW0uY29kZSlcbiAgICAgICAgICAgID8gKCdldWltLmxhbmd1YWdlLWxpc3QuRVUtTEFOR1VBR0VTJyB8IHRyYW5zbGF0ZSlcbiAgICAgICAgICAgIDogJ2V1aW0ubGFuZ3VhZ2UtbGlzdC5OT04tRVUtTEFOR1VBR0VTJyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgICAgIDwvaW9uLWl0ZW0tZGl2aWRlcj5cbiAgICAgICAgfVxuICAgICAgICA8aW9uLWl0ZW0gYnV0dG9uIChjbGljayk9XCJvbkxhbmd1YWdlU2VsZWN0ZWQoaXRlbSlcIiBbbGluZXNdPVwibGFzdEVsZW1lbnRGcm9tRVVMaXN0ID09PSBpdGVtIHx8IGlzTGFzdEVsZW1lbnRPZkFycmF5KGV1TGFuZ3VhZ2VMaXN0LCBpdGVtKSB8fCBpc0xhc3RFbGVtZW50T2ZBcnJheShub25FVUxhbmd1YWdlTGlzdCwgaXRlbSkgPyAnbm9uZScgOiAnaW5zZXQnXCI+XG4gICAgICAgICAgICA8ZXVpbS1hdmF0YXIgZmlsbD1cInNvbGlkXCIgc2xvdD1cInN0YXJ0XCIgdmFyaWFudD1cInJvdW5kZWRcIiBjbGFzcz1cImV1aW0tbGFuZ3VhZ2Utc2VsZWN0b3JfX2F2YXRhclwiPlxuICAgICAgICAgICAgICAgIDxldWltLWF2YXRhci1pY29uPlxuICAgICAgICAgICAgICAgICAgICA8aW9uLWljb24gbmFtZT1cImxhbmd1YWdlLXNoYXJwXCIgY2xhc3M9XCJldWltLWxhbmd1YWdlLXNlbGVjdG9yX19pbnRlcm5hbC1pY29uXCI+PC9pb24taWNvbj5cbiAgICAgICAgICAgICAgICA8L2V1aW0tYXZhdGFyLWljb24+XG4gICAgICAgICAgICA8L2V1aW0tYXZhdGFyPlxuICAgICAgICAgIDxpb24tbGFiZWw+XG4gICAgICAgICAgICA8ZGl2IGV1aW1MYWJlbCBldWltTGFiZWxUaXRsZT57e2l0ZW0ubGFiZWx9fTwvZGl2PlxuICAgICAgICAgICAgPGRpdiBldWltTGFiZWwgZXVpbUxhYmVsTWV0YSBjbGFzcz1cImV1aS11LXRleHQtdXBwZXJjYXNlXCI+XG4gICAgICAgICAgICAgIHt7aXRlbS5jb2RlfX1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvaW9uLWxhYmVsPlxuICAgICAgICAgIEBpZiAoc2VsZWN0ZWRMYW5ndWFnZT8uY29kZT09PWl0ZW0uY29kZSkge1xuICAgICAgICAgICAgPGlvbi1idXR0b25zPlxuICAgICAgICAgICAgICA8aW9uLWJ1dHRvbiAgZmlsbD1cImNsZWFyXCIgPlxuICAgICAgICAgICAgICAgIDxpb24taWNvbiBuYW1lPVwiY2hlY2ttYXJrLXNoYXJwXCIgc2xvdD1cImljb24tb25seVwiIGNvbG9yPVwicHJpbWFyeVwiPjwvaW9uLWljb24+XG4gICAgICAgICAgICAgIDwvaW9uLWJ1dHRvbj5cbiAgICAgICAgICAgIDwvaW9uLWJ1dHRvbnM+XG4gICAgICAgICAgfVxuICAgICAgICA8L2lvbi1pdGVtPlxuICAgICAgfVxuICAgIDwvaW9uLWxpc3Q+XG4gIH1cbiAgQGlmIChyZXN1bHRzLmxlbmd0aCA8IDEpIHtcbiAgICA8ZXVpbS1lbXB0eS1saXN0LXBsYWNlaG9sZGVyIGV1aW1NYXJnaW5Ub3BMYXJnZVxuICAgICAgY2xhc3M9XCJldWltLWxhbmd1YWdlLXNlbGVjdG9yX19lbXB0eS1wbGFjZWhvbGRlclwiPlxuICAgIDwvZXVpbS1lbXB0eS1saXN0LXBsYWNlaG9sZGVyPlxuICB9XG48L2lvbi1jb250ZW50PlxuXG4iXX0=
65
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXVpbS1sYW5ndWFnZS1saXN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9sYXlvdXQvZXVpbS1sYW5ndWFnZS1zZWxlY3Rvci9ldWltLWxhbmd1YWdlLWxpc3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL2xheW91dC9ldWltLWxhbmd1YWdlLXNlbGVjdG9yL2V1aW0tbGFuZ3VhZ2UtbGlzdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLHVCQUF1QixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNFLE9BQU8sRUFBc0IsY0FBYyxFQUE0QixNQUFNLFdBQVcsQ0FBQzs7Ozs7Ozs7OztBQVN6RixNQUFNLE9BQU8seUJBQXlCO0lBa0NsQztJQUNJOztPQUVHO0lBQ0ksZUFBbUM7SUFDMUM7O09BRUc7SUFDSSxVQUEwQixFQUN6QixTQUEwQixFQUMxQixXQUF3QjtRQU56QixvQkFBZSxHQUFmLGVBQWUsQ0FBb0I7UUFJbkMsZUFBVSxHQUFWLFVBQVUsQ0FBZ0I7UUFDekIsY0FBUyxHQUFULFNBQVMsQ0FBaUI7UUFDMUIsZ0JBQVcsR0FBWCxXQUFXLENBQWE7SUFDakMsQ0FBQztJQUVKLFFBQVE7UUFDSixJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDeEIsQ0FBQztJQUVELGtCQUFrQixDQUFDLFFBQXFCO1FBQ3BDLElBQUksQ0FBQyxXQUFXLENBQUMsV0FBVyxDQUFDLEVBQUUsVUFBVSxFQUFFLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQzVELElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxRQUFRLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRUQsb0JBQW9CLENBQUksS0FBVSxFQUFFLE9BQVU7UUFDMUMsSUFBSSxLQUFLLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQ3JCLE9BQU8sS0FBSyxDQUFDO1FBQ2pCLENBQUM7UUFDRCxPQUFPLEtBQUssQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxLQUFLLE9BQU8sQ0FBQztJQUMvQyxDQUFDO0lBRVMsWUFBWTtRQUNsQixJQUFJLENBQUMsY0FBYztZQUNmLGNBQWMsQ0FBQyxtQkFBbUIsQ0FDbEMsY0FBYyxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDO1FBRXRELElBQUksQ0FBQyxpQkFBaUI7WUFDbEIsQ0FBQyxHQUFHLGNBQWMsQ0FBQyxtQkFBbUIsQ0FDbEMsY0FBYyxDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFFOUQsSUFBSSxDQUFDLDJCQUEyQixHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsY0FBYyxFQUFFLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFDdkYsSUFBSSxDQUFDLE9BQU8sR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLDJCQUEyQixDQUFDLENBQUM7SUFDekQsQ0FBQztJQUVTLE9BQU87UUFDYixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxRQUFRLENBQUMsQ0FBQztJQUNsRCxDQUFDO0lBRVMsWUFBWSxDQUFDLEtBQUs7UUFDeEIsTUFBTSxLQUFLLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7UUFFL0MsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsMkJBQTJCLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQ3ZELE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUMzQyxDQUFDLENBQUMsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUNsRCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7a0lBdkZRLHlCQUF5QjtzSEFBekIseUJBQXlCLDBEQ1Z0QywrNkVBdURBOzs0RkQ3Q2EseUJBQXlCO2tCQUxyQyxTQUFTOytCQUNJLG9CQUFvQixtQkFFYix1QkFBdUIsQ0FBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBFdWlBcHBTaGVsbFNlcnZpY2UsIEV1aUV1TGFuZ3VhZ2VzLCBFdWlMYW5ndWFnZSwgSTE4blNlcnZpY2UgfSBmcm9tICdAZXVpL2NvcmUnO1xuaW1wb3J0IHsgRXVpbUFwcFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcyc7XG5pbXBvcnQgeyBNb2RhbENvbnRyb2xsZXIgfSBmcm9tICdAaW9uaWMvYW5ndWxhcic7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZXVpbS1sYW5ndWFnZS1saXN0JyxcbiAgICB0ZW1wbGF0ZVVybDogJ2V1aW0tbGFuZ3VhZ2UtbGlzdC5jb21wb25lbnQuaHRtbCcsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIEV1aW1MYW5ndWFnZUxpc3RDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gICAgLyoqXG4gICAgICogQGRlcHJlY2F0ZWQgd2lsbCBiZSByZW1vdmVkIGluIGVVSSBNb2JpbGUgdjE5LlxuICAgICAqL1xuICAgIG5hbWU6IHN0cmluZztcbiAgICAvKipcbiAgICAgKiBAZGVwcmVjYXRlZCB3aWxsIGJlIHJlbW92ZWQgaW4gZVVJIE1vYmlsZSB2MTkuIFVzZSBub25FVUxhbmd1YWdlTGlzdFswXSBpbnN0ZWFkLlxuICAgICAqL1xuICAgIGZpcnN0RWxlbWVudEZyb21Ob25FVUxpc3Q6IEV1aUxhbmd1YWdlO1xuICAgIC8qKlxuICAgICAqIEBkZXByZWNhdGVkIHdpbGwgYmUgcmVtb3ZlZCBpbiBlVUkgTW9iaWxlIHYxOS4gVXNlIGV1TGFuZ3VhZ2VMaXN0WzBdIGluc3RlYWQuXG4gICAgICovXG4gICAgZmlyc3RFbGVtZW50RnJvbUVVTGlzdDogRXVpTGFuZ3VhZ2U7XG4gICAgLyoqXG4gICAgICogQGRlcHJlY2F0ZWQgd2lsbCBiZSByZW1vdmVkIGluIGVVSSBNb2JpbGUgdjE5LiBVc2UgaXNMYXN0RWxlbWVudE9mQXJyYXkoKSBmdW5jdGlvbiBpbnN0ZWFkLlxuICAgICAqL1xuICAgIGxhc3RFbGVtZW50RnJvbUVVTGlzdDogRXVpTGFuZ3VhZ2U7XG4gICAgbGFuZ3VhZ2VzOiBFdWlMYW5ndWFnZVtdO1xuICAgIHNlbGVjdGVkTGFuZ3VhZ2U6IEV1aUxhbmd1YWdlO1xuICAgIGV1TGFuZ3VhZ2VMaXN0OiBFdWlMYW5ndWFnZVtdO1xuICAgIG5vbkVVTGFuZ3VhZ2VMaXN0OiBFdWlMYW5ndWFnZVtdO1xuICAgIC8qKlxuICAgICAqIEBkZXByZWNhdGVkXG4gICAgICogd2lsbCBiZWNvbWUgcHJpdmF0ZSBpbiBlVUkgTW9iaWxlIHYxOS5cbiAgICAgKi9cbiAgICBsYW5ndWFnZXNTb3J0ZWRCeUVVQW5kTm9uRVU6IEV1aUxhbmd1YWdlW107XG4gICAgcmVzdWx0czogRXVpTGFuZ3VhZ2VbXTtcblxuICAgIC8qKlxuICAgICAqIEBkZXByZWNhdGVkIHdpbGwgYmUgcmVtb3ZlZCBpbiBlVUkgTW9iaWxlIHYxOS5cbiAgICAgKi9cbiAgICBpc0tleWJvYXJkU2hvd24gOiBib29sZWFuO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIC8qKlxuICAgICAgICAgKiBAZGVwcmVjYXRlZCB3aWxsIGJlIHJlbW92ZWQgaW4gZVVJIE1vYmlsZSB2MTkuXG4gICAgICAgICAqL1xuICAgICAgICBwdWJsaWMgYXBwU2hlbGxTZXJ2aWNlOiBFdWlBcHBTaGVsbFNlcnZpY2UsXG4gICAgICAgIC8qKlxuICAgICAgICAgKiBAZGVwcmVjYXRlZCB3aWxsIGJlIHJlbW92ZWQgaW4gZVVJIE1vYmlsZSB2MTkuXG4gICAgICAgICAqL1xuICAgICAgICBwdWJsaWMgYXBwU2VydmljZTogRXVpbUFwcFNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgbW9kYWxDdHJsOiBNb2RhbENvbnRyb2xsZXIsXG4gICAgICAgIHByaXZhdGUgaTE4blNlcnZpY2U6IEkxOG5TZXJ2aWNlLFxuICAgICkge31cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnNldExhbmd1YWdlcygpO1xuICAgIH1cblxuICAgIG9uTGFuZ3VhZ2VTZWxlY3RlZChsYW5ndWFnZTogRXVpTGFuZ3VhZ2UpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5pMThuU2VydmljZS51cGRhdGVTdGF0ZSh7IGFjdGl2ZUxhbmc6IGxhbmd1YWdlLmNvZGUgfSk7XG4gICAgICAgIHRoaXMubW9kYWxDdHJsLmRpc21pc3MobnVsbCwgJ2NhbmNlbCcpO1xuICAgIH1cblxuICAgIGlzTGFzdEVsZW1lbnRPZkFycmF5PFQ+KGFycmF5OiBUW10sIGVsZW1lbnQ6IFQpOiBib29sZWFuIHtcbiAgICAgICAgaWYgKGFycmF5Lmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBhcnJheVthcnJheS5sZW5ndGggLSAxXSA9PT0gZWxlbWVudDtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgc2V0TGFuZ3VhZ2VzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmV1TGFuZ3VhZ2VMaXN0ID1cbiAgICAgICAgICAgIEV1aUV1TGFuZ3VhZ2VzLmdldE9yZGVyZWRMYW5ndWFnZXMoXG4gICAgICAgICAgICBFdWlFdUxhbmd1YWdlcy5maWx0ZXJFVUxhbmd1YWdlcyh0aGlzLmxhbmd1YWdlcykpO1xuXG4gICAgICAgIHRoaXMubm9uRVVMYW5ndWFnZUxpc3QgPVxuICAgICAgICAgICAgWy4uLkV1aUV1TGFuZ3VhZ2VzLmdldE9yZGVyZWRMYW5ndWFnZXMoXG4gICAgICAgICAgICAgICAgRXVpRXVMYW5ndWFnZXMuZmlsdGVyTm9uRVVMYW5ndWFnZXModGhpcy5sYW5ndWFnZXMpKV07XG5cbiAgICAgICAgdGhpcy5sYW5ndWFnZXNTb3J0ZWRCeUVVQW5kTm9uRVUgPSBbLi4udGhpcy5ldUxhbmd1YWdlTGlzdCwgLi4udGhpcy5ub25FVUxhbmd1YWdlTGlzdF07XG4gICAgICAgIHRoaXMucmVzdWx0cyA9IFsuLi50aGlzLmxhbmd1YWdlc1NvcnRlZEJ5RVVBbmROb25FVV07XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIG9uQ2xvc2UoKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgICAgIHJldHVybiB0aGlzLm1vZGFsQ3RybC5kaXNtaXNzKG51bGwsICdjYW5jZWwnKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgaGFuZGxlQ2hhbmdlKGV2ZW50KTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHF1ZXJ5ID0gZXZlbnQudGFyZ2V0LnZhbHVlLnRvTG93ZXJDYXNlKCk7XG5cbiAgICAgICAgdGhpcy5yZXN1bHRzID0gdGhpcy5sYW5ndWFnZXNTb3J0ZWRCeUVVQW5kTm9uRVUuZmlsdGVyKGQgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIGQuY29kZS50b0xvd2VyQ2FzZSgpLmluZGV4T2YocXVlcnkpID4gLTEgfHxcbiAgICAgICAgICAgICAgICBkLmxhYmVsLnRvTG93ZXJDYXNlKCkuaW5kZXhPZihxdWVyeSkgPiAtMTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG59XG4iLCI8aW9uLWhlYWRlcj5cbiAgPGlvbi10b29sYmFyIGNvbG9yPVwiYnJhbmRpbmdcIj5cbiAgICA8aW9uLWJ1dHRvbnMgc2xvdD1cInN0YXJ0XCI+XG4gICAgICA8aW9uLWJ1dHRvbiAoY2xpY2spPVwib25DbG9zZSgpXCI+XG4gICAgICAgIDxpb24taWNvbiBuYW1lPVwiY2xvc2Utc2hhcnBcIiBzbG90PVwiaWNvbi1vbmx5XCI+PC9pb24taWNvbj5cbiAgICAgIDwvaW9uLWJ1dHRvbj5cbiAgICA8L2lvbi1idXR0b25zPlxuICAgIDxpb24tdGl0bGU+IHt7J2V1aW0ubGFuZ3VhZ2UtbGlzdC5TRUxFQ1QtTEFOR1VBR0UnIHwgdHJhbnNsYXRlIH19PC9pb24tdGl0bGU+XG4gIDwvaW9uLXRvb2xiYXI+XG4gIDxpb24tdG9vbGJhciBjb2xvcj1cImJyYW5kaW5nXCIgY2xhc3M9XCJldWltLWxhbmd1YWdlLXNlbGVjdG9yX19zZWFyY2hcIj5cbiAgICA8aW9uLXNlYXJjaGJhciAoaW9uSW5wdXQpPVwiaGFuZGxlQ2hhbmdlKCRldmVudClcIj48L2lvbi1zZWFyY2hiYXI+XG4gIDwvaW9uLXRvb2xiYXI+XG48L2lvbi1oZWFkZXI+XG48aW9uLWNvbnRlbnQ+XG4gIEBpZiAocmVzdWx0cy5sZW5ndGggPiAwKSB7XG4gICAgPGlvbi1saXN0PlxuICAgICAgQGZvciAoaXRlbSBvZiByZXN1bHRzOyB0cmFjayBpdGVtKSB7XG4gICAgICAgIEBpZiAoZmlyc3RFbGVtZW50RnJvbUVVTGlzdD8uY29kZSA9PT0gaXRlbS5jb2RlIHx8IGZpcnN0RWxlbWVudEZyb21Ob25FVUxpc3Q/LmNvZGUgPT09IGl0ZW0uY29kZSB8fCBldUxhbmd1YWdlTGlzdFswXT8uY29kZSA9PT0gaXRlbS5jb2RlXG4gICAgICAgICAgfHwgbm9uRVVMYW5ndWFnZUxpc3RbMF0/LmNvZGUgPT09IGl0ZW0uY29kZSkge1xuICAgICAgICAgIDxpb24taXRlbS1kaXZpZGVyPlxuICAgICAgICAgICAge3sgKGZpcnN0RWxlbWVudEZyb21FVUxpc3Q/LmNvZGUgPT09IGl0ZW0uY29kZSB8fCBldUxhbmd1YWdlTGlzdFswXT8uY29kZSA9PT0gaXRlbS5jb2RlKVxuICAgICAgICAgICAgPyAoJ2V1aW0ubGFuZ3VhZ2UtbGlzdC5FVS1MQU5HVUFHRVMnIHwgdHJhbnNsYXRlKVxuICAgICAgICAgICAgOiAnZXVpbS5sYW5ndWFnZS1saXN0Lk5PTi1FVS1MQU5HVUFHRVMnIHwgdHJhbnNsYXRlIH19XG4gICAgICAgICAgPC9pb24taXRlbS1kaXZpZGVyPlxuICAgICAgICB9XG4gICAgICAgIDxpb24taXRlbSBidXR0b24gKGNsaWNrKT1cIm9uTGFuZ3VhZ2VTZWxlY3RlZChpdGVtKVwiIFtsaW5lc109XCJsYXN0RWxlbWVudEZyb21FVUxpc3QgPT09IGl0ZW0gfHwgaXNMYXN0RWxlbWVudE9mQXJyYXkoZXVMYW5ndWFnZUxpc3QsIGl0ZW0pIHx8IGlzTGFzdEVsZW1lbnRPZkFycmF5KG5vbkVVTGFuZ3VhZ2VMaXN0LCBpdGVtKSA/ICdub25lJyA6ICdpbnNldCdcIj5cbiAgICAgICAgICAgIDxldWltLWF2YXRhciBmaWxsPVwic29saWRcIiBzbG90PVwic3RhcnRcIiB2YXJpYW50PVwicm91bmRlZFwiIGNsYXNzPVwiZXVpbS1sYW5ndWFnZS1zZWxlY3Rvcl9fYXZhdGFyXCI+XG4gICAgICAgICAgICAgICAgPGV1aW0tYXZhdGFyLWljb24+XG4gICAgICAgICAgICAgICAgICAgIDxpb24taWNvbiBuYW1lPVwibGFuZ3VhZ2Utc2hhcnBcIiBjbGFzcz1cImV1aW0tbGFuZ3VhZ2Utc2VsZWN0b3JfX2ludGVybmFsLWljb25cIj48L2lvbi1pY29uPlxuICAgICAgICAgICAgICAgIDwvZXVpbS1hdmF0YXItaWNvbj5cbiAgICAgICAgICAgIDwvZXVpbS1hdmF0YXI+XG4gICAgICAgICAgPGlvbi1sYWJlbD5cbiAgICAgICAgICAgIDxkaXYgZXVpbUxhYmVsIGV1aW1MYWJlbFRpdGxlPnt7aXRlbS5sYWJlbH19PC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGV1aW1MYWJlbCBldWltTGFiZWxNZXRhIGNsYXNzPVwiZXVpLXUtdGV4dC11cHBlcmNhc2VcIj5cbiAgICAgICAgICAgICAge3tpdGVtLmNvZGV9fVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9pb24tbGFiZWw+XG4gICAgICAgICAgQGlmIChzZWxlY3RlZExhbmd1YWdlPy5jb2RlPT09aXRlbS5jb2RlKSB7XG4gICAgICAgICAgICA8aW9uLWJ1dHRvbnM+XG4gICAgICAgICAgICAgIDxpb24tYnV0dG9uICBmaWxsPVwiY2xlYXJcIiA+XG4gICAgICAgICAgICAgICAgPGlvbi1pY29uIG5hbWU9XCJjaGVja21hcmstc2hhcnBcIiBzbG90PVwiaWNvbi1vbmx5XCIgY29sb3I9XCJwcmltYXJ5XCI+PC9pb24taWNvbj5cbiAgICAgICAgICAgICAgPC9pb24tYnV0dG9uPlxuICAgICAgICAgICAgPC9pb24tYnV0dG9ucz5cbiAgICAgICAgICB9XG4gICAgICAgIDwvaW9uLWl0ZW0+XG4gICAgICB9XG4gICAgPC9pb24tbGlzdD5cbiAgfVxuICBAaWYgKHJlc3VsdHMubGVuZ3RoIDwgMSkge1xuICAgIDxldWltLWVtcHR5LWxpc3QtcGxhY2Vob2xkZXIgZXVpbU1hcmdpblRvcExhcmdlXG4gICAgICBjbGFzcz1cImV1aW0tbGFuZ3VhZ2Utc2VsZWN0b3JfX2VtcHR5LXBsYWNlaG9sZGVyXCI+XG4gICAgPC9ldWltLWVtcHR5LWxpc3QtcGxhY2Vob2xkZXI+XG4gIH1cbjwvaW9uLWNvbnRlbnQ+XG5cbiJdfQ==