@progress/kendo-angular-grid 22.1.0-develop.3 → 22.1.0-develop.4

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.
@@ -10,7 +10,7 @@ import { Button } from '@progress/kendo-angular-buttons';
10
10
  import { ContextService } from '../common/provider.service';
11
11
  import * as i0 from "@angular/core";
12
12
  /**
13
- * Represents the component for toggling visibility of the Grid columns visibility. [See example](slug:columnmenu_grid#toc-using-standalone-column-chooser).
13
+ * Represents the component for toggling visibility of the Grid columns visibility. [See example](slug:toolbartemplate_grid).
14
14
  * To show and hide the columns without including the column chooser item in the [Column Menu](slug:columnmenu_grid),
15
15
  * add the component inside the [ToolbarTemplate](slug:toolbartemplate_grid) directive.
16
16
  *
@@ -10,7 +10,7 @@ import { FetchDataCallback } from '../common/fetch-data-callback';
10
10
  import { ContextService } from '../common/provider.service';
11
11
  import * as i0 from "@angular/core";
12
12
  /**
13
- * The component is required when exporting the data to an Excel file. The componnet provides different options to further configure the Excel export settings of the Grid ([see example]({% slug excelexport_grid %})).
13
+ * The component is required when exporting the data to an Excel file. The component provides different options to further configure the Excel export settings of the Grid ([see example]({% slug excelexport_grid %})).
14
14
  *
15
15
  * @example
16
16
  * ```html
@@ -4260,39 +4260,53 @@ class NavigationService {
4260
4260
  handleVerticalArrowSelection(args, preserveSelection) {
4261
4261
  const cellSelectionEnabled = this.ctx.grid.cellSelectionService.active;
4262
4262
  const rowSelectionEnabled = this.ctx.grid.selectionService.active && !this.ctx.grid.selectableSettings.checkboxOnly;
4263
- if (cellSelectionEnabled || rowSelectionEnabled) {
4264
- const selectionService = this.ctx.grid[cellSelectionEnabled ? 'cellSelectionService' : 'selectionService'];
4265
- const colIdx = this.cursor.cell ? this.cursor.cell.colIndex : 0;
4266
- const rowIdx = this.activeRow.dataRowIndex - this.ctx.grid.skip;
4267
- const dataItem = selectionService.settings.view.at(rowIdx);
4268
- const item = { index: this.activeRow.dataRowIndex, data: dataItem, column: this.ctx.grid.columnsContainer.leafColumnsToRender[colIdx] };
4269
- if (selectionService.options.mode === 'multiple') {
4270
- const startRowIndex = this.activeRow.dataRowIndex - args;
4271
- cellSelectionEnabled ? this.handleMultipleArrowCellSelection(item, preserveSelection, startRowIndex, colIdx) : this.handleMultipleArrowRowSelection(item, preserveSelection, startRowIndex);
4263
+ const selectionEnabled = cellSelectionEnabled || rowSelectionEnabled;
4264
+ if (!selectionEnabled || this.cursor.cell?.detailExpandCell) {
4265
+ if (preserveSelection) {
4266
+ this.isShiftPressed = false; // reset flag to preserve previous selection on next arrow key
4272
4267
  }
4273
- else {
4274
- selectionService.handleClick(item, args);
4268
+ return;
4269
+ }
4270
+ const selectionService = this.ctx.grid[cellSelectionEnabled ? 'cellSelectionService' : 'selectionService'];
4271
+ const colIdx = this.cursor.cell ? this.cursor.cell.colIndex : 0;
4272
+ const dataColIdx = colIdx - (this.metadata.hasDetailTemplate ? 1 : 0); // exclude the expand/collapse column in master-detail
4273
+ const rowIdx = this.activeRow.dataRowIndex - this.ctx.grid.skip;
4274
+ const dataItem = selectionService.settings.view.at(rowIdx);
4275
+ const item = { index: this.activeRow.dataRowIndex, data: dataItem, column: this.ctx.grid.columnsContainer.leafColumnsToRender[dataColIdx] };
4276
+ if (!isPresent$1(dataItem) || !isPresent$1(item.column)) {
4277
+ if (preserveSelection) {
4278
+ this.isShiftPressed = false; // reset flag to preserve previous selection on next arrow key
4275
4279
  }
4280
+ return;
4281
+ }
4282
+ if (selectionService.options.mode === 'multiple') {
4283
+ const startRowIndex = this.activeRow.dataRowIndex - args;
4284
+ cellSelectionEnabled ? this.handleMultipleArrowCellSelection(item, preserveSelection, startRowIndex, dataColIdx) : this.handleMultipleArrowRowSelection(item, preserveSelection, startRowIndex);
4285
+ }
4286
+ else {
4287
+ selectionService.handleClick(item, args);
4276
4288
  }
4277
4289
  }
4278
4290
  handleHorizontalArrowSelection(args, preserveSelection) {
4279
4291
  const cellSelectionEnabled = this.ctx.grid.cellSelectionService.active;
4280
- if (cellSelectionEnabled) {
4281
- const selectionService = this.ctx.grid[cellSelectionEnabled ? 'cellSelectionService' : 'selectionService'];
4282
- const row = this.activeRow;
4283
- const colIdx = this.cursor.cell ? this.cursor.cell.colIndex : 0;
4284
- const dataItem = selectionService.settings.view.at(row.dataRowIndex - this.ctx.grid.skip);
4285
- const item = { index: row.dataRowIndex, data: dataItem, column: this.ctx.grid.columnsContainer.leafColumnsToRender[colIdx] };
4286
- if (!isPresent$1(dataItem) || !isPresent$1(item.column)) {
4287
- return;
4288
- }
4289
- if (selectionService.options.mode === 'multiple') {
4290
- const startColumnIndex = args.key === 'ArrowRight' ? colIdx - 1 : colIdx + 1;
4291
- this.handleMultipleArrowCellSelection(item, preserveSelection, row.dataRowIndex, startColumnIndex);
4292
- }
4293
- else {
4294
- selectionService.handleClick(item, args);
4295
- }
4292
+ if (!cellSelectionEnabled || this.cursor.cell?.detailExpandCell) {
4293
+ return;
4294
+ }
4295
+ const selectionService = this.ctx.grid[cellSelectionEnabled ? 'cellSelectionService' : 'selectionService'];
4296
+ const row = this.activeRow;
4297
+ const colIdx = this.cursor.cell ? this.cursor.cell.colIndex : 0;
4298
+ const dataColIdx = colIdx - (this.metadata.hasDetailTemplate ? 1 : 0); // exclude the expand/collapse column in master-detail
4299
+ const dataItem = selectionService.settings.view.at(row.dataRowIndex - this.ctx.grid.skip);
4300
+ const item = { index: row.dataRowIndex, data: dataItem, column: this.ctx.grid.columnsContainer.leafColumnsToRender[dataColIdx] };
4301
+ if (!isPresent$1(dataItem) || !isPresent$1(item.column)) {
4302
+ return;
4303
+ }
4304
+ if (selectionService.options.mode === 'multiple') {
4305
+ const startColumnIndex = args.key === 'ArrowRight' ? dataColIdx - 1 : dataColIdx + 1;
4306
+ this.handleMultipleArrowCellSelection(item, preserveSelection, row.dataRowIndex, startColumnIndex);
4307
+ }
4308
+ else {
4309
+ selectionService.handleClick(item, args);
4296
4310
  }
4297
4311
  }
4298
4312
  handleMultipleArrowCellSelection(item, preserveSelection, startRow, startColumn) {
@@ -13554,7 +13568,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
13554
13568
  }] } });
13555
13569
 
13556
13570
  /**
13557
- * Represents the component for toggling visibility of the Grid columns visibility. [See example](slug:columnmenu_grid#toc-using-standalone-column-chooser).
13571
+ * Represents the component for toggling visibility of the Grid columns visibility. [See example](slug:toolbartemplate_grid).
13558
13572
  * To show and hide the columns without including the column chooser item in the [Column Menu](slug:columnmenu_grid),
13559
13573
  * add the component inside the [ToolbarTemplate](slug:toolbartemplate_grid) directive.
13560
13574
  *
@@ -16743,7 +16757,7 @@ const componentColumns = (component) => {
16743
16757
  return orderBy(columns, [{ field: 'locked', dir: 'desc' }]);
16744
16758
  };
16745
16759
  /**
16746
- * The component is required when exporting the data to an Excel file. The componnet provides different options to further configure the Excel export settings of the Grid ([see example]({% slug excelexport_grid %})).
16760
+ * The component is required when exporting the data to an Excel file. The component provides different options to further configure the Excel export settings of the Grid ([see example]({% slug excelexport_grid %})).
16747
16761
  *
16748
16762
  * @example
16749
16763
  * ```html
@@ -23606,7 +23620,7 @@ const packageMetadata = {
23606
23620
  productCode: 'KENDOUIANGULAR',
23607
23621
  productCodes: ['KENDOUIANGULAR'],
23608
23622
  publishDate: 0,
23609
- version: '22.1.0-develop.3',
23623
+ version: '22.1.0-develop.4',
23610
23624
  licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
23611
23625
  };
23612
23626
 
@@ -32128,7 +32142,13 @@ class GridComponent {
32128
32142
  get maxHeight() {
32129
32143
  return this.gridResizable.maxHeight;
32130
32144
  }
32131
- detailTemplateChildren;
32145
+ get detailTemplateChildren() {
32146
+ return this._detailTemplateChildren;
32147
+ }
32148
+ set detailTemplateChildren(value) {
32149
+ this._detailTemplateChildren = value;
32150
+ this.updateNavigationMetadata();
32151
+ }
32132
32152
  get detailTemplate() {
32133
32153
  if (this._customDetailTemplate) {
32134
32154
  return this._customDetailTemplate;
@@ -32313,6 +32333,7 @@ class GridComponent {
32313
32333
  _customNoRecordsTemplate;
32314
32334
  _customPagerTemplate;
32315
32335
  _customToolbarTemplate;
32336
+ _detailTemplateChildren;
32316
32337
  _rowReorderable = false;
32317
32338
  leafViewportColumns;
32318
32339
  viewportColumns;
@@ -592,7 +592,8 @@ export declare class GridComponent implements AfterContentInit, AfterViewInit, O
592
592
  get maxWidth(): string;
593
593
  get minHeight(): string;
594
594
  get maxHeight(): string;
595
- detailTemplateChildren: QueryList<DetailTemplateDirective>;
595
+ get detailTemplateChildren(): QueryList<DetailTemplateDirective>;
596
+ set detailTemplateChildren(value: QueryList<DetailTemplateDirective>);
596
597
  get detailTemplate(): DetailTemplateDirective;
597
598
  set detailTemplate(detailTemplate: DetailTemplateDirective);
598
599
  cellLoadingTemplateChildren: QueryList<CellLoadingTemplateDirective>;
@@ -672,6 +673,7 @@ export declare class GridComponent implements AfterContentInit, AfterViewInit, O
672
673
  private _customNoRecordsTemplate;
673
674
  private _customPagerTemplate;
674
675
  private _customToolbarTemplate;
676
+ private _detailTemplateChildren;
675
677
  private _rowReorderable;
676
678
  private leafViewportColumns;
677
679
  private viewportColumns;
@@ -7,7 +7,7 @@ export const packageMetadata = {
7
7
  "productCodes": [
8
8
  "KENDOUIANGULAR"
9
9
  ],
10
- "publishDate": 1768820418,
11
- "version": "22.1.0-develop.3",
10
+ "publishDate": 1768898628,
11
+ "version": "22.1.0-develop.4",
12
12
  "licensingDocsUrl": "https://www.telerik.com/kendo-angular-ui/my-license/"
13
13
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@progress/kendo-angular-grid",
3
- "version": "22.1.0-develop.3",
3
+ "version": "22.1.0-develop.4",
4
4
  "description": "Kendo UI Grid for Angular - high performance data grid with paging, filtering, virtualization, CRUD, and more.",
5
5
  "license": "SEE LICENSE IN LICENSE.md",
6
6
  "author": "Progress",
@@ -73,7 +73,7 @@
73
73
  "package": {
74
74
  "productName": "Kendo UI for Angular",
75
75
  "productCode": "KENDOUIANGULAR",
76
- "publishDate": 1768820418,
76
+ "publishDate": 1768898628,
77
77
  "licensingDocsUrl": "https://www.telerik.com/kendo-angular-ui/my-license/"
78
78
  }
79
79
  },
@@ -86,32 +86,32 @@
86
86
  "@progress/kendo-data-query": "^1.0.0",
87
87
  "@progress/kendo-drawing": "^1.23.1",
88
88
  "@progress/kendo-licensing": "^1.7.0",
89
- "@progress/kendo-angular-buttons": "22.1.0-develop.3",
90
- "@progress/kendo-angular-common": "22.1.0-develop.3",
91
- "@progress/kendo-angular-dateinputs": "22.1.0-develop.3",
92
- "@progress/kendo-angular-layout": "22.1.0-develop.3",
93
- "@progress/kendo-angular-navigation": "22.1.0-develop.3",
94
- "@progress/kendo-angular-dropdowns": "22.1.0-develop.3",
95
- "@progress/kendo-angular-excel-export": "22.1.0-develop.3",
96
- "@progress/kendo-angular-icons": "22.1.0-develop.3",
97
- "@progress/kendo-angular-indicators": "22.1.0-develop.3",
98
- "@progress/kendo-angular-inputs": "22.1.0-develop.3",
99
- "@progress/kendo-angular-conversational-ui": "22.1.0-develop.3",
100
- "@progress/kendo-angular-intl": "22.1.0-develop.3",
101
- "@progress/kendo-angular-l10n": "22.1.0-develop.3",
102
- "@progress/kendo-angular-label": "22.1.0-develop.3",
103
- "@progress/kendo-angular-menu": "22.1.0-develop.3",
104
- "@progress/kendo-angular-pager": "22.1.0-develop.3",
105
- "@progress/kendo-angular-pdf-export": "22.1.0-develop.3",
106
- "@progress/kendo-angular-popup": "22.1.0-develop.3",
107
- "@progress/kendo-angular-toolbar": "22.1.0-develop.3",
108
- "@progress/kendo-angular-upload": "22.1.0-develop.3",
109
- "@progress/kendo-angular-utils": "22.1.0-develop.3",
89
+ "@progress/kendo-angular-buttons": "22.1.0-develop.4",
90
+ "@progress/kendo-angular-common": "22.1.0-develop.4",
91
+ "@progress/kendo-angular-dateinputs": "22.1.0-develop.4",
92
+ "@progress/kendo-angular-layout": "22.1.0-develop.4",
93
+ "@progress/kendo-angular-navigation": "22.1.0-develop.4",
94
+ "@progress/kendo-angular-dropdowns": "22.1.0-develop.4",
95
+ "@progress/kendo-angular-excel-export": "22.1.0-develop.4",
96
+ "@progress/kendo-angular-icons": "22.1.0-develop.4",
97
+ "@progress/kendo-angular-indicators": "22.1.0-develop.4",
98
+ "@progress/kendo-angular-inputs": "22.1.0-develop.4",
99
+ "@progress/kendo-angular-conversational-ui": "22.1.0-develop.4",
100
+ "@progress/kendo-angular-intl": "22.1.0-develop.4",
101
+ "@progress/kendo-angular-l10n": "22.1.0-develop.4",
102
+ "@progress/kendo-angular-label": "22.1.0-develop.4",
103
+ "@progress/kendo-angular-menu": "22.1.0-develop.4",
104
+ "@progress/kendo-angular-pager": "22.1.0-develop.4",
105
+ "@progress/kendo-angular-pdf-export": "22.1.0-develop.4",
106
+ "@progress/kendo-angular-popup": "22.1.0-develop.4",
107
+ "@progress/kendo-angular-toolbar": "22.1.0-develop.4",
108
+ "@progress/kendo-angular-upload": "22.1.0-develop.4",
109
+ "@progress/kendo-angular-utils": "22.1.0-develop.4",
110
110
  "rxjs": "^6.5.3 || ^7.0.0"
111
111
  },
112
112
  "dependencies": {
113
113
  "tslib": "^2.3.1",
114
- "@progress/kendo-angular-schematics": "22.1.0-develop.3",
114
+ "@progress/kendo-angular-schematics": "22.1.0-develop.4",
115
115
  "@progress/kendo-common": "^1.0.1",
116
116
  "@progress/kendo-file-saver": "^1.0.0"
117
117
  },
@@ -9,19 +9,19 @@ const schematics_1 = require("@angular-devkit/schematics");
9
9
  function default_1(options) {
10
10
  const finalOptions = Object.assign(Object.assign({}, options), { mainNgModule: 'GridModule', package: 'grid', peerDependencies: {
11
11
  // peer deps of the dropdowns
12
- '@progress/kendo-angular-treeview': '22.1.0-develop.3',
13
- '@progress/kendo-angular-navigation': '22.1.0-develop.3',
12
+ '@progress/kendo-angular-treeview': '22.1.0-develop.4',
13
+ '@progress/kendo-angular-navigation': '22.1.0-develop.4',
14
14
  // peer dependency of kendo-angular-inputs
15
- '@progress/kendo-angular-dialog': '22.1.0-develop.3',
15
+ '@progress/kendo-angular-dialog': '22.1.0-develop.4',
16
16
  // peer dependency of kendo-angular-icons
17
17
  '@progress/kendo-svg-icons': '^4.0.0',
18
18
  // peer dependency of kendo-angular-layout
19
- '@progress/kendo-angular-progressbar': '22.1.0-develop.3',
19
+ '@progress/kendo-angular-progressbar': '22.1.0-develop.4',
20
20
  // transitive peer dependencies from toolbar
21
- '@progress/kendo-angular-indicators': '22.1.0-develop.3',
21
+ '@progress/kendo-angular-indicators': '22.1.0-develop.4',
22
22
  // transitive peer dependencies from conversational-ui
23
- '@progress/kendo-angular-menu': '22.1.0-develop.3',
24
- '@progress/kendo-angular-upload': '22.1.0-develop.3'
23
+ '@progress/kendo-angular-menu': '22.1.0-develop.4',
24
+ '@progress/kendo-angular-upload': '22.1.0-develop.4'
25
25
  } });
26
26
  return (0, schematics_1.externalSchematic)('@progress/kendo-angular-schematics', 'ng-add', finalOptions);
27
27
  }