@bcgov/nr-ngx-component-lib 0.0.62 → 0.0.64
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/components/list-attachments/list-attachments.component.d.ts +5 -3
- package/components/list-event-history/list-event-history.component.d.ts +5 -3
- package/components/list-select/list-select.component.d.ts +3 -3
- package/components/schedule/schedule.component.d.ts +3 -3
- package/directives/pagination.base.d.ts +13 -4
- package/directives/row-list.base.d.ts +2 -3
- package/esm2022/components/list-attachments/list-attachments.component.mjs +7 -5
- package/esm2022/components/list-event-history/list-event-history.component.mjs +7 -5
- package/esm2022/components/list-select/list-select.component.mjs +2 -4
- package/esm2022/components/schedule/schedule.component.mjs +3 -3
- package/esm2022/directives/pagination.base.mjs +41 -16
- package/esm2022/directives/row-list.base.mjs +12 -14
- package/esm2022/services/page-state.service.mjs +11 -13
- package/fesm2022/bcgov-nr-ngx-component-lib.mjs +75 -52
- package/fesm2022/bcgov-nr-ngx-component-lib.mjs.map +1 -1
- package/package.json +1 -1
- package/services/page-state.service.d.ts +4 -4
|
@@ -144,13 +144,13 @@ export class ScheduleComponent extends RowListBase {
|
|
|
144
144
|
}) || [];
|
|
145
145
|
}
|
|
146
146
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScheduleComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
147
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: ScheduleComponent, selector: "nrcl-schedule", inputs: { provider: "provider", startDate: "startDate", weekStart: ["weekStart", "weekStart", numberAttribute], dayCount: ["dayCount", "dayCount", numberAttribute], menu: "menu" }, host: { properties: { "style.--nrcl-schedule-day-count": "this.dayCount" } }, queries: [{ propertyName: "headerTemplate", first: true, predicate: ScheduleRowHeadingDirective, descendants: true }, { propertyName: "itemTemplates", predicate: ScheduleItemDirective }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "@if ( rows?.length > 0 ) {\n <div class=\"schedule\">\n <div class=\"upper-left\">\n <ng-content></ng-content>\n </div>\n\n <div class=\"row weeks\">\n @for ( week of _weeks; track $index ) {\n @if ( week.span == 1 ) {\n <div class=\"week\">\n {{ week.start }}\n </div>\n }\n @else {\n <div class=\"week\" [style.grid-column]=\"'span ' + week.span\">\n {{ week.start }} - {{ week.end }}\n </div>\n }\n }\n </div>\n\n <div class=\"row days\"> \n @for ( day of _days; track $index ) {\n <div class=\"day\"\n [class.weekend]=\"day.isWeekend\"\n [class.today]=\"day.isToday\"\n [class.first]=\"day.isFirst\"\n >\n <div class=\"day-name\">{{ day.dayName }}</div>\n <div class=\"date\">{{ day.monthDay }}</div>\n </div>\n }\n </div>\n\n @for ( row of rows | paginate: paginateState( 'nrcl-schedule' ); track row.id; let rowIndex = $index ) {\n <div class=\"row items\">\n <div class=\"outer heading\">\n <div class=\"inner heading\">\n <ng-container \n [ngTemplateOutlet]=\"headerTemplate?.template\" \n [ngTemplateOutletContext]=\"{ $implicit: row.heading }\" \n ></ng-container>\n </div>\n </div> \n\n @if ( row.items | async; as rowItems ) {\n @for ( item of rowItems; track item.id; let colIndex = $index ) {\n <div class=\"outer item\"\n [class.menu-open]=\"itemMenu.menuOpen\"\n >\n <div class=\"inner item\" #itemMenu=\"matMenuTrigger\"\n [class]=\"'item-' + item.name\" \n matRipple\n [matMenuTriggerFor]=\"menu\"\n [matMenuTriggerData]=\"{ $implicit: { item: item, heading: row.heading } }\"\n [matTooltip]=\"item?.tooltip?.()\"\n matTooltipClass=\"nrcl-schedule-multiline\"\n [class.travel]=\"item?.travel\"\n >\n <ng-container \n [ngTemplateOutlet]=\"_templates[ rowIndex ][ colIndex ] || empty\" \n [ngTemplateOutletContext]=\"{ $implicit: item }\"\n ></ng-container>\n \n @let icons = item?.icons?.();\n @if ( icons && icons.length > 0 ) {\n <div class=\"icons\">\n @for ( icon of icons; track icon ) {\n <nrcl-icon small>{{ icon }}</nrcl-icon>\n } \n </div>\n }\n </div>\n </div>\n }\n }\n @else {\n @for ( day of _days; track day ) {\n <div class=\"item item-loading\"></div>\n }\n }\n </div>\n }\n </div>\n\n <nrcl-gap/>\n}\n\n<nrcl-row-list-pagination\n paginationId=\"nrcl-schedule\"\n [pageSize]=\"pageSize\"\n [pageNumber]=\"pageNumber\"\n [rowCount]=\"totalRowCount\"\n (pageNumberChange)=\"onPageNumberChange( $event )\"\n (pageSizeChange)=\"onPageSizeChange( $event )\"\n></nrcl-row-list-pagination>\n\n<ng-template #empty>\n</ng-template>\n", styles: ["::ng-deep :root{--nrcl-schedule-border-color: #c6c8cb;--nrcl-schedule-background-color: white;--nrcl-schedule-alternate-background-color: #f2f2f2;--nrcl-schedule-hover-background-color: #d7d7d7;--nrcl-schedule-row-weeks-height: 30px;--nrcl-schedule-row-weeks-font-size: 15px;--nrcl-schedule-row-weeks-font-weight: bold;--nrcl-schedule-row-weeks-foreground-color: black;--nrcl-schedule-row-days-height: 45px;--nrcl-schedule-row-days-font-size: 15px;--nrcl-schedule-row-days-font-weight: normal;--nrcl-schedule-row-days-foreground-color: black;--nrcl-schedule-row-days-weekend-background-color: #e0f8fc;--nrcl-schedule-row-days-today-background-color: #fcf8d9;--nrcl-schedule-row-schedule-height: 70px;--nrcl-schedule-heading-width: 300px;--nrcl-schedule-item-width: 80px}:host{display:flex;flex-direction:column;font-family:var(--nrcl-font-family)}:host .schedule{display:grid;grid-template-columns:var(--nrcl-schedule-heading-width) repeat(var(--nrcl-schedule-day-count),var(--nrcl-schedule-item-width));overflow:auto;height:100%;flex-grow:1}:host .schedule .upper-left{grid-row:1/span 2;grid-column:1;border-right:1px solid var(--nrcl-schedule-border-color);border-bottom:1px solid var(--nrcl-schedule-border-color);position:sticky;top:0;left:0;z-index:2;background:var(--nrcl-schedule-background-color)}:host .schedule .row{display:contents}:host .schedule .row.weeks>*{height:var(--nrcl-schedule-row-weeks-height)}:host .schedule .row.days>*{height:var(--nrcl-schedule-row-days-height)}:host .schedule .row .outer.heading,:host .schedule .row .day,:host .schedule .row .week{border-right:1px solid var(--nrcl-schedule-border-color);border-bottom:1px solid var(--nrcl-schedule-border-color)}:host .schedule .row .outer.heading{border-left:1px solid var(--nrcl-schedule-border-color)}:host .schedule .row .outer.item:last-child{border-right:1px solid var(--nrcl-schedule-border-color)}:host .schedule .row:last-child .outer.item{border-bottom:1px solid var(--nrcl-schedule-border-color)}:host .schedule .row .week{border-top:1px solid var(--nrcl-schedule-border-color);display:flex;justify-content:center;align-items:center;font-size:var(--nrcl-schedule-row-weeks-font-size);font-weight:var(--nrcl-schedule-row-weeks-font-weight);color:var(--nrcl-schedule-row-weeks-foreground-color);position:sticky;top:0;background-color:var(--nrcl-schedule-background-color);z-index:1}:host .schedule .row .day{display:flex;flex-direction:column;justify-content:center;align-items:center;font-size:var(--nrcl-schedule-row-days-font-size);font-weight:var(--nrcl-schedule-row-days-font-weight);color:var(--nrcl-schedule-row-days-foreground-color);position:sticky;top:calc(var(--nrcl-schedule-row-weeks-height) + 2px);background-color:var(--nrcl-schedule-background-color);z-index:1}:host .schedule .row .day .day-name{font-size:13px}:host .schedule .row .day.weekend{background-color:var(--nrcl-schedule-row-days-weekend-background-color)}:host .schedule .row .day.today{background-color:var(--nrcl-schedule-row-days-today-background-color)}:host .schedule .row .day.first:after{content:\"\";position:absolute;top:0;left:0;bottom:0;border-left:2px solid black}:host .schedule .row.items .outer.item{box-sizing:border-box;height:var(--nrcl-schedule-row-schedule-height);display:flex;flex-direction:column;justify-content:stretch;align-items:stretch;border-right:1px solid var(--nrcl-schedule-border-color);border-bottom:1px solid var(--nrcl-schedule-border-color)}:host .schedule .row.items .outer.item:hover .item{background-color:#06e;color:#fff}:host .schedule .row.items .outer.item.menu-open .item{background-color:#036;color:#fff}:host .schedule .row.items .outer.item .item{flex-grow:1;cursor:pointer;position:relative;padding:4px 4px 8px}:host .schedule .row.items .outer.item .item .icons{position:absolute;right:2px;bottom:2px;display:flex;gap:2px;background-color:#f1ebe4;border-radius:4px;padding:3px;color:var(--nrcl-schedule-row-days-foreground-color)}:host .schedule .row.items .outer.item .item.travel{position:relative}:host .schedule .row.items .outer.item .item.travel:after{content:\"\";position:absolute;inset:0 0 2px;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAABAQMAAAD+YPzoAAAABlBMVEX///8AAABVwtN+AAAAAnRSTlP/AOW3MEoAAAAMSURBVHicY+BwEgAAALAAW97nJhUAAAAASUVORK5CYII=);background-repeat:no-repeat;background-size:calc(100% - 8px) 3px;background-position:bottom}:host .schedule .row.items .outer.heading{box-sizing:border-box;cursor:default;position:sticky;left:0;z-index:1;height:var(--nrcl-schedule-row-schedule-height)}:host .schedule .row.items .outer.heading .heading{flex-grow:1;cursor:default;height:100%}:host .schedule .row:nth-child(odd) .outer{background-color:var(--nrcl-schedule-background-color)}:host .schedule .row:nth-child(2n) .outer{background-color:var(--nrcl-schedule-alternate-background-color)}:host .schedule .row:hover .outer{background-color:var(--nrcl-schedule-hover-background-color)}.empty{height:100%;display:flex;justify-content:center;align-items:center;color:#aaa}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData", "matMenuTriggerRestoreFocus"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }, { kind: "directive", type: i3.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { kind: "directive", type: i4.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "component", type: i5.GapComponent, selector: "nrcl-gap", inputs: ["horizontal", "vertical", "divider"] }, { kind: "component", type: i6.RowListPaginationComponent, selector: "nrcl-row-list-pagination", inputs: ["paginationId", "pageSizeOptions", "pageSize", "pageNumber", "rowCount", "showPageSize", "noRowsMessage"], outputs: ["pageSizeChange", "pageNumberChange"] }, { kind: "component", type: i7.IconComponent, selector: "nrcl-icon", inputs: ["small", "large"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i8.PaginatePipe, name: "paginate" }] }); }
|
|
147
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: ScheduleComponent, selector: "nrcl-schedule", inputs: { provider: "provider", startDate: "startDate", weekStart: ["weekStart", "weekStart", numberAttribute], dayCount: ["dayCount", "dayCount", numberAttribute], menu: "menu" }, host: { properties: { "style.--nrcl-schedule-day-count": "this.dayCount" } }, queries: [{ propertyName: "headerTemplate", first: true, predicate: ScheduleRowHeadingDirective, descendants: true }, { propertyName: "itemTemplates", predicate: ScheduleItemDirective }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "@if ( rows?.length > 0 ) {\n <div class=\"schedule\">\n <div class=\"upper-left\">\n <ng-content></ng-content>\n </div>\n\n <div class=\"row weeks\">\n @for ( week of _weeks; track $index ) {\n @if ( week.span == 1 ) {\n <div class=\"week\">\n {{ week.start }}\n </div>\n }\n @else {\n <div class=\"week\" [style.grid-column]=\"'span ' + week.span\">\n {{ week.start }} - {{ week.end }}\n </div>\n }\n }\n </div>\n\n <div class=\"row days\"> \n @for ( day of _days; track $index ) {\n <div class=\"day\"\n [class.weekend]=\"day.isWeekend\"\n [class.today]=\"day.isToday\"\n [class.first]=\"day.isFirst\"\n >\n <div class=\"day-name\">{{ day.dayName }}</div>\n <div class=\"date\">{{ day.monthDay }}</div>\n </div>\n }\n </div>\n\n @for ( row of rows | paginate: paginateState( 'nrcl-schedule' ); track row.id; let rowIndex = $index ) {\n <div class=\"row items\">\n <div class=\"outer heading\">\n <div class=\"inner heading\">\n <ng-container \n [ngTemplateOutlet]=\"headerTemplate?.template\" \n [ngTemplateOutletContext]=\"{ $implicit: row.heading }\" \n ></ng-container>\n </div>\n </div> \n\n @if ( row.items | async; as rowItems ) {\n @for ( item of rowItems; track item.id; let colIndex = $index ) {\n <div class=\"outer item\"\n [class.menu-open]=\"itemMenu.menuOpen\"\n >\n <div class=\"inner item\" #itemMenu=\"matMenuTrigger\"\n [class]=\"'item-' + item.name\" \n matRipple\n [matMenuTriggerFor]=\"menu\"\n [matMenuTriggerData]=\"{ $implicit: { item: item, heading: row.heading } }\"\n [matTooltip]=\"item?.tooltip?.()\"\n matTooltipClass=\"nrcl-schedule-multiline\"\n [class.travel]=\"item?.travel\"\n >\n <ng-container \n [ngTemplateOutlet]=\"_templates[ rowIndex ][ colIndex ] || empty\" \n [ngTemplateOutletContext]=\"{ $implicit: item }\"\n ></ng-container>\n \n @let icons = item?.icons?.();\n @if ( icons && icons.length > 0 ) {\n <div class=\"icons\">\n @for ( icon of icons; track icon ) {\n <nrcl-icon small>{{ icon }}</nrcl-icon>\n } \n </div>\n }\n </div>\n </div>\n }\n }\n @else {\n @for ( day of _days; track day ) {\n <div class=\"item item-loading\"></div>\n }\n }\n </div>\n }\n </div>\n\n <nrcl-gap/>\n}\n\n<nrcl-row-list-pagination\n paginationId=\"nrcl-schedule\"\n [pageSize]=\"pageSize\"\n [pageNumber]=\"pageNumber\"\n [rowCount]=\"totalRowCount\"\n (pageNumberChange)=\"onPageNumberChange( $event )\"\n (pageSizeChange)=\"onPageSizeChange( $event )\"\n></nrcl-row-list-pagination>\n\n<ng-template #empty>\n</ng-template>\n", styles: ["::ng-deep :root{--nrcl-schedule-border-color: #c6c8cb;--nrcl-schedule-background-color: white;--nrcl-schedule-alternate-background-color: #f2f2f2;--nrcl-schedule-hover-background-color: #d7d7d7;--nrcl-schedule-row-weeks-height: 30px;--nrcl-schedule-row-weeks-font-size: 15px;--nrcl-schedule-row-weeks-font-weight: bold;--nrcl-schedule-row-weeks-foreground-color: black;--nrcl-schedule-row-days-height: 45px;--nrcl-schedule-row-days-font-size: 15px;--nrcl-schedule-row-days-font-weight: normal;--nrcl-schedule-row-days-foreground-color: black;--nrcl-schedule-row-days-weekend-background-color: #e0f8fc;--nrcl-schedule-row-days-today-background-color: #fcf8d9;--nrcl-schedule-row-schedule-height: 70px;--nrcl-schedule-heading-width: 300px;--nrcl-schedule-item-width: 80px}:host{display:flex;flex-direction:column;font-family:var(--nrcl-font-family)}:host .schedule{display:grid;grid-template-columns:var(--nrcl-schedule-heading-width) repeat(var(--nrcl-schedule-day-count),var(--nrcl-schedule-item-width));overflow:auto;height:100%;flex-grow:1}:host .schedule .upper-left{grid-row:1/span 2;grid-column:1;border-right:1px solid var(--nrcl-schedule-border-color);border-bottom:1px solid var(--nrcl-schedule-border-color);position:sticky;top:0;left:0;z-index:2;background:var(--nrcl-schedule-background-color)}:host .schedule .row{display:contents}:host .schedule .row.weeks>*{height:var(--nrcl-schedule-row-weeks-height)}:host .schedule .row.days>*{height:var(--nrcl-schedule-row-days-height)}:host .schedule .row .outer.heading,:host .schedule .row .day,:host .schedule .row .week{border-right:1px solid var(--nrcl-schedule-border-color);border-bottom:1px solid var(--nrcl-schedule-border-color)}:host .schedule .row .outer.heading{border-left:1px solid var(--nrcl-schedule-border-color)}:host .schedule .row .outer.item:last-child{border-right:1px solid var(--nrcl-schedule-border-color)}:host .schedule .row:last-child .outer.item{border-bottom:1px solid var(--nrcl-schedule-border-color)}:host .schedule .row .week{border-top:1px solid var(--nrcl-schedule-border-color);display:flex;justify-content:center;align-items:center;font-size:var(--nrcl-schedule-row-weeks-font-size);font-weight:var(--nrcl-schedule-row-weeks-font-weight);color:var(--nrcl-schedule-row-weeks-foreground-color);position:sticky;top:0;background-color:var(--nrcl-schedule-background-color);z-index:1}:host .schedule .row .day{display:flex;flex-direction:column;justify-content:center;align-items:center;font-size:var(--nrcl-schedule-row-days-font-size);font-weight:var(--nrcl-schedule-row-days-font-weight);color:var(--nrcl-schedule-row-days-foreground-color);position:sticky;top:calc(var(--nrcl-schedule-row-weeks-height) + 2px);background-color:var(--nrcl-schedule-background-color);z-index:1}:host .schedule .row .day .day-name{font-size:13px}:host .schedule .row .day.weekend{background-color:var(--nrcl-schedule-row-days-weekend-background-color)}:host .schedule .row .day.today{background-color:var(--nrcl-schedule-row-days-today-background-color)}:host .schedule .row .day.first:after{content:\"\";position:absolute;top:0;left:0;bottom:0;border-left:2px solid black}:host .schedule .row.items .outer.item{box-sizing:border-box;height:var(--nrcl-schedule-row-schedule-height);display:flex;flex-direction:column;justify-content:stretch;align-items:stretch;border-right:1px solid var(--nrcl-schedule-border-color);border-bottom:1px solid var(--nrcl-schedule-border-color)}:host .schedule .row.items .outer.item:hover .item{background-color:#06e;color:#fff}:host .schedule .row.items .outer.item.menu-open .item{background-color:#036;color:#fff}:host .schedule .row.items .outer.item .item{flex-grow:1;cursor:pointer;position:relative;padding:4px 4px 8px}:host .schedule .row.items .outer.item .item .icons{position:absolute;right:2px;bottom:2px;display:flex;gap:2px;background-color:#f1ebe4;border-radius:4px;padding:3px;color:var(--nrcl-schedule-row-days-foreground-color)}:host .schedule .row.items .outer.item .item.travel{position:relative}:host .schedule .row.items .outer.item .item.travel:after{content:\"\";position:absolute;inset:0 0 2px;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAABAQMAAAD+YPzoAAAABlBMVEX///8AAABVwtN+AAAAAnRSTlP/AOW3MEoAAAAMSURBVHicY+BwEgAAALAAW97nJhUAAAAASUVORK5CYII=);background-repeat:no-repeat;background-size:calc(100% - 8px) 3px;background-position:bottom}:host .schedule .row.items .outer.heading{box-sizing:border-box;cursor:default;position:sticky;left:0;z-index:1;height:var(--nrcl-schedule-row-schedule-height)}:host .schedule .row.items .outer.heading .heading{flex-grow:1;cursor:default;height:100%}:host .schedule .row:nth-child(odd) .outer{background-color:var(--nrcl-schedule-background-color)}:host .schedule .row:nth-child(2n) .outer{background-color:var(--nrcl-schedule-alternate-background-color)}:host .schedule .row:hover .outer{background-color:var(--nrcl-schedule-hover-background-color)}.empty{height:100%;display:flex;justify-content:center;align-items:center;color:#aaa}::ng-deep .cdk-overlay-container .nrcl-schedule-multiline .mdc-tooltip__surface{white-space:pre-line;max-width:unset;text-align:left}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData", "matMenuTriggerRestoreFocus"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }, { kind: "directive", type: i3.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { kind: "directive", type: i4.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "component", type: i5.GapComponent, selector: "nrcl-gap", inputs: ["horizontal", "vertical", "divider"] }, { kind: "component", type: i6.RowListPaginationComponent, selector: "nrcl-row-list-pagination", inputs: ["paginationId", "pageSizeOptions", "pageSize", "pageNumber", "rowCount", "showPageSize", "noRowsMessage"], outputs: ["pageSizeChange", "pageNumberChange"] }, { kind: "component", type: i7.IconComponent, selector: "nrcl-icon", inputs: ["small", "large"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i8.PaginatePipe, name: "paginate" }] }); }
|
|
148
148
|
}
|
|
149
149
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScheduleComponent, decorators: [{
|
|
150
150
|
type: Component,
|
|
151
151
|
args: [{ selector: 'nrcl-schedule', host: {
|
|
152
152
|
'[style.--nrcl-schedule-day-count]': 'this.dayCount'
|
|
153
|
-
}, template: "@if ( rows?.length > 0 ) {\n <div class=\"schedule\">\n <div class=\"upper-left\">\n <ng-content></ng-content>\n </div>\n\n <div class=\"row weeks\">\n @for ( week of _weeks; track $index ) {\n @if ( week.span == 1 ) {\n <div class=\"week\">\n {{ week.start }}\n </div>\n }\n @else {\n <div class=\"week\" [style.grid-column]=\"'span ' + week.span\">\n {{ week.start }} - {{ week.end }}\n </div>\n }\n }\n </div>\n\n <div class=\"row days\"> \n @for ( day of _days; track $index ) {\n <div class=\"day\"\n [class.weekend]=\"day.isWeekend\"\n [class.today]=\"day.isToday\"\n [class.first]=\"day.isFirst\"\n >\n <div class=\"day-name\">{{ day.dayName }}</div>\n <div class=\"date\">{{ day.monthDay }}</div>\n </div>\n }\n </div>\n\n @for ( row of rows | paginate: paginateState( 'nrcl-schedule' ); track row.id; let rowIndex = $index ) {\n <div class=\"row items\">\n <div class=\"outer heading\">\n <div class=\"inner heading\">\n <ng-container \n [ngTemplateOutlet]=\"headerTemplate?.template\" \n [ngTemplateOutletContext]=\"{ $implicit: row.heading }\" \n ></ng-container>\n </div>\n </div> \n\n @if ( row.items | async; as rowItems ) {\n @for ( item of rowItems; track item.id; let colIndex = $index ) {\n <div class=\"outer item\"\n [class.menu-open]=\"itemMenu.menuOpen\"\n >\n <div class=\"inner item\" #itemMenu=\"matMenuTrigger\"\n [class]=\"'item-' + item.name\" \n matRipple\n [matMenuTriggerFor]=\"menu\"\n [matMenuTriggerData]=\"{ $implicit: { item: item, heading: row.heading } }\"\n [matTooltip]=\"item?.tooltip?.()\"\n matTooltipClass=\"nrcl-schedule-multiline\"\n [class.travel]=\"item?.travel\"\n >\n <ng-container \n [ngTemplateOutlet]=\"_templates[ rowIndex ][ colIndex ] || empty\" \n [ngTemplateOutletContext]=\"{ $implicit: item }\"\n ></ng-container>\n \n @let icons = item?.icons?.();\n @if ( icons && icons.length > 0 ) {\n <div class=\"icons\">\n @for ( icon of icons; track icon ) {\n <nrcl-icon small>{{ icon }}</nrcl-icon>\n } \n </div>\n }\n </div>\n </div>\n }\n }\n @else {\n @for ( day of _days; track day ) {\n <div class=\"item item-loading\"></div>\n }\n }\n </div>\n }\n </div>\n\n <nrcl-gap/>\n}\n\n<nrcl-row-list-pagination\n paginationId=\"nrcl-schedule\"\n [pageSize]=\"pageSize\"\n [pageNumber]=\"pageNumber\"\n [rowCount]=\"totalRowCount\"\n (pageNumberChange)=\"onPageNumberChange( $event )\"\n (pageSizeChange)=\"onPageSizeChange( $event )\"\n></nrcl-row-list-pagination>\n\n<ng-template #empty>\n</ng-template>\n", styles: ["::ng-deep :root{--nrcl-schedule-border-color: #c6c8cb;--nrcl-schedule-background-color: white;--nrcl-schedule-alternate-background-color: #f2f2f2;--nrcl-schedule-hover-background-color: #d7d7d7;--nrcl-schedule-row-weeks-height: 30px;--nrcl-schedule-row-weeks-font-size: 15px;--nrcl-schedule-row-weeks-font-weight: bold;--nrcl-schedule-row-weeks-foreground-color: black;--nrcl-schedule-row-days-height: 45px;--nrcl-schedule-row-days-font-size: 15px;--nrcl-schedule-row-days-font-weight: normal;--nrcl-schedule-row-days-foreground-color: black;--nrcl-schedule-row-days-weekend-background-color: #e0f8fc;--nrcl-schedule-row-days-today-background-color: #fcf8d9;--nrcl-schedule-row-schedule-height: 70px;--nrcl-schedule-heading-width: 300px;--nrcl-schedule-item-width: 80px}:host{display:flex;flex-direction:column;font-family:var(--nrcl-font-family)}:host .schedule{display:grid;grid-template-columns:var(--nrcl-schedule-heading-width) repeat(var(--nrcl-schedule-day-count),var(--nrcl-schedule-item-width));overflow:auto;height:100%;flex-grow:1}:host .schedule .upper-left{grid-row:1/span 2;grid-column:1;border-right:1px solid var(--nrcl-schedule-border-color);border-bottom:1px solid var(--nrcl-schedule-border-color);position:sticky;top:0;left:0;z-index:2;background:var(--nrcl-schedule-background-color)}:host .schedule .row{display:contents}:host .schedule .row.weeks>*{height:var(--nrcl-schedule-row-weeks-height)}:host .schedule .row.days>*{height:var(--nrcl-schedule-row-days-height)}:host .schedule .row .outer.heading,:host .schedule .row .day,:host .schedule .row .week{border-right:1px solid var(--nrcl-schedule-border-color);border-bottom:1px solid var(--nrcl-schedule-border-color)}:host .schedule .row .outer.heading{border-left:1px solid var(--nrcl-schedule-border-color)}:host .schedule .row .outer.item:last-child{border-right:1px solid var(--nrcl-schedule-border-color)}:host .schedule .row:last-child .outer.item{border-bottom:1px solid var(--nrcl-schedule-border-color)}:host .schedule .row .week{border-top:1px solid var(--nrcl-schedule-border-color);display:flex;justify-content:center;align-items:center;font-size:var(--nrcl-schedule-row-weeks-font-size);font-weight:var(--nrcl-schedule-row-weeks-font-weight);color:var(--nrcl-schedule-row-weeks-foreground-color);position:sticky;top:0;background-color:var(--nrcl-schedule-background-color);z-index:1}:host .schedule .row .day{display:flex;flex-direction:column;justify-content:center;align-items:center;font-size:var(--nrcl-schedule-row-days-font-size);font-weight:var(--nrcl-schedule-row-days-font-weight);color:var(--nrcl-schedule-row-days-foreground-color);position:sticky;top:calc(var(--nrcl-schedule-row-weeks-height) + 2px);background-color:var(--nrcl-schedule-background-color);z-index:1}:host .schedule .row .day .day-name{font-size:13px}:host .schedule .row .day.weekend{background-color:var(--nrcl-schedule-row-days-weekend-background-color)}:host .schedule .row .day.today{background-color:var(--nrcl-schedule-row-days-today-background-color)}:host .schedule .row .day.first:after{content:\"\";position:absolute;top:0;left:0;bottom:0;border-left:2px solid black}:host .schedule .row.items .outer.item{box-sizing:border-box;height:var(--nrcl-schedule-row-schedule-height);display:flex;flex-direction:column;justify-content:stretch;align-items:stretch;border-right:1px solid var(--nrcl-schedule-border-color);border-bottom:1px solid var(--nrcl-schedule-border-color)}:host .schedule .row.items .outer.item:hover .item{background-color:#06e;color:#fff}:host .schedule .row.items .outer.item.menu-open .item{background-color:#036;color:#fff}:host .schedule .row.items .outer.item .item{flex-grow:1;cursor:pointer;position:relative;padding:4px 4px 8px}:host .schedule .row.items .outer.item .item .icons{position:absolute;right:2px;bottom:2px;display:flex;gap:2px;background-color:#f1ebe4;border-radius:4px;padding:3px;color:var(--nrcl-schedule-row-days-foreground-color)}:host .schedule .row.items .outer.item .item.travel{position:relative}:host .schedule .row.items .outer.item .item.travel:after{content:\"\";position:absolute;inset:0 0 2px;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAABAQMAAAD+YPzoAAAABlBMVEX///8AAABVwtN+AAAAAnRSTlP/AOW3MEoAAAAMSURBVHicY+BwEgAAALAAW97nJhUAAAAASUVORK5CYII=);background-repeat:no-repeat;background-size:calc(100% - 8px) 3px;background-position:bottom}:host .schedule .row.items .outer.heading{box-sizing:border-box;cursor:default;position:sticky;left:0;z-index:1;height:var(--nrcl-schedule-row-schedule-height)}:host .schedule .row.items .outer.heading .heading{flex-grow:1;cursor:default;height:100%}:host .schedule .row:nth-child(odd) .outer{background-color:var(--nrcl-schedule-background-color)}:host .schedule .row:nth-child(2n) .outer{background-color:var(--nrcl-schedule-alternate-background-color)}:host .schedule .row:hover .outer{background-color:var(--nrcl-schedule-hover-background-color)}.empty{height:100%;display:flex;justify-content:center;align-items:center;color:#aaa}\n"] }]
|
|
153
|
+
}, template: "@if ( rows?.length > 0 ) {\n <div class=\"schedule\">\n <div class=\"upper-left\">\n <ng-content></ng-content>\n </div>\n\n <div class=\"row weeks\">\n @for ( week of _weeks; track $index ) {\n @if ( week.span == 1 ) {\n <div class=\"week\">\n {{ week.start }}\n </div>\n }\n @else {\n <div class=\"week\" [style.grid-column]=\"'span ' + week.span\">\n {{ week.start }} - {{ week.end }}\n </div>\n }\n }\n </div>\n\n <div class=\"row days\"> \n @for ( day of _days; track $index ) {\n <div class=\"day\"\n [class.weekend]=\"day.isWeekend\"\n [class.today]=\"day.isToday\"\n [class.first]=\"day.isFirst\"\n >\n <div class=\"day-name\">{{ day.dayName }}</div>\n <div class=\"date\">{{ day.monthDay }}</div>\n </div>\n }\n </div>\n\n @for ( row of rows | paginate: paginateState( 'nrcl-schedule' ); track row.id; let rowIndex = $index ) {\n <div class=\"row items\">\n <div class=\"outer heading\">\n <div class=\"inner heading\">\n <ng-container \n [ngTemplateOutlet]=\"headerTemplate?.template\" \n [ngTemplateOutletContext]=\"{ $implicit: row.heading }\" \n ></ng-container>\n </div>\n </div> \n\n @if ( row.items | async; as rowItems ) {\n @for ( item of rowItems; track item.id; let colIndex = $index ) {\n <div class=\"outer item\"\n [class.menu-open]=\"itemMenu.menuOpen\"\n >\n <div class=\"inner item\" #itemMenu=\"matMenuTrigger\"\n [class]=\"'item-' + item.name\" \n matRipple\n [matMenuTriggerFor]=\"menu\"\n [matMenuTriggerData]=\"{ $implicit: { item: item, heading: row.heading } }\"\n [matTooltip]=\"item?.tooltip?.()\"\n matTooltipClass=\"nrcl-schedule-multiline\"\n [class.travel]=\"item?.travel\"\n >\n <ng-container \n [ngTemplateOutlet]=\"_templates[ rowIndex ][ colIndex ] || empty\" \n [ngTemplateOutletContext]=\"{ $implicit: item }\"\n ></ng-container>\n \n @let icons = item?.icons?.();\n @if ( icons && icons.length > 0 ) {\n <div class=\"icons\">\n @for ( icon of icons; track icon ) {\n <nrcl-icon small>{{ icon }}</nrcl-icon>\n } \n </div>\n }\n </div>\n </div>\n }\n }\n @else {\n @for ( day of _days; track day ) {\n <div class=\"item item-loading\"></div>\n }\n }\n </div>\n }\n </div>\n\n <nrcl-gap/>\n}\n\n<nrcl-row-list-pagination\n paginationId=\"nrcl-schedule\"\n [pageSize]=\"pageSize\"\n [pageNumber]=\"pageNumber\"\n [rowCount]=\"totalRowCount\"\n (pageNumberChange)=\"onPageNumberChange( $event )\"\n (pageSizeChange)=\"onPageSizeChange( $event )\"\n></nrcl-row-list-pagination>\n\n<ng-template #empty>\n</ng-template>\n", styles: ["::ng-deep :root{--nrcl-schedule-border-color: #c6c8cb;--nrcl-schedule-background-color: white;--nrcl-schedule-alternate-background-color: #f2f2f2;--nrcl-schedule-hover-background-color: #d7d7d7;--nrcl-schedule-row-weeks-height: 30px;--nrcl-schedule-row-weeks-font-size: 15px;--nrcl-schedule-row-weeks-font-weight: bold;--nrcl-schedule-row-weeks-foreground-color: black;--nrcl-schedule-row-days-height: 45px;--nrcl-schedule-row-days-font-size: 15px;--nrcl-schedule-row-days-font-weight: normal;--nrcl-schedule-row-days-foreground-color: black;--nrcl-schedule-row-days-weekend-background-color: #e0f8fc;--nrcl-schedule-row-days-today-background-color: #fcf8d9;--nrcl-schedule-row-schedule-height: 70px;--nrcl-schedule-heading-width: 300px;--nrcl-schedule-item-width: 80px}:host{display:flex;flex-direction:column;font-family:var(--nrcl-font-family)}:host .schedule{display:grid;grid-template-columns:var(--nrcl-schedule-heading-width) repeat(var(--nrcl-schedule-day-count),var(--nrcl-schedule-item-width));overflow:auto;height:100%;flex-grow:1}:host .schedule .upper-left{grid-row:1/span 2;grid-column:1;border-right:1px solid var(--nrcl-schedule-border-color);border-bottom:1px solid var(--nrcl-schedule-border-color);position:sticky;top:0;left:0;z-index:2;background:var(--nrcl-schedule-background-color)}:host .schedule .row{display:contents}:host .schedule .row.weeks>*{height:var(--nrcl-schedule-row-weeks-height)}:host .schedule .row.days>*{height:var(--nrcl-schedule-row-days-height)}:host .schedule .row .outer.heading,:host .schedule .row .day,:host .schedule .row .week{border-right:1px solid var(--nrcl-schedule-border-color);border-bottom:1px solid var(--nrcl-schedule-border-color)}:host .schedule .row .outer.heading{border-left:1px solid var(--nrcl-schedule-border-color)}:host .schedule .row .outer.item:last-child{border-right:1px solid var(--nrcl-schedule-border-color)}:host .schedule .row:last-child .outer.item{border-bottom:1px solid var(--nrcl-schedule-border-color)}:host .schedule .row .week{border-top:1px solid var(--nrcl-schedule-border-color);display:flex;justify-content:center;align-items:center;font-size:var(--nrcl-schedule-row-weeks-font-size);font-weight:var(--nrcl-schedule-row-weeks-font-weight);color:var(--nrcl-schedule-row-weeks-foreground-color);position:sticky;top:0;background-color:var(--nrcl-schedule-background-color);z-index:1}:host .schedule .row .day{display:flex;flex-direction:column;justify-content:center;align-items:center;font-size:var(--nrcl-schedule-row-days-font-size);font-weight:var(--nrcl-schedule-row-days-font-weight);color:var(--nrcl-schedule-row-days-foreground-color);position:sticky;top:calc(var(--nrcl-schedule-row-weeks-height) + 2px);background-color:var(--nrcl-schedule-background-color);z-index:1}:host .schedule .row .day .day-name{font-size:13px}:host .schedule .row .day.weekend{background-color:var(--nrcl-schedule-row-days-weekend-background-color)}:host .schedule .row .day.today{background-color:var(--nrcl-schedule-row-days-today-background-color)}:host .schedule .row .day.first:after{content:\"\";position:absolute;top:0;left:0;bottom:0;border-left:2px solid black}:host .schedule .row.items .outer.item{box-sizing:border-box;height:var(--nrcl-schedule-row-schedule-height);display:flex;flex-direction:column;justify-content:stretch;align-items:stretch;border-right:1px solid var(--nrcl-schedule-border-color);border-bottom:1px solid var(--nrcl-schedule-border-color)}:host .schedule .row.items .outer.item:hover .item{background-color:#06e;color:#fff}:host .schedule .row.items .outer.item.menu-open .item{background-color:#036;color:#fff}:host .schedule .row.items .outer.item .item{flex-grow:1;cursor:pointer;position:relative;padding:4px 4px 8px}:host .schedule .row.items .outer.item .item .icons{position:absolute;right:2px;bottom:2px;display:flex;gap:2px;background-color:#f1ebe4;border-radius:4px;padding:3px;color:var(--nrcl-schedule-row-days-foreground-color)}:host .schedule .row.items .outer.item .item.travel{position:relative}:host .schedule .row.items .outer.item .item.travel:after{content:\"\";position:absolute;inset:0 0 2px;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAABAQMAAAD+YPzoAAAABlBMVEX///8AAABVwtN+AAAAAnRSTlP/AOW3MEoAAAAMSURBVHicY+BwEgAAALAAW97nJhUAAAAASUVORK5CYII=);background-repeat:no-repeat;background-size:calc(100% - 8px) 3px;background-position:bottom}:host .schedule .row.items .outer.heading{box-sizing:border-box;cursor:default;position:sticky;left:0;z-index:1;height:var(--nrcl-schedule-row-schedule-height)}:host .schedule .row.items .outer.heading .heading{flex-grow:1;cursor:default;height:100%}:host .schedule .row:nth-child(odd) .outer{background-color:var(--nrcl-schedule-background-color)}:host .schedule .row:nth-child(2n) .outer{background-color:var(--nrcl-schedule-alternate-background-color)}:host .schedule .row:hover .outer{background-color:var(--nrcl-schedule-hover-background-color)}.empty{height:100%;display:flex;justify-content:center;align-items:center;color:#aaa}::ng-deep .cdk-overlay-container .nrcl-schedule-multiline .mdc-tooltip__surface{white-space:pre-line;max-width:unset;text-align:left}\n"] }]
|
|
154
154
|
}], propDecorators: { provider: [{
|
|
155
155
|
type: Input
|
|
156
156
|
}], startDate: [{
|
|
@@ -170,4 +170,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
170
170
|
type: ContentChild,
|
|
171
171
|
args: [ScheduleRowHeadingDirective]
|
|
172
172
|
}] } });
|
|
173
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NoZWR1bGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnItbmd4LWNvbXBvbmVudC1saWIvc3JjL2NvbXBvbmVudHMvc2NoZWR1bGUvc2NoZWR1bGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnItbmd4LWNvbXBvbmVudC1saWIvc3JjL2NvbXBvbmVudHMvc2NoZWR1bGUvc2NoZWR1bGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsZUFBZSxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsZUFBZSxFQUFvRCxNQUFNLGVBQWUsQ0FBQztBQUU5SixPQUFPLE1BQU0sTUFBTSxRQUFRLENBQUM7QUFHNUIsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdDQUFnQyxDQUFDOzs7Ozs7Ozs7O0FBSzdELE1BQU0sT0FBTywyQkFBMkI7SUFDcEMsWUFDVyxRQUEwQjtRQUExQixhQUFRLEdBQVIsUUFBUSxDQUFrQjtJQUNuQyxDQUFDOytHQUhNLDJCQUEyQjttR0FBM0IsMkJBQTJCOzs0RkFBM0IsMkJBQTJCO2tCQUh2QyxTQUFTO21CQUFFO29CQUNSLFFBQVEsRUFBRSwwQkFBMEI7aUJBQ3ZDOztBQU9ELG1GQUFtRjtBQUtuRixNQUFNLE9BQU8scUJBQXFCO0lBRzlCLFlBQ1csUUFBMEI7UUFBMUIsYUFBUSxHQUFSLFFBQVEsQ0FBa0I7SUFDbkMsQ0FBQzsrR0FMTSxxQkFBcUI7bUdBQXJCLHFCQUFxQjs7NEZBQXJCLHFCQUFxQjtrQkFIakMsU0FBUzttQkFBRTtvQkFDUixRQUFRLEVBQUUsb0JBQW9CO2lCQUNqQztnRkFFZ0MsSUFBSTtzQkFBaEMsS0FBSzt1QkFBRSxrQkFBa0I7O0FBc0Q5QixtRkFBbUY7QUFVbkYsTUFBTSxPQUFPLGlCQUFrQixTQUFRLFdBQTJCO0lBUmxFOztR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QUNQLENBQUMsQ0FBRTthQUNWLENBQUE7UUFDTCxDQUFDLENBQUUsSUFBSSxFQUFFLENBQUE7SUFDYixDQUFDOytHQTlIUSxpQkFBaUI7bUdBQWpCLGlCQUFpQiwySEFHTCxlQUFlLHNDQUNmLGVBQWUscUtBSXRCLDJCQUEyQixtRUFEeEIscUJBQXFCLHlFQzdGMUMsOGpJQW1HQTs7NEZEYmEsaUJBQWlCO2tCQVI3QixTQUFTOytCQUNJLGVBQWUsUUFHbkI7d0JBQ0YsbUNBQW1DLEVBQUUsZUFBZTtxQkFDdkQ7OEJBR1EsUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNtQyxTQUFTO3NCQUFqRCxLQUFLO3VCQUFFLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRTtnQkFDRyxRQUFRO3NCQUFoRCxLQUFLO3VCQUFFLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRTtnQkFDN0IsSUFBSTtzQkFBWixLQUFLO2dCQUVrQyxhQUFhO3NCQUFwRCxlQUFlO3VCQUFDLHFCQUFxQjtnQkFDSyxjQUFjO3NCQUF4RCxZQUFZO3VCQUFDLDJCQUEyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgQ29udGVudENoaWxkLCBDb250ZW50Q2hpbGRyZW4sIERpcmVjdGl2ZSwgSW5wdXQsIG51bWJlckF0dHJpYnV0ZSwgT25DaGFuZ2VzLCBRdWVyeUxpc3QsIFNpbXBsZUNoYW5nZXMsIFRlbXBsYXRlUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXRNZW51UGFuZWwgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9tZW51JztcbmltcG9ydCBtb21lbnQgZnJvbSAnbW9tZW50JztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFBhZ2luYXRpb25TdGF0ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMvcGFnaW5hdGlvbi5iYXNlJztcbmltcG9ydCB7IFJvd0xpc3RCYXNlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcy9yb3ctbGlzdC5iYXNlJztcblxuQERpcmVjdGl2ZSgge1xuICAgIHNlbGVjdG9yOiAnW25yY2xTY2hlZHVsZVJvd0hlYWRpbmddJ1xufSApXG5leHBvcnQgY2xhc3MgU2NoZWR1bGVSb3dIZWFkaW5nRGlyZWN0aXZlIHtcbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHVibGljIHRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+XG4gICAgKXt9XG59XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBEaXJlY3RpdmUoIHtcbiAgICBzZWxlY3RvcjogJ1tucmNsU2NoZWR1bGVJdGVtXSdcbn0gKVxuZXhwb3J0IGNsYXNzIFNjaGVkdWxlSXRlbURpcmVjdGl2ZSB7XG4gICAgQElucHV0KCAnbnJjbFNjaGVkdWxlSXRlbScgKSBuYW1lPzogc3RyaW5nXG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHVibGljIHRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+XG4gICAgKXt9XG59XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbmV4cG9ydCB0eXBlIFNjaGVkdWxlUm93SXRlbSA9IHtcbiAgICBpZDogc3RyaW5nLFxuICAgIG5hbWU6IHN0cmluZyxcbiAgICBpY29ucz86ICgpID0+IHN0cmluZ1tdLFxuICAgIHRvb2x0aXA/OiAoKSA9PiBzdHJpbmcsXG4gICAgdHJhdmVsPzogYm9vbGVhbixcbn1cblxuZXhwb3J0IHR5cGUgU2NoZWR1bGVSb3cgPSB7XG4gICAgaWQ/OiBzdHJpbmcsXG4gICAgaGVhZGluZzogYW55LFxuICAgIGl0ZW1zOiBQcm9taXNlPFNjaGVkdWxlUm93SXRlbVtdPlxufVxuXG5leHBvcnQgdHlwZSBTY2hlZHVsZSA9IFNjaGVkdWxlUm93W11cblxudHlwZSBEYXkgPSB7XG4gICAgZGF5TmFtZTogc3RyaW5nLFxuICAgIG1vbnRoRGF5OiBudW1iZXIsXG4gICAgZGF0ZTogc3RyaW5nLFxuICAgIGlzV2Vla2VuZDogYm9vbGVhbixcbiAgICBpc1RvZGF5OiBib29sZWFuLFxuICAgIGlzRmlyc3Q6IGJvb2xlYW5cbn1cblxudHlwZSBXZWVrID0ge1xuICAgIHN0YXJ0OiBzdHJpbmcsXG4gICAgZW5kOiBzdHJpbmcsXG4gICAgc3BhbjogbnVtYmVyXG59XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbmV4cG9ydCB0eXBlIEZldGNoU2NoZWR1bGVSb3dQYXJhbWV0ZXJzID0ge1xuICAgIHJlc291cmNlSWQ6IHN0cmluZ1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNjaGVkdWxlUHJvdmlkZXIge1xuICAgIHN0YXJ0bG9hZFNjaGVkdWxlKCBpbm5lcjogKCkgPT4gUHJvbWlzZTxhbnk+ICk6IFByb21pc2U8YW55PlxuICAgIGZldGNoU2NoZWR1bGUoKTogT2JzZXJ2YWJsZTxhbnk+XG4gICAgcGFyc2VTY2hlZHVsZSggcmVzOiBhbnkgKTogU2NoZWR1bGVcbiAgICBnZXRJbml0aWFsUGFnZVN0YXRlKCk6IFBhZ2luYXRpb25TdGF0ZTx7fT5cbiAgICBjb21wbGV0ZWRMb2FkU2NoZWR1bGUoIGlubmVyOiAoKSA9PiB2b2lkICk6IGFueVxufVxuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5AQ29tcG9uZW50KCB7XG4gICAgc2VsZWN0b3I6ICducmNsLXNjaGVkdWxlJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vc2NoZWR1bGUuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsOiAnLi9zY2hlZHVsZS5jb21wb25lbnQuc2NzcycsXG4gICAgaG9zdDoge1xuICAgICAgICAnW3N0eWxlLi0tbnJjbC1zY2hlZHVsZS1kYXktY291bnRdJzogJ3RoaXMuZGF5Q291bnQnXG4gICAgfVxufSApXG5leHBvcnQgY2xhc3MgU2NoZWR1bGVDb21wb25lbnQgZXh0ZW5kcyBSb3dMaXN0QmFzZTx7fSxTY2hlZHVsZVJvdz4gaW1wbGVtZW50cyBPbkNoYW5nZXMge1xuICAgIEBJbnB1dCgpIHByb3ZpZGVyPzogU2NoZWR1bGVQcm92aWRlclxuICAgIEBJbnB1dCgpIHN0YXJ0RGF0ZT86IHN0cmluZ1xuICAgIEBJbnB1dCggeyB0cmFuc2Zvcm06IG51bWJlckF0dHJpYnV0ZSB9ICkgd2Vla1N0YXJ0ID0gMFxuICAgIEBJbnB1dCggeyB0cmFuc2Zvcm06IG51bWJlckF0dHJpYnV0ZSB9ICkgZGF5Q291bnQ/OiBudW1iZXJcbiAgICBASW5wdXQoKSBtZW51PzogTWF0TWVudVBhbmVsXG5cbiAgICBAQ29udGVudENoaWxkcmVuKFNjaGVkdWxlSXRlbURpcmVjdGl2ZSkgaXRlbVRlbXBsYXRlcyE6IFF1ZXJ5TGlzdDxTY2hlZHVsZUl0ZW1EaXJlY3RpdmU+O1xuICAgIEBDb250ZW50Q2hpbGQoU2NoZWR1bGVSb3dIZWFkaW5nRGlyZWN0aXZlKSBoZWFkZXJUZW1wbGF0ZSE6IFNjaGVkdWxlUm93SGVhZGluZ0RpcmVjdGl2ZVxuXG4gICAgcHJvdGVjdGVkIF9kYXlzOiBEYXlbXSA9IFtdXG4gICAgcHJvdGVjdGVkIF93ZWVrczogV2Vla1tdID0gW11cbiAgICBwcm90ZWN0ZWQgX3RlbXBsYXRlczogVGVtcGxhdGVSZWY8YW55PltdW10gPSBbXVxuXG4gICAgbmdPbkNoYW5nZXMoIGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMgKTogdm9pZCB7XG4gICAgICAgIC8vIHRoaXMucmVmcmVzaFJvd0xpc3QoKVxuICAgIH1cblxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgLy8gY29uc29sZS5sb2coJ1NjaGVkdWxlQ29tcG9uZW50Lm5nQWZ0ZXJWaWV3SW5pdCcpXG4gICAgICAgIHN1cGVyLm5nQWZ0ZXJWaWV3SW5pdCgpXG4gICAgfVxuXG4gICAgbG9hZFJvd0xpc3QoKTogUHJvbWlzZTxhbnk+IHtcbiAgICAgICAgaWYgKCAhdGhpcy5wcm92aWRlcj8uc3RhcnRsb2FkU2NoZWR1bGUgKSB0aHJvdyBFcnJvciggJ1NjaGVkdWxlQ29tcG9uZW50LnByb3ZpZGVyLnN0YXJ0bG9hZFNjaGVkdWxlIG5vdCBzZXQnIClcbiAgICAgXG4gICAgICAgIHJldHVybiB0aGlzLnByb3ZpZGVyLnN0YXJ0bG9hZFNjaGVkdWxlKCAoKSA9PiB7IHJldHVybiBzdXBlci5sb2FkUm93TGlzdCgpIH0gKVxuICAgIH1cblxuICAgIGZldGNoUm93TGlzdFBhZ2UoKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICAgICAgaWYgKCAhdGhpcy5wcm92aWRlcj8uZmV0Y2hTY2hlZHVsZSApIHRocm93IEVycm9yKCAnU2NoZWR1bGVDb21wb25lbnQucHJvdmlkZXIuZmV0Y2hTY2hlZHVsZSBub3Qgc2V0JyApXG5cbiAgICAgICAgcmV0dXJuIHRoaXMucHJvdmlkZXIuZmV0Y2hTY2hlZHVsZSgpXG4gICAgfVxuXG4gICAgcGFyc2VSb3dzKCByZXM6IGFueSApOiBTY2hlZHVsZVJvd1tdIHtcbiAgICAgICAgaWYgKCAhdGhpcy5wcm92aWRlcj8ucGFyc2VTY2hlZHVsZSApIHRocm93IEVycm9yKCAnU2NoZWR1bGVDb21wb25lbnQucHJvdmlkZXIucGFyc2VTY2hlZHVsZSBub3Qgc2V0JyApXG5cbiAgICAgICAgbGV0IHJvd3MgPSB0aGlzLnByb3ZpZGVyLnBhcnNlU2NoZWR1bGUoIHJlcyApXG4gICAgICAgIHJldHVybiB0aGlzLm1ha2VSb3dzKCByb3dzIClcbiAgICB9XG5cbiAgICBnZXRJbml0aWFsUGFnZVN0YXRlKCk6IFBhZ2luYXRpb25TdGF0ZTx7fT4ge1xuICAgICAgICBpZiAoICF0aGlzLnByb3ZpZGVyPy5nZXRJbml0aWFsUGFnZVN0YXRlICkgdGhyb3cgRXJyb3IoICdTY2hlZHVsZUNvbXBvbmVudC5wcm92aWRlci5nZXRJbml0aWFsUGFnZVN0YXRlIG5vdCBzZXQnIClcblxuICAgICAgICByZXR1cm4gdGhpcy5wcm92aWRlci5nZXRJbml0aWFsUGFnZVN0YXRlKClcbiAgICB9XG5cbiAgICBjb21wbGV0ZWRSb3dMaXN0UGFnZSgpOiBQYWdpbmF0aW9uU3RhdGU8e30+IHtcbiAgICAgICAgaWYgKCAhdGhpcy5wcm92aWRlcj8uY29tcGxldGVkTG9hZFNjaGVkdWxlICkgdGhyb3cgRXJyb3IoICdTY2hlZHVsZUNvbXBvbmVudC5wcm92aWRlci5jb21wbGV0ZWRSb3dMaXN0UGFnZSBub3Qgc2V0JyApXG5cbiAgICAgICAgcmV0dXJuIHRoaXMucHJvdmlkZXIuY29tcGxldGVkTG9hZFNjaGVkdWxlKCBzdXBlci5jb21wbGV0ZWRSb3dMaXN0UGFnZSApXG4gICAgfVxuXG4gICAgb25TYW1lUGFnZUZpbHRlckNoYW5nZSggZXY6IHt9ICk6IHZvaWQge1xuICAgICAgICB0aGlzLmZpbHRlciA9IGV2XG4gICAgICAgIHRoaXMucmVmcmVzaFJvd0xpc3QoKVxuICAgIH1cblxuICAgIG1ha2VSb3dzKCBzY2hlZHVsZTogU2NoZWR1bGUgKTogU2NoZWR1bGUge1xuICAgICAgICBsZXQgc3RhcnQgPSBtb21lbnQoIHRoaXMuc3RhcnREYXRlIClcbiAgICAgICAgbGV0IHRvZGF5ID0gbW9tZW50KClcblxuICAgICAgICB0aGlzLl93ZWVrcyA9IEFycmF5LmZyb20oIHsgbGVuZ3RoOiB0aGlzLmRheUNvdW50ISB9ICkucmVkdWNlPFdlZWtbXT4oICggYSwgeCwgaSApID0+IHtcbiAgICAgICAgICAgIGxldCBtID0gc3RhcnQuY2xvbmUoKS5hZGQoIGksICdkYXknIClcbiAgICAgICAgICAgIGxldCBkYXRlID0gbS5mb3JtYXQoICdNTU0gRCcgKVxuICAgICAgICAgICAgbGV0IGRheSA9IG0uZGF5KClcblxuICAgICAgICAgICAgaWYgKCBhLmxlbmd0aCA9PSAwICkgcmV0dXJuIGEuY29uY2F0KCB7XG4gICAgICAgICAgICAgICAgc3RhcnQ6IGRhdGUsXG4gICAgICAgICAgICAgICAgZW5kOiBkYXRlLFxuICAgICAgICAgICAgICAgIHNwYW46IDFcbiAgICAgICAgICAgIH0gKVxuXG4gICAgICAgICAgICBsZXQgcHJldiA9IGFbIGEubGVuZ3RoIC0gMSBdXG5cbiAgICAgICAgICAgIGlmICggZGF5ID09IHRoaXMud2Vla1N0YXJ0ICkgcmV0dXJuIGEuY29uY2F0KCB7XG4gICAgICAgICAgICAgICAgc3RhcnQ6IGRhdGUsXG4gICAgICAgICAgICAgICAgZW5kOiBkYXRlLFxuICAgICAgICAgICAgICAgIHNwYW46IDFcbiAgICAgICAgICAgIH0gKVxuXG4gICAgICAgICAgICBwcmV2LmVuZCA9IGRhdGVcbiAgICAgICAgICAgIHByZXYuc3BhbiArPSAxXG4gICAgICAgICAgICByZXR1cm4gYVxuICAgICAgICB9LCBbXSApXG5cbiAgICAgICAgdGhpcy5fZGF5cyA9IEFycmF5LmZyb20oIHsgbGVuZ3RoOiB0aGlzLmRheUNvdW50ISB9ICkubWFwKCAoIHgsIGkgKSA9PiB7XG4gICAgICAgICAgICBsZXQgZCA9IHN0YXJ0LmNsb25lKCkuYWRkKCBpLCAnZGF5JyApXG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIGRheU5hbWU6IGQuZm9ybWF0KCAnZGRkJyApLFxuICAgICAgICAgICAgICAgIG1vbnRoRGF5OiBkLmRhdGUoKSxcbiAgICAgICAgICAgICAgICBkYXRlOiBkLmZvcm1hdCggJ1ktTU0tREQnICksXG4gICAgICAgICAgICAgICAgaXNGaXJzdDogZC5kYXRlKCkgPT0gMSxcbiAgICAgICAgICAgICAgICBpc1dlZWtlbmQ6IGQuZGF5KCkgPT0gMCB8fCBkLmRheSgpID09IDYsXG4gICAgICAgICAgICAgICAgaXNUb2RheTogZC5pc1NhbWUoIHRvZGF5LCAnZGF5JyApLFxuXG4gICAgICAgICAgICB9XG4gICAgICAgIH0gKVxuXG4gICAgICAgIHRoaXMuX3RlbXBsYXRlcyA9IEFycmF5LmZyb20oIHsgbGVuZ3RoOiBzY2hlZHVsZS5sZW5ndGggfSApXG5cbiAgICAgICAgcmV0dXJuIHNjaGVkdWxlLm1hcCggKCByb3csIGkgKSA9PiB7XG4gICAgICAgICAgICB0aGlzLl90ZW1wbGF0ZXNbIGkgXSA9IEFycmF5LmZyb20oIHsgbGVuZ3RoOiB0aGlzLmRheUNvdW50ISB9IClcblxuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICBpZDogcm93LmlkID8/IFN0cmluZyggaSApLFxuICAgICAgICAgICAgICAgIGhlYWRpbmc6IHJvdy5oZWFkaW5nLFxuICAgICAgICAgICAgICAgIGl0ZW1zOiByb3cuaXRlbXNcbiAgICAgICAgICAgICAgICAgICAgLnRoZW4oIHJvd0l0ZW1zID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBBcnJheS5mcm9tKCB7IGxlbmd0aDogdGhpcy5kYXlDb3VudCEgfSApLm1hcCggKCB4LCBqICkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCByb3dJdGVtID0gcm93SXRlbXNbIGogXVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCByb3dJdGVtID09IG51bGwgKSBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkOiBTdHJpbmcoIGogKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICdlbXB0eSdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuX3RlbXBsYXRlc1sgaSBdWyBqIF0gPSB0aGlzLml0ZW1UZW1wbGF0ZXM/LmZpbmQoIGkgPT4gaS5uYW1lID09IHJvd0l0ZW0/Lm5hbWUgICk/LnRlbXBsYXRlIVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHJvd0l0ZW1cbiAgICAgICAgICAgICAgICAgICAgICAgIH0gKVxuICAgICAgICAgICAgICAgICAgICB9IClcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSApIHx8IFtdXG4gICAgfVxufVxuIiwiQGlmICggcm93cz8ubGVuZ3RoID4gMCApIHtcbiAgICA8ZGl2IGNsYXNzPVwic2NoZWR1bGVcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInVwcGVyLWxlZnRcIj5cbiAgICAgICAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPGRpdiBjbGFzcz1cInJvdyB3ZWVrc1wiPlxuICAgICAgICAgICAgQGZvciAoIHdlZWsgb2YgX3dlZWtzOyB0cmFjayAkaW5kZXggKSB7XG4gICAgICAgICAgICAgICAgQGlmICggd2Vlay5zcGFuID09IDEgKSB7XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3ZWVrXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICB7eyB3ZWVrLnN0YXJ0IH19XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3ZWVrXCIgW3N0eWxlLmdyaWQtY29sdW1uXT1cIidzcGFuICcgKyB3ZWVrLnNwYW5cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIHt7IHdlZWsuc3RhcnQgfX0gLSB7eyB3ZWVrLmVuZCB9fVxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIDxkaXYgY2xhc3M9XCJyb3cgZGF5c1wiPiAgICBcbiAgICAgICAgICAgIEBmb3IgKCBkYXkgb2YgX2RheXM7IHRyYWNrICRpbmRleCApIHtcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGF5XCJcbiAgICAgICAgICAgICAgICAgICAgW2NsYXNzLndlZWtlbmRdPVwiZGF5LmlzV2Vla2VuZFwiXG4gICAgICAgICAgICAgICAgICAgIFtjbGFzcy50b2RheV09XCJkYXkuaXNUb2RheVwiXG4gICAgICAgICAgICAgICAgICAgIFtjbGFzcy5maXJzdF09XCJkYXkuaXNGaXJzdFwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGF5LW5hbWVcIj57eyBkYXkuZGF5TmFtZSB9fTwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGF0ZVwiPnt7IGRheS5tb250aERheSB9fTwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgfVxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICBAZm9yICggcm93IG9mIHJvd3MgfCBwYWdpbmF0ZTogcGFnaW5hdGVTdGF0ZSggJ25yY2wtc2NoZWR1bGUnICk7IHRyYWNrIHJvdy5pZDsgbGV0IHJvd0luZGV4ID0gJGluZGV4ICkge1xuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvdyBpdGVtc1wiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJvdXRlciBoZWFkaW5nXCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJpbm5lciBoZWFkaW5nXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImhlYWRlclRlbXBsYXRlPy50ZW1wbGF0ZVwiIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7ICRpbXBsaWNpdDogcm93LmhlYWRpbmcgfVwiICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICA+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PiAgICBcblxuICAgICAgICAgICAgICAgIEBpZiAoIHJvdy5pdGVtcyB8IGFzeW5jOyBhcyByb3dJdGVtcyApIHtcbiAgICAgICAgICAgICAgICAgICAgQGZvciAoIGl0ZW0gb2Ygcm93SXRlbXM7IHRyYWNrIGl0ZW0uaWQ7IGxldCBjb2xJbmRleCA9ICRpbmRleCApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJvdXRlciBpdGVtXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MubWVudS1vcGVuXT1cIml0ZW1NZW51Lm1lbnVPcGVuXCJcbiAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaW5uZXIgaXRlbVwiICNpdGVtTWVudT1cIm1hdE1lbnVUcmlnZ2VyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzXT1cIidpdGVtLScgKyBpdGVtLm5hbWVcIiBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF0UmlwcGxlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFttYXRNZW51VHJpZ2dlckZvcl09XCJtZW51XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW21hdE1lbnVUcmlnZ2VyRGF0YV09XCJ7ICRpbXBsaWNpdDogeyBpdGVtOiBpdGVtLCBoZWFkaW5nOiByb3cuaGVhZGluZyB9IH1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbWF0VG9vbHRpcF09XCJpdGVtPy50b29sdGlwPy4oKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hdFRvb2x0aXBDbGFzcz1cIm5yY2wtc2NoZWR1bGUtbXVsdGlsaW5lXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzLnRyYXZlbF09XCJpdGVtPy50cmF2ZWxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cIl90ZW1wbGF0ZXNbIHJvd0luZGV4IF1bIGNvbEluZGV4IF0gfHwgZW1wdHlcIiBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7ICRpbXBsaWNpdDogaXRlbSB9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGxldCBpY29ucyA9IGl0ZW0/Lmljb25zPy4oKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGlmICggaWNvbnMgJiYgaWNvbnMubGVuZ3RoID4gMCApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJpY29uc1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBmb3IgKCBpY29uIG9mIGljb25zOyB0cmFjayBpY29uICkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bnJjbC1pY29uIHNtYWxsPnt7IGljb24gfX08L25yY2wtaWNvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIEBmb3IgKCBkYXkgb2YgX2RheXM7IHRyYWNrIGRheSApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJpdGVtIGl0ZW0tbG9hZGluZ1wiPjwvZGl2PlxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIH1cbiAgICA8L2Rpdj5cblxuICAgIDxucmNsLWdhcC8+XG59XG5cbjxucmNsLXJvdy1saXN0LXBhZ2luYXRpb25cbiAgICBwYWdpbmF0aW9uSWQ9XCJucmNsLXNjaGVkdWxlXCJcbiAgICBbcGFnZVNpemVdPVwicGFnZVNpemVcIlxuICAgIFtwYWdlTnVtYmVyXT1cInBhZ2VOdW1iZXJcIlxuICAgIFtyb3dDb3VudF09XCJ0b3RhbFJvd0NvdW50XCJcbiAgICAocGFnZU51bWJlckNoYW5nZSk9XCJvblBhZ2VOdW1iZXJDaGFuZ2UoICRldmVudCApXCJcbiAgICAocGFnZVNpemVDaGFuZ2UpPVwib25QYWdlU2l6ZUNoYW5nZSggJGV2ZW50IClcIlxuPjwvbnJjbC1yb3ctbGlzdC1wYWdpbmF0aW9uPlxuXG48bmctdGVtcGxhdGUgI2VtcHR5PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
|
|
173
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NoZWR1bGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnItbmd4LWNvbXBvbmVudC1saWIvc3JjL2NvbXBvbmVudHMvc2NoZWR1bGUvc2NoZWR1bGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnItbmd4LWNvbXBvbmVudC1saWIvc3JjL2NvbXBvbmVudHMvc2NoZWR1bGUvc2NoZWR1bGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsZUFBZSxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsZUFBZSxFQUFvRCxNQUFNLGVBQWUsQ0FBQztBQUU5SixPQUFPLE1BQU0sTUFBTSxRQUFRLENBQUM7QUFHNUIsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdDQUFnQyxDQUFDOzs7Ozs7Ozs7O0FBSzdELE1BQU0sT0FBTywyQkFBMkI7SUFDcEMsWUFDVyxRQUEwQjtRQUExQixhQUFRLEdBQVIsUUFBUSxDQUFrQjtJQUNuQyxDQUFDOytHQUhNLDJCQUEyQjttR0FBM0IsMkJBQTJCOzs0RkFBM0IsMkJBQTJCO2tCQUh2QyxTQUFTO21CQUFFO29CQUNSLFFBQVEsRUFBRSwwQkFBMEI7aUJBQ3ZDOztBQU9ELG1GQUFtRjtBQUtuRixNQUFNLE9BQU8scUJBQXFCO0lBRzlCLFlBQ1csUUFBMEI7UUFBMUIsYUFBUSxHQUFSLFFBQVEsQ0FBa0I7SUFDbkMsQ0FBQzsrR0FMTSxxQkFBcUI7bUdBQXJCLHFCQUFxQjs7NEZBQXJCLHFCQUFxQjtrQkFIakMsU0FBUzttQkFBRTtvQkFDUixRQUFRLEVBQUUsb0JBQW9CO2lCQUNqQztnRkFFZ0MsSUFBSTtzQkFBaEMsS0FBSzt1QkFBRSxrQkFBa0I7O0FBc0Q5QixtRkFBbUY7QUFVbkYsTUFBTSxPQUFPLGlCQUFrQixTQUFRLFdBQTJCO0lBUmxFOztR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QUNQLENBQUMsQ0FBRTthQUNWLENBQUE7UUFDTCxDQUFDLENBQUUsSUFBSSxFQUFFLENBQUE7SUFDYixDQUFDOytHQTlIUSxpQkFBaUI7bUdBQWpCLGlCQUFpQiwySEFHTCxlQUFlLHNDQUNmLGVBQWUscUtBSXRCLDJCQUEyQixtRUFEeEIscUJBQXFCLHlFQzdGMUMsOGpJQW1HQTs7NEZEYmEsaUJBQWlCO2tCQVI3QixTQUFTOytCQUNJLGVBQWUsUUFHbkI7d0JBQ0YsbUNBQW1DLEVBQUUsZUFBZTtxQkFDdkQ7OEJBR1EsUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNtQyxTQUFTO3NCQUFqRCxLQUFLO3VCQUFFLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRTtnQkFDRyxRQUFRO3NCQUFoRCxLQUFLO3VCQUFFLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRTtnQkFDN0IsSUFBSTtzQkFBWixLQUFLO2dCQUVrQyxhQUFhO3NCQUFwRCxlQUFlO3VCQUFDLHFCQUFxQjtnQkFDSyxjQUFjO3NCQUF4RCxZQUFZO3VCQUFDLDJCQUEyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgQ29udGVudENoaWxkLCBDb250ZW50Q2hpbGRyZW4sIERpcmVjdGl2ZSwgSW5wdXQsIG51bWJlckF0dHJpYnV0ZSwgT25DaGFuZ2VzLCBRdWVyeUxpc3QsIFNpbXBsZUNoYW5nZXMsIFRlbXBsYXRlUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXRNZW51UGFuZWwgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9tZW51JztcbmltcG9ydCBtb21lbnQgZnJvbSAnbW9tZW50JztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEluaXRpYWxTdGF0ZSwgUGFnaW5hdGlvblN0YXRlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcy9wYWdpbmF0aW9uLmJhc2UnO1xuaW1wb3J0IHsgUm93TGlzdEJhc2UgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzL3Jvdy1saXN0LmJhc2UnO1xuXG5ARGlyZWN0aXZlKCB7XG4gICAgc2VsZWN0b3I6ICdbbnJjbFNjaGVkdWxlUm93SGVhZGluZ10nXG59IClcbmV4cG9ydCBjbGFzcyBTY2hlZHVsZVJvd0hlYWRpbmdEaXJlY3RpdmUge1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwdWJsaWMgdGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT5cbiAgICApe31cbn1cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQERpcmVjdGl2ZSgge1xuICAgIHNlbGVjdG9yOiAnW25yY2xTY2hlZHVsZUl0ZW1dJ1xufSApXG5leHBvcnQgY2xhc3MgU2NoZWR1bGVJdGVtRGlyZWN0aXZlIHtcbiAgICBASW5wdXQoICducmNsU2NoZWR1bGVJdGVtJyApIG5hbWU/OiBzdHJpbmdcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwdWJsaWMgdGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT5cbiAgICApe31cbn1cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuZXhwb3J0IHR5cGUgU2NoZWR1bGVSb3dJdGVtID0ge1xuICAgIGlkOiBzdHJpbmcsXG4gICAgbmFtZTogc3RyaW5nLFxuICAgIGljb25zPzogKCkgPT4gc3RyaW5nW10sXG4gICAgdG9vbHRpcD86ICgpID0+IHN0cmluZyxcbiAgICB0cmF2ZWw/OiBib29sZWFuLFxufVxuXG5leHBvcnQgdHlwZSBTY2hlZHVsZVJvdyA9IHtcbiAgICBpZD86IHN0cmluZyxcbiAgICBoZWFkaW5nOiBhbnksXG4gICAgaXRlbXM6IFByb21pc2U8U2NoZWR1bGVSb3dJdGVtW10+XG59XG5cbmV4cG9ydCB0eXBlIFNjaGVkdWxlID0gU2NoZWR1bGVSb3dbXVxuXG50eXBlIERheSA9IHtcbiAgICBkYXlOYW1lOiBzdHJpbmcsXG4gICAgbW9udGhEYXk6IG51bWJlcixcbiAgICBkYXRlOiBzdHJpbmcsXG4gICAgaXNXZWVrZW5kOiBib29sZWFuLFxuICAgIGlzVG9kYXk6IGJvb2xlYW4sXG4gICAgaXNGaXJzdDogYm9vbGVhblxufVxuXG50eXBlIFdlZWsgPSB7XG4gICAgc3RhcnQ6IHN0cmluZyxcbiAgICBlbmQ6IHN0cmluZyxcbiAgICBzcGFuOiBudW1iZXJcbn1cblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuZXhwb3J0IHR5cGUgRmV0Y2hTY2hlZHVsZVJvd1BhcmFtZXRlcnMgPSB7XG4gICAgcmVzb3VyY2VJZDogc3RyaW5nXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2NoZWR1bGVQcm92aWRlciB7XG4gICAgc3RhcnRsb2FkU2NoZWR1bGUoIGlubmVyOiAoKSA9PiBQcm9taXNlPGFueT4gKTogUHJvbWlzZTxhbnk+XG4gICAgZmV0Y2hTY2hlZHVsZSgpOiBPYnNlcnZhYmxlPGFueT5cbiAgICBwYXJzZVNjaGVkdWxlKCByZXM6IGFueSApOiBTY2hlZHVsZVxuICAgIGdldEluaXRpYWxQYWdlU3RhdGUoKTogSW5pdGlhbFN0YXRlPHt9PlxuICAgIGNvbXBsZXRlZExvYWRTY2hlZHVsZSggaW5uZXI6ICgpID0+IHZvaWQgKTogYW55XG59XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbkBDb21wb25lbnQoIHtcbiAgICBzZWxlY3RvcjogJ25yY2wtc2NoZWR1bGUnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9zY2hlZHVsZS5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmw6ICcuL3NjaGVkdWxlLmNvbXBvbmVudC5zY3NzJyxcbiAgICBob3N0OiB7XG4gICAgICAgICdbc3R5bGUuLS1ucmNsLXNjaGVkdWxlLWRheS1jb3VudF0nOiAndGhpcy5kYXlDb3VudCdcbiAgICB9XG59IClcbmV4cG9ydCBjbGFzcyBTY2hlZHVsZUNvbXBvbmVudCBleHRlbmRzIFJvd0xpc3RCYXNlPHt9LFNjaGVkdWxlUm93PiBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XG4gICAgQElucHV0KCkgcHJvdmlkZXI/OiBTY2hlZHVsZVByb3ZpZGVyXG4gICAgQElucHV0KCkgc3RhcnREYXRlPzogc3RyaW5nXG4gICAgQElucHV0KCB7IHRyYW5zZm9ybTogbnVtYmVyQXR0cmlidXRlIH0gKSB3ZWVrU3RhcnQgPSAwXG4gICAgQElucHV0KCB7IHRyYW5zZm9ybTogbnVtYmVyQXR0cmlidXRlIH0gKSBkYXlDb3VudD86IG51bWJlclxuICAgIEBJbnB1dCgpIG1lbnU/OiBNYXRNZW51UGFuZWxcblxuICAgIEBDb250ZW50Q2hpbGRyZW4oU2NoZWR1bGVJdGVtRGlyZWN0aXZlKSBpdGVtVGVtcGxhdGVzITogUXVlcnlMaXN0PFNjaGVkdWxlSXRlbURpcmVjdGl2ZT47XG4gICAgQENvbnRlbnRDaGlsZChTY2hlZHVsZVJvd0hlYWRpbmdEaXJlY3RpdmUpIGhlYWRlclRlbXBsYXRlITogU2NoZWR1bGVSb3dIZWFkaW5nRGlyZWN0aXZlXG5cbiAgICBwcm90ZWN0ZWQgX2RheXM6IERheVtdID0gW11cbiAgICBwcm90ZWN0ZWQgX3dlZWtzOiBXZWVrW10gPSBbXVxuICAgIHByb3RlY3RlZCBfdGVtcGxhdGVzOiBUZW1wbGF0ZVJlZjxhbnk+W11bXSA9IFtdXG5cbiAgICBuZ09uQ2hhbmdlcyggY2hhbmdlczogU2ltcGxlQ2hhbmdlcyApOiB2b2lkIHtcbiAgICAgICAgLy8gdGhpcy5yZWZyZXNoUm93TGlzdCgpXG4gICAgfVxuXG4gICAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgICAgICAvLyBjb25zb2xlLmxvZygnU2NoZWR1bGVDb21wb25lbnQubmdBZnRlclZpZXdJbml0JylcbiAgICAgICAgc3VwZXIubmdBZnRlclZpZXdJbml0KClcbiAgICB9XG5cbiAgICBsb2FkUm93TGlzdCgpOiBQcm9taXNlPGFueT4ge1xuICAgICAgICBpZiAoICF0aGlzLnByb3ZpZGVyPy5zdGFydGxvYWRTY2hlZHVsZSApIHRocm93IEVycm9yKCAnU2NoZWR1bGVDb21wb25lbnQucHJvdmlkZXIuc3RhcnRsb2FkU2NoZWR1bGUgbm90IHNldCcgKVxuICAgICBcbiAgICAgICAgcmV0dXJuIHRoaXMucHJvdmlkZXIuc3RhcnRsb2FkU2NoZWR1bGUoICgpID0+IHsgcmV0dXJuIHN1cGVyLmxvYWRSb3dMaXN0KCkgfSApXG4gICAgfVxuXG4gICAgZmV0Y2hSb3dMaXN0UGFnZSgpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgICAgICBpZiAoICF0aGlzLnByb3ZpZGVyPy5mZXRjaFNjaGVkdWxlICkgdGhyb3cgRXJyb3IoICdTY2hlZHVsZUNvbXBvbmVudC5wcm92aWRlci5mZXRjaFNjaGVkdWxlIG5vdCBzZXQnIClcblxuICAgICAgICByZXR1cm4gdGhpcy5wcm92aWRlci5mZXRjaFNjaGVkdWxlKClcbiAgICB9XG5cbiAgICBwYXJzZVJvd3MoIHJlczogYW55ICk6IFNjaGVkdWxlUm93W10ge1xuICAgICAgICBpZiAoICF0aGlzLnByb3ZpZGVyPy5wYXJzZVNjaGVkdWxlICkgdGhyb3cgRXJyb3IoICdTY2hlZHVsZUNvbXBvbmVudC5wcm92aWRlci5wYXJzZVNjaGVkdWxlIG5vdCBzZXQnIClcblxuICAgICAgICBsZXQgcm93cyA9IHRoaXMucHJvdmlkZXIucGFyc2VTY2hlZHVsZSggcmVzIClcbiAgICAgICAgcmV0dXJuIHRoaXMubWFrZVJvd3MoIHJvd3MgKVxuICAgIH1cblxuICAgIGdldEluaXRpYWxQYWdlU3RhdGUoKTogSW5pdGlhbFN0YXRlPHt9PiB7XG4gICAgICAgIGlmICggIXRoaXMucHJvdmlkZXI/LmdldEluaXRpYWxQYWdlU3RhdGUgKSB0aHJvdyBFcnJvciggJ1NjaGVkdWxlQ29tcG9uZW50LnByb3ZpZGVyLmdldEluaXRpYWxQYWdlU3RhdGUgbm90IHNldCcgKVxuXG4gICAgICAgIHJldHVybiB0aGlzLnByb3ZpZGVyLmdldEluaXRpYWxQYWdlU3RhdGUoKVxuICAgIH1cblxuICAgIGNvbXBsZXRlZFJvd0xpc3RQYWdlKCk6IFBhZ2luYXRpb25TdGF0ZTx7fT4ge1xuICAgICAgICBpZiAoICF0aGlzLnByb3ZpZGVyPy5jb21wbGV0ZWRMb2FkU2NoZWR1bGUgKSB0aHJvdyBFcnJvciggJ1NjaGVkdWxlQ29tcG9uZW50LnByb3ZpZGVyLmNvbXBsZXRlZFJvd0xpc3RQYWdlIG5vdCBzZXQnIClcblxuICAgICAgICByZXR1cm4gdGhpcy5wcm92aWRlci5jb21wbGV0ZWRMb2FkU2NoZWR1bGUoIHN1cGVyLmNvbXBsZXRlZFJvd0xpc3RQYWdlIClcbiAgICB9XG5cbiAgICBvblNhbWVQYWdlRmlsdGVyQ2hhbmdlKCBldjoge30gKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZmlsdGVyID0gZXZcbiAgICAgICAgdGhpcy5yZWZyZXNoUm93TGlzdCgpXG4gICAgfVxuXG4gICAgbWFrZVJvd3MoIHNjaGVkdWxlOiBTY2hlZHVsZSApOiBTY2hlZHVsZSB7XG4gICAgICAgIGxldCBzdGFydCA9IG1vbWVudCggdGhpcy5zdGFydERhdGUgKVxuICAgICAgICBsZXQgdG9kYXkgPSBtb21lbnQoKVxuXG4gICAgICAgIHRoaXMuX3dlZWtzID0gQXJyYXkuZnJvbSggeyBsZW5ndGg6IHRoaXMuZGF5Q291bnQhIH0gKS5yZWR1Y2U8V2Vla1tdPiggKCBhLCB4LCBpICkgPT4ge1xuICAgICAgICAgICAgbGV0IG0gPSBzdGFydC5jbG9uZSgpLmFkZCggaSwgJ2RheScgKVxuICAgICAgICAgICAgbGV0IGRhdGUgPSBtLmZvcm1hdCggJ01NTSBEJyApXG4gICAgICAgICAgICBsZXQgZGF5ID0gbS5kYXkoKVxuXG4gICAgICAgICAgICBpZiAoIGEubGVuZ3RoID09IDAgKSByZXR1cm4gYS5jb25jYXQoIHtcbiAgICAgICAgICAgICAgICBzdGFydDogZGF0ZSxcbiAgICAgICAgICAgICAgICBlbmQ6IGRhdGUsXG4gICAgICAgICAgICAgICAgc3BhbjogMVxuICAgICAgICAgICAgfSApXG5cbiAgICAgICAgICAgIGxldCBwcmV2ID0gYVsgYS5sZW5ndGggLSAxIF1cblxuICAgICAgICAgICAgaWYgKCBkYXkgPT0gdGhpcy53ZWVrU3RhcnQgKSByZXR1cm4gYS5jb25jYXQoIHtcbiAgICAgICAgICAgICAgICBzdGFydDogZGF0ZSxcbiAgICAgICAgICAgICAgICBlbmQ6IGRhdGUsXG4gICAgICAgICAgICAgICAgc3BhbjogMVxuICAgICAgICAgICAgfSApXG5cbiAgICAgICAgICAgIHByZXYuZW5kID0gZGF0ZVxuICAgICAgICAgICAgcHJldi5zcGFuICs9IDFcbiAgICAgICAgICAgIHJldHVybiBhXG4gICAgICAgIH0sIFtdIClcblxuICAgICAgICB0aGlzLl9kYXlzID0gQXJyYXkuZnJvbSggeyBsZW5ndGg6IHRoaXMuZGF5Q291bnQhIH0gKS5tYXAoICggeCwgaSApID0+IHtcbiAgICAgICAgICAgIGxldCBkID0gc3RhcnQuY2xvbmUoKS5hZGQoIGksICdkYXknIClcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgZGF5TmFtZTogZC5mb3JtYXQoICdkZGQnICksXG4gICAgICAgICAgICAgICAgbW9udGhEYXk6IGQuZGF0ZSgpLFxuICAgICAgICAgICAgICAgIGRhdGU6IGQuZm9ybWF0KCAnWS1NTS1ERCcgKSxcbiAgICAgICAgICAgICAgICBpc0ZpcnN0OiBkLmRhdGUoKSA9PSAxLFxuICAgICAgICAgICAgICAgIGlzV2Vla2VuZDogZC5kYXkoKSA9PSAwIHx8IGQuZGF5KCkgPT0gNixcbiAgICAgICAgICAgICAgICBpc1RvZGF5OiBkLmlzU2FtZSggdG9kYXksICdkYXknICksXG5cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSApXG5cbiAgICAgICAgdGhpcy5fdGVtcGxhdGVzID0gQXJyYXkuZnJvbSggeyBsZW5ndGg6IHNjaGVkdWxlLmxlbmd0aCB9IClcblxuICAgICAgICByZXR1cm4gc2NoZWR1bGUubWFwKCAoIHJvdywgaSApID0+IHtcbiAgICAgICAgICAgIHRoaXMuX3RlbXBsYXRlc1sgaSBdID0gQXJyYXkuZnJvbSggeyBsZW5ndGg6IHRoaXMuZGF5Q291bnQhIH0gKVxuXG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIGlkOiByb3cuaWQgPz8gU3RyaW5nKCBpICksXG4gICAgICAgICAgICAgICAgaGVhZGluZzogcm93LmhlYWRpbmcsXG4gICAgICAgICAgICAgICAgaXRlbXM6IHJvdy5pdGVtc1xuICAgICAgICAgICAgICAgICAgICAudGhlbiggcm93SXRlbXMgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIEFycmF5LmZyb20oIHsgbGVuZ3RoOiB0aGlzLmRheUNvdW50ISB9ICkubWFwKCAoIHgsIGogKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHJvd0l0ZW0gPSByb3dJdGVtc1sgaiBdXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIHJvd0l0ZW0gPT0gbnVsbCApIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IFN0cmluZyggaiApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ2VtcHR5J1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5fdGVtcGxhdGVzWyBpIF1bIGogXSA9IHRoaXMuaXRlbVRlbXBsYXRlcz8uZmluZCggaSA9PiBpLm5hbWUgPT0gcm93SXRlbT8ubmFtZSAgKT8udGVtcGxhdGUhXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gcm93SXRlbVxuICAgICAgICAgICAgICAgICAgICAgICAgfSApXG4gICAgICAgICAgICAgICAgICAgIH0gKVxuICAgICAgICAgICAgfVxuICAgICAgICB9ICkgfHwgW11cbiAgICB9XG59XG4iLCJAaWYgKCByb3dzPy5sZW5ndGggPiAwICkge1xuICAgIDxkaXYgY2xhc3M9XCJzY2hlZHVsZVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwidXBwZXItbGVmdFwiPlxuICAgICAgICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8ZGl2IGNsYXNzPVwicm93IHdlZWtzXCI+XG4gICAgICAgICAgICBAZm9yICggd2VlayBvZiBfd2Vla3M7IHRyYWNrICRpbmRleCApIHtcbiAgICAgICAgICAgICAgICBAaWYgKCB3ZWVrLnNwYW4gPT0gMSApIHtcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIndlZWtcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIHt7IHdlZWsuc3RhcnQgfX1cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIndlZWtcIiBbc3R5bGUuZ3JpZC1jb2x1bW5dPVwiJ3NwYW4gJyArIHdlZWsuc3BhblwiPlxuICAgICAgICAgICAgICAgICAgICAgICAge3sgd2Vlay5zdGFydCB9fSAtIHt7IHdlZWsuZW5kIH19XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPGRpdiBjbGFzcz1cInJvdyBkYXlzXCI+ICAgIFxuICAgICAgICAgICAgQGZvciAoIGRheSBvZiBfZGF5czsgdHJhY2sgJGluZGV4ICkge1xuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkYXlcIlxuICAgICAgICAgICAgICAgICAgICBbY2xhc3Mud2Vla2VuZF09XCJkYXkuaXNXZWVrZW5kXCJcbiAgICAgICAgICAgICAgICAgICAgW2NsYXNzLnRvZGF5XT1cImRheS5pc1RvZGF5XCJcbiAgICAgICAgICAgICAgICAgICAgW2NsYXNzLmZpcnN0XT1cImRheS5pc0ZpcnN0XCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkYXktbmFtZVwiPnt7IGRheS5kYXlOYW1lIH19PC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkYXRlXCI+e3sgZGF5Lm1vbnRoRGF5IH19PC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICB9XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIEBmb3IgKCByb3cgb2Ygcm93cyB8IHBhZ2luYXRlOiBwYWdpbmF0ZVN0YXRlKCAnbnJjbC1zY2hlZHVsZScgKTsgdHJhY2sgcm93LmlkOyBsZXQgcm93SW5kZXggPSAkaW5kZXggKSB7XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93IGl0ZW1zXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm91dGVyIGhlYWRpbmdcIj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImlubmVyIGhlYWRpbmdcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiaGVhZGVyVGVtcGxhdGU/LnRlbXBsYXRlXCIgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgJGltcGxpY2l0OiByb3cuaGVhZGluZyB9XCIgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+ICAgIFxuXG4gICAgICAgICAgICAgICAgQGlmICggcm93Lml0ZW1zIHwgYXN5bmM7IGFzIHJvd0l0ZW1zICkge1xuICAgICAgICAgICAgICAgICAgICBAZm9yICggaXRlbSBvZiByb3dJdGVtczsgdHJhY2sgaXRlbS5pZDsgbGV0IGNvbEluZGV4ID0gJGluZGV4ICkge1xuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm91dGVyIGl0ZW1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy5tZW51LW9wZW5dPVwiaXRlbU1lbnUubWVudU9wZW5cIlxuICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJpbm5lciBpdGVtXCIgI2l0ZW1NZW51PVwibWF0TWVudVRyaWdnZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3NdPVwiJ2l0ZW0tJyArIGl0ZW0ubmFtZVwiIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXRSaXBwbGVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW21hdE1lbnVUcmlnZ2VyRm9yXT1cIm1lbnVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbWF0TWVudVRyaWdnZXJEYXRhXT1cInsgJGltcGxpY2l0OiB7IGl0ZW06IGl0ZW0sIGhlYWRpbmc6IHJvdy5oZWFkaW5nIH0gfVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFttYXRUb29sdGlwXT1cIml0ZW0/LnRvb2x0aXA/LigpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF0VG9vbHRpcENsYXNzPVwibnJjbC1zY2hlZHVsZS1tdWx0aWxpbmVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MudHJhdmVsXT1cIml0ZW0/LnRyYXZlbFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiX3RlbXBsYXRlc1sgcm93SW5kZXggXVsgY29sSW5kZXggXSB8fCBlbXB0eVwiIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgJGltcGxpY2l0OiBpdGVtIH1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAbGV0IGljb25zID0gaXRlbT8uaWNvbnM/LigpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaWYgKCBpY29ucyAmJiBpY29ucy5sZW5ndGggPiAwICkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImljb25zXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGZvciAoIGljb24gb2YgaWNvbnM7IHRyYWNrIGljb24gKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxucmNsLWljb24gc21hbGw+e3sgaWNvbiB9fTwvbnJjbC1pY29uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgQGZvciAoIGRheSBvZiBfZGF5czsgdHJhY2sgZGF5ICkge1xuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIml0ZW0gaXRlbS1sb2FkaW5nXCI+PC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgfVxuICAgIDwvZGl2PlxuXG4gICAgPG5yY2wtZ2FwLz5cbn1cblxuPG5yY2wtcm93LWxpc3QtcGFnaW5hdGlvblxuICAgIHBhZ2luYXRpb25JZD1cIm5yY2wtc2NoZWR1bGVcIlxuICAgIFtwYWdlU2l6ZV09XCJwYWdlU2l6ZVwiXG4gICAgW3BhZ2VOdW1iZXJdPVwicGFnZU51bWJlclwiXG4gICAgW3Jvd0NvdW50XT1cInRvdGFsUm93Q291bnRcIlxuICAgIChwYWdlTnVtYmVyQ2hhbmdlKT1cIm9uUGFnZU51bWJlckNoYW5nZSggJGV2ZW50IClcIlxuICAgIChwYWdlU2l6ZUNoYW5nZSk9XCJvblBhZ2VTaXplQ2hhbmdlKCAkZXZlbnQgKVwiXG4+PC9ucmNsLXJvdy1saXN0LXBhZ2luYXRpb24+XG5cbjxuZy10ZW1wbGF0ZSAjZW1wdHk+XG48L25nLXRlbXBsYXRlPlxuIl19
|
|
@@ -26,9 +26,18 @@ export class PaginationBase extends NrclBase {
|
|
|
26
26
|
set filter(f) {
|
|
27
27
|
this._filter = this.clone(f);
|
|
28
28
|
}
|
|
29
|
+
get instance() {
|
|
30
|
+
return this._instance;
|
|
31
|
+
}
|
|
29
32
|
ngAfterViewInit() {
|
|
30
33
|
// console.log('PaginationBase.ngAfterViewInit')
|
|
31
|
-
this.
|
|
34
|
+
this.onInitPageState();
|
|
35
|
+
}
|
|
36
|
+
onInitPageState() {
|
|
37
|
+
let init = this.getInitialPageState();
|
|
38
|
+
this._instance = init.instance;
|
|
39
|
+
let saved = this.retrieveState();
|
|
40
|
+
this.setCurrentPageState(saved || init);
|
|
32
41
|
}
|
|
33
42
|
clone(obj) {
|
|
34
43
|
return JSON.parse(JSON.stringify(obj));
|
|
@@ -48,20 +57,17 @@ export class PaginationBase extends NrclBase {
|
|
|
48
57
|
}
|
|
49
58
|
onPageNumberChange(ev) {
|
|
50
59
|
this._pageConfig.pageNumber = ev;
|
|
60
|
+
this.onPageStateChanged();
|
|
51
61
|
}
|
|
52
|
-
|
|
53
|
-
return this.
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
this._pageConfig.pageSize = state.pageConfig.pageSize;
|
|
59
|
-
this._pageConfig.pageNumber = state.pageConfig.pageNumber;
|
|
60
|
-
this._pageConfig.sortActive = state.pageConfig.sortActive;
|
|
61
|
-
this._pageConfig.sortDirection = state.pageConfig.sortDirection;
|
|
62
|
+
onPageStateChanged() {
|
|
63
|
+
return this.refresh()
|
|
64
|
+
.then(() => {
|
|
65
|
+
let state = this.getCurrentPageState();
|
|
66
|
+
this.persistState(state);
|
|
67
|
+
});
|
|
62
68
|
}
|
|
63
|
-
|
|
64
|
-
|
|
69
|
+
getCurrentPageState() {
|
|
70
|
+
return {
|
|
65
71
|
filter: this.filter,
|
|
66
72
|
pageConfig: {
|
|
67
73
|
pageSize: this._pageConfig.pageSize,
|
|
@@ -69,8 +75,27 @@ export class PaginationBase extends NrclBase {
|
|
|
69
75
|
sortActive: this._pageConfig.sortActive,
|
|
70
76
|
sortDirection: this._pageConfig.sortDirection,
|
|
71
77
|
}
|
|
72
|
-
}
|
|
73
|
-
|
|
78
|
+
};
|
|
79
|
+
}
|
|
80
|
+
setCurrentPageState(state) {
|
|
81
|
+
this.filter = state.filter;
|
|
82
|
+
this._pageConfig.pageSize = state.pageConfig.pageSize;
|
|
83
|
+
this._pageConfig.pageNumber = state.pageConfig.pageNumber;
|
|
84
|
+
this._pageConfig.sortActive = state.pageConfig.sortActive;
|
|
85
|
+
this._pageConfig.sortDirection = state.pageConfig.sortDirection;
|
|
86
|
+
}
|
|
87
|
+
persistState(state) {
|
|
88
|
+
if (!this._instance)
|
|
89
|
+
return;
|
|
90
|
+
this.pageStateService.setPageState(this._instance, JSON.stringify(state));
|
|
91
|
+
}
|
|
92
|
+
retrieveState() {
|
|
93
|
+
if (!this._instance)
|
|
94
|
+
return;
|
|
95
|
+
let state = this.pageStateService.getPageState(this._instance);
|
|
96
|
+
if (!state)
|
|
97
|
+
return;
|
|
98
|
+
return JSON.parse(state);
|
|
74
99
|
}
|
|
75
100
|
paginateState(id) {
|
|
76
101
|
return {
|
|
@@ -95,4 +120,4 @@ export class PaginationBase extends NrclBase {
|
|
|
95
120
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: PaginationBase, decorators: [{
|
|
96
121
|
type: Directive
|
|
97
122
|
}] });
|
|
98
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdGlvbi5iYXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbnItbmd4LWNvbXBvbmVudC1saWIvc3JjL2RpcmVjdGl2ZXMvcGFnaW5hdGlvbi5iYXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBaUIsaUJBQWlCLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVwRixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNsRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sYUFBYSxDQUFDOztBQW9CdkMsTUFBTSxPQUFnQixjQUFrQixTQUFRLFFBQVE7SUFEeEQ7O1FBRUkscUJBQWdCLEdBQUcsTUFBTSxDQUFFLGdCQUFnQixDQUFFLENBQUE7UUFDN0Msc0JBQWlCLEdBQUcsTUFBTSxDQUFFLGlCQUFpQixDQUFFLENBQUE7UUFFckMsbUJBQWMsR0FBVyxDQUFDLENBQUE7UUFHNUIsZ0JBQVcsR0FBcUI7WUFDcEMsUUFBUSxFQUFRLENBQUM7WUFDakIsVUFBVSxFQUFNLENBQUM7WUFDakIsVUFBVSxFQUFNLEVBQUU7WUFDbEIsYUFBYSxFQUFHLEtBQUs7U0FDeEIsQ0FBQTtLQTJGSjtJQWxHRyxJQUFJLGFBQWEsS0FBYSxPQUFPLElBQUksQ0FBQyxjQUFjLENBQUEsQ0FBQyxDQUFDO0lBUTFELElBQUksUUFBUSxLQUEwQixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFBLENBQUMsQ0FBQztJQUN4RSxJQUFJLFVBQVUsS0FBd0IsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLFVBQVUsQ0FBQSxDQUFDLENBQUM7SUFDMUUsSUFBSSxVQUFVLEtBQXdCLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQUEsQ0FBQyxDQUFDO0lBQzFFLElBQUksYUFBYSxLQUFxQixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMs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QUN2QyxXQUFXLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxVQUFVO1lBQ3hDLFVBQVUsRUFBRSxJQUFJLENBQUMsY0FBYztTQUNsQyxDQUFBO0lBQ0wsQ0FBQztJQUVELG9CQUFvQixDQUFFLEtBQWM7UUFDaEMsT0FBTztZQUNILEtBQUs7WUFDTCxVQUFVLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxVQUFVO1lBQ3ZDLFlBQVksRUFBRyxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVE7WUFDeEMsVUFBVSxFQUFFLElBQUksQ0FBQyxVQUFVO1lBQzNCLGFBQWEsRUFBRSxJQUFJLENBQUMsYUFBYTtTQUNwQyxDQUFBO0lBQ0wsQ0FBQzsrR0F0R2lCLGNBQWM7bUdBQWQsY0FBYzs7NEZBQWQsY0FBYztrQkFEbkMsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIENoYW5nZURldGVjdG9yUmVmLCBEaXJlY3RpdmUsIGluamVjdCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBTb3J0LCBTb3J0RGlyZWN0aW9uIH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL3NvcnRcIjtcbmltcG9ydCB7IFBhZ2VTdGF0ZVNlcnZpY2UgfSBmcm9tIFwiLi4vc2VydmljZXMvcGFnZS1zdGF0ZS5zZXJ2aWNlXCI7XG5pbXBvcnQgeyBOcmNsQmFzZSB9IGZyb20gXCIuL25yY2wuYmFzZVwiO1xuXG5leHBvcnQgdHlwZSBQYWdpbmF0aW9uQ29uZmlnID0geyAgICBcbiAgICBwYWdlU2l6ZTogbnVtYmVyXG4gICAgcGFnZU51bWJlcjogbnVtYmVyXG4gICAgc29ydEFjdGl2ZTogc3RyaW5nIFxuICAgIHNvcnREaXJlY3Rpb246IFNvcnREaXJlY3Rpb25cbn1cblxuZXhwb3J0IGludGVyZmFjZSBQYWdpbmdJbmZvUmVxdWVzdCB7XG4gICAgcXVlcnk/OiBzdHJpbmc7XG4gICAgcGFnZU51bWJlcjogbnVtYmVyO1xuICAgIHBhZ2VSb3dDb3VudDogbnVtYmVyO1xuICAgIHNvcnRDb2x1bW4/OiBzdHJpbmc7XG4gICAgc29ydERpcmVjdGlvbj86IHN0cmluZztcbn1cblxuZXhwb3J0IHR5cGUgUGFnaW5hdGlvblN0YXRlPEY+ID0geyBwYWdlQ29uZmlnOiBQYWdpbmF0aW9uQ29uZmlnLCBmaWx0ZXI6IEYgfVxuXG5ARGlyZWN0aXZlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBQYWdpbmF0aW9uQmFzZTxGPiBleHRlbmRzIE5yY2xCYXNlIGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XG4gICAgcGFnZVN0YXRlU2VydmljZSA9IGluamVjdCggUGFnZVN0YXRlU2VydmljZSApXG4gICAgY2hhbmdlRGV0ZWN0b3JSZWYgPSBpbmplY3QoIENoYW5nZURldGVjdG9yUmVmIClcblxuICAgIHByb3RlY3RlZCBfdG90YWxSb3dDb3VudDogbnVtYmVyID0gMFxuICAgIGdldCB0b3RhbFJvd0NvdW50KCk6IG51bWJlciB7IHJldHVybiB0aGlzLl90b3RhbFJvd0NvdW50IH1cblxuICAgIHByaXZhdGUgX3BhZ2VDb25maWc6IFBhZ2luYXRpb25Db25maWcgPSB7XG4gICAgICAgIHBhZ2VTaXplOiAgICAgICAwLFxuICAgICAgICBwYWdlTnVtYmVyOiAgICAgMSxcbiAgICAgICAgc29ydEFjdGl2ZTogICAgICcnLFxuICAgICAgICBzb3J0RGlyZWN0aW9uOiAgJ2FzYydcbiAgICB9XG4gICAgZ2V0IHBhZ2VTaXplKCk6IG51bWJlciAgICAgICAgICAgICAgeyByZXR1cm4gdGhpcy5fcGFnZUNvbmZpZy5wYWdlU2l6ZSB9XG4gICAgZ2V0IHBhZ2VOdW1iZXIoKTogbnVtYmVyICAgICAgICAgICAgeyByZXR1cm4gdGhpcy5fcGFnZUNvbmZpZy5wYWdlTnVtYmVyIH1cbiAgICBnZXQgc29ydEFjdGl2ZSgpOiBzdHJpbmcgICAgICAgICAgICB7IHJldHVybiB0aGlzLl9wYWdlQ29uZmlnLnNvcnRBY3RpdmUgfVxuICAgIGdldCBzb3J0RGlyZWN0aW9uKCk6IFNvcnREaXJlY3Rpb24gIHsgcmV0dXJuIHRoaXMuX3BhZ2VDb25maWcuc29ydERpcmVjdGlvbiB9XG5cbiAgICBwcml2YXRlIF9maWx0ZXI/OiBGXG4gICAgZ2V0IGZpbHRlcigpOiBGIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2ZpbHRlciBhcyBGXG4gICAgfVxuICAgIHByb3RlY3RlZCBzZXQgZmlsdGVyKCBmOiBGICkge1xuICAgICAgICB0aGlzLl9maWx0ZXIgPSB0aGlzLmNsb25lKCBmIClcbiAgICB9XG5cbiAgICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgICAgIC8vIGNvbnNvbGUubG9nKCdQYWdpbmF0aW9uQmFzZS5uZ0FmdGVyVmlld0luaXQnKVxuICAgICAgICB0aGlzLmxvYWRQYWdlU3RhdGUoKSAgICAgICAgXG4gICAgfVxuXG4gICAgY2xvbmUoIG9iajogYW55ICkge1xuICAgICAgICByZXR1cm4gSlNPTi5wYXJzZSggSlNPTi5zdHJpbmdpZnkoIG9iaiApICkgXG4gICAgfVxuXG4gICAgb25GaWx0ZXJDaGFuZ2UoIGV2OiBGICkge1xuICAgICAgICB0aGlzLmZpbHRlciA9IGV2IFxuICAgICAgICB0aGlzLm9uUGFnZU51bWJlckNoYW5nZSggMSApXG4gICAgfVxuXG4gICAgb25Tb3J0Q2hhbmdlKCBldjogU29ydCApIHtcbiAgICAgICAgdGhpcy5fcGFnZUNvbmZpZy5zb3J0QWN0aXZlID0gZXYuYWN0aXZlXG4gICAgICAgIHRoaXMuX3BhZ2VDb25maWcuc29ydERpcmVjdGlvbiA9IGV2LmRpcmVjdGlvblxuICAgICAgICB0aGlzLm9uUGFnZU51bWJlckNoYW5nZSggMSApXG4gICAgfVxuXG4gICAgb25QYWdlU2l6ZUNoYW5nZSggZXY6IG51bWJlciApIHtcbiAgICAgICAgdGhpcy5fcGFnZUNvbmZpZy5wYWdlU2l6ZSA9IGV2IFxuICAgICAgICB0aGlzLm9uUGFnZU51bWJlckNoYW5nZSggMSApXG4gICAgfVxuXG4gICAgb25QYWdlTnVtYmVyQ2hhbmdlKCBldjogbnVtYmVyICkge1xuICAgICAgICB0aGlzLl9wYWdlQ29uZmlnLnBhZ2VOdW1iZXIgPSBldlxuICAgIH1cblxuICAgIGdldCBpbml0aWFsUGFnZVN0YXRlKCk6IFBhZ2luYXRpb25TdGF0ZTxGPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmdldEluaXRpYWxQYWdlU3RhdGUoKVxuICAgIH1cblxuICAgIGFic3RyYWN0IGdldEluaXRpYWxQYWdlU3RhdGUoKTogUGFnaW5hdGlvblN0YXRlPEY+XG5cbiAgICBsb2FkUGFnZVN0YXRlKCkge1xuICAgICAgICBsZXQgc3RhdGUgPSB0aGlzLnBhZ2VTdGF0ZVNlcnZpY2UuZ2V0UGFnZVN0YXRlPFBhZ2luYXRpb25TdGF0ZTxGPj4oIHRoaXMuY29uc3RydWN0b3IsICgpID0+IHRoaXMuaW5pdGlhbFBhZ2VTdGF0ZSApXG5cbiAgICAgICAgdGhpcy5maWx0ZXIgPSBzdGF0ZS5maWx0ZXJcbiAgICAgICAgdGhpcy5fcGFnZUNvbmZpZy5wYWdlU2l6ZSA9IHN0YXRlLnBhZ2VDb25maWcucGFnZVNpemVcbiAgICAgICAgdGhpcy5fcGFnZUNvbmZpZy5wYWdlTnVtYmVyID0gc3RhdGUucGFnZUNvbmZpZy5wYWdlTnVtYmVyXG4gICAgICAgIHRoaXMuX3BhZ2VDb25maWcuc29ydEFjdGl2ZSA9IHN0YXRlLnBhZ2VDb25maWcuc29ydEFjdGl2ZVxuICAgICAgICB0aGlzLl9wYWdlQ29uZmlnLnNvcnREaXJlY3Rpb24gPSBzdGF0ZS5wYWdlQ29uZmlnLnNvcnREaXJlY3Rpb25cbiAgICB9XG5cbiAgICBzYXZlUGFnZVN0YXRlKCkge1xuICAgICAgICBsZXQgc3RhdGU6IFBhZ2luYXRpb25TdGF0ZTxGPiA9IHRoaXMuY2xvbmUoIHsgICAgICAgICAgICBcbiAgICAgICAgICAgIGZpbHRlcjogdGhpcy5maWx0ZXIsXG4gICAgICAgICAgICBwYWdlQ29uZmlnOiB7XG4gICAgICAgICAgICAgICAgcGFnZVNpemU6IHRoaXMuX3BhZ2VDb25maWcucGFnZVNpemUsXG4gICAgICAgICAgICAgICAgcGFnZU51bWJlcjogdGhpcy5fcGFnZUNvbmZpZy5wYWdlTnVtYmVyLFxuICAgICAgICAgICAgICAgIHNvcnRBY3RpdmU6IHRoaXMuX3BhZ2VDb25maWcuc29ydEFjdGl2ZSxcbiAgICAgICAgICAgICAgICBzb3J0RGlyZWN0aW9uOiB0aGlzLl9wYWdlQ29uZmlnLnNvcnREaXJlY3Rpb24sXG4gICAgICAgICAgICB9XG4gICAgICAgIH0gKSBcbiAgICAgICAgXG4gICAgICAgIHRoaXMucGFnZVN0YXRlU2VydmljZS5zZXRQYWdlU3RhdGU8UGFnaW5hdGlvblN0YXRlPEY+PiggdGhpcy5jb25zdHJ1Y3Rvciwgc3RhdGUgKVxuICAgIH1cblxuICAgIHBhZ2luYXRlU3RhdGUoIGlkOiBzdHJpbmcgKSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBpZCxcbiAgICAgICAgICAgIGl0ZW1zUGVyUGFnZTogdGhpcy5fcGFnZUNvbmZpZy5wYWdlU2l6ZSxcbiAgICAgICAgICAgIGN1cnJlbnRQYWdlOiB0aGlzLl9wYWdlQ29uZmlnLnBhZ2VOdW1iZXIsXG4gICAgICAgICAgICB0b3RhbEl0ZW1zOiB0aGlzLl90b3RhbFJvd0NvdW50XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBnZXRQYWdpbmdJbmZvUmVxdWVzdCggcXVlcnk/OiBzdHJpbmcgKTogUGFnaW5nSW5mb1JlcXVlc3Qge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgcXVlcnksXG4gICAgICAgICAgICBwYWdlTnVtYmVyOiB0aGlzLl9wYWdlQ29uZmlnLnBhZ2VOdW1iZXIsXG4gICAgICAgICAgICBwYWdlUm93Q291bnQ6ICB0aGlzLl9wYWdlQ29uZmlnLnBhZ2VTaXplLFxuICAgICAgICAgICAgc29ydENvbHVtbjogdGhpcy5zb3J0QWN0aXZlLFxuICAgICAgICAgICAgc29ydERpcmVjdGlvbjogdGhpcy5zb3J0RGlyZWN0aW9uXG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=
|
|
123
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdGlvbi5iYXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbnItbmd4LWNvbXBvbmVudC1saWIvc3JjL2RpcmVjdGl2ZXMvcGFnaW5hdGlvbi5iYXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBaUIsaUJBQWlCLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVwRixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNsRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sYUFBYSxDQUFDOztBQXlCdkMsTUFBTSxPQUFnQixjQUFrQixTQUFRLFFBQVE7SUFEeEQ7O1FBRUkscUJBQWdCLEdBQUcsTUFBTSxDQUFFLGdCQUFnQixDQUFFLENBQUE7UUFDN0Msc0JBQWlCLEdBQUcsTUFBTSxDQUFFLGlCQUFpQixDQUFFLENBQUE7UUFFckMsbUJBQWMsR0FBVyxDQUFDLENBQUE7UUFHNUIsZ0JBQVcsR0FBcUI7WUFDcEMsUUFBUSxFQUFRLENBQUM7WUFDakIsVUFBVSxFQUFNLENBQUM7WUFDakIsVUFBVSxFQUFNLEVBQUU7WUFDbEIsYUFBYSxFQUFHLEtBQUs7U0FDeEIsQ0FBQTtLQTRISjtJQW5JRyxJQUFJLGFBQWEsS0FBYSxPQUFPLElBQUksQ0FBQyxjQUFjLENBQUEsQ0FBQyxDQUFDO0lBUTFELElBQUksUUFBUSxLQUEwQixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFBLENBQUMsQ0FBQztJQUN4RSxJQUFJLFVBQVUsS0FBd0IsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLFVBQVUsQ0FBQSxDQUFDLENBQUM7SUFDMUUsSUFBSSxVQUFVLEtBQXdCLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQUEsQ0FBQyxDQUFDO0lBQzFFLElBQUksYUFBYSxLQUFxQixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMs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QXZJaUIsY0FBYzttR0FBZCxjQUFjOzs0RkFBZCxjQUFjO2tCQURuQyxTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ2hhbmdlRGV0ZWN0b3JSZWYsIERpcmVjdGl2ZSwgaW5qZWN0IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IFNvcnQsIFNvcnREaXJlY3Rpb24gfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvc29ydFwiO1xuaW1wb3J0IHsgUGFnZVN0YXRlU2VydmljZSB9IGZyb20gXCIuLi9zZXJ2aWNlcy9wYWdlLXN0YXRlLnNlcnZpY2VcIjtcbmltcG9ydCB7IE5yY2xCYXNlIH0gZnJvbSBcIi4vbnJjbC5iYXNlXCI7XG5cbmV4cG9ydCB0eXBlIFBhZ2luYXRpb25Db25maWcgPSB7ICAgIFxuICAgIHBhZ2VTaXplOiBudW1iZXJcbiAgICBwYWdlTnVtYmVyOiBudW1iZXJcbiAgICBzb3J0QWN0aXZlOiBzdHJpbmcgXG4gICAgc29ydERpcmVjdGlvbjogU29ydERpcmVjdGlvblxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBhZ2luZ0luZm9SZXF1ZXN0IHtcbiAgICBxdWVyeT86IHN0cmluZztcbiAgICBwYWdlTnVtYmVyOiBudW1iZXI7XG4gICAgcGFnZVJvd0NvdW50OiBudW1iZXI7XG4gICAgc29ydENvbHVtbj86IHN0cmluZztcbiAgICBzb3J0RGlyZWN0aW9uPzogc3RyaW5nO1xufVxuXG5leHBvcnQgdHlwZSBQYWdpbmF0aW9uU3RhdGU8Rj4gPSB7IFxuICAgIHBhZ2VDb25maWc6IFBhZ2luYXRpb25Db25maWcsIFxuICAgIGZpbHRlcjogRiwgXG59XG5cbmV4cG9ydCB0eXBlIEluaXRpYWxTdGF0ZTxGPiA9IFBhZ2luYXRpb25TdGF0ZTxGPiAmIHsgaW5zdGFuY2U/OiBzdHJpbmcgfVxuXG5ARGlyZWN0aXZlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBQYWdpbmF0aW9uQmFzZTxGPiBleHRlbmRzIE5yY2xCYXNlIGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XG4gICAgcGFnZVN0YXRlU2VydmljZSA9IGluamVjdCggUGFnZVN0YXRlU2VydmljZSApXG4gICAgY2hhbmdlRGV0ZWN0b3JSZWYgPSBpbmplY3QoIENoYW5nZURldGVjdG9yUmVmIClcblxuICAgIHByb3RlY3RlZCBfdG90YWxSb3dDb3VudDogbnVtYmVyID0gMFxuICAgIGdldCB0b3RhbFJvd0NvdW50KCk6IG51bWJlciB7IHJldHVybiB0aGlzLl90b3RhbFJvd0NvdW50IH1cblxuICAgIHByaXZhdGUgX3BhZ2VDb25maWc6IFBhZ2luYXRpb25Db25maWcgPSB7XG4gICAgICAgIHBhZ2VTaXplOiAgICAgICAwLFxuICAgICAgICBwYWdlTnVtYmVyOiAgICAgMSxcbiAgICAgICAgc29ydEFjdGl2ZTogICAgICcnLFxuICAgICAgICBzb3J0RGlyZWN0aW9uOiAgJ2FzYydcbiAgICB9XG4gICAgZ2V0IHBhZ2VTaXplKCk6IG51bWJlciAgICAgICAgICAgICAgeyByZXR1cm4gdGhpcy5fcGFnZUNvbmZpZy5wYWdlU2l6ZSB9XG4gICAgZ2V0IHBhZ2VOdW1iZXIoKTogbnVtYmVyICAgICAgICAgICAgeyByZXR1cm4gdGhpcy5fcGFnZUNvbmZpZy5wYWdlTnVtYmVyIH1cbiAgICBnZXQgc29ydEFjdGl2ZSgpOiBzdHJpbmcgICAgICAgICAgICB7IHJldHVybiB0aGlzLl9wYWdlQ29uZmlnLnNvcnRBY3RpdmUgfVxuICAgIGdldCBzb3J0RGlyZWN0aW9uKCk6IFNvcnREaXJlY3Rpb24gIHsgcmV0dXJuIHRoaXMuX3BhZ2VDb25maWcuc29ydERpcmVjdGlvbiB9XG5cbiAgICBwcml2YXRlIF9maWx0ZXI/OiBGXG4gICAgZ2V0IGZpbHRlcigpOiBGIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2ZpbHRlciBhcyBGXG4gICAgfVxuICAgIHByb3RlY3RlZCBzZXQgZmlsdGVyKCBmOiBGICkge1xuICAgICAgICB0aGlzLl9maWx0ZXIgPSB0aGlzLmNsb25lKCBmIClcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgX2luc3RhbmNlPzogc3RyaW5nXG4gICAgZ2V0IGluc3RhbmNlKCk6IHN0cmluZ3x1bmRlZmluZWQge1xuICAgICAgICByZXR1cm4gdGhpcy5faW5zdGFuY2VcbiAgICB9XG5cbiAgICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgICAgIC8vIGNvbnNvbGUubG9nKCdQYWdpbmF0aW9uQmFzZS5uZ0FmdGVyVmlld0luaXQnKVxuICAgICAgICB0aGlzLm9uSW5pdFBhZ2VTdGF0ZSgpXG4gICAgfVxuXG4gICAgb25Jbml0UGFnZVN0YXRlKCkge1xuICAgICAgICBsZXQgaW5pdCA9IHRoaXMuZ2V0SW5pdGlhbFBhZ2VTdGF0ZSgpXG4gICAgICAgIHRoaXMuX2luc3RhbmNlID0gaW5pdC5pbnN0YW5jZVxuXG4gICAgICAgIGxldCBzYXZlZCA9IHRoaXMucmV0cmlldmVTdGF0ZSgpXG5cbiAgICAgICAgdGhpcy5zZXRDdXJyZW50UGFnZVN0YXRlKCBzYXZlZCB8fCBpbml0IClcbiAgICB9XG5cbiAgICBjbG9uZSggb2JqOiBhbnkgKSB7XG4gICAgICAgIHJldHVybiBKU09OLnBhcnNlKCBKU09OLnN0cmluZ2lmeSggb2JqICkgKSBcbiAgICB9XG5cbiAgICBvbkZpbHRlckNoYW5nZSggZXY6IEYgKSB7XG4gICAgICAgIHRoaXMuZmlsdGVyID0gZXYgXG4gICAgICAgIHRoaXMub25QYWdlTnVtYmVyQ2hhbmdlKCAxIClcbiAgICB9XG5cbiAgICBvblNvcnRDaGFuZ2UoIGV2OiBTb3J0ICkge1xuICAgICAgICB0aGlzLl9wYWdlQ29uZmlnLnNvcnRBY3RpdmUgPSBldi5hY3RpdmVcbiAgICAgICAgdGhpcy5fcGFnZUNvbmZpZy5zb3J0RGlyZWN0aW9uID0gZXYuZGlyZWN0aW9uXG4gICAgICAgIHRoaXMub25QYWdlTnVtYmVyQ2hhbmdlKCAxIClcbiAgICB9XG5cbiAgICBvblBhZ2VTaXplQ2hhbmdlKCBldjogbnVtYmVyICkge1xuICAgICAgICB0aGlzLl9wYWdlQ29uZmlnLnBhZ2VTaXplID0gZXYgXG4gICAgICAgIHRoaXMub25QYWdlTnVtYmVyQ2hhbmdlKCAxIClcbiAgICB9XG5cbiAgICBvblBhZ2VOdW1iZXJDaGFuZ2UoIGV2OiBudW1iZXIgKSB7XG4gICAgICAgIHRoaXMuX3BhZ2VDb25maWcucGFnZU51bWJlciA9IGV2XG5cbiAgICAgICAgdGhpcy5vblBhZ2VTdGF0ZUNoYW5nZWQoKVxuICAgIH1cblxuICAgIG9uUGFnZVN0YXRlQ2hhbmdlZCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMucmVmcmVzaCgpXG4gICAgICAgICAgICAudGhlbiggKCkgPT4ge1xuICAgICAgICAgICAgICAgIGxldCBzdGF0ZSA9IHRoaXMuZ2V0Q3VycmVudFBhZ2VTdGF0ZSgpXG4gICAgICAgICAgICAgICAgdGhpcy5wZXJzaXN0U3RhdGUoIHN0YXRlIClcbiAgICAgICAgICAgIH0gKVxuICAgIH1cblxuICAgIHByb3RlY3RlZCBhYnN0cmFjdCByZWZyZXNoKCk6IFByb21pc2U8dm9pZD4gXG5cbiAgICBhYnN0cmFjdCBnZXRJbml0aWFsUGFnZVN0YXRlKCk6IEluaXRpYWxTdGF0ZTxGPlxuXG4gICAgZ2V0Q3VycmVudFBhZ2VTdGF0ZSgpOiBQYWdpbmF0aW9uU3RhdGU8Rj4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgZmlsdGVyOiB0aGlzLmZpbHRlcixcbiAgICAgICAgICAgIHBhZ2VDb25maWc6IHtcbiAgICAgICAgICAgICAgICBwYWdlU2l6ZTogdGhpcy5fcGFnZUNvbmZpZy5wYWdlU2l6ZSxcbiAgICAgICAgICAgICAgICBwYWdlTnVtYmVyOiB0aGlzLl9wYWdlQ29uZmlnLnBhZ2VOdW1iZXIsXG4gICAgICAgICAgICAgICAgc29ydEFjdGl2ZTogdGhpcy5fcGFnZUNvbmZpZy5zb3J0QWN0aXZlLFxuICAgICAgICAgICAgICAgIHNvcnREaXJlY3Rpb246IHRoaXMuX3BhZ2VDb25maWcuc29ydERpcmVjdGlvbixcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIHNldEN1cnJlbnRQYWdlU3RhdGUoIHN0YXRlOiBQYWdpbmF0aW9uU3RhdGU8Rj4gKSB7XG4gICAgICAgIHRoaXMuZmlsdGVyID0gc3RhdGUuZmlsdGVyXG4gICAgICAgIHRoaXMuX3BhZ2VDb25maWcucGFnZVNpemUgPSBzdGF0ZS5wYWdlQ29uZmlnLnBhZ2VTaXplXG4gICAgICAgIHRoaXMuX3BhZ2VDb25maWcucGFnZU51bWJlciA9IHN0YXRlLnBhZ2VDb25maWcucGFnZU51bWJlclxuICAgICAgICB0aGlzLl9wYWdlQ29uZmlnLnNvcnRBY3RpdmUgPSBzdGF0ZS5wYWdlQ29uZmlnLnNvcnRBY3RpdmVcbiAgICAgICAgdGhpcy5fcGFnZUNvbmZpZy5zb3J0RGlyZWN0aW9uID0gc3RhdGUucGFnZUNvbmZpZy5zb3J0RGlyZWN0aW9uXG4gICAgfVxuXG4gICAgcGVyc2lzdFN0YXRlKCBzdGF0ZTogUGFnaW5hdGlvblN0YXRlPEY+ICkge1xuICAgICAgICBpZiAoICF0aGlzLl9pbnN0YW5jZSApIHJldHVyblxuXG4gICAgICAgIHRoaXMucGFnZVN0YXRlU2VydmljZS5zZXRQYWdlU3RhdGUoIHRoaXMuX2luc3RhbmNlISwgSlNPTi5zdHJpbmdpZnkoIHN0YXRlICkgKVxuICAgIH1cblxuICAgIHJldHJpZXZlU3RhdGUoKTogUGFnaW5hdGlvblN0YXRlPEY+fHVuZGVmaW5lZCB7XG4gICAgICAgIGlmICggIXRoaXMuX2luc3RhbmNlICkgcmV0dXJuXG4gICAgICAgIFxuICAgICAgICBsZXQgc3RhdGUgPSB0aGlzLnBhZ2VTdGF0ZVNlcnZpY2UuZ2V0UGFnZVN0YXRlKCB0aGlzLl9pbnN0YW5jZSEgKVxuICAgICAgICBpZiAoICFzdGF0ZSApIHJldHVyblxuXG4gICAgICAgIHJldHVybiBKU09OLnBhcnNlKCBzdGF0ZSApXG4gICAgfVxuXG4gICAgcGFnaW5hdGVTdGF0ZSggaWQ6IHN0cmluZyApIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGlkLFxuICAgICAgICAgICAgaXRlbXNQZXJQYWdlOiB0aGlzLl9wYWdlQ29uZmlnLnBhZ2VTaXplLFxuICAgICAgICAgICAgY3VycmVudFBhZ2U6IHRoaXMuX3BhZ2VDb25maWcucGFnZU51bWJlcixcbiAgICAgICAgICAgIHRvdGFsSXRlbXM6IHRoaXMuX3RvdGFsUm93Q291bnRcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGdldFBhZ2luZ0luZm9SZXF1ZXN0KCBxdWVyeT86IHN0cmluZyApOiBQYWdpbmdJbmZvUmVxdWVzdCB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBxdWVyeSxcbiAgICAgICAgICAgIHBhZ2VOdW1iZXI6IHRoaXMuX3BhZ2VDb25maWcucGFnZU51bWJlcixcbiAgICAgICAgICAgIHBhZ2VSb3dDb3VudDogIHRoaXMuX3BhZ2VDb25maWcucGFnZVNpemUsXG4gICAgICAgICAgICBzb3J0Q29sdW1uOiB0aGlzLnNvcnRBY3RpdmUsXG4gICAgICAgICAgICBzb3J0RGlyZWN0aW9uOiB0aGlzLnNvcnREaXJlY3Rpb25cbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { ChangeDetectorRef, Directive, EventEmitter, inject, Output } from "@angular/core";
|
|
2
2
|
import { PageStateService } from "../services/page-state.service";
|
|
3
3
|
import { Aborted, ObservableAborter } from "../utils/row-list.util";
|
|
4
|
-
import { PaginationBase
|
|
4
|
+
import { PaginationBase } from "./pagination.base";
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
export class RowListBase extends PaginationBase {
|
|
7
7
|
constructor() {
|
|
@@ -38,15 +38,13 @@ export class RowListBase extends PaginationBase {
|
|
|
38
38
|
return this.loadRowList();
|
|
39
39
|
})
|
|
40
40
|
.then((res) => {
|
|
41
|
+
inProgress.progress();
|
|
41
42
|
if (!res)
|
|
42
43
|
return;
|
|
43
|
-
if (inProgress.isCancelled)
|
|
44
|
-
return;
|
|
45
44
|
return this.parseRowList(res);
|
|
46
45
|
})
|
|
47
46
|
.then(res => {
|
|
48
|
-
|
|
49
|
-
return;
|
|
47
|
+
inProgress.progress();
|
|
50
48
|
return this.completedRowListPage();
|
|
51
49
|
})
|
|
52
50
|
.catch((err) => {
|
|
@@ -55,8 +53,6 @@ export class RowListBase extends PaginationBase {
|
|
|
55
53
|
this.loadRowListPageFailed(err);
|
|
56
54
|
})
|
|
57
55
|
.finally(() => {
|
|
58
|
-
if (inProgress.isCancelled)
|
|
59
|
-
return;
|
|
60
56
|
inProgress.complete();
|
|
61
57
|
this.isLoading = false;
|
|
62
58
|
this.changeDetectorRef.detectChanges();
|
|
@@ -88,12 +84,8 @@ export class RowListBase extends PaginationBase {
|
|
|
88
84
|
this._rows = [];
|
|
89
85
|
this._totalRowCount = 0;
|
|
90
86
|
}
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
this.refreshRowList()
|
|
94
|
-
.then(() => {
|
|
95
|
-
this.savePageState();
|
|
96
|
-
});
|
|
87
|
+
refresh() {
|
|
88
|
+
return this.refreshRowList();
|
|
97
89
|
}
|
|
98
90
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: RowListBase, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
|
|
99
91
|
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: RowListBase, outputs: { isLoadingChange: "isLoadingChange" }, usesInheritance: true, ngImport: i0 }); }
|
|
@@ -118,6 +110,12 @@ class InProgress {
|
|
|
118
110
|
return;
|
|
119
111
|
this._cancelled = true;
|
|
120
112
|
}
|
|
113
|
+
progress() {
|
|
114
|
+
if (this.isCompleted)
|
|
115
|
+
return;
|
|
116
|
+
if (this.isCancelled)
|
|
117
|
+
throw new Aborted('InProgress cancelled');
|
|
118
|
+
}
|
|
121
119
|
get isCompleted() {
|
|
122
120
|
return this._completed;
|
|
123
121
|
}
|
|
@@ -125,4 +123,4 @@ class InProgress {
|
|
|
125
123
|
return this._cancelled;
|
|
126
124
|
}
|
|
127
125
|
}
|
|
128
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm93LWxpc3QuYmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25yLW5neC1jb21wb25lbnQtbGliL3NyYy9kaXJlY3RpdmVzL3Jvdy1saXN0LmJhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQixpQkFBaUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFMUcsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDbEUsT0FBTyxFQUFFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxjQUFjLElBQUksY0FBYyxFQUFtQixNQUFNLG1CQUFtQixDQUFDOztBQUt0RixNQUFNLE9BQWdCLFdBQXVCLFNBQVEsY0FBaUI7SUFEdEU7O1FBRUkscUJBQWdCLEdBQUcsTUFBTSxDQUFFLGdCQUFnQixDQUFFLENBQUE7UUFDN0Msc0JBQWlCLEdBQUcsTUFBTSxDQUFFLGlCQUFpQixDQUFFLENBQUE7UUFFckMsb0JBQWUsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFBO1FBRS9DLGVBQVUsR0FBRyxLQUFLLENBQUE7UUFRbEIsVUFBSyxHQUFRLEVBQUUsQ0FBQTtRQUlmLGdCQUFXLEdBQUcsSUFBSSxVQUFVLEVBQUUsQ0FBQTtLQTBGekM7SUFyR0csSUFBSSxTQUFTLEtBQUssT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFBLENBQUMsQ0FBQztJQUMxQyxJQUFJLFNBQVMsQ0FBRSxDQUFVO1FBQ3JCLElBQUssQ0FBQyxJQUFJLElBQUksQ0FBQyxVQUFVO1lBQUcsT0FBTTtRQUNsQyxJQUFJLENBQUMsVUFBVSxHQUFHLENBQUMsQ0FBQTtRQUNuQixJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBRSxDQUFDLENBQUUsQ0FBQTtJQUNsQyxDQUFDO0lBR0QsSUFB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RSxDQUFBO1FBQ3JCLElBQUksQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFBO1FBQ2YsSUFBSSxDQUFDLGNBQWMsR0FBRyxDQUFDLENBQUE7SUFDM0IsQ0FBQztJQUVELGtCQUFrQixDQUFFLEVBQVU7UUFDMUIsS0FBSyxDQUFDLGtCQUFrQixDQUFFLEVBQUUsQ0FBRSxDQUFBO1FBRTlCLElBQUksQ0FBQyxjQUFjLEVBQUU7YUFDaEIsSUFBSSxDQUFFLEdBQUcsRUFBRTtZQUNSLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQTtRQUN4QixDQUFDLENBQUUsQ0FBQTtJQUNYLENBQUM7K0dBM0dpQixXQUFXO21HQUFYLFdBQVc7OzRGQUFYLFdBQVc7a0JBRGhDLFNBQVM7OEJBS0ksZUFBZTtzQkFBeEIsTUFBTTs7QUEwR1gsTUFBTSxVQUFVO0lBQWhCO1FBQ1ksZUFBVSxHQUFHLEtBQUssQ0FBQTtRQUNsQixlQUFVLEdBQUcsS0FBSyxDQUFBO0lBbUI5QixDQUFDO0lBakJHLFFBQVE7UUFDSixJQUFLLElBQUksQ0FBQyxXQUFXO1lBQUcsT0FBTTtRQUM5QixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQTtJQUMxQixDQUFDO0lBRUQsTUFBTTtRQUNGLElBQUssSUFBSSxDQUFDLFdBQVc7WUFBRyxPQUFNO1FBQzlCLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFBO0lBQzFCLENBQUM7SUFFRCxJQUFJLFdBQVc7UUFDWCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUE7SUFDMUIsQ0FBQztJQUVELElBQUksV0FBVztRQUNYLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQTtJQUMxQixDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDaGFuZ2VEZXRlY3RvclJlZiwgRGlyZWN0aXZlLCBFdmVudEVtaXR0ZXIsIGluamVjdCwgT3V0cHV0IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tIFwicnhqc1wiO1xuaW1wb3J0IHsgUGFnZVN0YXRlU2VydmljZSB9IGZyb20gXCIuLi9zZXJ2aWNlcy9wYWdlLXN0YXRlLnNlcnZpY2VcIjtcbmltcG9ydCB7IEFib3J0ZWQsIE9ic2VydmFibGVBYm9ydGVyIH0gZnJvbSBcIi4uL3V0aWxzL3Jvdy1saXN0LnV0aWxcIjtcbmltcG9ydCB7IFBhZ2luYXRpb25CYXNlIGFzIFBhZ2luYXRpb25CYXNlLCBQYWdpbmF0aW9uU3RhdGUgfSBmcm9tIFwiLi9wYWdpbmF0aW9uLmJhc2VcIjtcblxuZXhwb3J0IHR5cGUgUm93TGlzdFN0YXRlPEY+ID0gUGFnaW5hdGlvblN0YXRlPEY+XG5cbkBEaXJlY3RpdmUoKVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFJvd0xpc3RCYXNlPEYsUixMPWFueT4gZXh0ZW5kcyBQYWdpbmF0aW9uQmFzZTxGPiBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xuICAgIHBhZ2VTdGF0ZVNlcnZpY2UgPSBpbmplY3QoIFBhZ2VTdGF0ZVNlcnZpY2UgKVxuICAgIGNoYW5nZURldGVjdG9yUmVmID0gaW5qZWN0KCBDaGFuZ2VEZXRlY3RvclJlZiApXG5cbiAgICBAT3V0cHV0KCkgaXNMb2FkaW5nQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpXG4gICAgXG4gICAgcHJpdmF0ZSBfaXNMb2FkaW5nID0gZmFsc2VcbiAgICBnZXQgaXNMb2FkaW5nKCkgeyByZXR1cm4gdGhpcy5faXNMb2FkaW5nIH1cbiAgICBzZXQgaXNMb2FkaW5nKCB2OiBib29sZWFuICkgeyBcbiAgICAgICAgaWYgKCB2ID09IHRoaXMuX2lzTG9hZGluZyApIHJldHVybiAgICAgICAgXG4gICAgICAgIHRoaXMuX2lzTG9hZGluZyA9IHYgXG4gICAgICAgIHRoaXMuaXNMb2FkaW5nQ2hhbmdlLmVtaXQoIHYgKVxuICAgIH0gIFxuXG4gICAgcHJpdmF0ZSBfcm93czogUltdID0gW11cbiAgICBnZXQgcm93cygpOiBSW10geyByZXR1cm4gdGhpcy5fcm93cyB9XG5cbiAgICBwcml2YXRlIF9sb2FkUm93TGlzdFJlcXVlc3Q/OiBPYnNlcnZhYmxlQWJvcnRlcjxMPiBcbiAgICBwcml2YXRlIF9pblByb2dyZXNzID0gbmV3IEluUHJvZ3Jlc3MoKVxuXG4gICAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgICAgICAvLyBjb25zb2xlLmxvZygnUm93TGlzdEJhc2UubmdBZnRlclZpZXdJbml0JylcbiAgICAgICAgc3VwZXIubmdBZnRlclZpZXdJbml0KClcbiAgICAgICAgdGhpcy5yZWZyZXNoUm93TGlzdCgpXG4gICAgfVxuXG4gICAgcmVmcmVzaFJvd0xpc3QoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIC8vIGNvbnNvbGUud2FybignUm93TGlzdEJhc2UucmVmcmVzaFJvd0xpc3QnKVxuICAgICAgICB0aGlzLmlzTG9hZGluZyA9IHRydWVcbiAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKClcblxuICAgICAgICBpZiAoICF0aGlzLl9pblByb2dyZXNzLmlzQ29tcGxldGVkICkgdGhpcy5faW5Qcm9ncmVzcy5jYW5jZWwoKVxuICAgICAgICBsZXQgaW5Qcm9ncmVzcyA9IHRoaXMuX2luUHJvZ3Jlc3MgPSBuZXcgSW5Qcm9ncmVzcygpXG5cbiAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpXG4gICAgICAgICAgICAudGhlbiggKCkgPT4geyBcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5sb2FkUm93TGlzdCgpIFxuICAgICAgICAgICAgfSApXG4gICAgICAgICAgICAudGhlbiggKCByZXMgKSA9PiB7IFxuICAgICAgICAgICAgICAgIGlmICggIXJlcyApIHJldHVyblxuICAgICAgICAgICAgICAgIGlmICggaW5Qcm9ncmVzcy5pc0NhbmNlbGxlZCApIHJldHVyblxuXG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMucGFyc2VSb3dMaXN0KCByZXMgKSBcbiAgICAgICAgICAgIH0gKVxuICAgICAgICAgICAgLnRoZW4oIHJlcyA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKCBpblByb2dyZXNzLmlzQ2FuY2VsbGVkICkgcmV0dXJuXG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuY29tcGxldGVkUm93TGlzdFBhZ2UoKVxuICAgICAgICAgICAgfSApXG4gICAgICAgICAgICAuY2F0Y2goICggZXJyICkgPT4ge1xuICAgICAgICAgICAgICAgIGlmICggZXJyIGluc3RhbmNlb2YgQWJvcnRlZCApIHJldHVyblxuXG4gICAgICAgICAgICAgICAgdGhpcy5sb2FkUm93TGlzdFBhZ2VGYWlsZWQoIGVyciApXG4gICAgICAgICAgICB9IClcbiAgICAgICAgICAgIC5maW5hbGx5KCAoKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKCBpblByb2dyZXNzLmlzQ2FuY2VsbGVkICkgcmV0dXJuXG4gICAgICAgICAgICAgICAgaW5Qcm9ncmVzcy5jb21wbGV0ZSgpXG5cbiAgICAgICAgICAgICAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlXG4gICAgICAgICAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKClcbiAgICAgICAgICAgIH0gKVxuICAgIH1cblxuICAgIGxvYWRSb3dMaXN0KCk6IFByb21pc2U8TD4ge1xuICAgICAgICBpZiAoIHRoaXMuX2xvYWRSb3dMaXN0UmVxdWVzdCApXG4gICAgICAgICAgICB0aGlzLl9sb2FkUm93TGlzdFJlcXVlc3QuYWJvcnQoKVxuXG4gICAgICAgIHRoaXMuX2xvYWRSb3dMaXN0UmVxdWVzdCA9IG5ldyBPYnNlcnZhYmxlQWJvcnRlcjxMPiggKCkgPT4geyAgICAgICAgXG4gICAgICAgICAgICByZXR1cm4gdGhpcy5mZXRjaFJvd0xpc3RQYWdlKClcbiAgICAgICAgfSApXG5cbiAgICAgICAgcmV0dXJuIHRoaXMuX2xvYWRSb3dMaXN0UmVxdWVzdC5wcm9taXNlXG4gICAgfVxuXG4gICAgYWJzdHJhY3QgZmV0Y2hSb3dMaXN0UGFnZSgpOiBPYnNlcnZhYmxlPEw+IFxuXG4gICAgcGFyc2VSb3dMaXN0KCByZXN1bHQ6IEwgKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoIHJlc3VsdCApXG4gICAgICAgICAgICAudGhlbiggcmVzID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLl90b3RhbFJvd0NvdW50ID0gdGhpcy5wYXJzZVRvdGFsUm93Q291bnQoIHJlcyApXG4gICAgICAgICAgICAgICAgdGhpcy5fcm93cyA9IHRoaXMucGFyc2VSb3dzKCByZXMgKVxuICAgICAgICAgICAgfSApXG4gICAgfVxuXG4gICAgYWJzdHJhY3QgcGFyc2VSb3dzKCByZXM6IEwgKTogUltdIFxuICAgIFxuICAgIHBhcnNlVG90YWxSb3dDb3VudCggcmVzOiBMICk6IG51bWJlciB7XG4gICAgICAgIGlmICggJ3RvdGFsUm93Q291bnQnIGluIChyZXMgYXMgYW55KSApIHJldHVybiAocmVzIGFzIGFueSlbICd0b3RhbFJvd0NvdW50JyBdXG5cbiAgICAgICAgdGhyb3cgJ01pc3NpbmcgcmVzLnRvdGFsUm93Q291bnQsIG1pZ2h0IG5lZWQgdG8gb3ZlcnJpZGUgUm93TGlzdEJhc2UucGFyc2VUb3RhbFJvd0NvdW50J1xuICAgIH1cblxuICAgIGNvbXBsZXRlZFJvd0xpc3RQYWdlKCkge31cblxuICAgIGxvYWRSb3dMaXN0UGFnZUZhaWxlZCggZXJyb3I6IGFueSApIHtcbiAgICAgICAgY29uc29sZS53YXJuKCBlcnJvciApXG4gICAgICAgIHRoaXMuX3Jvd3MgPSBbXVxuICAgICAgICB0aGlzLl90b3RhbFJvd0NvdW50ID0gMFxuICAgIH1cblxuICAgIG9uUGFnZU51bWJlckNoYW5nZSggZXY6IG51bWJlciApIHtcbiAgICAgICAgc3VwZXIub25QYWdlTnVtYmVyQ2hhbmdlKCBldiApXG5cbiAgICAgICAgdGhpcy5yZWZyZXNoUm93TGlzdCgpXG4gICAgICAgICAgICAudGhlbiggKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuc2F2ZVBhZ2VTdGF0ZSgpXG4gICAgICAgICAgICB9IClcbiAgICB9XG59XG5cbmNsYXNzIEluUHJvZ3Jlc3Mge1xuICAgIHByaXZhdGUgX2NvbXBsZXRlZCA9IGZhbHNlXG4gICAgcHJpdmF0ZSBfY2FuY2VsbGVkID0gZmFsc2VcblxuICAgIGNvbXBsZXRlKCkge1xuICAgICAgICBpZiAoIHRoaXMuaXNDYW5jZWxsZWQgKSByZXR1cm5cbiAgICAgICAgdGhpcy5fY29tcGxldGVkID0gdHJ1ZVxuICAgIH1cblxuICAgIGNhbmNlbCgpIHtcbiAgICAgICAgaWYgKCB0aGlzLmlzQ29tcGxldGVkICkgcmV0dXJuXG4gICAgICAgIHRoaXMuX2NhbmNlbGxlZCA9IHRydWUgICAgICAgIFxuICAgIH1cblxuICAgIGdldCBpc0NvbXBsZXRlZCgpIHsgICAgICAgIFxuICAgICAgICByZXR1cm4gdGhpcy5fY29tcGxldGVkXG4gICAgfVxuXG4gICAgZ2V0IGlzQ2FuY2VsbGVkKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fY2FuY2VsbGVkXG4gICAgfVxufVxuIl19
|
|
126
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm93LWxpc3QuYmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25yLW5neC1jb21wb25lbnQtbGliL3NyYy9kaXJlY3RpdmVzL3Jvdy1saXN0LmJhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQixpQkFBaUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFMUcsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDbEUsT0FBTyxFQUFFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7QUFHbkQsTUFBTSxPQUFnQixXQUF1QixTQUFRLGNBQWlCO0lBRHRFOztRQUVJLHFCQUFnQixHQUFHLE1BQU0sQ0FBRSxnQkFBZ0IsQ0FBRSxDQUFBO1FBQzdDLHNCQUFpQixHQUFHLE1BQU0sQ0FBRSxpQkFBaUIsQ0FBRSxDQUFBO1FBRXJDLG9CQUFlLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQTtRQUUvQyxlQUFVLEdBQUcsS0FBSyxDQUFBO1FBUWxCLFVBQUssR0FBUSxFQUFFLENBQUE7UUFJZixnQkFBVyxHQUFHLElBQUksVUFBVSxFQUFFLENBQUE7S0FvRnpDO0lBL0ZHLElBQUksU0FBUyxLQUFLLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQSxDQUFDLENBQUM7SUFDMUMsSUFBSSxTQUFTLENBQUUsQ0FBVTtRQUNyQixJQUFLLENBQUMsSUFBSSxJQUFJLENBQUMsVUFBVTtZQUFHLE9BQU07UUFDbEMsSUFBSSxDQUFDLFVBQVUsR0FBRyxDQUFDLENBQUE7UUFDbkIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUUsQ0FBQyxDQUFFLENBQUE7SUFDbEMsQ0FBQztJQUdELElBQUksSUFBSSxLQUFV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QWMsR0FBRyxDQUFDLENBQUE7SUFDM0IsQ0FBQztJQUVTLE9BQU87UUFDYixPQUFPLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQTtJQUNoQyxDQUFDOytHQXJHaUIsV0FBVzttR0FBWCxXQUFXOzs0RkFBWCxXQUFXO2tCQURoQyxTQUFTOzhCQUtJLGVBQWU7c0JBQXhCLE1BQU07O0FBb0dYLE1BQU0sVUFBVTtJQUFoQjtRQUNZLGVBQVUsR0FBRyxLQUFLLENBQUE7UUFDbEIsZUFBVSxHQUFHLEtBQUssQ0FBQTtJQXdCOUIsQ0FBQztJQXRCRyxRQUFRO1FBQ0osSUFBSyxJQUFJLENBQUMsV0FBVztZQUFHLE9BQU07UUFDOUIsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUE7SUFDMUIsQ0FBQztJQUVELE1BQU07UUFDRixJQUFLLElBQUksQ0FBQyxXQUFXO1lBQUcsT0FBTTtRQUM5QixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQTtJQUMxQixDQUFDO0lBRUQsUUFBUTtRQUNKLElBQUssSUFBSSxDQUFDLFdBQVc7WUFBRyxPQUFNO1FBQzlCLElBQUssSUFBSSxDQUFDLFdBQVc7WUFBRyxNQUFNLElBQUksT0FBTyxDQUFDLHNCQUFzQixDQUFDLENBQUE7SUFDckUsQ0FBQztJQUVELElBQUksV0FBVztRQUNYLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQTtJQUMxQixDQUFDO0lBRUQsSUFBSSxXQUFXO1FBQ1gsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFBO0lBQzFCLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIENoYW5nZURldGVjdG9yUmVmLCBEaXJlY3RpdmUsIEV2ZW50RW1pdHRlciwgaW5qZWN0LCBPdXRwdXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gXCJyeGpzXCI7XG5pbXBvcnQgeyBQYWdlU3RhdGVTZXJ2aWNlIH0gZnJvbSBcIi4uL3NlcnZpY2VzL3BhZ2Utc3RhdGUuc2VydmljZVwiO1xuaW1wb3J0IHsgQWJvcnRlZCwgT2JzZXJ2YWJsZUFib3J0ZXIgfSBmcm9tIFwiLi4vdXRpbHMvcm93LWxpc3QudXRpbFwiO1xuaW1wb3J0IHsgUGFnaW5hdGlvbkJhc2UgfSBmcm9tIFwiLi9wYWdpbmF0aW9uLmJhc2VcIjtcblxuQERpcmVjdGl2ZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgUm93TGlzdEJhc2U8RixSLEw9YW55PiBleHRlbmRzIFBhZ2luYXRpb25CYXNlPEY+IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XG4gICAgcGFnZVN0YXRlU2VydmljZSA9IGluamVjdCggUGFnZVN0YXRlU2VydmljZSApXG4gICAgY2hhbmdlRGV0ZWN0b3JSZWYgPSBpbmplY3QoIENoYW5nZURldGVjdG9yUmVmIClcblxuICAgIEBPdXRwdXQoKSBpc0xvYWRpbmdDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KClcbiAgICBcbiAgICBwcml2YXRlIF9pc0xvYWRpbmcgPSBmYWxzZVxuICAgIGdldCBpc0xvYWRpbmcoKSB7IHJldHVybiB0aGlzLl9pc0xvYWRpbmcgfVxuICAgIHNldCBpc0xvYWRpbmcoIHY6IGJvb2xlYW4gKSB7IFxuICAgICAgICBpZiAoIHYgPT0gdGhpcy5faXNMb2FkaW5nICkgcmV0dXJuICAgICAgICBcbiAgICAgICAgdGhpcy5faXNMb2FkaW5nID0gdiBcbiAgICAgICAgdGhpcy5pc0xvYWRpbmdDaGFuZ2UuZW1pdCggdiApXG4gICAgfSAgXG5cbiAgICBwcml2YXRlIF9yb3dzOiBSW10gPSBbXVxuICAgIGdldCByb3dzKCk6IFJbXSB7IHJldHVybiB0aGlzLl9yb3dzIH1cblxuICAgIHByaXZhdGUgX2xvYWRSb3dMaXN0UmVxdWVzdD86IE9ic2VydmFibGVBYm9ydGVyPEw+IFxuICAgIHByaXZhdGUgX2luUHJvZ3Jlc3MgPSBuZXcgSW5Qcm9ncmVzcygpXG5cbiAgICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgICAgIC8vIGNvbnNvbGUubG9nKCdSb3dMaXN0QmFzZS5uZ0FmdGVyVmlld0luaXQnKVxuICAgICAgICBzdXBlci5uZ0FmdGVyVmlld0luaXQoKVxuICAgICAgICB0aGlzLnJlZnJlc2hSb3dMaXN0KClcbiAgICB9XG5cbiAgICByZWZyZXNoUm93TGlzdCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgLy8gY29uc29sZS53YXJuKCdSb3dMaXN0QmFzZS5yZWZyZXNoUm93TGlzdCcpXG4gICAgICAgIHRoaXMuaXNMb2FkaW5nID0gdHJ1ZVxuICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKVxuXG4gICAgICAgIGlmICggIXRoaXMuX2luUHJvZ3Jlc3MuaXNDb21wbGV0ZWQgKSB0aGlzLl9pblByb2dyZXNzLmNhbmNlbCgpXG4gICAgICAgIGxldCBpblByb2dyZXNzID0gdGhpcy5faW5Qcm9ncmVzcyA9IG5ldyBJblByb2dyZXNzKClcblxuICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKClcbiAgICAgICAgICAgIC50aGVuKCAoKSA9PiB7IFxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmxvYWRSb3dMaXN0KCkgXG4gICAgICAgICAgICB9IClcbiAgICAgICAgICAgIC50aGVuKCAoIHJlcyApID0+IHsgXG4gICAgICAgICAgICAgICAgaW5Qcm9ncmVzcy5wcm9ncmVzcygpXG4gICAgICAgICAgICAgICAgaWYgKCAhcmVzICkgcmV0dXJuXG5cbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5wYXJzZVJvd0xpc3QoIHJlcyApIFxuICAgICAgICAgICAgfSApXG4gICAgICAgICAgICAudGhlbiggcmVzID0+IHtcbiAgICAgICAgICAgICAgICBpblByb2dyZXNzLnByb2dyZXNzKClcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5jb21wbGV0ZWRSb3dMaXN0UGFnZSgpXG4gICAgICAgICAgICB9IClcbiAgICAgICAgICAgIC5jYXRjaCggKCBlcnIgKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKCBlcnIgaW5zdGFuY2VvZiBBYm9ydGVkICkgcmV0dXJuXG5cbiAgICAgICAgICAgICAgICB0aGlzLmxvYWRSb3dMaXN0UGFnZUZhaWxlZCggZXJyIClcbiAgICAgICAgICAgIH0gKVxuICAgICAgICAgICAgLmZpbmFsbHkoICgpID0+IHtcbiAgICAgICAgICAgICAgICBpblByb2dyZXNzLmNvbXBsZXRlKClcblxuICAgICAgICAgICAgICAgIHRoaXMuaXNMb2FkaW5nID0gZmFsc2VcbiAgICAgICAgICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKVxuICAgICAgICAgICAgfSApXG4gICAgfVxuXG4gICAgbG9hZFJvd0xpc3QoKTogUHJvbWlzZTxMPiB7XG4gICAgICAgIGlmICggdGhpcy5fbG9hZFJvd0xpc3RSZXF1ZXN0IClcbiAgICAgICAgICAgIHRoaXMuX2xvYWRSb3dMaXN0UmVxdWVzdC5hYm9ydCgpXG5cbiAgICAgICAgdGhpcy5fbG9hZFJvd0xpc3RSZXF1ZXN0ID0gbmV3IE9ic2VydmFibGVBYm9ydGVyPEw+KCAoKSA9PiB7ICAgICAgICBcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmZldGNoUm93TGlzdFBhZ2UoKVxuICAgICAgICB9IClcblxuICAgICAgICByZXR1cm4gdGhpcy5fbG9hZFJvd0xpc3RSZXF1ZXN0LnByb21pc2VcbiAgICB9XG5cbiAgICBhYnN0cmFjdCBmZXRjaFJvd0xpc3RQYWdlKCk6IE9ic2VydmFibGU8TD4gXG5cbiAgICBwYXJzZVJvd0xpc3QoIHJlc3VsdDogTCApOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSggcmVzdWx0IClcbiAgICAgICAgICAgIC50aGVuKCByZXMgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuX3RvdGFsUm93Q291bnQgPSB0aGlzLnBhcnNlVG90YWxSb3dDb3VudCggcmVzIClcbiAgICAgICAgICAgICAgICB0aGlzLl9yb3dzID0gdGhpcy5wYXJzZVJvd3MoIHJlcyApXG4gICAgICAgICAgICB9IClcbiAgICB9XG5cbiAgICBhYnN0cmFjdCBwYXJzZVJvd3MoIHJlczogTCApOiBSW10gXG4gICAgXG4gICAgcGFyc2VUb3RhbFJvd0NvdW50KCByZXM6IEwgKTogbnVtYmVyIHtcbiAgICAgICAgaWYgKCAndG90YWxSb3dDb3VudCcgaW4gKHJlcyBhcyBhbnkpICkgcmV0dXJuIChyZXMgYXMgYW55KVsgJ3RvdGFsUm93Q291bnQnIF1cblxuICAgICAgICB0aHJvdyAnTWlzc2luZyByZXMudG90YWxSb3dDb3VudCwgbWlnaHQgbmVlZCB0byBvdmVycmlkZSBSb3dMaXN0QmFzZS5wYXJzZVRvdGFsUm93Q291bnQnXG4gICAgfVxuXG4gICAgY29tcGxldGVkUm93TGlzdFBhZ2UoKSB7fVxuXG4gICAgbG9hZFJvd0xpc3RQYWdlRmFpbGVkKCBlcnJvcjogYW55ICkge1xuICAgICAgICBjb25zb2xlLndhcm4oIGVycm9yIClcbiAgICAgICAgdGhpcy5fcm93cyA9IFtdXG4gICAgICAgIHRoaXMuX3RvdGFsUm93Q291bnQgPSAwXG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIHJlZnJlc2goKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIHJldHVybiB0aGlzLnJlZnJlc2hSb3dMaXN0KClcbiAgICB9XG59XG5cbmNsYXNzIEluUHJvZ3Jlc3Mge1xuICAgIHByaXZhdGUgX2NvbXBsZXRlZCA9IGZhbHNlXG4gICAgcHJpdmF0ZSBfY2FuY2VsbGVkID0gZmFsc2VcblxuICAgIGNvbXBsZXRlKCkge1xuICAgICAgICBpZiAoIHRoaXMuaXNDYW5jZWxsZWQgKSByZXR1cm5cbiAgICAgICAgdGhpcy5fY29tcGxldGVkID0gdHJ1ZVxuICAgIH1cblxuICAgIGNhbmNlbCgpIHtcbiAgICAgICAgaWYgKCB0aGlzLmlzQ29tcGxldGVkICkgcmV0dXJuXG4gICAgICAgIHRoaXMuX2NhbmNlbGxlZCA9IHRydWUgICAgICAgIFxuICAgIH1cblxuICAgIHByb2dyZXNzKCkge1xuICAgICAgICBpZiAoIHRoaXMuaXNDb21wbGV0ZWQgKSByZXR1cm5cbiAgICAgICAgaWYgKCB0aGlzLmlzQ2FuY2VsbGVkICkgdGhyb3cgbmV3IEFib3J0ZWQoJ0luUHJvZ3Jlc3MgY2FuY2VsbGVkJylcbiAgICB9XG5cbiAgICBnZXQgaXNDb21wbGV0ZWQoKSB7ICAgICAgICBcbiAgICAgICAgcmV0dXJuIHRoaXMuX2NvbXBsZXRlZFxuICAgIH1cblxuICAgIGdldCBpc0NhbmNlbGxlZCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2NhbmNlbGxlZFxuICAgIH1cbn1cbiJdfQ==
|
|
@@ -2,19 +2,17 @@ import { Injectable } from "@angular/core";
|
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
3
|
export class PageStateService {
|
|
4
4
|
constructor() {
|
|
5
|
-
this.
|
|
5
|
+
this._pageState = {};
|
|
6
6
|
}
|
|
7
|
-
getPageState(
|
|
8
|
-
if (this.
|
|
9
|
-
|
|
10
|
-
return sc.state;
|
|
11
|
-
}
|
|
12
|
-
// this.setPageState( classConstructor, defaultState, label )
|
|
13
|
-
return defaultState();
|
|
7
|
+
getPageState(id) {
|
|
8
|
+
if (id in this._pageState)
|
|
9
|
+
return this._pageState[id];
|
|
14
10
|
}
|
|
15
|
-
setPageState(
|
|
16
|
-
|
|
17
|
-
|
|
11
|
+
setPageState(id, state) {
|
|
12
|
+
this._pageState[id] = state;
|
|
13
|
+
}
|
|
14
|
+
deletePageState(id) {
|
|
15
|
+
delete this._pageState[id];
|
|
18
16
|
}
|
|
19
17
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: PageStateService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
20
18
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: PageStateService, providedIn: "root" }); }
|
|
@@ -24,5 +22,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
24
22
|
args: [{
|
|
25
23
|
providedIn: "root"
|
|
26
24
|
}]
|
|
27
|
-
}]
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
25
|
+
}] });
|
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS1zdGF0ZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbnItbmd4LWNvbXBvbmVudC1saWIvc3JjL3NlcnZpY2VzL3BhZ2Utc3RhdGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUszQyxNQUFNLE9BQU8sZ0JBQWdCO0lBSDdCO1FBSXFCLGVBQVUsR0FBZ0MsRUFBRSxDQUFBO0tBY2hFO0lBWkcsWUFBWSxDQUFFLEVBQVU7UUFDcEIsSUFBSyxFQUFFLElBQUksSUFBSSxDQUFDLFVBQVU7WUFDdEIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFFLEVBQUUsQ0FBRSxDQUFBO0lBQ3BDLENBQUM7SUFFRCxZQUFZLENBQUUsRUFBVSxFQUFFLEtBQWE7UUFDbkMsSUFBSSxDQUFDLFVBQVUsQ0FBRSxFQUFFLENBQUUsR0FBRyxLQUFLLENBQUE7SUFDakMsQ0FBQztJQUVELGVBQWUsQ0FBRSxFQUFVO1FBQ3ZCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBRSxFQUFFLENBQUUsQ0FBQTtJQUNoQyxDQUFDOytHQWRRLGdCQUFnQjttSEFBaEIsZ0JBQWdCLGNBRmIsTUFBTTs7NEZBRVQsZ0JBQWdCO2tCQUg1QixVQUFVO21CQUFFO29CQUNULFVBQVUsRUFBRSxNQUFNO2lCQUNyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuXG5ASW5qZWN0YWJsZSgge1xuICAgIHByb3ZpZGVkSW46IFwicm9vdFwiXG59IClcbmV4cG9ydCBjbGFzcyBQYWdlU3RhdGVTZXJ2aWNlIHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9wYWdlU3RhdGU6IHsgWyBrZXk6IHN0cmluZyBdOiBzdHJpbmcgfSA9IHt9XG5cbiAgICBnZXRQYWdlU3RhdGUoIGlkOiBzdHJpbmcgKTogc3RyaW5nfHVuZGVmaW5lZCB7XG4gICAgICAgIGlmICggaWQgaW4gdGhpcy5fcGFnZVN0YXRlIClcbiAgICAgICAgICAgIHJldHVybiB0aGlzLl9wYWdlU3RhdGVbIGlkIF1cbiAgICB9XG5cbiAgICBzZXRQYWdlU3RhdGUoIGlkOiBzdHJpbmcsIHN0YXRlOiBzdHJpbmcgKSB7XG4gICAgICAgIHRoaXMuX3BhZ2VTdGF0ZVsgaWQgXSA9IHN0YXRlXG4gICAgfVxuXG4gICAgZGVsZXRlUGFnZVN0YXRlKCBpZDogc3RyaW5nICkge1xuICAgICAgICBkZWxldGUgdGhpcy5fcGFnZVN0YXRlWyBpZCBdXG4gICAgfVxufVxuXG4iXX0=
|