@progress/kendo-angular-grid 19.0.0-develop.17 → 19.0.0-develop.18

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.
Files changed (70) hide show
  1. package/adaptiveness/adaptive-mode.d.ts +12 -0
  2. package/adaptiveness/adaptive-renderer.component.d.ts +84 -0
  3. package/column-menu/column-chooser.component.d.ts +4 -0
  4. package/column-menu/column-list.component.d.ts +9 -3
  5. package/column-menu/column-menu-item.component.d.ts +38 -2
  6. package/column-menu/column-menu-item.directive.d.ts +5 -2
  7. package/column-menu/column-menu.component.d.ts +4 -2
  8. package/common/adaptiveness.service.d.ts +50 -0
  9. package/common/single-popup.service.d.ts +3 -1
  10. package/directives.d.ts +1 -1
  11. package/editing-directives/external-editing.directive.d.ts +3 -1
  12. package/esm2022/adaptiveness/adaptive-mode.mjs +5 -0
  13. package/esm2022/adaptiveness/adaptive-renderer.component.mjs +1106 -0
  14. package/esm2022/column-menu/column-chooser.component.mjs +13 -11
  15. package/esm2022/column-menu/column-list.component.mjs +42 -8
  16. package/esm2022/column-menu/column-menu-autosize-all.component.mjs +1 -1
  17. package/esm2022/column-menu/column-menu-autosize.component.mjs +1 -1
  18. package/esm2022/column-menu/column-menu-chooser.component.mjs +1 -1
  19. package/esm2022/column-menu/column-menu-container.component.mjs +1 -1
  20. package/esm2022/column-menu/column-menu-filter.component.mjs +1 -1
  21. package/esm2022/column-menu/column-menu-item.component.mjs +106 -11
  22. package/esm2022/column-menu/column-menu-item.directive.mjs +14 -5
  23. package/esm2022/column-menu/column-menu-lock.component.mjs +1 -1
  24. package/esm2022/column-menu/column-menu-position.component.mjs +1 -1
  25. package/esm2022/column-menu/column-menu-sort.component.mjs +1 -1
  26. package/esm2022/column-menu/column-menu-stick.component.mjs +1 -1
  27. package/esm2022/column-menu/column-menu.component.mjs +60 -41
  28. package/esm2022/common/adaptiveness.service.mjs +72 -0
  29. package/esm2022/common/single-popup.service.mjs +9 -3
  30. package/esm2022/directives.mjs +1 -1
  31. package/esm2022/editing-directives/external-editing.directive.mjs +28 -14
  32. package/esm2022/filtering/menu/boolean-filter-menu.component.mjs +2 -2
  33. package/esm2022/filtering/menu/date-filter-menu-input.component.mjs +2 -0
  34. package/esm2022/filtering/menu/date-filter-menu.component.mjs +4 -0
  35. package/esm2022/filtering/menu/filter-menu-container.component.mjs +21 -10
  36. package/esm2022/filtering/menu/filter-menu-input-wrapper.component.mjs +24 -4
  37. package/esm2022/filtering/menu/filter-menu.component.mjs +44 -29
  38. package/esm2022/filtering/menu/numeric-filter-menu.component.mjs +4 -0
  39. package/esm2022/filtering/menu/string-filter-menu.component.mjs +4 -0
  40. package/esm2022/grid.component.mjs +143 -28
  41. package/esm2022/grid.module.mjs +1 -1
  42. package/esm2022/index.mjs +1 -1
  43. package/esm2022/localization/messages.mjs +62 -2
  44. package/esm2022/package-metadata.mjs +2 -2
  45. package/esm2022/rendering/toolbar/tools/column-chooser-tool.directive.mjs +203 -0
  46. package/esm2022/rendering/toolbar/tools/filter-command-tool.directive.mjs +39 -26
  47. package/esm2022/rendering/toolbar/tools/filter-tool-wrapper.component.mjs +19 -7
  48. package/esm2022/rendering/toolbar/tools/filter-toolbar-tool.component.mjs +26 -4
  49. package/esm2022/rendering/toolbar/tools/sort-command-tool.directive.mjs +21 -8
  50. package/esm2022/rendering/toolbar/tools/sort-toolbar-tool.component.mjs +16 -3
  51. package/esm2022/utils.mjs +0 -13
  52. package/fesm2022/progress-kendo-angular-grid.mjs +2960 -1360
  53. package/filtering/menu/date-filter-menu-input.component.d.ts +1 -1
  54. package/filtering/menu/filter-menu-container.component.d.ts +14 -4
  55. package/filtering/menu/filter-menu-input-wrapper.component.d.ts +8 -3
  56. package/filtering/menu/filter-menu.component.d.ts +6 -3
  57. package/grid.component.d.ts +30 -3
  58. package/grid.module.d.ts +1 -1
  59. package/index.d.ts +1 -1
  60. package/localization/messages.d.ts +42 -2
  61. package/package.json +21 -20
  62. package/{column-menu → rendering/toolbar/tools}/column-chooser-tool.directive.d.ts +13 -3
  63. package/rendering/toolbar/tools/filter-command-tool.directive.d.ts +3 -1
  64. package/rendering/toolbar/tools/filter-tool-wrapper.component.d.ts +5 -5
  65. package/rendering/toolbar/tools/filter-toolbar-tool.component.d.ts +4 -1
  66. package/rendering/toolbar/tools/sort-command-tool.directive.d.ts +3 -1
  67. package/rendering/toolbar/tools/sort-toolbar-tool.component.d.ts +4 -0
  68. package/schematics/ngAdd/index.js +4 -4
  69. package/utils.d.ts +0 -4
  70. package/esm2022/column-menu/column-chooser-tool.directive.mjs +0 -160
