@progress/kendo-angular-pivotgrid 21.4.1 → 22.0.0-develop.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.
Files changed (62) hide show
  1. package/configurator/chip-menu/chip-menu-item-base.d.ts +1 -1
  2. package/data-binding/base-binding-directive.d.ts +1 -1
  3. package/fesm2022/progress-kendo-angular-pivotgrid.mjs +120 -120
  4. package/localization/messages.d.ts +1 -1
  5. package/package.json +18 -26
  6. package/schematics/ngAdd/index.js +2 -2
  7. package/esm2022/configurator/chip-kb-nav.directive.mjs +0 -69
  8. package/esm2022/configurator/chip-menu/chip-menu-container.component.mjs +0 -51
  9. package/esm2022/configurator/chip-menu/chip-menu-filter.component.mjs +0 -135
  10. package/esm2022/configurator/chip-menu/chip-menu-item-base.mjs +0 -40
  11. package/esm2022/configurator/chip-menu/chip-menu-item-content-template.directive.mjs +0 -29
  12. package/esm2022/configurator/chip-menu/chip-menu-item.component.mjs +0 -206
  13. package/esm2022/configurator/chip-menu/chip-menu-item.directive.mjs +0 -98
  14. package/esm2022/configurator/chip-menu/chip-menu-reorder.component.mjs +0 -198
  15. package/esm2022/configurator/chip-menu/chip-menu-sort.component.mjs +0 -104
  16. package/esm2022/configurator/chip-menu/chip-menu.component.mjs +0 -165
  17. package/esm2022/configurator/chip-menu/chip-menu.service.mjs +0 -40
  18. package/esm2022/configurator/chip-menu/filtering/filter-menu-container.component.mjs +0 -186
  19. package/esm2022/configurator/chip-menu/filtering/filter-menu-dropdownlist.directive.mjs +0 -44
  20. package/esm2022/configurator/chip-menu/filtering/menu-tabbing.service.mjs +0 -20
  21. package/esm2022/configurator/chip-menu/filtering/string-filter-menu.component.mjs +0 -148
  22. package/esm2022/configurator/chip-menu/single-popup.service.mjs +0 -136
  23. package/esm2022/configurator/configurator.component.mjs +0 -806
  24. package/esm2022/configurator/configurator.service.mjs +0 -53
  25. package/esm2022/configurator/draggable.directive.mjs +0 -131
  26. package/esm2022/configurator/drop-cue.service.mjs +0 -86
  27. package/esm2022/configurator/drop-target.directive.mjs +0 -190
  28. package/esm2022/data-binding/base-binding-directive.mjs +0 -164
  29. package/esm2022/data-binding/local-binding.directive.mjs +0 -107
  30. package/esm2022/data-binding/olap-binding.directive.mjs +0 -204
  31. package/esm2022/data-binding/pivotgrid-data.service.mjs +0 -76
  32. package/esm2022/directives.mjs +0 -97
  33. package/esm2022/index.mjs +0 -28
  34. package/esm2022/localization/custom-messages.component.mjs +0 -57
  35. package/esm2022/localization/localized-messages.directive.mjs +0 -39
  36. package/esm2022/localization/messages.mjs +0 -254
  37. package/esm2022/localization/pivot-localization.service.mjs +0 -30
  38. package/esm2022/models/configuration-change-event.mjs +0 -37
  39. package/esm2022/models/configurator-chipmenu-reorder-target.mjs +0 -5
  40. package/esm2022/models/configurator-orientation.mjs +0 -5
  41. package/esm2022/models/configurator-position.mjs +0 -5
  42. package/esm2022/models/configurator-settings.mjs +0 -21
  43. package/esm2022/models/data-row-item.mjs +0 -5
  44. package/esm2022/models/drop-section.mjs +0 -5
  45. package/esm2022/models/drop-target.mjs +0 -5
  46. package/esm2022/models/expanded-change-event.mjs +0 -29
  47. package/esm2022/models/expanded-state-action.mjs +0 -5
  48. package/esm2022/models/loader-settings.mjs +0 -5
  49. package/esm2022/models/virtualization-settings.mjs +0 -25
  50. package/esm2022/package-metadata.mjs +0 -16
  51. package/esm2022/pivotgrid.component.mjs +0 -729
  52. package/esm2022/pivotgrid.module.mjs +0 -87
  53. package/esm2022/progress-kendo-angular-pivotgrid.mjs +0 -8
  54. package/esm2022/rendering/pivotgrid-cell.directive.mjs +0 -247
  55. package/esm2022/rendering/pivotgrid-table.component.mjs +0 -386
  56. package/esm2022/rendering/templates/pivotgrid-cell-template.directive.mjs +0 -44
  57. package/esm2022/rendering/templates/pivotgrid-column-header-cell-template.directive.mjs +0 -44
  58. package/esm2022/rendering/templates/pivotgrid-row-header-cell-template.directive.mjs +0 -44
  59. package/esm2022/rendering/templates/pivotgrid-value-cell-template.directive.mjs +0 -43
  60. package/esm2022/util.mjs +0 -223
  61. package/esm2022/virtual/scroll.service.mjs +0 -18
  62. package/esm2022/virtual/scrollable-container.mjs +0 -128
