@ti-tecnologico-de-monterrey-oficial/ds-ng 1.5.1318-a → 1.5.1318-c

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 (44) hide show
  1. package/assets/styles/main.min.css +1 -1
  2. package/assets/styles/main.min.css.map +1 -1
  3. package/esm2022/lib/components/bmb-alert-center/bmb-alert-center-list/bmb-alert-center-list.component.mjs +4 -5
  4. package/esm2022/lib/components/bmb-alert-center/bmb-alert-center.component.mjs +4 -4
  5. package/esm2022/lib/components/bmb-calendar/bmb-calendar.component.mjs +4 -6
  6. package/esm2022/lib/components/bmb-card-button/bmb-card-button.component.mjs +3 -3
  7. package/esm2022/lib/components/bmb-chat-bubbles/bmb-chat-bubbles.component.mjs +3 -3
  8. package/esm2022/lib/components/bmb-container-button/bmb-container-button.component.mjs +1 -1
  9. package/esm2022/lib/components/bmb-digital-id/bmb-digital-id.component.mjs +5 -5
  10. package/esm2022/lib/components/bmb-dropdown-menu/bmb-dropdown-menu.component.mjs +10 -3
  11. package/esm2022/lib/components/bmb-filter-card/bmb-filter-card.component.mjs +2 -2
  12. package/esm2022/lib/components/bmb-hito-list/bmb-hito-list.component.mjs +3 -3
  13. package/esm2022/lib/components/bmb-icon-status/bmb-icon-status.component.mjs +4 -3
  14. package/esm2022/lib/components/bmb-input-tags/bmb-input-tags.component.mjs +1 -1
  15. package/esm2022/lib/components/bmb-list-group/bmb-list-group-item/bmb-list-group-item.component.mjs +3 -3
  16. package/esm2022/lib/components/bmb-media-card/bmb-media-card.component.mjs +3 -3
  17. package/esm2022/lib/components/bmb-modal/bmb-native-modal.component.mjs +3 -2
  18. package/esm2022/lib/components/bmb-notification-card/bmb-notification-card-modal/bmb-notification-card-modal.component.mjs +2 -5
  19. package/esm2022/lib/components/bmb-notification-card/bmb-notification-card.component.mjs +3 -3
  20. package/esm2022/lib/components/bmb-portal/bmb-projected-content/bmb-projected-content.component.mjs +1 -1
  21. package/esm2022/lib/components/bmb-pull-wedge/bmb-pull-wedge.component.mjs +1 -4
  22. package/esm2022/lib/components/bmb-push-notification/bmb-push-notification-item/bmb-push-notification-item.component.mjs +9 -3
  23. package/esm2022/lib/components/bmb-push-notification/types.mjs +1 -1
  24. package/esm2022/lib/components/bmb-search-input/bmb-search-input.component.mjs +1 -1
  25. package/esm2022/lib/components/bmb-text-editor/bmb-text-editor.component.mjs +13 -6
  26. package/esm2022/lib/components/bmb-timestream/bmb-timestream-detail/bmb-timestream-detail.component.mjs +3 -5
  27. package/esm2022/lib/components/bmb-top-bar/bmb-top-bar-user-section/bmb-top-bar-user-section.component.mjs +2 -2
  28. package/esm2022/lib/components/utils/bmb-alert-center-detail/bmb-alert-center-detail.component.mjs +3 -3
  29. package/esm2022/lib/components/utils/bmb-dropdown-content/bmb-dropdown-content.component.mjs +7 -4
  30. package/esm2022/lib/services/notification/notification.service.mjs +2 -2
  31. package/fesm2022/ti-tecnologico-de-monterrey-oficial-ds-ng.mjs +74 -59
  32. package/fesm2022/ti-tecnologico-de-monterrey-oficial-ds-ng.mjs.map +1 -1
  33. package/lib/components/bmb-alert-center/bmb-alert-center-list/bmb-alert-center-list.component.d.ts +1 -1
  34. package/lib/components/bmb-calendar/bmb-calendar.component.d.ts +4 -4
  35. package/lib/components/bmb-card-button/bmb-card-button.component.d.ts +4 -4
  36. package/lib/components/bmb-chat-bubbles/bmb-chat-bubbles.component.d.ts +10 -10
  37. package/lib/components/bmb-digital-id/bmb-digital-id.component.d.ts +3 -2
  38. package/lib/components/bmb-dropdown-menu/bmb-dropdown-menu.component.d.ts +2 -1
  39. package/lib/components/bmb-icon-status/bmb-icon-status.component.d.ts +3 -1
  40. package/lib/components/bmb-push-notification/bmb-push-notification-item/bmb-push-notification-item.component.d.ts +3 -0
  41. package/lib/components/bmb-push-notification/types.d.ts +2 -1
  42. package/lib/components/bmb-text-editor/bmb-text-editor.component.d.ts +4 -4
  43. package/lib/components/utils/bmb-dropdown-content/bmb-dropdown-content.component.d.ts +2 -1
  44. package/package.json +1 -1
