igniteui-angular 13.1.0-rc.1 → 13.1.0-rc.2
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/esm2020/lib/action-strip/grid-actions/grid-editing-actions.component.mjs +2 -2
- package/esm2020/lib/data-operations/pivot-sort-strategy.mjs +44 -0
- package/esm2020/lib/data-operations/pivot-strategy.mjs +2 -43
- package/esm2020/lib/grids/cell.component.mjs +1 -2
- package/esm2020/lib/grids/common/grid.interface.mjs +1 -1
- package/esm2020/lib/grids/filtering/excel-style/excel-style-search.component.mjs +6 -3
- package/esm2020/lib/grids/grid-base.directive.mjs +11 -11
- package/esm2020/lib/grids/hierarchical-grid/hierarchical-cell.component.mjs +2 -2
- package/esm2020/lib/grids/hierarchical-grid/hierarchical-grid-api.service.mjs +3 -3
- package/esm2020/lib/grids/hierarchical-grid/hierarchical-grid-base.directive.mjs +10 -10
- package/esm2020/lib/grids/hierarchical-grid/hierarchical-grid-navigation.service.mjs +3 -3
- package/esm2020/lib/grids/hierarchical-grid/hierarchical-grid.component.mjs +31 -30
- package/esm2020/lib/grids/hierarchical-grid/hierarchical-grid.module.mjs +1 -1
- package/esm2020/lib/grids/hierarchical-grid/hierarchical-row.component.mjs +2 -2
- package/esm2020/lib/grids/hierarchical-grid/row-island.component.mjs +12 -13
- package/esm2020/lib/grids/pivot-grid/pivot-data-selector.component.mjs +2 -5
- package/esm2020/lib/grids/pivot-grid/pivot-grid-dimensions.mjs +2 -2
- package/esm2020/lib/grids/pivot-grid/pivot-grid.component.mjs +13 -13
- package/esm2020/lib/grids/pivot-grid/pivot-grid.pipes.mjs +7 -9
- package/esm2020/lib/grids/pivot-grid/pivot-header-row.component.mjs +6 -9
- package/esm2020/lib/grids/pivot-grid/pivot-row-dimension-content.component.mjs +9 -10
- package/esm2020/lib/grids/pivot-grid/pivot-row-dimension-header-group.component.mjs +1 -1
- package/esm2020/lib/grids/pivot-grid/pivot-row.component.mjs +1 -1
- package/esm2020/lib/grids/pivot-grid/pivot-sort-util.mjs +26 -0
- package/esm2020/lib/grids/pivot-grid/pivot-util.mjs +1 -23
- package/esm2020/lib/grids/resizing/pivot-grid/pivot-resize-handle.directive.mjs +1 -1
- package/esm2020/lib/grids/resizing/resize-handle.directive.mjs +1 -1
- package/esm2020/lib/grids/resizing/resizer.component.mjs +1 -1
- package/esm2020/lib/grids/resizing/resizing.service.mjs +1 -1
- package/esm2020/lib/grids/row.directive.mjs +1 -1
- package/esm2020/lib/grids/state.directive.mjs +2 -2
- package/esm2020/lib/grids/toolbar/grid-toolbar.base.mjs +1 -1
- package/esm2020/lib/grids/tree-grid/tree-grid.component.mjs +5 -7
- package/esm2020/lib/progressbar/progressbar.component.mjs +1 -2
- package/esm2020/lib/services/exporter-common/base-export-service.mjs +3 -3
- package/esm2020/public_api.mjs +2 -1
- package/fesm2015/igniteui-angular.mjs +276 -290
- package/fesm2015/igniteui-angular.mjs.map +1 -1
- package/fesm2020/igniteui-angular.mjs +276 -289
- package/fesm2020/igniteui-angular.mjs.map +1 -1
- package/lib/data-operations/pivot-sort-strategy.d.ts +16 -0
- package/lib/data-operations/pivot-strategy.d.ts +0 -14
- package/lib/grids/cell.component.d.ts +2 -2
- package/lib/grids/common/grid.interface.d.ts +3 -3
- package/lib/grids/grid-base.directive.d.ts +6 -7
- package/lib/grids/hierarchical-grid/hierarchical-grid-api.service.d.ts +1 -1
- package/lib/grids/hierarchical-grid/hierarchical-grid-base.directive.d.ts +4 -8
- package/lib/grids/hierarchical-grid/hierarchical-grid.component.d.ts +11 -6
- package/lib/grids/hierarchical-grid/row-island.component.d.ts +5 -5
- package/lib/grids/pivot-grid/pivot-grid-dimensions.d.ts +1 -1
- package/lib/grids/pivot-grid/pivot-grid.component.d.ts +4 -2
- package/lib/grids/pivot-grid/pivot-grid.pipes.d.ts +2 -2
- package/lib/grids/pivot-grid/pivot-header-row.component.d.ts +1 -1
- package/lib/grids/pivot-grid/pivot-row-dimension-content.component.d.ts +6 -6
- package/lib/grids/pivot-grid/pivot-sort-util.d.ts +5 -0
- package/lib/grids/pivot-grid/pivot-util.d.ts +0 -1
- package/lib/grids/row.directive.d.ts +3 -3
- package/lib/grids/tree-grid/tree-grid.component.d.ts +2 -4
- package/lib/progressbar/progressbar.component.d.ts +1 -1
- package/package.json +1 -1
- package/public_api.d.ts +1 -0
- package/schematics/tsconfig.tsbuildinfo +1 -1
|
@@ -2893,7 +2893,7 @@ class IgxBaseExporter {
|
|
|
2893
2893
|
rowID: island.primaryKey ? entry[island.primaryKey] : entry,
|
|
2894
2894
|
rowIslandKey: island.key
|
|
2895
2895
|
};
|
|
2896
|
-
const islandGrid = grid === null || grid === void 0 ? void 0 : grid.
|
|
2896
|
+
const islandGrid = grid === null || grid === void 0 ? void 0 : grid.gridAPI.getChildGrid([path]);
|
|
2897
2897
|
const keyRecordData = this.prepareIslandData(island, islandGrid, entry[island.key]) || [];
|
|
2898
2898
|
this.getAllChildColumnsAndData(island, keyRecordData, expansionStateVal, islandGrid);
|
|
2899
2899
|
}
|
|
@@ -2987,7 +2987,7 @@ class IgxBaseExporter {
|
|
|
2987
2987
|
rowID: childIsland.primaryKey ? rec[childIsland.primaryKey] : rec,
|
|
2988
2988
|
rowIslandKey: childIsland.key
|
|
2989
2989
|
};
|
|
2990
|
-
const childIslandGrid = grid === null || grid === void 0 ? void 0 : grid.
|
|
2990
|
+
const childIslandGrid = grid === null || grid === void 0 ? void 0 : grid.gridAPI.getChildGrid([path]);
|
|
2991
2991
|
const keyRecordData = this.prepareIslandData(island, childIslandGrid, rec[childIsland.key]) || [];
|
|
2992
2992
|
this.getAllChildColumnsAndData(childIsland, keyRecordData, islandExpansionStateVal, childIslandGrid);
|
|
2993
2993
|
}
|
|
@@ -21230,21 +21230,6 @@ const filteringStateDefaults = {
|
|
|
21230
21230
|
strategy: new FilteringStrategy()
|
|
21231
21231
|
};
|
|
21232
21232
|
|
|
21233
|
-
/**
|
|
21234
|
-
* Default pivot keys used for data processing in the pivot pipes.
|
|
21235
|
-
*/
|
|
21236
|
-
const DEFAULT_PIVOT_KEYS = {
|
|
21237
|
-
aggregations: 'aggregations', records: 'records', children: 'children', level: 'level',
|
|
21238
|
-
rowDimensionSeparator: '_', columnDimensionSeparator: '-'
|
|
21239
|
-
};
|
|
21240
|
-
/** The dimension types - Row, Column or Filter. */
|
|
21241
|
-
var PivotDimensionType;
|
|
21242
|
-
(function (PivotDimensionType) {
|
|
21243
|
-
PivotDimensionType[PivotDimensionType["Row"] = 0] = "Row";
|
|
21244
|
-
PivotDimensionType[PivotDimensionType["Column"] = 1] = "Column";
|
|
21245
|
-
PivotDimensionType[PivotDimensionType["Filter"] = 2] = "Filter";
|
|
21246
|
-
})(PivotDimensionType || (PivotDimensionType = {}));
|
|
21247
|
-
|
|
21248
21233
|
const clear = (el) => el === 0 || Boolean(el);
|
|
21249
21234
|
const first = (arr) => arr[0];
|
|
21250
21235
|
const last = (arr) => arr[arr.length - 1];
|
|
@@ -21764,6 +21749,21 @@ class IgxPivotTimeAggregate extends IgxPivotAggregate {
|
|
|
21764
21749
|
}
|
|
21765
21750
|
}
|
|
21766
21751
|
|
|
21752
|
+
/**
|
|
21753
|
+
* Default pivot keys used for data processing in the pivot pipes.
|
|
21754
|
+
*/
|
|
21755
|
+
const DEFAULT_PIVOT_KEYS = {
|
|
21756
|
+
aggregations: 'aggregations', records: 'records', children: 'children', level: 'level',
|
|
21757
|
+
rowDimensionSeparator: '_', columnDimensionSeparator: '-'
|
|
21758
|
+
};
|
|
21759
|
+
/** The dimension types - Row, Column or Filter. */
|
|
21760
|
+
var PivotDimensionType;
|
|
21761
|
+
(function (PivotDimensionType) {
|
|
21762
|
+
PivotDimensionType[PivotDimensionType["Row"] = 0] = "Row";
|
|
21763
|
+
PivotDimensionType[PivotDimensionType["Column"] = 1] = "Column";
|
|
21764
|
+
PivotDimensionType[PivotDimensionType["Filter"] = 2] = "Filter";
|
|
21765
|
+
})(PivotDimensionType || (PivotDimensionType = {}));
|
|
21766
|
+
|
|
21767
21767
|
class PivotUtil {
|
|
21768
21768
|
// go through all children and apply new dimension groups as child
|
|
21769
21769
|
static processGroups(recs, dimension, pivotKeys) {
|
|
@@ -22162,27 +22162,47 @@ class PivotUtil {
|
|
|
22162
22162
|
return IgxPivotAggregate.aggregators();
|
|
22163
22163
|
}
|
|
22164
22164
|
}
|
|
22165
|
-
|
|
22166
|
-
|
|
22167
|
-
|
|
22168
|
-
|
|
22169
|
-
|
|
22170
|
-
|
|
22171
|
-
|
|
22172
|
-
|
|
22173
|
-
|
|
22174
|
-
|
|
22175
|
-
|
|
22176
|
-
|
|
22177
|
-
|
|
22178
|
-
fieldName: x.memberName,
|
|
22179
|
-
strategy: DefaultPivotSortingStrategy.instance()
|
|
22180
|
-
});
|
|
22181
|
-
}
|
|
22182
|
-
});
|
|
22183
|
-
return expressions;
|
|
22165
|
+
}
|
|
22166
|
+
|
|
22167
|
+
class DefaultPivotGridRecordSortingStrategy extends DefaultSortingStrategy {
|
|
22168
|
+
static instance() {
|
|
22169
|
+
return this._instance || (this._instance = new this());
|
|
22170
|
+
}
|
|
22171
|
+
sort(data, fieldName, dir, ignoreCase, valueResolver, isDate, isTime, grid) {
|
|
22172
|
+
const reverse = (dir === SortingDirection.Desc ? -1 : 1);
|
|
22173
|
+
const cmpFunc = (obj1, obj2) => this.compareObjects(obj1, obj2, fieldName, reverse, ignoreCase, this.getFieldValue, isDate, isTime);
|
|
22174
|
+
return this.arraySort(data, cmpFunc);
|
|
22175
|
+
}
|
|
22176
|
+
getFieldValue(obj, key, isDate = false, isTime = false) {
|
|
22177
|
+
return obj.aggregationValues.get(key);
|
|
22184
22178
|
}
|
|
22185
22179
|
}
|
|
22180
|
+
DefaultPivotGridRecordSortingStrategy._instance = null;
|
|
22181
|
+
class DefaultPivotSortingStrategy extends DefaultSortingStrategy {
|
|
22182
|
+
static instance() {
|
|
22183
|
+
return this._instance || (this._instance = new this());
|
|
22184
|
+
}
|
|
22185
|
+
sort(data, fieldName, dir, ignoreCase, valueResolver, isDate, isTime, grid) {
|
|
22186
|
+
const key = fieldName;
|
|
22187
|
+
const allDimensions = grid.allDimensions;
|
|
22188
|
+
const enabledDimensions = allDimensions.filter(x => x && x.enabled);
|
|
22189
|
+
this.dimension = PivotUtil.flatten(enabledDimensions).find(x => x.memberName === key);
|
|
22190
|
+
const reverse = (dir === SortingDirection.Desc ? -1 : 1);
|
|
22191
|
+
const cmpFunc = (obj1, obj2) => this.compareObjects(obj1, obj2, key, reverse, ignoreCase, this.getFieldValue, isDate, isTime);
|
|
22192
|
+
return this.arraySort(data, cmpFunc);
|
|
22193
|
+
}
|
|
22194
|
+
getFieldValue(obj, key, isDate = false, isTime = false) {
|
|
22195
|
+
let resolvedValue = PivotUtil.extractValueFromDimension(this.dimension, obj) || obj[0];
|
|
22196
|
+
const formatAsDate = this.dimension.dataType === GridColumnDataType.Date || this.dimension.dataType === GridColumnDataType.DateTime;
|
|
22197
|
+
if (formatAsDate) {
|
|
22198
|
+
const date = parseDate(resolvedValue);
|
|
22199
|
+
resolvedValue = isTime && date ?
|
|
22200
|
+
new Date().setHours(date.getHours(), date.getMinutes(), date.getSeconds(), date.getMilliseconds()) : date;
|
|
22201
|
+
}
|
|
22202
|
+
return resolvedValue;
|
|
22203
|
+
}
|
|
22204
|
+
}
|
|
22205
|
+
DefaultPivotSortingStrategy._instance = null;
|
|
22186
22206
|
|
|
22187
22207
|
class NoopPivotDimensionsStrategy {
|
|
22188
22208
|
static instance() {
|
|
@@ -22300,45 +22320,6 @@ class DimensionValuesFilteringStrategy extends FilteringStrategy {
|
|
|
22300
22320
|
return PivotUtil.extractValueFromDimension(dim, rec);
|
|
22301
22321
|
}
|
|
22302
22322
|
}
|
|
22303
|
-
class DefaultPivotSortingStrategy extends DefaultSortingStrategy {
|
|
22304
|
-
static instance() {
|
|
22305
|
-
return this._instance || (this._instance = new this());
|
|
22306
|
-
}
|
|
22307
|
-
sort(data, fieldName, dir, ignoreCase, valueResolver, isDate, isTime, grid) {
|
|
22308
|
-
const key = fieldName;
|
|
22309
|
-
const allDimensions = grid.allDimensions;
|
|
22310
|
-
const enabledDimensions = allDimensions.filter(x => x && x.enabled);
|
|
22311
|
-
this.dimension = PivotUtil.flatten(enabledDimensions).find(x => x.memberName === key);
|
|
22312
|
-
const reverse = (dir === SortingDirection.Desc ? -1 : 1);
|
|
22313
|
-
const cmpFunc = (obj1, obj2) => this.compareObjects(obj1, obj2, key, reverse, ignoreCase, this.getFieldValue, isDate, isTime);
|
|
22314
|
-
return this.arraySort(data, cmpFunc);
|
|
22315
|
-
}
|
|
22316
|
-
getFieldValue(obj, key, isDate = false, isTime = false) {
|
|
22317
|
-
let resolvedValue = PivotUtil.extractValueFromDimension(this.dimension, obj) || obj[0];
|
|
22318
|
-
const formatAsDate = this.dimension.dataType === GridColumnDataType.Date || this.dimension.dataType === GridColumnDataType.DateTime;
|
|
22319
|
-
if (formatAsDate) {
|
|
22320
|
-
const date = parseDate(resolvedValue);
|
|
22321
|
-
resolvedValue = isTime && date ?
|
|
22322
|
-
new Date().setHours(date.getHours(), date.getMinutes(), date.getSeconds(), date.getMilliseconds()) : date;
|
|
22323
|
-
}
|
|
22324
|
-
return resolvedValue;
|
|
22325
|
-
}
|
|
22326
|
-
}
|
|
22327
|
-
DefaultPivotSortingStrategy._instance = null;
|
|
22328
|
-
class DefaultPivotGridRecordSortingStrategy extends DefaultSortingStrategy {
|
|
22329
|
-
static instance() {
|
|
22330
|
-
return this._instance || (this._instance = new this());
|
|
22331
|
-
}
|
|
22332
|
-
sort(data, fieldName, dir, ignoreCase, valueResolver, isDate, isTime, grid) {
|
|
22333
|
-
const reverse = (dir === SortingDirection.Desc ? -1 : 1);
|
|
22334
|
-
const cmpFunc = (obj1, obj2) => this.compareObjects(obj1, obj2, fieldName, reverse, ignoreCase, this.getFieldValue, isDate, isTime);
|
|
22335
|
-
return this.arraySort(data, cmpFunc);
|
|
22336
|
-
}
|
|
22337
|
-
getFieldValue(obj, key, isDate = false, isTime = false) {
|
|
22338
|
-
return obj.aggregationValues.get(key);
|
|
22339
|
-
}
|
|
22340
|
-
}
|
|
22341
|
-
DefaultPivotGridRecordSortingStrategy._instance = null;
|
|
22342
22323
|
|
|
22343
22324
|
/**
|
|
22344
22325
|
* @hidden
|
|
@@ -24732,7 +24713,7 @@ class IgxGridEditingActionsComponent extends IgxGridActionsBaseDirective {
|
|
|
24732
24713
|
// be sure row is in view
|
|
24733
24714
|
if (grid.rowList.filter(r => r === row).length !== 0) {
|
|
24734
24715
|
grid.gridAPI.crudService.enterEditMode(firstEditable, event);
|
|
24735
|
-
firstEditable.activate();
|
|
24716
|
+
firstEditable.activate(event);
|
|
24736
24717
|
}
|
|
24737
24718
|
this.strip.hide();
|
|
24738
24719
|
}
|
|
@@ -43982,7 +43963,6 @@ class BaseProgressDirective {
|
|
|
43982
43963
|
directionFlow(currentValue, prevValue) {
|
|
43983
43964
|
return currentValue < prevValue ? this.step : -this.step;
|
|
43984
43965
|
}
|
|
43985
|
-
runAnimation(value) { }
|
|
43986
43966
|
/**
|
|
43987
43967
|
* @hidden
|
|
43988
43968
|
* @param step
|
|
@@ -46418,8 +46398,8 @@ class IgxExcelStyleSearchComponent {
|
|
|
46418
46398
|
selectAllBtn = this.esf.listData[0];
|
|
46419
46399
|
}
|
|
46420
46400
|
if (!this.searchValue) {
|
|
46421
|
-
|
|
46422
|
-
|
|
46401
|
+
let anyFiltered = this.esf.listData.some(i => i.isFiltered);
|
|
46402
|
+
let anyUnfiltered = this.esf.listData.some(i => !i.isFiltered);
|
|
46423
46403
|
selectAllBtn.indeterminate = anyFiltered && anyUnfiltered;
|
|
46424
46404
|
if (this.isHierarchical() && this.tree) {
|
|
46425
46405
|
this._hierarchicalSelectedItems = this.tree.nodes.map(n => n.data).filter(item => item.isFiltered);
|
|
@@ -46432,7 +46412,10 @@ class IgxExcelStyleSearchComponent {
|
|
|
46432
46412
|
this.tree.nodes.forEach(n => {
|
|
46433
46413
|
const item = n.data;
|
|
46434
46414
|
n.selected = item.isSelected || item.isFiltered;
|
|
46415
|
+
anyFiltered = anyFiltered || n.selected;
|
|
46416
|
+
anyUnfiltered = anyUnfiltered || !n.selected;
|
|
46435
46417
|
});
|
|
46418
|
+
selectAllBtn.indeterminate = anyFiltered && anyUnfiltered;
|
|
46436
46419
|
}
|
|
46437
46420
|
}
|
|
46438
46421
|
selectAllBtn.label = this.esf.grid.resourceStrings.igx_grid_excel_select_all;
|
|
@@ -58726,7 +58709,7 @@ const FILTER_ROW_HEIGHT = 50;
|
|
|
58726
58709
|
// but in the same time we need to set row editing overlay outlet before opening the overlay itself.
|
|
58727
58710
|
const MIN_ROW_EDITING_COUNT_THRESHOLD = 2;
|
|
58728
58711
|
class IgxGridBaseDirective extends DisplayDensityBase {
|
|
58729
|
-
constructor(selectionService, colResizingService, gridAPI, transactionFactory, elementRef, zone, document, cdr, resolver, differs, viewRef, appRef, moduleRef,
|
|
58712
|
+
constructor(selectionService, colResizingService, gridAPI, transactionFactory, elementRef, zone, document, cdr, resolver, differs, viewRef, appRef, moduleRef, injector, navigation, filteringService, overlayService, summaryService, _displayDensityOptions, localeId, platform, _diTransactions) {
|
|
58730
58713
|
super(_displayDensityOptions);
|
|
58731
58714
|
this.selectionService = selectionService;
|
|
58732
58715
|
this.colResizingService = colResizingService;
|
|
@@ -58741,7 +58724,6 @@ class IgxGridBaseDirective extends DisplayDensityBase {
|
|
|
58741
58724
|
this.viewRef = viewRef;
|
|
58742
58725
|
this.appRef = appRef;
|
|
58743
58726
|
this.moduleRef = moduleRef;
|
|
58744
|
-
this.factoryResolver = factoryResolver;
|
|
58745
58727
|
this.injector = injector;
|
|
58746
58728
|
this.navigation = navigation;
|
|
58747
58729
|
this.filteringService = filteringService;
|
|
@@ -59538,6 +59520,10 @@ class IgxGridBaseDirective extends DisplayDensityBase {
|
|
|
59538
59520
|
*/
|
|
59539
59521
|
this.EMPTY_DATA = [];
|
|
59540
59522
|
this.isPivot = false;
|
|
59523
|
+
/**
|
|
59524
|
+
* @hidden
|
|
59525
|
+
*/
|
|
59526
|
+
this.destroy$ = new Subject();
|
|
59541
59527
|
/**
|
|
59542
59528
|
* @hidden
|
|
59543
59529
|
*/
|
|
@@ -59591,10 +59577,6 @@ class IgxGridBaseDirective extends DisplayDensityBase {
|
|
|
59591
59577
|
*/
|
|
59592
59578
|
this._columnPinning = false;
|
|
59593
59579
|
this._pinnedRecordIDs = [];
|
|
59594
|
-
/**
|
|
59595
|
-
* @hidden
|
|
59596
|
-
*/
|
|
59597
|
-
this.destroy$ = new Subject();
|
|
59598
59580
|
this._allowFiltering = false;
|
|
59599
59581
|
this._allowAdvancedFiltering = false;
|
|
59600
59582
|
this._filterMode = FilterMode.quickFilter;
|
|
@@ -61046,7 +61028,8 @@ class IgxGridBaseDirective extends DisplayDensityBase {
|
|
|
61046
61028
|
this.notifyChanges(true);
|
|
61047
61029
|
});
|
|
61048
61030
|
this.verticalScrollContainer.contentSizeChange.pipe(filter(() => !this._init), destructor).subscribe(() => {
|
|
61049
|
-
this.
|
|
61031
|
+
this.notifyChanges(true);
|
|
61032
|
+
this.cdr.detectChanges();
|
|
61050
61033
|
});
|
|
61051
61034
|
this.onDensityChanged.pipe(destructor).subscribe(() => {
|
|
61052
61035
|
this.crudService.endEdit(false);
|
|
@@ -61193,7 +61176,7 @@ class IgxGridBaseDirective extends DisplayDensityBase {
|
|
|
61193
61176
|
let dynamicFactory;
|
|
61194
61177
|
const factoryResolver = this.moduleRef
|
|
61195
61178
|
? this.moduleRef.componentFactoryResolver
|
|
61196
|
-
: this.
|
|
61179
|
+
: this.resolver;
|
|
61197
61180
|
try {
|
|
61198
61181
|
dynamicFactory = factoryResolver.resolveComponentFactory(component);
|
|
61199
61182
|
}
|
|
@@ -64759,7 +64742,7 @@ class IgxGridBaseDirective extends DisplayDensityBase {
|
|
|
64759
64742
|
this.toggleRowEditingOverlay(true);
|
|
64760
64743
|
}
|
|
64761
64744
|
}
|
|
64762
|
-
IgxGridBaseDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: IgxGridBaseDirective, deps: [{ token: IgxGridSelectionService }, { token: IgxColumnResizingService }, { token: IGX_GRID_SERVICE_BASE }, { token: IgxFlatTransactionFactory }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: DOCUMENT }, { token: i0.ChangeDetectorRef }, { token: i0.ComponentFactoryResolver }, { token: i0.IterableDiffers }, { token: i0.ViewContainerRef }, { token: i0.ApplicationRef }, { token: i0.NgModuleRef }, { token: i0.
|
|
64745
|
+
IgxGridBaseDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: IgxGridBaseDirective, deps: [{ token: IgxGridSelectionService }, { token: IgxColumnResizingService }, { token: IGX_GRID_SERVICE_BASE }, { token: IgxFlatTransactionFactory }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: DOCUMENT }, { token: i0.ChangeDetectorRef }, { token: i0.ComponentFactoryResolver }, { token: i0.IterableDiffers }, { token: i0.ViewContainerRef }, { token: i0.ApplicationRef }, { token: i0.NgModuleRef }, { token: i0.Injector }, { token: IgxGridNavigationService }, { token: IgxFilteringService }, { token: IgxOverlayService }, { token: IgxGridSummaryService }, { token: DisplayDensityToken, optional: true }, { token: LOCALE_ID }, { token: PlatformUtil }, { token: IgxGridTransaction, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
|
|
64763
64746
|
IgxGridBaseDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.2", type: IgxGridBaseDirective, inputs: { snackbarDisplayTime: "snackbarDisplayTime", autoGenerate: "autoGenerate", moving: "moving", emptyGridTemplate: "emptyGridTemplate", addRowEmptyTemplate: "addRowEmptyTemplate", loadingGridTemplate: "loadingGridTemplate", summaryRowHeight: "summaryRowHeight", dataCloneStrategy: "dataCloneStrategy", clipboardOptions: "clipboardOptions", class: "class", evenRowCSS: "evenRowCSS", oddRowCSS: "oddRowCSS", rowClasses: "rowClasses", rowStyles: "rowStyles", primaryKey: "primaryKey", uniqueColumnValuesStrategy: "uniqueColumnValuesStrategy", resourceStrings: "resourceStrings", filteringLogic: "filteringLogic", filteringExpressionsTree: "filteringExpressionsTree", advancedFilteringExpressionsTree: "advancedFilteringExpressionsTree", locale: "locale", pagingMode: "pagingMode", paging: "paging", page: "page", perPage: "perPage", hideRowSelectors: "hideRowSelectors", rowDraggable: "rowDraggable", rowEditable: "rowEditable", height: "height", width: "width", rowHeight: "rowHeight", columnWidth: "columnWidth", emptyGridMessage: "emptyGridMessage", isLoading: "isLoading", emptyFilteredGridMessage: "emptyFilteredGridMessage", pinning: "pinning", allowFiltering: "allowFiltering", allowAdvancedFiltering: "allowAdvancedFiltering", filterMode: "filterMode", summaryPosition: "summaryPosition", summaryCalculationMode: "summaryCalculationMode", showSummaryOnCollapse: "showSummaryOnCollapse", filterStrategy: "filterStrategy", sortStrategy: "sortStrategy", selectedRows: "selectedRows", sortingExpressions: "sortingExpressions", batchEditing: "batchEditing", cellSelection: "cellSelection", rowSelection: "rowSelection", columnSelection: "columnSelection", expansionStates: "expansionStates", outlet: "outlet", totalRecords: "totalRecords", selectRowOnClick: "selectRowOnClick" }, outputs: { filteringExpressionsTreeChange: "filteringExpressionsTreeChange", advancedFilteringExpressionsTreeChange: "advancedFilteringExpressionsTreeChange", gridScroll: "gridScroll", pageChange: "pageChange", perPageChange: "perPageChange", cellClick: "cellClick", selected: "selected", rowSelectionChanging: "rowSelectionChanging", columnSelectionChanging: "columnSelectionChanging", columnPin: "columnPin", columnPinned: "columnPinned", cellEditEnter: "cellEditEnter", cellEditExit: "cellEditExit", cellEdit: "cellEdit", cellEditDone: "cellEditDone", rowEditEnter: "rowEditEnter", rowEdit: "rowEdit", rowEditDone: "rowEditDone", rowEditExit: "rowEditExit", columnInit: "columnInit", sorting: "sorting", sortingDone: "sortingDone", filtering: "filtering", filteringDone: "filteringDone", pagingDone: "pagingDone", rowAdded: "rowAdded", rowDeleted: "rowDeleted", rowDelete: "rowDelete", rowAdd: "rowAdd", columnResized: "columnResized", contextMenu: "contextMenu", doubleClick: "doubleClick", columnVisibilityChanging: "columnVisibilityChanging", columnVisibilityChanged: "columnVisibilityChanged", columnMovingStart: "columnMovingStart", columnMoving: "columnMoving", columnMovingEnd: "columnMovingEnd", gridKeydown: "gridKeydown", rowDragStart: "rowDragStart", rowDragEnd: "rowDragEnd", gridCopy: "gridCopy", expansionStatesChange: "expansionStatesChange", rowToggle: "rowToggle", rowPinning: "rowPinning", rowPinned: "rowPinned", activeNodeChange: "activeNodeChange", sortingExpressionsChange: "sortingExpressionsChange", toolbarExporting: "toolbarExporting", rangeSelected: "rangeSelected", rendered: "rendered", localeChange: "localeChange", dataChanging: "dataChanging", dataChanged: "dataChanged" }, host: { listeners: { "mouseleave": "hideActionStrip()" }, properties: { "attr.tabindex": "this.tabindex", "attr.role": "this.hostRole", "style.height": "this.height", "style.width": "this.hostWidth", "attr.class": "this.hostClass" } }, queries: [{ propertyName: "actionStrip", first: true, predicate: IgxActionStripComponent, descendants: true }, { propertyName: "excelStyleLoadingValuesTemplateDirective", first: true, predicate: IgxExcelStyleLoadingValuesTemplateDirective, descendants: true, read: IgxExcelStyleLoadingValuesTemplateDirective, static: true }, { propertyName: "rowAddText", first: true, predicate: IgxRowAddTextDirective, descendants: true, read: TemplateRef }, { propertyName: "rowExpandedIndicatorTemplate", first: true, predicate: IgxRowExpandedIndicatorDirective, descendants: true, read: TemplateRef }, { propertyName: "rowCollapsedIndicatorTemplate", first: true, predicate: IgxRowCollapsedIndicatorDirective, descendants: true, read: TemplateRef }, { propertyName: "headerExpandIndicatorTemplate", first: true, predicate: IgxHeaderExpandIndicatorDirective, descendants: true, read: TemplateRef }, { propertyName: "headerCollapseIndicatorTemplate", first: true, predicate: IgxHeaderCollapseIndicatorDirective, descendants: true, read: TemplateRef }, { propertyName: "excelStyleHeaderIconTemplate", first: true, predicate: IgxExcelStyleHeaderIconDirective, descendants: true, read: TemplateRef }, { propertyName: "sortAscendingHeaderIconTemplate", first: true, predicate: IgxSortAscendingHeaderIconDirective, descendants: true, read: TemplateRef }, { propertyName: "sortDescendingHeaderIconTemplate", first: true, predicate: IgxSortDescendingHeaderIconDirective, descendants: true, read: TemplateRef }, { propertyName: "sortHeaderIconTemplate", first: true, predicate: IgxSortHeaderIconDirective, descendants: true, read: TemplateRef }, { propertyName: "excelStyleFilteringComponents", predicate: IgxGridExcelStyleFilteringComponent, read: IgxGridExcelStyleFilteringComponent }, { propertyName: "columnList", predicate: IgxColumnComponent, descendants: true, read: IgxColumnComponent }, { propertyName: "headSelectorsTemplates", predicate: IgxHeadSelectorDirective, read: IgxHeadSelectorDirective }, { propertyName: "rowSelectorsTemplates", predicate: IgxRowSelectorDirective, read: IgxRowSelectorDirective }, { propertyName: "dragGhostCustomTemplates", predicate: IgxRowDragGhostDirective, read: TemplateRef }, { propertyName: "rowEditCustomDirectives", predicate: IgxRowEditTemplateDirective, read: TemplateRef }, { propertyName: "rowEditTextDirectives", predicate: IgxRowEditTextDirective, read: TemplateRef }, { propertyName: "rowEditActionsDirectives", predicate: IgxRowEditActionsDirective, read: TemplateRef }, { propertyName: "dragIndicatorIconTemplates", predicate: IgxDragIndicatorIconDirective, read: TemplateRef }, { propertyName: "rowEditTabsCUSTOM", predicate: IgxRowEditTabStopDirective, descendants: true }, { propertyName: "toolbar", predicate: IgxGridToolbarComponent }, { propertyName: "paginationComponents", predicate: IgxPaginatorComponent }], viewQueries: [{ propertyName: "addRowSnackbar", first: true, predicate: IgxSnackbarComponent, descendants: true }, { propertyName: "resizeLine", first: true, predicate: IgxGridColumnResizerComponent, descendants: true }, { propertyName: "loadingOverlay", first: true, predicate: ["loadingOverlay"], descendants: true, read: IgxToggleDirective, static: true }, { propertyName: "loadingOutlet", first: true, predicate: ["igxLoadingOverlayOutlet"], descendants: true, read: IgxOverlayOutletDirective, static: true }, { propertyName: "emptyFilteredGridTemplate", first: true, predicate: ["emptyFilteredGrid"], descendants: true, read: TemplateRef, static: true }, { propertyName: "emptyGridDefaultTemplate", first: true, predicate: ["defaultEmptyGrid"], descendants: true, read: TemplateRef, static: true }, { propertyName: "loadingGridDefaultTemplate", first: true, predicate: ["defaultLoadingGrid"], descendants: true, read: TemplateRef, static: true }, { propertyName: "parentVirtDir", first: true, predicate: ["scrollContainer"], descendants: true, read: IgxGridForOfDirective, static: true }, { propertyName: "verticalScrollContainer", first: true, predicate: ["verticalScrollContainer"], descendants: true, read: IgxGridForOfDirective, static: true }, { propertyName: "verticalScroll", first: true, predicate: ["verticalScrollHolder"], descendants: true, read: IgxGridForOfDirective, static: true }, { propertyName: "scr", first: true, predicate: ["scr"], descendants: true, read: ElementRef, static: true }, { propertyName: "headerSelectorBaseTemplate", first: true, predicate: ["headSelectorBaseTemplate"], descendants: true, read: TemplateRef, static: true }, { propertyName: "footer", first: true, predicate: ["footer"], descendants: true, read: ElementRef }, { propertyName: "theadRow", first: true, predicate: IgxGridHeaderRowComponent, descendants: true, static: true }, { propertyName: "groupArea", first: true, predicate: IgxGridGroupByAreaComponent, descendants: true }, { propertyName: "tbody", first: true, predicate: ["tbody"], descendants: true, static: true }, { propertyName: "pinContainer", first: true, predicate: ["pinContainer"], descendants: true, read: ElementRef }, { propertyName: "tfoot", first: true, predicate: ["tfoot"], descendants: true, static: true }, { propertyName: "rowEditingOutletDirective", first: true, predicate: ["igxRowEditingOverlayOutlet"], descendants: true, read: IgxOverlayOutletDirective, static: true }, { propertyName: "dragIndicatorIconBase", first: true, predicate: ["dragIndicatorIconBase"], descendants: true, read: TemplateRef, static: true }, { propertyName: "rowEditingOverlay", first: true, predicate: ["rowEditingOverlay"], descendants: true, read: IgxToggleDirective }, { propertyName: "_outletDirective", first: true, predicate: ["igxFilteringOverlayOutlet"], descendants: true, read: IgxOverlayOutletDirective, static: true }, { propertyName: "defaultExpandedTemplate", first: true, predicate: ["defaultExpandedTemplate"], descendants: true, read: TemplateRef, static: true }, { propertyName: "defaultCollapsedTemplate", first: true, predicate: ["defaultCollapsedTemplate"], descendants: true, read: TemplateRef, static: true }, { propertyName: "defaultESFHeaderIconTemplate", first: true, predicate: ["defaultESFHeaderIcon"], descendants: true, read: TemplateRef, static: true }, { propertyName: "defaultRowEditTemplate", first: true, predicate: ["defaultRowEditTemplate"], descendants: true, read: TemplateRef, static: true }, { propertyName: "tmpOutlets", predicate: IgxTemplateOutletDirective, descendants: true, read: IgxTemplateOutletDirective }, { propertyName: "rowEditTabsDEFAULT", predicate: IgxRowEditTabStopDirective, descendants: true }, { propertyName: "_summaryRowList", predicate: ["summaryRow"], descendants: true, read: IgxSummaryRowComponent }, { propertyName: "_rowList", predicate: ["row"], descendants: true }, { propertyName: "_pinnedRowList", predicate: ["pinnedRow"], descendants: true }, { propertyName: "_dataRowList", predicate: IgxRowDirective, descendants: true, read: IgxRowDirective }], usesInheritance: true, ngImport: i0 });
|
|
64764
64747
|
__decorate([
|
|
64765
64748
|
WatchChanges()
|
|
@@ -64818,7 +64801,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImpor
|
|
|
64818
64801
|
}] }, { type: IgxFlatTransactionFactory }, { type: i0.ElementRef }, { type: i0.NgZone }, { type: undefined, decorators: [{
|
|
64819
64802
|
type: Inject,
|
|
64820
64803
|
args: [DOCUMENT]
|
|
64821
|
-
}] }, { type: i0.ChangeDetectorRef }, { type: i0.ComponentFactoryResolver }, { type: i0.IterableDiffers }, { type: i0.ViewContainerRef }, { type: i0.ApplicationRef }, { type: i0.NgModuleRef }, { type: i0.
|
|
64804
|
+
}] }, { type: i0.ChangeDetectorRef }, { type: i0.ComponentFactoryResolver }, { type: i0.IterableDiffers }, { type: i0.ViewContainerRef }, { type: i0.ApplicationRef }, { type: i0.NgModuleRef }, { type: i0.Injector }, { type: IgxGridNavigationService }, { type: IgxFilteringService }, { type: IgxOverlayService, decorators: [{
|
|
64822
64805
|
type: Inject,
|
|
64823
64806
|
args: [IgxOverlayService]
|
|
64824
64807
|
}] }, { type: IgxGridSummaryService }, { type: undefined, decorators: [{
|
|
@@ -66704,7 +66687,6 @@ class IgxGridCellComponent {
|
|
|
66704
66687
|
}
|
|
66705
66688
|
getCellType(useRow) {
|
|
66706
66689
|
const rowID = useRow ? this.grid.createRow(this.intRow.index, this.intRow.data) : this.intRow.index;
|
|
66707
|
-
// TODO: Fix types
|
|
66708
66690
|
return new IgxGridCell(this.grid, rowID, this.column.field);
|
|
66709
66691
|
}
|
|
66710
66692
|
}
|
|
@@ -68802,7 +68784,7 @@ class IgxGridStateDirective {
|
|
|
68802
68784
|
childGrid = grid;
|
|
68803
68785
|
grid = grid.parent;
|
|
68804
68786
|
}
|
|
68805
|
-
return grid.
|
|
68787
|
+
return grid.gridAPI.getParentRowId(childGrid);
|
|
68806
68788
|
}
|
|
68807
68789
|
}
|
|
68808
68790
|
};
|
|
@@ -72661,14 +72643,12 @@ class IgxTreeGridComponent extends IgxGridBaseDirective {
|
|
|
72661
72643
|
// }
|
|
72662
72644
|
constructor(selectionService, colResizingService, gridAPI,
|
|
72663
72645
|
// public gridAPI: GridBaseAPIService<IgxGridBaseDirective & GridType>,
|
|
72664
|
-
transactionFactory, _elementRef, _zone, document, cdr, resolver, differs, viewRef, appRef, moduleRef,
|
|
72665
|
-
super(selectionService, colResizingService, gridAPI, transactionFactory, _elementRef, _zone, document, cdr, resolver, differs, viewRef, appRef, moduleRef,
|
|
72646
|
+
transactionFactory, _elementRef, _zone, document, cdr, resolver, differs, viewRef, appRef, moduleRef, injector, navigation, filteringService, overlayService, summaryService, _displayDensityOptions, localeId, platform, _diTransactions) {
|
|
72647
|
+
super(selectionService, colResizingService, gridAPI, transactionFactory, _elementRef, _zone, document, cdr, resolver, differs, viewRef, appRef, moduleRef, injector, navigation, filteringService, overlayService, summaryService, _displayDensityOptions, localeId, platform);
|
|
72666
72648
|
this.selectionService = selectionService;
|
|
72667
72649
|
this.colResizingService = colResizingService;
|
|
72668
72650
|
this.gridAPI = gridAPI;
|
|
72669
72651
|
this.transactionFactory = transactionFactory;
|
|
72670
|
-
this._elementRef = _elementRef;
|
|
72671
|
-
this._zone = _zone;
|
|
72672
72652
|
this.document = document;
|
|
72673
72653
|
this.cdr = cdr;
|
|
72674
72654
|
this.resolver = resolver;
|
|
@@ -73431,7 +73411,7 @@ class IgxTreeGridComponent extends IgxGridBaseDirective {
|
|
|
73431
73411
|
});
|
|
73432
73412
|
}
|
|
73433
73413
|
}
|
|
73434
|
-
IgxTreeGridComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: IgxTreeGridComponent, deps: [{ token: IgxGridSelectionService }, { token: IgxColumnResizingService }, { token: IGX_GRID_SERVICE_BASE }, { token: IgxHierarchicalTransactionFactory }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: DOCUMENT }, { token: i0.ChangeDetectorRef }, { token: i0.ComponentFactoryResolver }, { token: i0.IterableDiffers }, { token: i0.ViewContainerRef }, { token: i0.ApplicationRef }, { token: i0.NgModuleRef }, { token: i0.
|
|
73414
|
+
IgxTreeGridComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: IgxTreeGridComponent, deps: [{ token: IgxGridSelectionService }, { token: IgxColumnResizingService }, { token: IGX_GRID_SERVICE_BASE }, { token: IgxHierarchicalTransactionFactory }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: DOCUMENT }, { token: i0.ChangeDetectorRef }, { token: i0.ComponentFactoryResolver }, { token: i0.IterableDiffers }, { token: i0.ViewContainerRef }, { token: i0.ApplicationRef }, { token: i0.NgModuleRef }, { token: i0.Injector }, { token: IgxGridNavigationService }, { token: IgxFilteringService }, { token: IgxOverlayService }, { token: IgxGridSummaryService }, { token: DisplayDensityToken, optional: true }, { token: LOCALE_ID }, { token: PlatformUtil }, { token: IgxGridTransaction, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
73435
73415
|
IgxTreeGridComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.2", type: IgxTreeGridComponent, selector: "igx-tree-grid", inputs: { childDataKey: "childDataKey", foreignKey: "foreignKey", hasChildrenKey: "hasChildrenKey", cascadeOnDelete: "cascadeOnDelete", loadChildrenOnDemand: "loadChildrenOnDemand", id: "id", data: "data", expansionDepth: "expansionDepth", rowLoadingIndicatorTemplate: "rowLoadingIndicatorTemplate" }, host: { properties: { "attr.role": "this.role", "attr.id": "this.id" } }, providers: [
|
|
73436
73416
|
IgxGridCRUDService,
|
|
73437
73417
|
IgxGridSummaryService,
|
|
@@ -73463,7 +73443,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImpor
|
|
|
73463
73443
|
}] }, { type: IgxHierarchicalTransactionFactory }, { type: i0.ElementRef }, { type: i0.NgZone }, { type: undefined, decorators: [{
|
|
73464
73444
|
type: Inject,
|
|
73465
73445
|
args: [DOCUMENT]
|
|
73466
|
-
}] }, { type: i0.ChangeDetectorRef }, { type: i0.ComponentFactoryResolver }, { type: i0.IterableDiffers }, { type: i0.ViewContainerRef }, { type: i0.ApplicationRef }, { type: i0.NgModuleRef }, { type: i0.
|
|
73446
|
+
}] }, { type: i0.ChangeDetectorRef }, { type: i0.ComponentFactoryResolver }, { type: i0.IterableDiffers }, { type: i0.ViewContainerRef }, { type: i0.ApplicationRef }, { type: i0.NgModuleRef }, { type: i0.Injector }, { type: IgxGridNavigationService }, { type: IgxFilteringService }, { type: IgxOverlayService, decorators: [{
|
|
73467
73447
|
type: Inject,
|
|
73468
73448
|
args: [IgxOverlayService]
|
|
73469
73449
|
}] }, { type: IgxGridSummaryService }, { type: undefined, decorators: [{
|
|
@@ -73877,7 +73857,7 @@ class IgxHierarchicalGridNavigationService extends IgxGridNavigationService {
|
|
|
73877
73857
|
rowID: rowId,
|
|
73878
73858
|
rowIslandKey: ri.key
|
|
73879
73859
|
};
|
|
73880
|
-
const childGrid = this.grid.
|
|
73860
|
+
const childGrid = this.grid.gridAPI.getChildGrid([pathSegment]);
|
|
73881
73861
|
const targetIndex = isNext ? 0 : childGrid.dataView.length - 1;
|
|
73882
73862
|
const targetRec = childGrid.dataView[targetIndex];
|
|
73883
73863
|
if (!targetRec) {
|
|
@@ -73946,7 +73926,7 @@ class IgxHierarchicalGridNavigationService extends IgxGridNavigationService {
|
|
|
73946
73926
|
rowID: row.data.rowID,
|
|
73947
73927
|
rowIslandKey: riKey
|
|
73948
73928
|
};
|
|
73949
|
-
const childGrid = this.grid.
|
|
73929
|
+
const childGrid = this.grid.gridAPI.getChildGrid([pathSegment]);
|
|
73950
73930
|
rowElem = childGrid.tfoot.nativeElement;
|
|
73951
73931
|
}
|
|
73952
73932
|
const gridBottom = this._getMinBottom(this.grid);
|
|
@@ -74076,14 +74056,135 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImpor
|
|
|
74076
74056
|
type: Injectable
|
|
74077
74057
|
}] });
|
|
74078
74058
|
|
|
74059
|
+
class IgxHierarchicalGridAPIService extends GridBaseAPIService {
|
|
74060
|
+
constructor() {
|
|
74061
|
+
super(...arguments);
|
|
74062
|
+
this.childRowIslands = new Map();
|
|
74063
|
+
this.childGrids = new Map();
|
|
74064
|
+
}
|
|
74065
|
+
registerChildRowIsland(rowIsland) {
|
|
74066
|
+
this.childRowIslands.set(rowIsland.key, rowIsland);
|
|
74067
|
+
this.destroyMap.set(rowIsland.key, new Subject());
|
|
74068
|
+
}
|
|
74069
|
+
unsetChildRowIsland(rowIsland) {
|
|
74070
|
+
this.childGrids.delete(rowIsland.key);
|
|
74071
|
+
this.childRowIslands.delete(rowIsland.key);
|
|
74072
|
+
this.destroyMap.delete(rowIsland.key);
|
|
74073
|
+
}
|
|
74074
|
+
getChildRowIsland(key) {
|
|
74075
|
+
return this.childRowIslands.get(key);
|
|
74076
|
+
}
|
|
74077
|
+
getChildGrid(path) {
|
|
74078
|
+
const currPath = path;
|
|
74079
|
+
let grid;
|
|
74080
|
+
const pathElem = currPath.shift();
|
|
74081
|
+
const childrenForLayout = this.childGrids.get(pathElem.rowIslandKey);
|
|
74082
|
+
if (childrenForLayout) {
|
|
74083
|
+
const childGrid = childrenForLayout.get(pathElem.rowID);
|
|
74084
|
+
if (currPath.length === 0) {
|
|
74085
|
+
grid = childGrid;
|
|
74086
|
+
}
|
|
74087
|
+
else {
|
|
74088
|
+
grid = childGrid.gridAPI.getChildGrid(currPath);
|
|
74089
|
+
}
|
|
74090
|
+
}
|
|
74091
|
+
return grid;
|
|
74092
|
+
}
|
|
74093
|
+
getChildGrids(inDepth) {
|
|
74094
|
+
const allChildren = [];
|
|
74095
|
+
this.childGrids.forEach((layoutMap) => {
|
|
74096
|
+
layoutMap.forEach((grid) => {
|
|
74097
|
+
allChildren.push(grid);
|
|
74098
|
+
if (inDepth) {
|
|
74099
|
+
const children = grid.gridAPI.getChildGrids(inDepth);
|
|
74100
|
+
children.forEach((item) => {
|
|
74101
|
+
allChildren.push(item);
|
|
74102
|
+
});
|
|
74103
|
+
}
|
|
74104
|
+
});
|
|
74105
|
+
});
|
|
74106
|
+
return allChildren;
|
|
74107
|
+
}
|
|
74108
|
+
getParentRowId(childGrid) {
|
|
74109
|
+
let rowID;
|
|
74110
|
+
this.childGrids.forEach((layoutMap) => {
|
|
74111
|
+
layoutMap.forEach((grid, key) => {
|
|
74112
|
+
if (grid === childGrid) {
|
|
74113
|
+
rowID = key;
|
|
74114
|
+
return;
|
|
74115
|
+
}
|
|
74116
|
+
});
|
|
74117
|
+
});
|
|
74118
|
+
return rowID;
|
|
74119
|
+
}
|
|
74120
|
+
registerChildGrid(parentRowID, rowIslandKey, grid) {
|
|
74121
|
+
let childrenForLayout = this.childGrids.get(rowIslandKey);
|
|
74122
|
+
if (!childrenForLayout) {
|
|
74123
|
+
this.childGrids.set(rowIslandKey, new Map());
|
|
74124
|
+
childrenForLayout = this.childGrids.get(rowIslandKey);
|
|
74125
|
+
}
|
|
74126
|
+
childrenForLayout.set(parentRowID, grid);
|
|
74127
|
+
}
|
|
74128
|
+
getChildGridsForRowIsland(rowIslandKey) {
|
|
74129
|
+
const childrenForLayout = this.childGrids.get(rowIslandKey);
|
|
74130
|
+
const children = [];
|
|
74131
|
+
if (childrenForLayout) {
|
|
74132
|
+
childrenForLayout.forEach((child) => {
|
|
74133
|
+
children.push(child);
|
|
74134
|
+
});
|
|
74135
|
+
}
|
|
74136
|
+
return children;
|
|
74137
|
+
}
|
|
74138
|
+
getChildGridByID(rowIslandKey, rowID) {
|
|
74139
|
+
const childrenForLayout = this.childGrids.get(rowIslandKey);
|
|
74140
|
+
return childrenForLayout.get(rowID);
|
|
74141
|
+
}
|
|
74142
|
+
get_row_expansion_state(record) {
|
|
74143
|
+
let inState;
|
|
74144
|
+
if (record.childGridsData !== undefined) {
|
|
74145
|
+
const ri = record.key;
|
|
74146
|
+
const states = this.grid.expansionStates;
|
|
74147
|
+
const expanded = states.get(ri);
|
|
74148
|
+
if (expanded !== undefined) {
|
|
74149
|
+
return expanded;
|
|
74150
|
+
}
|
|
74151
|
+
else {
|
|
74152
|
+
return this.grid.getDefaultExpandState(record);
|
|
74153
|
+
}
|
|
74154
|
+
}
|
|
74155
|
+
else {
|
|
74156
|
+
inState = !!super.get_row_expansion_state(record);
|
|
74157
|
+
}
|
|
74158
|
+
return inState && this.grid.childLayoutList.length !== 0;
|
|
74159
|
+
}
|
|
74160
|
+
allow_expansion_state_change(rowID, expanded) {
|
|
74161
|
+
const rec = this.get_rec_by_id(rowID);
|
|
74162
|
+
const grid = this.grid;
|
|
74163
|
+
if (grid.hasChildrenKey && !rec[grid.hasChildrenKey]) {
|
|
74164
|
+
return false;
|
|
74165
|
+
}
|
|
74166
|
+
return !!rec && this.grid.expansionStates.get(rowID) !== expanded;
|
|
74167
|
+
}
|
|
74168
|
+
get_rec_by_id(rowID) {
|
|
74169
|
+
const data = this.get_all_data(false);
|
|
74170
|
+
const index = this.get_row_index_in_data(rowID, data);
|
|
74171
|
+
return data[index];
|
|
74172
|
+
}
|
|
74173
|
+
}
|
|
74174
|
+
IgxHierarchicalGridAPIService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: IgxHierarchicalGridAPIService, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
74175
|
+
IgxHierarchicalGridAPIService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: IgxHierarchicalGridAPIService });
|
|
74176
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: IgxHierarchicalGridAPIService, decorators: [{
|
|
74177
|
+
type: Injectable
|
|
74178
|
+
}] });
|
|
74179
|
+
|
|
74079
74180
|
const hierarchicalTransactionServiceFactory = () => new IgxTransactionService();
|
|
74080
74181
|
const IgxHierarchicalTransactionServiceFactory = {
|
|
74081
74182
|
provide: IgxGridTransaction,
|
|
74082
74183
|
useFactory: hierarchicalTransactionServiceFactory
|
|
74083
74184
|
};
|
|
74084
74185
|
class IgxHierarchicalGridBaseDirective extends IgxGridBaseDirective {
|
|
74085
|
-
constructor(selectionService, colResizingService, gridAPI, transactionFactory, elementRef, zone, document, cdr, resolver, differs, viewRef, appRef, moduleRef,
|
|
74086
|
-
super(selectionService, colResizingService, gridAPI, transactionFactory, elementRef, zone, document, cdr, resolver, differs, viewRef, appRef, moduleRef,
|
|
74186
|
+
constructor(selectionService, colResizingService, gridAPI, transactionFactory, elementRef, zone, document, cdr, resolver, differs, viewRef, appRef, moduleRef, injector, navigation, filteringService, overlayService, summaryService, _displayDensityOptions, localeId, platform, _diTransactions) {
|
|
74187
|
+
super(selectionService, colResizingService, gridAPI, transactionFactory, elementRef, zone, document, cdr, resolver, differs, viewRef, appRef, moduleRef, injector, navigation, filteringService, overlayService, summaryService, _displayDensityOptions, localeId, platform);
|
|
74087
74188
|
this.selectionService = selectionService;
|
|
74088
74189
|
this.colResizingService = colResizingService;
|
|
74089
74190
|
this.gridAPI = gridAPI;
|
|
@@ -74118,7 +74219,6 @@ class IgxHierarchicalGridBaseDirective extends IgxGridBaseDirective {
|
|
|
74118
74219
|
this.dataPreLoad = new EventEmitter();
|
|
74119
74220
|
/** @hidden @internal */
|
|
74120
74221
|
this.batchEditingChange = new EventEmitter();
|
|
74121
|
-
this.hgridAPI = gridAPI;
|
|
74122
74222
|
}
|
|
74123
74223
|
/**
|
|
74124
74224
|
* @hidden
|
|
@@ -74229,27 +74329,27 @@ class IgxHierarchicalGridBaseDirective extends IgxGridBaseDirective {
|
|
|
74229
74329
|
return ref;
|
|
74230
74330
|
}
|
|
74231
74331
|
getGridsForIsland(rowIslandID) {
|
|
74232
|
-
return this.
|
|
74332
|
+
return this.gridAPI.getChildGridsForRowIsland(rowIslandID);
|
|
74233
74333
|
}
|
|
74234
74334
|
getChildGrid(path) {
|
|
74235
74335
|
if (!path) {
|
|
74236
74336
|
return;
|
|
74237
74337
|
}
|
|
74238
|
-
return this.
|
|
74338
|
+
return this.gridAPI.getChildGrid(path);
|
|
74239
74339
|
}
|
|
74240
74340
|
}
|
|
74241
|
-
IgxHierarchicalGridBaseDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: IgxHierarchicalGridBaseDirective, deps: [{ token: IgxGridSelectionService }, { token: IgxColumnResizingService }, { token: IGX_GRID_SERVICE_BASE }, { token: IgxFlatTransactionFactory }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: DOCUMENT }, { token: i0.ChangeDetectorRef }, { token: i0.ComponentFactoryResolver }, { token: i0.IterableDiffers }, { token: i0.ViewContainerRef }, { token: i0.ApplicationRef }, { token: i0.NgModuleRef }, { token: i0.
|
|
74341
|
+
IgxHierarchicalGridBaseDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: IgxHierarchicalGridBaseDirective, deps: [{ token: IgxGridSelectionService }, { token: IgxColumnResizingService }, { token: IGX_GRID_SERVICE_BASE }, { token: IgxFlatTransactionFactory }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: DOCUMENT }, { token: i0.ChangeDetectorRef }, { token: i0.ComponentFactoryResolver }, { token: i0.IterableDiffers }, { token: i0.ViewContainerRef }, { token: i0.ApplicationRef }, { token: i0.NgModuleRef }, { token: i0.Injector }, { token: IgxHierarchicalGridNavigationService }, { token: IgxFilteringService }, { token: IgxOverlayService }, { token: IgxGridSummaryService }, { token: DisplayDensityToken, optional: true }, { token: LOCALE_ID }, { token: PlatformUtil }, { token: IgxGridTransaction, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
|
|
74242
74342
|
IgxHierarchicalGridBaseDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.2", type: IgxHierarchicalGridBaseDirective, inputs: { hasChildrenKey: "hasChildrenKey", showExpandAll: "showExpandAll" }, outputs: { dataPreLoad: "dataPreLoad" }, viewQueries: [{ propertyName: "dragIndicatorIconBase", first: true, predicate: ["dragIndicatorIconBase"], descendants: true, read: TemplateRef, static: true }], usesInheritance: true, ngImport: i0 });
|
|
74243
74343
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: IgxHierarchicalGridBaseDirective, decorators: [{
|
|
74244
74344
|
type: Directive
|
|
74245
74345
|
}], ctorParameters: function () {
|
|
74246
|
-
return [{ type: IgxGridSelectionService }, { type: IgxColumnResizingService }, { type:
|
|
74346
|
+
return [{ type: IgxGridSelectionService }, { type: IgxColumnResizingService }, { type: IgxHierarchicalGridAPIService, decorators: [{
|
|
74247
74347
|
type: Inject,
|
|
74248
74348
|
args: [IGX_GRID_SERVICE_BASE]
|
|
74249
74349
|
}] }, { type: IgxFlatTransactionFactory }, { type: i0.ElementRef }, { type: i0.NgZone }, { type: undefined, decorators: [{
|
|
74250
74350
|
type: Inject,
|
|
74251
74351
|
args: [DOCUMENT]
|
|
74252
|
-
}] }, { type: i0.ChangeDetectorRef }, { type: i0.ComponentFactoryResolver }, { type: i0.IterableDiffers }, { type: i0.ViewContainerRef }, { type: i0.ApplicationRef }, { type: i0.NgModuleRef }, { type: i0.
|
|
74352
|
+
}] }, { type: i0.ChangeDetectorRef }, { type: i0.ComponentFactoryResolver }, { type: i0.IterableDiffers }, { type: i0.ViewContainerRef }, { type: i0.ApplicationRef }, { type: i0.NgModuleRef }, { type: i0.Injector }, { type: IgxHierarchicalGridNavigationService }, { type: IgxFilteringService }, { type: IgxOverlayService, decorators: [{
|
|
74253
74353
|
type: Inject,
|
|
74254
74354
|
args: [IgxOverlayService]
|
|
74255
74355
|
}] }, { type: IgxGridSummaryService }, { type: undefined, decorators: [{
|
|
@@ -74287,127 +74387,6 @@ const flatten = (arr) => {
|
|
|
74287
74387
|
return result;
|
|
74288
74388
|
};
|
|
74289
74389
|
|
|
74290
|
-
class IgxHierarchicalGridAPIService extends GridBaseAPIService {
|
|
74291
|
-
constructor() {
|
|
74292
|
-
super(...arguments);
|
|
74293
|
-
this.childRowIslands = new Map();
|
|
74294
|
-
this.childGrids = new Map();
|
|
74295
|
-
}
|
|
74296
|
-
registerChildRowIsland(rowIsland) {
|
|
74297
|
-
this.childRowIslands.set(rowIsland.key, rowIsland);
|
|
74298
|
-
this.destroyMap.set(rowIsland.key, new Subject());
|
|
74299
|
-
}
|
|
74300
|
-
unsetChildRowIsland(rowIsland) {
|
|
74301
|
-
this.childGrids.delete(rowIsland.key);
|
|
74302
|
-
this.childRowIslands.delete(rowIsland.key);
|
|
74303
|
-
this.destroyMap.delete(rowIsland.key);
|
|
74304
|
-
}
|
|
74305
|
-
getChildRowIsland(key) {
|
|
74306
|
-
return this.childRowIslands.get(key);
|
|
74307
|
-
}
|
|
74308
|
-
getChildGrid(path) {
|
|
74309
|
-
const currPath = path;
|
|
74310
|
-
let grid;
|
|
74311
|
-
const pathElem = currPath.shift();
|
|
74312
|
-
const childrenForLayout = this.childGrids.get(pathElem.rowIslandKey);
|
|
74313
|
-
if (childrenForLayout) {
|
|
74314
|
-
const childGrid = childrenForLayout.get(pathElem.rowID);
|
|
74315
|
-
if (currPath.length === 0) {
|
|
74316
|
-
grid = childGrid;
|
|
74317
|
-
}
|
|
74318
|
-
else {
|
|
74319
|
-
grid = childGrid.hgridAPI.getChildGrid(currPath);
|
|
74320
|
-
}
|
|
74321
|
-
}
|
|
74322
|
-
return grid;
|
|
74323
|
-
}
|
|
74324
|
-
getChildGrids(inDepth) {
|
|
74325
|
-
const allChildren = [];
|
|
74326
|
-
this.childGrids.forEach((layoutMap) => {
|
|
74327
|
-
layoutMap.forEach((grid) => {
|
|
74328
|
-
allChildren.push(grid);
|
|
74329
|
-
if (inDepth) {
|
|
74330
|
-
const children = grid.hgridAPI.getChildGrids(inDepth);
|
|
74331
|
-
children.forEach((item) => {
|
|
74332
|
-
allChildren.push(item);
|
|
74333
|
-
});
|
|
74334
|
-
}
|
|
74335
|
-
});
|
|
74336
|
-
});
|
|
74337
|
-
return allChildren;
|
|
74338
|
-
}
|
|
74339
|
-
getParentRowId(childGrid) {
|
|
74340
|
-
let rowID;
|
|
74341
|
-
this.childGrids.forEach((layoutMap) => {
|
|
74342
|
-
layoutMap.forEach((grid, key) => {
|
|
74343
|
-
if (grid === childGrid) {
|
|
74344
|
-
rowID = key;
|
|
74345
|
-
return;
|
|
74346
|
-
}
|
|
74347
|
-
});
|
|
74348
|
-
});
|
|
74349
|
-
return rowID;
|
|
74350
|
-
}
|
|
74351
|
-
registerChildGrid(parentRowID, rowIslandKey, grid) {
|
|
74352
|
-
let childrenForLayout = this.childGrids.get(rowIslandKey);
|
|
74353
|
-
if (!childrenForLayout) {
|
|
74354
|
-
this.childGrids.set(rowIslandKey, new Map());
|
|
74355
|
-
childrenForLayout = this.childGrids.get(rowIslandKey);
|
|
74356
|
-
}
|
|
74357
|
-
childrenForLayout.set(parentRowID, grid);
|
|
74358
|
-
}
|
|
74359
|
-
getChildGridsForRowIsland(rowIslandKey) {
|
|
74360
|
-
const childrenForLayout = this.childGrids.get(rowIslandKey);
|
|
74361
|
-
const children = [];
|
|
74362
|
-
if (childrenForLayout) {
|
|
74363
|
-
childrenForLayout.forEach((child) => {
|
|
74364
|
-
children.push(child);
|
|
74365
|
-
});
|
|
74366
|
-
}
|
|
74367
|
-
return children;
|
|
74368
|
-
}
|
|
74369
|
-
getChildGridByID(rowIslandKey, rowID) {
|
|
74370
|
-
const childrenForLayout = this.childGrids.get(rowIslandKey);
|
|
74371
|
-
return childrenForLayout.get(rowID);
|
|
74372
|
-
}
|
|
74373
|
-
get_row_expansion_state(record) {
|
|
74374
|
-
let inState;
|
|
74375
|
-
if (record.childGridsData !== undefined) {
|
|
74376
|
-
const ri = record.key;
|
|
74377
|
-
const states = this.grid.expansionStates;
|
|
74378
|
-
const expanded = states.get(ri);
|
|
74379
|
-
if (expanded !== undefined) {
|
|
74380
|
-
return expanded;
|
|
74381
|
-
}
|
|
74382
|
-
else {
|
|
74383
|
-
return this.grid.getDefaultExpandState(record);
|
|
74384
|
-
}
|
|
74385
|
-
}
|
|
74386
|
-
else {
|
|
74387
|
-
inState = !!super.get_row_expansion_state(record);
|
|
74388
|
-
}
|
|
74389
|
-
return inState && this.grid.childLayoutList.length !== 0;
|
|
74390
|
-
}
|
|
74391
|
-
allow_expansion_state_change(rowID, expanded) {
|
|
74392
|
-
const rec = this.get_rec_by_id(rowID);
|
|
74393
|
-
const grid = this.grid;
|
|
74394
|
-
if (grid.hasChildrenKey && !rec[grid.hasChildrenKey]) {
|
|
74395
|
-
return false;
|
|
74396
|
-
}
|
|
74397
|
-
return !!rec && this.grid.expansionStates.get(rowID) !== expanded;
|
|
74398
|
-
}
|
|
74399
|
-
get_rec_by_id(rowID) {
|
|
74400
|
-
const data = this.get_all_data(false);
|
|
74401
|
-
const index = this.get_row_index_in_data(rowID, data);
|
|
74402
|
-
return data[index];
|
|
74403
|
-
}
|
|
74404
|
-
}
|
|
74405
|
-
IgxHierarchicalGridAPIService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: IgxHierarchicalGridAPIService, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
74406
|
-
IgxHierarchicalGridAPIService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: IgxHierarchicalGridAPIService });
|
|
74407
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: IgxHierarchicalGridAPIService, decorators: [{
|
|
74408
|
-
type: Injectable
|
|
74409
|
-
}] });
|
|
74410
|
-
|
|
74411
74390
|
class IgxRowIslandAPIService {
|
|
74412
74391
|
constructor() {
|
|
74413
74392
|
this.change = new Subject();
|
|
@@ -74478,11 +74457,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImpor
|
|
|
74478
74457
|
}] });
|
|
74479
74458
|
|
|
74480
74459
|
class IgxRowIslandComponent extends IgxHierarchicalGridBaseDirective {
|
|
74481
|
-
constructor(selectionService, colResizingService, gridAPI, transactionFactory, elementRef, zone, document, cdr, resolver, differs, viewRef, moduleRef,
|
|
74482
|
-
super(selectionService, colResizingService, gridAPI, transactionFactory, elementRef, zone, document, cdr, resolver, differs, viewRef, appRef, moduleRef,
|
|
74460
|
+
constructor(selectionService, colResizingService, gridAPI, transactionFactory, elementRef, zone, document, cdr, resolver, differs, viewRef, moduleRef, injector, appRef, navigation, filteringService, overlayService, summaryService, _displayDensityOptions, rowIslandAPI, localeId, platform) {
|
|
74461
|
+
super(selectionService, colResizingService, gridAPI, transactionFactory, elementRef, zone, document, cdr, resolver, differs, viewRef, appRef, moduleRef, injector, navigation, filteringService, overlayService, summaryService, _displayDensityOptions, localeId, platform);
|
|
74483
74462
|
this.selectionService = selectionService;
|
|
74484
74463
|
this.colResizingService = colResizingService;
|
|
74485
|
-
this.gridAPI = gridAPI;
|
|
74486
74464
|
this.transactionFactory = transactionFactory;
|
|
74487
74465
|
this.document = document;
|
|
74488
74466
|
this.overlayService = overlayService;
|
|
@@ -74539,7 +74517,6 @@ class IgxRowIslandComponent extends IgxHierarchicalGridBaseDirective {
|
|
|
74539
74517
|
this.rootGrid = null;
|
|
74540
74518
|
this.layout_id = `igx-row-island-`;
|
|
74541
74519
|
this.isInit = false;
|
|
74542
|
-
this.hgridAPI = gridAPI;
|
|
74543
74520
|
}
|
|
74544
74521
|
/**
|
|
74545
74522
|
* Sets if all immediate children of the grids for this `IgxRowIslandComponent` should be expanded/collapsed.
|
|
@@ -74608,7 +74585,7 @@ class IgxRowIslandComponent extends IgxHierarchicalGridBaseDirective {
|
|
|
74608
74585
|
*/
|
|
74609
74586
|
ngOnInit() {
|
|
74610
74587
|
this.filteringService.grid = this;
|
|
74611
|
-
this.rootGrid = this.
|
|
74588
|
+
this.rootGrid = this.gridAPI.grid;
|
|
74612
74589
|
this.rowIslandAPI.rowIsland = this;
|
|
74613
74590
|
this.ri_columnListDiffer = this.differs.find([]).create(null);
|
|
74614
74591
|
}
|
|
@@ -74660,7 +74637,7 @@ class IgxRowIslandComponent extends IgxHierarchicalGridBaseDirective {
|
|
|
74660
74637
|
this.parentIsland.rowIslandAPI.registerChildRowIsland(this);
|
|
74661
74638
|
}
|
|
74662
74639
|
else {
|
|
74663
|
-
this.rootGrid.
|
|
74640
|
+
this.rootGrid.gridAPI.registerChildRowIsland(this);
|
|
74664
74641
|
}
|
|
74665
74642
|
this._init = false;
|
|
74666
74643
|
// Create the child toolbar if the parent island has a toolbar definition
|
|
@@ -74695,12 +74672,12 @@ class IgxRowIslandComponent extends IgxHierarchicalGridBaseDirective {
|
|
|
74695
74672
|
if (this.parentIsland) {
|
|
74696
74673
|
this.getGridsForIsland(this.key).forEach(grid => {
|
|
74697
74674
|
this.cleanGridState(grid);
|
|
74698
|
-
grid.
|
|
74675
|
+
grid.gridAPI.unsetChildRowIsland(this);
|
|
74699
74676
|
});
|
|
74700
74677
|
this.parentIsland.rowIslandAPI.unsetChildRowIsland(this);
|
|
74701
74678
|
}
|
|
74702
74679
|
else {
|
|
74703
|
-
this.rootGrid.
|
|
74680
|
+
this.rootGrid.gridAPI.unsetChildRowIsland(this);
|
|
74704
74681
|
this.cleanGridState(this.rootGrid);
|
|
74705
74682
|
}
|
|
74706
74683
|
}
|
|
@@ -74754,7 +74731,7 @@ class IgxRowIslandComponent extends IgxHierarchicalGridBaseDirective {
|
|
|
74754
74731
|
grid.onRowIslandChange();
|
|
74755
74732
|
}
|
|
74756
74733
|
}
|
|
74757
|
-
IgxRowIslandComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: IgxRowIslandComponent, deps: [{ token: IgxGridSelectionService }, { token: IgxColumnResizingService }, { token: IGX_GRID_SERVICE_BASE }, { token: IgxFlatTransactionFactory }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: DOCUMENT }, { token: i0.ChangeDetectorRef }, { token: i0.ComponentFactoryResolver }, { token: i0.IterableDiffers }, { token: i0.ViewContainerRef }, { token: i0.NgModuleRef }, { token: i0.
|
|
74734
|
+
IgxRowIslandComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: IgxRowIslandComponent, deps: [{ token: IgxGridSelectionService }, { token: IgxColumnResizingService }, { token: IGX_GRID_SERVICE_BASE }, { token: IgxFlatTransactionFactory }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: DOCUMENT }, { token: i0.ChangeDetectorRef }, { token: i0.ComponentFactoryResolver }, { token: i0.IterableDiffers }, { token: i0.ViewContainerRef }, { token: i0.NgModuleRef }, { token: i0.Injector }, { token: i0.ApplicationRef }, { token: IgxHierarchicalGridNavigationService }, { token: IgxFilteringService }, { token: IgxOverlayService }, { token: IgxGridSummaryService }, { token: DisplayDensityToken, optional: true }, { token: IgxRowIslandAPIService }, { token: LOCALE_ID }, { token: PlatformUtil }], target: i0.ɵɵFactoryTarget.Component });
|
|
74758
74735
|
IgxRowIslandComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.2", type: IgxRowIslandComponent, selector: "igx-row-island", inputs: { key: "key", expandChildren: "expandChildren" }, outputs: { layoutChange: "layoutChange", gridCreated: "gridCreated", gridInitialized: "gridInitialized" }, providers: [
|
|
74759
74736
|
IgxRowIslandAPIService,
|
|
74760
74737
|
IgxFilteringService,
|
|
@@ -74773,13 +74750,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImpor
|
|
|
74773
74750
|
]
|
|
74774
74751
|
}]
|
|
74775
74752
|
}], ctorParameters: function () {
|
|
74776
|
-
return [{ type: IgxGridSelectionService }, { type: IgxColumnResizingService }, { type:
|
|
74753
|
+
return [{ type: IgxGridSelectionService }, { type: IgxColumnResizingService }, { type: IgxHierarchicalGridAPIService, decorators: [{
|
|
74777
74754
|
type: Inject,
|
|
74778
74755
|
args: [IGX_GRID_SERVICE_BASE]
|
|
74779
74756
|
}] }, { type: IgxFlatTransactionFactory }, { type: i0.ElementRef }, { type: i0.NgZone }, { type: undefined, decorators: [{
|
|
74780
74757
|
type: Inject,
|
|
74781
74758
|
args: [DOCUMENT]
|
|
74782
|
-
}] }, { type: i0.ChangeDetectorRef }, { type: i0.ComponentFactoryResolver }, { type: i0.IterableDiffers }, { type: i0.ViewContainerRef }, { type: i0.NgModuleRef }, { type: i0.
|
|
74759
|
+
}] }, { type: i0.ChangeDetectorRef }, { type: i0.ComponentFactoryResolver }, { type: i0.IterableDiffers }, { type: i0.ViewContainerRef }, { type: i0.NgModuleRef }, { type: i0.Injector }, { type: i0.ApplicationRef }, { type: IgxHierarchicalGridNavigationService }, { type: IgxFilteringService }, { type: IgxOverlayService, decorators: [{
|
|
74783
74760
|
type: Inject,
|
|
74784
74761
|
args: [IgxOverlayService]
|
|
74785
74762
|
}] }, { type: IgxGridSummaryService }, { type: undefined, decorators: [{
|
|
@@ -74848,7 +74825,7 @@ class IgxHierarchicalGridCellComponent extends IgxGridCellComponent {
|
|
|
74848
74825
|
while (this._rootGrid.id !== parentGrid.id) {
|
|
74849
74826
|
childGrid = parentGrid;
|
|
74850
74827
|
parentGrid = parentGrid.parent;
|
|
74851
|
-
const parentRowID = parentGrid.
|
|
74828
|
+
const parentRowID = parentGrid.gridAPI.getParentRowId(childGrid);
|
|
74852
74829
|
parentGrid.highlightedRowID = parentRowID;
|
|
74853
74830
|
}
|
|
74854
74831
|
this.grid.navigation.activeNode.gridID = this.gridID;
|
|
@@ -74989,7 +74966,7 @@ class IgxHierarchicalRowComponent extends IgxRowDirective {
|
|
|
74989
74966
|
if (grid.gridAPI.crudService.cellInEditMode) {
|
|
74990
74967
|
grid.gridAPI.crudService.endEdit();
|
|
74991
74968
|
}
|
|
74992
|
-
grid.
|
|
74969
|
+
grid.gridAPI.getChildGrids(true).forEach(g => {
|
|
74993
74970
|
if (g.gridAPI.crudService.cellInEditMode) {
|
|
74994
74971
|
g.gridAPI.crudService.endEdit();
|
|
74995
74972
|
}
|
|
@@ -75195,8 +75172,8 @@ class IgxChildGridRowComponent {
|
|
|
75195
75172
|
ngAfterViewInit() {
|
|
75196
75173
|
this.hGrid.childLayoutList = this.layout.children;
|
|
75197
75174
|
const layouts = this.hGrid.childLayoutList.toArray();
|
|
75198
|
-
layouts.forEach((l) => this.hGrid.
|
|
75199
|
-
this.parentGrid.
|
|
75175
|
+
layouts.forEach((l) => this.hGrid.gridAPI.registerChildRowIsland(l));
|
|
75176
|
+
this.parentGrid.gridAPI.registerChildGrid(this.data.rowID, this.layout.key, this.hGrid);
|
|
75200
75177
|
this.layout.rowIslandAPI.registerChildGrid(this.data.rowID, this.hGrid);
|
|
75201
75178
|
this.layout.gridInitialized.emit({
|
|
75202
75179
|
owner: this.layout,
|
|
@@ -75241,7 +75218,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImpor
|
|
|
75241
75218
|
type: Component,
|
|
75242
75219
|
args: [{ changeDetection: ChangeDetectionStrategy.OnPush, selector: 'igx-child-grid-row', template: "<div class=\"igx-grid__hierarchical-indent\" [ngClass]=\"{'igx-grid__hierarchical-indent--scroll': parentHasScroll}\">\n <igx-hierarchical-grid #hgrid [data]='data.childGridsData[layout.key]'></igx-hierarchical-grid>\n</div>\n" }]
|
|
75243
75220
|
}], ctorParameters: function () {
|
|
75244
|
-
return [{ type:
|
|
75221
|
+
return [{ type: IgxHierarchicalGridAPIService, decorators: [{
|
|
75245
75222
|
type: Inject,
|
|
75246
75223
|
args: [IGX_GRID_SERVICE_BASE]
|
|
75247
75224
|
}] }, { type: i0.ElementRef }, { type: i0.ComponentFactoryResolver }, { type: i0.ChangeDetectorRef }];
|
|
@@ -75447,7 +75424,7 @@ class IgxHierarchicalGridComponent extends IgxHierarchicalGridBaseDirective {
|
|
|
75447
75424
|
if (!this.parent) {
|
|
75448
75425
|
return null;
|
|
75449
75426
|
}
|
|
75450
|
-
return this.parent.
|
|
75427
|
+
return this.parent.gridAPI.getParentRowId(this);
|
|
75451
75428
|
}
|
|
75452
75429
|
/**
|
|
75453
75430
|
* @hidden
|
|
@@ -75715,7 +75692,7 @@ class IgxHierarchicalGridComponent extends IgxHierarchicalGridBaseDirective {
|
|
|
75715
75692
|
}
|
|
75716
75693
|
ngOnDestroy() {
|
|
75717
75694
|
if (!this.parent) {
|
|
75718
|
-
this.
|
|
75695
|
+
this.gridAPI.getChildGrids(true).forEach((grid) => {
|
|
75719
75696
|
if (!grid.childRow.cdr.destroyed) {
|
|
75720
75697
|
grid.childRow.cdr.destroy();
|
|
75721
75698
|
}
|
|
@@ -75904,7 +75881,7 @@ class IgxHierarchicalGridComponent extends IgxHierarchicalGridBaseDirective {
|
|
|
75904
75881
|
const cachedData = this.childGridTemplates.get(key);
|
|
75905
75882
|
cachedData.owner = args.owner;
|
|
75906
75883
|
this.childLayoutList.forEach((layout) => {
|
|
75907
|
-
const relatedGrid = this.
|
|
75884
|
+
const relatedGrid = this.gridAPI.getChildGridByID(layout.key, args.context.$implicit.rowID);
|
|
75908
75885
|
if (relatedGrid && relatedGrid.updateOnRender) {
|
|
75909
75886
|
// Detect changes if `expandChildren` has changed when the grid wasn't visible. This is for performance reasons.
|
|
75910
75887
|
relatedGrid.notifyChanges(true);
|
|
@@ -75949,7 +75926,7 @@ class IgxHierarchicalGridComponent extends IgxHierarchicalGridBaseDirective {
|
|
|
75949
75926
|
}
|
|
75950
75927
|
/** @hidden @internal */
|
|
75951
75928
|
getChildGrids(inDeph) {
|
|
75952
|
-
return this.
|
|
75929
|
+
return this.gridAPI.getChildGrids(inDeph);
|
|
75953
75930
|
}
|
|
75954
75931
|
generateDataFields(data) {
|
|
75955
75932
|
return super.generateDataFields(data).filter((field) => {
|
|
@@ -75995,7 +75972,7 @@ class IgxHierarchicalGridComponent extends IgxHierarchicalGridBaseDirective {
|
|
|
75995
75972
|
updateSizes() {
|
|
75996
75973
|
if (document.body.contains(this.nativeElement) && this.isPercentWidth) {
|
|
75997
75974
|
this.reflow();
|
|
75998
|
-
this.
|
|
75975
|
+
this.gridAPI.getChildGrids(false).forEach((grid) => {
|
|
75999
75976
|
grid.updateSizes();
|
|
76000
75977
|
});
|
|
76001
75978
|
}
|
|
@@ -84257,7 +84234,7 @@ class IgxPivotHeaderRowComponent extends IgxGridHeaderRowComponent {
|
|
|
84257
84234
|
* @hidden
|
|
84258
84235
|
* @internal
|
|
84259
84236
|
*/
|
|
84260
|
-
onChipSort(
|
|
84237
|
+
onChipSort(_event, dimension) {
|
|
84261
84238
|
const startDirection = dimension.sortDirection || SortingDirection.None;
|
|
84262
84239
|
const direction = startDirection + 1 > SortingDirection.Desc ?
|
|
84263
84240
|
SortingDirection.None : startDirection + 1;
|
|
@@ -84355,11 +84332,8 @@ class IgxPivotHeaderRowComponent extends IgxGridHeaderRowComponent {
|
|
|
84355
84332
|
currentDim.findIndex(x => x.memberName === event.owner.id) : currentDim.length;
|
|
84356
84333
|
const targetIndex = this._dropPos === DropPosition.AfterDropTarget ? chipIndex + 1 : chipIndex;
|
|
84357
84334
|
if (isNewChip) {
|
|
84358
|
-
|
|
84359
|
-
|
|
84360
|
-
.concat(this.grid.pivotConfiguration.filters);
|
|
84361
|
-
// chip moved from external collection
|
|
84362
|
-
const dim = allDims.find(x => x && x.memberName === dragId);
|
|
84335
|
+
// chip moved from an external collection
|
|
84336
|
+
const dim = this.grid.allDimensions.find(x => x && x.memberName === dragId);
|
|
84363
84337
|
if (!dim) {
|
|
84364
84338
|
// you have dragged something that is not a dimension
|
|
84365
84339
|
return;
|
|
@@ -84393,10 +84367,10 @@ class IgxPivotHeaderRowComponent extends IgxGridHeaderRowComponent {
|
|
|
84393
84367
|
}
|
|
84394
84368
|
}
|
|
84395
84369
|
IgxPivotHeaderRowComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: IgxPivotHeaderRowComponent, deps: [{ token: IGX_GRID_BASE }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
|
|
84396
|
-
IgxPivotHeaderRowComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.2", type: IgxPivotHeaderRowComponent, selector: "igx-pivot-header-row", viewQueries: [{ propertyName: "esf", first: true, predicate: ["esf"], descendants: true }, { propertyName: "filterArea", first: true, predicate: ["filterAreaHidden"], descendants: true }, { propertyName: "filtersButton", first: true, predicate: ["filterIcon"], descendants: true }, { propertyName: "dropdownChips", first: true, predicate: ["dropdownChips"], descendants: true }, { propertyName: "pivotFilterContainer", first: true, predicate: ["pivotFilterContainer"], descendants: true }, { propertyName: "notificationChips", predicate: ["notifyChip"], descendants: true }, { propertyName: "headerContainers", predicate: ["headerVirtualContainer"], descendants: true, read: IgxGridForOfDirective }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div>\n <div class=\"igx-grid-thead__wrapper igx-grid-thead__wrapper--pivot\" role=\"row\" [style.width.px]=\"width\">\n <div class=\"igx-grid__tr\" role=\"row\" [style.width.px]=\"width\">\n <div class='igx-grid__tr-pivot--filter-container'>\n <div #pivotFilterContainer *ngIf=\"grid.showPivotConfigurationUI\"\n class=\"igx-grid__tr-pivot igx-grid__tr-pivot--filter\" [style.min-width.px]=\"grid.pivotRowWidths - 1\"\n [style.max-width.px]=\"grid.pivotRowWidths - 1\" (igxDragLeave)=\"onAreaDragLeave($event, filterArea)\"\n igxDrop (dropped)=\"onDimDrop($event, filterArea, 2)\" (pointerdown)=\"$event.preventDefault()\">\n <!-- Filter area -->\n <igx-chips-area #filterArea droppable='true'>\n <span id='empty' igxDrop (dropped)=\"onDimDrop($event, filterArea, 2)\"\n *ngIf=\"grid.filterDimensions.length === 0\"\n class='igx-grid__pivot-empty-chip-area'>{{grid.resourceStrings.igx_grid_pivot_empty_filter_drop_area}}</span>\n <ng-container *ngFor=\"let filter of this.filterAreaDimensions; let last = last;\">\n <span [style.visibility]='\"hidden\"' class=\"igx-grid__tr-pivot--chip_drop_indicator\"\n [style.height.px]='getAreaHeight(filterArea)'></span>\n <igx-chip [id]=\"filter.memberName\" [draggable]=\"true\" [displayDensity]=\"grid.displayDensity\" [data]=\"{ pivotArea: 'filter' }\"\n [removable]=\"true\" (remove)=\"filterRemoved($event)\" (dragOver)=\"onDimDragOver($event, 2)\"\n (dragLeave)=\"onDimDragLeave($event)\" (dragDrop)=\"onDimDrop($event, filterArea, 2)\"\n (moveStart)='onDimDragStart($event, filterArea)' (moveEnd)='onDimDragEnd()'>\n <igx-icon igxPrefix (pointerdown)='onFilteringIconPointerDown($event)'\n (click)='onFilteringIconClick($event, filter)'>filter_list</igx-icon>\n {{filter.memberName}}\n </igx-chip>\n <ng-container *ngIf='last'>\n <span [style.visibility]='\"hidden\"' class=\"igx-grid__tr-pivot--chip_drop_indicator\"\n [style.height.px]='getAreaHeight(filterArea)'></span>\n </ng-container>\n </ng-container>\n <igx-chip igxDrop (dragDrop)=\"onDimDrop($event, filterArea, 2)\" #notifyChip [hidden]='true'\n [displayDensity]=\"grid.displayDensity\">\n {{grid.resourceStrings.igx_grid_pivot_filter_drop_chip}}\n </igx-chip>\n </igx-chips-area>\n <div class=\"igx-grid__pivot-filter-toggle\" *ngIf=\"isFiltersButton && grid.filterDimensions.length !== 0\">\n <igx-icon #filterIcon (pointerdown)='onFilteringIconPointerDown($event)' (click)='onFiltersAreaDropdownClick($event)'>filter_list</igx-icon>\n <igx-badge value=\"{{this.filterDropdownDimensions.size}}\"></igx-badge>\n </div>\n </div>\n <div class='igx-grid__tr-pivot--drop-row-area' (igxDragLeave)=\"onAreaDragLeave($event, rowArea)\" igxDrop\n (dropped)=\"onDimDrop($event, rowArea, 0)\">\n </div>\n </div>\n\n <div class=\"igx-grid__tr-pivot-group\">\n <div #pivotColumnContainer *ngIf=\"grid.showPivotConfigurationUI\" class=\"igx-grid__tr-pivot\"\n (dropped)=\"onDimDrop($event, colArea, 1)\" igxDrop (igxDragLeave)=\"onAreaDragLeave($event, colArea)\">\n <!-- Columns area -->\n <igx-chips-area #colArea droppable='true'>\n <span id='empty' (dropped)=\"onDimDrop($event, colArea, 1)\" igxDrop\n *ngIf=\"grid.columnDimensions.length === 0\" class='igx-grid__pivot-empty-chip-area'>\n {{grid.resourceStrings.igx_grid_pivot_empty_column_drop_area}}</span>\n <ng-container *ngFor=\"let col of grid.columnDimensions; let last = last;\">\n <span [style.visibility]='\"hidden\"' class=\"igx-grid__tr-pivot--chip_drop_indicator\"\n [style.height.px]='getAreaHeight(colArea)'></span>\n <igx-chip [draggable]=\"true\" [id]=\"col.memberName\" [displayDensity]=\"grid.displayDensity\" [data]=\"{ pivotArea: 'column' }\"\n [removable]=\"true\" (remove)=\"columnRemoved($event)\" (dragOver)=\"onDimDragOver($event, 1)\"\n (dragLeave)=\"onDimDragLeave($event)\" (dragDrop)=\"onDimDrop($event, colArea, 1)\"\n (moveStart)='onDimDragStart($event, colArea)' (moveEnd)='onDimDragEnd()'\n (click)=\"onChipSort($event, col, 1)\">\n <igx-icon igxPrefix>view_column</igx-icon>\n <igx-icon igxPrefix (pointerdown)='onFilteringIconPointerDown($event)'\n (click)='onFilteringIconClick($event, col)'>filter_list</igx-icon>\n {{col.memberName}}\n <igx-icon *ngIf=\"col.sortDirection\" igxSuffix> {{ col.sortDirection < 2 ? 'arrow_upward'\n : 'arrow_downward' }}</igx-icon>\n </igx-chip>\n <ng-container *ngIf='last'>\n <span [style.visibility]='\"hidden\"' class=\"igx-grid__tr-pivot--chip_drop_indicator\"\n [style.height.px]='getAreaHeight(colArea)'></span>\n </ng-container>\n </ng-container>\n <igx-chip igxDrop (dragDrop)=\"onDimDrop($event, colArea, 1)\" #notifyChip [hidden]='true'\n [displayDensity]=\"grid.displayDensity\">\n {{grid.resourceStrings.igx_grid_pivot_column_drop_chip}}\n </igx-chip>\n </igx-chips-area>\n </div>\n\n <div #pivotValueContainer *ngIf=\"grid.showPivotConfigurationUI\" class=\"igx-grid__tr-pivot\"\n (pointerdown)=\"$event.preventDefault()\" (dropped)=\"onValueDrop($event, valueArea)\" igxDrop\n (igxDragLeave)=\"onAreaDragLeave($event, valueArea)\">\n <!-- Value area -->\n <igx-chips-area #valueArea droppable='true'>\n <span id='empty' (dropped)=\"onValueDrop($event, valueArea)\" igxDrop *ngIf=\"grid.values.length === 0\"\n class='igx-grid__pivot-empty-chip-area'>{{grid.resourceStrings.igx_grid_pivot_empty_value_drop_area}}</span>\n <ng-container *ngFor=\"let value of grid.values; let last = last;\">\n <span [style.visibility]='\"hidden\"' class=\"igx-grid__tr-pivot--chip_drop_indicator\"\n [style.height.px]='getAreaHeight(valueArea)'></span>\n <igx-chip #currChip [draggable]=\"true\" [id]=\"value.displayName || value.member\" [data]=\"{ pivotArea: 'value' }\"\n [displayDensity]=\"grid.displayDensity\" [removable]=\"true\" (remove)=\"valueRemoved($event)\"\n (dragLeave)=\"onDimDragLeave($event)\" (dragOver)=\"onDimDragOver($event)\"\n (dragDrop)=\"onValueDrop($event, valueArea)\">\n <div class=\"igx-grid__tr-pivot-toggle-icons\" igxPrefix\n (click)='onSummaryClick($event, value, dropdown, currChip)'\n (pointerdown)='$event.stopPropagation()' [igxDropDownItemNavigation]=\"dropdown\">\n <igx-icon>functions</igx-icon>\n <igx-icon>arrow_drop_down</igx-icon>\n </div>\n {{value.aggregate.key}}({{value.displayName || value.member}})\n </igx-chip>\n <ng-container *ngIf='last'>\n <span [style.visibility]='\"hidden\"' class=\"igx-grid__tr-pivot--chip_drop_indicator\"\n [style.height.px]='getAreaHeight(valueArea)'></span>\n </ng-container>\n </ng-container>\n <igx-chip igxDrop (dragDrop)=\"onValueDrop($event, valueArea)\" #notifyValueChip [hidden]='true'\n [displayDensity]=\"grid.displayDensity\">\n {{grid.resourceStrings.igx_grid_pivot_value_drop_chip}}\n </igx-chip>\n </igx-chips-area>\n </div>\n </div>\n </div>\n </div>\n <div role=\"rowgroup\" class=\"igx-grid-thead__wrapper\" [style.width.px]=\"width\"\n [attr.aria-activedescendant]=\"activeDescendant\" [class.igx-grid__tr--mrl]=\"hasMRL\">\n\n <!-- Column headers area -->\n <div class=\"igx-grid__tr\" role=\"row\" [style.width.px]=\"width\">\n <div #pivotContainer class=\"igx-grid__tr-pivot igx-grid__tr-pivot--row-area\"\n [style.width.px]=\"grid.pivotRowWidths - 1\" (igxDragLeave)=\"onAreaDragLeave($event, rowArea)\" igxDrop\n (dropped)=\"onDimDrop($event, rowArea, 0)\" (pointerdown)=\"$event.preventDefault()\">\n <!-- Row area -->\n <igx-chips-area #rowArea droppable='true'>\n <ng-container *ngIf=\"grid.showPivotConfigurationUI\">\n <span id='empty' igxDrop (dropped)=\"onDimDrop($event, rowArea, 0)\"\n *ngIf=\"grid.rowDimensions.length === 0 && grid.showPivotConfigurationUI\"\n class='igx-grid__pivot-empty-chip-area'>{{grid.resourceStrings.igx_grid_pivot_empty_row_drop_area}}</span>\n <ng-container *ngFor=\"let row of grid.rowDimensions; let last = last;\">\n <span [style.visibility]='\"hidden\"' class=\"igx-grid__tr-pivot--chip_drop_indicator\"\n [style.height.px]='getAreaHeight(rowArea)'></span>\n <igx-chip [draggable]=\"true\" [id]=\"row.memberName\" [displayDensity]=\"grid.displayDensity\" [data]=\"{ pivotArea: 'row' }\"\n [removable]=\"true\" (remove)=\"rowRemoved($event)\" (dragLeave)=\"onDimDragLeave($event)\"\n (dragDrop)=\"onDimDrop($event, rowArea, 0)\" (dragOver)=\"onDimDragOver($event, 0)\"\n (moveStart)='onDimDragStart($event, rowArea)' (moveEnd)='onDimDragEnd()'\n (click)=\"onChipSort($event, row, 0)\">\n <igx-icon igxPrefix>table_rows</igx-icon>\n <igx-icon igxPrefix (pointerdown)='onFilteringIconPointerDown($event)'\n (click)='onFilteringIconClick($event, row)'>filter_list</igx-icon>\n {{ row.memberName}}\n <igx-icon *ngIf=\"row.sortDirection\" igxSuffix> {{ row.sortDirection < 2 ? 'arrow_upward'\n : 'arrow_downward' }}</igx-icon>\n </igx-chip>\n <ng-container *ngIf='last'>\n <span [style.visibility]='\"hidden\"' class=\"igx-grid__tr-pivot--chip_drop_indicator\"\n [style.height.px]='getAreaHeight(rowArea)'></span>\n </ng-container>\n </ng-container>\n <igx-chip igxDrop (dragDrop)=\"onDimDrop($event, rowArea, 0)\" #notifyChip [hidden]='true'\n [displayDensity]=\"grid.displayDensity\">\n {{grid.resourceStrings.igx_grid_pivot_row_drop_chip}}\n </igx-chip>\n </ng-container>\n </igx-chips-area>\n </div>\n\n <!-- Pinned columns collection from the start -->\n <ng-container *ngIf=\"pinnedColumnCollection.length && grid.isPinningToStart\">\n <ng-container *ngFor=\"let column of pinnedColumnCollection | igxTopLevel\">\n <igx-grid-header-group [ngClass]=\"column.headerGroupClasses\"\n [ngStyle]=\"column.headerGroupStyles | igxHeaderGroupStyle:column:grid.pipeTrigger\" [column]=\"column\"\n [style.min-width]=\"column.calcWidth | igxHeaderGroupWidth:grid.defaultHeaderGroupMinWidth:hasMRL\"\n [style.flex-basis]=\"column.calcWidth | igxHeaderGroupWidth:grid.defaultHeaderGroupMinWidth:hasMRL\"\n (pointerdown)=\"grid.navigation.focusOutRowHeader($event)\">\n </igx-grid-header-group>\n </ng-container>\n </ng-container>\n <div class=\"igx-grid-thead--virtualizationWrapper\" [style.max-height.px]='maxContainerHeight'>\n <div class=\"igx-grid-thead__group igx-grid-thead--virtualizationContainer\" [style.height.px]='totalDepth > 1 ? grid.rowHeight : undefined' *ngFor='let dimLevelColumns of columnDimensionsByLevel; let i = index' [style.width.px]='grid.unpinnedWidth'>\n <ng-template igxGridFor #headerVirtualContainer let-column\n [igxGridForOf]=\"dimLevelColumns\" [igxGridForOfUniqueSizeCache] = 'true' [igxForScrollContainer]=\"grid.parentVirtDir\"\n [igxForContainerSize]=\"grid.unpinnedWidth\" [igxForTrackBy]=\"grid.trackColumnChanges\"\n [igxForSizePropName]=\"'calcPixelWidth'\" [igxForScrollOrientation]=\"'horizontal'\">\n <igx-grid-header-group [ngClass]=\"column.headerGroupClasses\"\n [style.height.px]='totalDepth > 1 ? calcHeight(column, i) : undefined'\n [ngStyle]=\"column.headerGroupStyles |igxHeaderGroupStyle:column:grid.pipeTrigger\" [column]=\"column\"\n [style.min-width]=\"column.calcWidth | igxHeaderGroupWidth:grid.defaultHeaderGroupMinWidth:hasMRL\"\n [style.flex-basis]=\"column.calcWidth | igxHeaderGroupWidth:grid.defaultHeaderGroupMinWidth:hasMRL\"\n [class.igx-grid__tr-pivot--columnDimensionLeaf] = 'isDuplicateOfExistingParent(column, i)'\n [class.igx-grid__tr-pivot--columnMultiRowSpan] = 'isMultiRow(column, i)'\n >\n </igx-grid-header-group>\n </ng-template>\n </div>\n </div>\n\n <!-- Pinned columns collection at the end -->\n <ng-container *ngIf=\"pinnedColumnCollection.length && !grid.isPinningToStart\">\n <ng-container *ngFor=\"let column of pinnedColumnCollection | igxTopLevel\">\n <igx-grid-header-group [ngClass]=\"column.headerGroupClasses\"\n [ngStyle]=\"column.headerGroupStyles |igxHeaderGroupStyle:column:grid.pipeTrigger\" [column]=\"column\"\n [style.min-width]=\"column.calcWidth | igxHeaderGroupWidth:grid.defaultHeaderGroupMinWidth:hasMRL\"\n [style.flex-basis]=\"column.calcWidth | igxHeaderGroupWidth:grid.defaultHeaderGroupMinWidth:hasMRL\"\n [style.left]=\"column.rightPinnedOffset\" (pointerdown)=\"grid.navigation.focusOutRowHeader($event)\">\n </igx-grid-header-group>\n </ng-container>\n </ng-container>\n </div>\n </div>\n</div>\n<!-- Header thumb area -->\n<div class=\"igx-grid-thead__thumb\" [hidden]=\"!grid.hasVerticalScroll()\" [style.width.px]=\"grid.scrollSize\">\n</div>\n\n<igx-drop-down #dropdown (selectionChanging)='onAggregationChange($event)'>\n <igx-drop-down-item *ngFor=\"let item of aggregateList\" [selected]='isSelected(item)' [value]='item'>\n {{ item.label }}\n </igx-drop-down-item>\n</igx-drop-down>\n\n<div [hidden]='true'>\n <igx-grid-excel-style-filtering [maxHeight]='grid.excelStyleFilterMaxHeight' [minHeight]='grid.excelStyleFilterMinHeight' #esf>\n <div igxExcelStyleColumnOperations>\n <igx-chips-area #dropdownChips>\n <igx-chip *ngFor=\"let filter of this.filterDropdownDimensions\" [id]=\"filter.memberName\"\n [displayDensity]=\"grid.displayDensity\" [removable]=\"true\" (remove)=\"filterRemoved($event)\"\n (chipClick)='onFiltersSelectionChanged($event)' [selectable]='true' [selected]='filter === this.filterDropdownDimensions.values().next().value'>\n {{filter.memberName}}\n </igx-chip>\n </igx-chips-area>\n </div>\n <igx-excel-style-filter-operations>\n <igx-excel-style-search></igx-excel-style-search>\n </igx-excel-style-filter-operations>\n </igx-grid-excel-style-filtering>\n</div>\n\n<div style=\"visibility: hidden; position: absolute; top: -10000px\">\n <igx-chips-area #filterAreaHidden droppable='true'>\n <igx-chip *ngFor=\"let filter of grid.filterDimensions\" [id]=\"filter.memberName\" [draggable]=\"true\"\n [displayDensity]=\"grid.displayDensity\" [removable]=\"true\" (remove)=\"filterRemoved($event)\">\n <igx-icon igxPrefix>filter_list</igx-icon>\n {{filter.memberName}}\n </igx-chip>\n </igx-chips-area>\n</div>\n", components: [{ type: IgxChipsAreaComponent, selector: "igx-chips-area", inputs: ["class", "width", "height"], outputs: ["reorder", "selectionChange", "moveStart", "moveEnd"] }, { type: IgxChipComponent, selector: "igx-chip", inputs: ["id", "tabIndex", "data", "draggable", "animateOnRelease", "hideBaseOnDrag", "removable", "removeIcon", "selectable", "selectIcon", "class", "disabled", "selected", "color", "resourceStrings"], outputs: ["selectedChange", "moveStart", "moveEnd", "remove", "chipClick", "selectedChanging", "selectedChanged", "keyDown", "dragEnter", "dragLeave", "dragOver", "dragDrop"] }, { type: IgxIconComponent, selector: "igx-icon", inputs: ["family", "active", "name"] }, { type: IgxBadgeComponent, selector: "igx-badge", inputs: ["id", "type", "value", "icon"] }, { type: IgxGridHeaderGroupComponent, selector: "igx-grid-header-group", inputs: ["column"] }, { type: IgxDropDownComponent, selector: "igx-drop-down", inputs: ["allowItemsFocus"], outputs: ["opening", "opened", "closing", "closed"] }, { type: IgxDropDownItemComponent, selector: "igx-drop-down-item" }, { type: IgxGridExcelStyleFilteringComponent, selector: "igx-grid-excel-style-filtering", inputs: ["column", "minHeight", "maxHeight"], outputs: ["loadingStart", "loadingEnd", "initialized", "sortingChanged", "columnChange", "listDataLoaded"] }, { type: IgxExcelStyleSearchComponent, selector: "igx-excel-style-search" }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: IgxDropDirective, selector: "[igxDrop]", inputs: ["igxDrop", "dropChannel", "dropStrategy"], outputs: ["enter", "over", "leave", "dropped"], exportAs: ["drop"] }, { type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: IgxPrefixDirective, selector: "igx-prefix,[igxPrefix]" }, { type: IgxSuffixDirective, selector: "igx-suffix,[igxSuffix]" }, { type: IgxDropDownItemNavigationDirective, selector: "[igxDropDownItemNavigation]", inputs: ["igxDropDownItemNavigation"] }, { type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i4.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: IgxGridForOfDirective, selector: "[igxGridFor][igxGridForOf]", inputs: ["igxGridForOf", "igxGridForOfUniqueSizeCache"], outputs: ["dataChanging"] }, { type: IgxExcelStyleColumnOperationsTemplateDirective, selector: "igx-excel-style-column-operations,[igxExcelStyleColumnOperations]" }, { type: IgxExcelStyleFilterOperationsTemplateDirective, selector: "igx-excel-style-filter-operations,[igxExcelStyleFilterOperations]" }], pipes: { "igxTopLevel": IgxGridTopLevelColumns, "igxHeaderGroupStyle": IgxHeaderGroupStylePipe, "igxHeaderGroupWidth": IgxHeaderGroupWidthPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
84370
|
+
IgxPivotHeaderRowComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.2", type: IgxPivotHeaderRowComponent, selector: "igx-pivot-header-row", viewQueries: [{ propertyName: "esf", first: true, predicate: ["esf"], descendants: true }, { propertyName: "filterArea", first: true, predicate: ["filterAreaHidden"], descendants: true }, { propertyName: "filtersButton", first: true, predicate: ["filterIcon"], descendants: true }, { propertyName: "dropdownChips", first: true, predicate: ["dropdownChips"], descendants: true }, { propertyName: "pivotFilterContainer", first: true, predicate: ["pivotFilterContainer"], descendants: true }, { propertyName: "notificationChips", predicate: ["notifyChip"], descendants: true }, { propertyName: "headerContainers", predicate: ["headerVirtualContainer"], descendants: true, read: IgxGridForOfDirective }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div>\n <div class=\"igx-grid-thead__wrapper igx-grid-thead__wrapper--pivot\" role=\"row\" [style.width.px]=\"width\">\n <div class=\"igx-grid__tr\" role=\"row\" [style.width.px]=\"width\">\n <div class='igx-grid__tr-pivot--filter-container'>\n <div #pivotFilterContainer *ngIf=\"grid.showPivotConfigurationUI\"\n class=\"igx-grid__tr-pivot igx-grid__tr-pivot--filter\" [style.min-width.px]=\"grid.pivotRowWidths - 1\"\n [style.max-width.px]=\"grid.pivotRowWidths - 1\" (igxDragLeave)=\"onAreaDragLeave($event, filterArea)\"\n igxDrop (dropped)=\"onDimDrop($event, filterArea, 2)\" (pointerdown)=\"$event.preventDefault()\">\n <!-- Filter area -->\n <igx-chips-area #filterArea droppable='true'>\n <span id='empty' igxDrop (dropped)=\"onDimDrop($event, filterArea, 2)\"\n *ngIf=\"grid.filterDimensions.length === 0\"\n class='igx-grid__pivot-empty-chip-area'>{{grid.resourceStrings.igx_grid_pivot_empty_filter_drop_area}}</span>\n <ng-container *ngFor=\"let filter of this.filterAreaDimensions; let last = last;\">\n <span [style.visibility]='\"hidden\"' class=\"igx-grid__tr-pivot--chip_drop_indicator\"\n [style.height.px]='getAreaHeight(filterArea)'></span>\n <igx-chip [id]=\"filter.memberName\" [draggable]=\"true\" [displayDensity]=\"grid.displayDensity\" [data]=\"{ pivotArea: 'filter' }\"\n [removable]=\"true\" (remove)=\"filterRemoved($event)\" (dragOver)=\"onDimDragOver($event, 2)\"\n (dragLeave)=\"onDimDragLeave($event)\" (dragDrop)=\"onDimDrop($event, filterArea, 2)\"\n (moveStart)='onDimDragStart($event, filterArea)' (moveEnd)='onDimDragEnd()'>\n <igx-icon igxPrefix (pointerdown)='onFilteringIconPointerDown($event)'\n (click)='onFilteringIconClick($event, filter)'>filter_list</igx-icon>\n {{filter.memberName}}\n </igx-chip>\n <ng-container *ngIf='last'>\n <span [style.visibility]='\"hidden\"' class=\"igx-grid__tr-pivot--chip_drop_indicator\"\n [style.height.px]='getAreaHeight(filterArea)'></span>\n </ng-container>\n </ng-container>\n <igx-chip igxDrop (dragDrop)=\"onDimDrop($event, filterArea, 2)\" #notifyChip [hidden]='true'\n [displayDensity]=\"grid.displayDensity\">\n {{grid.resourceStrings.igx_grid_pivot_filter_drop_chip}}\n </igx-chip>\n </igx-chips-area>\n <div class=\"igx-grid__pivot-filter-toggle\" *ngIf=\"isFiltersButton && grid.filterDimensions.length !== 0\">\n <igx-icon #filterIcon (pointerdown)='onFilteringIconPointerDown($event)' (click)='onFiltersAreaDropdownClick($event)'>filter_list</igx-icon>\n <igx-badge value=\"{{this.filterDropdownDimensions.size}}\"></igx-badge>\n </div>\n </div>\n <div class='igx-grid__tr-pivot--drop-row-area' (igxDragLeave)=\"onAreaDragLeave($event, rowArea)\" igxDrop\n (dropped)=\"onDimDrop($event, rowArea, 0)\">\n </div>\n </div>\n\n <div class=\"igx-grid__tr-pivot-group\">\n <div #pivotColumnContainer *ngIf=\"grid.showPivotConfigurationUI\" class=\"igx-grid__tr-pivot\"\n (dropped)=\"onDimDrop($event, colArea, 1)\" igxDrop (igxDragLeave)=\"onAreaDragLeave($event, colArea)\">\n <!-- Columns area -->\n <igx-chips-area #colArea droppable='true'>\n <span id='empty' (dropped)=\"onDimDrop($event, colArea, 1)\" igxDrop\n *ngIf=\"grid.columnDimensions.length === 0\" class='igx-grid__pivot-empty-chip-area'>\n {{grid.resourceStrings.igx_grid_pivot_empty_column_drop_area}}</span>\n <ng-container *ngFor=\"let col of grid.columnDimensions; let last = last;\">\n <span [style.visibility]='\"hidden\"' class=\"igx-grid__tr-pivot--chip_drop_indicator\"\n [style.height.px]='getAreaHeight(colArea)'></span>\n <igx-chip [draggable]=\"true\" [id]=\"col.memberName\" [displayDensity]=\"grid.displayDensity\" [data]=\"{ pivotArea: 'column' }\"\n [removable]=\"true\" (remove)=\"columnRemoved($event)\" (dragOver)=\"onDimDragOver($event, 1)\"\n (dragLeave)=\"onDimDragLeave($event)\" (dragDrop)=\"onDimDrop($event, colArea, 1)\"\n (moveStart)='onDimDragStart($event, colArea)' (moveEnd)='onDimDragEnd()'\n (click)=\"onChipSort($event, col)\">\n <igx-icon igxPrefix>view_column</igx-icon>\n <igx-icon igxPrefix (pointerdown)='onFilteringIconPointerDown($event)'\n (click)='onFilteringIconClick($event, col)'>filter_list</igx-icon>\n {{col.memberName}}\n <igx-icon *ngIf=\"col.sortDirection\" igxSuffix> {{ col.sortDirection < 2 ? 'arrow_upward'\n : 'arrow_downward' }}</igx-icon>\n </igx-chip>\n <ng-container *ngIf='last'>\n <span [style.visibility]='\"hidden\"' class=\"igx-grid__tr-pivot--chip_drop_indicator\"\n [style.height.px]='getAreaHeight(colArea)'></span>\n </ng-container>\n </ng-container>\n <igx-chip igxDrop (dragDrop)=\"onDimDrop($event, colArea, 1)\" #notifyChip [hidden]='true'\n [displayDensity]=\"grid.displayDensity\">\n {{grid.resourceStrings.igx_grid_pivot_column_drop_chip}}\n </igx-chip>\n </igx-chips-area>\n </div>\n\n <div #pivotValueContainer *ngIf=\"grid.showPivotConfigurationUI\" class=\"igx-grid__tr-pivot\"\n (pointerdown)=\"$event.preventDefault()\" (dropped)=\"onValueDrop($event, valueArea)\" igxDrop\n (igxDragLeave)=\"onAreaDragLeave($event, valueArea)\">\n <!-- Value area -->\n <igx-chips-area #valueArea droppable='true'>\n <span id='empty' (dropped)=\"onValueDrop($event, valueArea)\" igxDrop *ngIf=\"grid.values.length === 0\"\n class='igx-grid__pivot-empty-chip-area'>{{grid.resourceStrings.igx_grid_pivot_empty_value_drop_area}}</span>\n <ng-container *ngFor=\"let value of grid.values; let last = last;\">\n <span [style.visibility]='\"hidden\"' class=\"igx-grid__tr-pivot--chip_drop_indicator\"\n [style.height.px]='getAreaHeight(valueArea)'></span>\n <igx-chip #currChip [draggable]=\"true\" [id]=\"value.displayName || value.member\" [data]=\"{ pivotArea: 'value' }\"\n [displayDensity]=\"grid.displayDensity\" [removable]=\"true\" (remove)=\"valueRemoved($event)\"\n (dragLeave)=\"onDimDragLeave($event)\" (dragOver)=\"onDimDragOver($event)\"\n (dragDrop)=\"onValueDrop($event, valueArea)\">\n <div class=\"igx-grid__tr-pivot-toggle-icons\" igxPrefix\n (click)='onSummaryClick($event, value, dropdown, currChip)'\n (pointerdown)='$event.stopPropagation()' [igxDropDownItemNavigation]=\"dropdown\">\n <igx-icon>functions</igx-icon>\n <igx-icon>arrow_drop_down</igx-icon>\n </div>\n {{value.aggregate.key}}({{value.displayName || value.member}})\n </igx-chip>\n <ng-container *ngIf='last'>\n <span [style.visibility]='\"hidden\"' class=\"igx-grid__tr-pivot--chip_drop_indicator\"\n [style.height.px]='getAreaHeight(valueArea)'></span>\n </ng-container>\n </ng-container>\n <igx-chip igxDrop (dragDrop)=\"onValueDrop($event, valueArea)\" #notifyValueChip [hidden]='true'\n [displayDensity]=\"grid.displayDensity\">\n {{grid.resourceStrings.igx_grid_pivot_value_drop_chip}}\n </igx-chip>\n </igx-chips-area>\n </div>\n </div>\n </div>\n </div>\n <div role=\"rowgroup\" class=\"igx-grid-thead__wrapper\" [style.width.px]=\"width\"\n [attr.aria-activedescendant]=\"activeDescendant\" [class.igx-grid__tr--mrl]=\"hasMRL\">\n\n <!-- Column headers area -->\n <div class=\"igx-grid__tr\" role=\"row\" [style.width.px]=\"width\">\n <div #pivotContainer class=\"igx-grid__tr-pivot igx-grid__tr-pivot--row-area\"\n [style.width.px]=\"grid.pivotRowWidths - 1\" (igxDragLeave)=\"onAreaDragLeave($event, rowArea)\" igxDrop\n (dropped)=\"onDimDrop($event, rowArea, 0)\" (pointerdown)=\"$event.preventDefault()\">\n <!-- Row area -->\n <igx-chips-area #rowArea droppable='true'>\n <ng-container *ngIf=\"grid.showPivotConfigurationUI\">\n <span id='empty' igxDrop (dropped)=\"onDimDrop($event, rowArea, 0)\"\n *ngIf=\"grid.rowDimensions.length === 0 && grid.showPivotConfigurationUI\"\n class='igx-grid__pivot-empty-chip-area'>{{grid.resourceStrings.igx_grid_pivot_empty_row_drop_area}}</span>\n <ng-container *ngFor=\"let row of grid.rowDimensions; let last = last;\">\n <span [style.visibility]='\"hidden\"' class=\"igx-grid__tr-pivot--chip_drop_indicator\"\n [style.height.px]='getAreaHeight(rowArea)'></span>\n <igx-chip [draggable]=\"true\" [id]=\"row.memberName\" [displayDensity]=\"grid.displayDensity\" [data]=\"{ pivotArea: 'row' }\"\n [removable]=\"true\" (remove)=\"rowRemoved($event)\" (dragLeave)=\"onDimDragLeave($event)\"\n (dragDrop)=\"onDimDrop($event, rowArea, 0)\" (dragOver)=\"onDimDragOver($event, 0)\"\n (moveStart)='onDimDragStart($event, rowArea)' (moveEnd)='onDimDragEnd()'\n (click)=\"onChipSort($event, row)\">\n <igx-icon igxPrefix>table_rows</igx-icon>\n <igx-icon igxPrefix (pointerdown)='onFilteringIconPointerDown($event)'\n (click)='onFilteringIconClick($event, row)'>filter_list</igx-icon>\n {{ row.memberName}}\n <igx-icon *ngIf=\"row.sortDirection\" igxSuffix> {{ row.sortDirection < 2 ? 'arrow_upward'\n : 'arrow_downward' }}</igx-icon>\n </igx-chip>\n <ng-container *ngIf='last'>\n <span [style.visibility]='\"hidden\"' class=\"igx-grid__tr-pivot--chip_drop_indicator\"\n [style.height.px]='getAreaHeight(rowArea)'></span>\n </ng-container>\n </ng-container>\n <igx-chip igxDrop (dragDrop)=\"onDimDrop($event, rowArea, 0)\" #notifyChip [hidden]='true'\n [displayDensity]=\"grid.displayDensity\">\n {{grid.resourceStrings.igx_grid_pivot_row_drop_chip}}\n </igx-chip>\n </ng-container>\n </igx-chips-area>\n </div>\n\n <!-- Pinned columns collection from the start -->\n <ng-container *ngIf=\"pinnedColumnCollection.length && grid.isPinningToStart\">\n <ng-container *ngFor=\"let column of pinnedColumnCollection | igxTopLevel\">\n <igx-grid-header-group [ngClass]=\"column.headerGroupClasses\"\n [ngStyle]=\"column.headerGroupStyles | igxHeaderGroupStyle:column:grid.pipeTrigger\" [column]=\"column\"\n [style.min-width]=\"column.calcWidth | igxHeaderGroupWidth:grid.defaultHeaderGroupMinWidth:hasMRL\"\n [style.flex-basis]=\"column.calcWidth | igxHeaderGroupWidth:grid.defaultHeaderGroupMinWidth:hasMRL\"\n (pointerdown)=\"grid.navigation.focusOutRowHeader($event)\">\n </igx-grid-header-group>\n </ng-container>\n </ng-container>\n <div class=\"igx-grid-thead--virtualizationWrapper\" [style.max-height.px]='maxContainerHeight'>\n <div class=\"igx-grid-thead__group igx-grid-thead--virtualizationContainer\" [style.height.px]='totalDepth > 1 ? grid.rowHeight : undefined' *ngFor='let dimLevelColumns of columnDimensionsByLevel; let i = index' [style.width.px]='grid.unpinnedWidth'>\n <ng-template igxGridFor #headerVirtualContainer let-column\n [igxGridForOf]=\"dimLevelColumns\" [igxGridForOfUniqueSizeCache] = 'true' [igxForScrollContainer]=\"grid.parentVirtDir\"\n [igxForContainerSize]=\"grid.unpinnedWidth\" [igxForTrackBy]=\"grid.trackColumnChanges\"\n [igxForSizePropName]=\"'calcPixelWidth'\" [igxForScrollOrientation]=\"'horizontal'\">\n <igx-grid-header-group [ngClass]=\"column.headerGroupClasses\"\n [style.height.px]='totalDepth > 1 ? calcHeight(column, i) : undefined'\n [ngStyle]=\"column.headerGroupStyles |igxHeaderGroupStyle:column:grid.pipeTrigger\" [column]=\"column\"\n [style.min-width]=\"column.calcWidth | igxHeaderGroupWidth:grid.defaultHeaderGroupMinWidth:hasMRL\"\n [style.flex-basis]=\"column.calcWidth | igxHeaderGroupWidth:grid.defaultHeaderGroupMinWidth:hasMRL\"\n [class.igx-grid__tr-pivot--columnDimensionLeaf] = 'isDuplicateOfExistingParent(column, i)'\n [class.igx-grid__tr-pivot--columnMultiRowSpan] = 'isMultiRow(column, i)'\n >\n </igx-grid-header-group>\n </ng-template>\n </div>\n </div>\n\n <!-- Pinned columns collection at the end -->\n <ng-container *ngIf=\"pinnedColumnCollection.length && !grid.isPinningToStart\">\n <ng-container *ngFor=\"let column of pinnedColumnCollection | igxTopLevel\">\n <igx-grid-header-group [ngClass]=\"column.headerGroupClasses\"\n [ngStyle]=\"column.headerGroupStyles |igxHeaderGroupStyle:column:grid.pipeTrigger\" [column]=\"column\"\n [style.min-width]=\"column.calcWidth | igxHeaderGroupWidth:grid.defaultHeaderGroupMinWidth:hasMRL\"\n [style.flex-basis]=\"column.calcWidth | igxHeaderGroupWidth:grid.defaultHeaderGroupMinWidth:hasMRL\"\n [style.left]=\"column.rightPinnedOffset\" (pointerdown)=\"grid.navigation.focusOutRowHeader($event)\">\n </igx-grid-header-group>\n </ng-container>\n </ng-container>\n </div>\n </div>\n</div>\n<!-- Header thumb area -->\n<div class=\"igx-grid-thead__thumb\" [hidden]=\"!grid.hasVerticalScroll()\" [style.width.px]=\"grid.scrollSize\">\n</div>\n\n<igx-drop-down #dropdown (selectionChanging)='onAggregationChange($event)'>\n <igx-drop-down-item *ngFor=\"let item of aggregateList\" [selected]='isSelected(item)' [value]='item'>\n {{ item.label }}\n </igx-drop-down-item>\n</igx-drop-down>\n\n<div [hidden]='true'>\n <igx-grid-excel-style-filtering [maxHeight]='grid.excelStyleFilterMaxHeight' [minHeight]='grid.excelStyleFilterMinHeight' #esf>\n <div igxExcelStyleColumnOperations>\n <igx-chips-area #dropdownChips>\n <igx-chip *ngFor=\"let filter of this.filterDropdownDimensions\" [id]=\"filter.memberName\"\n [displayDensity]=\"grid.displayDensity\" [removable]=\"true\" (remove)=\"filterRemoved($event)\"\n (chipClick)='onFiltersSelectionChanged($event)' [selectable]='true' [selected]='filter === this.filterDropdownDimensions.values().next().value'>\n {{filter.memberName}}\n </igx-chip>\n </igx-chips-area>\n </div>\n <igx-excel-style-filter-operations>\n <igx-excel-style-search></igx-excel-style-search>\n </igx-excel-style-filter-operations>\n </igx-grid-excel-style-filtering>\n</div>\n\n<div style=\"visibility: hidden; position: absolute; top: -10000px\">\n <igx-chips-area #filterAreaHidden droppable='true'>\n <igx-chip *ngFor=\"let filter of grid.filterDimensions\" [id]=\"filter.memberName\" [draggable]=\"true\"\n [displayDensity]=\"grid.displayDensity\" [removable]=\"true\" (remove)=\"filterRemoved($event)\">\n <igx-icon igxPrefix>filter_list</igx-icon>\n {{filter.memberName}}\n </igx-chip>\n </igx-chips-area>\n</div>\n", components: [{ type: IgxChipsAreaComponent, selector: "igx-chips-area", inputs: ["class", "width", "height"], outputs: ["reorder", "selectionChange", "moveStart", "moveEnd"] }, { type: IgxChipComponent, selector: "igx-chip", inputs: ["id", "tabIndex", "data", "draggable", "animateOnRelease", "hideBaseOnDrag", "removable", "removeIcon", "selectable", "selectIcon", "class", "disabled", "selected", "color", "resourceStrings"], outputs: ["selectedChange", "moveStart", "moveEnd", "remove", "chipClick", "selectedChanging", "selectedChanged", "keyDown", "dragEnter", "dragLeave", "dragOver", "dragDrop"] }, { type: IgxIconComponent, selector: "igx-icon", inputs: ["family", "active", "name"] }, { type: IgxBadgeComponent, selector: "igx-badge", inputs: ["id", "type", "value", "icon"] }, { type: IgxGridHeaderGroupComponent, selector: "igx-grid-header-group", inputs: ["column"] }, { type: IgxDropDownComponent, selector: "igx-drop-down", inputs: ["allowItemsFocus"], outputs: ["opening", "opened", "closing", "closed"] }, { type: IgxDropDownItemComponent, selector: "igx-drop-down-item" }, { type: IgxGridExcelStyleFilteringComponent, selector: "igx-grid-excel-style-filtering", inputs: ["column", "minHeight", "maxHeight"], outputs: ["loadingStart", "loadingEnd", "initialized", "sortingChanged", "columnChange", "listDataLoaded"] }, { type: IgxExcelStyleSearchComponent, selector: "igx-excel-style-search" }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: IgxDropDirective, selector: "[igxDrop]", inputs: ["igxDrop", "dropChannel", "dropStrategy"], outputs: ["enter", "over", "leave", "dropped"], exportAs: ["drop"] }, { type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: IgxPrefixDirective, selector: "igx-prefix,[igxPrefix]" }, { type: IgxSuffixDirective, selector: "igx-suffix,[igxSuffix]" }, { type: IgxDropDownItemNavigationDirective, selector: "[igxDropDownItemNavigation]", inputs: ["igxDropDownItemNavigation"] }, { type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i4.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: IgxGridForOfDirective, selector: "[igxGridFor][igxGridForOf]", inputs: ["igxGridForOf", "igxGridForOfUniqueSizeCache"], outputs: ["dataChanging"] }, { type: IgxExcelStyleColumnOperationsTemplateDirective, selector: "igx-excel-style-column-operations,[igxExcelStyleColumnOperations]" }, { type: IgxExcelStyleFilterOperationsTemplateDirective, selector: "igx-excel-style-filter-operations,[igxExcelStyleFilterOperations]" }], pipes: { "igxTopLevel": IgxGridTopLevelColumns, "igxHeaderGroupStyle": IgxHeaderGroupStylePipe, "igxHeaderGroupWidth": IgxHeaderGroupWidthPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
84397
84371
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: IgxPivotHeaderRowComponent, decorators: [{
|
|
84398
84372
|
type: Component,
|
|
84399
|
-
args: [{ changeDetection: ChangeDetectionStrategy.OnPush, selector: 'igx-pivot-header-row', template: "<div>\n <div class=\"igx-grid-thead__wrapper igx-grid-thead__wrapper--pivot\" role=\"row\" [style.width.px]=\"width\">\n <div class=\"igx-grid__tr\" role=\"row\" [style.width.px]=\"width\">\n <div class='igx-grid__tr-pivot--filter-container'>\n <div #pivotFilterContainer *ngIf=\"grid.showPivotConfigurationUI\"\n class=\"igx-grid__tr-pivot igx-grid__tr-pivot--filter\" [style.min-width.px]=\"grid.pivotRowWidths - 1\"\n [style.max-width.px]=\"grid.pivotRowWidths - 1\" (igxDragLeave)=\"onAreaDragLeave($event, filterArea)\"\n igxDrop (dropped)=\"onDimDrop($event, filterArea, 2)\" (pointerdown)=\"$event.preventDefault()\">\n <!-- Filter area -->\n <igx-chips-area #filterArea droppable='true'>\n <span id='empty' igxDrop (dropped)=\"onDimDrop($event, filterArea, 2)\"\n *ngIf=\"grid.filterDimensions.length === 0\"\n class='igx-grid__pivot-empty-chip-area'>{{grid.resourceStrings.igx_grid_pivot_empty_filter_drop_area}}</span>\n <ng-container *ngFor=\"let filter of this.filterAreaDimensions; let last = last;\">\n <span [style.visibility]='\"hidden\"' class=\"igx-grid__tr-pivot--chip_drop_indicator\"\n [style.height.px]='getAreaHeight(filterArea)'></span>\n <igx-chip [id]=\"filter.memberName\" [draggable]=\"true\" [displayDensity]=\"grid.displayDensity\" [data]=\"{ pivotArea: 'filter' }\"\n [removable]=\"true\" (remove)=\"filterRemoved($event)\" (dragOver)=\"onDimDragOver($event, 2)\"\n (dragLeave)=\"onDimDragLeave($event)\" (dragDrop)=\"onDimDrop($event, filterArea, 2)\"\n (moveStart)='onDimDragStart($event, filterArea)' (moveEnd)='onDimDragEnd()'>\n <igx-icon igxPrefix (pointerdown)='onFilteringIconPointerDown($event)'\n (click)='onFilteringIconClick($event, filter)'>filter_list</igx-icon>\n {{filter.memberName}}\n </igx-chip>\n <ng-container *ngIf='last'>\n <span [style.visibility]='\"hidden\"' class=\"igx-grid__tr-pivot--chip_drop_indicator\"\n [style.height.px]='getAreaHeight(filterArea)'></span>\n </ng-container>\n </ng-container>\n <igx-chip igxDrop (dragDrop)=\"onDimDrop($event, filterArea, 2)\" #notifyChip [hidden]='true'\n [displayDensity]=\"grid.displayDensity\">\n {{grid.resourceStrings.igx_grid_pivot_filter_drop_chip}}\n </igx-chip>\n </igx-chips-area>\n <div class=\"igx-grid__pivot-filter-toggle\" *ngIf=\"isFiltersButton && grid.filterDimensions.length !== 0\">\n <igx-icon #filterIcon (pointerdown)='onFilteringIconPointerDown($event)' (click)='onFiltersAreaDropdownClick($event)'>filter_list</igx-icon>\n <igx-badge value=\"{{this.filterDropdownDimensions.size}}\"></igx-badge>\n </div>\n </div>\n <div class='igx-grid__tr-pivot--drop-row-area' (igxDragLeave)=\"onAreaDragLeave($event, rowArea)\" igxDrop\n (dropped)=\"onDimDrop($event, rowArea, 0)\">\n </div>\n </div>\n\n <div class=\"igx-grid__tr-pivot-group\">\n <div #pivotColumnContainer *ngIf=\"grid.showPivotConfigurationUI\" class=\"igx-grid__tr-pivot\"\n (dropped)=\"onDimDrop($event, colArea, 1)\" igxDrop (igxDragLeave)=\"onAreaDragLeave($event, colArea)\">\n <!-- Columns area -->\n <igx-chips-area #colArea droppable='true'>\n <span id='empty' (dropped)=\"onDimDrop($event, colArea, 1)\" igxDrop\n *ngIf=\"grid.columnDimensions.length === 0\" class='igx-grid__pivot-empty-chip-area'>\n {{grid.resourceStrings.igx_grid_pivot_empty_column_drop_area}}</span>\n <ng-container *ngFor=\"let col of grid.columnDimensions; let last = last;\">\n <span [style.visibility]='\"hidden\"' class=\"igx-grid__tr-pivot--chip_drop_indicator\"\n [style.height.px]='getAreaHeight(colArea)'></span>\n <igx-chip [draggable]=\"true\" [id]=\"col.memberName\" [displayDensity]=\"grid.displayDensity\" [data]=\"{ pivotArea: 'column' }\"\n [removable]=\"true\" (remove)=\"columnRemoved($event)\" (dragOver)=\"onDimDragOver($event, 1)\"\n (dragLeave)=\"onDimDragLeave($event)\" (dragDrop)=\"onDimDrop($event, colArea, 1)\"\n (moveStart)='onDimDragStart($event, colArea)' (moveEnd)='onDimDragEnd()'\n (click)=\"onChipSort($event, col, 1)\">\n <igx-icon igxPrefix>view_column</igx-icon>\n <igx-icon igxPrefix (pointerdown)='onFilteringIconPointerDown($event)'\n (click)='onFilteringIconClick($event, col)'>filter_list</igx-icon>\n {{col.memberName}}\n <igx-icon *ngIf=\"col.sortDirection\" igxSuffix> {{ col.sortDirection < 2 ? 'arrow_upward'\n : 'arrow_downward' }}</igx-icon>\n </igx-chip>\n <ng-container *ngIf='last'>\n <span [style.visibility]='\"hidden\"' class=\"igx-grid__tr-pivot--chip_drop_indicator\"\n [style.height.px]='getAreaHeight(colArea)'></span>\n </ng-container>\n </ng-container>\n <igx-chip igxDrop (dragDrop)=\"onDimDrop($event, colArea, 1)\" #notifyChip [hidden]='true'\n [displayDensity]=\"grid.displayDensity\">\n {{grid.resourceStrings.igx_grid_pivot_column_drop_chip}}\n </igx-chip>\n </igx-chips-area>\n </div>\n\n <div #pivotValueContainer *ngIf=\"grid.showPivotConfigurationUI\" class=\"igx-grid__tr-pivot\"\n (pointerdown)=\"$event.preventDefault()\" (dropped)=\"onValueDrop($event, valueArea)\" igxDrop\n (igxDragLeave)=\"onAreaDragLeave($event, valueArea)\">\n <!-- Value area -->\n <igx-chips-area #valueArea droppable='true'>\n <span id='empty' (dropped)=\"onValueDrop($event, valueArea)\" igxDrop *ngIf=\"grid.values.length === 0\"\n class='igx-grid__pivot-empty-chip-area'>{{grid.resourceStrings.igx_grid_pivot_empty_value_drop_area}}</span>\n <ng-container *ngFor=\"let value of grid.values; let last = last;\">\n <span [style.visibility]='\"hidden\"' class=\"igx-grid__tr-pivot--chip_drop_indicator\"\n [style.height.px]='getAreaHeight(valueArea)'></span>\n <igx-chip #currChip [draggable]=\"true\" [id]=\"value.displayName || value.member\" [data]=\"{ pivotArea: 'value' }\"\n [displayDensity]=\"grid.displayDensity\" [removable]=\"true\" (remove)=\"valueRemoved($event)\"\n (dragLeave)=\"onDimDragLeave($event)\" (dragOver)=\"onDimDragOver($event)\"\n (dragDrop)=\"onValueDrop($event, valueArea)\">\n <div class=\"igx-grid__tr-pivot-toggle-icons\" igxPrefix\n (click)='onSummaryClick($event, value, dropdown, currChip)'\n (pointerdown)='$event.stopPropagation()' [igxDropDownItemNavigation]=\"dropdown\">\n <igx-icon>functions</igx-icon>\n <igx-icon>arrow_drop_down</igx-icon>\n </div>\n {{value.aggregate.key}}({{value.displayName || value.member}})\n </igx-chip>\n <ng-container *ngIf='last'>\n <span [style.visibility]='\"hidden\"' class=\"igx-grid__tr-pivot--chip_drop_indicator\"\n [style.height.px]='getAreaHeight(valueArea)'></span>\n </ng-container>\n </ng-container>\n <igx-chip igxDrop (dragDrop)=\"onValueDrop($event, valueArea)\" #notifyValueChip [hidden]='true'\n [displayDensity]=\"grid.displayDensity\">\n {{grid.resourceStrings.igx_grid_pivot_value_drop_chip}}\n </igx-chip>\n </igx-chips-area>\n </div>\n </div>\n </div>\n </div>\n <div role=\"rowgroup\" class=\"igx-grid-thead__wrapper\" [style.width.px]=\"width\"\n [attr.aria-activedescendant]=\"activeDescendant\" [class.igx-grid__tr--mrl]=\"hasMRL\">\n\n <!-- Column headers area -->\n <div class=\"igx-grid__tr\" role=\"row\" [style.width.px]=\"width\">\n <div #pivotContainer class=\"igx-grid__tr-pivot igx-grid__tr-pivot--row-area\"\n [style.width.px]=\"grid.pivotRowWidths - 1\" (igxDragLeave)=\"onAreaDragLeave($event, rowArea)\" igxDrop\n (dropped)=\"onDimDrop($event, rowArea, 0)\" (pointerdown)=\"$event.preventDefault()\">\n <!-- Row area -->\n <igx-chips-area #rowArea droppable='true'>\n <ng-container *ngIf=\"grid.showPivotConfigurationUI\">\n <span id='empty' igxDrop (dropped)=\"onDimDrop($event, rowArea, 0)\"\n *ngIf=\"grid.rowDimensions.length === 0 && grid.showPivotConfigurationUI\"\n class='igx-grid__pivot-empty-chip-area'>{{grid.resourceStrings.igx_grid_pivot_empty_row_drop_area}}</span>\n <ng-container *ngFor=\"let row of grid.rowDimensions; let last = last;\">\n <span [style.visibility]='\"hidden\"' class=\"igx-grid__tr-pivot--chip_drop_indicator\"\n [style.height.px]='getAreaHeight(rowArea)'></span>\n <igx-chip [draggable]=\"true\" [id]=\"row.memberName\" [displayDensity]=\"grid.displayDensity\" [data]=\"{ pivotArea: 'row' }\"\n [removable]=\"true\" (remove)=\"rowRemoved($event)\" (dragLeave)=\"onDimDragLeave($event)\"\n (dragDrop)=\"onDimDrop($event, rowArea, 0)\" (dragOver)=\"onDimDragOver($event, 0)\"\n (moveStart)='onDimDragStart($event, rowArea)' (moveEnd)='onDimDragEnd()'\n (click)=\"onChipSort($event, row, 0)\">\n <igx-icon igxPrefix>table_rows</igx-icon>\n <igx-icon igxPrefix (pointerdown)='onFilteringIconPointerDown($event)'\n (click)='onFilteringIconClick($event, row)'>filter_list</igx-icon>\n {{ row.memberName}}\n <igx-icon *ngIf=\"row.sortDirection\" igxSuffix> {{ row.sortDirection < 2 ? 'arrow_upward'\n : 'arrow_downward' }}</igx-icon>\n </igx-chip>\n <ng-container *ngIf='last'>\n <span [style.visibility]='\"hidden\"' class=\"igx-grid__tr-pivot--chip_drop_indicator\"\n [style.height.px]='getAreaHeight(rowArea)'></span>\n </ng-container>\n </ng-container>\n <igx-chip igxDrop (dragDrop)=\"onDimDrop($event, rowArea, 0)\" #notifyChip [hidden]='true'\n [displayDensity]=\"grid.displayDensity\">\n {{grid.resourceStrings.igx_grid_pivot_row_drop_chip}}\n </igx-chip>\n </ng-container>\n </igx-chips-area>\n </div>\n\n <!-- Pinned columns collection from the start -->\n <ng-container *ngIf=\"pinnedColumnCollection.length && grid.isPinningToStart\">\n <ng-container *ngFor=\"let column of pinnedColumnCollection | igxTopLevel\">\n <igx-grid-header-group [ngClass]=\"column.headerGroupClasses\"\n [ngStyle]=\"column.headerGroupStyles | igxHeaderGroupStyle:column:grid.pipeTrigger\" [column]=\"column\"\n [style.min-width]=\"column.calcWidth | igxHeaderGroupWidth:grid.defaultHeaderGroupMinWidth:hasMRL\"\n [style.flex-basis]=\"column.calcWidth | igxHeaderGroupWidth:grid.defaultHeaderGroupMinWidth:hasMRL\"\n (pointerdown)=\"grid.navigation.focusOutRowHeader($event)\">\n </igx-grid-header-group>\n </ng-container>\n </ng-container>\n <div class=\"igx-grid-thead--virtualizationWrapper\" [style.max-height.px]='maxContainerHeight'>\n <div class=\"igx-grid-thead__group igx-grid-thead--virtualizationContainer\" [style.height.px]='totalDepth > 1 ? grid.rowHeight : undefined' *ngFor='let dimLevelColumns of columnDimensionsByLevel; let i = index' [style.width.px]='grid.unpinnedWidth'>\n <ng-template igxGridFor #headerVirtualContainer let-column\n [igxGridForOf]=\"dimLevelColumns\" [igxGridForOfUniqueSizeCache] = 'true' [igxForScrollContainer]=\"grid.parentVirtDir\"\n [igxForContainerSize]=\"grid.unpinnedWidth\" [igxForTrackBy]=\"grid.trackColumnChanges\"\n [igxForSizePropName]=\"'calcPixelWidth'\" [igxForScrollOrientation]=\"'horizontal'\">\n <igx-grid-header-group [ngClass]=\"column.headerGroupClasses\"\n [style.height.px]='totalDepth > 1 ? calcHeight(column, i) : undefined'\n [ngStyle]=\"column.headerGroupStyles |igxHeaderGroupStyle:column:grid.pipeTrigger\" [column]=\"column\"\n [style.min-width]=\"column.calcWidth | igxHeaderGroupWidth:grid.defaultHeaderGroupMinWidth:hasMRL\"\n [style.flex-basis]=\"column.calcWidth | igxHeaderGroupWidth:grid.defaultHeaderGroupMinWidth:hasMRL\"\n [class.igx-grid__tr-pivot--columnDimensionLeaf] = 'isDuplicateOfExistingParent(column, i)'\n [class.igx-grid__tr-pivot--columnMultiRowSpan] = 'isMultiRow(column, i)'\n >\n </igx-grid-header-group>\n </ng-template>\n </div>\n </div>\n\n <!-- Pinned columns collection at the end -->\n <ng-container *ngIf=\"pinnedColumnCollection.length && !grid.isPinningToStart\">\n <ng-container *ngFor=\"let column of pinnedColumnCollection | igxTopLevel\">\n <igx-grid-header-group [ngClass]=\"column.headerGroupClasses\"\n [ngStyle]=\"column.headerGroupStyles |igxHeaderGroupStyle:column:grid.pipeTrigger\" [column]=\"column\"\n [style.min-width]=\"column.calcWidth | igxHeaderGroupWidth:grid.defaultHeaderGroupMinWidth:hasMRL\"\n [style.flex-basis]=\"column.calcWidth | igxHeaderGroupWidth:grid.defaultHeaderGroupMinWidth:hasMRL\"\n [style.left]=\"column.rightPinnedOffset\" (pointerdown)=\"grid.navigation.focusOutRowHeader($event)\">\n </igx-grid-header-group>\n </ng-container>\n </ng-container>\n </div>\n </div>\n</div>\n<!-- Header thumb area -->\n<div class=\"igx-grid-thead__thumb\" [hidden]=\"!grid.hasVerticalScroll()\" [style.width.px]=\"grid.scrollSize\">\n</div>\n\n<igx-drop-down #dropdown (selectionChanging)='onAggregationChange($event)'>\n <igx-drop-down-item *ngFor=\"let item of aggregateList\" [selected]='isSelected(item)' [value]='item'>\n {{ item.label }}\n </igx-drop-down-item>\n</igx-drop-down>\n\n<div [hidden]='true'>\n <igx-grid-excel-style-filtering [maxHeight]='grid.excelStyleFilterMaxHeight' [minHeight]='grid.excelStyleFilterMinHeight' #esf>\n <div igxExcelStyleColumnOperations>\n <igx-chips-area #dropdownChips>\n <igx-chip *ngFor=\"let filter of this.filterDropdownDimensions\" [id]=\"filter.memberName\"\n [displayDensity]=\"grid.displayDensity\" [removable]=\"true\" (remove)=\"filterRemoved($event)\"\n (chipClick)='onFiltersSelectionChanged($event)' [selectable]='true' [selected]='filter === this.filterDropdownDimensions.values().next().value'>\n {{filter.memberName}}\n </igx-chip>\n </igx-chips-area>\n </div>\n <igx-excel-style-filter-operations>\n <igx-excel-style-search></igx-excel-style-search>\n </igx-excel-style-filter-operations>\n </igx-grid-excel-style-filtering>\n</div>\n\n<div style=\"visibility: hidden; position: absolute; top: -10000px\">\n <igx-chips-area #filterAreaHidden droppable='true'>\n <igx-chip *ngFor=\"let filter of grid.filterDimensions\" [id]=\"filter.memberName\" [draggable]=\"true\"\n [displayDensity]=\"grid.displayDensity\" [removable]=\"true\" (remove)=\"filterRemoved($event)\">\n <igx-icon igxPrefix>filter_list</igx-icon>\n {{filter.memberName}}\n </igx-chip>\n </igx-chips-area>\n</div>\n" }]
|
|
84373
|
+
args: [{ changeDetection: ChangeDetectionStrategy.OnPush, selector: 'igx-pivot-header-row', template: "<div>\n <div class=\"igx-grid-thead__wrapper igx-grid-thead__wrapper--pivot\" role=\"row\" [style.width.px]=\"width\">\n <div class=\"igx-grid__tr\" role=\"row\" [style.width.px]=\"width\">\n <div class='igx-grid__tr-pivot--filter-container'>\n <div #pivotFilterContainer *ngIf=\"grid.showPivotConfigurationUI\"\n class=\"igx-grid__tr-pivot igx-grid__tr-pivot--filter\" [style.min-width.px]=\"grid.pivotRowWidths - 1\"\n [style.max-width.px]=\"grid.pivotRowWidths - 1\" (igxDragLeave)=\"onAreaDragLeave($event, filterArea)\"\n igxDrop (dropped)=\"onDimDrop($event, filterArea, 2)\" (pointerdown)=\"$event.preventDefault()\">\n <!-- Filter area -->\n <igx-chips-area #filterArea droppable='true'>\n <span id='empty' igxDrop (dropped)=\"onDimDrop($event, filterArea, 2)\"\n *ngIf=\"grid.filterDimensions.length === 0\"\n class='igx-grid__pivot-empty-chip-area'>{{grid.resourceStrings.igx_grid_pivot_empty_filter_drop_area}}</span>\n <ng-container *ngFor=\"let filter of this.filterAreaDimensions; let last = last;\">\n <span [style.visibility]='\"hidden\"' class=\"igx-grid__tr-pivot--chip_drop_indicator\"\n [style.height.px]='getAreaHeight(filterArea)'></span>\n <igx-chip [id]=\"filter.memberName\" [draggable]=\"true\" [displayDensity]=\"grid.displayDensity\" [data]=\"{ pivotArea: 'filter' }\"\n [removable]=\"true\" (remove)=\"filterRemoved($event)\" (dragOver)=\"onDimDragOver($event, 2)\"\n (dragLeave)=\"onDimDragLeave($event)\" (dragDrop)=\"onDimDrop($event, filterArea, 2)\"\n (moveStart)='onDimDragStart($event, filterArea)' (moveEnd)='onDimDragEnd()'>\n <igx-icon igxPrefix (pointerdown)='onFilteringIconPointerDown($event)'\n (click)='onFilteringIconClick($event, filter)'>filter_list</igx-icon>\n {{filter.memberName}}\n </igx-chip>\n <ng-container *ngIf='last'>\n <span [style.visibility]='\"hidden\"' class=\"igx-grid__tr-pivot--chip_drop_indicator\"\n [style.height.px]='getAreaHeight(filterArea)'></span>\n </ng-container>\n </ng-container>\n <igx-chip igxDrop (dragDrop)=\"onDimDrop($event, filterArea, 2)\" #notifyChip [hidden]='true'\n [displayDensity]=\"grid.displayDensity\">\n {{grid.resourceStrings.igx_grid_pivot_filter_drop_chip}}\n </igx-chip>\n </igx-chips-area>\n <div class=\"igx-grid__pivot-filter-toggle\" *ngIf=\"isFiltersButton && grid.filterDimensions.length !== 0\">\n <igx-icon #filterIcon (pointerdown)='onFilteringIconPointerDown($event)' (click)='onFiltersAreaDropdownClick($event)'>filter_list</igx-icon>\n <igx-badge value=\"{{this.filterDropdownDimensions.size}}\"></igx-badge>\n </div>\n </div>\n <div class='igx-grid__tr-pivot--drop-row-area' (igxDragLeave)=\"onAreaDragLeave($event, rowArea)\" igxDrop\n (dropped)=\"onDimDrop($event, rowArea, 0)\">\n </div>\n </div>\n\n <div class=\"igx-grid__tr-pivot-group\">\n <div #pivotColumnContainer *ngIf=\"grid.showPivotConfigurationUI\" class=\"igx-grid__tr-pivot\"\n (dropped)=\"onDimDrop($event, colArea, 1)\" igxDrop (igxDragLeave)=\"onAreaDragLeave($event, colArea)\">\n <!-- Columns area -->\n <igx-chips-area #colArea droppable='true'>\n <span id='empty' (dropped)=\"onDimDrop($event, colArea, 1)\" igxDrop\n *ngIf=\"grid.columnDimensions.length === 0\" class='igx-grid__pivot-empty-chip-area'>\n {{grid.resourceStrings.igx_grid_pivot_empty_column_drop_area}}</span>\n <ng-container *ngFor=\"let col of grid.columnDimensions; let last = last;\">\n <span [style.visibility]='\"hidden\"' class=\"igx-grid__tr-pivot--chip_drop_indicator\"\n [style.height.px]='getAreaHeight(colArea)'></span>\n <igx-chip [draggable]=\"true\" [id]=\"col.memberName\" [displayDensity]=\"grid.displayDensity\" [data]=\"{ pivotArea: 'column' }\"\n [removable]=\"true\" (remove)=\"columnRemoved($event)\" (dragOver)=\"onDimDragOver($event, 1)\"\n (dragLeave)=\"onDimDragLeave($event)\" (dragDrop)=\"onDimDrop($event, colArea, 1)\"\n (moveStart)='onDimDragStart($event, colArea)' (moveEnd)='onDimDragEnd()'\n (click)=\"onChipSort($event, col)\">\n <igx-icon igxPrefix>view_column</igx-icon>\n <igx-icon igxPrefix (pointerdown)='onFilteringIconPointerDown($event)'\n (click)='onFilteringIconClick($event, col)'>filter_list</igx-icon>\n {{col.memberName}}\n <igx-icon *ngIf=\"col.sortDirection\" igxSuffix> {{ col.sortDirection < 2 ? 'arrow_upward'\n : 'arrow_downward' }}</igx-icon>\n </igx-chip>\n <ng-container *ngIf='last'>\n <span [style.visibility]='\"hidden\"' class=\"igx-grid__tr-pivot--chip_drop_indicator\"\n [style.height.px]='getAreaHeight(colArea)'></span>\n </ng-container>\n </ng-container>\n <igx-chip igxDrop (dragDrop)=\"onDimDrop($event, colArea, 1)\" #notifyChip [hidden]='true'\n [displayDensity]=\"grid.displayDensity\">\n {{grid.resourceStrings.igx_grid_pivot_column_drop_chip}}\n </igx-chip>\n </igx-chips-area>\n </div>\n\n <div #pivotValueContainer *ngIf=\"grid.showPivotConfigurationUI\" class=\"igx-grid__tr-pivot\"\n (pointerdown)=\"$event.preventDefault()\" (dropped)=\"onValueDrop($event, valueArea)\" igxDrop\n (igxDragLeave)=\"onAreaDragLeave($event, valueArea)\">\n <!-- Value area -->\n <igx-chips-area #valueArea droppable='true'>\n <span id='empty' (dropped)=\"onValueDrop($event, valueArea)\" igxDrop *ngIf=\"grid.values.length === 0\"\n class='igx-grid__pivot-empty-chip-area'>{{grid.resourceStrings.igx_grid_pivot_empty_value_drop_area}}</span>\n <ng-container *ngFor=\"let value of grid.values; let last = last;\">\n <span [style.visibility]='\"hidden\"' class=\"igx-grid__tr-pivot--chip_drop_indicator\"\n [style.height.px]='getAreaHeight(valueArea)'></span>\n <igx-chip #currChip [draggable]=\"true\" [id]=\"value.displayName || value.member\" [data]=\"{ pivotArea: 'value' }\"\n [displayDensity]=\"grid.displayDensity\" [removable]=\"true\" (remove)=\"valueRemoved($event)\"\n (dragLeave)=\"onDimDragLeave($event)\" (dragOver)=\"onDimDragOver($event)\"\n (dragDrop)=\"onValueDrop($event, valueArea)\">\n <div class=\"igx-grid__tr-pivot-toggle-icons\" igxPrefix\n (click)='onSummaryClick($event, value, dropdown, currChip)'\n (pointerdown)='$event.stopPropagation()' [igxDropDownItemNavigation]=\"dropdown\">\n <igx-icon>functions</igx-icon>\n <igx-icon>arrow_drop_down</igx-icon>\n </div>\n {{value.aggregate.key}}({{value.displayName || value.member}})\n </igx-chip>\n <ng-container *ngIf='last'>\n <span [style.visibility]='\"hidden\"' class=\"igx-grid__tr-pivot--chip_drop_indicator\"\n [style.height.px]='getAreaHeight(valueArea)'></span>\n </ng-container>\n </ng-container>\n <igx-chip igxDrop (dragDrop)=\"onValueDrop($event, valueArea)\" #notifyValueChip [hidden]='true'\n [displayDensity]=\"grid.displayDensity\">\n {{grid.resourceStrings.igx_grid_pivot_value_drop_chip}}\n </igx-chip>\n </igx-chips-area>\n </div>\n </div>\n </div>\n </div>\n <div role=\"rowgroup\" class=\"igx-grid-thead__wrapper\" [style.width.px]=\"width\"\n [attr.aria-activedescendant]=\"activeDescendant\" [class.igx-grid__tr--mrl]=\"hasMRL\">\n\n <!-- Column headers area -->\n <div class=\"igx-grid__tr\" role=\"row\" [style.width.px]=\"width\">\n <div #pivotContainer class=\"igx-grid__tr-pivot igx-grid__tr-pivot--row-area\"\n [style.width.px]=\"grid.pivotRowWidths - 1\" (igxDragLeave)=\"onAreaDragLeave($event, rowArea)\" igxDrop\n (dropped)=\"onDimDrop($event, rowArea, 0)\" (pointerdown)=\"$event.preventDefault()\">\n <!-- Row area -->\n <igx-chips-area #rowArea droppable='true'>\n <ng-container *ngIf=\"grid.showPivotConfigurationUI\">\n <span id='empty' igxDrop (dropped)=\"onDimDrop($event, rowArea, 0)\"\n *ngIf=\"grid.rowDimensions.length === 0 && grid.showPivotConfigurationUI\"\n class='igx-grid__pivot-empty-chip-area'>{{grid.resourceStrings.igx_grid_pivot_empty_row_drop_area}}</span>\n <ng-container *ngFor=\"let row of grid.rowDimensions; let last = last;\">\n <span [style.visibility]='\"hidden\"' class=\"igx-grid__tr-pivot--chip_drop_indicator\"\n [style.height.px]='getAreaHeight(rowArea)'></span>\n <igx-chip [draggable]=\"true\" [id]=\"row.memberName\" [displayDensity]=\"grid.displayDensity\" [data]=\"{ pivotArea: 'row' }\"\n [removable]=\"true\" (remove)=\"rowRemoved($event)\" (dragLeave)=\"onDimDragLeave($event)\"\n (dragDrop)=\"onDimDrop($event, rowArea, 0)\" (dragOver)=\"onDimDragOver($event, 0)\"\n (moveStart)='onDimDragStart($event, rowArea)' (moveEnd)='onDimDragEnd()'\n (click)=\"onChipSort($event, row)\">\n <igx-icon igxPrefix>table_rows</igx-icon>\n <igx-icon igxPrefix (pointerdown)='onFilteringIconPointerDown($event)'\n (click)='onFilteringIconClick($event, row)'>filter_list</igx-icon>\n {{ row.memberName}}\n <igx-icon *ngIf=\"row.sortDirection\" igxSuffix> {{ row.sortDirection < 2 ? 'arrow_upward'\n : 'arrow_downward' }}</igx-icon>\n </igx-chip>\n <ng-container *ngIf='last'>\n <span [style.visibility]='\"hidden\"' class=\"igx-grid__tr-pivot--chip_drop_indicator\"\n [style.height.px]='getAreaHeight(rowArea)'></span>\n </ng-container>\n </ng-container>\n <igx-chip igxDrop (dragDrop)=\"onDimDrop($event, rowArea, 0)\" #notifyChip [hidden]='true'\n [displayDensity]=\"grid.displayDensity\">\n {{grid.resourceStrings.igx_grid_pivot_row_drop_chip}}\n </igx-chip>\n </ng-container>\n </igx-chips-area>\n </div>\n\n <!-- Pinned columns collection from the start -->\n <ng-container *ngIf=\"pinnedColumnCollection.length && grid.isPinningToStart\">\n <ng-container *ngFor=\"let column of pinnedColumnCollection | igxTopLevel\">\n <igx-grid-header-group [ngClass]=\"column.headerGroupClasses\"\n [ngStyle]=\"column.headerGroupStyles | igxHeaderGroupStyle:column:grid.pipeTrigger\" [column]=\"column\"\n [style.min-width]=\"column.calcWidth | igxHeaderGroupWidth:grid.defaultHeaderGroupMinWidth:hasMRL\"\n [style.flex-basis]=\"column.calcWidth | igxHeaderGroupWidth:grid.defaultHeaderGroupMinWidth:hasMRL\"\n (pointerdown)=\"grid.navigation.focusOutRowHeader($event)\">\n </igx-grid-header-group>\n </ng-container>\n </ng-container>\n <div class=\"igx-grid-thead--virtualizationWrapper\" [style.max-height.px]='maxContainerHeight'>\n <div class=\"igx-grid-thead__group igx-grid-thead--virtualizationContainer\" [style.height.px]='totalDepth > 1 ? grid.rowHeight : undefined' *ngFor='let dimLevelColumns of columnDimensionsByLevel; let i = index' [style.width.px]='grid.unpinnedWidth'>\n <ng-template igxGridFor #headerVirtualContainer let-column\n [igxGridForOf]=\"dimLevelColumns\" [igxGridForOfUniqueSizeCache] = 'true' [igxForScrollContainer]=\"grid.parentVirtDir\"\n [igxForContainerSize]=\"grid.unpinnedWidth\" [igxForTrackBy]=\"grid.trackColumnChanges\"\n [igxForSizePropName]=\"'calcPixelWidth'\" [igxForScrollOrientation]=\"'horizontal'\">\n <igx-grid-header-group [ngClass]=\"column.headerGroupClasses\"\n [style.height.px]='totalDepth > 1 ? calcHeight(column, i) : undefined'\n [ngStyle]=\"column.headerGroupStyles |igxHeaderGroupStyle:column:grid.pipeTrigger\" [column]=\"column\"\n [style.min-width]=\"column.calcWidth | igxHeaderGroupWidth:grid.defaultHeaderGroupMinWidth:hasMRL\"\n [style.flex-basis]=\"column.calcWidth | igxHeaderGroupWidth:grid.defaultHeaderGroupMinWidth:hasMRL\"\n [class.igx-grid__tr-pivot--columnDimensionLeaf] = 'isDuplicateOfExistingParent(column, i)'\n [class.igx-grid__tr-pivot--columnMultiRowSpan] = 'isMultiRow(column, i)'\n >\n </igx-grid-header-group>\n </ng-template>\n </div>\n </div>\n\n <!-- Pinned columns collection at the end -->\n <ng-container *ngIf=\"pinnedColumnCollection.length && !grid.isPinningToStart\">\n <ng-container *ngFor=\"let column of pinnedColumnCollection | igxTopLevel\">\n <igx-grid-header-group [ngClass]=\"column.headerGroupClasses\"\n [ngStyle]=\"column.headerGroupStyles |igxHeaderGroupStyle:column:grid.pipeTrigger\" [column]=\"column\"\n [style.min-width]=\"column.calcWidth | igxHeaderGroupWidth:grid.defaultHeaderGroupMinWidth:hasMRL\"\n [style.flex-basis]=\"column.calcWidth | igxHeaderGroupWidth:grid.defaultHeaderGroupMinWidth:hasMRL\"\n [style.left]=\"column.rightPinnedOffset\" (pointerdown)=\"grid.navigation.focusOutRowHeader($event)\">\n </igx-grid-header-group>\n </ng-container>\n </ng-container>\n </div>\n </div>\n</div>\n<!-- Header thumb area -->\n<div class=\"igx-grid-thead__thumb\" [hidden]=\"!grid.hasVerticalScroll()\" [style.width.px]=\"grid.scrollSize\">\n</div>\n\n<igx-drop-down #dropdown (selectionChanging)='onAggregationChange($event)'>\n <igx-drop-down-item *ngFor=\"let item of aggregateList\" [selected]='isSelected(item)' [value]='item'>\n {{ item.label }}\n </igx-drop-down-item>\n</igx-drop-down>\n\n<div [hidden]='true'>\n <igx-grid-excel-style-filtering [maxHeight]='grid.excelStyleFilterMaxHeight' [minHeight]='grid.excelStyleFilterMinHeight' #esf>\n <div igxExcelStyleColumnOperations>\n <igx-chips-area #dropdownChips>\n <igx-chip *ngFor=\"let filter of this.filterDropdownDimensions\" [id]=\"filter.memberName\"\n [displayDensity]=\"grid.displayDensity\" [removable]=\"true\" (remove)=\"filterRemoved($event)\"\n (chipClick)='onFiltersSelectionChanged($event)' [selectable]='true' [selected]='filter === this.filterDropdownDimensions.values().next().value'>\n {{filter.memberName}}\n </igx-chip>\n </igx-chips-area>\n </div>\n <igx-excel-style-filter-operations>\n <igx-excel-style-search></igx-excel-style-search>\n </igx-excel-style-filter-operations>\n </igx-grid-excel-style-filtering>\n</div>\n\n<div style=\"visibility: hidden; position: absolute; top: -10000px\">\n <igx-chips-area #filterAreaHidden droppable='true'>\n <igx-chip *ngFor=\"let filter of grid.filterDimensions\" [id]=\"filter.memberName\" [draggable]=\"true\"\n [displayDensity]=\"grid.displayDensity\" [removable]=\"true\" (remove)=\"filterRemoved($event)\">\n <igx-icon igxPrefix>filter_list</igx-icon>\n {{filter.memberName}}\n </igx-chip>\n </igx-chips-area>\n</div>\n" }]
|
|
84400
84374
|
}], ctorParameters: function () {
|
|
84401
84375
|
return [{ type: undefined, decorators: [{
|
|
84402
84376
|
type: Inject,
|
|
@@ -84765,7 +84739,6 @@ class IgxPivotRowDimensionContentComponent extends IgxGridHeaderRowComponent {
|
|
|
84765
84739
|
* @internal
|
|
84766
84740
|
*/
|
|
84767
84741
|
ngOnChanges(changes) {
|
|
84768
|
-
const rowDimConfig = this.grid.rowDimensions;
|
|
84769
84742
|
if (changes.rowData) {
|
|
84770
84743
|
// generate new rowDimension on row data change
|
|
84771
84744
|
this.rowDimensionData = null;
|
|
@@ -84782,23 +84755,23 @@ class IgxPivotRowDimensionContentComponent extends IgxGridHeaderRowComponent {
|
|
|
84782
84755
|
* @hidden
|
|
84783
84756
|
* @internal
|
|
84784
84757
|
*/
|
|
84785
|
-
toggleRowDimension(event
|
|
84786
|
-
this.grid.toggleRow(this.getRowDimensionKey(
|
|
84758
|
+
toggleRowDimension(event) {
|
|
84759
|
+
this.grid.toggleRow(this.getRowDimensionKey());
|
|
84787
84760
|
event === null || event === void 0 ? void 0 : event.stopPropagation();
|
|
84788
84761
|
}
|
|
84789
84762
|
/**
|
|
84790
84763
|
* @hidden
|
|
84791
84764
|
* @internal
|
|
84792
84765
|
*/
|
|
84793
|
-
getRowDimensionKey(
|
|
84766
|
+
getRowDimensionKey() {
|
|
84794
84767
|
const dimData = this.rowDimensionData;
|
|
84795
84768
|
const key = PivotUtil.getRecordKey(this.rowData, dimData.dimension);
|
|
84796
84769
|
return key;
|
|
84797
84770
|
}
|
|
84798
|
-
getExpandState(
|
|
84799
|
-
return this.grid.gridAPI.get_row_expansion_state(this.getRowDimensionKey(
|
|
84771
|
+
getExpandState() {
|
|
84772
|
+
return this.grid.gridAPI.get_row_expansion_state(this.getRowDimensionKey());
|
|
84800
84773
|
}
|
|
84801
|
-
getLevel(
|
|
84774
|
+
getLevel() {
|
|
84802
84775
|
return this.dimension.level;
|
|
84803
84776
|
}
|
|
84804
84777
|
get rowSpan() {
|
|
@@ -84839,10 +84812,10 @@ class IgxPivotRowDimensionContentComponent extends IgxGridHeaderRowComponent {
|
|
|
84839
84812
|
}
|
|
84840
84813
|
}
|
|
84841
84814
|
IgxPivotRowDimensionContentComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: IgxPivotRowDimensionContentComponent, deps: [{ token: IGX_GRID_BASE }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i0.ComponentFactoryResolver }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
84842
|
-
IgxPivotRowDimensionContentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.2", type: IgxPivotRowDimensionContentComponent, selector: "igx-pivot-row-dimension-content", inputs: { rowIndex: "rowIndex", dimension: "dimension", rootDimension: "rootDimension", rowData: "rowData" }, viewQueries: [{ propertyName: "headerTemplate", first: true, predicate: ["headerTemplate"], descendants: true, read: TemplateRef, static: true }, { propertyName: "headerTemplateDefault", first: true, predicate: ["headerDefaultTemplate"], descendants: true, read: TemplateRef, static: true }, { propertyName: "headerGroups", predicate: IgxPivotRowDimensionHeaderGroupComponent, descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div role=\"rowgroup\" class=\"igx-grid-thead__wrapper\" [style.width.px]=\"width\"\n [class.igx-grid__tr--mrl]=\"hasMRL\">\n <div class=\"igx-grid__tr igx-grid__tr-header-row\" role=\"row\" [style.width.px]=\"width\">\n <igx-pivot-row-dimension-header-group [ngClass]=\"rowDimensionColumn.headerGroupClasses\"\n [ngStyle]=\"rowDimensionColumn.headerGroupStyles |igxHeaderGroupStyle:rowDimensionColumn:grid.pipeTrigger\" [column]=\"rowDimensionColumn\"\n [style.min-width]=\"grid.rowDimensionWidthToPixels(rootDimension) | igxHeaderGroupWidth:grid.defaultHeaderGroupMinWidth:hasMRL\"\n [style.flex-basis]=\"grid.rowDimensionWidthToPixels(rootDimension) | igxHeaderGroupWidth:grid.defaultHeaderGroupMinWidth:hasMRL\"\n [rowIndex]=\"rowIndex\"\n [style.height.px]='headerHeight' [parent]='this'>\n </igx-pivot-row-dimension-header-group>\n </div>\n</div>\n\n<ng-template #headerTemplate let-column>\n <div class='igx-grid__tr--header igx-grid__row-indentation--level-{{dimension.level}}'>\n <igx-icon [attr.draggable]=\" false\" (click)=\"toggleRowDimension($event
|
|
84815
|
+
IgxPivotRowDimensionContentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.2", type: IgxPivotRowDimensionContentComponent, selector: "igx-pivot-row-dimension-content", inputs: { rowIndex: "rowIndex", dimension: "dimension", rootDimension: "rootDimension", rowData: "rowData" }, viewQueries: [{ propertyName: "headerTemplate", first: true, predicate: ["headerTemplate"], descendants: true, read: TemplateRef, static: true }, { propertyName: "headerTemplateDefault", first: true, predicate: ["headerDefaultTemplate"], descendants: true, read: TemplateRef, static: true }, { propertyName: "headerGroups", predicate: IgxPivotRowDimensionHeaderGroupComponent, descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div role=\"rowgroup\" class=\"igx-grid-thead__wrapper\" [style.width.px]=\"width\"\n [class.igx-grid__tr--mrl]=\"hasMRL\">\n <div class=\"igx-grid__tr igx-grid__tr-header-row\" role=\"row\" [style.width.px]=\"width\">\n <igx-pivot-row-dimension-header-group [ngClass]=\"rowDimensionColumn.headerGroupClasses\"\n [ngStyle]=\"rowDimensionColumn.headerGroupStyles | igxHeaderGroupStyle:rowDimensionColumn:grid.pipeTrigger\" [column]=\"rowDimensionColumn\"\n [style.min-width]=\"grid.rowDimensionWidthToPixels(rootDimension) | igxHeaderGroupWidth:grid.defaultHeaderGroupMinWidth:hasMRL\"\n [style.flex-basis]=\"grid.rowDimensionWidthToPixels(rootDimension) | igxHeaderGroupWidth:grid.defaultHeaderGroupMinWidth:hasMRL\"\n [rowIndex]=\"rowIndex\"\n [style.height.px]='headerHeight' [parent]='this'>\n </igx-pivot-row-dimension-header-group>\n </div>\n</div>\n\n<ng-template #headerTemplate let-column>\n <div class='igx-grid__tr--header igx-grid__row-indentation--level-{{dimension.level}}'>\n <igx-icon [attr.draggable]=\" false\" (click)=\"toggleRowDimension($event)\">\n {{ getExpandState() ? 'expand_more' : 'chevron_right'}}</igx-icon>\n {{column.header}}\n </div>\n</ng-template>\n\n<ng-template #headerDefaultTemplate let-column>\n\n <div class='igx-grid__tr--header igx-grid__row-indentation--level-{{dimension.level}}'>\n <igx-icon style='flex-shrink: 0;' [attr.draggable]=\" false\">\n </igx-icon>\n {{column.header}}\n </div>\n</ng-template>\n", components: [{ type: IgxPivotRowDimensionHeaderGroupComponent, selector: "igx-pivot-row-dimension-header-group", inputs: ["rowIndex", "parent"] }, { type: IgxIconComponent, selector: "igx-icon", inputs: ["family", "active", "name"] }], directives: [{ type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i4.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], pipes: { "igxHeaderGroupStyle": IgxHeaderGroupStylePipe, "igxHeaderGroupWidth": IgxHeaderGroupWidthPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
84843
84816
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: IgxPivotRowDimensionContentComponent, decorators: [{
|
|
84844
84817
|
type: Component,
|
|
84845
|
-
args: [{ changeDetection: ChangeDetectionStrategy.OnPush, selector: 'igx-pivot-row-dimension-content', template: "<div role=\"rowgroup\" class=\"igx-grid-thead__wrapper\" [style.width.px]=\"width\"\n [class.igx-grid__tr--mrl]=\"hasMRL\">\n <div class=\"igx-grid__tr igx-grid__tr-header-row\" role=\"row\" [style.width.px]=\"width\">\n <igx-pivot-row-dimension-header-group [ngClass]=\"rowDimensionColumn.headerGroupClasses\"\n [ngStyle]=\"rowDimensionColumn.headerGroupStyles |igxHeaderGroupStyle:rowDimensionColumn:grid.pipeTrigger\" [column]=\"rowDimensionColumn\"\n [style.min-width]=\"grid.rowDimensionWidthToPixels(rootDimension) | igxHeaderGroupWidth:grid.defaultHeaderGroupMinWidth:hasMRL\"\n [style.flex-basis]=\"grid.rowDimensionWidthToPixels(rootDimension) | igxHeaderGroupWidth:grid.defaultHeaderGroupMinWidth:hasMRL\"\n [rowIndex]=\"rowIndex\"\n [style.height.px]='headerHeight' [parent]='this'>\n </igx-pivot-row-dimension-header-group>\n </div>\n</div>\n\n<ng-template #headerTemplate let-column>\n <div class='igx-grid__tr--header igx-grid__row-indentation--level-{{dimension.level}}'>\n <igx-icon [attr.draggable]=\" false\" (click)=\"toggleRowDimension($event
|
|
84818
|
+
args: [{ changeDetection: ChangeDetectionStrategy.OnPush, selector: 'igx-pivot-row-dimension-content', template: "<div role=\"rowgroup\" class=\"igx-grid-thead__wrapper\" [style.width.px]=\"width\"\n [class.igx-grid__tr--mrl]=\"hasMRL\">\n <div class=\"igx-grid__tr igx-grid__tr-header-row\" role=\"row\" [style.width.px]=\"width\">\n <igx-pivot-row-dimension-header-group [ngClass]=\"rowDimensionColumn.headerGroupClasses\"\n [ngStyle]=\"rowDimensionColumn.headerGroupStyles | igxHeaderGroupStyle:rowDimensionColumn:grid.pipeTrigger\" [column]=\"rowDimensionColumn\"\n [style.min-width]=\"grid.rowDimensionWidthToPixels(rootDimension) | igxHeaderGroupWidth:grid.defaultHeaderGroupMinWidth:hasMRL\"\n [style.flex-basis]=\"grid.rowDimensionWidthToPixels(rootDimension) | igxHeaderGroupWidth:grid.defaultHeaderGroupMinWidth:hasMRL\"\n [rowIndex]=\"rowIndex\"\n [style.height.px]='headerHeight' [parent]='this'>\n </igx-pivot-row-dimension-header-group>\n </div>\n</div>\n\n<ng-template #headerTemplate let-column>\n <div class='igx-grid__tr--header igx-grid__row-indentation--level-{{dimension.level}}'>\n <igx-icon [attr.draggable]=\" false\" (click)=\"toggleRowDimension($event)\">\n {{ getExpandState() ? 'expand_more' : 'chevron_right'}}</igx-icon>\n {{column.header}}\n </div>\n</ng-template>\n\n<ng-template #headerDefaultTemplate let-column>\n\n <div class='igx-grid__tr--header igx-grid__row-indentation--level-{{dimension.level}}'>\n <igx-icon style='flex-shrink: 0;' [attr.draggable]=\" false\">\n </igx-icon>\n {{column.header}}\n </div>\n</ng-template>\n" }]
|
|
84846
84819
|
}], ctorParameters: function () {
|
|
84847
84820
|
return [{ type: undefined, decorators: [{
|
|
84848
84821
|
type: Inject,
|
|
@@ -84867,6 +84840,29 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImpor
|
|
|
84867
84840
|
args: [IgxPivotRowDimensionHeaderGroupComponent]
|
|
84868
84841
|
}] } });
|
|
84869
84842
|
|
|
84843
|
+
class PivotSortUtil {
|
|
84844
|
+
static generateDimensionSortingExpressions(dimensions) {
|
|
84845
|
+
const expressions = [];
|
|
84846
|
+
PivotUtil.flatten(dimensions).forEach(x => {
|
|
84847
|
+
if (x.sortDirection) {
|
|
84848
|
+
expressions.push({
|
|
84849
|
+
dir: x.sortDirection,
|
|
84850
|
+
fieldName: x.memberName,
|
|
84851
|
+
strategy: DefaultPivotSortingStrategy.instance()
|
|
84852
|
+
});
|
|
84853
|
+
}
|
|
84854
|
+
else {
|
|
84855
|
+
expressions.push({
|
|
84856
|
+
dir: SortingDirection.None,
|
|
84857
|
+
fieldName: x.memberName,
|
|
84858
|
+
strategy: DefaultPivotSortingStrategy.instance()
|
|
84859
|
+
});
|
|
84860
|
+
}
|
|
84861
|
+
});
|
|
84862
|
+
return expressions;
|
|
84863
|
+
}
|
|
84864
|
+
}
|
|
84865
|
+
|
|
84870
84866
|
const MINIMUM_COLUMN_WIDTH$1 = 200;
|
|
84871
84867
|
class IgxPivotRowComponent extends IgxRowDirective {
|
|
84872
84868
|
constructor(grid, selectionService, element, cdr, resolver, viewRef) {
|
|
@@ -85168,8 +85164,6 @@ class IgxPivotCellMergingPipe {
|
|
|
85168
85164
|
const res = [];
|
|
85169
85165
|
const enabledRows = (_a = config.rows) === null || _a === void 0 ? void 0 : _a.filter(x => x.enabled);
|
|
85170
85166
|
let groupData = [];
|
|
85171
|
-
let prevDim;
|
|
85172
|
-
let prevDimRoot;
|
|
85173
85167
|
let prevId;
|
|
85174
85168
|
const index = enabledRows.indexOf(dim);
|
|
85175
85169
|
for (let rec of data) {
|
|
@@ -85183,8 +85177,6 @@ class IgxPivotCellMergingPipe {
|
|
|
85183
85177
|
groupData = [];
|
|
85184
85178
|
}
|
|
85185
85179
|
groupData.push(rec);
|
|
85186
|
-
prevDim = currentDim;
|
|
85187
|
-
prevDimRoot = dim;
|
|
85188
85180
|
prevId = id;
|
|
85189
85181
|
}
|
|
85190
85182
|
if (groupData.length > 0) {
|
|
@@ -85267,7 +85259,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImpor
|
|
|
85267
85259
|
* @hidden
|
|
85268
85260
|
*/
|
|
85269
85261
|
class IgxPivotGridColumnSortingPipe {
|
|
85270
|
-
transform(collection, expressions, sorting,
|
|
85262
|
+
transform(collection, expressions, sorting, _pipeTrigger) {
|
|
85271
85263
|
let result;
|
|
85272
85264
|
if (!expressions.length) {
|
|
85273
85265
|
result = collection;
|
|
@@ -85297,11 +85289,11 @@ class IgxPivotGridSortingPipe {
|
|
|
85297
85289
|
constructor(gridAPI) {
|
|
85298
85290
|
this.gridAPI = gridAPI;
|
|
85299
85291
|
}
|
|
85300
|
-
transform(collection, config, sorting,
|
|
85292
|
+
transform(collection, config, sorting, _pipeTrigger) {
|
|
85301
85293
|
let result;
|
|
85302
85294
|
const allDimensions = config.rows || [];
|
|
85303
85295
|
const enabledDimensions = allDimensions.filter(x => x && x.enabled);
|
|
85304
|
-
const expressions =
|
|
85296
|
+
const expressions = PivotSortUtil.generateDimensionSortingExpressions(enabledDimensions);
|
|
85305
85297
|
if (!expressions.length) {
|
|
85306
85298
|
result = collection;
|
|
85307
85299
|
}
|
|
@@ -85373,8 +85365,8 @@ const MINIMUM_COLUMN_WIDTH_SUPER_COMPACT = 104;
|
|
|
85373
85365
|
* ```
|
|
85374
85366
|
*/
|
|
85375
85367
|
class IgxPivotGridComponent extends IgxGridBaseDirective {
|
|
85376
|
-
constructor(selectionService, colResizingService, gridAPI, transactionFactory, elementRef, zone, document, cdr, resolver, differs, viewRef, appRef, moduleRef,
|
|
85377
|
-
super(selectionService, colResizingService, gridAPI, transactionFactory, elementRef, zone, document, cdr, resolver, differs, viewRef, appRef, moduleRef,
|
|
85368
|
+
constructor(selectionService, colResizingService, gridAPI, transactionFactory, elementRef, zone, document, cdr, resolver, differs, viewRef, appRef, moduleRef, injector, navigation, filteringService, overlayService, summaryService, _displayDensityOptions, localeId, platform, _diTransactions) {
|
|
85369
|
+
super(selectionService, colResizingService, gridAPI, transactionFactory, elementRef, zone, document, cdr, resolver, differs, viewRef, appRef, moduleRef, injector, navigation, filteringService, overlayService, summaryService, _displayDensityOptions, localeId, platform);
|
|
85378
85370
|
this.selectionService = selectionService;
|
|
85379
85371
|
this.colResizingService = colResizingService;
|
|
85380
85372
|
this.transactionFactory = transactionFactory;
|
|
@@ -85526,6 +85518,7 @@ class IgxPivotGridComponent extends IgxGridBaseDirective {
|
|
|
85526
85518
|
*/
|
|
85527
85519
|
this._emptyRowDimension = { memberName: '', enabled: true, level: 0 };
|
|
85528
85520
|
this._defaultExpandState = false;
|
|
85521
|
+
this._filterStrategy = new DimensionValuesFilteringStrategy();
|
|
85529
85522
|
this._pivotConfiguration = { rows: null, columns: null, values: null, filters: null };
|
|
85530
85523
|
this.p_id = `igx-pivot-grid-${NEXT_ID++}`;
|
|
85531
85524
|
this._superCompactMode = false;
|
|
@@ -85914,7 +85907,6 @@ class IgxPivotGridComponent extends IgxGridBaseDirective {
|
|
|
85914
85907
|
this.cdr.detectChanges();
|
|
85915
85908
|
}
|
|
85916
85909
|
uniqueDimensionValuesStrategy(column, exprTree, done) {
|
|
85917
|
-
const config = this.pivotConfiguration;
|
|
85918
85910
|
const enabledDimensions = this.allDimensions.filter(x => x && x.enabled);
|
|
85919
85911
|
const dim = PivotUtil.flatten(enabledDimensions).find(x => x.memberName === column.field);
|
|
85920
85912
|
if (dim) {
|
|
@@ -86594,7 +86586,7 @@ class IgxPivotGridComponent extends IgxGridBaseDirective {
|
|
|
86594
86586
|
dim.childLevel.sortDirection = dimension.sortDirection;
|
|
86595
86587
|
dim = dim.childLevel;
|
|
86596
86588
|
}
|
|
86597
|
-
const dimensionsSortingExpressions =
|
|
86589
|
+
const dimensionsSortingExpressions = PivotSortUtil.generateDimensionSortingExpressions(this.rowDimensions);
|
|
86598
86590
|
this.pipeTrigger++;
|
|
86599
86591
|
this.dimensionsSortingExpressionsChange.emit(dimensionsSortingExpressions);
|
|
86600
86592
|
if (dimensionType === PivotDimensionType.Column) {
|
|
@@ -86764,9 +86756,7 @@ class IgxPivotGridComponent extends IgxGridBaseDirective {
|
|
|
86764
86756
|
* @hidden
|
|
86765
86757
|
*/
|
|
86766
86758
|
autogenerateColumns() {
|
|
86767
|
-
var _a;
|
|
86768
86759
|
let columns = [];
|
|
86769
|
-
this.filterStrategy = (_a = this.filterStrategy) !== null && _a !== void 0 ? _a : new DimensionValuesFilteringStrategy();
|
|
86770
86760
|
const data = this.gridAPI.filterDataByExpressions(this.filteringExpressionsTree);
|
|
86771
86761
|
this.dimensionDataColumns = this.generateDimensionColumns();
|
|
86772
86762
|
let fieldsMap;
|
|
@@ -86841,7 +86831,6 @@ class IgxPivotGridComponent extends IgxGridBaseDirective {
|
|
|
86841
86831
|
}
|
|
86842
86832
|
generateColumnHierarchy(fields, data, parent = null) {
|
|
86843
86833
|
const factoryColumn = this.resolver.resolveComponentFactory(IgxColumnComponent);
|
|
86844
|
-
const factoryColumnGroup = this.resolver.resolveComponentFactory(IgxColumnGroupComponent);
|
|
86845
86834
|
let columns = [];
|
|
86846
86835
|
if (fields.size === 0) {
|
|
86847
86836
|
this.values.forEach((value) => {
|
|
@@ -86870,7 +86859,7 @@ class IgxPivotGridComponent extends IgxGridBaseDirective {
|
|
|
86870
86859
|
const sorted = DataUtil.sort(cloneArray(entries, true), expressions, this.sortStrategy, this.gridAPI.grid);
|
|
86871
86860
|
currentFields = new Map(sorted);
|
|
86872
86861
|
}
|
|
86873
|
-
currentFields.forEach((value
|
|
86862
|
+
currentFields.forEach((value) => {
|
|
86874
86863
|
var _a;
|
|
86875
86864
|
let shouldGenerate = true;
|
|
86876
86865
|
if (value.dimension && value.dimension.filter) {
|
|
@@ -86991,7 +86980,7 @@ class IgxPivotGridComponent extends IgxGridBaseDirective {
|
|
|
86991
86980
|
super.template;
|
|
86992
86981
|
}
|
|
86993
86982
|
}
|
|
86994
|
-
IgxPivotGridComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: IgxPivotGridComponent, deps: [{ token: IgxGridSelectionService }, { token: IgxPivotColumnResizingService }, { token: GridBaseAPIService }, { token: IgxFlatTransactionFactory }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: DOCUMENT }, { token: i0.ChangeDetectorRef }, { token: i0.ComponentFactoryResolver }, { token: i0.IterableDiffers }, { token: i0.ViewContainerRef }, { token: i0.ApplicationRef }, { token: i0.NgModuleRef }, { token: i0.
|
|
86983
|
+
IgxPivotGridComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: IgxPivotGridComponent, deps: [{ token: IgxGridSelectionService }, { token: IgxPivotColumnResizingService }, { token: GridBaseAPIService }, { token: IgxFlatTransactionFactory }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: DOCUMENT }, { token: i0.ChangeDetectorRef }, { token: i0.ComponentFactoryResolver }, { token: i0.IterableDiffers }, { token: i0.ViewContainerRef }, { token: i0.ApplicationRef }, { token: i0.NgModuleRef }, { token: i0.Injector }, { token: IgxPivotGridNavigationService }, { token: IgxFilteringService }, { token: IgxOverlayService }, { token: IgxGridSummaryService }, { token: DisplayDensityToken, optional: true }, { token: LOCALE_ID }, { token: PlatformUtil }, { token: IgxGridTransaction, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
86995
86984
|
IgxPivotGridComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.2", type: IgxPivotGridComponent, selector: "igx-pivot-grid", inputs: { pivotConfiguration: "pivotConfiguration", showPivotConfigurationUI: "showPivotConfigurationUI", superCompactMode: "superCompactMode", displayDensity: "displayDensity", addRowEmptyTemplate: "addRowEmptyTemplate", snackbarDisplayTime: "snackbarDisplayTime", defaultExpandState: "defaultExpandState", pagingMode: "pagingMode", hideRowSelectors: "hideRowSelectors", rowDraggable: "rowDraggable", allowAdvancedFiltering: "allowAdvancedFiltering", filterMode: "filterMode", allowFiltering: "allowFiltering", page: "page", paging: "paging", perPage: "perPage", summaryRowHeight: "summaryRowHeight", rowEditable: "rowEditable", pinning: "pinning", summaryPosition: "summaryPosition", summaryCalculationMode: "summaryCalculationMode", showSummaryOnCollapse: "showSummaryOnCollapse", batchEditing: "batchEditing", id: "id", data: "data", totalRecords: "totalRecords", emptyPivotGridTemplate: "emptyPivotGridTemplate" }, outputs: { dimensionsChange: "dimensionsChange", dimensionsSortingExpressionsChange: "dimensionsSortingExpressionsChange", valuesChange: "valuesChange", cellEdit: "cellEdit", cellEditDone: "cellEditDone", cellEditEnter: "cellEditEnter", cellEditExit: "cellEditExit", columnMovingStart: "columnMovingStart", columnMoving: "columnMoving", columnMovingEnd: "columnMovingEnd", columnPin: "columnPin", columnPinned: "columnPinned", rowAdd: "rowAdd", rowAdded: "rowAdded", rowDeleted: "rowDeleted", rowDelete: "rowDelete", rowDragStart: "rowDragStart", rowDragEnd: "rowDragEnd", rowEditEnter: "rowEditEnter", rowEdit: "rowEdit", rowEditDone: "rowEditDone", rowEditExit: "rowEditExit", rowPinning: "rowPinning", rowPinned: "rowPinned" }, host: { properties: { "attr.role": "this.role", "class.igx-grid__pivot--super-compact": "this.superCompactMode", "attr.id": "this.id" } }, providers: [
|
|
86996
86985
|
IgxGridCRUDService,
|
|
86997
86986
|
IgxGridSummaryService,
|
|
@@ -87003,7 +86992,7 @@ IgxPivotGridComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0",
|
|
|
87003
86992
|
IgxPivotColumnResizingService,
|
|
87004
86993
|
IgxForOfSyncService,
|
|
87005
86994
|
IgxForOfScrollSyncService
|
|
87006
|
-
], viewQueries: [{ propertyName: "theadRow", first: true, predicate: IgxPivotHeaderRowComponent, descendants: true, static: true }, { propertyName: "recordTemplate", first: true, predicate: ["record_template"], descendants: true, read: TemplateRef, static: true }, { propertyName: "headerTemplate", first: true, predicate: ["headerTemplate"], descendants: true, read: TemplateRef, static: true }, { propertyName: "resizeLine", first: true, predicate: IgxPivotGridColumnResizerComponent, descendants: true }, { propertyName: "defaultEmptyPivotGridTemplate", first: true, predicate: ["emptyPivotGridTemplate"], descendants: true, read: TemplateRef, static: true }, { propertyName: "excelStyleFilteringComponents", predicate: IgxGridExcelStyleFilteringComponent, descendants: true, read: IgxGridExcelStyleFilteringComponent }, { propertyName: "rowDimensionContentCollection", predicate: IgxPivotRowDimensionContentComponent, descendants: true }, { propertyName: "verticalRowDimScrollContainers", predicate: ["verticalRowDimScrollContainer"], descendants: true, read: IgxGridForOfDirective }], usesInheritance: true, ngImport: i0, template: "<!-- Toolbar area -->\n<ng-content select=\"igx-grid-toolbar\"></ng-content>\n\n<!-- Grid table head row area -->\n<igx-pivot-header-row class=\"igx-grid-thead igx-grid-thead--pivot\" tabindex=\"0\"\n [grid]=\"this\"\n [hasMRL]=\"hasColumnLayouts\"\n [density]=\"displayDensity\"\n [activeDescendant]=\"activeDescendant\"\n [width]=\"calcWidth\"\n [pinnedColumnCollection]=\"pinnedColumns\"\n [unpinnedColumnCollection]=\"unpinnedColumns\"\n (keydown.meta.c)=\"copyHandler($event)\"\n (keydown.control.c)=\"copyHandler($event)\"\n (copy)=\"copyHandler($event)\"\n (keydown)=\"navigation.headerNavigation($event)\"\n (scroll)=\"preventHeaderScroll($event)\"\n>\n</igx-pivot-header-row>\n\n<div igxGridBody (keydown.control.c)=\"copyHandler($event)\" (copy)=\"copyHandler($event)\" class=\"igx-grid__tbody\" role=\"rowgroup\">\n <ng-container *ngTemplateOutlet=\"rowDimensions.length ? defaultRowDimensionsTemplate : emptyRowDimensionsTemplate; context: this\"></ng-container>\n <div class=\"igx-grid__tbody-content\" tabindex=\"0\" [attr.role]=\"dataView.length ? null : 'row'\" (keydown)=\"navigation.handleNavigation($event)\" (focus)=\"navigation.focusTbody($event)\"\n (dragStop)=\"selectionService.dragMode = $event\" (scroll)='preventContainerScroll($event)'\n (dragScroll)=\"dragScroll($event)\" [igxGridDragSelect]=\"selectionService.dragMode\"\n [style.height.px]='totalHeight' [style.width.px]='calcWidth || null' #tbody [attr.aria-activedescendant]=\"activeDescendant\">\n <span *ngIf=\"hasMovableColumns && columnInDrag && pinnedColumns.length <= 0\"\n [igxColumnMovingDrop]=\"headerContainer\" [attr.droppable]=\"true\" id=\"left\"\n class=\"igx-grid__scroll-on-drag-left\"></span>\n <span *ngIf=\"hasMovableColumns && columnInDrag && pinnedColumns.length > 0\"\n [igxColumnMovingDrop]=\"headerContainer\" [attr.droppable]=\"true\" id=\"left\"\n class=\"igx-grid__scroll-on-drag-pinned\" [style.left.px]=\"pinnedWidth\"></span>\n <ng-template igxGridFor let-rowData [igxGridForOf]=\"data\n | pivotGridFilter:pivotConfiguration:filterStrategy:advancedFilteringExpressionsTree:filteringPipeTrigger:pipeTrigger\n | pivotGridSort:pivotConfiguration:sortStrategy:id:pipeTrigger\n | pivotGridRow:pivotConfiguration:expansionStates:pipeTrigger:sortingExpressions\n | pivotGridColumn:pivotConfiguration:expansionStates:pipeTrigger:sortingExpressions\n | pivotGridAutoTransform:pivotConfiguration:pipeTrigger\n | pivotGridColumnSort:sortingExpressions:sortStrategy:pipeTrigger\n | pivotGridRowExpansion:pivotConfiguration:expansionStates:defaultExpandState:pipeTrigger\"\n let-rowIndex=\"index\" [igxForScrollOrientation]=\"'vertical'\" [igxForScrollContainer]='verticalScroll'\n [igxForContainerSize]='calcHeight'\n [igxForItemSize]=\"hasColumnLayouts ? rowHeight * multiRowLayoutRowSize + 1 : renderedRowHeight\"\n #verticalScrollContainer>\n <ng-template\n [igxTemplateOutlet]='recordTemplate'\n [igxTemplateOutletContext]='getContext(rowData, rowIndex)'\n (cachedViewLoaded)='cachedViewLoaded($event)'>\n </ng-template>\n </ng-template>\n <ng-template #record_template let-rowIndex=\"index\" let-rowData>\n <igx-pivot-row [style.min-height.px]=\"renderedRowHeight\" [gridID]=\"id\" [index]=\"rowIndex\" [data]=\"rowData\"\n [ngClass]=\"rowClasses | igxGridRowClasses:row:row.inEditMode:row.selected:row.dirty:row.deleted:row.dragging:rowIndex:hasColumnLayouts:false:pipeTrigger\"\n [ngStyle]=\"rowStyles | igxGridRowStyles:rowData:rowIndex:pipeTrigger\" #row>\n </igx-pivot-row>\n </ng-template>\n\n <ng-container *ngTemplateOutlet=\"template\"></ng-container>\n <igc-trial-watermark></igc-trial-watermark>\n </div>\n <div igxToggle #loadingOverlay>\n <igx-circular-bar [indeterminate]=\"true\" *ngIf='shouldOverlayLoading'>\n </igx-circular-bar>\n </div>\n <span *ngIf=\"hasMovableColumns && columnInDrag\" [igxColumnMovingDrop]=\"headerContainer\" [attr.droppable]=\"true\"\n id=\"right\" class=\"igx-grid__scroll-on-drag-right\"></span>\n <div [hidden]='!hasVerticalScroll()' class=\"igx-grid__tbody-scrollbar\" [style.width.px]=\"scrollSize\" (pointerdown)=\"$event.preventDefault()\">\n <div class=\"igx-grid__tbody-scrollbar-start\" [style.height.px]=' isRowPinningToTop ? pinnedRowHeight : 0'></div>\n <div class=\"igx-grid__tbody-scrollbar-main\" [style.height.px]='calcHeight'>\n <ng-template igxGridFor [igxGridForOf]='[]' #verticalScrollHolder></ng-template>\n </div>\n <div class=\"igx-grid__tbody-scrollbar-end\" [style.height.px]='!isRowPinningToTop ? pinnedRowHeight : 0'></div>\n </div>\n\n <div class=\"igx-grid__addrow-snackbar\">\n <igx-snackbar #addRowSnackbar [outlet]=\"igxBodyOverlayOutlet\" [actionText]=\"resourceStrings.igx_grid_snackbar_addrow_actiontext\" [displayTime]='snackbarDisplayTime'>{{resourceStrings.igx_grid_snackbar_addrow_label}}</igx-snackbar>\n </div>\n\n <div #igxBodyOverlayOutlet=\"overlay-outlet\" igxOverlayOutlet></div>\n</div>\n\n<div class=\"igx-grid__scroll\" [style.height.px]=\"scrollSize\" #scr [hidden]=\"isHorizontalScrollHidden\" (pointerdown)=\"$event.preventDefault()\">\n <div class=\"igx-grid__scroll-start\" [style.width.px]='isPinningToStart ? pinnedWidth : headerFeaturesWidth' [style.min-width.px]='isPinningToStart ? pinnedWidth : headerFeaturesWidth'></div>\n <div class=\"igx-grid__scroll-main\" [style.width.px]='unpinnedWidth'>\n <ng-template igxGridFor [igxGridForOf]='EMPTY_DATA' #scrollContainer>\n </ng-template>\n </div>\n <div class=\"igx-grid__scroll-end\" [style.float]='\"right\"' [style.width.px]='pinnedWidth' [style.min-width.px]='pinnedWidth' [hidden]=\"pinnedWidth === 0 || isPinningToStart\"></div>\n</div>\n\n<div class=\"igx-grid__tfoot\" role=\"rowgroup\" #tfoot>\n</div>\n\n<div class=\"igx-grid__footer\" #footer>\n <ng-content select=\"igx-grid-footer\"></ng-content>\n</div>\n\n<ng-template #emptyFilteredGrid>\n <span class=\"igx-grid__tbody-message\" role=\"cell\">\n <span>{{emptyFilteredGridMessage}}</span>\n </span>\n</ng-template>\n\n<ng-template #defaultEmptyGrid>\n <span class=\"igx-grid__tbody-message\" role=\"cell\">\n <span>{{emptyGridMessage}}</span>\n </span>\n</ng-template>\n\n<ng-template #defaultLoadingGrid>\n <div class=\"igx-grid__loading\">\n <igx-circular-bar [indeterminate]=\"true\">\n </igx-circular-bar>\n </div>\n</ng-template>\n<igx-pivot-grid-column-resizer [restrictResizerTop]=\"theadRow.nativeElement.clientHeight\" *ngIf=\"colResizingService.showResizer\"></igx-pivot-grid-column-resizer>\n<div class=\"igx-grid__loading-outlet\" #igxLoadingOverlayOutlet igxOverlayOutlet></div>\n<div class=\"igx-grid__outlet\" #igxFilteringOverlayOutlet igxOverlayOutlet></div>\n\n<ng-template #headerTemplate let-column>\n <div class=\"igx-grid__tr--header\">\n <igx-icon [attr.draggable]=\"false\"\n (click)=\"toggleColumn(column)\">\n {{getColumnGroupExpandState(column) ? 'chevron_right' : 'expand_more'}}</igx-icon>\n {{column.header}}\n </div>\n</ng-template>\n\n<ng-template #defaultRowDimensionsTemplate>\n <div tabindex=\"0\" [style.height.px]='totalHeight' *ngFor='let dim of rowDimensions; let dimIndex = index;' #rowDimensionContainer role=\"rowgroup\" class='igx-grid__tbody-pivot-dimension' (focus)=\"navigation.focusTbody($event)\" (keydown)=\"navigation.handleNavigation($event)\">\n <ng-template igxGridFor let-rowData [igxGridForOf]=\"dataView\n | pivotGridCellMerging:pivotConfiguration:dim:pipeTrigger\"\n let-rowIndex=\"index\" [igxForScrollOrientation]=\"'vertical'\" [igxForScrollContainer]='verticalScroll'\n [igxForContainerSize]='calcHeight'\n [igxForItemSize]=\"renderedRowHeight\"\n [igxForSizePropName]='\"height\"'\n #verticalRowDimScrollContainer>\n <igx-pivot-row-dimension-content role='row' class=\"igx-grid-thead\" [grid]=\"this\"\n [dimension]='rowData.dimensions[dimIndex]'\n [rootDimension]='dim'\n [rowIndex]='rowIndex' [rowData]='rowData'\n [density]=\"displayDensity\" [width]=\"rowDimensionWidthToPixels(dim)\">\n </igx-pivot-row-dimension-content>\n </ng-template>\n </div>\n</ng-template>\n<ng-template #emptyRowDimensionsTemplate>\n <div tabindex=\"0\" *ngIf='columnDimensions.length > 0 || values.length > 0' #rowDimensionContainer role=\"rowgroup\" class='igx-grid__tbody-pivot-dimension' (focus)=\"navigation.focusTbody($event)\" (keydown)=\"navigation.handleNavigation($event)\">\n <igx-pivot-row-dimension-content role='row' class=\"igx-grid-thead\" [grid]=\"this\"\n [dimension]='emptyRowDimension'\n [rootDimension]='emptyRowDimension'\n [rowIndex]='0' [rowData]='dataView[0]'\n [density]=\"displayDensity\" [width]=\"rowDimensionWidthToPixels(emptyRowDimension)\">\n </igx-pivot-row-dimension-content>\n </div>\n</ng-template>\n\n<ng-template #emptyPivotGridTemplate>\n <span class=\"igx-grid__tbody-message\" role=\"cell\">\n <span>{{resourceStrings.igx_grid_pivot_empty_message}}</span>\n </span>\n</ng-template>\n\n<div [hidden]='true'>\n <igx-grid-excel-style-filtering [maxHeight]='excelStyleFilterMaxHeight' [minHeight]='excelStyleFilterMinHeight'>\n <div igxExcelStyleColumnOperations [hidden]='true'></div>\n <igx-excel-style-filter-operations>\n <igx-excel-style-search></igx-excel-style-search>\n </igx-excel-style-filter-operations>\n </igx-grid-excel-style-filtering>\n</div>\n", components: [{ type: IgxPivotHeaderRowComponent, selector: "igx-pivot-header-row" }, { type: IgxPivotRowComponent, selector: "igx-pivot-row", inputs: ["selected", "data"] }, { type: IgxCircularProgressBarComponent, selector: "igx-circular-bar", inputs: ["id", "isIndeterminate", "textVisibility", "text"] }, { type: IgxSnackbarComponent, selector: "igx-snackbar", inputs: ["id", "actionText", "positionSettings"], outputs: ["clicked", "animationStarted", "animationDone"] }, { type: IgxPivotGridColumnResizerComponent, selector: "igx-pivot-grid-column-resizer" }, { type: IgxIconComponent, selector: "igx-icon", inputs: ["family", "active", "name"] }, { type: IgxPivotRowDimensionContentComponent, selector: "igx-pivot-row-dimension-content", inputs: ["rowIndex", "dimension", "rootDimension", "rowData"] }, { type: IgxGridExcelStyleFilteringComponent, selector: "igx-grid-excel-style-filtering", inputs: ["column", "minHeight", "maxHeight"], outputs: ["loadingStart", "loadingEnd", "initialized", "sortingChanged", "columnChange", "listDataLoaded"] }, { type: IgxExcelStyleSearchComponent, selector: "igx-excel-style-search" }], directives: [{ type: IgxGridBodyDirective, selector: "[igxGridBody]" }, { type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: IgxGridDragSelectDirective, selector: "[igxGridDragSelect]", inputs: ["igxGridDragSelect"], outputs: ["dragStop", "dragScroll"] }, { type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: IgxColumnMovingDropDirective, selector: "[igxColumnMovingDrop]", inputs: ["igxColumnMovingDrop"] }, { type: IgxGridForOfDirective, selector: "[igxGridFor][igxGridForOf]", inputs: ["igxGridForOf", "igxGridForOfUniqueSizeCache"], outputs: ["dataChanging"] }, { type: IgxTemplateOutletDirective, selector: "[igxTemplateOutlet]", inputs: ["igxTemplateOutletContext", "igxTemplateOutlet"], outputs: ["viewCreated", "viewMoved", "cachedViewLoaded", "beforeViewDetach"] }, { type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i4.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: IgxToggleDirective, selector: "[igxToggle]", inputs: ["id"], outputs: ["opened", "opening", "closed", "closing", "appended"], exportAs: ["toggle"] }, { type: IgxOverlayOutletDirective, selector: "[igxOverlayOutlet]", exportAs: ["overlay-outlet"] }, { type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: IgxExcelStyleColumnOperationsTemplateDirective, selector: "igx-excel-style-column-operations,[igxExcelStyleColumnOperations]" }, { type: IgxExcelStyleFilterOperationsTemplateDirective, selector: "igx-excel-style-filter-operations,[igxExcelStyleFilterOperations]" }], pipes: { "pivotGridRowExpansion": IgxPivotRowExpansionPipe, "pivotGridColumnSort": IgxPivotGridColumnSortingPipe, "pivotGridAutoTransform": IgxPivotAutoTransform, "pivotGridColumn": IgxPivotColumnPipe, "pivotGridRow": IgxPivotRowPipe, "pivotGridSort": IgxPivotGridSortingPipe, "pivotGridFilter": IgxPivotGridFilterPipe, "igxGridRowClasses": IgxGridRowClassesPipe, "igxGridRowStyles": IgxGridRowStylesPipe, "pivotGridCellMerging": IgxPivotCellMergingPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
86995
|
+
], viewQueries: [{ propertyName: "theadRow", first: true, predicate: IgxPivotHeaderRowComponent, descendants: true, static: true }, { propertyName: "recordTemplate", first: true, predicate: ["record_template"], descendants: true, read: TemplateRef, static: true }, { propertyName: "headerTemplate", first: true, predicate: ["headerTemplate"], descendants: true, read: TemplateRef, static: true }, { propertyName: "resizeLine", first: true, predicate: IgxPivotGridColumnResizerComponent, descendants: true }, { propertyName: "defaultEmptyPivotGridTemplate", first: true, predicate: ["emptyPivotGridTemplate"], descendants: true, read: TemplateRef, static: true }, { propertyName: "excelStyleFilteringComponents", predicate: IgxGridExcelStyleFilteringComponent, descendants: true, read: IgxGridExcelStyleFilteringComponent }, { propertyName: "rowDimensionContentCollection", predicate: IgxPivotRowDimensionContentComponent, descendants: true }, { propertyName: "verticalRowDimScrollContainers", predicate: ["verticalRowDimScrollContainer"], descendants: true, read: IgxGridForOfDirective }], usesInheritance: true, ngImport: i0, template: "<!-- Toolbar area -->\n<ng-content select=\"igx-grid-toolbar\"></ng-content>\n\n<!-- Grid table head row area -->\n<igx-pivot-header-row class=\"igx-grid-thead igx-grid-thead--pivot\" tabindex=\"0\"\n [grid]=\"this\"\n [hasMRL]=\"hasColumnLayouts\"\n [density]=\"displayDensity\"\n [activeDescendant]=\"activeDescendant\"\n [width]=\"calcWidth\"\n [pinnedColumnCollection]=\"pinnedColumns\"\n [unpinnedColumnCollection]=\"unpinnedColumns\"\n (keydown.meta.c)=\"copyHandler($event)\"\n (keydown.control.c)=\"copyHandler($event)\"\n (copy)=\"copyHandler($event)\"\n (keydown)=\"navigation.headerNavigation($event)\"\n (scroll)=\"preventHeaderScroll($event)\"\n>\n</igx-pivot-header-row>\n\n<div igxGridBody (keydown.control.c)=\"copyHandler($event)\" (copy)=\"copyHandler($event)\" class=\"igx-grid__tbody\" role=\"rowgroup\">\n <ng-container *ngTemplateOutlet=\"rowDimensions.length ? defaultRowDimensionsTemplate : emptyRowDimensionsTemplate; context: this\"></ng-container>\n <div class=\"igx-grid__tbody-content\" tabindex=\"0\" [attr.role]=\"dataView.length ? null : 'row'\" (keydown)=\"navigation.handleNavigation($event)\" (focus)=\"navigation.focusTbody($event)\"\n (dragStop)=\"selectionService.dragMode = $event\" (scroll)='preventContainerScroll($event)'\n (dragScroll)=\"dragScroll($event)\" [igxGridDragSelect]=\"selectionService.dragMode\"\n [style.height.px]='totalHeight' [style.width.px]='calcWidth || null' #tbody [attr.aria-activedescendant]=\"activeDescendant\">\n <span *ngIf=\"hasMovableColumns && columnInDrag && pinnedColumns.length <= 0\"\n [igxColumnMovingDrop]=\"headerContainer\" [attr.droppable]=\"true\" id=\"left\"\n class=\"igx-grid__scroll-on-drag-left\"></span>\n <span *ngIf=\"hasMovableColumns && columnInDrag && pinnedColumns.length > 0\"\n [igxColumnMovingDrop]=\"headerContainer\" [attr.droppable]=\"true\" id=\"left\"\n class=\"igx-grid__scroll-on-drag-pinned\" [style.left.px]=\"pinnedWidth\"></span>\n <ng-template igxGridFor let-rowData [igxGridForOf]=\"data\n | pivotGridFilter:pivotConfiguration:filterStrategy:advancedFilteringExpressionsTree:filteringPipeTrigger:pipeTrigger\n | pivotGridSort:pivotConfiguration:sortStrategy:pipeTrigger\n | pivotGridRow:pivotConfiguration:expansionStates:pipeTrigger:sortingExpressions\n | pivotGridColumn:pivotConfiguration:expansionStates:pipeTrigger:sortingExpressions\n | pivotGridAutoTransform:pivotConfiguration:pipeTrigger\n | pivotGridColumnSort:sortingExpressions:sortStrategy:pipeTrigger\n | pivotGridRowExpansion:pivotConfiguration:expansionStates:defaultExpandState:pipeTrigger\"\n let-rowIndex=\"index\" [igxForScrollOrientation]=\"'vertical'\" [igxForScrollContainer]='verticalScroll'\n [igxForContainerSize]='calcHeight'\n [igxForItemSize]=\"hasColumnLayouts ? rowHeight * multiRowLayoutRowSize + 1 : renderedRowHeight\"\n #verticalScrollContainer>\n <ng-template\n [igxTemplateOutlet]='recordTemplate'\n [igxTemplateOutletContext]='getContext(rowData, rowIndex)'\n (cachedViewLoaded)='cachedViewLoaded($event)'>\n </ng-template>\n </ng-template>\n <ng-template #record_template let-rowIndex=\"index\" let-rowData>\n <igx-pivot-row [style.min-height.px]=\"renderedRowHeight\" [gridID]=\"id\" [index]=\"rowIndex\" [data]=\"rowData\"\n [ngClass]=\"rowClasses | igxGridRowClasses:row:row.inEditMode:row.selected:row.dirty:row.deleted:row.dragging:rowIndex:hasColumnLayouts:false:pipeTrigger\"\n [ngStyle]=\"rowStyles | igxGridRowStyles:rowData:rowIndex:pipeTrigger\" #row>\n </igx-pivot-row>\n </ng-template>\n\n <ng-container *ngTemplateOutlet=\"template\"></ng-container>\n <igc-trial-watermark></igc-trial-watermark>\n </div>\n <div igxToggle #loadingOverlay>\n <igx-circular-bar [indeterminate]=\"true\" *ngIf='shouldOverlayLoading'>\n </igx-circular-bar>\n </div>\n <span *ngIf=\"hasMovableColumns && columnInDrag\" [igxColumnMovingDrop]=\"headerContainer\" [attr.droppable]=\"true\"\n id=\"right\" class=\"igx-grid__scroll-on-drag-right\"></span>\n <div [hidden]='!hasVerticalScroll()' class=\"igx-grid__tbody-scrollbar\" [style.width.px]=\"scrollSize\" (pointerdown)=\"$event.preventDefault()\">\n <div class=\"igx-grid__tbody-scrollbar-start\" [style.height.px]=' isRowPinningToTop ? pinnedRowHeight : 0'></div>\n <div class=\"igx-grid__tbody-scrollbar-main\" [style.height.px]='calcHeight'>\n <ng-template igxGridFor [igxGridForOf]='[]' #verticalScrollHolder></ng-template>\n </div>\n <div class=\"igx-grid__tbody-scrollbar-end\" [style.height.px]='!isRowPinningToTop ? pinnedRowHeight : 0'></div>\n </div>\n\n <div class=\"igx-grid__addrow-snackbar\">\n <igx-snackbar #addRowSnackbar [outlet]=\"igxBodyOverlayOutlet\" [actionText]=\"resourceStrings.igx_grid_snackbar_addrow_actiontext\" [displayTime]='snackbarDisplayTime'>{{resourceStrings.igx_grid_snackbar_addrow_label}}</igx-snackbar>\n </div>\n\n <div #igxBodyOverlayOutlet=\"overlay-outlet\" igxOverlayOutlet></div>\n</div>\n\n<div class=\"igx-grid__scroll\" [style.height.px]=\"scrollSize\" #scr [hidden]=\"isHorizontalScrollHidden\" (pointerdown)=\"$event.preventDefault()\">\n <div class=\"igx-grid__scroll-start\" [style.width.px]='isPinningToStart ? pinnedWidth : headerFeaturesWidth' [style.min-width.px]='isPinningToStart ? pinnedWidth : headerFeaturesWidth'></div>\n <div class=\"igx-grid__scroll-main\" [style.width.px]='unpinnedWidth'>\n <ng-template igxGridFor [igxGridForOf]='EMPTY_DATA' #scrollContainer>\n </ng-template>\n </div>\n <div class=\"igx-grid__scroll-end\" [style.float]='\"right\"' [style.width.px]='pinnedWidth' [style.min-width.px]='pinnedWidth' [hidden]=\"pinnedWidth === 0 || isPinningToStart\"></div>\n</div>\n\n<div class=\"igx-grid__tfoot\" role=\"rowgroup\" #tfoot>\n</div>\n\n<div class=\"igx-grid__footer\" #footer>\n <ng-content select=\"igx-grid-footer\"></ng-content>\n</div>\n\n<ng-template #emptyFilteredGrid>\n <span class=\"igx-grid__tbody-message\" role=\"cell\">\n <span>{{emptyFilteredGridMessage}}</span>\n </span>\n</ng-template>\n\n<ng-template #defaultEmptyGrid>\n <span class=\"igx-grid__tbody-message\" role=\"cell\">\n <span>{{emptyGridMessage}}</span>\n </span>\n</ng-template>\n\n<ng-template #defaultLoadingGrid>\n <div class=\"igx-grid__loading\">\n <igx-circular-bar [indeterminate]=\"true\">\n </igx-circular-bar>\n </div>\n</ng-template>\n<igx-pivot-grid-column-resizer [restrictResizerTop]=\"theadRow.nativeElement.clientHeight\" *ngIf=\"colResizingService.showResizer\"></igx-pivot-grid-column-resizer>\n<div class=\"igx-grid__loading-outlet\" #igxLoadingOverlayOutlet igxOverlayOutlet></div>\n<div class=\"igx-grid__outlet\" #igxFilteringOverlayOutlet igxOverlayOutlet></div>\n\n<ng-template #headerTemplate let-column>\n <div class=\"igx-grid__tr--header\">\n <igx-icon [attr.draggable]=\"false\"\n (click)=\"toggleColumn(column)\">\n {{getColumnGroupExpandState(column) ? 'chevron_right' : 'expand_more'}}</igx-icon>\n {{column.header}}\n </div>\n</ng-template>\n\n<ng-template #defaultRowDimensionsTemplate>\n <div tabindex=\"0\" [style.height.px]='totalHeight' *ngFor='let dim of rowDimensions; let dimIndex = index;' #rowDimensionContainer role=\"rowgroup\" class='igx-grid__tbody-pivot-dimension' (focus)=\"navigation.focusTbody($event)\" (keydown)=\"navigation.handleNavigation($event)\">\n <ng-template igxGridFor let-rowData [igxGridForOf]=\"dataView\n | pivotGridCellMerging:pivotConfiguration:dim:pipeTrigger\"\n let-rowIndex=\"index\" [igxForScrollOrientation]=\"'vertical'\" [igxForScrollContainer]='verticalScroll'\n [igxForContainerSize]='calcHeight'\n [igxForItemSize]=\"renderedRowHeight\"\n [igxForSizePropName]='\"height\"'\n #verticalRowDimScrollContainer>\n <igx-pivot-row-dimension-content role='row' class=\"igx-grid-thead\" [grid]=\"this\"\n [dimension]='rowData.dimensions[dimIndex]'\n [rootDimension]='dim'\n [rowIndex]='rowIndex' [rowData]='rowData'\n [density]=\"displayDensity\" [width]=\"rowDimensionWidthToPixels(dim)\">\n </igx-pivot-row-dimension-content>\n </ng-template>\n </div>\n</ng-template>\n<ng-template #emptyRowDimensionsTemplate>\n <div tabindex=\"0\" *ngIf='columnDimensions.length > 0 || values.length > 0' #rowDimensionContainer role=\"rowgroup\" class='igx-grid__tbody-pivot-dimension' (focus)=\"navigation.focusTbody($event)\" (keydown)=\"navigation.handleNavigation($event)\">\n <igx-pivot-row-dimension-content role='row' class=\"igx-grid-thead\" [grid]=\"this\"\n [dimension]='emptyRowDimension'\n [rootDimension]='emptyRowDimension'\n [rowIndex]='0' [rowData]='dataView[0]'\n [density]=\"displayDensity\" [width]=\"rowDimensionWidthToPixels(emptyRowDimension)\">\n </igx-pivot-row-dimension-content>\n </div>\n</ng-template>\n\n<ng-template #emptyPivotGridTemplate>\n <span class=\"igx-grid__tbody-message\" role=\"cell\">\n <span>{{resourceStrings.igx_grid_pivot_empty_message}}</span>\n </span>\n</ng-template>\n\n<div [hidden]='true'>\n <igx-grid-excel-style-filtering [maxHeight]='excelStyleFilterMaxHeight' [minHeight]='excelStyleFilterMinHeight'>\n <div igxExcelStyleColumnOperations [hidden]='true'></div>\n <igx-excel-style-filter-operations>\n <igx-excel-style-search></igx-excel-style-search>\n </igx-excel-style-filter-operations>\n </igx-grid-excel-style-filtering>\n</div>\n", components: [{ type: IgxPivotHeaderRowComponent, selector: "igx-pivot-header-row" }, { type: IgxPivotRowComponent, selector: "igx-pivot-row", inputs: ["selected", "data"] }, { type: IgxCircularProgressBarComponent, selector: "igx-circular-bar", inputs: ["id", "isIndeterminate", "textVisibility", "text"] }, { type: IgxSnackbarComponent, selector: "igx-snackbar", inputs: ["id", "actionText", "positionSettings"], outputs: ["clicked", "animationStarted", "animationDone"] }, { type: IgxPivotGridColumnResizerComponent, selector: "igx-pivot-grid-column-resizer" }, { type: IgxIconComponent, selector: "igx-icon", inputs: ["family", "active", "name"] }, { type: IgxPivotRowDimensionContentComponent, selector: "igx-pivot-row-dimension-content", inputs: ["rowIndex", "dimension", "rootDimension", "rowData"] }, { type: IgxGridExcelStyleFilteringComponent, selector: "igx-grid-excel-style-filtering", inputs: ["column", "minHeight", "maxHeight"], outputs: ["loadingStart", "loadingEnd", "initialized", "sortingChanged", "columnChange", "listDataLoaded"] }, { type: IgxExcelStyleSearchComponent, selector: "igx-excel-style-search" }], directives: [{ type: IgxGridBodyDirective, selector: "[igxGridBody]" }, { type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: IgxGridDragSelectDirective, selector: "[igxGridDragSelect]", inputs: ["igxGridDragSelect"], outputs: ["dragStop", "dragScroll"] }, { type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: IgxColumnMovingDropDirective, selector: "[igxColumnMovingDrop]", inputs: ["igxColumnMovingDrop"] }, { type: IgxGridForOfDirective, selector: "[igxGridFor][igxGridForOf]", inputs: ["igxGridForOf", "igxGridForOfUniqueSizeCache"], outputs: ["dataChanging"] }, { type: IgxTemplateOutletDirective, selector: "[igxTemplateOutlet]", inputs: ["igxTemplateOutletContext", "igxTemplateOutlet"], outputs: ["viewCreated", "viewMoved", "cachedViewLoaded", "beforeViewDetach"] }, { type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i4.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: IgxToggleDirective, selector: "[igxToggle]", inputs: ["id"], outputs: ["opened", "opening", "closed", "closing", "appended"], exportAs: ["toggle"] }, { type: IgxOverlayOutletDirective, selector: "[igxOverlayOutlet]", exportAs: ["overlay-outlet"] }, { type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: IgxExcelStyleColumnOperationsTemplateDirective, selector: "igx-excel-style-column-operations,[igxExcelStyleColumnOperations]" }, { type: IgxExcelStyleFilterOperationsTemplateDirective, selector: "igx-excel-style-filter-operations,[igxExcelStyleFilterOperations]" }], pipes: { "pivotGridRowExpansion": IgxPivotRowExpansionPipe, "pivotGridColumnSort": IgxPivotGridColumnSortingPipe, "pivotGridAutoTransform": IgxPivotAutoTransform, "pivotGridColumn": IgxPivotColumnPipe, "pivotGridRow": IgxPivotRowPipe, "pivotGridSort": IgxPivotGridSortingPipe, "pivotGridFilter": IgxPivotGridFilterPipe, "igxGridRowClasses": IgxGridRowClassesPipe, "igxGridRowStyles": IgxGridRowStylesPipe, "pivotGridCellMerging": IgxPivotCellMergingPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
87007
86996
|
__decorate([
|
|
87008
86997
|
WatchChanges()
|
|
87009
86998
|
], IgxPivotGridComponent.prototype, "hideRowSelectors", null);
|
|
@@ -87023,12 +87012,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImpor
|
|
|
87023
87012
|
IgxPivotColumnResizingService,
|
|
87024
87013
|
IgxForOfSyncService,
|
|
87025
87014
|
IgxForOfScrollSyncService
|
|
87026
|
-
], template: "<!-- Toolbar area -->\n<ng-content select=\"igx-grid-toolbar\"></ng-content>\n\n<!-- Grid table head row area -->\n<igx-pivot-header-row class=\"igx-grid-thead igx-grid-thead--pivot\" tabindex=\"0\"\n [grid]=\"this\"\n [hasMRL]=\"hasColumnLayouts\"\n [density]=\"displayDensity\"\n [activeDescendant]=\"activeDescendant\"\n [width]=\"calcWidth\"\n [pinnedColumnCollection]=\"pinnedColumns\"\n [unpinnedColumnCollection]=\"unpinnedColumns\"\n (keydown.meta.c)=\"copyHandler($event)\"\n (keydown.control.c)=\"copyHandler($event)\"\n (copy)=\"copyHandler($event)\"\n (keydown)=\"navigation.headerNavigation($event)\"\n (scroll)=\"preventHeaderScroll($event)\"\n>\n</igx-pivot-header-row>\n\n<div igxGridBody (keydown.control.c)=\"copyHandler($event)\" (copy)=\"copyHandler($event)\" class=\"igx-grid__tbody\" role=\"rowgroup\">\n <ng-container *ngTemplateOutlet=\"rowDimensions.length ? defaultRowDimensionsTemplate : emptyRowDimensionsTemplate; context: this\"></ng-container>\n <div class=\"igx-grid__tbody-content\" tabindex=\"0\" [attr.role]=\"dataView.length ? null : 'row'\" (keydown)=\"navigation.handleNavigation($event)\" (focus)=\"navigation.focusTbody($event)\"\n (dragStop)=\"selectionService.dragMode = $event\" (scroll)='preventContainerScroll($event)'\n (dragScroll)=\"dragScroll($event)\" [igxGridDragSelect]=\"selectionService.dragMode\"\n [style.height.px]='totalHeight' [style.width.px]='calcWidth || null' #tbody [attr.aria-activedescendant]=\"activeDescendant\">\n <span *ngIf=\"hasMovableColumns && columnInDrag && pinnedColumns.length <= 0\"\n [igxColumnMovingDrop]=\"headerContainer\" [attr.droppable]=\"true\" id=\"left\"\n class=\"igx-grid__scroll-on-drag-left\"></span>\n <span *ngIf=\"hasMovableColumns && columnInDrag && pinnedColumns.length > 0\"\n [igxColumnMovingDrop]=\"headerContainer\" [attr.droppable]=\"true\" id=\"left\"\n class=\"igx-grid__scroll-on-drag-pinned\" [style.left.px]=\"pinnedWidth\"></span>\n <ng-template igxGridFor let-rowData [igxGridForOf]=\"data\n | pivotGridFilter:pivotConfiguration:filterStrategy:advancedFilteringExpressionsTree:filteringPipeTrigger:pipeTrigger\n | pivotGridSort:pivotConfiguration:sortStrategy:id:pipeTrigger\n | pivotGridRow:pivotConfiguration:expansionStates:pipeTrigger:sortingExpressions\n | pivotGridColumn:pivotConfiguration:expansionStates:pipeTrigger:sortingExpressions\n | pivotGridAutoTransform:pivotConfiguration:pipeTrigger\n | pivotGridColumnSort:sortingExpressions:sortStrategy:pipeTrigger\n | pivotGridRowExpansion:pivotConfiguration:expansionStates:defaultExpandState:pipeTrigger\"\n let-rowIndex=\"index\" [igxForScrollOrientation]=\"'vertical'\" [igxForScrollContainer]='verticalScroll'\n [igxForContainerSize]='calcHeight'\n [igxForItemSize]=\"hasColumnLayouts ? rowHeight * multiRowLayoutRowSize + 1 : renderedRowHeight\"\n #verticalScrollContainer>\n <ng-template\n [igxTemplateOutlet]='recordTemplate'\n [igxTemplateOutletContext]='getContext(rowData, rowIndex)'\n (cachedViewLoaded)='cachedViewLoaded($event)'>\n </ng-template>\n </ng-template>\n <ng-template #record_template let-rowIndex=\"index\" let-rowData>\n <igx-pivot-row [style.min-height.px]=\"renderedRowHeight\" [gridID]=\"id\" [index]=\"rowIndex\" [data]=\"rowData\"\n [ngClass]=\"rowClasses | igxGridRowClasses:row:row.inEditMode:row.selected:row.dirty:row.deleted:row.dragging:rowIndex:hasColumnLayouts:false:pipeTrigger\"\n [ngStyle]=\"rowStyles | igxGridRowStyles:rowData:rowIndex:pipeTrigger\" #row>\n </igx-pivot-row>\n </ng-template>\n\n <ng-container *ngTemplateOutlet=\"template\"></ng-container>\n <igc-trial-watermark></igc-trial-watermark>\n </div>\n <div igxToggle #loadingOverlay>\n <igx-circular-bar [indeterminate]=\"true\" *ngIf='shouldOverlayLoading'>\n </igx-circular-bar>\n </div>\n <span *ngIf=\"hasMovableColumns && columnInDrag\" [igxColumnMovingDrop]=\"headerContainer\" [attr.droppable]=\"true\"\n id=\"right\" class=\"igx-grid__scroll-on-drag-right\"></span>\n <div [hidden]='!hasVerticalScroll()' class=\"igx-grid__tbody-scrollbar\" [style.width.px]=\"scrollSize\" (pointerdown)=\"$event.preventDefault()\">\n <div class=\"igx-grid__tbody-scrollbar-start\" [style.height.px]=' isRowPinningToTop ? pinnedRowHeight : 0'></div>\n <div class=\"igx-grid__tbody-scrollbar-main\" [style.height.px]='calcHeight'>\n <ng-template igxGridFor [igxGridForOf]='[]' #verticalScrollHolder></ng-template>\n </div>\n <div class=\"igx-grid__tbody-scrollbar-end\" [style.height.px]='!isRowPinningToTop ? pinnedRowHeight : 0'></div>\n </div>\n\n <div class=\"igx-grid__addrow-snackbar\">\n <igx-snackbar #addRowSnackbar [outlet]=\"igxBodyOverlayOutlet\" [actionText]=\"resourceStrings.igx_grid_snackbar_addrow_actiontext\" [displayTime]='snackbarDisplayTime'>{{resourceStrings.igx_grid_snackbar_addrow_label}}</igx-snackbar>\n </div>\n\n <div #igxBodyOverlayOutlet=\"overlay-outlet\" igxOverlayOutlet></div>\n</div>\n\n<div class=\"igx-grid__scroll\" [style.height.px]=\"scrollSize\" #scr [hidden]=\"isHorizontalScrollHidden\" (pointerdown)=\"$event.preventDefault()\">\n <div class=\"igx-grid__scroll-start\" [style.width.px]='isPinningToStart ? pinnedWidth : headerFeaturesWidth' [style.min-width.px]='isPinningToStart ? pinnedWidth : headerFeaturesWidth'></div>\n <div class=\"igx-grid__scroll-main\" [style.width.px]='unpinnedWidth'>\n <ng-template igxGridFor [igxGridForOf]='EMPTY_DATA' #scrollContainer>\n </ng-template>\n </div>\n <div class=\"igx-grid__scroll-end\" [style.float]='\"right\"' [style.width.px]='pinnedWidth' [style.min-width.px]='pinnedWidth' [hidden]=\"pinnedWidth === 0 || isPinningToStart\"></div>\n</div>\n\n<div class=\"igx-grid__tfoot\" role=\"rowgroup\" #tfoot>\n</div>\n\n<div class=\"igx-grid__footer\" #footer>\n <ng-content select=\"igx-grid-footer\"></ng-content>\n</div>\n\n<ng-template #emptyFilteredGrid>\n <span class=\"igx-grid__tbody-message\" role=\"cell\">\n <span>{{emptyFilteredGridMessage}}</span>\n </span>\n</ng-template>\n\n<ng-template #defaultEmptyGrid>\n <span class=\"igx-grid__tbody-message\" role=\"cell\">\n <span>{{emptyGridMessage}}</span>\n </span>\n</ng-template>\n\n<ng-template #defaultLoadingGrid>\n <div class=\"igx-grid__loading\">\n <igx-circular-bar [indeterminate]=\"true\">\n </igx-circular-bar>\n </div>\n</ng-template>\n<igx-pivot-grid-column-resizer [restrictResizerTop]=\"theadRow.nativeElement.clientHeight\" *ngIf=\"colResizingService.showResizer\"></igx-pivot-grid-column-resizer>\n<div class=\"igx-grid__loading-outlet\" #igxLoadingOverlayOutlet igxOverlayOutlet></div>\n<div class=\"igx-grid__outlet\" #igxFilteringOverlayOutlet igxOverlayOutlet></div>\n\n<ng-template #headerTemplate let-column>\n <div class=\"igx-grid__tr--header\">\n <igx-icon [attr.draggable]=\"false\"\n (click)=\"toggleColumn(column)\">\n {{getColumnGroupExpandState(column) ? 'chevron_right' : 'expand_more'}}</igx-icon>\n {{column.header}}\n </div>\n</ng-template>\n\n<ng-template #defaultRowDimensionsTemplate>\n <div tabindex=\"0\" [style.height.px]='totalHeight' *ngFor='let dim of rowDimensions; let dimIndex = index;' #rowDimensionContainer role=\"rowgroup\" class='igx-grid__tbody-pivot-dimension' (focus)=\"navigation.focusTbody($event)\" (keydown)=\"navigation.handleNavigation($event)\">\n <ng-template igxGridFor let-rowData [igxGridForOf]=\"dataView\n | pivotGridCellMerging:pivotConfiguration:dim:pipeTrigger\"\n let-rowIndex=\"index\" [igxForScrollOrientation]=\"'vertical'\" [igxForScrollContainer]='verticalScroll'\n [igxForContainerSize]='calcHeight'\n [igxForItemSize]=\"renderedRowHeight\"\n [igxForSizePropName]='\"height\"'\n #verticalRowDimScrollContainer>\n <igx-pivot-row-dimension-content role='row' class=\"igx-grid-thead\" [grid]=\"this\"\n [dimension]='rowData.dimensions[dimIndex]'\n [rootDimension]='dim'\n [rowIndex]='rowIndex' [rowData]='rowData'\n [density]=\"displayDensity\" [width]=\"rowDimensionWidthToPixels(dim)\">\n </igx-pivot-row-dimension-content>\n </ng-template>\n </div>\n</ng-template>\n<ng-template #emptyRowDimensionsTemplate>\n <div tabindex=\"0\" *ngIf='columnDimensions.length > 0 || values.length > 0' #rowDimensionContainer role=\"rowgroup\" class='igx-grid__tbody-pivot-dimension' (focus)=\"navigation.focusTbody($event)\" (keydown)=\"navigation.handleNavigation($event)\">\n <igx-pivot-row-dimension-content role='row' class=\"igx-grid-thead\" [grid]=\"this\"\n [dimension]='emptyRowDimension'\n [rootDimension]='emptyRowDimension'\n [rowIndex]='0' [rowData]='dataView[0]'\n [density]=\"displayDensity\" [width]=\"rowDimensionWidthToPixels(emptyRowDimension)\">\n </igx-pivot-row-dimension-content>\n </div>\n</ng-template>\n\n<ng-template #emptyPivotGridTemplate>\n <span class=\"igx-grid__tbody-message\" role=\"cell\">\n <span>{{resourceStrings.igx_grid_pivot_empty_message}}</span>\n </span>\n</ng-template>\n\n<div [hidden]='true'>\n <igx-grid-excel-style-filtering [maxHeight]='excelStyleFilterMaxHeight' [minHeight]='excelStyleFilterMinHeight'>\n <div igxExcelStyleColumnOperations [hidden]='true'></div>\n <igx-excel-style-filter-operations>\n <igx-excel-style-search></igx-excel-style-search>\n </igx-excel-style-filter-operations>\n </igx-grid-excel-style-filtering>\n</div>\n" }]
|
|
87015
|
+
], template: "<!-- Toolbar area -->\n<ng-content select=\"igx-grid-toolbar\"></ng-content>\n\n<!-- Grid table head row area -->\n<igx-pivot-header-row class=\"igx-grid-thead igx-grid-thead--pivot\" tabindex=\"0\"\n [grid]=\"this\"\n [hasMRL]=\"hasColumnLayouts\"\n [density]=\"displayDensity\"\n [activeDescendant]=\"activeDescendant\"\n [width]=\"calcWidth\"\n [pinnedColumnCollection]=\"pinnedColumns\"\n [unpinnedColumnCollection]=\"unpinnedColumns\"\n (keydown.meta.c)=\"copyHandler($event)\"\n (keydown.control.c)=\"copyHandler($event)\"\n (copy)=\"copyHandler($event)\"\n (keydown)=\"navigation.headerNavigation($event)\"\n (scroll)=\"preventHeaderScroll($event)\"\n>\n</igx-pivot-header-row>\n\n<div igxGridBody (keydown.control.c)=\"copyHandler($event)\" (copy)=\"copyHandler($event)\" class=\"igx-grid__tbody\" role=\"rowgroup\">\n <ng-container *ngTemplateOutlet=\"rowDimensions.length ? defaultRowDimensionsTemplate : emptyRowDimensionsTemplate; context: this\"></ng-container>\n <div class=\"igx-grid__tbody-content\" tabindex=\"0\" [attr.role]=\"dataView.length ? null : 'row'\" (keydown)=\"navigation.handleNavigation($event)\" (focus)=\"navigation.focusTbody($event)\"\n (dragStop)=\"selectionService.dragMode = $event\" (scroll)='preventContainerScroll($event)'\n (dragScroll)=\"dragScroll($event)\" [igxGridDragSelect]=\"selectionService.dragMode\"\n [style.height.px]='totalHeight' [style.width.px]='calcWidth || null' #tbody [attr.aria-activedescendant]=\"activeDescendant\">\n <span *ngIf=\"hasMovableColumns && columnInDrag && pinnedColumns.length <= 0\"\n [igxColumnMovingDrop]=\"headerContainer\" [attr.droppable]=\"true\" id=\"left\"\n class=\"igx-grid__scroll-on-drag-left\"></span>\n <span *ngIf=\"hasMovableColumns && columnInDrag && pinnedColumns.length > 0\"\n [igxColumnMovingDrop]=\"headerContainer\" [attr.droppable]=\"true\" id=\"left\"\n class=\"igx-grid__scroll-on-drag-pinned\" [style.left.px]=\"pinnedWidth\"></span>\n <ng-template igxGridFor let-rowData [igxGridForOf]=\"data\n | pivotGridFilter:pivotConfiguration:filterStrategy:advancedFilteringExpressionsTree:filteringPipeTrigger:pipeTrigger\n | pivotGridSort:pivotConfiguration:sortStrategy:pipeTrigger\n | pivotGridRow:pivotConfiguration:expansionStates:pipeTrigger:sortingExpressions\n | pivotGridColumn:pivotConfiguration:expansionStates:pipeTrigger:sortingExpressions\n | pivotGridAutoTransform:pivotConfiguration:pipeTrigger\n | pivotGridColumnSort:sortingExpressions:sortStrategy:pipeTrigger\n | pivotGridRowExpansion:pivotConfiguration:expansionStates:defaultExpandState:pipeTrigger\"\n let-rowIndex=\"index\" [igxForScrollOrientation]=\"'vertical'\" [igxForScrollContainer]='verticalScroll'\n [igxForContainerSize]='calcHeight'\n [igxForItemSize]=\"hasColumnLayouts ? rowHeight * multiRowLayoutRowSize + 1 : renderedRowHeight\"\n #verticalScrollContainer>\n <ng-template\n [igxTemplateOutlet]='recordTemplate'\n [igxTemplateOutletContext]='getContext(rowData, rowIndex)'\n (cachedViewLoaded)='cachedViewLoaded($event)'>\n </ng-template>\n </ng-template>\n <ng-template #record_template let-rowIndex=\"index\" let-rowData>\n <igx-pivot-row [style.min-height.px]=\"renderedRowHeight\" [gridID]=\"id\" [index]=\"rowIndex\" [data]=\"rowData\"\n [ngClass]=\"rowClasses | igxGridRowClasses:row:row.inEditMode:row.selected:row.dirty:row.deleted:row.dragging:rowIndex:hasColumnLayouts:false:pipeTrigger\"\n [ngStyle]=\"rowStyles | igxGridRowStyles:rowData:rowIndex:pipeTrigger\" #row>\n </igx-pivot-row>\n </ng-template>\n\n <ng-container *ngTemplateOutlet=\"template\"></ng-container>\n <igc-trial-watermark></igc-trial-watermark>\n </div>\n <div igxToggle #loadingOverlay>\n <igx-circular-bar [indeterminate]=\"true\" *ngIf='shouldOverlayLoading'>\n </igx-circular-bar>\n </div>\n <span *ngIf=\"hasMovableColumns && columnInDrag\" [igxColumnMovingDrop]=\"headerContainer\" [attr.droppable]=\"true\"\n id=\"right\" class=\"igx-grid__scroll-on-drag-right\"></span>\n <div [hidden]='!hasVerticalScroll()' class=\"igx-grid__tbody-scrollbar\" [style.width.px]=\"scrollSize\" (pointerdown)=\"$event.preventDefault()\">\n <div class=\"igx-grid__tbody-scrollbar-start\" [style.height.px]=' isRowPinningToTop ? pinnedRowHeight : 0'></div>\n <div class=\"igx-grid__tbody-scrollbar-main\" [style.height.px]='calcHeight'>\n <ng-template igxGridFor [igxGridForOf]='[]' #verticalScrollHolder></ng-template>\n </div>\n <div class=\"igx-grid__tbody-scrollbar-end\" [style.height.px]='!isRowPinningToTop ? pinnedRowHeight : 0'></div>\n </div>\n\n <div class=\"igx-grid__addrow-snackbar\">\n <igx-snackbar #addRowSnackbar [outlet]=\"igxBodyOverlayOutlet\" [actionText]=\"resourceStrings.igx_grid_snackbar_addrow_actiontext\" [displayTime]='snackbarDisplayTime'>{{resourceStrings.igx_grid_snackbar_addrow_label}}</igx-snackbar>\n </div>\n\n <div #igxBodyOverlayOutlet=\"overlay-outlet\" igxOverlayOutlet></div>\n</div>\n\n<div class=\"igx-grid__scroll\" [style.height.px]=\"scrollSize\" #scr [hidden]=\"isHorizontalScrollHidden\" (pointerdown)=\"$event.preventDefault()\">\n <div class=\"igx-grid__scroll-start\" [style.width.px]='isPinningToStart ? pinnedWidth : headerFeaturesWidth' [style.min-width.px]='isPinningToStart ? pinnedWidth : headerFeaturesWidth'></div>\n <div class=\"igx-grid__scroll-main\" [style.width.px]='unpinnedWidth'>\n <ng-template igxGridFor [igxGridForOf]='EMPTY_DATA' #scrollContainer>\n </ng-template>\n </div>\n <div class=\"igx-grid__scroll-end\" [style.float]='\"right\"' [style.width.px]='pinnedWidth' [style.min-width.px]='pinnedWidth' [hidden]=\"pinnedWidth === 0 || isPinningToStart\"></div>\n</div>\n\n<div class=\"igx-grid__tfoot\" role=\"rowgroup\" #tfoot>\n</div>\n\n<div class=\"igx-grid__footer\" #footer>\n <ng-content select=\"igx-grid-footer\"></ng-content>\n</div>\n\n<ng-template #emptyFilteredGrid>\n <span class=\"igx-grid__tbody-message\" role=\"cell\">\n <span>{{emptyFilteredGridMessage}}</span>\n </span>\n</ng-template>\n\n<ng-template #defaultEmptyGrid>\n <span class=\"igx-grid__tbody-message\" role=\"cell\">\n <span>{{emptyGridMessage}}</span>\n </span>\n</ng-template>\n\n<ng-template #defaultLoadingGrid>\n <div class=\"igx-grid__loading\">\n <igx-circular-bar [indeterminate]=\"true\">\n </igx-circular-bar>\n </div>\n</ng-template>\n<igx-pivot-grid-column-resizer [restrictResizerTop]=\"theadRow.nativeElement.clientHeight\" *ngIf=\"colResizingService.showResizer\"></igx-pivot-grid-column-resizer>\n<div class=\"igx-grid__loading-outlet\" #igxLoadingOverlayOutlet igxOverlayOutlet></div>\n<div class=\"igx-grid__outlet\" #igxFilteringOverlayOutlet igxOverlayOutlet></div>\n\n<ng-template #headerTemplate let-column>\n <div class=\"igx-grid__tr--header\">\n <igx-icon [attr.draggable]=\"false\"\n (click)=\"toggleColumn(column)\">\n {{getColumnGroupExpandState(column) ? 'chevron_right' : 'expand_more'}}</igx-icon>\n {{column.header}}\n </div>\n</ng-template>\n\n<ng-template #defaultRowDimensionsTemplate>\n <div tabindex=\"0\" [style.height.px]='totalHeight' *ngFor='let dim of rowDimensions; let dimIndex = index;' #rowDimensionContainer role=\"rowgroup\" class='igx-grid__tbody-pivot-dimension' (focus)=\"navigation.focusTbody($event)\" (keydown)=\"navigation.handleNavigation($event)\">\n <ng-template igxGridFor let-rowData [igxGridForOf]=\"dataView\n | pivotGridCellMerging:pivotConfiguration:dim:pipeTrigger\"\n let-rowIndex=\"index\" [igxForScrollOrientation]=\"'vertical'\" [igxForScrollContainer]='verticalScroll'\n [igxForContainerSize]='calcHeight'\n [igxForItemSize]=\"renderedRowHeight\"\n [igxForSizePropName]='\"height\"'\n #verticalRowDimScrollContainer>\n <igx-pivot-row-dimension-content role='row' class=\"igx-grid-thead\" [grid]=\"this\"\n [dimension]='rowData.dimensions[dimIndex]'\n [rootDimension]='dim'\n [rowIndex]='rowIndex' [rowData]='rowData'\n [density]=\"displayDensity\" [width]=\"rowDimensionWidthToPixels(dim)\">\n </igx-pivot-row-dimension-content>\n </ng-template>\n </div>\n</ng-template>\n<ng-template #emptyRowDimensionsTemplate>\n <div tabindex=\"0\" *ngIf='columnDimensions.length > 0 || values.length > 0' #rowDimensionContainer role=\"rowgroup\" class='igx-grid__tbody-pivot-dimension' (focus)=\"navigation.focusTbody($event)\" (keydown)=\"navigation.handleNavigation($event)\">\n <igx-pivot-row-dimension-content role='row' class=\"igx-grid-thead\" [grid]=\"this\"\n [dimension]='emptyRowDimension'\n [rootDimension]='emptyRowDimension'\n [rowIndex]='0' [rowData]='dataView[0]'\n [density]=\"displayDensity\" [width]=\"rowDimensionWidthToPixels(emptyRowDimension)\">\n </igx-pivot-row-dimension-content>\n </div>\n</ng-template>\n\n<ng-template #emptyPivotGridTemplate>\n <span class=\"igx-grid__tbody-message\" role=\"cell\">\n <span>{{resourceStrings.igx_grid_pivot_empty_message}}</span>\n </span>\n</ng-template>\n\n<div [hidden]='true'>\n <igx-grid-excel-style-filtering [maxHeight]='excelStyleFilterMaxHeight' [minHeight]='excelStyleFilterMinHeight'>\n <div igxExcelStyleColumnOperations [hidden]='true'></div>\n <igx-excel-style-filter-operations>\n <igx-excel-style-search></igx-excel-style-search>\n </igx-excel-style-filter-operations>\n </igx-grid-excel-style-filtering>\n</div>\n" }]
|
|
87027
87016
|
}], ctorParameters: function () {
|
|
87028
87017
|
return [{ type: IgxGridSelectionService }, { type: IgxPivotColumnResizingService }, { type: GridBaseAPIService }, { type: IgxFlatTransactionFactory }, { type: i0.ElementRef }, { type: i0.NgZone }, { type: undefined, decorators: [{
|
|
87029
87018
|
type: Inject,
|
|
87030
87019
|
args: [DOCUMENT]
|
|
87031
|
-
}] }, { type: i0.ChangeDetectorRef }, { type: i0.ComponentFactoryResolver }, { type: i0.IterableDiffers }, { type: i0.ViewContainerRef }, { type: i0.ApplicationRef }, { type: i0.NgModuleRef }, { type: i0.
|
|
87020
|
+
}] }, { type: i0.ChangeDetectorRef }, { type: i0.ComponentFactoryResolver }, { type: i0.IterableDiffers }, { type: i0.ViewContainerRef }, { type: i0.ApplicationRef }, { type: i0.NgModuleRef }, { type: i0.Injector }, { type: IgxPivotGridNavigationService }, { type: IgxFilteringService }, { type: IgxOverlayService, decorators: [{
|
|
87032
87021
|
type: Inject,
|
|
87033
87022
|
args: [IgxOverlayService]
|
|
87034
87023
|
}] }, { type: IgxGridSummaryService }, { type: undefined, decorators: [{
|
|
@@ -87237,7 +87226,7 @@ class IgxPivotDateDimension {
|
|
|
87237
87226
|
this.memberName = 'AllPeriods';
|
|
87238
87227
|
this._resourceStrings = CurrentResourceStrings.GridResStrings;
|
|
87239
87228
|
/** @hidden @internal */
|
|
87240
|
-
this.memberFunction = (
|
|
87229
|
+
this.memberFunction = (_data) => this.resourceStrings.igx_grid_pivot_date_dimension_total;
|
|
87241
87230
|
const options = Object.assign(Object.assign({}, this.defaultOptions), inOptions);
|
|
87242
87231
|
if (!inBaseDimension) {
|
|
87243
87232
|
console.warn(`Please provide data child level to the pivot dimension.`);
|
|
@@ -87586,10 +87575,7 @@ class IgxPivotDataSelectorComponent {
|
|
|
87586
87575
|
const itemIndex = (dimension === null || dimension === void 0 ? void 0 : dimension.findIndex((x) => (x === null || x === void 0 ? void 0 : x.memberName) === itemId)) !== -1
|
|
87587
87576
|
? dimension === null || dimension === void 0 ? void 0 : dimension.findIndex((x) => x.memberName === itemId)
|
|
87588
87577
|
: dimension === null || dimension === void 0 ? void 0 : dimension.length;
|
|
87589
|
-
const dimensions = this.grid.
|
|
87590
|
-
.concat(this.grid.pivotConfiguration.columns)
|
|
87591
|
-
.concat(this.grid.pivotConfiguration.filters)
|
|
87592
|
-
.filter((x) => x && x.memberName === itemId);
|
|
87578
|
+
const dimensions = this.grid.allDimensions.filter((x) => x && x.memberName === itemId);
|
|
87593
87579
|
const reorder = (dimensionState === null || dimensionState === void 0 ? void 0 : dimensionState.findIndex((item) => item.memberName === itemId)) !==
|
|
87594
87580
|
-1;
|
|
87595
87581
|
let targetIndex = targetId !== ""
|