@firestitch/list 9.12.5 → 12.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/app/classes/persistance-controller.d.ts +3 -0
- package/app/classes/reorder-controller.d.ts +3 -0
- package/app/components/body/body.component.d.ts +3 -0
- package/app/components/body/row/actions/actions.component.d.ts +3 -0
- package/app/components/body/row/cell/cell.component.d.ts +3 -0
- package/app/components/body/row/inline-action/inline-action.component.d.ts +3 -0
- package/app/components/body/row/menu-action/menu-action.component.d.ts +3 -0
- package/app/components/body/row/row.component.d.ts +3 -0
- package/app/components/customize-cols/customize-cols.component.d.ts +3 -0
- package/app/components/footer/footer-row/footer-cell/footer-cell.component.d.ts +3 -0
- package/app/components/footer/footer-row/footer-row.component.d.ts +3 -0
- package/app/components/footer/footer.component.d.ts +3 -0
- package/app/components/head/head-cell/head-cell.component.d.ts +3 -0
- package/app/components/head/head.component.d.ts +3 -0
- package/app/components/list/list.component.d.ts +3 -0
- package/app/components/loader/loader.component.d.ts +3 -0
- package/app/components/manage-saved-filters/manage-saved-filters.component.d.ts +3 -0
- package/app/components/pagination/pagination.component.d.ts +3 -0
- package/app/components/saved-filters/saved-filters.component.d.ts +3 -0
- package/app/components/status/status.component.d.ts +3 -0
- package/app/directives/cell/cell.directive.d.ts +3 -0
- package/app/directives/column/column.directive.d.ts +3 -0
- package/app/directives/content/content.directive.d.ts +3 -0
- package/app/directives/draggable-list/draggable-list.directive.d.ts +3 -0
- package/app/directives/draggable-row/draggable-row.directive.d.ts +3 -0
- package/app/directives/empty-state/empty-state.directive.d.ts +3 -0
- package/app/directives/footer/footer.directive.d.ts +3 -0
- package/app/directives/group-cell/group-cell.directive.d.ts +3 -0
- package/app/directives/group-expand-trigger/group-expand-trigger.directive.d.ts +3 -0
- package/app/directives/header/header.directive.d.ts +3 -0
- package/app/fs-list.module.d.ts +48 -0
- package/app/services/group-expand-notifier.service.d.ts +3 -0
- package/bundles/firestitch-list.umd.js +2087 -2088
- package/bundles/firestitch-list.umd.js.map +1 -1
- package/esm2015/app/classes/actions-controller.js +1 -1
- package/esm2015/app/classes/columns-controller.js +1 -1
- package/esm2015/app/classes/data-controller.js +2 -2
- package/esm2015/app/classes/external-params-controller.js +5 -7
- package/esm2015/app/classes/index.js +1 -1
- package/esm2015/app/classes/list-controller.js +1 -1
- package/esm2015/app/classes/pagination-controller.js +2 -2
- package/esm2015/app/classes/persistance-controller.js +11 -14
- package/esm2015/app/classes/reorder-controller.js +13 -13
- package/esm2015/app/classes/selection-controller.js +7 -6
- package/esm2015/app/classes/sorting-controller.js +1 -1
- package/esm2015/app/components/body/body.component.js +48 -75
- package/esm2015/app/components/body/row/actions/actions.component.js +37 -48
- package/esm2015/app/components/body/row/cell/cell.component.js +27 -33
- package/esm2015/app/components/body/row/inline-action/inline-action.component.js +27 -28
- package/esm2015/app/components/body/row/menu-action/menu-action.component.js +27 -32
- package/esm2015/app/components/body/row/row.component.js +54 -84
- package/esm2015/app/components/customize-cols/customize-cols.component.js +23 -18
- package/esm2015/app/components/footer/footer-row/footer-cell/footer-cell.component.js +15 -13
- package/esm2015/app/components/footer/footer-row/footer-row.component.js +20 -28
- package/esm2015/app/components/footer/footer.component.js +21 -25
- package/esm2015/app/components/head/head-cell/head-cell.component.js +17 -19
- package/esm2015/app/components/head/head.component.js +31 -39
- package/esm2015/app/components/list/list.component.js +75 -83
- package/esm2015/app/components/loader/loader.component.js +22 -21
- package/esm2015/app/components/manage-saved-filters/manage-saved-filters.component.js +19 -15
- package/esm2015/app/components/pagination/pagination.component.js +26 -26
- package/esm2015/app/components/saved-filters/saved-filters.component.js +20 -23
- package/esm2015/app/components/status/status.component.js +38 -41
- package/esm2015/app/directives/cell/cell.directive.js +17 -20
- package/esm2015/app/directives/column/column.directive.js +60 -86
- package/esm2015/app/directives/content/content.directive.js +12 -10
- package/esm2015/app/directives/draggable-list/draggable-list.directive.js +16 -24
- package/esm2015/app/directives/draggable-row/draggable-row.directive.js +22 -30
- package/esm2015/app/directives/empty-state/empty-state.directive.js +12 -10
- package/esm2015/app/directives/footer/footer.directive.js +17 -20
- package/esm2015/app/directives/group-cell/group-cell.directive.js +12 -10
- package/esm2015/app/directives/group-expand-trigger/group-expand-trigger.directive.js +16 -22
- package/esm2015/app/directives/header/header.directive.js +17 -20
- package/esm2015/app/enums/button-type.enum.js +1 -1
- package/esm2015/app/enums/page-change-type.enum.js +1 -1
- package/esm2015/app/enums/pagination-strategy.enum.js +1 -1
- package/esm2015/app/enums/row-type.enum.js +1 -1
- package/esm2015/app/enums/state.enum.js +1 -1
- package/esm2015/app/fs-list.module.js +139 -66
- package/esm2015/app/fs-list.providers.js +1 -1
- package/esm2015/app/interfaces/cellconfig.interface.js +2 -1
- package/esm2015/app/interfaces/draggable-list.interface.js +2 -1
- package/esm2015/app/interfaces/external-params.interface.js +2 -1
- package/esm2015/app/interfaces/index.js +4 -1
- package/esm2015/app/interfaces/listconfig.interface.js +2 -1
- package/esm2015/app/interfaces/pagination.interface.js +2 -1
- package/esm2015/app/models/column.model.js +1 -1
- package/esm2015/app/models/row/base-row.js +1 -1
- package/esm2015/app/models/row/child-row.js +1 -1
- package/esm2015/app/models/row/group-row.js +1 -1
- package/esm2015/app/models/row/simple-row.js +1 -1
- package/esm2015/app/models/row-action.model.js +1 -1
- package/esm2015/app/models/row.js +1 -1
- package/esm2015/app/models/styleConfig.model.js +1 -1
- package/esm2015/app/services/group-expand-notifier.service.js +9 -8
- package/esm2015/firestitch-list.js +1 -15
- package/esm2015/public_api.js +4 -1
- package/fesm2015/firestitch-list.js +1342 -1469
- package/fesm2015/firestitch-list.js.map +1 -1
- package/firestitch-list.d.ts +1 -15
- package/package.json +5 -8
- package/public_api.d.ts +3 -0
- package/bundles/firestitch-list.umd.min.js +0 -16
- package/bundles/firestitch-list.umd.min.js.map +0 -1
- package/esm5/app/classes/actions-controller.js +0 -71
- package/esm5/app/classes/columns-controller.js +0 -236
- package/esm5/app/classes/data-controller.js +0 -374
- package/esm5/app/classes/external-params-controller.js +0 -185
- package/esm5/app/classes/index.js +0 -3
- package/esm5/app/classes/list-controller.js +0 -783
- package/esm5/app/classes/pagination-controller.js +0 -570
- package/esm5/app/classes/persistance-controller.js +0 -25
- package/esm5/app/classes/reorder-controller.js +0 -204
- package/esm5/app/classes/selection-controller.js +0 -465
- package/esm5/app/classes/sorting-controller.js +0 -204
- package/esm5/app/components/body/body.component.js +0 -104
- package/esm5/app/components/body/row/actions/actions.component.js +0 -116
- package/esm5/app/components/body/row/cell/cell.component.js +0 -95
- package/esm5/app/components/body/row/inline-action/inline-action.component.js +0 -43
- package/esm5/app/components/body/row/menu-action/menu-action.component.js +0 -38
- package/esm5/app/components/body/row/row.component.js +0 -295
- package/esm5/app/components/customize-cols/customize-cols.component.js +0 -69
- package/esm5/app/components/footer/footer-row/footer-cell/footer-cell.component.js +0 -20
- package/esm5/app/components/footer/footer-row/footer-row.component.js +0 -38
- package/esm5/app/components/footer/footer.component.js +0 -31
- package/esm5/app/components/head/head-cell/head-cell.component.js +0 -38
- package/esm5/app/components/head/head.component.js +0 -106
- package/esm5/app/components/list/list.component.js +0 -403
- package/esm5/app/components/loader/loader.component.js +0 -47
- package/esm5/app/components/manage-saved-filters/manage-saved-filters.component.js +0 -81
- package/esm5/app/components/pagination/pagination.component.js +0 -46
- package/esm5/app/components/saved-filters/saved-filters.component.js +0 -41
- package/esm5/app/components/status/status.component.js +0 -79
- package/esm5/app/directives/cell/cell.directive.js +0 -24
- package/esm5/app/directives/column/column.directive.js +0 -98
- package/esm5/app/directives/content/content.directive.js +0 -14
- package/esm5/app/directives/draggable-list/draggable-list.directive.js +0 -281
- package/esm5/app/directives/draggable-row/draggable-row.directive.js +0 -83
- package/esm5/app/directives/empty-state/empty-state.directive.js +0 -14
- package/esm5/app/directives/footer/footer.directive.js +0 -24
- package/esm5/app/directives/group-cell/group-cell.directive.js +0 -17
- package/esm5/app/directives/group-expand-trigger/group-expand-trigger.directive.js +0 -33
- package/esm5/app/directives/header/header.directive.js +0 -24
- package/esm5/app/enums/button-type.enum.js +0 -9
- package/esm5/app/enums/page-change-type.enum.js +0 -6
- package/esm5/app/enums/pagination-strategy.enum.js +0 -7
- package/esm5/app/enums/row-type.enum.js +0 -7
- package/esm5/app/enums/state.enum.js +0 -11
- package/esm5/app/fs-list.module.js +0 -152
- package/esm5/app/fs-list.providers.js +0 -4
- package/esm5/app/interfaces/cellconfig.interface.js +0 -1
- package/esm5/app/interfaces/draggable-list.interface.js +0 -1
- package/esm5/app/interfaces/external-params.interface.js +0 -1
- package/esm5/app/interfaces/index.js +0 -1
- package/esm5/app/interfaces/listconfig.interface.js +0 -1
- package/esm5/app/interfaces/pagination.interface.js +0 -1
- package/esm5/app/models/column.model.js +0 -204
- package/esm5/app/models/row/base-row.js +0 -35
- package/esm5/app/models/row/child-row.js +0 -43
- package/esm5/app/models/row/group-row.js +0 -61
- package/esm5/app/models/row/simple-row.js +0 -15
- package/esm5/app/models/row-action.model.js +0 -153
- package/esm5/app/models/row.js +0 -126
- package/esm5/app/models/styleConfig.model.js +0 -91
- package/esm5/app/services/group-expand-notifier.service.js +0 -30
- package/esm5/firestitch-list.js +0 -19
- package/esm5/public_api.js +0 -41
- package/fesm5/firestitch-list.js +0 -6084
- package/fesm5/firestitch-list.js.map +0 -1
- package/firestitch-list.metadata.json +0 -1
|
@@ -52,4 +52,4 @@ export class ActionsController {
|
|
|
52
52
|
this._filterRef.updateDisabledState();
|
|
53
53
|
}
|
|
54
54
|
}
|
|
55
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
55
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9ucy1jb250cm9sbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2FwcC9jbGFzc2VzL2FjdGlvbnMtY29udHJvbGxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWMsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBTTNDLE1BQU0sT0FBTyxpQkFBaUI7SUFVNUI7UUFOUSxhQUFRLEdBQW1CLEVBQUUsQ0FBQztRQUk5QixjQUFTLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztJQUV6QixDQUFDO0lBRWhCLElBQVcsUUFBUTtRQUNqQixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDdkMsQ0FBQztJQUVELElBQVcsT0FBTztRQUNoQixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDdkIsQ0FBQztJQUVELElBQVcsVUFBVTtRQUNuQixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBRU0sWUFBWSxDQUFDLEdBQW9CO1FBQ3RDLElBQUksQ0FBQyxVQUFVLEdBQUcsR0FBRyxDQUFDO0lBQ3hCLENBQUM7SUFFTSxVQUFVLENBQUMsT0FBdUI7UUFDdkMsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3BCLElBQUksQ0FBQyxRQUFRLEdBQUcsT0FBTyxDQUFDO1FBRXhCLElBQUksSUFBSSxDQUFDLGNBQWMsRUFBRTtZQUN2QixJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7U0FDNUM7SUFDSCxDQUFDO0lBRU0sZ0JBQWdCLENBQUMsTUFBb0I7UUFDMUMsTUFBTSxhQUFhLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQztRQUNuQyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUU5QixNQUFNLENBQUMsS0FBSyxHQUFHLEdBQUcsRUFBRTtZQUNsQixJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO1lBQ2xELElBQUksQ0FBQyxVQUFVLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztZQUNuQyxJQUFJLENBQUMsVUFBVSxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ2pDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN0QixDQUFDLENBQUE7UUFFRCxJQUFJLENBQUMsY0FBYyxHQUFHLE1BQU0sQ0FBQztJQUMvQixDQUFDO0lBRU0sb0JBQW9CLENBQUMsTUFBb0I7UUFDOUMsSUFBSSxDQUFDLFdBQVcsR0FBRyxNQUFNLENBQUM7UUFDMUIsTUFBTSxhQUFhLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQztRQUVuQyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssR0FBRyxHQUFHLEVBQUU7WUFDNUIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQzdDLElBQUksQ0FBQyxVQUFVLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztZQUNuQyxJQUFJLENBQUMsVUFBVSxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ2pDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN0QixDQUFDLENBQUE7SUFDSCxDQUFDO0lBRU0sWUFBWTtRQUNqQixJQUFJLENBQUMsUUFBUSxHQUFHLEVBQUUsQ0FBQztRQUNuQixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3hCLENBQUM7SUFFTSxtQkFBbUI7UUFDeEIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO0lBQ3hDLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9ic2VydmFibGUsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgRmlsdGVyQ29tcG9uZW50IH0gZnJvbSAnQGZpcmVzdGl0Y2gvZmlsdGVyJztcbmltcG9ydCB7IEZzTGlzdEFjdGlvbiB9IGZyb20gJy4uL2ludGVyZmFjZXMvbGlzdGNvbmZpZy5pbnRlcmZhY2UnO1xuXG5cbmV4cG9ydCBjbGFzcyBBY3Rpb25zQ29udHJvbGxlciB7XG5cbiAgcHJpdmF0ZSBfZmlsdGVyUmVmOiBGaWx0ZXJDb21wb25lbnQ7XG5cbiAgcHJpdmF0ZSBfYWN0aW9uczogRnNMaXN0QWN0aW9uW10gPSBbXTtcbiAgcHJpdmF0ZSBfcmVvcmRlckFjdGlvbjogRnNMaXN0QWN0aW9uO1xuICBwcml2YXRlIF9kb25lQWN0aW9uOiBGc0xpc3RBY3Rpb247XG5cbiAgcHJpdmF0ZSBfZGVzdHJveSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIGNvbnN0cnVjdG9yKCkge31cblxuICBwdWJsaWMgZ2V0IGRlc3Ryb3kkKCk6IE9ic2VydmFibGU8dm9pZD4ge1xuICAgIHJldHVybiB0aGlzLl9kZXN0cm95JC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgYWN0aW9ucygpOiBGc0xpc3RBY3Rpb25bXSB7XG4gICAgcmV0dXJuIHRoaXMuX2FjdGlvbnM7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGhhc0FjdGlvbnMoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2FjdGlvbnMubGVuZ3RoID4gMDtcbiAgfVxuXG4gIHB1YmxpYyBzZXRGaWx0ZXJSZWYocmVmOiBGaWx0ZXJDb21wb25lbnQpIHtcbiAgICB0aGlzLl9maWx0ZXJSZWYgPSByZWY7XG4gIH1cblxuICBwdWJsaWMgc2V0QWN0aW9ucyhhY3Rpb25zOiBGc0xpc3RBY3Rpb25bXSkge1xuICAgIHRoaXMuY2xlYXJBY3Rpb25zKCk7XG4gICAgdGhpcy5fYWN0aW9ucyA9IGFjdGlvbnM7XG5cbiAgICBpZiAodGhpcy5fcmVvcmRlckFjdGlvbikge1xuICAgICAgdGhpcy5fYWN0aW9ucy51bnNoaWZ0KHRoaXMuX3Jlb3JkZXJBY3Rpb24pO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBhZGRSZW9yZGVyQWN0aW9uKGFjdGlvbjogRnNMaXN0QWN0aW9uKSB7XG4gICAgY29uc3QgYWN0aW9uQ2xpY2tGbiA9IGFjdGlvbi5jbGljaztcbiAgICB0aGlzLl9hY3Rpb25zLnVuc2hpZnQoYWN0aW9uKTtcblxuICAgIGFjdGlvbi5jbGljayA9ICgpID0+IHtcbiAgICAgIHRoaXMuX2ZpbHRlclJlZi51cGRhdGVBY3Rpb25zKFt0aGlzLl9kb25lQWN0aW9uXSk7XG4gICAgICB0aGlzLl9maWx0ZXJSZWYuaGlkZUtleXdvcmRGaWVsZCgpO1xuICAgICAgdGhpcy5fZmlsdGVyUmVmLmhpZGVGaWx0ZXJzQnRuKCk7XG4gICAgICBhY3Rpb25DbGlja0ZuKG51bGwpO1xuICAgIH1cblxuICAgIHRoaXMuX3Jlb3JkZXJBY3Rpb24gPSBhY3Rpb247XG4gIH1cblxuICBwdWJsaWMgYWRkUmVvcmRlckRvbmVBY3Rpb24oYWN0aW9uOiBGc0xpc3RBY3Rpb24pIHtcbiAgICB0aGlzLl9kb25lQWN0aW9uID0gYWN0aW9uO1xuICAgIGNvbnN0IGFjdGlvbkNsaWNrRm4gPSBhY3Rpb24uY2xpY2s7XG5cbiAgICB0aGlzLl9kb25lQWN0aW9uLmNsaWNrID0gKCkgPT4ge1xuICAgICAgdGhpcy5fZmlsdGVyUmVmLnVwZGF0ZUFjdGlvbnModGhpcy5fYWN0aW9ucyk7XG4gICAgICB0aGlzLl9maWx0ZXJSZWYuc2hvd0tleXdvcmRGaWVsZCgpO1xuICAgICAgdGhpcy5fZmlsdGVyUmVmLnNob3dGaWx0ZXJzQnRuKCk7XG4gICAgICBhY3Rpb25DbGlja0ZuKG51bGwpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBjbGVhckFjdGlvbnMoKSB7XG4gICAgdGhpcy5fYWN0aW9ucyA9IFtdO1xuICAgIHRoaXMuX2Rlc3Ryb3kkLm5leHQoKTtcbiAgfVxuXG4gIHB1YmxpYyB1cGRhdGVEaXNhYmxlZFN0YXRlKCk6IHZvaWQge1xuICAgIHRoaXMuX2ZpbHRlclJlZi51cGRhdGVEaXNhYmxlZFN0YXRlKCk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -182,4 +182,4 @@ export class ColumnsController {
|
|
|
182
182
|
});
|
|
183
183
|
}
|
|
184
184
|
}
|
|
185
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sdW1ucy1jb250cm9sbGVyLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGZpcmVzdGl0Y2gvbGlzdC8iLCJzb3VyY2VzIjpbImFwcC9jbGFzc2VzL2NvbHVtbnMtY29udHJvbGxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3JDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVoRCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFXaEQsTUFBTSxPQUFPLGlCQUFpQjtJQXNCNUI7UUFwQk8sbUJBQWMsR0FBYSxFQUFFLENBQUM7UUFFN0IsZ0JBQVcsR0FBRyxFQUFFLENBQUM7UUFPakIsa0JBQWEsR0FBRyxLQUFLLENBQUM7UUFDdEIsc0JBQWlCLEdBQUcsS0FBSyxDQUFDO1FBQzFCLHdCQUFtQixHQUFHLEtBQUssQ0FBQztRQUM1QixvQkFBZSxHQUFHLEtBQUssQ0FBQztRQUN4QixlQUFVLEdBQUcsS0FBSyxDQUFDO1FBQ25CLGVBQVUsR0FBRyxLQUFLLENBQUM7UUFDbkIsYUFBUSxHQUFhLEVBQUUsQ0FBQztRQUd4QixjQUFTLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztJQUV6QixDQUFDO0lBRWhCLElBQVcsT0FBTztRQUNoQixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDL0IsQ0FBQztJQUVELElBQVcsZ0JBQWdCO1FBQ3pCLE1BQU0sY0FBYyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsc0JBQXNCLENBQUM7UUFDckQsTUFBTSx1QkFBdUIsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLHlCQUF5QixDQUFDO1FBQ2pFLE1BQU0sZ0JBQWdCLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FB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QUVGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNOdW1iZXIgfSBmcm9tICdsb2Rhc2gtZXMnO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdGFrZVVudGlsLCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IENvbHVtbiB9IGZyb20gJy4uL21vZGVscy9jb2x1bW4ubW9kZWwnO1xuaW1wb3J0IHtcbiAgRnNMaXN0Q29sdW1uQ2hhbmdlRm4sXG4gIEZzTGlzdENvbHVtbkNvbmZpZyxcbiAgRnNMaXN0Q29sdW1uRGlzYWJsZWRGbixcbiAgRnNMaXN0Q29sdW1uTG9hZEZuLFxuICBGc0xpc3RDb2x1bW5UaXRsZUZuLFxuICBGc0xpc3RDb2x1bW5Ub29sdGlwRm4sXG59IGZyb20gJy4uL2ludGVyZmFjZXMvbGlzdGNvbmZpZy5pbnRlcmZhY2UnO1xuXG5cbmV4cG9ydCBjbGFzcyBDb2x1bW5zQ29udHJvbGxlciB7XG5cbiAgcHVibGljIHZpc2libGVDb2x1bW5zOiBDb2x1bW5bXSA9IFtdO1xuXG4gIHByaXZhdGUgX3RoZWFkQ2xhc3MgPSAnJztcbiAgcHJpdmF0ZSBfbG9hZEZuOiBGc0xpc3RDb2x1bW5Mb2FkRm47XG4gIHByaXZhdGUgX2NoYW5nZUZuOiBGc0xpc3RDb2x1bW5DaGFuZ2VGbjtcbiAgcHJpdmF0ZSBfY3VzdG9taXplRmllbGRUaXRsZUZuOiBGc0xpc3RDb2x1bW5UaXRsZUZuO1xuICBwcml2YXRlIF9jdXN0b21pemVGaWVsZERpc2FibGVkRm46IEZzTGlzdENvbHVtbkRpc2FibGVkRm47XG4gIHByaXZhdGUgX2NvbHVtblRvb2x0aXBGbjogRnNMaXN0Q29sdW1uVG9vbHRpcEZuO1xuXG4gIHByaXZhdGUgX2lzQ29uZmlndXJlZCA9IGZhbHNlO1xuICBwcml2YXRlIF9sb2FkRm5Db25maWd1cmVkID0gZmFsc2U7XG4gIHByaXZhdGUgX2NoYW5nZUZuQ29uZmlndXJlZCA9IGZhbHNlO1xuICBwcml2YXRlIF9jb2x1bW5zRmV0Y2hlZCA9IGZhbHNlO1xuICBwcml2YXRlIF9oYXNIZWFkZXIgPSBmYWxzZTtcbiAgcHJpdmF0ZSBfaGFzRm9vdGVyID0gZmFsc2U7XG4gIHByaXZhdGUgX2NvbHVtbnM6IENvbHVtbltdID0gW107XG4gIHByaXZhdGUgX2RlZmF1bHRDb25maWdzO1xuXG4gIHByaXZhdGUgX2Rlc3Ryb3kkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICBjb25zdHJ1Y3RvcigpIHt9XG5cbiAgcHVibGljIGdldCBjb2x1bW5zKCkge1xuICAgIHJldHVybiB0aGlzLl9jb2x1bW5zLnNsaWNlKCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGNvbHVtbnNGb3JEaWFsb2coKSB7XG4gICAgY29uc3QgaGFzQ3VzdG9tVGl0bGUgPSAhIXRoaXMuX2N1c3RvbWl6ZUZpZWxkVGl0bGVGbjtcbiAgICBjb25zdCBoYXNDdXN0b21EaXNhYmxlZFN0YXR1cyA9ICEhdGhpcy5fY3VzdG9taXplRmllbGREaXNhYmxlZEZuO1xuICAgIGNvbnN0IGhhc0N1c3RvbVRvb2x0aXAgPSAhIXRoaXMuX2NvbHVtblRvb2x0aXBGbjtcblxuICAgIHJldHVybiB0aGlzLl9jb2x1bW5zXG4gICAgICAuZmlsdGVyKChjb2x1bW4pID0+IGNvbHVtbi5jdXN0b21pemUgJiYgISFjb2x1bW4ubmFtZSlcbiAgICAgIC5tYXAoKGNvbHVtbikgPT4ge1xuICAgICAgICBjb25zdCB0aXRsZSA9IGhhc0N1c3RvbVRpdGxlXG4gICAgICAgICAgPyB0aGlzLl9jdXN0b21pemVGaWVsZFRpdGxlRm4oY29sdW1uLm5hbWUsIGNvbHVtbi50aXRsZSlcbiAgICAgICAgICA6IGNvbHVtbi5uYW1lO1xuXG4gICAgICAgIGNvbnN0IGRpc2FibGVkID0gaGFzQ3VzdG9tRGlzYWJsZWRTdGF0dXNcbiAgICAgICAgICA/IHRoaXMuX2N1c3RvbWl6ZUZpZWxkRGlzYWJsZWRGbihjb2x1bW4ubmFtZSlcbiAgICAgICAgICA6IGZhbHNlO1xuXG4gICAgICAgIGNvbnN0IHRvb2x0aXAgPSBoYXNDdXN0b21Ub29sdGlwXG4gICAgICAgICAgPyB0aGlzLl9jb2x1bW5Ub29sdGlwRm4oY29sdW1uLm5hbWUsIGNvbHVtbi5zaG93LCBkaXNhYmxlZClcbiAgICAgICAgICA6IHZvaWQgMDtcblxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIHRlbXBsYXRlOiBjb2x1bW4uaGVhZGVyVGVtcGxhdGUsXG4gICAgICAgICAgbmFtZTogY29sdW1uLm5hbWUsXG4gICAgICAgICAgc2hvdzogY29sdW1uLnNob3csXG4gICAgICAgICAgdGl0bGU6IHRpdGxlLFxuICAgICAgICAgIGRpc2FibGVkOiBkaXNhYmxlZCxcbiAgICAgICAgICB0b29sdGlwOiB0b29sdGlwLFxuICAgICAgICB9XG4gICAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgY29sdW1uc0ZldGNoZWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2NvbHVtbnNGZXRjaGVkO1xuICB9XG5cbiAgcHVibGljIGdldCBoYXNIZWFkZXIoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2hhc0hlYWRlcjtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaGFzRm9vdGVyKCkge1xuICAgIHJldHVybiB0aGlzLl9oYXNGb290ZXI7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHRoZWFkQ2xhc3MoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3RoZWFkQ2xhc3M7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGNvbmZpZ3VyZWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2lzQ29uZmlndXJlZDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgbG9hZEZuQ29uZmlndXJlZCgpIHtcbiAgICByZXR1cm4gdGhpcy5fbG9hZEZuQ29uZmlndXJlZDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgY2hhbmdlRm5Db25maWd1cmVkKCkge1xuICAgIHJldHVybiB0aGlzLl9jaGFuZ2VGbkNvbmZpZ3VyZWQ7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGNoYW5nZUZuKCkge1xuICAgIHJldHVybiB0aGlzLl9jaGFuZ2VGbjtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgdmlzaWJsZUNvbHVtbnNOYW1lcygpIHtcbiAgICByZXR1cm4gdGhpcy52aXNpYmxlQ29sdW1uc1xuICAgICAgLm1hcCgoY29sdW1uKSA9PiBjb2x1bW4ubmFtZSlcbiAgICAgIC5maWx0ZXIoKG5hbWUpID0+ICEhbmFtZSk7XG4gIH1cblxuICBwdWJsaWMgc2V0RGVmYXVsdHMoZGVmYXVsdHMpIHtcbiAgICB0aGlzLl9kZWZhdWx0Q29uZmlncyA9IGRlZmF1bHRzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCBkYXRhIGZyb20gbGlzdCBjb25maWdcbiAgICogQHBhcmFtIGNvbmZpZ1xuICAgKi9cbiAgcHVibGljIGluaXRDb25maWcoY29uZmlnOiBGc0xpc3RDb2x1bW5Db25maWcpIHtcbiAgICBpZiAoY29uZmlnKSB7XG4gICAgICBpZiAoY29uZmlnLmxvYWQpIHtcbiAgICAgICAgdGhpcy5fbG9hZEZuID0gY29uZmlnLmxvYWQ7XG4gICAgICAgIHRoaXMuX2xvYWRGbkNvbmZpZ3VyZWQgPSB0cnVlO1xuICAgICAgfVxuXG4gICAgICBpZiAoY29uZmlnLmNoYW5nZSkge1xuICAgICAgICB0aGlzLl9jaGFuZ2VGbiA9IGNvbmZpZy5jaGFuZ2U7XG4gICAgICAgIHRoaXMuX2NoYW5nZUZuQ29uZmlndXJlZCA9IHRydWU7XG4gICAgICB9XG5cbiAgICAgIGlmIChjb25maWcudGl0bGUpIHtcbiAgICAgICAgdGhpcy5fY3VzdG9taXplRmllbGRUaXRsZUZuID0gY29uZmlnLnRpdGxlO1xuICAgICAgfVxuXG4gICAgICBpZiAoY29uZmlnLmRpc2FibGVkKSB7XG4gICAgICAgIHRoaXMuX2N1c3RvbWl6ZUZpZWxkRGlzYWJsZWRGbiA9IGNvbmZpZy5kaXNhYmxlZDtcbiAgICAgIH1cblxuICAgICAgaWYgKGNvbmZpZy50b29sdGlwKSB7XG4gICAgICAgIHRoaXMuX2NvbHVtblRvb2x0aXBGbiA9IGNvbmZpZy50b29sdGlwO1xuICAgICAgfVxuXG4gICAgICB0aGlzLl9pc0NvbmZpZ3VyZWQgPSB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBCYXNlIGluaXRpYWxpemF0aW9uIGZvciBjb2x1bW5zXG4gICAqIEBwYXJhbSB0ZW1wbGF0ZXNcbiAgICovXG4gIHB1YmxpYyBpbml0aWFsaXplQ29sdW1ucyh0ZW1wbGF0ZXMpIHtcbiAgICB0aGlzLl9jb2x1bW5zID0gW107XG5cbiAgICB0ZW1wbGF0ZXMuZm9yRWFjaCgoY29sdW1uKSA9PiB7XG4gICAgICBjb25zdCBjb2wgPSBuZXcgQ29sdW1uKGNvbHVtbiwgdGhpcy5fZGVmYXVsdENvbmZpZ3MpO1xuXG5cbiAgICAgIGlmIChjb2wuaGVhZGVyVGVtcGxhdGUgfHwgY29sLnRpdGxlKSB7XG4gICAgICAgIHRoaXMuX2hhc0hlYWRlciA9IHRydWU7XG4gICAgICB9XG4gICAgICBpZiAoY29sLmZvb3RlclRlbXBsYXRlKSB7XG4gICAgICAgIHRoaXMuX2hhc0Zvb3RlciA9IHRydWU7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuX2NvbHVtbnMucHVzaChjb2wpO1xuICAgIH0pO1xuXG4gICAgdGhpcy5fdGhlYWRDbGFzcyA9IHRoaXMuaGFzSGVhZGVyID8gJ2hhcy1oZWFkZXInIDogJyc7XG5cbiAgICB0aGlzLl91cGRhdGVDb2xzcGFucygnaGVhZGVyQ29uZmlncycsICdoZWFkZXJDb2xzcGFubmVkJyk7XG4gICAgdGhpcy5fdXBkYXRlQ29sc3BhbnMoJ2dyb3VwQ2VsbENvbmZpZ3MnLCAnZ3JvdXBDZWxsQ29sc3Bhbm5lZCcpO1xuICAgIHRoaXMuX3VwZGF0ZUNvbHNwYW5zKCdjZWxsQ29uZmlncycsICdjZWxsQ29sc3Bhbm5lZCcpO1xuICAgIHRoaXMuX3VwZGF0ZUNvbHNwYW5zKCdmb290ZXJDb25maWdzJywgJ2Zvb3RlckNvbHNwYW5uZWQnKTtcblxuICAgIHRoaXMudXBkYXRlVmlzaWJsZUNvbHVtbnMoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBMb2FkIHZpc2libGl0eSBjb25maWcgZm9yIGNvbHVtbnMgZnJvbSByZW1vdGVcbiAgICovXG4gIHB1YmxpYyBsb2FkUmVtb3RlQ29sdW1uQ29uZmlncygpIHtcbiAgICByZXR1cm4gdGhpcy5fbG9hZEZuKClcbiAgICAgIC5waXBlKFxuICAgICAgICB0YWtlVW50aWwodGhpcy5fZGVzdHJveSQpLFxuICAgICAgICB0YXAoKGNvbHVtbkNvbmZpZ3MpID0+IHtcbiAgICAgICAgICB0aGlzLl9jb2x1bW5zRmV0Y2hlZCA9IHRydWU7XG4gICAgICAgICAgdGhpcy51cGRhdGVWaXNpYmlsaXR5Rm9yQ29scyhjb2x1bW5Db25maWdzKTtcbiAgICAgICAgfSlcbiAgICAgIClcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgdmlzaWJsZSBjb2x1bW5zIGJhc2VkIG9uIGN1cnJlbnQgY29sdW1ucyBzaG93IHN0YXR1c1xuICAgKi9cbiAgcHVibGljIHVwZGF0ZVZpc2libGVDb2x1bW5zKCkge1xuICAgIHRoaXMudmlzaWJsZUNvbHVtbnMgPVxuICAgICAgdGhpcy5fY29sdW1ucy5maWx0ZXIoKGNvbHVtbikgPT4gY29sdW1uLnNob3cpIHx8IFtdO1xuICB9XG5cbiAgLyoqXG4gICAqIFVwZGF0ZSB2aXNpYmlsaXR5IGJhc2VkIG9uIHBhc3NlZCBjb25maWdcbiAgICogQHBhcmFtIGNvbHVtbnNDb25maWdcbiAgICovXG4gIHB1YmxpYyB1cGRhdGVWaXNpYmlsaXR5Rm9yQ29scyhjb2x1bW5zQ29uZmlnKSB7XG4gICAgY29sdW1uc0NvbmZpZy5mb3JFYWNoKChjb2x1bW5Db25maWcpID0+IHtcbiAgICAgIGNvbnN0IGNvbCA9IHRoaXMuX2NvbHVtbnNcbiAgICAgICAgLmZpbmQoKGNvbHVtbikgPT4gY29sdW1uLm5hbWUgPT09IGNvbHVtbkNvbmZpZy5uYW1lKTtcblxuICAgICAgaWYgKGNvbCkge1xuICAgICAgICBjb2wuc2hvdyA9IGNvbHVtbkNvbmZpZy5zaG93O1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgdGhpcy51cGRhdGVWaXNpYmxlQ29sdW1ucygpO1xuICB9XG5cbiAgcHVibGljIGRlc3Ryb3koKSB7XG4gICAgdGhpcy5fZGVzdHJveSQubmV4dCgpO1xuICAgIHRoaXMuX2Rlc3Ryb3kkLmNvbXBsZXRlKCk7XG5cbiAgICB0aGlzLl9jb2x1bW5zID0gdm9pZCAwO1xuICAgIHRoaXMudmlzaWJsZUNvbHVtbnMgPSB2b2lkIDA7XG4gICAgdGhpcy5fZGVmYXVsdENvbmZpZ3MgPSB2b2lkIDA7XG5cbiAgICB0aGlzLl9sb2FkRm4gPSB2b2lkIDA7XG4gICAgdGhpcy5fY2hhbmdlRm4gPSB2b2lkIDA7XG4gIH1cblxuICBwcml2YXRlIF91cGRhdGVDb2xzcGFucyhjb25maWcsIHVwZGF0ZUZsYWcpIHtcbiAgICB0aGlzLl9jb2x1bW5zLmZvckVhY2goKGNvbCwgaW5kZXgpID0+IHtcblxuICAgICAgaWYgKGNvbFtjb25maWddLmNvbHNwYW4gIT09IHZvaWQgMCkge1xuICAgICAgICBjb25zdCBzcGFuVG8gPSBpbmRleCArICtjb2xbY29uZmlnXS5jb2xzcGFuO1xuXG4gICAgICAgIGlmICghaXNOdW1iZXIoc3BhblRvKSkge1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLl9jb2x1bW5zW2luZGV4XVt1cGRhdGVGbGFnXSA9IGZhbHNlO1xuXG4gICAgICAgIGZvciAobGV0IGkgPSBpbmRleCArIDE7IGkgPCBzcGFuVG87IGkrKykge1xuICAgICAgICAgIGlmICh0aGlzLl9jb2x1bW5zW2ldKSB7XG4gICAgICAgICAgICB0aGlzLl9jb2x1bW5zW2ldW3VwZGF0ZUZsYWddID0gdHJ1ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KVxuICB9XG5cbn1cbiJdfQ==
|
|
185
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sdW1ucy1jb250cm9sbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2FwcC9jbGFzc2VzL2NvbHVtbnMtY29udHJvbGxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3JDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVoRCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFXaEQsTUFBTSxPQUFPLGlCQUFpQjtJQXNCNUI7UUFwQk8sbUJBQWMsR0FBYSxFQUFFLENBQUM7UUFFN0IsZ0JBQVcsR0FBRyxFQUFFLENBQUM7UUFPakIsa0JBQWEsR0FBRyxLQUFLLENBQUM7UUFDdEIsc0JBQWlCLEdBQUcsS0FBSyxDQUFDO1FBQzFCLHdCQUFtQixHQUFHLEtBQUssQ0FBQztRQUM1QixvQkFBZSxHQUFHLEtBQUssQ0FBQztRQUN4QixlQUFVLEdBQUcsS0FBSyxDQUFDO1FBQ25CLGVBQVUsR0FBRyxLQUFLLENBQUM7UUFDbkIsYUFBUSxHQUFhLEVBQUUsQ0FBQztRQUd4QixjQUFTLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztJQUV6QixDQUFDO0lBRWhCLElBQVcsT0FBTztRQUNoQixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDL0IsQ0FBQztJQUVELElBQVcsZ0JBQWdCO1FBQ3pCLE1BQU0sY0FBYyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsc0JBQXNCLENBQUM7UUFDckQsTUFBTSx1QkFBdUIsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLHlCQUF5QixDQUFDO1FBQ2pFLE1BQU0sZ0JBQWdCLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQztRQUVq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c291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNOdW1iZXIgfSBmcm9tICdsb2Rhc2gtZXMnO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdGFrZVVudGlsLCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IENvbHVtbiB9IGZyb20gJy4uL21vZGVscy9jb2x1bW4ubW9kZWwnO1xuaW1wb3J0IHtcbiAgRnNMaXN0Q29sdW1uQ2hhbmdlRm4sXG4gIEZzTGlzdENvbHVtbkNvbmZpZyxcbiAgRnNMaXN0Q29sdW1uRGlzYWJsZWRGbixcbiAgRnNMaXN0Q29sdW1uTG9hZEZuLFxuICBGc0xpc3RDb2x1bW5UaXRsZUZuLFxuICBGc0xpc3RDb2x1bW5Ub29sdGlwRm4sXG59IGZyb20gJy4uL2ludGVyZmFjZXMvbGlzdGNvbmZpZy5pbnRlcmZhY2UnO1xuXG5cbmV4cG9ydCBjbGFzcyBDb2x1bW5zQ29udHJvbGxlciB7XG5cbiAgcHVibGljIHZpc2libGVDb2x1bW5zOiBDb2x1bW5bXSA9IFtdO1xuXG4gIHByaXZhdGUgX3RoZWFkQ2xhc3MgPSAnJztcbiAgcHJpdmF0ZSBfbG9hZEZuOiBGc0xpc3RDb2x1bW5Mb2FkRm47XG4gIHByaXZhdGUgX2NoYW5nZUZuOiBGc0xpc3RDb2x1bW5DaGFuZ2VGbjtcbiAgcHJpdmF0ZSBfY3VzdG9taXplRmllbGRUaXRsZUZuOiBGc0xpc3RDb2x1bW5UaXRsZUZuO1xuICBwcml2YXRlIF9jdXN0b21pemVGaWVsZERpc2FibGVkRm46IEZzTGlzdENvbHVtbkRpc2FibGVkRm47XG4gIHByaXZhdGUgX2NvbHVtblRvb2x0aXBGbjogRnNMaXN0Q29sdW1uVG9vbHRpcEZuO1xuXG4gIHByaXZhdGUgX2lzQ29uZmlndXJlZCA9IGZhbHNlO1xuICBwcml2YXRlIF9sb2FkRm5Db25maWd1cmVkID0gZmFsc2U7XG4gIHByaXZhdGUgX2NoYW5nZUZuQ29uZmlndXJlZCA9IGZhbHNlO1xuICBwcml2YXRlIF9jb2x1bW5zRmV0Y2hlZCA9IGZhbHNlO1xuICBwcml2YXRlIF9oYXNIZWFkZXIgPSBmYWxzZTtcbiAgcHJpdmF0ZSBfaGFzRm9vdGVyID0gZmFsc2U7XG4gIHByaXZhdGUgX2NvbHVtbnM6IENvbHVtbltdID0gW107XG4gIHByaXZhdGUgX2RlZmF1bHRDb25maWdzO1xuXG4gIHByaXZhdGUgX2Rlc3Ryb3kkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICBjb25zdHJ1Y3RvcigpIHt9XG5cbiAgcHVibGljIGdldCBjb2x1bW5zKCkge1xuICAgIHJldHVybiB0aGlzLl9jb2x1bW5zLnNsaWNlKCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGNvbHVtbnNGb3JEaWFsb2coKSB7XG4gICAgY29uc3QgaGFzQ3VzdG9tVGl0bGUgPSAhIXRoaXMuX2N1c3RvbWl6ZUZpZWxkVGl0bGVGbjtcbiAgICBjb25zdCBoYXNDdXN0b21EaXNhYmxlZFN0YXR1cyA9ICEhdGhpcy5fY3VzdG9taXplRmllbGREaXNhYmxlZEZuO1xuICAgIGNvbnN0IGhhc0N1c3RvbVRvb2x0aXAgPSAhIXRoaXMuX2NvbHVtblRvb2x0aXBGbjtcblxuICAgIHJldHVybiB0aGlzLl9jb2x1bW5zXG4gICAgICAuZmlsdGVyKChjb2x1bW4pID0+IGNvbHVtbi5jdXN0b21pemUgJiYgISFjb2x1bW4ubmFtZSlcbiAgICAgIC5tYXAoKGNvbHVtbikgPT4ge1xuICAgICAgICBjb25zdCB0aXRsZSA9IGhhc0N1c3RvbVRpdGxlXG4gICAgICAgICAgPyB0aGlzLl9jdXN0b21pemVGaWVsZFRpdGxlRm4oY29sdW1uLm5hbWUsIGNvbHVtbi50aXRsZSlcbiAgICAgICAgICA6IGNvbHVtbi5uYW1lO1xuXG4gICAgICAgIGNvbnN0IGRpc2FibGVkID0gaGFzQ3VzdG9tRGlzYWJsZWRTdGF0dXNcbiAgICAgICAgICA/IHRoaXMuX2N1c3RvbWl6ZUZpZWxkRGlzYWJsZWRGbihjb2x1bW4ubmFtZSlcbiAgICAgICAgICA6IGZhbHNlO1xuXG4gICAgICAgIGNvbnN0IHRvb2x0aXAgPSBoYXNDdXN0b21Ub29sdGlwXG4gICAgICAgICAgPyB0aGlzLl9jb2x1bW5Ub29sdGlwRm4oY29sdW1uLm5hbWUsIGNvbHVtbi5zaG93LCBkaXNhYmxlZClcbiAgICAgICAgICA6IHZvaWQgMDtcblxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIHRlbXBsYXRlOiBjb2x1bW4uaGVhZGVyVGVtcGxhdGUsXG4gICAgICAgICAgbmFtZTogY29sdW1uLm5hbWUsXG4gICAgICAgICAgc2hvdzogY29sdW1uLnNob3csXG4gICAgICAgICAgdGl0bGU6IHRpdGxlLFxuICAgICAgICAgIGRpc2FibGVkOiBkaXNhYmxlZCxcbiAgICAgICAgICB0b29sdGlwOiB0b29sdGlwLFxuICAgICAgICB9XG4gICAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgY29sdW1uc0ZldGNoZWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2NvbHVtbnNGZXRjaGVkO1xuICB9XG5cbiAgcHVibGljIGdldCBoYXNIZWFkZXIoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2hhc0hlYWRlcjtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaGFzRm9vdGVyKCkge1xuICAgIHJldHVybiB0aGlzLl9oYXNGb290ZXI7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHRoZWFkQ2xhc3MoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3RoZWFkQ2xhc3M7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGNvbmZpZ3VyZWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2lzQ29uZmlndXJlZDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgbG9hZEZuQ29uZmlndXJlZCgpIHtcbiAgICByZXR1cm4gdGhpcy5fbG9hZEZuQ29uZmlndXJlZDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgY2hhbmdlRm5Db25maWd1cmVkKCkge1xuICAgIHJldHVybiB0aGlzLl9jaGFuZ2VGbkNvbmZpZ3VyZWQ7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGNoYW5nZUZuKCkge1xuICAgIHJldHVybiB0aGlzLl9jaGFuZ2VGbjtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgdmlzaWJsZUNvbHVtbnNOYW1lcygpIHtcbiAgICByZXR1cm4gdGhpcy52aXNpYmxlQ29sdW1uc1xuICAgICAgLm1hcCgoY29sdW1uKSA9PiBjb2x1bW4ubmFtZSlcbiAgICAgIC5maWx0ZXIoKG5hbWUpID0+ICEhbmFtZSk7XG4gIH1cblxuICBwdWJsaWMgc2V0RGVmYXVsdHMoZGVmYXVsdHMpIHtcbiAgICB0aGlzLl9kZWZhdWx0Q29uZmlncyA9IGRlZmF1bHRzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCBkYXRhIGZyb20gbGlzdCBjb25maWdcbiAgICogQHBhcmFtIGNvbmZpZ1xuICAgKi9cbiAgcHVibGljIGluaXRDb25maWcoY29uZmlnOiBGc0xpc3RDb2x1bW5Db25maWcpIHtcbiAgICBpZiAoY29uZmlnKSB7XG4gICAgICBpZiAoY29uZmlnLmxvYWQpIHtcbiAgICAgICAgdGhpcy5fbG9hZEZuID0gY29uZmlnLmxvYWQ7XG4gICAgICAgIHRoaXMuX2xvYWRGbkNvbmZpZ3VyZWQgPSB0cnVlO1xuICAgICAgfVxuXG4gICAgICBpZiAoY29uZmlnLmNoYW5nZSkge1xuICAgICAgICB0aGlzLl9jaGFuZ2VGbiA9IGNvbmZpZy5jaGFuZ2U7XG4gICAgICAgIHRoaXMuX2NoYW5nZUZuQ29uZmlndXJlZCA9IHRydWU7XG4gICAgICB9XG5cbiAgICAgIGlmIChjb25maWcudGl0bGUpIHtcbiAgICAgICAgdGhpcy5fY3VzdG9taXplRmllbGRUaXRsZUZuID0gY29uZmlnLnRpdGxlO1xuICAgICAgfVxuXG4gICAgICBpZiAoY29uZmlnLmRpc2FibGVkKSB7XG4gICAgICAgIHRoaXMuX2N1c3RvbWl6ZUZpZWxkRGlzYWJsZWRGbiA9IGNvbmZpZy5kaXNhYmxlZDtcbiAgICAgIH1cblxuICAgICAgaWYgKGNvbmZpZy50b29sdGlwKSB7XG4gICAgICAgIHRoaXMuX2NvbHVtblRvb2x0aXBGbiA9IGNvbmZpZy50b29sdGlwO1xuICAgICAgfVxuXG4gICAgICB0aGlzLl9pc0NvbmZpZ3VyZWQgPSB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBCYXNlIGluaXRpYWxpemF0aW9uIGZvciBjb2x1bW5zXG4gICAqIEBwYXJhbSB0ZW1wbGF0ZXNcbiAgICovXG4gIHB1YmxpYyBpbml0aWFsaXplQ29sdW1ucyh0ZW1wbGF0ZXMpIHtcbiAgICB0aGlzLl9jb2x1bW5zID0gW107XG5cbiAgICB0ZW1wbGF0ZXMuZm9yRWFjaCgoY29sdW1uKSA9PiB7XG4gICAgICBjb25zdCBjb2wgPSBuZXcgQ29sdW1uKGNvbHVtbiwgdGhpcy5fZGVmYXVsdENvbmZpZ3MpO1xuXG5cbiAgICAgIGlmIChjb2wuaGVhZGVyVGVtcGxhdGUgfHwgY29sLnRpdGxlKSB7XG4gICAgICAgIHRoaXMuX2hhc0hlYWRlciA9IHRydWU7XG4gICAgICB9XG4gICAgICBpZiAoY29sLmZvb3RlclRlbXBsYXRlKSB7XG4gICAgICAgIHRoaXMuX2hhc0Zvb3RlciA9IHRydWU7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuX2NvbHVtbnMucHVzaChjb2wpO1xuICAgIH0pO1xuXG4gICAgdGhpcy5fdGhlYWRDbGFzcyA9IHRoaXMuaGFzSGVhZGVyID8gJ2hhcy1oZWFkZXInIDogJyc7XG5cbiAgICB0aGlzLl91cGRhdGVDb2xzcGFucygnaGVhZGVyQ29uZmlncycsICdoZWFkZXJDb2xzcGFubmVkJyk7XG4gICAgdGhpcy5fdXBkYXRlQ29sc3BhbnMoJ2dyb3VwQ2VsbENvbmZpZ3MnLCAnZ3JvdXBDZWxsQ29sc3Bhbm5lZCcpO1xuICAgIHRoaXMuX3VwZGF0ZUNvbHNwYW5zKCdjZWxsQ29uZmlncycsICdjZWxsQ29sc3Bhbm5lZCcpO1xuICAgIHRoaXMuX3VwZGF0ZUNvbHNwYW5zKCdmb290ZXJDb25maWdzJywgJ2Zvb3RlckNvbHNwYW5uZWQnKTtcblxuICAgIHRoaXMudXBkYXRlVmlzaWJsZUNvbHVtbnMoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBMb2FkIHZpc2libGl0eSBjb25maWcgZm9yIGNvbHVtbnMgZnJvbSByZW1vdGVcbiAgICovXG4gIHB1YmxpYyBsb2FkUmVtb3RlQ29sdW1uQ29uZmlncygpIHtcbiAgICByZXR1cm4gdGhpcy5fbG9hZEZuKClcbiAgICAgIC5waXBlKFxuICAgICAgICB0YWtlVW50aWwodGhpcy5fZGVzdHJveSQpLFxuICAgICAgICB0YXAoKGNvbHVtbkNvbmZpZ3MpID0+IHtcbiAgICAgICAgICB0aGlzLl9jb2x1bW5zRmV0Y2hlZCA9IHRydWU7XG4gICAgICAgICAgdGhpcy51cGRhdGVWaXNpYmlsaXR5Rm9yQ29scyhjb2x1bW5Db25maWdzKTtcbiAgICAgICAgfSlcbiAgICAgIClcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgdmlzaWJsZSBjb2x1bW5zIGJhc2VkIG9uIGN1cnJlbnQgY29sdW1ucyBzaG93IHN0YXR1c1xuICAgKi9cbiAgcHVibGljIHVwZGF0ZVZpc2libGVDb2x1bW5zKCkge1xuICAgIHRoaXMudmlzaWJsZUNvbHVtbnMgPVxuICAgICAgdGhpcy5fY29sdW1ucy5maWx0ZXIoKGNvbHVtbikgPT4gY29sdW1uLnNob3cpIHx8IFtdO1xuICB9XG5cbiAgLyoqXG4gICAqIFVwZGF0ZSB2aXNpYmlsaXR5IGJhc2VkIG9uIHBhc3NlZCBjb25maWdcbiAgICogQHBhcmFtIGNvbHVtbnNDb25maWdcbiAgICovXG4gIHB1YmxpYyB1cGRhdGVWaXNpYmlsaXR5Rm9yQ29scyhjb2x1bW5zQ29uZmlnKSB7XG4gICAgY29sdW1uc0NvbmZpZy5mb3JFYWNoKChjb2x1bW5Db25maWcpID0+IHtcbiAgICAgIGNvbnN0IGNvbCA9IHRoaXMuX2NvbHVtbnNcbiAgICAgICAgLmZpbmQoKGNvbHVtbikgPT4gY29sdW1uLm5hbWUgPT09IGNvbHVtbkNvbmZpZy5uYW1lKTtcblxuICAgICAgaWYgKGNvbCkge1xuICAgICAgICBjb2wuc2hvdyA9IGNvbHVtbkNvbmZpZy5zaG93O1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgdGhpcy51cGRhdGVWaXNpYmxlQ29sdW1ucygpO1xuICB9XG5cbiAgcHVibGljIGRlc3Ryb3koKSB7XG4gICAgdGhpcy5fZGVzdHJveSQubmV4dCgpO1xuICAgIHRoaXMuX2Rlc3Ryb3kkLmNvbXBsZXRlKCk7XG5cbiAgICB0aGlzLl9jb2x1bW5zID0gdm9pZCAwO1xuICAgIHRoaXMudmlzaWJsZUNvbHVtbnMgPSB2b2lkIDA7XG4gICAgdGhpcy5fZGVmYXVsdENvbmZpZ3MgPSB2b2lkIDA7XG5cbiAgICB0aGlzLl9sb2FkRm4gPSB2b2lkIDA7XG4gICAgdGhpcy5fY2hhbmdlRm4gPSB2b2lkIDA7XG4gIH1cblxuICBwcml2YXRlIF91cGRhdGVDb2xzcGFucyhjb25maWcsIHVwZGF0ZUZsYWcpIHtcbiAgICB0aGlzLl9jb2x1bW5zLmZvckVhY2goKGNvbCwgaW5kZXgpID0+IHtcblxuICAgICAgaWYgKGNvbFtjb25maWddLmNvbHNwYW4gIT09IHZvaWQgMCkge1xuICAgICAgICBjb25zdCBzcGFuVG8gPSBpbmRleCArICtjb2xbY29uZmlnXS5jb2xzcGFuO1xuXG4gICAgICAgIGlmICghaXNOdW1iZXIoc3BhblRvKSkge1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLl9jb2x1bW5zW2luZGV4XVt1cGRhdGVGbGFnXSA9IGZhbHNlO1xuXG4gICAgICAgIGZvciAobGV0IGkgPSBpbmRleCArIDE7IGkgPCBzcGFuVG87IGkrKykge1xuICAgICAgICAgIGlmICh0aGlzLl9jb2x1bW5zW2ldKSB7XG4gICAgICAgICAgICB0aGlzLl9jb2x1bW5zW2ldW3VwZGF0ZUZsYWddID0gdHJ1ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KVxuICB9XG5cbn1cbiJdfQ==
|
|
@@ -67,7 +67,7 @@ export class DataController {
|
|
|
67
67
|
if (group) {
|
|
68
68
|
this._groupByFn = group.groupBy;
|
|
69
69
|
this._compareByFn = group.compareBy;
|
|
70
|
-
this._initialExpand = (_a = group.initialExpand
|
|
70
|
+
this._initialExpand = (_a = group.initialExpand) !== null && _a !== void 0 ? _a : true;
|
|
71
71
|
// group mode enabled by default
|
|
72
72
|
this._groupEnabled = (group.enabled !== void 0)
|
|
73
73
|
? group.enabled
|
|
@@ -315,4 +315,4 @@ export class DataController {
|
|
|
315
315
|
}, []);
|
|
316
316
|
}
|
|
317
317
|
}
|
|
318
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1jb250cm9sbGVyLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGZpcmVzdGl0Y2gvbGlzdC8iLCJzb3VyY2VzIjpbImFwcC9jbGFzc2VzL2RhdGEtY29udHJvbGxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNoRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFFakQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQU1qRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDbkQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ25ELE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHcEMsTUFBTSxPQUFPLGNBQWM7SUFzQnpCO1FBcEJpQixrQkFBYSxHQUFHLElBQUksZUFBZSxDQUFRLEVBQUUsQ0FBQyxDQUFDO1FBQy9DLGtCQUFhLEdBQUcsSUFBSSxPQUFPLEVBQVMsQ0FBQztRQUNyQyx1QkFBa0IsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO1FBRWxELFdBQU0sR0FBRyxJQUFJLEdBQUcsRUFBRSxDQUFDO1FBQ25CLGVBQVUsR0FBVSxFQUFFLENBQUM7UUFLdkIsbUJBQWMsR0FBRyxJQUFJLENBQUM7UUFDdEIsa0JBQWEsR0FBRyxLQUFLLENBQUM7UUFLdEIsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUVSLGNBQVMsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO0lBRWxDLENBQUM7SUFFaEIsSUFBSSxZQUFZO1FBQ2QsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDO0lBQzVCLENBQUM7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QUMsQ0FBQzthQUMvQjtRQUNILENBQUMsQ0FBQyxDQUFDO1FBR0gsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUM7YUFDcEMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLElBQUksRUFBRSxFQUFFO1lBQ3BCLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRTtnQkFDaEIsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7YUFDbEM7aUJBQU07Z0JBQ0wsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQzthQUNoQjtZQUVELE9BQU8sR0FBRyxDQUFDO1FBQ2IsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ1gsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBpc0Z1bmN0aW9uLCBpc09iamVjdCB9IGZyb20gJ2xvZGFzaC1lcyc7XG5cbmltcG9ydCB7IEZzTGlzdFN0YXRlIH0gZnJvbSAnLi4vZW51bXMvc3RhdGUuZW51bSc7XG5pbXBvcnQgeyBSb3dUeXBlIH0gZnJvbSAnLi4vZW51bXMvcm93LXR5cGUuZW51bSc7XG5pbXBvcnQge1xuICBGc0xpc3RBYnN0cmFjdFJvdyxcbiAgRnNMaXN0R3JvdXBDb25maWcsXG4gIEZzTGlzdFRyYWNrQnlUYXJnZXRSb3dGblxufSBmcm9tICcuLi9pbnRlcmZhY2VzL2xpc3Rjb25maWcuaW50ZXJmYWNlJztcbmltcG9ydCB7IEdyb3VwUm93IH0gZnJvbSAnLi4vbW9kZWxzL3Jvdy9ncm91cC1yb3cnO1xuaW1wb3J0IHsgQ2hpbGRSb3cgfSBmcm9tICcuLi9tb2RlbHMvcm93L2NoaWxkLXJvdyc7XG5pbXBvcnQgeyBSb3cgfSBmcm9tICcuLi9tb2RlbHMvcm93JztcblxuXG5leHBvcnQgY2xhc3MgRGF0YUNvbnRyb2xsZXIge1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX3Zpc2libGVSb3dzJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Um93W10+KFtdKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfcm93c1JlbW92ZWQkID0gbmV3IFN1YmplY3Q8Um93W10+KCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3JlbW90ZVJvd3NDaGFuZ2UkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICBwcml2YXRlIF9zdG9yZSA9IG5ldyBNYXAoKTtcbiAgcHJpdmF0ZSBfcm93c1N0YWNrOiBSb3dbXSA9IFtdO1xuICBwcml2YXRlIF9vcGVyYXRpb246IEZzTGlzdFN0YXRlO1xuXG4gIHByaXZhdGUgX2dyb3VwQnlGbjogKHJvdykgPT4gYW55W107XG4gIHByaXZhdGUgX2NvbXBhcmVCeUZuOiAoZ3JvdXApID0+IGFueTtcbiAgcHJpdmF0ZSBfaW5pdGlhbEV4cGFuZCA9IHRydWU7XG4gIHByaXZhdGUgX2dyb3VwRW5hYmxlZCA9IGZhbHNlO1xuXG4gIHByaXZhdGUgX2luZmluaXR5U2Nyb2xsRW5hYmxlZDogYm9vbGVhbjtcbiAgcHJpdmF0ZSBfbG9hZE1vcmVFbmFibGVkOiBib29sZWFuO1xuXG4gIHByaXZhdGUgX2hhc0RhdGEgPSBmYWxzZTtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9kZXN0cm95JCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgY29uc3RydWN0b3IoKSB7fVxuXG4gIGdldCB2aXNpYmxlUm93cyQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3Zpc2libGVSb3dzJDtcbiAgfVxuXG4gIGdldCB2aXNpYmxlUm93cygpIHtcbiAgICByZXR1cm4gdGhpcy5fdmlzaWJsZVJvd3MkLmdldFZhbHVlKCk7XG4gIH1cblxuICBnZXQgdmlzaWJsZVJvd3NEYXRhKCkge1xuICAgIHJldHVybiB0aGlzLnZpc2libGVSb3dzLm1hcCgocm93KSA9PiByb3cuZGF0YSk7XG4gIH1cblxuICBnZXQgcm93c1N0YWNrKCkge1xuICAgIHJldHVybiB0aGlzLl9yb3dzU3RhY2suc2xpY2UoKTtcbiAgfVxuXG4gIGdldCBncm91cEVuYWJsZWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2dyb3VwRW5hYmxlZDtcbiAgfVxuXG4gIHNldCBncm91cEVuYWJsZWQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9ncm91cEVuYWJsZWQgPSB2YWx1ZTtcbiAgfVxuXG4gIGdldCByZW1vdGVSb3dzQ2hhbmdlJCgpIHtcbiAgICByZXR1cm4gdGhpcy5fcmVtb3RlUm93c0NoYW5nZSQucGlwZShcbiAgICAgIHRha2VVbnRpbCh0aGlzLl9kZXN0cm95JCksXG4gICAgKTtcbiAgfVxuXG4gIGdldCByb3dzUmVtb3ZlZCQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3Jvd3NSZW1vdmVkJC5waXBlKFxuICAgICAgdGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kkKSxcbiAgICApO1xuICB9XG5cbiAgZ2V0IGhhc0RhdGEoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2hhc0RhdGE7XG4gIH1cblxuICBnZXQgb3BlcmF0aW9uKCkge1xuICAgIHJldHVybiB0aGlzLl9vcGVyYXRpb247XG4gIH1cblxuICBzZXQgdmlzaWJsZVJvd3ModmFsdWU6IGFueVtdKSB7XG4gICAgdGhpcy5fdmlzaWJsZVJvd3MkLm5leHQodmFsdWUpO1xuICAgIHRoaXMuX2hhc0RhdGEgPSB0aGlzLnZpc2libGVSb3dzLmxlbmd0aCA+IDA7XG4gIH1cblxuICBnZXQgdmlzaWJsZVJvd3NDb3VudCgpIHtcbiAgICByZXR1cm4gdGhpcy52aXNpYmxlUm93cy5sZW5ndGg7XG4gIH1cblxuICBnZXQgaGFzR3JvdXBzKCkge1xuICAgIHJldHVybiB0aGlzLl9jb21wYXJlQnlGbiAmJiB0aGlzLl9ncm91cEJ5Rm47XG4gIH1cblxuICBnZXQgcmVvcmRlckRhdGEoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3Jvd3NTdGFja1xuICAgICAgLm1hcCgocm93KSA9PiByb3cuZ2V0UmVvcmRlckRhdGEoKSk7XG4gIH1cblxuICBwdWJsaWMgc2V0R3JvdXBDb25maWcoZ3JvdXA6IEZzTGlzdEdyb3VwQ29uZmlnKSB7XG4gICAgaWYgKGdyb3VwKSB7XG4gICAgICB0aGlzLl9ncm91cEJ5Rm4gPSBncm91cC5ncm91cEJ5O1xuICAgICAgdGhpcy5fY29tcGFyZUJ5Rm4gPSBncm91cC5jb21wYXJlQnk7XG4gICAgICB0aGlzLl9pbml0aWFsRXhwYW5kID0gZ3JvdXAuaW5pdGlhbEV4cGFuZCA/PyB0cnVlO1xuXG4gICAgICAvLyBncm91cCBtb2RlIGVuYWJsZWQgYnkgZGVmYXVsdFxuICAgICAgdGhpcy5fZ3JvdXBFbmFibGVkID0gKGdyb3VwLmVuYWJsZWQgIT09IHZvaWQgMClcbiAgICAgICAgPyBncm91cC5lbmFibGVkXG4gICAgICAgIDogdHJ1ZTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgc2V0QWRkaXRpb25hbENvbmZpZ3MoY29uZmlnczogeyBzY3JvbGxhYmxlOiBib29sZWFuLCBsb2FkTW9yZUVuYWJsZWQ6IGJvb2xlYW4gfSkge1xuICAgIHRoaXMuX2luZmluaXR5U2Nyb2xsRW5hYmxlZCA9IGNvbmZpZ3Muc2Nyb2xsYWJsZTtcbiAgICB0aGlzLl9sb2FkTW9yZUVuYWJsZWQgPSBjb25maWdzLmxvYWRNb3JlRW5hYmxlZDtcbiAgfVxuXG4gIC8qKlxuICAgKiBSb3dzIHdoYXQgd2FzIHJlY2VpdmVkIGZyb20gZmV0Y2ggZnVuY3Rpb25cbiAgICogQHBhcmFtIHJvd3NcbiAgICovXG4gIHB1YmxpYyBzZXRSb3dzRnJvbVJlc3BvbnNlKHJvd3M6IGFueVtdKSB7XG4gICAgaWYgKHRoaXMuX2luZmluaXR5U2Nyb2xsRW5hYmxlZCkge1xuICAgICAgc3dpdGNoICh0aGlzLl9vcGVyYXRpb24pIHtcbiAgICAgICAgY2FzZSBGc0xpc3RTdGF0ZS5GaWx0ZXI6XG4gICAgICAgIGNhc2UgRnNMaXN0U3RhdGUuUmVsb2FkOlxuICAgICAgICBjYXNlIEZzTGlzdFN0YXRlLlNvcnQ6IHtcbiAgICAgICAgICB0aGlzLl91cGRhdGVSb3dzU3RhY2socm93cyk7XG4gICAgICAgIH0gYnJlYWs7XG5cbiAgICAgICAgZGVmYXVsdDoge1xuICAgICAgICAgIHRoaXMuX2V4dGVuZFJvd3NTdGFjayhyb3dzKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICB0aGlzLl9yZW1vdGVSb3dzQ2hhbmdlJC5uZXh0KCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmIChcbiAgICAgICAgdGhpcy5fb3BlcmF0aW9uID09PSBGc0xpc3RTdGF0ZS5Mb2FkTW9yZSB8fFxuICAgICAgICAodGhpcy5fb3BlcmF0aW9uID09PSBGc0xpc3RTdGF0ZS5QYWdlQ2hhbmdlICYmIHRoaXMuX2xvYWRNb3JlRW5hYmxlZClcbiAgICAgICkge1xuICAgICAgICB0aGlzLl9leHRlbmRSb3dzU3RhY2socm93cyk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLl91cGRhdGVSb3dzU3RhY2socm93cyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpcy5fb3BlcmF0aW9uID0gRnNMaXN0U3RhdGUuSWRsZTtcblxuICAgIHRoaXMuX3VwZGF0ZVZpc2libGVSb3dzKCk7XG4gIH1cblxuICAvKipcbiAgICogU2V0IGN1cnJlbnQgb3BlcmF0aW9uIGZvciBsaXN0IGRhdGEgZmxvd1xuICAgKiBAcGFyYW0gdmFsdWVcbiAgICovXG4gIHB1YmxpYyBzZXRPcGVyYXRpb24odmFsdWU6IEZzTGlzdFN0YXRlKSB7XG4gICAgdGhpcy5fb3BlcmF0aW9uID0gdmFsdWU7XG4gIH1cblxuICAvKipcbiAgICogUmVtb3ZlIHJvd3MgZnJvbSB2aXNpYmxlXG4gICAqL1xuICBwdWJsaWMgY2xlYXJSb3dzKCkge1xuICAgIHRoaXMudmlzaWJsZVJvd3MgPSBbXTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXBsYWNlIGRhdGEgZm9yIHNwZWNpZmllZCByb3dcbiAgICogQHBhcmFtIHRhcmdldFJvd1xuICAgKiBAcGFyYW0gdHJhY2tCeVxuICAgKi9cbiAgcHVibGljIHJlcGxhY2VEYXRhKFxuICAgIHRhcmdldFJvdzogRnNMaXN0QWJzdHJhY3RSb3csXG4gICAgdHJhY2tCeT86IEZzTGlzdFRyYWNrQnlUYXJnZXRSb3dGblxuICApIHtcbiAgICBjb25zdCByb3dJbmRleCA9IHRoaXMuX3Jvd3NTdGFjay5maW5kSW5kZXgoKGxpc3RSb3cpID0+IHtcbiAgICAgIHJldHVybiB0cmFja0J5KGxpc3RSb3cuZGF0YSwgdGFyZ2V0Um93KTtcbiAgICB9KTtcblxuICAgIGlmIChyb3dJbmRleCA+IC0xKSB7XG4gICAgICB0aGlzLl9yb3dzU3RhY2tbcm93SW5kZXhdID0gbmV3IFJvdyhcbiAgICAgICAgdGFyZ2V0Um93LFxuICAgICAgICBSb3dUeXBlLlNpbXBsZSxcbiAgICAgICAgeyBpbml0aWFsRXhwYW5kOiB0aGlzLl9pbml0aWFsRXhwYW5kIH1cbiAgICAgICk7XG5cbiAgICAgIHRoaXMuX3VwZGF0ZVZpc2libGVSb3dzKCk7XG5cbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gIH1cblxuICAvKipcbiAgICogVXBkYXRlIGRhdGEgZm9yIHNwZWNpZmllZCByb3dcbiAgICogQHBhcmFtIHJvd3NcbiAgICogQHBhcmFtIHRyYWNrQnlcbiAgICovXG4gIHB1YmxpYyB1cGRhdGVEYXRhKFxuICAgIHJvd3M6IEZzTGlzdEFic3RyYWN0Um93IHwgRnNMaXN0QWJzdHJhY3RSb3dbXSxcbiAgICB0cmFja0J5PzogRnNMaXN0VHJhY2tCeVRhcmdldFJvd0ZuLFxuICApOiBib29sZWFuIHtcbiAgICBpZiAoQXJyYXkuaXNBcnJheShyb3dzKSkge1xuICAgICAgbGV0IHVwZGF0ZVN1Y2Nlc3MgPSBmYWxzZTtcblxuICAgICAgcm93cy5mb3JFYWNoKChpdGVtKSA9PiB7XG4gICAgICAgIGlmICh0aGlzLnVwZGF0ZVJvdyhpdGVtLCB0cmFja0J5KSkge1xuICAgICAgICAgIHVwZGF0ZVN1Y2Nlc3MgPSB0cnVlO1xuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgICAgdGhpcy5fdXBkYXRlVmlzaWJsZVJvd3MoKTtcblxuICAgICAgcmV0dXJuIHVwZGF0ZVN1Y2Nlc3M7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IHVwZGF0ZWQgPSB0aGlzLnVwZGF0ZVJvdyhyb3dzLCB0cmFja0J5KTtcblxuICAgICAgdGhpcy5fdXBkYXRlVmlzaWJsZVJvd3MoKTtcblxuICAgICAgcmV0dXJuIHVwZGF0ZWQ7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFJlbW92ZSBkYXRhIGZvciBzcGVjaWZpZWQgcm93XG4gICAqIEBwYXJhbSBkYXRhXG4gICAqL1xuICBwdWJsaWMgcmVtb3ZlRGF0YShkYXRhOiBGc0xpc3RBYnN0cmFjdFJvdyB8IEZzTGlzdEFic3RyYWN0Um93W10gfCBGc0xpc3RUcmFja0J5VGFyZ2V0Um93Rm4pOiBib29sZWFuIHtcbiAgICBjb25zdCByZW1vdmVkUm93cyA9IFtdO1xuXG4gICAgY29uc3QgZGVmYXVsdFRyYWNrQnkgPSAocm93LCB0YXJnZXQpID0+IHtcbiAgICAgIHJldHVybiByb3cgPT09IHRhcmdldDtcbiAgICB9O1xuXG4gICAgaWYgKEFycmF5LmlzQXJyYXkoZGF0YSkpIHtcbiAgICAgIC8vXG4gICAgICBkYXRhLmZvckVhY2goKGl0ZW0pID0+IHtcbiAgICAgICAgcmVtb3ZlZFJvd3MucHVzaCguLi50aGlzLnJlbW92ZVJvdyhpdGVtLCBkZWZhdWx0VHJhY2tCeSkpO1xuICAgICAgfSk7XG4gICAgfSBlbHNlIGlmIChpc0Z1bmN0aW9uKGRhdGEpKSB7XG4gICAgICByZW1vdmVkUm93cy5wdXNoKC4uLnRoaXMucmVtb3ZlUm93KG51bGwsIChkYXRhIGFzIEZzTGlzdFRyYWNrQnlUYXJnZXRSb3dGbikpKTtcbiAgICB9IGVsc2UgaWYgKGlzT2JqZWN0KGRhdGEpKSB7XG4gICAgICByZW1vdmVkUm93cy5wdXNoKC4uLnRoaXMucmVtb3ZlUm93KGRhdGEsIGRlZmF1bHRUcmFja0J5KSk7XG4gICAgfVxuXG4gICAgaWYgKHJlbW92ZWRSb3dzLmxlbmd0aCA+IDApIHtcbiAgICAgIHRoaXMuX3VwZGF0ZVZpc2libGVSb3dzKCk7XG5cbiAgICAgIHRoaXMuX3Jvd3NSZW1vdmVkJC5uZXh0KHJlbW92ZWRSb3dzKVxuICAgIH1cblxuICAgIHJldHVybiAhIXJlbW92ZWRSb3dzLmxlbmd0aDtcbiAgfVxuXG4gIHB1YmxpYyBzd2FwUm93cyhyb3cxLCByb3cyKSB7XG4gICAgbGV0IHRtcEVsO1xuICAgIGNvbnN0IHJvd3NTdGFjayA9IHRoaXMuX3Jvd3NTdGFjaztcbiAgICBjb25zdCByb3cxR2xvYmFsSW5kZXggPSByb3dzU3RhY2suaW5kZXhPZihyb3cxKTtcbiAgICBjb25zdCByb3cyR2xvYmFsSW5kZXggPSByb3dzU3RhY2suaW5kZXhPZihyb3cyKTtcblxuICAgIHRtcEVsID0gcm93c1N0YWNrW3JvdzFHbG9iYWxJbmRleF07XG4gICAgcm93c1N0YWNrW3JvdzFHbG9iYWxJbmRleF0gPSByb3dzU3RhY2tbcm93Mkdsb2JhbEluZGV4XTtcbiAgICByb3dzU3RhY2tbcm93Mkdsb2JhbEluZGV4XSA9IHRtcEVsO1xuXG4gICAgdGhpcy5fcm93c1N0YWNrID0gWyAuLi5yb3dzU3RhY2sgXTtcbiAgfVxuXG4gIHB1YmxpYyBkZXN0cm95KCkge1xuICAgIHRoaXMuX2Rlc3Ryb3lSb3dzU3RhY2soKTtcbiAgICB0aGlzLl9zdG9yZS5jbGVhcigpO1xuXG4gICAgdGhpcy5fZGVzdHJveSQubmV4dCgpO1xuICAgIHRoaXMuX2Rlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gIH1cblxuICBwdWJsaWMgdG9nZ2xlUm93R3JvdXAocm93RGF0YSkge1xuICAgIGNvbnN0IHJvdyA9IHRoaXMudmlzaWJsZVJvd3MuZmluZCgodmlzaWJsZVJvdykgPT4gdmlzaWJsZVJvdy5kYXRhID09PSByb3dEYXRhICk7XG4gICAgcm93LnRvZ2dsZVJvd0V4cGFuZFN0YXR1cygpO1xuXG4gICAgdGhpcy5fdXBkYXRlVmlzaWJsZVJvd3MoKTtcbiAgfVxuXG4gIHByaXZhdGUgX3VwZGF0ZVJvd3NTdGFjayhyb3dzKSB7XG5cbiAgICB0aGlzLl9kZXN0cm95Um93c1N0YWNrKCk7XG5cbiAgICBpZiAodGhpcy5ncm91cEVuYWJsZWQpIHtcbiAgICAgIHRoaXMuX3N0b3JlLmNsZWFyKCk7XG4gICAgICB0aGlzLl9yb3dzU3RhY2sgPSBbLi4udGhpcy5ncm91cFJvd3NCeShyb3dzKV07XG4gICAgfSBlbHNlIHtcbiAgICAgIHJvd3MgPSByb3dzLm1hcCgocm93KSA9PiB7XG4gICAgICAgIHJldHVybiBuZXcgUm93KFxuICAgICAgICAgIHJvdyxcbiAgICAgICAgICBSb3dUeXBlLlNpbXBsZSxcbiAgICAgICAgICB7IGluaXRpYWxFeHBhbmQ6IHRoaXMuX2luaXRpYWxFeHBhbmQgfSxcbiAgICAgICAgKTtcbiAgICAgIH0pO1xuICAgICAgdGhpcy5fcm93c1N0YWNrID0gWy4uLnJvd3NdO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2V4dGVuZFJvd3NTdGFjayhyb3dzKSB7XG4gICAgaWYgKHRoaXMuZ3JvdXBFbmFibGVkKSB7XG4gICAgICB0aGlzLl9yb3dzU3RhY2sgPSBbLi4udGhpcy5ncm91cFJvd3NCeShyb3dzKV07XG4gICAgfSBlbHNlIHtcbiAgICAgIHJvd3MgPSByb3dzLm1hcCgocm93KSA9PiB7XG4gICAgICAgIHJldHVybiBuZXcgUm93KFxuICAgICAgICAgIHJvdyxcbiAgICAgICAgICBSb3dUeXBlLlNpbXBsZSxcbiAgICAgICAgICB7IGluaXRpYWxFeHBhbmQ6IHRoaXMuX2luaXRpYWxFeHBhbmQgfSxcbiAgICAgICAgKTtcbiAgICAgIH0pO1xuICAgICAgdGhpcy5fcm93c1N0YWNrID0gWy4uLnRoaXMuX3Jvd3NTdGFjaywgLi4ucm93c107XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfZGVzdHJveVJvd3NTdGFjaygpIHtcbiAgICB0aGlzLl9yb3dzU3RhY2suZm9yRWFjaCgocm93KSA9PiByb3cuZGVzdHJveSgpKTtcbiAgfVxuXG4gIHByaXZhdGUgX3VwZGF0ZVZpc2libGVSb3dzKCkge1xuICAgIHRoaXMudmlzaWJsZVJvd3MgPSB0aGlzLl9yb3dzU3RhY2tcbiAgICAgIC5maWx0ZXIoKHJvdykgPT4ge1xuICAgICAgICByZXR1cm4gIXJvdy5pc0NoaWxkIHx8IHJvdy52aXNpYmxlO1xuICAgICAgfSk7XG4gIH1cblxuICBwcml2YXRlIHVwZGF0ZVJvdyhcbiAgICB0YXJnZXRSb3c6IEZzTGlzdEFic3RyYWN0Um93LFxuICAgIHRyYWNrQnk/OiAobGlzdFJvdzogRnNMaXN0QWJzdHJhY3RSb3csIHRhcmdldFJvdz86IEZzTGlzdEFic3RyYWN0Um93KSA9PiBib29sZWFuKSB7XG5cbiAgICBpZiAodHJhY2tCeSA9PT0gdm9pZCAwKSB7XG4gICAgICB0cmFja0J5ID0gKHJvdywgdGFyZ2V0KSA9PiB7XG4gICAgICAgIHJldHVybiByb3cgPT09IHRhcmdldDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdCB0YXJnZXRJbmRleCA9IHRoaXMuX3Jvd3NTdGFjay5maW5kSW5kZXgoKGxpc3RSb3cpID0+IHRyYWNrQnkobGlzdFJvdy5kYXRhLCB0YXJnZXRSb3cpKTtcblxuICAgIGlmICh0YXJnZXRJbmRleCAhPT0gLTEpIHtcbiAgICAgIGNvbnN0IHVwZGF0ZVRhcmdldCA9IHRoaXMuX3Jvd3NTdGFja1t0YXJnZXRJbmRleF07XG4gICAgICBjb25zdCB1cGRhdGVkRGF0YSA9IE9iamVjdC5hc3NpZ24oe30sIHVwZGF0ZVRhcmdldC5kYXRhLCB0YXJnZXRSb3cpO1xuXG4gICAgICB0aGlzLl9yb3dzU3RhY2tbdGFyZ2V0SW5kZXhdID0gbmV3IFJvdyhcbiAgICAgICAgdXBkYXRlZERhdGEsXG4gICAgICAgIHVwZGF0ZVRhcmdldC50eXBlLFxuICAgICAgICB7XG4gICAgICAgICAgcGFyZW50OiB1cGRhdGVUYXJnZXQucGFyZW50LFxuICAgICAgICAgIGluaXRpYWxFeHBhbmQ6IHVwZGF0ZVRhcmdldC5leHBhbmRlZCxcbiAgICAgICAgfVxuICAgICAgKTtcblxuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlbW92ZSByb3cgZnJvbVxuICAgKiBAcGFyYW0gdGFyZ2V0Um93XG4gICAqIEBwYXJhbSB0cmFja0J5XG4gICAqL1xuICBwcml2YXRlIHJlbW92ZVJvdyhcbiAgICB0YXJnZXRSb3c6IEZzTGlzdEFic3RyYWN0Um93IHwgbnVsbCxcbiAgICB0cmFja0J5PzogRnNMaXN0VHJhY2tCeVRhcmdldFJvd0ZuXG4gICkge1xuXG4gICAgY29uc3Qgcm93cyA9IHRoaXMuX3Jvd3NTdGFjaztcbiAgICBjb25zdCByZW1vdmVkUm93cyA9IFtdO1xuXG4gICAgcm93cy5mb3JFYWNoKChsaXN0Um93LCBpbmRleCkgPT4ge1xuICAgICAgaWYgKHRyYWNrQnkobGlzdFJvdy5kYXRhLCB0YXJnZXRSb3cpKSB7XG4gICAgICAgIGNvbnN0IHJlbW92ZWRSb3cgPSByb3dzLnNwbGljZShpbmRleCwgMSk7XG5cbiAgICAgICAgcmVtb3ZlZFJvd3MucHVzaChyZW1vdmVkUm93KTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHJldHVybiByZW1vdmVkUm93cztcbiAgfVxuXG4gIC8qKlxuICAgKiBTcGxpdCBleGlzdGluZyByb3dzIGJ5IGdyb3VwcyBhbmQgc3RvcmUgdGhlbSBmb3IgZnV0dXJlIHVzZVxuICAgKi9cbiAgcHJpdmF0ZSBncm91cFJvd3NCeShyb3dzKSB7XG4gICAgaWYgKCF0aGlzLl9ncm91cEJ5Rm4gfHwgIXRoaXMuX2NvbXBhcmVCeUZuKSB7IHJldHVybiByb3dzIH1cblxuICAgIGxldCBudW1iZXJPZkdyb3VwcyA9IDA7XG5cbiAgICByb3dzLmZvckVhY2goKHJvdykgPT4ge1xuICAgICAgY29uc3QgbWFpbkdyb3VwID0gdGhpcy5fZ3JvdXBCeUZuKHJvdyk7XG4gICAgICBjb25zdCBtYWluR3JvdXBLZXkgPSB0aGlzLl9jb21wYXJlQnlGbihtYWluR3JvdXApO1xuXG4gICAgICBpZiAoIXRoaXMuX3N0b3JlLmhhcyhtYWluR3JvdXBLZXkpKSB7XG4gICAgICAgIGNvbnN0IGdyb3VwID0gbmV3IEdyb3VwUm93KFxuICAgICAgICAgIG1haW5Hcm91cCxcbiAgICAgICAgICB0aGlzLl9pbml0aWFsRXhwYW5kLFxuICAgICAgICApO1xuXG4gICAgICAgIGdyb3VwLmluZGV4ID0gbnVtYmVyT2ZHcm91cHM7XG4gICAgICAgIG51bWJlck9mR3JvdXBzKys7XG5cbiAgICAgICAgY29uc3QgY2hpbGRSb3cgPSBuZXcgQ2hpbGRSb3cocm93LCBncm91cCk7XG5cbiAgICAgICAgdGhpcy5fc3RvcmUuc2V0KG1haW5Hcm91cEtleSwgZ3JvdXApO1xuICAgICAgICBncm91cC5jaGlsZHJlbi5wdXNoKGNoaWxkUm93KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnN0IGdyb3VwID0gdGhpcy5fc3RvcmUuZ2V0KG1haW5Hcm91cEtleSk7XG4gICAgICAgIGNvbnN0IGNoaWxkUm93ID0gbmV3IENoaWxkUm93KHJvdywgZ3JvdXApO1xuXG4gICAgICAgIGdyb3VwLmNoaWxkcmVuLnB1c2goY2hpbGRSb3cpO1xuICAgICAgfVxuICAgIH0pO1xuXG5cbiAgICByZXR1cm4gQXJyYXkuZnJvbSh0aGlzLl9zdG9yZS52YWx1ZXMoKSlcbiAgICAgIC5yZWR1Y2UoKGFjYywgaXRlbSkgPT4ge1xuICAgICAgICBpZiAoaXRlbS5pc0dyb3VwKSB7XG4gICAgICAgICAgYWNjLnB1c2goaXRlbSwgLi4uaXRlbS5jaGlsZHJlbik7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgYWNjLnB1c2goaXRlbSk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gYWNjO1xuICAgICAgfSwgW10pO1xuICB9XG59XG4iXX0=
|
|
318
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1jb250cm9sbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2FwcC9jbGFzc2VzL2RhdGEtY29udHJvbGxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNoRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFFakQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQU1qRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDbkQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ25ELE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHcEMsTUFBTSxPQUFPLGNBQWM7SUFzQnpCO1FBcEJpQixrQkFBYSxHQUFHLElBQUksZUFBZSxDQUFRLEVBQUUsQ0FBQyxDQUFDO1FBQy9DLGtCQUFhLEdBQUcsSUFBSSxPQUFPLEVBQVMsQ0FBQztRQUNyQyx1QkFBa0IsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO1FBRWxELFdBQU0sR0FBRyxJQUFJLEdBQUcsRUFBRSxDQUFDO1FBQ25CLGVBQVUsR0FBVSxFQUFFLENBQUM7UUFLdkIsbUJBQWMsR0FBRyxJQUFJLENBQUM7UUFDdEIsa0JBQWEsR0FBRyxLQUFLLENBQUM7UUFLdEIsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUVSLGNBQVMsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO0lBRWxDLENBQUM7SUFFaEIsSUFBSSxZQUFZO1FBQ2QsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDO0lBQzVCLENBQUM7SUFFRCxJ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QzthQUMvQjtRQUNILENBQUMsQ0FBQyxDQUFDO1FBR0gsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUM7YUFDcEMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLElBQUksRUFBRSxFQUFFO1lBQ3BCLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRTtnQkFDaEIsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7YUFDbEM7aUJBQU07Z0JBQ0wsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQzthQUNoQjtZQUVELE9BQU8sR0FBRyxDQUFDO1FBQ2IsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ1gsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBpc0Z1bmN0aW9uLCBpc09iamVjdCB9IGZyb20gJ2xvZGFzaC1lcyc7XG5cbmltcG9ydCB7IEZzTGlzdFN0YXRlIH0gZnJvbSAnLi4vZW51bXMvc3RhdGUuZW51bSc7XG5pbXBvcnQgeyBSb3dUeXBlIH0gZnJvbSAnLi4vZW51bXMvcm93LXR5cGUuZW51bSc7XG5pbXBvcnQge1xuICBGc0xpc3RBYnN0cmFjdFJvdyxcbiAgRnNMaXN0R3JvdXBDb25maWcsXG4gIEZzTGlzdFRyYWNrQnlUYXJnZXRSb3dGblxufSBmcm9tICcuLi9pbnRlcmZhY2VzL2xpc3Rjb25maWcuaW50ZXJmYWNlJztcbmltcG9ydCB7IEdyb3VwUm93IH0gZnJvbSAnLi4vbW9kZWxzL3Jvdy9ncm91cC1yb3cnO1xuaW1wb3J0IHsgQ2hpbGRSb3cgfSBmcm9tICcuLi9tb2RlbHMvcm93L2NoaWxkLXJvdyc7XG5pbXBvcnQgeyBSb3cgfSBmcm9tICcuLi9tb2RlbHMvcm93JztcblxuXG5leHBvcnQgY2xhc3MgRGF0YUNvbnRyb2xsZXIge1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX3Zpc2libGVSb3dzJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Um93W10+KFtdKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfcm93c1JlbW92ZWQkID0gbmV3IFN1YmplY3Q8Um93W10+KCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3JlbW90ZVJvd3NDaGFuZ2UkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICBwcml2YXRlIF9zdG9yZSA9IG5ldyBNYXAoKTtcbiAgcHJpdmF0ZSBfcm93c1N0YWNrOiBSb3dbXSA9IFtdO1xuICBwcml2YXRlIF9vcGVyYXRpb246IEZzTGlzdFN0YXRlO1xuXG4gIHByaXZhdGUgX2dyb3VwQnlGbjogKHJvdykgPT4gYW55W107XG4gIHByaXZhdGUgX2NvbXBhcmVCeUZuOiAoZ3JvdXApID0+IGFueTtcbiAgcHJpdmF0ZSBfaW5pdGlhbEV4cGFuZCA9IHRydWU7XG4gIHByaXZhdGUgX2dyb3VwRW5hYmxlZCA9IGZhbHNlO1xuXG4gIHByaXZhdGUgX2luZmluaXR5U2Nyb2xsRW5hYmxlZDogYm9vbGVhbjtcbiAgcHJpdmF0ZSBfbG9hZE1vcmVFbmFibGVkOiBib29sZWFuO1xuXG4gIHByaXZhdGUgX2hhc0RhdGEgPSBmYWxzZTtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9kZXN0cm95JCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgY29uc3RydWN0b3IoKSB7fVxuXG4gIGdldCB2aXNpYmxlUm93cyQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3Zpc2libGVSb3dzJDtcbiAgfVxuXG4gIGdldCB2aXNpYmxlUm93cygpIHtcbiAgICByZXR1cm4gdGhpcy5fdmlzaWJsZVJvd3MkLmdldFZhbHVlKCk7XG4gIH1cblxuICBnZXQgdmlzaWJsZVJvd3NEYXRhKCkge1xuICAgIHJldHVybiB0aGlzLnZpc2libGVSb3dzLm1hcCgocm93KSA9PiByb3cuZGF0YSk7XG4gIH1cblxuICBnZXQgcm93c1N0YWNrKCkge1xuICAgIHJldHVybiB0aGlzLl9yb3dzU3RhY2suc2xpY2UoKTtcbiAgfVxuXG4gIGdldCBncm91cEVuYWJsZWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2dyb3VwRW5hYmxlZDtcbiAgfVxuXG4gIHNldCBncm91cEVuYWJsZWQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9ncm91cEVuYWJsZWQgPSB2YWx1ZTtcbiAgfVxuXG4gIGdldCByZW1vdGVSb3dzQ2hhbmdlJCgpIHtcbiAgICByZXR1cm4gdGhpcy5fcmVtb3RlUm93c0NoYW5nZSQucGlwZShcbiAgICAgIHRha2VVbnRpbCh0aGlzLl9kZXN0cm95JCksXG4gICAgKTtcbiAgfVxuXG4gIGdldCByb3dzUmVtb3ZlZCQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3Jvd3NSZW1vdmVkJC5waXBlKFxuICAgICAgdGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kkKSxcbiAgICApO1xuICB9XG5cbiAgZ2V0IGhhc0RhdGEoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2hhc0RhdGE7XG4gIH1cblxuICBnZXQgb3BlcmF0aW9uKCkge1xuICAgIHJldHVybiB0aGlzLl9vcGVyYXRpb247XG4gIH1cblxuICBzZXQgdmlzaWJsZVJvd3ModmFsdWU6IGFueVtdKSB7XG4gICAgdGhpcy5fdmlzaWJsZVJvd3MkLm5leHQodmFsdWUpO1xuICAgIHRoaXMuX2hhc0RhdGEgPSB0aGlzLnZpc2libGVSb3dzLmxlbmd0aCA+IDA7XG4gIH1cblxuICBnZXQgdmlzaWJsZVJvd3NDb3VudCgpIHtcbiAgICByZXR1cm4gdGhpcy52aXNpYmxlUm93cy5sZW5ndGg7XG4gIH1cblxuICBnZXQgaGFzR3JvdXBzKCkge1xuICAgIHJldHVybiB0aGlzLl9jb21wYXJlQnlGbiAmJiB0aGlzLl9ncm91cEJ5Rm47XG4gIH1cblxuICBnZXQgcmVvcmRlckRhdGEoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3Jvd3NTdGFja1xuICAgICAgLm1hcCgocm93KSA9PiByb3cuZ2V0UmVvcmRlckRhdGEoKSk7XG4gIH1cblxuICBwdWJsaWMgc2V0R3JvdXBDb25maWcoZ3JvdXA6IEZzTGlzdEdyb3VwQ29uZmlnKSB7XG4gICAgaWYgKGdyb3VwKSB7XG4gICAgICB0aGlzLl9ncm91cEJ5Rm4gPSBncm91cC5ncm91cEJ5O1xuICAgICAgdGhpcy5fY29tcGFyZUJ5Rm4gPSBncm91cC5jb21wYXJlQnk7XG4gICAgICB0aGlzLl9pbml0aWFsRXhwYW5kID0gZ3JvdXAuaW5pdGlhbEV4cGFuZCA/PyB0cnVlO1xuXG4gICAgICAvLyBncm91cCBtb2RlIGVuYWJsZWQgYnkgZGVmYXVsdFxuICAgICAgdGhpcy5fZ3JvdXBFbmFibGVkID0gKGdyb3VwLmVuYWJsZWQgIT09IHZvaWQgMClcbiAgICAgICAgPyBncm91cC5lbmFibGVkXG4gICAgICAgIDogdHJ1ZTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgc2V0QWRkaXRpb25hbENvbmZpZ3MoY29uZmlnczogeyBzY3JvbGxhYmxlOiBib29sZWFuLCBsb2FkTW9yZUVuYWJsZWQ6IGJvb2xlYW4gfSkge1xuICAgIHRoaXMuX2luZmluaXR5U2Nyb2xsRW5hYmxlZCA9IGNvbmZpZ3Muc2Nyb2xsYWJsZTtcbiAgICB0aGlzLl9sb2FkTW9yZUVuYWJsZWQgPSBjb25maWdzLmxvYWRNb3JlRW5hYmxlZDtcbiAgfVxuXG4gIC8qKlxuICAgKiBSb3dzIHdoYXQgd2FzIHJlY2VpdmVkIGZyb20gZmV0Y2ggZnVuY3Rpb25cbiAgICogQHBhcmFtIHJvd3NcbiAgICovXG4gIHB1YmxpYyBzZXRSb3dzRnJvbVJlc3BvbnNlKHJvd3M6IGFueVtdKSB7XG4gICAgaWYgKHRoaXMuX2luZmluaXR5U2Nyb2xsRW5hYmxlZCkge1xuICAgICAgc3dpdGNoICh0aGlzLl9vcGVyYXRpb24pIHtcbiAgICAgICAgY2FzZSBGc0xpc3RTdGF0ZS5GaWx0ZXI6XG4gICAgICAgIGNhc2UgRnNMaXN0U3RhdGUuUmVsb2FkOlxuICAgICAgICBjYXNlIEZzTGlzdFN0YXRlLlNvcnQ6IHtcbiAgICAgICAgICB0aGlzLl91cGRhdGVSb3dzU3RhY2socm93cyk7XG4gICAgICAgIH0gYnJlYWs7XG5cbiAgICAgICAgZGVmYXVsdDoge1xuICAgICAgICAgIHRoaXMuX2V4dGVuZFJvd3NTdGFjayhyb3dzKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICB0aGlzLl9yZW1vdGVSb3dzQ2hhbmdlJC5uZXh0KCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmIChcbiAgICAgICAgdGhpcy5fb3BlcmF0aW9uID09PSBGc0xpc3RTdGF0ZS5Mb2FkTW9yZSB8fFxuICAgICAgICAodGhpcy5fb3BlcmF0aW9uID09PSBGc0xpc3RTdGF0ZS5QYWdlQ2hhbmdlICYmIHRoaXMuX2xvYWRNb3JlRW5hYmxlZClcbiAgICAgICkge1xuICAgICAgICB0aGlzLl9leHRlbmRSb3dzU3RhY2socm93cyk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLl91cGRhdGVSb3dzU3RhY2socm93cyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpcy5fb3BlcmF0aW9uID0gRnNMaXN0U3RhdGUuSWRsZTtcblxuICAgIHRoaXMuX3VwZGF0ZVZpc2libGVSb3dzKCk7XG4gIH1cblxuICAvKipcbiAgICogU2V0IGN1cnJlbnQgb3BlcmF0aW9uIGZvciBsaXN0IGRhdGEgZmxvd1xuICAgKiBAcGFyYW0gdmFsdWVcbiAgICovXG4gIHB1YmxpYyBzZXRPcGVyYXRpb24odmFsdWU6IEZzTGlzdFN0YXRlKSB7XG4gICAgdGhpcy5fb3BlcmF0aW9uID0gdmFsdWU7XG4gIH1cblxuICAvKipcbiAgICogUmVtb3ZlIHJvd3MgZnJvbSB2aXNpYmxlXG4gICAqL1xuICBwdWJsaWMgY2xlYXJSb3dzKCkge1xuICAgIHRoaXMudmlzaWJsZVJvd3MgPSBbXTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXBsYWNlIGRhdGEgZm9yIHNwZWNpZmllZCByb3dcbiAgICogQHBhcmFtIHRhcmdldFJvd1xuICAgKiBAcGFyYW0gdHJhY2tCeVxuICAgKi9cbiAgcHVibGljIHJlcGxhY2VEYXRhKFxuICAgIHRhcmdldFJvdzogRnNMaXN0QWJzdHJhY3RSb3csXG4gICAgdHJhY2tCeT86IEZzTGlzdFRyYWNrQnlUYXJnZXRSb3dGblxuICApIHtcbiAgICBjb25zdCByb3dJbmRleCA9IHRoaXMuX3Jvd3NTdGFjay5maW5kSW5kZXgoKGxpc3RSb3cpID0+IHtcbiAgICAgIHJldHVybiB0cmFja0J5KGxpc3RSb3cuZGF0YSwgdGFyZ2V0Um93KTtcbiAgICB9KTtcblxuICAgIGlmIChyb3dJbmRleCA+IC0xKSB7XG4gICAgICB0aGlzLl9yb3dzU3RhY2tbcm93SW5kZXhdID0gbmV3IFJvdyhcbiAgICAgICAgdGFyZ2V0Um93LFxuICAgICAgICBSb3dUeXBlLlNpbXBsZSxcbiAgICAgICAgeyBpbml0aWFsRXhwYW5kOiB0aGlzLl9pbml0aWFsRXhwYW5kIH1cbiAgICAgICk7XG5cbiAgICAgIHRoaXMuX3VwZGF0ZVZpc2libGVSb3dzKCk7XG5cbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gIH1cblxuICAvKipcbiAgICogVXBkYXRlIGRhdGEgZm9yIHNwZWNpZmllZCByb3dcbiAgICogQHBhcmFtIHJvd3NcbiAgICogQHBhcmFtIHRyYWNrQnlcbiAgICovXG4gIHB1YmxpYyB1cGRhdGVEYXRhKFxuICAgIHJvd3M6IEZzTGlzdEFic3RyYWN0Um93IHwgRnNMaXN0QWJzdHJhY3RSb3dbXSxcbiAgICB0cmFja0J5PzogRnNMaXN0VHJhY2tCeVRhcmdldFJvd0ZuLFxuICApOiBib29sZWFuIHtcbiAgICBpZiAoQXJyYXkuaXNBcnJheShyb3dzKSkge1xuICAgICAgbGV0IHVwZGF0ZVN1Y2Nlc3MgPSBmYWxzZTtcblxuICAgICAgcm93cy5mb3JFYWNoKChpdGVtKSA9PiB7XG4gICAgICAgIGlmICh0aGlzLnVwZGF0ZVJvdyhpdGVtLCB0cmFja0J5KSkge1xuICAgICAgICAgIHVwZGF0ZVN1Y2Nlc3MgPSB0cnVlO1xuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgICAgdGhpcy5fdXBkYXRlVmlzaWJsZVJvd3MoKTtcblxuICAgICAgcmV0dXJuIHVwZGF0ZVN1Y2Nlc3M7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IHVwZGF0ZWQgPSB0aGlzLnVwZGF0ZVJvdyhyb3dzLCB0cmFja0J5KTtcblxuICAgICAgdGhpcy5fdXBkYXRlVmlzaWJsZVJvd3MoKTtcblxuICAgICAgcmV0dXJuIHVwZGF0ZWQ7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFJlbW92ZSBkYXRhIGZvciBzcGVjaWZpZWQgcm93XG4gICAqIEBwYXJhbSBkYXRhXG4gICAqL1xuICBwdWJsaWMgcmVtb3ZlRGF0YShkYXRhOiBGc0xpc3RBYnN0cmFjdFJvdyB8IEZzTGlzdEFic3RyYWN0Um93W10gfCBGc0xpc3RUcmFja0J5VGFyZ2V0Um93Rm4pOiBib29sZWFuIHtcbiAgICBjb25zdCByZW1vdmVkUm93cyA9IFtdO1xuXG4gICAgY29uc3QgZGVmYXVsdFRyYWNrQnkgPSAocm93LCB0YXJnZXQpID0+IHtcbiAgICAgIHJldHVybiByb3cgPT09IHRhcmdldDtcbiAgICB9O1xuXG4gICAgaWYgKEFycmF5LmlzQXJyYXkoZGF0YSkpIHtcbiAgICAgIC8vXG4gICAgICBkYXRhLmZvckVhY2goKGl0ZW0pID0+IHtcbiAgICAgICAgcmVtb3ZlZFJvd3MucHVzaCguLi50aGlzLnJlbW92ZVJvdyhpdGVtLCBkZWZhdWx0VHJhY2tCeSkpO1xuICAgICAgfSk7XG4gICAgfSBlbHNlIGlmIChpc0Z1bmN0aW9uKGRhdGEpKSB7XG4gICAgICByZW1vdmVkUm93cy5wdXNoKC4uLnRoaXMucmVtb3ZlUm93KG51bGwsIChkYXRhIGFzIEZzTGlzdFRyYWNrQnlUYXJnZXRSb3dGbikpKTtcbiAgICB9IGVsc2UgaWYgKGlzT2JqZWN0KGRhdGEpKSB7XG4gICAgICByZW1vdmVkUm93cy5wdXNoKC4uLnRoaXMucmVtb3ZlUm93KGRhdGEsIGRlZmF1bHRUcmFja0J5KSk7XG4gICAgfVxuXG4gICAgaWYgKHJlbW92ZWRSb3dzLmxlbmd0aCA+IDApIHtcbiAgICAgIHRoaXMuX3VwZGF0ZVZpc2libGVSb3dzKCk7XG5cbiAgICAgIHRoaXMuX3Jvd3NSZW1vdmVkJC5uZXh0KHJlbW92ZWRSb3dzKVxuICAgIH1cblxuICAgIHJldHVybiAhIXJlbW92ZWRSb3dzLmxlbmd0aDtcbiAgfVxuXG4gIHB1YmxpYyBzd2FwUm93cyhyb3cxLCByb3cyKSB7XG4gICAgbGV0IHRtcEVsO1xuICAgIGNvbnN0IHJvd3NTdGFjayA9IHRoaXMuX3Jvd3NTdGFjaztcbiAgICBjb25zdCByb3cxR2xvYmFsSW5kZXggPSByb3dzU3RhY2suaW5kZXhPZihyb3cxKTtcbiAgICBjb25zdCByb3cyR2xvYmFsSW5kZXggPSByb3dzU3RhY2suaW5kZXhPZihyb3cyKTtcblxuICAgIHRtcEVsID0gcm93c1N0YWNrW3JvdzFHbG9iYWxJbmRleF07XG4gICAgcm93c1N0YWNrW3JvdzFHbG9iYWxJbmRleF0gPSByb3dzU3RhY2tbcm93Mkdsb2JhbEluZGV4XTtcbiAgICByb3dzU3RhY2tbcm93Mkdsb2JhbEluZGV4XSA9IHRtcEVsO1xuXG4gICAgdGhpcy5fcm93c1N0YWNrID0gWyAuLi5yb3dzU3RhY2sgXTtcbiAgfVxuXG4gIHB1YmxpYyBkZXN0cm95KCkge1xuICAgIHRoaXMuX2Rlc3Ryb3lSb3dzU3RhY2soKTtcbiAgICB0aGlzLl9zdG9yZS5jbGVhcigpO1xuXG4gICAgdGhpcy5fZGVzdHJveSQubmV4dCgpO1xuICAgIHRoaXMuX2Rlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gIH1cblxuICBwdWJsaWMgdG9nZ2xlUm93R3JvdXAocm93RGF0YSkge1xuICAgIGNvbnN0IHJvdyA9IHRoaXMudmlzaWJsZVJvd3MuZmluZCgodmlzaWJsZVJvdykgPT4gdmlzaWJsZVJvdy5kYXRhID09PSByb3dEYXRhICk7XG4gICAgcm93LnRvZ2dsZVJvd0V4cGFuZFN0YXR1cygpO1xuXG4gICAgdGhpcy5fdXBkYXRlVmlzaWJsZVJvd3MoKTtcbiAgfVxuXG4gIHByaXZhdGUgX3VwZGF0ZVJvd3NTdGFjayhyb3dzKSB7XG5cbiAgICB0aGlzLl9kZXN0cm95Um93c1N0YWNrKCk7XG5cbiAgICBpZiAodGhpcy5ncm91cEVuYWJsZWQpIHtcbiAgICAgIHRoaXMuX3N0b3JlLmNsZWFyKCk7XG4gICAgICB0aGlzLl9yb3dzU3RhY2sgPSBbLi4udGhpcy5ncm91cFJvd3NCeShyb3dzKV07XG4gICAgfSBlbHNlIHtcbiAgICAgIHJvd3MgPSByb3dzLm1hcCgocm93KSA9PiB7XG4gICAgICAgIHJldHVybiBuZXcgUm93KFxuICAgICAgICAgIHJvdyxcbiAgICAgICAgICBSb3dUeXBlLlNpbXBsZSxcbiAgICAgICAgICB7IGluaXRpYWxFeHBhbmQ6IHRoaXMuX2luaXRpYWxFeHBhbmQgfSxcbiAgICAgICAgKTtcbiAgICAgIH0pO1xuICAgICAgdGhpcy5fcm93c1N0YWNrID0gWy4uLnJvd3NdO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2V4dGVuZFJvd3NTdGFjayhyb3dzKSB7XG4gICAgaWYgKHRoaXMuZ3JvdXBFbmFibGVkKSB7XG4gICAgICB0aGlzLl9yb3dzU3RhY2sgPSBbLi4udGhpcy5ncm91cFJvd3NCeShyb3dzKV07XG4gICAgfSBlbHNlIHtcbiAgICAgIHJvd3MgPSByb3dzLm1hcCgocm93KSA9PiB7XG4gICAgICAgIHJldHVybiBuZXcgUm93KFxuICAgICAgICAgIHJvdyxcbiAgICAgICAgICBSb3dUeXBlLlNpbXBsZSxcbiAgICAgICAgICB7IGluaXRpYWxFeHBhbmQ6IHRoaXMuX2luaXRpYWxFeHBhbmQgfSxcbiAgICAgICAgKTtcbiAgICAgIH0pO1xuICAgICAgdGhpcy5fcm93c1N0YWNrID0gWy4uLnRoaXMuX3Jvd3NTdGFjaywgLi4ucm93c107XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfZGVzdHJveVJvd3NTdGFjaygpIHtcbiAgICB0aGlzLl9yb3dzU3RhY2suZm9yRWFjaCgocm93KSA9PiByb3cuZGVzdHJveSgpKTtcbiAgfVxuXG4gIHByaXZhdGUgX3VwZGF0ZVZpc2libGVSb3dzKCkge1xuICAgIHRoaXMudmlzaWJsZVJvd3MgPSB0aGlzLl9yb3dzU3RhY2tcbiAgICAgIC5maWx0ZXIoKHJvdykgPT4ge1xuICAgICAgICByZXR1cm4gIXJvdy5pc0NoaWxkIHx8IHJvdy52aXNpYmxlO1xuICAgICAgfSk7XG4gIH1cblxuICBwcml2YXRlIHVwZGF0ZVJvdyhcbiAgICB0YXJnZXRSb3c6IEZzTGlzdEFic3RyYWN0Um93LFxuICAgIHRyYWNrQnk/OiAobGlzdFJvdzogRnNMaXN0QWJzdHJhY3RSb3csIHRhcmdldFJvdz86IEZzTGlzdEFic3RyYWN0Um93KSA9PiBib29sZWFuKSB7XG5cbiAgICBpZiAodHJhY2tCeSA9PT0gdm9pZCAwKSB7XG4gICAgICB0cmFja0J5ID0gKHJvdywgdGFyZ2V0KSA9PiB7XG4gICAgICAgIHJldHVybiByb3cgPT09IHRhcmdldDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdCB0YXJnZXRJbmRleCA9IHRoaXMuX3Jvd3NTdGFjay5maW5kSW5kZXgoKGxpc3RSb3cpID0+IHRyYWNrQnkobGlzdFJvdy5kYXRhLCB0YXJnZXRSb3cpKTtcblxuICAgIGlmICh0YXJnZXRJbmRleCAhPT0gLTEpIHtcbiAgICAgIGNvbnN0IHVwZGF0ZVRhcmdldCA9IHRoaXMuX3Jvd3NTdGFja1t0YXJnZXRJbmRleF07XG4gICAgICBjb25zdCB1cGRhdGVkRGF0YSA9IE9iamVjdC5hc3NpZ24oe30sIHVwZGF0ZVRhcmdldC5kYXRhLCB0YXJnZXRSb3cpO1xuXG4gICAgICB0aGlzLl9yb3dzU3RhY2tbdGFyZ2V0SW5kZXhdID0gbmV3IFJvdyhcbiAgICAgICAgdXBkYXRlZERhdGEsXG4gICAgICAgIHVwZGF0ZVRhcmdldC50eXBlLFxuICAgICAgICB7XG4gICAgICAgICAgcGFyZW50OiB1cGRhdGVUYXJnZXQucGFyZW50LFxuICAgICAgICAgIGluaXRpYWxFeHBhbmQ6IHVwZGF0ZVRhcmdldC5leHBhbmRlZCxcbiAgICAgICAgfVxuICAgICAgKTtcblxuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlbW92ZSByb3cgZnJvbVxuICAgKiBAcGFyYW0gdGFyZ2V0Um93XG4gICAqIEBwYXJhbSB0cmFja0J5XG4gICAqL1xuICBwcml2YXRlIHJlbW92ZVJvdyhcbiAgICB0YXJnZXRSb3c6IEZzTGlzdEFic3RyYWN0Um93IHwgbnVsbCxcbiAgICB0cmFja0J5PzogRnNMaXN0VHJhY2tCeVRhcmdldFJvd0ZuXG4gICkge1xuXG4gICAgY29uc3Qgcm93cyA9IHRoaXMuX3Jvd3NTdGFjaztcbiAgICBjb25zdCByZW1vdmVkUm93cyA9IFtdO1xuXG4gICAgcm93cy5mb3JFYWNoKChsaXN0Um93LCBpbmRleCkgPT4ge1xuICAgICAgaWYgKHRyYWNrQnkobGlzdFJvdy5kYXRhLCB0YXJnZXRSb3cpKSB7XG4gICAgICAgIGNvbnN0IHJlbW92ZWRSb3cgPSByb3dzLnNwbGljZShpbmRleCwgMSk7XG5cbiAgICAgICAgcmVtb3ZlZFJvd3MucHVzaChyZW1vdmVkUm93KTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHJldHVybiByZW1vdmVkUm93cztcbiAgfVxuXG4gIC8qKlxuICAgKiBTcGxpdCBleGlzdGluZyByb3dzIGJ5IGdyb3VwcyBhbmQgc3RvcmUgdGhlbSBmb3IgZnV0dXJlIHVzZVxuICAgKi9cbiAgcHJpdmF0ZSBncm91cFJvd3NCeShyb3dzKSB7XG4gICAgaWYgKCF0aGlzLl9ncm91cEJ5Rm4gfHwgIXRoaXMuX2NvbXBhcmVCeUZuKSB7IHJldHVybiByb3dzIH1cblxuICAgIGxldCBudW1iZXJPZkdyb3VwcyA9IDA7XG5cbiAgICByb3dzLmZvckVhY2goKHJvdykgPT4ge1xuICAgICAgY29uc3QgbWFpbkdyb3VwID0gdGhpcy5fZ3JvdXBCeUZuKHJvdyk7XG4gICAgICBjb25zdCBtYWluR3JvdXBLZXkgPSB0aGlzLl9jb21wYXJlQnlGbihtYWluR3JvdXApO1xuXG4gICAgICBpZiAoIXRoaXMuX3N0b3JlLmhhcyhtYWluR3JvdXBLZXkpKSB7XG4gICAgICAgIGNvbnN0IGdyb3VwID0gbmV3IEdyb3VwUm93KFxuICAgICAgICAgIG1haW5Hcm91cCxcbiAgICAgICAgICB0aGlzLl9pbml0aWFsRXhwYW5kLFxuICAgICAgICApO1xuXG4gICAgICAgIGdyb3VwLmluZGV4ID0gbnVtYmVyT2ZHcm91cHM7XG4gICAgICAgIG51bWJlck9mR3JvdXBzKys7XG5cbiAgICAgICAgY29uc3QgY2hpbGRSb3cgPSBuZXcgQ2hpbGRSb3cocm93LCBncm91cCk7XG5cbiAgICAgICAgdGhpcy5fc3RvcmUuc2V0KG1haW5Hcm91cEtleSwgZ3JvdXApO1xuICAgICAgICBncm91cC5jaGlsZHJlbi5wdXNoKGNoaWxkUm93KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnN0IGdyb3VwID0gdGhpcy5fc3RvcmUuZ2V0KG1haW5Hcm91cEtleSk7XG4gICAgICAgIGNvbnN0IGNoaWxkUm93ID0gbmV3IENoaWxkUm93KHJvdywgZ3JvdXApO1xuXG4gICAgICAgIGdyb3VwLmNoaWxkcmVuLnB1c2goY2hpbGRSb3cpO1xuICAgICAgfVxuICAgIH0pO1xuXG5cbiAgICByZXR1cm4gQXJyYXkuZnJvbSh0aGlzLl9zdG9yZS52YWx1ZXMoKSlcbiAgICAgIC5yZWR1Y2UoKGFjYywgaXRlbSkgPT4ge1xuICAgICAgICBpZiAoaXRlbS5pc0dyb3VwKSB7XG4gICAgICAgICAgYWNjLnB1c2goaXRlbSwgLi4uaXRlbS5jaGlsZHJlbik7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgYWNjLnB1c2goaXRlbSk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gYWNjO1xuICAgICAgfSwgW10pO1xuICB9XG59XG4iXX0=
|
|
@@ -75,20 +75,18 @@ export class ExternalParamsController {
|
|
|
75
75
|
this._destroy$.complete();
|
|
76
76
|
}
|
|
77
77
|
_restorePaginationParams(values) {
|
|
78
|
-
|
|
79
|
-
if ((_a = values) === null || _a === void 0 ? void 0 : _a.page) {
|
|
78
|
+
if (values === null || values === void 0 ? void 0 : values.page) {
|
|
80
79
|
this._externalParams.page = +values.page;
|
|
81
80
|
}
|
|
82
|
-
if (
|
|
81
|
+
if (values === null || values === void 0 ? void 0 : values.limit) {
|
|
83
82
|
this._externalParams.limit = +values.limit;
|
|
84
83
|
}
|
|
85
84
|
}
|
|
86
85
|
_restoreSortingParams(values) {
|
|
87
|
-
|
|
88
|
-
if ((_a = values) === null || _a === void 0 ? void 0 : _a.sortName) {
|
|
86
|
+
if (values === null || values === void 0 ? void 0 : values.sortName) {
|
|
89
87
|
this._externalParams.sortName = values.sortName;
|
|
90
88
|
}
|
|
91
|
-
if (
|
|
89
|
+
if (values === null || values === void 0 ? void 0 : values.sortDirection) {
|
|
92
90
|
this._externalParams.sortDirection = values.sortDirection;
|
|
93
91
|
}
|
|
94
92
|
}
|
|
@@ -152,4 +150,4 @@ export class ExternalParamsController {
|
|
|
152
150
|
}
|
|
153
151
|
}
|
|
154
152
|
}
|
|
155
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0ZXJuYWwtcGFyYW1zLWNvbnRyb2xsZXIuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AZmlyZXN0aXRjaC9saXN0LyIsInNvdXJjZXMiOlsiYXBwL2NsYXNzZXMvZXh0ZXJuYWwtcGFyYW1zLWNvbnRyb2xsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdEMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBYzNDLE1BQU0sT0FBTyx3QkFBd0I7SUFXbkMsWUFDVSxPQUFlLEVBQ2YsTUFBc0IsRUFDdEIsWUFBbUMsRUFDbkMsVUFBZ0MsRUFDaEMsUUFBMkIsRUFDM0IsbUJBQTRCO1FBTDVCLFlBQU8sR0FBUCxPQUFPLENBQVE7UUFDZixXQUFNLEdBQU4sTUFBTSxDQUFnQjtRQUN0QixpQkFBWSxHQUFaLFlBQVksQ0FBdUI7UUFDbkMsZUFBVSxHQUFWLFVBQVUsQ0FBc0I7UUFDaEMsYUFBUSxHQUFSLFFBQVEsQ0FBbUI7UUFDM0Isd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFTO1FBZjlCLG9CQUFlLEdBQW1CO1lBQ3hDLElBQUksRUFBRSxJQUFJO1lBQ1YsS0FBSyxFQUFFLElBQUk7WUFDWCxRQUFRLEVBQUUsSUFBSTtZQUNkLGFBQWEsRUFBRSxJQUFJO1NBQ3BCLENBQUM7UUFFTSxjQUFTLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQVV0QyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDcEIsQ0FBQztJQUVELElBQVcsZUFBZTtRQUN4QixJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFO1lBQzdELE9BQU8sSUFBSSxDQUFDO1NBQ2I7UUFFRCxPQUFPO1lBQ0wsS0FBSyxFQUFFLElBQUksQ0FBQyxTQUFTO1lBQ3JCLFNBQVMsRUFBRSxJQUFJ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QUMsZUFBZSxDQUFDLFFBQVEsRUFBRSxNQUFNLENBQUMsQ0FBQztTQUNyRDtJQUNILENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuXG5pbXBvcnQgeyBtZXJnZSwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBQYWdpbmF0aW9uQ29udHJvbGxlciB9IGZyb20gJy4uL2NsYXNzZXMvcGFnaW5hdGlvbi1jb250cm9sbGVyJztcbmltcG9ydCB7IFNvcnRpbmdDb250cm9sbGVyIH0gZnJvbSAnLi4vY2xhc3Nlcy9zb3J0aW5nLWNvbnRyb2xsZXInO1xuaW1wb3J0IHsgUGVyc2lzdGFuY2VDb250cm9sbGVyIH0gZnJvbSAnLi9wZXJzaXN0YW5jZS1jb250cm9sbGVyJztcblxuaW1wb3J0IHsgRnNMaXN0U29ydENvbmZpZyB9IGZyb20gJy4uL2ludGVyZmFjZXMnO1xuaW1wb3J0IHtcbiAgRXh0ZXJuYWxQYXJhbXMsXG4gIEV4dGVybmFsUXVlcnlQYWdpbmF0aW9uLFxuICBFeHRlcm5hbFF1ZXJ5U29ydGluZyxcbn0gZnJvbSAnLi4vaW50ZXJmYWNlcy9leHRlcm5hbC1wYXJhbXMuaW50ZXJmYWNlJztcblxuXG5leHBvcnQgY2xhc3MgRXh0ZXJuYWxQYXJhbXNDb250cm9sbGVyIHtcblxuICBwcml2YXRlIF9leHRlcm5hbFBhcmFtczogRXh0ZXJuYWxQYXJhbXMgPSB7XG4gICAgcGFnZTogbnVsbCxcbiAgICBsaW1pdDogbnVsbCxcbiAgICBzb3J0TmFtZTogbnVsbCxcbiAgICBzb3J0RGlyZWN0aW9uOiBudWxsLFxuICB9O1xuXG4gIHByaXZhdGUgX2Rlc3Ryb3kkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIF9yb3V0ZXI6IFJvdXRlcixcbiAgICBwcml2YXRlIF9yb3V0ZTogQWN0aXZhdGVkUm91dGUsXG4gICAgcHJpdmF0ZSBfcGVyc2lzdGFuY2U6IFBlcnNpc3RhbmNlQ29udHJvbGxlcixcbiAgICBwcml2YXRlIF9wYWdpbmF0b3I6IFBhZ2luYXRpb25Db250cm9sbGVyLFxuICAgIHByaXZhdGUgX3NvcnRpbmc6IFNvcnRpbmdDb250cm9sbGVyLFxuICAgIHByaXZhdGUgX3F1ZXJ5UGFyYW1zRW5hYmxlZDogYm9vbGVhbixcbiAgKSB7XG4gICAgdGhpcy5pbml0aWFsaXplKCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGV4dGVybmFsU29ydGluZygpOiBGc0xpc3RTb3J0Q29uZmlnIHtcbiAgICBpZiAoIXRoaXMuX2VuYWJsZWQgfHwgIXRoaXMuX3NvcnROYW1lIHx8ICF0aGlzLl9zb3J0RGlyZWN0aW9uKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgdmFsdWU6IHRoaXMuX3NvcnROYW1lLFxuICAgICAgZGlyZWN0aW9uOiB0aGlzLl9zb3J0RGlyZWN0aW9uLFxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZ2V0IF9lbmFibGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9xdWVyeVBhcmFtc0VuYWJsZWQgfHwgdGhpcy5fcGVyc2lzdGFuY2UuZW5hYmxlZDtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IF9wYWdlKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX2V4dGVybmFsUGFyYW1zLnBhZ2U7XG4gIH1cblxuICBwcml2YXRlIGdldCBfbGltaXQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5fZXh0ZXJuYWxQYXJhbXMubGltaXQ7XG4gIH1cblxuICBwcml2YXRlIGdldCBfc29ydE5hbWUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fZXh0ZXJuYWxQYXJhbXMuc29ydE5hbWU7XG4gIH1cblxuICBwcml2YXRlIGdldCBfc29ydERpcmVjdGlvbigpOiAnYXNjJyB8ICdkZXNjJyB7XG4gICAgcmV0dXJuIHRoaXMuX2V4dGVybmFsUGFyYW1zLnNvcnREaXJlY3Rpb247XG4gIH1cblxuICBwdWJsaWMgaW5pdGlhbGl6ZSgpIHtcblxuICAgIC8vIFJlc3RvcmUgZnJvbSBsb2NhbFN0b3JhZ2UgcGFyYW1ldGVycyBpZiBwZXJzaXN0YW5jZSBlbmFibGVkXG4gICAgaWYgKHRoaXMuX3BlcnNpc3RhbmNlLmVuYWJsZWQpIHtcbiAgICAgIHRoaXMuX3Jlc3RvcmVQYWdpbmF0aW9uUGFyYW1zKHRoaXMuX3BlcnNpc3RhbmNlLmdldERhdGFGcm9tU2NvcGUoJ3BhZ2luZycpKTtcbiAgICAgIHRoaXMuX3Jlc3RvcmVTb3J0aW5nUGFyYW1zKHRoaXMuX3BlcnNpc3RhbmNlLmdldERhdGFGcm9tU2NvcGUoJ3NvcnRpbmcnKSk7XG4gICAgfVxuXG4gICAgLy8gUmVzdG9yZSBmcm9tIHF1ZXJ5UGFyYW1zIGFuZCBvdmVycmlkZSBpZiBwZXJzaXN0YW5jZSBhbHJlYWR5IGhhZCB2YWx1ZXMgZm9yIHRob3NlIHBhcmFtc1xuICAgIGlmICh0aGlzLl9xdWVyeVBhcmFtc0VuYWJsZWQpIHtcbiAgICAgIHRoaXMuX3Jlc3RvcmVQYWdpbmF0aW9uUGFyYW1zKHRoaXMuX3JvdXRlLnNuYXBzaG90LnF1ZXJ5UGFyYW1zIGFzIEV4dGVybmFsUXVlcnlQYWdpbmF0aW9uKTtcbiAgICAgIHRoaXMuX3Jlc3RvcmVTb3J0aW5nUGFyYW1zKHRoaXMuX3JvdXRlLnNuYXBzaG90LnF1ZXJ5UGFyYW1zIGFzIEV4dGVybmFsUXVlcnlTb3J0aW5nKTtcbiAgICB9XG5cbiAgICAvLyBTZXQgaW5pdGlhbCBwYWdpbmF0aW9uIHBhcmFtc1xuICAgIC8vIFRoZSBzYW1lIGluaXRpYWwsIGJ1dCBmb3Igc29ydGluZyBwbGFjZWQgaW4gbGlzdC1jb250cm9sbGVyIFwidHJhbmZvcm1UZW1wbGF0ZXNUb0NvbHVtbnNcIiBtZXRob2RcbiAgICBpZiAodGhpcy5fcGFnaW5hdG9yLmVuYWJsZWQgJiYgIXRoaXMuX3BhZ2luYXRvci5pbmZpbml0eVNjcm9sbEVuYWJsZWQpIHtcbiAgICAgIGlmICh0aGlzLl9saW1pdCkge1xuICAgICAgICB0aGlzLl9wYWdpbmF0b3Iuc2V0TGltaXQodGhpcy5fbGltaXQpO1xuICAgICAgfVxuXG4gICAgICBpZiAodGhpcy5fcGFnZSkge1xuICAgICAgICB0aGlzLl9wYWdpbmF0b3IuZ29Ub1BhZ2UodGhpcy5fcGFnZSk7XG5cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBVcGRhdGUgcGFnaW5hdGlvbiBpbiBzdG9yZXNcbiAgICB0aGlzLl91cGRhdGVQYWdpbmF0aW9uUGFyYW1zKHRoaXMuX3BhZ2luYXRvci5xdWVyeVBhZ2VTdHJhdGVneSk7XG5cbiAgICB0aGlzLl9saXN0ZW5QYWdpbmF0b3JDaGFuZ2VzKCk7XG4gICAgdGhpcy5fbGlzdGVuU29ydGluZ0NoYW5nZXMoKTtcbiAgfVxuXG4gIHB1YmxpYyBjbGVhclNvcnRpbmdQYXJhbXMoKSB7XG4gICAgdGhpcy5fdXBkYXRlU29ydGluZ1BhcmFtcyhudWxsLCBudWxsKTtcbiAgfVxuXG4gIHB1YmxpYyBkZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuX2Rlc3Ryb3kkLm5leHQoKTtcbiAgICB0aGlzLl9kZXN0cm95JC5jb21wbGV0ZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBfcmVzdG9yZVBhZ2luYXRpb25QYXJhbXModmFsdWVzOiBFeHRlcm5hbFF1ZXJ5UGFnaW5hdGlvbikge1xuICAgIGlmICh2YWx1ZXM/LnBhZ2UpIHtcbiAgICAgIHRoaXMuX2V4dGVybmFsUGFyYW1zLnBhZ2UgPSArdmFsdWVzLnBhZ2U7XG4gICAgfVxuXG4gICAgaWYgKHZhbHVlcz8ubGltaXQpIHtcbiAgICAgIHRoaXMuX2V4dGVybmFsUGFyYW1zLmxpbWl0ID0gK3ZhbHVlcy5saW1pdDtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9yZXN0b3JlU29ydGluZ1BhcmFtcyh2YWx1ZXM6IEV4dGVybmFsUXVlcnlTb3J0aW5nKSB7XG4gICAgaWYgKHZhbHVlcz8uc29ydE5hbWUpIHtcbiAgICAgIHRoaXMuX2V4dGVybmFsUGFyYW1zLnNvcnROYW1lID0gdmFsdWVzLnNvcnROYW1lO1xuICAgIH1cblxuICAgIGlmICh2YWx1ZXM/LnNvcnREaXJlY3Rpb24pIHtcbiAgICAgIHRoaXMuX2V4dGVybmFsUGFyYW1zLnNvcnREaXJlY3Rpb24gPSB2YWx1ZXMuc29ydERpcmVjdGlvbjtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9saXN0ZW5QYWdpbmF0b3JDaGFuZ2VzKCkge1xuICAgIG1lcmdlKFxuICAgICAgdGhpcy5fcGFnaW5hdG9yLnBhZ2VDaGFuZ2VkJCxcbiAgICAgIHRoaXMuX3BhZ2luYXRvci5wYWdlcyQsXG4gICAgICB0aGlzLl9wYWdpbmF0b3IucGFnZVJlc2V0JCxcbiAgICApXG4gICAgICAucGlwZShcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kkKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLl91cGRhdGVQYWdpbmF0aW9uUGFyYW1zKHRoaXMuX3BhZ2luYXRvci5xdWVyeVBhZ2VTdHJhdGVneSk7XG4gICAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgX2xpc3RlblNvcnRpbmdDaGFuZ2VzKCkge1xuICAgIG1lcmdlKFxuICAgICAgdGhpcy5fc29ydGluZy5pbml0aWFsaXplZCQsXG4gICAgICB0aGlzLl9zb3J0aW5nLnNvcnRpbmdDaGFuZ2VkJCxcbiAgICApXG4gICAgICAucGlwZShcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kkKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICBjb25zdCBzb3J0aW5nID0gdGhpcy5fc29ydGluZy52YWx1ZTtcblxuICAgICAgICBpZiAoc29ydGluZykge1xuICAgICAgICAgIHRoaXMuX3VwZGF0ZVNvcnRpbmdQYXJhbXMoc29ydGluZy52YWx1ZSwgc29ydGluZy5kaXJlY3Rpb24pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRoaXMuY2xlYXJTb3J0aW5nUGFyYW1zKCk7XG4gICAgICAgIH1cbiAgICAgIH0pXG4gIH1cblxuICBwcml2YXRlIF91cGRhdGVTb3J0aW5nUGFyYW1zKG5hbWU6IHN0cmluZywgZGlyZWN0aW9uOiBzdHJpbmcpIHtcbiAgICBpZiAodGhpcy5fcXVlcnlQYXJhbXNFbmFibGVkKSB7XG4gICAgICAvLyBGSVhNRVxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIHRoaXMuX3JvdXRlci5uYXZpZ2F0ZShbXSwge1xuICAgICAgICAgIHJlcGxhY2VVcmw6IHRydWUsXG4gICAgICAgICAgcmVsYXRpdmVUbzogdGhpcy5fcm91dGUsXG4gICAgICAgICAgcXVlcnlQYXJhbXM6IHtcbiAgICAgICAgICAgIHNvcnROYW1lOiBuYW1lLFxuICAgICAgICAgICAgc29ydERpcmVjdGlvbjogZGlyZWN0aW9uLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgcXVlcnlQYXJhbXNIYW5kbGluZzogJ21lcmdlJ1xuICAgICAgICB9KS50aGVuKCgpID0+IHt9KTtcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGlmICh0aGlzLl9wZXJzaXN0YW5jZS5lbmFibGVkKSB7XG4gICAgICBpZiAobmFtZSAmJiBkaXJlY3Rpb24pIHtcbiAgICAgICAgdGhpcy5fcGVyc2lzdGFuY2Uuc2F2ZURhdGFUb1Njb3BlKCdzb3J0aW5nJywgeyBzb3J0TmFtZTogbmFtZSwgc29ydERpcmVjdGlvbjogZGlyZWN0aW9ufSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLl9wZXJzaXN0YW5jZS5zYXZlRGF0YVRvU2NvcGUoJ3NvcnRpbmcnLCBudWxsKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF91cGRhdGVQYWdpbmF0aW9uUGFyYW1zKHBhcmFtcykge1xuICAgIGlmICh0aGlzLl9xdWVyeVBhcmFtc0VuYWJsZWQpIHtcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICB0aGlzLl9yb3V0ZXIubmF2aWdhdGUoW10sIHtcbiAgICAgICAgICByZXBsYWNlVXJsOiB0cnVlLFxuICAgICAgICAgIHJlbGF0aXZlVG86IHRoaXMuX3JvdXRlLFxuICAgICAgICAgIHF1ZXJ5UGFyYW1zOiBwYXJhbXMsXG4gICAgICAgICAgcXVlcnlQYXJhbXNIYW5kbGluZzogJ21lcmdlJ1xuICAgICAgICB9KS50aGVuKCgpID0+IHt9KTtcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGlmICh0aGlzLl9wZXJzaXN0YW5jZS5lbmFibGVkKSB7XG4gICAgICB0aGlzLl9wZXJzaXN0YW5jZS5zYXZlRGF0YVRvU2NvcGUoJ3BhZ2luZycsIHBhcmFtcyk7XG4gICAgfVxuICB9XG59XG4iXX0=
|
|
153
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0ZXJuYWwtcGFyYW1zLWNvbnRyb2xsZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYXBwL2NsYXNzZXMvZXh0ZXJuYWwtcGFyYW1zLWNvbnRyb2xsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdEMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBYzNDLE1BQU0sT0FBTyx3QkFBd0I7SUFXbkMsWUFDVSxPQUFlLEVBQ2YsTUFBc0IsRUFDdEIsWUFBbUMsRUFDbkMsVUFBZ0MsRUFDaEMsUUFBMkIsRUFDM0IsbUJBQTRCO1FBTDVCLFlBQU8sR0FBUCxPQUFPLENBQVE7UUFDZixXQUFNLEdBQU4sTUFBTSxDQUFnQjtRQUN0QixpQkFBWSxHQUFaLFlBQVksQ0FBdUI7UUFDbkMsZUFBVSxHQUFWLFVBQVUsQ0FBc0I7UUFDaEMsYUFBUSxHQUFSLFFBQVEsQ0FBbUI7UUFDM0Isd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFTO1FBZjlCLG9CQUFlLEdBQW1CO1lBQ3hDLElBQUksRUFBRSxJQUFJO1lBQ1YsS0FBSyxFQUFFLElBQUk7WUFDWCxRQUFRLEVBQUUsSUFBSTtZQUNkLGFBQWEsRUFBRSxJQUFJO1NBQ3BCLENBQUM7UUFFTSxjQUFTLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQVV0QyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDcEIsQ0FBQztJQUVELElBQVcsZUFBZTtRQUN4QixJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFO1lBQzdELE9BQU8sSUFBSSxDQUFDO1NBQ2I7UUFFRCxPQUFPO1lBQ0wsS0FBSyxFQUFFLElBQUksQ0FBQyxTQUFTO1lBQ3JCLFNBQVMsRUFBRSxJQUFJLENBQUMs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QUFDO1NBQ0o7UUFFRCxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxFQUFFO1lBQzdCLElBQUksQ0FBQyxZQUFZLENBQUMsZUFBZSxDQUFDLFFBQVEsRUFBRSxNQUFNLENBQUMsQ0FBQztTQUNyRDtJQUNILENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuXG5pbXBvcnQgeyBtZXJnZSwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBQYWdpbmF0aW9uQ29udHJvbGxlciB9IGZyb20gJy4uL2NsYXNzZXMvcGFnaW5hdGlvbi1jb250cm9sbGVyJztcbmltcG9ydCB7IFNvcnRpbmdDb250cm9sbGVyIH0gZnJvbSAnLi4vY2xhc3Nlcy9zb3J0aW5nLWNvbnRyb2xsZXInO1xuaW1wb3J0IHsgUGVyc2lzdGFuY2VDb250cm9sbGVyIH0gZnJvbSAnLi9wZXJzaXN0YW5jZS1jb250cm9sbGVyJztcblxuaW1wb3J0IHsgRnNMaXN0U29ydENvbmZpZyB9IGZyb20gJy4uL2ludGVyZmFjZXMnO1xuaW1wb3J0IHtcbiAgRXh0ZXJuYWxQYXJhbXMsXG4gIEV4dGVybmFsUXVlcnlQYWdpbmF0aW9uLFxuICBFeHRlcm5hbFF1ZXJ5U29ydGluZyxcbn0gZnJvbSAnLi4vaW50ZXJmYWNlcy9leHRlcm5hbC1wYXJhbXMuaW50ZXJmYWNlJztcblxuXG5leHBvcnQgY2xhc3MgRXh0ZXJuYWxQYXJhbXNDb250cm9sbGVyIHtcblxuICBwcml2YXRlIF9leHRlcm5hbFBhcmFtczogRXh0ZXJuYWxQYXJhbXMgPSB7XG4gICAgcGFnZTogbnVsbCxcbiAgICBsaW1pdDogbnVsbCxcbiAgICBzb3J0TmFtZTogbnVsbCxcbiAgICBzb3J0RGlyZWN0aW9uOiBudWxsLFxuICB9O1xuXG4gIHByaXZhdGUgX2Rlc3Ryb3kkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIF9yb3V0ZXI6IFJvdXRlcixcbiAgICBwcml2YXRlIF9yb3V0ZTogQWN0aXZhdGVkUm91dGUsXG4gICAgcHJpdmF0ZSBfcGVyc2lzdGFuY2U6IFBlcnNpc3RhbmNlQ29udHJvbGxlcixcbiAgICBwcml2YXRlIF9wYWdpbmF0b3I6IFBhZ2luYXRpb25Db250cm9sbGVyLFxuICAgIHByaXZhdGUgX3NvcnRpbmc6IFNvcnRpbmdDb250cm9sbGVyLFxuICAgIHByaXZhdGUgX3F1ZXJ5UGFyYW1zRW5hYmxlZDogYm9vbGVhbixcbiAgKSB7XG4gICAgdGhpcy5pbml0aWFsaXplKCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGV4dGVybmFsU29ydGluZygpOiBGc0xpc3RTb3J0Q29uZmlnIHtcbiAgICBpZiAoIXRoaXMuX2VuYWJsZWQgfHwgIXRoaXMuX3NvcnROYW1lIHx8ICF0aGlzLl9zb3J0RGlyZWN0aW9uKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgdmFsdWU6IHRoaXMuX3NvcnROYW1lLFxuICAgICAgZGlyZWN0aW9uOiB0aGlzLl9zb3J0RGlyZWN0aW9uLFxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZ2V0IF9lbmFibGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9xdWVyeVBhcmFtc0VuYWJsZWQgfHwgdGhpcy5fcGVyc2lzdGFuY2UuZW5hYmxlZDtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IF9wYWdlKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX2V4dGVybmFsUGFyYW1zLnBhZ2U7XG4gIH1cblxuICBwcml2YXRlIGdldCBfbGltaXQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5fZXh0ZXJuYWxQYXJhbXMubGltaXQ7XG4gIH1cblxuICBwcml2YXRlIGdldCBfc29ydE5hbWUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fZXh0ZXJuYWxQYXJhbXMuc29ydE5hbWU7XG4gIH1cblxuICBwcml2YXRlIGdldCBfc29ydERpcmVjdGlvbigpOiAnYXNjJyB8ICdkZXNjJyB7XG4gICAgcmV0dXJuIHRoaXMuX2V4dGVybmFsUGFyYW1zLnNvcnREaXJlY3Rpb247XG4gIH1cblxuICBwdWJsaWMgaW5pdGlhbGl6ZSgpIHtcblxuICAgIC8vIFJlc3RvcmUgZnJvbSBsb2NhbFN0b3JhZ2UgcGFyYW1ldGVycyBpZiBwZXJzaXN0YW5jZSBlbmFibGVkXG4gICAgaWYgKHRoaXMuX3BlcnNpc3RhbmNlLmVuYWJsZWQpIHtcbiAgICAgIHRoaXMuX3Jlc3RvcmVQYWdpbmF0aW9uUGFyYW1zKHRoaXMuX3BlcnNpc3RhbmNlLmdldERhdGFGcm9tU2NvcGUoJ3BhZ2luZycpKTtcbiAgICAgIHRoaXMuX3Jlc3RvcmVTb3J0aW5nUGFyYW1zKHRoaXMuX3BlcnNpc3RhbmNlLmdldERhdGFGcm9tU2NvcGUoJ3NvcnRpbmcnKSk7XG4gICAgfVxuXG4gICAgLy8gUmVzdG9yZSBmcm9tIHF1ZXJ5UGFyYW1zIGFuZCBvdmVycmlkZSBpZiBwZXJzaXN0YW5jZSBhbHJlYWR5IGhhZCB2YWx1ZXMgZm9yIHRob3NlIHBhcmFtc1xuICAgIGlmICh0aGlzLl9xdWVyeVBhcmFtc0VuYWJsZWQpIHtcbiAgICAgIHRoaXMuX3Jlc3RvcmVQYWdpbmF0aW9uUGFyYW1zKHRoaXMuX3JvdXRlLnNuYXBzaG90LnF1ZXJ5UGFyYW1zIGFzIEV4dGVybmFsUXVlcnlQYWdpbmF0aW9uKTtcbiAgICAgIHRoaXMuX3Jlc3RvcmVTb3J0aW5nUGFyYW1zKHRoaXMuX3JvdXRlLnNuYXBzaG90LnF1ZXJ5UGFyYW1zIGFzIEV4dGVybmFsUXVlcnlTb3J0aW5nKTtcbiAgICB9XG5cbiAgICAvLyBTZXQgaW5pdGlhbCBwYWdpbmF0aW9uIHBhcmFtc1xuICAgIC8vIFRoZSBzYW1lIGluaXRpYWwsIGJ1dCBmb3Igc29ydGluZyBwbGFjZWQgaW4gbGlzdC1jb250cm9sbGVyIFwidHJhbmZvcm1UZW1wbGF0ZXNUb0NvbHVtbnNcIiBtZXRob2RcbiAgICBpZiAodGhpcy5fcGFnaW5hdG9yLmVuYWJsZWQgJiYgIXRoaXMuX3BhZ2luYXRvci5pbmZpbml0eVNjcm9sbEVuYWJsZWQpIHtcbiAgICAgIGlmICh0aGlzLl9saW1pdCkge1xuICAgICAgICB0aGlzLl9wYWdpbmF0b3Iuc2V0TGltaXQodGhpcy5fbGltaXQpO1xuICAgICAgfVxuXG4gICAgICBpZiAodGhpcy5fcGFnZSkge1xuICAgICAgICB0aGlzLl9wYWdpbmF0b3IuZ29Ub1BhZ2UodGhpcy5fcGFnZSk7XG5cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBVcGRhdGUgcGFnaW5hdGlvbiBpbiBzdG9yZXNcbiAgICB0aGlzLl91cGRhdGVQYWdpbmF0aW9uUGFyYW1zKHRoaXMuX3BhZ2luYXRvci5xdWVyeVBhZ2VTdHJhdGVneSk7XG5cbiAgICB0aGlzLl9saXN0ZW5QYWdpbmF0b3JDaGFuZ2VzKCk7XG4gICAgdGhpcy5fbGlzdGVuU29ydGluZ0NoYW5nZXMoKTtcbiAgfVxuXG4gIHB1YmxpYyBjbGVhclNvcnRpbmdQYXJhbXMoKSB7XG4gICAgdGhpcy5fdXBkYXRlU29ydGluZ1BhcmFtcyhudWxsLCBudWxsKTtcbiAgfVxuXG4gIHB1YmxpYyBkZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuX2Rlc3Ryb3kkLm5leHQoKTtcbiAgICB0aGlzLl9kZXN0cm95JC5jb21wbGV0ZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBfcmVzdG9yZVBhZ2luYXRpb25QYXJhbXModmFsdWVzOiBFeHRlcm5hbFF1ZXJ5UGFnaW5hdGlvbikge1xuICAgIGlmICh2YWx1ZXM/LnBhZ2UpIHtcbiAgICAgIHRoaXMuX2V4dGVybmFsUGFyYW1zLnBhZ2UgPSArdmFsdWVzLnBhZ2U7XG4gICAgfVxuXG4gICAgaWYgKHZhbHVlcz8ubGltaXQpIHtcbiAgICAgIHRoaXMuX2V4dGVybmFsUGFyYW1zLmxpbWl0ID0gK3ZhbHVlcy5saW1pdDtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9yZXN0b3JlU29ydGluZ1BhcmFtcyh2YWx1ZXM6IEV4dGVybmFsUXVlcnlTb3J0aW5nKSB7XG4gICAgaWYgKHZhbHVlcz8uc29ydE5hbWUpIHtcbiAgICAgIHRoaXMuX2V4dGVybmFsUGFyYW1zLnNvcnROYW1lID0gdmFsdWVzLnNvcnROYW1lO1xuICAgIH1cblxuICAgIGlmICh2YWx1ZXM/LnNvcnREaXJlY3Rpb24pIHtcbiAgICAgIHRoaXMuX2V4dGVybmFsUGFyYW1zLnNvcnREaXJlY3Rpb24gPSB2YWx1ZXMuc29ydERpcmVjdGlvbjtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9saXN0ZW5QYWdpbmF0b3JDaGFuZ2VzKCkge1xuICAgIG1lcmdlKFxuICAgICAgdGhpcy5fcGFnaW5hdG9yLnBhZ2VDaGFuZ2VkJCxcbiAgICAgIHRoaXMuX3BhZ2luYXRvci5wYWdlcyQsXG4gICAgICB0aGlzLl9wYWdpbmF0b3IucGFnZVJlc2V0JCxcbiAgICApXG4gICAgICAucGlwZShcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kkKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLl91cGRhdGVQYWdpbmF0aW9uUGFyYW1zKHRoaXMuX3BhZ2luYXRvci5xdWVyeVBhZ2VTdHJhdGVneSk7XG4gICAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgX2xpc3RlblNvcnRpbmdDaGFuZ2VzKCkge1xuICAgIG1lcmdlKFxuICAgICAgdGhpcy5fc29ydGluZy5pbml0aWFsaXplZCQsXG4gICAgICB0aGlzLl9zb3J0aW5nLnNvcnRpbmdDaGFuZ2VkJCxcbiAgICApXG4gICAgICAucGlwZShcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kkKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICBjb25zdCBzb3J0aW5nID0gdGhpcy5fc29ydGluZy52YWx1ZTtcblxuICAgICAgICBpZiAoc29ydGluZykge1xuICAgICAgICAgIHRoaXMuX3VwZGF0ZVNvcnRpbmdQYXJhbXMoc29ydGluZy52YWx1ZSwgc29ydGluZy5kaXJlY3Rpb24pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRoaXMuY2xlYXJTb3J0aW5nUGFyYW1zKCk7XG4gICAgICAgIH1cbiAgICAgIH0pXG4gIH1cblxuICBwcml2YXRlIF91cGRhdGVTb3J0aW5nUGFyYW1zKG5hbWU6IHN0cmluZywgZGlyZWN0aW9uOiBzdHJpbmcpIHtcbiAgICBpZiAodGhpcy5fcXVlcnlQYXJhbXNFbmFibGVkKSB7XG4gICAgICAvLyBGSVhNRVxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIHRoaXMuX3JvdXRlci5uYXZpZ2F0ZShbXSwge1xuICAgICAgICAgIHJlcGxhY2VVcmw6IHRydWUsXG4gICAgICAgICAgcmVsYXRpdmVUbzogdGhpcy5fcm91dGUsXG4gICAgICAgICAgcXVlcnlQYXJhbXM6IHtcbiAgICAgICAgICAgIHNvcnROYW1lOiBuYW1lLFxuICAgICAgICAgICAgc29ydERpcmVjdGlvbjogZGlyZWN0aW9uLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgcXVlcnlQYXJhbXNIYW5kbGluZzogJ21lcmdlJ1xuICAgICAgICB9KS50aGVuKCgpID0+IHt9KTtcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGlmICh0aGlzLl9wZXJzaXN0YW5jZS5lbmFibGVkKSB7XG4gICAgICBpZiAobmFtZSAmJiBkaXJlY3Rpb24pIHtcbiAgICAgICAgdGhpcy5fcGVyc2lzdGFuY2Uuc2F2ZURhdGFUb1Njb3BlKCdzb3J0aW5nJywgeyBzb3J0TmFtZTogbmFtZSwgc29ydERpcmVjdGlvbjogZGlyZWN0aW9ufSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLl9wZXJzaXN0YW5jZS5zYXZlRGF0YVRvU2NvcGUoJ3NvcnRpbmcnLCBudWxsKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF91cGRhdGVQYWdpbmF0aW9uUGFyYW1zKHBhcmFtcykge1xuICAgIGlmICh0aGlzLl9xdWVyeVBhcmFtc0VuYWJsZWQpIHtcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICB0aGlzLl9yb3V0ZXIubmF2aWdhdGUoW10sIHtcbiAgICAgICAgICByZXBsYWNlVXJsOiB0cnVlLFxuICAgICAgICAgIHJlbGF0aXZlVG86IHRoaXMuX3JvdXRlLFxuICAgICAgICAgIHF1ZXJ5UGFyYW1zOiBwYXJhbXMsXG4gICAgICAgICAgcXVlcnlQYXJhbXNIYW5kbGluZzogJ21lcmdlJ1xuICAgICAgICB9KS50aGVuKCgpID0+IHt9KTtcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGlmICh0aGlzLl9wZXJzaXN0YW5jZS5lbmFibGVkKSB7XG4gICAgICB0aGlzLl9wZXJzaXN0YW5jZS5zYXZlRGF0YVRvU2NvcGUoJ3BhZ2luZycsIHBhcmFtcyk7XG4gICAgfVxuICB9XG59XG4iXX0=
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export { ActionsController } from './actions-controller';
|
|
2
2
|
export { ColumnsController } from './columns-controller';
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYXBwL2NsYXNzZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDekQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgeyBBY3Rpb25zQ29udHJvbGxlciB9IGZyb20gJy4vYWN0aW9ucy1jb250cm9sbGVyJztcbmV4cG9ydCB7IENvbHVtbnNDb250cm9sbGVyIH0gZnJvbSAnLi9jb2x1bW5zLWNvbnRyb2xsZXInO1xuIl19
|