@agorapulse/ui-components 17.0.0-beta.1 → 17.0.0-beta.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/agorapulse-ui-components-17.0.0-beta.3.tgz +0 -0
- package/button/button.component.d.ts +1 -1
- package/checkbox/checkbox.component.d.ts +2 -2
- package/confirm-modal/public_api.d.ts +1 -1
- package/datepicker/datepicker.component.d.ts +1 -1
- package/directives/equal-validator.directive.d.ts +1 -1
- package/esm2022/add-comment/add-comment.component.mjs +4 -3
- package/esm2022/autocomplete/autocomplete.component.mjs +3 -6
- package/esm2022/avatar/avatar.component.mjs +4 -7
- package/esm2022/button/button.component.mjs +5 -6
- package/esm2022/checkbox/checkbox.component.mjs +6 -7
- package/esm2022/confirm-modal/confirm-modal.component.mjs +2 -2
- package/esm2022/confirm-modal/public_api.mjs +2 -2
- package/esm2022/datepicker/datepicker.component.mjs +4 -5
- package/esm2022/directives/equal-validator.directive.mjs +2 -2
- package/esm2022/directives/multi-style-text.directive.mjs +1 -1
- package/esm2022/directives/truncate-tooltip.directive.mjs +1 -1
- package/esm2022/dots-stepper/dots-stepper.component.mjs +4 -4
- package/esm2022/icon-button/icon-button.component.mjs +3 -4
- package/esm2022/index.mjs +21 -23
- package/esm2022/infobox/infobox.component.mjs +15 -5
- package/esm2022/labels/label-list.component.mjs +4 -5
- package/esm2022/labels/label.component.mjs +6 -7
- package/esm2022/labels-selector/labels-selector.component.mjs +18 -9
- package/esm2022/legacy/input/input.component.mjs +6 -7
- package/esm2022/legacy/select/public_api.mjs +1 -1
- package/esm2022/legacy/select/select.component.mjs +5 -7
- package/esm2022/legacy/textarea/textarea.component.mjs +6 -7
- package/esm2022/media-display-overlay/media-display-overlay-dialog.component.mjs +3 -4
- package/esm2022/modal/modal.component.mjs +4 -4
- package/esm2022/neo-datepicker/neo-datepicker.component.mjs +5 -7
- package/esm2022/neo-datepicker/public_api.mjs +2 -2
- package/esm2022/paginator/paginator.component.mjs +4 -14
- package/esm2022/paginator/public_api.mjs +2 -2
- package/esm2022/password-input/password-input.component.mjs +4 -3
- package/esm2022/popmenu/popmenu.component.mjs +5 -6
- package/esm2022/popmenu/popmenu.directive.mjs +8 -8
- package/esm2022/popmenu/popmenu.module.mjs +2 -2
- package/esm2022/popmenu/public_api.mjs +2 -2
- package/esm2022/radio/public_api.mjs +2 -2
- package/esm2022/radio/radio.component.mjs +4 -5
- package/esm2022/range-slider/range-slider.component.mjs +17 -17
- package/esm2022/select/dropdown-group-item/dropdown-group-item.component.mjs +3 -4
- package/esm2022/select/dropdown-item-multiple-one-line/dropdown-item-multiple-one-line.component.mjs +3 -4
- package/esm2022/select/dropdown-item-multiple-two-lines/dropdown-item-multiple-two-lines.component.mjs +3 -4
- package/esm2022/select/dropdown-item-single-one-line/dropdown-item-single-one-line.component.mjs +3 -4
- package/esm2022/select/dropdown-item-single-two-lines/dropdown-item-single-two-lines.component.mjs +3 -4
- package/esm2022/select/dropdown-search-form/dropdown-search-form.component.mjs +3 -4
- package/esm2022/select/select-label-multiple/select-label-multiple.component.mjs +3 -4
- package/esm2022/select/select-label-single/select-label-single.component.mjs +3 -4
- package/esm2022/slide-toggle/slide-toggle.component.mjs +1 -1
- package/esm2022/snackbars-thread/component/snackbars-thread.component.mjs +35 -26
- package/esm2022/snackbars-thread/model/snackbars-thread.model.mjs +4 -14
- package/esm2022/snackbars-thread/public_api.mjs +2 -2
- package/esm2022/snackbars-thread/service/snackbars-thread.service.mjs +4 -5
- package/esm2022/social-button/social-button.component.mjs +5 -6
- package/esm2022/split-button/split-button.component.mjs +4 -5
- package/esm2022/src/lib/agorapulse-ui-components.module.mjs +1 -4
- package/esm2022/status/status.component.mjs +3 -4
- package/esm2022/status-card/status-card.component.mjs +3 -4
- package/esm2022/stepper/stepper.component.mjs +5 -5
- package/esm2022/tag/tag.component.mjs +3 -4
- package/esm2022/toggle/toggle.component.mjs +4 -5
- package/fesm2022/agorapulse-ui-components-add-comment.mjs +3 -2
- package/fesm2022/agorapulse-ui-components-add-comment.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-autocomplete.mjs +2 -5
- package/fesm2022/agorapulse-ui-components-autocomplete.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-avatar.mjs +3 -6
- package/fesm2022/agorapulse-ui-components-avatar.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-button.mjs +5 -6
- package/fesm2022/agorapulse-ui-components-button.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-checkbox.mjs +5 -6
- package/fesm2022/agorapulse-ui-components-checkbox.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-confirm-modal.mjs +1 -1
- package/fesm2022/agorapulse-ui-components-confirm-modal.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-datepicker.mjs +4 -5
- package/fesm2022/agorapulse-ui-components-datepicker.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-directives.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-dots-stepper.mjs +3 -3
- package/fesm2022/agorapulse-ui-components-dots-stepper.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-icon-button.mjs +2 -3
- package/fesm2022/agorapulse-ui-components-icon-button.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-infobox.mjs +13 -3
- package/fesm2022/agorapulse-ui-components-infobox.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-labels-selector.mjs +17 -8
- package/fesm2022/agorapulse-ui-components-labels-selector.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-labels.mjs +7 -7
- package/fesm2022/agorapulse-ui-components-labels.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-legacy-input.mjs +5 -6
- package/fesm2022/agorapulse-ui-components-legacy-input.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-legacy-select.mjs +4 -6
- package/fesm2022/agorapulse-ui-components-legacy-select.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-legacy-textarea.mjs +5 -6
- package/fesm2022/agorapulse-ui-components-legacy-textarea.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-media-display-overlay.mjs +2 -3
- package/fesm2022/agorapulse-ui-components-media-display-overlay.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-modal.mjs +3 -3
- package/fesm2022/agorapulse-ui-components-modal.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-neo-datepicker.mjs +5 -7
- package/fesm2022/agorapulse-ui-components-neo-datepicker.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-paginator.mjs +4 -14
- package/fesm2022/agorapulse-ui-components-paginator.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-password-input.mjs +1 -0
- package/fesm2022/agorapulse-ui-components-password-input.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-popmenu.mjs +11 -12
- package/fesm2022/agorapulse-ui-components-popmenu.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-radio.mjs +102 -103
- package/fesm2022/agorapulse-ui-components-radio.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-range-slider.mjs +17 -17
- package/fesm2022/agorapulse-ui-components-range-slider.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-select.mjs +16 -17
- package/fesm2022/agorapulse-ui-components-select.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-slide-toggle.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-snackbars-thread.mjs +42 -44
- package/fesm2022/agorapulse-ui-components-snackbars-thread.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-social-button.mjs +5 -6
- package/fesm2022/agorapulse-ui-components-social-button.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-split-button.mjs +4 -5
- package/fesm2022/agorapulse-ui-components-split-button.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-status-card.mjs +2 -3
- package/fesm2022/agorapulse-ui-components-status-card.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-status.mjs +2 -3
- package/fesm2022/agorapulse-ui-components-status.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-stepper.mjs +3 -3
- package/fesm2022/agorapulse-ui-components-stepper.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-tag.mjs +2 -3
- package/fesm2022/agorapulse-ui-components-tag.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-toggle.mjs +3 -4
- package/fesm2022/agorapulse-ui-components-toggle.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components.mjs +12 -15
- package/fesm2022/agorapulse-ui-components.mjs.map +1 -1
- package/index.d.ts +22 -24
- package/infobox/infobox.component.d.ts +4 -1
- package/labels/label.component.d.ts +1 -2
- package/labels-selector/labels-selector.component.d.ts +3 -0
- package/legacy/input/input.component.d.ts +2 -2
- package/legacy/textarea/textarea.component.d.ts +2 -2
- package/neo-datepicker/public_api.d.ts +1 -1
- package/package.json +68 -68
- package/paginator/public_api.d.ts +1 -1
- package/popmenu/popmenu.directive.d.ts +3 -3
- package/popmenu/public_api.d.ts +1 -1
- package/radio/public_api.d.ts +1 -1
- package/snackbars-thread/component/snackbars-thread.component.d.ts +6 -3
- package/snackbars-thread/model/snackbars-thread.model.d.ts +2 -0
- package/snackbars-thread/public_api.d.ts +1 -1
- package/social-button/social-button.component.d.ts +1 -1
- package/split-button/split-button.component.d.ts +1 -1
- package/src/lib/agorapulse-ui-components.module.d.ts +1 -1
- package/stepper/stepper.component.d.ts +1 -1
- package/agorapulse-ui-components-17.0.0-beta.1.tgz +0 -0
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { ButtonComponent } from '@agorapulse/ui-components/button';
|
|
2
2
|
import { IconButtonComponent } from '@agorapulse/ui-components/icon-button';
|
|
3
3
|
import { SymbolComponent, apArrowButtonLeft, apArrowButtonRight } from '@agorapulse/ui-symbol';
|
|
4
|
-
import { AsyncPipe,
|
|
5
|
-
import { ChangeDetectionStrategy, Component, EventEmitter,
|
|
4
|
+
import { AsyncPipe, NgTemplateOutlet, SlicePipe, TitleCasePipe } from '@angular/common';
|
|
5
|
+
import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, inject } from '@angular/core';
|
|
6
6
|
import dayjs from 'dayjs';
|
|
7
7
|
import 'dayjs/locale/de';
|
|
8
8
|
import 'dayjs/locale/en';
|
|
@@ -203,7 +203,7 @@ export class NeoDatepickerComponent {
|
|
|
203
203
|
}
|
|
204
204
|
}
|
|
205
205
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: NeoDatepickerComponent, deps: [{ token: i1.SymbolRegistry }], target: i0.ɵɵFactoryTarget.Component });
|
|
206
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.3", type: NeoDatepickerComponent, isStandalone: true, selector: "ap-neo-date-picker", inputs: { dayTemplate: "dayTemplate", locale: "locale", maxDate: "maxDate", minDate: "minDate", mode: "mode", selectedDates: "selectedDates", startsOn: "startsOn" }, outputs: { datesSelected: "datesSelected", nextMonth: "nextMonth", previousMonth: "previousMonth" }, providers: [DayDisabledPipe], ngImport: i0, template: "<div class=\"date-picker-container\">\n <div class=\"date-picker\">\n <div class=\"month-navigation\">\n <ap-icon-button\n name=\"neo-date-picker-previous-month\"\n [disabled]=\"!previousMonthAvailable\"\n (click)=\"onPreviousMonth()\">\n <ap-symbol\n symbolId=\"arrow-button-left\"\n size=\"micro\" />\n </ap-icon-button>\n <span>{{ months[currentMonth] | titlecase }} {{ currentYear }}</span>\n <ap-icon-button\n name=\"neo-date-picker-next-month\"\n (click)=\"onNextMonth()\">\n <ap-symbol\n symbolId=\"arrow-button-right\"\n size=\"micro\" />\n </ap-icon-button>\n </div>\n <div class=\"week-header\">\n <ng-container *ngFor=\"let day of weekDays\">\n <div class=\"day\">\n {{ day | slice : 0 : 2 | titlecase }}\n </div>\n </ng-container>\n </div>\n <div class=\"days-container\">\n <ng-container *ngFor=\"let day of currentMonthDates$ | async\">\n <ng-container\n *ngIf=\"dayTemplate\"\n [ngTemplateOutlet]=\"dayTemplate\"\n [ngTemplateOutletContext]=\"{ day: day }\" />\n <ng-container *ngIf=\"!dayTemplate\">\n <div\n class=\"day\"\n [class.disabled]=\"day | dayDisabled : TODAY_TIMESTAMP : minDateTimestamp : maxDateTimestamp\"\n [class.today]=\"day.timestamp === TODAY_TIMESTAMP\"\n [class.selected]=\"selectedDaysTimestamp.has(day.timestamp)\"\n (click)=\"onSelectDay(day)\">\n <span>\n {{ day.date }}\n </span>\n </div>\n </ng-container>\n </ng-container>\n </div>\n </div>\n</div>\n", styles: ["[color=facebook]{color:#0866ff}[bgcolor=facebook],[hcolor=facebook]:hover{background-color:#0866ff}[border=facebook]{border:1px solid #0866ff}[color=google]{color:#4e85e8}[bgcolor=google],[hcolor=google]:hover{background-color:#4e85e8}[border=google]{border:1px solid #4e85e8}[color=instagram]{color:#e1306c}[bgcolor=instagram],[hcolor=instagram]:hover{background-color:#e1306c}[border=instagram]{border:1px solid #e1306c}[color=instagrammagenta]{color:#c13584}[bgcolor=instagrammagenta],[hcolor=instagrammagenta]:hover{background-color:#c13584}[border=instagrammagenta]{border:1px solid #c13584}[color=instagramblue]{color:#5851db}[bgcolor=instagramblue],[hcolor=instagramblue]:hover{background-color:#5851db}[border=instagramblue]{border:1px solid #5851db}[color=instagrampurple]{color:#833ab4}[bgcolor=instagrampurple],[hcolor=instagrampurple]:hover{background-color:#833ab4}[border=instagrampurple]{border:1px solid #833ab4}[color=instagramorange]{color:#f56040}[bgcolor=instagramorange],[hcolor=instagramorange]:hover{background-color:#f56040}[border=instagramorange]{border:1px solid #f56040}[color=instagramyellow]{color:#ffdc80}[bgcolor=instagramyellow],[hcolor=instagramyellow]:hover{background-color:#ffdc80}[border=instagramyellow]{border:1px solid #ffdc80}[color=linkedin]{color:#2c67bc}[bgcolor=linkedin],[hcolor=linkedin]:hover{background-color:#2c67bc}[border=linkedin]{border:1px solid #2c67bc}[color=twitter]{color:#55acee}[bgcolor=twitter],[hcolor=twitter]:hover{background-color:#55acee}[border=twitter]{border:1px solid #55acee}[color=youtube]{color:red}[bgcolor=youtube],[hcolor=youtube]:hover{background-color:red}[border=youtube]{border:1px solid #ff0000}[color=blood-orange]{color:#ff4d00}[bgcolor=blood-orange],[hcolor=blood-orange]:hover{background-color:#ff4d00}[border=blood-orange]{border:1px solid #ff4d00}[color=pinkish-orange]{color:#ff7b49}[bgcolor=pinkish-orange],[hcolor=pinkish-orange]:hover{background-color:#ff7b49}[border=pinkish-orange]{border:1px solid #ff7b49}[color=charcoal-grey]{color:#2a2f34}[bgcolor=charcoal-grey],[hcolor=charcoal-grey]:hover{background-color:#2a2f34}[border=charcoal-grey]{border:1px solid #2a2f34}[color=azure]{color:#00aeef}[bgcolor=azure],[hcolor=azure]:hover{background-color:#00aeef}[border=azure]{border:1px solid #00aeef}[color=light-azure]{color:#eaf5fd}[bgcolor=light-azure],[hcolor=light-azure]:hover{background-color:#eaf5fd}[border=light-azure]{border:1px solid #eaf5fd}[color=blue-grey]{color:#8d98a9}[bgcolor=blue-grey],[hcolor=blue-grey]:hover{background-color:#8d98a9}[border=blue-grey]{border:1px solid #8d98a9}[color=silver]{color:#ced0da}[bgcolor=silver],[hcolor=silver]:hover{background-color:#ced0da}[border=silver]{border:1px solid #ced0da}[color=pale-grey]{color:#dfe3e9}[bgcolor=pale-grey],[hcolor=pale-grey]:hover{background-color:#dfe3e9}[border=pale-grey]{border:1px solid #dfe3e9}[color=grey-white]{color:#f5f7f8}[bgcolor=grey-white],[hcolor=grey-white]:hover{background-color:#f5f7f8}[border=grey-white]{border:1px solid #f5f7f8}[color=cool-grey]{color:#b4bbc6}[bgcolor=cool-grey],[hcolor=cool-grey]:hover{background-color:#b4bbc6}[border=cool-grey]{border:1px solid #b4bbc6}[color=black]{color:#344563}[bgcolor=black],[hcolor=black]:hover{background-color:#344563}[border=black]{border:1px solid #344563}[color=grey-blue]{color:#68768c}[bgcolor=grey-blue],[hcolor=grey-blue]:hover{background-color:#68768c}[border=grey-blue]{border:1px solid #68768c}[color=strawberry]{color:#f4282d}[bgcolor=strawberry],[hcolor=strawberry]:hover{background-color:#f4282d}[border=strawberry]{border:1px solid #f4282d}[color=light-strawberry]{color:#f8eded}[bgcolor=light-strawberry],[hcolor=light-strawberry]:hover{background-color:#f8eded}[border=light-strawberry]{border:1px solid #f8eded}[color=white]{color:#fff}[bgcolor=white],[hcolor=white]:hover{background-color:#fff}[border=white]{border:1px solid #ffffff}[color=cool-green]{color:#33c15d}[bgcolor=cool-green],[hcolor=cool-green]:hover{background-color:#33c15d}[border=cool-green]{border:1px solid #33c15d}[color=light-green]{color:#ebfaef}[bgcolor=light-green],[hcolor=light-green]:hover{background-color:#ebfaef}[border=light-green]{border:1px solid #ebfaef}[color=transparent]{color:transparent}[bgcolor=transparent],[hcolor=transparent]:hover{background-color:transparent}[border=transparent]{border:1px solid transparent}[color=c0]{color:#a566a5}[bgcolor=c0],[hcolor=c0]:hover{background-color:#a566a5}[border=c0]{border:1px solid #a566a5}[color=c1]{color:#c7ab82}[bgcolor=c1],[hcolor=c1]:hover{background-color:#c7ab82}[border=c1]{border:1px solid #c7ab82}[color=c2]{color:#f2713c}[bgcolor=c2],[hcolor=c2]:hover{background-color:#f2713c}[border=c2]{border:1px solid #f2713c}[color=c3]{color:#ffd006}[bgcolor=c3],[hcolor=c3]:hover{background-color:#ffd006}[border=c3]{border:1px solid #ffd006}[color=c4]{color:#94c5aa}[bgcolor=c4],[hcolor=c4]:hover{background-color:#94c5aa}[border=c4]{border:1px solid #94c5aa}[color=c5]{color:#2a9d8f}[bgcolor=c5],[hcolor=c5]:hover{background-color:#2a9d8f}[border=c5]{border:1px solid #2a9d8f}[color=c6]{color:#78acd8}[bgcolor=c6],[hcolor=c6]:hover{background-color:#78acd8}[border=c6]{border:1px solid #78acd8}[color=c7]{color:#525a9e}[bgcolor=c7],[hcolor=c7]:hover{background-color:#525a9e}[border=c7]{border:1px solid #525a9e}[color=c8]{color:#6a2459}[bgcolor=c8],[hcolor=c8]:hover{background-color:#6a2459}[border=c8]{border:1px solid #6a2459}[color=c9]{color:#74729e}[bgcolor=c9],[hcolor=c9]:hover{background-color:#74729e}[border=c9]{border:1px solid #74729e}:host .date-picker-container{display:flex;justify-content:center;align-items:center}:host .date-picker-container .date-picker{width:248px}:host .date-picker-container .date-picker .month-navigation{display:flex;justify-content:space-between;margin-bottom:24px}:host .date-picker-container .date-picker .month-navigation button:disabled{background:transparent}:host .date-picker-container .date-picker .month-navigation button:disabled ap-symbol{color:#d6dae0!important}:host .date-picker-container .date-picker .month-navigation button:disabled:hover{background:transparent!important}:host .date-picker-container .date-picker .month-navigation .left ap-symbol{margin-right:2px}:host .date-picker-container .date-picker .month-navigation .right ap-symbol{margin-left:2px}:host .date-picker-container .date-picker .month-navigation ap-symbol{display:grid;place-content:center}:host .date-picker-container .date-picker .month-navigation button:hover{background:#f5f5f7}:host .date-picker-container .date-picker .month-navigation span{font-style:normal;font-weight:700;font-size:16px;line-height:20px;text-align:center;color:#344563;align-items:center;display:flex}:host .date-picker-container .date-picker .week-header{display:flex;justify-content:space-between;margin-bottom:8px}:host .date-picker-container .date-picker .week-header .day{width:32px;text-align:center;font-weight:700;font-size:12px;line-height:15px;color:#aeb5c1}:host .date-picker-container .date-picker .days-container{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px}:host .date-picker-container .date-picker .days-container .day{font-style:normal;font-weight:400;font-size:14px;line-height:128.7%;text-align:center;width:32px;height:32px;display:flex;justify-content:center;align-items:center;border-radius:100%;position:relative}:host .date-picker-container .date-picker .days-container .day:hover{cursor:pointer}:host .date-picker-container .date-picker .days-container .day:hover:not(.disabled):not(.selected){background:#f5f5f7}:host .date-picker-container .date-picker .days-container .day.today{border:1px #178dfe solid}:host .date-picker-container .date-picker .days-container .day.selected{background:#178dfe;color:#fff!important}:host .date-picker-container .date-picker .days-container .day.selected .bubble{background:#fff!important}:host .date-picker-container .date-picker .days-container .day.disabled{color:#aeb5c1}:host .date-picker-container .date-picker .days-container .day .bubble{width:4px;height:4px;border-radius:100%;bottom:3px;position:absolute;background:#178dfe}\n"], dependencies: [{ kind: "component", type: SymbolComponent, selector: "ap-symbol", inputs: ["color", "symbolId", "size"] }, { kind: "pipe", type: TitleCasePipe, name: "titlecase" }, { kind: "directive", type: NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: SlicePipe, name: "slice" }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: DayDisabledPipe, name: "dayDisabled" }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "component", type: IconButtonComponent, selector: "ap-icon-button", inputs: ["ariaLabel", "name", "color", "disabled", "menuTrigger", "locked", "loading", "type"], outputs: ["onClick", "onFocus", "onBlur", "menuOpened", "menuClosed"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
206
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.3", type: NeoDatepickerComponent, isStandalone: true, selector: "ap-neo-date-picker", inputs: { dayTemplate: "dayTemplate", locale: "locale", maxDate: "maxDate", minDate: "minDate", mode: "mode", selectedDates: "selectedDates", startsOn: "startsOn" }, outputs: { datesSelected: "datesSelected", nextMonth: "nextMonth", previousMonth: "previousMonth" }, providers: [DayDisabledPipe], ngImport: i0, template: "<div class=\"date-picker-container\">\n <div class=\"date-picker\">\n <div class=\"month-navigation\">\n <ap-icon-button\n name=\"neo-date-picker-previous-month\"\n [disabled]=\"!previousMonthAvailable\"\n (click)=\"onPreviousMonth()\">\n <ap-symbol\n symbolId=\"arrow-button-left\"\n size=\"micro\" />\n </ap-icon-button>\n <span>{{ months[currentMonth] | titlecase }} {{ currentYear }}</span>\n <ap-icon-button\n name=\"neo-date-picker-next-month\"\n (click)=\"onNextMonth()\">\n <ap-symbol\n symbolId=\"arrow-button-right\"\n size=\"micro\" />\n </ap-icon-button>\n </div>\n <div class=\"week-header\">\n @for (day of weekDays; track day) {\n <div class=\"day\">\n {{ day | slice: 0 : 2 | titlecase }}\n </div>\n }\n </div>\n <div class=\"days-container\">\n @for (day of currentMonthDates$ | async; track day) {\n @if (dayTemplate) {\n <ng-container\n [ngTemplateOutlet]=\"dayTemplate\"\n [ngTemplateOutletContext]=\"{ day: day }\" />\n }\n @if (!dayTemplate) {\n <div\n class=\"day\"\n [class.disabled]=\"day | dayDisabled: TODAY_TIMESTAMP : minDateTimestamp : maxDateTimestamp\"\n [class.today]=\"day.timestamp === TODAY_TIMESTAMP\"\n [class.selected]=\"selectedDaysTimestamp.has(day.timestamp)\"\n (click)=\"onSelectDay(day)\">\n <span>\n {{ day.date }}\n </span>\n </div>\n }\n }\n </div>\n </div>\n</div>\n", styles: ["[color=facebook]{color:#0866ff}[bgcolor=facebook],[hcolor=facebook]:hover{background-color:#0866ff}[border=facebook]{border:1px solid #0866ff}[color=google]{color:#4e85e8}[bgcolor=google],[hcolor=google]:hover{background-color:#4e85e8}[border=google]{border:1px solid #4e85e8}[color=instagram]{color:#e1306c}[bgcolor=instagram],[hcolor=instagram]:hover{background-color:#e1306c}[border=instagram]{border:1px solid #e1306c}[color=instagrammagenta]{color:#c13584}[bgcolor=instagrammagenta],[hcolor=instagrammagenta]:hover{background-color:#c13584}[border=instagrammagenta]{border:1px solid #c13584}[color=instagramblue]{color:#5851db}[bgcolor=instagramblue],[hcolor=instagramblue]:hover{background-color:#5851db}[border=instagramblue]{border:1px solid #5851db}[color=instagrampurple]{color:#833ab4}[bgcolor=instagrampurple],[hcolor=instagrampurple]:hover{background-color:#833ab4}[border=instagrampurple]{border:1px solid #833ab4}[color=instagramorange]{color:#f56040}[bgcolor=instagramorange],[hcolor=instagramorange]:hover{background-color:#f56040}[border=instagramorange]{border:1px solid #f56040}[color=instagramyellow]{color:#ffdc80}[bgcolor=instagramyellow],[hcolor=instagramyellow]:hover{background-color:#ffdc80}[border=instagramyellow]{border:1px solid #ffdc80}[color=linkedin]{color:#2c67bc}[bgcolor=linkedin],[hcolor=linkedin]:hover{background-color:#2c67bc}[border=linkedin]{border:1px solid #2c67bc}[color=twitter]{color:#55acee}[bgcolor=twitter],[hcolor=twitter]:hover{background-color:#55acee}[border=twitter]{border:1px solid #55acee}[color=youtube]{color:red}[bgcolor=youtube],[hcolor=youtube]:hover{background-color:red}[border=youtube]{border:1px solid #ff0000}[color=blood-orange]{color:#ff4d00}[bgcolor=blood-orange],[hcolor=blood-orange]:hover{background-color:#ff4d00}[border=blood-orange]{border:1px solid #ff4d00}[color=pinkish-orange]{color:#ff7b49}[bgcolor=pinkish-orange],[hcolor=pinkish-orange]:hover{background-color:#ff7b49}[border=pinkish-orange]{border:1px solid #ff7b49}[color=charcoal-grey]{color:#2a2f34}[bgcolor=charcoal-grey],[hcolor=charcoal-grey]:hover{background-color:#2a2f34}[border=charcoal-grey]{border:1px solid #2a2f34}[color=azure]{color:#00aeef}[bgcolor=azure],[hcolor=azure]:hover{background-color:#00aeef}[border=azure]{border:1px solid #00aeef}[color=light-azure]{color:#eaf5fd}[bgcolor=light-azure],[hcolor=light-azure]:hover{background-color:#eaf5fd}[border=light-azure]{border:1px solid #eaf5fd}[color=blue-grey]{color:#8d98a9}[bgcolor=blue-grey],[hcolor=blue-grey]:hover{background-color:#8d98a9}[border=blue-grey]{border:1px solid #8d98a9}[color=silver]{color:#ced0da}[bgcolor=silver],[hcolor=silver]:hover{background-color:#ced0da}[border=silver]{border:1px solid #ced0da}[color=pale-grey]{color:#dfe3e9}[bgcolor=pale-grey],[hcolor=pale-grey]:hover{background-color:#dfe3e9}[border=pale-grey]{border:1px solid #dfe3e9}[color=grey-white]{color:#f5f7f8}[bgcolor=grey-white],[hcolor=grey-white]:hover{background-color:#f5f7f8}[border=grey-white]{border:1px solid #f5f7f8}[color=cool-grey]{color:#b4bbc6}[bgcolor=cool-grey],[hcolor=cool-grey]:hover{background-color:#b4bbc6}[border=cool-grey]{border:1px solid #b4bbc6}[color=black]{color:#344563}[bgcolor=black],[hcolor=black]:hover{background-color:#344563}[border=black]{border:1px solid #344563}[color=grey-blue]{color:#68768c}[bgcolor=grey-blue],[hcolor=grey-blue]:hover{background-color:#68768c}[border=grey-blue]{border:1px solid #68768c}[color=strawberry]{color:#f4282d}[bgcolor=strawberry],[hcolor=strawberry]:hover{background-color:#f4282d}[border=strawberry]{border:1px solid #f4282d}[color=light-strawberry]{color:#f8eded}[bgcolor=light-strawberry],[hcolor=light-strawberry]:hover{background-color:#f8eded}[border=light-strawberry]{border:1px solid #f8eded}[color=white]{color:#fff}[bgcolor=white],[hcolor=white]:hover{background-color:#fff}[border=white]{border:1px solid #ffffff}[color=cool-green]{color:#33c15d}[bgcolor=cool-green],[hcolor=cool-green]:hover{background-color:#33c15d}[border=cool-green]{border:1px solid #33c15d}[color=light-green]{color:#ebfaef}[bgcolor=light-green],[hcolor=light-green]:hover{background-color:#ebfaef}[border=light-green]{border:1px solid #ebfaef}[color=transparent]{color:transparent}[bgcolor=transparent],[hcolor=transparent]:hover{background-color:transparent}[border=transparent]{border:1px solid transparent}[color=c0]{color:#a566a5}[bgcolor=c0],[hcolor=c0]:hover{background-color:#a566a5}[border=c0]{border:1px solid #a566a5}[color=c1]{color:#c7ab82}[bgcolor=c1],[hcolor=c1]:hover{background-color:#c7ab82}[border=c1]{border:1px solid #c7ab82}[color=c2]{color:#f2713c}[bgcolor=c2],[hcolor=c2]:hover{background-color:#f2713c}[border=c2]{border:1px solid #f2713c}[color=c3]{color:#ffd006}[bgcolor=c3],[hcolor=c3]:hover{background-color:#ffd006}[border=c3]{border:1px solid #ffd006}[color=c4]{color:#94c5aa}[bgcolor=c4],[hcolor=c4]:hover{background-color:#94c5aa}[border=c4]{border:1px solid #94c5aa}[color=c5]{color:#2a9d8f}[bgcolor=c5],[hcolor=c5]:hover{background-color:#2a9d8f}[border=c5]{border:1px solid #2a9d8f}[color=c6]{color:#78acd8}[bgcolor=c6],[hcolor=c6]:hover{background-color:#78acd8}[border=c6]{border:1px solid #78acd8}[color=c7]{color:#525a9e}[bgcolor=c7],[hcolor=c7]:hover{background-color:#525a9e}[border=c7]{border:1px solid #525a9e}[color=c8]{color:#6a2459}[bgcolor=c8],[hcolor=c8]:hover{background-color:#6a2459}[border=c8]{border:1px solid #6a2459}[color=c9]{color:#74729e}[bgcolor=c9],[hcolor=c9]:hover{background-color:#74729e}[border=c9]{border:1px solid #74729e}:host .date-picker-container{display:flex;justify-content:center;align-items:center}:host .date-picker-container .date-picker{width:248px}:host .date-picker-container .date-picker .month-navigation{display:flex;justify-content:space-between;margin-bottom:24px}:host .date-picker-container .date-picker .month-navigation button:disabled{background:transparent}:host .date-picker-container .date-picker .month-navigation button:disabled ap-symbol{color:#d6dae0!important}:host .date-picker-container .date-picker .month-navigation button:disabled:hover{background:transparent!important}:host .date-picker-container .date-picker .month-navigation .left ap-symbol{margin-right:2px}:host .date-picker-container .date-picker .month-navigation .right ap-symbol{margin-left:2px}:host .date-picker-container .date-picker .month-navigation ap-symbol{display:grid;place-content:center}:host .date-picker-container .date-picker .month-navigation button:hover{background:#f5f5f7}:host .date-picker-container .date-picker .month-navigation span{font-style:normal;font-weight:700;font-size:16px;line-height:20px;text-align:center;color:#344563;align-items:center;display:flex}:host .date-picker-container .date-picker .week-header{display:flex;justify-content:space-between;margin-bottom:8px}:host .date-picker-container .date-picker .week-header .day{width:32px;text-align:center;font-weight:700;font-size:12px;line-height:15px;color:#aeb5c1}:host .date-picker-container .date-picker .days-container{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px}:host .date-picker-container .date-picker .days-container .day{font-style:normal;font-weight:400;font-size:14px;line-height:128.7%;text-align:center;width:32px;height:32px;display:flex;justify-content:center;align-items:center;border-radius:100%;position:relative}:host .date-picker-container .date-picker .days-container .day:hover{cursor:pointer}:host .date-picker-container .date-picker .days-container .day:hover:not(.disabled):not(.selected){background:#f5f5f7}:host .date-picker-container .date-picker .days-container .day.today{border:1px #178dfe solid}:host .date-picker-container .date-picker .days-container .day.selected{background:#178dfe;color:#fff!important}:host .date-picker-container .date-picker .days-container .day.selected .bubble{background:#fff!important}:host .date-picker-container .date-picker .days-container .day.disabled{color:#aeb5c1}:host .date-picker-container .date-picker .days-container .day .bubble{width:4px;height:4px;border-radius:100%;bottom:3px;position:absolute;background:#178dfe}\n"], dependencies: [{ kind: "component", type: SymbolComponent, selector: "ap-symbol", inputs: ["color", "symbolId", "size"] }, { kind: "pipe", type: TitleCasePipe, name: "titlecase" }, { kind: "pipe", type: SlicePipe, name: "slice" }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: DayDisabledPipe, name: "dayDisabled" }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "component", type: IconButtonComponent, selector: "ap-icon-button", inputs: ["ariaLabel", "name", "color", "disabled", "menuTrigger", "locked", "loading", "type"], outputs: ["onClick", "onFocus", "onBlur", "menuOpened", "menuClosed"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
207
207
|
}
|
|
208
208
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: NeoDatepickerComponent, decorators: [{
|
|
209
209
|
type: Component,
|
|
@@ -211,14 +211,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImpor
|
|
|
211
211
|
SymbolComponent,
|
|
212
212
|
TitleCasePipe,
|
|
213
213
|
ButtonComponent,
|
|
214
|
-
NgForOf,
|
|
215
|
-
NgIf,
|
|
216
214
|
SlicePipe,
|
|
217
215
|
NgTemplateOutlet,
|
|
218
216
|
DayDisabledPipe,
|
|
219
217
|
AsyncPipe,
|
|
220
218
|
IconButtonComponent,
|
|
221
|
-
], standalone: true, template: "<div class=\"date-picker-container\">\n <div class=\"date-picker\">\n <div class=\"month-navigation\">\n <ap-icon-button\n name=\"neo-date-picker-previous-month\"\n [disabled]=\"!previousMonthAvailable\"\n (click)=\"onPreviousMonth()\">\n <ap-symbol\n symbolId=\"arrow-button-left\"\n size=\"micro\" />\n </ap-icon-button>\n <span>{{ months[currentMonth] | titlecase }} {{ currentYear }}</span>\n <ap-icon-button\n name=\"neo-date-picker-next-month\"\n (click)=\"onNextMonth()\">\n <ap-symbol\n symbolId=\"arrow-button-right\"\n size=\"micro\" />\n </ap-icon-button>\n </div>\n <div class=\"week-header\">\n <ng-container *ngFor=\"let day of weekDays\">\n <div class=\"day\">\n {{ day | slice : 0 : 2 | titlecase }}\n </div>\n </ng-container>\n </div>\n <div class=\"days-container\">\n <ng-container *ngFor=\"let day of currentMonthDates$ | async\">\n <ng-container\n *ngIf=\"dayTemplate\"\n [ngTemplateOutlet]=\"dayTemplate\"\n [ngTemplateOutletContext]=\"{ day: day }\" />\n <ng-container *ngIf=\"!dayTemplate\">\n <div\n class=\"day\"\n [class.disabled]=\"day | dayDisabled : TODAY_TIMESTAMP : minDateTimestamp : maxDateTimestamp\"\n [class.today]=\"day.timestamp === TODAY_TIMESTAMP\"\n [class.selected]=\"selectedDaysTimestamp.has(day.timestamp)\"\n (click)=\"onSelectDay(day)\">\n <span>\n {{ day.date }}\n </span>\n </div>\n </ng-container>\n </ng-container>\n </div>\n </div>\n</div>\n", styles: ["[color=facebook]{color:#0866ff}[bgcolor=facebook],[hcolor=facebook]:hover{background-color:#0866ff}[border=facebook]{border:1px solid #0866ff}[color=google]{color:#4e85e8}[bgcolor=google],[hcolor=google]:hover{background-color:#4e85e8}[border=google]{border:1px solid #4e85e8}[color=instagram]{color:#e1306c}[bgcolor=instagram],[hcolor=instagram]:hover{background-color:#e1306c}[border=instagram]{border:1px solid #e1306c}[color=instagrammagenta]{color:#c13584}[bgcolor=instagrammagenta],[hcolor=instagrammagenta]:hover{background-color:#c13584}[border=instagrammagenta]{border:1px solid #c13584}[color=instagramblue]{color:#5851db}[bgcolor=instagramblue],[hcolor=instagramblue]:hover{background-color:#5851db}[border=instagramblue]{border:1px solid #5851db}[color=instagrampurple]{color:#833ab4}[bgcolor=instagrampurple],[hcolor=instagrampurple]:hover{background-color:#833ab4}[border=instagrampurple]{border:1px solid #833ab4}[color=instagramorange]{color:#f56040}[bgcolor=instagramorange],[hcolor=instagramorange]:hover{background-color:#f56040}[border=instagramorange]{border:1px solid #f56040}[color=instagramyellow]{color:#ffdc80}[bgcolor=instagramyellow],[hcolor=instagramyellow]:hover{background-color:#ffdc80}[border=instagramyellow]{border:1px solid #ffdc80}[color=linkedin]{color:#2c67bc}[bgcolor=linkedin],[hcolor=linkedin]:hover{background-color:#2c67bc}[border=linkedin]{border:1px solid #2c67bc}[color=twitter]{color:#55acee}[bgcolor=twitter],[hcolor=twitter]:hover{background-color:#55acee}[border=twitter]{border:1px solid #55acee}[color=youtube]{color:red}[bgcolor=youtube],[hcolor=youtube]:hover{background-color:red}[border=youtube]{border:1px solid #ff0000}[color=blood-orange]{color:#ff4d00}[bgcolor=blood-orange],[hcolor=blood-orange]:hover{background-color:#ff4d00}[border=blood-orange]{border:1px solid #ff4d00}[color=pinkish-orange]{color:#ff7b49}[bgcolor=pinkish-orange],[hcolor=pinkish-orange]:hover{background-color:#ff7b49}[border=pinkish-orange]{border:1px solid #ff7b49}[color=charcoal-grey]{color:#2a2f34}[bgcolor=charcoal-grey],[hcolor=charcoal-grey]:hover{background-color:#2a2f34}[border=charcoal-grey]{border:1px solid #2a2f34}[color=azure]{color:#00aeef}[bgcolor=azure],[hcolor=azure]:hover{background-color:#00aeef}[border=azure]{border:1px solid #00aeef}[color=light-azure]{color:#eaf5fd}[bgcolor=light-azure],[hcolor=light-azure]:hover{background-color:#eaf5fd}[border=light-azure]{border:1px solid #eaf5fd}[color=blue-grey]{color:#8d98a9}[bgcolor=blue-grey],[hcolor=blue-grey]:hover{background-color:#8d98a9}[border=blue-grey]{border:1px solid #8d98a9}[color=silver]{color:#ced0da}[bgcolor=silver],[hcolor=silver]:hover{background-color:#ced0da}[border=silver]{border:1px solid #ced0da}[color=pale-grey]{color:#dfe3e9}[bgcolor=pale-grey],[hcolor=pale-grey]:hover{background-color:#dfe3e9}[border=pale-grey]{border:1px solid #dfe3e9}[color=grey-white]{color:#f5f7f8}[bgcolor=grey-white],[hcolor=grey-white]:hover{background-color:#f5f7f8}[border=grey-white]{border:1px solid #f5f7f8}[color=cool-grey]{color:#b4bbc6}[bgcolor=cool-grey],[hcolor=cool-grey]:hover{background-color:#b4bbc6}[border=cool-grey]{border:1px solid #b4bbc6}[color=black]{color:#344563}[bgcolor=black],[hcolor=black]:hover{background-color:#344563}[border=black]{border:1px solid #344563}[color=grey-blue]{color:#68768c}[bgcolor=grey-blue],[hcolor=grey-blue]:hover{background-color:#68768c}[border=grey-blue]{border:1px solid #68768c}[color=strawberry]{color:#f4282d}[bgcolor=strawberry],[hcolor=strawberry]:hover{background-color:#f4282d}[border=strawberry]{border:1px solid #f4282d}[color=light-strawberry]{color:#f8eded}[bgcolor=light-strawberry],[hcolor=light-strawberry]:hover{background-color:#f8eded}[border=light-strawberry]{border:1px solid #f8eded}[color=white]{color:#fff}[bgcolor=white],[hcolor=white]:hover{background-color:#fff}[border=white]{border:1px solid #ffffff}[color=cool-green]{color:#33c15d}[bgcolor=cool-green],[hcolor=cool-green]:hover{background-color:#33c15d}[border=cool-green]{border:1px solid #33c15d}[color=light-green]{color:#ebfaef}[bgcolor=light-green],[hcolor=light-green]:hover{background-color:#ebfaef}[border=light-green]{border:1px solid #ebfaef}[color=transparent]{color:transparent}[bgcolor=transparent],[hcolor=transparent]:hover{background-color:transparent}[border=transparent]{border:1px solid transparent}[color=c0]{color:#a566a5}[bgcolor=c0],[hcolor=c0]:hover{background-color:#a566a5}[border=c0]{border:1px solid #a566a5}[color=c1]{color:#c7ab82}[bgcolor=c1],[hcolor=c1]:hover{background-color:#c7ab82}[border=c1]{border:1px solid #c7ab82}[color=c2]{color:#f2713c}[bgcolor=c2],[hcolor=c2]:hover{background-color:#f2713c}[border=c2]{border:1px solid #f2713c}[color=c3]{color:#ffd006}[bgcolor=c3],[hcolor=c3]:hover{background-color:#ffd006}[border=c3]{border:1px solid #ffd006}[color=c4]{color:#94c5aa}[bgcolor=c4],[hcolor=c4]:hover{background-color:#94c5aa}[border=c4]{border:1px solid #94c5aa}[color=c5]{color:#2a9d8f}[bgcolor=c5],[hcolor=c5]:hover{background-color:#2a9d8f}[border=c5]{border:1px solid #2a9d8f}[color=c6]{color:#78acd8}[bgcolor=c6],[hcolor=c6]:hover{background-color:#78acd8}[border=c6]{border:1px solid #78acd8}[color=c7]{color:#525a9e}[bgcolor=c7],[hcolor=c7]:hover{background-color:#525a9e}[border=c7]{border:1px solid #525a9e}[color=c8]{color:#6a2459}[bgcolor=c8],[hcolor=c8]:hover{background-color:#6a2459}[border=c8]{border:1px solid #6a2459}[color=c9]{color:#74729e}[bgcolor=c9],[hcolor=c9]:hover{background-color:#74729e}[border=c9]{border:1px solid #74729e}:host .date-picker-container{display:flex;justify-content:center;align-items:center}:host .date-picker-container .date-picker{width:248px}:host .date-picker-container .date-picker .month-navigation{display:flex;justify-content:space-between;margin-bottom:24px}:host .date-picker-container .date-picker .month-navigation button:disabled{background:transparent}:host .date-picker-container .date-picker .month-navigation button:disabled ap-symbol{color:#d6dae0!important}:host .date-picker-container .date-picker .month-navigation button:disabled:hover{background:transparent!important}:host .date-picker-container .date-picker .month-navigation .left ap-symbol{margin-right:2px}:host .date-picker-container .date-picker .month-navigation .right ap-symbol{margin-left:2px}:host .date-picker-container .date-picker .month-navigation ap-symbol{display:grid;place-content:center}:host .date-picker-container .date-picker .month-navigation button:hover{background:#f5f5f7}:host .date-picker-container .date-picker .month-navigation span{font-style:normal;font-weight:700;font-size:16px;line-height:20px;text-align:center;color:#344563;align-items:center;display:flex}:host .date-picker-container .date-picker .week-header{display:flex;justify-content:space-between;margin-bottom:8px}:host .date-picker-container .date-picker .week-header .day{width:32px;text-align:center;font-weight:700;font-size:12px;line-height:15px;color:#aeb5c1}:host .date-picker-container .date-picker .days-container{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px}:host .date-picker-container .date-picker .days-container .day{font-style:normal;font-weight:400;font-size:14px;line-height:128.7%;text-align:center;width:32px;height:32px;display:flex;justify-content:center;align-items:center;border-radius:100%;position:relative}:host .date-picker-container .date-picker .days-container .day:hover{cursor:pointer}:host .date-picker-container .date-picker .days-container .day:hover:not(.disabled):not(.selected){background:#f5f5f7}:host .date-picker-container .date-picker .days-container .day.today{border:1px #178dfe solid}:host .date-picker-container .date-picker .days-container .day.selected{background:#178dfe;color:#fff!important}:host .date-picker-container .date-picker .days-container .day.selected .bubble{background:#fff!important}:host .date-picker-container .date-picker .days-container .day.disabled{color:#aeb5c1}:host .date-picker-container .date-picker .days-container .day .bubble{width:4px;height:4px;border-radius:100%;bottom:3px;position:absolute;background:#178dfe}\n"] }]
|
|
219
|
+
], standalone: true, template: "<div class=\"date-picker-container\">\n <div class=\"date-picker\">\n <div class=\"month-navigation\">\n <ap-icon-button\n name=\"neo-date-picker-previous-month\"\n [disabled]=\"!previousMonthAvailable\"\n (click)=\"onPreviousMonth()\">\n <ap-symbol\n symbolId=\"arrow-button-left\"\n size=\"micro\" />\n </ap-icon-button>\n <span>{{ months[currentMonth] | titlecase }} {{ currentYear }}</span>\n <ap-icon-button\n name=\"neo-date-picker-next-month\"\n (click)=\"onNextMonth()\">\n <ap-symbol\n symbolId=\"arrow-button-right\"\n size=\"micro\" />\n </ap-icon-button>\n </div>\n <div class=\"week-header\">\n @for (day of weekDays; track day) {\n <div class=\"day\">\n {{ day | slice: 0 : 2 | titlecase }}\n </div>\n }\n </div>\n <div class=\"days-container\">\n @for (day of currentMonthDates$ | async; track day) {\n @if (dayTemplate) {\n <ng-container\n [ngTemplateOutlet]=\"dayTemplate\"\n [ngTemplateOutletContext]=\"{ day: day }\" />\n }\n @if (!dayTemplate) {\n <div\n class=\"day\"\n [class.disabled]=\"day | dayDisabled: TODAY_TIMESTAMP : minDateTimestamp : maxDateTimestamp\"\n [class.today]=\"day.timestamp === TODAY_TIMESTAMP\"\n [class.selected]=\"selectedDaysTimestamp.has(day.timestamp)\"\n (click)=\"onSelectDay(day)\">\n <span>\n {{ day.date }}\n </span>\n </div>\n }\n }\n </div>\n </div>\n</div>\n", styles: ["[color=facebook]{color:#0866ff}[bgcolor=facebook],[hcolor=facebook]:hover{background-color:#0866ff}[border=facebook]{border:1px solid #0866ff}[color=google]{color:#4e85e8}[bgcolor=google],[hcolor=google]:hover{background-color:#4e85e8}[border=google]{border:1px solid #4e85e8}[color=instagram]{color:#e1306c}[bgcolor=instagram],[hcolor=instagram]:hover{background-color:#e1306c}[border=instagram]{border:1px solid #e1306c}[color=instagrammagenta]{color:#c13584}[bgcolor=instagrammagenta],[hcolor=instagrammagenta]:hover{background-color:#c13584}[border=instagrammagenta]{border:1px solid #c13584}[color=instagramblue]{color:#5851db}[bgcolor=instagramblue],[hcolor=instagramblue]:hover{background-color:#5851db}[border=instagramblue]{border:1px solid #5851db}[color=instagrampurple]{color:#833ab4}[bgcolor=instagrampurple],[hcolor=instagrampurple]:hover{background-color:#833ab4}[border=instagrampurple]{border:1px solid #833ab4}[color=instagramorange]{color:#f56040}[bgcolor=instagramorange],[hcolor=instagramorange]:hover{background-color:#f56040}[border=instagramorange]{border:1px solid #f56040}[color=instagramyellow]{color:#ffdc80}[bgcolor=instagramyellow],[hcolor=instagramyellow]:hover{background-color:#ffdc80}[border=instagramyellow]{border:1px solid #ffdc80}[color=linkedin]{color:#2c67bc}[bgcolor=linkedin],[hcolor=linkedin]:hover{background-color:#2c67bc}[border=linkedin]{border:1px solid #2c67bc}[color=twitter]{color:#55acee}[bgcolor=twitter],[hcolor=twitter]:hover{background-color:#55acee}[border=twitter]{border:1px solid #55acee}[color=youtube]{color:red}[bgcolor=youtube],[hcolor=youtube]:hover{background-color:red}[border=youtube]{border:1px solid #ff0000}[color=blood-orange]{color:#ff4d00}[bgcolor=blood-orange],[hcolor=blood-orange]:hover{background-color:#ff4d00}[border=blood-orange]{border:1px solid #ff4d00}[color=pinkish-orange]{color:#ff7b49}[bgcolor=pinkish-orange],[hcolor=pinkish-orange]:hover{background-color:#ff7b49}[border=pinkish-orange]{border:1px solid #ff7b49}[color=charcoal-grey]{color:#2a2f34}[bgcolor=charcoal-grey],[hcolor=charcoal-grey]:hover{background-color:#2a2f34}[border=charcoal-grey]{border:1px solid #2a2f34}[color=azure]{color:#00aeef}[bgcolor=azure],[hcolor=azure]:hover{background-color:#00aeef}[border=azure]{border:1px solid #00aeef}[color=light-azure]{color:#eaf5fd}[bgcolor=light-azure],[hcolor=light-azure]:hover{background-color:#eaf5fd}[border=light-azure]{border:1px solid #eaf5fd}[color=blue-grey]{color:#8d98a9}[bgcolor=blue-grey],[hcolor=blue-grey]:hover{background-color:#8d98a9}[border=blue-grey]{border:1px solid #8d98a9}[color=silver]{color:#ced0da}[bgcolor=silver],[hcolor=silver]:hover{background-color:#ced0da}[border=silver]{border:1px solid #ced0da}[color=pale-grey]{color:#dfe3e9}[bgcolor=pale-grey],[hcolor=pale-grey]:hover{background-color:#dfe3e9}[border=pale-grey]{border:1px solid #dfe3e9}[color=grey-white]{color:#f5f7f8}[bgcolor=grey-white],[hcolor=grey-white]:hover{background-color:#f5f7f8}[border=grey-white]{border:1px solid #f5f7f8}[color=cool-grey]{color:#b4bbc6}[bgcolor=cool-grey],[hcolor=cool-grey]:hover{background-color:#b4bbc6}[border=cool-grey]{border:1px solid #b4bbc6}[color=black]{color:#344563}[bgcolor=black],[hcolor=black]:hover{background-color:#344563}[border=black]{border:1px solid #344563}[color=grey-blue]{color:#68768c}[bgcolor=grey-blue],[hcolor=grey-blue]:hover{background-color:#68768c}[border=grey-blue]{border:1px solid #68768c}[color=strawberry]{color:#f4282d}[bgcolor=strawberry],[hcolor=strawberry]:hover{background-color:#f4282d}[border=strawberry]{border:1px solid #f4282d}[color=light-strawberry]{color:#f8eded}[bgcolor=light-strawberry],[hcolor=light-strawberry]:hover{background-color:#f8eded}[border=light-strawberry]{border:1px solid #f8eded}[color=white]{color:#fff}[bgcolor=white],[hcolor=white]:hover{background-color:#fff}[border=white]{border:1px solid #ffffff}[color=cool-green]{color:#33c15d}[bgcolor=cool-green],[hcolor=cool-green]:hover{background-color:#33c15d}[border=cool-green]{border:1px solid #33c15d}[color=light-green]{color:#ebfaef}[bgcolor=light-green],[hcolor=light-green]:hover{background-color:#ebfaef}[border=light-green]{border:1px solid #ebfaef}[color=transparent]{color:transparent}[bgcolor=transparent],[hcolor=transparent]:hover{background-color:transparent}[border=transparent]{border:1px solid transparent}[color=c0]{color:#a566a5}[bgcolor=c0],[hcolor=c0]:hover{background-color:#a566a5}[border=c0]{border:1px solid #a566a5}[color=c1]{color:#c7ab82}[bgcolor=c1],[hcolor=c1]:hover{background-color:#c7ab82}[border=c1]{border:1px solid #c7ab82}[color=c2]{color:#f2713c}[bgcolor=c2],[hcolor=c2]:hover{background-color:#f2713c}[border=c2]{border:1px solid #f2713c}[color=c3]{color:#ffd006}[bgcolor=c3],[hcolor=c3]:hover{background-color:#ffd006}[border=c3]{border:1px solid #ffd006}[color=c4]{color:#94c5aa}[bgcolor=c4],[hcolor=c4]:hover{background-color:#94c5aa}[border=c4]{border:1px solid #94c5aa}[color=c5]{color:#2a9d8f}[bgcolor=c5],[hcolor=c5]:hover{background-color:#2a9d8f}[border=c5]{border:1px solid #2a9d8f}[color=c6]{color:#78acd8}[bgcolor=c6],[hcolor=c6]:hover{background-color:#78acd8}[border=c6]{border:1px solid #78acd8}[color=c7]{color:#525a9e}[bgcolor=c7],[hcolor=c7]:hover{background-color:#525a9e}[border=c7]{border:1px solid #525a9e}[color=c8]{color:#6a2459}[bgcolor=c8],[hcolor=c8]:hover{background-color:#6a2459}[border=c8]{border:1px solid #6a2459}[color=c9]{color:#74729e}[bgcolor=c9],[hcolor=c9]:hover{background-color:#74729e}[border=c9]{border:1px solid #74729e}:host .date-picker-container{display:flex;justify-content:center;align-items:center}:host .date-picker-container .date-picker{width:248px}:host .date-picker-container .date-picker .month-navigation{display:flex;justify-content:space-between;margin-bottom:24px}:host .date-picker-container .date-picker .month-navigation button:disabled{background:transparent}:host .date-picker-container .date-picker .month-navigation button:disabled ap-symbol{color:#d6dae0!important}:host .date-picker-container .date-picker .month-navigation button:disabled:hover{background:transparent!important}:host .date-picker-container .date-picker .month-navigation .left ap-symbol{margin-right:2px}:host .date-picker-container .date-picker .month-navigation .right ap-symbol{margin-left:2px}:host .date-picker-container .date-picker .month-navigation ap-symbol{display:grid;place-content:center}:host .date-picker-container .date-picker .month-navigation button:hover{background:#f5f5f7}:host .date-picker-container .date-picker .month-navigation span{font-style:normal;font-weight:700;font-size:16px;line-height:20px;text-align:center;color:#344563;align-items:center;display:flex}:host .date-picker-container .date-picker .week-header{display:flex;justify-content:space-between;margin-bottom:8px}:host .date-picker-container .date-picker .week-header .day{width:32px;text-align:center;font-weight:700;font-size:12px;line-height:15px;color:#aeb5c1}:host .date-picker-container .date-picker .days-container{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px}:host .date-picker-container .date-picker .days-container .day{font-style:normal;font-weight:400;font-size:14px;line-height:128.7%;text-align:center;width:32px;height:32px;display:flex;justify-content:center;align-items:center;border-radius:100%;position:relative}:host .date-picker-container .date-picker .days-container .day:hover{cursor:pointer}:host .date-picker-container .date-picker .days-container .day:hover:not(.disabled):not(.selected){background:#f5f5f7}:host .date-picker-container .date-picker .days-container .day.today{border:1px #178dfe solid}:host .date-picker-container .date-picker .days-container .day.selected{background:#178dfe;color:#fff!important}:host .date-picker-container .date-picker .days-container .day.selected .bubble{background:#fff!important}:host .date-picker-container .date-picker .days-container .day.disabled{color:#aeb5c1}:host .date-picker-container .date-picker .days-container .day .bubble{width:4px;height:4px;border-radius:100%;bottom:3px;position:absolute;background:#178dfe}\n"] }]
|
|
222
220
|
}], ctorParameters: () => [{ type: i1.SymbolRegistry }], propDecorators: { dayTemplate: [{
|
|
223
221
|
type: Input
|
|
224
222
|
}], locale: [{
|
|
@@ -240,4 +238,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImpor
|
|
|
240
238
|
}], previousMonth: [{
|
|
241
239
|
type: Output
|
|
242
240
|
}] } });
|
|
243
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmVvLWRhdGVwaWNrZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vbGlicy91aS1jb21wb25lbnRzL25lby1kYXRlcGlja2VyL3NyYy9uZW8tZGF0ZXBpY2tlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9saWJzL3VpLWNvbXBvbmVudHMvbmVvLWRhdGVwaWNrZXIvc3JjL25lby1kYXRlcGlja2VyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNuRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUM1RSxPQUFPLEVBQUUsZUFBZSxFQUFFLGlCQUFpQixFQUFFLGtCQUFrQixFQUFrQixNQUFNLHVCQUF1QixDQUFDO0FBQy9HLE9BQU8sRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBRSxTQUFTLEVBQUUsYUFBYSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDdkcsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQWUsTUFBTSxlQUFlLENBQUM7QUFDN0gsT0FBTyxLQUFLLE1BQU0sT0FBTyxDQUFDO0FBQzFCLE9BQU8saUJBQWlCLENBQUM7QUFDekIsT0FBTyxpQkFBaUIsQ0FBQztBQUN6QixPQUFPLGlCQUFpQixDQUFDO0FBQ3pCLE9BQU8saUJBQWlCLENBQUM7QUFDekIsT0FBTyxpQkFBaUIsQ0FBQztBQUN6QixPQUFPLFVBQVUsTUFBTSx5QkFBeUIsQ0FBQztBQUNqRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0MsT0FBTyxFQUFFLG9CQUFv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UyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3ZHLENBQUM7SUFDTCxDQUFDO3VHQWpOUSxzQkFBc0I7MkZBQXRCLHNCQUFzQiw0VUFmcEIsQ0FBQyxlQUFlLENBQUMsMEJDM0JoQyxxakVBaURBLG8vUERwQlEsZUFBZSx3RkFDZixhQUFhLGtEQUViLE9BQU8sbUhBQ1AsSUFBSSx3RkFDSixTQUFTLDhDQUNULGdCQUFnQiwrSUFDaEIsZUFBZSwrQ0FDZixTQUFTLDhDQUNULG1CQUFtQjs7MkZBSWQsc0JBQXNCO2tCQXBCbEMsU0FBUzsrQkFDSSxvQkFBb0IsbUJBR2IsdUJBQXVCLENBQUMsTUFBTSxhQUNwQyxDQUFDLGVBQWUsQ0FBQyxXQUNuQjt3QkFDTCxlQUFlO3dCQUNmLGFBQWE7d0JBQ2IsZUFBZTt3QkFDZixPQUFPO3dCQUNQLElBQUk7d0JBQ0osU0FBUzt3QkFDVCxnQkFBZ0I7d0JBQ2hCLGVBQWU7d0JBQ2YsU0FBUzt3QkFDVCxtQkFBbUI7cUJBQ3RCLGNBQ1csSUFBSTttRkFNUCxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFJTyxPQUFPO3NCQUFuQixLQUFLO2dCQVNPLE9BQU87c0JBQW5CLEtBQUs7Z0JBV08sSUFBSTtzQkFBaEIsS0FBSztnQkFZTyxhQUFhO3NCQUF6QixLQUFLO2dCQWlCRyxRQUFRO3NCQUFoQixLQUFLO2dCQUVJLGFBQWE7c0JBQXRCLE1BQU07Z0JBQ0csU0FBUztzQkFBbEIsTUFBTTtnQkFDRyxhQUFhO3NCQUF0QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnQGFnb3JhcHVsc2UvdWktY29tcG9uZW50cy9idXR0b24nO1xuaW1wb3J0IHsgSWNvbkJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJ0BhZ29yYXB1bHNlL3VpLWNvbXBvbmVudHMvaWNvbi1idXR0b24nO1xuaW1wb3J0IHsgU3ltYm9sQ29tcG9uZW50LCBhcEFycm93QnV0dG9uTGVmdCwgYXBBcnJvd0J1dHRvblJpZ2h0LCBTeW1ib2xSZWdpc3RyeSB9IGZyb20gJ0BhZ29yYXB1bHNlL3VpLXN5bWJvbCc7XG5pbXBvcnQgeyBBc3luY1BpcGUsIE5nRm9yT2YsIE5nSWYsIE5nVGVtcGxhdGVPdXRsZXQsIFNsaWNlUGlwZSwgVGl0bGVDYXNlUGlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIGluamVjdCwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0LCBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IGRheWpzIGZyb20gJ2RheWpzJztcbmltcG9ydCAnZGF5anMvbG9jYWxlL2RlJztcbmltcG9ydCAnZGF5anMvbG9jYWxlL2VuJztcbmltcG9ydCAnZGF5anMvbG9jYWxlL2VzJztcbmltcG9ydCAnZGF5anMvbG9jYWxlL2ZyJztcbmltcG9ydCAnZGF5anMvbG9jYWxlL3B0JztcbmltcG9ydCBsb2NhbGVEYXRhIGZyb20gJ2RheWpzL3BsdWdpbi9sb2NhbGVEYXRhJztcbmltcG9ydCB7IGluamVjdERlc3Ryb3kgfSBmcm9tICduZ3h0ZW5zaW9uL2luamVjdC1kZXN0cm95JztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgZmlsdGVyIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgRGF5RGV0YWlsIH0gZnJvbSAnLi9kYXktZGV0YWlsLm1vZGVsJztcbmltcG9ydCB7IERheURpc2FibGVkUGlwZSB9IGZyb20gJy4vZGF5LWRpc2FibGVkLnBpcGUnO1xuXG5leHBvcnQgdHlwZSBOZW9EYXRlUGlja2VyTW9kZSA9ICdzaW5nbGUnIHwgJ211bHRpcGxlJztcbmV4cG9ydCB0eXBlIE5lb0RhdGVQaWNrZXJTdGFydHNPbiA9ICdtb25kYXknIHwgJ3N1bmRheSc7XG5leHBvcnQgdHlwZSBOZW9EYXRlUGlja2VyTG9jYWxlID0gJ2VuJyB8ICdlcycgfCAnZnInIHwgJ3B0JyB8ICdkZSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYXAtbmVvLWRhdGUtcGlja2VyJyxcbiAgICBzdHlsZVVybHM6IFsnbmVvLWRhdGVwaWNrZXIuY29tcG9uZW50LnNjc3MnXSxcbiAgICB0ZW1wbGF0ZVVybDogJ25lby1kYXRlcGlja2VyLmNvbXBvbmVudC5odG1sJyxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFtEYXlEaXNhYmxlZFBpcGVdLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgU3ltYm9sQ29tcG9uZW50LFxuICAgICAgICBUaXRsZUNhc2VQaXBlLFxuICAgICAgICBCdXR0b25Db21wb25lbnQsXG4gICAgICAgIE5nRm9yT2YsXG4gICAgICAgIE5nSWYsXG4gICAgICAgIFNsaWNlUGlwZSxcbiAgICAgICAgTmdUZW1wbGF0ZU91dGxldCxcbiAgICAgICAgRGF5RGlzYWJsZWRQaXBlLFxuICAgICAgICBBc3luY1BpcGUsXG4gICAgICAgIEljb25CdXR0b25Db21wb25lbnQsXG4gICAgXSxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxufSlcbmV4cG9ydCBjbGFzcyBOZW9EYXRlcGlja2VyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgICByZWFkb25seSBPTkVfREFZOiBudW1iZXIgPSA2MCAqIDYwICogMjQgKiAxMDAwO1xuICAgIHJlYWRvbmx5IFRPREFZX1RJTUVTVEFNUDogbnVtYmVyID0gRGF0ZS5ub3coKSAtIChEYXRlLm5vdygpICUgdGhpcy5PTkVfREFZKSArIG5ldyBEYXRlKCkuZ2V0VGltZXpvbmVPZmZzZXQoKSAqIDEwMDAgKiA2MDtcblxuICAgIEBJbnB1dCgpIGRheVRlbXBsYXRlOiBUZW1wbGF0ZVJlZjx7IGRheTogRGF5RGV0YWlsIH0+IHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkO1xuICAgIEBJbnB1dCgpIGxvY2FsZTogTmVvRGF0ZVBpY2tlckxvY2FsZSA9ICdlbic7XG5cbiAgICBwcml2YXRlIF9tYXhEYXRlOiBkYXlqcy5EYXlqcyB8IHVuZGVmaW5lZDtcblxuICAgIEBJbnB1dCgpIHNldCBtYXhEYXRlKG1heERhdGU6IGRheWpzLkRheWpzKSB7XG4gICAgICAgIHRoaXMuX21heERhdGUgPSBtYXhEYXRlO1xuICAgICAgICB0aGlzLm1heERhdGVUaW1lc3RhbXAgPSBtYXhEYXRlLnRvRGF0ZSgpLmdldFRpbWUoKTtcbiAgICB9XG4gICAgZ2V0IG1heERhdGUoKTogZGF5anMuRGF5anMgfCB1bmRlZmluZWQge1xuICAgICAgICByZXR1cm4gdGhpcy5fbWF4RGF0ZTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9taW5EYXRlOiBkYXlqcy5EYXlqcyB8IHVuZGVmaW5lZDtcbiAgICBASW5wdXQoKSBzZXQgbWluRGF0ZShtaW5EYXRlOiBkYXlqcy5EYXlqcykge1xuICAgICAgICB0aGlzLl9taW5EYXRlID0gbWluRGF0ZTtcbiAgICAgICAgdGhpcy5taW5EYXRlVGltZXN0YW1wID0gbWluRGF0ZS50b0RhdGUoKS5nZXRUaW1lKCk7XG4gICAgfVxuICAgIGdldCBtaW5EYXRlKCk6IGRheWpzLkRheWpzIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX21pbkRhdGU7XG4gICAgfVxuXG4gICAgcHJldmlvdXNNb250aEF2YWlsYWJsZTogYm9vbGVhbiA9IHRydWU7XG5cbiAgICBwcml2YXRlIF9tb2RlOiBOZW9EYXRlUGlja2VyTW9kZSA9ICdzaW5nbGUnO1xuICAgIEBJbnB1dCgpIHNldCBtb2RlKG1vZGU6IE5lb0RhdGVQaWNrZXJNb2RlKSB7XG4gICAgICAgIHRoaXMuX21vZGUgPSBtb2RlO1xuICAgICAgICBpZiAodGhpcy5fbW9kZSA9PT0gJ3NpbmdsZScpIHtcbiAgICAgICAgICAgIHRoaXMuX3NlbGVjdGVkRGF0ZXMgPSB0aGlzLl9zZWxlY3RlZERhdGVzLnNsaWNlKDAsIDEpO1xuICAgICAgICAgICAgdGhpcy5zZWxlY3RlZERheXNUaW1lc3RhbXAgPSBuZXcgU2V0KEFycmF5LmZyb20odGhpcy5zZWxlY3RlZERheXNUaW1lc3RhbXApLnNsaWNlKDAsIDEpKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBnZXQgbW9kZSgpOiBOZW9EYXRlUGlja2VyTW9kZSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9tb2RlO1xuICAgIH1cblxuICAgIHByaXZhdGUgX3NlbGVjdGVkRGF0ZXM6IGRheWpzLkRheWpzW10gPSBbXTtcbiAgICBASW5wdXQoKSBzZXQgc2VsZWN0ZWREYXRlcyhkYXRlczogZGF5anMuRGF5anNbXSkge1xuICAgICAgICBpZiAodGhpcy5fbW9kZSA9PT0gJ3NpbmdsZScpIHtcbiAgICAgICAgICAgIGRhdGVzID0gZGF0ZXMuc2xpY2UoMCwgMSk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5zZWxlY3RlZERheXNUaW1lc3RhbXAgPSBuZXcgU2V0KCk7XG4gICAgICAgIHRoaXMuX3NlbGVjdGVkRGF0ZXMgPSBkYXRlcztcbiAgICAgICAgaWYgKHRoaXMuX3NlbGVjdGVkRGF0ZXMubGVuZ3RoKSB7XG4gICAgICAgICAgICB0aGlzLl9zZWxlY3RlZERhdGVzLmZvckVhY2goZGF5ID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdGVkRGF5c1RpbWVzdGFtcC5hZGQoZGF5LnRvRGF0ZSgpLmdldFRpbWUoKSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGdldCBzZWxlY3RlZERhdGVzKCk6IGRheWpzLkRheWpzW10ge1xuICAgICAgICByZXR1cm4gdGhpcy5fc2VsZWN0ZWREYXRlcztcbiAgICB9XG5cbiAgICBASW5wdXQoKSBzdGFydHNPbjogTmVvRGF0ZVBpY2tlclN0YXJ0c09uID0gJ21vbmRheSc7XG5cbiAgICBAT3V0cHV0KCkgZGF0ZXNTZWxlY3RlZDogRXZlbnRFbWl0dGVyPGRheWpzLkRheWpzW10+ID0gbmV3IEV2ZW50RW1pdHRlcjxkYXlqcy5EYXlqc1tdPigpO1xuICAgIEBPdXRwdXQoKSBuZXh0TW9udGg6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcbiAgICBAT3V0cHV0KCkgcHJldmlvdXNNb250aDogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gICAgY3VycmVudFllYXIhOiBudW1iZXI7XG4gICAgY3VycmVudE1vbnRoITogbnVtYmVyO1xuICAgIGN1cnJlbnRNb250aERhdGVzJDogQmVoYXZpb3JTdWJqZWN0PERheURldGFpbFtdPiA9IG5ldyBCZWhhdmlvclN1YmplY3Q8RGF5RGV0YWlsW10+KFtdKTtcbiAgICBtaW5EYXRlVGltZXN0YW1wOiBudW1iZXIgfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XG4gICAgbWF4RGF0ZVRpbWVzdGFtcDogbnVtYmVyIHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkO1xuICAgIG1vbnRoczogc3RyaW5nW10gPSBbXTtcbiAgICBzZWxlY3RlZERheXNUaW1lc3RhbXA6IFNldDxudW1iZXI+ID0gbmV3IFNldCgpO1xuICAgIHdlZWtEYXlzOiBzdHJpbmdbXSA9IFtdO1xuXG4gICAgZGF5RGlzYWJsZWRQaXBlOiBEYXlEaXNhYmxlZFBpcGUgPSBpbmplY3QoRGF5RGlzYWJsZWRQaXBlKTtcblxuICAgIHByaXZhdGUgZGVzdHJveSQgPSBpbmplY3REZXN0cm95KCk7XG5cbiAgICBjb25zdHJ1Y3RvcihwdWJsaWMgc3ltYm9sUmVnaXN0cnk6IFN5bWJvbFJlZ2lzdHJ5KSB7XG4gICAgICAgIHRoaXMuc3ltYm9sUmVnaXN0cnkucmVnaXN0ZXJTeW1ib2xzKFthcEFycm93QnV0dG9uTGVmdCwgYXBBcnJvd0J1dHRvblJpZ2h0XSk7XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIGRheWpzLmV4dGVuZChsb2NhbGVEYXRhKTtcbiAgICAgICAgY29uc3QgZGF0ZSA9IG5ldyBEYXRlKCk7XG4gICAgICAgIHRoaXMuY3VycmVudFllYXIgPSBkYXRlLmdldEZ1bGxZZWFyKCk7XG4gICAgICAgIHRoaXMuY3VycmVudE1vbnRoID0gZGF0ZS5nZXRNb250aCgpO1xuICAgICAgICBpZiAodGhpcy5sb2NhbGUpIHtcbiAgICAgICAgICAgIGRheWpzLmxvY2FsZSh0aGlzLmxvY2FsZSk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5tb250aHMgPSBkYXlqcy5tb250aHMoKTtcbiAgICAgICAgdGhpcy53ZWVrRGF5cyA9IFsuLi5kYXlqcy53ZWVrZGF5cygpXTtcblxuICAgICAgICBpZiAodGhpcy5zdGFydHNPbiA9PT0gJ21vbmRheScpIHtcbiAgICAgICAgICAgIGNvbnN0IHN1bmRheSA9IHRoaXMud2Vla0RheXMuc2xpY2UoMCwgMSk7XG4gICAgICAgICAgICB0aGlzLndlZWtEYXlzLnNwbGljZSgwLCAxKTtcbiAgICAgICAgICAgIHRoaXMud2Vla0RheXMgPSB0aGlzLndlZWtEYXlzLmNvbmNhdChzdW5kYXkpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuY3VycmVudE1vbnRoRGF0ZXMkLm5leHQodGhpcy5nZXRNb250aERldGFpbHModGhpcy5jdXJyZW50WWVhciwgdGhpcy5jdXJyZW50TW9udGgpKTtcbiAgICAgICAgdGhpcy5jdXJyZW50TW9udGhEYXRlcyRcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgICAgICAgICAgICAgZmlsdGVyKCgpID0+ICEhdGhpcy5taW5EYXRlVGltZXN0YW1wKSxcbiAgICAgICAgICAgICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95JClcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoY3VycmVudE1vbnRoRGF0ZXMgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IG1pbkRhdGVJblByZXZpb3VzTW9udGggPSB0aGlzLm1pbkRhdGVUaW1lc3RhbXBcbiAgICAgICAgICAgICAgICAgICAgPyBuZXcgRGF0ZSh0aGlzLm1pbkRhdGVUaW1lc3RhbXApLmdldE1vbnRoKCkgPCB0aGlzLmN1cnJlbnRNb250aFxuICAgICAgICAgICAgICAgICAgICA6IHVuZGVmaW5lZDtcbiAgICAgICAgICAgICAgICB0aGlzLnByZXZpb3VzTW9udGhBdmFpbGFibGUgPVxuICAgICAgICAgICAgICAgICAgICAhY3VycmVudE1vbnRoRGF0ZXMuc29tZShkYXlEZXRhaWwgPT4gZGF5RGV0YWlsLnRpbWVzdGFtcCA9PT0gdGhpcy5taW5EYXRlVGltZXN0YW1wKSB8fCAhIW1pbkRhdGVJblByZXZpb3VzTW9udGg7XG4gICAgICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBnZXREYXlEZXRhaWxzKGluZGV4OiBudW1iZXIsIGZpcnN0RGF5OiBudW1iZXIsIG1vbnRoOiBudW1iZXIsIG51bWJlck9mRGF5czogbnVtYmVyLCB5ZWFyOiBudW1iZXIpOiBEYXlEZXRhaWwge1xuICAgICAgICBjb25zdCBkYXRlID0gaW5kZXggLSBmaXJzdERheTtcbiAgICAgICAgY29uc3QgZGF5ID0gaW5kZXggJSA3O1xuICAgICAgICBsZXQgcHJldk1vbnRoID0gbW9udGggLSAxO1xuICAgICAgICBsZXQgcHJldlllYXIgPSB5ZWFyO1xuICAgICAgICBpZiAocHJldk1vbnRoIDwgMCkge1xuICAgICAgICAgICAgcHJldk1vbnRoID0gMTE7XG4gICAgICAgICAgICBwcmV2WWVhci0tO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHByZXZNb250aE51bWJlck9mRGF5cyA9IHRoaXMuZ2V0TnVtYmVyT2ZEYXlzKHByZXZZZWFyLCBwcmV2TW9udGgpO1xuICAgICAgICBjb25zdCBfZGF0ZSA9IChkYXRlIDwgMCA/IHByZXZNb250aE51bWJlck9mRGF5cyArIGRhdGUgOiBkYXRlICUgbnVtYmVyT2ZEYXlzKSArIDE7XG4gICAgICAgIGNvbnN0IF9tb250aCA9IGRhdGUgPCAwID8gLTEgOiBkYXRlID49IG51bWJlck9mRGF5cyA/IDEgOiAwO1xuICAgICAgICBjb25zdCBuZXdEYXRlID0gbmV3IERhdGUoeWVhciwgX21vbnRoICsgbW9udGgsIF9kYXRlKTtcbiAgICAgICAgY29uc3QgdGltZXN0YW1wID0gbmV3RGF0ZS5nZXRUaW1lKCk7XG4gICAgICAgIGNvbnN0IGRheVN0cmluZyA9IHRoaXMud2Vla0RheXNbZGF5XTtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGRhdGU6IF9kYXRlLFxuICAgICAgICAgICAgZGF5LFxuICAgICAgICAgICAgbW9udGg6IF9tb250aCxcbiAgICAgICAgICAgIHRpbWVzdGFtcCxcbiAgICAgICAgICAgIGRheVN0cmluZyxcbiAgICAgICAgICAgIGRheWpzOiBkYXlqcyhuZXdEYXRlKSxcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICBnZXROdW1iZXJPZkRheXMoeWVhcjogbnVtYmVyLCBtb250aDogbnVtYmVyKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIDQwIC0gbmV3IERhdGUoeWVhciwgbW9udGgsIDQwKS5nZXREYXRlKCk7XG4gICAgfVxuXG4gICAgZ2V0TW9udGhEZXRhaWxzKHllYXI6IG51bWJlciwgbW9udGg6IG51bWJlcik6IERheURldGFpbFtdIHtcbiAgICAgICAgbGV0IGZpcnN0RGF5ID0gbmV3IERhdGUoeWVhciwgbW9udGgpLmdldERheSgpO1xuICAgICAgICBpZiAodGhpcy5zdGFydHNPbiA9PT0gJ21vbmRheScpIHtcbiAgICAgICAgICAgIGZpcnN0RGF5IC09IDE7XG4gICAgICAgIH1cbiAgICAgICAgLy8gSWYgdGhlIGZpcnN0IGRheSBpcyBiZWxvdyAwIGl0IG1lYW5zIHRoZSBzdW5kYXkgaXMgdGhlIGZpcnN0IGRheSBvZiB0aGUgbW9udGggc28gd2UgbmVlZCB0byBzaG93IHRoZSBsYXN0IG1vbnRoXG4gICAgICAgIGlmIChmaXJzdERheSA8IDApIHtcbiAgICAgICAgICAgIGZpcnN0RGF5ID0gNjtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBudW1iZXJPZkRheXMgPSB0aGlzLmdldE51bWJlck9mRGF5cyh5ZWFyLCBtb250aCk7XG4gICAgICAgIGNvbnN0IG1vbnRoQXJyYXkgPSBbXTtcbiAgICAgICAgY29uc3Qgcm93cyA9IDY7XG4gICAgICAgIGxldCBjdXJyZW50RGF5ID0gbnVsbDtcbiAgICAgICAgbGV0IGluZGV4ID0gMDtcbiAgICAgICAgY29uc3QgY29scyA9IDc7XG5cbiAgICAgICAgZm9yIChsZXQgcm93ID0gMDsgcm93IDwgcm93czsgcm93KyspIHtcbiAgICAgICAgICAgIGZvciAobGV0IGNvbCA9IDA7IGNvbCA8IGNvbHM7IGNvbCsrKSB7XG4gICAgICAgICAgICAgICAgY3VycmVudERheSA9IHRoaXMuZ2V0RGF5RGV0YWlscyhpbmRleCwgZmlyc3REYXksIG1vbnRoLCBudW1iZXJPZkRheXMsIHllYXIpO1xuICAgICAgICAgICAgICAgIG1vbnRoQXJyYXkucHVzaChjdXJyZW50RGF5KTtcbiAgICAgICAgICAgICAgICBpbmRleCsrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBtb250aEFycmF5O1xuICAgIH1cblxuICAgIG9uUHJldmlvdXNNb250aCgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMucHJldmlvdXNNb250aEF2YWlsYWJsZSkge1xuICAgICAgICAgICAgdGhpcy5wcmV2aW91c01vbnRoLmVtaXQoKTtcbiAgICAgICAgICAgIHRoaXMuY3VycmVudE1vbnRoIC09IDE7XG4gICAgICAgICAgICBpZiAodGhpcy5jdXJyZW50TW9udGggPT09IC0xKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5jdXJyZW50TW9udGggPSAxMTtcbiAgICAgICAgICAgICAgICB0aGlzLmN1cnJlbnRZZWFyIC09IDE7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLmN1cnJlbnRNb250aERhdGVzJC5uZXh0KHRoaXMuZ2V0TW9udGhEZXRhaWxzKHRoaXMuY3VycmVudFllYXIsIHRoaXMuY3VycmVudE1vbnRoKSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvbk5leHRNb250aCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5uZXh0TW9udGguZW1pdCgpO1xuICAgICAgICB0aGlzLmN1cnJlbnRNb250aCArPSAxO1xuICAgICAgICBpZiAodGhpcy5jdXJyZW50TW9udGggPT09IDEyKSB7XG4gICAgICAgICAgICB0aGlzLmN1cnJlbnRNb250aCA9IDA7XG4gICAgICAgICAgICB0aGlzLmN1cnJlbnRZZWFyICs9IDE7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5jdXJyZW50TW9udGhEYXRlcyQubmV4dCh0aGlzLmdldE1vbnRoRGV0YWlscyh0aGlzLmN1cnJlbnRZZWFyLCB0aGlzLmN1cnJlbnRNb250aCkpO1xuICAgIH1cblxuICAgIG9uU2VsZWN0RGF5KGRheURldGFpbDogRGF5RGV0YWlsKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGRheURpc2FibGVkID0gdGhpcy5kYXlEaXNhYmxlZFBpcGUudHJhbnNmb3JtKGRheURldGFpbCwgdGhpcy5UT0RBWV9USU1FU1RBTVAsIHRoaXMubWluRGF0ZVRpbWVzdGFtcCwgdGhpcy5tYXhEYXRlVGltZXN0YW1wKTtcbiAgICAgICAgaWYgKCFkYXlEaXNhYmxlZCkge1xuICAgICAgICAgICAgaWYgKHRoaXMubW9kZSA9PT0gJ3NpbmdsZScpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdGVkRGF5c1RpbWVzdGFtcC5jbGVhcigpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKHRoaXMubWluRGF0ZSAmJiBkYXlEZXRhaWwuZGF5anMuaXNCZWZvcmUoZGF5anModGhpcy5taW5EYXRlKSkpIHtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAodGhpcy5tYXhEYXRlICYmIGRheURldGFpbC5kYXlqcy5pc0FmdGVyKGRheWpzKHRoaXMubWF4RGF0ZSkpKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKHRoaXMuc2VsZWN0ZWREYXlzVGltZXN0YW1wLmhhcyhkYXlEZXRhaWwudGltZXN0YW1wKSkge1xuICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWREYXlzVGltZXN0YW1wLmRlbGV0ZShkYXlEZXRhaWwudGltZXN0YW1wKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy5zZWxlY3RlZERheXNUaW1lc3RhbXAuYWRkKGRheURldGFpbC50aW1lc3RhbXApO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhpcy5kYXRlc1NlbGVjdGVkLmVtaXQoQXJyYXkuZnJvbSh0aGlzLnNlbGVjdGVkRGF5c1RpbWVzdGFtcCkubWFwKHRpbWVzdGFtcCA9PiBkYXlqcyh0aW1lc3RhbXApKSk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZGF0ZS1waWNrZXItY29udGFpbmVyXCI+XG4gICAgPGRpdiBjbGFzcz1cImRhdGUtcGlja2VyXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJtb250aC1uYXZpZ2F0aW9uXCI+XG4gICAgICAgICAgICA8YXAtaWNvbi1idXR0b25cbiAgICAgICAgICAgICAgICBuYW1lPVwibmVvLWRhdGUtcGlja2VyLXByZXZpb3VzLW1vbnRoXCJcbiAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiIXByZXZpb3VzTW9udGhBdmFpbGFibGVcIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJvblByZXZpb3VzTW9udGgoKVwiPlxuICAgICAgICAgICAgICAgIDxhcC1zeW1ib2xcbiAgICAgICAgICAgICAgICAgICAgc3ltYm9sSWQ9XCJhcnJvdy1idXR0b24tbGVmdFwiXG4gICAgICAgICAgICAgICAgICAgIHNpemU9XCJtaWNyb1wiIC8+XG4gICAgICAgICAgICA8L2FwLWljb24tYnV0dG9uPlxuICAgICAgICAgICAgPHNwYW4+e3sgbW9udGhzW2N1cnJlbnRNb250aF0gfCB0aXRsZWNhc2UgfX0ge3sgY3VycmVudFllYXIgfX08L3NwYW4+XG4gICAgICAgICAgICA8YXAtaWNvbi1idXR0b25cbiAgICAgICAgICAgICAgICBuYW1lPVwibmVvLWRhdGUtcGlja2VyLW5leHQtbW9udGhcIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJvbk5leHRNb250aCgpXCI+XG4gICAgICAgICAgICAgICAgPGFwLXN5bWJvbFxuICAgICAgICAgICAgICAgICAgICBzeW1ib2xJZD1cImFycm93LWJ1dHRvbi1yaWdodFwiXG4gICAgICAgICAgICAgICAgICAgIHNpemU9XCJtaWNyb1wiIC8+XG4gICAgICAgICAgICA8L2FwLWljb24tYnV0dG9uPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIndlZWstaGVhZGVyXCI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBkYXkgb2Ygd2Vla0RheXNcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGF5XCI+XG4gICAgICAgICAgICAgICAgICAgIHt7IGRheSB8IHNsaWNlIDogMCA6IDIgfCB0aXRsZWNhc2UgfX1cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImRheXMtY29udGFpbmVyXCI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBkYXkgb2YgY3VycmVudE1vbnRoRGF0ZXMkIHwgYXN5bmNcIj5cbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZGF5VGVtcGxhdGVcIlxuICAgICAgICAgICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJkYXlUZW1wbGF0ZVwiXG4gICAgICAgICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7IGRheTogZGF5IH1cIiAvPlxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhZGF5VGVtcGxhdGVcIj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJkYXlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzLmRpc2FibGVkXT1cImRheSB8IGRheURpc2FibGVkIDogVE9EQVlfVElNRVNUQU1QIDogbWluRGF0ZVRpbWVzdGFtcCA6IG1heERhdGVUaW1lc3RhbXBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzLnRvZGF5XT1cImRheS50aW1lc3RhbXAgPT09IFRPREFZX1RJTUVTVEFNUFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3Muc2VsZWN0ZWRdPVwic2VsZWN0ZWREYXlzVGltZXN0YW1wLmhhcyhkYXkudGltZXN0YW1wKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib25TZWxlY3REYXkoZGF5KVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgZGF5LmRhdGUgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|
|
241
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmVvLWRhdGVwaWNrZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vbGlicy91aS1jb21wb25lbnRzL25lby1kYXRlcGlja2VyL3NyYy9uZW8tZGF0ZXBpY2tlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9saWJzL3VpLWNvbXBvbmVudHMvbmVvLWRhdGVwaWNrZXIvc3JjL25lby1kYXRlcGlja2VyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNuRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUM1RSxPQUFPLEVBQUUsZUFBZSxFQUFrQixpQkFBaUIsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQy9HLE9BQU8sRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUUsU0FBUyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3hGLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQWUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdILE9BQU8sS0FBSyxNQUFNLE9BQU8sQ0FBQztBQUMxQixPQUFPLGlCQUFpQixDQUFDO0FBQ3pCLE9BQU8saUJBQWlCLENBQUM7QUFDekIsT0FBTyxpQkFBaUIsQ0FBQztBQUN6QixPQUFPLGlCQUFpQixDQUFDO0FBQ3pCLE9BQU8saUJBQWlCLENBQUM7QUFDekIsT0FBTyxVQUFVLE1BQU0seUJBQXlCLENBQUM7QUFDakQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzFELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9DLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxTQUFTLEVBQUUsTUFB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QztRQUN2RyxDQUFDO0lBQ0wsQ0FBQzt1R0FqTlEsc0JBQXNCOzJGQUF0QixzQkFBc0IsNFVBYnBCLENBQUMsZUFBZSxDQUFDLDBCQzNCaEMsNi9EQWtEQSxvL1BEckJRLGVBQWUsd0ZBQ2YsYUFBYSw2Q0FFYixTQUFTLDhDQUNULGdCQUFnQiwrSUFDaEIsZUFBZSwrQ0FDZixTQUFTLDhDQUNULG1CQUFtQjs7MkZBSWQsc0JBQXNCO2tCQWxCbEMsU0FBUzsrQkFDSSxvQkFBb0IsbUJBR2IsdUJBQXVCLENBQUMsTUFBTSxhQUNwQyxDQUFDLGVBQWUsQ0FBQyxXQUNuQjt3QkFDTCxlQUFlO3dCQUNmLGFBQWE7d0JBQ2IsZUFBZTt3QkFDZixTQUFTO3dCQUNULGdCQUFnQjt3QkFDaEIsZUFBZTt3QkFDZixTQUFTO3dCQUNULG1CQUFtQjtxQkFDdEIsY0FDVyxJQUFJO21GQU1QLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUlPLE9BQU87c0JBQW5CLEtBQUs7Z0JBU08sT0FBTztzQkFBbkIsS0FBSztnQkFXTyxJQUFJO3NCQUFoQixLQUFLO2dCQVlPLGFBQWE7c0JBQXpCLEtBQUs7Z0JBaUJHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBRUksYUFBYTtzQkFBdEIsTUFBTTtnQkFDRyxTQUFTO3NCQUFsQixNQUFNO2dCQUNHLGFBQWE7c0JBQXRCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCdXR0b25Db21wb25lbnQgfSBmcm9tICdAYWdvcmFwdWxzZS91aS1jb21wb25lbnRzL2J1dHRvbic7XG5pbXBvcnQgeyBJY29uQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnQGFnb3JhcHVsc2UvdWktY29tcG9uZW50cy9pY29uLWJ1dHRvbic7XG5pbXBvcnQgeyBTeW1ib2xDb21wb25lbnQsIFN5bWJvbFJlZ2lzdHJ5LCBhcEFycm93QnV0dG9uTGVmdCwgYXBBcnJvd0J1dHRvblJpZ2h0IH0gZnJvbSAnQGFnb3JhcHVsc2UvdWktc3ltYm9sJztcbmltcG9ydCB7IEFzeW5jUGlwZSwgTmdUZW1wbGF0ZU91dGxldCwgU2xpY2VQaXBlLCBUaXRsZUNhc2VQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0LCBUZW1wbGF0ZVJlZiwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgZGF5anMgZnJvbSAnZGF5anMnO1xuaW1wb3J0ICdkYXlqcy9sb2NhbGUvZGUnO1xuaW1wb3J0ICdkYXlqcy9sb2NhbGUvZW4nO1xuaW1wb3J0ICdkYXlqcy9sb2NhbGUvZXMnO1xuaW1wb3J0ICdkYXlqcy9sb2NhbGUvZnInO1xuaW1wb3J0ICdkYXlqcy9sb2NhbGUvcHQnO1xuaW1wb3J0IGxvY2FsZURhdGEgZnJvbSAnZGF5anMvcGx1Z2luL2xvY2FsZURhdGEnO1xuaW1wb3J0IHsgaW5qZWN0RGVzdHJveSB9IGZyb20gJ25neHRlbnNpb24vaW5qZWN0LWRlc3Ryb3knO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBmaWx0ZXIgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGRpc3RpbmN0VW50aWxDaGFuZ2VkLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBEYXlEZXRhaWwgfSBmcm9tICcuL2RheS1kZXRhaWwubW9kZWwnO1xuaW1wb3J0IHsgRGF5RGlzYWJsZWRQaXBlIH0gZnJvbSAnLi9kYXktZGlzYWJsZWQucGlwZSc7XG5cbmV4cG9ydCB0eXBlIE5lb0RhdGVQaWNrZXJNb2RlID0gJ3NpbmdsZScgfCAnbXVsdGlwbGUnO1xuZXhwb3J0IHR5cGUgTmVvRGF0ZVBpY2tlclN0YXJ0c09uID0gJ21vbmRheScgfCAnc3VuZGF5JztcbmV4cG9ydCB0eXBlIE5lb0RhdGVQaWNrZXJMb2NhbGUgPSAnZW4nIHwgJ2VzJyB8ICdmcicgfCAncHQnIHwgJ2RlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdhcC1uZW8tZGF0ZS1waWNrZXInLFxuICAgIHN0eWxlVXJsczogWyduZW8tZGF0ZXBpY2tlci5jb21wb25lbnQuc2NzcyddLFxuICAgIHRlbXBsYXRlVXJsOiAnbmVvLWRhdGVwaWNrZXIuY29tcG9uZW50Lmh0bWwnLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHByb3ZpZGVyczogW0RheURpc2FibGVkUGlwZV0sXG4gICAgaW1wb3J0czogW1xuICAgICAgICBTeW1ib2xDb21wb25lbnQsXG4gICAgICAgIFRpdGxlQ2FzZVBpcGUsXG4gICAgICAgIEJ1dHRvbkNvbXBvbmVudCxcbiAgICAgICAgU2xpY2VQaXBlLFxuICAgICAgICBOZ1RlbXBsYXRlT3V0bGV0LFxuICAgICAgICBEYXlEaXNhYmxlZFBpcGUsXG4gICAgICAgIEFzeW5jUGlwZSxcbiAgICAgICAgSWNvbkJ1dHRvbkNvbXBvbmVudCxcbiAgICBdLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIE5lb0RhdGVwaWNrZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIHJlYWRvbmx5IE9ORV9EQVk6IG51bWJlciA9IDYwICogNjAgKiAyNCAqIDEwMDA7XG4gICAgcmVhZG9ubHkgVE9EQVlfVElNRVNUQU1QOiBudW1iZXIgPSBEYXRlLm5vdygpIC0gKERhdGUubm93KCkgJSB0aGlzLk9ORV9EQVkpICsgbmV3IERhdGUoKS5nZXRUaW1lem9uZU9mZnNldCgpICogMTAwMCAqIDYwO1xuXG4gICAgQElucHV0KCkgZGF5VGVtcGxhdGU6IFRlbXBsYXRlUmVmPHsgZGF5OiBEYXlEZXRhaWwgfT4gfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XG4gICAgQElucHV0KCkgbG9jYWxlOiBOZW9EYXRlUGlja2VyTG9jYWxlID0gJ2VuJztcblxuICAgIHByaXZhdGUgX21heERhdGU6IGRheWpzLkRheWpzIHwgdW5kZWZpbmVkO1xuXG4gICAgQElucHV0KCkgc2V0IG1heERhdGUobWF4RGF0ZTogZGF5anMuRGF5anMpIHtcbiAgICAgICAgdGhpcy5fbWF4RGF0ZSA9IG1heERhdGU7XG4gICAgICAgIHRoaXMubWF4RGF0ZVRpbWVzdGFtcCA9IG1heERhdGUudG9EYXRlKCkuZ2V0VGltZSgpO1xuICAgIH1cbiAgICBnZXQgbWF4RGF0ZSgpOiBkYXlqcy5EYXlqcyB8IHVuZGVmaW5lZCB7XG4gICAgICAgIHJldHVybiB0aGlzLl9tYXhEYXRlO1xuICAgIH1cblxuICAgIHByaXZhdGUgX21pbkRhdGU6IGRheWpzLkRheWpzIHwgdW5kZWZpbmVkO1xuICAgIEBJbnB1dCgpIHNldCBtaW5EYXRlKG1pbkRhdGU6IGRheWpzLkRheWpzKSB7XG4gICAgICAgIHRoaXMuX21pbkRhdGUgPSBtaW5EYXRlO1xuICAgICAgICB0aGlzLm1pbkRhdGVUaW1lc3RhbXAgPSBtaW5EYXRlLnRvRGF0ZSgpLmdldFRpbWUoKTtcbiAgICB9XG4gICAgZ2V0IG1pbkRhdGUoKTogZGF5anMuRGF5anMgfCB1bmRlZmluZWQge1xuICAgICAgICByZXR1cm4gdGhpcy5fbWluRGF0ZTtcbiAgICB9XG5cbiAgICBwcmV2aW91c01vbnRoQXZhaWxhYmxlOiBib29sZWFuID0gdHJ1ZTtcblxuICAgIHByaXZhdGUgX21vZGU6IE5lb0RhdGVQaWNrZXJNb2RlID0gJ3NpbmdsZSc7XG4gICAgQElucHV0KCkgc2V0IG1vZGUobW9kZTogTmVvRGF0ZVBpY2tlck1vZGUpIHtcbiAgICAgICAgdGhpcy5fbW9kZSA9IG1vZGU7XG4gICAgICAgIGlmICh0aGlzLl9tb2RlID09PSAnc2luZ2xlJykge1xuICAgICAgICAgICAgdGhpcy5fc2VsZWN0ZWREYXRlcyA9IHRoaXMuX3NlbGVjdGVkRGF0ZXMuc2xpY2UoMCwgMSk7XG4gICAgICAgICAgICB0aGlzLnNlbGVjdGVkRGF5c1RpbWVzdGFtcCA9IG5ldyBTZXQoQXJyYXkuZnJvbSh0aGlzLnNlbGVjdGVkRGF5c1RpbWVzdGFtcCkuc2xpY2UoMCwgMSkpO1xuICAgICAgICB9XG4gICAgfVxuICAgIGdldCBtb2RlKCk6IE5lb0RhdGVQaWNrZXJNb2RlIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX21vZGU7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfc2VsZWN0ZWREYXRlczogZGF5anMuRGF5anNbXSA9IFtdO1xuICAgIEBJbnB1dCgpIHNldCBzZWxlY3RlZERhdGVzKGRhdGVzOiBkYXlqcy5EYXlqc1tdKSB7XG4gICAgICAgIGlmICh0aGlzLl9tb2RlID09PSAnc2luZ2xlJykge1xuICAgICAgICAgICAgZGF0ZXMgPSBkYXRlcy5zbGljZSgwLCAxKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnNlbGVjdGVkRGF5c1RpbWVzdGFtcCA9IG5ldyBTZXQoKTtcbiAgICAgICAgdGhpcy5fc2VsZWN0ZWREYXRlcyA9IGRhdGVzO1xuICAgICAgICBpZiAodGhpcy5fc2VsZWN0ZWREYXRlcy5sZW5ndGgpIHtcbiAgICAgICAgICAgIHRoaXMuX3NlbGVjdGVkRGF0ZXMuZm9yRWFjaChkYXkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWREYXlzVGltZXN0YW1wLmFkZChkYXkudG9EYXRlKCkuZ2V0VGltZSgpKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZ2V0IHNlbGVjdGVkRGF0ZXMoKTogZGF5anMuRGF5anNbXSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9zZWxlY3RlZERhdGVzO1xuICAgIH1cblxuICAgIEBJbnB1dCgpIHN0YXJ0c09uOiBOZW9EYXRlUGlja2VyU3RhcnRzT24gPSAnbW9uZGF5JztcblxuICAgIEBPdXRwdXQoKSBkYXRlc1NlbGVjdGVkOiBFdmVudEVtaXR0ZXI8ZGF5anMuRGF5anNbXT4gPSBuZXcgRXZlbnRFbWl0dGVyPGRheWpzLkRheWpzW10+KCk7XG4gICAgQE91dHB1dCgpIG5leHRNb250aDogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuICAgIEBPdXRwdXQoKSBwcmV2aW91c01vbnRoOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgICBjdXJyZW50WWVhciE6IG51bWJlcjtcbiAgICBjdXJyZW50TW9udGghOiBudW1iZXI7XG4gICAgY3VycmVudE1vbnRoRGF0ZXMkOiBCZWhhdmlvclN1YmplY3Q8RGF5RGV0YWlsW10+ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxEYXlEZXRhaWxbXT4oW10pO1xuICAgIG1pbkRhdGVUaW1lc3RhbXA6IG51bWJlciB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZDtcbiAgICBtYXhEYXRlVGltZXN0YW1wOiBudW1iZXIgfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XG4gICAgbW9udGhzOiBzdHJpbmdbXSA9IFtdO1xuICAgIHNlbGVjdGVkRGF5c1RpbWVzdGFtcDogU2V0PG51bWJlcj4gPSBuZXcgU2V0KCk7XG4gICAgd2Vla0RheXM6IHN0cmluZ1tdID0gW107XG5cbiAgICBkYXlEaXNhYmxlZFBpcGU6IERheURpc2FibGVkUGlwZSA9IGluamVjdChEYXlEaXNhYmxlZFBpcGUpO1xuXG4gICAgcHJpdmF0ZSBkZXN0cm95JCA9IGluamVjdERlc3Ryb3koKTtcblxuICAgIGNvbnN0cnVjdG9yKHB1YmxpYyBzeW1ib2xSZWdpc3RyeTogU3ltYm9sUmVnaXN0cnkpIHtcbiAgICAgICAgdGhpcy5zeW1ib2xSZWdpc3RyeS5yZWdpc3RlclN5bWJvbHMoW2FwQXJyb3dCdXR0b25MZWZ0LCBhcEFycm93QnV0dG9uUmlnaHRdKTtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgZGF5anMuZXh0ZW5kKGxvY2FsZURhdGEpO1xuICAgICAgICBjb25zdCBkYXRlID0gbmV3IERhdGUoKTtcbiAgICAgICAgdGhpcy5jdXJyZW50WWVhciA9IGRhdGUuZ2V0RnVsbFllYXIoKTtcbiAgICAgICAgdGhpcy5jdXJyZW50TW9udGggPSBkYXRlLmdldE1vbnRoKCk7XG4gICAgICAgIGlmICh0aGlzLmxvY2FsZSkge1xuICAgICAgICAgICAgZGF5anMubG9jYWxlKHRoaXMubG9jYWxlKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLm1vbnRocyA9IGRheWpzLm1vbnRocygpO1xuICAgICAgICB0aGlzLndlZWtEYXlzID0gWy4uLmRheWpzLndlZWtkYXlzKCldO1xuXG4gICAgICAgIGlmICh0aGlzLnN0YXJ0c09uID09PSAnbW9uZGF5Jykge1xuICAgICAgICAgICAgY29uc3Qgc3VuZGF5ID0gdGhpcy53ZWVrRGF5cy5zbGljZSgwLCAxKTtcbiAgICAgICAgICAgIHRoaXMud2Vla0RheXMuc3BsaWNlKDAsIDEpO1xuICAgICAgICAgICAgdGhpcy53ZWVrRGF5cyA9IHRoaXMud2Vla0RheXMuY29uY2F0KHN1bmRheSk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5jdXJyZW50TW9udGhEYXRlcyQubmV4dCh0aGlzLmdldE1vbnRoRGV0YWlscyh0aGlzLmN1cnJlbnRZZWFyLCB0aGlzLmN1cnJlbnRNb250aCkpO1xuICAgICAgICB0aGlzLmN1cnJlbnRNb250aERhdGVzJFxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICAgICAgICAgICAgICBmaWx0ZXIoKCkgPT4gISF0aGlzLm1pbkRhdGVUaW1lc3RhbXApLFxuICAgICAgICAgICAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKVxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgLnN1YnNjcmliZShjdXJyZW50TW9udGhEYXRlcyA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgbWluRGF0ZUluUHJldmlvdXNNb250aCA9IHRoaXMubWluRGF0ZVRpbWVzdGFtcFxuICAgICAgICAgICAgICAgICAgICA/IG5ldyBEYXRlKHRoaXMubWluRGF0ZVRpbWVzdGFtcCkuZ2V0TW9udGgoKSA8IHRoaXMuY3VycmVudE1vbnRoXG4gICAgICAgICAgICAgICAgICAgIDogdW5kZWZpbmVkO1xuICAgICAgICAgICAgICAgIHRoaXMucHJldmlvdXNNb250aEF2YWlsYWJsZSA9XG4gICAgICAgICAgICAgICAgICAgICFjdXJyZW50TW9udGhEYXRlcy5zb21lKGRheURldGFpbCA9PiBkYXlEZXRhaWwudGltZXN0YW1wID09PSB0aGlzLm1pbkRhdGVUaW1lc3RhbXApIHx8ICEhbWluRGF0ZUluUHJldmlvdXNNb250aDtcbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIGdldERheURldGFpbHMoaW5kZXg6IG51bWJlciwgZmlyc3REYXk6IG51bWJlciwgbW9udGg6IG51bWJlciwgbnVtYmVyT2ZEYXlzOiBudW1iZXIsIHllYXI6IG51bWJlcik6IERheURldGFpbCB7XG4gICAgICAgIGNvbnN0IGRhdGUgPSBpbmRleCAtIGZpcnN0RGF5O1xuICAgICAgICBjb25zdCBkYXkgPSBpbmRleCAlIDc7XG4gICAgICAgIGxldCBwcmV2TW9udGggPSBtb250aCAtIDE7XG4gICAgICAgIGxldCBwcmV2WWVhciA9IHllYXI7XG4gICAgICAgIGlmIChwcmV2TW9udGggPCAwKSB7XG4gICAgICAgICAgICBwcmV2TW9udGggPSAxMTtcbiAgICAgICAgICAgIHByZXZZZWFyLS07XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgcHJldk1vbnRoTnVtYmVyT2ZEYXlzID0gdGhpcy5nZXROdW1iZXJPZkRheXMocHJldlllYXIsIHByZXZNb250aCk7XG4gICAgICAgIGNvbnN0IF9kYXRlID0gKGRhdGUgPCAwID8gcHJldk1vbnRoTnVtYmVyT2ZEYXlzICsgZGF0ZSA6IGRhdGUgJSBudW1iZXJPZkRheXMpICsgMTtcbiAgICAgICAgY29uc3QgX21vbnRoID0gZGF0ZSA8IDAgPyAtMSA6IGRhdGUgPj0gbnVtYmVyT2ZEYXlzID8gMSA6IDA7XG4gICAgICAgIGNvbnN0IG5ld0RhdGUgPSBuZXcgRGF0ZSh5ZWFyLCBfbW9udGggKyBtb250aCwgX2RhdGUpO1xuICAgICAgICBjb25zdCB0aW1lc3RhbXAgPSBuZXdEYXRlLmdldFRpbWUoKTtcbiAgICAgICAgY29uc3QgZGF5U3RyaW5nID0gdGhpcy53ZWVrRGF5c1tkYXldO1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgZGF0ZTogX2RhdGUsXG4gICAgICAgICAgICBkYXksXG4gICAgICAgICAgICBtb250aDogX21vbnRoLFxuICAgICAgICAgICAgdGltZXN0YW1wLFxuICAgICAgICAgICAgZGF5U3RyaW5nLFxuICAgICAgICAgICAgZGF5anM6IGRheWpzKG5ld0RhdGUpLFxuICAgICAgICB9O1xuICAgIH1cblxuICAgIGdldE51bWJlck9mRGF5cyh5ZWFyOiBudW1iZXIsIG1vbnRoOiBudW1iZXIpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gNDAgLSBuZXcgRGF0ZSh5ZWFyLCBtb250aCwgNDApLmdldERhdGUoKTtcbiAgICB9XG5cbiAgICBnZXRNb250aERldGFpbHMoeWVhcjogbnVtYmVyLCBtb250aDogbnVtYmVyKTogRGF5RGV0YWlsW10ge1xuICAgICAgICBsZXQgZmlyc3REYXkgPSBuZXcgRGF0ZSh5ZWFyLCBtb250aCkuZ2V0RGF5KCk7XG4gICAgICAgIGlmICh0aGlzLnN0YXJ0c09uID09PSAnbW9uZGF5Jykge1xuICAgICAgICAgICAgZmlyc3REYXkgLT0gMTtcbiAgICAgICAgfVxuICAgICAgICAvLyBJZiB0aGUgZmlyc3QgZGF5IGlzIGJlbG93IDAgaXQgbWVhbnMgdGhlIHN1bmRheSBpcyB0aGUgZmlyc3QgZGF5IG9mIHRoZSBtb250aCBzbyB3ZSBuZWVkIHRvIHNob3cgdGhlIGxhc3QgbW9udGhcbiAgICAgICAgaWYgKGZpcnN0RGF5IDwgMCkge1xuICAgICAgICAgICAgZmlyc3REYXkgPSA2O1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IG51bWJlck9mRGF5cyA9IHRoaXMuZ2V0TnVtYmVyT2ZEYXlzKHllYXIsIG1vbnRoKTtcbiAgICAgICAgY29uc3QgbW9udGhBcnJheSA9IFtdO1xuICAgICAgICBjb25zdCByb3dzID0gNjtcbiAgICAgICAgbGV0IGN1cnJlbnREYXkgPSBudWxsO1xuICAgICAgICBsZXQgaW5kZXggPSAwO1xuICAgICAgICBjb25zdCBjb2xzID0gNztcblxuICAgICAgICBmb3IgKGxldCByb3cgPSAwOyByb3cgPCByb3dzOyByb3crKykge1xuICAgICAgICAgICAgZm9yIChsZXQgY29sID0gMDsgY29sIDwgY29sczsgY29sKyspIHtcbiAgICAgICAgICAgICAgICBjdXJyZW50RGF5ID0gdGhpcy5nZXREYXlEZXRhaWxzKGluZGV4LCBmaXJzdERheSwgbW9udGgsIG51bWJlck9mRGF5cywgeWVhcik7XG4gICAgICAgICAgICAgICAgbW9udGhBcnJheS5wdXNoKGN1cnJlbnREYXkpO1xuICAgICAgICAgICAgICAgIGluZGV4Kys7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIG1vbnRoQXJyYXk7XG4gICAgfVxuXG4gICAgb25QcmV2aW91c01vbnRoKCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5wcmV2aW91c01vbnRoQXZhaWxhYmxlKSB7XG4gICAgICAgICAgICB0aGlzLnByZXZpb3VzTW9udGguZW1pdCgpO1xuICAgICAgICAgICAgdGhpcy5jdXJyZW50TW9udGggLT0gMTtcbiAgICAgICAgICAgIGlmICh0aGlzLmN1cnJlbnRNb250aCA9PT0gLTEpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmN1cnJlbnRNb250aCA9IDExO1xuICAgICAgICAgICAgICAgIHRoaXMuY3VycmVudFllYXIgLT0gMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMuY3VycmVudE1vbnRoRGF0ZXMkLm5leHQodGhpcy5nZXRNb250aERldGFpbHModGhpcy5jdXJyZW50WWVhciwgdGhpcy5jdXJyZW50TW9udGgpKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uTmV4dE1vbnRoKCk6IHZvaWQge1xuICAgICAgICB0aGlzLm5leHRNb250aC5lbWl0KCk7XG4gICAgICAgIHRoaXMuY3VycmVudE1vbnRoICs9IDE7XG4gICAgICAgIGlmICh0aGlzLmN1cnJlbnRNb250aCA9PT0gMTIpIHtcbiAgICAgICAgICAgIHRoaXMuY3VycmVudE1vbnRoID0gMDtcbiAgICAgICAgICAgIHRoaXMuY3VycmVudFllYXIgKz0gMTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmN1cnJlbnRNb250aERhdGVzJC5uZXh0KHRoaXMuZ2V0TW9udGhEZXRhaWxzKHRoaXMuY3VycmVudFllYXIsIHRoaXMuY3VycmVudE1vbnRoKSk7XG4gICAgfVxuXG4gICAgb25TZWxlY3REYXkoZGF5RGV0YWlsOiBEYXlEZXRhaWwpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgZGF5RGlzYWJsZWQgPSB0aGlzLmRheURpc2FibGVkUGlwZS50cmFuc2Zvcm0oZGF5RGV0YWlsLCB0aGlzLlRPREFZX1RJTUVTVEFNUCwgdGhpcy5taW5EYXRlVGltZXN0YW1wLCB0aGlzLm1heERhdGVUaW1lc3RhbXApO1xuICAgICAgICBpZiAoIWRheURpc2FibGVkKSB7XG4gICAgICAgICAgICBpZiAodGhpcy5tb2RlID09PSAnc2luZ2xlJykge1xuICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWREYXlzVGltZXN0YW1wLmNsZWFyKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAodGhpcy5taW5EYXRlICYmIGRheURldGFpbC5kYXlqcy5pc0JlZm9yZShkYXlqcyh0aGlzLm1pbkRhdGUpKSkge1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICh0aGlzLm1heERhdGUgJiYgZGF5RGV0YWlsLmRheWpzLmlzQWZ0ZXIoZGF5anModGhpcy5tYXhEYXRlKSkpIHtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAodGhpcy5zZWxlY3RlZERheXNUaW1lc3RhbXAuaGFzKGRheURldGFpbC50aW1lc3RhbXApKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5zZWxlY3RlZERheXNUaW1lc3RhbXAuZGVsZXRlKGRheURldGFpbC50aW1lc3RhbXApO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdGVkRGF5c1RpbWVzdGFtcC5hZGQoZGF5RGV0YWlsLnRpbWVzdGFtcCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLmRhdGVzU2VsZWN0ZWQuZW1pdChBcnJheS5mcm9tKHRoaXMuc2VsZWN0ZWREYXlzVGltZXN0YW1wKS5tYXAodGltZXN0YW1wID0+IGRheWpzKHRpbWVzdGFtcCkpKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJkYXRlLXBpY2tlci1jb250YWluZXJcIj5cbiAgICA8ZGl2IGNsYXNzPVwiZGF0ZS1waWNrZXJcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm1vbnRoLW5hdmlnYXRpb25cIj5cbiAgICAgICAgICAgIDxhcC1pY29uLWJ1dHRvblxuICAgICAgICAgICAgICAgIG5hbWU9XCJuZW8tZGF0ZS1waWNrZXItcHJldmlvdXMtbW9udGhcIlxuICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCIhcHJldmlvdXNNb250aEF2YWlsYWJsZVwiXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uUHJldmlvdXNNb250aCgpXCI+XG4gICAgICAgICAgICAgICAgPGFwLXN5bWJvbFxuICAgICAgICAgICAgICAgICAgICBzeW1ib2xJZD1cImFycm93LWJ1dHRvbi1sZWZ0XCJcbiAgICAgICAgICAgICAgICAgICAgc2l6ZT1cIm1pY3JvXCIgLz5cbiAgICAgICAgICAgIDwvYXAtaWNvbi1idXR0b24+XG4gICAgICAgICAgICA8c3Bhbj57eyBtb250aHNbY3VycmVudE1vbnRoXSB8IHRpdGxlY2FzZSB9fSB7eyBjdXJyZW50WWVhciB9fTwvc3Bhbj5cbiAgICAgICAgICAgIDxhcC1pY29uLWJ1dHRvblxuICAgICAgICAgICAgICAgIG5hbWU9XCJuZW8tZGF0ZS1waWNrZXItbmV4dC1tb250aFwiXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uTmV4dE1vbnRoKClcIj5cbiAgICAgICAgICAgICAgICA8YXAtc3ltYm9sXG4gICAgICAgICAgICAgICAgICAgIHN5bWJvbElkPVwiYXJyb3ctYnV0dG9uLXJpZ2h0XCJcbiAgICAgICAgICAgICAgICAgICAgc2l6ZT1cIm1pY3JvXCIgLz5cbiAgICAgICAgICAgIDwvYXAtaWNvbi1idXR0b24+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwid2Vlay1oZWFkZXJcIj5cbiAgICAgICAgICAgIEBmb3IgKGRheSBvZiB3ZWVrRGF5czsgdHJhY2sgZGF5KSB7XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRheVwiPlxuICAgICAgICAgICAgICAgICAgICB7eyBkYXkgfCBzbGljZTogMCA6IDIgfCB0aXRsZWNhc2UgfX1cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJkYXlzLWNvbnRhaW5lclwiPlxuICAgICAgICAgICAgQGZvciAoZGF5IG9mIGN1cnJlbnRNb250aERhdGVzJCB8IGFzeW5jOyB0cmFjayBkYXkpIHtcbiAgICAgICAgICAgICAgICBAaWYgKGRheVRlbXBsYXRlKSB7XG4gICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImRheVRlbXBsYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7IGRheTogZGF5IH1cIiAvPlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAaWYgKCFkYXlUZW1wbGF0ZSkge1xuICAgICAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImRheVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MuZGlzYWJsZWRdPVwiZGF5IHwgZGF5RGlzYWJsZWQ6IFRPREFZX1RJTUVTVEFNUCA6IG1pbkRhdGVUaW1lc3RhbXAgOiBtYXhEYXRlVGltZXN0YW1wXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy50b2RheV09XCJkYXkudGltZXN0YW1wID09PSBUT0RBWV9USU1FU1RBTVBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzLnNlbGVjdGVkXT1cInNlbGVjdGVkRGF5c1RpbWVzdGFtcC5oYXMoZGF5LnRpbWVzdGFtcClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uU2VsZWN0RGF5KGRheSlcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IGRheS5kYXRlIH19XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export * from './neo-datepicker.component';
|
|
2
1
|
export * from './day-detail.model';
|
|
3
2
|
export * from './day-disabled.pipe';
|
|
4
|
-
|
|
3
|
+
export * from './neo-datepicker.component';
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYnMvdWktY29tcG9uZW50cy9uZW8tZGF0ZXBpY2tlci9zcmMvcHVibGljX2FwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLG9CQUFvQixDQUFDO0FBQ25DLGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYyw0QkFBNEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZGF5LWRldGFpbC5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL2RheS1kaXNhYmxlZC5waXBlJztcbmV4cG9ydCAqIGZyb20gJy4vbmVvLWRhdGVwaWNrZXIuY29tcG9uZW50JztcbiJdfQ==
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
import { ButtonComponent } from '@agorapulse/ui-components/button';
|
|
2
2
|
import { IconButtonComponent } from '@agorapulse/ui-components/icon-button';
|
|
3
3
|
import { SymbolComponent, apChevronLeft, apChevronRight } from '@agorapulse/ui-symbol';
|
|
4
|
-
import { NgForOf, NgIf } from '@angular/common';
|
|
5
4
|
import { ChangeDetectionStrategy, Component, EventEmitter, HostListener, Input, Output, ViewEncapsulation } from '@angular/core';
|
|
6
5
|
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
|
|
7
|
-
import { BehaviorSubject, combineLatest, distinctUntilChanged,
|
|
6
|
+
import { BehaviorSubject, Subject, combineLatest, distinctUntilChanged, takeUntil } from 'rxjs';
|
|
8
7
|
import { PaginatorButtonComponent } from './paginator-button/paginator-button.component';
|
|
9
8
|
import * as i0 from "@angular/core";
|
|
10
9
|
import * as i1 from "@agorapulse/ui-symbol";
|
|
@@ -89,20 +88,11 @@ export class PaginatorComponent {
|
|
|
89
88
|
this.currentPageIndexChange.emit(pageIndex);
|
|
90
89
|
}
|
|
91
90
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: PaginatorComponent, deps: [{ token: i1.SymbolRegistry }], target: i0.ɵɵFactoryTarget.Component });
|
|
92
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
91
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.3", type: PaginatorComponent, isStandalone: true, selector: "ap-paginator", inputs: { currentPageIndex: "currentPageIndex", displayGoTo: "displayGoTo", edgeSize: "edgeSize", goToLabel: "goToLabel", itemCount: "itemCount", itemCountPerPage: "itemCountPerPage", middleSize: "middleSize" }, outputs: { currentPageIndexChange: "currentPageIndexChange" }, host: { listeners: { "keydown.enter": "onEnterKeydownPressed()" } }, ngImport: i0, template: "<div class=\"item-index-overview\">\n {{ currentPageIndex * itemCountPerPage + 1 }}\n - {{ lastPageDisplayed ? itemCount : (currentPageIndex + 1) * itemCountPerPage }} of {{ itemCount }}\n</div>\n\n<div class=\"pages\">\n <button\n class=\"navigation-button\"\n ariaLabel=\"Select Previous Page button\"\n [disabled]=\"firstPageDisplayed\"\n (click)=\"onSelectPage(currentPageIndex - 1)\">\n <ap-symbol symbolId=\"chevron-left\" />\n </button>\n @if (pageCount > edgeSize + 1) {\n @if (currentPageIndex >= edgeSize - 1) {\n @if (currentPageIndex <= pageCount - edgeSize) {\n <ap-paginator-button\n [pageIndex]=\"0\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n <span class=\"ellipsis\">...</span>\n @for (dummy of [].constructor(middleSize); track dummy; let i = $index) {\n <ap-paginator-button\n [pageIndex]=\"currentPageIndex + i - (middleSize - 1) / 2\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n }\n <span class=\"ellipsis\">...</span>\n <ap-paginator-button\n [pageIndex]=\"pageCount - 1\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n } @else {\n <ap-paginator-button\n [pageIndex]=\"0\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n <span class=\"ellipsis\">...</span>\n @for (dummy of [].constructor(edgeSize); track dummy; let i = $index) {\n <ap-paginator-button\n [pageIndex]=\"pageCount - edgeSize + i\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n }\n }\n } @else {\n @for (dummy of [].constructor(edgeSize); track dummy; let i = $index) {\n <ap-paginator-button\n [pageIndex]=\"i\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n }\n <span class=\"ellipsis\">...</span>\n <ap-paginator-button\n [pageIndex]=\"pageCount - 1\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n }\n } @else {\n @for (dummy of [].constructor(pageCount); track dummy; let i = $index) {\n <ap-paginator-button\n [pageIndex]=\"i\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n }\n }\n <button\n class=\"navigation-button\"\n ariaLabel=\"Select Next Page button\"\n [disabled]=\"lastPageDisplayed\"\n (click)=\"onSelectPage(currentPageIndex + 1)\">\n <ap-symbol symbolId=\"chevron-right\" />\n </button>\n</div>\n<div class=\"go-to\">\n @if (displayGoTo) {\n <span>{{ goToLabel }}</span>\n }\n @if (displayGoTo) {\n <input\n type=\"number\"\n [(ngModel)]=\"pageInput\" />\n }\n</div>\n", styles: ["ap-paginator{display:flex;align-items:center;gap:var(--ref-spacing-lg);width:100%;justify-content:space-between;--paginator-button-height: 36px}ap-paginator .item-index-overview{font-weight:var(--ref-font-weight-regular);font-size:var(--ref-font-size-sm);line-height:var(--ref-line-height-sm);color:var(--ref-color-grey-60);white-space:nowrap}ap-paginator .navigation-button{display:grid;place-content:center;height:var(--paginator-button-height);width:var(--paginator-button-height);min-height:var(--paginator-button-height);min-width:var(--paginator-button-height);max-height:var(--paginator-button-height);max-width:var(--paginator-button-height);border-radius:var(--ref-border-radius-sm);background:transparent;border:none}ap-paginator .navigation-button ap-symbol{color:var(--ref-color-electric-blue-100)}ap-paginator .navigation-button:disabled{pointer-events:none}ap-paginator .navigation-button:disabled ap-symbol{color:var(--ref-color-grey-40)}ap-paginator .navigation-button:not(:disabled){cursor:pointer}ap-paginator .navigation-button:hover:not(:disabled){background:var(--ref-color-electric-blue-10)}ap-paginator .navigation-button:active{background:var(--ref-color-electric-blue-20)}@media (hover: hover){ap-paginator .navigation-button:focus:not(.disabled):not(:active){outline:2px solid var(--ref-color-electric-blue-100);outline-offset:1px}}ap-paginator .pages{display:flex;justify-self:center;color:var(--ref-color-electric-blue-100);gap:var(--ref-spacing-xxxs)}ap-paginator .pages ap-paginator-button,ap-paginator .pages button.mat-flat-button{vertical-align:middle}ap-paginator .pages button.mat-flat-button:not(.mat-accent):not([disabled]){color:var(--ref-color-electric-blue-100)}ap-paginator .pages button.mat-flat-button:not(.mat-accent):not([disabled]):hover{background-color:var(--ref-color-electric-blue-10)}ap-paginator .pages .ellipsis{display:inline-block;width:var(--paginator-button-height);line-height:var(--paginator-button-height);text-align:center;vertical-align:bottom}ap-paginator .go-to{display:flex;align-items:center;gap:var(--ref-spacing-xs)}ap-paginator .go-to span{font-weight:var(--ref-font-weight-standard);font-size:var(--ref-font-size-sm);line-height:var(--ref-line-height-sm);color:var(--ref-color-grey-60)}ap-paginator .go-to input{box-sizing:border-box;background:var(--ref-color-white);width:48px;height:var(--paginator-button-height);border-radius:var(--ref-border-radius-sm);border:1px solid var(--ref-color-grey-20);padding:var(--ref-spacing-xs) var(--ref-spacing-sm)}\n"], dependencies: [{ kind: "component", type: SymbolComponent, selector: "ap-symbol", inputs: ["color", "symbolId", "size"] }, { kind: "component", type: PaginatorButtonComponent, selector: "ap-paginator-button", inputs: ["ariaLabel", "disabled", "pageIndex", "selectedPageIndex"], outputs: ["selectPage"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
93
92
|
}
|
|
94
93
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: PaginatorComponent, decorators: [{
|
|
95
94
|
type: Component,
|
|
96
|
-
args: [{ selector: 'ap-paginator', changeDetection: ChangeDetectionStrategy.OnPush, imports: [
|
|
97
|
-
SymbolComponent,
|
|
98
|
-
ButtonComponent,
|
|
99
|
-
NgIf,
|
|
100
|
-
PaginatorButtonComponent,
|
|
101
|
-
NgForOf,
|
|
102
|
-
IconButtonComponent,
|
|
103
|
-
ReactiveFormsModule,
|
|
104
|
-
FormsModule,
|
|
105
|
-
], standalone: true, encapsulation: ViewEncapsulation.None, template: "<div class=\"item-index-overview\">\n {{ currentPageIndex * itemCountPerPage + 1 }}\n - {{ lastPageDisplayed ? itemCount : (currentPageIndex + 1) * itemCountPerPage }} of {{ itemCount }}\n</div>\n\n<div class=\"pages\">\n <button\n class=\"navigation-button\"\n ariaLabel=\"Select Previous Page button\"\n [disabled]=\"firstPageDisplayed\"\n (click)=\"onSelectPage(currentPageIndex - 1)\">\n <ap-symbol symbolId=\"chevron-left\" />\n </button>\n <ng-container *ngIf=\"pageCount > edgeSize + 1; else allPagesDisplayed\">\n <ng-container *ngIf=\"currentPageIndex >= edgeSize - 1; else oneOfFirstPagesDisplayed\">\n <ng-container *ngIf=\"currentPageIndex <= pageCount - edgeSize; else oneOfLastPagesDisplayed\">\n <ap-paginator-button\n [pageIndex]=\"0\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n <span class=\"ellipsis\">...</span>\n <ng-container *ngFor=\"let dummy of [].constructor(middleSize); let i = index\">\n <ap-paginator-button\n [pageIndex]=\"currentPageIndex + i - (middleSize - 1) / 2\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n </ng-container>\n <span class=\"ellipsis\">...</span>\n <ap-paginator-button\n [pageIndex]=\"pageCount - 1\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n </ng-container>\n </ng-container>\n <ng-template #oneOfFirstPagesDisplayed>\n <ng-container *ngFor=\"let dummy of [].constructor(edgeSize); let i = index\">\n <ap-paginator-button\n [pageIndex]=\"i\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n </ng-container>\n <span class=\"ellipsis\">...</span>\n <ap-paginator-button\n [pageIndex]=\"pageCount - 1\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n </ng-template>\n <ng-template #oneOfLastPagesDisplayed>\n <ap-paginator-button\n [pageIndex]=\"0\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n <span class=\"ellipsis\">...</span>\n <ng-container *ngFor=\"let dummy of [].constructor(edgeSize); let i = index\">\n <ap-paginator-button\n [pageIndex]=\"pageCount - edgeSize + i\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n </ng-container>\n </ng-template>\n </ng-container>\n <ng-template #allPagesDisplayed>\n <ng-container *ngFor=\"let dummy of [].constructor(pageCount); let i = index\">\n <ap-paginator-button\n [pageIndex]=\"i\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n </ng-container>\n </ng-template>\n <button\n class=\"navigation-button\"\n ariaLabel=\"Select Next Page button\"\n [disabled]=\"lastPageDisplayed\"\n (click)=\"onSelectPage(currentPageIndex + 1)\">\n <ap-symbol symbolId=\"chevron-right\" />\n </button>\n</div>\n<div class=\"go-to\">\n <span *ngIf=\"displayGoTo\">{{ goToLabel }}</span>\n <input\n *ngIf=\"displayGoTo\"\n type=\"number\"\n [(ngModel)]=\"pageInput\" />\n</div>\n", styles: ["ap-paginator{display:flex;align-items:center;gap:var(--ref-spacing-lg);width:100%;justify-content:space-between;--paginator-button-height: 36px}ap-paginator .item-index-overview{font-weight:var(--ref-font-weight-regular);font-size:var(--ref-font-size-sm);line-height:var(--ref-line-height-sm);color:var(--ref-color-grey-60);white-space:nowrap}ap-paginator .navigation-button{display:grid;place-content:center;height:var(--paginator-button-height);width:var(--paginator-button-height);min-height:var(--paginator-button-height);min-width:var(--paginator-button-height);max-height:var(--paginator-button-height);max-width:var(--paginator-button-height);border-radius:var(--ref-border-radius-sm);background:transparent;border:none}ap-paginator .navigation-button ap-symbol{color:var(--ref-color-electric-blue-100)}ap-paginator .navigation-button:disabled{pointer-events:none}ap-paginator .navigation-button:disabled ap-symbol{color:var(--ref-color-grey-40)}ap-paginator .navigation-button:not(:disabled){cursor:pointer}ap-paginator .navigation-button:hover:not(:disabled){background:var(--ref-color-electric-blue-10)}ap-paginator .navigation-button:active{background:var(--ref-color-electric-blue-20)}@media (hover: hover){ap-paginator .navigation-button:focus:not(.disabled):not(:active){outline:2px solid var(--ref-color-electric-blue-100);outline-offset:1px}}ap-paginator .pages{display:flex;justify-self:center;color:var(--ref-color-electric-blue-100);gap:var(--ref-spacing-xxxs)}ap-paginator .pages ap-paginator-button,ap-paginator .pages button.mat-flat-button{vertical-align:middle}ap-paginator .pages button.mat-flat-button:not(.mat-accent):not([disabled]){color:var(--ref-color-electric-blue-100)}ap-paginator .pages button.mat-flat-button:not(.mat-accent):not([disabled]):hover{background-color:var(--ref-color-electric-blue-10)}ap-paginator .pages .ellipsis{display:inline-block;width:var(--paginator-button-height);line-height:var(--paginator-button-height);text-align:center;vertical-align:bottom}ap-paginator .go-to{display:flex;align-items:center;gap:var(--ref-spacing-xs)}ap-paginator .go-to span{font-weight:var(--ref-font-weight-standard);font-size:var(--ref-font-size-sm);line-height:var(--ref-line-height-sm);color:var(--ref-color-grey-60)}ap-paginator .go-to input{box-sizing:border-box;background:var(--ref-color-white);width:48px;height:var(--paginator-button-height);border-radius:var(--ref-border-radius-sm);border:1px solid var(--ref-color-grey-20);padding:var(--ref-spacing-xs) var(--ref-spacing-sm)}\n"] }]
|
|
95
|
+
args: [{ selector: 'ap-paginator', changeDetection: ChangeDetectionStrategy.OnPush, imports: [SymbolComponent, ButtonComponent, PaginatorButtonComponent, IconButtonComponent, ReactiveFormsModule, FormsModule], standalone: true, encapsulation: ViewEncapsulation.None, template: "<div class=\"item-index-overview\">\n {{ currentPageIndex * itemCountPerPage + 1 }}\n - {{ lastPageDisplayed ? itemCount : (currentPageIndex + 1) * itemCountPerPage }} of {{ itemCount }}\n</div>\n\n<div class=\"pages\">\n <button\n class=\"navigation-button\"\n ariaLabel=\"Select Previous Page button\"\n [disabled]=\"firstPageDisplayed\"\n (click)=\"onSelectPage(currentPageIndex - 1)\">\n <ap-symbol symbolId=\"chevron-left\" />\n </button>\n @if (pageCount > edgeSize + 1) {\n @if (currentPageIndex >= edgeSize - 1) {\n @if (currentPageIndex <= pageCount - edgeSize) {\n <ap-paginator-button\n [pageIndex]=\"0\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n <span class=\"ellipsis\">...</span>\n @for (dummy of [].constructor(middleSize); track dummy; let i = $index) {\n <ap-paginator-button\n [pageIndex]=\"currentPageIndex + i - (middleSize - 1) / 2\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n }\n <span class=\"ellipsis\">...</span>\n <ap-paginator-button\n [pageIndex]=\"pageCount - 1\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n } @else {\n <ap-paginator-button\n [pageIndex]=\"0\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n <span class=\"ellipsis\">...</span>\n @for (dummy of [].constructor(edgeSize); track dummy; let i = $index) {\n <ap-paginator-button\n [pageIndex]=\"pageCount - edgeSize + i\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n }\n }\n } @else {\n @for (dummy of [].constructor(edgeSize); track dummy; let i = $index) {\n <ap-paginator-button\n [pageIndex]=\"i\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n }\n <span class=\"ellipsis\">...</span>\n <ap-paginator-button\n [pageIndex]=\"pageCount - 1\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n }\n } @else {\n @for (dummy of [].constructor(pageCount); track dummy; let i = $index) {\n <ap-paginator-button\n [pageIndex]=\"i\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n }\n }\n <button\n class=\"navigation-button\"\n ariaLabel=\"Select Next Page button\"\n [disabled]=\"lastPageDisplayed\"\n (click)=\"onSelectPage(currentPageIndex + 1)\">\n <ap-symbol symbolId=\"chevron-right\" />\n </button>\n</div>\n<div class=\"go-to\">\n @if (displayGoTo) {\n <span>{{ goToLabel }}</span>\n }\n @if (displayGoTo) {\n <input\n type=\"number\"\n [(ngModel)]=\"pageInput\" />\n }\n</div>\n", styles: ["ap-paginator{display:flex;align-items:center;gap:var(--ref-spacing-lg);width:100%;justify-content:space-between;--paginator-button-height: 36px}ap-paginator .item-index-overview{font-weight:var(--ref-font-weight-regular);font-size:var(--ref-font-size-sm);line-height:var(--ref-line-height-sm);color:var(--ref-color-grey-60);white-space:nowrap}ap-paginator .navigation-button{display:grid;place-content:center;height:var(--paginator-button-height);width:var(--paginator-button-height);min-height:var(--paginator-button-height);min-width:var(--paginator-button-height);max-height:var(--paginator-button-height);max-width:var(--paginator-button-height);border-radius:var(--ref-border-radius-sm);background:transparent;border:none}ap-paginator .navigation-button ap-symbol{color:var(--ref-color-electric-blue-100)}ap-paginator .navigation-button:disabled{pointer-events:none}ap-paginator .navigation-button:disabled ap-symbol{color:var(--ref-color-grey-40)}ap-paginator .navigation-button:not(:disabled){cursor:pointer}ap-paginator .navigation-button:hover:not(:disabled){background:var(--ref-color-electric-blue-10)}ap-paginator .navigation-button:active{background:var(--ref-color-electric-blue-20)}@media (hover: hover){ap-paginator .navigation-button:focus:not(.disabled):not(:active){outline:2px solid var(--ref-color-electric-blue-100);outline-offset:1px}}ap-paginator .pages{display:flex;justify-self:center;color:var(--ref-color-electric-blue-100);gap:var(--ref-spacing-xxxs)}ap-paginator .pages ap-paginator-button,ap-paginator .pages button.mat-flat-button{vertical-align:middle}ap-paginator .pages button.mat-flat-button:not(.mat-accent):not([disabled]){color:var(--ref-color-electric-blue-100)}ap-paginator .pages button.mat-flat-button:not(.mat-accent):not([disabled]):hover{background-color:var(--ref-color-electric-blue-10)}ap-paginator .pages .ellipsis{display:inline-block;width:var(--paginator-button-height);line-height:var(--paginator-button-height);text-align:center;vertical-align:bottom}ap-paginator .go-to{display:flex;align-items:center;gap:var(--ref-spacing-xs)}ap-paginator .go-to span{font-weight:var(--ref-font-weight-standard);font-size:var(--ref-font-size-sm);line-height:var(--ref-line-height-sm);color:var(--ref-color-grey-60)}ap-paginator .go-to input{box-sizing:border-box;background:var(--ref-color-white);width:48px;height:var(--paginator-button-height);border-radius:var(--ref-border-radius-sm);border:1px solid var(--ref-color-grey-20);padding:var(--ref-spacing-xs) var(--ref-spacing-sm)}\n"] }]
|
|
106
96
|
}], ctorParameters: () => [{ type: i1.SymbolRegistry }], propDecorators: { currentPageIndex: [{
|
|
107
97
|
type: Input
|
|
108
98
|
}], displayGoTo: [{
|
|
@@ -123,4 +113,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImpor
|
|
|
123
113
|
type: HostListener,
|
|
124
114
|
args: ['keydown.enter']
|
|
125
115
|
}] } });
|
|
126
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdG9yLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYnMvdWktY29tcG9uZW50cy9wYWdpbmF0b3Ivc3JjL3BhZ2luYXRvci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9saWJzL3VpLWNvbXBvbmVudHMvcGFnaW5hdG9yL3NyYy9wYWdpbmF0b3IuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzVFLE9BQU8sRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLGNBQWMsRUFBa0IsTUFBTSx1QkFBdUIsQ0FBQztBQUN2RyxPQUFPLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2hELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQWEsTUFBTSxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVJLE9BQU8sRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxvQkFBb0IsRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2hHLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLCtDQUErQyxDQUFDOzs7O0FBb0J6RixNQUFNLE9BQU8sa0JBQWtCO0lBMERSO0lBekRWLG1CQUFtQixHQUFHLENBQUMsQ0FBQztJQUN4QixrQkFBa0IsR0FBRyxDQUFDLENBQUM7SUFDdkIsMkJBQTJCLEdBQUcsRUFBRSxDQUFDO0lBQ2pDLDBCQUEwQixHQUFHLENBQUMsQ0FBQztJQUMvQixpQkFBaUIsR0FBRyxDQUFDLENB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LENBQUMsQ0FBQztRQUN2QyxJQUFJLENBQUMsc0JBQXNCLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ2hELENBQUM7dUdBcEdRLGtCQUFrQjsyRkFBbEIsa0JBQWtCLGdhQzNCL0Isb3lIQW9GQSx1aEZEckVRLGVBQWUsNkZBRWYsSUFBSSw2RkFDSix3QkFBd0IsOEpBQ3hCLE9BQU8sa0hBRVAsbUJBQW1CLHdqQkFDbkIsV0FBVzs7MkZBS04sa0JBQWtCO2tCQWxCOUIsU0FBUzsrQkFDSSxjQUFjLG1CQUdQLHVCQUF1QixDQUFDLE1BQU0sV0FDdEM7d0JBQ0wsZUFBZTt3QkFDZixlQUFlO3dCQUNmLElBQUk7d0JBQ0osd0JBQXdCO3dCQUN4QixPQUFPO3dCQUNQLG1CQUFtQjt3QkFDbkIsbUJBQW1CO3dCQUNuQixXQUFXO3FCQUNkLGNBQ1csSUFBSSxpQkFDRCxpQkFBaUIsQ0FBQyxJQUFJO21GQVN4QixnQkFBZ0I7c0JBQTVCLEtBQUs7Z0JBUUcsV0FBVztzQkFBbkIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ08sU0FBUztzQkFBckIsS0FBSztnQkFPTyxnQkFBZ0I7c0JBQTVCLEtBQUs7Z0JBU08sVUFBVTtzQkFBdEIsS0FBSztnQkFZSSxzQkFBc0I7c0JBQS9CLE1BQU07Z0JBNENQLHFCQUFxQjtzQkFEcEIsWUFBWTt1QkFBQyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnQGFnb3JhcHVsc2UvdWktY29tcG9uZW50cy9idXR0b24nO1xuaW1wb3J0IHsgSWNvbkJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJ0BhZ29yYXB1bHNlL3VpLWNvbXBvbmVudHMvaWNvbi1idXR0b24nO1xuaW1wb3J0IHsgU3ltYm9sQ29tcG9uZW50LCBhcENoZXZyb25MZWZ0LCBhcENoZXZyb25SaWdodCwgU3ltYm9sUmVnaXN0cnkgfSBmcm9tICdAYWdvcmFwdWxzZS91aS1zeW1ib2wnO1xuaW1wb3J0IHsgTmdGb3JPZiwgTmdJZiB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIEhvc3RMaXN0ZW5lciwgSW5wdXQsIE9uRGVzdHJveSwgT3V0cHV0LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGNvbWJpbmVMYXRlc3QsIGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBTdWJqZWN0LCB0YWtlVW50aWwgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFBhZ2luYXRvckJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4vcGFnaW5hdG9yLWJ1dHRvbi9wYWdpbmF0b3ItYnV0dG9uLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYXAtcGFnaW5hdG9yJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vcGFnaW5hdG9yLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9wYWdpbmF0b3IuY29tcG9uZW50LnNjc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIFN5bWJvbENvbXBvbmVudCxcbiAgICAgICAgQnV0dG9uQ29tcG9uZW50LFxuICAgICAgICBOZ0lmLFxuICAgICAgICBQYWdpbmF0b3JCdXR0b25Db21wb25lbnQsXG4gICAgICAgIE5nRm9yT2YsXG4gICAgICAgIEljb25CdXR0b25Db21wb25lbnQsXG4gICAgICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgICAgIEZvcm1zTW9kdWxlLFxuICAgIF0sXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxufSlcbmV4cG9ydCBjbGFzcyBQYWdpbmF0b3JDb21wb25lbnQgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICAgIHJlYWRvbmx5IERFRkFVTFRfTUlERExFX1NJWkUgPSAzO1xuICAgIHJlYWRvbmx5IERFRkFVTFRfSVRFTV9DT1VOVCA9IDA7XG4gICAgcmVhZG9ubHkgREVGQVVMVF9JVEVNX0NPVU5UX1BFUl9QQUdFID0gMTA7XG4gICAgcmVhZG9ubHkgREVGQVVMVF9DVVJSRU5UX1BBR0VfSU5ERVggPSAwO1xuICAgIHJlYWRvbmx5IERFRkFVTFRfRURHRV9TSVpFID0gNTtcblxuICAgIEBJbnB1dCgpIHNldCBjdXJyZW50UGFnZUluZGV4KHZhbHVlOiBudW1iZXIpIHtcbiAgICAgICAgdGhpcy5fY3VycmVudFBhZ2VJbmRleC5uZXh0KHZhbHVlID8/IHRoaXMuREVGQVVMVF9DVVJSRU5UX1BBR0VfSU5ERVgpO1xuICAgIH1cblxuICAgIGdldCBjdXJyZW50UGFnZUluZGV4KCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0aGlzLl9jdXJyZW50UGFnZUluZGV4LmdldFZhbHVlKCk7XG4gICAgfVxuXG4gICAgQElucHV0KCkgZGlzcGxheUdvVG8gPSBmYWxzZTtcbiAgICBASW5wdXQoKSBlZGdlU2l6ZTogbnVtYmVyID0gdGhpcy5ERUZBVUxUX0VER0VfU0laRTtcbiAgICBASW5wdXQoKSBnb1RvTGFiZWw6IHN0cmluZyA9ICdHbyB0byc7XG4gICAgQElucHV0KCkgc2V0IGl0ZW1Db3VudCh2YWx1ZTogbnVtYmVyKSB7XG4gICAgICAgIHRoaXMuX2l0ZW1Db3VudC5uZXh0KHZhbHVlID8/IHRoaXMuREVGQVVMVF9JVEVNX0NPVU5UKTtcbiAgICB9XG5cbiAgICBnZXQgaXRlbUNvdW50KCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0aGlzLl9pdGVtQ291bnQuZ2V0VmFsdWUoKTtcbiAgICB9XG4gICAgQElucHV0KCkgc2V0IGl0ZW1Db3VudFBlclBhZ2UodmFsdWU6IG51bWJlcikge1xuICAgICAgICB0aGlzLl9pdGVtQ291bnRQZXJQYWdlLm5leHQodmFsdWUgPz8gdGhpcy5ERUZBVUxUX0lURU1fQ09VTlRfUEVSX1BBR0UpO1xuICAgIH1cblxuICAgIGdldCBpdGVtQ291bnRQZXJQYWdlKCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0aGlzLl9pdGVtQ291bnRQZXJQYWdlLmdldFZhbHVlKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfbWlkZGxlU2l6ZSE6IG51bWJlcjtcbiAgICBASW5wdXQoKSBzZXQgbWlkZGxlU2l6ZSh2YWx1ZTogbnVtYmVyKSB7XG4gICAgICAgIC8vIG1ha2Ugc3VyZSBtaWRkbGUgc2l6ZSBpcyBhbiBvZGQgbnVtYmVyXG4gICAgICAgIGlmICh2YWx1ZSAmJiB2YWx1ZSAlIDIgPT09IDApIHtcbiAgICAgICAgICAgIHZhbHVlKys7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5fbWlkZGxlU2l6ZSA9IHZhbHVlID8/IHRoaXMuREVGQVVMVF9NSURETEVfU0laRTtcbiAgICB9XG5cbiAgICBnZXQgbWlkZGxlU2l6ZSgpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gdGhpcy5fbWlkZGxlU2l6ZTtcbiAgICB9XG5cbiAgICBAT3V0cHV0KCkgY3VycmVudFBhZ2VJbmRleENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xuXG4gICAgcGFnZUlucHV0OiBzdHJpbmcgPSAnJztcbiAgICBwYWdlQ291bnQgPSAwO1xuICAgIGZpcnN0UGFnZURpc3BsYXllZCA9IHRydWU7XG4gICAgbGFzdFBhZ2VEaXNwbGF5ZWQgPSB0cnVlO1xuICAgIHByaXZhdGUgZGVzdHJveSQ6IFN1YmplY3Q8dm9pZD4gPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gICAgcHJpdmF0ZSBfaXRlbUNvdW50OiBCZWhhdmlvclN1YmplY3Q8bnVtYmVyPiA9IG5ldyBCZWhhdmlvclN1YmplY3Q8bnVtYmVyPih0aGlzLkRFRkFVTFRfSVRFTV9DT1VOVCk7XG4gICAgcHJpdmF0ZSBfaXRlbUNvdW50UGVyUGFnZTogQmVoYXZpb3JTdWJqZWN0PG51bWJlcj4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PG51bWJlcj4odGhpcy5ERUZBVUxUX0lURU1fQ09VTlRfUEVSX1BBR0UpO1xuICAgIHByaXZhdGUgX2N1cnJlbnRQYWdlSW5kZXg6IEJlaGF2aW9yU3ViamVjdDxudW1iZXI+ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxudW1iZXI+KHRoaXMuREVGQVVMVF9DVVJSRU5UX1BBR0VfSU5ERVgpO1xuXG4gICAgY29uc3RydWN0b3IocHVibGljIHN5bWJvbFJlZ2lzdHJ5OiBTeW1ib2xSZWdpc3RyeSkge1xuICAgICAgICB0aGlzLnN5bWJvbFJlZ2lzdHJ5LnJlZ2lzdGVyU3ltYm9scyhbYXBDaGV2cm9uTGVmdCwgYXBDaGV2cm9uUmlnaHRdKTtcbiAgICAgICAgY29tYmluZUxhdGVzdChbdGhpcy5faXRlbUNvdW50LCB0aGlzLl9pdGVtQ291bnRQZXJQYWdlLCB0aGlzLl9jdXJyZW50UGFnZUluZGV4XSlcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKFxuICAgICAgICAgICAgICAgICAgICAoXG4gICAgICAgICAgICAgICAgICAgICAgICBbcHJldmlvdXNJdGVtQ291bnQsIHByZXZpb3VzSXRlbUNvdW50UGVyUGFnZSwgcHJldmlvdXNDdXJyZW50UGFnZUluZGV4XSxcbiAgICAgICAgICAgICAgICAgICAgICAgIFtpdGVtQ291bnQsIGl0ZW1Db3VudFBlclBhZ2UsIGN1cnJlbnRQYWdlSW5kZXhdXG4gICAgICAgICAgICAgICAgICAgICkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcmV2aW91c0l0ZW1Db3VudCA9PT0gaXRlbUNvdW50ICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJldmlvdXNJdGVtQ291bnRQZXJQYWdlID09PSBpdGVtQ291bnRQZXJQYWdlICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJldmlvdXNDdXJyZW50UGFnZUluZGV4ID09PSBjdXJyZW50UGFnZUluZGV4XG4gICAgICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95JClcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKFtpdGVtQ291bnQsIGl0ZW1Db3VudFBlclBhZ2UsIGN1cnJlbnRQYWdlSW5kZXhdKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5wYWdlQ291bnQgPSBNYXRoLmNlaWwoaXRlbUNvdW50IC8gaXRlbUNvdW50UGVyUGFnZSk7XG4gICAgICAgICAgICAgICAgLy8gbWFrZSBzdXJlIHBhZ2UgaW5kZXggaXMgYmV0d2VlbiBtaW4gYW5kIG1heCBwYWdlIGluZGV4XG4gICAgICAgICAgICAgICAgdGhpcy5fY3VycmVudFBhZ2VJbmRleC5uZXh0KE1hdGgubWF4KDAsIE1hdGgubWluKHRoaXMucGFnZUNvdW50IC0gMSwgY3VycmVudFBhZ2VJbmRleCkpKTtcbiAgICAgICAgICAgICAgICB0aGlzLmZpcnN0UGFnZURpc3BsYXllZCA9IHRoaXMuY3VycmVudFBhZ2VJbmRleCA9PT0gMDtcbiAgICAgICAgICAgICAgICB0aGlzLmxhc3RQYWdlRGlzcGxheWVkID0gdGhpcy5jdXJyZW50UGFnZUluZGV4ID09PSB0aGlzLnBhZ2VDb3VudCAtIDE7XG4gICAgICAgICAgICB9KTtcbiAgICB9XG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZGVzdHJveSQubmV4dCgpO1xuICAgICAgICB0aGlzLmRlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcigna2V5ZG93bi5lbnRlcicpXG4gICAgb25FbnRlcktleWRvd25QcmVzc2VkKCkge1xuICAgICAgICBpZiAodGhpcy5wYWdlSW5wdXQgJiYgIWlzTmFOKCt0aGlzLnBhZ2VJbnB1dCkgJiYgK3RoaXMucGFnZUlucHV0ID4gMCAmJiArdGhpcy5wYWdlSW5wdXQgPD0gdGhpcy5wYWdlQ291bnQpIHtcbiAgICAgICAgICAgIHRoaXMub25TZWxlY3RQYWdlKCt0aGlzLnBhZ2VJbnB1dCAtIDEpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMucGFnZUlucHV0ID0gJyc7XG4gICAgfVxuXG4gICAgb25TZWxlY3RQYWdlKHBhZ2VJbmRleDogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2N1cnJlbnRQYWdlSW5kZXgubmV4dChwYWdlSW5kZXgpO1xuICAgICAgICB0aGlzLmN1cnJlbnRQYWdlSW5kZXhDaGFuZ2UuZW1pdChwYWdlSW5kZXgpO1xuICAgIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJpdGVtLWluZGV4LW92ZXJ2aWV3XCI+XG4gICAge3sgY3VycmVudFBhZ2VJbmRleCAqIGl0ZW1Db3VudFBlclBhZ2UgKyAxIH19XG4gICAgLSB7eyBsYXN0UGFnZURpc3BsYXllZCA/IGl0ZW1Db3VudCA6IChjdXJyZW50UGFnZUluZGV4ICsgMSkgKiBpdGVtQ291bnRQZXJQYWdlIH19IG9mIHt7IGl0ZW1Db3VudCB9fVxuPC9kaXY+XG5cbjxkaXYgY2xhc3M9XCJwYWdlc1wiPlxuICAgIDxidXR0b25cbiAgICAgICAgY2xhc3M9XCJuYXZpZ2F0aW9uLWJ1dHRvblwiXG4gICAgICAgIGFyaWFMYWJlbD1cIlNlbGVjdCBQcmV2aW91cyBQYWdlIGJ1dHRvblwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJmaXJzdFBhZ2VEaXNwbGF5ZWRcIlxuICAgICAgICAoY2xpY2spPVwib25TZWxlY3RQYWdlKGN1cnJlbnRQYWdlSW5kZXggLSAxKVwiPlxuICAgICAgICA8YXAtc3ltYm9sIHN5bWJvbElkPVwiY2hldnJvbi1sZWZ0XCIgLz5cbiAgICA8L2J1dHRvbj5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwicGFnZUNvdW50ID4gZWRnZVNpemUgKyAxOyBlbHNlIGFsbFBhZ2VzRGlzcGxheWVkXCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJjdXJyZW50UGFnZUluZGV4ID49IGVkZ2VTaXplIC0gMTsgZWxzZSBvbmVPZkZpcnN0UGFnZXNEaXNwbGF5ZWRcIj5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJjdXJyZW50UGFnZUluZGV4IDw9IHBhZ2VDb3VudCAtIGVkZ2VTaXplOyBlbHNlIG9uZU9mTGFzdFBhZ2VzRGlzcGxheWVkXCI+XG4gICAgICAgICAgICAgICAgPGFwLXBhZ2luYXRvci1idXR0b25cbiAgICAgICAgICAgICAgICAgICAgW3BhZ2VJbmRleF09XCIwXCJcbiAgICAgICAgICAgICAgICAgICAgW3NlbGVjdGVkUGFnZUluZGV4XT1cImN1cnJlbnRQYWdlSW5kZXhcIlxuICAgICAgICAgICAgICAgICAgICAoc2VsZWN0UGFnZSk9XCJvblNlbGVjdFBhZ2UoJGV2ZW50KVwiIC8+XG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJlbGxpcHNpc1wiPi4uLjwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBkdW1teSBvZiBbXS5jb25zdHJ1Y3RvcihtaWRkbGVTaXplKTsgbGV0IGkgPSBpbmRleFwiPlxuICAgICAgICAgICAgICAgICAgICA8YXAtcGFnaW5hdG9yLWJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgW3BhZ2VJbmRleF09XCJjdXJyZW50UGFnZUluZGV4ICsgaSAtIChtaWRkbGVTaXplIC0gMSkgLyAyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtzZWxlY3RlZFBhZ2VJbmRleF09XCJjdXJyZW50UGFnZUluZGV4XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIChzZWxlY3RQYWdlKT1cIm9uU2VsZWN0UGFnZSgkZXZlbnQpXCIgLz5cbiAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImVsbGlwc2lzXCI+Li4uPC9zcGFuPlxuICAgICAgICAgICAgICAgIDxhcC1wYWdpbmF0b3ItYnV0dG9uXG4gICAgICAgICAgICAgICAgICAgIFtwYWdlSW5kZXhdPVwicGFnZUNvdW50IC0gMVwiXG4gICAgICAgICAgICAgICAgICAgIFtzZWxlY3RlZFBhZ2VJbmRleF09XCJjdXJyZW50UGFnZUluZGV4XCJcbiAgICAgICAgICAgICAgICAgICAgKHNlbGVjdFBhZ2UpPVwib25TZWxlY3RQYWdlKCRldmVudClcIiAvPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8bmctdGVtcGxhdGUgI29uZU9mRmlyc3RQYWdlc0Rpc3BsYXllZD5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGR1bW15IG9mIFtdLmNvbnN0cnVjdG9yKGVkZ2VTaXplKTsgbGV0IGkgPSBpbmRleFwiPlxuICAgICAgICAgICAgICAgIDxhcC1wYWdpbmF0b3ItYnV0dG9uXG4gICAgICAgICAgICAgICAgICAgIFtwYWdlSW5kZXhdPVwiaVwiXG4gICAgICAgICAgICAgICAgICAgIFtzZWxlY3RlZFBhZ2VJbmRleF09XCJjdXJyZW50UGFnZUluZGV4XCJcbiAgICAgICAgICAgICAgICAgICAgKHNlbGVjdFBhZ2UpPVwib25TZWxlY3RQYWdlKCRldmVudClcIiAvPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cImVsbGlwc2lzXCI+Li4uPC9zcGFuPlxuICAgICAgICAgICAgPGFwLXBhZ2luYXRvci1idXR0b25cbiAgICAgICAgICAgICAgICBbcGFnZUluZGV4XT1cInBhZ2VDb3VudCAtIDFcIlxuICAgICAgICAgICAgICAgIFtzZWxlY3RlZFBhZ2VJbmRleF09XCJjdXJyZW50UGFnZUluZGV4XCJcbiAgICAgICAgICAgICAgICAoc2VsZWN0UGFnZSk9XCJvblNlbGVjdFBhZ2UoJGV2ZW50KVwiIC8+XG4gICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgIDxuZy10ZW1wbGF0ZSAjb25lT2ZMYXN0UGFnZXNEaXNwbGF5ZWQ+XG4gICAgICAgICAgICA8YXAtcGFnaW5hdG9yLWJ1dHRvblxuICAgICAgICAgICAgICAgIFtwYWdlSW5kZXhdPVwiMFwiXG4gICAgICAgICAgICAgICAgW3NlbGVjdGVkUGFnZUluZGV4XT1cImN1cnJlbnRQYWdlSW5kZXhcIlxuICAgICAgICAgICAgICAgIChzZWxlY3RQYWdlKT1cIm9uU2VsZWN0UGFnZSgkZXZlbnQpXCIgLz5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZWxsaXBzaXNcIj4uLi48L3NwYW4+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBkdW1teSBvZiBbXS5jb25zdHJ1Y3RvcihlZGdlU2l6ZSk7IGxldCBpID0gaW5kZXhcIj5cbiAgICAgICAgICAgICAgICA8YXAtcGFnaW5hdG9yLWJ1dHRvblxuICAgICAgICAgICAgICAgICAgICBbcGFnZUluZGV4XT1cInBhZ2VDb3VudCAtIGVkZ2VTaXplICsgaVwiXG4gICAgICAgICAgICAgICAgICAgIFtzZWxlY3RlZFBhZ2VJbmRleF09XCJjdXJyZW50UGFnZUluZGV4XCJcbiAgICAgICAgICAgICAgICAgICAgKHNlbGVjdFBhZ2UpPVwib25TZWxlY3RQYWdlKCRldmVudClcIiAvPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPG5nLXRlbXBsYXRlICNhbGxQYWdlc0Rpc3BsYXllZD5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgZHVtbXkgb2YgW10uY29uc3RydWN0b3IocGFnZUNvdW50KTsgbGV0IGkgPSBpbmRleFwiPlxuICAgICAgICAgICAgPGFwLXBhZ2luYXRvci1idXR0b25cbiAgICAgICAgICAgICAgICBbcGFnZUluZGV4XT1cImlcIlxuICAgICAgICAgICAgICAgIFtzZWxlY3RlZFBhZ2VJbmRleF09XCJjdXJyZW50UGFnZUluZGV4XCJcbiAgICAgICAgICAgICAgICAoc2VsZWN0UGFnZSk9XCJvblNlbGVjdFBhZ2UoJGV2ZW50KVwiIC8+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPGJ1dHRvblxuICAgICAgICBjbGFzcz1cIm5hdmlnYXRpb24tYnV0dG9uXCJcbiAgICAgICAgYXJpYUxhYmVsPVwiU2VsZWN0IE5leHQgUGFnZSBidXR0b25cIlxuICAgICAgICBbZGlzYWJsZWRdPVwibGFzdFBhZ2VEaXNwbGF5ZWRcIlxuICAgICAgICAoY2xpY2spPVwib25TZWxlY3RQYWdlKGN1cnJlbnRQYWdlSW5kZXggKyAxKVwiPlxuICAgICAgICA8YXAtc3ltYm9sIHN5bWJvbElkPVwiY2hldnJvbi1yaWdodFwiIC8+XG4gICAgPC9idXR0b24+XG48L2Rpdj5cbjxkaXYgY2xhc3M9XCJnby10b1wiPlxuICAgIDxzcGFuICpuZ0lmPVwiZGlzcGxheUdvVG9cIj57eyBnb1RvTGFiZWwgfX08L3NwYW4+XG4gICAgPGlucHV0XG4gICAgICAgICpuZ0lmPVwiZGlzcGxheUdvVG9cIlxuICAgICAgICB0eXBlPVwibnVtYmVyXCJcbiAgICAgICAgWyhuZ01vZGVsKV09XCJwYWdlSW5wdXRcIiAvPlxuPC9kaXY+XG4iXX0=
|
|
116
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdG9yLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYnMvdWktY29tcG9uZW50cy9wYWdpbmF0b3Ivc3JjL3BhZ2luYXRvci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9saWJzL3VpLWNvbXBvbmVudHMvcGFnaW5hdG9yL3NyYy9wYWdpbmF0b3IuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzVFLE9BQU8sRUFBRSxlQUFlLEVBQWtCLGFBQWEsRUFBRSxjQUFjLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUV2RyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFhLE1BQU0sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM1SSxPQUFPLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxPQUFPLEVBQUUsYUFBYSxFQUFFLG9CQUFvQixFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNoRyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQzs7OztBQVd6RixNQUFNLE9BQU8sa0JBQWtCO0lBMERSO0lBekRWLG1CQUFtQixHQUFHLENBQUMsQ0FBQztJQUN4QixrQkFBa0IsR0FBRyxDQUFDLENBQUM7SUFDdkIsMkJBQTJCLEdBQUcsRUFBRSxDQUFDO0lBQ2pDLDBCQUEwQixHQUFHLENBQUMsQ0FBQztJQUMvQixpQkFBaUIsR0FBRyxDQUFDLENBQUM7SUFFL0IsSUFBYSxnQkFBZ0IsQ0FBQyxLQUFhO1FBQ3ZDLElBQUksQ0FBQyxpQkFBaUIs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Q0FBQyxDQUFDO0lBQ2hELENBQUM7dUdBcEdRLGtCQUFrQjsyRkFBbEIsa0JBQWtCLGdhQ2xCL0IsbTlHQW9GQSx1aEZEdEVjLGVBQWUsNkZBQW1CLHdCQUF3Qiw2SkFBdUIsbUJBQW1CLHdqQkFBRSxXQUFXOzsyRkFJbEgsa0JBQWtCO2tCQVQ5QixTQUFTOytCQUNJLGNBQWMsbUJBR1AsdUJBQXVCLENBQUMsTUFBTSxXQUN0QyxDQUFDLGVBQWUsRUFBRSxlQUFlLEVBQUUsd0JBQXdCLEVBQUUsbUJBQW1CLEVBQUUsbUJBQW1CLEVBQUUsV0FBVyxDQUFDLGNBQ2hILElBQUksaUJBQ0QsaUJBQWlCLENBQUMsSUFBSTttRkFTeEIsZ0JBQWdCO3NCQUE1QixLQUFLO2dCQVFHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNPLFNBQVM7c0JBQXJCLEtBQUs7Z0JBT08sZ0JBQWdCO3NCQUE1QixLQUFLO2dCQVNPLFVBQVU7c0JBQXRCLEtBQUs7Z0JBWUksc0JBQXNCO3NCQUEvQixNQUFNO2dCQTRDUCxxQkFBcUI7c0JBRHBCLFlBQVk7dUJBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJ0BhZ29yYXB1bHNlL3VpLWNvbXBvbmVudHMvYnV0dG9uJztcbmltcG9ydCB7IEljb25CdXR0b25Db21wb25lbnQgfSBmcm9tICdAYWdvcmFwdWxzZS91aS1jb21wb25lbnRzL2ljb24tYnV0dG9uJztcbmltcG9ydCB7IFN5bWJvbENvbXBvbmVudCwgU3ltYm9sUmVnaXN0cnksIGFwQ2hldnJvbkxlZnQsIGFwQ2hldnJvblJpZ2h0IH0gZnJvbSAnQGFnb3JhcHVsc2UvdWktc3ltYm9sJztcblxuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBIb3N0TGlzdGVuZXIsIElucHV0LCBPbkRlc3Ryb3ksIE91dHB1dCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBQYWdpbmF0b3JCdXR0b25Db21wb25lbnQgfSBmcm9tICcuL3BhZ2luYXRvci1idXR0b24vcGFnaW5hdG9yLWJ1dHRvbi5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2FwLXBhZ2luYXRvcicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3BhZ2luYXRvci5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vcGFnaW5hdG9yLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgaW1wb3J0czogW1N5bWJvbENvbXBvbmVudCwgQnV0dG9uQ29tcG9uZW50LCBQYWdpbmF0b3JCdXR0b25Db21wb25lbnQsIEljb25CdXR0b25Db21wb25lbnQsIFJlYWN0aXZlRm9ybXNNb2R1bGUsIEZvcm1zTW9kdWxlXSxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG59KVxuZXhwb3J0IGNsYXNzIFBhZ2luYXRvckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gICAgcmVhZG9ubHkgREVGQVVMVF9NSURETEVfU0laRSA9IDM7XG4gICAgcmVhZG9ubHkgREVGQVVMVF9JVEVNX0NPVU5UID0gMDtcbiAgICByZWFkb25seSBERUZBVUxUX0lURU1fQ09VTlRfUEVSX1BBR0UgPSAxMDtcbiAgICByZWFkb25seSBERUZBVUxUX0NVUlJFTlRfUEFHRV9JTkRFWCA9IDA7XG4gICAgcmVhZG9ubHkgREVGQVVMVF9FREdFX1NJWkUgPSA1O1xuXG4gICAgQElucHV0KCkgc2V0IGN1cnJlbnRQYWdlSW5kZXgodmFsdWU6IG51bWJlcikge1xuICAgICAgICB0aGlzLl9jdXJyZW50UGFnZUluZGV4Lm5leHQodmFsdWUgPz8gdGhpcy5ERUZBVUxUX0NVUlJFTlRfUEFHRV9JTkRFWCk7XG4gICAgfVxuXG4gICAgZ2V0IGN1cnJlbnRQYWdlSW5kZXgoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2N1cnJlbnRQYWdlSW5kZXguZ2V0VmFsdWUoKTtcbiAgICB9XG5cbiAgICBASW5wdXQoKSBkaXNwbGF5R29UbyA9IGZhbHNlO1xuICAgIEBJbnB1dCgpIGVkZ2VTaXplOiBudW1iZXIgPSB0aGlzLkRFRkFVTFRfRURHRV9TSVpFO1xuICAgIEBJbnB1dCgpIGdvVG9MYWJlbDogc3RyaW5nID0gJ0dvIHRvJztcbiAgICBASW5wdXQoKSBzZXQgaXRlbUNvdW50KHZhbHVlOiBudW1iZXIpIHtcbiAgICAgICAgdGhpcy5faXRlbUNvdW50Lm5leHQodmFsdWUgPz8gdGhpcy5ERUZBVUxUX0lURU1fQ09VTlQpO1xuICAgIH1cblxuICAgIGdldCBpdGVtQ291bnQoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2l0ZW1Db3VudC5nZXRWYWx1ZSgpO1xuICAgIH1cbiAgICBASW5wdXQoKSBzZXQgaXRlbUNvdW50UGVyUGFnZSh2YWx1ZTogbnVtYmVyKSB7XG4gICAgICAgIHRoaXMuX2l0ZW1Db3VudFBlclBhZ2UubmV4dCh2YWx1ZSA/PyB0aGlzLkRFRkFVTFRfSVRFTV9DT1VOVF9QRVJfUEFHRSk7XG4gICAgfVxuXG4gICAgZ2V0IGl0ZW1Db3VudFBlclBhZ2UoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2l0ZW1Db3VudFBlclBhZ2UuZ2V0VmFsdWUoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9taWRkbGVTaXplITogbnVtYmVyO1xuICAgIEBJbnB1dCgpIHNldCBtaWRkbGVTaXplKHZhbHVlOiBudW1iZXIpIHtcbiAgICAgICAgLy8gbWFrZSBzdXJlIG1pZGRsZSBzaXplIGlzIGFuIG9kZCBudW1iZXJcbiAgICAgICAgaWYgKHZhbHVlICYmIHZhbHVlICUgMiA9PT0gMCkge1xuICAgICAgICAgICAgdmFsdWUrKztcbiAgICAgICAgfVxuICAgICAgICB0aGlzLl9taWRkbGVTaXplID0gdmFsdWUgPz8gdGhpcy5ERUZBVUxUX01JRERMRV9TSVpFO1xuICAgIH1cblxuICAgIGdldCBtaWRkbGVTaXplKCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0aGlzLl9taWRkbGVTaXplO1xuICAgIH1cblxuICAgIEBPdXRwdXQoKSBjdXJyZW50UGFnZUluZGV4Q2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7XG5cbiAgICBwYWdlSW5wdXQ6IHN0cmluZyA9ICcnO1xuICAgIHBhZ2VDb3VudCA9IDA7XG4gICAgZmlyc3RQYWdlRGlzcGxheWVkID0gdHJ1ZTtcbiAgICBsYXN0UGFnZURpc3BsYXllZCA9IHRydWU7XG4gICAgcHJpdmF0ZSBkZXN0cm95JDogU3ViamVjdDx2b2lkPiA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgICBwcml2YXRlIF9pdGVtQ291bnQ6IEJlaGF2aW9yU3ViamVjdDxudW1iZXI+ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxudW1iZXI+KHRoaXMuREVGQVVMVF9JVEVNX0NPVU5UKTtcbiAgICBwcml2YXRlIF9pdGVtQ291bnRQZXJQYWdlOiBCZWhhdmlvclN1YmplY3Q8bnVtYmVyPiA9IG5ldyBCZWhhdmlvclN1YmplY3Q8bnVtYmVyPih0aGlzLkRFRkFVTFRfSVRFTV9DT1VOVF9QRVJfUEFHRSk7XG4gICAgcHJpdmF0ZSBfY3VycmVudFBhZ2VJbmRleDogQmVoYXZpb3JTdWJqZWN0PG51bWJlcj4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PG51bWJlcj4odGhpcy5ERUZBVUxUX0NVUlJFTlRfUEFHRV9JTkRFWCk7XG5cbiAgICBjb25zdHJ1Y3RvcihwdWJsaWMgc3ltYm9sUmVnaXN0cnk6IFN5bWJvbFJlZ2lzdHJ5KSB7XG4gICAgICAgIHRoaXMuc3ltYm9sUmVnaXN0cnkucmVnaXN0ZXJTeW1ib2xzKFthcENoZXZyb25MZWZ0LCBhcENoZXZyb25SaWdodF0pO1xuICAgICAgICBjb21iaW5lTGF0ZXN0KFt0aGlzLl9pdGVtQ291bnQsIHRoaXMuX2l0ZW1Db3VudFBlclBhZ2UsIHRoaXMuX2N1cnJlbnRQYWdlSW5kZXhdKVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoXG4gICAgICAgICAgICAgICAgICAgIChcbiAgICAgICAgICAgICAgICAgICAgICAgIFtwcmV2aW91c0l0ZW1Db3VudCwgcHJldmlvdXNJdGVtQ291bnRQZXJQYWdlLCBwcmV2aW91c0N1cnJlbnRQYWdlSW5kZXhdLFxuICAgICAgICAgICAgICAgICAgICAgICAgW2l0ZW1Db3VudCwgaXRlbUNvdW50UGVyUGFnZSwgY3VycmVudFBhZ2VJbmRleF1cbiAgICAgICAgICAgICAgICAgICAgKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByZXZpb3VzSXRlbUNvdW50ID09PSBpdGVtQ291bnQgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcmV2aW91c0l0ZW1Db3VudFBlclBhZ2UgPT09IGl0ZW1Db3VudFBlclBhZ2UgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcmV2aW91c0N1cnJlbnRQYWdlSW5kZXggPT09IGN1cnJlbnRQYWdlSW5kZXhcbiAgICAgICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKVxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoW2l0ZW1Db3VudCwgaXRlbUNvdW50UGVyUGFnZSwgY3VycmVudFBhZ2VJbmRleF0pID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnBhZ2VDb3VudCA9IE1hdGguY2VpbChpdGVtQ291bnQgLyBpdGVtQ291bnRQZXJQYWdlKTtcbiAgICAgICAgICAgICAgICAvLyBtYWtlIHN1cmUgcGFnZSBpbmRleCBpcyBiZXR3ZWVuIG1pbiBhbmQgbWF4IHBhZ2UgaW5kZXhcbiAgICAgICAgICAgICAgICB0aGlzLl9jdXJyZW50UGFnZUluZGV4Lm5leHQoTWF0aC5tYXgoMCwgTWF0aC5taW4odGhpcy5wYWdlQ291bnQgLSAxLCBjdXJyZW50UGFnZUluZGV4KSkpO1xuICAgICAgICAgICAgICAgIHRoaXMuZmlyc3RQYWdlRGlzcGxheWVkID0gdGhpcy5jdXJyZW50UGFnZUluZGV4ID09PSAwO1xuICAgICAgICAgICAgICAgIHRoaXMubGFzdFBhZ2VEaXNwbGF5ZWQgPSB0aGlzLmN1cnJlbnRQYWdlSW5kZXggPT09IHRoaXMucGFnZUNvdW50IC0gMTtcbiAgICAgICAgICAgIH0pO1xuICAgIH1cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kZXN0cm95JC5uZXh0KCk7XG4gICAgICAgIHRoaXMuZGVzdHJveSQuY29tcGxldGUoKTtcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCdrZXlkb3duLmVudGVyJylcbiAgICBvbkVudGVyS2V5ZG93blByZXNzZWQoKSB7XG4gICAgICAgIGlmICh0aGlzLnBhZ2VJbnB1dCAmJiAhaXNOYU4oK3RoaXMucGFnZUlucHV0KSAmJiArdGhpcy5wYWdlSW5wdXQgPiAwICYmICt0aGlzLnBhZ2VJbnB1dCA8PSB0aGlzLnBhZ2VDb3VudCkge1xuICAgICAgICAgICAgdGhpcy5vblNlbGVjdFBhZ2UoK3RoaXMucGFnZUlucHV0IC0gMSk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5wYWdlSW5wdXQgPSAnJztcbiAgICB9XG5cbiAgICBvblNlbGVjdFBhZ2UocGFnZUluZGV4OiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fY3VycmVudFBhZ2VJbmRleC5uZXh0KHBhZ2VJbmRleCk7XG4gICAgICAgIHRoaXMuY3VycmVudFBhZ2VJbmRleENoYW5nZS5lbWl0KHBhZ2VJbmRleCk7XG4gICAgfVxufVxuIiwiPGRpdiBjbGFzcz1cIml0ZW0taW5kZXgtb3ZlcnZpZXdcIj5cbiAgICB7eyBjdXJyZW50UGFnZUluZGV4ICogaXRlbUNvdW50UGVyUGFnZSArIDEgfX1cbiAgICAtIHt7IGxhc3RQYWdlRGlzcGxheWVkID8gaXRlbUNvdW50IDogKGN1cnJlbnRQYWdlSW5kZXggKyAxKSAqIGl0ZW1Db3VudFBlclBhZ2UgfX0gb2Yge3sgaXRlbUNvdW50IH19XG48L2Rpdj5cblxuPGRpdiBjbGFzcz1cInBhZ2VzXCI+XG4gICAgPGJ1dHRvblxuICAgICAgICBjbGFzcz1cIm5hdmlnYXRpb24tYnV0dG9uXCJcbiAgICAgICAgYXJpYUxhYmVsPVwiU2VsZWN0IFByZXZpb3VzIFBhZ2UgYnV0dG9uXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cImZpcnN0UGFnZURpc3BsYXllZFwiXG4gICAgICAgIChjbGljayk9XCJvblNlbGVjdFBhZ2UoY3VycmVudFBhZ2VJbmRleCAtIDEpXCI+XG4gICAgICAgIDxhcC1zeW1ib2wgc3ltYm9sSWQ9XCJjaGV2cm9uLWxlZnRcIiAvPlxuICAgIDwvYnV0dG9uPlxuICAgIEBpZiAocGFnZUNvdW50ID4gZWRnZVNpemUgKyAxKSB7XG4gICAgICAgIEBpZiAoY3VycmVudFBhZ2VJbmRleCA+PSBlZGdlU2l6ZSAtIDEpIHtcbiAgICAgICAgICAgIEBpZiAoY3VycmVudFBhZ2VJbmRleCA8PSBwYWdlQ291bnQgLSBlZGdlU2l6ZSkge1xuICAgICAgICAgICAgICAgIDxhcC1wYWdpbmF0b3ItYnV0dG9uXG4gICAgICAgICAgICAgICAgICAgIFtwYWdlSW5kZXhdPVwiMFwiXG4gICAgICAgICAgICAgICAgICAgIFtzZWxlY3RlZFBhZ2VJbmRleF09XCJjdXJyZW50UGFnZUluZGV4XCJcbiAgICAgICAgICAgICAgICAgICAgKHNlbGVjdFBhZ2UpPVwib25TZWxlY3RQYWdlKCRldmVudClcIiAvPlxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZWxsaXBzaXNcIj4uLi48L3NwYW4+XG4gICAgICAgICAgICAgICAgQGZvciAoZHVtbXkgb2YgW10uY29uc3RydWN0b3IobWlkZGxlU2l6ZSk7IHRyYWNrIGR1bW15OyBsZXQgaSA9ICRpbmRleCkge1xuICAgICAgICAgICAgICAgICAgICA8YXAtcGFnaW5hdG9yLWJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgW3BhZ2VJbmRleF09XCJjdXJyZW50UGFnZUluZGV4ICsgaSAtIChtaWRkbGVTaXplIC0gMSkgLyAyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtzZWxlY3RlZFBhZ2VJbmRleF09XCJjdXJyZW50UGFnZUluZGV4XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIChzZWxlY3RQYWdlKT1cIm9uU2VsZWN0UGFnZSgkZXZlbnQpXCIgLz5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJlbGxpcHNpc1wiPi4uLjwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8YXAtcGFnaW5hdG9yLWJ1dHRvblxuICAgICAgICAgICAgICAgICAgICBbcGFnZUluZGV4XT1cInBhZ2VDb3VudCAtIDFcIlxuICAgICAgICAgICAgICAgICAgICBbc2VsZWN0ZWRQYWdlSW5kZXhdPVwiY3VycmVudFBhZ2VJbmRleFwiXG4gICAgICAgICAgICAgICAgICAgIChzZWxlY3RQYWdlKT1cIm9uU2VsZWN0UGFnZSgkZXZlbnQpXCIgLz5cbiAgICAgICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICAgICAgIDxhcC1wYWdpbmF0b3ItYnV0dG9uXG4gICAgICAgICAgICAgICAgICAgIFtwYWdlSW5kZXhdPVwiMFwiXG4gICAgICAgICAgICAgICAgICAgIFtzZWxlY3RlZFBhZ2VJbmRleF09XCJjdXJyZW50UGFnZUluZGV4XCJcbiAgICAgICAgICAgICAgICAgICAgKHNlbGVjdFBhZ2UpPVwib25TZWxlY3RQYWdlKCRldmVudClcIiAvPlxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZWxsaXBzaXNcIj4uLi48L3NwYW4+XG4gICAgICAgICAgICAgICAgQGZvciAoZHVtbXkgb2YgW10uY29uc3RydWN0b3IoZWRnZVNpemUpOyB0cmFjayBkdW1teTsgbGV0IGkgPSAkaW5kZXgpIHtcbiAgICAgICAgICAgICAgICAgICAgPGFwLXBhZ2luYXRvci1idXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgIFtwYWdlSW5kZXhdPVwicGFnZUNvdW50IC0gZWRnZVNpemUgKyBpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtzZWxlY3RlZFBhZ2VJbmRleF09XCJjdXJyZW50UGFnZUluZGV4XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIChzZWxlY3RQYWdlKT1cIm9uU2VsZWN0UGFnZSgkZXZlbnQpXCIgLz5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICAgQGZvciAoZHVtbXkgb2YgW10uY29uc3RydWN0b3IoZWRnZVNpemUpOyB0cmFjayBkdW1teTsgbGV0IGkgPSAkaW5kZXgpIHtcbiAgICAgICAgICAgICAgICA8YXAtcGFnaW5hdG9yLWJ1dHRvblxuICAgICAgICAgICAgICAgICAgICBbcGFnZUluZGV4XT1cImlcIlxuICAgICAgICAgICAgICAgICAgICBbc2VsZWN0ZWRQYWdlSW5kZXhdPVwiY3VycmVudFBhZ2VJbmRleFwiXG4gICAgICAgICAgICAgICAgICAgIChzZWxlY3RQYWdlKT1cIm9uU2VsZWN0UGFnZSgkZXZlbnQpXCIgLz5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZWxsaXBzaXNcIj4uLi48L3NwYW4+XG4gICAgICAgICAgICA8YXAtcGFnaW5hdG9yLWJ1dHRvblxuICAgICAgICAgICAgICAgIFtwYWdlSW5kZXhdPVwicGFnZUNvdW50IC0gMVwiXG4gICAgICAgICAgICAgICAgW3NlbGVjdGVkUGFnZUluZGV4XT1cImN1cnJlbnRQYWdlSW5kZXhcIlxuICAgICAgICAgICAgICAgIChzZWxlY3RQYWdlKT1cIm9uU2VsZWN0UGFnZSgkZXZlbnQpXCIgLz5cbiAgICAgICAgfVxuICAgIH0gQGVsc2Uge1xuICAgICAgICBAZm9yIChkdW1teSBvZiBbXS5jb25zdHJ1Y3RvcihwYWdlQ291bnQpOyB0cmFjayBkdW1teTsgbGV0IGkgPSAkaW5kZXgpIHtcbiAgICAgICAgICAgIDxhcC1wYWdpbmF0b3ItYnV0dG9uXG4gICAgICAgICAgICAgICAgW3BhZ2VJbmRleF09XCJpXCJcbiAgICAgICAgICAgICAgICBbc2VsZWN0ZWRQYWdlSW5kZXhdPVwiY3VycmVudFBhZ2VJbmRleFwiXG4gICAgICAgICAgICAgICAgKHNlbGVjdFBhZ2UpPVwib25TZWxlY3RQYWdlKCRldmVudClcIiAvPlxuICAgICAgICB9XG4gICAgfVxuICAgIDxidXR0b25cbiAgICAgICAgY2xhc3M9XCJuYXZpZ2F0aW9uLWJ1dHRvblwiXG4gICAgICAgIGFyaWFMYWJlbD1cIlNlbGVjdCBOZXh0IFBhZ2UgYnV0dG9uXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cImxhc3RQYWdlRGlzcGxheWVkXCJcbiAgICAgICAgKGNsaWNrKT1cIm9uU2VsZWN0UGFnZShjdXJyZW50UGFnZUluZGV4ICsgMSlcIj5cbiAgICAgICAgPGFwLXN5bWJvbCBzeW1ib2xJZD1cImNoZXZyb24tcmlnaHRcIiAvPlxuICAgIDwvYnV0dG9uPlxuPC9kaXY+XG48ZGl2IGNsYXNzPVwiZ28tdG9cIj5cbiAgICBAaWYgKGRpc3BsYXlHb1RvKSB7XG4gICAgICAgIDxzcGFuPnt7IGdvVG9MYWJlbCB9fTwvc3Bhbj5cbiAgICB9XG4gICAgQGlmIChkaXNwbGF5R29Ubykge1xuICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgIHR5cGU9XCJudW1iZXJcIlxuICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJwYWdlSW5wdXRcIiAvPlxuICAgIH1cbjwvZGl2PlxuIl19
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export * from './paginator.component';
|
|
2
1
|
export * from './paginator-button/paginator-button.component';
|
|
3
|
-
|
|
2
|
+
export * from './paginator.component';
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYnMvdWktY29tcG9uZW50cy9wYWdpbmF0b3Ivc3JjL3B1YmxpY19hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYywrQ0FBK0MsQ0FBQztBQUM5RCxjQUFjLHVCQUF1QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9wYWdpbmF0b3ItYnV0dG9uL3BhZ2luYXRvci1idXR0b24uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vcGFnaW5hdG9yLmNvbXBvbmVudCc7XG4iXX0=
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/* eslint-disable @typescript-eslint/no-empty-function */
|
|
2
2
|
import { SymbolComponent, apViewOff, apViewOn } from '@agorapulse/ui-symbol';
|
|
3
3
|
import { NgClass } from '@angular/common';
|
|
4
|
-
import { Component,
|
|
5
|
-
import {
|
|
4
|
+
import { Component, Input, ViewChild, forwardRef } from '@angular/core';
|
|
5
|
+
import { FormControl, NG_VALUE_ACCESSOR, ReactiveFormsModule } from '@angular/forms';
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
7
7
|
import * as i1 from "@agorapulse/ui-symbol";
|
|
8
8
|
import * as i2 from "@angular/forms";
|
|
@@ -32,6 +32,7 @@ export class PasswordInputComponent {
|
|
|
32
32
|
toggleInputType() {
|
|
33
33
|
this.inputType = PasswordInputComponent.type[PasswordInputComponent.type.indexOf(this.inputType) == 0 ? 1 : 0];
|
|
34
34
|
}
|
|
35
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
35
36
|
onChange = (password) => { };
|
|
36
37
|
onTouch = () => { };
|
|
37
38
|
writeValue(obj) {
|
|
@@ -74,4 +75,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImpor
|
|
|
74
75
|
type: ViewChild,
|
|
75
76
|
args: ['passwordInput']
|
|
76
77
|
}] } });
|
|
77
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
78
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFzc3dvcmQtaW5wdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vbGlicy91aS1jb21wb25lbnRzL3Bhc3N3b3JkLWlucHV0L3NyYy9wYXNzd29yZC1pbnB1dC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9saWJzL3VpLWNvbXBvbmVudHMvcGFzc3dvcmQtaW5wdXQvc3JjL3Bhc3N3b3JkLWlucHV0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHlEQUF5RDtBQUN6RCxPQUFPLEVBQUUsZUFBZSxFQUFrQixTQUFTLEVBQUUsUUFBUSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDN0YsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzFDLE9BQU8sRUFBRSxTQUFTLEVBQWMsS0FBSyxFQUFxQixTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZHLE9BQU8sRUFBd0IsV0FBVyxFQUFFLGlCQUFpQixFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7QUFHM0csTUFBTSxDQUFDLE1BQU0sK0JBQStCLEdBQVE7SUFDaEQsT0FBTyxFQUFFLGlCQUFpQjtJQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLHNCQUFzQixDQUFDO0lBQ3JELEtBQUssRUFBRSxJQUFJO0NBQ2QsQ0FBQztBQVVGLE1BQU0sT0FBTyxzQkFBc0I7SUFjWjtJQWJuQixNQUFNLENBQUMsSUFBSSxHQUFHLENBQUMsTUFBTSxFQUFFLFVBQVUsQ0FBQyxDQUFDO0lBQ25DLFNBQVMsR0FBaUQsc0JBQXNCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBRWhGLElBQUksR0FBRyxFQUFFLENBQUM7SUFDVixXQUFXLEdBQUcsRUFBRSxDQUFDO0lBQ2pCLFNBQVMsR0FBWSxLQUFLLENBQUM7SUFDcEMsUUFBUSxHQUFZLEtBQUssQ0FBQztJQUVFLGFBQWEsQ0FBYztJQUV2RCxTQUFTLEdBQWdCLElBQUksV0FBVyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQzdDLE9BQU8sQ0FBZ0I7SUFFdkIsWUFBbUIsY0FBOEI7UUFBOUIsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQzdDLElBQUksQ0FBQyxjQUFjLENBQUMsZUFBZSxDQUFDLENBQUMsU0FBUyxFQUFFLFFBQVEsQ0FBQyxDQUFDLENBQUM7SUFDL0QsQ0FBQztJQUNEOztPQUVHO0lBQ0gsZUFBZTtRQUNYLElBQUksQ0FBQyxTQUFTLEdBQUcsc0JBQXNCLENBQUMsSUFBSSxDQUFDLHNCQUFzQixDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNuSCxDQUFDO0lBRUQsNkRBQTZEO0lBQzdELFFBQVEsR0FBRyxDQUFDLFFBQWdCLEVBQUUsRUFBRSxHQUFFLENBQUMsQ0FBQztJQUVwQyxPQUFPLEdBQUcsR0FBRyxFQUFFLEdBQUUsQ0FBQyxDQUFDO0lBRW5CLFVBQVUsQ0FBQyxHQUFXO1FBQ2xCLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxFQUE4QjtRQUMzQyxJQUFJLENBQUMsUUFBUSxHQUFHLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBRUQsaUJBQWlCLENBQUMsRUFBYztRQUM1QixJQUFJLENBQUMsT0FBTyxHQUFHLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBRUQsZ0JBQWdCLENBQUMsVUFBbUI7UUFDaEMsSUFBSSxDQUFDLFFBQVEsR0FBRyxVQUFVLENBQUM7SUFDL0IsQ0FBQztJQUVELFFBQVE7UUFDSixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEdBQVcsRUFBRSxFQUFFO1lBQ2pFLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO2dCQUNoQixJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ3ZCLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCxXQUFXO1FBQ1AsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDZixJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQy9CLENBQUM7SUFDTCxDQUFDO3VHQXpEUSxzQkFBc0I7MkZBQXRCLHNCQUFzQiw4SUFKcEIsQ0FBQywrQkFBK0IsQ0FBQywwSUNqQmhELGlsQkFtQkEsMnRMRERjLGVBQWUsNkZBQUUsT0FBTyxtRkFBRSxtQkFBbUI7OzJGQUc5QyxzQkFBc0I7a0JBUmxDLFNBQVM7K0JBQ0ksbUJBQW1CLGFBR2xCLENBQUMsK0JBQStCLENBQUMsV0FDbkMsQ0FBQyxlQUFlLEVBQUUsT0FBTyxFQUFFLG1CQUFtQixDQUFDLGNBQzVDLElBQUk7bUZBTVAsSUFBSTtzQkFBWixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFHc0IsYUFBYTtzQkFBeEMsU0FBUzt1QkFBQyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWVtcHR5LWZ1bmN0aW9uICovXG5pbXBvcnQgeyBTeW1ib2xDb21wb25lbnQsIFN5bWJvbFJlZ2lzdHJ5LCBhcFZpZXdPZmYsIGFwVmlld09uIH0gZnJvbSAnQGFnb3JhcHVsc2UvdWktc3ltYm9sJztcbmltcG9ydCB7IE5nQ2xhc3MgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQsIFZpZXdDaGlsZCwgZm9yd2FyZFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIEZvcm1Db250cm9sLCBOR19WQUxVRV9BQ0NFU1NPUiwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuXG5leHBvcnQgY29uc3QgUEFTU1dPUkRfQ09OVFJPTF9WQUxVRV9BQ0NFU1NPUjogYW55ID0ge1xuICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFBhc3N3b3JkSW5wdXRDb21wb25lbnQpLFxuICAgIG11bHRpOiB0cnVlLFxufTtcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdhcC1wYXNzd29yZC1pbnB1dCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3Bhc3N3b3JkLWlucHV0LmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9wYXNzd29yZC1pbnB1dC5jb21wb25lbnQuc2NzcyddLFxuICAgIHByb3ZpZGVyczogW1BBU1NXT1JEX0NPTlRST0xfVkFMVUVfQUNDRVNTT1JdLFxuICAgIGltcG9ydHM6IFtTeW1ib2xDb21wb25lbnQsIE5nQ2xhc3MsIFJlYWN0aXZlRm9ybXNNb2R1bGVdLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIFBhc3N3b3JkSW5wdXRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSwgQ29udHJvbFZhbHVlQWNjZXNzb3Ige1xuICAgIHN0YXRpYyB0eXBlID0gWyd0ZXh0JywgJ3Bhc3N3b3JkJ107XG4gICAgaW5wdXRUeXBlOiAodHlwZW9mIFBhc3N3b3JkSW5wdXRDb21wb25lbnQudHlwZSlbbnVtYmVyXSA9IFBhc3N3b3JkSW5wdXRDb21wb25lbnQudHlwZVsxXTtcblxuICAgIEBJbnB1dCgpIG5hbWUgPSAnJztcbiAgICBASW5wdXQoKSBwbGFjZWhvbGRlciA9ICcnO1xuICAgIEBJbnB1dCgpIGZ1bGxXaWR0aDogYm9vbGVhbiA9IGZhbHNlO1xuICAgIGRpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgICBAVmlld0NoaWxkKCdwYXNzd29yZElucHV0JykgcGFzc3dvcmRJbnB1dCE6IEVsZW1lbnRSZWY7XG5cbiAgICBjb250cm9sZXI6IEZvcm1Db250cm9sID0gbmV3IEZvcm1Db250cm9sKCcnKTtcbiAgICBjaGFuZ2VzITogU3Vic2NyaXB0aW9uO1xuXG4gICAgY29uc3RydWN0b3IocHVibGljIHN5bWJvbFJlZ2lzdHJ5OiBTeW1ib2xSZWdpc3RyeSkge1xuICAgICAgICB0aGlzLnN5bWJvbFJlZ2lzdHJ5LnJlZ2lzdGVyU3ltYm9scyhbYXBWaWV3T2ZmLCBhcFZpZXdPbl0pO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBDaGFuZ2UgYmV0d2VlbiB2aXNpYmxlIGFuZCBoaWRkZW4gcGFzc3dvcmRcbiAgICAgKi9cbiAgICB0b2dnbGVJbnB1dFR5cGUoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuaW5wdXRUeXBlID0gUGFzc3dvcmRJbnB1dENvbXBvbmVudC50eXBlW1Bhc3N3b3JkSW5wdXRDb21wb25lbnQudHlwZS5pbmRleE9mKHRoaXMuaW5wdXRUeXBlKSA9PSAwID8gMSA6IDBdO1xuICAgIH1cblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnNcbiAgICBvbkNoYW5nZSA9IChwYXNzd29yZDogc3RyaW5nKSA9PiB7fTtcblxuICAgIG9uVG91Y2ggPSAoKSA9PiB7fTtcblxuICAgIHdyaXRlVmFsdWUob2JqOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jb250cm9sZXIuc2V0VmFsdWUob2JqKTtcbiAgICB9XG5cbiAgICByZWdpc3Rlck9uQ2hhbmdlKGZuOiAocGFzc3dvcmQ6IHN0cmluZykgPT4gdm9pZCk6IHZvaWQge1xuICAgICAgICB0aGlzLm9uQ2hhbmdlID0gZm47XG4gICAgfVxuXG4gICAgcmVnaXN0ZXJPblRvdWNoZWQoZm46ICgpID0+IHZvaWQpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vblRvdWNoID0gZm47XG4gICAgfVxuXG4gICAgc2V0RGlzYWJsZWRTdGF0ZShpc0Rpc2FibGVkOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZGlzYWJsZWQgPSBpc0Rpc2FibGVkO1xuICAgIH1cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNoYW5nZXMgPSB0aGlzLmNvbnRyb2xlci52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKCh2YWw6IHN0cmluZykgPT4ge1xuICAgICAgICAgICAgaWYgKHRoaXMub25DaGFuZ2UpIHtcbiAgICAgICAgICAgICAgICB0aGlzLm9uQ2hhbmdlKHZhbCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5jaGFuZ2VzKSB7XG4gICAgICAgICAgICB0aGlzLmNoYW5nZXMudW5zdWJzY3JpYmUoKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIjxkaXZcbiAgICBjbGFzcz1cImlucHV0LWdyb3VwXCJcbiAgICBbbmdDbGFzc109XCJ7IGRpc2FibGVkOiBkaXNhYmxlZCwgJ2Z1bGwtd2lkdGgnOiBmdWxsV2lkdGggfVwiPlxuICAgIDxpbnB1dFxuICAgICAgICAjcGFzc3dvcmRJbnB1dFxuICAgICAgICBhdXRvY29tcGxldGU9XCJwYXNzd29yZFwiXG4gICAgICAgIFt0eXBlXT1cImlucHV0VHlwZVwiXG4gICAgICAgIFtuYW1lXT1cIm5hbWVcIlxuICAgICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxuICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICBbZm9ybUNvbnRyb2xdPVwiY29udHJvbGVyXCJcbiAgICAgICAgKGJsdXIpPVwib25Ub3VjaCgpXCIgLz5cbiAgICA8YXAtc3ltYm9sXG4gICAgICAgIGNsYXNzPVwiaW5wdXQtZ3JvdXAtYXBwZW5kXCJcbiAgICAgICAgc2l6ZT1cIm1pY3JvXCJcbiAgICAgICAgc3RhdGU9XCJmdWxsXCJcbiAgICAgICAgW3N5bWJvbElkXT1cImlucHV0VHlwZSA9PT0gJ3RleHQnID8gJ3ZpZXctb24nIDogJ3ZpZXctb2ZmJ1wiXG4gICAgICAgIChjbGljayk9XCJ0b2dnbGVJbnB1dFR5cGUoKVwiIC8+XG48L2Rpdj5cbiJdfQ==
|