@skyux/ag-grid 7.0.0-beta.9 → 7.1.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/css/sky-ag-grid.css +4506 -29219
- package/documentation.json +1360 -575
- package/esm2020/index.mjs +7 -1
- package/esm2020/lib/modules/ag-grid/ag-grid-adapter.service.mjs +6 -5
- package/esm2020/lib/modules/ag-grid/ag-grid-data-manager-adapter.directive.mjs +132 -114
- package/esm2020/lib/modules/ag-grid/ag-grid-row-delete.component.mjs +5 -5
- package/esm2020/lib/modules/ag-grid/ag-grid-row-delete.directive.mjs +131 -124
- package/esm2020/lib/modules/ag-grid/ag-grid-wrapper.component.mjs +140 -73
- package/esm2020/lib/modules/ag-grid/ag-grid.module.mjs +30 -8
- package/esm2020/lib/modules/ag-grid/ag-grid.service.mjs +310 -292
- package/esm2020/lib/modules/ag-grid/apply-lookup-properties-defaults.mjs +13 -9
- package/esm2020/lib/modules/ag-grid/cell-editors/cell-editor-autocomplete/cell-editor-autocomplete.component.mjs +30 -25
- package/esm2020/lib/modules/ag-grid/cell-editors/cell-editor-autocomplete/cell-editor-autocomplete.module.mjs +5 -5
- package/esm2020/lib/modules/ag-grid/cell-editors/cell-editor-currency/cell-editor-currency.component.mjs +32 -28
- package/esm2020/lib/modules/ag-grid/cell-editors/cell-editor-currency/cell-editor-currency.module.mjs +5 -5
- package/esm2020/lib/modules/ag-grid/cell-editors/cell-editor-datepicker/cell-editor-datepicker.component.mjs +63 -58
- package/esm2020/lib/modules/ag-grid/cell-editors/cell-editor-datepicker/cell-editor-datepicker.module.mjs +5 -5
- package/esm2020/lib/modules/ag-grid/cell-editors/cell-editor-lookup/cell-editor-lookup.component.mjs +46 -40
- package/esm2020/lib/modules/ag-grid/cell-editors/cell-editor-lookup/cell-editor-lookup.module.mjs +5 -5
- package/esm2020/lib/modules/ag-grid/cell-editors/cell-editor-number/cell-editor-number.component.mjs +33 -29
- package/esm2020/lib/modules/ag-grid/cell-editors/cell-editor-number/cell-editor-number.module.mjs +5 -5
- package/esm2020/lib/modules/ag-grid/cell-editors/cell-editor-text/cell-editor-text.component.mjs +33 -29
- package/esm2020/lib/modules/ag-grid/cell-editors/cell-editor-text/cell-editor-text.module.mjs +5 -5
- package/esm2020/lib/modules/ag-grid/cell-renderers/cell-renderer-currency/cell-renderer-currency-validator.component.mjs +8 -6
- package/esm2020/lib/modules/ag-grid/cell-renderers/cell-renderer-currency/cell-renderer-currency.component.mjs +25 -21
- package/esm2020/lib/modules/ag-grid/cell-renderers/cell-renderer-currency/cell-renderer-currency.module.mjs +5 -5
- package/esm2020/lib/modules/ag-grid/cell-renderers/cell-renderer-lookup/cell-renderer-lookup.component.mjs +5 -5
- package/esm2020/lib/modules/ag-grid/cell-renderers/cell-renderer-lookup/cell-renderer-lookup.module.mjs +5 -5
- package/esm2020/lib/modules/ag-grid/cell-renderers/cell-renderer-row-selector/cell-renderer-row-selector.component.mjs +31 -24
- package/esm2020/lib/modules/ag-grid/cell-renderers/cell-renderer-row-selector/cell-renderer-row-selector.module.mjs +5 -5
- package/esm2020/lib/modules/ag-grid/cell-renderers/cell-renderer-validator-tooltip/cell-renderer-validator-tooltip.component.mjs +6 -5
- package/esm2020/lib/modules/ag-grid/cell-renderers/cell-renderer-validator-tooltip/cell-renderer-validator-tooltip.module.mjs +5 -5
- package/esm2020/lib/modules/ag-grid/cell-validator/ag-grid-cell-validator-tooltip.component.mjs +38 -33
- package/esm2020/lib/modules/ag-grid/cell-validator/ag-grid-cell-validator.module.mjs +5 -5
- package/esm2020/lib/modules/ag-grid/header/header-group.component.mjs +95 -0
- package/esm2020/lib/modules/ag-grid/header/header.component.mjs +133 -0
- package/esm2020/lib/modules/ag-grid/types/autocomplete-properties.mjs +1 -1
- package/esm2020/lib/modules/ag-grid/types/cell-editor-utils.mjs +7 -2
- package/esm2020/lib/modules/ag-grid/types/header-group-info.mjs +16 -0
- package/esm2020/lib/modules/ag-grid/types/header-group-params.mjs +2 -0
- package/esm2020/lib/modules/ag-grid/types/header-info.mjs +16 -0
- package/esm2020/lib/modules/ag-grid/types/header-params.mjs +2 -0
- package/esm2020/lib/modules/ag-grid/types/lookup-properties.mjs +1 -1
- package/esm2020/lib/modules/ag-grid/types/validator-properties.mjs +1 -1
- package/esm2020/lib/modules/shared/sky-ag-grid-resources.module.mjs +11 -8
- package/fesm2015/skyux-ag-grid.mjs +2430 -1984
- package/fesm2015/skyux-ag-grid.mjs.map +1 -1
- package/fesm2020/skyux-ag-grid.mjs +2325 -1906
- package/fesm2020/skyux-ag-grid.mjs.map +1 -1
- package/index.d.ts +6 -0
- package/lib/modules/ag-grid/ag-grid-adapter.service.d.ts +1 -1
- package/lib/modules/ag-grid/ag-grid-data-manager-adapter.directive.d.ts +4 -22
- package/lib/modules/ag-grid/ag-grid-row-delete.component.d.ts +2 -2
- package/lib/modules/ag-grid/ag-grid-row-delete.directive.d.ts +5 -18
- package/lib/modules/ag-grid/ag-grid-wrapper.component.d.ts +10 -11
- package/lib/modules/ag-grid/ag-grid.module.d.ts +25 -20
- package/lib/modules/ag-grid/ag-grid.service.d.ts +3 -17
- package/lib/modules/ag-grid/apply-lookup-properties-defaults.d.ts +1 -23
- package/lib/modules/ag-grid/cell-editors/cell-editor-autocomplete/cell-editor-autocomplete.component.d.ts +3 -3
- package/lib/modules/ag-grid/cell-editors/cell-editor-currency/cell-editor-currency.component.d.ts +7 -8
- package/lib/modules/ag-grid/cell-editors/cell-editor-datepicker/cell-editor-datepicker.component.d.ts +5 -8
- package/lib/modules/ag-grid/cell-editors/cell-editor-lookup/cell-editor-lookup.component.d.ts +2 -6
- package/lib/modules/ag-grid/cell-editors/cell-editor-number/cell-editor-number.component.d.ts +8 -8
- package/lib/modules/ag-grid/cell-editors/cell-editor-text/cell-editor-text.component.d.ts +8 -8
- 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 +9 -10
- package/lib/modules/ag-grid/cell-renderers/cell-renderer-lookup/cell-renderer-lookup.component.d.ts +2 -2
- package/lib/modules/ag-grid/cell-renderers/cell-renderer-row-selector/cell-renderer-row-selector.component.d.ts +6 -8
- package/lib/modules/ag-grid/cell-renderers/cell-renderer-validator-tooltip/cell-renderer-validator-tooltip.component.d.ts +3 -3
- package/lib/modules/ag-grid/cell-validator/ag-grid-cell-validator-tooltip.component.d.ts +4 -7
- package/lib/modules/ag-grid/header/header-group.component.d.ts +22 -0
- package/lib/modules/ag-grid/header/header.component.d.ts +27 -0
- package/lib/modules/ag-grid/types/autocomplete-properties.d.ts +5 -4
- package/lib/modules/ag-grid/types/cell-editor-utils.d.ts +2 -1
- package/lib/modules/ag-grid/types/header-group-info.d.ts +18 -0
- package/lib/modules/ag-grid/types/header-group-params.d.ts +10 -0
- package/lib/modules/ag-grid/types/header-info.d.ts +18 -0
- package/lib/modules/ag-grid/types/header-params.d.ts +10 -0
- package/lib/modules/ag-grid/types/lookup-properties.d.ts +3 -3
- package/lib/modules/ag-grid/types/validator-properties.d.ts +2 -2
- package/package.json +17 -17
|
@@ -1,78 +1,145 @@
|
|
|
1
|
-
var _SkyAgGridWrapperComponent_instances, _SkyAgGridWrapperComponent_ngUnsubscribe, _SkyAgGridWrapperComponent_moveHorizontalScroll;
|
|
2
|
-
import { __classPrivateFieldGet } from "tslib";
|
|
1
|
+
var _SkyAgGridWrapperComponent_instances, _SkyAgGridWrapperComponent_isInEditMode_get, _SkyAgGridWrapperComponent__viewkeeperClasses, _SkyAgGridWrapperComponent_agGridService, _SkyAgGridWrapperComponent_ngUnsubscribe, _SkyAgGridWrapperComponent_themeSvc, _SkyAgGridWrapperComponent_wrapperClasses, _SkyAgGridWrapperComponent_currentTheme, _SkyAgGridWrapperComponent_adapterService, _SkyAgGridWrapperComponent_changeDetector, _SkyAgGridWrapperComponent_elementRef, _SkyAgGridWrapperComponent_document, _SkyAgGridWrapperComponent_moveHorizontalScroll;
|
|
2
|
+
import { __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
|
|
3
3
|
import { DOCUMENT } from '@angular/common';
|
|
4
|
-
import { ChangeDetectionStrategy,
|
|
4
|
+
import { ChangeDetectionStrategy, Component, ContentChild, Inject, Optional, } from '@angular/core';
|
|
5
5
|
import { AgGridAngular } from 'ag-grid-angular';
|
|
6
|
-
import { Subject } from 'rxjs';
|
|
6
|
+
import { BehaviorSubject, Subject } from 'rxjs';
|
|
7
7
|
import { takeUntil } from 'rxjs/operators';
|
|
8
|
-
import { SkyAgGridAdapterService } from './ag-grid-adapter.service';
|
|
9
8
|
import * as i0 from "@angular/core";
|
|
10
9
|
import * as i1 from "./ag-grid-adapter.service";
|
|
11
|
-
import * as i2 from "
|
|
12
|
-
import * as i3 from "@skyux/
|
|
10
|
+
import * as i2 from "./ag-grid.service";
|
|
11
|
+
import * as i3 from "@skyux/theme";
|
|
12
|
+
import * as i4 from "@angular/common";
|
|
13
|
+
import * as i5 from "@skyux/core";
|
|
13
14
|
let idIndex = 0;
|
|
14
15
|
export class SkyAgGridWrapperComponent {
|
|
15
|
-
constructor(adapterService, changeDetector, elementRef, document) {
|
|
16
|
-
this.adapterService = adapterService;
|
|
17
|
-
this.changeDetector = changeDetector;
|
|
18
|
-
this.elementRef = elementRef;
|
|
19
|
-
this.document = document;
|
|
16
|
+
constructor(adapterService, changeDetector, elementRef, document, agGridService, themeSvc) {
|
|
20
17
|
_SkyAgGridWrapperComponent_instances.add(this);
|
|
21
|
-
this
|
|
18
|
+
_SkyAgGridWrapperComponent__viewkeeperClasses.set(this, []);
|
|
19
|
+
_SkyAgGridWrapperComponent_agGridService.set(this, void 0);
|
|
22
20
|
_SkyAgGridWrapperComponent_ngUnsubscribe.set(this, new Subject());
|
|
21
|
+
_SkyAgGridWrapperComponent_themeSvc.set(this, void 0);
|
|
22
|
+
_SkyAgGridWrapperComponent_wrapperClasses.set(this, new BehaviorSubject([`ag-theme-sky-default`]));
|
|
23
|
+
_SkyAgGridWrapperComponent_currentTheme.set(this, undefined);
|
|
24
|
+
_SkyAgGridWrapperComponent_adapterService.set(this, void 0);
|
|
25
|
+
_SkyAgGridWrapperComponent_changeDetector.set(this, void 0);
|
|
26
|
+
_SkyAgGridWrapperComponent_elementRef.set(this, void 0);
|
|
27
|
+
_SkyAgGridWrapperComponent_document.set(this, void 0);
|
|
28
|
+
__classPrivateFieldSet(this, _SkyAgGridWrapperComponent_adapterService, adapterService, "f");
|
|
29
|
+
__classPrivateFieldSet(this, _SkyAgGridWrapperComponent_changeDetector, changeDetector, "f");
|
|
30
|
+
__classPrivateFieldSet(this, _SkyAgGridWrapperComponent_elementRef, elementRef, "f");
|
|
31
|
+
__classPrivateFieldSet(this, _SkyAgGridWrapperComponent_document, document, "f");
|
|
23
32
|
idIndex++;
|
|
24
33
|
this.afterAnchorId = 'sky-ag-grid-nav-anchor-after-' + idIndex;
|
|
25
34
|
this.beforeAnchorId = 'sky-ag-grid-nav-anchor-before-' + idIndex;
|
|
26
35
|
this.gridId = 'sky-ag-grid-' + idIndex;
|
|
36
|
+
__classPrivateFieldSet(this, _SkyAgGridWrapperComponent_agGridService, agGridService, "f");
|
|
37
|
+
__classPrivateFieldSet(this, _SkyAgGridWrapperComponent_themeSvc, themeSvc, "f");
|
|
38
|
+
this.wrapperClasses$ = __classPrivateFieldGet(this, _SkyAgGridWrapperComponent_wrapperClasses, "f").asObservable();
|
|
27
39
|
}
|
|
28
40
|
get viewkeeperClasses() {
|
|
29
|
-
return this
|
|
41
|
+
return __classPrivateFieldGet(this, _SkyAgGridWrapperComponent__viewkeeperClasses, "f");
|
|
30
42
|
}
|
|
31
43
|
set viewkeeperClasses(value) {
|
|
32
|
-
this
|
|
33
|
-
this.
|
|
44
|
+
__classPrivateFieldSet(this, _SkyAgGridWrapperComponent__viewkeeperClasses, value, "f");
|
|
45
|
+
__classPrivateFieldGet(this, _SkyAgGridWrapperComponent_changeDetector, "f").markForCheck();
|
|
34
46
|
}
|
|
35
47
|
ngAfterContentInit() {
|
|
36
|
-
if (this.agGrid
|
|
37
|
-
this.agGrid.gridOptions
|
|
38
|
-
|
|
39
|
-
this.
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
48
|
+
if (this.agGrid) {
|
|
49
|
+
if (this.agGrid.gridOptions &&
|
|
50
|
+
this.agGrid.gridOptions.domLayout === 'autoHeight') {
|
|
51
|
+
if (this.agGrid.gridOptions.context?.enableTopScroll) {
|
|
52
|
+
this.viewkeeperClasses.push('.ag-header', '.ag-body-horizontal-scroll');
|
|
53
|
+
}
|
|
54
|
+
else {
|
|
55
|
+
this.viewkeeperClasses.push('.ag-header');
|
|
56
|
+
}
|
|
43
57
|
}
|
|
58
|
+
this.agGrid.gridReady
|
|
59
|
+
.pipe(takeUntil(__classPrivateFieldGet(this, _SkyAgGridWrapperComponent_ngUnsubscribe, "f")))
|
|
60
|
+
.subscribe(() => {
|
|
61
|
+
__classPrivateFieldGet(this, _SkyAgGridWrapperComponent_instances, "m", _SkyAgGridWrapperComponent_moveHorizontalScroll).call(this);
|
|
62
|
+
});
|
|
63
|
+
this.agGrid.firstDataRendered
|
|
64
|
+
.pipe(takeUntil(__classPrivateFieldGet(this, _SkyAgGridWrapperComponent_ngUnsubscribe, "f")))
|
|
65
|
+
.subscribe(() => {
|
|
66
|
+
__classPrivateFieldGet(this, _SkyAgGridWrapperComponent_instances, "m", _SkyAgGridWrapperComponent_moveHorizontalScroll).call(this);
|
|
67
|
+
});
|
|
68
|
+
this.agGrid.rowDataUpdated
|
|
69
|
+
.pipe(takeUntil(__classPrivateFieldGet(this, _SkyAgGridWrapperComponent_ngUnsubscribe, "f")))
|
|
70
|
+
.subscribe(() => {
|
|
71
|
+
__classPrivateFieldGet(this, _SkyAgGridWrapperComponent_instances, "m", _SkyAgGridWrapperComponent_moveHorizontalScroll).call(this);
|
|
72
|
+
});
|
|
73
|
+
this.agGrid.cellEditingStarted
|
|
74
|
+
.pipe(takeUntil(__classPrivateFieldGet(this, _SkyAgGridWrapperComponent_ngUnsubscribe, "f")))
|
|
75
|
+
.subscribe((params) => {
|
|
76
|
+
if (params.colDef.type) {
|
|
77
|
+
const types = Array.isArray(params.colDef.type)
|
|
78
|
+
? params.colDef.type
|
|
79
|
+
: [params.colDef.type];
|
|
80
|
+
const addClasses = types.map((t) => `sky-ag-grid-cell-editing-${t}`);
|
|
81
|
+
__classPrivateFieldGet(this, _SkyAgGridWrapperComponent_wrapperClasses, "f").next([
|
|
82
|
+
...__classPrivateFieldGet(this, _SkyAgGridWrapperComponent_wrapperClasses, "f").getValue(),
|
|
83
|
+
...addClasses,
|
|
84
|
+
]);
|
|
85
|
+
}
|
|
86
|
+
});
|
|
87
|
+
this.agGrid.cellEditingStopped
|
|
88
|
+
.pipe(takeUntil(__classPrivateFieldGet(this, _SkyAgGridWrapperComponent_ngUnsubscribe, "f")))
|
|
89
|
+
.subscribe(() => {
|
|
90
|
+
__classPrivateFieldGet(this, _SkyAgGridWrapperComponent_wrapperClasses, "f").next(__classPrivateFieldGet(this, _SkyAgGridWrapperComponent_wrapperClasses, "f")
|
|
91
|
+
.getValue()
|
|
92
|
+
.filter((c) => c.startsWith('ag-theme-')));
|
|
93
|
+
});
|
|
44
94
|
}
|
|
45
|
-
this.agGrid.gridReady.pipe(takeUntil(__classPrivateFieldGet(this, _SkyAgGridWrapperComponent_ngUnsubscribe, "f"))).subscribe(() => {
|
|
46
|
-
__classPrivateFieldGet(this, _SkyAgGridWrapperComponent_instances, "m", _SkyAgGridWrapperComponent_moveHorizontalScroll).call(this);
|
|
47
|
-
});
|
|
48
|
-
this.agGrid.firstDataRendered
|
|
49
|
-
.pipe(takeUntil(__classPrivateFieldGet(this, _SkyAgGridWrapperComponent_ngUnsubscribe, "f")))
|
|
50
|
-
.subscribe(() => {
|
|
51
|
-
__classPrivateFieldGet(this, _SkyAgGridWrapperComponent_instances, "m", _SkyAgGridWrapperComponent_moveHorizontalScroll).call(this);
|
|
52
|
-
});
|
|
53
|
-
this.agGrid.rowDataChanged
|
|
54
|
-
.pipe(takeUntil(__classPrivateFieldGet(this, _SkyAgGridWrapperComponent_ngUnsubscribe, "f")))
|
|
55
|
-
.subscribe(() => {
|
|
56
|
-
__classPrivateFieldGet(this, _SkyAgGridWrapperComponent_instances, "m", _SkyAgGridWrapperComponent_moveHorizontalScroll).call(this);
|
|
57
|
-
});
|
|
58
95
|
}
|
|
59
96
|
ngOnDestroy() {
|
|
60
97
|
__classPrivateFieldGet(this, _SkyAgGridWrapperComponent_ngUnsubscribe, "f").next();
|
|
61
98
|
__classPrivateFieldGet(this, _SkyAgGridWrapperComponent_ngUnsubscribe, "f").complete();
|
|
62
99
|
}
|
|
100
|
+
ngOnInit() {
|
|
101
|
+
__classPrivateFieldGet(this, _SkyAgGridWrapperComponent_themeSvc, "f")?.settingsChange
|
|
102
|
+
.pipe(takeUntil(__classPrivateFieldGet(this, _SkyAgGridWrapperComponent_ngUnsubscribe, "f")))
|
|
103
|
+
.subscribe((settings) => {
|
|
104
|
+
let agThemeClass;
|
|
105
|
+
if (settings.currentSettings.theme.name === 'modern') {
|
|
106
|
+
agThemeClass = `ag-theme-sky-modern-${settings.currentSettings.mode.name}`;
|
|
107
|
+
}
|
|
108
|
+
else {
|
|
109
|
+
agThemeClass = `ag-theme-sky-default`;
|
|
110
|
+
}
|
|
111
|
+
__classPrivateFieldGet(this, _SkyAgGridWrapperComponent_wrapperClasses, "f").next([
|
|
112
|
+
...__classPrivateFieldGet(this, _SkyAgGridWrapperComponent_wrapperClasses, "f")
|
|
113
|
+
.getValue()
|
|
114
|
+
.filter((c) => !c.startsWith('ag-theme-')),
|
|
115
|
+
agThemeClass,
|
|
116
|
+
]);
|
|
117
|
+
if (!__classPrivateFieldGet(this, _SkyAgGridWrapperComponent_currentTheme, "f")) {
|
|
118
|
+
// Initial theme settings.
|
|
119
|
+
__classPrivateFieldSet(this, _SkyAgGridWrapperComponent_currentTheme, settings.currentSettings, "f");
|
|
120
|
+
}
|
|
121
|
+
else if (this.agGrid?.api) {
|
|
122
|
+
// On subsequent theme changes, we need to call the api to re-render the grid.
|
|
123
|
+
__classPrivateFieldSet(this, _SkyAgGridWrapperComponent_currentTheme, settings.currentSettings, "f");
|
|
124
|
+
this.agGrid.api.setHeaderHeight(__classPrivateFieldGet(this, _SkyAgGridWrapperComponent_agGridService, "f").getHeaderHeight());
|
|
125
|
+
this.agGrid.api.resetRowHeights();
|
|
126
|
+
this.agGrid.api.refreshCells();
|
|
127
|
+
}
|
|
128
|
+
});
|
|
129
|
+
}
|
|
63
130
|
/**
|
|
64
131
|
* Prevent closing a modal when focused in AG Grid.
|
|
65
132
|
*/
|
|
66
133
|
onKeyUpEscape($event) {
|
|
67
134
|
$event.stopPropagation();
|
|
68
|
-
this.agGrid
|
|
135
|
+
this.agGrid?.api.stopEditing(true);
|
|
69
136
|
}
|
|
70
137
|
onGridKeydown(event) {
|
|
71
|
-
if (this.agGrid && !this
|
|
138
|
+
if (this.agGrid && !__classPrivateFieldGet(this, _SkyAgGridWrapperComponent_instances, "a", _SkyAgGridWrapperComponent_isInEditMode_get) && event.key === 'Tab') {
|
|
72
139
|
const idToFocus = event.shiftKey
|
|
73
140
|
? this.beforeAnchorId
|
|
74
141
|
: this.afterAnchorId;
|
|
75
|
-
this.
|
|
142
|
+
__classPrivateFieldGet(this, _SkyAgGridWrapperComponent_adapterService, "f").setFocusedElementById(__classPrivateFieldGet(this, _SkyAgGridWrapperComponent_elementRef, "f").nativeElement, idToFocus);
|
|
76
143
|
}
|
|
77
144
|
}
|
|
78
145
|
onAnchorFocus(event) {
|
|
@@ -80,43 +147,41 @@ export class SkyAgGridWrapperComponent {
|
|
|
80
147
|
const relatedTarget = event.relatedTarget;
|
|
81
148
|
const previousFocusedId = relatedTarget && relatedTarget.id;
|
|
82
149
|
const previousWasCell = relatedTarget &&
|
|
83
|
-
!!this.
|
|
150
|
+
!!__classPrivateFieldGet(this, _SkyAgGridWrapperComponent_adapterService, "f").getElementOrParentWithClass(relatedTarget, 'ag-cell');
|
|
84
151
|
if (previousFocusedId !== gridId && !previousWasCell) {
|
|
85
|
-
const columns = this.agGrid
|
|
86
|
-
const firstColumn = columns
|
|
87
|
-
const rowIndex = this.agGrid
|
|
88
|
-
if (firstColumn && rowIndex >= 0) {
|
|
89
|
-
this.agGrid
|
|
152
|
+
const columns = this.agGrid?.columnApi.getAllDisplayedColumns();
|
|
153
|
+
const firstColumn = columns?.[0];
|
|
154
|
+
const rowIndex = this.agGrid?.api.getFirstDisplayedRow();
|
|
155
|
+
if (firstColumn && rowIndex !== undefined && rowIndex >= 0) {
|
|
156
|
+
this.agGrid?.api.setFocusedCell(rowIndex, firstColumn);
|
|
90
157
|
}
|
|
91
158
|
}
|
|
92
159
|
}
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
}
|
|
101
|
-
else {
|
|
102
|
-
let innerEditing = false;
|
|
103
|
-
this.agGrid.api.forEachDetailGridInfo((detailGrid) => {
|
|
104
|
-
if (detailGrid.api.getEditingCells().length > 0) {
|
|
105
|
-
innerEditing = true;
|
|
106
|
-
}
|
|
107
|
-
});
|
|
108
|
-
return innerEditing;
|
|
109
|
-
}
|
|
160
|
+
}
|
|
161
|
+
_SkyAgGridWrapperComponent__viewkeeperClasses = new WeakMap(), _SkyAgGridWrapperComponent_agGridService = new WeakMap(), _SkyAgGridWrapperComponent_ngUnsubscribe = new WeakMap(), _SkyAgGridWrapperComponent_themeSvc = new WeakMap(), _SkyAgGridWrapperComponent_wrapperClasses = new WeakMap(), _SkyAgGridWrapperComponent_currentTheme = new WeakMap(), _SkyAgGridWrapperComponent_adapterService = new WeakMap(), _SkyAgGridWrapperComponent_changeDetector = new WeakMap(), _SkyAgGridWrapperComponent_elementRef = new WeakMap(), _SkyAgGridWrapperComponent_document = new WeakMap(), _SkyAgGridWrapperComponent_instances = new WeakSet(), _SkyAgGridWrapperComponent_isInEditMode_get = function _SkyAgGridWrapperComponent_isInEditMode_get() {
|
|
162
|
+
/* istanbul ignore else */
|
|
163
|
+
if (this.agGrid && this.agGrid.api) {
|
|
164
|
+
const primaryGridEditing = this.agGrid.api.getEditingCells().length > 0;
|
|
165
|
+
if (primaryGridEditing) {
|
|
166
|
+
return true;
|
|
110
167
|
}
|
|
111
168
|
else {
|
|
112
|
-
|
|
169
|
+
let innerEditing = false;
|
|
170
|
+
this.agGrid.api.forEachDetailGridInfo((detailGrid) => {
|
|
171
|
+
if (detailGrid?.api && detailGrid.api.getEditingCells().length > 0) {
|
|
172
|
+
innerEditing = true;
|
|
173
|
+
}
|
|
174
|
+
});
|
|
175
|
+
return innerEditing;
|
|
113
176
|
}
|
|
114
177
|
}
|
|
115
|
-
|
|
116
|
-
|
|
178
|
+
else {
|
|
179
|
+
return false;
|
|
180
|
+
}
|
|
181
|
+
}, _SkyAgGridWrapperComponent_moveHorizontalScroll = function _SkyAgGridWrapperComponent_moveHorizontalScroll() {
|
|
117
182
|
if (this.agGrid && this.agGrid.api) {
|
|
118
183
|
const toTop = !!this.agGrid.gridOptions.context?.enableTopScroll;
|
|
119
|
-
const root = this.
|
|
184
|
+
const root = __classPrivateFieldGet(this, _SkyAgGridWrapperComponent_elementRef, "f").nativeElement.querySelector('.ag-root');
|
|
120
185
|
const header = root.querySelector('.ag-header');
|
|
121
186
|
const floatingBottom = root.querySelector('.ag-floating-bottom');
|
|
122
187
|
const scrollbar = root.querySelector('.ag-body-horizontal-scroll');
|
|
@@ -127,30 +192,32 @@ _SkyAgGridWrapperComponent_ngUnsubscribe = new WeakMap(), _SkyAgGridWrapperCompo
|
|
|
127
192
|
}
|
|
128
193
|
const isTop = !!root.children[1].matches('.ag-body-horizontal-scroll');
|
|
129
194
|
if (toTop && !isTop) {
|
|
130
|
-
const fragment = this.
|
|
195
|
+
const fragment = __classPrivateFieldGet(this, _SkyAgGridWrapperComponent_document, "f").createDocumentFragment();
|
|
131
196
|
fragment.appendChild(scrollbar);
|
|
132
197
|
header.after(fragment);
|
|
133
198
|
}
|
|
134
199
|
else if (!toTop && isTop) {
|
|
135
|
-
const fragment = this.
|
|
200
|
+
const fragment = __classPrivateFieldGet(this, _SkyAgGridWrapperComponent_document, "f").createDocumentFragment();
|
|
136
201
|
fragment.appendChild(scrollbar);
|
|
137
202
|
floatingBottom.after(fragment);
|
|
138
203
|
}
|
|
139
204
|
}
|
|
140
205
|
}
|
|
141
206
|
};
|
|
142
|
-
SkyAgGridWrapperComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.
|
|
143
|
-
SkyAgGridWrapperComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.
|
|
144
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.
|
|
207
|
+
SkyAgGridWrapperComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.11", ngImport: i0, type: SkyAgGridWrapperComponent, deps: [{ token: i1.SkyAgGridAdapterService }, { token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: DOCUMENT }, { token: i2.SkyAgGridService }, { token: i3.SkyThemeService, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
208
|
+
SkyAgGridWrapperComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.11", type: SkyAgGridWrapperComponent, selector: "sky-ag-grid-wrapper", queries: [{ propertyName: "agGrid", first: true, predicate: AgGridAngular, descendants: true, static: true }], ngImport: i0, template: "<span\n class=\"nav-anchor\"\n tabindex=\"0\"\n [id]=\"beforeAnchorId\"\n (focusin)=\"onAnchorFocus($event)\"\n>\n</span>\n<div\n class=\"sky-ag-grid\"\n [class.sky-ag-grid-top-scrollbar]=\"\n agGrid?.gridOptions?.context &&\n agGrid?.gridOptions?.context['enableTopScroll']\n \"\n [ngClass]=\"wrapperClasses$ | async\"\n tabindex=\"0\"\n [id]=\"gridId\"\n [skyViewkeeper]=\"viewkeeperClasses\"\n (keydown)=\"onGridKeydown($event)\"\n (keyup.escape)=\"onKeyUpEscape($event)\"\n>\n <ng-content></ng-content>\n</div>\n<span\n tabindex=\"0\"\n class=\"nav-anchor\"\n [id]=\"afterAnchorId\"\n (focusin)=\"onAnchorFocus($event)\"\n>\n</span>\n", dependencies: [{ kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i5.λ3, selector: "[skyViewkeeper]", inputs: ["skyViewkeeper"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
209
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.11", ngImport: i0, type: SkyAgGridWrapperComponent, decorators: [{
|
|
145
210
|
type: Component,
|
|
146
|
-
args: [{ selector: 'sky-ag-grid-wrapper', changeDetection: ChangeDetectionStrategy.OnPush, template: "<span\n class=\"nav-anchor\"\n tabindex=\"0\"\n [id]=\"beforeAnchorId\"\n (focusin)=\"onAnchorFocus($event)\"\n>\n</span>\n<div\n class=\"sky-ag-grid\"\n [
|
|
211
|
+
args: [{ selector: 'sky-ag-grid-wrapper', changeDetection: ChangeDetectionStrategy.OnPush, template: "<span\n class=\"nav-anchor\"\n tabindex=\"0\"\n [id]=\"beforeAnchorId\"\n (focusin)=\"onAnchorFocus($event)\"\n>\n</span>\n<div\n class=\"sky-ag-grid\"\n [class.sky-ag-grid-top-scrollbar]=\"\n agGrid?.gridOptions?.context &&\n agGrid?.gridOptions?.context['enableTopScroll']\n \"\n [ngClass]=\"wrapperClasses$ | async\"\n tabindex=\"0\"\n [id]=\"gridId\"\n [skyViewkeeper]=\"viewkeeperClasses\"\n (keydown)=\"onGridKeydown($event)\"\n (keyup.escape)=\"onKeyUpEscape($event)\"\n>\n <ng-content></ng-content>\n</div>\n<span\n tabindex=\"0\"\n class=\"nav-anchor\"\n [id]=\"afterAnchorId\"\n (focusin)=\"onAnchorFocus($event)\"\n>\n</span>\n" }]
|
|
147
212
|
}], ctorParameters: function () { return [{ type: i1.SkyAgGridAdapterService }, { type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: Document, decorators: [{
|
|
148
213
|
type: Inject,
|
|
149
214
|
args: [DOCUMENT]
|
|
215
|
+
}] }, { type: i2.SkyAgGridService }, { type: i3.SkyThemeService, decorators: [{
|
|
216
|
+
type: Optional
|
|
150
217
|
}] }]; }, propDecorators: { agGrid: [{
|
|
151
218
|
type: ContentChild,
|
|
152
219
|
args: [AgGridAngular, {
|
|
153
220
|
static: true,
|
|
154
221
|
}]
|
|
155
222
|
}] } });
|
|
156
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWctZ3JpZC13cmFwcGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9hZy1ncmlkL3NyYy9saWIvbW9kdWxlcy9hZy1ncmlkL2FnLWdyaWQtd3JhcHBlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvYWctZ3JpZC9zcmMvbGliL21vZHVsZXMvYWctZ3JpZC9hZy1ncmlkLXdyYXBwZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxFQUVMLHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULFlBQVksRUFDWixVQUFVLEVBQ1YsTUFBTSxHQUVQLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUVoRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUzQyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7Ozs7QUFFcEUsSUFBSSxPQUFPLEdBQUcsQ0FBQyxDQUFDO0FBT2hCLE1BQU0sT0FBTyx5QkFBeUI7SUF1QnBDLFlBQ1UsY0FBdUMsRUFDdkMsY0FBaUMsRUFDakMsVUFBc0IsRUFDSixRQUFrQjtRQUhwQyxtQkFBYyxHQUFkLGNBQWMsQ0FBeUI7UUFDdkMsbUJBQWMsR0FBZCxjQUFjLENBQW1CO1FBQ2pDLGVBQVUsR0FBVixVQUFVLENBQVk7UUFDSixhQUFRLEdBQVIsUUFBUSxDQUFVOztRQVJ0Qyx1QkFBa0IsR0FBYSxFQUFFLENBQUM7UUFFMUMsbURBQWlCLElBQUksT0FBTyxFQUFRLEVB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Q0FBQyxDQUFDLE9BQU8sQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDO1lBQ3ZFLElBQUksS0FBSyxJQUFJLENBQUMsS0FBSyxFQUFFO2dCQUNuQixNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLHNCQUFzQixFQUFFLENBQUM7Z0JBQ3hELFFBQVEsQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLENBQUM7Z0JBQ2hDLE1BQU0sQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7YUFDeEI7aUJBQU0sSUFBSSxDQUFDLEtBQUssSUFBSSxLQUFLLEVBQUU7Z0JBQzFCLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsc0JBQXNCLEVBQUUsQ0FBQztnQkFDeEQsUUFBUSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsQ0FBQztnQkFDaEMsY0FBYyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQzthQUNoQztTQUNGO0tBQ0Y7QUFDSCxDQUFDO3NIQXRLVSx5QkFBeUIsb0hBMkIxQixRQUFROzBHQTNCUCx5QkFBeUIsK0ZBQ3RCLGFBQWEsOERDM0I3QiwrbkJBNkJBOzJGREhhLHlCQUF5QjtrQkFMckMsU0FBUzsrQkFDRSxxQkFBcUIsbUJBRWQsdUJBQXVCLENBQUMsTUFBTTt5SkE2QlQsUUFBUTswQkFBM0MsTUFBTTsyQkFBQyxRQUFROzRDQXZCWCxNQUFNO3NCQUhaLFlBQVk7dUJBQUMsYUFBYSxFQUFFO3dCQUMzQixNQUFNLEVBQUUsSUFBSTtxQkFDYiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIEFmdGVyQ29udGVudEluaXQsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBDb250ZW50Q2hpbGQsXG4gIEVsZW1lbnRSZWYsXG4gIEluamVjdCxcbiAgT25EZXN0cm95LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgQWdHcmlkQW5ndWxhciB9IGZyb20gJ2FnLWdyaWQtYW5ndWxhcic7XG5pbXBvcnQgeyBEZXRhaWxHcmlkSW5mbyB9IGZyb20gJ2FnLWdyaWQtY29tbXVuaXR5JztcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgU2t5QWdHcmlkQWRhcHRlclNlcnZpY2UgfSBmcm9tICcuL2FnLWdyaWQtYWRhcHRlci5zZXJ2aWNlJztcblxubGV0IGlkSW5kZXggPSAwO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdza3ktYWctZ3JpZC13cmFwcGVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2FnLWdyaWQtd3JhcHBlci5jb21wb25lbnQuaHRtbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBTa3lBZ0dyaWRXcmFwcGVyQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJDb250ZW50SW5pdCwgT25EZXN0cm95IHtcbiAgQENvbnRlbnRDaGlsZChBZ0dyaWRBbmd1bGFyLCB7XG4gICAgc3RhdGljOiB0cnVlLFxuICB9KVxuICBwdWJsaWMgYWdHcmlkOiBBZ0dyaWRBbmd1bGFyO1xuXG4gIHB1YmxpYyBhZnRlckFuY2hvcklkOiBzdHJpbmc7XG4gIHB1YmxpYyBiZWZvcmVBbmNob3JJZDogc3RyaW5nO1xuICBwdWJsaWMgZ3JpZElkOiBzdHJpbmc7XG5cbiAgcHVibGljIGdldCB2aWV3a2VlcGVyQ2xhc3NlcygpOiBzdHJpbmdbXSB7XG4gICAgcmV0dXJuIHRoaXMuX3ZpZXdrZWVwZXJDbGFzc2VzO1xuICB9XG5cbiAgcHVibGljIHNldCB2aWV3a2VlcGVyQ2xhc3Nlcyh2YWx1ZTogc3RyaW5nW10pIHtcbiAgICB0aGlzLl92aWV3a2VlcGVyQ2xhc3NlcyA9IHZhbHVlO1xuICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICBwcml2YXRlIF92aWV3a2VlcGVyQ2xhc3Nlczogc3RyaW5nW10gPSBbXTtcblxuICAjbmdVbnN1YnNjcmliZSA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBhZGFwdGVyU2VydmljZTogU2t5QWdHcmlkQWRhcHRlclNlcnZpY2UsXG4gICAgcHJpdmF0ZSBjaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgcHJpdmF0ZSBlbGVtZW50UmVmOiBFbGVtZW50UmVmLFxuICAgIEBJbmplY3QoRE9DVU1FTlQpIHByaXZhdGUgZG9jdW1lbnQ6IERvY3VtZW50XG4gICkge1xuICAgIGlkSW5kZXgrKztcbiAgICB0aGlzLmFmdGVyQW5jaG9ySWQgPSAnc2t5LWFnLWdyaWQtbmF2LWFuY2hvci1hZnRlci0nICsgaWRJbmRleDtcbiAgICB0aGlzLmJlZm9yZUFuY2hvcklkID0gJ3NreS1hZy1ncmlkLW5hdi1hbmNob3ItYmVmb3JlLScgKyBpZEluZGV4O1xuICAgIHRoaXMuZ3JpZElkID0gJ3NreS1hZy1ncmlkLScgKyBpZEluZGV4O1xuICB9XG5cbiAgcHVibGljIG5nQWZ0ZXJDb250ZW50SW5pdCgpOiB2b2lkIHtcbiAgICBpZiAoXG4gICAgICB0aGlzLmFnR3JpZC5ncmlkT3B0aW9ucyAmJlxuICAgICAgdGhpcy5hZ0dyaWQuZ3JpZE9wdGlvbnMuZG9tTGF5b3V0ID09PSAnYXV0b0hlaWdodCdcbiAgICApIHtcbiAgICAgIGlmICh0aGlzLmFnR3JpZC5ncmlkT3B0aW9ucy5jb250ZXh0Py5lbmFibGVUb3BTY3JvbGwpIHtcbiAgICAgICAgdGhpcy52aWV3a2VlcGVyQ2xhc3Nlcy5wdXNoKCcuYWctaGVhZGVyJywgJy5hZy1ib2R5LWhvcml6b250YWwtc2Nyb2xsJyk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLnZpZXdrZWVwZXJDbGFzc2VzLnB1c2goJy5hZy1oZWFkZXInKTtcbiAgICAgIH1cbiAgICB9XG4gICAgdGhpcy5hZ0dyaWQuZ3JpZFJlYWR5LnBpcGUodGFrZVVudGlsKHRoaXMuI25nVW5zdWJzY3JpYmUpKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy4jbW92ZUhvcml6b250YWxTY3JvbGwoKTtcbiAgICB9KTtcbiAgICB0aGlzLmFnR3JpZC5maXJzdERhdGFSZW5kZXJlZFxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuI25nVW5zdWJzY3JpYmUpKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMuI21vdmVIb3Jpem9udGFsU2Nyb2xsKCk7XG4gICAgICB9KTtcbiAgICB0aGlzLmFnR3JpZC5yb3dEYXRhQ2hhbmdlZFxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuI25nVW5zdWJzY3JpYmUpKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMuI21vdmVIb3Jpem9udGFsU2Nyb2xsKCk7XG4gICAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLiNuZ1Vuc3Vic2NyaWJlLm5leHQoKTtcbiAgICB0aGlzLiNuZ1Vuc3Vic2NyaWJlLmNvbXBsZXRlKCk7XG4gIH1cblxuICAvKipcbiAgICogUHJldmVudCBjbG9zaW5nIGEgbW9kYWwgd2hlbiBmb2N1c2VkIGluIEFHIEdyaWQuXG4gICAqL1xuICBwdWJsaWMgb25LZXlVcEVzY2FwZSgkZXZlbnQ6IEV2ZW50KSB7XG4gICAgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIHRoaXMuYWdHcmlkLmFwaS5zdG9wRWRpdGluZyh0cnVlKTtcbiAgfVxuXG4gIHB1YmxpYyBvbkdyaWRLZXlkb3duKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgaWYgKHRoaXMuYWdHcmlkICYmICF0aGlzLmlzSW5FZGl0TW9kZSAmJiBldmVudC5rZXkgPT09ICdUYWInKSB7XG4gICAgICBjb25zdCBpZFRvRm9jdXMgPSBldmVudC5zaGlmdEtleVxuICAgICAgICA/IHRoaXMuYmVmb3JlQW5jaG9ySWRcbiAgICAgICAgOiB0aGlzLmFmdGVyQW5jaG9ySWQ7XG4gICAgICB0aGlzLmFkYXB0ZXJTZXJ2aWNlLnNldEZvY3VzZWRFbGVtZW50QnlJZChcbiAgICAgICAgdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsXG4gICAgICAgIGlkVG9Gb2N1c1xuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgb25BbmNob3JGb2N1cyhldmVudDogRm9jdXNFdmVudCk6IHZvaWQge1xuICAgIGNvbnN0IGdyaWRJZCA9IHRoaXMuZ3JpZElkO1xuICAgIGNvbnN0IHJlbGF0ZWRUYXJnZXQgPSBldmVudC5yZWxhdGVkVGFyZ2V0IGFzIEhUTUxFbGVtZW50O1xuICAgIGNvbnN0IHByZXZpb3VzRm9jdXNlZElkID0gcmVsYXRlZFRhcmdldCAmJiByZWxhdGVkVGFyZ2V0LmlkO1xuICAgIGNvbnN0IHByZXZpb3VzV2FzQ2VsbCA9XG4gICAgICByZWxhdGVkVGFyZ2V0ICYmXG4gICAgICAhIXRoaXMuYWRhcHRlclNlcnZpY2UuZ2V0RWxlbWVudE9yUGFyZW50V2l0aENsYXNzKFxuICAgICAgICByZWxhdGVkVGFyZ2V0LFxuICAgICAgICAnYWctY2VsbCdcbiAgICAgICk7XG5cbiAgICBpZiAocHJldmlvdXNGb2N1c2VkSWQgIT09IGdyaWRJZCAmJiAhcHJldmlvdXNXYXNDZWxsKSB7XG4gICAgICBjb25zdCBjb2x1bW5zID0gdGhpcy5hZ0dyaWQuY29sdW1uQXBpLmdldEFsbERpc3BsYXllZENvbHVtbnMoKTtcbiAgICAgIGNvbnN0IGZpcnN0Q29sdW1uID0gY29sdW1ucyAmJiBjb2x1bW5zWzBdO1xuICAgICAgY29uc3Qgcm93SW5kZXggPSB0aGlzLmFnR3JpZC5hcGkuZ2V0Rmlyc3REaXNwbGF5ZWRSb3coKTtcblxuICAgICAgaWYgKGZpcnN0Q29sdW1uICYmIHJvd0luZGV4ID49IDApIHtcbiAgICAgICAgdGhpcy5hZ0dyaWQuYXBpLnNldEZvY3VzZWRDZWxsKHJvd0luZGV4LCBmaXJzdENvbHVtbik7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBnZXQgaXNJbkVkaXRNb2RlKCk6IGJvb2xlYW4ge1xuICAgIC8qIFNhbml0eSBjaGVjayAqL1xuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgaWYgKHRoaXMuYWdHcmlkICYmIHRoaXMuYWdHcmlkLmFwaSkge1xuICAgICAgY29uc3QgcHJpbWFyeUdyaWRFZGl0aW5nID0gdGhpcy5hZ0dyaWQuYXBpLmdldEVkaXRpbmdDZWxscygpLmxlbmd0aCA+IDA7XG4gICAgICBpZiAocHJpbWFyeUdyaWRFZGl0aW5nKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgbGV0IGlubmVyRWRpdGluZyA9IGZhbHNlO1xuICAgICAgICB0aGlzLmFnR3JpZC5hcGkuZm9yRWFjaERldGFpbEdyaWRJbmZvKChkZXRhaWxHcmlkOiBEZXRhaWxHcmlkSW5mbykgPT4ge1xuICAgICAgICAgIGlmIChkZXRhaWxHcmlkLmFwaS5nZXRFZGl0aW5nQ2VsbHMoKS5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICBpbm5lckVkaXRpbmcgPSB0cnVlO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cbiAgICAgICAgcmV0dXJuIGlubmVyRWRpdGluZztcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gICNtb3ZlSG9yaXpvbnRhbFNjcm9sbCgpIHtcbiAgICBpZiAodGhpcy5hZ0dyaWQgJiYgdGhpcy5hZ0dyaWQuYXBpKSB7XG4gICAgICBjb25zdCB0b1RvcCA9ICEhdGhpcy5hZ0dyaWQuZ3JpZE9wdGlvbnMuY29udGV4dD8uZW5hYmxlVG9wU2Nyb2xsO1xuICAgICAgY29uc3Qgcm9vdDogSFRNTEVsZW1lbnQgPVxuICAgICAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKCcuYWctcm9vdCcpO1xuICAgICAgY29uc3QgaGVhZGVyOiBIVE1MRGl2RWxlbWVudCB8IG51bGwgPSByb290LnF1ZXJ5U2VsZWN0b3IoJy5hZy1oZWFkZXInKTtcbiAgICAgIGNvbnN0IGZsb2F0aW5nQm90dG9tOiBIVE1MRGl2RWxlbWVudCB8IG51bGwgPSByb290LnF1ZXJ5U2VsZWN0b3IoXG4gICAgICAgICcuYWctZmxvYXRpbmctYm90dG9tJ1xuICAgICAgKTtcbiAgICAgIGNvbnN0IHNjcm9sbGJhcjogSFRNTERpdkVsZW1lbnQgfCBudWxsID0gcm9vdC5xdWVyeVNlbGVjdG9yKFxuICAgICAgICAnLmFnLWJvZHktaG9yaXpvbnRhbC1zY3JvbGwnXG4gICAgICApO1xuICAgICAgaWYgKGhlYWRlciAmJiBmbG9hdGluZ0JvdHRvbSAmJiBzY3JvbGxiYXIpIHtcbiAgICAgICAgaWYgKFxuICAgICAgICAgIHNjcm9sbGJhci5zdHlsZS5oZWlnaHQgIT09XG4gICAgICAgICAgc2Nyb2xsYmFyLnN0eWxlLmdldFByb3BlcnR5VmFsdWUoXG4gICAgICAgICAgICAnLS1za3ktYWctYm9keS1ob3Jpem9udGFsLXNjcm9sbC13aWR0aCdcbiAgICAgICAgICApXG4gICAgICAgICkge1xuICAgICAgICAgIHNjcm9sbGJhci5zdHlsZS5zZXRQcm9wZXJ0eShcbiAgICAgICAgICAgICctLXNreS1hZy1ib2R5LWhvcml6b250YWwtc2Nyb2xsLXdpZHRoJyxcbiAgICAgICAgICAgIHNjcm9sbGJhci5zdHlsZS5oZWlnaHRcbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGlzVG9wID0gISFyb290LmNoaWxkcmVuWzFdLm1hdGNoZXMoJy5hZy1ib2R5LWhvcml6b250YWwtc2Nyb2xsJyk7XG4gICAgICAgIGlmICh0b1RvcCAmJiAhaXNUb3ApIHtcbiAgICAgICAgICBjb25zdCBmcmFnbWVudCA9IHRoaXMuZG9jdW1lbnQuY3JlYXRlRG9jdW1lbnRGcmFnbWVudCgpO1xuICAgICAgICAgIGZyYWdtZW50LmFwcGVuZENoaWxkKHNjcm9sbGJhcik7XG4gICAgICAgICAgaGVhZGVyLmFmdGVyKGZyYWdtZW50KTtcbiAgICAgICAgfSBlbHNlIGlmICghdG9Ub3AgJiYgaXNUb3ApIHtcbiAgICAgICAgICBjb25zdCBmcmFnbWVudCA9IHRoaXMuZG9jdW1lbnQuY3JlYXRlRG9jdW1lbnRGcmFnbWVudCgpO1xuICAgICAgICAgIGZyYWdtZW50LmFwcGVuZENoaWxkKHNjcm9sbGJhcik7XG4gICAgICAgICAgZmxvYXRpbmdCb3R0b20uYWZ0ZXIoZnJhZ21lbnQpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCI8c3BhblxuICBjbGFzcz1cIm5hdi1hbmNob3JcIlxuICB0YWJpbmRleD1cIjBcIlxuICBbaWRdPVwiYmVmb3JlQW5jaG9ySWRcIlxuICAoZm9jdXNpbik9XCJvbkFuY2hvckZvY3VzKCRldmVudClcIlxuPlxuPC9zcGFuPlxuPGRpdlxuICBjbGFzcz1cInNreS1hZy1ncmlkXCJcbiAgW25nQ2xhc3NdPVwie1xuICAgICdza3ktYWctZ3JpZC10b3Atc2Nyb2xsYmFyJzpcbiAgICAgIGFnR3JpZD8uZ3JpZE9wdGlvbnM/LmNvbnRleHQgJiZcbiAgICAgIGFnR3JpZD8uZ3JpZE9wdGlvbnM/LmNvbnRleHRbJ2VuYWJsZVRvcFNjcm9sbCddXG4gIH1cIlxuICB0YWJpbmRleD1cIjBcIlxuICBbaWRdPVwiZ3JpZElkXCJcbiAgW3NreVZpZXdrZWVwZXJdPVwidmlld2tlZXBlckNsYXNzZXNcIlxuICAoa2V5ZG93bik9XCJvbkdyaWRLZXlkb3duKCRldmVudClcIlxuICAoa2V5dXAuZXNjYXBlKT1cIm9uS2V5VXBFc2NhcGUoJGV2ZW50KVwiXG4+XG4gIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbjwvZGl2PlxuPHNwYW5cbiAgdGFiaW5kZXg9XCIwXCJcbiAgY2xhc3M9XCJuYXYtYW5jaG9yXCJcbiAgW2lkXT1cImFmdGVyQW5jaG9ySWRcIlxuICAoZm9jdXNpbik9XCJvbkFuY2hvckZvY3VzKCRldmVudClcIlxuPlxuPC9zcGFuPlxuIl19
|
|
223
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWctZ3JpZC13cmFwcGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9hZy1ncmlkL3NyYy9saWIvbW9kdWxlcy9hZy1ncmlkL2FnLWdyaWQtd3JhcHBlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvYWctZ3JpZC9zcmMvbGliL21vZHVsZXMvYWctZ3JpZC9hZy1ncmlkLXdyYXBwZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxFQUVMLHVCQUF1QixFQUV2QixTQUFTLEVBQ1QsWUFBWSxFQUVaLE1BQU0sRUFHTixRQUFRLEdBQ1QsTUFBTSxlQUFlLENBQUM7QUFHdkIsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRWhELE9BQU8sRUFBRSxlQUFlLEVBQWMsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzVELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7OztBQUszQyxJQUFJLE9BQU8sR0FBRyxDQUFDLENBQUM7QUFPaEIsTUFBTSxPQUFPLHlCQUF5QjtJQXVEcEMsWUFDRSxjQUF1QyxFQUN2QyxjQUFpQyxFQUNqQyxVQUFzQixFQUNKLFFBQWtCLEVBQ3BDLGFBQStCLEVBQ25CLFFBQTBCOztRQWxCeEMsd0RBQWdDLEVBQUUsRUFBQztRQUVuQywyREFBaUM7UUFDakMsbURBQWlCLElBQUksT0FBTyxFQUFRLEVBQUM7UUFDckMsc0RBQXVDO1FBQ3ZDLG9EQUFrQixJQUFJLGVBQWUsQ0FBVyxDQUFDLHNCQUFzQixDQUFDLENBQUMsRUFBQztRQUMxRSxrREFBOEMsU0FBUyxFQUFDO1FBQ3hELDREQUF5QztRQUN6Qyw0REFBbUM7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LGFBQWEsOERDakM3Qix3cEJBNkJBOzRGRENhLHlCQUF5QjtrQkFMckMsU0FBUzsrQkFDRSxxQkFBcUIsbUJBRWQsdUJBQXVCLENBQUMsTUFBTTs7MEJBNkQ1QyxNQUFNOzJCQUFDLFFBQVE7OzBCQUVmLFFBQVE7NENBdkRKLE1BQU07c0JBSFosWUFBWTt1QkFBQyxhQUFhLEVBQUU7d0JBQzNCLE1BQU0sRUFBRSxJQUFJO3FCQUNiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRE9DVU1FTlQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgQWZ0ZXJDb250ZW50SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIENvbnRlbnRDaGlsZCxcbiAgRWxlbWVudFJlZixcbiAgSW5qZWN0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgT3B0aW9uYWwsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU2t5VGhlbWVTZXJ2aWNlLCBTa3lUaGVtZVNldHRpbmdzIH0gZnJvbSAnQHNreXV4L3RoZW1lJztcblxuaW1wb3J0IHsgQWdHcmlkQW5ndWxhciB9IGZyb20gJ2FnLWdyaWQtYW5ndWxhcic7XG5pbXBvcnQgeyBDZWxsRWRpdGluZ1N0YXJ0ZWRFdmVudCwgRGV0YWlsR3JpZEluZm8gfSBmcm9tICdhZy1ncmlkLWNvbW11bml0eSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgU2t5QWdHcmlkQWRhcHRlclNlcnZpY2UgfSBmcm9tICcuL2FnLWdyaWQtYWRhcHRlci5zZXJ2aWNlJztcbmltcG9ydCB7IFNreUFnR3JpZFNlcnZpY2UgfSBmcm9tICcuL2FnLWdyaWQuc2VydmljZSc7XG5cbmxldCBpZEluZGV4ID0gMDtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2t5LWFnLWdyaWQtd3JhcHBlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9hZy1ncmlkLXdyYXBwZXIuY29tcG9uZW50Lmh0bWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgU2t5QWdHcmlkV3JhcHBlckNvbXBvbmVudFxuICBpbXBsZW1lbnRzIEFmdGVyQ29udGVudEluaXQsIE9uRGVzdHJveSwgT25Jbml0XG57XG4gIEBDb250ZW50Q2hpbGQoQWdHcmlkQW5ndWxhciwge1xuICAgIHN0YXRpYzogdHJ1ZSxcbiAgfSlcbiAgcHVibGljIGFnR3JpZDogQWdHcmlkQW5ndWxhciB8IHVuZGVmaW5lZDtcblxuICBwdWJsaWMgYWZ0ZXJBbmNob3JJZDogc3RyaW5nO1xuICBwdWJsaWMgYmVmb3JlQW5jaG9ySWQ6IHN0cmluZztcbiAgcHVibGljIGdyaWRJZDogc3RyaW5nO1xuICBwdWJsaWMgd3JhcHBlckNsYXNzZXMkOiBPYnNlcnZhYmxlPHN0cmluZ1tdPjtcblxuICBwdWJsaWMgZ2V0IHZpZXdrZWVwZXJDbGFzc2VzKCk6IHN0cmluZ1tdIHtcbiAgICByZXR1cm4gdGhpcy4jX3ZpZXdrZWVwZXJDbGFzc2VzO1xuICB9XG5cbiAgcHVibGljIHNldCB2aWV3a2VlcGVyQ2xhc3Nlcyh2YWx1ZTogc3RyaW5nW10pIHtcbiAgICB0aGlzLiNfdmlld2tlZXBlckNsYXNzZXMgPSB2YWx1ZTtcbiAgICB0aGlzLiNjaGFuZ2VEZXRlY3Rvci5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuXG4gIGdldCAjaXNJbkVkaXRNb2RlKCk6IGJvb2xlYW4ge1xuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgaWYgKHRoaXMuYWdHcmlkICYmIHRoaXMuYWdHcmlkLmFwaSkge1xuICAgICAgY29uc3QgcHJpbWFyeUdyaWRFZGl0aW5nID0gdGhpcy5hZ0dyaWQuYXBpLmdldEVkaXRpbmdDZWxscygpLmxlbmd0aCA+IDA7XG4gICAgICBpZiAocHJpbWFyeUdyaWRFZGl0aW5nKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgbGV0IGlubmVyRWRpdGluZyA9IGZhbHNlO1xuICAgICAgICB0aGlzLmFnR3JpZC5hcGkuZm9yRWFjaERldGFpbEdyaWRJbmZvKChkZXRhaWxHcmlkOiBEZXRhaWxHcmlkSW5mbykgPT4ge1xuICAgICAgICAgIGlmIChkZXRhaWxHcmlkPy5hcGkgJiYgZGV0YWlsR3JpZC5hcGkuZ2V0RWRpdGluZ0NlbGxzKCkubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgaW5uZXJFZGl0aW5nID0gdHJ1ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHJldHVybiBpbm5lckVkaXRpbmc7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gIH1cblxuICAjX3ZpZXdrZWVwZXJDbGFzc2VzOiBzdHJpbmdbXSA9IFtdO1xuXG4gICNhZ0dyaWRTZXJ2aWNlOiBTa3lBZ0dyaWRTZXJ2aWNlO1xuICAjbmdVbnN1YnNjcmliZSA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG4gICN0aGVtZVN2YzogU2t5VGhlbWVTZXJ2aWNlIHwgdW5kZWZpbmVkO1xuICAjd3JhcHBlckNsYXNzZXMgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHN0cmluZ1tdPihbYGFnLXRoZW1lLXNreS1kZWZhdWx0YF0pO1xuICAjY3VycmVudFRoZW1lOiBTa3lUaGVtZVNldHRpbmdzIHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkO1xuICAjYWRhcHRlclNlcnZpY2U6IFNreUFnR3JpZEFkYXB0ZXJTZXJ2aWNlO1xuICAjY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmO1xuICAjZWxlbWVudFJlZjogRWxlbWVudFJlZjtcbiAgI2RvY3VtZW50OiBEb2N1bWVudDtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBhZGFwdGVyU2VydmljZTogU2t5QWdHcmlkQWRhcHRlclNlcnZpY2UsXG4gICAgY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXG4gICAgQEluamVjdChET0NVTUVOVCkgZG9jdW1lbnQ6IERvY3VtZW50LFxuICAgIGFnR3JpZFNlcnZpY2U6IFNreUFnR3JpZFNlcnZpY2UsXG4gICAgQE9wdGlvbmFsKCkgdGhlbWVTdmM/OiBTa3lUaGVtZVNlcnZpY2VcbiAgKSB7XG4gICAgdGhpcy4jYWRhcHRlclNlcnZpY2UgPSBhZGFwdGVyU2VydmljZTtcbiAgICB0aGlzLiNjaGFuZ2VEZXRlY3RvciA9IGNoYW5nZURldGVjdG9yO1xuICAgIHRoaXMuI2VsZW1lbnRSZWYgPSBlbGVtZW50UmVmO1xuICAgIHRoaXMuI2RvY3VtZW50ID0gZG9jdW1lbnQ7XG5cbiAgICBpZEluZGV4Kys7XG4gICAgdGhpcy5hZnRlckFuY2hvcklkID0gJ3NreS1hZy1ncmlkLW5hdi1hbmNob3ItYWZ0ZXItJyArIGlkSW5kZXg7XG4gICAgdGhpcy5iZWZvcmVBbmNob3JJZCA9ICdza3ktYWctZ3JpZC1uYXYtYW5jaG9yLWJlZm9yZS0nICsgaWRJbmRleDtcbiAgICB0aGlzLmdyaWRJZCA9ICdza3ktYWctZ3JpZC0nICsgaWRJbmRleDtcbiAgICB0aGlzLiNhZ0dyaWRTZXJ2aWNlID0gYWdHcmlkU2VydmljZTtcbiAgICB0aGlzLiN0aGVtZVN2YyA9IHRoZW1lU3ZjO1xuICAgIHRoaXMud3JhcHBlckNsYXNzZXMkID0gdGhpcy4jd3JhcHBlckNsYXNzZXMuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBwdWJsaWMgbmdBZnRlckNvbnRlbnRJbml0KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmFnR3JpZCkge1xuICAgICAgaWYgKFxuICAgICAgICB0aGlzLmFnR3JpZC5ncmlkT3B0aW9ucyAmJlxuICAgICAgICB0aGlzLmFnR3JpZC5ncmlkT3B0aW9ucy5kb21MYXlvdXQgPT09ICdhdXRvSGVpZ2h0J1xuICAgICAgKSB7XG4gICAgICAgIGlmICh0aGlzLmFnR3JpZC5ncmlkT3B0aW9ucy5jb250ZXh0Py5lbmFibGVUb3BTY3JvbGwpIHtcbiAgICAgICAgICB0aGlzLnZpZXdrZWVwZXJDbGFzc2VzLnB1c2goXG4gICAgICAgICAgICAnLmFnLWhlYWRlcicsXG4gICAgICAgICAgICAnLmFnLWJvZHktaG9yaXpvbnRhbC1zY3JvbGwnXG4gICAgICAgICAgKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLnZpZXdrZWVwZXJDbGFzc2VzLnB1c2goJy5hZy1oZWFkZXInKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgdGhpcy5hZ0dyaWQuZ3JpZFJlYWR5XG4gICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLiNuZ1Vuc3Vic2NyaWJlKSlcbiAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgdGhpcy4jbW92ZUhvcml6b250YWxTY3JvbGwoKTtcbiAgICAgICAgfSk7XG4gICAgICB0aGlzLmFnR3JpZC5maXJzdERhdGFSZW5kZXJlZFxuICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy4jbmdVbnN1YnNjcmliZSkpXG4gICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgIHRoaXMuI21vdmVIb3Jpem9udGFsU2Nyb2xsKCk7XG4gICAgICAgIH0pO1xuICAgICAgdGhpcy5hZ0dyaWQucm93RGF0YVVwZGF0ZWRcbiAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuI25nVW5zdWJzY3JpYmUpKVxuICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICB0aGlzLiNtb3ZlSG9yaXpvbnRhbFNjcm9sbCgpO1xuICAgICAgICB9KTtcbiAgICAgIHRoaXMuYWdHcmlkLmNlbGxFZGl0aW5nU3RhcnRlZFxuICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy4jbmdVbnN1YnNjcmliZSkpXG4gICAgICAgIC5zdWJzY3JpYmUoKHBhcmFtczogQ2VsbEVkaXRpbmdTdGFydGVkRXZlbnQpID0+IHtcbiAgICAgICAgICBpZiAocGFyYW1zLmNvbERlZi50eXBlKSB7XG4gICAgICAgICAgICBjb25zdCB0eXBlcyA9IEFycmF5LmlzQXJyYXkocGFyYW1zLmNvbERlZi50eXBlKVxuICAgICAgICAgICAgICA/IHBhcmFtcy5jb2xEZWYudHlwZVxuICAgICAgICAgICAgICA6IFtwYXJhbXMuY29sRGVmLnR5cGVdO1xuICAgICAgICAgICAgY29uc3QgYWRkQ2xhc3NlcyA9IHR5cGVzLm1hcChcbiAgICAgICAgICAgICAgKHQpID0+IGBza3ktYWctZ3JpZC1jZWxsLWVkaXRpbmctJHt0fWBcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICB0aGlzLiN3cmFwcGVyQ2xhc3Nlcy5uZXh0KFtcbiAgICAgICAgICAgICAgLi4udGhpcy4jd3JhcHBlckNsYXNzZXMuZ2V0VmFsdWUoKSxcbiAgICAgICAgICAgICAgLi4uYWRkQ2xhc3NlcyxcbiAgICAgICAgICAgIF0pO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICB0aGlzLmFnR3JpZC5jZWxsRWRpdGluZ1N0b3BwZWRcbiAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuI25nVW5zdWJzY3JpYmUpKVxuICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICB0aGlzLiN3cmFwcGVyQ2xhc3Nlcy5uZXh0KFxuICAgICAgICAgICAgdGhpcy4jd3JhcHBlckNsYXNzZXNcbiAgICAgICAgICAgICAgLmdldFZhbHVlKClcbiAgICAgICAgICAgICAgLmZpbHRlcigoYykgPT4gYy5zdGFydHNXaXRoKCdhZy10aGVtZS0nKSlcbiAgICAgICAgICApO1xuICAgICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy4jbmdVbnN1YnNjcmliZS5uZXh0KCk7XG4gICAgdGhpcy4jbmdVbnN1YnNjcmliZS5jb21wbGV0ZSgpO1xuICB9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuI3RoZW1lU3ZjPy5zZXR0aW5nc0NoYW5nZVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuI25nVW5zdWJzY3JpYmUpKVxuICAgICAgLnN1YnNjcmliZSgoc2V0dGluZ3MpID0+IHtcbiAgICAgICAgbGV0IGFnVGhlbWVDbGFzczogc3RyaW5nO1xuICAgICAgICBpZiAoc2V0dGluZ3MuY3VycmVudFNldHRpbmdzLnRoZW1lLm5hbWUgPT09ICdtb2Rlcm4nKSB7XG4gICAgICAgICAgYWdUaGVtZUNsYXNzID0gYGFnLXRoZW1lLXNreS1tb2Rlcm4tJHtzZXR0aW5ncy5jdXJyZW50U2V0dGluZ3MubW9kZS5uYW1lfWA7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgYWdUaGVtZUNsYXNzID0gYGFnLXRoZW1lLXNreS1kZWZhdWx0YDtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLiN3cmFwcGVyQ2xhc3Nlcy5uZXh0KFtcbiAgICAgICAgICAuLi50aGlzLiN3cmFwcGVyQ2xhc3Nlc1xuICAgICAgICAgICAgLmdldFZhbHVlKClcbiAgICAgICAgICAgIC5maWx0ZXIoKGMpID0+ICFjLnN0YXJ0c1dpdGgoJ2FnLXRoZW1lLScpKSxcbiAgICAgICAgICBhZ1RoZW1lQ2xhc3MsXG4gICAgICAgIF0pO1xuICAgICAgICBpZiAoIXRoaXMuI2N1cnJlbnRUaGVtZSkge1xuICAgICAgICAgIC8vIEluaXRpYWwgdGhlbWUgc2V0dGluZ3MuXG4gICAgICAgICAgdGhpcy4jY3VycmVudFRoZW1lID0gc2V0dGluZ3MuY3VycmVudFNldHRpbmdzO1xuICAgICAgICB9IGVsc2UgaWYgKHRoaXMuYWdHcmlkPy5hcGkpIHtcbiAgICAgICAgICAvLyBPbiBzdWJzZXF1ZW50IHRoZW1lIGNoYW5nZXMsIHdlIG5lZWQgdG8gY2FsbCB0aGUgYXBpIHRvIHJlLXJlbmRlciB0aGUgZ3JpZC5cbiAgICAgICAgICB0aGlzLiNjdXJyZW50VGhlbWUgPSBzZXR0aW5ncy5jdXJyZW50U2V0dGluZ3M7XG4gICAgICAgICAgdGhpcy5hZ0dyaWQuYXBpLnNldEhlYWRlckhlaWdodChcbiAgICAgICAgICAgIHRoaXMuI2FnR3JpZFNlcnZpY2UuZ2V0SGVhZGVySGVpZ2h0KClcbiAgICAgICAgICApO1xuICAgICAgICAgIHRoaXMuYWdHcmlkLmFwaS5yZXNldFJvd0hlaWdodHMoKTtcbiAgICAgICAgICB0aGlzLmFnR3JpZC5hcGkucmVmcmVzaENlbGxzKCk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFByZXZlbnQgY2xvc2luZyBhIG1vZGFsIHdoZW4gZm9jdXNlZCBpbiBBRyBHcmlkLlxuICAgKi9cbiAgcHVibGljIG9uS2V5VXBFc2NhcGUoJGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgICRldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB0aGlzLmFnR3JpZD8uYXBpLnN0b3BFZGl0aW5nKHRydWUpO1xuICB9XG5cbiAgcHVibGljIG9uR3JpZEtleWRvd24oZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5hZ0dyaWQgJiYgIXRoaXMuI2lzSW5FZGl0TW9kZSAmJiBldmVudC5rZXkgPT09ICdUYWInKSB7XG4gICAgICBjb25zdCBpZFRvRm9jdXMgPSBldmVudC5zaGlmdEtleVxuICAgICAgICA/IHRoaXMuYmVmb3JlQW5jaG9ySWRcbiAgICAgICAgOiB0aGlzLmFmdGVyQW5jaG9ySWQ7XG4gICAgICB0aGlzLiNhZGFwdGVyU2VydmljZS5zZXRGb2N1c2VkRWxlbWVudEJ5SWQoXG4gICAgICAgIHRoaXMuI2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudCxcbiAgICAgICAgaWRUb0ZvY3VzXG4gICAgICApO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBvbkFuY2hvckZvY3VzKGV2ZW50OiBGb2N1c0V2ZW50KTogdm9pZCB7XG4gICAgY29uc3QgZ3JpZElkID0gdGhpcy5ncmlkSWQ7XG4gICAgY29uc3QgcmVsYXRlZFRhcmdldCA9IGV2ZW50LnJlbGF0ZWRUYXJnZXQgYXMgSFRNTEVsZW1lbnQ7XG4gICAgY29uc3QgcHJldmlvdXNGb2N1c2VkSWQgPSByZWxhdGVkVGFyZ2V0ICYmIHJlbGF0ZWRUYXJnZXQuaWQ7XG4gICAgY29uc3QgcHJldmlvdXNXYXNDZWxsID1cbiAgICAgIHJlbGF0ZWRUYXJnZXQgJiZcbiAgICAgICEhdGhpcy4jYWRhcHRlclNlcnZpY2UuZ2V0RWxlbWVudE9yUGFyZW50V2l0aENsYXNzKFxuICAgICAgICByZWxhdGVkVGFyZ2V0LFxuICAgICAgICAnYWctY2VsbCdcbiAgICAgICk7XG5cbiAgICBpZiAocHJldmlvdXNGb2N1c2VkSWQgIT09IGdyaWRJZCAmJiAhcHJldmlvdXNXYXNDZWxsKSB7XG4gICAgICBjb25zdCBjb2x1bW5zID0gdGhpcy5hZ0dyaWQ/LmNvbHVtbkFwaS5nZXRBbGxEaXNwbGF5ZWRDb2x1bW5zKCk7XG4gICAgICBjb25zdCBmaXJzdENvbHVtbiA9IGNvbHVtbnM/LlswXTtcbiAgICAgIGNvbnN0IHJvd0luZGV4ID0gdGhpcy5hZ0dyaWQ/LmFwaS5nZXRGaXJzdERpc3BsYXllZFJvdygpO1xuXG4gICAgICBpZiAoZmlyc3RDb2x1bW4gJiYgcm93SW5kZXggIT09IHVuZGVmaW5lZCAmJiByb3dJbmRleCA+PSAwKSB7XG4gICAgICAgIHRoaXMuYWdHcmlkPy5hcGkuc2V0Rm9jdXNlZENlbGwocm93SW5kZXgsIGZpcnN0Q29sdW1uKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAjbW92ZUhvcml6b250YWxTY3JvbGwoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuYWdHcmlkICYmIHRoaXMuYWdHcmlkLmFwaSkge1xuICAgICAgY29uc3QgdG9Ub3AgPSAhIXRoaXMuYWdHcmlkLmdyaWRPcHRpb25zLmNvbnRleHQ/LmVuYWJsZVRvcFNjcm9sbDtcbiAgICAgIGNvbnN0IHJvb3Q6IEhUTUxFbGVtZW50ID1cbiAgICAgICAgdGhpcy4jZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJy5hZy1yb290Jyk7XG4gICAgICBjb25zdCBoZWFkZXI6IEhUTUxEaXZFbGVtZW50IHwgbnVsbCA9IHJvb3QucXVlcnlTZWxlY3RvcignLmFnLWhlYWRlcicpO1xuICAgICAgY29uc3QgZmxvYXRpbmdCb3R0b206IEhUTUxEaXZFbGVtZW50IHwgbnVsbCA9IHJvb3QucXVlcnlTZWxlY3RvcihcbiAgICAgICAgJy5hZy1mbG9hdGluZy1ib3R0b20nXG4gICAgICApO1xuICAgICAgY29uc3Qgc2Nyb2xsYmFyOiBIVE1MRGl2RWxlbWVudCB8IG51bGwgPSByb290LnF1ZXJ5U2VsZWN0b3IoXG4gICAgICAgICcuYWctYm9keS1ob3Jpem9udGFsLXNjcm9sbCdcbiAgICAgICk7XG4gICAgICBpZiAoaGVhZGVyICYmIGZsb2F0aW5nQm90dG9tICYmIHNjcm9sbGJhcikge1xuICAgICAgICBpZiAoXG4gICAgICAgICAgc2Nyb2xsYmFyLnN0eWxlLmhlaWdodCAhPT1cbiAgICAgICAgICBzY3JvbGxiYXIuc3R5bGUuZ2V0UHJvcGVydHlWYWx1ZShcbiAgICAgICAgICAgICctLXNreS1hZy1ib2R5LWhvcml6b250YWwtc2Nyb2xsLXdpZHRoJ1xuICAgICAgICAgIClcbiAgICAgICAgKSB7XG4gICAgICAgICAgc2Nyb2xsYmFyLnN0eWxlLnNldFByb3BlcnR5KFxuICAgICAgICAgICAgJy0tc2t5LWFnLWJvZHktaG9yaXpvbnRhbC1zY3JvbGwtd2lkdGgnLFxuICAgICAgICAgICAgc2Nyb2xsYmFyLnN0eWxlLmhlaWdodFxuICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgaXNUb3AgPSAhIXJvb3QuY2hpbGRyZW5bMV0ubWF0Y2hlcygnLmFnLWJvZHktaG9yaXpvbnRhbC1zY3JvbGwnKTtcbiAgICAgICAgaWYgKHRvVG9wICYmICFpc1RvcCkge1xuICAgICAgICAgIGNvbnN0IGZyYWdtZW50ID0gdGhpcy4jZG9jdW1lbnQuY3JlYXRlRG9jdW1lbnRGcmFnbWVudCgpO1xuICAgICAgICAgIGZyYWdtZW50LmFwcGVuZENoaWxkKHNjcm9sbGJhcik7XG4gICAgICAgICAgaGVhZGVyLmFmdGVyKGZyYWdtZW50KTtcbiAgICAgICAgfSBlbHNlIGlmICghdG9Ub3AgJiYgaXNUb3ApIHtcbiAgICAgICAgICBjb25zdCBmcmFnbWVudCA9IHRoaXMuI2RvY3VtZW50LmNyZWF0ZURvY3VtZW50RnJhZ21lbnQoKTtcbiAgICAgICAgICBmcmFnbWVudC5hcHBlbmRDaGlsZChzY3JvbGxiYXIpO1xuICAgICAgICAgIGZsb2F0aW5nQm90dG9tLmFmdGVyKGZyYWdtZW50KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiPHNwYW5cbiAgY2xhc3M9XCJuYXYtYW5jaG9yXCJcbiAgdGFiaW5kZXg9XCIwXCJcbiAgW2lkXT1cImJlZm9yZUFuY2hvcklkXCJcbiAgKGZvY3VzaW4pPVwib25BbmNob3JGb2N1cygkZXZlbnQpXCJcbj5cbjwvc3Bhbj5cbjxkaXZcbiAgY2xhc3M9XCJza3ktYWctZ3JpZFwiXG4gIFtjbGFzcy5za3ktYWctZ3JpZC10b3Atc2Nyb2xsYmFyXT1cIlxuICAgIGFnR3JpZD8uZ3JpZE9wdGlvbnM/LmNvbnRleHQgJiZcbiAgICBhZ0dyaWQ/LmdyaWRPcHRpb25zPy5jb250ZXh0WydlbmFibGVUb3BTY3JvbGwnXVxuICBcIlxuICBbbmdDbGFzc109XCJ3cmFwcGVyQ2xhc3NlcyQgfCBhc3luY1wiXG4gIHRhYmluZGV4PVwiMFwiXG4gIFtpZF09XCJncmlkSWRcIlxuICBbc2t5Vmlld2tlZXBlcl09XCJ2aWV3a2VlcGVyQ2xhc3Nlc1wiXG4gIChrZXlkb3duKT1cIm9uR3JpZEtleWRvd24oJGV2ZW50KVwiXG4gIChrZXl1cC5lc2NhcGUpPVwib25LZXlVcEVzY2FwZSgkZXZlbnQpXCJcbj5cbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPC9kaXY+XG48c3BhblxuICB0YWJpbmRleD1cIjBcIlxuICBjbGFzcz1cIm5hdi1hbmNob3JcIlxuICBbaWRdPVwiYWZ0ZXJBbmNob3JJZFwiXG4gIChmb2N1c2luKT1cIm9uQW5jaG9yRm9jdXMoJGV2ZW50KVwiXG4+XG48L3NwYW4+XG4iXX0=
|
|
@@ -2,7 +2,10 @@ import { CommonModule } from '@angular/common';
|
|
|
2
2
|
import { NgModule } from '@angular/core';
|
|
3
3
|
import { SkyViewkeeperModule } from '@skyux/core';
|
|
4
4
|
import { SkyDataManagerModule } from '@skyux/data-manager';
|
|
5
|
+
import { SkyI18nModule } from '@skyux/i18n';
|
|
6
|
+
import { SkyIconModule } from '@skyux/indicators';
|
|
5
7
|
import { SkyInlineDeleteModule } from '@skyux/layout';
|
|
8
|
+
import { SkyThemeModule } from '@skyux/theme';
|
|
6
9
|
import { AgGridModule } from 'ag-grid-angular';
|
|
7
10
|
import { SkyAgGridDataManagerAdapterDirective } from './ag-grid-data-manager-adapter.directive';
|
|
8
11
|
import { SkyAgGridRowDeleteComponent } from './ag-grid-row-delete.component';
|
|
@@ -19,11 +22,15 @@ import { SkyAgGridCellRendererLookupModule } from './cell-renderers/cell-rendere
|
|
|
19
22
|
import { SkyAgGridCellRendererRowSelectorModule } from './cell-renderers/cell-renderer-row-selector/cell-renderer-row-selector.module';
|
|
20
23
|
import { SkyAgGridCellRendererValidatorTooltipModule } from './cell-renderers/cell-renderer-validator-tooltip/cell-renderer-validator-tooltip.module';
|
|
21
24
|
import { SkyAgGridCellValidatorModule } from './cell-validator/ag-grid-cell-validator.module';
|
|
25
|
+
import { SkyAgGridHeaderGroupComponent } from './header/header-group.component';
|
|
26
|
+
import { SkyAgGridHeaderComponent } from './header/header.component';
|
|
22
27
|
import * as i0 from "@angular/core";
|
|
23
28
|
export class SkyAgGridModule {
|
|
24
29
|
}
|
|
25
|
-
SkyAgGridModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.
|
|
26
|
-
SkyAgGridModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.
|
|
30
|
+
SkyAgGridModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.11", ngImport: i0, type: SkyAgGridModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
31
|
+
SkyAgGridModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.11", ngImport: i0, type: SkyAgGridModule, declarations: [SkyAgGridDataManagerAdapterDirective,
|
|
32
|
+
SkyAgGridHeaderComponent,
|
|
33
|
+
SkyAgGridHeaderGroupComponent,
|
|
27
34
|
SkyAgGridRowDeleteComponent,
|
|
28
35
|
SkyAgGridRowDeleteDirective,
|
|
29
36
|
SkyAgGridWrapperComponent], imports: [AgGridModule,
|
|
@@ -40,12 +47,17 @@ SkyAgGridModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version
|
|
|
40
47
|
SkyAgGridCellValidatorModule,
|
|
41
48
|
SkyAgGridCellEditorTextModule,
|
|
42
49
|
SkyDataManagerModule,
|
|
50
|
+
SkyI18nModule,
|
|
51
|
+
SkyIconModule,
|
|
43
52
|
SkyInlineDeleteModule,
|
|
44
|
-
SkyViewkeeperModule
|
|
53
|
+
SkyViewkeeperModule,
|
|
54
|
+
SkyThemeModule], exports: [SkyAgGridDataManagerAdapterDirective,
|
|
45
55
|
SkyAgGridRowDeleteComponent,
|
|
46
56
|
SkyAgGridRowDeleteDirective,
|
|
47
|
-
SkyAgGridWrapperComponent
|
|
48
|
-
|
|
57
|
+
SkyAgGridWrapperComponent,
|
|
58
|
+
SkyAgGridHeaderComponent,
|
|
59
|
+
SkyAgGridHeaderGroupComponent] });
|
|
60
|
+
SkyAgGridModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.11", ngImport: i0, type: SkyAgGridModule, imports: [AgGridModule,
|
|
49
61
|
CommonModule,
|
|
50
62
|
SkyAgGridCellEditorAutocompleteModule,
|
|
51
63
|
SkyAgGridCellEditorDatepickerModule,
|
|
@@ -59,13 +71,18 @@ SkyAgGridModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version
|
|
|
59
71
|
SkyAgGridCellValidatorModule,
|
|
60
72
|
SkyAgGridCellEditorTextModule,
|
|
61
73
|
SkyDataManagerModule,
|
|
74
|
+
SkyI18nModule,
|
|
75
|
+
SkyIconModule,
|
|
62
76
|
SkyInlineDeleteModule,
|
|
63
|
-
SkyViewkeeperModule
|
|
64
|
-
|
|
77
|
+
SkyViewkeeperModule,
|
|
78
|
+
SkyThemeModule] });
|
|
79
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.11", ngImport: i0, type: SkyAgGridModule, decorators: [{
|
|
65
80
|
type: NgModule,
|
|
66
81
|
args: [{
|
|
67
82
|
declarations: [
|
|
68
83
|
SkyAgGridDataManagerAdapterDirective,
|
|
84
|
+
SkyAgGridHeaderComponent,
|
|
85
|
+
SkyAgGridHeaderGroupComponent,
|
|
69
86
|
SkyAgGridRowDeleteComponent,
|
|
70
87
|
SkyAgGridRowDeleteDirective,
|
|
71
88
|
SkyAgGridWrapperComponent,
|
|
@@ -85,15 +102,20 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImpor
|
|
|
85
102
|
SkyAgGridCellValidatorModule,
|
|
86
103
|
SkyAgGridCellEditorTextModule,
|
|
87
104
|
SkyDataManagerModule,
|
|
105
|
+
SkyI18nModule,
|
|
106
|
+
SkyIconModule,
|
|
88
107
|
SkyInlineDeleteModule,
|
|
89
108
|
SkyViewkeeperModule,
|
|
109
|
+
SkyThemeModule,
|
|
90
110
|
],
|
|
91
111
|
exports: [
|
|
92
112
|
SkyAgGridDataManagerAdapterDirective,
|
|
93
113
|
SkyAgGridRowDeleteComponent,
|
|
94
114
|
SkyAgGridRowDeleteDirective,
|
|
95
115
|
SkyAgGridWrapperComponent,
|
|
116
|
+
SkyAgGridHeaderComponent,
|
|
117
|
+
SkyAgGridHeaderGroupComponent,
|
|
96
118
|
],
|
|
97
119
|
}]
|
|
98
120
|
}] });
|
|
99
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
121
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWctZ3JpZC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvYWctZ3JpZC9zcmMvbGliL21vZHVsZXMvYWctZ3JpZC9hZy1ncmlkLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDbEQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUM1QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbEQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3RELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFOUMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRS9DLE9BQU8sRUFBRSxvQ0FBb0MsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQ2hHLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzdFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzdFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3hFLE9BQU8sRUFBRSxxQ0FBcUMsRUFBRSxNQUFNLHlFQUF5RSxDQUFDO0FBQ2hJLE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLGlFQUFpRSxDQUFDO0FBQ3BILE9BQU8sRUFBRSxtQ0FBbUMsRUFBRSxNQUFNLHFFQUFxRSxDQUFDO0FBQzFILE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLDZEQUE2RCxDQUFDO0FBQzlHLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLDZEQUE2RCxDQUFDO0FBQzlHLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLHlEQUF5RCxDQUFDO0FBQ3hHLE9BQU8sRUFBRSxtQ0FBbUMsRUFBRSxNQUFNLHVFQUF1RSxDQUFDO0FBQzVILE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLG1FQUFtRSxDQUFDO0FBQ3RILE9BQU8sRUFBRSxzQ0FBc0MsRUFBRSxNQUFNLCtFQUErRSxDQUFDO0FBQ3ZJLE9BQU8sRUFBRSwyQ0FBMkMsRUFBRSxNQUFNLHlGQUF5RixDQUFDO0FBQ3RKLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBQzlGLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDOztBQXlDckUsTUFBTSxPQUFPLGVBQWU7OzZHQUFmLGVBQWU7OEdBQWYsZUFBZSxpQkFyQ3hCLG9DQUFvQztRQUNwQyx3QkFBd0I7UUFDeEIsNkJBQTZCO1FBQzdCLDJCQUEyQjtRQUMzQiwyQkFBMkI7UUFDM0IseUJBQXlCLGFBR3pCLFlBQVk7UUFDWixZQUFZO1FBQ1oscUNBQXFDO1FBQ3JDLG1DQUFtQztRQUNuQywrQkFBK0I7UUFDL0IsK0JBQStCO1FBQy9CLGlDQUFpQztRQUNqQyxtQ0FBbUM7UUFDbkMsaUNBQWlDO1FBQ2pDLHNDQUFzQztRQUN0QywyQ0FBMkM7UUFDM0MsNEJBQTRCO1FBQzVCLDZCQUE2QjtRQUM3QixvQkFBb0I7UUFDcEIsYUFBYTtRQUNiLGFBQWE7UUFDYixxQkFBcUI7UUFDckIsbUJBQW1CO1FBQ25CLGNBQWMsYUFHZCxvQ0FBb0M7UUFDcEMsMkJBQTJCO1FBQzNCLDJCQUEyQjtRQUMzQix5QkFBeUI7UUFDekIsd0JBQXdCO1FBQ3hCLDZCQUE2Qjs4R0FHcEIsZUFBZSxZQTdCeEIsWUFBWTtRQUNaLFlBQVk7UUFDWixxQ0FBcUM7UUFDckMsbUNBQW1DO1FBQ25DLCtCQUErQjtRQUMvQiwrQkFBK0I7UUFDL0IsaUNBQWlDO1FBQ2pDLG1DQUFtQztRQUNuQyxpQ0FBaUM7UUFDakMsc0NBQXNDO1FBQ3RDLDJDQUEyQztRQUMzQyw0QkFBNEI7UUFDNUIsNkJBQTZCO1FBQzdCLG9CQUFvQjtRQUNwQixhQUFhO1FBQ2IsYUFBYTtRQUNiLHFCQUFxQjtRQUNyQixtQkFBbUI7UUFDbkIsY0FBYzs0RkFXTCxlQUFlO2tCQXZDM0IsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUU7d0JBQ1osb0NBQW9DO3dCQUNwQyx3QkFBd0I7d0JBQ3hCLDZCQUE2Qjt3QkFDN0IsMkJBQTJCO3dCQUMzQiwyQkFBMkI7d0JBQzNCLHlCQUF5QjtxQkFDMUI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osWUFBWTt3QkFDWixxQ0FBcUM7d0JBQ3JDLG1DQUFtQzt3QkFDbkMsK0JBQStCO3dCQUMvQiwrQkFBK0I7d0JBQy9CLGlDQUFpQzt3QkFDakMsbUNBQW1DO3dCQUNuQyxpQ0FBaUM7d0JBQ2pDLHNDQUFzQzt3QkFDdEMsMkNBQTJDO3dCQUMzQyw0QkFBNEI7d0JBQzVCLDZCQUE2Qjt3QkFDN0Isb0JBQW9CO3dCQUNwQixhQUFhO3dCQUNiLGFBQWE7d0JBQ2IscUJBQXFCO3dCQUNyQixtQkFBbUI7d0JBQ25CLGNBQWM7cUJBQ2Y7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLG9DQUFvQzt3QkFDcEMsMkJBQTJCO3dCQUMzQiwyQkFBMkI7d0JBQzNCLHlCQUF5Qjt3QkFDekIsd0JBQXdCO3dCQUN4Qiw2QkFBNkI7cUJBQzlCO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTa3lWaWV3a2VlcGVyTW9kdWxlIH0gZnJvbSAnQHNreXV4L2NvcmUnO1xuaW1wb3J0IHsgU2t5RGF0YU1hbmFnZXJNb2R1bGUgfSBmcm9tICdAc2t5dXgvZGF0YS1tYW5hZ2VyJztcbmltcG9ydCB7IFNreUkxOG5Nb2R1bGUgfSBmcm9tICdAc2t5dXgvaTE4bic7XG5pbXBvcnQgeyBTa3lJY29uTW9kdWxlIH0gZnJvbSAnQHNreXV4L2luZGljYXRvcnMnO1xuaW1wb3J0IHsgU2t5SW5saW5lRGVsZXRlTW9kdWxlIH0gZnJvbSAnQHNreXV4L2xheW91dCc7XG5pbXBvcnQgeyBTa3lUaGVtZU1vZHVsZSB9IGZyb20gJ0Bza3l1eC90aGVtZSc7XG5cbmltcG9ydCB7IEFnR3JpZE1vZHVsZSB9IGZyb20gJ2FnLWdyaWQtYW5ndWxhcic7XG5cbmltcG9ydCB7IFNreUFnR3JpZERhdGFNYW5hZ2VyQWRhcHRlckRpcmVjdGl2ZSB9IGZyb20gJy4vYWctZ3JpZC1kYXRhLW1hbmFnZXItYWRhcHRlci5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgU2t5QWdHcmlkUm93RGVsZXRlQ29tcG9uZW50IH0gZnJvbSAnLi9hZy1ncmlkLXJvdy1kZWxldGUuY29tcG9uZW50JztcbmltcG9ydCB7IFNreUFnR3JpZFJvd0RlbGV0ZURpcmVjdGl2ZSB9IGZyb20gJy4vYWctZ3JpZC1yb3ctZGVsZXRlLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBTa3lBZ0dyaWRXcmFwcGVyQ29tcG9uZW50IH0gZnJvbSAnLi9hZy1ncmlkLXdyYXBwZXIuY29tcG9uZW50JztcbmltcG9ydCB7IFNreUFnR3JpZENlbGxFZGl0b3JBdXRvY29tcGxldGVNb2R1bGUgfSBmcm9tICcuL2NlbGwtZWRpdG9ycy9jZWxsLWVkaXRvci1hdXRvY29tcGxldGUvY2VsbC1lZGl0b3ItYXV0b2NvbXBsZXRlLm1vZHVsZSc7XG5pbXBvcnQgeyBTa3lBZ0dyaWRDZWxsRWRpdG9yQ3VycmVuY3lNb2R1bGUgfSBmcm9tICcuL2NlbGwtZWRpdG9ycy9jZWxsLWVkaXRvci1jdXJyZW5jeS9jZWxsLWVkaXRvci1jdXJyZW5jeS5tb2R1bGUnO1xuaW1wb3J0IHsgU2t5QWdHcmlkQ2VsbEVkaXRvckRhdGVwaWNrZXJNb2R1bGUgfSBmcm9tICcuL2NlbGwtZWRpdG9ycy9jZWxsLWVkaXRvci1kYXRlcGlja2VyL2NlbGwtZWRpdG9yLWRhdGVwaWNrZXIubW9kdWxlJztcbmltcG9ydCB7IFNreUFnR3JpZENlbGxFZGl0b3JMb29rdXBNb2R1bGUgfSBmcm9tICcuL2NlbGwtZWRpdG9ycy9jZWxsLWVkaXRvci1sb29rdXAvY2VsbC1lZGl0b3ItbG9va3VwLm1vZHVsZSc7XG5pbXBvcnQgeyBTa3lBZ0dyaWRDZWxsRWRpdG9yTnVtYmVyTW9kdWxlIH0gZnJvbSAnLi9jZWxsLWVkaXRvcnMvY2VsbC1lZGl0b3ItbnVtYmVyL2NlbGwtZWRpdG9yLW51bWJlci5tb2R1bGUnO1xuaW1wb3J0IHsgU2t5QWdHcmlkQ2VsbEVkaXRvclRleHRNb2R1bGUgfSBmcm9tICcuL2NlbGwtZWRpdG9ycy9jZWxsLWVkaXRvci10ZXh0L2NlbGwtZWRpdG9yLXRleHQubW9kdWxlJztcbmltcG9ydCB7IFNreUFnR3JpZENlbGxSZW5kZXJlckN1cnJlbmN5TW9kdWxlIH0gZnJvbSAnLi9jZWxsLXJlbmRlcmVycy9jZWxsLXJlbmRlcmVyLWN1cnJlbmN5L2NlbGwtcmVuZGVyZXItY3VycmVuY3kubW9kdWxlJztcbmltcG9ydCB7IFNreUFnR3JpZENlbGxSZW5kZXJlckxvb2t1cE1vZHVsZSB9IGZyb20gJy4vY2VsbC1yZW5kZXJlcnMvY2VsbC1yZW5kZXJlci1sb29rdXAvY2VsbC1yZW5kZXJlci1sb29rdXAubW9kdWxlJztcbmltcG9ydCB7IFNreUFnR3JpZENlbGxSZW5kZXJlclJvd1NlbGVjdG9yTW9kdWxlIH0gZnJvbSAnLi9jZWxsLXJlbmRlcmVycy9jZWxsLXJlbmRlcmVyLXJvdy1zZWxlY3Rvci9jZWxsLXJlbmRlcmVyLXJvdy1zZWxlY3Rvci5tb2R1bGUnO1xuaW1wb3J0IHsgU2t5QWdHcmlkQ2VsbFJlbmRlcmVyVmFsaWRhdG9yVG9vbHRpcE1vZHVsZSB9IGZyb20gJy4vY2VsbC1yZW5kZXJlcnMvY2VsbC1yZW5kZXJlci12YWxpZGF0b3ItdG9vbHRpcC9jZWxsLXJlbmRlcmVyLXZhbGlkYXRvci10b29sdGlwLm1vZHVsZSc7XG5pbXBvcnQgeyBTa3lBZ0dyaWRDZWxsVmFsaWRhdG9yTW9kdWxlIH0gZnJvbSAnLi9jZWxsLXZhbGlkYXRvci9hZy1ncmlkLWNlbGwtdmFsaWRhdG9yLm1vZHVsZSc7XG5pbXBvcnQgeyBTa3lBZ0dyaWRIZWFkZXJHcm91cENvbXBvbmVudCB9IGZyb20gJy4vaGVhZGVyL2hlYWRlci1ncm91cC5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2t5QWdHcmlkSGVhZGVyQ29tcG9uZW50IH0gZnJvbSAnLi9oZWFkZXIvaGVhZGVyLmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1xuICAgIFNreUFnR3JpZERhdGFNYW5hZ2VyQWRhcHRlckRpcmVjdGl2ZSxcbiAgICBTa3lBZ0dyaWRIZWFkZXJDb21wb25lbnQsXG4gICAgU2t5QWdHcmlkSGVhZGVyR3JvdXBDb21wb25lbnQsXG4gICAgU2t5QWdHcmlkUm93RGVsZXRlQ29tcG9uZW50LFxuICAgIFNreUFnR3JpZFJvd0RlbGV0ZURpcmVjdGl2ZSxcbiAgICBTa3lBZ0dyaWRXcmFwcGVyQ29tcG9uZW50LFxuICBdLFxuICBpbXBvcnRzOiBbXG4gICAgQWdHcmlkTW9kdWxlLFxuICAgIENvbW1vbk1vZHVsZSxcbiAgICBTa3lBZ0dyaWRDZWxsRWRpdG9yQXV0b2NvbXBsZXRlTW9kdWxlLFxuICAgIFNreUFnR3JpZENlbGxFZGl0b3JEYXRlcGlja2VyTW9kdWxlLFxuICAgIFNreUFnR3JpZENlbGxFZGl0b3JMb29rdXBNb2R1bGUsXG4gICAgU2t5QWdHcmlkQ2VsbEVkaXRvck51bWJlck1vZHVsZSxcbiAgICBTa3lBZ0dyaWRDZWxsRWRpdG9yQ3VycmVuY3lNb2R1bGUsXG4gICAgU2t5QWdHcmlkQ2VsbFJlbmRlcmVyQ3VycmVuY3lNb2R1bGUsXG4gICAgU2t5QWdHcmlkQ2VsbFJlbmRlcmVyTG9va3VwTW9kdWxlLFxuICAgIFNreUFnR3JpZENlbGxSZW5kZXJlclJvd1NlbGVjdG9yTW9kdWxlLFxuICAgIFNreUFnR3JpZENlbGxSZW5kZXJlclZhbGlkYXRvclRvb2x0aXBNb2R1bGUsXG4gICAgU2t5QWdHcmlkQ2VsbFZhbGlkYXRvck1vZHVsZSxcbiAgICBTa3lBZ0dyaWRDZWxsRWRpdG9yVGV4dE1vZHVsZSxcbiAgICBTa3lEYXRhTWFuYWdlck1vZHVsZSxcbiAgICBTa3lJMThuTW9kdWxlLFxuICAgIFNreUljb25Nb2R1bGUsXG4gICAgU2t5SW5saW5lRGVsZXRlTW9kdWxlLFxuICAgIFNreVZpZXdrZWVwZXJNb2R1bGUsXG4gICAgU2t5VGhlbWVNb2R1bGUsXG4gIF0sXG4gIGV4cG9ydHM6IFtcbiAgICBTa3lBZ0dyaWREYXRhTWFuYWdlckFkYXB0ZXJEaXJlY3RpdmUsXG4gICAgU2t5QWdHcmlkUm93RGVsZXRlQ29tcG9uZW50LFxuICAgIFNreUFnR3JpZFJvd0RlbGV0ZURpcmVjdGl2ZSxcbiAgICBTa3lBZ0dyaWRXcmFwcGVyQ29tcG9uZW50LFxuICAgIFNreUFnR3JpZEhlYWRlckNvbXBvbmVudCxcbiAgICBTa3lBZ0dyaWRIZWFkZXJHcm91cENvbXBvbmVudCxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgU2t5QWdHcmlkTW9kdWxlIHt9XG4iXX0=
|