@@ -4,14 +4,14 @@ const schematics_1 = require("@angular-devkit/schematics");
4
4
  function default_1(options) {
5
5
  const finalOptions = Object.assign(Object.assign({}, options), { mainNgModule: 'GridModule', package: 'grid', peerDependencies: {
6
6
  // peer deps of the dropdowns
7
- '@progress/kendo-angular-treeview': '19.0.0-develop.17',
8
- '@progress/kendo-angular-navigation': '19.0.0-develop.17',
7
+ '@progress/kendo-angular-treeview': '19.0.0-develop.18',
8
+ '@progress/kendo-angular-navigation': '19.0.0-develop.18',
9
9
  // peer dependency of kendo-angular-inputs
10
- '@progress/kendo-angular-dialog': '19.0.0-develop.17',
10
+ '@progress/kendo-angular-dialog': '19.0.0-develop.18',
11
11
  // peer dependency of kendo-angular-icons
12
12
  '@progress/kendo-svg-icons': '^4.0.0',
13
13
  // peer dependency of kendo-angular-layout
14
- '@progress/kendo-angular-progressbar': '19.0.0-develop.17'
14
+ '@progress/kendo-angular-progressbar': '19.0.0-develop.18'
15
15
  } });
16
16
  return (0, schematics_1.externalSchematic)('@progress/kendo-angular-schematics', 'ng-add', finalOptions);
17
17
  }
package/utils.d.ts CHANGED
@@ -79,10 +79,6 @@ export declare const iterator: any;
79
79
  export declare const requestAnimationFrame: any;
80
80
  /** @hidden */
81
81
  export declare const cancelAnimationFrame: any;
82
- /**
83
- * @hidden
84
- */
85
- export declare const detectIE: () => boolean;
86
82
  /**
87
83
  * @hidden
88
84
  */
