@skyux/ag-grid 8.7.2 → 9.0.0-alpha.1
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/documentation.json +207 -207
- package/{esm2020 → esm2022}/lib/modules/ag-grid/ag-grid-adapter.service.mjs +8 -11
- package/esm2022/lib/modules/ag-grid/ag-grid-data-manager-adapter.directive.mjs +240 -0
- package/{esm2020 → esm2022}/lib/modules/ag-grid/ag-grid-row-delete.component.mjs +6 -6
- package/esm2022/lib/modules/ag-grid/ag-grid-row-delete.directive.mjs +268 -0
- package/esm2022/lib/modules/ag-grid/ag-grid-wrapper.component.mjs +259 -0
- package/{esm2020 → esm2022}/lib/modules/ag-grid/ag-grid.module.mjs +51 -51
- package/esm2022/lib/modules/ag-grid/ag-grid.service.mjs +457 -0
- package/esm2022/lib/modules/ag-grid/cell-editors/cell-editor-autocomplete/cell-editor-autocomplete.component.mjs +72 -0
- package/{esm2020 → esm2022}/lib/modules/ag-grid/cell-editors/cell-editor-autocomplete/cell-editor-autocomplete.module.mjs +9 -9
- package/esm2022/lib/modules/ag-grid/cell-editors/cell-editor-currency/cell-editor-currency.component.mjs +95 -0
- package/{esm2020 → esm2022}/lib/modules/ag-grid/cell-editors/cell-editor-currency/cell-editor-currency.module.mjs +9 -9
- package/esm2022/lib/modules/ag-grid/cell-editors/cell-editor-datepicker/cell-editor-datepicker.component.mjs +119 -0
- package/{esm2020 → esm2022}/lib/modules/ag-grid/cell-editors/cell-editor-datepicker/cell-editor-datepicker.module.mjs +5 -5
- package/esm2022/lib/modules/ag-grid/cell-editors/cell-editor-lookup/cell-editor-lookup.component.mjs +109 -0
- package/{esm2020 → esm2022}/lib/modules/ag-grid/cell-editors/cell-editor-lookup/cell-editor-lookup.module.mjs +13 -13
- package/esm2022/lib/modules/ag-grid/cell-editors/cell-editor-number/cell-editor-number.component.mjs +77 -0
- package/{esm2020 → esm2022}/lib/modules/ag-grid/cell-editors/cell-editor-number/cell-editor-number.module.mjs +5 -5
- package/esm2022/lib/modules/ag-grid/cell-editors/cell-editor-text/cell-editor-text.component.mjs +75 -0
- package/{esm2020 → esm2022}/lib/modules/ag-grid/cell-editors/cell-editor-text/cell-editor-text.module.mjs +5 -5
- package/esm2022/lib/modules/ag-grid/cell-renderers/cell-renderer-currency/cell-renderer-currency-validator.component.mjs +42 -0
- package/esm2022/lib/modules/ag-grid/cell-renderers/cell-renderer-currency/cell-renderer-currency.component.mjs +49 -0
- package/{esm2020 → esm2022}/lib/modules/ag-grid/cell-renderers/cell-renderer-currency/cell-renderer-currency.module.mjs +15 -15
- package/esm2022/lib/modules/ag-grid/cell-renderers/cell-renderer-lookup/cell-renderer-lookup.component.mjs +31 -0
- package/{esm2020 → esm2022}/lib/modules/ag-grid/cell-renderers/cell-renderer-lookup/cell-renderer-lookup.module.mjs +5 -5
- package/esm2022/lib/modules/ag-grid/cell-renderers/cell-renderer-row-selector/cell-renderer-row-selector.component.mjs +78 -0
- package/{esm2020 → esm2022}/lib/modules/ag-grid/cell-renderers/cell-renderer-row-selector/cell-renderer-row-selector.module.mjs +5 -5
- package/esm2022/lib/modules/ag-grid/cell-renderers/cell-renderer-validator-tooltip/cell-renderer-validator-tooltip.component.mjs +38 -0
- package/{esm2020 → esm2022}/lib/modules/ag-grid/cell-renderers/cell-renderer-validator-tooltip/cell-renderer-validator-tooltip.module.mjs +5 -5
- package/esm2022/lib/modules/ag-grid/cell-validator/ag-grid-cell-validator-tooltip.component.mjs +88 -0
- package/{esm2020 → esm2022}/lib/modules/ag-grid/cell-validator/ag-grid-cell-validator.module.mjs +5 -5
- package/esm2022/lib/modules/ag-grid/header/header-group.component.mjs +97 -0
- package/esm2022/lib/modules/ag-grid/header/header.component.mjs +144 -0
- package/{esm2020 → esm2022}/lib/modules/ag-grid/types/header-group-info.mjs +4 -4
- package/{esm2020 → esm2022}/lib/modules/ag-grid/types/header-info.mjs +4 -4
- package/esm2022/lib/modules/shared/sky-ag-grid-resources.module.mjs +74 -0
- package/fesm2022/skyux-ag-grid.mjs +3025 -0
- package/fesm2022/skyux-ag-grid.mjs.map +1 -0
- package/lib/modules/ag-grid/ag-grid-data-manager-adapter.directive.d.ts +1 -1
- package/lib/modules/ag-grid/ag-grid-row-delete.directive.d.ts +1 -1
- package/lib/modules/ag-grid/cell-renderers/cell-renderer-currency/cell-renderer-currency-validator.component.d.ts +1 -1
- package/lib/modules/ag-grid/cell-renderers/cell-renderer-currency/cell-renderer-currency.component.d.ts +1 -1
- package/lib/modules/ag-grid/cell-renderers/cell-renderer-validator-tooltip/cell-renderer-validator-tooltip.component.d.ts +1 -1
- package/lib/modules/ag-grid/cell-validator/ag-grid-cell-validator-tooltip.component.d.ts +1 -1
- package/package.json +19 -25
- package/esm2020/lib/modules/ag-grid/ag-grid-data-manager-adapter.directive.mjs +0 -233
- package/esm2020/lib/modules/ag-grid/ag-grid-row-delete.directive.mjs +0 -264
- package/esm2020/lib/modules/ag-grid/ag-grid-wrapper.component.mjs +0 -247
- package/esm2020/lib/modules/ag-grid/ag-grid.service.mjs +0 -453
- package/esm2020/lib/modules/ag-grid/cell-editors/cell-editor-autocomplete/cell-editor-autocomplete.component.mjs +0 -75
- package/esm2020/lib/modules/ag-grid/cell-editors/cell-editor-currency/cell-editor-currency.component.mjs +0 -98
- package/esm2020/lib/modules/ag-grid/cell-editors/cell-editor-datepicker/cell-editor-datepicker.component.mjs +0 -122
- package/esm2020/lib/modules/ag-grid/cell-editors/cell-editor-lookup/cell-editor-lookup.component.mjs +0 -112
- package/esm2020/lib/modules/ag-grid/cell-editors/cell-editor-number/cell-editor-number.component.mjs +0 -80
- package/esm2020/lib/modules/ag-grid/cell-editors/cell-editor-text/cell-editor-text.component.mjs +0 -78
- package/esm2020/lib/modules/ag-grid/cell-renderers/cell-renderer-currency/cell-renderer-currency-validator.component.mjs +0 -45
- package/esm2020/lib/modules/ag-grid/cell-renderers/cell-renderer-currency/cell-renderer-currency.component.mjs +0 -52
- package/esm2020/lib/modules/ag-grid/cell-renderers/cell-renderer-lookup/cell-renderer-lookup.component.mjs +0 -34
- package/esm2020/lib/modules/ag-grid/cell-renderers/cell-renderer-row-selector/cell-renderer-row-selector.component.mjs +0 -80
- package/esm2020/lib/modules/ag-grid/cell-renderers/cell-renderer-validator-tooltip/cell-renderer-validator-tooltip.component.mjs +0 -41
- package/esm2020/lib/modules/ag-grid/cell-validator/ag-grid-cell-validator-tooltip.component.mjs +0 -90
- package/esm2020/lib/modules/ag-grid/header/header-group.component.mjs +0 -95
- package/esm2020/lib/modules/ag-grid/header/header.component.mjs +0 -141
- package/esm2020/lib/modules/shared/sky-ag-grid-resources.module.mjs +0 -74
- package/fesm2015/skyux-ag-grid.mjs +0 -2996
- package/fesm2015/skyux-ag-grid.mjs.map +0 -1
- package/fesm2020/skyux-ag-grid.mjs +0 -3012
- package/fesm2020/skyux-ag-grid.mjs.map +0 -1
- /package/{esm2020 → esm2022}/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/modules/ag-grid/apply-lookup-properties-defaults.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/modules/ag-grid/icons/icon-map.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/modules/ag-grid/types/ag-grid-row-delete-cancel-args.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/modules/ag-grid/types/ag-grid-row-delete-config.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/modules/ag-grid/types/ag-grid-row-delete-confirm-args.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/modules/ag-grid/types/ag-grid-row-delete-contents.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/modules/ag-grid/types/autocomplete-properties.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/modules/ag-grid/types/cell-class.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/modules/ag-grid/types/cell-editor-autocomplete-params.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/modules/ag-grid/types/cell-editor-currency-params.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/modules/ag-grid/types/cell-editor-datepicker-params.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/modules/ag-grid/types/cell-editor-initial-action.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/modules/ag-grid/types/cell-editor-lookup-params.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/modules/ag-grid/types/cell-editor-number-params.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/modules/ag-grid/types/cell-editor-text-params.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/modules/ag-grid/types/cell-editor-utils.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/modules/ag-grid/types/cell-renderer-currency-params.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/modules/ag-grid/types/cell-renderer-lookup-params.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/modules/ag-grid/types/cell-renderer-validator-params.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/modules/ag-grid/types/cell-type.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/modules/ag-grid/types/currency-properties.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/modules/ag-grid/types/datepicker-properties.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/modules/ag-grid/types/header-class.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/modules/ag-grid/types/header-group-params.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/modules/ag-grid/types/header-params.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/modules/ag-grid/types/lookup-properties.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/modules/ag-grid/types/number-properties.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/modules/ag-grid/types/sky-grid-options.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/modules/ag-grid/types/text-properties.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/modules/ag-grid/types/validator-properties.mjs +0 -0
- /package/{esm2020 → esm2022}/skyux-ag-grid.mjs +0 -0
|
@@ -1,12 +1,10 @@
|
|
|
1
|
-
var _SkyAgGridAdapterService_skyAdapterService;
|
|
2
|
-
import { __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
|
|
3
1
|
import { Injectable } from '@angular/core';
|
|
4
2
|
import * as i0 from "@angular/core";
|
|
5
3
|
import * as i1 from "@skyux/core";
|
|
6
4
|
export class SkyAgGridAdapterService {
|
|
5
|
+
#skyAdapterService;
|
|
7
6
|
constructor(skyAdapterService) {
|
|
8
|
-
|
|
9
|
-
__classPrivateFieldSet(this, _SkyAgGridAdapterService_skyAdapterService, skyAdapterService, "f");
|
|
7
|
+
this.#skyAdapterService = skyAdapterService;
|
|
10
8
|
}
|
|
11
9
|
getElementOrParentWithClass(element, className) {
|
|
12
10
|
if (element && element.classList.contains(className)) {
|
|
@@ -29,7 +27,7 @@ export class SkyAgGridAdapterService {
|
|
|
29
27
|
}
|
|
30
28
|
getNextFocusableElement(currentEl, parentEl, moveFocusLeft) {
|
|
31
29
|
if (parentEl) {
|
|
32
|
-
const focusableChildren =
|
|
30
|
+
const focusableChildren = this.#skyAdapterService.getFocusableChildren(parentEl);
|
|
33
31
|
const currentElementIndex = focusableChildren.indexOf(currentEl);
|
|
34
32
|
const nextIndex = moveFocusLeft
|
|
35
33
|
? currentElementIndex - 1
|
|
@@ -42,7 +40,7 @@ export class SkyAgGridAdapterService {
|
|
|
42
40
|
return undefined;
|
|
43
41
|
}
|
|
44
42
|
focusOnFocusableChildren(element) {
|
|
45
|
-
const focusableChildren =
|
|
43
|
+
const focusableChildren = this.#skyAdapterService.getFocusableChildren(element);
|
|
46
44
|
if (focusableChildren.length) {
|
|
47
45
|
focusableChildren[0].focus();
|
|
48
46
|
}
|
|
@@ -51,14 +49,13 @@ export class SkyAgGridAdapterService {
|
|
|
51
49
|
const columnHeader = parentEl.querySelector(`.ag-header-cell[col-id="${colId}"]`);
|
|
52
50
|
columnHeader?.focus();
|
|
53
51
|
}
|
|
52
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyAgGridAdapterService, deps: [{ token: i1.SkyCoreAdapterService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
53
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyAgGridAdapterService, providedIn: 'root' }); }
|
|
54
54
|
}
|
|
55
|
-
|
|
56
|
-
SkyAgGridAdapterService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SkyAgGridAdapterService, deps: [{ token: i1.SkyCoreAdapterService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
57
|
-
SkyAgGridAdapterService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SkyAgGridAdapterService, providedIn: 'root' });
|
|
58
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SkyAgGridAdapterService, decorators: [{
|
|
55
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyAgGridAdapterService, decorators: [{
|
|
59
56
|
type: Injectable,
|
|
60
57
|
args: [{
|
|
61
58
|
providedIn: 'root',
|
|
62
59
|
}]
|
|
63
60
|
}], ctorParameters: function () { return [{ type: i1.SkyCoreAdapterService }]; } });
|
|
64
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
61
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWctZ3JpZC1hZGFwdGVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvYWctZ3JpZC9zcmMvbGliL21vZHVsZXMvYWctZ3JpZC9hZy1ncmlkLWFkYXB0ZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFNM0MsTUFBTSxPQUFPLHVCQUF1QjtJQUNsQyxrQkFBa0IsQ0FBd0I7SUFFMUMsWUFBWSxpQkFBd0M7UUFDbEQsSUFBSSxDQUFDLGtCQUFrQixHQUFHLGlCQUFpQixDQUFDO0lBQzlDLENBQUM7SUFFTSwyQkFBMkIsQ0FDaEMsT0FBb0IsRUFDcEIsU0FBaUI7UUFFakIsSUFBSSxPQUFPLElBQUksT0FBTyxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLEVBQUU7WUFDcEQsT0FBTyxPQUFPLENBQUM7U0FDaEI7YUFBTSxJQUFJLE9BQU8sQ0FBQyxhQUFhLEVBQUU7WUFDaEMsT0FBTyxJQUFJLENBQUMsMkJBQTJCLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFBRSxTQUFTLENBQUMsQ0FBQztTQUMzRTtRQUVELE9BQU8sU0FBUyxDQUFDO0lBQ25CLENBQUM7SUFFTSxxQkFBcUIsQ0FBQyxRQUFxQixFQUFFLFFBQWdCO1FBQ2xFLE1BQU0sT0FBTyxHQUFHLFFBQVEsQ0FBQyxhQUFhLENBQUMsSUFBSSxRQUFRLEVBQUUsQ0FBZ0IsQ0FBQztRQUV0RSwwQkFBMEI7UUFDMUIsSUFBSSxPQUFPLEVBQUU7WUFDWCxPQUFPLENBQUMsS0FBSyxFQUFFLENBQUM7U0FDakI7SUFDSCxDQUFDO0lBRU0saUJBQWlCO1FBQ3RCLE9BQU8sUUFBUSxDQUFDLGFBQTRCLENBQUM7SUFDL0MsQ0FBQztJQUVNLHVCQUF1QixDQUM1QixTQUFzQixFQUN0QixRQUFzQixFQUN0QixhQUF1QjtRQUV2QixJQUFJLFFBQVEsRUFBRTtZQUNaLE1BQU0saUJBQWlCLEdBQ3JCLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxvQkFBb0IsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUN6RCxNQUFNLG1CQUFtQixHQUFHLGlCQUFpQixDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUNqRSxNQUFNLFNBQVMsR0FBRyxhQUFhO2dCQUM3QixDQUFDLENBQUMsbUJBQW1CLEdBQUcsQ0FBQztnQkFDekIsQ0FBQyxDQUFDLG1CQUFtQixHQUFHLENBQUMsQ0FBQztZQUU1QixJQUNFLENBQUMsQ0FBQyxhQUFhLElBQUksaUJBQWlCLENBQUMsTUFBTSxJQUFJLFNBQVMsQ0FBQztnQkFDekQsQ0FBQyxhQUFhLElBQUksU0FBUyxJQUFJLENBQUMsQ0FBQyxFQUNqQztnQkFDQSxPQUFPLGlCQUFpQixDQUFDLFNBQVMsQ0FBQyxDQUFDO2FBQ3JDO1NBQ0Y7UUFFRCxPQUFPLFNBQVMsQ0FBQztJQUNuQixDQUFDO0lBRU0sd0JBQXdCLENBQUMsT0FBb0I7UUFDbEQsTUFBTSxpQkFBaUIsR0FDckIsSUFBSSxDQUFDLGtCQUFrQixDQUFDLG9CQUFvQixDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRXhELElBQUksaUJBQWlCLENBQUMsTUFBTSxFQUFFO1lBQzVCLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDO1NBQzlCO0lBQ0gsQ0FBQztJQUVNLG1CQUFtQixDQUFDLFFBQXFCLEVBQUUsS0FBYTtRQUM3RCxNQUFNLFlBQVksR0FBRyxRQUFRLENBQUMsYUFBYSxDQUN6QywyQkFBMkIsS0FBSyxJQUFJLENBQ1YsQ0FBQztRQUM3QixZQUFZLEVBQUUsS0FBSyxFQUFFLENBQUM7SUFDeEIsQ0FBQzs4R0F2RVUsdUJBQXVCO2tIQUF2Qix1QkFBdUIsY0FGdEIsTUFBTTs7MkZBRVAsdUJBQXVCO2tCQUhuQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNreUNvcmVBZGFwdGVyU2VydmljZSB9IGZyb20gJ0Bza3l1eC9jb3JlJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIFNreUFnR3JpZEFkYXB0ZXJTZXJ2aWNlIHtcbiAgI3NreUFkYXB0ZXJTZXJ2aWNlOiBTa3lDb3JlQWRhcHRlclNlcnZpY2U7XG5cbiAgY29uc3RydWN0b3Ioc2t5QWRhcHRlclNlcnZpY2U6IFNreUNvcmVBZGFwdGVyU2VydmljZSkge1xuICAgIHRoaXMuI3NreUFkYXB0ZXJTZXJ2aWNlID0gc2t5QWRhcHRlclNlcnZpY2U7XG4gIH1cblxuICBwdWJsaWMgZ2V0RWxlbWVudE9yUGFyZW50V2l0aENsYXNzKFxuICAgIGVsZW1lbnQ6IEhUTUxFbGVtZW50LFxuICAgIGNsYXNzTmFtZTogc3RyaW5nXG4gICk6IEhUTUxFbGVtZW50IHwgdW5kZWZpbmVkIHtcbiAgICBpZiAoZWxlbWVudCAmJiBlbGVtZW50LmNsYXNzTGlzdC5jb250YWlucyhjbGFzc05hbWUpKSB7XG4gICAgICByZXR1cm4gZWxlbWVudDtcbiAgICB9IGVsc2UgaWYgKGVsZW1lbnQucGFyZW50RWxlbWVudCkge1xuICAgICAgcmV0dXJuIHRoaXMuZ2V0RWxlbWVudE9yUGFyZW50V2l0aENsYXNzKGVsZW1lbnQucGFyZW50RWxlbWVudCwgY2xhc3NOYW1lKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG5cbiAgcHVibGljIHNldEZvY3VzZWRFbGVtZW50QnlJZChwYXJlbnRFbDogSFRNTEVsZW1lbnQsIHNlbGVjdG9yOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBjb25zdCBlbGVtZW50ID0gcGFyZW50RWwucXVlcnlTZWxlY3RvcihgIyR7c2VsZWN0b3J9YCkgYXMgSFRNTEVsZW1lbnQ7XG5cbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgIGlmIChlbGVtZW50KSB7XG4gICAgICBlbGVtZW50LmZvY3VzKCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldEZvY3VzZWRFbGVtZW50KCk6IEhUTUxFbGVtZW50IHtcbiAgICByZXR1cm4gZG9jdW1lbnQuYWN0aXZlRWxlbWVudCBhcyBIVE1MRWxlbWVudDtcbiAgfVxuXG4gIHB1YmxpYyBnZXROZXh0Rm9jdXNhYmxlRWxlbWVudChcbiAgICBjdXJyZW50RWw6IEhUTUxFbGVtZW50LFxuICAgIHBhcmVudEVsPzogSFRNTEVsZW1lbnQsXG4gICAgbW92ZUZvY3VzTGVmdD86IGJvb2xlYW5cbiAgKTogSFRNTEVsZW1lbnQgfCB1bmRlZmluZWQge1xuICAgIGlmIChwYXJlbnRFbCkge1xuICAgICAgY29uc3QgZm9jdXNhYmxlQ2hpbGRyZW4gPVxuICAgICAgICB0aGlzLiNza3lBZGFwdGVyU2VydmljZS5nZXRGb2N1c2FibGVDaGlsZHJlbihwYXJlbnRFbCk7XG4gICAgICBjb25zdCBjdXJyZW50RWxlbWVudEluZGV4ID0gZm9jdXNhYmxlQ2hpbGRyZW4uaW5kZXhPZihjdXJyZW50RWwpO1xuICAgICAgY29uc3QgbmV4dEluZGV4ID0gbW92ZUZvY3VzTGVmdFxuICAgICAgICA/IGN1cnJlbnRFbGVtZW50SW5kZXggLSAxXG4gICAgICAgIDogY3VycmVudEVsZW1lbnRJbmRleCArIDE7XG5cbiAgICAgIGlmIChcbiAgICAgICAgKCFtb3ZlRm9jdXNMZWZ0ICYmIGZvY3VzYWJsZUNoaWxkcmVuLmxlbmd0aCA+PSBuZXh0SW5kZXgpIHx8XG4gICAgICAgIChtb3ZlRm9jdXNMZWZ0ICYmIG5leHRJbmRleCA+PSAwKVxuICAgICAgKSB7XG4gICAgICAgIHJldHVybiBmb2N1c2FibGVDaGlsZHJlbltuZXh0SW5kZXhdO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cblxuICBwdWJsaWMgZm9jdXNPbkZvY3VzYWJsZUNoaWxkcmVuKGVsZW1lbnQ6IEhUTUxFbGVtZW50KTogdm9pZCB7XG4gICAgY29uc3QgZm9jdXNhYmxlQ2hpbGRyZW4gPVxuICAgICAgdGhpcy4jc2t5QWRhcHRlclNlcnZpY2UuZ2V0Rm9jdXNhYmxlQ2hpbGRyZW4oZWxlbWVudCk7XG5cbiAgICBpZiAoZm9jdXNhYmxlQ2hpbGRyZW4ubGVuZ3RoKSB7XG4gICAgICBmb2N1c2FibGVDaGlsZHJlblswXS5mb2N1cygpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBmb2N1c09uQ29sdW1uSGVhZGVyKHBhcmVudEVsOiBIVE1MRWxlbWVudCwgY29sSWQ6IHN0cmluZyk6IHZvaWQge1xuICAgIGNvbnN0IGNvbHVtbkhlYWRlciA9IHBhcmVudEVsLnF1ZXJ5U2VsZWN0b3IoXG4gICAgICBgLmFnLWhlYWRlci1jZWxsW2NvbC1pZD1cIiR7Y29sSWR9XCJdYFxuICAgICkgYXMgSFRNTEVsZW1lbnQgfCB1bmRlZmluZWQ7XG4gICAgY29sdW1uSGVhZGVyPy5mb2N1cygpO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,240 @@
|
|
|
1
|
+
import { ContentChildren, Directive, Input, } from '@angular/core';
|
|
2
|
+
import { AgGridAngular } from 'ag-grid-angular';
|
|
3
|
+
import { Subject } from 'rxjs';
|
|
4
|
+
import { filter, takeUntil } from 'rxjs/operators';
|
|
5
|
+
import { SkyAgGridWrapperComponent } from './ag-grid-wrapper.component';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "@skyux/data-manager";
|
|
8
|
+
/**
|
|
9
|
+
* @internal
|
|
10
|
+
*/
|
|
11
|
+
export class SkyAgGridDataManagerAdapterDirective {
|
|
12
|
+
#currentAgGrid;
|
|
13
|
+
#currentDataState;
|
|
14
|
+
#currentSkyAgGridWrapper;
|
|
15
|
+
#dataStateSub;
|
|
16
|
+
#viewConfig;
|
|
17
|
+
#ngUnsubscribe = new Subject();
|
|
18
|
+
#changeDetector;
|
|
19
|
+
#dataManagerSvc;
|
|
20
|
+
constructor(changeDetector, dataManagerSvc) {
|
|
21
|
+
this.#changeDetector = changeDetector;
|
|
22
|
+
this.#dataManagerSvc = dataManagerSvc;
|
|
23
|
+
}
|
|
24
|
+
ngAfterContentInit() {
|
|
25
|
+
if (this.viewId) {
|
|
26
|
+
this.#dataManagerSvc.setViewkeeperClasses(this.viewId, ['.ag-header']);
|
|
27
|
+
this.#viewConfig = this.#dataManagerSvc.getViewById(this.viewId);
|
|
28
|
+
this.#checkForAgGrid();
|
|
29
|
+
this.#checkForSkyAgGridWrapper();
|
|
30
|
+
this.agGridList?.changes
|
|
31
|
+
.pipe(takeUntil(this.#ngUnsubscribe))
|
|
32
|
+
.subscribe(() => this.#checkForAgGrid());
|
|
33
|
+
this.skyAgGridWrapperList?.changes
|
|
34
|
+
.pipe(takeUntil(this.#ngUnsubscribe))
|
|
35
|
+
.subscribe(() => this.#checkForSkyAgGridWrapper());
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
ngOnDestroy() {
|
|
39
|
+
this.#ngUnsubscribe.next();
|
|
40
|
+
this.#ngUnsubscribe.complete();
|
|
41
|
+
}
|
|
42
|
+
#checkForAgGrid() {
|
|
43
|
+
if (this.agGridList) {
|
|
44
|
+
const agGridCount = this.agGridList.length;
|
|
45
|
+
/* istanbul ignore else */
|
|
46
|
+
if (agGridCount === 0) {
|
|
47
|
+
this.#unregisterAgGrid();
|
|
48
|
+
}
|
|
49
|
+
else if (this.agGridList.first !== this.#currentAgGrid) {
|
|
50
|
+
this.#registerAgGrid();
|
|
51
|
+
}
|
|
52
|
+
if (agGridCount > 1) {
|
|
53
|
+
console.warn('More than one ag-grid child component was found. Using the first ag-Grid.');
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
#checkForSkyAgGridWrapper() {
|
|
58
|
+
if (this.skyAgGridWrapperList) {
|
|
59
|
+
const skyAgGridWrapperCount = this.skyAgGridWrapperList.length;
|
|
60
|
+
/* istanbul ignore else */
|
|
61
|
+
if (skyAgGridWrapperCount === 0) {
|
|
62
|
+
this.#unregisterSkyAgGridWrapper();
|
|
63
|
+
}
|
|
64
|
+
else if (this.skyAgGridWrapperList.first !== this.#currentSkyAgGridWrapper) {
|
|
65
|
+
this.#registerSkyAgGridWrapper();
|
|
66
|
+
}
|
|
67
|
+
if (skyAgGridWrapperCount > 1) {
|
|
68
|
+
console.warn('More than one ag-grid child component was found. Using the first ag-Grid.');
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
#unregisterAgGrid() {
|
|
73
|
+
this.#currentAgGrid = undefined;
|
|
74
|
+
/* istanbul ignore if */
|
|
75
|
+
if (this.#dataStateSub) {
|
|
76
|
+
this.#dataStateSub.unsubscribe();
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
#unregisterSkyAgGridWrapper() {
|
|
80
|
+
this.#currentSkyAgGridWrapper = undefined;
|
|
81
|
+
}
|
|
82
|
+
#registerSkyAgGridWrapper() {
|
|
83
|
+
this.#unregisterSkyAgGridWrapper();
|
|
84
|
+
this.#currentSkyAgGridWrapper = this.skyAgGridWrapperList?.first;
|
|
85
|
+
setTimeout(() => {
|
|
86
|
+
if (this.#currentSkyAgGridWrapper) {
|
|
87
|
+
this.#currentSkyAgGridWrapper.viewkeeperClasses = [];
|
|
88
|
+
}
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
#registerAgGrid() {
|
|
92
|
+
this.#unregisterAgGrid();
|
|
93
|
+
const agGrid = this.agGridList?.first;
|
|
94
|
+
this.#currentAgGrid = agGrid;
|
|
95
|
+
if (agGrid) {
|
|
96
|
+
agGrid.gridReady.pipe(takeUntil(this.#ngUnsubscribe)).subscribe(() => {
|
|
97
|
+
if (this.#viewConfig && this.viewId) {
|
|
98
|
+
this.#viewConfig.onSelectAllClick = this.#selectAll.bind(this);
|
|
99
|
+
this.#viewConfig.onClearAllClick = this.#clearAll.bind(this);
|
|
100
|
+
this.#dataManagerSvc.updateViewConfig(this.#viewConfig);
|
|
101
|
+
this.#dataStateSub = this.#dataManagerSvc
|
|
102
|
+
.getDataStateUpdates(this.#viewConfig.id)
|
|
103
|
+
.pipe(takeUntil(this.#ngUnsubscribe))
|
|
104
|
+
.subscribe((dataState) => {
|
|
105
|
+
this.#currentDataState = dataState;
|
|
106
|
+
this.#displayColumns(dataState);
|
|
107
|
+
});
|
|
108
|
+
if (agGrid.gridOptions.context?.enableTopScroll) {
|
|
109
|
+
this.#dataManagerSvc.setViewkeeperClasses(this.viewId, [
|
|
110
|
+
'.ag-header',
|
|
111
|
+
'.ag-body-horizontal-scroll',
|
|
112
|
+
]);
|
|
113
|
+
}
|
|
114
|
+
agGrid.api.sizeColumnsToFit();
|
|
115
|
+
}
|
|
116
|
+
});
|
|
117
|
+
agGrid.columnMoved
|
|
118
|
+
.pipe(takeUntil(this.#ngUnsubscribe), filter((event) => ![
|
|
119
|
+
'gridInitializing',
|
|
120
|
+
'uiColumnResized',
|
|
121
|
+
'uiColumnDragged',
|
|
122
|
+
'api',
|
|
123
|
+
].includes(event.source)))
|
|
124
|
+
.subscribe((value) => {
|
|
125
|
+
this.#updateColumnsInCurrentDataState(value.columnApi);
|
|
126
|
+
});
|
|
127
|
+
agGrid.dragStopped
|
|
128
|
+
.pipe(takeUntil(this.#ngUnsubscribe))
|
|
129
|
+
.subscribe((value) => {
|
|
130
|
+
this.#updateColumnsInCurrentDataState(value.columnApi);
|
|
131
|
+
});
|
|
132
|
+
agGrid.rowSelected
|
|
133
|
+
.pipe(takeUntil(this.#ngUnsubscribe))
|
|
134
|
+
.subscribe((event) => {
|
|
135
|
+
if (this.#viewConfig && this.#currentDataState) {
|
|
136
|
+
const row = event.node;
|
|
137
|
+
const selectedIds = this.#currentDataState.selectedIds || [];
|
|
138
|
+
const rowIndex = selectedIds.indexOf(row.data.id);
|
|
139
|
+
if (row.isSelected() && rowIndex === -1) {
|
|
140
|
+
selectedIds.push(row.data.id);
|
|
141
|
+
}
|
|
142
|
+
else if (!row.isSelected() && rowIndex !== -1) {
|
|
143
|
+
selectedIds.splice(rowIndex, 1);
|
|
144
|
+
}
|
|
145
|
+
this.#currentDataState.selectedIds = selectedIds;
|
|
146
|
+
this.#dataManagerSvc.updateDataState(this.#currentDataState, this.#viewConfig.id);
|
|
147
|
+
this.#changeDetector.markForCheck();
|
|
148
|
+
}
|
|
149
|
+
});
|
|
150
|
+
agGrid.sortChanged.pipe(takeUntil(this.#ngUnsubscribe)).subscribe(() => {
|
|
151
|
+
const gridColumnStates = agGrid.columnApi.getColumnState();
|
|
152
|
+
let sortOption;
|
|
153
|
+
/* istanbul ignore else */
|
|
154
|
+
if (gridColumnStates.length) {
|
|
155
|
+
const activeSortColumnState = gridColumnStates.find((aGridColumnState) => aGridColumnState.sortIndex === 0);
|
|
156
|
+
const dataManagerConfig = this.#dataManagerSvc.getCurrentDataManagerConfig();
|
|
157
|
+
/* istanbul ignore else */
|
|
158
|
+
if (dataManagerConfig.sortOptions && activeSortColumnState) {
|
|
159
|
+
sortOption = dataManagerConfig.sortOptions.find((option) => {
|
|
160
|
+
return (option.propertyName === activeSortColumnState.colId &&
|
|
161
|
+
option.descending === (activeSortColumnState.sort === 'desc'));
|
|
162
|
+
});
|
|
163
|
+
}
|
|
164
|
+
else {
|
|
165
|
+
sortOption = undefined;
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
if (this.#viewConfig && this.#currentDataState) {
|
|
169
|
+
this.#currentDataState.activeSortOption = sortOption;
|
|
170
|
+
this.#dataManagerSvc.updateDataState(this.#currentDataState, this.#viewConfig.id);
|
|
171
|
+
}
|
|
172
|
+
});
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
#updateColumnsInCurrentDataState(columnApi) {
|
|
176
|
+
if (this.#viewConfig && this.#currentDataState) {
|
|
177
|
+
const columnOrder = this.#getColumnOrder(columnApi);
|
|
178
|
+
const viewState = this.#currentDataState.getViewStateById(this.#viewConfig.id);
|
|
179
|
+
if (viewState &&
|
|
180
|
+
(viewState.displayedColumnIds.length !== columnOrder.length ||
|
|
181
|
+
viewState.displayedColumnIds.some((col, i) => col !== columnOrder[i]))) {
|
|
182
|
+
viewState.displayedColumnIds = columnOrder;
|
|
183
|
+
this.#dataManagerSvc.updateDataState(this.#currentDataState.addOrUpdateView(this.#viewConfig.id, viewState), this.#viewConfig.id);
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
#getColumnOrder(columnApi) {
|
|
188
|
+
return columnApi
|
|
189
|
+
.getColumnState()
|
|
190
|
+
.filter((state) => !state.hide)
|
|
191
|
+
.map((state) => state.colId);
|
|
192
|
+
}
|
|
193
|
+
#displayColumns(dataState) {
|
|
194
|
+
const agGrid = this.#currentAgGrid;
|
|
195
|
+
if (agGrid && this.#viewConfig) {
|
|
196
|
+
const viewState = dataState.getViewStateById(this.#viewConfig.id);
|
|
197
|
+
let displayedColumnIds = [];
|
|
198
|
+
/*istanbul ignore else*/
|
|
199
|
+
if (viewState?.displayedColumnIds) {
|
|
200
|
+
displayedColumnIds = viewState.displayedColumnIds;
|
|
201
|
+
}
|
|
202
|
+
const columnOrder = this.#getColumnOrder(agGrid.columnApi);
|
|
203
|
+
if (displayedColumnIds.length !== columnOrder.length ||
|
|
204
|
+
displayedColumnIds.some((col, i) => col !== columnOrder[i])) {
|
|
205
|
+
const hideColumns = agGrid.columnApi
|
|
206
|
+
.getColumnState()
|
|
207
|
+
.map((col) => col.colId)
|
|
208
|
+
.filter((colId) => !displayedColumnIds.includes(colId));
|
|
209
|
+
agGrid.columnApi.setColumnsVisible(hideColumns, false);
|
|
210
|
+
agGrid.columnApi.setColumnsVisible(displayedColumnIds, true);
|
|
211
|
+
agGrid.columnApi.moveColumns(displayedColumnIds, 0);
|
|
212
|
+
}
|
|
213
|
+
}
|
|
214
|
+
}
|
|
215
|
+
#selectAll() {
|
|
216
|
+
const agGrid = this.agGridList?.first;
|
|
217
|
+
agGrid?.api.selectAll();
|
|
218
|
+
}
|
|
219
|
+
#clearAll() {
|
|
220
|
+
const agGrid = this.agGridList?.first;
|
|
221
|
+
agGrid?.api.deselectAll();
|
|
222
|
+
}
|
|
223
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyAgGridDataManagerAdapterDirective, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.SkyDataManagerService }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
224
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.1.7", type: SkyAgGridDataManagerAdapterDirective, selector: "[skyAgGridDataManagerAdapter]", inputs: { viewId: "viewId" }, queries: [{ propertyName: "agGridList", predicate: AgGridAngular, descendants: true }, { propertyName: "skyAgGridWrapperList", predicate: SkyAgGridWrapperComponent, descendants: true }], ngImport: i0 }); }
|
|
225
|
+
}
|
|
226
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyAgGridDataManagerAdapterDirective, decorators: [{
|
|
227
|
+
type: Directive,
|
|
228
|
+
args: [{
|
|
229
|
+
selector: '[skyAgGridDataManagerAdapter]',
|
|
230
|
+
}]
|
|
231
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i1.SkyDataManagerService }]; }, propDecorators: { viewId: [{
|
|
232
|
+
type: Input
|
|
233
|
+
}], agGridList: [{
|
|
234
|
+
type: ContentChildren,
|
|
235
|
+
args: [AgGridAngular, { descendants: true }]
|
|
236
|
+
}], skyAgGridWrapperList: [{
|
|
237
|
+
type: ContentChildren,
|
|
238
|
+
args: [SkyAgGridWrapperComponent, { descendants: true }]
|
|
239
|
+
}] } });
|
|
240
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWctZ3JpZC1kYXRhLW1hbmFnZXItYWRhcHRlci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvYWctZ3JpZC9zcmMvbGliL21vZHVsZXMvYWctZ3JpZC9hZy1ncmlkLWRhdGEtbWFuYWdlci1hZGFwdGVyLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBR0wsZUFBZSxFQUNmLFNBQVMsRUFDVCxLQUFLLEdBR04sTUFBTSxlQUFlLENBQUM7QUFRdkIsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBUWhELE9BQU8sRUFBRSxPQUFPLEVBQWdCLE1BQU0sTUFBTSxDQUFDO0FBQzdDLE9BQU8sRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFbkQsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sNkJBQTZCLENBQUM7OztBQUV4RTs7R0FFRztBQUlILE1BQU0sT0FBTyxvQ0FBb0M7SUFZL0MsY0FBYyxDQUE0QjtJQUMxQyxpQkFBaUIsQ0FBa0M7SUFDbkQsd0JBQXdCLENBQXdDO0lBQ2hFLGFBQWEsQ0FBMkI7SUFDeEMsV0FBVyxDQUFnQztJQUMzQyxjQUFjLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztJQUNyQyxlQUFlLENBQW9CO0lBQ25DLGVBQWUsQ0FBd0I7SUFFdkMsWUFDRSxjQUFpQyxFQUNqQyxjQUFxQztRQUVyQyxJQUFJLENBQUMsZUFBZSxHQUFHLGNBQWMsQ0FBQztRQUN0QyxJQUFJLENBQUMsZUFBZSxHQUFHLGNBQWMsQ0FBQztJQUN4QyxDQUFDO0lBRU0sa0JBQWtCO1FBQ3ZCLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNmLElBQUksQ0FBQyxlQUFlLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUM7WUFDdkUsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7WUFFakUsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1lBQ3ZCLElBQUksQ0FBQyx5QkFBeUIsRUFBRSxDQUFDO1lBRWpDLElBQUksQ0FBQyxVQUFVLEVBQUUsT0FBTztpQkFDckIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7aUJBQ3BDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUMsQ0FBQztZQUUzQyxJQUFJLENBQUMsb0JBQW9CLEVBQUUsT0FBTztpQkFDL0IsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7aUJBQ3BDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMseUJBQXlCLEVBQUUsQ0FBQyxDQUFDO1NBQ3REO0lBQ0gsQ0FBQztJQUVNLFdBQVc7UUFDaEIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUMzQixJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ2pDLENBQUM7SUFFRCxlQUFlO1FBQ2IsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFO1lBQ25CLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDO1lBRTNDLDBCQUEwQjtZQUMxQixJQUFJLFdBQVcsS0FBSyxDQUFDLEVBQUU7Z0JBQ3JCLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO2FBQzFCO2lCQUFNLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLGNBQWMsRUFBRTtnQkFDeEQsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO2FBQ3hCO1lBRUQsSUFBSSxXQUFXLEdBQUcsQ0FBQyxFQUFFO2dCQUNuQixPQUFPLENBQUMsSUFBSSxDQUNWLDJFQUEyRSxDQUM1RSxDQUFDO2FBQ0g7U0FDRjtJQUNILENBQUM7SUFFRCx5QkFBeUI7UUFDdkIsSUFBSSxJQUFJLENBQUMsb0JBQW9CLEVBQUU7WUFDN0IsTUFBTSxxQkFBcUIsR0FBRyxJQUFJLENBQUMsb0JBQW9CLENBQUMsTUFBTSxDQUFDO1lBRS9ELDBCQUEwQjtZQUMxQixJQUFJLHFCQUFxQixLQUFLLENBQUMsRUFBRTtnQkFDL0IsSUFBSSxDQUFDLDJCQUEyQixFQUFFLENBQUM7YUFDcEM7aUJBQU0sSUFDTCxJQUFJLENBQUMsb0JBQW9CLENBQUMsS0FBSyxLQUFLLElBQUksQ0FBQyx3QkFBd0IsRUFDakU7Z0JBQ0EsSUFBSSxDQUFDLHlCQUF5QixFQUFFLENBQUM7YUFDbEM7WUFFRCxJQUFJLHFCQUFxQixHQUFHLENBQUMsRUFBRTtnQkFDN0IsT0FBTyxDQUFDLElBQUksQ0FDViwyRUFBMkUsQ0FDNUUsQ0FBQzthQUNIO1NBQ0Y7SUFDSCxDQUFDO0lBRUQsaUJBQWlCO1FBQ2YsSUFBSSxDQUFDLGNBQWMsR0FBRyxTQUFTLENBQUM7UUFFaEMsd0JBQXdCO1FBQ3hCLElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRTtZQUN0QixJQUFJLENBQUMsYUFBYSxDQUFDLFdBQVcsRUFBRSxDQUFDO1NBQ2xDO0lBQ0gsQ0FBQztJQUVELDJCQUEyQjtRQUN6QixJQUFJLENBQUMsd0JBQXdCLEdBQUcsU0FBUyxDQUFDO0lBQzVDLENBQUM7SUFFRCx5QkFBeUI7UUFDdkIsSUFBSSxDQUFDLDJCQUEyQixFQUFFLENBQUM7UUFDbkMsSUFBSSxDQUFDLHdCQUF3QixHQUFHLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxLQUFLLENBQUM7UUFFakUsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksSUFBSSxDQUFDLHdCQUF3QixFQUFFO2dCQUNqQyxJQUFJLENBQUMsd0JBQXdCLENBQUMsaUJBQWlCLEdBQUcsRUFBRSxDQUFDO2FBQ3REO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsZUFBZTtRQUNiLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1FBRXpCLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxVQUFVLEVBQUUsS0FBSyxDQUFDO1FBRXRDLElBQUksQ0FBQyxjQUFjLEdBQUcsTUFBTSxDQUFDO1FBRTdCLElBQUksTUFBTSxFQUFFO1lBQ1YsTUFBTSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7Z0JBQ25FLElBQUksSUFBSSxDQUFDLFdBQVcsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFO29CQUNuQyxJQUFJLENBQUMsV0FBVyxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO29CQUMvRCxJQUFJLENBQUMsV0FBVyxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztvQkFDN0QsSUFBSSxDQUFDLGVBQWUsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7b0JBQ3hELElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLGVBQWU7eUJBQ3RDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDO3lCQUN4QyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQzt5QkFDcEMsU0FBUyxDQUFDLENBQUMsU0FBOEIsRUFBRSxFQUFFO3dCQUM1QyxJQUFJLENBQUMsaUJBQWlCLEdBQUcsU0FBUyxDQUFDO3dCQUNuQyxJQUFJLENBQUMsZUFBZSxDQUFDLFNBQVMsQ0FBQyxDQUFDO29CQUNsQyxDQUFDLENBQUMsQ0FBQztvQkFFTCxJQUFJLE1BQU0sQ0FBQyxXQUFXLENBQUMsT0FBTyxFQUFFLGVBQWUsRUFBRTt3QkFDL0MsSUFBSSxDQUFDLGVBQWUsQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFOzRCQUNyRCxZQUFZOzRCQUNaLDRCQUE0Qjt5QkFDN0IsQ0FBQyxDQUFDO3FCQUNKO29CQUVELE1BQU0sQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztpQkFDL0I7WUFDSCxDQUFDLENBQUMsQ0FBQztZQUVILE1BQU0sQ0FBQyxXQUFXO2lCQUNmLElBQUksQ0FDSCxTQUFTLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxFQUM5QixNQUFNLENBQ0osQ0FBQyxLQUF1QixFQUFFLEVBQUUsQ0FDMUIsQ0FBQztnQkFDQyxrQkFBa0I7Z0JBQ2xCLGlCQUFpQjtnQkFDakIsaUJBQWlCO2dCQUNqQixLQUFLO2FBQ04sQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUMzQixDQUNGO2lCQUNBLFNBQVMsQ0FBQyxDQUFDLEtBQXVCLEVBQUUsRUFBRTtnQkFDckMsSUFBSSxDQUFDLGdDQUFnQyxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUN6RCxDQUFDLENBQUMsQ0FBQztZQUVMLE1BQU0sQ0FBQyxXQUFXO2lCQUNmLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO2lCQUNwQyxTQUFTLENBQUMsQ0FBQyxLQUF1QixFQUFFLEVBQUU7Z0JBQ3JDLElBQUksQ0FBQyxnQ0FBZ0MsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDekQsQ0FBQyxDQUFDLENBQUM7WUFFTCxNQUFNLENBQUMsV0FBVztpQkFDZixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztpQkFDcEMsU0FBUyxDQUFDLENBQUMsS0FBdUIsRUFBRSxFQUFFO2dCQUNyQyxJQUFJLElBQUksQ0FBQyxXQUFXLElBQUksSUFBSSxDQUFDLGlCQUFpQixFQUFFO29CQUM5QyxNQUFNLEdBQUcsR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDO29CQUN2QixNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsV0FBVyxJQUFJLEVBQUUsQ0FBQztvQkFDN0QsTUFBTSxRQUFRLEdBQUcsV0FBVyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO29CQUVsRCxJQUFJLEdBQUcsQ0FBQyxVQUFVLEVBQUUsSUFBSSxRQUFRLEtBQUssQ0FBQyxDQUFDLEVBQUU7d0JBQ3ZDLFdBQVcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztxQkFDL0I7eUJBQU0sSUFBSSxDQUFDLEdBQUcsQ0FBQyxVQUFVLEVBQUUsSUFBSSxRQUFRLEtBQUssQ0FBQyxDQUFDLEVBQUU7d0JBQy9DLFdBQVcsQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFDO3FCQUNqQztvQkFFRCxJQUFJLENBQUMsaUJBQWlCLENBQUMsV0FBVyxHQUFHLFdBQVcsQ0FBQztvQkFDakQsSUFBSSxDQUFDLGVBQWUsQ0FBQyxlQUFlLENBQ2xDLElBQUksQ0FBQyxpQkFBaUIsRUFDdEIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQ3BCLENBQUM7b0JBRUYsSUFBSSxDQUFDLGVBQWUsQ0FBQyxZQUFZLEVBQUUsQ0FBQztpQkFDckM7WUFDSCxDQUFDLENBQUMsQ0FBQztZQUVMLE1BQU0sQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO2dCQUNyRSxNQUFNLGdCQUFnQixHQUNwQixNQUFNLENBQUMsU0FBUyxDQUFDLGNBQWMsRUFBRSxDQUFDO2dCQUVwQyxJQUFJLFVBQWdELENBQUM7Z0JBRXJELDBCQUEwQjtnQkFDMUIsSUFBSSxnQkFBZ0IsQ0FBQyxNQUFNLEVBQUU7b0JBQzNCLE1BQU0scUJBQXFCLEdBQUcsZ0JBQWdCLENBQUMsSUFBSSxDQUNqRCxDQUFDLGdCQUFnQixFQUFFLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLEtBQUssQ0FBQyxDQUN2RCxDQUFDO29CQUVGLE1BQU0saUJBQWlCLEdBQ3JCLElBQUksQ0FBQyxlQUFlLENBQUMsMkJBQTJCLEVBQUUsQ0FBQztvQkFFckQsMEJBQTBCO29CQUMxQixJQUFJLGlCQUFpQixDQUFDLFdBQVcsSUFBSSxxQkFBcUIsRUFBRTt3QkFDMUQsVUFBVSxHQUFHLGlCQUFpQixDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQzdDLENBQUMsTUFBZ0MsRUFBRSxFQUFFOzRCQUNuQyxPQUFPLENBQ0wsTUFBTSxDQUFDLFlBQVksS0FBSyxxQkFBcUIsQ0FBQyxLQUFLO2dDQUNuRCxNQUFNLENBQUMsVUFBVSxLQUFLLENBQUMscUJBQXFCLENBQUMsSUFBSSxLQUFLLE1BQU0sQ0FBQyxDQUM5RCxDQUFDO3dCQUNKLENBQUMsQ0FDRixDQUFDO3FCQUNIO3lCQUFNO3dCQUNMLFVBQVUsR0FBRyxTQUFTLENBQUM7cUJBQ3hCO2lCQUNGO2dCQUVELElBQUksSUFBSSxDQUFDLFdBQVcsSUFBSSxJQUFJLENBQUMsaUJBQWlCLEVBQUU7b0JBQzlDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxnQkFBZ0IsR0FBRyxVQUFVLENBQUM7b0JBQ3JELElBQUksQ0FBQyxlQUFlLENBQUMsZUFBZSxDQUNsQyxJQUFJLENBQUMsaUJBQWlCLEVBQ3RCLElBQUksQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUNwQixDQUFDO2lCQUNIO1lBQ0gsQ0FBQyxDQUFDLENBQUM7U0FDSjtJQUNILENBQUM7SUFFRCxnQ0FBZ0MsQ0FBQyxTQUFvQjtRQUNuRCxJQUFJLElBQUksQ0FBQyxXQUFXLElBQUksSUFBSSxDQUFDLGlCQUFpQixFQUFFO1lBQzlDLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsU0FBUyxDQUFDLENBQUM7WUFFcEQsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGdCQUFnQixDQUN2RCxJQUFJLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FDcEIsQ0FBQztZQUVGLElBQ0UsU0FBUztnQkFDVCxDQUFDLFNBQVMsQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLEtBQUssV0FBVyxDQUFDLE1BQU07b0JBQ3pELFNBQVMsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxHQUFHLEtBQUssV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFDeEU7Z0JBQ0EsU0FBUyxDQUFDLGtCQUFrQixHQUFHLFdBQVcsQ0FBQztnQkFFM0MsSUFBSSxDQUFDLGVBQWUsQ0FBQyxlQUFlLENBQ2xDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxlQUFlLENBQ3BDLElBQUksQ0FBQyxXQUFXLENBQUMsRUFBRSxFQUNuQixTQUFTLENBQ1YsRUFDRCxJQUFJLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FDcEIsQ0FBQzthQUNIO1NBQ0Y7SUFDSCxDQUFDO0lBRUQsZUFBZSxDQUFDLFNBQW9CO1FBQ2xDLE9BQU8sU0FBUzthQUNiLGNBQWMsRUFBRTthQUNoQixNQUFNLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQzthQUM5QixHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBRUQsZUFBZSxDQUFDLFNBQThCO1FBQzVDLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUM7UUFFbkMsSUFBSSxNQUFNLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUM5QixNQUFNLFNBQVMsR0FBRyxTQUFTLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUNsRSxJQUFJLGtCQUFrQixHQUFhLEVBQUUsQ0FBQztZQUV0Qyx3QkFBd0I7WUFDeEIsSUFBSSxTQUFTLEVBQUUsa0JBQWtCLEVBQUU7Z0JBQ2pDLGtCQUFrQixHQUFHLFNBQVMsQ0FBQyxrQkFBa0IsQ0FBQzthQUNuRDtZQUVELE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBRTNELElBQ0Usa0JBQWtCLENBQUMsTUFBTSxLQUFLLFdBQVcsQ0FBQyxNQUFNO2dCQUNoRCxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxHQUFHLEtBQUssV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQzNEO2dCQUNBLE1BQU0sV0FBVyxHQUFHLE1BQU0sQ0FBQyxTQUFTO3FCQUNqQyxjQUFjLEVBQUU7cUJBQ2hCLEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQztxQkFDdkIsTUFBTSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDLGtCQUFrQixDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO2dCQUUxRCxNQUFNLENBQUMsU0FBUyxDQUFDLGlCQUFpQixDQUFDLFdBQVcsRUFBRSxLQUFLLENBQUMsQ0FBQztnQkFDdkQsTUFBTSxDQUFDLFNBQVMsQ0FBQyxpQkFBaUIsQ0FBQyxrQkFBa0IsRUFBRSxJQUFJLENBQUMsQ0FBQztnQkFDN0QsTUFBTSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxDQUFDLENBQUM7YUFDckQ7U0FDRjtJQUNILENBQUM7SUFFRCxVQUFVO1FBQ1IsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFVBQVUsRUFBRSxLQUFLLENBQUM7UUFDdEMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRUQsU0FBUztRQUNQLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxVQUFVLEVBQUUsS0FBSyxDQUFDO1FBQ3RDLE1BQU0sRUFBRSxHQUFHLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDNUIsQ0FBQzs4R0FuVFUsb0NBQW9DO2tHQUFwQyxvQ0FBb0MsOEhBTTlCLGFBQWEsMEVBR2IseUJBQXlCOzsyRkFUL0Isb0NBQW9DO2tCQUhoRCxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSwrQkFBK0I7aUJBQzFDOzRJQUtRLE1BQU07c0JBRFosS0FBSztnQkFJQyxVQUFVO3NCQURoQixlQUFlO3VCQUFDLGFBQWEsRUFBRSxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQUU7Z0JBSTlDLG9CQUFvQjtzQkFEMUIsZUFBZTt1QkFBQyx5QkFBeUIsRUFBRSxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlckNvbnRlbnRJbml0LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29udGVudENoaWxkcmVuLFxuICBEaXJlY3RpdmUsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIFF1ZXJ5TGlzdCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBTa3lEYXRhTWFuYWdlclNlcnZpY2UsXG4gIFNreURhdGFNYW5hZ2VyU29ydE9wdGlvbixcbiAgU2t5RGF0YU1hbmFnZXJTdGF0ZSxcbiAgU2t5RGF0YVZpZXdDb25maWcsXG59IGZyb20gJ0Bza3l1eC9kYXRhLW1hbmFnZXInO1xuXG5pbXBvcnQgeyBBZ0dyaWRBbmd1bGFyIH0gZnJvbSAnYWctZ3JpZC1hbmd1bGFyJztcbmltcG9ydCB7XG4gIENvbHVtbkFwaSxcbiAgQ29sdW1uTW92ZWRFdmVudCxcbiAgQ29sdW1uU3RhdGUsXG4gIERyYWdTdG9wcGVkRXZlbnQsXG4gIFJvd1NlbGVjdGVkRXZlbnQsXG59IGZyb20gJ2FnLWdyaWQtY29tbXVuaXR5JztcbmltcG9ydCB7IFN1YmplY3QsIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZmlsdGVyLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IFNreUFnR3JpZFdyYXBwZXJDb21wb25lbnQgfSBmcm9tICcuL2FnLWdyaWQtd3JhcHBlci5jb21wb25lbnQnO1xuXG4vKipcbiAqIEBpbnRlcm5hbFxuICovXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbc2t5QWdHcmlkRGF0YU1hbmFnZXJBZGFwdGVyXScsXG59KVxuZXhwb3J0IGNsYXNzIFNreUFnR3JpZERhdGFNYW5hZ2VyQWRhcHRlckRpcmVjdGl2ZVxuICBpbXBsZW1lbnRzIEFmdGVyQ29udGVudEluaXQsIE9uRGVzdHJveVxue1xuICBASW5wdXQoKVxuICBwdWJsaWMgdmlld0lkOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgQENvbnRlbnRDaGlsZHJlbihBZ0dyaWRBbmd1bGFyLCB7IGRlc2NlbmRhbnRzOiB0cnVlIH0pXG4gIHB1YmxpYyBhZ0dyaWRMaXN0OiBRdWVyeUxpc3Q8QWdHcmlkQW5ndWxhcj4gfCB1bmRlZmluZWQ7XG5cbiAgQENvbnRlbnRDaGlsZHJlbihTa3lBZ0dyaWRXcmFwcGVyQ29tcG9uZW50LCB7IGRlc2NlbmRhbnRzOiB0cnVlIH0pXG4gIHB1YmxpYyBza3lBZ0dyaWRXcmFwcGVyTGlzdDogUXVlcnlMaXN0PFNreUFnR3JpZFdyYXBwZXJDb21wb25lbnQ+IHwgdW5kZWZpbmVkO1xuXG4gICNjdXJyZW50QWdHcmlkOiBBZ0dyaWRBbmd1bGFyIHwgdW5kZWZpbmVkO1xuICAjY3VycmVudERhdGFTdGF0ZTogU2t5RGF0YU1hbmFnZXJTdGF0ZSB8IHVuZGVmaW5lZDtcbiAgI2N1cnJlbnRTa3lBZ0dyaWRXcmFwcGVyOiBTa3lBZ0dyaWRXcmFwcGVyQ29tcG9uZW50IHwgdW5kZWZpbmVkO1xuICAjZGF0YVN0YXRlU3ViOiBTdWJzY3JpcHRpb24gfCB1bmRlZmluZWQ7XG4gICN2aWV3Q29uZmlnOiBTa3lEYXRhVmlld0NvbmZpZyB8IHVuZGVmaW5lZDtcbiAgI25nVW5zdWJzY3JpYmUgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICAjY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmO1xuICAjZGF0YU1hbmFnZXJTdmM6IFNreURhdGFNYW5hZ2VyU2VydmljZTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBjaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgZGF0YU1hbmFnZXJTdmM6IFNreURhdGFNYW5hZ2VyU2VydmljZVxuICApIHtcbiAgICB0aGlzLiNjaGFuZ2VEZXRlY3RvciA9IGNoYW5nZURldGVjdG9yO1xuICAgIHRoaXMuI2RhdGFNYW5hZ2VyU3ZjID0gZGF0YU1hbmFnZXJTdmM7XG4gIH1cblxuICBwdWJsaWMgbmdBZnRlckNvbnRlbnRJbml0KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnZpZXdJZCkge1xuICAgICAgdGhpcy4jZGF0YU1hbmFnZXJTdmMuc2V0Vmlld2tlZXBlckNsYXNzZXModGhpcy52aWV3SWQsIFsnLmFnLWhlYWRlciddKTtcbiAgICAgIHRoaXMuI3ZpZXdDb25maWcgPSB0aGlzLiNkYXRhTWFuYWdlclN2Yy5nZXRWaWV3QnlJZCh0aGlzLnZpZXdJZCk7XG5cbiAgICAgIHRoaXMuI2NoZWNrRm9yQWdHcmlkKCk7XG4gICAgICB0aGlzLiNjaGVja0ZvclNreUFnR3JpZFdyYXBwZXIoKTtcblxuICAgICAgdGhpcy5hZ0dyaWRMaXN0Py5jaGFuZ2VzXG4gICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLiNuZ1Vuc3Vic2NyaWJlKSlcbiAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB0aGlzLiNjaGVja0ZvckFnR3JpZCgpKTtcblxuICAgICAgdGhpcy5za3lBZ0dyaWRXcmFwcGVyTGlzdD8uY2hhbmdlc1xuICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy4jbmdVbnN1YnNjcmliZSkpXG4gICAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy4jY2hlY2tGb3JTa3lBZ0dyaWRXcmFwcGVyKCkpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLiNuZ1Vuc3Vic2NyaWJlLm5leHQoKTtcbiAgICB0aGlzLiNuZ1Vuc3Vic2NyaWJlLmNvbXBsZXRlKCk7XG4gIH1cblxuICAjY2hlY2tGb3JBZ0dyaWQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuYWdHcmlkTGlzdCkge1xuICAgICAgY29uc3QgYWdHcmlkQ291bnQgPSB0aGlzLmFnR3JpZExpc3QubGVuZ3RoO1xuXG4gICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgICAgaWYgKGFnR3JpZENvdW50ID09PSAwKSB7XG4gICAgICAgIHRoaXMuI3VucmVnaXN0ZXJBZ0dyaWQoKTtcbiAgICAgIH0gZWxzZSBpZiAodGhpcy5hZ0dyaWRMaXN0LmZpcnN0ICE9PSB0aGlzLiNjdXJyZW50QWdHcmlkKSB7XG4gICAgICAgIHRoaXMuI3JlZ2lzdGVyQWdHcmlkKCk7XG4gICAgICB9XG5cbiAgICAgIGlmIChhZ0dyaWRDb3VudCA+IDEpIHtcbiAgICAgICAgY29uc29sZS53YXJuKFxuICAgICAgICAgICdNb3JlIHRoYW4gb25lIGFnLWdyaWQgY2hpbGQgY29tcG9uZW50IHdhcyBmb3VuZC4gVXNpbmcgdGhlIGZpcnN0IGFnLUdyaWQuJ1xuICAgICAgICApO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICNjaGVja0ZvclNreUFnR3JpZFdyYXBwZXIoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc2t5QWdHcmlkV3JhcHBlckxpc3QpIHtcbiAgICAgIGNvbnN0IHNreUFnR3JpZFdyYXBwZXJDb3VudCA9IHRoaXMuc2t5QWdHcmlkV3JhcHBlckxpc3QubGVuZ3RoO1xuXG4gICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgICAgaWYgKHNreUFnR3JpZFdyYXBwZXJDb3VudCA9PT0gMCkge1xuICAgICAgICB0aGlzLiN1bnJlZ2lzdGVyU2t5QWdHcmlkV3JhcHBlcigpO1xuICAgICAgfSBlbHNlIGlmIChcbiAgICAgICAgdGhpcy5za3lBZ0dyaWRXcmFwcGVyTGlzdC5maXJzdCAhPT0gdGhpcy4jY3VycmVudFNreUFnR3JpZFdyYXBwZXJcbiAgICAgICkge1xuICAgICAgICB0aGlzLiNyZWdpc3RlclNreUFnR3JpZFdyYXBwZXIoKTtcbiAgICAgIH1cblxuICAgICAgaWYgKHNreUFnR3JpZFdyYXBwZXJDb3VudCA+IDEpIHtcbiAgICAgICAgY29uc29sZS53YXJuKFxuICAgICAgICAgICdNb3JlIHRoYW4gb25lIGFnLWdyaWQgY2hpbGQgY29tcG9uZW50IHdhcyBmb3VuZC4gVXNpbmcgdGhlIGZpcnN0IGFnLUdyaWQuJ1xuICAgICAgICApO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICN1bnJlZ2lzdGVyQWdHcmlkKCk6IHZvaWQge1xuICAgIHRoaXMuI2N1cnJlbnRBZ0dyaWQgPSB1bmRlZmluZWQ7XG5cbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cbiAgICBpZiAodGhpcy4jZGF0YVN0YXRlU3ViKSB7XG4gICAgICB0aGlzLiNkYXRhU3RhdGVTdWIudW5zdWJzY3JpYmUoKTtcbiAgICB9XG4gIH1cblxuICAjdW5yZWdpc3RlclNreUFnR3JpZFdyYXBwZXIoKTogdm9pZCB7XG4gICAgdGhpcy4jY3VycmVudFNreUFnR3JpZFdyYXBwZXIgPSB1bmRlZmluZWQ7XG4gIH1cblxuICAjcmVnaXN0ZXJTa3lBZ0dyaWRXcmFwcGVyKCk6IHZvaWQge1xuICAgIHRoaXMuI3VucmVnaXN0ZXJTa3lBZ0dyaWRXcmFwcGVyKCk7XG4gICAgdGhpcy4jY3VycmVudFNreUFnR3JpZFdyYXBwZXIgPSB0aGlzLnNreUFnR3JpZFdyYXBwZXJMaXN0Py5maXJzdDtcblxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgaWYgKHRoaXMuI2N1cnJlbnRTa3lBZ0dyaWRXcmFwcGVyKSB7XG4gICAgICAgIHRoaXMuI2N1cnJlbnRTa3lBZ0dyaWRXcmFwcGVyLnZpZXdrZWVwZXJDbGFzc2VzID0gW107XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICAjcmVnaXN0ZXJBZ0dyaWQoKTogdm9pZCB7XG4gICAgdGhpcy4jdW5yZWdpc3RlckFnR3JpZCgpO1xuXG4gICAgY29uc3QgYWdHcmlkID0gdGhpcy5hZ0dyaWRMaXN0Py5maXJzdDtcblxuICAgIHRoaXMuI2N1cnJlbnRBZ0dyaWQgPSBhZ0dyaWQ7XG5cbiAgICBpZiAoYWdHcmlkKSB7XG4gICAgICBhZ0dyaWQuZ3JpZFJlYWR5LnBpcGUodGFrZVVudGlsKHRoaXMuI25nVW5zdWJzY3JpYmUpKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICBpZiAodGhpcy4jdmlld0NvbmZpZyAmJiB0aGlzLnZpZXdJZCkge1xuICAgICAgICAgIHRoaXMuI3ZpZXdDb25maWcub25TZWxlY3RBbGxDbGljayA9IHRoaXMuI3NlbGVjdEFsbC5iaW5kKHRoaXMpO1xuICAgICAgICAgIHRoaXMuI3ZpZXdDb25maWcub25DbGVhckFsbENsaWNrID0gdGhpcy4jY2xlYXJBbGwuYmluZCh0aGlzKTtcbiAgICAgICAgICB0aGlzLiNkYXRhTWFuYWdlclN2Yy51cGRhdGVWaWV3Q29uZmlnKHRoaXMuI3ZpZXdDb25maWcpO1xuICAgICAgICAgIHRoaXMuI2RhdGFTdGF0ZVN1YiA9IHRoaXMuI2RhdGFNYW5hZ2VyU3ZjXG4gICAgICAgICAgICAuZ2V0RGF0YVN0YXRlVXBkYXRlcyh0aGlzLiN2aWV3Q29uZmlnLmlkKVxuICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuI25nVW5zdWJzY3JpYmUpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoZGF0YVN0YXRlOiBTa3lEYXRhTWFuYWdlclN0YXRlKSA9PiB7XG4gICAgICAgICAgICAgIHRoaXMuI2N1cnJlbnREYXRhU3RhdGUgPSBkYXRhU3RhdGU7XG4gICAgICAgICAgICAgIHRoaXMuI2Rpc3BsYXlDb2x1bW5zKGRhdGFTdGF0ZSk7XG4gICAgICAgICAgICB9KTtcblxuICAgICAgICAgIGlmIChhZ0dyaWQuZ3JpZE9wdGlvbnMuY29udGV4dD8uZW5hYmxlVG9wU2Nyb2xsKSB7XG4gICAgICAgICAgICB0aGlzLiNkYXRhTWFuYWdlclN2Yy5zZXRWaWV3a2VlcGVyQ2xhc3Nlcyh0aGlzLnZpZXdJZCwgW1xuICAgICAgICAgICAgICAnLmFnLWhlYWRlcicsXG4gICAgICAgICAgICAgICcuYWctYm9keS1ob3Jpem9udGFsLXNjcm9sbCcsXG4gICAgICAgICAgICBdKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBhZ0dyaWQuYXBpLnNpemVDb2x1bW5zVG9GaXQoKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG5cbiAgICAgIGFnR3JpZC5jb2x1bW5Nb3ZlZFxuICAgICAgICAucGlwZShcbiAgICAgICAgICB0YWtlVW50aWwodGhpcy4jbmdVbnN1YnNjcmliZSksXG4gICAgICAgICAgZmlsdGVyKFxuICAgICAgICAgICAgKGV2ZW50OiBDb2x1bW5Nb3ZlZEV2ZW50KSA9PlxuICAgICAgICAgICAgICAhW1xuICAgICAgICAgICAgICAgICdncmlkSW5pdGlhbGl6aW5nJyxcbiAgICAgICAgICAgICAgICAndWlDb2x1bW5SZXNpemVkJyxcbiAgICAgICAgICAgICAgICAndWlDb2x1bW5EcmFnZ2VkJyxcbiAgICAgICAgICAgICAgICAnYXBpJyxcbiAgICAgICAgICAgICAgXS5pbmNsdWRlcyhldmVudC5zb3VyY2UpXG4gICAgICAgICAgKVxuICAgICAgICApXG4gICAgICAgIC5zdWJzY3JpYmUoKHZhbHVlOiBDb2x1bW5Nb3ZlZEV2ZW50KSA9PiB7XG4gICAgICAgICAgdGhpcy4jdXBkYXRlQ29sdW1uc0luQ3VycmVudERhdGFTdGF0ZSh2YWx1ZS5jb2x1bW5BcGkpO1xuICAgICAgICB9KTtcblxuICAgICAgYWdHcmlkLmRyYWdTdG9wcGVkXG4gICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLiNuZ1Vuc3Vic2NyaWJlKSlcbiAgICAgICAgLnN1YnNjcmliZSgodmFsdWU6IERyYWdTdG9wcGVkRXZlbnQpID0+IHtcbiAgICAgICAgICB0aGlzLiN1cGRhdGVDb2x1bW5zSW5DdXJyZW50RGF0YVN0YXRlKHZhbHVlLmNvbHVtbkFwaSk7XG4gICAgICAgIH0pO1xuXG4gICAgICBhZ0dyaWQucm93U2VsZWN0ZWRcbiAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuI25nVW5zdWJzY3JpYmUpKVxuICAgICAgICAuc3Vic2NyaWJlKChldmVudDogUm93U2VsZWN0ZWRFdmVudCkgPT4ge1xuICAgICAgICAgIGlmICh0aGlzLiN2aWV3Q29uZmlnICYmIHRoaXMuI2N1cnJlbnREYXRhU3RhdGUpIHtcbiAgICAgICAgICAgIGNvbnN0IHJvdyA9IGV2ZW50Lm5vZGU7XG4gICAgICAgICAgICBjb25zdCBzZWxlY3RlZElkcyA9IHRoaXMuI2N1cnJlbnREYXRhU3RhdGUuc2VsZWN0ZWRJZHMgfHwgW107XG4gICAgICAgICAgICBjb25zdCByb3dJbmRleCA9IHNlbGVjdGVkSWRzLmluZGV4T2Yocm93LmRhdGEuaWQpO1xuXG4gICAgICAgICAgICBpZiAocm93LmlzU2VsZWN0ZWQoKSAmJiByb3dJbmRleCA9PT0gLTEpIHtcbiAgICAgICAgICAgICAgc2VsZWN0ZWRJZHMucHVzaChyb3cuZGF0YS5pZCk7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKCFyb3cuaXNTZWxlY3RlZCgpICYmIHJvd0luZGV4ICE9PSAtMSkge1xuICAgICAgICAgICAgICBzZWxlY3RlZElkcy5zcGxpY2Uocm93SW5kZXgsIDEpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0aGlzLiNjdXJyZW50RGF0YVN0YXRlLnNlbGVjdGVkSWRzID0gc2VsZWN0ZWRJZHM7XG4gICAgICAgICAgICB0aGlzLiNkYXRhTWFuYWdlclN2Yy51cGRhdGVEYXRhU3RhdGUoXG4gICAgICAgICAgICAgIHRoaXMuI2N1cnJlbnREYXRhU3RhdGUsXG4gICAgICAgICAgICAgIHRoaXMuI3ZpZXdDb25maWcuaWRcbiAgICAgICAgICAgICk7XG5cbiAgICAgICAgICAgIHRoaXMuI2NoYW5nZURldGVjdG9yLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cbiAgICAgIGFnR3JpZC5zb3J0Q2hhbmdlZC5waXBlKHRha2VVbnRpbCh0aGlzLiNuZ1Vuc3Vic2NyaWJlKSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgY29uc3QgZ3JpZENvbHVtblN0YXRlczogQ29sdW1uU3RhdGVbXSA9XG4gICAgICAgICAgYWdHcmlkLmNvbHVtbkFwaS5nZXRDb2x1bW5TdGF0ZSgpO1xuXG4gICAgICAgIGxldCBzb3J0T3B0aW9uOiBTa3lEYXRhTWFuYWdlclNvcnRPcHRpb24gfCB1bmRlZmluZWQ7XG5cbiAgICAgICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICAgICAgaWYgKGdyaWRDb2x1bW5TdGF0ZXMubGVuZ3RoKSB7XG4gICAgICAgICAgY29uc3QgYWN0aXZlU29ydENvbHVtblN0YXRlID0gZ3JpZENvbHVtblN0YXRlcy5maW5kKFxuICAgICAgICAgICAgKGFHcmlkQ29sdW1uU3RhdGUpID0+IGFHcmlkQ29sdW1uU3RhdGUuc29ydEluZGV4ID09PSAwXG4gICAgICAgICAgKTtcblxuICAgICAgICAgIGNvbnN0IGRhdGFNYW5hZ2VyQ29uZmlnID1cbiAgICAgICAgICAgIHRoaXMuI2RhdGFNYW5hZ2VyU3ZjLmdldEN1cnJlbnREYXRhTWFuYWdlckNvbmZpZygpO1xuXG4gICAgICAgICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICAgICAgICBpZiAoZGF0YU1hbmFnZXJDb25maWcuc29ydE9wdGlvbnMgJiYgYWN0aXZlU29ydENvbHVtblN0YXRlKSB7XG4gICAgICAgICAgICBzb3J0T3B0aW9uID0gZGF0YU1hbmFnZXJDb25maWcuc29ydE9wdGlvbnMuZmluZChcbiAgICAgICAgICAgICAgKG9wdGlvbjogU2t5RGF0YU1hbmFnZXJTb3J0T3B0aW9uKSA9PiB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgICAgIG9wdGlvbi5wcm9wZXJ0eU5hbWUgPT09IGFjdGl2ZVNvcnRDb2x1bW5TdGF0ZS5jb2xJZCAmJlxuICAgICAgICAgICAgICAgICAgb3B0aW9uLmRlc2NlbmRpbmcgPT09IChhY3RpdmVTb3J0Q29sdW1uU3RhdGUuc29ydCA9PT0gJ2Rlc2MnKVxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHNvcnRPcHRpb24gPSB1bmRlZmluZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMuI3ZpZXdDb25maWcgJiYgdGhpcy4jY3VycmVudERhdGFTdGF0ZSkge1xuICAgICAgICAgIHRoaXMuI2N1cnJlbnREYXRhU3RhdGUuYWN0aXZlU29ydE9wdGlvbiA9IHNvcnRPcHRpb247XG4gICAgICAgICAgdGhpcy4jZGF0YU1hbmFnZXJTdmMudXBkYXRlRGF0YVN0YXRlKFxuICAgICAgICAgICAgdGhpcy4jY3VycmVudERhdGFTdGF0ZSxcbiAgICAgICAgICAgIHRoaXMuI3ZpZXdDb25maWcuaWRcbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICAjdXBkYXRlQ29sdW1uc0luQ3VycmVudERhdGFTdGF0ZShjb2x1bW5BcGk6IENvbHVtbkFwaSk6IHZvaWQge1xuICAgIGlmICh0aGlzLiN2aWV3Q29uZmlnICYmIHRoaXMuI2N1cnJlbnREYXRhU3RhdGUpIHtcbiAgICAgIGNvbnN0IGNvbHVtbk9yZGVyID0gdGhpcy4jZ2V0Q29sdW1uT3JkZXIoY29sdW1uQXBpKTtcblxuICAgICAgY29uc3Qgdmlld1N0YXRlID0gdGhpcy4jY3VycmVudERhdGFTdGF0ZS5nZXRWaWV3U3RhdGVCeUlkKFxuICAgICAgICB0aGlzLiN2aWV3Q29uZmlnLmlkXG4gICAgICApO1xuXG4gICAgICBpZiAoXG4gICAgICAgIHZpZXdTdGF0ZSAmJlxuICAgICAgICAodmlld1N0YXRlLmRpc3BsYXllZENvbHVtbklkcy5sZW5ndGggIT09IGNvbHVtbk9yZGVyLmxlbmd0aCB8fFxuICAgICAgICAgIHZpZXdTdGF0ZS5kaXNwbGF5ZWRDb2x1bW5JZHMuc29tZSgoY29sLCBpKSA9PiBjb2wgIT09IGNvbHVtbk9yZGVyW2ldKSlcbiAgICAgICkge1xuICAgICAgICB2aWV3U3RhdGUuZGlzcGxheWVkQ29sdW1uSWRzID0gY29sdW1uT3JkZXI7XG5cbiAgICAgICAgdGhpcy4jZGF0YU1hbmFnZXJTdmMudXBkYXRlRGF0YVN0YXRlKFxuICAgICAgICAgIHRoaXMuI2N1cnJlbnREYXRhU3RhdGUuYWRkT3JVcGRhdGVWaWV3KFxuICAgICAgICAgICAgdGhpcy4jdmlld0NvbmZpZy5pZCxcbiAgICAgICAgICAgIHZpZXdTdGF0ZVxuICAgICAgICAgICksXG4gICAgICAgICAgdGhpcy4jdmlld0NvbmZpZy5pZFxuICAgICAgICApO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICNnZXRDb2x1bW5PcmRlcihjb2x1bW5BcGk6IENvbHVtbkFwaSk6IHN0cmluZ1tdIHtcbiAgICByZXR1cm4gY29sdW1uQXBpXG4gICAgICAuZ2V0Q29sdW1uU3RhdGUoKVxuICAgICAgLmZpbHRlcigoc3RhdGUpID0+ICFzdGF0ZS5oaWRlKVxuICAgICAgLm1hcCgoc3RhdGUpID0+IHN0YXRlLmNvbElkKTtcbiAgfVxuXG4gICNkaXNwbGF5Q29sdW1ucyhkYXRhU3RhdGU6IFNreURhdGFNYW5hZ2VyU3RhdGUpOiB2b2lkIHtcbiAgICBjb25zdCBhZ0dyaWQgPSB0aGlzLiNjdXJyZW50QWdHcmlkO1xuXG4gICAgaWYgKGFnR3JpZCAmJiB0aGlzLiN2aWV3Q29uZmlnKSB7XG4gICAgICBjb25zdCB2aWV3U3RhdGUgPSBkYXRhU3RhdGUuZ2V0Vmlld1N0YXRlQnlJZCh0aGlzLiN2aWV3Q29uZmlnLmlkKTtcbiAgICAgIGxldCBkaXNwbGF5ZWRDb2x1bW5JZHM6IHN0cmluZ1tdID0gW107XG5cbiAgICAgIC8qaXN0YW5idWwgaWdub3JlIGVsc2UqL1xuICAgICAgaWYgKHZpZXdTdGF0ZT8uZGlzcGxheWVkQ29sdW1uSWRzKSB7XG4gICAgICAgIGRpc3BsYXllZENvbHVtbklkcyA9IHZpZXdTdGF0ZS5kaXNwbGF5ZWRDb2x1bW5JZHM7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IGNvbHVtbk9yZGVyID0gdGhpcy4jZ2V0Q29sdW1uT3JkZXIoYWdHcmlkLmNvbHVtbkFwaSk7XG5cbiAgICAgIGlmIChcbiAgICAgICAgZGlzcGxheWVkQ29sdW1uSWRzLmxlbmd0aCAhPT0gY29sdW1uT3JkZXIubGVuZ3RoIHx8XG4gICAgICAgIGRpc3BsYXllZENvbHVtbklkcy5zb21lKChjb2wsIGkpID0+IGNvbCAhPT0gY29sdW1uT3JkZXJbaV0pXG4gICAgICApIHtcbiAgICAgICAgY29uc3QgaGlkZUNvbHVtbnMgPSBhZ0dyaWQuY29sdW1uQXBpXG4gICAgICAgICAgLmdldENvbHVtblN0YXRlKClcbiAgICAgICAgICAubWFwKChjb2wpID0+IGNvbC5jb2xJZClcbiAgICAgICAgICAuZmlsdGVyKChjb2xJZCkgPT4gIWRpc3BsYXllZENvbHVtbklkcy5pbmNsdWRlcyhjb2xJZCkpO1xuXG4gICAgICAgIGFnR3JpZC5jb2x1bW5BcGkuc2V0Q29sdW1uc1Zpc2libGUoaGlkZUNvbHVtbnMsIGZhbHNlKTtcbiAgICAgICAgYWdHcmlkLmNvbHVtbkFwaS5zZXRDb2x1bW5zVmlzaWJsZShkaXNwbGF5ZWRDb2x1bW5JZHMsIHRydWUpO1xuICAgICAgICBhZ0dyaWQuY29sdW1uQXBpLm1vdmVDb2x1bW5zKGRpc3BsYXllZENvbHVtbklkcywgMCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgI3NlbGVjdEFsbCgpOiB2b2lkIHtcbiAgICBjb25zdCBhZ0dyaWQgPSB0aGlzLmFnR3JpZExpc3Q/LmZpcnN0O1xuICAgIGFnR3JpZD8uYXBpLnNlbGVjdEFsbCgpO1xuICB9XG5cbiAgI2NsZWFyQWxsKCk6IHZvaWQge1xuICAgIGNvbnN0IGFnR3JpZCA9IHRoaXMuYWdHcmlkTGlzdD8uZmlyc3Q7XG4gICAgYWdHcmlkPy5hcGkuZGVzZWxlY3RBbGwoKTtcbiAgfVxufVxuIl19
|
|
@@ -7,9 +7,8 @@ import * as i2 from "@skyux/layout";
|
|
|
7
7
|
* @internal
|
|
8
8
|
*/
|
|
9
9
|
export class SkyAgGridRowDeleteComponent {
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
SkyAgGridRowDeleteComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: SkyAgGridRowDeleteComponent, selector: "ng-component", viewQueries: [{ propertyName: "inlineDeleteTemplateRef", first: true, predicate: ["inlineDeleteTemplateRef"], descendants: true, read: TemplateRef }, { propertyName: "inlineDeleteRefs", predicate: ["inlineDeleteRef"], descendants: true }], ngImport: i0, template: `
|
|
10
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyAgGridRowDeleteComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
11
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: SkyAgGridRowDeleteComponent, selector: "ng-component", viewQueries: [{ propertyName: "inlineDeleteTemplateRef", first: true, predicate: ["inlineDeleteTemplateRef"], descendants: true, read: TemplateRef }, { propertyName: "inlineDeleteRefs", predicate: ["inlineDeleteRef"], descendants: true }], ngImport: i0, template: `
|
|
13
12
|
<ng-template
|
|
14
13
|
let-row
|
|
15
14
|
let-tableWidth="tableWidth()"
|
|
@@ -35,8 +34,9 @@ SkyAgGridRowDeleteComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.
|
|
|
35
34
|
></sky-inline-delete>
|
|
36
35
|
</div>
|
|
37
36
|
</ng-template>
|
|
38
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i2.λ8, selector: "sky-inline-delete", inputs: ["pending"], outputs: ["cancelTriggered", "deleteTriggered"] }] });
|
|
39
|
-
|
|
37
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i2.λ8, selector: "sky-inline-delete", inputs: ["pending"], outputs: ["cancelTriggered", "deleteTriggered"] }] }); }
|
|
38
|
+
}
|
|
39
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyAgGridRowDeleteComponent, decorators: [{
|
|
40
40
|
type: Component,
|
|
41
41
|
args: [{
|
|
42
42
|
template: `
|
|
@@ -74,4 +74,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
|
|
|
74
74
|
type: ViewChild,
|
|
75
75
|
args: ['inlineDeleteTemplateRef', { read: TemplateRef }]
|
|
76
76
|
}] } });
|
|
77
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
77
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWctZ3JpZC1yb3ctZGVsZXRlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9hZy1ncmlkL3NyYy9saWIvbW9kdWxlcy9hZy1ncmlkL2FnLWdyaWQtcm93LWRlbGV0ZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFHVCxXQUFXLEVBQ1gsU0FBUyxFQUNULFlBQVksR0FDYixNQUFNLGVBQWUsQ0FBQzs7OztBQUV2Qjs7O0dBR0c7QUE4QkgsTUFBTSxPQUFPLDJCQUEyQjs4R0FBM0IsMkJBQTJCO2tHQUEzQiwyQkFBMkIsbUtBR1EsV0FBVyxzSEEvQi9DOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQTBCVDs7MkZBRVUsMkJBQTJCO2tCQTdCdkMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBMEJUO2lCQUNGOzhCQUdRLGdCQUFnQjtzQkFEdEIsWUFBWTt1QkFBQyxpQkFBaUI7Z0JBR3hCLHVCQUF1QjtzQkFEN0IsU0FBUzt1QkFBQyx5QkFBeUIsRUFBRSxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIFF1ZXJ5TGlzdCxcbiAgVGVtcGxhdGVSZWYsXG4gIFZpZXdDaGlsZCxcbiAgVmlld0NoaWxkcmVuLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuLyoqXG4gKiBDb21wb25lbnQgZm9yIHJlbmRlcmluZyB0aGUgaW5saW5lIGRlbGV0ZSB0ZW1wbGF0ZSBpbiB0aGUgb3ZlcmxheS5cbiAqIEBpbnRlcm5hbFxuICovXG5AQ29tcG9uZW50KHtcbiAgdGVtcGxhdGU6IGBcbiAgICA8bmctdGVtcGxhdGVcbiAgICAgIGxldC1yb3dcbiAgICAgIGxldC10YWJsZVdpZHRoPVwidGFibGVXaWR0aCgpXCJcbiAgICAgIGxldC1nZXRSb3dEZWxldGVJdGVtPVwiZ2V0Um93RGVsZXRlSXRlbVwiXG4gICAgICBsZXQtY2FuY2VsUm93RGVsZXRlPVwiY2FuY2VsUm93RGVsZXRlXCJcbiAgICAgIGxldC1jb25maXJtUm93RGVsZXRlPVwiY29uZmlybVJvd0RlbGV0ZVwiXG4gICAgICAjaW5saW5lRGVsZXRlVGVtcGxhdGVSZWZcbiAgICA+XG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzPVwic2t5LWFnLWdyaWQtcm93LWRlbGV0ZVwiXG4gICAgICAgIFtpZF09XCIncm93LWRlbGV0ZS1yZWYtJyArIHJvdy5pZFwiXG4gICAgICAgIFtuZ1N0eWxlXT1cIntcbiAgICAgICAgICBoZWlnaHQ6IHJvdy5yb3dIZWlnaHQgKyAncHgnLFxuICAgICAgICAgIHBvc2l0aW9uOiAnZml4ZWQnLFxuICAgICAgICAgIHdpZHRoOiB0YWJsZVdpZHRoICsgJ3B4J1xuICAgICAgICB9XCJcbiAgICAgICAgI2lubGluZURlbGV0ZVJlZlxuICAgICAgPlxuICAgICAgICA8c2t5LWlubGluZS1kZWxldGVcbiAgICAgICAgICBbcGVuZGluZ109XCJnZXRSb3dEZWxldGVJdGVtKHJvdykucGVuZGluZ1wiXG4gICAgICAgICAgKGNhbmNlbFRyaWdnZXJlZCk9XCJjYW5jZWxSb3dEZWxldGUocm93KVwiXG4gICAgICAgICAgKGRlbGV0ZVRyaWdnZXJlZCk9XCJjb25maXJtUm93RGVsZXRlKHJvdylcIlxuICAgICAgICA+PC9za3ktaW5saW5lLWRlbGV0ZT5cbiAgICAgIDwvZGl2PlxuICAgIDwvbmctdGVtcGxhdGU+XG4gIGAsXG59KVxuZXhwb3J0IGNsYXNzIFNreUFnR3JpZFJvd0RlbGV0ZUNvbXBvbmVudCB7XG4gIEBWaWV3Q2hpbGRyZW4oJ2lubGluZURlbGV0ZVJlZicpXG4gIHB1YmxpYyBpbmxpbmVEZWxldGVSZWZzOiBRdWVyeUxpc3Q8RWxlbWVudFJlZj4gfCB1bmRlZmluZWQ7XG4gIEBWaWV3Q2hpbGQoJ2lubGluZURlbGV0ZVRlbXBsYXRlUmVmJywgeyByZWFkOiBUZW1wbGF0ZVJlZiB9KVxuICBwdWJsaWMgaW5saW5lRGVsZXRlVGVtcGxhdGVSZWY6IFRlbXBsYXRlUmVmPHVua25vd24+IHwgdW5kZWZpbmVkO1xufVxuIl19
|