@@ -174,5 +174,5 @@ export declare class PivotGridMessages extends ComponentMessages {
174
174
  */
175
175
  configuratorMeasuresText: string;
176
176
  static ɵfac: i0.ɵɵFactoryDeclaration<PivotGridMessages, never>;
177
- static ɵdir: i0.ɵɵDirectiveDeclaration<PivotGridMessages, never, never, { "fieldMenuFilterItemLabel": { "alias": "fieldMenuFilterItemLabel"; "required": false; }; "fieldMenuSortAscendingItemLabel": { "alias": "fieldMenuSortAscendingItemLabel"; "required": false; }; "fieldMenuSortDescendingItemLabel": { "alias": "fieldMenuSortDescendingItemLabel"; "required": false; }; "filterInputLabel": { "alias": "filterInputLabel"; "required": false; }; "filterOperatorsDropDownLabel": { "alias": "filterOperatorsDropDownLabel"; "required": false; }; "filterEqOperator": { "alias": "filterEqOperator"; "required": false; }; "filterNotEqOperator": { "alias": "filterNotEqOperator"; "required": false; }; "filterIsNullOperator": { "alias": "filterIsNullOperator"; "required": false; }; "filterIsNotNullOperator": { "alias": "filterIsNotNullOperator"; "required": false; }; "filterIsEmptyOperator": { "alias": "filterIsEmptyOperator"; "required": false; }; "filterIsNotEmptyOperator": { "alias": "filterIsNotEmptyOperator"; "required": false; }; "filterStartsWithOperator": { "alias": "filterStartsWithOperator"; "required": false; }; "filterContainsOperator": { "alias": "filterContainsOperator"; "required": false; }; "filterNotContainsOperator": { "alias": "filterNotContainsOperator"; "required": false; }; "filterEndsWithOperator": { "alias": "filterEndsWithOperator"; "required": false; }; "filterFilterButton": { "alias": "filterFilterButton"; "required": false; }; "filterClearButton": { "alias": "filterClearButton"; "required": false; }; "loading": { "alias": "loading"; "required": false; }; "emptyCellLabel": { "alias": "emptyCellLabel"; "required": false; }; "configuratorButtonText": { "alias": "configuratorButtonText"; "required": false; }; "configuratorHeaderText": { "alias": "configuratorHeaderText"; "required": false; }; "configuratorFieldsText": { "alias": "configuratorFieldsText"; "required": false; }; "configuratorColumnsText": { "alias": "configuratorColumnsText"; "required": false; }; "configuratorRowsText": { "alias": "configuratorRowsText"; "required": false; }; "configuratorValuesText": { "alias": "configuratorValuesText"; "required": false; }; "configuratorCancelButtonText": { "alias": "configuratorCancelButtonText"; "required": false; }; "configuratorApplyButtonText": { "alias": "configuratorApplyButtonText"; "required": false; }; "configuratorEmptyRowsText": { "alias": "configuratorEmptyRowsText"; "required": false; }; "configuratorEmptyColumnsText": { "alias": "configuratorEmptyColumnsText"; "required": false; }; "configuratorEmptyMeasuresText": { "alias": "configuratorEmptyMeasuresText"; "required": false; }; "fieldMenuMoveToColumnsItem": { "alias": "fieldMenuMoveToColumnsItem"; "required": false; }; "fieldMenuMoveToRowsItem": { "alias": "fieldMenuMoveToRowsItem"; "required": false; }; "fieldMenuMovePreviousItem": { "alias": "fieldMenuMovePreviousItem"; "required": false; }; "fieldMenuMoveNextItem": { "alias": "fieldMenuMoveNextItem"; "required": false; }; "chipMenuIconTitle": { "alias": "chipMenuIconTitle"; "required": false; }; "configuratorMeasuresText": { "alias": "configuratorMeasuresText"; "required": false; }; }, {}, never, never, false, never>;
177
+ static ɵdir: i0.ɵɵDirectiveDeclaration<PivotGridMessages, never, never, { "fieldMenuFilterItemLabel": { "alias": "fieldMenuFilterItemLabel"; "required": false; }; "fieldMenuSortAscendingItemLabel": { "alias": "fieldMenuSortAscendingItemLabel"; "required": false; }; "fieldMenuSortDescendingItemLabel": { "alias": "fieldMenuSortDescendingItemLabel"; "required": false; }; "filterInputLabel": { "alias": "filterInputLabel"; "required": false; }; "filterOperatorsDropDownLabel": { "alias": "filterOperatorsDropDownLabel"; "required": false; }; "filterEqOperator": { "alias": "filterEqOperator"; "required": false; }; "filterNotEqOperator": { "alias": "filterNotEqOperator"; "required": false; }; "filterIsNullOperator": { "alias": "filterIsNullOperator"; "required": false; }; "filterIsNotNullOperator": { "alias": "filterIsNotNullOperator"; "required": false; }; "filterIsEmptyOperator": { "alias": "filterIsEmptyOperator"; "required": false; }; "filterIsNotEmptyOperator": { "alias": "filterIsNotEmptyOperator"; "required": false; }; "filterStartsWithOperator": { "alias": "filterStartsWithOperator"; "required": false; }; "filterContainsOperator": { "alias": "filterContainsOperator"; "required": false; }; "filterNotContainsOperator": { "alias": "filterNotContainsOperator"; "required": false; }; "filterEndsWithOperator": { "alias": "filterEndsWithOperator"; "required": false; }; "filterFilterButton": { "alias": "filterFilterButton"; "required": false; }; "filterClearButton": { "alias": "filterClearButton"; "required": false; }; "loading": { "alias": "loading"; "required": false; }; "emptyCellLabel": { "alias": "emptyCellLabel"; "required": false; }; "configuratorButtonText": { "alias": "configuratorButtonText"; "required": false; }; "configuratorHeaderText": { "alias": "configuratorHeaderText"; "required": false; }; "configuratorFieldsText": { "alias": "configuratorFieldsText"; "required": false; }; "configuratorColumnsText": { "alias": "configuratorColumnsText"; "required": false; }; "configuratorRowsText": { "alias": "configuratorRowsText"; "required": false; }; "configuratorValuesText": { "alias": "configuratorValuesText"; "required": false; }; "configuratorCancelButtonText": { "alias": "configuratorCancelButtonText"; "required": false; }; "configuratorApplyButtonText": { "alias": "configuratorApplyButtonText"; "required": false; }; "configuratorEmptyRowsText": { "alias": "configuratorEmptyRowsText"; "required": false; }; "configuratorEmptyColumnsText": { "alias": "configuratorEmptyColumnsText"; "required": false; }; "configuratorEmptyMeasuresText": { "alias": "configuratorEmptyMeasuresText"; "required": false; }; "fieldMenuMoveToColumnsItem": { "alias": "fieldMenuMoveToColumnsItem"; "required": false; }; "fieldMenuMoveToRowsItem": { "alias": "fieldMenuMoveToRowsItem"; "required": false; }; "fieldMenuMovePreviousItem": { "alias": "fieldMenuMovePreviousItem"; "required": false; }; "fieldMenuMoveNextItem": { "alias": "fieldMenuMoveNextItem"; "required": false; }; "chipMenuIconTitle": { "alias": "chipMenuIconTitle"; "required": false; }; "configuratorMeasuresText": { "alias": "configuratorMeasuresText"; "required": false; }; }, {}, never, never, true, never>;
178
178
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@progress/kendo-angular-pivotgrid",
3
- "version": "21.4.1",
3
+ "version": "22.0.0-develop.1",
4
4
  "description": "PivotGrid package for Angular",
5
5
  "license": "SEE LICENSE IN LICENSE.md",
6
6
  "author": "Progress",
@@ -14,38 +14,32 @@
14
14
  "Kendo UI"
15
15
  ],
