@datorama/core 21.4.0-rc.9 → 22.1.1-rc.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundle.scss +2 -2
- package/bundles/datorama-core.umd.js +113 -65
- package/bundles/datorama-core.umd.js.map +1 -1
- package/bundles/datorama-core.umd.min.js +5 -5
- package/bundles/datorama-core.umd.min.js.map +1 -1
- package/datorama-core.metadata.json +1 -1
- package/esm2015/lib/grid-v2/grid-controller/grid-controller.component.js +4 -1
- package/esm2015/lib/grid-v2/grid-filter/filter-validator.js +9 -9
- package/esm2015/lib/grid-v2/grid-filter/grid-filter.component.js +28 -16
- package/esm2015/lib/grid-v2/grid-filter/grid-filter.types.js +1 -1
- package/esm2015/lib/grid-v2/grid-pagination/grid-pagination.component.js +5 -2
- package/esm2015/lib/grid-v2/grid-store/grid.query.js +11 -8
- package/esm2015/lib/grid-v2/grid-store/grid.service.js +27 -14
- package/esm2015/lib/grid-v2/grid-toolbar/grid-toolbar.component.js +7 -2
- package/esm2015/lib/version.js +2 -2
- package/esm5/lib/grid-v2/grid-controller/grid-controller.component.js +4 -1
- package/esm5/lib/grid-v2/grid-filter/filter-validator.js +12 -9
- package/esm5/lib/grid-v2/grid-filter/grid-filter.component.js +28 -16
- package/esm5/lib/grid-v2/grid-filter/grid-filter.types.js +1 -1
- package/esm5/lib/grid-v2/grid-pagination/grid-pagination.component.js +5 -2
- package/esm5/lib/grid-v2/grid-store/grid.query.js +15 -12
- package/esm5/lib/grid-v2/grid-store/grid.service.js +48 -29
- package/esm5/lib/grid-v2/grid-toolbar/grid-toolbar.component.js +7 -2
- package/esm5/lib/version.js +2 -2
- package/fesm2015/datorama-core.js +85 -46
- package/fesm2015/datorama-core.js.map +1 -1
- package/fesm5/datorama-core.js +113 -65
- package/fesm5/datorama-core.js.map +1 -1
- package/lib/grid-v2/grid-controller/grid-controller.component.d.ts +3 -2
- package/lib/grid-v2/grid-filter/filter-validator.d.ts +4 -3
- package/lib/grid-v2/grid-filter/grid-filter.types.d.ts +3 -2
- package/lib/grid-v2/grid-store/grid.query.d.ts +3 -2
- package/lib/grid-v2/grid-store/grid.service.d.ts +4 -3
- package/lib/grid-v2/grid-toolbar/grid-toolbar.component.d.ts +1 -0
- package/package.json +1 -1
|
@@ -10094,11 +10094,10 @@ let GridQuery = class GridQuery extends Query {
|
|
|
10094
10094
|
if (this.gridRef.gridOptions.pivotMode) {
|
|
10095
10095
|
const { sort, colId } = this.api.grid.getSortModel().pop() || {};
|
|
10096
10096
|
const column = this.api.columns.getColumn(colId);
|
|
10097
|
-
const
|
|
10098
|
-
const pivotedColumn = secondaryColumns && secondaryColumns.find(col => col.getColId() === colId);
|
|
10097
|
+
const pivotedColumn = this.getSecondaryColumn(colId);
|
|
10099
10098
|
if (pivotedColumn) {
|
|
10100
|
-
const uniquePivotParents = uniq(
|
|
10101
|
-
const secondaryColumn =
|
|
10099
|
+
const uniquePivotParents = uniq(this.api.columns.getSecondaryColumns().map(column => column.getParent()));
|
|
10100
|
+
const secondaryColumn = this.getSecondaryColumn(pivotedColumn.getColId());
|
|
10102
10101
|
const pivotColIndex = uniquePivotParents.indexOf(secondaryColumn.getParent());
|
|
10103
10102
|
return { colId: getColField(pivotedColumn.getColDef()), sort, pivotColIndex };
|
|
10104
10103
|
}
|
|
@@ -10135,9 +10134,9 @@ let GridQuery = class GridQuery extends Query {
|
|
|
10135
10134
|
filterChanged() {
|
|
10136
10135
|
return this.selectFilter().pipe(map$1(filter => {
|
|
10137
10136
|
return Object.keys(filter).reduce((filters, field) => {
|
|
10138
|
-
|
|
10139
|
-
|
|
10140
|
-
filters.push({ field, filter:
|
|
10137
|
+
const datoFilter = filter[field];
|
|
10138
|
+
if (datoFilter) {
|
|
10139
|
+
filters.push({ field, filter: datoFilter });
|
|
10141
10140
|
}
|
|
10142
10141
|
return filters;
|
|
10143
10142
|
}, []);
|
|
@@ -10203,6 +10202,10 @@ let GridQuery = class GridQuery extends Query {
|
|
|
10203
10202
|
selectIsSelectAllRowsEnabled() {
|
|
10204
10203
|
return this.select(state => state.serverSidePagination.selectAllRowsEnabled);
|
|
10205
10204
|
}
|
|
10205
|
+
getSecondaryColumn(colId) {
|
|
10206
|
+
const secondaryColumns = this.api.columns.getSecondaryColumns();
|
|
10207
|
+
return secondaryColumns && secondaryColumns.find(col => col.getColId() === colId);
|
|
10208
|
+
}
|
|
10206
10209
|
filterCheckboxSelectionColumn(columns) {
|
|
10207
10210
|
return columns.filter((column) => !column.getUserProvidedColDef() || !column.getUserProvidedColDef().checkboxSelection);
|
|
10208
10211
|
}
|
|
@@ -10312,8 +10315,8 @@ function validateStringCondition(rowValue, { condition, value: filterValue }) {
|
|
|
10312
10315
|
return !isEmpty(valueLowerCase);
|
|
10313
10316
|
}
|
|
10314
10317
|
}
|
|
10315
|
-
function validateNumberCondition(unparsedRowValue, { condition, value, rangeEnd }) {
|
|
10316
|
-
const rowValue = !!unparsedRowValue ? parseFloat(unparsedRowValue) : null;
|
|
10318
|
+
function validateNumberCondition(unparsedRowValue, { condition, value, rangeEnd }, filterKey = '') {
|
|
10319
|
+
const rowValue = !!unparsedRowValue ? parseFloat(unparsedRowValue[filterKey] || unparsedRowValue) : null;
|
|
10317
10320
|
const filterValue = parseFloat(value);
|
|
10318
10321
|
switch (condition) {
|
|
10319
10322
|
case DatoFilterConditions.EQUALS:
|
|
@@ -10359,14 +10362,14 @@ function validateDateCondition(rowValue, { condition, value, rangeEnd }) {
|
|
|
10359
10362
|
return !isNil(rowValue);
|
|
10360
10363
|
}
|
|
10361
10364
|
}
|
|
10362
|
-
function validateCondition({ rowValue,
|
|
10365
|
+
function validateCondition({ rowValue, condition, type, filterKey }) {
|
|
10363
10366
|
switch (type) {
|
|
10364
10367
|
case DatoGridFilterTypes.Date:
|
|
10365
|
-
return validateDateCondition(rowValue,
|
|
10368
|
+
return validateDateCondition(rowValue, condition);
|
|
10366
10369
|
case DatoGridFilterTypes.Number:
|
|
10367
|
-
return validateNumberCondition(rowValue,
|
|
10370
|
+
return validateNumberCondition(rowValue, condition, filterKey);
|
|
10368
10371
|
default:
|
|
10369
|
-
return validateStringCondition(rowValue,
|
|
10372
|
+
return validateStringCondition(rowValue, condition);
|
|
10370
10373
|
}
|
|
10371
10374
|
}
|
|
10372
10375
|
function validateFilter({ row, api }, activeFilters) {
|
|
@@ -10375,7 +10378,7 @@ function validateFilter({ row, api }, activeFilters) {
|
|
|
10375
10378
|
for (const filter of orderedFilters) {
|
|
10376
10379
|
let filterPasses = true;
|
|
10377
10380
|
const { byValue, conditional, pivotKeys } = activeFilters[filter];
|
|
10378
|
-
const currentRowPivotKeys = row.parent.childrenMapped && getRowPivotKeys(row.parent.childrenMapped);
|
|
10381
|
+
const currentRowPivotKeys = (row.parent && row.parent.childrenMapped && getRowPivotKeys(row.parent.childrenMapped)) || [];
|
|
10379
10382
|
const rowValue = api.getValue(filter, row);
|
|
10380
10383
|
/** If value is under a pivoted column but doesn't match the filter pivot */
|
|
10381
10384
|
if (pivotKeys && pivotKeys.length > 0 && !isArrayValuesEqual(pivotKeys, currentRowPivotKeys)) {
|
|
@@ -10384,7 +10387,7 @@ function validateFilter({ row, api }, activeFilters) {
|
|
|
10384
10387
|
if (conditional) {
|
|
10385
10388
|
const { operator, conditions, type } = conditional;
|
|
10386
10389
|
const conditionsRelation = operator === OperatorTypes.AND ? 'every' : 'some';
|
|
10387
|
-
filterPasses = conditions[conditionsRelation](
|
|
10390
|
+
filterPasses = conditions[conditionsRelation](condition => validateCondition({ rowValue, condition, type: type, filterKey: filter }));
|
|
10388
10391
|
}
|
|
10389
10392
|
if (filterPasses && byValue) {
|
|
10390
10393
|
const includesValue = byValue.values.includes(rowValue);
|
|
@@ -11120,10 +11123,10 @@ const mapToValue = ({ value }) => value;
|
|
|
11120
11123
|
const ɵ0$1 = mapToValue;
|
|
11121
11124
|
const mapToListItem = val => ({ id: val, label: isNil(val) ? `(Empty)` : `${val}`.trim(), value: val });
|
|
11122
11125
|
const ɵ1$1 = mapToListItem;
|
|
11123
|
-
const mapToListItemWithFormatted = ({ value, formattedValue }) => ({
|
|
11124
|
-
id: value,
|
|
11125
|
-
label: isNil(formattedValue) ? `(Empty)` : `${formattedValue}`.trim(),
|
|
11126
|
-
value
|
|
11126
|
+
const mapToListItemWithFormatted = ({ value, formattedValue }, key) => ({
|
|
11127
|
+
id: key && value ? value[key] : value,
|
|
11128
|
+
label: isNil(formattedValue) ? `(Empty)` : `${key ? formattedValue[key] : formattedValue}`.trim(),
|
|
11129
|
+
value: key && value ? value[key] : value
|
|
11127
11130
|
});
|
|
11128
11131
|
const ɵ2$1 = mapToListItemWithFormatted;
|
|
11129
11132
|
let DatoGridFilterComponent = class DatoGridFilterComponent {
|
|
@@ -11209,15 +11212,18 @@ let DatoGridFilterComponent = class DatoGridFilterComponent {
|
|
|
11209
11212
|
ngOnInit() {
|
|
11210
11213
|
const { gridService, gridQuery } = this.popover.data;
|
|
11211
11214
|
const { filter, filtersConfig = {}, pivotValueColumn, pivotKeys } = this.colDef;
|
|
11215
|
+
const colDefs = gridQuery.api.columns.getAllColumns().map(column => column.getColDef());
|
|
11212
11216
|
this.colField = getColField(this.colDef);
|
|
11217
|
+
const colDef = colDefs.find(colDef => colDef.field === this.colField);
|
|
11218
|
+
const colFilter = filter || colDef.filter;
|
|
11219
|
+
const filterOptions = DatoGridFilterOptionsMap[colFilter];
|
|
11213
11220
|
this.pivotColumn = gridQuery.api.columns.getSecondaryPivotColumn(pivotKeys, pivotValueColumn);
|
|
11214
11221
|
if (filtersConfig.sections) {
|
|
11215
11222
|
this.filterSections = { [filtersConfig.sections]: true };
|
|
11216
11223
|
}
|
|
11217
11224
|
this.keepPredefinedListOriginalOrder =
|
|
11218
11225
|
filtersConfig.keepPredefinedListOriginalOrder && !isEmpty(filtersConfig.predefinedListValues);
|
|
11219
|
-
|
|
11220
|
-
this.filterType = filterOptions ? filter : DatoGridFilterTypes.String;
|
|
11226
|
+
this.filterType = filterOptions ? colFilter : DatoGridFilterTypes.String;
|
|
11221
11227
|
this.listLabelType = this.filterType.toLowerCase();
|
|
11222
11228
|
this.listSortByKey = this.filterType === DatoGridFilterTypes.Number && this.colDef.valueFormatter ? 'id' : 'label';
|
|
11223
11229
|
this.gridQuery = gridQuery;
|
|
@@ -11250,8 +11256,10 @@ let DatoGridFilterComponent = class DatoGridFilterComponent {
|
|
|
11250
11256
|
}
|
|
11251
11257
|
else {
|
|
11252
11258
|
const columnValues = this.getColumnValues();
|
|
11253
|
-
this.columnValues = columnValues.map(({ value }) =>
|
|
11254
|
-
|
|
11259
|
+
this.columnValues = columnValues.map(({ value }) => {
|
|
11260
|
+
return !isNil(this.pivotColumn) && value ? value[this.colField] : value;
|
|
11261
|
+
});
|
|
11262
|
+
this.listOptions = columnValues.map(colValue => mapToListItemWithFormatted(colValue, !isNil(this.pivotColumn) && this.colField));
|
|
11255
11263
|
}
|
|
11256
11264
|
}
|
|
11257
11265
|
else {
|
|
@@ -11289,6 +11297,7 @@ let DatoGridFilterComponent = class DatoGridFilterComponent {
|
|
|
11289
11297
|
isEmpty(filter)
|
|
11290
11298
|
? this.gridService.clearColumnFilter(this.colField)
|
|
11291
11299
|
: this.gridService.setColumnFilter(column, filter);
|
|
11300
|
+
this.gridService.notifyFilterUpdate();
|
|
11292
11301
|
}
|
|
11293
11302
|
}
|
|
11294
11303
|
clearFilters() {
|
|
@@ -11334,19 +11343,25 @@ let DatoGridFilterComponent = class DatoGridFilterComponent {
|
|
|
11334
11343
|
buildFilter() {
|
|
11335
11344
|
const { byValue, conditional } = this.filterForm.value;
|
|
11336
11345
|
const filter = {};
|
|
11337
|
-
filter.pivotKeys = this.pivotKeys;
|
|
11338
|
-
if (this.pivotColumn) {
|
|
11339
|
-
filter.pivotFieldsMap = this.getPivotFields(this.pivotColumn.getParent()).reduce((fieldMap, field, index) => {
|
|
11340
|
-
fieldMap[field] = this.pivotKeys[index];
|
|
11341
|
-
return fieldMap;
|
|
11342
|
-
}, {});
|
|
11343
|
-
}
|
|
11344
11346
|
if (this.filterSections.Conditional) {
|
|
11345
11347
|
this.setConditionalFilter(filter, conditional);
|
|
11346
11348
|
}
|
|
11347
11349
|
if (this.filterSections.By_Value) {
|
|
11348
11350
|
this.setByValueFilter(filter, byValue);
|
|
11349
11351
|
}
|
|
11352
|
+
/** If filters applied, add the extra properties to be used by pivot mode */
|
|
11353
|
+
if (filter.byValue || filter.conditional) {
|
|
11354
|
+
filter.colId = this.colDef.colId;
|
|
11355
|
+
filter.pivotKeys = this.pivotKeys;
|
|
11356
|
+
if (this.pivotColumn) {
|
|
11357
|
+
filter.pivotFieldsMap = this.getPivotFields(this.pivotColumn.getParent()).reduce((fieldMap, field, index) => {
|
|
11358
|
+
if (this.pivotKeys[index]) {
|
|
11359
|
+
fieldMap[field] = this.pivotKeys[index];
|
|
11360
|
+
}
|
|
11361
|
+
return fieldMap;
|
|
11362
|
+
}, {});
|
|
11363
|
+
}
|
|
11364
|
+
}
|
|
11350
11365
|
return filter;
|
|
11351
11366
|
}
|
|
11352
11367
|
initForm() {
|
|
@@ -12630,19 +12645,39 @@ let GridService = class GridService {
|
|
|
12630
12645
|
});
|
|
12631
12646
|
this.notifyFilterUpdate();
|
|
12632
12647
|
}
|
|
12633
|
-
setColumnFilter(column, filter) {
|
|
12648
|
+
setColumnFilter(column, filter, notifyGrid = true) {
|
|
12634
12649
|
this._logEvent("Grids - Filter Applied" /* GRID_FILTER_APPLIED */, {
|
|
12635
12650
|
column: column.getColId(),
|
|
12636
12651
|
numOfConditions: (filter.conditional && filter.conditional.conditions.length) || 0,
|
|
12637
12652
|
byValue: !!filter.byValue ? 'Yes' : 'No'
|
|
12638
12653
|
});
|
|
12654
|
+
this.updateFilter(column, filter);
|
|
12655
|
+
if (notifyGrid) {
|
|
12656
|
+
this.notifyFilterUpdate();
|
|
12657
|
+
}
|
|
12658
|
+
}
|
|
12659
|
+
setGridFilters(filters) {
|
|
12660
|
+
if (this.api) {
|
|
12661
|
+
for (const { filter } of filters) {
|
|
12662
|
+
const column = this.api.columns.getColumn(filter.colId);
|
|
12663
|
+
if (column) {
|
|
12664
|
+
this.setColumnFilter(column, filter);
|
|
12665
|
+
}
|
|
12666
|
+
else {
|
|
12667
|
+
const pivotColumn = this.gridQuery.getSecondaryColumn(filter.colId);
|
|
12668
|
+
this.setColumnFilter(pivotColumn, filter);
|
|
12669
|
+
}
|
|
12670
|
+
}
|
|
12671
|
+
this.notifyFilterUpdate();
|
|
12672
|
+
}
|
|
12673
|
+
}
|
|
12674
|
+
updateFilter(column, filter) {
|
|
12639
12675
|
const colField = getColField(column.getColDef());
|
|
12640
12676
|
this.store.update(state => {
|
|
12641
12677
|
return {
|
|
12642
12678
|
settings: Object.assign(Object.assign({}, state.settings), { filter: Object.assign(Object.assign({}, state.settings.filter), { [colField]: filter }) })
|
|
12643
12679
|
};
|
|
12644
12680
|
});
|
|
12645
|
-
this.notifyFilterUpdate();
|
|
12646
12681
|
}
|
|
12647
12682
|
setSearchTerm(searchTerm) {
|
|
12648
12683
|
this.store.update(state => {
|
|
@@ -13097,19 +13132,12 @@ let GridService = class GridService {
|
|
|
13097
13132
|
/**
|
|
13098
13133
|
* When pivoting,
|
|
13099
13134
|
* we add the field name to the column header class in order to access it through the auto generated pivot column.
|
|
13100
|
-
* @private
|
|
13101
13135
|
*/
|
|
13102
13136
|
initPivotSecondaryColsProcess({ gridOptions }) {
|
|
13103
13137
|
gridOptions.processSecondaryColDef = colDef => {
|
|
13104
|
-
const
|
|
13105
|
-
if (
|
|
13106
|
-
|
|
13107
|
-
const originalColDef = valueColumns
|
|
13108
|
-
.map(({ userProvidedColDef }) => userProvidedColDef)
|
|
13109
|
-
.find(({ colId }) => colId === colDef.pivotValueColumn.getColId());
|
|
13110
|
-
if (originalColDef) {
|
|
13111
|
-
colDef.filter = originalColDef.filter;
|
|
13112
|
-
}
|
|
13138
|
+
const userProvidedColDef = colDef.pivotValueColumn && colDef.pivotValueColumn.getUserProvidedColDef();
|
|
13139
|
+
if (userProvidedColDef) {
|
|
13140
|
+
colDef.filter = userProvidedColDef.filter;
|
|
13113
13141
|
}
|
|
13114
13142
|
if (colDef.pivotKeys) {
|
|
13115
13143
|
colDef.pivotKeys = colDef.pivotKeys.map(key => {
|
|
@@ -13125,7 +13153,7 @@ let GridService = class GridService {
|
|
|
13125
13153
|
const { field, value } = parsedValue;
|
|
13126
13154
|
colGroupDef.headerClass = [field];
|
|
13127
13155
|
colGroupDef.headerName = value;
|
|
13128
|
-
if (colGroupDef.children && colGroupDef.children.length >
|
|
13156
|
+
if (colGroupDef.children && colGroupDef.children.length > 0) {
|
|
13129
13157
|
colGroupDef.headerClass.push('group-pivot-cell');
|
|
13130
13158
|
}
|
|
13131
13159
|
}
|
|
@@ -13646,6 +13674,9 @@ let DatoGridControllerComponent = class DatoGridControllerComponent {
|
|
|
13646
13674
|
setGridRows(data) {
|
|
13647
13675
|
this.gridService.setRows(data);
|
|
13648
13676
|
}
|
|
13677
|
+
setGridFilters(filters) {
|
|
13678
|
+
this.gridService.setGridFilters(filters);
|
|
13679
|
+
}
|
|
13649
13680
|
onFilterChanged() {
|
|
13650
13681
|
return this.gridQuery.filterChanged();
|
|
13651
13682
|
}
|
|
@@ -14451,6 +14482,9 @@ let DatoGridPaginationV2Component = class DatoGridPaginationV2Component {
|
|
|
14451
14482
|
toggleGroupsState() {
|
|
14452
14483
|
this.isExpanded ? this.gridApi.collapseAll() : this.gridApi.expandAll();
|
|
14453
14484
|
this.isExpanded = !this.isExpanded;
|
|
14485
|
+
// this.gridApi.forEachNode((node: RowNode) => {
|
|
14486
|
+
// node.setExpanded(this.isExpanded);
|
|
14487
|
+
// });
|
|
14454
14488
|
}
|
|
14455
14489
|
autoFitGrid(type) {
|
|
14456
14490
|
this.gridService.fitGrid(type);
|
|
@@ -14544,7 +14578,7 @@ DatoGridPaginationV2Component = __decorate([
|
|
|
14544
14578
|
Component({
|
|
14545
14579
|
selector: 'dato-grid-pagination-v2',
|
|
14546
14580
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
14547
|
-
template: "<div class=\"d-flex-row d-flex-auto d-flex-wrap container\" [class.small]=\"smallVersion\"\n [attr.data-pages-count]=\"totalPages\"\n [attr.data-current-page]=\"pageNumbersDisplay.currentPage\"\n [attr.data-page-size]=\"rowsPerPage\"\n [attr.data-rows-count]=\"rowCount\">\n <div *ngIf=\"totalPages > 1\" #navigation\n class=\"navigation d-flex-row d-flex-0-0-auto align-center\">\n\n <!-- First Page -->\n <dato-icon-button *ngIf=\"!disableButtons\"\n class=\"mr-4\" data-auto-id=\"pagiantion-first-page\"\n icon=\"chevron-left-double\"\n datoType=\"secondary\"\n datoSize=\"md\"\n [disabled]=\"prevPageDisabled\"\n (click)=\"navigateFirstPage()\">\n </dato-icon-button>\n\n <!-- Previous Page -->\n <dato-icon-button icon=\"arrow-left\" datoType=\"secondary\" datoSize=\"md\"\n [disabled]=\"prevPageDisabled\" data-auto-id=\"pagiantion-previous-page\"\n (click)=\"navigatePrevPage()\">\n </dato-icon-button>\n\n\n <div class=\"d-flex mx-5 align-center number-container\">\n <dato-link class=\"page-number mx-5\" datoType=\"secondary\" datoSize=\"sm\" data-auto-id=\"pagiantion-previous-batch\"\n *ngIf=\"pageNumbersDisplay.showFirstEllipsis && !smallVersion\"\n (click)=\"showPreviousBatch()\">...\n </dato-link>\n <dato-link class=\"page-number mx-5\" [datoType]=\"page === pageNumbersDisplay.currentPage ? 'primary' : 'secondary'\" datoSize=\"sm\"\n *ngFor=\"let page of pageNumbersDisplay.pages; index as i; trackBy: trackByPage;\" [attr.data-auto-id]=\"'pagiantion-page-' + i\"\n (click)=\"navigatePage(page - 1)\">\n {{page}}\n </dato-link>\n\n <div class=\"d-flex\" *ngIf=\"pageNumbersDisplay.showLastPage && !smallVersion\">\n <dato-link class=\"page-number mx-5\" datoType=\"secondary\" datoSize=\"sm\" data-auto-id=\"pagiantion-next-batch\"\n (click)=\"showNextBatch()\">...</dato-link>\n <dato-link class=\"page-number mx-5\" datoType=\"secondary\" datoSize=\"sm\"\n [attr.data-auto-id]=\"'pagiantion-page-' + totalPages\"\n (click)=\"navigatePage(totalPages - 1)\">\n {{totalPages}}\n </dato-link>\n </div>\n\n </div>\n\n <!-- Next Page -->\n <dato-icon-button icon=\"arrow-right\" datoType=\"secondary\" datoSize=\"md\"\n (click)=\"navigateNextPage()\" data-auto-id=\"pagiantion-next-page\"\n [disabled]=\"nextPageDisabled\">\n </dato-icon-button>\n\n <!-- Last Page -->\n <dato-icon-button *ngIf=\"!disableButtons\"\n class=\"ml-4\" icon=\"chevron-right-double\"\n datoType=\"secondary\" datoSize=\"md\" data-auto-id=\"pagiantion-last-page\"\n [disabled]=\"nextPageDisabled\"\n (click)=\"navigatePage(totalPages - 1)\">\n </dato-icon-button>\n\n </div>\n\n <div *ngIf=\"totalPages > 1 && !smallVersion\"\n class=\"separator mx-10 my-auto primary-100-background-color\">\n </div>\n\n <div class=\"total d-flex-0-0-auto d-flex-row align-center\">\n <span class=\"dato-note primary-300-color\">{{rowsRange}}</span>\n </div>\n\n <div *ngIf=\"showBottomControls\" class=\"grid-controls d-flex d-flex-1 justify-end\">\n <dato-icon-button [icon]=\"isExpanded ? 'collapse' : 'expand'\" datoType=\"secondary\" datoSize=\"md\"\n (click)=\"toggleGroupsState()\" data-auto-id=\"pagiantion-
|
|
14581
|
+
template: "<div class=\"d-flex-row d-flex-auto d-flex-wrap container\" [class.small]=\"smallVersion\"\n [attr.data-pages-count]=\"totalPages\"\n [attr.data-current-page]=\"pageNumbersDisplay.currentPage\"\n [attr.data-page-size]=\"rowsPerPage\"\n [attr.data-rows-count]=\"rowCount\">\n <div *ngIf=\"totalPages > 1\" #navigation\n class=\"navigation d-flex-row d-flex-0-0-auto align-center\">\n\n <!-- First Page -->\n <dato-icon-button *ngIf=\"!disableButtons\"\n class=\"mr-4\" data-auto-id=\"pagiantion-first-page\"\n icon=\"chevron-left-double\"\n datoType=\"secondary\"\n datoSize=\"md\"\n [disabled]=\"prevPageDisabled\"\n (click)=\"navigateFirstPage()\">\n </dato-icon-button>\n\n <!-- Previous Page -->\n <dato-icon-button icon=\"arrow-left\" datoType=\"secondary\" datoSize=\"md\"\n [disabled]=\"prevPageDisabled\" data-auto-id=\"pagiantion-previous-page\"\n (click)=\"navigatePrevPage()\">\n </dato-icon-button>\n\n\n <div class=\"d-flex mx-5 align-center number-container\">\n <dato-link class=\"page-number mx-5\" datoType=\"secondary\" datoSize=\"sm\" data-auto-id=\"pagiantion-previous-batch\"\n *ngIf=\"pageNumbersDisplay.showFirstEllipsis && !smallVersion\"\n (click)=\"showPreviousBatch()\">...\n </dato-link>\n <dato-link class=\"page-number mx-5\" [datoType]=\"page === pageNumbersDisplay.currentPage ? 'primary' : 'secondary'\" datoSize=\"sm\"\n *ngFor=\"let page of pageNumbersDisplay.pages; index as i; trackBy: trackByPage;\" [attr.data-auto-id]=\"'pagiantion-page-' + i\"\n (click)=\"navigatePage(page - 1)\">\n {{page}}\n </dato-link>\n\n <div class=\"d-flex\" *ngIf=\"pageNumbersDisplay.showLastPage && !smallVersion\">\n <dato-link class=\"page-number mx-5\" datoType=\"secondary\" datoSize=\"sm\" data-auto-id=\"pagiantion-next-batch\"\n (click)=\"showNextBatch()\">...</dato-link>\n <dato-link class=\"page-number mx-5\" datoType=\"secondary\" datoSize=\"sm\"\n [attr.data-auto-id]=\"'pagiantion-page-' + totalPages\"\n (click)=\"navigatePage(totalPages - 1)\">\n {{totalPages}}\n </dato-link>\n </div>\n\n </div>\n\n <!-- Next Page -->\n <dato-icon-button icon=\"arrow-right\" datoType=\"secondary\" datoSize=\"md\"\n (click)=\"navigateNextPage()\" data-auto-id=\"pagiantion-next-page\"\n [disabled]=\"nextPageDisabled\">\n </dato-icon-button>\n\n <!-- Last Page -->\n <dato-icon-button *ngIf=\"!disableButtons\"\n class=\"ml-4\" icon=\"chevron-right-double\"\n datoType=\"secondary\" datoSize=\"md\" data-auto-id=\"pagiantion-last-page\"\n [disabled]=\"nextPageDisabled\"\n (click)=\"navigatePage(totalPages - 1)\">\n </dato-icon-button>\n\n </div>\n\n <div *ngIf=\"totalPages > 1 && !smallVersion\"\n class=\"separator mx-10 my-auto primary-100-background-color\">\n </div>\n\n <div class=\"total d-flex-0-0-auto d-flex-row align-center\">\n <span class=\"dato-note primary-300-color\">{{rowsRange}}</span>\n </div>\n\n <div *ngIf=\"showBottomControls\" class=\"grid-controls d-flex d-flex-1 justify-end\">\n <dato-icon-button [icon]=\"isExpanded ? 'collapse' : 'expand'\" datoType=\"secondary\" datoSize=\"md\"\n (click)=\"toggleGroupsState()\" data-auto-id=\"pagiantion-expand-collapse\"\n [datoTooltipV2]=\"isExpanded ? 'core.collapse-rows' : 'core.expand-rows'\">\n </dato-icon-button>\n\n <dato-icon-button class=\"mx-4\" icon=\"maximize-horizontal\" datoType=\"secondary\" datoSize=\"md\"\n (click)=\"autoFitGrid('content')\" [datoTooltipV2]=\"'core.fit-to-content'\"\n data-auto-id=\"pagiantion-fit-to-content\">\n </dato-icon-button>\n\n <dato-icon-button icon=\"minimize-horizontal\" datoType=\"secondary\" datoSize=\"md\"\n (click)=\"autoFitGrid('container')\" [datoTooltipV2]=\"'core.fit-to-container'\"\n data-auto-id=\"pagiantion-fit-to-container\">\n </dato-icon-button>\n </div>\n</div>\n",
|
|
14548
14582
|
providers: [DecimalPipe],
|
|
14549
14583
|
styles: [":host{padding:12px 0;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;min-height:25px}:host .container{height:25px}:host .navigation .page-number{transition:color .3s ease-in-out}:host .navigation .page-number:first-of-type{margin-left:7px}:host .navigation .page-number:last-of-type{margin-right:7px}:host .separator{width:1px;height:25px}:host .container.small .navigation,:host .container.small .total{margin-top:8px;margin-left:auto;margin-right:auto}"]
|
|
14550
14584
|
}),
|
|
@@ -14651,6 +14685,7 @@ let DatoGridV2ToolbarComponent = class DatoGridV2ToolbarComponent {
|
|
|
14651
14685
|
this.gridActions = { mainList: [], moreMenu: [] };
|
|
14652
14686
|
this.searchPlaceholder = this.translate.transform('core.search');
|
|
14653
14687
|
this.rowActionsShortLabelThreshold = 1539;
|
|
14688
|
+
this.displayCustomGridActionsSeparator = true;
|
|
14654
14689
|
this.openMenus = {
|
|
14655
14690
|
group: false,
|
|
14656
14691
|
settings: false
|
|
@@ -15004,10 +15039,14 @@ __decorate([
|
|
|
15004
15039
|
Input(),
|
|
15005
15040
|
__metadata("design:type", Number)
|
|
15006
15041
|
], DatoGridV2ToolbarComponent.prototype, "rowActionsShortLabelThreshold", void 0);
|
|
15042
|
+
__decorate([
|
|
15043
|
+
Input(),
|
|
15044
|
+
__metadata("design:type", Object)
|
|
15045
|
+
], DatoGridV2ToolbarComponent.prototype, "displayCustomGridActionsSeparator", void 0);
|
|
15007
15046
|
DatoGridV2ToolbarComponent = __decorate([
|
|
15008
15047
|
Component({
|
|
15009
15048
|
selector: 'dato-grid-toolbar-v2',
|
|
15010
|
-
template: "<section *ngIf=\"gridController.gridQuery.gridReady$ | async\" class=\"d-flex mb-20 justify-between items-center main-container\" [class.mx-30]=\"enableBackground\">\n\n <section [ngClass]=\"{ 'd-flex items-center right-section': enableV2_1 }\">\n <!-- Dynamic content for the left area -->\n <div data-auto-id=\"grid-toolbar-dynamic-left\">\n <ng-content select=\"[toolbarLeftArea]\"></ng-content>\n </div>\n\n <div class=\"d-flex items-center\">\n <dato-grid-search-bar *ngIf=\"enableSearch\" [searchPlaceholder]=\"searchPlaceholder\"></dato-grid-search-bar>\n <ng-container *ngIf=\"enableV2_1 && selectedRowsCount > 0\">\n <div class=\"d-flex items-center\">\n <div class=\"chip align-center d-flex dato-note px-9 nowrap ml-16\">\n <span data-auto-id=\"grid-selected-items-text\">{{ (allPageRowsSelected ? 'core.all-items-in-page-selected' : 'core.selected-items') | translate:{ itemsCount: selectedRowsCount } }}</span>\n <dato-icon datoType=\"primary\" datoIcon=\"close\" datoSize=\"md\" class=\"ml-6 pointer\" (click)=\"clearSelectedRows()\"\n data-auto-id=\"grid-clear-selected-rows\"></dato-icon>\n </div>\n <dato-link *ngIf=\"allPageRowsSelected\" (click)=\"selectAllPages()\" datoSize=\"sm\" class=\"ml-10\"\n data-auto-id=\"grid-select-all-pages\">\n <span>{{'core.select-all-items' | translate:{ itemsCount: totalRowsCount } }}</span>\n </dato-link>\n </div>\n <div *ngIf=\"hasRowActions\" class=\"separator\"></div>\n </ng-container>\n </div>\n\n <!-- Row Actions-->\n <div class=\"d-flex items-center\" *ngIf=\"isRowActionsVisible\">\n\n <ng-container *ngFor=\"let rowAction of rowActions.mainList; index as i; last as isLast\">\n\n <div *ngIf=\"!isRowActionHidden(rowAction)\"\n [attr.data-auto-id]=\"'grid-toolbar-action-' + rowAction.key\"\n [attr.data-action-index]=\"'grid-toolbar-action-' + i\"\n [class.disabled-action]=\"isActionDisabled(rowAction)\">\n <ng-container [ngTemplateOutlet]=\"rowAction.template || defaultButton\"\n [ngTemplateOutletContext]=\"{disabled: isActionDisabled(rowAction)}\"></ng-container>\n </div>\n\n <ng-template #defaultButton>\n <div (click)=\"onActionClick(rowAction)\">\n <dato-grid-toolbar-button [icon]=\"rowAction.icon\"\n [disabled]=\"isActionDisabled(rowAction)\"\n [label]=\"rowAction.label\"\n [shortLabel]=\"rowAction.shortLabel\"\n [tooltip]=\"rowAction.tooltip\"\n [getMenu]=\"rowAction.getMenu\"\n [enableV2_1]=\"enableV2_1\"\n [isLast]=\"isLast\"\n [widthToHideLabel]=\"widthToHideActionsLabels\">\n </dato-grid-toolbar-button>\n </div>\n </ng-template>\n </ng-container>\n\n <div *ngIf=\"rowActions.moreMenu.length > 0\" class=\"separator\"></div>\n <dato-grid-toolbar-more-menu [actions]=\"rowActions.moreMenu\" (actionClick)=\"onActionClick($event)\" [isRowActions]=\"true\">\n </dato-grid-toolbar-more-menu>\n </div>\n\n </section>\n\n\n <!-- General Actions -->\n <div class=\"d-flex items-center\">\n <!-- Dynamic content for the right area -->\n <div #customActions data-auto-id=\"grid-toolbar-dynamic-right\">\n <ng-content select=\"[toolbarRightArea]\"></ng-content>\n </div>\n <div *ngIf=\"customActions.childNodes.length\" class=\"separator\"></div>\n <!-- Group buttons -->\n <div *ngIf=\"groupsAllowed\" class=\"d-flex grouping-section opacity-0 invisible\" [class.open]=\"openMenus.group || hasGroups\">\n <dato-icon-button [class.active]=\"openMenus.group\" (click)=\"executeTableAction('Group from Toolbar')\"\n data-auto-id=\"grid-toolbar-open-groups\"\n removeIconPadding datoSize=\"md\" datoType=\"none\" icon=\"group\" iconWidth=\"17px\"\n datoTooltip=\"core.row-grouping\" #groupTrigger\n class=\"mr-10 pointer\"></dato-icon-button>\n <dato-icon-button data-auto-id=\"grid-toolbar-toggle-expand\" datoSize=\"md\" datoType=\"none\"\n (click)=\"executeTableAction('Collapse Expand')\"\n [icon]=\"rowGroupsCollapsed ? 'expand' : 'collapse'\"\n [disabled]=\"!hasGroups\"\n [datoTooltip]=\"'core.' + (rowGroupsCollapsed ? 'expand' : 'collapse') + '-rows'\"\n class=\"pointer\"></dato-icon-button>\n <div class=\"separator\"></div>\n </div>\n\n <!-- Settings and export -->\n <ng-container *ngIf=\"createAction\">\n <dato-button datoSize=\"sm\" class=\"pointer primary-300-color\" (click)=\"onActionClick(createAction)\"\n [datoTooltip]=\"createAction.tooltip\" [attr.data-auto-id]=\"'grid-toolbar-action-' + createAction.key\">\n <dato-icon *ngIf=\"createAction.icon\" [icon]=\"createAction.icon\" class=\"mr-5\"></dato-icon>\n {{ createAction.label | translate }}\n </dato-button>\n <div class=\"separator\"></div>\n </ng-container>\n <ng-container *ngFor=\"let gridAction of gridActions.mainList; index as i\">\n <div *ngIf=\"gridAction.getMenu else button\" [datoMenuTriggerFor]=\"gridAction.getMenu()\">\n <ng-container [ngTemplateOutlet]=\"button\"></ng-container>\n </div>\n <ng-template #button>\n <dato-icon datoSize=\"sm\" (click)=\"onActionClick(gridAction)\"\n [attr.data-auto-id]=\"'grid-toolbar-action-' + gridAction.key\"\n [attr.data-action-index]=\"'grid-toolbar-general-action-' + i\"\n [icon]=\"gridAction.icon\" class=\"pointer primary-300-color\"\n [class.mr-16]=\"!gridAction.separator\"\n [datoTooltip]=\"gridAction.tooltip || gridAction.label\">\n </dato-icon>\n </ng-template>\n <div *ngIf=\"gridAction.separator\" class=\"separator\"></div>\n </ng-container>\n\n <dato-icon data-auto-id=\"grid-toolbar-export\" datoSize=\"sm\"\n (click)=\"executeTableAction('Export')\" *ngIf=\"displayExport && !isTreeMode\"\n icon=\"export\" class=\"pointer mr-16 primary-300-color\" datoTooltip=\"core.export-table\"></dato-icon>\n <dato-icon [class.active]=\"openMenus.settings\" (click)=\"openMenus.settings = true\"\n data-auto-id=\"grid-toolbar-settings\" datoSize=\"sm\"\n icon=\"account\" class=\"pointer primary-300-color\" datoTooltip=\"core.table-settings\"\n #settingsTrigger\n [datoMenuTriggerFor]=\"settingsMenu\"></dato-icon>\n\n <ng-container *ngIf=\"gridActions.moreMenu.length > 0\">\n <div class=\"separator\"></div>\n <dato-grid-toolbar-more-menu [actions]=\"gridActions.moreMenu\" (actionClick)=\"onActionClick($event)\" [isRowActions]=\"false\">\n </dato-grid-toolbar-more-menu>\n </ng-container>\n\n\n <dato-menu #settingsMenu=\"datoMenu\" menuClass=\"grid-settings-menu\" placement=\"bottom-end\"\n (menuClosed)=\"openMenus.settings = false\">\n <ng-template datoMenuContent>\n <button data-auto-id=\"grid-toolbar-settings-autofit-page\" datoMenuItem\n (click)=\"executeTableAction('Autofit to Page')\">\n <dato-icon datoSize=\"sm\" icon=\"maximize-horizontal\" class=\"mr-8 primary-300-color\"></dato-icon>\n {{ 'core.autofitPage' | translate }}</button>\n <button data-auto-id=\"grid-toolbar-settings-autofit-content\" datoMenuItem\n (click)=\"executeTableAction('Autofit to Content')\">\n <dato-icon datoSize=\"sm\" icon=\"minimize-horizontal\" class=\"mr-8 primary-300-color\"></dato-icon>\n {{ 'core.autofitContent' | translate }}</button>\n <ng-container *ngIf=\"groupsAllowed\">\n <button data-auto-id=\"grid-toolbar-settings-group\" datoMenuItem (click)=\"executeTableAction('Group from Settings')\">\n <dato-icon datoSize=\"sm\" icon=\"group\" class=\"mr-4 primary-300-color\"></dato-icon>\n {{ 'core.group' | translate }}\n </button>\n </ng-container>\n <button data-auto-id=\"grid-toolbar-settings-toggle-columns\" datoMenuItem (click)=\"executeTableAction('Show Hide Column')\">\n <dato-icon datoSize=\"sm\" icon=\"hide\" class=\"mr-8 primary-300-color\"></dato-icon>\n <span>{{ 'core.hideShowColumns' | translate }}<span\n class=\"dato-simple-italic ml-5 primary-200-color\">{{hiddenColumns}}</span></span>\n </button>\n <button data-auto-id=\"grid-toolbar-settings-reset-settings\" datoMenuItem\n (click)=\"executeTableAction('Reset Settings')\">\n <dato-icon datoSize=\"sm\" icon=\"reset-table\" class=\"mr-8 primary-300-color\"></dato-icon>\n {{ 'core.resetTableSettings' | translate }}\n </button>\n <button data-auto-id=\"grid-toolbar-settings-reset-filters\" datoMenuItem\n (click)=\"executeTableAction('Reset Filters')\">\n <dato-icon datoSize=\"sm\" icon=\"reset-filters\" class=\"mr-8 primary-300-color\"></dato-icon>\n {{ 'core.resetAllFilters' | translate }}\n </button>\n <button data-auto-id=\"grid-toolbar-export\" datoMenuItem\n (click)=\"executeTableAction('Export')\" *ngIf=\"this.displayExport && isTreeMode\">\n <dato-icon datoSize=\"sm\"\n icon=\"export\" class=\"pointer mr-5 primary-300-color\" datoTooltip=\"core.export-table\"></dato-icon>\n {{ 'core.export-table' | translate }}\n </button>\n </ng-template>\n </dato-menu>\n </div>\n</section>\n\n\n",
|
|
15049
|
+
template: "<section *ngIf=\"gridController.gridQuery.gridReady$ | async\" class=\"d-flex mb-20 justify-between items-center main-container\" [class.mx-30]=\"enableBackground\">\n\n <section [ngClass]=\"{ 'd-flex items-center right-section': enableV2_1 }\">\n <!-- Dynamic content for the left area -->\n <div data-auto-id=\"grid-toolbar-dynamic-left\">\n <ng-content select=\"[toolbarLeftArea]\"></ng-content>\n </div>\n\n <div class=\"d-flex items-center\">\n <dato-grid-search-bar *ngIf=\"enableSearch\" [searchPlaceholder]=\"searchPlaceholder\"></dato-grid-search-bar>\n <ng-container *ngIf=\"enableV2_1 && selectedRowsCount > 0\">\n <div class=\"d-flex items-center\">\n <div class=\"chip align-center d-flex dato-note px-9 nowrap ml-16\">\n <span data-auto-id=\"grid-selected-items-text\">{{ (allPageRowsSelected ? 'core.all-items-in-page-selected' : 'core.selected-items') | translate:{ itemsCount: selectedRowsCount } }}</span>\n <dato-icon datoType=\"primary\" datoIcon=\"close\" datoSize=\"md\" class=\"ml-6 pointer\" (click)=\"clearSelectedRows()\"\n data-auto-id=\"grid-clear-selected-rows\"></dato-icon>\n </div>\n <dato-link *ngIf=\"allPageRowsSelected\" (click)=\"selectAllPages()\" datoSize=\"sm\" class=\"ml-10\"\n data-auto-id=\"grid-select-all-pages\">\n <span>{{'core.select-all-items' | translate:{ itemsCount: totalRowsCount } }}</span>\n </dato-link>\n </div>\n <div *ngIf=\"hasRowActions\" class=\"separator\"></div>\n </ng-container>\n </div>\n\n <!-- Row Actions-->\n <div class=\"d-flex items-center\" *ngIf=\"isRowActionsVisible\">\n\n <ng-container *ngFor=\"let rowAction of rowActions.mainList; index as i; last as isLast\">\n\n <div *ngIf=\"!isRowActionHidden(rowAction)\"\n [attr.data-auto-id]=\"'grid-toolbar-action-' + rowAction.key\"\n [attr.data-action-index]=\"'grid-toolbar-action-' + i\"\n [class.disabled-action]=\"isActionDisabled(rowAction)\">\n <ng-container [ngTemplateOutlet]=\"rowAction.template || defaultButton\"\n [ngTemplateOutletContext]=\"{disabled: isActionDisabled(rowAction)}\"></ng-container>\n </div>\n\n <ng-template #defaultButton>\n <div (click)=\"onActionClick(rowAction)\">\n <dato-grid-toolbar-button [icon]=\"rowAction.icon\"\n [disabled]=\"isActionDisabled(rowAction)\"\n [label]=\"rowAction.label\"\n [shortLabel]=\"rowAction.shortLabel\"\n [tooltip]=\"rowAction.tooltip\"\n [getMenu]=\"rowAction.getMenu\"\n [enableV2_1]=\"enableV2_1\"\n [isLast]=\"isLast\"\n [widthToHideLabel]=\"widthToHideActionsLabels\">\n </dato-grid-toolbar-button>\n </div>\n </ng-template>\n </ng-container>\n\n <div *ngIf=\"rowActions.moreMenu.length > 0\" class=\"separator\"></div>\n <dato-grid-toolbar-more-menu [actions]=\"rowActions.moreMenu\" (actionClick)=\"onActionClick($event)\" [isRowActions]=\"true\">\n </dato-grid-toolbar-more-menu>\n </div>\n\n </section>\n\n\n <!-- General Actions -->\n <div class=\"d-flex items-center\">\n <!-- Create action -->\n <ng-container *ngIf=\"createAction\">\n <dato-button datoSize=\"sm\" class=\"pointer primary-300-color\" (click)=\"onActionClick(createAction)\"\n [datoTooltip]=\"createAction.tooltip\" [attr.data-auto-id]=\"'grid-toolbar-action-' + createAction.key\">\n <dato-icon *ngIf=\"createAction.icon\" [icon]=\"createAction.icon\" class=\"mr-5\"></dato-icon>\n {{ createAction.label | translate }}\n </dato-button>\n <div class=\"separator\"></div>\n </ng-container>\n\n <!-- Dynamic content for the right area -->\n <div #customActions data-auto-id=\"grid-toolbar-dynamic-right\">\n <ng-content select=\"[toolbarRightArea]\"></ng-content>\n </div>\n <div *ngIf=\"customActions.childNodes.length && displayCustomGridActionsSeparator\" class=\"separator\"></div>\n\n <!-- Group buttons -->\n <div *ngIf=\"groupsAllowed\" class=\"d-flex grouping-section opacity-0 invisible\" [class.open]=\"openMenus.group || hasGroups\">\n <dato-icon-button [class.active]=\"openMenus.group\" (click)=\"executeTableAction('Group from Toolbar')\"\n data-auto-id=\"grid-toolbar-open-groups\"\n removeIconPadding datoSize=\"md\" datoType=\"none\" icon=\"group\" iconWidth=\"17px\"\n datoTooltip=\"core.row-grouping\" #groupTrigger\n class=\"mr-10 pointer\"></dato-icon-button>\n <dato-icon-button data-auto-id=\"grid-toolbar-toggle-expand\" datoSize=\"md\" datoType=\"none\"\n (click)=\"executeTableAction('Collapse Expand')\"\n [icon]=\"rowGroupsCollapsed ? 'expand' : 'collapse'\"\n [disabled]=\"!hasGroups\"\n [datoTooltip]=\"'core.' + (rowGroupsCollapsed ? 'expand' : 'collapse') + '-rows'\"\n class=\"pointer\"></dato-icon-button>\n <div class=\"separator\"></div>\n </div>\n\n <!-- Grid Actions -->\n <ng-container *ngFor=\"let gridAction of gridActions.mainList; index as i\">\n <div *ngIf=\"gridAction.getMenu else button\" [datoMenuTriggerFor]=\"gridAction.getMenu()\">\n <ng-container [ngTemplateOutlet]=\"button\"></ng-container>\n </div>\n <ng-template #button>\n <dato-icon datoSize=\"sm\" (click)=\"onActionClick(gridAction)\"\n [attr.data-auto-id]=\"'grid-toolbar-action-' + gridAction.key\"\n [attr.data-action-index]=\"'grid-toolbar-general-action-' + i\"\n [icon]=\"gridAction.icon\" class=\"pointer primary-300-color\"\n [class.mr-16]=\"!gridAction.separator\"\n [datoTooltip]=\"gridAction.tooltip || gridAction.label\">\n </dato-icon>\n </ng-template>\n <div *ngIf=\"gridAction.separator\" class=\"separator\"></div>\n </ng-container>\n\n <!-- Export -->\n <dato-icon data-auto-id=\"grid-toolbar-export\" datoSize=\"sm\"\n (click)=\"executeTableAction('Export')\" *ngIf=\"displayExport && !isTreeMode\"\n icon=\"export\" class=\"pointer mr-16 primary-300-color\" datoTooltip=\"core.export-table\"></dato-icon>\n\n <!-- Settings -->\n <dato-icon [class.active]=\"openMenus.settings\" (click)=\"openMenus.settings = true\"\n data-auto-id=\"grid-toolbar-settings\" datoSize=\"sm\"\n icon=\"account\" class=\"pointer primary-300-color\" datoTooltip=\"core.table-settings\"\n #settingsTrigger\n [datoMenuTriggerFor]=\"settingsMenu\"></dato-icon>\n\n <!-- More actions menu -->\n <ng-container *ngIf=\"gridActions.moreMenu.length > 0\">\n <div class=\"separator\"></div>\n <dato-grid-toolbar-more-menu [actions]=\"gridActions.moreMenu\" (actionClick)=\"onActionClick($event)\" [isRowActions]=\"false\">\n </dato-grid-toolbar-more-menu>\n </ng-container>\n\n <dato-menu #settingsMenu=\"datoMenu\" menuClass=\"grid-settings-menu\" placement=\"bottom-end\"\n (menuClosed)=\"openMenus.settings = false\">\n <ng-template datoMenuContent>\n <button data-auto-id=\"grid-toolbar-settings-autofit-page\" datoMenuItem\n (click)=\"executeTableAction('Autofit to Page')\">\n <dato-icon datoSize=\"sm\" icon=\"maximize-horizontal\" class=\"mr-8 primary-300-color\"></dato-icon>\n {{ 'core.autofitPage' | translate }}</button>\n <button data-auto-id=\"grid-toolbar-settings-autofit-content\" datoMenuItem\n (click)=\"executeTableAction('Autofit to Content')\">\n <dato-icon datoSize=\"sm\" icon=\"minimize-horizontal\" class=\"mr-8 primary-300-color\"></dato-icon>\n {{ 'core.autofitContent' | translate }}</button>\n <ng-container *ngIf=\"groupsAllowed\">\n <button data-auto-id=\"grid-toolbar-settings-group\" datoMenuItem (click)=\"executeTableAction('Group from Settings')\">\n <dato-icon datoSize=\"sm\" icon=\"group\" class=\"mr-4 primary-300-color\"></dato-icon>\n {{ 'core.group' | translate }}\n </button>\n </ng-container>\n <button data-auto-id=\"grid-toolbar-settings-toggle-columns\" datoMenuItem (click)=\"executeTableAction('Show Hide Column')\">\n <dato-icon datoSize=\"sm\" icon=\"hide\" class=\"mr-8 primary-300-color\"></dato-icon>\n <span>{{ 'core.hideShowColumns' | translate }}<span\n class=\"dato-simple-italic ml-5 primary-200-color\">{{hiddenColumns}}</span></span>\n </button>\n <button data-auto-id=\"grid-toolbar-settings-reset-settings\" datoMenuItem\n (click)=\"executeTableAction('Reset Settings')\">\n <dato-icon datoSize=\"sm\" icon=\"reset-table\" class=\"mr-8 primary-300-color\"></dato-icon>\n {{ 'core.resetTableSettings' | translate }}\n </button>\n <button data-auto-id=\"grid-toolbar-settings-reset-filters\" datoMenuItem\n (click)=\"executeTableAction('Reset Filters')\">\n <dato-icon datoSize=\"sm\" icon=\"reset-filters\" class=\"mr-8 primary-300-color\"></dato-icon>\n {{ 'core.resetAllFilters' | translate }}\n </button>\n <button data-auto-id=\"grid-toolbar-export\" datoMenuItem\n (click)=\"executeTableAction('Export')\" *ngIf=\"this.displayExport && isTreeMode\">\n <dato-icon datoSize=\"sm\"\n icon=\"export\" class=\"pointer mr-5 primary-300-color\" datoTooltip=\"core.export-table\"></dato-icon>\n {{ 'core.export-table' | translate }}\n </button>\n </ng-template>\n </dato-menu>\n </div>\n</section>\n\n\n",
|
|
15011
15050
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
15012
15051
|
styles: [".grouping-section{transition:visibility .2s ease-in-out,width .2s ease-in-out,opacity .2s ease-in-out;width:0}.grouping-section.open{width:75px;visibility:visible;opacity:1}:host .main-container{min-height:24px}:host .right-section{margin-right:50px}:host .separator{width:1px;height:24px;margin:0 16px}.disabled-action{pointer-events:none}"]
|
|
15013
15052
|
}),
|
|
@@ -22567,7 +22606,7 @@ function fixNgLeaks() {
|
|
|
22567
22606
|
};
|
|
22568
22607
|
}
|
|
22569
22608
|
|
|
22570
|
-
window.coreVersion = '
|
|
22609
|
+
window.coreVersion = '22.1.1-rc.';
|
|
22571
22610
|
|
|
22572
22611
|
/**
|
|
22573
22612
|
* @license
|