@@ -43,7 +43,6 @@ export class BmbCalendarComponent {
43
43
  this.filters = model({});
44
44
  this.calendarTimezone = input(Intl.DateTimeFormat().resolvedOptions().timeZone);
45
45
  this.clientTimezone = input(Intl.DateTimeFormat().resolvedOptions().timeZone);
46
- // lang = input<string>('es-MX'); // deprecated
47
46
  this.height = input('100%');
48
47
  this.startBusinessHour = input(8);
49
48
  this.calendarTitle = input();
@@ -73,8 +72,7 @@ export class BmbCalendarComponent {
73
72
  if (!acc[week][stringDate])
74
73
  acc[week][stringDate] = [];
75
74
  acc[week][stringDate].push({ ...event, startDate, endDate, interval });
76
- if (event.calendar &&
77
- !acc.calendars?.some((cal) => cal === event.calendar)) {
75
+ if (event.calendar && !acc.calendars?.includes(event.calendar)) {
78
76
  acc.calendars?.push(event.calendar);
79
77
  }
80
78
  return acc;
@@ -256,7 +254,7 @@ export class BmbCalendarComponent {
256
254
  return ['bmb_calendar-event-bullet', `bmb_calendar-event-bullet-${name}`];
257
255
  }
258
256
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BmbCalendarComponent, deps: [{ token: i1.BmbCalendarService }, { token: i2.BmbNativeModalService }, { token: i3.BmbTranslationsService }], target: i0.ɵɵFactoryTarget.Component }); }
259
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: BmbCalendarComponent, isStandalone: true, selector: "bmb-calendar", inputs: { view: { classPropertyName: "view", publicName: "view", isSignal: true, isRequired: false, transformFunction: null }, filters: { classPropertyName: "filters", publicName: "filters", isSignal: true, isRequired: false, transformFunction: null }, calendarTimezone: { classPropertyName: "calendarTimezone", publicName: "calendarTimezone", isSignal: true, isRequired: false, transformFunction: null }, clientTimezone: { classPropertyName: "clientTimezone", publicName: "clientTimezone", isSignal: true, isRequired: false, transformFunction: null }, height: { classPropertyName: "height", publicName: "height", isSignal: true, isRequired: false, transformFunction: null }, startBusinessHour: { classPropertyName: "startBusinessHour", publicName: "startBusinessHour", isSignal: true, isRequired: false, transformFunction: null }, calendarTitle: { classPropertyName: "calendarTitle", publicName: "calendarTitle", isSignal: true, isRequired: false, transformFunction: null }, dateFormat: { classPropertyName: "dateFormat", publicName: "dateFormat", isSignal: true, isRequired: false, transformFunction: null }, showFilterButton: { classPropertyName: "showFilterButton", publicName: "showFilterButton", isSignal: true, isRequired: false, transformFunction: null }, disableMobileFilter: { classPropertyName: "disableMobileFilter", publicName: "disableMobileFilter", isSignal: true, isRequired: false, transformFunction: null }, visibleDate: { classPropertyName: "visibleDate", publicName: "visibleDate", isSignal: true, isRequired: false, transformFunction: null }, currentDate: { classPropertyName: "currentDate", publicName: "currentDate", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { view: "viewChange", filters: "filtersChange", visibleDate: "visibleDateChange", onDateChange: "onDateChange", onClose: "onClose" }, host: { listeners: { "window:resize": "resize($event)" } }, viewQueries: [{ propertyName: "detailContent", first: true, predicate: ["detailContent"], descendants: true, read: TemplateRef }, { propertyName: "modalTemplate", first: true, predicate: ["modalTemplate"], descendants: true }], ngImport: i0, template: "<div class=\"bmb_calendar\" [ngStyle]=\"{ height: getHeight(height()) }\">\n @if (isMobileHeader) {\n <bmb-calendar-template-mobile\n [now]=\"visibleDate()\"\n [events]=\"filteredEvents()\"\n (onCurrentDateChange)=\"handleCurrentDateChange($event)\"\n [weekDays]=\"renderWeekDays()\"\n [calendarTitle]=\"calendarTitle()\"\n [disableMobileFilter]=\"disableMobileFilter()\"\n (onClose)=\"handleClose()\"\n (showFilters)=\"handleShowModalFilter()\"\n />\n } @else {\n <bmb-calendar-header\n [weekDays]=\"renderWeekDays()\"\n [view]=\"view()\"\n [currentDate]=\"visibleDate()\"\n (onRangeChange)=\"handleDateChange($event, visibleDate())\"\n (onCurrentDateChange)=\"handleCurrentDateChange($event)\"\n [showFilterButton]=\"showFilterButton()\"\n (showFilters)=\"handleShowModalFilter()\"\n />\n }\n @switch (view()) {\n @case ('day') {\n <bmb-calendar-template-day\n [now]=\"visibleDate()\"\n [events]=\"getDayEvents()\"\n (onSelectEvent)=\"handleSelectEvent($event)\"\n [currentTime]=\"currentTime()\"\n [startBusinessHour]=\"startBusinessHour()\"\n [dateFormat]=\"dateFormat()\"\n class=\"bmb_calendar-content\"\n />\n }\n @case ('week') {\n <bmb-calendar-template-week\n [weekDays]=\"renderWeekDays()\"\n [now]=\"visibleDate()\"\n [events]=\"filteredEvents()\"\n (onSelectEvent)=\"handleSelectEvent($event)\"\n [currentTime]=\"currentTime()\"\n [startBusinessHour]=\"startBusinessHour()\"\n [selectedWeek]=\"selectedWeek()\"\n class=\"bmb_calendar-content\"\n />\n }\n @case ('month') {\n <bmb-calendar-template-month\n [now]=\"visibleDate()\"\n [events]=\"filteredEvents()\"\n (onSelectEvent)=\"handleSelectEvent($event)\"\n class=\"bmb_calendar-content\"\n />\n }\n @default {\n <bmb-calendar-template-week\n [weekDays]=\"renderWeekDays()\"\n [now]=\"visibleDate()\"\n [events]=\"filteredEvents()\"\n class=\"bmb_calendar-content\"\n />\n }\n }\n\n @if (isLoading()) {\n <div class=\"bmb_calendar-loader\">\n <bmb-loader [showInline]=\"true\" />\n </div>\n }\n</div>\n\n<ng-template #detailContent>\n @if (selectedEvent) {\n <section>\n @if (selectedEvent.tags?.length) {\n <p style=\"display: flex; flex-wrap: wrap; gap: 0.5rem\">\n @for (item of selectedEvent.tags; track $index) {\n <bmb-badge [text]=\"item.text\" [appearance]=\"item.appearance\" />\n }\n </p>\n }\n @if (selectedEvent.title) {\n <p class=\"bmb_calendar-event-modal-title\">{{ selectedEvent.title }}</p>\n }\n @if (selectedEvent.place) {\n <p class=\"bmb_calendar-event-modal-place\">{{ selectedEvent.place }}</p>\n }\n <div class=\"bmb_calendar-event-modal-duration\">{{ getDuration() }}</div>\n </section>\n }\n</ng-template>\n\n<ng-template #modalTemplate>\n <form [formGroup]=\"calendarForm\">\n @for (item of filteredEvents().calendars; track $index) {\n <div bmbLayout gapSize=\"s\" alignItems=\"center\">\n <bmb-checkbox\n bmbLayoutItem\n [isDynamicItem]=\"true\"\n [inputId]=\"'checkbox_' + item\"\n [name]=\"'checkbox_' + item\"\n [control]=\"getFormControl(item)\"\n />\n <div\n bmbLayoutItem\n [isDynamicItem]=\"true\"\n [ngClass]=\"getBulletClass(item)\"\n ></div>\n <label\n bmbLayoutItem\n [isDynamicItem]=\"true\"\n [colGrow]=\"1\"\n [htmlFor]=\"'checkbox_' + item\"\n >{{ getCalendarName(item) }}</label\n >\n </div>\n <bmb-divider type=\"dashed\"></bmb-divider>\n }\n </form>\n</ng-template>\n", styles: ["@font-face{font-family:Poppins-Light;font-style:normal;font-weight:300;src:url(/assets/fonts/Poppins/Poppins-ExtraLight.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Regular;font-style:normal;font-weight:400;src:url(/assets/fonts/Poppins/Poppins-Regular.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Bold;font-style:normal;font-weight:700;src:url(/assets/fonts/Poppins/Poppins-Bold.ttf) format(\"truetype\")}:root,:host{--font-display: \"Poppins-Regular\", sans-serif}.font-thin-1{font-family:Poppins-Thin,sans-serif;font-size:.625rem}.font-light-1{font-family:Poppins-Light,sans-serif;font-size:.625rem}.font-regular-1{font-family:Poppins-Regular,sans-serif;font-size:.625rem}.font-medium-1{font-family:Poppins-Medium,sans-serif;font-size:.625rem}.font-semibold-1{font-family:Poppins-Semibold,sans-serif;font-size:.625rem}.font-bold-1{font-family:Poppins-Bold,sans-serif;font-size:.625rem}.font-thin-2{font-family:Poppins-Thin,sans-serif;font-size:.6875rem}.font-light-2{font-family:Poppins-Light,sans-serif;font-size:.6875rem}.font-regular-2{font-family:Poppins-Regular,sans-serif;font-size:.6875rem}.font-medium-2{font-family:Poppins-Medium,sans-serif;font-size:.6875rem}.font-semibold-2{font-family:Poppins-Semibold,sans-serif;font-size:.6875rem}.font-bold-2{font-family:Poppins-Bold,sans-serif;font-size:.6875rem}.font-thin-3{font-family:Poppins-Thin,sans-serif;font-size:.75rem}.font-light-3{font-family:Poppins-Light,sans-serif;font-size:.75rem}.font-regular-3{font-family:Poppins-Regular,sans-serif;font-size:.75rem}.font-medium-3{font-family:Poppins-Medium,sans-serif;font-size:.75rem}.font-semibold-3{font-family:Poppins-Semibold,sans-serif;font-size:.75rem}.font-bold-3{font-family:Poppins-Bold,sans-serif;font-size:.75rem}.font-thin-4{font-family:Poppins-Thin,sans-serif;font-size:.875rem}.font-light-4{font-family:Poppins-Light,sans-serif;font-size:.875rem}.font-regular-4{font-family:Poppins-Regular,sans-serif;font-size:.875rem}.font-medium-4{font-family:Poppins-Medium,sans-serif;font-size:.875rem}.font-semibold-4{font-family:Poppins-Semibold,sans-serif;font-size:.875rem}.font-bold-4{font-family:Poppins-Bold,sans-serif;font-size:.875rem}.font-thin-4_5{font-family:Poppins-Thin,sans-serif;font-size:.9375rem}.font-light-4_5{font-family:Poppins-Light,sans-serif;font-size:.9375rem}.font-regular-4_5{font-family:Poppins-Regular,sans-serif;font-size:.9375rem}.font-medium-4_5{font-family:Poppins-Medium,sans-serif;font-size:.9375rem}.font-semibold-4_5{font-family:Poppins-Semibold,sans-serif;font-size:.9375rem}.font-bold-4_5{font-family:Poppins-Bold,sans-serif;font-size:.9375rem}.font-thin-5{font-family:Poppins-Thin,sans-serif;font-size:1rem}.font-light-5{font-family:Poppins-Light,sans-serif;font-size:1rem}.font-regular-5{font-family:Poppins-Regular,sans-serif;font-size:1rem}.font-medium-5{font-family:Poppins-Medium,sans-serif;font-size:1rem}.font-semibold-5{font-family:Poppins-Semibold,sans-serif;font-size:1rem}.font-bold-5{font-family:Poppins-Bold,sans-serif;font-size:1rem}.font-thin-6{font-family:Poppins-Thin,sans-serif;font-size:1.125rem}.font-light-6{font-family:Poppins-Light,sans-serif;font-size:1.125rem}.font-regular-6{font-family:Poppins-Regular,sans-serif;font-size:1.125rem}.font-medium-6{font-family:Poppins-Medium,sans-serif;font-size:1.125rem}.font-semibold-6{font-family:Poppins-Semibold,sans-serif;font-size:1.125rem}.font-bold-6{font-family:Poppins-Bold,sans-serif;font-size:1.125rem}.font-thin-7{font-family:Poppins-Thin,sans-serif;font-size:1.25rem}.font-light-7{font-family:Poppins-Light,sans-serif;font-size:1.25rem}.font-regular-7{font-family:Poppins-Regular,sans-serif;font-size:1.25rem}.font-medium-7{font-family:Poppins-Medium,sans-serif;font-size:1.25rem}.font-semibold-7{font-family:Poppins-Semibold,sans-serif;font-size:1.25rem}.font-bold-7{font-family:Poppins-Bold,sans-serif;font-size:1.25rem}.font-thin-8{font-family:Poppins-Thin,sans-serif;font-size:1.375rem}.font-light-8{font-family:Poppins-Light,sans-serif;font-size:1.375rem}.font-regular-8{font-family:Poppins-Regular,sans-serif;font-size:1.375rem}.font-medium-8{font-family:Poppins-Medium,sans-serif;font-size:1.375rem}.font-semibold-8{font-family:Poppins-Semibold,sans-serif;font-size:1.375rem}.font-bold-8{font-family:Poppins-Bold,sans-serif;font-size:1.375rem}.font-thin-9{font-family:Poppins-Thin,sans-serif;font-size:1.5rem}.font-light-9{font-family:Poppins-Light,sans-serif;font-size:1.5rem}.font-regular-9{font-family:Poppins-Regular,sans-serif;font-size:1.5rem}.font-medium-9{font-family:Poppins-Medium,sans-serif;font-size:1.5rem}.font-semibold-9{font-family:Poppins-Semibold,sans-serif;font-size:1.5rem}.font-bold-9{font-family:Poppins-Bold,sans-serif;font-size:1.5rem}.font-thin-10{font-family:Poppins-Thin,sans-serif;font-size:1.625rem}.font-light-10{font-family:Poppins-Light,sans-serif;font-size:1.625rem}.font-regular-10{font-family:Poppins-Regular,sans-serif;font-size:1.625rem}.font-medium-10{font-family:Poppins-Medium,sans-serif;font-size:1.625rem}.font-semibold-10{font-family:Poppins-Semibold,sans-serif;font-size:1.625rem}.font-bold-10{font-family:Poppins-Bold,sans-serif;font-size:1.625rem}.font-thin-11{font-family:Poppins-Thin,sans-serif;font-size:2.25rem}.font-light-11{font-family:Poppins-Light,sans-serif;font-size:2.25rem}.font-regular-11{font-family:Poppins-Regular,sans-serif;font-size:2.25rem}.font-medium-11{font-family:Poppins-Medium,sans-serif;font-size:2.25rem}.font-semibold-11{font-family:Poppins-Semibold,sans-serif;font-size:2.25rem}.font-bold-11{font-family:Poppins-Bold,sans-serif;font-size:2.25rem}.font-thin-12{font-family:Poppins-Thin,sans-serif;font-size:3rem}.font-light-12{font-family:Poppins-Light,sans-serif;font-size:3rem}.font-regular-12{font-family:Poppins-Regular,sans-serif;font-size:3rem}.font-medium-12{font-family:Poppins-Medium,sans-serif;font-size:3rem}.font-semibold-12{font-family:Poppins-Semibold,sans-serif;font-size:3rem}.font-bold-12{font-family:Poppins-Bold,sans-serif;font-size:3rem}.bmb_calendar{background-color:var(--containers-background);position:relative;overflow:hidden;display:flex;flex-flow:column}@media (min-width: 62.5625rem){.bmb_calendar{padding:var(--bmb-spacing-xl);background-color:var(--containers-main)}}.bmb_calendar-event-bullet{width:.5rem;height:.5rem;border-radius:50%;margin-left:.5rem;background-color:var(--general_contrasts-50)}.bmb_calendar-event-bullet-academic{background-color:var(--general_contrasts-main-selection)}.bmb_calendar-event-bullet-life{background-color:rgb(var(--color-green-light))}.bmb_calendar-event-bullet-events{background-color:rgb(var(--color-purple-light))}.bmb_calendar-event-bullet-save_the_date{background-color:rgb(var(--color-yellow-primary))}.bmb_calendar-detail-header{display:flex;align-items:center;gap:.5rem;justify-content:center;padding:var(--bmb-spacing-n) var(--bmb-spacing-none);border-bottom:.0625rem solid var(--general_contrasts-25);position:sticky;top:0;z-index:1;background-color:var(--containers-main)}@media (max-width: 62.5rem){.bmb_calendar-detail-header{display:none}}.bmb_calendar-detail-header h2{font-family:Poppins-Regular,sans-serif;font-size:.75rem;font-weight:400}.bmb_calendar-detail-header h2:first-letter .bmb-first-letter{text-transform:capitalize}.bmb_calendar-detail-header span{font-family:Poppins-Regular,sans-serif;font-size:.75rem}.bmb_calendar-body{position:relative}.bmb_calendar-col{flex:1;height:fit-content;border-left:.0625rem solid var(--containers-main)}@media (min-width: 62.5625rem){.bmb_calendar-col{border-left:.0625rem solid var(--general_contrasts-25)}}.bmb_calendar-col-today{background-color:var(--general_contrasts-25)}.bmb_calendar-row-body{min-height:7.5rem;border-bottom:.0625rem solid var(--containers-main);position:relative}@media (min-width: 62.5625rem){.bmb_calendar-row-body{border-bottom:.0625rem solid var(--general_contrasts-25)}}.bmb_calendar-row-body:before{content:\"\";position:absolute;top:50%;left:0;width:100%;border-bottom:.0625rem dashed var(--containers-main)}@media (min-width: 62.5625rem){.bmb_calendar-row-body:before{display:none}}.bmb_calendar-week-view,.bmb_calendar-day-view{display:flex;justify-content:space-between}.bmb_calendar-loader{display:flex;height:100%;position:absolute;top:0;width:100%;left:0;justify-content:center;align-items:center}.bmb_calendar-content{flex:1 0 0%;overflow:hidden}.bmb_calendar-event-modal-title{overflow:hidden;text-overflow:ellipsis;white-space:wrap;font-family:Poppins-Regular,sans-serif;font-size:1rem}.bmb_calendar-event-modal-detail,.bmb_calendar-event-modal-place,.bmb_calendar-event-modal-duration{font-family:Poppins-Regular,sans-serif;font-size:.875rem}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: BmbCalendarTemplateDayComponent, selector: "bmb-calendar-template-day", inputs: ["now", "events", "currentTime", "startBusinessHour", "dateFormat"], outputs: ["onSelectEvent"] }, { kind: "component", type: BmbCalendarTemplateWeekComponent, selector: "bmb-calendar-template-week", inputs: ["weekDays", "now", "dateFormat", "events", "currentTime", "startBusinessHour", "selectedWeek"], outputs: ["onSelectEvent"] }, { kind: "component", type: BmbCalendarTemplateMonthComponent, selector: "bmb-calendar-template-month", inputs: ["now", "events"], outputs: ["onSelectEvent"] }, { kind: "component", type: BmbCalendarHeaderComponent, selector: "bmb-calendar-header", inputs: ["weekDays", "view", "currentDate", "showFilterButton"], outputs: ["onRangeChange", "onCurrentDateChange", "showFilters"] }, { kind: "component", type: BmbCalendarTemplateMobileComponent, selector: "bmb-calendar-template-mobile", inputs: ["weekDays", "now", "events", "calendarTitle", "disableMobileFilter"], outputs: ["onClose", "onCurrentDateChange", "showFilters"] }, { kind: "component", type: BmbBadgeComponent, selector: "bmb-badge", inputs: ["appearance", "text", "container"] }, { kind: "component", type: BmbLoaderComponent, selector: "bmb-loader", inputs: ["appearance", "title", "icon", "subtitle", "overlay", "isVisible", "errorState", "actions", "buttonPrimary", "buttonSecondary", "showInline"], outputs: ["onButtonPrimary", "onButtonSecondary"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i5.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i5.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i5.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: BmbCheckboxComponent, selector: "bmb-checkbox", inputs: ["name", "id", "disabled", "required", "value", "label", "labelPosition", "ariaDescribedby", "ariaLabel", "ariaLabelledby", "errorMessage", "helperMessage", "customValidation", "control", "checked", "showError", "indeterminate", "inputId"], outputs: ["controlChange", "checkedChange", "showErrorChange", "indeterminateChange", "inputIdChange", "change"] }, { kind: "component", type: BmbDividerComponent, selector: "bmb-divider", inputs: ["type"] }, { kind: "directive", type: BmbLayoutDirective, selector: "[bmbLayout]", inputs: ["gapSize", "margin", "dynamicCols", "justify", "alignItems", "isContainerQuery"] }, { kind: "directive", type: BmbLayoutItemDirective, selector: "[bmbLayoutItem]", inputs: ["colSm", "colLg", "marginLeft", "marginRight", "colGrow", "isDynamicItem"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
257
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: BmbCalendarComponent, isStandalone: true, selector: "bmb-calendar", inputs: { view: { classPropertyName: "view", publicName: "view", isSignal: true, isRequired: false, transformFunction: null }, filters: { classPropertyName: "filters", publicName: "filters", isSignal: true, isRequired: false, transformFunction: null }, calendarTimezone: { classPropertyName: "calendarTimezone", publicName: "calendarTimezone", isSignal: true, isRequired: false, transformFunction: null }, clientTimezone: { classPropertyName: "clientTimezone", publicName: "clientTimezone", isSignal: true, isRequired: false, transformFunction: null }, height: { classPropertyName: "height", publicName: "height", isSignal: true, isRequired: false, transformFunction: null }, startBusinessHour: { classPropertyName: "startBusinessHour", publicName: "startBusinessHour", isSignal: true, isRequired: false, transformFunction: null }, calendarTitle: { classPropertyName: "calendarTitle", publicName: "calendarTitle", isSignal: true, isRequired: false, transformFunction: null }, dateFormat: { classPropertyName: "dateFormat", publicName: "dateFormat", isSignal: true, isRequired: false, transformFunction: null }, showFilterButton: { classPropertyName: "showFilterButton", publicName: "showFilterButton", isSignal: true, isRequired: false, transformFunction: null }, disableMobileFilter: { classPropertyName: "disableMobileFilter", publicName: "disableMobileFilter", isSignal: true, isRequired: false, transformFunction: null }, visibleDate: { classPropertyName: "visibleDate", publicName: "visibleDate", isSignal: true, isRequired: false, transformFunction: null }, currentDate: { classPropertyName: "currentDate", publicName: "currentDate", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { view: "viewChange", filters: "filtersChange", visibleDate: "visibleDateChange", onDateChange: "onDateChange", onClose: "onClose" }, host: { listeners: { "window:resize": "resize()" } }, viewQueries: [{ propertyName: "detailContent", first: true, predicate: ["detailContent"], descendants: true, read: TemplateRef }, { propertyName: "modalTemplate", first: true, predicate: ["modalTemplate"], descendants: true }], ngImport: i0, template: "<div class=\"bmb_calendar\" [ngStyle]=\"{ height: getHeight(height()) }\">\n @if (isMobileHeader) {\n <bmb-calendar-template-mobile\n [now]=\"visibleDate()\"\n [events]=\"filteredEvents()\"\n (onCurrentDateChange)=\"handleCurrentDateChange($event)\"\n [weekDays]=\"renderWeekDays()\"\n [calendarTitle]=\"calendarTitle()\"\n [disableMobileFilter]=\"disableMobileFilter()\"\n (onClose)=\"handleClose()\"\n (showFilters)=\"handleShowModalFilter()\"\n />\n } @else {\n <bmb-calendar-header\n [weekDays]=\"renderWeekDays()\"\n [view]=\"view()\"\n [currentDate]=\"visibleDate()\"\n (onRangeChange)=\"handleDateChange($event, visibleDate())\"\n (onCurrentDateChange)=\"handleCurrentDateChange($event)\"\n [showFilterButton]=\"showFilterButton()\"\n (showFilters)=\"handleShowModalFilter()\"\n />\n }\n @switch (view()) {\n @case ('day') {\n <bmb-calendar-template-day\n [now]=\"visibleDate()\"\n [events]=\"getDayEvents()\"\n (onSelectEvent)=\"handleSelectEvent($event)\"\n [currentTime]=\"currentTime()\"\n [startBusinessHour]=\"startBusinessHour()\"\n [dateFormat]=\"dateFormat()\"\n class=\"bmb_calendar-content\"\n />\n }\n @case ('week') {\n <bmb-calendar-template-week\n [weekDays]=\"renderWeekDays()\"\n [now]=\"visibleDate()\"\n [events]=\"filteredEvents()\"\n (onSelectEvent)=\"handleSelectEvent($event)\"\n [currentTime]=\"currentTime()\"\n [startBusinessHour]=\"startBusinessHour()\"\n [selectedWeek]=\"selectedWeek()\"\n class=\"bmb_calendar-content\"\n />\n }\n @case ('month') {\n <bmb-calendar-template-month\n [now]=\"visibleDate()\"\n [events]=\"filteredEvents()\"\n (onSelectEvent)=\"handleSelectEvent($event)\"\n class=\"bmb_calendar-content\"\n />\n }\n @default {\n <bmb-calendar-template-week\n [weekDays]=\"renderWeekDays()\"\n [now]=\"visibleDate()\"\n [events]=\"filteredEvents()\"\n class=\"bmb_calendar-content\"\n />\n }\n }\n\n @if (isLoading()) {\n <div class=\"bmb_calendar-loader\">\n <bmb-loader [showInline]=\"true\" />\n </div>\n }\n</div>\n\n<ng-template #detailContent>\n @if (selectedEvent) {\n <section>\n @if (selectedEvent.tags?.length) {\n <p style=\"display: flex; flex-wrap: wrap; gap: 0.5rem\">\n @for (item of selectedEvent.tags; track $index) {\n <bmb-badge [text]=\"item.text\" [appearance]=\"item.appearance\" />\n }\n </p>\n }\n @if (selectedEvent.title) {\n <p class=\"bmb_calendar-event-modal-title\">{{ selectedEvent.title }}</p>\n }\n @if (selectedEvent.place) {\n <p class=\"bmb_calendar-event-modal-place\">{{ selectedEvent.place }}</p>\n }\n <div class=\"bmb_calendar-event-modal-duration\">{{ getDuration() }}</div>\n </section>\n }\n</ng-template>\n\n<ng-template #modalTemplate>\n <form [formGroup]=\"calendarForm\">\n @for (item of filteredEvents().calendars; track $index) {\n <div bmbLayout gapSize=\"s\" alignItems=\"center\">\n <bmb-checkbox\n bmbLayoutItem\n [isDynamicItem]=\"true\"\n [inputId]=\"'checkbox_' + item\"\n [name]=\"'checkbox_' + item\"\n [control]=\"getFormControl(item)\"\n />\n <div\n bmbLayoutItem\n [isDynamicItem]=\"true\"\n [ngClass]=\"getBulletClass(item)\"\n ></div>\n <label\n bmbLayoutItem\n [isDynamicItem]=\"true\"\n [colGrow]=\"1\"\n [htmlFor]=\"'checkbox_' + item\"\n >{{ getCalendarName(item) }}</label\n >\n </div>\n <bmb-divider type=\"dashed\"></bmb-divider>\n }\n </form>\n</ng-template>\n", styles: ["@font-face{font-family:Poppins-Light;font-style:normal;font-weight:300;src:url(/assets/fonts/Poppins/Poppins-ExtraLight.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Regular;font-style:normal;font-weight:400;src:url(/assets/fonts/Poppins/Poppins-Regular.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Bold;font-style:normal;font-weight:700;src:url(/assets/fonts/Poppins/Poppins-Bold.ttf) format(\"truetype\")}:root,:host{--font-display: \"Poppins-Regular\", sans-serif}.font-thin-1{font-family:Poppins-Thin,sans-serif;font-size:.625rem}.font-light-1{font-family:Poppins-Light,sans-serif;font-size:.625rem}.font-regular-1{font-family:Poppins-Regular,sans-serif;font-size:.625rem}.font-medium-1{font-family:Poppins-Medium,sans-serif;font-size:.625rem}.font-semibold-1{font-family:Poppins-Semibold,sans-serif;font-size:.625rem}.font-bold-1{font-family:Poppins-Bold,sans-serif;font-size:.625rem}.font-thin-2{font-family:Poppins-Thin,sans-serif;font-size:.6875rem}.font-light-2{font-family:Poppins-Light,sans-serif;font-size:.6875rem}.font-regular-2{font-family:Poppins-Regular,sans-serif;font-size:.6875rem}.font-medium-2{font-family:Poppins-Medium,sans-serif;font-size:.6875rem}.font-semibold-2{font-family:Poppins-Semibold,sans-serif;font-size:.6875rem}.font-bold-2{font-family:Poppins-Bold,sans-serif;font-size:.6875rem}.font-thin-3{font-family:Poppins-Thin,sans-serif;font-size:.75rem}.font-light-3{font-family:Poppins-Light,sans-serif;font-size:.75rem}.font-regular-3{font-family:Poppins-Regular,sans-serif;font-size:.75rem}.font-medium-3{font-family:Poppins-Medium,sans-serif;font-size:.75rem}.font-semibold-3{font-family:Poppins-Semibold,sans-serif;font-size:.75rem}.font-bold-3{font-family:Poppins-Bold,sans-serif;font-size:.75rem}.font-thin-4{font-family:Poppins-Thin,sans-serif;font-size:.875rem}.font-light-4{font-family:Poppins-Light,sans-serif;font-size:.875rem}.font-regular-4{font-family:Poppins-Regular,sans-serif;font-size:.875rem}.font-medium-4{font-family:Poppins-Medium,sans-serif;font-size:.875rem}.font-semibold-4{font-family:Poppins-Semibold,sans-serif;font-size:.875rem}.font-bold-4{font-family:Poppins-Bold,sans-serif;font-size:.875rem}.font-thin-4_5{font-family:Poppins-Thin,sans-serif;font-size:.9375rem}.font-light-4_5{font-family:Poppins-Light,sans-serif;font-size:.9375rem}.font-regular-4_5{font-family:Poppins-Regular,sans-serif;font-size:.9375rem}.font-medium-4_5{font-family:Poppins-Medium,sans-serif;font-size:.9375rem}.font-semibold-4_5{font-family:Poppins-Semibold,sans-serif;font-size:.9375rem}.font-bold-4_5{font-family:Poppins-Bold,sans-serif;font-size:.9375rem}.font-thin-5{font-family:Poppins-Thin,sans-serif;font-size:1rem}.font-light-5{font-family:Poppins-Light,sans-serif;font-size:1rem}.font-regular-5{font-family:Poppins-Regular,sans-serif;font-size:1rem}.font-medium-5{font-family:Poppins-Medium,sans-serif;font-size:1rem}.font-semibold-5{font-family:Poppins-Semibold,sans-serif;font-size:1rem}.font-bold-5{font-family:Poppins-Bold,sans-serif;font-size:1rem}.font-thin-6{font-family:Poppins-Thin,sans-serif;font-size:1.125rem}.font-light-6{font-family:Poppins-Light,sans-serif;font-size:1.125rem}.font-regular-6{font-family:Poppins-Regular,sans-serif;font-size:1.125rem}.font-medium-6{font-family:Poppins-Medium,sans-serif;font-size:1.125rem}.font-semibold-6{font-family:Poppins-Semibold,sans-serif;font-size:1.125rem}.font-bold-6{font-family:Poppins-Bold,sans-serif;font-size:1.125rem}.font-thin-7{font-family:Poppins-Thin,sans-serif;font-size:1.25rem}.font-light-7{font-family:Poppins-Light,sans-serif;font-size:1.25rem}.font-regular-7{font-family:Poppins-Regular,sans-serif;font-size:1.25rem}.font-medium-7{font-family:Poppins-Medium,sans-serif;font-size:1.25rem}.font-semibold-7{font-family:Poppins-Semibold,sans-serif;font-size:1.25rem}.font-bold-7{font-family:Poppins-Bold,sans-serif;font-size:1.25rem}.font-thin-8{font-family:Poppins-Thin,sans-serif;font-size:1.375rem}.font-light-8{font-family:Poppins-Light,sans-serif;font-size:1.375rem}.font-regular-8{font-family:Poppins-Regular,sans-serif;font-size:1.375rem}.font-medium-8{font-family:Poppins-Medium,sans-serif;font-size:1.375rem}.font-semibold-8{font-family:Poppins-Semibold,sans-serif;font-size:1.375rem}.font-bold-8{font-family:Poppins-Bold,sans-serif;font-size:1.375rem}.font-thin-9{font-family:Poppins-Thin,sans-serif;font-size:1.5rem}.font-light-9{font-family:Poppins-Light,sans-serif;font-size:1.5rem}.font-regular-9{font-family:Poppins-Regular,sans-serif;font-size:1.5rem}.font-medium-9{font-family:Poppins-Medium,sans-serif;font-size:1.5rem}.font-semibold-9{font-family:Poppins-Semibold,sans-serif;font-size:1.5rem}.font-bold-9{font-family:Poppins-Bold,sans-serif;font-size:1.5rem}.font-thin-10{font-family:Poppins-Thin,sans-serif;font-size:1.625rem}.font-light-10{font-family:Poppins-Light,sans-serif;font-size:1.625rem}.font-regular-10{font-family:Poppins-Regular,sans-serif;font-size:1.625rem}.font-medium-10{font-family:Poppins-Medium,sans-serif;font-size:1.625rem}.font-semibold-10{font-family:Poppins-Semibold,sans-serif;font-size:1.625rem}.font-bold-10{font-family:Poppins-Bold,sans-serif;font-size:1.625rem}.font-thin-11{font-family:Poppins-Thin,sans-serif;font-size:2.25rem}.font-light-11{font-family:Poppins-Light,sans-serif;font-size:2.25rem}.font-regular-11{font-family:Poppins-Regular,sans-serif;font-size:2.25rem}.font-medium-11{font-family:Poppins-Medium,sans-serif;font-size:2.25rem}.font-semibold-11{font-family:Poppins-Semibold,sans-serif;font-size:2.25rem}.font-bold-11{font-family:Poppins-Bold,sans-serif;font-size:2.25rem}.font-thin-12{font-family:Poppins-Thin,sans-serif;font-size:3rem}.font-light-12{font-family:Poppins-Light,sans-serif;font-size:3rem}.font-regular-12{font-family:Poppins-Regular,sans-serif;font-size:3rem}.font-medium-12{font-family:Poppins-Medium,sans-serif;font-size:3rem}.font-semibold-12{font-family:Poppins-Semibold,sans-serif;font-size:3rem}.font-bold-12{font-family:Poppins-Bold,sans-serif;font-size:3rem}.bmb_calendar{background-color:var(--containers-background);position:relative;overflow:hidden;display:flex;flex-flow:column}@media (min-width: 62.5625rem){.bmb_calendar{padding:var(--bmb-spacing-xl);background-color:var(--containers-main)}}.bmb_calendar-event-bullet{width:.5rem;height:.5rem;border-radius:50%;margin-left:.5rem;background-color:var(--general_contrasts-50)}.bmb_calendar-event-bullet-academic{background-color:var(--general_contrasts-main-selection)}.bmb_calendar-event-bullet-life{background-color:rgb(var(--color-green-light))}.bmb_calendar-event-bullet-events{background-color:rgb(var(--color-purple-light))}.bmb_calendar-event-bullet-save_the_date{background-color:rgb(var(--color-yellow-primary))}.bmb_calendar-detail-header{display:flex;align-items:center;gap:.5rem;justify-content:center;padding:var(--bmb-spacing-n) var(--bmb-spacing-none);border-bottom:.0625rem solid var(--general_contrasts-25);position:sticky;top:0;z-index:1;background-color:var(--containers-main)}@media (max-width: 62.5rem){.bmb_calendar-detail-header{display:none}}.bmb_calendar-detail-header h2{font-family:Poppins-Regular,sans-serif;font-size:.75rem;font-weight:400}.bmb_calendar-detail-header h2:first-letter .bmb-first-letter{text-transform:capitalize}.bmb_calendar-detail-header span{font-family:Poppins-Regular,sans-serif;font-size:.75rem}.bmb_calendar-body{position:relative}.bmb_calendar-col{flex:1;height:fit-content;border-left:.0625rem solid var(--containers-main)}@media (min-width: 62.5625rem){.bmb_calendar-col{border-left:.0625rem solid var(--general_contrasts-25)}}.bmb_calendar-col-today{background-color:var(--general_contrasts-25)}.bmb_calendar-row-body{min-height:7.5rem;border-bottom:.0625rem solid var(--containers-main);position:relative}@media (min-width: 62.5625rem){.bmb_calendar-row-body{border-bottom:.0625rem solid var(--general_contrasts-25)}}.bmb_calendar-row-body:before{content:\"\";position:absolute;top:50%;left:0;width:100%;border-bottom:.0625rem dashed var(--containers-main)}@media (min-width: 62.5625rem){.bmb_calendar-row-body:before{display:none}}.bmb_calendar-week-view,.bmb_calendar-day-view{display:flex;justify-content:space-between}.bmb_calendar-loader{display:flex;height:100%;position:absolute;top:0;width:100%;left:0;justify-content:center;align-items:center}.bmb_calendar-content{flex:1 0 0%;overflow:hidden}.bmb_calendar-event-modal-title{overflow:hidden;text-overflow:ellipsis;white-space:wrap;font-family:Poppins-Regular,sans-serif;font-size:1rem}.bmb_calendar-event-modal-detail,.bmb_calendar-event-modal-place,.bmb_calendar-event-modal-duration{font-family:Poppins-Regular,sans-serif;font-size:.875rem}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: BmbCalendarTemplateDayComponent, selector: "bmb-calendar-template-day", inputs: ["now", "events", "currentTime", "startBusinessHour", "dateFormat"], outputs: ["onSelectEvent"] }, { kind: "component", type: BmbCalendarTemplateWeekComponent, selector: "bmb-calendar-template-week", inputs: ["weekDays", "now", "dateFormat", "events", "currentTime", "startBusinessHour", "selectedWeek"], outputs: ["onSelectEvent"] }, { kind: "component", type: BmbCalendarTemplateMonthComponent, selector: "bmb-calendar-template-month", inputs: ["now", "events"], outputs: ["onSelectEvent"] }, { kind: "component", type: BmbCalendarHeaderComponent, selector: "bmb-calendar-header", inputs: ["weekDays", "view", "currentDate", "showFilterButton"], outputs: ["onRangeChange", "onCurrentDateChange", "showFilters"] }, { kind: "component", type: BmbCalendarTemplateMobileComponent, selector: "bmb-calendar-template-mobile", inputs: ["weekDays", "now", "events", "calendarTitle", "disableMobileFilter"], outputs: ["onClose", "onCurrentDateChange", "showFilters"] }, { kind: "component", type: BmbBadgeComponent, selector: "bmb-badge", inputs: ["appearance", "text", "container"] }, { kind: "component", type: BmbLoaderComponent, selector: "bmb-loader", inputs: ["appearance", "title", "icon", "subtitle", "overlay", "isVisible", "errorState", "actions", "buttonPrimary", "buttonSecondary", "showInline"], outputs: ["onButtonPrimary", "onButtonSecondary"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i5.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i5.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i5.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: BmbCheckboxComponent, selector: "bmb-checkbox", inputs: ["name", "id", "disabled", "required", "value", "label", "labelPosition", "ariaDescribedby", "ariaLabel", "ariaLabelledby", "errorMessage", "helperMessage", "customValidation", "control", "checked", "showError", "indeterminate", "inputId"], outputs: ["controlChange", "checkedChange", "showErrorChange", "indeterminateChange", "inputIdChange", "change"] }, { kind: "component", type: BmbDividerComponent, selector: "bmb-divider", inputs: ["type"] }, { kind: "directive", type: BmbLayoutDirective, selector: "[bmbLayout]", inputs: ["gapSize", "margin", "dynamicCols", "justify", "alignItems", "isContainerQuery"] }, { kind: "directive", type: BmbLayoutItemDirective, selector: "[bmbLayoutItem]", inputs: ["colSm", "colLg", "marginLeft", "marginRight", "colGrow", "isDynamicItem"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
260
258
  }
261
259
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BmbCalendarComponent, decorators: [{
262
260
  type: Component,
@@ -283,6 +281,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
283
281
  args: ['modalTemplate']
284
282
  }], resize: [{
285
283
  type: HostListener,
286
- args: ['window:resize', ['$event']]
284
+ args: ['window:resize']
287
285
  }] } });
288
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm1iLWNhbGVuZGFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RzLW5nL3NyYy9saWIvY29tcG9uZW50cy9ibWItY2FsZW5kYXIvYm1iLWNhbGVuZGFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RzLW5nL3NyYy9saWIvY29tcG9uZW50cy9ibWItY2FsZW5kYXIvYm1iLWNhbGVuZGFyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixZQUFZLEVBQ1osS0FBSyxFQUNMLEtBQUssRUFDTCxTQUFTLEVBQ1QsV0FBVyxFQUNYLE1BQU0sRUFDTixRQUFRLEVBQ1IsTUFBTSxFQUdOLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsTUFBTSxPQUFPLENBQUM7QUFDM0MsT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0sMEVBQTBFLENBQUM7QUFDNUgsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sd0VBQXdFLENBQUM7QUFDekgsT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0sNEVBQTRFLENBQUM7QUFDL0gsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sNERBQTRELENBQUM7QUFDeEcsT0FBTyxFQUFFLGtDQUFrQyxFQUFFLE1BQU0sOEVBQThFLENBQUM7QUFDbEksT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFPeEUsT0FBTyxFQUFFLFdBQVcsRUFBRSxZQUFZLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFHekUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1B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LFdBQVcsRUFBRTtnQkFFckIsYUFBYTtzQkFBeEMsU0FBUzt1QkFBQyxlQUFlO2dCQUdsQixNQUFNO3NCQURiLFlBQVk7dUJBQUMsZUFBZSxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG4gIEhvc3RMaXN0ZW5lcixcbiAgbW9kZWwsXG4gIGlucHV0LFxuICBWaWV3Q2hpbGQsXG4gIFRlbXBsYXRlUmVmLFxuICBvdXRwdXQsXG4gIGNvbXB1dGVkLFxuICBzaWduYWwsXG4gIE9uSW5pdCxcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgZWZmZWN0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBEYXRlVGltZSwgSW50ZXJ2YWwgfSBmcm9tICdsdXhvbic7XG5pbXBvcnQgeyBCbWJDYWxlbmRhclRlbXBsYXRlV2Vla0NvbXBvbmVudCB9IGZyb20gJy4vY29tbW9uL2JtYi1jYWxlbmRhci10ZW1wbGF0ZS13ZWVrL2JtYi1jYWxlbmRhci10ZW1wbGF0ZS13ZWVrLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCbWJDYWxlbmRhclRlbXBsYXRlRGF5Q29tcG9uZW50IH0gZnJvbSAnLi9jb21tb24vYm1iLWNhbGVuZGFyLXRlbXBsYXRlLWRheS9ibWItY2FsZW5kYXItdGVtcGxhdGUtZGF5LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCbWJDYWxlbmRhclRlbXBsYXRlTW9udGhDb21wb25lbnQgfSBmcm9tICcuL2NvbW1vbi9ibWItY2FsZW5kYXItdGVtcGxhdGUtbW9udGgvYm1iLWNhbGVuZGFyLXRlbXBsYXRlLW1vbnRoLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCbWJDYWxlbmRhckhlYWRlckNvbXBvbmVudCB9IGZyb20gJy4vY29tbW9uL2JtYi1jYWxlbmRhci1oZWFkZXIvYm1iLWNhbGVuZGFyLWhlYWRlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgQm1iQ2FsZW5kYXJUZW1wbGF0ZU1vYmlsZUNvbXBvbmVudCB9IGZyb20gJy4vY29tbW9uL2JtYi1jYWxlbmRhci10ZW1wbGF0ZS1tb2JpbGUvYm1iLWNhbGVuZGFyLXRlbXBsYXRlLW1vYmlsZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgQm1iTG9hZGVyQ29tcG9uZW50IH0gZnJvbSAnLi4vYm1iLWxvYWRlci9ibWItbG9hZGVyLmNvbXBvbmVudCc7XG5pbXBvcnQge1xuICBJQm1iQ2FsZW5kYXJFdmVudCxcbiAgSUJtYkNhbGVuZGFyRXZlbnRDbGljayxcbiAgSUJtYkNhbGVuZGFyVmlldyxcbiAgSUJtYlBhcnNlZERhdGVzLFxufSBmcm9tICcuL3R5cGVzJztcbmltcG9ydCB7IGdldFdlZWtEYXlzLCBnZXRNb250aERheXMsIERFRkFVTFRfREFURV9GT1JNQVQgfSBmcm9tICcuL3V0aWxzJztcbmltcG9ydCB7IEJtYkNhbGVuZGFyU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2NhbGVuZGFyL2NhbGVuZGFyLnNlcnZpY2UnO1xuaW1wb3J0IHsgQm1iTmF0aXZlTW9kYWxTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvbW9kYWwvbmF0aXZlLW1vZGFsLnNlcnZpY2UnO1xuaW1wb3J0IHsgQm1iQmFkZ2VDb21wb25lbnQgfSBmcm9tICcuLi9ibWItYmFkZ2UvYm1iLWJhZGdlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGb3JtQ29udHJvbCwgRm9ybUdyb3VwLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQm1iQ2hlY2tib3hDb21wb25lbnQgfSBmcm9tICcuLi9ibWItY2hlY2tib3gvYm1iLWNoZWNrYm94LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCbWJEaXZpZGVyQ29tcG9uZW50IH0gZnJvbSAnLi4vYm1iLWRpdmlkZXIvYm1iLWRpdmlkZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEJtYkxheW91dERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMvYm1iLWxheW91dC9ibWItbGF5b3V0LmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBCbWJMYXlvdXRJdGVtRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcy9ibWItbGF5b3V0L2JtYi1sYXlvdXQtaXRlbS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgSUJtYk5hdGl2ZU1vZGFsIH0gZnJvbSAnLi4vYm1iLW1vZGFsL2JtYi1tb2RhbC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgQm1iVHJhbnNsYXRpb25zU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3RyYW5zbGF0aW9ucy90cmFuc2xhdGlvbnMuc2VydmljZSc7XG5cbmNvbnN0IHBhcnNlRnJvbUZvcm1hdCA9IChkYXRlU3RyaW5nOiBzdHJpbmcsIGZvcm1hdDogc3RyaW5nKTogRGF0ZVRpbWUgPT4ge1xuICBpZiAoZm9ybWF0LnRvTG93ZXJDYXNlKCkgPT09ICdpc28nKSByZXR1cm4gRGF0ZVRpbWUuZnJvbUlTTyhkYXRlU3RyaW5nKTtcblxuICByZXR1cm4gRGF0ZVRpbWUuZnJvbUZvcm1hdChkYXRlU3RyaW5nLCBmb3JtYXQpO1xufTtcblxuZXhwb3J0IHtcbiAgSUJtYkNhbGVuZGFyRXZlbnQsXG4gIElCbWJDYWxlbmRhckV2ZW50Q2xpY2ssXG4gIElCbWJFdmVudFR5cGUsXG59IGZyb20gJy4vdHlwZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdibWItY2FsZW5kYXInLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIEJtYkNhbGVuZGFyVGVtcGxhdGVEYXlDb21wb25lbnQsXG4gICAgQm1iQ2FsZW5kYXJUZW1wbGF0ZVdlZWtDb21wb25lbnQsXG4gICAgQm1iQ2FsZW5kYXJUZW1wbGF0ZU1vbnRoQ29tcG9uZW50LFxuICAgIEJtYkNhbGVuZGFySGVhZGVyQ29tcG9uZW50LFxuICAgIEJtYkNhbGVuZGFyVGVtcGxhdGVNb2JpbGVDb21wb25lbnQsXG4gICAgQm1iQmFkZ2VDb21wb25lbnQsXG4gICAgQm1iTG9hZGVyQ29tcG9uZW50LFxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgQm1iQ2hlY2tib3hDb21wb25lbnQsXG4gICAgQm1iRGl2aWRlckNvbXBvbmVudCxcbiAgICBCbWJMYXlvdXREaXJlY3RpdmUsXG4gICAgQm1iTGF5b3V0SXRlbURpcmVjdGl2ZSxcbiAgXSxcbiAgc3R5bGVVcmw6ICcuL2JtYi1jYWxlbmRhci5jb21wb25lbnQuc2NzcycsXG4gIHRlbXBsYXRlVXJsOiAnLi9ibWItY2FsZW5kYXIuY29tcG9uZW50Lmh0bWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbn0pXG5leHBvcnQgY2xhc3MgQm1iQ2FsZW5kYXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXQge1xuICB2aWV3ID0gbW9kZWw8SUJtYkNhbGVuZGFyVmlldz4oJ3dlZWsnKTsgLy8gaW50ZXJuYWxcbiAgZmlsdGVycyA9IG1vZGVsPHsgW2tleTogc3RyaW5nXTogYm9vbGVhbiB9Pih7fSk7XG4gIGNhbGVuZGFyVGltZXpvbmUgPSBpbnB1dDxzdHJpbmc+KFxuICAgIEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSxcbiAgKTtcbiAgY2xpZW50VGltZXpvbmUgPSBpbnB1dDxzdHJpbmc+KFxuICAgIEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZSxcbiAgKTtcbiAgLy8gbGFuZyA9IGlucHV0PHN0cmluZz4oJ2VzLU1YJyk7IC8vIGRlcHJlY2F0ZWRcbiAgaGVpZ2h0ID0gaW5wdXQ8bnVtYmVyIHwgc3RyaW5nPignMTAwJScpO1xuICBzdGFydEJ1c2luZXNzSG91ciA9IGlucHV0PG51bWJlcj4oOCk7XG4gIGNhbGVuZGFyVGl0bGUgPSBpbnB1dDxzdHJpbmc+KCk7XG4gIGRhdGVGb3JtYXQgPSBpbnB1dDxzdHJpbmc+KERFRkFVTFRfREFURV9GT1JNQVQpO1xuICBldmVudHMgPSBjb21wdXRlZDxJQm1iQ2FsZW5kYXJFdmVudFtdPigoKSA9PlxuICAgIHRoaXMuZXZlbnRzU2lnbmFsLmdldEV2ZW50TGlzdCgpLFxuICApO1xuICBzaG93RmlsdGVyQnV0dG9uID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xuICBkaXNhYmxlTW9iaWxlRmlsdGVyID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xuICB2aXNpYmxlRGF0ZSA9IG1vZGVsPERhdGVUaW1lPihEYXRlVGltZS5ub3coKSk7IC8vIGludGVybmFsXG5cbiAgY3VycmVudERhdGUgPSBpbnB1dDxzdHJpbmc+KCcnKTsgLy8gRGVwcmVjYXRlZFxuXG4gIG9uRGF0ZUNoYW5nZSA9IG91dHB1dDxhbnk+KCk7XG4gIG9uQ2xvc2UgPSBvdXRwdXQ8YW55PigpO1xuXG4gIHNlbGVjdGVkV2VlayA9IGNvbXB1dGVkKCgpID0+IHRoaXMudmlzaWJsZURhdGUoKS53ZWVrTnVtYmVyKTtcbiAgd2Vla051bWJlciA9IGNvbXB1dGVkKCgpID0+IHRoaXMudmlzaWJsZURhdGUoKS53ZWVrTnVtYmVyKTtcbiAgcmVuZGVyV2Vla0RheXMgPSBjb21wdXRlZCgoKSA9PiBnZXRXZWVrRGF5cyh0aGlzLnZpc2libGVEYXRlKCkpKTtcbiAgaXNMb2FkaW5nID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5ldmVudHNTaWduYWwuZ2V0SXNMb2FkaW5nKCkpO1xuICBzZWxlY3RlZEV2ZW50OiBJQm1iQ2FsZW5kYXJFdmVudCB8IG51bGwgPSBudWxsO1xuICBpc01vYmlsZUhlYWRlcjogYm9vbGVhbiA9IGZhbHNlO1xuICBvcmRlcmVkRXZlbnRzID0gY29tcHV0ZWQ8SUJtYlBhcnNlZERhdGVzPigoKSA9PiB7XG4gICAgY29uc3Qgd2Vla3MgPSB0aGlzLmV2ZW50cygpLnJlZHVjZShcbiAgICAgIChhY2M6IElCbWJQYXJzZWREYXRlcywgZXZlbnQpID0+IHtcbiAgICAgICAgY29uc3Qgc3RhcnREYXRlID0gcGFyc2VGcm9tRm9ybWF0KGV2ZW50LnN0YXJ0LCB0aGlzLmRhdGVGb3JtYXQoKSk7XG4gICAgICAgIGNvbnN0IGVuZERhdGUgPSBwYXJzZUZyb21Gb3JtYXQoZXZlbnQuZW5kLCB0aGlzLmRhdGVGb3JtYXQoKSk7XG4gICAgICAgIGNvbnN0IGludGVydmFsID0gSW50ZXJ2YWwuZnJvbURhdGVUaW1lcyhzdGFydERhdGUsIGVuZERhdGUpO1xuICAgICAgICBjb25zdCB3ZWVrID0gc3RhcnREYXRlLndlZWtOdW1iZXI7XG4gICAgICAgIGNvbnN0IHN0cmluZ0RhdGUgPSBzdGFydERhdGUudG9Gb3JtYXQoJ3l5eXktTU0tZGQnKTtcblxuICAgICAgICBpZiAoIWFjY1t3ZWVrXSkgYWNjW3dlZWtdID0ge307XG4gICAgICAgIGlmICghYWNjW3dlZWtdW3N0cmluZ0RhdGVdKSBhY2Nbd2Vla11bc3RyaW5nRGF0ZV0gPSBbXTtcbiAgICAgICAgYWNjW3dlZWtdW3N0cmluZ0RhdGVdLnB1c2goeyAuLi5ldmVudCwgc3RhcnREYXRlLCBlbmREYXRlLCBpbnRlcnZhbCB9KTtcblxuICAgICAgICBpZiAoXG4gICAgICAgICAgZXZlbnQuY2FsZW5kYXIgJiZcbiAgICAgICAgICAhYWNjLmNhbGVuZGFycz8uc29tZSgoY2FsKSA9PiBjYWwgPT09IGV2ZW50LmNhbGVuZGFyKVxuICAgICAgICApIHtcbiAgICAgICAgICBhY2MuY2FsZW5kYXJzPy5wdXNoKGV2ZW50LmNhbGVuZGFyKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBhY2M7XG4gICAgICB9LFxuICAgICAgeyBjYWxlbmRhcnM6IFtdIH0gYXMgSUJtYlBhcnNlZERhdGVzLFxuICAgICk7XG5cbiAgICBjb25zdCBvcmRlcmVkRGF0ZXMgPSB7fSBhcyBJQm1iUGFyc2VkRGF0ZXM7XG5cbiAgICBmb3IgKGNvbnN0IHdlZWsgaW4gd2Vla3MpIHtcbiAgICAgIGlmICh3ZWVrID09PSAnY2FsZW5kYXJzJykge1xuICAgICAgICBvcmRlcmVkRGF0ZXNbd2Vla10gPSB3ZWVrc1t3ZWVrXTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIG9yZGVyZWREYXRlc1t3ZWVrXSA9IHt9O1xuXG4gICAgICAgIGZvciAoY29uc3QgZGF0ZSBpbiB3ZWVrc1t3ZWVrXSkge1xuICAgICAgICAgIG9yZGVyZWREYXRlc1t3ZWVrXVtkYXRlXSA9IHdlZWtzW3dlZWtdW2RhdGVdLnNvcnQoKGEsIGIpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGFEYXRlID0gYS5zdGFydERhdGUgPz8gRGF0ZVRpbWUuaW52YWxpZCgnSW52YWxpZCBEYXRlJyk7XG4gICAgICAgICAgICBjb25zdCBiRGF0ZSA9IGIuc3RhcnREYXRlID8/IERhdGVUaW1lLmludmFsaWQoJ0ludmFsaWQgRGF0ZScpO1xuICAgICAgICAgICAgcmV0dXJuIGFEYXRlIDw9IGJEYXRlID8gLTEgOiAxO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIG9yZGVyZWREYXRlcztcbiAgfSk7XG4gIGZpbHRlcmVkRXZlbnRzID0gY29tcHV0ZWQ8SUJtYlBhcnNlZERhdGVzPigoKSA9PiB7XG4gICAgY29uc3QgbmV3RXZlbnRzID0ge30gYXMgSUJtYlBhcnNlZERhdGVzO1xuICAgIGZvciAoY29uc3Qgd2VlayBpbiB0aGlzLm9yZGVyZWRFdmVudHMoKSkge1xuICAgICAgaWYgKHdlZWsgIT09ICdjYWxlbmRhcnMnKSB7XG4gICAgICAgIG5ld0V2ZW50c1t3ZWVrXSA9IHt9O1xuICAgICAgICBmb3IgKGNvbnN0IGRhdGUgaW4gdGhpcy5vcmRlcmVkRXZlbnRzKClbd2Vla10pIHtcbiAgICAgICAgICBuZXdFdmVudHNbd2Vla11bZGF0ZV0gPSB0aGlzLm9yZGVyZWRFdmVudHMoKVt3ZWVrXVtkYXRlXS5tYXAoXG4gICAgICAgICAgICAoZXZlbnQpID0+ICh7XG4gICAgICAgICAgICAgIC4uLmV2ZW50LFxuICAgICAgICAgICAgICBpc1Zpc2libGU6XG4gICAgICAgICAgICAgICAgT2JqZWN0LmtleXModGhpcy5maWx0ZXJzKCkpLmxlbmd0aCA9PT0gMCB8fFxuICAgICAgICAgICAgICAgIHRoaXMuZmlsdGVycygpW2V2ZW50LmNhbGVuZGFyIHx8ICdEZWZhdWx0J10gIT09IGZhbHNlLFxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIG5ld0V2ZW50cy5jYWxlbmRhcnMgPSB0aGlzLm9yZGVyZWRFdmVudHMoKS5jYWxlbmRhcnM7XG5cbiAgICByZXR1cm4gbmV3RXZlbnRzO1xuICB9KTtcbiAgZmlsdGVyTW9kYWxJZCA9IHNpZ25hbDxzdHJpbmcgfCBudWxsPihudWxsKTtcbiAgY2FsZW5kYXJGb3JtOiBGb3JtR3JvdXA8eyBba2V5OiBzdHJpbmddOiBGb3JtQ29udHJvbDxhbnk+IH0+ID0gbmV3IEZvcm1Hcm91cChcbiAgICB7fSxcbiAgKTtcblxuICBAVmlld0NoaWxkKCdkZXRhaWxDb250ZW50JywgeyByZWFkOiBUZW1wbGF0ZVJlZiB9KVxuICBkZXRhaWxDb250ZW50PzogVGVtcGxhdGVSZWY8YW55PjtcbiAgQFZpZXdDaGlsZCgnbW9kYWxUZW1wbGF0ZScpIG1vZGFsVGVtcGxhdGUhOiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzpyZXNpemUnLCBbJyRldmVudCddKVxuICBwcml2YXRlIHJlc2l6ZSgpIHtcbiAgICBpZiAod2luZG93LmlubmVyV2lkdGggPCAxMDAwKSB7XG4gICAgICB0aGlzLnZpZXcuc2V0KCdkYXknKTtcbiAgICAgIHRoaXMuaXNNb2JpbGVIZWFkZXIgPSB0cnVlO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmlzTW9iaWxlSGVhZGVyID0gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBldmVudHNTaWduYWw6IEJtYkNhbGVuZGFyU2VydmljZSxcbiAgICBwcml2YXRlIG1vZGFsU2VydmljZTogQm1iTmF0aXZlTW9kYWxTZXJ2aWNlLFxuICAgIHByaXZhdGUgdHJhbnNsYXRpb25zU2VydmljZTogQm1iVHJhbnNsYXRpb25zU2VydmljZSxcbiAgKSB7XG4gICAgZWZmZWN0KCgpID0+IHtcbiAgICAgIGNvbnN0IGNhbGVuZGFycyA9IHRoaXMuZmlsdGVyZWRFdmVudHMoKS5jYWxlbmRhcnMgfHwgW107XG4gICAgICBjYWxlbmRhcnMuZm9yRWFjaCgoY2FsZW5kYXIpID0+IHtcbiAgICAgICAgdGhpcy5jYWxlbmRhckZvcm0uYWRkQ29udHJvbChcbiAgICAgICAgICBjYWxlbmRhcixcbiAgICAgICAgICBuZXcgRm9ybUNvbnRyb2wodGhpcy5maWx0ZXJzKClbY2FsZW5kYXJdIHx8IHRydWUpLFxuICAgICAgICApO1xuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICBjdXJyZW50VGltZSA9IHNpZ25hbDxEYXRlVGltZT4oRGF0ZVRpbWUubm93KCkpO1xuICBwcml2YXRlIHRpbWVySWQ6IGFueTtcblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICBpZiAodGhpcy50aW1lcklkKSB7XG4gICAgICBjbGVhckludGVydmFsKHRoaXMudGltZXJJZCk7XG4gICAgfVxuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIGlmICh3aW5kb3cuaW5uZXJXaWR0aCA8IDEwMDApIHtcbiAgICAgIHRoaXMudmlldy5zZXQoJ2RheScpO1xuICAgICAgdGhpcy5pc01vYmlsZUhlYWRlciA9IHRydWU7XG4gICAgfVxuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy52aWV3LnVwZGF0ZSgodmFsdWUpID0+ICh3aW5kb3cuaW5uZXJXaWR0aCA8IDEwMDAgPyAnZGF5JyA6IHZhbHVlKSk7XG5cbiAgICB0aGlzLnRpbWVySWQgPSBzZXRJbnRlcnZhbCgoKSA9PiB7XG4gICAgICB0aGlzLnVwZGF0ZVRpbWUoKTtcbiAgICB9LCA2MDAwMCk7IC8vIEFjdHVhbGl6YSBjYWRhIDYwMDAwIG1pbGlzZWd1bmRvcyAoMSBtaW51dG8pXG4gIH1cblxuICB1cGRhdGVUaW1lKCkge1xuICAgIHRoaXMuY3VycmVudFRpbWUuc2V0KERhdGVUaW1lLm5vdygpKTtcbiAgfVxuXG4gIGhhbmRsZURhdGVDaGFuZ2UocmFuZ2U6IElCbWJDYWxlbmRhclZpZXcsIG5vdzogRGF0ZVRpbWUpOiB2b2lkIHtcbiAgICB0aGlzLnZpZXcuc2V0KHJhbmdlKTtcbiAgICBsZXQgdmlzaWJsZURhdGVzOiAoc3RyaW5nIHwgbnVsbClbXSA9IFtdO1xuXG4gICAgc3dpdGNoIChyYW5nZSkge1xuICAgICAgY2FzZSAnZGF5JzpcbiAgICAgICAgdmlzaWJsZURhdGVzID0gZ2V0TW9udGhEYXlzKG5vdykubWFwKChkYXRlKSA9PiBkYXRlLnRvSVNPKCkpO1xuICAgICAgICBicmVhaztcblxuICAgICAgY2FzZSAnd2Vlayc6XG4gICAgICAgIHZpc2libGVEYXRlcyA9IGdldFdlZWtEYXlzKG5vdykubWFwKChkYXRlKSA9PiBkYXRlLnRvSVNPKCkpO1xuICAgICAgICBicmVhaztcblxuICAgICAgY2FzZSAnbW9udGgnOlxuICAgICAgICB2aXNpYmxlRGF0ZXMgPSBnZXRNb250aERheXMobm93KS5tYXAoKGRhdGUpID0+IGRhdGUudG9JU08oKSk7XG4gICAgICAgIGJyZWFrO1xuXG4gICAgICBkZWZhdWx0OlxuICAgICAgICBicmVhaztcbiAgICB9XG5cbiAgICB0aGlzLm9uRGF0ZUNoYW5nZS5lbWl0KHtcbiAgICAgIHJhbmdlLFxuICAgICAgbm93OiBub3cudG9JU08oKSxcbiAgICAgIHZpc2libGVEYXRlcyxcbiAgICB9KTtcbiAgfVxuXG4gIGhhbmRsZUN1cnJlbnREYXRlQ2hhbmdlKG5ld0RhdGU6IERhdGVUaW1lKTogdm9pZCB7XG4gICAgdGhpcy52aXNpYmxlRGF0ZS5zZXQobmV3RGF0ZSk7XG4gIH1cblxuICBnZXREYXlFdmVudHMoKTogSUJtYkNhbGVuZGFyRXZlbnRbXSB7XG4gICAgY29uc3QgdmlzaWJsZURhdGVTdHIgPSB0aGlzLnZpc2libGVEYXRlKCkudG9Gb3JtYXQoJ3l5eXktTU0tZGQnKTtcbiAgICBjb25zdCBldmVudHMgPVxuICAgICAgdGhpcy5maWx0ZXJlZEV2ZW50cygpW3RoaXMuc2VsZWN0ZWRXZWVrKCldPy5bdmlzaWJsZURhdGVTdHJdID8/IFtdO1xuICAgIHJldHVybiBldmVudHM7XG4gIH1cblxuICBoYW5kbGVTZWxlY3RFdmVudChuZXdFdmVudDogSUJtYkNhbGVuZGFyRXZlbnRDbGljayk6IHZvaWQge1xuICAgIGNvbnN0IHsgZXZlbnQgfSA9IG5ld0V2ZW50O1xuICAgIGNvbnN0IHRpdGxlID0gZXZlbnQubW9kYWxUaXRsZSA/PyBldmVudC50aXRsZTtcbiAgICBjb25zdCBtb2RhbFRpdGxlID1cbiAgICAgIGV2ZW50LnN0YXR1cyA9PT0gJ2Rpc2FibGVkJyA/IGAoQ2FuY2VsYWRvKSAke3RpdGxlfWAgOiB0aXRsZTtcblxuICAgIHRoaXMuc2VsZWN0ZWRFdmVudCA9IGV2ZW50O1xuXG4gICAgY29uc3QgZGF0YTogSUJtYk5hdGl2ZU1vZGFsID0ge1xuICAgICAgdGl0bGU6IG1vZGFsVGl0bGUsXG4gICAgICBzdWJ0aXRsZTogZXZlbnQuc3VidGl0bGUsXG4gICAgICBjb250ZW50OiB0aGlzLmRldGFpbENvbnRlbnQsXG4gICAgICBzaXplOiAnc21hbGwnLFxuICAgIH07XG4gICAgdGhpcy5tb2RhbFNlcnZpY2Uub3Blbk1vZGFsKGRhdGEpO1xuICB9XG5cbiAgaXNBbkV2ZW50U2VsZWN0ZWQoZXZlbnQ6IElCbWJDYWxlbmRhckV2ZW50Q2xpY2sgfCBudWxsKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhZXZlbnQ7XG4gIH1cblxuICBnZXRIZWlnaHQoaGVpZ2h0OiBzdHJpbmcgfCBudW1iZXIpOiBzdHJpbmcge1xuICAgIGlmICh0eXBlb2YgaGVpZ2h0ID09PSAnbnVtYmVyJykgcmV0dXJuIGAke2hlaWdodH1weGA7XG5cbiAgICByZXR1cm4gaGVpZ2h0O1xuICB9XG5cbiAgZ2V0RHVyYXRpb24oKSB7XG4gICAgaWYgKCF0aGlzLnNlbGVjdGVkRXZlbnQpIHJldHVybiAnJztcbiAgICByZXR1cm4gYCR7RGF0ZVRpbWUuZnJvbUlTTyh0aGlzLnNlbGVjdGVkRXZlbnQuc3RhcnQpLnRvRm9ybWF0KCdoaDptbSBhJyl9IC0gJHtEYXRlVGltZS5mcm9tSVNPKHRoaXMuc2VsZWN0ZWRFdmVudC5lbmQpLnRvRm9ybWF0KCdoaDptbSBhJyl9YDtcbiAgfVxuXG4gIGhhbmRsZUNsb3NlKCkge1xuICAgIHRoaXMub25DbG9zZS5lbWl0KCdjbG9zZScpO1xuICB9XG5cbiAgaGFuZGxlU2hvd01vZGFsRmlsdGVyKCkge1xuICAgIHRoaXMuZmlsdGVyTW9kYWxJZC5zZXQoXG4gICAgICB0aGlzLm1vZGFsU2VydmljZS5vcGVuTW9kYWwoe1xuICAgICAgICB0aXRsZTogdGhpcy50cmFuc2xhdGlvbnNTZXJ2aWNlLnRyYW5zbGF0ZSgnY2FsZW5kYXIudGl0bGUnKSxcbiAgICAgICAgc3VidGl0bGU6IHRoaXMudHJhbnNsYXRpb25zU2VydmljZS50cmFuc2xhdGUoJ2NhbGVuZGFyLnN1YnRpdGxlJyksXG4gICAgICAgIGNvbnRlbnQ6IHRoaXMubW9kYWxUZW1wbGF0ZSxcbiAgICAgICAgc2l6ZTogJ3gtc21hbGwnLFxuICAgICAgICBjbG9zZU1vZGFsQ2xpY2tlZDogKGV2ZW50OiB1bmtub3duKSA9PiB0aGlzLmhhbmRsZUZvcm1SZXNldChldmVudCksXG4gICAgICAgIGFjdGlvbnM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBidXR0b25OYW1lOiAnc2F2ZScsXG4gICAgICAgICAgICBhcHBlYXJhbmNlOiAncHJpbWFyeScsXG4gICAgICAgICAgICBsYWJlbDogdGhpcy50cmFuc2xhdGlvbnNTZXJ2aWNlLnRyYW5zbGF0ZSgnY2FsZW5kYXIuZmlsdGVyX3NhdmUnKSxcbiAgICAgICAgICAgIGFjdGlvbjogKCkgPT4gdGhpcy5oYW5kbGVBcHBseUZpbHRlcnMoKSxcbiAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgfSksXG4gICAgKTtcbiAgfVxuXG4gIGhhbmRsZUZvcm1SZXNldChfOiBhbnkpOiB2b2lkIHtcbiAgICBmb3IgKGNvbnN0IGNhbGVuZGFyIGluIHRoaXMuY2FsZW5kYXJGb3JtLmNvbnRyb2xzKSB7XG4gICAgICBjb25zdCB2YWx1ZSA9XG4gICAgICAgIE9iamVjdC5rZXlzKHRoaXMuZmlsdGVycygpKS5sZW5ndGggPT09IDAgfHwgISF0aGlzLmZpbHRlcnMoKVtjYWxlbmRhcl07XG4gICAgICB0aGlzLmNhbGVuZGFyRm9ybS5jb250cm9sc1tjYWxlbmRhcl0uc2V0VmFsdWUodmFsdWUpO1xuICAgIH1cbiAgfVxuXG4gIGhhbmRsZUFwcGx5RmlsdGVycygpOiB2b2lkIHtcbiAgICBjb25zdCBzZWxlY3RlZENhbGVuZGFycyA9IE9iamVjdC5rZXlzKHRoaXMuY2FsZW5kYXJGb3JtLmNvbnRyb2xzKS5yZWR1Y2U8e1xuICAgICAgW2tleTogc3RyaW5nXTogYm9vbGVhbjtcbiAgICB9PigoYWNjLCBjYWxlbmRhcikgPT4ge1xuICAgICAgYWNjW2NhbGVuZGFyXSA9IHRoaXMuY2FsZW5kYXJGb3JtLmNvbnRyb2xzW2NhbGVuZGFyXS52YWx1ZTtcbiAgICAgIHJldHVybiBhY2M7XG4gICAgfSwge30pO1xuICAgIHRoaXMuZmlsdGVycy5zZXQoc2VsZWN0ZWRDYWxlbmRhcnMpO1xuICAgIHRoaXMubW9kYWxTZXJ2aWNlLmNsb3NlTW9kYWwodGhpcy5maWx0ZXJNb2RhbElkKCkgYXMgc3RyaW5nKTtcbiAgICB0aGlzLmZpbHRlck1vZGFsSWQuc2V0KG51bGwpO1xuICB9XG5cbiAgZ2V0Rm9ybUNvbnRyb2wobmFtZTogc3RyaW5nKTogRm9ybUNvbnRyb2wge1xuICAgIHJldHVybiB0aGlzLmNhbGVuZGFyRm9ybS5nZXQobmFtZSkgYXMgRm9ybUNvbnRyb2w7XG4gIH1cblxuICBnZXRDYWxlbmRhck5hbWUobmFtZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBzd2l0Y2ggKG5hbWUpIHtcbiAgICAgIGNhc2UgJ2FjYWRlbWljJzpcbiAgICAgICAgcmV0dXJuICdIb3JhcmlvIGRlIGNsYXNlcyc7XG4gICAgICBjYXNlICdsaWZlJzpcbiAgICAgICAgcmV0dXJuICdWaWRhJztcbiAgICAgIGNhc2UgJ2V2ZW50cyc6XG4gICAgICAgIHJldHVybiAnRXZlbnRvcyc7XG4gICAgICBjYXNlICdzYXZlX3RoZV9kYXRlJzpcbiAgICAgICAgcmV0dXJuICdTYXZlIHRoZSBkYXRlJztcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiBuYW1lO1xuICAgIH1cbiAgfVxuXG4gIGdldEJ1bGxldENsYXNzKG5hbWU6IHN0cmluZyk6IHN0cmluZ1tdIHtcbiAgICByZXR1cm4gWydibWJfY2FsZW5kYXItZXZlbnQtYnVsbGV0JywgYGJtYl9jYWxlbmRhci1ldmVudC1idWxsZXQtJHtuYW1lfWBdO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiYm1iX2NhbGVuZGFyXCIgW25nU3R5bGVdPVwieyBoZWlnaHQ6IGdldEhlaWdodChoZWlnaHQoKSkgfVwiPlxuICBAaWYgKGlzTW9iaWxlSGVhZGVyKSB7XG4gICAgPGJtYi1jYWxlbmRhci10ZW1wbGF0ZS1tb2JpbGVcbiAgICAgIFtub3ddPVwidmlzaWJsZURhdGUoKVwiXG4gICAgICBbZXZlbnRzXT1cImZpbHRlcmVkRXZlbnRzKClcIlxuICAgICAgKG9uQ3VycmVudERhdGVDaGFuZ2UpPVwiaGFuZGxlQ3VycmVudERhdGVDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICBbd2Vla0RheXNdPVwicmVuZGVyV2Vla0RheXMoKVwiXG4gICAgICBbY2FsZW5kYXJUaXRsZV09XCJjYWxlbmRhclRpdGxlKClcIlxuICAgICAgW2Rpc2FibGVNb2JpbGVGaWx0ZXJdPVwiZGlzYWJsZU1vYmlsZUZpbHRlcigpXCJcbiAgICAgIChvbkNsb3NlKT1cImhhbmRsZUNsb3NlKClcIlxuICAgICAgKHNob3dGaWx0ZXJzKT1cImhhbmRsZVNob3dNb2RhbEZpbHRlcigpXCJcbiAgICAvPlxuICB9IEBlbHNlIHtcbiAgICA8Ym1iLWNhbGVuZGFyLWhlYWRlclxuICAgICAgW3dlZWtEYXlzXT1cInJlbmRlcldlZWtEYXlzKClcIlxuICAgICAgW3ZpZXddPVwidmlldygpXCJcbiAgICAgIFtjdXJyZW50RGF0ZV09XCJ2aXNpYmxlRGF0ZSgpXCJcbiAgICAgIChvblJhbmdlQ2hhbmdlKT1cImhhbmRsZURhdGVDaGFuZ2UoJGV2ZW50LCB2aXNpYmxlRGF0ZSgpKVwiXG4gICAgICAob25DdXJyZW50RGF0ZUNoYW5nZSk9XCJoYW5kbGVDdXJyZW50RGF0ZUNoYW5nZSgkZXZlbnQpXCJcbiAgICAgIFtzaG93RmlsdGVyQnV0dG9uXT1cInNob3dGaWx0ZXJCdXR0b24oKVwiXG4gICAgICAoc2hvd0ZpbHRlcnMpPVwiaGFuZGxlU2hvd01vZGFsRmlsdGVyKClcIlxuICAgIC8+XG4gIH1cbiAgQHN3aXRjaCAodmlldygpKSB7XG4gICAgQGNhc2UgKCdkYXknKSB7XG4gICAgICA8Ym1iLWNhbGVuZGFyLXRlbXBsYXRlLWRheVxuICAgICAgICBbbm93XT1cInZpc2libGVEYXRlKClcIlxuICAgICAgICBbZXZlbnRzXT1cImdldERheUV2ZW50cygpXCJcbiAgICAgICAgKG9uU2VsZWN0RXZlbnQpPVwiaGFuZGxlU2VsZWN0RXZlbnQoJGV2ZW50KVwiXG4gICAgICAgIFtjdXJyZW50VGltZV09XCJjdXJyZW50VGltZSgpXCJcbiAgICAgICAgW3N0YXJ0QnVzaW5lc3NIb3VyXT1cInN0YXJ0QnVzaW5lc3NIb3VyKClcIlxuICAgICAgICBbZGF0ZUZvcm1hdF09XCJkYXRlRm9ybWF0KClcIlxuICAgICAgICBjbGFzcz1cImJtYl9jYWxlbmRhci1jb250ZW50XCJcbiAgICAgIC8+XG4gICAgfVxuICAgIEBjYXNlICgnd2VlaycpIHtcbiAgICAgIDxibWItY2FsZW5kYXItdGVtcGxhdGUtd2Vla1xuICAgICAgICBbd2Vla0RheXNdPVwicmVuZGVyV2Vla0RheXMoKVwiXG4gICAgICAgIFtub3ddPVwidmlzaWJsZURhdGUoKVwiXG4gICAgICAgIFtldmVudHNdPVwiZmlsdGVyZWRFdmVudHMoKVwiXG4gICAgICAgIChvblNlbGVjdEV2ZW50KT1cImhhbmRsZVNlbGVjdEV2ZW50KCRldmVudClcIlxuICAgICAgICBbY3VycmVudFRpbWVdPVwiY3VycmVudFRpbWUoKVwiXG4gICAgICAgIFtzdGFydEJ1c2luZXNzSG91cl09XCJzdGFydEJ1c2luZXNzSG91cigpXCJcbiAgICAgICAgW3NlbGVjdGVkV2Vla109XCJzZWxlY3RlZFdlZWsoKVwiXG4gICAgICAgIGNsYXNzPVwiYm1iX2NhbGVuZGFyLWNvbnRlbnRcIlxuICAgICAgLz5cbiAgICB9XG4gICAgQGNhc2UgKCdtb250aCcpIHtcbiAgICAgIDxibWItY2FsZW5kYXItdGVtcGxhdGUtbW9udGhcbiAgICAgICAgW25vd109XCJ2aXNpYmxlRGF0ZSgpXCJcbiAgICAgICAgW2V2ZW50c109XCJmaWx0ZXJlZEV2ZW50cygpXCJcbiAgICAgICAgKG9uU2VsZWN0RXZlbnQpPVwiaGFuZGxlU2VsZWN0RXZlbnQoJGV2ZW50KVwiXG4gICAgICAgIGNsYXNzPVwiYm1iX2NhbGVuZGFyLWNvbnRlbnRcIlxuICAgICAgLz5cbiAgICB9XG4gICAgQGRlZmF1bHQge1xuICAgICAgPGJtYi1jYWxlbmRhci10ZW1wbGF0ZS13ZWVrXG4gICAgICAgIFt3ZWVrRGF5c109XCJyZW5kZXJXZWVrRGF5cygpXCJcbiAgICAgICAgW25vd109XCJ2aXNpYmxlRGF0ZSgpXCJcbiAgICAgICAgW2V2ZW50c109XCJmaWx0ZXJlZEV2ZW50cygpXCJcbiAgICAgICAgY2xhc3M9XCJibWJfY2FsZW5kYXItY29udGVudFwiXG4gICAgICAvPlxuICAgIH1cbiAgfVxuXG4gIEBpZiAoaXNMb2FkaW5nKCkpIHtcbiAgICA8ZGl2IGNsYXNzPVwiYm1iX2NhbGVuZGFyLWxvYWRlclwiPlxuICAgICAgPGJtYi1sb2FkZXIgW3Nob3dJbmxpbmVdPVwidHJ1ZVwiIC8+XG4gICAgPC9kaXY+XG4gIH1cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI2RldGFpbENvbnRlbnQ+XG4gIEBpZiAoc2VsZWN0ZWRFdmVudCkge1xuICAgIDxzZWN0aW9uPlxuICAgICAgQGlmIChzZWxlY3RlZEV2ZW50LnRhZ3M/Lmxlbmd0aCkge1xuICAgICAgICA8cCBzdHlsZT1cImRpc3BsYXk6IGZsZXg7IGZsZXgtd3JhcDogd3JhcDsgZ2FwOiAwLjVyZW1cIj5cbiAgICAgICAgICBAZm9yIChpdGVtIG9mIHNlbGVjdGVkRXZlbnQudGFnczsgdHJhY2sgJGluZGV4KSB7XG4gICAgICAgICAgICA8Ym1iLWJhZGdlIFt0ZXh0XT1cIml0ZW0udGV4dFwiIFthcHBlYXJhbmNlXT1cIml0ZW0uYXBwZWFyYW5jZVwiIC8+XG4gICAgICAgICAgfVxuICAgICAgICA8L3A+XG4gICAgICB9XG4gICAgICBAaWYgKHNlbGVjdGVkRXZlbnQudGl0bGUpIHtcbiAgICAgICAgPHAgY2xhc3M9XCJibWJfY2FsZW5kYXItZXZlbnQtbW9kYWwtdGl0bGVcIj57eyBzZWxlY3RlZEV2ZW50LnRpdGxlIH19PC9wPlxuICAgICAgfVxuICAgICAgQGlmIChzZWxlY3RlZEV2ZW50LnBsYWNlKSB7XG4gICAgICAgIDxwIGNsYXNzPVwiYm1iX2NhbGVuZGFyLWV2ZW50LW1vZGFsLXBsYWNlXCI+e3sgc2VsZWN0ZWRFdmVudC5wbGFjZSB9fTwvcD5cbiAgICAgIH1cbiAgICAgIDxkaXYgY2xhc3M9XCJibWJfY2FsZW5kYXItZXZlbnQtbW9kYWwtZHVyYXRpb25cIj57eyBnZXREdXJhdGlvbigpIH19PC9kaXY+XG4gICAgPC9zZWN0aW9uPlxuICB9XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI21vZGFsVGVtcGxhdGU+XG4gIDxmb3JtIFtmb3JtR3JvdXBdPVwiY2FsZW5kYXJGb3JtXCI+XG4gICAgQGZvciAoaXRlbSBvZiBmaWx0ZXJlZEV2ZW50cygpLmNhbGVuZGFyczsgdHJhY2sgJGluZGV4KSB7XG4gICAgICA8ZGl2IGJtYkxheW91dCBnYXBTaXplPVwic1wiIGFsaWduSXRlbXM9XCJjZW50ZXJcIj5cbiAgICAgICAgPGJtYi1jaGVja2JveFxuICAgICAgICAgIGJtYkxheW91dEl0ZW1cbiAgICAgICAgICBbaXNEeW5hbWljSXRlbV09XCJ0cnVlXCJcbiAgICAgICAgICBbaW5wdXRJZF09XCInY2hlY2tib3hfJyArIGl0ZW1cIlxuICAgICAgICAgIFtuYW1lXT1cIidjaGVja2JveF8nICsgaXRlbVwiXG4gICAgICAgICAgW2NvbnRyb2xdPVwiZ2V0Rm9ybUNvbnRyb2woaXRlbSlcIlxuICAgICAgICAvPlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgYm1iTGF5b3V0SXRlbVxuICAgICAgICAgIFtpc0R5bmFtaWNJdGVtXT1cInRydWVcIlxuICAgICAgICAgIFtuZ0NsYXNzXT1cImdldEJ1bGxldENsYXNzKGl0ZW0pXCJcbiAgICAgICAgPjwvZGl2PlxuICAgICAgICA8bGFiZWxcbiAgICAgICAgICBibWJMYXlvdXRJdGVtXG4gICAgICAgICAgW2lzRHluYW1pY0l0ZW1dPVwidHJ1ZVwiXG4gICAgICAgICAgW2NvbEdyb3ddPVwiMVwiXG4gICAgICAgICAgW2h0bWxGb3JdPVwiJ2NoZWNrYm94XycgKyBpdGVtXCJcbiAgICAgICAgICA+e3sgZ2V0Q2FsZW5kYXJOYW1lKGl0ZW0pIH19PC9sYWJlbFxuICAgICAgICA+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxibWItZGl2aWRlciB0eXBlPVwiZGFzaGVkXCI+PC9ibWItZGl2aWRlcj5cbiAgICB9XG4gIDwvZm9ybT5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
286
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm1iLWNhbGVuZGFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RzLW5nL3NyYy9saWIvY29tcG9uZW50cy9ibWItY2FsZW5kYXIvYm1iLWNhbGVuZGFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RzLW5nL3NyYy9saWIvY29tcG9uZW50cy9ibWItY2FsZW5kYXIvYm1iLWNhbGVuZGFyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixZQUFZLEVBQ1osS0FBSyxFQUNMLEtBQUssRUFDTCxTQUFTLEVBQ1QsV0FBVyxFQUNYLE1BQU0sRUFDTixRQUFRLEVBQ1IsTUFBTSxFQUdOLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsTUFBTSxPQUFPLENBQUM7QUFDM0MsT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0sMEVBQTBFLENBQUM7QUFDNUgsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sd0VBQXdFLENBQUM7QUFDekgsT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0sNEVBQTRFLENBQUM7QUFDL0gsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sNERBQTRELENBQUM7QUFDeEcsT0FBTyxFQUFFLGtDQUFrQyxFQUFFLE1BQU0sOEVBQThFLENBQUM7QUFDbEksT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFPeEUsT0FBTyxFQUFFLFdBQVcsRUFBRSxZQUFZLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFHekUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1B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QUcxQixNQUFNO3NCQURMLFlBQVk7dUJBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxuICBIb3N0TGlzdGVuZXIsXG4gIG1vZGVsLFxuICBpbnB1dCxcbiAgVmlld0NoaWxkLFxuICBUZW1wbGF0ZVJlZixcbiAgb3V0cHV0LFxuICBjb21wdXRlZCxcbiAgc2lnbmFsLFxuICBPbkluaXQsXG4gIEFmdGVyVmlld0luaXQsXG4gIGVmZmVjdCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgRGF0ZVRpbWUsIEludGVydmFsIH0gZnJvbSAnbHV4b24nO1xuaW1wb3J0IHsgQm1iQ2FsZW5kYXJUZW1wbGF0ZVdlZWtDb21wb25lbnQgfSBmcm9tICcuL2NvbW1vbi9ibWItY2FsZW5kYXItdGVtcGxhdGUtd2Vlay9ibWItY2FsZW5kYXItdGVtcGxhdGUtd2Vlay5jb21wb25lbnQnO1xuaW1wb3J0IHsgQm1iQ2FsZW5kYXJUZW1wbGF0ZURheUNvbXBvbmVudCB9IGZyb20gJy4vY29tbW9uL2JtYi1jYWxlbmRhci10ZW1wbGF0ZS1kYXkvYm1iLWNhbGVuZGFyLXRlbXBsYXRlLWRheS5jb21wb25lbnQnO1xuaW1wb3J0IHsgQm1iQ2FsZW5kYXJUZW1wbGF0ZU1vbnRoQ29tcG9uZW50IH0gZnJvbSAnLi9jb21tb24vYm1iLWNhbGVuZGFyLXRlbXBsYXRlLW1vbnRoL2JtYi1jYWxlbmRhci10ZW1wbGF0ZS1tb250aC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQm1iQ2FsZW5kYXJIZWFkZXJDb21wb25lbnQgfSBmcm9tICcuL2NvbW1vbi9ibWItY2FsZW5kYXItaGVhZGVyL2JtYi1jYWxlbmRhci1oZWFkZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEJtYkNhbGVuZGFyVGVtcGxhdGVNb2JpbGVDb21wb25lbnQgfSBmcm9tICcuL2NvbW1vbi9ibWItY2FsZW5kYXItdGVtcGxhdGUtbW9iaWxlL2JtYi1jYWxlbmRhci10ZW1wbGF0ZS1tb2JpbGUuY29tcG9uZW50JztcbmltcG9ydCB7IEJtYkxvYWRlckNvbXBvbmVudCB9IGZyb20gJy4uL2JtYi1sb2FkZXIvYm1iLWxvYWRlci5jb21wb25lbnQnO1xuaW1wb3J0IHtcbiAgSUJtYkNhbGVuZGFyRXZlbnQsXG4gIElCbWJDYWxlbmRhckV2ZW50Q2xpY2ssXG4gIElCbWJDYWxlbmRhclZpZXcsXG4gIElCbWJQYXJzZWREYXRlcyxcbn0gZnJvbSAnLi90eXBlcyc7XG5pbXBvcnQgeyBnZXRXZWVrRGF5cywgZ2V0TW9udGhEYXlzLCBERUZBVUxUX0RBVEVfRk9STUFUIH0gZnJvbSAnLi91dGlscyc7XG5pbXBvcnQgeyBCbWJDYWxlbmRhclNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9jYWxlbmRhci9jYWxlbmRhci5zZXJ2aWNlJztcbmltcG9ydCB7IEJtYk5hdGl2ZU1vZGFsU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL21vZGFsL25hdGl2ZS1tb2RhbC5zZXJ2aWNlJztcbmltcG9ydCB7IEJtYkJhZGdlQ29tcG9uZW50IH0gZnJvbSAnLi4vYm1iLWJhZGdlL2JtYi1iYWRnZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgRm9ybUNvbnRyb2wsIEZvcm1Hcm91cCwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEJtYkNoZWNrYm94Q29tcG9uZW50IH0gZnJvbSAnLi4vYm1iLWNoZWNrYm94L2JtYi1jaGVja2JveC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQm1iRGl2aWRlckNvbXBvbmVudCB9IGZyb20gJy4uL2JtYi1kaXZpZGVyL2JtYi1kaXZpZGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCbWJMYXlvdXREaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzL2JtYi1sYXlvdXQvYm1iLWxheW91dC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQm1iTGF5b3V0SXRlbURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMvYm1iLWxheW91dC9ibWItbGF5b3V0LWl0ZW0uZGlyZWN0aXZlJztcbmltcG9ydCB7IElCbWJOYXRpdmVNb2RhbCB9IGZyb20gJy4uL2JtYi1tb2RhbC9ibWItbW9kYWwuaW50ZXJmYWNlJztcbmltcG9ydCB7IEJtYlRyYW5zbGF0aW9uc1NlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy90cmFuc2xhdGlvbnMvdHJhbnNsYXRpb25zLnNlcnZpY2UnO1xuXG5jb25zdCBwYXJzZUZyb21Gb3JtYXQgPSAoZGF0ZVN0cmluZzogc3RyaW5nLCBmb3JtYXQ6IHN0cmluZyk6IERhdGVUaW1lID0+IHtcbiAgaWYgKGZvcm1hdC50b0xvd2VyQ2FzZSgpID09PSAnaXNvJykgcmV0dXJuIERhdGVUaW1lLmZyb21JU08oZGF0ZVN0cmluZyk7XG5cbiAgcmV0dXJuIERhdGVUaW1lLmZyb21Gb3JtYXQoZGF0ZVN0cmluZywgZm9ybWF0KTtcbn07XG5cbmV4cG9ydCB7XG4gIElCbWJDYWxlbmRhckV2ZW50LFxuICBJQm1iQ2FsZW5kYXJFdmVudENsaWNrLFxuICBJQm1iRXZlbnRUeXBlLFxufSBmcm9tICcuL3R5cGVzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYm1iLWNhbGVuZGFyJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBCbWJDYWxlbmRhclRlbXBsYXRlRGF5Q29tcG9uZW50LFxuICAgIEJtYkNhbGVuZGFyVGVtcGxhdGVXZWVrQ29tcG9uZW50LFxuICAgIEJtYkNhbGVuZGFyVGVtcGxhdGVNb250aENvbXBvbmVudCxcbiAgICBCbWJDYWxlbmRhckhlYWRlckNvbXBvbmVudCxcbiAgICBCbWJDYWxlbmRhclRlbXBsYXRlTW9iaWxlQ29tcG9uZW50LFxuICAgIEJtYkJhZGdlQ29tcG9uZW50LFxuICAgIEJtYkxvYWRlckNvbXBvbmVudCxcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgIEJtYkNoZWNrYm94Q29tcG9uZW50LFxuICAgIEJtYkRpdmlkZXJDb21wb25lbnQsXG4gICAgQm1iTGF5b3V0RGlyZWN0aXZlLFxuICAgIEJtYkxheW91dEl0ZW1EaXJlY3RpdmUsXG4gIF0sXG4gIHN0eWxlVXJsOiAnLi9ibWItY2FsZW5kYXIuY29tcG9uZW50LnNjc3MnLFxuICB0ZW1wbGF0ZVVybDogJy4vYm1iLWNhbGVuZGFyLmNvbXBvbmVudC5odG1sJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG59KVxuZXhwb3J0IGNsYXNzIEJtYkNhbGVuZGFyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0IHtcbiAgdmlldyA9IG1vZGVsPElCbWJDYWxlbmRhclZpZXc+KCd3ZWVrJyk7IC8vIGludGVybmFsXG4gIGZpbHRlcnMgPSBtb2RlbDx7IFtrZXk6IHN0cmluZ106IGJvb2xlYW4gfT4oe30pO1xuICBjYWxlbmRhclRpbWV6b25lID0gaW5wdXQ8c3RyaW5nPihcbiAgICBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUsXG4gICk7XG4gIGNsaWVudFRpbWV6b25lID0gaW5wdXQ8c3RyaW5nPihcbiAgICBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUsXG4gICk7XG4gIGhlaWdodCA9IGlucHV0PG51bWJlciB8IHN0cmluZz4oJzEwMCUnKTtcbiAgc3RhcnRCdXNpbmVzc0hvdXIgPSBpbnB1dDxudW1iZXI+KDgpO1xuICBjYWxlbmRhclRpdGxlID0gaW5wdXQ8c3RyaW5nPigpO1xuICBkYXRlRm9ybWF0ID0gaW5wdXQ8c3RyaW5nPihERUZBVUxUX0RBVEVfRk9STUFUKTtcbiAgZXZlbnRzID0gY29tcHV0ZWQ8SUJtYkNhbGVuZGFyRXZlbnRbXT4oKCkgPT5cbiAgICB0aGlzLmV2ZW50c1NpZ25hbC5nZXRFdmVudExpc3QoKSxcbiAgKTtcbiAgc2hvd0ZpbHRlckJ1dHRvbiA9IGlucHV0PGJvb2xlYW4+KGZhbHNlKTtcbiAgZGlzYWJsZU1vYmlsZUZpbHRlciA9IGlucHV0PGJvb2xlYW4+KGZhbHNlKTtcbiAgdmlzaWJsZURhdGUgPSBtb2RlbDxEYXRlVGltZT4oRGF0ZVRpbWUubm93KCkpOyAvLyBpbnRlcm5hbFxuXG4gIGN1cnJlbnREYXRlID0gaW5wdXQ8c3RyaW5nPignJyk7IC8vIERlcHJlY2F0ZWRcblxuICBvbkRhdGVDaGFuZ2UgPSBvdXRwdXQ8YW55PigpO1xuICBvbkNsb3NlID0gb3V0cHV0PGFueT4oKTtcblxuICBzZWxlY3RlZFdlZWsgPSBjb21wdXRlZCgoKSA9PiB0aGlzLnZpc2libGVEYXRlKCkud2Vla051bWJlcik7XG4gIHdlZWtOdW1iZXIgPSBjb21wdXRlZCgoKSA9PiB0aGlzLnZpc2libGVEYXRlKCkud2Vla051bWJlcik7XG4gIHJlbmRlcldlZWtEYXlzID0gY29tcHV0ZWQoKCkgPT4gZ2V0V2Vla0RheXModGhpcy52aXNpYmxlRGF0ZSgpKSk7XG4gIGlzTG9hZGluZyA9IGNvbXB1dGVkKCgpID0+IHRoaXMuZXZlbnRzU2lnbmFsLmdldElzTG9hZGluZygpKTtcbiAgc2VsZWN0ZWRFdmVudDogSUJtYkNhbGVuZGFyRXZlbnQgfCBudWxsID0gbnVsbDtcbiAgaXNNb2JpbGVIZWFkZXI6IGJvb2xlYW4gPSBmYWxzZTtcbiAgb3JkZXJlZEV2ZW50cyA9IGNvbXB1dGVkPElCbWJQYXJzZWREYXRlcz4oKCkgPT4ge1xuICAgIGNvbnN0IHdlZWtzID0gdGhpcy5ldmVudHMoKS5yZWR1Y2UoXG4gICAgICAoYWNjOiBJQm1iUGFyc2VkRGF0ZXMsIGV2ZW50KSA9PiB7XG4gICAgICAgIGNvbnN0IHN0YXJ0RGF0ZSA9IHBhcnNlRnJvbUZvcm1hdChldmVudC5zdGFydCwgdGhpcy5kYXRlRm9ybWF0KCkpO1xuICAgICAgICBjb25zdCBlbmREYXRlID0gcGFyc2VGcm9tRm9ybWF0KGV2ZW50LmVuZCwgdGhpcy5kYXRlRm9ybWF0KCkpO1xuICAgICAgICBjb25zdCBpbnRlcnZhbCA9IEludGVydmFsLmZyb21EYXRlVGltZXMoc3RhcnREYXRlLCBlbmREYXRlKTtcbiAgICAgICAgY29uc3Qgd2VlayA9IHN0YXJ0RGF0ZS53ZWVrTnVtYmVyO1xuICAgICAgICBjb25zdCBzdHJpbmdEYXRlID0gc3RhcnREYXRlLnRvRm9ybWF0KCd5eXl5LU1NLWRkJyk7XG5cbiAgICAgICAgaWYgKCFhY2Nbd2Vla10pIGFjY1t3ZWVrXSA9IHt9O1xuICAgICAgICBpZiAoIWFjY1t3ZWVrXVtzdHJpbmdEYXRlXSkgYWNjW3dlZWtdW3N0cmluZ0RhdGVdID0gW107XG4gICAgICAgIGFjY1t3ZWVrXVtzdHJpbmdEYXRlXS5wdXNoKHsgLi4uZXZlbnQsIHN0YXJ0RGF0ZSwgZW5kRGF0ZSwgaW50ZXJ2YWwgfSk7XG5cbiAgICAgICAgaWYgKGV2ZW50LmNhbGVuZGFyICYmICFhY2MuY2FsZW5kYXJzPy5pbmNsdWRlcyhldmVudC5jYWxlbmRhcikpIHtcbiAgICAgICAgICBhY2MuY2FsZW5kYXJzPy5wdXNoKGV2ZW50LmNhbGVuZGFyKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBhY2M7XG4gICAgICB9LFxuICAgICAgeyBjYWxlbmRhcnM6IFtdIH0gYXMgSUJtYlBhcnNlZERhdGVzLFxuICAgICk7XG5cbiAgICBjb25zdCBvcmRlcmVkRGF0ZXMgPSB7fSBhcyBJQm1iUGFyc2VkRGF0ZXM7XG5cbiAgICBmb3IgKGNvbnN0IHdlZWsgaW4gd2Vla3MpIHtcbiAgICAgIGlmICh3ZWVrID09PSAnY2FsZW5kYXJzJykge1xuICAgICAgICBvcmRlcmVkRGF0ZXNbd2Vla10gPSB3ZWVrc1t3ZWVrXTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIG9yZGVyZWREYXRlc1t3ZWVrXSA9IHt9O1xuXG4gICAgICAgIGZvciAoY29uc3QgZGF0ZSBpbiB3ZWVrc1t3ZWVrXSkge1xuICAgICAgICAgIG9yZGVyZWREYXRlc1t3ZWVrXVtkYXRlXSA9IHdlZWtzW3dlZWtdW2RhdGVdLnNvcnQoKGEsIGIpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGFEYXRlID0gYS5zdGFydERhdGUgPz8gRGF0ZVRpbWUuaW52YWxpZCgnSW52YWxpZCBEYXRlJyk7XG4gICAgICAgICAgICBjb25zdCBiRGF0ZSA9IGIuc3RhcnREYXRlID8/IERhdGVUaW1lLmludmFsaWQoJ0ludmFsaWQgRGF0ZScpO1xuICAgICAgICAgICAgcmV0dXJuIGFEYXRlIDw9IGJEYXRlID8gLTEgOiAxO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIG9yZGVyZWREYXRlcztcbiAgfSk7XG4gIGZpbHRlcmVkRXZlbnRzID0gY29tcHV0ZWQ8SUJtYlBhcnNlZERhdGVzPigoKSA9PiB7XG4gICAgY29uc3QgbmV3RXZlbnRzID0ge30gYXMgSUJtYlBhcnNlZERhdGVzO1xuICAgIGZvciAoY29uc3Qgd2VlayBpbiB0aGlzLm9yZGVyZWRFdmVudHMoKSkge1xuICAgICAgaWYgKHdlZWsgIT09ICdjYWxlbmRhcnMnKSB7XG4gICAgICAgIG5ld0V2ZW50c1t3ZWVrXSA9IHt9O1xuICAgICAgICBmb3IgKGNvbnN0IGRhdGUgaW4gdGhpcy5vcmRlcmVkRXZlbnRzKClbd2Vla10pIHtcbiAgICAgICAgICBuZXdFdmVudHNbd2Vla11bZGF0ZV0gPSB0aGlzLm9yZGVyZWRFdmVudHMoKVt3ZWVrXVtkYXRlXS5tYXAoXG4gICAgICAgICAgICAoZXZlbnQpID0+ICh7XG4gICAgICAgICAgICAgIC4uLmV2ZW50LFxuICAgICAgICAgICAgICBpc1Zpc2libGU6XG4gICAgICAgICAgICAgICAgT2JqZWN0LmtleXModGhpcy5maWx0ZXJzKCkpLmxlbmd0aCA9PT0gMCB8fFxuICAgICAgICAgICAgICAgIHRoaXMuZmlsdGVycygpW2V2ZW50LmNhbGVuZGFyIHx8ICdEZWZhdWx0J10gIT09IGZhbHNlLFxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIG5ld0V2ZW50cy5jYWxlbmRhcnMgPSB0aGlzLm9yZGVyZWRFdmVudHMoKS5jYWxlbmRhcnM7XG5cbiAgICByZXR1cm4gbmV3RXZlbnRzO1xuICB9KTtcbiAgZmlsdGVyTW9kYWxJZCA9IHNpZ25hbDxzdHJpbmcgfCBudWxsPihudWxsKTtcbiAgY2FsZW5kYXJGb3JtOiBGb3JtR3JvdXA8eyBba2V5OiBzdHJpbmddOiBGb3JtQ29udHJvbDxhbnk+IH0+ID0gbmV3IEZvcm1Hcm91cChcbiAgICB7fSxcbiAgKTtcblxuICBAVmlld0NoaWxkKCdkZXRhaWxDb250ZW50JywgeyByZWFkOiBUZW1wbGF0ZVJlZiB9KVxuICBkZXRhaWxDb250ZW50PzogVGVtcGxhdGVSZWY8YW55PjtcbiAgQFZpZXdDaGlsZCgnbW9kYWxUZW1wbGF0ZScpIG1vZGFsVGVtcGxhdGUhOiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzpyZXNpemUnKVxuICByZXNpemUoKSB7XG4gICAgaWYgKHdpbmRvdy5pbm5lcldpZHRoIDwgMTAwMCkge1xuICAgICAgdGhpcy52aWV3LnNldCgnZGF5Jyk7XG4gICAgICB0aGlzLmlzTW9iaWxlSGVhZGVyID0gdHJ1ZTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5pc01vYmlsZUhlYWRlciA9IGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgZXZlbnRzU2lnbmFsOiBCbWJDYWxlbmRhclNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBtb2RhbFNlcnZpY2U6IEJtYk5hdGl2ZU1vZGFsU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHRyYW5zbGF0aW9uc1NlcnZpY2U6IEJtYlRyYW5zbGF0aW9uc1NlcnZpY2UsXG4gICkge1xuICAgIGVmZmVjdCgoKSA9PiB7XG4gICAgICBjb25zdCBjYWxlbmRhcnMgPSB0aGlzLmZpbHRlcmVkRXZlbnRzKCkuY2FsZW5kYXJzIHx8IFtdO1xuICAgICAgY2FsZW5kYXJzLmZvckVhY2goKGNhbGVuZGFyKSA9PiB7XG4gICAgICAgIHRoaXMuY2FsZW5kYXJGb3JtLmFkZENvbnRyb2woXG4gICAgICAgICAgY2FsZW5kYXIsXG4gICAgICAgICAgbmV3IEZvcm1Db250cm9sKHRoaXMuZmlsdGVycygpW2NhbGVuZGFyXSB8fCB0cnVlKSxcbiAgICAgICAgKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgY3VycmVudFRpbWUgPSBzaWduYWw8RGF0ZVRpbWU+KERhdGVUaW1lLm5vdygpKTtcbiAgcHJpdmF0ZSB0aW1lcklkOiBhbnk7XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgaWYgKHRoaXMudGltZXJJZCkge1xuICAgICAgY2xlYXJJbnRlcnZhbCh0aGlzLnRpbWVySWQpO1xuICAgIH1cbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICBpZiAod2luZG93LmlubmVyV2lkdGggPCAxMDAwKSB7XG4gICAgICB0aGlzLnZpZXcuc2V0KCdkYXknKTtcbiAgICAgIHRoaXMuaXNNb2JpbGVIZWFkZXIgPSB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMudmlldy51cGRhdGUoKHZhbHVlKSA9PiAod2luZG93LmlubmVyV2lkdGggPCAxMDAwID8gJ2RheScgOiB2YWx1ZSkpO1xuXG4gICAgdGhpcy50aW1lcklkID0gc2V0SW50ZXJ2YWwoKCkgPT4ge1xuICAgICAgdGhpcy51cGRhdGVUaW1lKCk7XG4gICAgfSwgNjAwMDApOyAvLyBBY3R1YWxpemEgY2FkYSA2MDAwMCBtaWxpc2VndW5kb3MgKDEgbWludXRvKVxuICB9XG5cbiAgdXBkYXRlVGltZSgpIHtcbiAgICB0aGlzLmN1cnJlbnRUaW1lLnNldChEYXRlVGltZS5ub3coKSk7XG4gIH1cblxuICBoYW5kbGVEYXRlQ2hhbmdlKHJhbmdlOiBJQm1iQ2FsZW5kYXJWaWV3LCBub3c6IERhdGVUaW1lKTogdm9pZCB7XG4gICAgdGhpcy52aWV3LnNldChyYW5nZSk7XG4gICAgbGV0IHZpc2libGVEYXRlczogKHN0cmluZyB8IG51bGwpW10gPSBbXTtcblxuICAgIHN3aXRjaCAocmFuZ2UpIHtcbiAgICAgIGNhc2UgJ2RheSc6XG4gICAgICAgIHZpc2libGVEYXRlcyA9IGdldE1vbnRoRGF5cyhub3cpLm1hcCgoZGF0ZSkgPT4gZGF0ZS50b0lTTygpKTtcbiAgICAgICAgYnJlYWs7XG5cbiAgICAgIGNhc2UgJ3dlZWsnOlxuICAgICAgICB2aXNpYmxlRGF0ZXMgPSBnZXRXZWVrRGF5cyhub3cpLm1hcCgoZGF0ZSkgPT4gZGF0ZS50b0lTTygpKTtcbiAgICAgICAgYnJlYWs7XG5cbiAgICAgIGNhc2UgJ21vbnRoJzpcbiAgICAgICAgdmlzaWJsZURhdGVzID0gZ2V0TW9udGhEYXlzKG5vdykubWFwKChkYXRlKSA9PiBkYXRlLnRvSVNPKCkpO1xuICAgICAgICBicmVhaztcblxuICAgICAgZGVmYXVsdDpcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuXG4gICAgdGhpcy5vbkRhdGVDaGFuZ2UuZW1pdCh7XG4gICAgICByYW5nZSxcbiAgICAgIG5vdzogbm93LnRvSVNPKCksXG4gICAgICB2aXNpYmxlRGF0ZXMsXG4gICAgfSk7XG4gIH1cblxuICBoYW5kbGVDdXJyZW50RGF0ZUNoYW5nZShuZXdEYXRlOiBEYXRlVGltZSk6IHZvaWQge1xuICAgIHRoaXMudmlzaWJsZURhdGUuc2V0KG5ld0RhdGUpO1xuICB9XG5cbiAgZ2V0RGF5RXZlbnRzKCk6IElCbWJDYWxlbmRhckV2ZW50W10ge1xuICAgIGNvbnN0IHZpc2libGVEYXRlU3RyID0gdGhpcy52aXNpYmxlRGF0ZSgpLnRvRm9ybWF0KCd5eXl5LU1NLWRkJyk7XG4gICAgY29uc3QgZXZlbnRzID1cbiAgICAgIHRoaXMuZmlsdGVyZWRFdmVudHMoKVt0aGlzLnNlbGVjdGVkV2VlaygpXT8uW3Zpc2libGVEYXRlU3RyXSA/PyBbXTtcbiAgICByZXR1cm4gZXZlbnRzO1xuICB9XG5cbiAgaGFuZGxlU2VsZWN0RXZlbnQobmV3RXZlbnQ6IElCbWJDYWxlbmRhckV2ZW50Q2xpY2spOiB2b2lkIHtcbiAgICBjb25zdCB7IGV2ZW50IH0gPSBuZXdFdmVudDtcbiAgICBjb25zdCB0aXRsZSA9IGV2ZW50Lm1vZGFsVGl0bGUgPz8gZXZlbnQudGl0bGU7XG4gICAgY29uc3QgbW9kYWxUaXRsZSA9XG4gICAgICBldmVudC5zdGF0dXMgPT09ICdkaXNhYmxlZCcgPyBgKENhbmNlbGFkbykgJHt0aXRsZX1gIDogdGl0bGU7XG5cbiAgICB0aGlzLnNlbGVjdGVkRXZlbnQgPSBldmVudDtcblxuICAgIGNvbnN0IGRhdGE6IElCbWJOYXRpdmVNb2RhbCA9IHtcbiAgICAgIHRpdGxlOiBtb2RhbFRpdGxlLFxuICAgICAgc3VidGl0bGU6IGV2ZW50LnN1YnRpdGxlLFxuICAgICAgY29udGVudDogdGhpcy5kZXRhaWxDb250ZW50LFxuICAgICAgc2l6ZTogJ3NtYWxsJyxcbiAgICB9O1xuICAgIHRoaXMubW9kYWxTZXJ2aWNlLm9wZW5Nb2RhbChkYXRhKTtcbiAgfVxuXG4gIGlzQW5FdmVudFNlbGVjdGVkKGV2ZW50OiBJQm1iQ2FsZW5kYXJFdmVudENsaWNrIHwgbnVsbCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhIWV2ZW50O1xuICB9XG5cbiAgZ2V0SGVpZ2h0KGhlaWdodDogc3RyaW5nIHwgbnVtYmVyKTogc3RyaW5nIHtcbiAgICBpZiAodHlwZW9mIGhlaWdodCA9PT0gJ251bWJlcicpIHJldHVybiBgJHtoZWlnaHR9cHhgO1xuXG4gICAgcmV0dXJuIGhlaWdodDtcbiAgfVxuXG4gIGdldER1cmF0aW9uKCkge1xuICAgIGlmICghdGhpcy5zZWxlY3RlZEV2ZW50KSByZXR1cm4gJyc7XG4gICAgcmV0dXJuIGAke0RhdGVUaW1lLmZyb21JU08odGhpcy5zZWxlY3RlZEV2ZW50LnN0YXJ0KS50b0Zvcm1hdCgnaGg6bW0gYScpfSAtICR7RGF0ZVRpbWUuZnJvbUlTTyh0aGlzLnNlbGVjdGVkRXZlbnQuZW5kKS50b0Zvcm1hdCgnaGg6bW0gYScpfWA7XG4gIH1cblxuICBoYW5kbGVDbG9zZSgpIHtcbiAgICB0aGlzLm9uQ2xvc2UuZW1pdCgnY2xvc2UnKTtcbiAgfVxuXG4gIGhhbmRsZVNob3dNb2RhbEZpbHRlcigpIHtcbiAgICB0aGlzLmZpbHRlck1vZGFsSWQuc2V0KFxuICAgICAgdGhpcy5tb2RhbFNlcnZpY2Uub3Blbk1vZGFsKHtcbiAgICAgICAgdGl0bGU6IHRoaXMudHJhbnNsYXRpb25zU2VydmljZS50cmFuc2xhdGUoJ2NhbGVuZGFyLnRpdGxlJyksXG4gICAgICAgIHN1YnRpdGxlOiB0aGlzLnRyYW5zbGF0aW9uc1NlcnZpY2UudHJhbnNsYXRlKCdjYWxlbmRhci5zdWJ0aXRsZScpLFxuICAgICAgICBjb250ZW50OiB0aGlzLm1vZGFsVGVtcGxhdGUsXG4gICAgICAgIHNpemU6ICd4LXNtYWxsJyxcbiAgICAgICAgY2xvc2VNb2RhbENsaWNrZWQ6IChldmVudDogdW5rbm93bikgPT4gdGhpcy5oYW5kbGVGb3JtUmVzZXQoZXZlbnQpLFxuICAgICAgICBhY3Rpb25zOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgYnV0dG9uTmFtZTogJ3NhdmUnLFxuICAgICAgICAgICAgYXBwZWFyYW5jZTogJ3ByaW1hcnknLFxuICAgICAgICAgICAgbGFiZWw6IHRoaXMudHJhbnNsYXRpb25zU2VydmljZS50cmFuc2xhdGUoJ2NhbGVuZGFyLmZpbHRlcl9zYXZlJyksXG4gICAgICAgICAgICBhY3Rpb246ICgpID0+IHRoaXMuaGFuZGxlQXBwbHlGaWx0ZXJzKCksXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgIH0pLFxuICAgICk7XG4gIH1cblxuICBoYW5kbGVGb3JtUmVzZXQoXzogYW55KTogdm9pZCB7XG4gICAgZm9yIChjb25zdCBjYWxlbmRhciBpbiB0aGlzLmNhbGVuZGFyRm9ybS5jb250cm9scykge1xuICAgICAgY29uc3QgdmFsdWUgPVxuICAgICAgICBPYmplY3Qua2V5cyh0aGlzLmZpbHRlcnMoKSkubGVuZ3RoID09PSAwIHx8ICEhdGhpcy5maWx0ZXJzKClbY2FsZW5kYXJdO1xuICAgICAgdGhpcy5jYWxlbmRhckZvcm0uY29udHJvbHNbY2FsZW5kYXJdLnNldFZhbHVlKHZhbHVlKTtcbiAgICB9XG4gIH1cblxuICBoYW5kbGVBcHBseUZpbHRlcnMoKTogdm9pZCB7XG4gICAgY29uc3Qgc2VsZWN0ZWRDYWxlbmRhcnMgPSBPYmplY3Qua2V5cyh0aGlzLmNhbGVuZGFyRm9ybS5jb250cm9scykucmVkdWNlPHtcbiAgICAgIFtrZXk6IHN0cmluZ106IGJvb2xlYW47XG4gICAgfT4oKGFjYywgY2FsZW5kYXIpID0+IHtcbiAgICAgIGFjY1tjYWxlbmRhcl0gPSB0aGlzLmNhbGVuZGFyRm9ybS5jb250cm9sc1tjYWxlbmRhcl0udmFsdWU7XG4gICAgICByZXR1cm4gYWNjO1xuICAgIH0sIHt9KTtcbiAgICB0aGlzLmZpbHRlcnMuc2V0KHNlbGVjdGVkQ2FsZW5kYXJzKTtcbiAgICB0aGlzLm1vZGFsU2VydmljZS5jbG9zZU1vZGFsKHRoaXMuZmlsdGVyTW9kYWxJZCgpIGFzIHN0cmluZyk7XG4gICAgdGhpcy5maWx0ZXJNb2RhbElkLnNldChudWxsKTtcbiAgfVxuXG4gIGdldEZvcm1Db250cm9sKG5hbWU6IHN0cmluZyk6IEZvcm1Db250cm9sIHtcbiAgICByZXR1cm4gdGhpcy5jYWxlbmRhckZvcm0uZ2V0KG5hbWUpIGFzIEZvcm1Db250cm9sO1xuICB9XG5cbiAgZ2V0Q2FsZW5kYXJOYW1lKG5hbWU6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgc3dpdGNoIChuYW1lKSB7XG4gICAgICBjYXNlICdhY2FkZW1pYyc6XG4gICAgICAgIHJldHVybiAnSG9yYXJpbyBkZSBjbGFzZXMnO1xuICAgICAgY2FzZSAnbGlmZSc6XG4gICAgICAgIHJldHVybiAnVmlkYSc7XG4gICAgICBjYXNlICdldmVudHMnOlxuICAgICAgICByZXR1cm4gJ0V2ZW50b3MnO1xuICAgICAgY2FzZSAnc2F2ZV90aGVfZGF0ZSc6XG4gICAgICAgIHJldHVybiAnU2F2ZSB0aGUgZGF0ZSc7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gbmFtZTtcbiAgICB9XG4gIH1cblxuICBnZXRCdWxsZXRDbGFzcyhuYW1lOiBzdHJpbmcpOiBzdHJpbmdbXSB7XG4gICAgcmV0dXJuIFsnYm1iX2NhbGVuZGFyLWV2ZW50LWJ1bGxldCcsIGBibWJfY2FsZW5kYXItZXZlbnQtYnVsbGV0LSR7bmFtZX1gXTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImJtYl9jYWxlbmRhclwiIFtuZ1N0eWxlXT1cInsgaGVpZ2h0OiBnZXRIZWlnaHQoaGVpZ2h0KCkpIH1cIj5cbiAgQGlmIChpc01vYmlsZUhlYWRlcikge1xuICAgIDxibWItY2FsZW5kYXItdGVtcGxhdGUtbW9iaWxlXG4gICAgICBbbm93XT1cInZpc2libGVEYXRlKClcIlxuICAgICAgW2V2ZW50c109XCJmaWx0ZXJlZEV2ZW50cygpXCJcbiAgICAgIChvbkN1cnJlbnREYXRlQ2hhbmdlKT1cImhhbmRsZUN1cnJlbnREYXRlQ2hhbmdlKCRldmVudClcIlxuICAgICAgW3dlZWtEYXlzXT1cInJlbmRlcldlZWtEYXlzKClcIlxuICAgICAgW2NhbGVuZGFyVGl0bGVdPVwiY2FsZW5kYXJUaXRsZSgpXCJcbiAgICAgIFtkaXNhYmxlTW9iaWxlRmlsdGVyXT1cImRpc2FibGVNb2JpbGVGaWx0ZXIoKVwiXG4gICAgICAob25DbG9zZSk9XCJoYW5kbGVDbG9zZSgpXCJcbiAgICAgIChzaG93RmlsdGVycyk9XCJoYW5kbGVTaG93TW9kYWxGaWx0ZXIoKVwiXG4gICAgLz5cbiAgfSBAZWxzZSB7XG4gICAgPGJtYi1jYWxlbmRhci1oZWFkZXJcbiAgICAgIFt3ZWVrRGF5c109XCJyZW5kZXJXZWVrRGF5cygpXCJcbiAgICAgIFt2aWV3XT1cInZpZXcoKVwiXG4gICAgICBbY3VycmVudERhdGVdPVwidmlzaWJsZURhdGUoKVwiXG4gICAgICAob25SYW5nZUNoYW5nZSk9XCJoYW5kbGVEYXRlQ2hhbmdlKCRldmVudCwgdmlzaWJsZURhdGUoKSlcIlxuICAgICAgKG9uQ3VycmVudERhdGVDaGFuZ2UpPVwiaGFuZGxlQ3VycmVudERhdGVDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICBbc2hvd0ZpbHRlckJ1dHRvbl09XCJzaG93RmlsdGVyQnV0dG9uKClcIlxuICAgICAgKHNob3dGaWx0ZXJzKT1cImhhbmRsZVNob3dNb2RhbEZpbHRlcigpXCJcbiAgICAvPlxuICB9XG4gIEBzd2l0Y2ggKHZpZXcoKSkge1xuICAgIEBjYXNlICgnZGF5Jykge1xuICAgICAgPGJtYi1jYWxlbmRhci10ZW1wbGF0ZS1kYXlcbiAgICAgICAgW25vd109XCJ2aXNpYmxlRGF0ZSgpXCJcbiAgICAgICAgW2V2ZW50c109XCJnZXREYXlFdmVudHMoKVwiXG4gICAgICAgIChvblNlbGVjdEV2ZW50KT1cImhhbmRsZVNlbGVjdEV2ZW50KCRldmVudClcIlxuICAgICAgICBbY3VycmVudFRpbWVdPVwiY3VycmVudFRpbWUoKVwiXG4gICAgICAgIFtzdGFydEJ1c2luZXNzSG91cl09XCJzdGFydEJ1c2luZXNzSG91cigpXCJcbiAgICAgICAgW2RhdGVGb3JtYXRdPVwiZGF0ZUZvcm1hdCgpXCJcbiAgICAgICAgY2xhc3M9XCJibWJfY2FsZW5kYXItY29udGVudFwiXG4gICAgICAvPlxuICAgIH1cbiAgICBAY2FzZSAoJ3dlZWsnKSB7XG4gICAgICA8Ym1iLWNhbGVuZGFyLXRlbXBsYXRlLXdlZWtcbiAgICAgICAgW3dlZWtEYXlzXT1cInJlbmRlcldlZWtEYXlzKClcIlxuICAgICAgICBbbm93XT1cInZpc2libGVEYXRlKClcIlxuICAgICAgICBbZXZlbnRzXT1cImZpbHRlcmVkRXZlbnRzKClcIlxuICAgICAgICAob25TZWxlY3RFdmVudCk9XCJoYW5kbGVTZWxlY3RFdmVudCgkZXZlbnQpXCJcbiAgICAgICAgW2N1cnJlbnRUaW1lXT1cImN1cnJlbnRUaW1lKClcIlxuICAgICAgICBbc3RhcnRCdXNpbmVzc0hvdXJdPVwic3RhcnRCdXNpbmVzc0hvdXIoKVwiXG4gICAgICAgIFtzZWxlY3RlZFdlZWtdPVwic2VsZWN0ZWRXZWVrKClcIlxuICAgICAgICBjbGFzcz1cImJtYl9jYWxlbmRhci1jb250ZW50XCJcbiAgICAgIC8+XG4gICAgfVxuICAgIEBjYXNlICgnbW9udGgnKSB7XG4gICAgICA8Ym1iLWNhbGVuZGFyLXRlbXBsYXRlLW1vbnRoXG4gICAgICAgIFtub3ddPVwidmlzaWJsZURhdGUoKVwiXG4gICAgICAgIFtldmVudHNdPVwiZmlsdGVyZWRFdmVudHMoKVwiXG4gICAgICAgIChvblNlbGVjdEV2ZW50KT1cImhhbmRsZVNlbGVjdEV2ZW50KCRldmVudClcIlxuICAgICAgICBjbGFzcz1cImJtYl9jYWxlbmRhci1jb250ZW50XCJcbiAgICAgIC8+XG4gICAgfVxuICAgIEBkZWZhdWx0IHtcbiAgICAgIDxibWItY2FsZW5kYXItdGVtcGxhdGUtd2Vla1xuICAgICAgICBbd2Vla0RheXNdPVwicmVuZGVyV2Vla0RheXMoKVwiXG4gICAgICAgIFtub3ddPVwidmlzaWJsZURhdGUoKVwiXG4gICAgICAgIFtldmVudHNdPVwiZmlsdGVyZWRFdmVudHMoKVwiXG4gICAgICAgIGNsYXNzPVwiYm1iX2NhbGVuZGFyLWNvbnRlbnRcIlxuICAgICAgLz5cbiAgICB9XG4gIH1cblxuICBAaWYgKGlzTG9hZGluZygpKSB7XG4gICAgPGRpdiBjbGFzcz1cImJtYl9jYWxlbmRhci1sb2FkZXJcIj5cbiAgICAgIDxibWItbG9hZGVyIFtzaG93SW5saW5lXT1cInRydWVcIiAvPlxuICAgIDwvZGl2PlxuICB9XG48L2Rpdj5cblxuPG5nLXRlbXBsYXRlICNkZXRhaWxDb250ZW50PlxuICBAaWYgKHNlbGVjdGVkRXZlbnQpIHtcbiAgICA8c2VjdGlvbj5cbiAgICAgIEBpZiAoc2VsZWN0ZWRFdmVudC50YWdzPy5sZW5ndGgpIHtcbiAgICAgICAgPHAgc3R5bGU9XCJkaXNwbGF5OiBmbGV4OyBmbGV4LXdyYXA6IHdyYXA7IGdhcDogMC41cmVtXCI+XG4gICAgICAgICAgQGZvciAoaXRlbSBvZiBzZWxlY3RlZEV2ZW50LnRhZ3M7IHRyYWNrICRpbmRleCkge1xuICAgICAgICAgICAgPGJtYi1iYWRnZSBbdGV4dF09XCJpdGVtLnRleHRcIiBbYXBwZWFyYW5jZV09XCJpdGVtLmFwcGVhcmFuY2VcIiAvPlxuICAgICAgICAgIH1cbiAgICAgICAgPC9wPlxuICAgICAgfVxuICAgICAgQGlmIChzZWxlY3RlZEV2ZW50LnRpdGxlKSB7XG4gICAgICAgIDxwIGNsYXNzPVwiYm1iX2NhbGVuZGFyLWV2ZW50LW1vZGFsLXRpdGxlXCI+e3sgc2VsZWN0ZWRFdmVudC50aXRsZSB9fTwvcD5cbiAgICAgIH1cbiAgICAgIEBpZiAoc2VsZWN0ZWRFdmVudC5wbGFjZSkge1xuICAgICAgICA8cCBjbGFzcz1cImJtYl9jYWxlbmRhci1ldmVudC1tb2RhbC1wbGFjZVwiPnt7IHNlbGVjdGVkRXZlbnQucGxhY2UgfX08L3A+XG4gICAgICB9XG4gICAgICA8ZGl2IGNsYXNzPVwiYm1iX2NhbGVuZGFyLWV2ZW50LW1vZGFsLWR1cmF0aW9uXCI+e3sgZ2V0RHVyYXRpb24oKSB9fTwvZGl2PlxuICAgIDwvc2VjdGlvbj5cbiAgfVxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNtb2RhbFRlbXBsYXRlPlxuICA8Zm9ybSBbZm9ybUdyb3VwXT1cImNhbGVuZGFyRm9ybVwiPlxuICAgIEBmb3IgKGl0ZW0gb2YgZmlsdGVyZWRFdmVudHMoKS5jYWxlbmRhcnM7IHRyYWNrICRpbmRleCkge1xuICAgICAgPGRpdiBibWJMYXlvdXQgZ2FwU2l6ZT1cInNcIiBhbGlnbkl0ZW1zPVwiY2VudGVyXCI+XG4gICAgICAgIDxibWItY2hlY2tib3hcbiAgICAgICAgICBibWJMYXlvdXRJdGVtXG4gICAgICAgICAgW2lzRHluYW1pY0l0ZW1dPVwidHJ1ZVwiXG4gICAgICAgICAgW2lucHV0SWRdPVwiJ2NoZWNrYm94XycgKyBpdGVtXCJcbiAgICAgICAgICBbbmFtZV09XCInY2hlY2tib3hfJyArIGl0ZW1cIlxuICAgICAgICAgIFtjb250cm9sXT1cImdldEZvcm1Db250cm9sKGl0ZW0pXCJcbiAgICAgICAgLz5cbiAgICAgICAgPGRpdlxuICAgICAgICAgIGJtYkxheW91dEl0ZW1cbiAgICAgICAgICBbaXNEeW5hbWljSXRlbV09XCJ0cnVlXCJcbiAgICAgICAgICBbbmdDbGFzc109XCJnZXRCdWxsZXRDbGFzcyhpdGVtKVwiXG4gICAgICAgID48L2Rpdj5cbiAgICAgICAgPGxhYmVsXG4gICAgICAgICAgYm1iTGF5b3V0SXRlbVxuICAgICAgICAgIFtpc0R5bmFtaWNJdGVtXT1cInRydWVcIlxuICAgICAgICAgIFtjb2xHcm93XT1cIjFcIlxuICAgICAgICAgIFtodG1sRm9yXT1cIidjaGVja2JveF8nICsgaXRlbVwiXG4gICAgICAgICAgPnt7IGdldENhbGVuZGFyTmFtZShpdGVtKSB9fTwvbGFiZWxcbiAgICAgICAgPlxuICAgICAgPC9kaXY+XG4gICAgICA8Ym1iLWRpdmlkZXIgdHlwZT1cImRhc2hlZFwiPjwvYm1iLWRpdmlkZXI+XG4gICAgfVxuICA8L2Zvcm0+XG48L25nLXRlbXBsYXRlPlxuIl19
@@ -57,7 +57,7 @@ export class BmbCardButtonComponent {
57
57
  this.onAddContentClick.emit(event);
58
58
  }
59
59
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BmbCardButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
60
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: BmbCardButtonComponent, isStandalone: true, selector: "bmb-card-button", inputs: { isFullInteractive: { classPropertyName: "isFullInteractive", publicName: "isFullInteractive", isSignal: true, isRequired: false, transformFunction: null }, title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: false, transformFunction: null }, body: { classPropertyName: "body", publicName: "body", isSignal: true, isRequired: false, transformFunction: null }, badge: { classPropertyName: "badge", publicName: "badge", isSignal: true, isRequired: false, transformFunction: null }, icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, leftContentIcon: { classPropertyName: "leftContentIcon", publicName: "leftContentIcon", isSignal: true, isRequired: false, transformFunction: null }, leftContentImage: { classPropertyName: "leftContentImage", publicName: "leftContentImage", isSignal: true, isRequired: false, transformFunction: null }, leftContent: { classPropertyName: "leftContent", publicName: "leftContent", isSignal: true, isRequired: false, transformFunction: null }, hasMenu: { classPropertyName: "hasMenu", publicName: "hasMenu", isSignal: true, isRequired: false, transformFunction: null }, menuItems: { classPropertyName: "menuItems", publicName: "menuItems", isSignal: true, isRequired: false, transformFunction: null }, isTemplate: { classPropertyName: "isTemplate", publicName: "isTemplate", isSignal: true, isRequired: false, transformFunction: null }, textLink: { classPropertyName: "textLink", publicName: "textLink", isSignal: true, isRequired: false, transformFunction: null }, isSmall: { classPropertyName: "isSmall", publicName: "isSmall", isSignal: true, isRequired: false, transformFunction: null }, botIcon: { classPropertyName: "botIcon", publicName: "botIcon", isSignal: true, isRequired: false, transformFunction: null }, botImage: { classPropertyName: "botImage", publicName: "botImage", isSignal: true, isRequired: false, transformFunction: null }, smallIcon: { classPropertyName: "smallIcon", publicName: "smallIcon", isSignal: true, isRequired: false, transformFunction: null }, smallTitle: { classPropertyName: "smallTitle", publicName: "smallTitle", isSignal: true, isRequired: false, transformFunction: null }, smallDescription: { classPropertyName: "smallDescription", publicName: "smallDescription", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onAddContentClick: "onAddContentClick", onTitleClick: "onTitleClick", onSmallClick: "onSmallClick" }, queries: [{ propertyName: "customContent", first: true, predicate: ["customContent"], descendants: true }], ngImport: i0, template: "<section class=\"bmb_card_button\">\n @if (isSmall()) {\n <button\n type=\"button\"\n class=\"bmb_card_button-small\"\n [ngClass]=\"{ 'bmb_card_button-small-flipped': isFlipped }\"\n (click)=\"handleSmallClick($event)\"\n >\n <div class=\"bmb_card_button-small-front\">\n <bmb-icon\n [icon]=\"smallIcon()\"\n [size]=\"24\"\n class=\"bmb_card_button-small-top-icon\"\n alt=\"Small icon\"\n />\n <img\n [src]=\"botImage()?.src\"\n [alt]=\"botImage()?.alt\"\n class=\"bmb_card_button-small-bot-icon\"\n />\n <h3 class=\"bmb_card_button-small-title\">{{ smallTitle() }}</h3>\n </div>\n <div class=\"bmb_card_button-small-back\">\n <bmb-icon\n icon=\"close\"\n [size]=\"24\"\n class=\"bmb_card_button-small-close-icon\"\n />\n <div class=\"bmb_card_button-small-text\">\n {{ smallDescription() }}\n </div>\n </div>\n </button>\n } @else if (isFullInteractive()) {\n <section\n tabindex=\"0\"\n class=\"bmb_card_button-wrapper\"\n [ngClass]=\"{\n 'bmb_card_button-wrapper-button':\n leftContent() &&\n !leftContentIcon() &&\n leftContentImage() &&\n !textLink()\n }\"\n (click)=\"handleAddContent($event)\"\n >\n @if (leftContent() || isTemplate() || hasMenu()) {\n <section class=\"bmb_card_button-box\">\n @if (leftContent()) {\n <section\n class=\"bmb_card_button-left\"\n [ngClass]=\"{\n 'bmb_card_button-top-header': !leftContentIcon(),\n 'bmb_card_button-top-header-start':\n !leftContentIcon() && !!badge()\n }\"\n >\n @if (!!leftContentIcon()) {\n <div class=\"bmb_card_button-circle\">\n <bmb-icon\n [icon]=\"leftContentIcon()\"\n [size]=\"32\"\n class=\"bmb_card_button-circle-icon\"\n [alt]=\"title()\"\n />\n </div>\n } @else {\n <img\n class=\"bmb_card_button-top-header-image\"\n [src]=\"leftContentImage()?.src\"\n [alt]=\"leftContentImage()?.alt\"\n />\n <section class=\"bmb_card_button-top-header-container\">\n @if (!!badge()) {\n <bmb-badge\n class=\"bmb_card_button-top-header-container-title\"\n [text]=\"badge()?.text!\"\n [appearance]=\"badge()?.appearance ?? 'normal'\"\n [container]=\"badge()?.container ?? true\"\n />\n }\n <h2 class=\"bmb_card_button-top-header-container-title\">\n {{ title() }}\n </h2>\n </section>\n }\n </section>\n }\n <section class=\"bmb_card_button-leading\">\n @if (isTemplate()) {\n <div class=\"bmb_card_button-template\">\n <ng-content />\n </div>\n }\n\n @if (hasMenu()) {\n <bmb-dropdown-menu\n class=\"bmb_card_button-menu\"\n [items]=\"menuItems()\"\n />\n }\n </section>\n </section>\n }\n @if (!!leftContentIcon() && !leftContentImage()) {\n <section\n tabindex=\"0\"\n class=\"bmb_card_button-header\"\n (click)=\"handleTitleClick($event)\"\n >\n <h2 class=\"bmb_card_button-header-text\">{{ title() }}</h2>\n <bmb-icon\n [icon]=\"icon()\"\n [size]=\"16\"\n class=\"bmb_card_button-header-icon\"\n />\n </section>\n }\n\n @if (\n (leftContent() &&\n !leftContentIcon() &&\n leftContentImage() &&\n textLink()) ||\n body()\n ) {\n <section class=\"bmb_card_button-body\">\n {{ body() }}\n\n @if (\n leftContent() &&\n !leftContentIcon() &&\n leftContentImage() &&\n textLink()\n ) {\n <bmb-text-link\n [textLink]=\"textLink()?.label!\"\n icon=\"\"\n [link]=\"textLink()?.link!\"\n [target]=\"textLink()?.target!\"\n />\n }\n </section>\n }\n <div class=\"bmb_card_button-custom-content\">\n <ng-container [ngTemplateOutlet]=\"customContent\" />\n </div>\n </section>\n } @else {\n <button\n type=\"button\"\n class=\"bmb_card_button-add\"\n (click)=\"handleAddContent($event)\"\n >\n <bmb-icon\n [icon]=\"icon()\"\n [size]=\"48\"\n class=\"bmb_card_button-add-icon\"\n [isFill]=\"false\"\n [alt]=\"title()\"\n />\n <div class=\"bmb_card_button-add-title\">{{ title() }}</div>\n </button>\n }\n</section>\n", styles: ["@font-face{font-family:Poppins-Light;font-style:normal;font-weight:300;src:url(/assets/fonts/Poppins/Poppins-ExtraLight.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Regular;font-style:normal;font-weight:400;src:url(/assets/fonts/Poppins/Poppins-Regular.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Bold;font-style:normal;font-weight:700;src:url(/assets/fonts/Poppins/Poppins-Bold.ttf) format(\"truetype\")}:root,:host{--font-display: \"Poppins-Regular\", sans-serif}.font-thin-1{font-family:Poppins-Thin,sans-serif;font-size:.625rem}.font-light-1{font-family:Poppins-Light,sans-serif;font-size:.625rem}.font-regular-1{font-family:Poppins-Regular,sans-serif;font-size:.625rem}.font-medium-1{font-family:Poppins-Medium,sans-serif;font-size:.625rem}.font-semibold-1{font-family:Poppins-Semibold,sans-serif;font-size:.625rem}.font-bold-1{font-family:Poppins-Bold,sans-serif;font-size:.625rem}.font-thin-2{font-family:Poppins-Thin,sans-serif;font-size:.6875rem}.font-light-2{font-family:Poppins-Light,sans-serif;font-size:.6875rem}.font-regular-2{font-family:Poppins-Regular,sans-serif;font-size:.6875rem}.font-medium-2{font-family:Poppins-Medium,sans-serif;font-size:.6875rem}.font-semibold-2{font-family:Poppins-Semibold,sans-serif;font-size:.6875rem}.font-bold-2{font-family:Poppins-Bold,sans-serif;font-size:.6875rem}.font-thin-3{font-family:Poppins-Thin,sans-serif;font-size:.75rem}.font-light-3{font-family:Poppins-Light,sans-serif;font-size:.75rem}.font-regular-3{font-family:Poppins-Regular,sans-serif;font-size:.75rem}.font-medium-3{font-family:Poppins-Medium,sans-serif;font-size:.75rem}.font-semibold-3{font-family:Poppins-Semibold,sans-serif;font-size:.75rem}.font-bold-3{font-family:Poppins-Bold,sans-serif;font-size:.75rem}.font-thin-4{font-family:Poppins-Thin,sans-serif;font-size:.875rem}.font-light-4{font-family:Poppins-Light,sans-serif;font-size:.875rem}.font-regular-4{font-family:Poppins-Regular,sans-serif;font-size:.875rem}.font-medium-4{font-family:Poppins-Medium,sans-serif;font-size:.875rem}.font-semibold-4{font-family:Poppins-Semibold,sans-serif;font-size:.875rem}.font-bold-4{font-family:Poppins-Bold,sans-serif;font-size:.875rem}.font-thin-4_5{font-family:Poppins-Thin,sans-serif;font-size:.9375rem}.font-light-4_5{font-family:Poppins-Light,sans-serif;font-size:.9375rem}.font-regular-4_5{font-family:Poppins-Regular,sans-serif;font-size:.9375rem}.font-medium-4_5{font-family:Poppins-Medium,sans-serif;font-size:.9375rem}.font-semibold-4_5{font-family:Poppins-Semibold,sans-serif;font-size:.9375rem}.font-bold-4_5{font-family:Poppins-Bold,sans-serif;font-size:.9375rem}.font-thin-5{font-family:Poppins-Thin,sans-serif;font-size:1rem}.font-light-5{font-family:Poppins-Light,sans-serif;font-size:1rem}.font-regular-5{font-family:Poppins-Regular,sans-serif;font-size:1rem}.font-medium-5{font-family:Poppins-Medium,sans-serif;font-size:1rem}.font-semibold-5{font-family:Poppins-Semibold,sans-serif;font-size:1rem}.font-bold-5{font-family:Poppins-Bold,sans-serif;font-size:1rem}.font-thin-6{font-family:Poppins-Thin,sans-serif;font-size:1.125rem}.font-light-6{font-family:Poppins-Light,sans-serif;font-size:1.125rem}.font-regular-6{font-family:Poppins-Regular,sans-serif;font-size:1.125rem}.font-medium-6{font-family:Poppins-Medium,sans-serif;font-size:1.125rem}.font-semibold-6{font-family:Poppins-Semibold,sans-serif;font-size:1.125rem}.font-bold-6{font-family:Poppins-Bold,sans-serif;font-size:1.125rem}.font-thin-7{font-family:Poppins-Thin,sans-serif;font-size:1.25rem}.font-light-7{font-family:Poppins-Light,sans-serif;font-size:1.25rem}.font-regular-7{font-family:Poppins-Regular,sans-serif;font-size:1.25rem}.font-medium-7{font-family:Poppins-Medium,sans-serif;font-size:1.25rem}.font-semibold-7{font-family:Poppins-Semibold,sans-serif;font-size:1.25rem}.font-bold-7{font-family:Poppins-Bold,sans-serif;font-size:1.25rem}.font-thin-8{font-family:Poppins-Thin,sans-serif;font-size:1.375rem}.font-light-8{font-family:Poppins-Light,sans-serif;font-size:1.375rem}.font-regular-8{font-family:Poppins-Regular,sans-serif;font-size:1.375rem}.font-medium-8{font-family:Poppins-Medium,sans-serif;font-size:1.375rem}.font-semibold-8{font-family:Poppins-Semibold,sans-serif;font-size:1.375rem}.font-bold-8{font-family:Poppins-Bold,sans-serif;font-size:1.375rem}.font-thin-9{font-family:Poppins-Thin,sans-serif;font-size:1.5rem}.font-light-9{font-family:Poppins-Light,sans-serif;font-size:1.5rem}.font-regular-9{font-family:Poppins-Regular,sans-serif;font-size:1.5rem}.font-medium-9{font-family:Poppins-Medium,sans-serif;font-size:1.5rem}.font-semibold-9{font-family:Poppins-Semibold,sans-serif;font-size:1.5rem}.font-bold-9{font-family:Poppins-Bold,sans-serif;font-size:1.5rem}.font-thin-10{font-family:Poppins-Thin,sans-serif;font-size:1.625rem}.font-light-10{font-family:Poppins-Light,sans-serif;font-size:1.625rem}.font-regular-10{font-family:Poppins-Regular,sans-serif;font-size:1.625rem}.font-medium-10{font-family:Poppins-Medium,sans-serif;font-size:1.625rem}.font-semibold-10{font-family:Poppins-Semibold,sans-serif;font-size:1.625rem}.font-bold-10{font-family:Poppins-Bold,sans-serif;font-size:1.625rem}.font-thin-11{font-family:Poppins-Thin,sans-serif;font-size:2.25rem}.font-light-11{font-family:Poppins-Light,sans-serif;font-size:2.25rem}.font-regular-11{font-family:Poppins-Regular,sans-serif;font-size:2.25rem}.font-medium-11{font-family:Poppins-Medium,sans-serif;font-size:2.25rem}.font-semibold-11{font-family:Poppins-Semibold,sans-serif;font-size:2.25rem}.font-bold-11{font-family:Poppins-Bold,sans-serif;font-size:2.25rem}.font-thin-12{font-family:Poppins-Thin,sans-serif;font-size:3rem}.font-light-12{font-family:Poppins-Light,sans-serif;font-size:3rem}.font-regular-12{font-family:Poppins-Regular,sans-serif;font-size:3rem}.font-medium-12{font-family:Poppins-Medium,sans-serif;font-size:3rem}.font-semibold-12{font-family:Poppins-Semibold,sans-serif;font-size:3rem}.font-bold-12{font-family:Poppins-Bold,sans-serif;font-size:3rem}.bmb_card_button{display:flex;flex-direction:column;border:.0625rem solid var(--general_contrasts-container-outline);border-radius:1rem;height:12.1875rem;width:20.5rem;position:relative}.bmb_card_button:has(.bmb_card_button-small){height:9.25rem;width:10.3125rem;border-radius:.5rem;border:0}.bmb_card_button-wrapper{display:block;background-color:var(--containers-modal);padding:1.5rem;position:relative;width:100%;height:100%;border-radius:1rem;box-shadow:var(--bmb-box-shadow-3);user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.bmb_card_button-wrapper:hover:not(:disabled){background-color:var(--general_contrasts-15)}.bmb_card_button-wrapper:focus:not(:disabled),.bmb_card_button-wrapper:active:not(:disabled){background-color:var(--general_contrasts-25)}.bmb_card_button-wrapper-button{cursor:pointer}.bmb_card_button-box{display:flex;flex-direction:row;justify-content:space-between;margin-bottom:.5rem;min-height:1.75rem}.bmb_card_button-left{align-items:center;display:flex;justify-content:flex-start}.bmb_card_button-left.bmb_card_button-top-header-start{align-items:start}.bmb_card_button-circle{align-items:center;background-color:var(--general_contrasts-100);border-radius:100%;color:var(--general_contrasts-5);display:flex;height:3rem;justify-content:center;width:3rem}.bmb_card_button-top-header{display:flex;flex-direction:row;gap:1rem;flex:1;max-width:100%}.bmb_card_button-top-header-image{border-radius:.75rem;height:4.125rem;object-fit:cover;width:4.125rem}.bmb_card_button-top-header-container{display:flex;flex-direction:column;gap:.5rem;flex:1;overflow:hidden}.bmb_card_button-top-header-container-title{font-family:Poppins-Regular,sans-serif;font-size:1rem;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bmb_card_button-leading{display:flex;flex-flow:row wrap;justify-content:flex-end;margin-left:auto}.bmb_card_button-menu .bmb_dropdown-content-modal{right:0;left:inherit;max-width:15.625rem;min-width:15.625rem}.bmb_card_button-template{display:flex;flex-flow:row wrap;height:2.5rem;justify-content:flex-end;overflow:hidden;padding:0 .625rem;color:var(--general_contrasts-75);gap:1rem}.bmb_card_button-header{align-items:center;display:flex;gap:.5rem;cursor:pointer}.bmb_card_button-header-text{font-family:Poppins-Regular,sans-serif;font-size:.875rem;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--general_contrasts)}.bmb_card_button-header-icon{color:rgb(var(--color-charade-300))}.bmb_card_button-body{font-family:Poppins-Regular,sans-serif;font-size:.75rem;padding:.5rem 0;display:-webkit-box;max-block-size:4rem;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;white-space:normal;overflow:hidden;text-overflow:ellipsis}.bmb_card_button-body .bmb_text-link .bmb_check-external-link-button-element{line-height:1}.bmb_card_button-body{color:var(--general_contrasts-container)}.bmb_card_button-custom-content{font-family:Poppins-Regular,sans-serif;font-size:.75rem;padding:.5rem 0;display:-webkit-box;max-block-size:4rem;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;white-space:normal;overflow:hidden;text-overflow:ellipsis}.bmb_card_button-custom-content .bmb_text-link .bmb_check-external-link-button-element{line-height:1}.bmb_card_button-custom-content{color:var(--general_contrasts-75)}.bmb_card_button-add{background-color:rgb(var(--color-mariner-800));outline:0 solid transparent;color:rgb(var(--color-white-primary));width:100%;height:100%;border-radius:1rem;box-shadow:var(--bmb-box-shadow-3)}.bmb_card_button-add-title{font-family:Poppins-Regular,sans-serif;font-size:.875rem;margin-top:.625rem;max-width:100%;padding:0 1rem;display:-webkit-box;max-block-size:2.5rem;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;white-space:normal;overflow:hidden;text-overflow:ellipsis}.bmb_card_button-add:hover:not(:disabled){background-color:var(--buttons-primary-hover)}.bmb_card_button-add:focus:not(:disabled),.bmb_card_button-add:active:not(:disabled){background-color:var(--buttons-primary-select);color:rgb(var(--color-charade-950));outline-width:.0625rem;outline-color:var(--buttons-stroke-primary-selected);box-shadow:.25rem .25rem .25rem 0 var(--drop_shadow-color-test-shadow)}.bmb_card_button-small{border:none;height:100%;position:relative;transform-style:preserve-3d;transition:transform .6s;width:100%;border-color:var(--general_contrasts-container-outline);justify-content:flex-start}.bmb_card_button-small:active:not(:disabled) .bmb_card_button-small-back{background-color:var(--menu_select-surface-activated)}.bmb_card_button-small:active:not(:disabled) .bmb_card_button-small-text,.bmb_card_button-small:active:not(:disabled) .bmb_card_button-small-close-icon{color:var(--buttons-alternative-normal)}.bmb_card_button-small:hover{border-radius:.5rem;background-color:var(--menu_select-on-surface-hovered);transform:rotateY(180deg)}.bmb_card_button-small-flipped{transform:rotateY(180deg)}.bmb_card_button-small-flipped .bmb_card_button-small-back{background-color:var(--menu_select-surface-activated)}.bmb_card_button-small-flipped .bmb_card_button-small-text,.bmb_card_button-small-flipped .bmb_card_button-small-close-icon{color:var(--buttons-alternative-normal)}.bmb_card_button-small-front,.bmb_card_button-small-back{align-items:center;backface-visibility:hidden;border-radius:.5rem;display:flex;flex-direction:column;height:100%;justify-content:start;left:0;padding:.5rem;position:absolute;top:0;width:100%;gap:.5rem}.bmb_card_button-small-front{background-color:var(--containers-container-button);border:.0625rem solid var(--general_contrasts-container-outline);border-radius:.5rem;box-shadow:var(--bmb-box-shadow-3)}.bmb_card_button-small-back{background-color:var(--menu_select-on-surface-hovered);transform:rotateY(180deg)}.bmb_card_button-small-top-icon{align-self:flex-end;color:var(--general_contrasts-50)}.bmb_card_button-small-close-icon{align-self:flex-end;color:var(--general_contrasts-75)}.bmb_card_button-small-bot-icon{height:3rem;width:3rem}.bmb_card_button-small-title{color:var(--general_contrasts-75);font-family:Poppins-Bold,sans-serif;font-size:.875rem;text-align:center;display:-webkit-box;max-block-size:2.5rem;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;white-space:normal;overflow:hidden;text-overflow:ellipsis}.bmb_card_button-small-text{font-family:Poppins-Regular,sans-serif;font-size:.625rem;color:var(--general_contrasts-75);padding-top:1rem;text-align:center;width:100%}.bmb_card_button .bmb_dropdown_menu{color:var(--general_contrasts-container)}.bmb_card_button .bmb_text-link .bmb_check-external-link-button-element{color:var(--azul-mariner-500)}.bmb_card_button .bmb_text-link .bmb_check-external-link-button-element:hover{color:rgb(var(--color-mariner-400))}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: BmbIconComponent, selector: "bmb-icon", inputs: ["icon", "materialIcon", "styleIcon", "isFill", "fontWeight", "size", "alt", "dotNotification"] }, { kind: "ngmodule", type: FormsModule }, { kind: "component", type: BmbBadgeComponent, selector: "bmb-badge", inputs: ["appearance", "text", "container"] }, { kind: "component", type: BmbDropdownMenuComponent, selector: "bmb-dropdown-menu", inputs: ["items"] }, { kind: "component", type: BmbTextLinkComponent, selector: "bmb-text-link", inputs: ["textLink", "textLinkStyle", "target", "icon", "iconPosition", "link", "disabled"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
60
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: BmbCardButtonComponent, isStandalone: true, selector: "bmb-card-button", inputs: { isFullInteractive: { classPropertyName: "isFullInteractive", publicName: "isFullInteractive", isSignal: true, isRequired: false, transformFunction: null }, title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: false, transformFunction: null }, body: { classPropertyName: "body", publicName: "body", isSignal: true, isRequired: false, transformFunction: null }, badge: { classPropertyName: "badge", publicName: "badge", isSignal: true, isRequired: false, transformFunction: null }, icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, leftContentIcon: { classPropertyName: "leftContentIcon", publicName: "leftContentIcon", isSignal: true, isRequired: false, transformFunction: null }, leftContentImage: { classPropertyName: "leftContentImage", publicName: "leftContentImage", isSignal: true, isRequired: false, transformFunction: null }, leftContent: { classPropertyName: "leftContent", publicName: "leftContent", isSignal: true, isRequired: false, transformFunction: null }, hasMenu: { classPropertyName: "hasMenu", publicName: "hasMenu", isSignal: true, isRequired: false, transformFunction: null }, menuItems: { classPropertyName: "menuItems", publicName: "menuItems", isSignal: true, isRequired: false, transformFunction: null }, isTemplate: { classPropertyName: "isTemplate", publicName: "isTemplate", isSignal: true, isRequired: false, transformFunction: null }, textLink: { classPropertyName: "textLink", publicName: "textLink", isSignal: true, isRequired: false, transformFunction: null }, isSmall: { classPropertyName: "isSmall", publicName: "isSmall", isSignal: true, isRequired: false, transformFunction: null }, botIcon: { classPropertyName: "botIcon", publicName: "botIcon", isSignal: true, isRequired: false, transformFunction: null }, botImage: { classPropertyName: "botImage", publicName: "botImage", isSignal: true, isRequired: false, transformFunction: null }, smallIcon: { classPropertyName: "smallIcon", publicName: "smallIcon", isSignal: true, isRequired: false, transformFunction: null }, smallTitle: { classPropertyName: "smallTitle", publicName: "smallTitle", isSignal: true, isRequired: false, transformFunction: null }, smallDescription: { classPropertyName: "smallDescription", publicName: "smallDescription", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onAddContentClick: "onAddContentClick", onTitleClick: "onTitleClick", onSmallClick: "onSmallClick" }, queries: [{ propertyName: "customContent", first: true, predicate: ["customContent"], descendants: true }], ngImport: i0, template: "<section class=\"bmb_card_button\">\n @if (isSmall()) {\n <button\n type=\"button\"\n class=\"bmb_card_button-small\"\n [ngClass]=\"{ 'bmb_card_button-small-flipped': isFlipped }\"\n (click)=\"handleSmallClick($event)\"\n >\n <div class=\"bmb_card_button-small-front\">\n <bmb-icon\n [icon]=\"smallIcon()\"\n [size]=\"24\"\n class=\"bmb_card_button-small-top-icon\"\n alt=\"Small icon\"\n />\n <img\n [src]=\"botImage()?.src\"\n [alt]=\"botImage()?.alt\"\n class=\"bmb_card_button-small-bot-icon\"\n />\n <h3 class=\"bmb_card_button-small-title\">{{ smallTitle() }}</h3>\n </div>\n <div class=\"bmb_card_button-small-back\">\n <bmb-icon\n icon=\"close\"\n [size]=\"24\"\n class=\"bmb_card_button-small-close-icon\"\n />\n <div class=\"bmb_card_button-small-text\">\n {{ smallDescription() }}\n </div>\n </div>\n </button>\n } @else if (isFullInteractive()) {\n <section\n tabindex=\"0\"\n class=\"bmb_card_button-wrapper\"\n [ngClass]=\"{\n 'bmb_card_button-wrapper-button':\n leftContent() &&\n !leftContentIcon() &&\n leftContentImage() &&\n !textLink()\n }\"\n aria-label=\"button\"\n (click)=\"handleAddContent($event)\"\n (keypress)=\"handleAddContent($event)\"\n >\n @if (leftContent() || isTemplate() || hasMenu()) {\n <section class=\"bmb_card_button-box\">\n @if (leftContent()) {\n <section\n class=\"bmb_card_button-left\"\n [ngClass]=\"{\n 'bmb_card_button-top-header': !leftContentIcon(),\n 'bmb_card_button-top-header-start':\n !leftContentIcon() && !!badge()\n }\"\n >\n @if (!!leftContentIcon()) {\n <div class=\"bmb_card_button-circle\">\n <bmb-icon\n [icon]=\"leftContentIcon()\"\n [size]=\"32\"\n class=\"bmb_card_button-circle-icon\"\n [alt]=\"title()\"\n />\n </div>\n } @else {\n <img\n class=\"bmb_card_button-top-header-image\"\n [src]=\"leftContentImage()?.src\"\n [alt]=\"leftContentImage()?.alt\"\n />\n <section class=\"bmb_card_button-top-header-container\">\n @if (!!badge()) {\n <bmb-badge\n class=\"bmb_card_button-top-header-container-title\"\n [text]=\"badge()?.text!\"\n [appearance]=\"badge()?.appearance ?? 'normal'\"\n [container]=\"badge()?.container ?? true\"\n />\n }\n <h2 class=\"bmb_card_button-top-header-container-title\">\n {{ title() }}\n </h2>\n </section>\n }\n </section>\n }\n <section class=\"bmb_card_button-leading\">\n @if (isTemplate()) {\n <div class=\"bmb_card_button-template\">\n <ng-content />\n </div>\n }\n\n @if (hasMenu()) {\n <bmb-dropdown-menu\n class=\"bmb_card_button-menu\"\n [items]=\"menuItems()\"\n />\n }\n </section>\n </section>\n }\n @if (!!leftContentIcon() && !leftContentImage()) {\n <section\n tabindex=\"0\"\n class=\"bmb_card_button-header\"\n (click)=\"handleTitleClick($event)\"\n aria-label=\"button\"\n (keypress)=\"handleTitleClick($event)\"\n >\n <h2 class=\"bmb_card_button-header-text\">{{ title() }}</h2>\n <bmb-icon\n [icon]=\"icon()\"\n [size]=\"16\"\n class=\"bmb_card_button-header-icon\"\n />\n </section>\n }\n\n @if (\n (leftContent() &&\n !leftContentIcon() &&\n leftContentImage() &&\n textLink()) ||\n body()\n ) {\n <section class=\"bmb_card_button-body\">\n {{ body() }}\n\n @if (\n leftContent() &&\n !leftContentIcon() &&\n leftContentImage() &&\n textLink()\n ) {\n <bmb-text-link\n [textLink]=\"textLink()?.label!\"\n icon=\"\"\n [link]=\"textLink()?.link!\"\n [target]=\"textLink()?.target!\"\n />\n }\n </section>\n }\n <div class=\"bmb_card_button-custom-content\">\n <ng-container [ngTemplateOutlet]=\"customContent\" />\n </div>\n </section>\n } @else {\n <button\n type=\"button\"\n class=\"bmb_card_button-add\"\n (click)=\"handleAddContent($event)\"\n >\n <bmb-icon\n [icon]=\"icon()\"\n [size]=\"48\"\n class=\"bmb_card_button-add-icon\"\n [isFill]=\"false\"\n [alt]=\"title()\"\n />\n <div class=\"bmb_card_button-add-title\">{{ title() }}</div>\n </button>\n }\n</section>\n", styles: ["@font-face{font-family:Poppins-Light;font-style:normal;font-weight:300;src:url(/assets/fonts/Poppins/Poppins-ExtraLight.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Regular;font-style:normal;font-weight:400;src:url(/assets/fonts/Poppins/Poppins-Regular.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Bold;font-style:normal;font-weight:700;src:url(/assets/fonts/Poppins/Poppins-Bold.ttf) format(\"truetype\")}:root,:host{--font-display: \"Poppins-Regular\", sans-serif}.font-thin-1{font-family:Poppins-Thin,sans-serif;font-size:.625rem}.font-light-1{font-family:Poppins-Light,sans-serif;font-size:.625rem}.font-regular-1{font-family:Poppins-Regular,sans-serif;font-size:.625rem}.font-medium-1{font-family:Poppins-Medium,sans-serif;font-size:.625rem}.font-semibold-1{font-family:Poppins-Semibold,sans-serif;font-size:.625rem}.font-bold-1{font-family:Poppins-Bold,sans-serif;font-size:.625rem}.font-thin-2{font-family:Poppins-Thin,sans-serif;font-size:.6875rem}.font-light-2{font-family:Poppins-Light,sans-serif;font-size:.6875rem}.font-regular-2{font-family:Poppins-Regular,sans-serif;font-size:.6875rem}.font-medium-2{font-family:Poppins-Medium,sans-serif;font-size:.6875rem}.font-semibold-2{font-family:Poppins-Semibold,sans-serif;font-size:.6875rem}.font-bold-2{font-family:Poppins-Bold,sans-serif;font-size:.6875rem}.font-thin-3{font-family:Poppins-Thin,sans-serif;font-size:.75rem}.font-light-3{font-family:Poppins-Light,sans-serif;font-size:.75rem}.font-regular-3{font-family:Poppins-Regular,sans-serif;font-size:.75rem}.font-medium-3{font-family:Poppins-Medium,sans-serif;font-size:.75rem}.font-semibold-3{font-family:Poppins-Semibold,sans-serif;font-size:.75rem}.font-bold-3{font-family:Poppins-Bold,sans-serif;font-size:.75rem}.font-thin-4{font-family:Poppins-Thin,sans-serif;font-size:.875rem}.font-light-4{font-family:Poppins-Light,sans-serif;font-size:.875rem}.font-regular-4{font-family:Poppins-Regular,sans-serif;font-size:.875rem}.font-medium-4{font-family:Poppins-Medium,sans-serif;font-size:.875rem}.font-semibold-4{font-family:Poppins-Semibold,sans-serif;font-size:.875rem}.font-bold-4{font-family:Poppins-Bold,sans-serif;font-size:.875rem}.font-thin-4_5{font-family:Poppins-Thin,sans-serif;font-size:.9375rem}.font-light-4_5{font-family:Poppins-Light,sans-serif;font-size:.9375rem}.font-regular-4_5{font-family:Poppins-Regular,sans-serif;font-size:.9375rem}.font-medium-4_5{font-family:Poppins-Medium,sans-serif;font-size:.9375rem}.font-semibold-4_5{font-family:Poppins-Semibold,sans-serif;font-size:.9375rem}.font-bold-4_5{font-family:Poppins-Bold,sans-serif;font-size:.9375rem}.font-thin-5{font-family:Poppins-Thin,sans-serif;font-size:1rem}.font-light-5{font-family:Poppins-Light,sans-serif;font-size:1rem}.font-regular-5{font-family:Poppins-Regular,sans-serif;font-size:1rem}.font-medium-5{font-family:Poppins-Medium,sans-serif;font-size:1rem}.font-semibold-5{font-family:Poppins-Semibold,sans-serif;font-size:1rem}.font-bold-5{font-family:Poppins-Bold,sans-serif;font-size:1rem}.font-thin-6{font-family:Poppins-Thin,sans-serif;font-size:1.125rem}.font-light-6{font-family:Poppins-Light,sans-serif;font-size:1.125rem}.font-regular-6{font-family:Poppins-Regular,sans-serif;font-size:1.125rem}.font-medium-6{font-family:Poppins-Medium,sans-serif;font-size:1.125rem}.font-semibold-6{font-family:Poppins-Semibold,sans-serif;font-size:1.125rem}.font-bold-6{font-family:Poppins-Bold,sans-serif;font-size:1.125rem}.font-thin-7{font-family:Poppins-Thin,sans-serif;font-size:1.25rem}.font-light-7{font-family:Poppins-Light,sans-serif;font-size:1.25rem}.font-regular-7{font-family:Poppins-Regular,sans-serif;font-size:1.25rem}.font-medium-7{font-family:Poppins-Medium,sans-serif;font-size:1.25rem}.font-semibold-7{font-family:Poppins-Semibold,sans-serif;font-size:1.25rem}.font-bold-7{font-family:Poppins-Bold,sans-serif;font-size:1.25rem}.font-thin-8{font-family:Poppins-Thin,sans-serif;font-size:1.375rem}.font-light-8{font-family:Poppins-Light,sans-serif;font-size:1.375rem}.font-regular-8{font-family:Poppins-Regular,sans-serif;font-size:1.375rem}.font-medium-8{font-family:Poppins-Medium,sans-serif;font-size:1.375rem}.font-semibold-8{font-family:Poppins-Semibold,sans-serif;font-size:1.375rem}.font-bold-8{font-family:Poppins-Bold,sans-serif;font-size:1.375rem}.font-thin-9{font-family:Poppins-Thin,sans-serif;font-size:1.5rem}.font-light-9{font-family:Poppins-Light,sans-serif;font-size:1.5rem}.font-regular-9{font-family:Poppins-Regular,sans-serif;font-size:1.5rem}.font-medium-9{font-family:Poppins-Medium,sans-serif;font-size:1.5rem}.font-semibold-9{font-family:Poppins-Semibold,sans-serif;font-size:1.5rem}.font-bold-9{font-family:Poppins-Bold,sans-serif;font-size:1.5rem}.font-thin-10{font-family:Poppins-Thin,sans-serif;font-size:1.625rem}.font-light-10{font-family:Poppins-Light,sans-serif;font-size:1.625rem}.font-regular-10{font-family:Poppins-Regular,sans-serif;font-size:1.625rem}.font-medium-10{font-family:Poppins-Medium,sans-serif;font-size:1.625rem}.font-semibold-10{font-family:Poppins-Semibold,sans-serif;font-size:1.625rem}.font-bold-10{font-family:Poppins-Bold,sans-serif;font-size:1.625rem}.font-thin-11{font-family:Poppins-Thin,sans-serif;font-size:2.25rem}.font-light-11{font-family:Poppins-Light,sans-serif;font-size:2.25rem}.font-regular-11{font-family:Poppins-Regular,sans-serif;font-size:2.25rem}.font-medium-11{font-family:Poppins-Medium,sans-serif;font-size:2.25rem}.font-semibold-11{font-family:Poppins-Semibold,sans-serif;font-size:2.25rem}.font-bold-11{font-family:Poppins-Bold,sans-serif;font-size:2.25rem}.font-thin-12{font-family:Poppins-Thin,sans-serif;font-size:3rem}.font-light-12{font-family:Poppins-Light,sans-serif;font-size:3rem}.font-regular-12{font-family:Poppins-Regular,sans-serif;font-size:3rem}.font-medium-12{font-family:Poppins-Medium,sans-serif;font-size:3rem}.font-semibold-12{font-family:Poppins-Semibold,sans-serif;font-size:3rem}.font-bold-12{font-family:Poppins-Bold,sans-serif;font-size:3rem}.bmb_card_button{display:flex;flex-direction:column;border:.0625rem solid var(--general_contrasts-container-outline);border-radius:1rem;height:12.1875rem;width:20.5rem;position:relative}.bmb_card_button:has(.bmb_card_button-small){height:9.25rem;width:10.3125rem;border-radius:.5rem;border:0}.bmb_card_button-wrapper{display:block;background-color:var(--containers-modal);padding:1.5rem;position:relative;width:100%;height:100%;border-radius:1rem;box-shadow:var(--bmb-box-shadow-3);user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.bmb_card_button-wrapper:hover:not(:disabled){background-color:var(--general_contrasts-15)}.bmb_card_button-wrapper:focus:not(:disabled),.bmb_card_button-wrapper:active:not(:disabled){background-color:var(--general_contrasts-25)}.bmb_card_button-wrapper-button{cursor:pointer}.bmb_card_button-box{display:flex;flex-direction:row;justify-content:space-between;margin-bottom:.5rem;min-height:1.75rem}.bmb_card_button-left{align-items:center;display:flex;justify-content:flex-start}.bmb_card_button-left.bmb_card_button-top-header-start{align-items:start}.bmb_card_button-circle{align-items:center;background-color:var(--general_contrasts-100);border-radius:100%;color:var(--general_contrasts-5);display:flex;height:3rem;justify-content:center;width:3rem}.bmb_card_button-top-header{display:flex;flex-direction:row;gap:1rem;flex:1;max-width:100%}.bmb_card_button-top-header-image{border-radius:.75rem;height:4.125rem;object-fit:cover;width:4.125rem}.bmb_card_button-top-header-container{display:flex;flex-direction:column;gap:.5rem;flex:1;overflow:hidden}.bmb_card_button-top-header-container-title{font-family:Poppins-Regular,sans-serif;font-size:1rem;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bmb_card_button-leading{display:flex;flex-flow:row wrap;justify-content:flex-end;margin-left:auto}.bmb_card_button-menu .bmb_dropdown-content-modal{right:0;left:inherit;max-width:15.625rem;min-width:15.625rem}.bmb_card_button-template{display:flex;flex-flow:row wrap;height:2.5rem;justify-content:flex-end;overflow:hidden;padding:0 .625rem;color:var(--general_contrasts-75);gap:1rem}.bmb_card_button-header{align-items:center;display:flex;gap:.5rem;cursor:pointer}.bmb_card_button-header-text{font-family:Poppins-Regular,sans-serif;font-size:.875rem;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--general_contrasts)}.bmb_card_button-header-icon{color:rgb(var(--color-charade-300))}.bmb_card_button-body{font-family:Poppins-Regular,sans-serif;font-size:.75rem;padding:.5rem 0;display:-webkit-box;max-block-size:4rem;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;white-space:normal;overflow:hidden;text-overflow:ellipsis}.bmb_card_button-body .bmb_text-link .bmb_check-external-link-button-element{line-height:1}.bmb_card_button-body{color:var(--general_contrasts-container)}.bmb_card_button-custom-content{font-family:Poppins-Regular,sans-serif;font-size:.75rem;padding:.5rem 0;display:-webkit-box;max-block-size:4rem;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;white-space:normal;overflow:hidden;text-overflow:ellipsis}.bmb_card_button-custom-content .bmb_text-link .bmb_check-external-link-button-element{line-height:1}.bmb_card_button-custom-content{color:var(--general_contrasts-75)}.bmb_card_button-add{background-color:rgb(var(--color-mariner-800));outline:0 solid transparent;color:rgb(var(--color-white-primary));width:100%;height:100%;border-radius:1rem;box-shadow:var(--bmb-box-shadow-3)}.bmb_card_button-add-title{font-family:Poppins-Regular,sans-serif;font-size:.875rem;margin-top:.625rem;max-width:100%;padding:0 1rem;display:-webkit-box;max-block-size:2.5rem;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;white-space:normal;overflow:hidden;text-overflow:ellipsis}.bmb_card_button-add:hover:not(:disabled){background-color:var(--buttons-primary-hover)}.bmb_card_button-add:focus:not(:disabled),.bmb_card_button-add:active:not(:disabled){background-color:var(--buttons-primary-select);color:rgb(var(--color-charade-950));outline-width:.0625rem;outline-color:var(--buttons-stroke-primary-selected);box-shadow:.25rem .25rem .25rem 0 var(--drop_shadow-color-test-shadow)}.bmb_card_button-small{border:none;height:100%;position:relative;transform-style:preserve-3d;transition:transform .6s;width:100%;border-color:var(--general_contrasts-container-outline);justify-content:flex-start}.bmb_card_button-small:active:not(:disabled) .bmb_card_button-small-back{background-color:var(--menu_select-surface-activated)}.bmb_card_button-small:active:not(:disabled) .bmb_card_button-small-text,.bmb_card_button-small:active:not(:disabled) .bmb_card_button-small-close-icon{color:var(--buttons-alternative-normal)}.bmb_card_button-small:hover{border-radius:.5rem;background-color:var(--menu_select-on-surface-hovered);transform:rotateY(180deg)}.bmb_card_button-small-flipped{transform:rotateY(180deg)}.bmb_card_button-small-flipped .bmb_card_button-small-back{background-color:var(--menu_select-surface-activated)}.bmb_card_button-small-flipped .bmb_card_button-small-text,.bmb_card_button-small-flipped .bmb_card_button-small-close-icon{color:var(--buttons-alternative-normal)}.bmb_card_button-small-front,.bmb_card_button-small-back{align-items:center;backface-visibility:hidden;border-radius:.5rem;display:flex;flex-direction:column;height:100%;justify-content:start;left:0;padding:.5rem;position:absolute;top:0;width:100%;gap:.5rem}.bmb_card_button-small-front{background-color:var(--containers-container-button);border:.0625rem solid var(--general_contrasts-container-outline);border-radius:.5rem;box-shadow:var(--bmb-box-shadow-3)}.bmb_card_button-small-back{background-color:var(--menu_select-on-surface-hovered);transform:rotateY(180deg)}.bmb_card_button-small-top-icon{align-self:flex-end;color:var(--general_contrasts-50)}.bmb_card_button-small-close-icon{align-self:flex-end;color:var(--general_contrasts-75)}.bmb_card_button-small-bot-icon{height:3rem;width:3rem}.bmb_card_button-small-title{color:var(--general_contrasts-75);font-family:Poppins-Bold,sans-serif;font-size:.875rem;text-align:center;display:-webkit-box;max-block-size:2.5rem;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;white-space:normal;overflow:hidden;text-overflow:ellipsis}.bmb_card_button-small-text{font-family:Poppins-Regular,sans-serif;font-size:.625rem;color:var(--general_contrasts-75);padding-top:1rem;text-align:center;width:100%}.bmb_card_button .bmb_dropdown_menu{color:var(--general_contrasts-container)}.bmb_card_button .bmb_text-link .bmb_check-external-link-button-element{color:var(--azul-mariner-500)}.bmb_card_button .bmb_text-link .bmb_check-external-link-button-element:hover{color:rgb(var(--color-mariner-400))}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: BmbIconComponent, selector: "bmb-icon", inputs: ["icon", "materialIcon", "styleIcon", "isFill", "fontWeight", "size", "alt", "dotNotification"] }, { kind: "ngmodule", type: FormsModule }, { kind: "component", type: BmbBadgeComponent, selector: "bmb-badge", inputs: ["appearance", "text", "container"] }, { kind: "component", type: BmbDropdownMenuComponent, selector: "bmb-dropdown-menu", inputs: ["items"], outputs: ["clickedItem"] }, { kind: "component", type: BmbTextLinkComponent, selector: "bmb-text-link", inputs: ["textLink", "textLinkStyle", "target", "icon", "iconPosition", "link", "disabled"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
61
61
  }
62
62
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BmbCardButtonComponent, decorators: [{
63
63
  type: Component,
@@ -68,9 +68,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
68
68
  BmbBadgeComponent,
69
69
  BmbDropdownMenuComponent,
70
70
  BmbTextLinkComponent,
71
- ], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<section class=\"bmb_card_button\">\n @if (isSmall()) {\n <button\n type=\"button\"\n class=\"bmb_card_button-small\"\n [ngClass]=\"{ 'bmb_card_button-small-flipped': isFlipped }\"\n (click)=\"handleSmallClick($event)\"\n >\n <div class=\"bmb_card_button-small-front\">\n <bmb-icon\n [icon]=\"smallIcon()\"\n [size]=\"24\"\n class=\"bmb_card_button-small-top-icon\"\n alt=\"Small icon\"\n />\n <img\n [src]=\"botImage()?.src\"\n [alt]=\"botImage()?.alt\"\n class=\"bmb_card_button-small-bot-icon\"\n />\n <h3 class=\"bmb_card_button-small-title\">{{ smallTitle() }}</h3>\n </div>\n <div class=\"bmb_card_button-small-back\">\n <bmb-icon\n icon=\"close\"\n [size]=\"24\"\n class=\"bmb_card_button-small-close-icon\"\n />\n <div class=\"bmb_card_button-small-text\">\n {{ smallDescription() }}\n </div>\n </div>\n </button>\n } @else if (isFullInteractive()) {\n <section\n tabindex=\"0\"\n class=\"bmb_card_button-wrapper\"\n [ngClass]=\"{\n 'bmb_card_button-wrapper-button':\n leftContent() &&\n !leftContentIcon() &&\n leftContentImage() &&\n !textLink()\n }\"\n (click)=\"handleAddContent($event)\"\n >\n @if (leftContent() || isTemplate() || hasMenu()) {\n <section class=\"bmb_card_button-box\">\n @if (leftContent()) {\n <section\n class=\"bmb_card_button-left\"\n [ngClass]=\"{\n 'bmb_card_button-top-header': !leftContentIcon(),\n 'bmb_card_button-top-header-start':\n !leftContentIcon() && !!badge()\n }\"\n >\n @if (!!leftContentIcon()) {\n <div class=\"bmb_card_button-circle\">\n <bmb-icon\n [icon]=\"leftContentIcon()\"\n [size]=\"32\"\n class=\"bmb_card_button-circle-icon\"\n [alt]=\"title()\"\n />\n </div>\n } @else {\n <img\n class=\"bmb_card_button-top-header-image\"\n [src]=\"leftContentImage()?.src\"\n [alt]=\"leftContentImage()?.alt\"\n />\n <section class=\"bmb_card_button-top-header-container\">\n @if (!!badge()) {\n <bmb-badge\n class=\"bmb_card_button-top-header-container-title\"\n [text]=\"badge()?.text!\"\n [appearance]=\"badge()?.appearance ?? 'normal'\"\n [container]=\"badge()?.container ?? true\"\n />\n }\n <h2 class=\"bmb_card_button-top-header-container-title\">\n {{ title() }}\n </h2>\n </section>\n }\n </section>\n }\n <section class=\"bmb_card_button-leading\">\n @if (isTemplate()) {\n <div class=\"bmb_card_button-template\">\n <ng-content />\n </div>\n }\n\n @if (hasMenu()) {\n <bmb-dropdown-menu\n class=\"bmb_card_button-menu\"\n [items]=\"menuItems()\"\n />\n }\n </section>\n </section>\n }\n @if (!!leftContentIcon() && !leftContentImage()) {\n <section\n tabindex=\"0\"\n class=\"bmb_card_button-header\"\n (click)=\"handleTitleClick($event)\"\n >\n <h2 class=\"bmb_card_button-header-text\">{{ title() }}</h2>\n <bmb-icon\n [icon]=\"icon()\"\n [size]=\"16\"\n class=\"bmb_card_button-header-icon\"\n />\n </section>\n }\n\n @if (\n (leftContent() &&\n !leftContentIcon() &&\n leftContentImage() &&\n textLink()) ||\n body()\n ) {\n <section class=\"bmb_card_button-body\">\n {{ body() }}\n\n @if (\n leftContent() &&\n !leftContentIcon() &&\n leftContentImage() &&\n textLink()\n ) {\n <bmb-text-link\n [textLink]=\"textLink()?.label!\"\n icon=\"\"\n [link]=\"textLink()?.link!\"\n [target]=\"textLink()?.target!\"\n />\n }\n </section>\n }\n <div class=\"bmb_card_button-custom-content\">\n <ng-container [ngTemplateOutlet]=\"customContent\" />\n </div>\n </section>\n } @else {\n <button\n type=\"button\"\n class=\"bmb_card_button-add\"\n (click)=\"handleAddContent($event)\"\n >\n <bmb-icon\n [icon]=\"icon()\"\n [size]=\"48\"\n class=\"bmb_card_button-add-icon\"\n [isFill]=\"false\"\n [alt]=\"title()\"\n />\n <div class=\"bmb_card_button-add-title\">{{ title() }}</div>\n </button>\n }\n</section>\n", styles: ["@font-face{font-family:Poppins-Light;font-style:normal;font-weight:300;src:url(/assets/fonts/Poppins/Poppins-ExtraLight.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Regular;font-style:normal;font-weight:400;src:url(/assets/fonts/Poppins/Poppins-Regular.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Bold;font-style:normal;font-weight:700;src:url(/assets/fonts/Poppins/Poppins-Bold.ttf) format(\"truetype\")}:root,:host{--font-display: \"Poppins-Regular\", sans-serif}.font-thin-1{font-family:Poppins-Thin,sans-serif;font-size:.625rem}.font-light-1{font-family:Poppins-Light,sans-serif;font-size:.625rem}.font-regular-1{font-family:Poppins-Regular,sans-serif;font-size:.625rem}.font-medium-1{font-family:Poppins-Medium,sans-serif;font-size:.625rem}.font-semibold-1{font-family:Poppins-Semibold,sans-serif;font-size:.625rem}.font-bold-1{font-family:Poppins-Bold,sans-serif;font-size:.625rem}.font-thin-2{font-family:Poppins-Thin,sans-serif;font-size:.6875rem}.font-light-2{font-family:Poppins-Light,sans-serif;font-size:.6875rem}.font-regular-2{font-family:Poppins-Regular,sans-serif;font-size:.6875rem}.font-medium-2{font-family:Poppins-Medium,sans-serif;font-size:.6875rem}.font-semibold-2{font-family:Poppins-Semibold,sans-serif;font-size:.6875rem}.font-bold-2{font-family:Poppins-Bold,sans-serif;font-size:.6875rem}.font-thin-3{font-family:Poppins-Thin,sans-serif;font-size:.75rem}.font-light-3{font-family:Poppins-Light,sans-serif;font-size:.75rem}.font-regular-3{font-family:Poppins-Regular,sans-serif;font-size:.75rem}.font-medium-3{font-family:Poppins-Medium,sans-serif;font-size:.75rem}.font-semibold-3{font-family:Poppins-Semibold,sans-serif;font-size:.75rem}.font-bold-3{font-family:Poppins-Bold,sans-serif;font-size:.75rem}.font-thin-4{font-family:Poppins-Thin,sans-serif;font-size:.875rem}.font-light-4{font-family:Poppins-Light,sans-serif;font-size:.875rem}.font-regular-4{font-family:Poppins-Regular,sans-serif;font-size:.875rem}.font-medium-4{font-family:Poppins-Medium,sans-serif;font-size:.875rem}.font-semibold-4{font-family:Poppins-Semibold,sans-serif;font-size:.875rem}.font-bold-4{font-family:Poppins-Bold,sans-serif;font-size:.875rem}.font-thin-4_5{font-family:Poppins-Thin,sans-serif;font-size:.9375rem}.font-light-4_5{font-family:Poppins-Light,sans-serif;font-size:.9375rem}.font-regular-4_5{font-family:Poppins-Regular,sans-serif;font-size:.9375rem}.font-medium-4_5{font-family:Poppins-Medium,sans-serif;font-size:.9375rem}.font-semibold-4_5{font-family:Poppins-Semibold,sans-serif;font-size:.9375rem}.font-bold-4_5{font-family:Poppins-Bold,sans-serif;font-size:.9375rem}.font-thin-5{font-family:Poppins-Thin,sans-serif;font-size:1rem}.font-light-5{font-family:Poppins-Light,sans-serif;font-size:1rem}.font-regular-5{font-family:Poppins-Regular,sans-serif;font-size:1rem}.font-medium-5{font-family:Poppins-Medium,sans-serif;font-size:1rem}.font-semibold-5{font-family:Poppins-Semibold,sans-serif;font-size:1rem}.font-bold-5{font-family:Poppins-Bold,sans-serif;font-size:1rem}.font-thin-6{font-family:Poppins-Thin,sans-serif;font-size:1.125rem}.font-light-6{font-family:Poppins-Light,sans-serif;font-size:1.125rem}.font-regular-6{font-family:Poppins-Regular,sans-serif;font-size:1.125rem}.font-medium-6{font-family:Poppins-Medium,sans-serif;font-size:1.125rem}.font-semibold-6{font-family:Poppins-Semibold,sans-serif;font-size:1.125rem}.font-bold-6{font-family:Poppins-Bold,sans-serif;font-size:1.125rem}.font-thin-7{font-family:Poppins-Thin,sans-serif;font-size:1.25rem}.font-light-7{font-family:Poppins-Light,sans-serif;font-size:1.25rem}.font-regular-7{font-family:Poppins-Regular,sans-serif;font-size:1.25rem}.font-medium-7{font-family:Poppins-Medium,sans-serif;font-size:1.25rem}.font-semibold-7{font-family:Poppins-Semibold,sans-serif;font-size:1.25rem}.font-bold-7{font-family:Poppins-Bold,sans-serif;font-size:1.25rem}.font-thin-8{font-family:Poppins-Thin,sans-serif;font-size:1.375rem}.font-light-8{font-family:Poppins-Light,sans-serif;font-size:1.375rem}.font-regular-8{font-family:Poppins-Regular,sans-serif;font-size:1.375rem}.font-medium-8{font-family:Poppins-Medium,sans-serif;font-size:1.375rem}.font-semibold-8{font-family:Poppins-Semibold,sans-serif;font-size:1.375rem}.font-bold-8{font-family:Poppins-Bold,sans-serif;font-size:1.375rem}.font-thin-9{font-family:Poppins-Thin,sans-serif;font-size:1.5rem}.font-light-9{font-family:Poppins-Light,sans-serif;font-size:1.5rem}.font-regular-9{font-family:Poppins-Regular,sans-serif;font-size:1.5rem}.font-medium-9{font-family:Poppins-Medium,sans-serif;font-size:1.5rem}.font-semibold-9{font-family:Poppins-Semibold,sans-serif;font-size:1.5rem}.font-bold-9{font-family:Poppins-Bold,sans-serif;font-size:1.5rem}.font-thin-10{font-family:Poppins-Thin,sans-serif;font-size:1.625rem}.font-light-10{font-family:Poppins-Light,sans-serif;font-size:1.625rem}.font-regular-10{font-family:Poppins-Regular,sans-serif;font-size:1.625rem}.font-medium-10{font-family:Poppins-Medium,sans-serif;font-size:1.625rem}.font-semibold-10{font-family:Poppins-Semibold,sans-serif;font-size:1.625rem}.font-bold-10{font-family:Poppins-Bold,sans-serif;font-size:1.625rem}.font-thin-11{font-family:Poppins-Thin,sans-serif;font-size:2.25rem}.font-light-11{font-family:Poppins-Light,sans-serif;font-size:2.25rem}.font-regular-11{font-family:Poppins-Regular,sans-serif;font-size:2.25rem}.font-medium-11{font-family:Poppins-Medium,sans-serif;font-size:2.25rem}.font-semibold-11{font-family:Poppins-Semibold,sans-serif;font-size:2.25rem}.font-bold-11{font-family:Poppins-Bold,sans-serif;font-size:2.25rem}.font-thin-12{font-family:Poppins-Thin,sans-serif;font-size:3rem}.font-light-12{font-family:Poppins-Light,sans-serif;font-size:3rem}.font-regular-12{font-family:Poppins-Regular,sans-serif;font-size:3rem}.font-medium-12{font-family:Poppins-Medium,sans-serif;font-size:3rem}.font-semibold-12{font-family:Poppins-Semibold,sans-serif;font-size:3rem}.font-bold-12{font-family:Poppins-Bold,sans-serif;font-size:3rem}.bmb_card_button{display:flex;flex-direction:column;border:.0625rem solid var(--general_contrasts-container-outline);border-radius:1rem;height:12.1875rem;width:20.5rem;position:relative}.bmb_card_button:has(.bmb_card_button-small){height:9.25rem;width:10.3125rem;border-radius:.5rem;border:0}.bmb_card_button-wrapper{display:block;background-color:var(--containers-modal);padding:1.5rem;position:relative;width:100%;height:100%;border-radius:1rem;box-shadow:var(--bmb-box-shadow-3);user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.bmb_card_button-wrapper:hover:not(:disabled){background-color:var(--general_contrasts-15)}.bmb_card_button-wrapper:focus:not(:disabled),.bmb_card_button-wrapper:active:not(:disabled){background-color:var(--general_contrasts-25)}.bmb_card_button-wrapper-button{cursor:pointer}.bmb_card_button-box{display:flex;flex-direction:row;justify-content:space-between;margin-bottom:.5rem;min-height:1.75rem}.bmb_card_button-left{align-items:center;display:flex;justify-content:flex-start}.bmb_card_button-left.bmb_card_button-top-header-start{align-items:start}.bmb_card_button-circle{align-items:center;background-color:var(--general_contrasts-100);border-radius:100%;color:var(--general_contrasts-5);display:flex;height:3rem;justify-content:center;width:3rem}.bmb_card_button-top-header{display:flex;flex-direction:row;gap:1rem;flex:1;max-width:100%}.bmb_card_button-top-header-image{border-radius:.75rem;height:4.125rem;object-fit:cover;width:4.125rem}.bmb_card_button-top-header-container{display:flex;flex-direction:column;gap:.5rem;flex:1;overflow:hidden}.bmb_card_button-top-header-container-title{font-family:Poppins-Regular,sans-serif;font-size:1rem;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bmb_card_button-leading{display:flex;flex-flow:row wrap;justify-content:flex-end;margin-left:auto}.bmb_card_button-menu .bmb_dropdown-content-modal{right:0;left:inherit;max-width:15.625rem;min-width:15.625rem}.bmb_card_button-template{display:flex;flex-flow:row wrap;height:2.5rem;justify-content:flex-end;overflow:hidden;padding:0 .625rem;color:var(--general_contrasts-75);gap:1rem}.bmb_card_button-header{align-items:center;display:flex;gap:.5rem;cursor:pointer}.bmb_card_button-header-text{font-family:Poppins-Regular,sans-serif;font-size:.875rem;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--general_contrasts)}.bmb_card_button-header-icon{color:rgb(var(--color-charade-300))}.bmb_card_button-body{font-family:Poppins-Regular,sans-serif;font-size:.75rem;padding:.5rem 0;display:-webkit-box;max-block-size:4rem;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;white-space:normal;overflow:hidden;text-overflow:ellipsis}.bmb_card_button-body .bmb_text-link .bmb_check-external-link-button-element{line-height:1}.bmb_card_button-body{color:var(--general_contrasts-container)}.bmb_card_button-custom-content{font-family:Poppins-Regular,sans-serif;font-size:.75rem;padding:.5rem 0;display:-webkit-box;max-block-size:4rem;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;white-space:normal;overflow:hidden;text-overflow:ellipsis}.bmb_card_button-custom-content .bmb_text-link .bmb_check-external-link-button-element{line-height:1}.bmb_card_button-custom-content{color:var(--general_contrasts-75)}.bmb_card_button-add{background-color:rgb(var(--color-mariner-800));outline:0 solid transparent;color:rgb(var(--color-white-primary));width:100%;height:100%;border-radius:1rem;box-shadow:var(--bmb-box-shadow-3)}.bmb_card_button-add-title{font-family:Poppins-Regular,sans-serif;font-size:.875rem;margin-top:.625rem;max-width:100%;padding:0 1rem;display:-webkit-box;max-block-size:2.5rem;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;white-space:normal;overflow:hidden;text-overflow:ellipsis}.bmb_card_button-add:hover:not(:disabled){background-color:var(--buttons-primary-hover)}.bmb_card_button-add:focus:not(:disabled),.bmb_card_button-add:active:not(:disabled){background-color:var(--buttons-primary-select);color:rgb(var(--color-charade-950));outline-width:.0625rem;outline-color:var(--buttons-stroke-primary-selected);box-shadow:.25rem .25rem .25rem 0 var(--drop_shadow-color-test-shadow)}.bmb_card_button-small{border:none;height:100%;position:relative;transform-style:preserve-3d;transition:transform .6s;width:100%;border-color:var(--general_contrasts-container-outline);justify-content:flex-start}.bmb_card_button-small:active:not(:disabled) .bmb_card_button-small-back{background-color:var(--menu_select-surface-activated)}.bmb_card_button-small:active:not(:disabled) .bmb_card_button-small-text,.bmb_card_button-small:active:not(:disabled) .bmb_card_button-small-close-icon{color:var(--buttons-alternative-normal)}.bmb_card_button-small:hover{border-radius:.5rem;background-color:var(--menu_select-on-surface-hovered);transform:rotateY(180deg)}.bmb_card_button-small-flipped{transform:rotateY(180deg)}.bmb_card_button-small-flipped .bmb_card_button-small-back{background-color:var(--menu_select-surface-activated)}.bmb_card_button-small-flipped .bmb_card_button-small-text,.bmb_card_button-small-flipped .bmb_card_button-small-close-icon{color:var(--buttons-alternative-normal)}.bmb_card_button-small-front,.bmb_card_button-small-back{align-items:center;backface-visibility:hidden;border-radius:.5rem;display:flex;flex-direction:column;height:100%;justify-content:start;left:0;padding:.5rem;position:absolute;top:0;width:100%;gap:.5rem}.bmb_card_button-small-front{background-color:var(--containers-container-button);border:.0625rem solid var(--general_contrasts-container-outline);border-radius:.5rem;box-shadow:var(--bmb-box-shadow-3)}.bmb_card_button-small-back{background-color:var(--menu_select-on-surface-hovered);transform:rotateY(180deg)}.bmb_card_button-small-top-icon{align-self:flex-end;color:var(--general_contrasts-50)}.bmb_card_button-small-close-icon{align-self:flex-end;color:var(--general_contrasts-75)}.bmb_card_button-small-bot-icon{height:3rem;width:3rem}.bmb_card_button-small-title{color:var(--general_contrasts-75);font-family:Poppins-Bold,sans-serif;font-size:.875rem;text-align:center;display:-webkit-box;max-block-size:2.5rem;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;white-space:normal;overflow:hidden;text-overflow:ellipsis}.bmb_card_button-small-text{font-family:Poppins-Regular,sans-serif;font-size:.625rem;color:var(--general_contrasts-75);padding-top:1rem;text-align:center;width:100%}.bmb_card_button .bmb_dropdown_menu{color:var(--general_contrasts-container)}.bmb_card_button .bmb_text-link .bmb_check-external-link-button-element{color:var(--azul-mariner-500)}.bmb_card_button .bmb_text-link .bmb_check-external-link-button-element:hover{color:rgb(var(--color-mariner-400))}\n"] }]
71
+ ], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<section class=\"bmb_card_button\">\n @if (isSmall()) {\n <button\n type=\"button\"\n class=\"bmb_card_button-small\"\n [ngClass]=\"{ 'bmb_card_button-small-flipped': isFlipped }\"\n (click)=\"handleSmallClick($event)\"\n >\n <div class=\"bmb_card_button-small-front\">\n <bmb-icon\n [icon]=\"smallIcon()\"\n [size]=\"24\"\n class=\"bmb_card_button-small-top-icon\"\n alt=\"Small icon\"\n />\n <img\n [src]=\"botImage()?.src\"\n [alt]=\"botImage()?.alt\"\n class=\"bmb_card_button-small-bot-icon\"\n />\n <h3 class=\"bmb_card_button-small-title\">{{ smallTitle() }}</h3>\n </div>\n <div class=\"bmb_card_button-small-back\">\n <bmb-icon\n icon=\"close\"\n [size]=\"24\"\n class=\"bmb_card_button-small-close-icon\"\n />\n <div class=\"bmb_card_button-small-text\">\n {{ smallDescription() }}\n </div>\n </div>\n </button>\n } @else if (isFullInteractive()) {\n <section\n tabindex=\"0\"\n class=\"bmb_card_button-wrapper\"\n [ngClass]=\"{\n 'bmb_card_button-wrapper-button':\n leftContent() &&\n !leftContentIcon() &&\n leftContentImage() &&\n !textLink()\n }\"\n aria-label=\"button\"\n (click)=\"handleAddContent($event)\"\n (keypress)=\"handleAddContent($event)\"\n >\n @if (leftContent() || isTemplate() || hasMenu()) {\n <section class=\"bmb_card_button-box\">\n @if (leftContent()) {\n <section\n class=\"bmb_card_button-left\"\n [ngClass]=\"{\n 'bmb_card_button-top-header': !leftContentIcon(),\n 'bmb_card_button-top-header-start':\n !leftContentIcon() && !!badge()\n }\"\n >\n @if (!!leftContentIcon()) {\n <div class=\"bmb_card_button-circle\">\n <bmb-icon\n [icon]=\"leftContentIcon()\"\n [size]=\"32\"\n class=\"bmb_card_button-circle-icon\"\n [alt]=\"title()\"\n />\n </div>\n } @else {\n <img\n class=\"bmb_card_button-top-header-image\"\n [src]=\"leftContentImage()?.src\"\n [alt]=\"leftContentImage()?.alt\"\n />\n <section class=\"bmb_card_button-top-header-container\">\n @if (!!badge()) {\n <bmb-badge\n class=\"bmb_card_button-top-header-container-title\"\n [text]=\"badge()?.text!\"\n [appearance]=\"badge()?.appearance ?? 'normal'\"\n [container]=\"badge()?.container ?? true\"\n />\n }\n <h2 class=\"bmb_card_button-top-header-container-title\">\n {{ title() }}\n </h2>\n </section>\n }\n </section>\n }\n <section class=\"bmb_card_button-leading\">\n @if (isTemplate()) {\n <div class=\"bmb_card_button-template\">\n <ng-content />\n </div>\n }\n\n @if (hasMenu()) {\n <bmb-dropdown-menu\n class=\"bmb_card_button-menu\"\n [items]=\"menuItems()\"\n />\n }\n </section>\n </section>\n }\n @if (!!leftContentIcon() && !leftContentImage()) {\n <section\n tabindex=\"0\"\n class=\"bmb_card_button-header\"\n (click)=\"handleTitleClick($event)\"\n aria-label=\"button\"\n (keypress)=\"handleTitleClick($event)\"\n >\n <h2 class=\"bmb_card_button-header-text\">{{ title() }}</h2>\n <bmb-icon\n [icon]=\"icon()\"\n [size]=\"16\"\n class=\"bmb_card_button-header-icon\"\n />\n </section>\n }\n\n @if (\n (leftContent() &&\n !leftContentIcon() &&\n leftContentImage() &&\n textLink()) ||\n body()\n ) {\n <section class=\"bmb_card_button-body\">\n {{ body() }}\n\n @if (\n leftContent() &&\n !leftContentIcon() &&\n leftContentImage() &&\n textLink()\n ) {\n <bmb-text-link\n [textLink]=\"textLink()?.label!\"\n icon=\"\"\n [link]=\"textLink()?.link!\"\n [target]=\"textLink()?.target!\"\n />\n }\n </section>\n }\n <div class=\"bmb_card_button-custom-content\">\n <ng-container [ngTemplateOutlet]=\"customContent\" />\n </div>\n </section>\n } @else {\n <button\n type=\"button\"\n class=\"bmb_card_button-add\"\n (click)=\"handleAddContent($event)\"\n >\n <bmb-icon\n [icon]=\"icon()\"\n [size]=\"48\"\n class=\"bmb_card_button-add-icon\"\n [isFill]=\"false\"\n [alt]=\"title()\"\n />\n <div class=\"bmb_card_button-add-title\">{{ title() }}</div>\n </button>\n }\n</section>\n", styles: ["@font-face{font-family:Poppins-Light;font-style:normal;font-weight:300;src:url(/assets/fonts/Poppins/Poppins-ExtraLight.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Regular;font-style:normal;font-weight:400;src:url(/assets/fonts/Poppins/Poppins-Regular.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Bold;font-style:normal;font-weight:700;src:url(/assets/fonts/Poppins/Poppins-Bold.ttf) format(\"truetype\")}:root,:host{--font-display: \"Poppins-Regular\", sans-serif}.font-thin-1{font-family:Poppins-Thin,sans-serif;font-size:.625rem}.font-light-1{font-family:Poppins-Light,sans-serif;font-size:.625rem}.font-regular-1{font-family:Poppins-Regular,sans-serif;font-size:.625rem}.font-medium-1{font-family:Poppins-Medium,sans-serif;font-size:.625rem}.font-semibold-1{font-family:Poppins-Semibold,sans-serif;font-size:.625rem}.font-bold-1{font-family:Poppins-Bold,sans-serif;font-size:.625rem}.font-thin-2{font-family:Poppins-Thin,sans-serif;font-size:.6875rem}.font-light-2{font-family:Poppins-Light,sans-serif;font-size:.6875rem}.font-regular-2{font-family:Poppins-Regular,sans-serif;font-size:.6875rem}.font-medium-2{font-family:Poppins-Medium,sans-serif;font-size:.6875rem}.font-semibold-2{font-family:Poppins-Semibold,sans-serif;font-size:.6875rem}.font-bold-2{font-family:Poppins-Bold,sans-serif;font-size:.6875rem}.font-thin-3{font-family:Poppins-Thin,sans-serif;font-size:.75rem}.font-light-3{font-family:Poppins-Light,sans-serif;font-size:.75rem}.font-regular-3{font-family:Poppins-Regular,sans-serif;font-size:.75rem}.font-medium-3{font-family:Poppins-Medium,sans-serif;font-size:.75rem}.font-semibold-3{font-family:Poppins-Semibold,sans-serif;font-size:.75rem}.font-bold-3{font-family:Poppins-Bold,sans-serif;font-size:.75rem}.font-thin-4{font-family:Poppins-Thin,sans-serif;font-size:.875rem}.font-light-4{font-family:Poppins-Light,sans-serif;font-size:.875rem}.font-regular-4{font-family:Poppins-Regular,sans-serif;font-size:.875rem}.font-medium-4{font-family:Poppins-Medium,sans-serif;font-size:.875rem}.font-semibold-4{font-family:Poppins-Semibold,sans-serif;font-size:.875rem}.font-bold-4{font-family:Poppins-Bold,sans-serif;font-size:.875rem}.font-thin-4_5{font-family:Poppins-Thin,sans-serif;font-size:.9375rem}.font-light-4_5{font-family:Poppins-Light,sans-serif;font-size:.9375rem}.font-regular-4_5{font-family:Poppins-Regular,sans-serif;font-size:.9375rem}.font-medium-4_5{font-family:Poppins-Medium,sans-serif;font-size:.9375rem}.font-semibold-4_5{font-family:Poppins-Semibold,sans-serif;font-size:.9375rem}.font-bold-4_5{font-family:Poppins-Bold,sans-serif;font-size:.9375rem}.font-thin-5{font-family:Poppins-Thin,sans-serif;font-size:1rem}.font-light-5{font-family:Poppins-Light,sans-serif;font-size:1rem}.font-regular-5{font-family:Poppins-Regular,sans-serif;font-size:1rem}.font-medium-5{font-family:Poppins-Medium,sans-serif;font-size:1rem}.font-semibold-5{font-family:Poppins-Semibold,sans-serif;font-size:1rem}.font-bold-5{font-family:Poppins-Bold,sans-serif;font-size:1rem}.font-thin-6{font-family:Poppins-Thin,sans-serif;font-size:1.125rem}.font-light-6{font-family:Poppins-Light,sans-serif;font-size:1.125rem}.font-regular-6{font-family:Poppins-Regular,sans-serif;font-size:1.125rem}.font-medium-6{font-family:Poppins-Medium,sans-serif;font-size:1.125rem}.font-semibold-6{font-family:Poppins-Semibold,sans-serif;font-size:1.125rem}.font-bold-6{font-family:Poppins-Bold,sans-serif;font-size:1.125rem}.font-thin-7{font-family:Poppins-Thin,sans-serif;font-size:1.25rem}.font-light-7{font-family:Poppins-Light,sans-serif;font-size:1.25rem}.font-regular-7{font-family:Poppins-Regular,sans-serif;font-size:1.25rem}.font-medium-7{font-family:Poppins-Medium,sans-serif;font-size:1.25rem}.font-semibold-7{font-family:Poppins-Semibold,sans-serif;font-size:1.25rem}.font-bold-7{font-family:Poppins-Bold,sans-serif;font-size:1.25rem}.font-thin-8{font-family:Poppins-Thin,sans-serif;font-size:1.375rem}.font-light-8{font-family:Poppins-Light,sans-serif;font-size:1.375rem}.font-regular-8{font-family:Poppins-Regular,sans-serif;font-size:1.375rem}.font-medium-8{font-family:Poppins-Medium,sans-serif;font-size:1.375rem}.font-semibold-8{font-family:Poppins-Semibold,sans-serif;font-size:1.375rem}.font-bold-8{font-family:Poppins-Bold,sans-serif;font-size:1.375rem}.font-thin-9{font-family:Poppins-Thin,sans-serif;font-size:1.5rem}.font-light-9{font-family:Poppins-Light,sans-serif;font-size:1.5rem}.font-regular-9{font-family:Poppins-Regular,sans-serif;font-size:1.5rem}.font-medium-9{font-family:Poppins-Medium,sans-serif;font-size:1.5rem}.font-semibold-9{font-family:Poppins-Semibold,sans-serif;font-size:1.5rem}.font-bold-9{font-family:Poppins-Bold,sans-serif;font-size:1.5rem}.font-thin-10{font-family:Poppins-Thin,sans-serif;font-size:1.625rem}.font-light-10{font-family:Poppins-Light,sans-serif;font-size:1.625rem}.font-regular-10{font-family:Poppins-Regular,sans-serif;font-size:1.625rem}.font-medium-10{font-family:Poppins-Medium,sans-serif;font-size:1.625rem}.font-semibold-10{font-family:Poppins-Semibold,sans-serif;font-size:1.625rem}.font-bold-10{font-family:Poppins-Bold,sans-serif;font-size:1.625rem}.font-thin-11{font-family:Poppins-Thin,sans-serif;font-size:2.25rem}.font-light-11{font-family:Poppins-Light,sans-serif;font-size:2.25rem}.font-regular-11{font-family:Poppins-Regular,sans-serif;font-size:2.25rem}.font-medium-11{font-family:Poppins-Medium,sans-serif;font-size:2.25rem}.font-semibold-11{font-family:Poppins-Semibold,sans-serif;font-size:2.25rem}.font-bold-11{font-family:Poppins-Bold,sans-serif;font-size:2.25rem}.font-thin-12{font-family:Poppins-Thin,sans-serif;font-size:3rem}.font-light-12{font-family:Poppins-Light,sans-serif;font-size:3rem}.font-regular-12{font-family:Poppins-Regular,sans-serif;font-size:3rem}.font-medium-12{font-family:Poppins-Medium,sans-serif;font-size:3rem}.font-semibold-12{font-family:Poppins-Semibold,sans-serif;font-size:3rem}.font-bold-12{font-family:Poppins-Bold,sans-serif;font-size:3rem}.bmb_card_button{display:flex;flex-direction:column;border:.0625rem solid var(--general_contrasts-container-outline);border-radius:1rem;height:12.1875rem;width:20.5rem;position:relative}.bmb_card_button:has(.bmb_card_button-small){height:9.25rem;width:10.3125rem;border-radius:.5rem;border:0}.bmb_card_button-wrapper{display:block;background-color:var(--containers-modal);padding:1.5rem;position:relative;width:100%;height:100%;border-radius:1rem;box-shadow:var(--bmb-box-shadow-3);user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.bmb_card_button-wrapper:hover:not(:disabled){background-color:var(--general_contrasts-15)}.bmb_card_button-wrapper:focus:not(:disabled),.bmb_card_button-wrapper:active:not(:disabled){background-color:var(--general_contrasts-25)}.bmb_card_button-wrapper-button{cursor:pointer}.bmb_card_button-box{display:flex;flex-direction:row;justify-content:space-between;margin-bottom:.5rem;min-height:1.75rem}.bmb_card_button-left{align-items:center;display:flex;justify-content:flex-start}.bmb_card_button-left.bmb_card_button-top-header-start{align-items:start}.bmb_card_button-circle{align-items:center;background-color:var(--general_contrasts-100);border-radius:100%;color:var(--general_contrasts-5);display:flex;height:3rem;justify-content:center;width:3rem}.bmb_card_button-top-header{display:flex;flex-direction:row;gap:1rem;flex:1;max-width:100%}.bmb_card_button-top-header-image{border-radius:.75rem;height:4.125rem;object-fit:cover;width:4.125rem}.bmb_card_button-top-header-container{display:flex;flex-direction:column;gap:.5rem;flex:1;overflow:hidden}.bmb_card_button-top-header-container-title{font-family:Poppins-Regular,sans-serif;font-size:1rem;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bmb_card_button-leading{display:flex;flex-flow:row wrap;justify-content:flex-end;margin-left:auto}.bmb_card_button-menu .bmb_dropdown-content-modal{right:0;left:inherit;max-width:15.625rem;min-width:15.625rem}.bmb_card_button-template{display:flex;flex-flow:row wrap;height:2.5rem;justify-content:flex-end;overflow:hidden;padding:0 .625rem;color:var(--general_contrasts-75);gap:1rem}.bmb_card_button-header{align-items:center;display:flex;gap:.5rem;cursor:pointer}.bmb_card_button-header-text{font-family:Poppins-Regular,sans-serif;font-size:.875rem;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--general_contrasts)}.bmb_card_button-header-icon{color:rgb(var(--color-charade-300))}.bmb_card_button-body{font-family:Poppins-Regular,sans-serif;font-size:.75rem;padding:.5rem 0;display:-webkit-box;max-block-size:4rem;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;white-space:normal;overflow:hidden;text-overflow:ellipsis}.bmb_card_button-body .bmb_text-link .bmb_check-external-link-button-element{line-height:1}.bmb_card_button-body{color:var(--general_contrasts-container)}.bmb_card_button-custom-content{font-family:Poppins-Regular,sans-serif;font-size:.75rem;padding:.5rem 0;display:-webkit-box;max-block-size:4rem;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;white-space:normal;overflow:hidden;text-overflow:ellipsis}.bmb_card_button-custom-content .bmb_text-link .bmb_check-external-link-button-element{line-height:1}.bmb_card_button-custom-content{color:var(--general_contrasts-75)}.bmb_card_button-add{background-color:rgb(var(--color-mariner-800));outline:0 solid transparent;color:rgb(var(--color-white-primary));width:100%;height:100%;border-radius:1rem;box-shadow:var(--bmb-box-shadow-3)}.bmb_card_button-add-title{font-family:Poppins-Regular,sans-serif;font-size:.875rem;margin-top:.625rem;max-width:100%;padding:0 1rem;display:-webkit-box;max-block-size:2.5rem;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;white-space:normal;overflow:hidden;text-overflow:ellipsis}.bmb_card_button-add:hover:not(:disabled){background-color:var(--buttons-primary-hover)}.bmb_card_button-add:focus:not(:disabled),.bmb_card_button-add:active:not(:disabled){background-color:var(--buttons-primary-select);color:rgb(var(--color-charade-950));outline-width:.0625rem;outline-color:var(--buttons-stroke-primary-selected);box-shadow:.25rem .25rem .25rem 0 var(--drop_shadow-color-test-shadow)}.bmb_card_button-small{border:none;height:100%;position:relative;transform-style:preserve-3d;transition:transform .6s;width:100%;border-color:var(--general_contrasts-container-outline);justify-content:flex-start}.bmb_card_button-small:active:not(:disabled) .bmb_card_button-small-back{background-color:var(--menu_select-surface-activated)}.bmb_card_button-small:active:not(:disabled) .bmb_card_button-small-text,.bmb_card_button-small:active:not(:disabled) .bmb_card_button-small-close-icon{color:var(--buttons-alternative-normal)}.bmb_card_button-small:hover{border-radius:.5rem;background-color:var(--menu_select-on-surface-hovered);transform:rotateY(180deg)}.bmb_card_button-small-flipped{transform:rotateY(180deg)}.bmb_card_button-small-flipped .bmb_card_button-small-back{background-color:var(--menu_select-surface-activated)}.bmb_card_button-small-flipped .bmb_card_button-small-text,.bmb_card_button-small-flipped .bmb_card_button-small-close-icon{color:var(--buttons-alternative-normal)}.bmb_card_button-small-front,.bmb_card_button-small-back{align-items:center;backface-visibility:hidden;border-radius:.5rem;display:flex;flex-direction:column;height:100%;justify-content:start;left:0;padding:.5rem;position:absolute;top:0;width:100%;gap:.5rem}.bmb_card_button-small-front{background-color:var(--containers-container-button);border:.0625rem solid var(--general_contrasts-container-outline);border-radius:.5rem;box-shadow:var(--bmb-box-shadow-3)}.bmb_card_button-small-back{background-color:var(--menu_select-on-surface-hovered);transform:rotateY(180deg)}.bmb_card_button-small-top-icon{align-self:flex-end;color:var(--general_contrasts-50)}.bmb_card_button-small-close-icon{align-self:flex-end;color:var(--general_contrasts-75)}.bmb_card_button-small-bot-icon{height:3rem;width:3rem}.bmb_card_button-small-title{color:var(--general_contrasts-75);font-family:Poppins-Bold,sans-serif;font-size:.875rem;text-align:center;display:-webkit-box;max-block-size:2.5rem;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;white-space:normal;overflow:hidden;text-overflow:ellipsis}.bmb_card_button-small-text{font-family:Poppins-Regular,sans-serif;font-size:.625rem;color:var(--general_contrasts-75);padding-top:1rem;text-align:center;width:100%}.bmb_card_button .bmb_dropdown_menu{color:var(--general_contrasts-container)}.bmb_card_button .bmb_text-link .bmb_check-external-link-button-element{color:var(--azul-mariner-500)}.bmb_card_button .bmb_text-link .bmb_check-external-link-button-element:hover{color:rgb(var(--color-mariner-400))}\n"] }]
72
72
  }], propDecorators: { customContent: [{
73
73
  type: ContentChild,
74
74
  args: ['customContent']
75
75
  }] } });