16
16
  "@progress": {
17
- "friendlyName": "PivotGrid",
18
- "package": {
19
- "productName": "Kendo UI for Angular",
20
- "productCode": "KENDOUIANGULAR",
21
- "publishDate": 1768393307,
22
- "licensingDocsUrl": "https://www.telerik.com/kendo-angular-ui/my-license/?utm_medium=product&utm_source=kendoangular&utm_campaign=kendo-ui-angular-purchase-license-keys-warning"
23
- }
17
+ "friendlyName": "PivotGrid"
24
18
  },
25
19
  "peerDependencies": {
26
- "@angular/animations": "18 - 21",
27
- "@angular/common": "18 - 21",
28
- "@angular/core": "18 - 21",
29
- "@angular/forms": "18 - 21",
30
- "@angular/platform-browser": "18 - 21",
20
+ "@angular/animations": "19 - 21",
21
+ "@angular/common": "19 - 21",
22
+ "@angular/core": "19 - 21",
23
+ "@angular/forms": "19 - 21",
24
+ "@angular/platform-browser": "19 - 21",
31
25
  "@progress/kendo-data-query": "^1.5.5",
32
26
  "@progress/kendo-drawing": "^1.23.1",
33
27
  "@progress/kendo-licensing": "^1.7.0",
34
- "@progress/kendo-angular-buttons": "21.4.1",
35
- "@progress/kendo-angular-common": "21.4.1",
36
- "@progress/kendo-angular-dropdowns": "21.4.1",
37
- "@progress/kendo-angular-indicators": "21.4.1",
38
- "@progress/kendo-angular-inputs": "21.4.1",
39
- "@progress/kendo-angular-intl": "21.4.1",
40
- "@progress/kendo-angular-l10n": "21.4.1",
41
- "@progress/kendo-angular-popup": "21.4.1",
42
- "@progress/kendo-angular-icons": "21.4.1",
43
- "@progress/kendo-angular-treeview": "21.4.1",
28
+ "@progress/kendo-angular-buttons": "22.0.0-develop.1",
29
+ "@progress/kendo-angular-common": "22.0.0-develop.1",
30
+ "@progress/kendo-angular-dropdowns": "22.0.0-develop.1",
31
+ "@progress/kendo-angular-indicators": "22.0.0-develop.1",
32
+ "@progress/kendo-angular-inputs": "22.0.0-develop.1",
33
+ "@progress/kendo-angular-intl": "22.0.0-develop.1",
34
+ "@progress/kendo-angular-l10n": "22.0.0-develop.1",
35
+ "@progress/kendo-angular-popup": "22.0.0-develop.1",
36
+ "@progress/kendo-angular-icons": "22.0.0-develop.1",
37
+ "@progress/kendo-angular-treeview": "22.0.0-develop.1",
44
38
  "rxjs": "^6.5.3 || ^7.0.0"
45
39
  },