@@ -1,160 +0,0 @@
1
- /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2025 Progress Software Corporation. All rights reserved.
3
- * Licensed under commercial license. See LICENSE.md in the project root for more information
4
- *-------------------------------------------------------------------------------------------*/
5
- import { Directive, NgZone, Input, Renderer2, ChangeDetectorRef } from '@angular/core';
6
- import { PopupService } from '@progress/kendo-angular-popup';
7
- import { RefreshService, ToolBarButtonComponent } from '@progress/kendo-angular-toolbar';
8
- import { ColumnListComponent } from './column-list.component';
9
- import { closest } from '@progress/kendo-angular-common';
10
- import { Subscription } from 'rxjs';
11
- import { ContextService } from '../common/provider.service';
12
- import { filter, take } from 'rxjs/operators';
13
- import { ToolbarToolBase } from '../common/toolbar-tool-base.directive';
14
- import { ToolbarToolName } from '../navigation/toolbar-tool-name';
15
- import * as i0 from "@angular/core";
16
- import * as i1 from "@progress/kendo-angular-popup";
17
- import * as i2 from "@progress/kendo-angular-toolbar";
18
- import * as i3 from "../common/provider.service";
19
- let incrementingId = 0;
20
- /**
21
- * Represents the `column-chooser` toolbar tool of the Grid.
22
- * You can apply this directive to any `kendo-toolbar-button` element inside a
23
- * ToolbarComponent used in the Grid.
24
- *
25
- * @example
26
- * ```html-no-run
27
- * <kendo-grid>
28
- * <kendo-toolbar>
29
- * <kendo-toolbar-button kendoGridColumnChooserTool></kendo-toolbar-button>
30
- * </kendo-toolbar>
31
- * </kendo-grid>
32
- * ```
33
- */
34
- export class ColumnChooserToolbarDirective extends ToolbarToolBase {
35
- renderer;
36
- popupSerivce;
37
- host;
38
- ctx;
39
- zone;
40
- refresh;
41
- /**
42
- * Specifies if the changes in the visibility of the column will be immediately applied.
43
- *
44
- * @default false
45
- */
46
- autoSync = false;
47
- /**
48
- * Specifies if all columns can be hidden.
49
- *
50
- * @default true
51
- */
52
- allowHideAll = true;
53
- popupRef;
54
- subs = new Subscription();
55
- nextId = incrementingId++;
56
- constructor(renderer, popupSerivce, host, ctx, zone, refresh, cdr) {
57
- super(host, ToolbarToolName.columns, ctx, zone, cdr);
58
- this.renderer = renderer;
59
- this.popupSerivce = popupSerivce;
60
- this.host = host;
61
- this.ctx = ctx;
62
- this.zone = zone;
63
- this.refresh = refresh;
64
- }
65
- ngAfterViewInit() {
66
- super.ngAfterViewInit();
67
- this.zone.onStable.pipe(take(1)).subscribe(() => {
68
- this.buttonElement?.setAttribute('aria-haspopup', 'dialog');
69
- this.buttonElement?.setAttribute('aria-expanded', 'false');
70
- this.buttonElement?.setAttribute('title', this.ctx.localization.get('columns'));
71
- });
72
- this.subs.add(this.refresh.onRefresh.pipe(filter((tool) => tool === this.host)).subscribe((tool) => {
73
- if (tool.overflows && this.popupRef) {
74
- this.popupRef.close();
75
- }
76
- }));
77
- }
78
- ngOnDestroy() {
79
- super.ngOnDestroy();
80
- this.subs.unsubscribe();
81
- }
82
- /**
83
- * @hidden
84
- */
85
- onClick(e) {
86
- e.preventDefault();
87
- if (!this.popupRef) {
88
- const direction = this.ctx.localization.rtl ? 'right' : 'left';
89
- this.popupRef = this.popupSerivce.open({
90
- anchor: this.buttonElement,
91
- content: ColumnListComponent,
92
- positionMode: 'absolute',
93
- anchorAlign: { vertical: 'bottom', horizontal: direction },
94
- popupAlign: { vertical: 'top', horizontal: direction }
95
- });
96
- const popupElement = this.popupRef.popupElement;
97
- const popupId = `k-column-chooser-tool-${this.nextId}-popup`;
98
- const popupAriaElement = popupElement.querySelector('.k-popup');
99
- this.zone.runOutsideAngular(() => {
100
- this.renderer.listen(popupAriaElement, 'keydown', (e) => {
101
- if (e.key === 'Escape') {
102
- this.closePopup(true);
103
- }
104
- });
105
- });
106
- this.renderer.setAttribute(popupElement, 'dir', this.ctx.localization.rtl ? 'rtl' : 'ltr');
107
- this.renderer.setAttribute(popupAriaElement, 'id', popupId);
108
- this.renderer.setAttribute(popupAriaElement, 'role', 'dialog');
109
- this.buttonElement?.setAttribute('aria-expanded', 'true');
110
- this.buttonElement?.setAttribute('aria-controls', popupId);
111
- const columnList = this.popupRef.content.instance;
112
- columnList.isLast = true;
113
- columnList.autoSync = this.autoSync;
114
- columnList.allowHideAll = this.allowHideAll;
115
- columnList.applyText = this.ctx.localization.get('columnsApply');
116
- columnList.resetText = this.ctx.localization.get('columnsReset');
117
- columnList.columns = this.ctx.grid.columns;
118
- columnList.ariaLabel = this.ctx.localization.get('columns');
119
- this.subs.add(this.popupRef.popup.instance.anchorViewportLeave.subscribe(() => {
120
- this.closePopup(true);
121
- }));
122
- this.subs.add(columnList.apply.subscribe(() => {
123
- this.closePopup();
124
- }));
125
- this.zone.runOutsideAngular(() => this.renderer.listen('document', 'click', ({ target }) => {
126
- if (this.popupRef && !closest(target, node => node === this.popupRef.popupElement || node === this.buttonElement)) {
127
- this.zone.run(() => {
128
- this.closePopup();
129
- });
130
- }
131
- }));
132
- }
133
- else {
134
- this.closePopup();
135
- }
136
- }
137
- closePopup(focusAnchor = false) {
138
- this.popupRef.close();
139
- this.popupRef = null;
140
- this.buttonElement?.setAttribute('aria-expanded', 'false');
141
- this.buttonElement?.removeAttribute('aria-controls');
142
- focusAnchor && this.buttonElement?.focus();
143
- }
144
- get buttonElement() {
145
- return this.host.getButton();
146
- }
147
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColumnChooserToolbarDirective, deps: [{ token: i0.Renderer2 }, { token: i1.PopupService }, { token: i2.ToolBarButtonComponent }, { token: i3.ContextService }, { token: i0.NgZone }, { token: i2.RefreshService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
148
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: ColumnChooserToolbarDirective, isStandalone: true, selector: "[kendoGridColumnChooserTool]", inputs: { autoSync: "autoSync", allowHideAll: "allowHideAll" }, usesInheritance: true, ngImport: i0 });
149
- }
150
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColumnChooserToolbarDirective, decorators: [{
151
- type: Directive,
152
- args: [{
153
- selector: '[kendoGridColumnChooserTool]',
154
- standalone: true
155
- }]
156
- }], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i1.PopupService }, { type: i2.ToolBarButtonComponent }, { type: i3.ContextService }, { type: i0.NgZone }, { type: i2.RefreshService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { autoSync: [{
157
- type: Input
158
- }], allowHideAll: [{
159
- type: Input
160
- }] } });