76
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm1iLWNhcmQtYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RzLW5nL3NyYy9saWIvY29tcG9uZW50cy9ibWItY2FyZC1idXR0b24vYm1iLWNhcmQtYnV0dG9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RzLW5nL3NyYy9saWIvY29tcG9uZW50cy9ibWItY2FyZC1idXR0b24vYm1iLWNhcmQtYnV0dG9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsS0FBSyxFQUNMLE1BQU0sRUFDTix1QkFBdUIsRUFDdkIsaUJBQWlCLEVBRWpCLFlBQVksR0FDYixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBRXJFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBUTVGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBDQUEwQyxDQUFDOzs7QUE4QmhGLE1BQU0sT0FBTyxzQkFBc0I7SUFoQm5DO1FBaUJFLHNCQUFpQixHQUFHLEtBQUssQ0FBVSxJQUFJLENBQUMsQ0FBQztRQUN6QyxVQUFLLEdBQUcsS0FBSyxDQUFTLEVBQUUsQ0FBQyxDQUFDO1FBQzFCLFNBQUksR0FBRyxLQUFLLENBQVMsRUFBRSxDQUFDLENBQUM7UUFDekIsVUFBSyxHQUFHLEtBQUssRUFBaUIsQ0FBQztRQUMvQixTQUFJLEdBQUcsS0FBSyxDQUFTLEVBQUUsQ0FBQyxDQUFDO1FBQ3pCLG9CQUFlLEdBQUcsS0FBSyxDQUFTLEVBQUUsQ0FBQyxDQUFDO1FBQ3BDLHFCQUFnQixHQUFHLEtBQUssRUFBaUIsQ0FBQztRQUMxQyxnQkFBVyxHQUFHLEtBQUssQ0FBVSxLQUFLLENBQUMsQ0FBQztRQUNwQyxZQUFPLEdBQUcsS0FBSyxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBQ2hDLGNBQVMsR0FBRyxLQUFLLENBQWtCLEVBQUUsQ0FBQyxDQUFDO1FBQ3ZDLGlCQUFZLEdBQTRCLElBQUksQ0FBQyxDQUFDLFlBQVk7UUFDMUQsZUFBVSxHQUFHLEtBQUssQ0FBVSxLQUFLLENBQUMsQ0FBQztRQUNuQyxhQUFRLEdBQUcsS0FBSyxFQUF5QixDQUFDO1FBRTFDLHNCQUFpQixHQUFHLE1BQU0sRUFBYyxDQUFDO1FBQ3pDLGlCQUFZLEdBQUcsTUFBTSxFQUFjLENBQUM7UUFDcEMsaUJBQVksR0FBRyxNQUFNLEVBQWMsQ0FBQztRQUVwQyxZQUFZO1FBQ1osWUFBTyxHQUFHLEtBQUssQ0FBVSxLQUFLLENBQUMsQ0FBQztRQUNoQyxZQUFPLEdBQUcsS0FBSyxDQUFTLEVBQUUsQ0FBQyxDQUFDO1FBQzVCLGFBQVEsR0FBRyxLQUFLLEVBQWlCLENBQUM7UUFDbEMsY0FBUyxHQUFHLEtBQUssQ0FBUyxFQUFFLENBQUMsQ0FBQztRQUM5QixlQUFVLEdBQUcsS0FBSyxDQUFTLEVBQUUsQ0FBQyxDQUFDO1FBQy9CLHFCQUFnQixHQUFHLEtBQUssQ0FBUyxFQUFFLENBQUMsQ0FBQztRQUVyQyxjQUFTLEdBQVksS0FBSyxDQUFDO0tBK0I1QjtJQTNCQyxZQUFZLENBQUMsSUFBWSxFQUFFLFNBQWlCO1FBQzFDLElBQUksSUFBSSxDQUFDLE1BQU0sR0FBRyxTQUFTLEVBQUUsQ0FBQztZQUM1QixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLFNBQVMsQ0FBQyxHQUFHLEtBQUssQ0FBQztRQUM5QyxDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsZ0JBQWdCLENBQUMsS0FBaUI7UUFDaEMsSUFBSSxDQUFDLFNBQVMsR0FBRyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUM7UUFDakMsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUVELGdCQUFnQixDQUFDLEtBQWlCO1FBQ2hDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxLQUFpQjtRQUNoQyxJQUNFLENBQUMsSUFBSSxDQUFDLGlCQUFpQixFQUFFO1lBQ3ZCLElBQUksQ0FBQyxXQUFXLEVBQUU7WUFDbEIsQ0FBQyxJQUFJLENBQUMsZUFBZSxFQUFFO1lBQ3ZCLElBQUksQ0FBQyxnQkFBZ0IsRUFBRTtZQUN2QixDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNuQixDQUFDLElBQUksQ0FBQyxpQkFBaUIsRUFBRTtZQUV6QixJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7K0dBekRVLHNCQUFzQjttR0FBdEIsc0JBQXNCLDhvRkNwRG5DLHdsS0FxS0Esb2paRDNISSxZQUFZLG9TQUNaLGdCQUFnQiw2SkFDaEIsV0FBVywrQkFDWCxpQkFBaUIsbUdBQ2pCLHdCQUF3QixpRkFDeEIsb0JBQW9COzs0RkFLWCxzQkFBc0I7a0JBaEJsQyxTQUFTOytCQUNFLGlCQUFpQixjQUNmLElBQUksV0FHUDt3QkFDUCxZQUFZO3dCQUNaLGdCQUFnQjt3QkFDaEIsV0FBVzt3QkFDWCxpQkFBaUI7d0JBQ2pCLHdCQUF3Qjt3QkFDeEIsb0JBQW9CO3FCQUNyQixtQkFDZ0IsdUJBQXVCLENBQUMsTUFBTSxpQkFDaEMsaUJBQWlCLENBQUMsSUFBSTs4QkErQk4sYUFBYTtzQkFBM0MsWUFBWTt1QkFBQyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBpbnB1dCxcbiAgb3V0cHV0LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG4gIFRlbXBsYXRlUmVmLFxuICBDb250ZW50Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQm1iSWNvbkNvbXBvbmVudCB9IGZyb20gJy4uL2JtYi1pY29uL2JtYi1pY29uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCbWJCYWRnZUNvbXBvbmVudCB9IGZyb20gJy4uL2JtYi1iYWRnZS9ibWItYmFkZ2UuY29tcG9uZW50JztcbmltcG9ydCB7IElCYm1CZ0FwcGVhcmFuY2UgfSBmcm9tICcuLi9ibWItYWR2ZXJ0aXNlbWVudC1jYXJkL3R5cGVzJztcbmltcG9ydCB7IEJtYkRyb3Bkb3duTWVudUNvbXBvbmVudCB9IGZyb20gJy4uL2JtYi1kcm9wZG93bi1tZW51L2JtYi1kcm9wZG93bi1tZW51LmNvbXBvbmVudCc7XG5cbmltcG9ydCB7XG4gIElCbWJCYWRnZUluZm8sXG4gIElCbWJJbWFnZUluZm8sXG4gIElCbWJMaW5rQ29uZmlndXJhdGlvbixcbiAgSURyb3Bkb3duSXRlbSxcbn0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuaW1wb3J0IHsgQm1iVGV4dExpbmtDb21wb25lbnQgfSBmcm9tICcuLi9ibWItdGV4dC1saW5rL2JtYi10ZXh0LWxpbmsuY29tcG9uZW50JztcblxuZXhwb3J0IGludGVyZmFjZSBJQ2FyZEJ1dHRvbiB7XG4gIHRpdGxlOiBzdHJpbmc7XG4gIGJvZHk/OiBzdHJpbmc7XG4gIGJhZGdlPzogeyB0ZXh0OiBzdHJpbmc7IGFwcGVhcmFuY2U6IElCYm1CZ0FwcGVhcmFuY2UgfTtcbiAgaWNvbj86IHN0cmluZztcbiAgbGVmdENvbnRlbnRJY29uPzogc3RyaW5nO1xuICBsZWZ0Q29udGVudEltYWdlPzogSUJtYkltYWdlSW5mbztcbiAgbGVmdENvbnRlbnQ/OiBib29sZWFuO1xuICBoYXNNZW51PzogYm9vbGVhbjtcbiAgbWVudUl0ZW1zPzogSURyb3Bkb3duSXRlbVtdO1xufVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdibWItY2FyZC1idXR0b24nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICB0ZW1wbGF0ZVVybDogJy4vYm1iLWNhcmQtYnV0dG9uLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL2JtYi1jYXJkLWJ1dHRvbi5jb21wb25lbnQuc2NzcycsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgQm1iSWNvbkNvbXBvbmVudCxcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBCbWJCYWRnZUNvbXBvbmVudCxcbiAgICBCbWJEcm9wZG93bk1lbnVDb21wb25lbnQsXG4gICAgQm1iVGV4dExpbmtDb21wb25lbnQsXG4gIF0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxufSlcbmV4cG9ydCBjbGFzcyBCbWJDYXJkQnV0dG9uQ29tcG9uZW50IHtcbiAgaXNGdWxsSW50ZXJhY3RpdmUgPSBpbnB1dDxib29sZWFuPih0cnVlKTtcbiAgdGl0bGUgPSBpbnB1dDxzdHJpbmc+KCcnKTtcbiAgYm9keSA9IGlucHV0PHN0cmluZz4oJycpO1xuICBiYWRnZSA9IGlucHV0PElCbWJCYWRnZUluZm8+KCk7XG4gIGljb24gPSBpbnB1dDxzdHJpbmc+KCcnKTtcbiAgbGVmdENvbnRlbnRJY29uID0gaW5wdXQ8c3RyaW5nPignJyk7XG4gIGxlZnRDb250ZW50SW1hZ2UgPSBpbnB1dDxJQm1iSW1hZ2VJbmZvPigpO1xuICBsZWZ0Q29udGVudCA9IGlucHV0PGJvb2xlYW4+KGZhbHNlKTtcbiAgaGFzTWVudSA9IGlucHV0PGJvb2xlYW4+KGZhbHNlKTtcbiAgbWVudUl0ZW1zID0gaW5wdXQ8SURyb3Bkb3duSXRlbVtdPihbXSk7XG4gIGljb25UZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PiB8IG51bGwgPSBudWxsOyAvL0RlcHJlY2F0ZWRcbiAgaXNUZW1wbGF0ZSA9IGlucHV0PGJvb2xlYW4+KGZhbHNlKTtcbiAgdGV4dExpbmsgPSBpbnB1dDxJQm1iTGlua0NvbmZpZ3VyYXRpb24+KCk7XG5cbiAgb25BZGRDb250ZW50Q2xpY2sgPSBvdXRwdXQ8TW91c2VFdmVudD4oKTtcbiAgb25UaXRsZUNsaWNrID0gb3V0cHV0PE1vdXNlRXZlbnQ+KCk7XG4gIG9uU21hbGxDbGljayA9IG91dHB1dDxNb3VzZUV2ZW50PigpO1xuXG4gIC8vU21hbGwgY2FyZFxuICBpc1NtYWxsID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xuICBib3RJY29uID0gaW5wdXQ8c3RyaW5nPignJyk7XG4gIGJvdEltYWdlID0gaW5wdXQ8SUJtYkltYWdlSW5mbz4oKTtcbiAgc21hbGxJY29uID0gaW5wdXQ8c3RyaW5nPignJyk7XG4gIHNtYWxsVGl0bGUgPSBpbnB1dDxzdHJpbmc+KCcnKTtcbiAgc21hbGxEZXNjcmlwdGlvbiA9IGlucHV0PHN0cmluZz4oJycpO1xuXG4gIGlzRmxpcHBlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIEBDb250ZW50Q2hpbGQoJ2N1c3RvbUNvbnRlbnQnKSBjdXN0b21Db250ZW50ITogVGVtcGxhdGVSZWY8YW55PjtcblxuICB0cnVuY2F0ZVRleHQodGV4dDogc3RyaW5nLCBtYXhMZW5ndGg6IG51bWJlcik6IHN0cmluZyB7XG4gICAgaWYgKHRleHQubGVuZ3RoID4gbWF4TGVuZ3RoKSB7XG4gICAgICByZXR1cm4gdGV4dC5zdWJzdHJpbmcoMCwgbWF4TGVuZ3RoKSArICcuLi4nO1xuICAgIH1cbiAgICByZXR1cm4gdGV4dDtcbiAgfVxuXG4gIGhhbmRsZVNtYWxsQ2xpY2soZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLmlzRmxpcHBlZCA9ICF0aGlzLmlzRmxpcHBlZDtcbiAgICB0aGlzLm9uU21hbGxDbGljay5lbWl0KGV2ZW50KTtcbiAgfVxuXG4gIGhhbmRsZVRpdGxlQ2xpY2soZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLm9uVGl0bGVDbGljay5lbWl0KGV2ZW50KTtcbiAgfVxuXG4gIGhhbmRsZUFkZENvbnRlbnQoZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAoXG4gICAgICAodGhpcy5pc0Z1bGxJbnRlcmFjdGl2ZSgpICYmXG4gICAgICAgIHRoaXMubGVmdENvbnRlbnQoKSAmJlxuICAgICAgICAhdGhpcy5sZWZ0Q29udGVudEljb24oKSAmJlxuICAgICAgICB0aGlzLmxlZnRDb250ZW50SW1hZ2UoKSAmJlxuICAgICAgICAhdGhpcy50ZXh0TGluaygpKSB8fFxuICAgICAgIXRoaXMuaXNGdWxsSW50ZXJhY3RpdmUoKVxuICAgIClcbiAgICAgIHRoaXMub25BZGRDb250ZW50Q2xpY2suZW1pdChldmVudCk7XG4gIH1cbn1cbiIsIjxzZWN0aW9uIGNsYXNzPVwiYm1iX2NhcmRfYnV0dG9uXCI+XG4gIEBpZiAoaXNTbWFsbCgpKSB7XG4gICAgPGJ1dHRvblxuICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICBjbGFzcz1cImJtYl9jYXJkX2J1dHRvbi1zbWFsbFwiXG4gICAgICBbbmdDbGFzc109XCJ7ICdibWJfY2FyZF9idXR0b24tc21hbGwtZmxpcHBlZCc6IGlzRmxpcHBlZCB9XCJcbiAgICAgIChjbGljayk9XCJoYW5kbGVTbWFsbENsaWNrKCRldmVudClcIlxuICAgID5cbiAgICAgIDxkaXYgY2xhc3M9XCJibWJfY2FyZF9idXR0b24tc21hbGwtZnJvbnRcIj5cbiAgICAgICAgPGJtYi1pY29uXG4gICAgICAgICAgW2ljb25dPVwic21hbGxJY29uKClcIlxuICAgICAgICAgIFtzaXplXT1cIjI0XCJcbiAgICAgICAgICBjbGFzcz1cImJtYl9jYXJkX2J1dHRvbi1zbWFsbC10b3AtaWNvblwiXG4gICAgICAgICAgYWx0PVwiU21hbGwgaWNvblwiXG4gICAgICAgIC8+XG4gICAgICAgIDxpbWdcbiAgICAgICAgICBbc3JjXT1cImJvdEltYWdlKCk/LnNyY1wiXG4gICAgICAgICAgW2FsdF09XCJib3RJbWFnZSgpPy5hbHRcIlxuICAgICAgICAgIGNsYXNzPVwiYm1iX2NhcmRfYnV0dG9uLXNtYWxsLWJvdC1pY29uXCJcbiAgICAgICAgLz5cbiAgICAgICAgPGgzIGNsYXNzPVwiYm1iX2NhcmRfYnV0dG9uLXNtYWxsLXRpdGxlXCI+e3sgc21hbGxUaXRsZSgpIH19PC9oMz5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImJtYl9jYXJkX2J1dHRvbi1zbWFsbC1iYWNrXCI+XG4gICAgICAgIDxibWItaWNvblxuICAgICAgICAgIGljb249XCJjbG9zZVwiXG4gICAgICAgICAgW3NpemVdPVwiMjRcIlxuICAgICAgICAgIGNsYXNzPVwiYm1iX2NhcmRfYnV0dG9uLXNtYWxsLWNsb3NlLWljb25cIlxuICAgICAgICAvPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYm1iX2NhcmRfYnV0dG9uLXNtYWxsLXRleHRcIj5cbiAgICAgICAgICB7eyBzbWFsbERlc2NyaXB0aW9uKCkgfX1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2J1dHRvbj5cbiAgfSBAZWxzZSBpZiAoaXNGdWxsSW50ZXJhY3RpdmUoKSkge1xuICAgIDxzZWN0aW9uXG4gICAgICB0YWJpbmRleD1cIjBcIlxuICAgICAgY2xhc3M9XCJibWJfY2FyZF9idXR0b24td3JhcHBlclwiXG4gICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICdibWJfY2FyZF9idXR0b24td3JhcHBlci1idXR0b24nOlxuICAgICAgICAgIGxlZnRDb250ZW50KCkgJiZcbiAgICAgICAgICAhbGVmdENvbnRlbnRJY29uKCkgJiZcbiAgICAgICAgICBsZWZ0Q29udGVudEltYWdlKCkgJiZcbiAgICAgICAgICAhdGV4dExpbmsoKVxuICAgICAgfVwiXG4gICAgICAoY2xpY2spPVwiaGFuZGxlQWRkQ29udGVudCgkZXZlbnQpXCJcbiAgICA+XG4gICAgICBAaWYgKGxlZnRDb250ZW50KCkgfHwgaXNUZW1wbGF0ZSgpIHx8IGhhc01lbnUoKSkge1xuICAgICAgICA8c2VjdGlvbiBjbGFzcz1cImJtYl9jYXJkX2J1dHRvbi1ib3hcIj5cbiAgICAgICAgICBAaWYgKGxlZnRDb250ZW50KCkpIHtcbiAgICAgICAgICAgIDxzZWN0aW9uXG4gICAgICAgICAgICAgIGNsYXNzPVwiYm1iX2NhcmRfYnV0dG9uLWxlZnRcIlxuICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICAgICAgICAgJ2JtYl9jYXJkX2J1dHRvbi10b3AtaGVhZGVyJzogIWxlZnRDb250ZW50SWNvbigpLFxuICAgICAgICAgICAgICAgICdibWJfY2FyZF9idXR0b24tdG9wLWhlYWRlci1zdGFydCc6XG4gICAgICAgICAgICAgICAgICAhbGVmdENvbnRlbnRJY29uKCkgJiYgISFiYWRnZSgpXG4gICAgICAgICAgICAgIH1cIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICBAaWYgKCEhbGVmdENvbnRlbnRJY29uKCkpIHtcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYm1iX2NhcmRfYnV0dG9uLWNpcmNsZVwiPlxuICAgICAgICAgICAgICAgICAgPGJtYi1pY29uXG4gICAgICAgICAgICAgICAgICAgIFtpY29uXT1cImxlZnRDb250ZW50SWNvbigpXCJcbiAgICAgICAgICAgICAgICAgICAgW3NpemVdPVwiMzJcIlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJtYl9jYXJkX2J1dHRvbi1jaXJjbGUtaWNvblwiXG4gICAgICAgICAgICAgICAgICAgIFthbHRdPVwidGl0bGUoKVwiXG4gICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgICAgICA8aW1nXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cImJtYl9jYXJkX2J1dHRvbi10b3AtaGVhZGVyLWltYWdlXCJcbiAgICAgICAgICAgICAgICAgIFtzcmNdPVwibGVmdENvbnRlbnRJbWFnZSgpPy5zcmNcIlxuICAgICAgICAgICAgICAgICAgW2FsdF09XCJsZWZ0Q29udGVudEltYWdlKCk/LmFsdFwiXG4gICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz1cImJtYl9jYXJkX2J1dHRvbi10b3AtaGVhZGVyLWNvbnRhaW5lclwiPlxuICAgICAgICAgICAgICAgICAgQGlmICghIWJhZGdlKCkpIHtcbiAgICAgICAgICAgICAgICAgICAgPGJtYi1iYWRnZVxuICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYm1iX2NhcmRfYnV0dG9uLXRvcC1oZWFkZXItY29udGFpbmVyLXRpdGxlXCJcbiAgICAgICAgICAgICAgICAgICAgICBbdGV4dF09XCJiYWRnZSgpPy50ZXh0IVwiXG4gICAgICAgICAgICAgICAgICAgICAgW2FwcGVhcmFuY2VdPVwiYmFkZ2UoKT8uYXBwZWFyYW5jZSA/PyAnbm9ybWFsJ1wiXG4gICAgICAgICAgICAgICAgICAgICAgW2NvbnRhaW5lcl09XCJiYWRnZSgpPy5jb250YWluZXIgPz8gdHJ1ZVwiXG4gICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICA8aDIgY2xhc3M9XCJibWJfY2FyZF9idXR0b24tdG9wLWhlYWRlci1jb250YWluZXItdGl0bGVcIj5cbiAgICAgICAgICAgICAgICAgICAge3sgdGl0bGUoKSB9fVxuICAgICAgICAgICAgICAgICAgPC9oMj5cbiAgICAgICAgICAgICAgICA8L3NlY3Rpb24+XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDwvc2VjdGlvbj5cbiAgICAgICAgICB9XG4gICAgICAgICAgPHNlY3Rpb24gY2xhc3M9XCJibWJfY2FyZF9idXR0b24tbGVhZGluZ1wiPlxuICAgICAgICAgICAgQGlmIChpc1RlbXBsYXRlKCkpIHtcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImJtYl9jYXJkX2J1dHRvbi10ZW1wbGF0ZVwiPlxuICAgICAgICAgICAgICAgIDxuZy1jb250ZW50IC8+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaWYgKGhhc01lbnUoKSkge1xuICAgICAgICAgICAgICA8Ym1iLWRyb3Bkb3duLW1lbnVcbiAgICAgICAgICAgICAgICBjbGFzcz1cImJtYl9jYXJkX2J1dHRvbi1tZW51XCJcbiAgICAgICAgICAgICAgICBbaXRlbXNdPVwibWVudUl0ZW1zKClcIlxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgfVxuICAgICAgICAgIDwvc2VjdGlvbj5cbiAgICAgICAgPC9zZWN0aW9uPlxuICAgICAgfVxuICAgICAgQGlmICghIWxlZnRDb250ZW50SWNvbigpICYmICFsZWZ0Q29udGVudEltYWdlKCkpIHtcbiAgICAgICAgPHNlY3Rpb25cbiAgICAgICAgICB0YWJpbmRleD1cIjBcIlxuICAgICAgICAgIGNsYXNzPVwiYm1iX2NhcmRfYnV0dG9uLWhlYWRlclwiXG4gICAgICAgICAgKGNsaWNrKT1cImhhbmRsZVRpdGxlQ2xpY2soJGV2ZW50KVwiXG4gICAgICAgID5cbiAgICAgICAgICA8aDIgY2xhc3M9XCJibWJfY2FyZF9idXR0b24taGVhZGVyLXRleHRcIj57eyB0aXRsZSgpIH19PC9oMj5cbiAgICAgICAgICA8Ym1iLWljb25cbiAgICAgICAgICAgIFtpY29uXT1cImljb24oKVwiXG4gICAgICAgICAgICBbc2l6ZV09XCIxNlwiXG4gICAgICAgICAgICBjbGFzcz1cImJtYl9jYXJkX2J1dHRvbi1oZWFkZXItaWNvblwiXG4gICAgICAgICAgLz5cbiAgICAgICAgPC9zZWN0aW9uPlxuICAgICAgfVxuXG4gICAgICBAaWYgKFxuICAgICAgICAobGVmdENvbnRlbnQoKSAmJlxuICAgICAgICAgICFsZWZ0Q29udGVudEljb24oKSAmJlxuICAgICAgICAgIGxlZnRDb250ZW50SW1hZ2UoKSAmJlxuICAgICAgICAgIHRleHRMaW5rKCkpIHx8XG4gICAgICAgIGJvZHkoKVxuICAgICAgKSB7XG4gICAgICAgIDxzZWN0aW9uIGNsYXNzPVwiYm1iX2NhcmRfYnV0dG9uLWJvZHlcIj5cbiAgICAgICAgICB7eyBib2R5KCkgfX1cblxuICAgICAgICAgIEBpZiAoXG4gICAgICAgICAgICBsZWZ0Q29udGVudCgpICYmXG4gICAgICAgICAgICAhbGVmdENvbnRlbnRJY29uKCkgJiZcbiAgICAgICAgICAgIGxlZnRDb250ZW50SW1hZ2UoKSAmJlxuICAgICAgICAgICAgdGV4dExpbmsoKVxuICAgICAgICAgICkge1xuICAgICAgICAgICAgPGJtYi10ZXh0LWxpbmtcbiAgICAgICAgICAgICAgW3RleHRMaW5rXT1cInRleHRMaW5rKCk/LmxhYmVsIVwiXG4gICAgICAgICAgICAgIGljb249XCJcIlxuICAgICAgICAgICAgICBbbGlua109XCJ0ZXh0TGluaygpPy5saW5rIVwiXG4gICAgICAgICAgICAgIFt0YXJnZXRdPVwidGV4dExpbmsoKT8udGFyZ2V0IVwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgIH1cbiAgICAgICAgPC9zZWN0aW9uPlxuICAgICAgfVxuICAgICAgPGRpdiBjbGFzcz1cImJtYl9jYXJkX2J1dHRvbi1jdXN0b20tY29udGVudFwiPlxuICAgICAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImN1c3RvbUNvbnRlbnRcIiAvPlxuICAgICAgPC9kaXY+XG4gICAgPC9zZWN0aW9uPlxuICB9IEBlbHNlIHtcbiAgICA8YnV0dG9uXG4gICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgIGNsYXNzPVwiYm1iX2NhcmRfYnV0dG9uLWFkZFwiXG4gICAgICAoY2xpY2spPVwiaGFuZGxlQWRkQ29udGVudCgkZXZlbnQpXCJcbiAgICA+XG4gICAgICA8Ym1iLWljb25cbiAgICAgICAgW2ljb25dPVwiaWNvbigpXCJcbiAgICAgICAgW3NpemVdPVwiNDhcIlxuICAgICAgICBjbGFzcz1cImJtYl9jYXJkX2J1dHRvbi1hZGQtaWNvblwiXG4gICAgICAgIFtpc0ZpbGxdPVwiZmFsc2VcIlxuICAgICAgICBbYWx0XT1cInRpdGxlKClcIlxuICAgICAgLz5cbiAgICAgIDxkaXYgY2xhc3M9XCJibWJfY2FyZF9idXR0b24tYWRkLXRpdGxlXCI+e3sgdGl0bGUoKSB9fTwvZGl2PlxuICAgIDwvYnV0dG9uPlxuICB9XG48L3NlY3Rpb24+XG4iXX0=
76
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm1iLWNhcmQtYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RzLW5nL3NyYy9saWIvY29tcG9uZW50cy9ibWItY2FyZC1idXR0b24vYm1iLWNhcmQtYnV0dG9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RzLW5nL3NyYy9saWIvY29tcG9uZW50cy9ibWItY2FyZC1idXR0b24vYm1iLWNhcmQtYnV0dG9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsS0FBSyxFQUNMLE1BQU0sRUFDTix1QkFBdUIsRUFDdkIsaUJBQWlCLEVBRWpCLFlBQVksR0FDYixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBRXJFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBUTVGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBDQUEwQyxDQUFDOzs7QUE4QmhGLE1BQU0sT0FBTyxzQkFBc0I7SUFoQm5DO1FBaUJFLHNCQUFpQixHQUFHLEtBQUssQ0FBVSxJQUFJLENBQUMsQ0FBQztRQUN6QyxVQUFLLEdBQUcsS0FBSyxDQUFTLEVBQUUsQ0FBQyxDQUFDO1FBQzFCLFNBQUksR0FBRyxLQUFLLENBQVMsRUFBRSxDQUFDLENBQUM7UUFDekIsVUFBSyxHQUFHLEtBQUssRUFBaUIsQ0FBQztRQUMvQixTQUFJLEdBQUcsS0FBSyxDQUFTLEVBQUUsQ0FBQyxDQUFDO1FBQ3pCLG9CQUFlLEdBQUcsS0FBSyxDQUFTLEVBQUUsQ0FBQyxDQUFDO1FBQ3BDLHFCQUFnQixHQUFHLEtBQUssRUFBaUIsQ0FBQztRQUMxQyxnQkFBVyxHQUFHLEtBQUssQ0FBVSxLQUFLLENBQUMsQ0FBQztRQUNwQyxZQUFPLEdBQUcsS0FBSyxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBQ2hDLGNBQVMsR0FBRyxLQUFLLENBQWtCLEVBQUUsQ0FBQyxDQUFDO1FBQ3ZDLGlCQUFZLEdBQTRCLElBQUksQ0FBQyxDQUFDLFlBQVk7UUFDMUQsZUFBVSxHQUFHLEtBQUssQ0FBVSxLQUFLLENBQUMsQ0FBQztRQUNuQyxhQUFRLEdBQUcsS0FBSyxFQUF5QixDQUFDO1FBRTFDLHNCQUFpQixHQUFHLE1BQU0sRUFBOEIsQ0FBQztRQUN6RCxpQkFBWSxHQUFHLE1BQU0sRUFBOEIsQ0FBQztRQUNwRCxpQkFBWSxHQUFHLE1BQU0sRUFBYyxDQUFDO1FBRXBDLFlBQVk7UUFDWixZQUFPLEdBQUcsS0FBSyxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBQ2hDLFlBQU8sR0FBRyxLQUFLLENBQVMsRUFBRSxDQUFDLENBQUM7UUFDNUIsYUFBUSxHQUFHLEtBQUssRUFBaUIsQ0FBQztRQUNsQyxjQUFTLEdBQUcsS0FBSyxDQUFTLEVBQUUsQ0FBQyxDQUFDO1FBQzlCLGVBQVUsR0FBRyxLQUFLLENBQVMsRUFBRSxDQUFDLENBQUM7UUFDL0IscUJBQWdCLEdBQUcsS0FBSyxDQUFTLEVBQUUsQ0FBQyxDQUFDO1FBRXJDLGNBQVMsR0FBWSxLQUFLLENBQUM7S0ErQjVCO0lBM0JDLFlBQVksQ0FBQyxJQUFZLEVBQUUsU0FBaUI7UUFDMUMsSUFBSSxJQUFJLENBQUMsTUFBTSxHQUFHLFNBQVMsRUFBRSxDQUFDO1lBQzVCLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsU0FBUyxDQUFDLEdBQUcsS0FBSyxDQUFDO1FBQzlDLENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxLQUFpQjtRQUNoQyxJQUFJLENBQUMsU0FBUyxHQUFHLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQztRQUNqQyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBRUQsZ0JBQWdCLENBQUMsS0FBaUM7UUFDaEQsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUVELGdCQUFnQixDQUFDLEtBQWlDO1FBQ2hELElBQ0UsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLEVBQUU7WUFDdkIsSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUNsQixDQUFDLElBQUksQ0FBQyxlQUFlLEVBQUU7WUFDdkIsSUFBSSxDQUFDLGdCQUFnQixFQUFFO1lBQ3ZCLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ25CLENBQUMsSUFBSSxDQUFDLGlCQUFpQixFQUFFO1lBRXpCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdkMsQ0FBQzsrR0F6RFUsc0JBQXNCO21HQUF0QixzQkFBc0IsOG9GQ3BEbkMsd3ZLQXlLQSxvalpEL0hJLFlBQVksb1NBQ1osZ0JBQWdCLDZKQUNoQixXQUFXLCtCQUNYLGlCQUFpQixtR0FDakIsd0JBQXdCLDJHQUN4QixvQkFBb0I7OzRGQUtYLHNCQUFzQjtrQkFoQmxDLFNBQVM7K0JBQ0UsaUJBQWlCLGNBQ2YsSUFBSSxXQUdQO3dCQUNQLFlBQVk7d0JBQ1osZ0JBQWdCO3dCQUNoQixXQUFXO3dCQUNYLGlCQUFpQjt3QkFDakIsd0JBQXdCO3dCQUN4QixvQkFBb0I7cUJBQ3JCLG1CQUNnQix1QkFBdUIsQ0FBQyxNQUFNLGlCQUNoQyxpQkFBaUIsQ0FBQyxJQUFJOzhCQStCTixhQUFhO3NCQUEzQyxZQUFZO3VCQUFDLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIGlucHV0LFxuICBvdXRwdXQsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbiAgVGVtcGxhdGVSZWYsXG4gIENvbnRlbnRDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBCbWJJY29uQ29tcG9uZW50IH0gZnJvbSAnLi4vYm1iLWljb24vYm1iLWljb24uY29tcG9uZW50JztcbmltcG9ydCB7IEJtYkJhZGdlQ29tcG9uZW50IH0gZnJvbSAnLi4vYm1iLWJhZGdlL2JtYi1iYWRnZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgSUJibUJnQXBwZWFyYW5jZSB9IGZyb20gJy4uL2JtYi1hZHZlcnRpc2VtZW50LWNhcmQvdHlwZXMnO1xuaW1wb3J0IHsgQm1iRHJvcGRvd25NZW51Q29tcG9uZW50IH0gZnJvbSAnLi4vYm1iLWRyb3Bkb3duLW1lbnUvYm1iLWRyb3Bkb3duLW1lbnUuY29tcG9uZW50JztcblxuaW1wb3J0IHtcbiAgSUJtYkJhZGdlSW5mbyxcbiAgSUJtYkltYWdlSW5mbyxcbiAgSUJtYkxpbmtDb25maWd1cmF0aW9uLFxuICBJRHJvcGRvd25JdGVtLFxufSBmcm9tICcuLi8uLi90eXBlcyc7XG5pbXBvcnQgeyBCbWJUZXh0TGlua0NvbXBvbmVudCB9IGZyb20gJy4uL2JtYi10ZXh0LWxpbmsvYm1iLXRleHQtbGluay5jb21wb25lbnQnO1xuXG5leHBvcnQgaW50ZXJmYWNlIElDYXJkQnV0dG9uIHtcbiAgdGl0bGU6IHN0cmluZztcbiAgYm9keT86IHN0cmluZztcbiAgYmFkZ2U/OiB7IHRleHQ6IHN0cmluZzsgYXBwZWFyYW5jZTogSUJibUJnQXBwZWFyYW5jZSB9O1xuICBpY29uPzogc3RyaW5nO1xuICBsZWZ0Q29udGVudEljb24/OiBzdHJpbmc7XG4gIGxlZnRDb250ZW50SW1hZ2U/OiBJQm1iSW1hZ2VJbmZvO1xuICBsZWZ0Q29udGVudD86IGJvb2xlYW47XG4gIGhhc01lbnU/OiBib29sZWFuO1xuICBtZW51SXRlbXM/OiBJRHJvcGRvd25JdGVtW107XG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JtYi1jYXJkLWJ1dHRvbicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHRlbXBsYXRlVXJsOiAnLi9ibWItY2FyZC1idXR0b24uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vYm1iLWNhcmQtYnV0dG9uLmNvbXBvbmVudC5zY3NzJyxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBCbWJJY29uQ29tcG9uZW50LFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIEJtYkJhZGdlQ29tcG9uZW50LFxuICAgIEJtYkRyb3Bkb3duTWVudUNvbXBvbmVudCxcbiAgICBCbWJUZXh0TGlua0NvbXBvbmVudCxcbiAgXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG59KVxuZXhwb3J0IGNsYXNzIEJtYkNhcmRCdXR0b25Db21wb25lbnQge1xuICBpc0Z1bGxJbnRlcmFjdGl2ZSA9IGlucHV0PGJvb2xlYW4+KHRydWUpO1xuICB0aXRsZSA9IGlucHV0PHN0cmluZz4oJycpO1xuICBib2R5ID0gaW5wdXQ8c3RyaW5nPignJyk7XG4gIGJhZGdlID0gaW5wdXQ8SUJtYkJhZGdlSW5mbz4oKTtcbiAgaWNvbiA9IGlucHV0PHN0cmluZz4oJycpO1xuICBsZWZ0Q29udGVudEljb24gPSBpbnB1dDxzdHJpbmc+KCcnKTtcbiAgbGVmdENvbnRlbnRJbWFnZSA9IGlucHV0PElCbWJJbWFnZUluZm8+KCk7XG4gIGxlZnRDb250ZW50ID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xuICBoYXNNZW51ID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xuICBtZW51SXRlbXMgPSBpbnB1dDxJRHJvcGRvd25JdGVtW10+KFtdKTtcbiAgaWNvblRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+IHwgbnVsbCA9IG51bGw7IC8vRGVwcmVjYXRlZFxuICBpc1RlbXBsYXRlID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xuICB0ZXh0TGluayA9IGlucHV0PElCbWJMaW5rQ29uZmlndXJhdGlvbj4oKTtcblxuICBvbkFkZENvbnRlbnRDbGljayA9IG91dHB1dDxNb3VzZUV2ZW50IHwgS2V5Ym9hcmRFdmVudD4oKTtcbiAgb25UaXRsZUNsaWNrID0gb3V0cHV0PE1vdXNlRXZlbnQgfCBLZXlib2FyZEV2ZW50PigpO1xuICBvblNtYWxsQ2xpY2sgPSBvdXRwdXQ8TW91c2VFdmVudD4oKTtcblxuICAvL1NtYWxsIGNhcmRcbiAgaXNTbWFsbCA9IGlucHV0PGJvb2xlYW4+KGZhbHNlKTtcbiAgYm90SWNvbiA9IGlucHV0PHN0cmluZz4oJycpO1xuICBib3RJbWFnZSA9IGlucHV0PElCbWJJbWFnZUluZm8+KCk7XG4gIHNtYWxsSWNvbiA9IGlucHV0PHN0cmluZz4oJycpO1xuICBzbWFsbFRpdGxlID0gaW5wdXQ8c3RyaW5nPignJyk7XG4gIHNtYWxsRGVzY3JpcHRpb24gPSBpbnB1dDxzdHJpbmc+KCcnKTtcblxuICBpc0ZsaXBwZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBAQ29udGVudENoaWxkKCdjdXN0b21Db250ZW50JykgY3VzdG9tQ29udGVudCE6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgdHJ1bmNhdGVUZXh0KHRleHQ6IHN0cmluZywgbWF4TGVuZ3RoOiBudW1iZXIpOiBzdHJpbmcge1xuICAgIGlmICh0ZXh0Lmxlbmd0aCA+IG1heExlbmd0aCkge1xuICAgICAgcmV0dXJuIHRleHQuc3Vic3RyaW5nKDAsIG1heExlbmd0aCkgKyAnLi4uJztcbiAgICB9XG4gICAgcmV0dXJuIHRleHQ7XG4gIH1cblxuICBoYW5kbGVTbWFsbENsaWNrKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5pc0ZsaXBwZWQgPSAhdGhpcy5pc0ZsaXBwZWQ7XG4gICAgdGhpcy5vblNtYWxsQ2xpY2suZW1pdChldmVudCk7XG4gIH1cblxuICBoYW5kbGVUaXRsZUNsaWNrKGV2ZW50OiBNb3VzZUV2ZW50IHwgS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xuICAgIHRoaXMub25UaXRsZUNsaWNrLmVtaXQoZXZlbnQpO1xuICB9XG5cbiAgaGFuZGxlQWRkQ29udGVudChldmVudDogTW91c2VFdmVudCB8IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAoXG4gICAgICAodGhpcy5pc0Z1bGxJbnRlcmFjdGl2ZSgpICYmXG4gICAgICAgIHRoaXMubGVmdENvbnRlbnQoKSAmJlxuICAgICAgICAhdGhpcy5sZWZ0Q29udGVudEljb24oKSAmJlxuICAgICAgICB0aGlzLmxlZnRDb250ZW50SW1hZ2UoKSAmJlxuICAgICAgICAhdGhpcy50ZXh0TGluaygpKSB8fFxuICAgICAgIXRoaXMuaXNGdWxsSW50ZXJhY3RpdmUoKVxuICAgIClcbiAgICAgIHRoaXMub25BZGRDb250ZW50Q2xpY2suZW1pdChldmVudCk7XG4gIH1cbn1cbiIsIjxzZWN0aW9uIGNsYXNzPVwiYm1iX2NhcmRfYnV0dG9uXCI+XG4gIEBpZiAoaXNTbWFsbCgpKSB7XG4gICAgPGJ1dHRvblxuICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICBjbGFzcz1cImJtYl9jYXJkX2J1dHRvbi1zbWFsbFwiXG4gICAgICBbbmdDbGFzc109XCJ7ICdibWJfY2FyZF9idXR0b24tc21hbGwtZmxpcHBlZCc6IGlzRmxpcHBlZCB9XCJcbiAgICAgIChjbGljayk9XCJoYW5kbGVTbWFsbENsaWNrKCRldmVudClcIlxuICAgID5cbiAgICAgIDxkaXYgY2xhc3M9XCJibWJfY2FyZF9idXR0b24tc21hbGwtZnJvbnRcIj5cbiAgICAgICAgPGJtYi1pY29uXG4gICAgICAgICAgW2ljb25dPVwic21hbGxJY29uKClcIlxuICAgICAgICAgIFtzaXplXT1cIjI0XCJcbiAgICAgICAgICBjbGFzcz1cImJtYl9jYXJkX2J1dHRvbi1zbWFsbC10b3AtaWNvblwiXG4gICAgICAgICAgYWx0PVwiU21hbGwgaWNvblwiXG4gICAgICAgIC8+XG4gICAgICAgIDxpbWdcbiAgICAgICAgICBbc3JjXT1cImJvdEltYWdlKCk/LnNyY1wiXG4gICAgICAgICAgW2FsdF09XCJib3RJbWFnZSgpPy5hbHRcIlxuICAgICAgICAgIGNsYXNzPVwiYm1iX2NhcmRfYnV0dG9uLXNtYWxsLWJvdC1pY29uXCJcbiAgICAgICAgLz5cbiAgICAgICAgPGgzIGNsYXNzPVwiYm1iX2NhcmRfYnV0dG9uLXNtYWxsLXRpdGxlXCI+e3sgc21hbGxUaXRsZSgpIH19PC9oMz5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImJtYl9jYXJkX2J1dHRvbi1zbWFsbC1iYWNrXCI+XG4gICAgICAgIDxibWItaWNvblxuICAgICAgICAgIGljb249XCJjbG9zZVwiXG4gICAgICAgICAgW3NpemVdPVwiMjRcIlxuICAgICAgICAgIGNsYXNzPVwiYm1iX2NhcmRfYnV0dG9uLXNtYWxsLWNsb3NlLWljb25cIlxuICAgICAgICAvPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYm1iX2NhcmRfYnV0dG9uLXNtYWxsLXRleHRcIj5cbiAgICAgICAgICB7eyBzbWFsbERlc2NyaXB0aW9uKCkgfX1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2J1dHRvbj5cbiAgfSBAZWxzZSBpZiAoaXNGdWxsSW50ZXJhY3RpdmUoKSkge1xuICAgIDxzZWN0aW9uXG4gICAgICB0YWJpbmRleD1cIjBcIlxuICAgICAgY2xhc3M9XCJibWJfY2FyZF9idXR0b24td3JhcHBlclwiXG4gICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICdibWJfY2FyZF9idXR0b24td3JhcHBlci1idXR0b24nOlxuICAgICAgICAgIGxlZnRDb250ZW50KCkgJiZcbiAgICAgICAgICAhbGVmdENvbnRlbnRJY29uKCkgJiZcbiAgICAgICAgICBsZWZ0Q29udGVudEltYWdlKCkgJiZcbiAgICAgICAgICAhdGV4dExpbmsoKVxuICAgICAgfVwiXG4gICAgICBhcmlhLWxhYmVsPVwiYnV0dG9uXCJcbiAgICAgIChjbGljayk9XCJoYW5kbGVBZGRDb250ZW50KCRldmVudClcIlxuICAgICAgKGtleXByZXNzKT1cImhhbmRsZUFkZENvbnRlbnQoJGV2ZW50KVwiXG4gICAgPlxuICAgICAgQGlmIChsZWZ0Q29udGVudCgpIHx8IGlzVGVtcGxhdGUoKSB8fCBoYXNNZW51KCkpIHtcbiAgICAgICAgPHNlY3Rpb24gY2xhc3M9XCJibWJfY2FyZF9idXR0b24tYm94XCI+XG4gICAgICAgICAgQGlmIChsZWZ0Q29udGVudCgpKSB7XG4gICAgICAgICAgICA8c2VjdGlvblxuICAgICAgICAgICAgICBjbGFzcz1cImJtYl9jYXJkX2J1dHRvbi1sZWZ0XCJcbiAgICAgICAgICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAgICAgICAgICdibWJfY2FyZF9idXR0b24tdG9wLWhlYWRlcic6ICFsZWZ0Q29udGVudEljb24oKSxcbiAgICAgICAgICAgICAgICAnYm1iX2NhcmRfYnV0dG9uLXRvcC1oZWFkZXItc3RhcnQnOlxuICAgICAgICAgICAgICAgICAgIWxlZnRDb250ZW50SWNvbigpICYmICEhYmFkZ2UoKVxuICAgICAgICAgICAgICB9XCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgQGlmICghIWxlZnRDb250ZW50SWNvbigpKSB7XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImJtYl9jYXJkX2J1dHRvbi1jaXJjbGVcIj5cbiAgICAgICAgICAgICAgICAgIDxibWItaWNvblxuICAgICAgICAgICAgICAgICAgICBbaWNvbl09XCJsZWZ0Q29udGVudEljb24oKVwiXG4gICAgICAgICAgICAgICAgICAgIFtzaXplXT1cIjMyXCJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJibWJfY2FyZF9idXR0b24tY2lyY2xlLWljb25cIlxuICAgICAgICAgICAgICAgICAgICBbYWx0XT1cInRpdGxlKClcIlxuICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICAgICAgPGltZ1xuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJibWJfY2FyZF9idXR0b24tdG9wLWhlYWRlci1pbWFnZVwiXG4gICAgICAgICAgICAgICAgICBbc3JjXT1cImxlZnRDb250ZW50SW1hZ2UoKT8uc3JjXCJcbiAgICAgICAgICAgICAgICAgIFthbHRdPVwibGVmdENvbnRlbnRJbWFnZSgpPy5hbHRcIlxuICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9XCJibWJfY2FyZF9idXR0b24tdG9wLWhlYWRlci1jb250YWluZXJcIj5cbiAgICAgICAgICAgICAgICAgIEBpZiAoISFiYWRnZSgpKSB7XG4gICAgICAgICAgICAgICAgICAgIDxibWItYmFkZ2VcbiAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJtYl9jYXJkX2J1dHRvbi10b3AtaGVhZGVyLWNvbnRhaW5lci10aXRsZVwiXG4gICAgICAgICAgICAgICAgICAgICAgW3RleHRdPVwiYmFkZ2UoKT8udGV4dCFcIlxuICAgICAgICAgICAgICAgICAgICAgIFthcHBlYXJhbmNlXT1cImJhZGdlKCk/LmFwcGVhcmFuY2UgPz8gJ25vcm1hbCdcIlxuICAgICAgICAgICAgICAgICAgICAgIFtjb250YWluZXJdPVwiYmFkZ2UoKT8uY29udGFpbmVyID8/IHRydWVcIlxuICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgPGgyIGNsYXNzPVwiYm1iX2NhcmRfYnV0dG9uLXRvcC1oZWFkZXItY29udGFpbmVyLXRpdGxlXCI+XG4gICAgICAgICAgICAgICAgICAgIHt7IHRpdGxlKCkgfX1cbiAgICAgICAgICAgICAgICAgIDwvaDI+XG4gICAgICAgICAgICAgICAgPC9zZWN0aW9uPlxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA8L3NlY3Rpb24+XG4gICAgICAgICAgfVxuICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPVwiYm1iX2NhcmRfYnV0dG9uLWxlYWRpbmdcIj5cbiAgICAgICAgICAgIEBpZiAoaXNUZW1wbGF0ZSgpKSB7XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJibWJfY2FyZF9idXR0b24tdGVtcGxhdGVcIj5cbiAgICAgICAgICAgICAgICA8bmctY29udGVudCAvPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGlmIChoYXNNZW51KCkpIHtcbiAgICAgICAgICAgICAgPGJtYi1kcm9wZG93bi1tZW51XG4gICAgICAgICAgICAgICAgY2xhc3M9XCJibWJfY2FyZF9idXR0b24tbWVudVwiXG4gICAgICAgICAgICAgICAgW2l0ZW1zXT1cIm1lbnVJdGVtcygpXCJcbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICA8L3NlY3Rpb24+XG4gICAgICAgIDwvc2VjdGlvbj5cbiAgICAgIH1cbiAgICAgIEBpZiAoISFsZWZ0Q29udGVudEljb24oKSAmJiAhbGVmdENvbnRlbnRJbWFnZSgpKSB7XG4gICAgICAgIDxzZWN0aW9uXG4gICAgICAgICAgdGFiaW5kZXg9XCIwXCJcbiAgICAgICAgICBjbGFzcz1cImJtYl9jYXJkX2J1dHRvbi1oZWFkZXJcIlxuICAgICAgICAgIChjbGljayk9XCJoYW5kbGVUaXRsZUNsaWNrKCRldmVudClcIlxuICAgICAgICAgIGFyaWEtbGFiZWw9XCJidXR0b25cIlxuICAgICAgICAgIChrZXlwcmVzcyk9XCJoYW5kbGVUaXRsZUNsaWNrKCRldmVudClcIlxuICAgICAgICA+XG4gICAgICAgICAgPGgyIGNsYXNzPVwiYm1iX2NhcmRfYnV0dG9uLWhlYWRlci10ZXh0XCI+e3sgdGl0bGUoKSB9fTwvaDI+XG4gICAgICAgICAgPGJtYi1pY29uXG4gICAgICAgICAgICBbaWNvbl09XCJpY29uKClcIlxuICAgICAgICAgICAgW3NpemVdPVwiMTZcIlxuICAgICAgICAgICAgY2xhc3M9XCJibWJfY2FyZF9idXR0b24taGVhZGVyLWljb25cIlxuICAgICAgICAgIC8+XG4gICAgICAgIDwvc2VjdGlvbj5cbiAgICAgIH1cblxuICAgICAgQGlmIChcbiAgICAgICAgKGxlZnRDb250ZW50KCkgJiZcbiAgICAgICAgICAhbGVmdENvbnRlbnRJY29uKCkgJiZcbiAgICAgICAgICBsZWZ0Q29udGVudEltYWdlKCkgJiZcbiAgICAgICAgICB0ZXh0TGluaygpKSB8fFxuICAgICAgICBib2R5KClcbiAgICAgICkge1xuICAgICAgICA8c2VjdGlvbiBjbGFzcz1cImJtYl9jYXJkX2J1dHRvbi1ib2R5XCI+XG4gICAgICAgICAge3sgYm9keSgpIH19XG5cbiAgICAgICAgICBAaWYgKFxuICAgICAgICAgICAgbGVmdENvbnRlbnQoKSAmJlxuICAgICAgICAgICAgIWxlZnRDb250ZW50SWNvbigpICYmXG4gICAgICAgICAgICBsZWZ0Q29udGVudEltYWdlKCkgJiZcbiAgICAgICAgICAgIHRleHRMaW5rKClcbiAgICAgICAgICApIHtcbiAgICAgICAgICAgIDxibWItdGV4dC1saW5rXG4gICAgICAgICAgICAgIFt0ZXh0TGlua109XCJ0ZXh0TGluaygpPy5sYWJlbCFcIlxuICAgICAgICAgICAgICBpY29uPVwiXCJcbiAgICAgICAgICAgICAgW2xpbmtdPVwidGV4dExpbmsoKT8ubGluayFcIlxuICAgICAgICAgICAgICBbdGFyZ2V0XT1cInRleHRMaW5rKCk/LnRhcmdldCFcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICB9XG4gICAgICAgIDwvc2VjdGlvbj5cbiAgICAgIH1cbiAgICAgIDxkaXYgY2xhc3M9XCJibWJfY2FyZF9idXR0b24tY3VzdG9tLWNvbnRlbnRcIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJjdXN0b21Db250ZW50XCIgLz5cbiAgICAgIDwvZGl2PlxuICAgIDwvc2VjdGlvbj5cbiAgfSBAZWxzZSB7XG4gICAgPGJ1dHRvblxuICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICBjbGFzcz1cImJtYl9jYXJkX2J1dHRvbi1hZGRcIlxuICAgICAgKGNsaWNrKT1cImhhbmRsZUFkZENvbnRlbnQoJGV2ZW50KVwiXG4gICAgPlxuICAgICAgPGJtYi1pY29uXG4gICAgICAgIFtpY29uXT1cImljb24oKVwiXG4gICAgICAgIFtzaXplXT1cIjQ4XCJcbiAgICAgICAgY2xhc3M9XCJibWJfY2FyZF9idXR0b24tYWRkLWljb25cIlxuICAgICAgICBbaXNGaWxsXT1cImZhbHNlXCJcbiAgICAgICAgW2FsdF09XCJ0aXRsZSgpXCJcbiAgICAgIC8+XG4gICAgICA8ZGl2IGNsYXNzPVwiYm1iX2NhcmRfYnV0dG9uLWFkZC10aXRsZVwiPnt7IHRpdGxlKCkgfX08L2Rpdj5cbiAgICA8L2J1dHRvbj5cbiAgfVxuPC9zZWN0aW9uPlxuIl19