46
40
  "dependencies": {
47
41
  "tslib": "^2.3.1",
48
- "@progress/kendo-angular-schematics": "21.4.1",
42
+ "@progress/kendo-angular-schematics": "22.0.0-develop.1",
49
43
  "@progress/kendo-pivotgrid-common": "0.6.3"
50
44
  },
51
45
  "schematics": "./schematics/collection.json",
@@ -57,8 +51,6 @@
57
51
  },
58
52
  ".": {
59
53
  "types": "./index.d.ts",
60
- "esm2022": "./esm2022/progress-kendo-angular-pivotgrid.mjs",
61
- "esm": "./esm2022/progress-kendo-angular-pivotgrid.mjs",
62
54
  "default": "./fesm2022/progress-kendo-angular-pivotgrid.mjs"
63
55
  }
64
56
  },
@@ -11,11 +11,11 @@ function default_1(options) {
11
11
  // Additional dependencies to install.
12
12
  // See https://github.com/telerik/kendo-schematics/issues/28
13
13
  peerDependencies: {
14
- '@progress/kendo-angular-dialog': '21.4.1',
14
+ '@progress/kendo-angular-dialog': '22.0.0-develop.1',
15
15
  // peer dep of the icons
16
16
  '@progress/kendo-svg-icons': '^4.0.0',
17
17
  // peer dep of the dropdowns
18
- '@progress/kendo-angular-navigation': '21.4.1'
18
+ '@progress/kendo-angular-navigation': '22.0.0-develop.1'
19
19
  } });
20
20
  return (0, schematics_1.externalSchematic)('@progress/kendo-angular-schematics', 'ng-add', finalOptions);
21
21
  }
@@ -1,69 +0,0 @@
1
- /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2026 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, EventEmitter, NgZone, Output, Renderer2 } from '@angular/core';
6
- import { ChipComponent } from '@progress/kendo-angular-buttons';
7
- import { Keys, normalizeKeys } from '@progress/kendo-angular-common';
8
- import { Subscription } from 'rxjs';
9
- import * as i0 from "@angular/core";
10
- import * as i1 from "@progress/kendo-angular-buttons";
11
- /**
12
- * @hidden
13
- */
14
- export class ChipKeyboardNavigationDirective {
15
- host;
16
- renderer;
17
- ngZone;
18
- keydownSub = new Subscription();
19
- reorder = new EventEmitter();
20
- constructor(host, renderer, ngZone) {
21
- this.host = host;
22
- this.renderer = renderer;
23
- this.ngZone = ngZone;
24
- }
25
- ngOnInit() {
26
- const chipElement = this.host.element.nativeElement;
27
- this.ngZone.runOutsideAngular(() => {
28
- this.keydownSub.add(this.renderer.listen(chipElement, 'keydown', (ev) => {
29
- ev.preventDefault();
30
- const code = normalizeKeys(ev);
31
- const isAltDown = code === Keys.ArrowDown && ev.altKey;
32
- const menuIcon = this.host.element.nativeElement.querySelector('.k-i-more-vertical, .k-svg-i-more-vertical');
33
- const isCtrlOrMeta = ev.ctrlKey || ev.metaKey;
34
- const shiftAndMeta = ev.shiftKey && isCtrlOrMeta;
35
- const isArrow = [Keys.ArrowLeft, Keys.ArrowRight, Keys.ArrowDown, Keys.ArrowUp].includes(code);
36
- const isReorderAction = shiftAndMeta && isArrow;
37
- if (isAltDown && menuIcon) {
38
- menuIcon.click();
39
- }
40
- else if (isReorderAction) {
41
- const direction = {
42
- [Keys.ArrowDown]: 'down',
43
- [Keys.ArrowUp]: 'up',
44
- [Keys.ArrowRight]: 'right',
45
- [Keys.ArrowLeft]: 'left'
46
- }[code];
47
- this.reorder.emit({
48
- direction,
49
- sender: this.host
50
- });
51
- }
52
- }));
53
- });
54
- }
55
- ngOnDestroy() {
56
- this.keydownSub.unsubscribe();
57
- }
58
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ChipKeyboardNavigationDirective, deps: [{ token: i1.ChipComponent }, { token: i0.Renderer2 }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });
59
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: ChipKeyboardNavigationDirective, isStandalone: true, selector: "[kendoChipKeyboardNavigation]", outputs: { reorder: "reorder" }, ngImport: i0 });
60
- }
61
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ChipKeyboardNavigationDirective, decorators: [{
62
- type: Directive,
63
- args: [{
64
- selector: '[kendoChipKeyboardNavigation]',
65
- standalone: true
66
- }]
67
- }], ctorParameters: () => [{ type: i1.ChipComponent }, { type: i0.Renderer2 }, { type: i0.NgZone }], propDecorators: { reorder: [{
68
- type: Output
69
- }] } });
@@ -1,51 +0,0 @@
1
- /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2026 Progress Software Corporation. All rights reserved.
3
- * Licensed under commercial license. See LICENSE.md in the project root for more information
4
- *-------------------------------------------------------------------------------------------*/
5
- import { ChipMenuItemDirective } from './chip-menu-item.directive';
6
- import { Component, ContentChildren, HostBinding, NgZone, QueryList } from '@angular/core';
7
- import { take } from 'rxjs/operators';
8
- import { ChipMenuService } from './chip-menu.service';
9
- import * as i0 from "@angular/core";
10
- import * as i1 from "./chip-menu.service";
11
- /**
12
- * @hidden
13
- */
14
- export class ChipMenuContainerComponent {
15
- service;
16
- ngZone;
17
- chipMenuItems;
18
- hostClass = true;
19
- constructor(service, ngZone) {
20
- this.service = service;
21
- this.ngZone = ngZone;
22
- }
23
- ngAfterViewInit() {
24
- if (!this.chipMenuItems.length) {
25
- return;
26
- }
27
- this.chipMenuItems.first.isFirst = true;
28
- this.chipMenuItems.last.isLast = true;
29
- this.ngZone.onStable.pipe(take(1)).subscribe(() => this.service.menuTabbingService.firstFocusable.focus());
30
- }
31
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ChipMenuContainerComponent, deps: [{ token: i1.ChipMenuService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
32
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: ChipMenuContainerComponent, isStandalone: true, selector: "kendo-pivot-chipmenu-container", host: { properties: { "class.k-grid-columnmenu-popup": "this.hostClass" } }, queries: [{ propertyName: "chipMenuItems", predicate: ChipMenuItemDirective, descendants: true }], ngImport: i0, template: `
33
- <ng-content></ng-content>
34
- `, isInline: true });
35
- }
36
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ChipMenuContainerComponent, decorators: [{
37
- type: Component,
38
- args: [{
39
- selector: 'kendo-pivot-chipmenu-container',
40
- template: `
41
- <ng-content></ng-content>
42
- `,
43
- standalone: true
44
- }]
45
- }], ctorParameters: () => [{ type: i1.ChipMenuService }, { type: i0.NgZone }], propDecorators: { chipMenuItems: [{
46
- type: ContentChildren,
47
- args: [ChipMenuItemDirective, { descendants: true }]
48
- }], hostClass: [{
49
- type: HostBinding,
50
- args: ['class.k-grid-columnmenu-popup']
51
- }] } });
@@ -1,135 +0,0 @@
1
- /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2026 Progress Software Corporation. All rights reserved.
3
- * Licensed under commercial license. See LICENSE.md in the project root for more information
4
- *-------------------------------------------------------------------------------------------*/
5
- import { Component, Input, Output, EventEmitter, ElementRef } from '@angular/core';
6
- import { filterIcon } from '@progress/kendo-svg-icons';
7
- import { PivotLocalizationService } from '../../localization/pivot-localization.service';
8
- import { ChipMenuItemBase } from './chip-menu-item-base';
9
- import { FilterMenuContainerComponent } from './filtering/filter-menu-container.component';
10
- import { ChipMenuItemContentTemplateDirective } from './chip-menu-item-content-template.directive';
11
- import { ChipMenuItemComponent } from './chip-menu-item.component';
12
- import * as i0 from "@angular/core";
13
- import * as i1 from "../../localization/pivot-localization.service";
14
- /**
15
- * @hidden
16
- * Represents the component for setting field filters in the PivotGrid.
17
- */
18
- export class ChipMenuFilterComponent extends ChipMenuItemBase {
19
- localization;
20
- hostElement;
21
- /**
22
- * Fires when the content is expanded.
23
- */
24
- expand = new EventEmitter();
25
- /**
26
- * Fires when the content is collapsed.
27
- */
28
- collapse = new EventEmitter();
29
- /**
30
- * Holds current field information.
31
- */
32
- chip;
33
- /**
34
- * Specifies if the content is expanded.
35
- */
36
- expanded = false;
37
- isLast = false;
38
- actionsClass = 'k-columnmenu-actions';
39
- filterSVGIcon = filterIcon;
40
- constructor(localization, hostElement) {
41
- super();
42
- this.localization = localization;
43
- this.hostElement = hostElement;
44
- }
45
- ngAfterViewInit() {
46
- if (this.isLast) {
47
- this.service.menuTabbingService.lastFocusable = this.expanded ?
48
- this.hostElement.nativeElement.querySelector('.k-button:not([disabled])') :
49
- this.hostElement.nativeElement.querySelector('.k-columnmenu-item');
50
- }
51
- }
52
- onCollapse() {
53
- this.expanded = false;
54
- if (this.isLast) {
55
- this.service.menuTabbingService.lastFocusable = this.hostElement.nativeElement.querySelector('.k-columnmenu-item');
56
- }
57
- this.collapse.emit();
58
- }
59
- onExpand() {
60
- this.expanded = true;
61
- if (this.isLast) {
62
- this.service.menuTabbingService.lastFocusable = this.hostElement.nativeElement.querySelector('.k-button:not([disabled])');
63
- }
64
- this.expand.emit();
65
- }
66
- /**
67
- * Returns the localized message for a given token
68
- */
69
- messageFor(localizationToken) {
70
- return this.localization.get(localizationToken);
71
- }
72
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ChipMenuFilterComponent, deps: [{ token: i1.PivotLocalizationService }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
73
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: ChipMenuFilterComponent, isStandalone: true, selector: "kendo-pivot-chipmenu-filter", inputs: { chip: "chip", expanded: "expanded", isLast: "isLast" }, outputs: { expand: "expand", collapse: "collapse" }, usesInheritance: true, ngImport: i0, template: `
74
- <kendo-pivot-chipmenu-item
75
- classs="k-widget k-expander"
76
- [text]="messageFor('fieldMenuFilterItemLabel')"
77
- icon="filter"
78
- [svgIcon]="filterSVGIcon"
79
- [expanded]="expanded"
80
- (collapse)="onCollapse()"
81
- (expand)="onExpand()">
82
- <ng-template kendoPivotChipMenuItemContentTemplate>
83
- <kendo-pivot-filter-menu-container
84
- [chip]="chip"
85
- [menuTabbingService]="service.menuTabbingService"
86
- [actionsClass]="actionsClass"
87
- [isLast]="isLast"
88
- [isExpanded]="expanded"
89
- (keydown.shift.tab)="$event.stopImmediatePropagation()"
90
- (close)="close()">
91
- </kendo-pivot-filter-menu-container>
92
- </ng-template>
93
- </kendo-pivot-chipmenu-item>
94
- `, isInline: true, dependencies: [{ kind: "component", type: ChipMenuItemComponent, selector: "kendo-pivot-chipmenu-item", inputs: ["icon", "svgIcon", "text", "selected", "expanded", "disabled"], outputs: ["itemClick", "expand", "collapse"] }, { kind: "directive", type: ChipMenuItemContentTemplateDirective, selector: "[kendoPivotChipMenuItemContentTemplate]" }, { kind: "component", type: FilterMenuContainerComponent, selector: "kendo-pivot-filter-menu-container", inputs: ["chip", "isLast", "isExpanded", "menuTabbingService", "actionsClass"], outputs: ["close"] }] });
95
- }
96
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ChipMenuFilterComponent, decorators: [{
97
- type: Component,
98
- args: [{
99
- selector: 'kendo-pivot-chipmenu-filter',
100
- template: `
101
- <kendo-pivot-chipmenu-item
102
- classs="k-widget k-expander"
103
- [text]="messageFor('fieldMenuFilterItemLabel')"
104
- icon="filter"
105
- [svgIcon]="filterSVGIcon"
106
- [expanded]="expanded"
107
- (collapse)="onCollapse()"
108
- (expand)="onExpand()">
109
- <ng-template kendoPivotChipMenuItemContentTemplate>
110
- <kendo-pivot-filter-menu-container
111
- [chip]="chip"
112
- [menuTabbingService]="service.menuTabbingService"
113
- [actionsClass]="actionsClass"
114
- [isLast]="isLast"
115
- [isExpanded]="expanded"
116
- (keydown.shift.tab)="$event.stopImmediatePropagation()"
117
- (close)="close()">
118
- </kendo-pivot-filter-menu-container>
119
- </ng-template>
120
- </kendo-pivot-chipmenu-item>
121
- `,
122
- standalone: true,
123
- imports: [ChipMenuItemComponent, ChipMenuItemContentTemplateDirective, FilterMenuContainerComponent]
124
- }]
125
- }], ctorParameters: () => [{ type: i1.PivotLocalizationService }, { type: i0.ElementRef }], propDecorators: { expand: [{
126
- type: Output
127
- }], collapse: [{
128
- type: Output
129
- }], chip: [{
130
- type: Input
131
- }], expanded: [{
132
- type: Input
133
- }], isLast: [{
134
- type: Input
135
- }] } });
@@ -1,40 +0,0 @@
1
- /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2026 Progress Software Corporation. All rights reserved.
3
- * Licensed under commercial license. See LICENSE.md in the project root for more information
4
- *-------------------------------------------------------------------------------------------*/
5
- import { Input, isDevMode, HostBinding, Component } from '@angular/core';
6
- import { ChipMenuService } from './chip-menu.service';
7
- import * as i0 from "@angular/core";
8
- /**
9
- * @hidden
10
- */
11
- export class ChipMenuItemBase {
12
- /**
13
- * Represents the ChipMenuService class.
14
- * Requires a mandatory input.
15
- */
16
- service;
17
- hostClass = true;
18
- ngOnInit() {
19
- if (isDevMode() && !this.service) {
20
- throw new Error('The service input of the host chip menu components (e.g. ChipMenuSortComponent) is mandatory.');
21
- }
22
- }
23
- close() {
24
- this.service.close();
25
- }
26
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ChipMenuItemBase, deps: [], target: i0.ɵɵFactoryTarget.Component });
27
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: ChipMenuItemBase, selector: "kendo-pivot-chip-menu-item-base", inputs: { service: "service" }, host: { properties: { "class.k-columnmenu-item-wrapper": "this.hostClass" } }, ngImport: i0, template: ``, isInline: true });
28
- }
29
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ChipMenuItemBase, decorators: [{
30
- type: Component,
31
- args: [{
32
- selector: 'kendo-pivot-chip-menu-item-base',
33
- template: ``
34
- }]
35
- }], propDecorators: { service: [{
36
- type: Input
37
- }], hostClass: [{
38
- type: HostBinding,
39
- args: ['class.k-columnmenu-item-wrapper']
40
- }] } });
@@ -1,29 +0,0 @@
1
- /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2026 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, Optional, TemplateRef } from '@angular/core';
6
- import * as i0 from "@angular/core";
7
- /**
8
- * @hidden
9
- *
10
- * Represents the content template of the ChipMenuItemComponent.
11
- * Provides an option for specifying the content of a chip menu item..
12
- */
13
- export class ChipMenuItemContentTemplateDirective {
14
- templateRef;
15
- constructor(templateRef) {
16
- this.templateRef = templateRef;
17
- }
18
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ChipMenuItemContentTemplateDirective, deps: [{ token: i0.TemplateRef, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
19
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: ChipMenuItemContentTemplateDirective, isStandalone: true, selector: "[kendoPivotChipMenuItemContentTemplate]", ngImport: i0 });
20
- }
21
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ChipMenuItemContentTemplateDirective, decorators: [{
22
- type: Directive,
23
- args: [{
24
- selector: '[kendoPivotChipMenuItemContentTemplate]',
25
- standalone: true
26
- }]
27
- }], ctorParameters: () => [{ type: i0.TemplateRef, decorators: [{
28
- type: Optional
29
- }] }] });
@@ -1,206 +0,0 @@
1
- /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2026 Progress Software Corporation. All rights reserved.
3
- * Licensed under commercial license. See LICENSE.md in the project root for more information
4
- *-------------------------------------------------------------------------------------------*/
5
- /* eslint-disable @typescript-eslint/no-explicit-any */
6
- import { Component, Input, Output, EventEmitter, ContentChild } from '@angular/core';
7
- import { trigger, transition, style, animate, state } from '@angular/animations';
8
- import { ChipMenuItemContentTemplateDirective } from './chip-menu-item-content-template.directive';
9
- import { NgTemplateOutlet } from '@angular/common';
10
- import { IconWrapperComponent } from '@progress/kendo-angular-icons';
11
- import * as i0 from "@angular/core";
12
- /**
13
- * @hidden
14
- *
15
- */
16
- export class ChipMenuItemComponent {
17
- /**
18
- * Fires when the item is clicked.
19
- */
20
- itemClick = new EventEmitter();
21
- /**
22
- * Fires when the content is expanded.
23
- */
24
- expand = new EventEmitter();
25
- /**
26
- * Fires when the content is collapsed.
27
- */
28
- collapse = new EventEmitter();
29
- /**
30
- * Specifies the name of the [font icon](slug:icons#icons-list)
31
- * that will be rendered for the item.
32
- */
33
- icon;
34
- /**
35
- * Defines an SVGIcon to be rendered for the column menu items.
36
- * The input can take either an [existing Kendo SVG icon](slug:svgicon_list) or a custom one.
37
- */
38
- svgIcon;
39
- /**
40
- * Specifies the item text.
41
- */
42
- text;
43
- /**
44
- * Specifies if the item is selected.
45
- */
46
- selected;
47
- /**
48
- * Specifies if the item is expanded.
49
- */
50
- expanded;
51
- /**
52
- * Specified if the item is disabled
53
- */
54
- disabled;
55
- contentTemplate;
56
- get iconClass() {
57
- return `k-i-${this.icon}`;
58
- }
59
- contentState = 'collapsed';
60
- ngOnChanges(changes) {
61
- if (changes.expanded) {
62
- this.updateContentState();
63
- }
64
- }
65
- onClick(e) {
66
- this.itemClick.emit(e);
67
- if (this.contentTemplate) {
68
- this.expanded = !this.expanded;
69
- this.updateContentState();
70
- if (this.expanded) {
71
- this.expand.emit();
72
- }
73
- else {
74
- this.collapse.emit();
75
- }
76
- }
77
- }
78
- updateContentState() {
79
- this.contentState = this.expanded ? 'expanded' : 'collapsed';
80
- }
81
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ChipMenuItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
82
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: ChipMenuItemComponent, isStandalone: true, selector: "kendo-pivot-chipmenu-item", inputs: { icon: "icon", svgIcon: "svgIcon", text: "text", selected: "selected", expanded: "expanded", disabled: "disabled" }, outputs: { itemClick: "itemClick", expand: "expand", collapse: "collapse" }, queries: [{ propertyName: "contentTemplate", first: true, predicate: ChipMenuItemContentTemplateDirective, descendants: true }], usesOnChanges: true, ngImport: i0, template: `
83
- <div
84
- class="k-columnmenu-item"
85
- (click)="onClick($event)"
86
- (keydown.enter)="onClick($event)"
87
- [class.k-selected]="selected"
88
- [class.k-disabled]="disabled"
89
- role="button"
90
- [attr.aria-expanded]="expanded"
91
- [attr.aria-disabled]="disabled"
92
- >
93
- @if (icon) {
94
- <kendo-icon-wrapper
95
- [name]="icon"
96
- [svgIcon]="svgIcon"
97
- ></kendo-icon-wrapper>
98
- }
99
- {{ text }}
100
- </div>
101
- @if (contentTemplate) {
102
- <div [@state]="contentState" [style.overflow]="'hidden'" class="k-columnmenu-item-content">
103
- <ng-container [ngTemplateOutlet]="contentTemplate.templateRef"></ng-container>
104
- </div>
105
- }
106
- `, isInline: true, dependencies: [{ kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], animations: [
107
- trigger('state', [
108
- state('collapsed', style({ display: 'none' })),
109
- state('expanded', style({ display: 'block' })),
110
- transition('collapsed => expanded', [
111
- style({
112
- height: '0px',
113
- display: 'block'
114
- }),
115
- animate('100ms ease-in', style({
116
- height: '*'
117
- }))
118
- ]),
119
- transition('expanded => collapsed', [
120
- style({
121
- height: '*'
122
- }),
123
- animate('100ms ease-in', style({
124
- height: '0px'
125
- }))
126
- ])
127
- ])
128
- ] });
129
- }
130
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ChipMenuItemComponent, decorators: [{
131
- type: Component,
132
- args: [{
133
- animations: [
134
- trigger('state', [
135
- state('collapsed', style({ display: 'none' })),
136
- state('expanded', style({ display: 'block' })),
137
- transition('collapsed => expanded', [
138
- style({
139
- height: '0px',
140
- display: 'block'
141
- }),
142
- animate('100ms ease-in', style({
143
- height: '*'
144
- }))
145
- ]),
146
- transition('expanded => collapsed', [
147
- style({
148
- height: '*'
149
- }),
150
- animate('100ms ease-in', style({
151
- height: '0px'
152
- }))
153
- ])
154
- ])
155
- ],
156
- selector: 'kendo-pivot-chipmenu-item',
157
- template: `
158
- <div
159
- class="k-columnmenu-item"
160
- (click)="onClick($event)"
161
- (keydown.enter)="onClick($event)"
162
- [class.k-selected]="selected"
163
- [class.k-disabled]="disabled"
164
- role="button"
165
- [attr.aria-expanded]="expanded"
166
- [attr.aria-disabled]="disabled"
167
- >
168
- @if (icon) {
169
- <kendo-icon-wrapper
170
- [name]="icon"
171
- [svgIcon]="svgIcon"
172
- ></kendo-icon-wrapper>
173
- }
174
- {{ text }}
175
- </div>
176
- @if (contentTemplate) {
177
- <div [@state]="contentState" [style.overflow]="'hidden'" class="k-columnmenu-item-content">
178
- <ng-container [ngTemplateOutlet]="contentTemplate.templateRef"></ng-container>
179
- </div>
180
- }
181
- `,
182
- standalone: true,
183
- imports: [IconWrapperComponent, NgTemplateOutlet]
184
- }]
185
- }], propDecorators: { itemClick: [{
186
- type: Output
187
- }], expand: [{
188
- type: Output
189
- }], collapse: [{
190
- type: Output
191
- }], icon: [{
192
- type: Input
193
- }], svgIcon: [{
194
- type: Input
195
- }], text: [{
196
- type: Input
197
- }], selected: [{
198
- type: Input
199
- }], expanded: [{
200
- type: Input
201
- }], disabled: [{
202
- type: Input
203
- }], contentTemplate: [{
204
- type: ContentChild,
205
- args: [ChipMenuItemContentTemplateDirective, { static: false }]
206
- }] } });