@progress/kendo-angular-pivotgrid 0.2.0-dev.202208250747 → 0.2.0-dev.202209021834
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/bundles/kendo-angular-pivotgrid.umd.js +1 -1
- package/configurator/chip-menu/chip-menu-container.component.d.ts +21 -0
- package/configurator/chip-menu/chip-menu-filter.component.d.ts +44 -0
- package/configurator/chip-menu/chip-menu-item-base.d.ts +22 -0
- package/configurator/chip-menu/chip-menu-item-content-template.directive.d.ts +18 -0
- package/configurator/chip-menu/chip-menu-item.component.d.ts +50 -0
- package/configurator/chip-menu/chip-menu-item.directive.d.ts +32 -0
- package/configurator/chip-menu/chip-menu-sort.component.d.ts +33 -0
- package/configurator/chip-menu/chip-menu.component.d.ts +35 -0
- package/configurator/chip-menu/chip-menu.module.d.ts +26 -0
- package/configurator/chip-menu/chip-menu.service.d.ts +22 -0
- package/configurator/chip-menu/filtering/filter-menu-container.component.d.ts +47 -0
- package/configurator/chip-menu/filtering/filter-menu-dropdownlist.directive.d.ts +19 -0
- package/configurator/chip-menu/filtering/menu-tabbing.service.d.ts +17 -0
- package/configurator/chip-menu/filtering/string-filter-menu.component.d.ts +53 -0
- package/configurator/chip-menu/single-popup.service.d.ts +50 -0
- package/configurator/configurator.component.d.ts +4 -1
- package/data-binding/base-binding-directive.d.ts +10 -1
- package/data-binding/pivotgrid-data.service.d.ts +2 -0
- package/esm2015/configurator/chip-menu/chip-menu-container.component.js +46 -0
- package/esm2015/configurator/chip-menu/chip-menu-filter.component.js +112 -0
- package/esm2015/configurator/chip-menu/chip-menu-item-base.js +36 -0
- package/esm2015/configurator/chip-menu/chip-menu-item-content-template.directive.js +27 -0
- package/esm2015/configurator/chip-menu/chip-menu-item.component.js +157 -0
- package/esm2015/configurator/chip-menu/chip-menu-item.directive.js +88 -0
- package/esm2015/configurator/chip-menu/chip-menu-sort.component.js +89 -0
- package/esm2015/configurator/chip-menu/chip-menu.component.js +130 -0
- package/esm2015/configurator/chip-menu/chip-menu.module.js +83 -0
- package/esm2015/configurator/chip-menu/chip-menu.service.js +28 -0
- package/esm2015/configurator/chip-menu/filtering/filter-menu-container.component.js +173 -0
- package/esm2015/configurator/chip-menu/filtering/filter-menu-dropdownlist.directive.js +38 -0
- package/esm2015/configurator/chip-menu/filtering/menu-tabbing.service.js +20 -0
- package/esm2015/configurator/chip-menu/filtering/string-filter-menu.component.js +133 -0
- package/esm2015/configurator/chip-menu/single-popup.service.js +121 -0
- package/esm2015/configurator/configurator.component.js +56 -33
- package/esm2015/configurator/configurator.service.js +2 -2
- package/esm2015/data-binding/base-binding-directive.js +17 -7
- package/esm2015/data-binding/local-binding.directive.js +3 -3
- package/esm2015/data-binding/olap-binding.directive.js +8 -5
- package/esm2015/localization/messages.js +3 -1
- package/esm2015/localization/pivot-localization.service.js +28 -0
- package/esm2015/models/configurator-settings.js +3 -1
- package/esm2015/package-metadata.js +1 -1
- package/esm2015/pivotgrid.component.js +79 -14
- package/esm2015/pivotgrid.module.js +9 -12
- package/esm2015/shared.module.js +40 -0
- package/esm2015/util.js +59 -28
- package/fesm2015/kendo-angular-pivotgrid.js +1507 -180
- package/localization/messages.d.ts +23 -1
- package/localization/pivot-localization.service.d.ts +19 -0
- package/models/configurator-settings.d.ts +4 -1
- package/package.json +3 -3
- package/pivotgrid.component.d.ts +20 -3
- package/pivotgrid.module.d.ts +6 -7
- package/schematics/ngAdd/index.js +1 -1
- package/schematics/ngAdd/index.js.map +1 -1
- package/shared.module.d.ts +17 -0
- package/util.d.ts +32 -8
|
@@ -8,17 +8,19 @@ import { DropCueService } from './drop-cue.service';
|
|
|
8
8
|
import { from, of, Subscription } from 'rxjs';
|
|
9
9
|
import { mergeMap } from 'rxjs/operators';
|
|
10
10
|
import { clone } from '../util';
|
|
11
|
+
import { SinglePopupService } from './chip-menu/single-popup.service';
|
|
11
12
|
import * as i0 from "@angular/core";
|
|
12
13
|
import * as i1 from "../data-binding/pivotgrid-data.service";
|
|
13
14
|
import * as i2 from "@progress/kendo-angular-l10n";
|
|
14
15
|
import * as i3 from "./configurator.service";
|
|
15
16
|
import * as i4 from "@progress/kendo-angular-treeview";
|
|
16
17
|
import * as i5 from "@progress/kendo-angular-buttons";
|
|
17
|
-
import * as i6 from "
|
|
18
|
-
import * as i7 from "@
|
|
19
|
-
import * as i8 from "
|
|
20
|
-
import * as i9 from "./
|
|
21
|
-
import * as i10 from "
|
|
18
|
+
import * as i6 from "./chip-menu/chip-menu.component";
|
|
19
|
+
import * as i7 from "@angular/common";
|
|
20
|
+
import * as i8 from "@progress/kendo-angular-inputs";
|
|
21
|
+
import * as i9 from "./drop-target.directive";
|
|
22
|
+
import * as i10 from "./draggable.directive";
|
|
23
|
+
import * as i11 from "@progress/kendo-angular-common";
|
|
22
24
|
/**
|
|
23
25
|
* @hidden
|
|
24
26
|
* Represents the Kendo UI PivotGrid Configurator component for Angular.
|
|
@@ -31,6 +33,7 @@ export class PivotGridConfiguratorComponent {
|
|
|
31
33
|
this.cdr = cdr;
|
|
32
34
|
this.hostClass = true;
|
|
33
35
|
this.horizontal = false;
|
|
36
|
+
this.sort = new Array();
|
|
34
37
|
this.checked = [];
|
|
35
38
|
this.subs = new Subscription();
|
|
36
39
|
/**
|
|
@@ -194,9 +197,10 @@ export class PivotGridConfiguratorComponent {
|
|
|
194
197
|
;
|
|
195
198
|
}
|
|
196
199
|
PivotGridConfiguratorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: PivotGridConfiguratorComponent, deps: [{ token: i1.PivotGridDataService }, { token: i2.LocalizationService }, { token: i3.ConfiguratorService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
197
|
-
PivotGridConfiguratorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: PivotGridConfiguratorComponent, selector: "kendo-pivotgrid-configurator", inputs: { horizontal: "horizontal" }, host: { properties: { "class.k-pivotgrid-configurator": "this.hostClass" } }, providers: [
|
|
200
|
+
PivotGridConfiguratorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: PivotGridConfiguratorComponent, selector: "kendo-pivotgrid-configurator", inputs: { horizontal: "horizontal", sort: "sort", filter: "filter" }, host: { properties: { "class.k-pivotgrid-configurator": "this.hostClass" } }, providers: [
|
|
198
201
|
ConfiguratorService,
|
|
199
|
-
DropCueService
|
|
202
|
+
DropCueService,
|
|
203
|
+
SinglePopupService
|
|
200
204
|
], ngImport: i0, template: `
|
|
201
205
|
<div
|
|
202
206
|
class="k-pivotgrid-configurator-panel k-pivotgrid-configurator-push"
|
|
@@ -265,6 +269,10 @@ PivotGridConfiguratorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
|
265
269
|
[removable]="true"
|
|
266
270
|
>
|
|
267
271
|
{{ getName(item.name) }}
|
|
272
|
+
|
|
273
|
+
<kendo-pivot-chip-menu
|
|
274
|
+
[chip]="item">
|
|
275
|
+
</kendo-pivot-chip-menu>
|
|
268
276
|
</kendo-chip>
|
|
269
277
|
</kendo-chiplist>
|
|
270
278
|
|
|
@@ -291,6 +299,10 @@ PivotGridConfiguratorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
|
291
299
|
[removable]="true"
|
|
292
300
|
>
|
|
293
301
|
{{ getName(item.name) }}
|
|
302
|
+
|
|
303
|
+
<kendo-pivot-chip-menu
|
|
304
|
+
[chip]="item">
|
|
305
|
+
</kendo-pivot-chip-menu>
|
|
294
306
|
</kendo-chip>
|
|
295
307
|
</kendo-chiplist>
|
|
296
308
|
|
|
@@ -313,18 +325,17 @@ PivotGridConfiguratorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
|
313
325
|
kendoDropTarget
|
|
314
326
|
axes="measureAxes"
|
|
315
327
|
>
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
</kendo-chip>
|
|
328
|
+
<kendo-chip *ngFor="let item of state.measureAxes"
|
|
329
|
+
kendoChipDraggable
|
|
330
|
+
kendoDraggable
|
|
331
|
+
kendoDropTarget
|
|
332
|
+
[item]="item"
|
|
333
|
+
axes="measureAxes"
|
|
334
|
+
rounded="full"
|
|
335
|
+
[removable]="true"
|
|
336
|
+
>
|
|
337
|
+
{{ getName(item.name) }}
|
|
338
|
+
</kendo-chip>
|
|
328
339
|
</kendo-chiplist>
|
|
329
340
|
|
|
330
341
|
<ng-template #noMeasureAxes>
|
|
@@ -339,14 +350,15 @@ PivotGridConfiguratorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
|
339
350
|
<button kendoButton themeColor="primary" type="button" (click)="handleSubmit()">{{messageFor('configuratorApplyButtonText')}}</button>
|
|
340
351
|
</div>
|
|
341
352
|
</div>
|
|
342
|
-
`, isInline: true, components: [{ type: i4.TreeViewComponent, selector: "kendo-treeview", inputs: ["filterInputPlaceholder", "expandDisabledNodes", "animate", "nodeTemplate", "loadMoreButtonTemplate", "trackBy", "nodes", "textField", "hasChildren", "isChecked", "isDisabled", "isExpanded", "isSelected", "isVisible", "navigable", "children", "loadOnDemand", "filterable", "filter", "size", "disableParentNodesOnly"], outputs: ["childrenLoaded", "blur", "focus", "expand", "collapse", "nodeDragStart", "nodeDrag", "filterStateChange", "nodeDrop", "nodeDragEnd", "addItem", "removeItem", "checkedChange", "selectionChange", "filterChange", "nodeClick", "nodeDblClick"], exportAs: ["kendoTreeView"] }, { type: i5.ChipListComponent, selector: "kendo-chiplist, kendo-chip-list", inputs: ["selection", "size"], outputs: ["selectedChange", "remove"] }, { type: i5.ChipComponent, selector: "kendo-chip", inputs: ["label", "icon", "iconClass", "avatarClass", "selected", "removable", "removeIcon", "disabled", "size", "rounded", "fillMode", "themeColor"], outputs: ["remove", "contentClick"] }], directives: [{ type:
|
|
353
|
+
`, isInline: true, components: [{ type: i4.TreeViewComponent, selector: "kendo-treeview", inputs: ["filterInputPlaceholder", "expandDisabledNodes", "animate", "nodeTemplate", "loadMoreButtonTemplate", "trackBy", "nodes", "textField", "hasChildren", "isChecked", "isDisabled", "isExpanded", "isSelected", "isVisible", "navigable", "children", "loadOnDemand", "filterable", "filter", "size", "disableParentNodesOnly"], outputs: ["childrenLoaded", "blur", "focus", "expand", "collapse", "nodeDragStart", "nodeDrag", "filterStateChange", "nodeDrop", "nodeDragEnd", "addItem", "removeItem", "checkedChange", "selectionChange", "filterChange", "nodeClick", "nodeDblClick"], exportAs: ["kendoTreeView"] }, { type: i5.ChipListComponent, selector: "kendo-chiplist, kendo-chip-list", inputs: ["selection", "size"], outputs: ["selectedChange", "remove"] }, { type: i5.ChipComponent, selector: "kendo-chip", inputs: ["label", "icon", "iconClass", "avatarClass", "selected", "removable", "removeIcon", "disabled", "size", "rounded", "fillMode", "themeColor"], outputs: ["remove", "contentClick"] }, { type: i6.ChipMenuComponent, selector: "kendo-pivot-chip-menu", inputs: ["chip", "tabIndex"] }], directives: [{ type: i7.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i4.ExpandDirective, selector: "[kendoTreeViewExpandable]", inputs: ["isExpanded", "expandBy", "expandOnFilter", "expandedKeys"], outputs: ["expandedKeysChange"] }, { type: i4.NodeTemplateDirective, selector: "[kendoTreeViewNodeTemplate]" }, { type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i8.CheckBoxDirective, selector: "input[kendoCheckBox]", inputs: ["size", "rounded"] }, { type: i7.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i9.DropTargetDirective, selector: "[kendoDropTarget]", inputs: ["item", "axes"] }, { type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i10.DraggableChipDirective, selector: "[kendoChipDraggable]", inputs: ["item"] }, { type: i11.DraggableDirective, selector: "[kendoDraggable]", inputs: ["enableDrag"], outputs: ["kendoPress", "kendoDrag", "kendoRelease"] }, { type: i5.ButtonDirective, selector: "button[kendoButton], span[kendoButton]", inputs: ["toggleable", "togglable", "selected", "tabIndex", "icon", "iconClass", "imageUrl", "disabled", "size", "rounded", "fillMode", "themeColor", "role", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }] });
|
|
343
354
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: PivotGridConfiguratorComponent, decorators: [{
|
|
344
355
|
type: Component,
|
|
345
356
|
args: [{
|
|
346
357
|
selector: 'kendo-pivotgrid-configurator',
|
|
347
358
|
providers: [
|
|
348
359
|
ConfiguratorService,
|
|
349
|
-
DropCueService
|
|
360
|
+
DropCueService,
|
|
361
|
+
SinglePopupService
|
|
350
362
|
],
|
|
351
363
|
template: `
|
|
352
364
|
<div
|
|
@@ -416,6 +428,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
416
428
|
[removable]="true"
|
|
417
429
|
>
|
|
418
430
|
{{ getName(item.name) }}
|
|
431
|
+
|
|
432
|
+
<kendo-pivot-chip-menu
|
|
433
|
+
[chip]="item">
|
|
434
|
+
</kendo-pivot-chip-menu>
|
|
419
435
|
</kendo-chip>
|
|
420
436
|
</kendo-chiplist>
|
|
421
437
|
|
|
@@ -442,6 +458,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
442
458
|
[removable]="true"
|
|
443
459
|
>
|
|
444
460
|
{{ getName(item.name) }}
|
|
461
|
+
|
|
462
|
+
<kendo-pivot-chip-menu
|
|
463
|
+
[chip]="item">
|
|
464
|
+
</kendo-pivot-chip-menu>
|
|
445
465
|
</kendo-chip>
|
|
446
466
|
</kendo-chiplist>
|
|
447
467
|
|
|
@@ -464,18 +484,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
464
484
|
kendoDropTarget
|
|
465
485
|
axes="measureAxes"
|
|
466
486
|
>
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
</kendo-chip>
|
|
487
|
+
<kendo-chip *ngFor="let item of state.measureAxes"
|
|
488
|
+
kendoChipDraggable
|
|
489
|
+
kendoDraggable
|
|
490
|
+
kendoDropTarget
|
|
491
|
+
[item]="item"
|
|
492
|
+
axes="measureAxes"
|
|
493
|
+
rounded="full"
|
|
494
|
+
[removable]="true"
|
|
495
|
+
>
|
|
496
|
+
{{ getName(item.name) }}
|
|
497
|
+
</kendo-chip>
|
|
479
498
|
</kendo-chiplist>
|
|
480
499
|
|
|
481
500
|
<ng-template #noMeasureAxes>
|
|
@@ -497,4 +516,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
497
516
|
args: ['class.k-pivotgrid-configurator']
|
|
498
517
|
}], horizontal: [{
|
|
499
518
|
type: Input
|
|
519
|
+
}], sort: [{
|
|
520
|
+
type: Input
|
|
521
|
+
}], filter: [{
|
|
522
|
+
type: Input
|
|
500
523
|
}] } });
|
|
@@ -14,8 +14,8 @@ export class ConfiguratorService {
|
|
|
14
14
|
}
|
|
15
15
|
parseConfiguratorState(action) {
|
|
16
16
|
const newState = configuratorReducer({
|
|
17
|
-
filter:
|
|
18
|
-
sort:
|
|
17
|
+
filter: this.state.filter,
|
|
18
|
+
sort: this.state.sort,
|
|
19
19
|
rowAxes: this.state.rowAxes,
|
|
20
20
|
columnAxes: this.state.columnAxes,
|
|
21
21
|
measureAxes: this.state.measureAxes,
|
|
@@ -31,6 +31,10 @@ export class PivotBaseBindingDirective {
|
|
|
31
31
|
* Represents the measure axes configuration of the PivotGrid.
|
|
32
32
|
*/
|
|
33
33
|
this.measureAxes = [];
|
|
34
|
+
/**
|
|
35
|
+
* Represents the initial sorted state of the PivotGrid.
|
|
36
|
+
*/
|
|
37
|
+
this.sort = [];
|
|
34
38
|
/**
|
|
35
39
|
* Fires each time a row or column header gets expanded or collapsed by the end user. The event is preventable.
|
|
36
40
|
* If you prevent the event, the PivotGrid will not be rerendered with the new state, resulting from the end user interaction.
|
|
@@ -52,7 +56,7 @@ export class PivotBaseBindingDirective {
|
|
|
52
56
|
* @hidden
|
|
53
57
|
*/
|
|
54
58
|
get state() {
|
|
55
|
-
return new PivotGridState(this.columnAxes, this.rowAxes, this.measureAxes);
|
|
59
|
+
return new PivotGridState(this.columnAxes, this.rowAxes, this.measureAxes, this.sort, this.filter);
|
|
56
60
|
}
|
|
57
61
|
ngOnInit() {
|
|
58
62
|
this.loadData(this.state);
|
|
@@ -78,16 +82,16 @@ export class PivotBaseBindingDirective {
|
|
|
78
82
|
this.dataService.configuredFields.next({
|
|
79
83
|
columnAxes: state.columnAxes,
|
|
80
84
|
rowAxes: state.rowAxes,
|
|
81
|
-
measureAxes: state.measureAxes
|
|
85
|
+
measureAxes: state.measureAxes,
|
|
86
|
+
sort: state.sort,
|
|
87
|
+
filter: state.filter
|
|
82
88
|
});
|
|
83
89
|
this.loadData(state);
|
|
84
90
|
});
|
|
85
91
|
}));
|
|
86
92
|
this.subs.add(this.dataService.valuesRows.subscribe((data) => {
|
|
87
93
|
this.zone.run(() => {
|
|
88
|
-
|
|
89
|
-
this.dataLoaded.emit(data);
|
|
90
|
-
}
|
|
94
|
+
this.dataService.aggregateData = data;
|
|
91
95
|
});
|
|
92
96
|
}));
|
|
93
97
|
this.dataService.directive = this;
|
|
@@ -106,7 +110,9 @@ export class PivotBaseBindingDirective {
|
|
|
106
110
|
this.dataService.configuredFields.next({
|
|
107
111
|
columnAxes: this.columnAxes,
|
|
108
112
|
rowAxes: this.rowAxes,
|
|
109
|
-
measureAxes: this.measureAxes
|
|
113
|
+
measureAxes: this.measureAxes,
|
|
114
|
+
sort: this.sort,
|
|
115
|
+
filter: this.filter
|
|
110
116
|
});
|
|
111
117
|
}
|
|
112
118
|
updateHeaders(axes, tree, path) {
|
|
@@ -133,7 +139,7 @@ export class PivotBaseBindingDirective {
|
|
|
133
139
|
;
|
|
134
140
|
}
|
|
135
141
|
PivotBaseBindingDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: PivotBaseBindingDirective, deps: [{ token: i1.PivotGridDataService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });
|
|
136
|
-
PivotBaseBindingDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: PivotBaseBindingDirective, selector: "kendo-base-binding-directive", inputs: { columnAxes: "columnAxes", rowAxes: "rowAxes", measureAxes: "measureAxes" }, outputs: { expandChange: "expandChange", configurationChange: "configurationChange", dataLoaded: "dataLoaded" }, ngImport: i0 });
|
|
142
|
+
PivotBaseBindingDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: PivotBaseBindingDirective, selector: "kendo-base-binding-directive", inputs: { columnAxes: "columnAxes", rowAxes: "rowAxes", measureAxes: "measureAxes", sort: "sort", filter: "filter" }, outputs: { expandChange: "expandChange", configurationChange: "configurationChange", dataLoaded: "dataLoaded" }, ngImport: i0 });
|
|
137
143
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: PivotBaseBindingDirective, decorators: [{
|
|
138
144
|
type: Directive,
|
|
139
145
|
args: [{
|
|
@@ -145,6 +151,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
145
151
|
type: Input
|
|
146
152
|
}], measureAxes: [{
|
|
147
153
|
type: Input
|
|
154
|
+
}], sort: [{
|
|
155
|
+
type: Input
|
|
156
|
+
}], filter: [{
|
|
157
|
+
type: Input
|
|
148
158
|
}], expandChange: [{
|
|
149
159
|
type: Output
|
|
150
160
|
}], configurationChange: [{
|
|
@@ -37,13 +37,13 @@ export class PivotLocalBindingDirective extends PivotBaseBindingDirective {
|
|
|
37
37
|
this.updateConfiguratorFields();
|
|
38
38
|
}
|
|
39
39
|
loadData(state) {
|
|
40
|
-
const { columnAxes, rowAxes, measureAxes } = state;
|
|
40
|
+
const { columnAxes, rowAxes, measureAxes, sort, filter } = state;
|
|
41
41
|
const rootColumnAxes = this.getRootAxes(columnAxes);
|
|
42
42
|
const rootRowAxes = this.getRootAxes(rowAxes);
|
|
43
43
|
const columnSettings = rootColumnAxes.split(stringSeparator).map(this.createAxisSettings);
|
|
44
44
|
const rowSettings = rootRowAxes.split(stringSeparator).map(this.createAxisSettings);
|
|
45
45
|
const measuresSettings = measureAxes.map(m => this.measures.find(meas => String(meas.name) === String(m.name))).filter(Boolean);
|
|
46
|
-
const dataTree = createDataTree(this.data, rowSettings, columnSettings, measuresSettings, bindingFields);
|
|
46
|
+
const dataTree = createDataTree(this.data, rowSettings, columnSettings, measuresSettings, bindingFields, filter);
|
|
47
47
|
this.dataState = createLocalDataState({
|
|
48
48
|
dataTree,
|
|
49
49
|
rowSettings,
|
|
@@ -51,7 +51,7 @@ export class PivotLocalBindingDirective extends PivotBaseBindingDirective {
|
|
|
51
51
|
rowAxes: rowAxes,
|
|
52
52
|
columnAxes: columnAxes,
|
|
53
53
|
measures: measuresSettings,
|
|
54
|
-
sort:
|
|
54
|
+
sort: sort,
|
|
55
55
|
fields: bindingFields
|
|
56
56
|
});
|
|
57
57
|
this.updateDataServiceFields();
|
|
@@ -7,6 +7,7 @@ import { Directive, Input } from '@angular/core';
|
|
|
7
7
|
import { addKPI, buildKPIMeasures, createDataState, fetchData, fetchDiscover } from '@progress/kendo-pivotgrid-common';
|
|
8
8
|
import { anyChanged } from '@progress/kendo-angular-common';
|
|
9
9
|
import { PivotBaseBindingDirective } from './base-binding-directive';
|
|
10
|
+
import { clone } from '../util';
|
|
10
11
|
import * as i0 from "@angular/core";
|
|
11
12
|
import * as i1 from "./pivotgrid-data.service";
|
|
12
13
|
/**
|
|
@@ -24,18 +25,20 @@ export class PivotOLAPBindingDirective extends PivotBaseBindingDirective {
|
|
|
24
25
|
}
|
|
25
26
|
}
|
|
26
27
|
loadData(state) {
|
|
27
|
-
const { columnAxes, rowAxes, measureAxes } = state;
|
|
28
|
+
const { columnAxes, rowAxes, measureAxes, sort, filter } = state;
|
|
28
29
|
this.dataService.loading.next(true);
|
|
29
30
|
const options = {
|
|
30
31
|
connection: {
|
|
31
32
|
catalog: this.catalog,
|
|
32
33
|
cube: this.cube
|
|
33
34
|
},
|
|
34
|
-
columnAxes
|
|
35
|
-
rowAxes
|
|
36
|
-
measureAxes
|
|
35
|
+
columnAxes,
|
|
36
|
+
rowAxes,
|
|
37
|
+
measureAxes,
|
|
38
|
+
sort,
|
|
39
|
+
filter
|
|
37
40
|
};
|
|
38
|
-
fetchData({ url: this.url },
|
|
41
|
+
fetchData({ url: this.url }, clone(options))
|
|
39
42
|
.then(createDataState)
|
|
40
43
|
.then(newDataState => {
|
|
41
44
|
this.dataState = newDataState;
|
|
@@ -11,7 +11,7 @@ import * as i0 from "@angular/core";
|
|
|
11
11
|
export class PivotGridMessages extends ComponentMessages {
|
|
12
12
|
}
|
|
13
13
|
PivotGridMessages.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: PivotGridMessages, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
14
|
-
PivotGridMessages.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: PivotGridMessages, inputs: { fieldMenuFilterItemLabel: "fieldMenuFilterItemLabel", fieldMenuSortAscendingItemLabel: "fieldMenuSortAscendingItemLabel", fieldMenuSortDescendingItemLabel: "fieldMenuSortDescendingItemLabel", filterInputLabel: "filterInputLabel", filterOperatorsDropDownLabel: "filterOperatorsDropDownLabel", filterEqOperator: "filterEqOperator", filterNotEqOperator: "filterNotEqOperator", filterIsNullOperator: "filterIsNullOperator", filterIsNotNullOperator: "filterIsNotNullOperator", filterIsEmptyOperator: "filterIsEmptyOperator", filterIsNotEmptyOperator: "filterIsNotEmptyOperator", filterStartsWithOperator: "filterStartsWithOperator", filterContainsOperator: "filterContainsOperator", filterNotContainsOperator: "filterNotContainsOperator", filterEndsWithOperator: "filterEndsWithOperator", filterFilterButton: "filterFilterButton", filterClearButton: "filterClearButton", loading: "loading", emptyCellLabel: "emptyCellLabel", configuratorButtonText: "configuratorButtonText", configuratorHeaderText: "configuratorHeaderText", configuratorFieldsText: "configuratorFieldsText", configuratorColumnsText: "configuratorColumnsText", configuratorRowsText: "configuratorRowsText", configuratorValuesText: "configuratorValuesText", configuratorCancelButtonText: "configuratorCancelButtonText", configuratorApplyButtonText: "configuratorApplyButtonText", configuratorEmptyRowsText: "configuratorEmptyRowsText", configuratorEmptyColumnsText: "configuratorEmptyColumnsText", configuratorEmptyMeasuresText: "configuratorEmptyMeasuresText" }, usesInheritance: true, ngImport: i0 });
|
|
14
|
+
PivotGridMessages.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: PivotGridMessages, inputs: { fieldMenuFilterItemLabel: "fieldMenuFilterItemLabel", fieldMenuSortAscendingItemLabel: "fieldMenuSortAscendingItemLabel", fieldMenuSortDescendingItemLabel: "fieldMenuSortDescendingItemLabel", filterInputLabel: "filterInputLabel", filterOperatorsDropDownLabel: "filterOperatorsDropDownLabel", filterEqOperator: "filterEqOperator", filterNotEqOperator: "filterNotEqOperator", filterIsNullOperator: "filterIsNullOperator", filterIsNotNullOperator: "filterIsNotNullOperator", filterIsEmptyOperator: "filterIsEmptyOperator", filterIsNotEmptyOperator: "filterIsNotEmptyOperator", filterStartsWithOperator: "filterStartsWithOperator", filterContainsOperator: "filterContainsOperator", filterNotContainsOperator: "filterNotContainsOperator", filterEndsWithOperator: "filterEndsWithOperator", filterFilterButton: "filterFilterButton", filterClearButton: "filterClearButton", loading: "loading", emptyCellLabel: "emptyCellLabel", configuratorButtonText: "configuratorButtonText", configuratorHeaderText: "configuratorHeaderText", configuratorFieldsText: "configuratorFieldsText", configuratorColumnsText: "configuratorColumnsText", configuratorRowsText: "configuratorRowsText", configuratorValuesText: "configuratorValuesText", configuratorCancelButtonText: "configuratorCancelButtonText", configuratorApplyButtonText: "configuratorApplyButtonText", configuratorEmptyRowsText: "configuratorEmptyRowsText", configuratorEmptyColumnsText: "configuratorEmptyColumnsText", configuratorEmptyMeasuresText: "configuratorEmptyMeasuresText", chipMenuIconTitle: "chipMenuIconTitle" }, usesInheritance: true, ngImport: i0 });
|
|
15
15
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: PivotGridMessages, decorators: [{
|
|
16
16
|
type: Directive
|
|
17
17
|
}], propDecorators: { fieldMenuFilterItemLabel: [{
|
|
@@ -74,4 +74,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
74
74
|
type: Input
|
|
75
75
|
}], configuratorEmptyMeasuresText: [{
|
|
76
76
|
type: Input
|
|
77
|
+
}], chipMenuIconTitle: [{
|
|
78
|
+
type: Input
|
|
77
79
|
}] } });
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**-----------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright © 2021 Progress Software Corporation. All rights reserved.
|
|
3
|
+
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
+
*-------------------------------------------------------------------------------------------*/
|
|
5
|
+
import { Injectable } from '@angular/core';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "@progress/kendo-angular-l10n";
|
|
8
|
+
/**
|
|
9
|
+
* @hidden
|
|
10
|
+
*
|
|
11
|
+
* Needed to keep the Pivot's LocalizationService reference and be able to use it inside the ChipList component.
|
|
12
|
+
*/
|
|
13
|
+
export class PivotLocalizationService {
|
|
14
|
+
constructor(localization) {
|
|
15
|
+
this.localization = localization;
|
|
16
|
+
}
|
|
17
|
+
get(token) {
|
|
18
|
+
return this.localization.get(token);
|
|
19
|
+
}
|
|
20
|
+
get rtl() {
|
|
21
|
+
return this.localization.rtl;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
PivotLocalizationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: PivotLocalizationService, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
25
|
+
PivotLocalizationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: PivotLocalizationService });
|
|
26
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: PivotLocalizationService, decorators: [{
|
|
27
|
+
type: Injectable
|
|
28
|
+
}], ctorParameters: function () { return [{ type: i1.LocalizationService }]; } });
|
|
@@ -6,9 +6,11 @@
|
|
|
6
6
|
* @hidden
|
|
7
7
|
*/
|
|
8
8
|
export class PivotGridState {
|
|
9
|
-
constructor(columnAxes, rowAxes, measureAxes) {
|
|
9
|
+
constructor(columnAxes, rowAxes, measureAxes, sort, filter) {
|
|
10
10
|
this.columnAxes = columnAxes;
|
|
11
11
|
this.rowAxes = rowAxes;
|
|
12
12
|
this.measureAxes = measureAxes;
|
|
13
|
+
this.sort = sort;
|
|
14
|
+
this.filter = filter;
|
|
13
15
|
}
|
|
14
16
|
}
|
|
@@ -9,7 +9,7 @@ export const packageMetadata = {
|
|
|
9
9
|
name: '@progress/kendo-angular-pivotgrid',
|
|
10
10
|
productName: 'Kendo UI for Angular',
|
|
11
11
|
productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
|
|
12
|
-
publishDate:
|
|
12
|
+
publishDate: 1662143617,
|
|
13
13
|
version: '',
|
|
14
14
|
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'
|
|
15
15
|
};
|
|
@@ -5,13 +5,15 @@
|
|
|
5
5
|
import { Component, ElementRef, HostBinding, Input, ViewChild } from '@angular/core';
|
|
6
6
|
import { validatePackage } from '@progress/kendo-licensing';
|
|
7
7
|
import { packageMetadata } from './package-metadata';
|
|
8
|
-
import { isDocumentAvailable } from '@progress/kendo-angular-common';
|
|
8
|
+
import { isChanged, isDocumentAvailable } from '@progress/kendo-angular-common';
|
|
9
9
|
import { PivotGridDataService } from './data-binding/pivotgrid-data.service';
|
|
10
10
|
import { fromEvent, Subscription } from 'rxjs';
|
|
11
|
-
import { syncScroll, syncWheel } from './util';
|
|
11
|
+
import { cloneArray, syncScroll, syncWheel } from './util';
|
|
12
12
|
// eslint-disable-next-line rxjs/ban-operators
|
|
13
13
|
import { merge } from 'rxjs/operators';
|
|
14
14
|
import { L10N_PREFIX, LocalizationService } from '@progress/kendo-angular-l10n';
|
|
15
|
+
import { PivotGridNavigation } from '@progress/kendo-pivotgrid-common';
|
|
16
|
+
import { PivotLocalizationService } from './localization/pivot-localization.service';
|
|
15
17
|
import * as i0 from "@angular/core";
|
|
16
18
|
import * as i1 from "./data-binding/pivotgrid-data.service";
|
|
17
19
|
import * as i2 from "@progress/kendo-angular-l10n";
|
|
@@ -34,10 +36,12 @@ const DEFAULT_CONFIGURATOR_SETTINGS = {
|
|
|
34
36
|
* Represents the Kendo UI PivotGrid component for Angular.
|
|
35
37
|
*/
|
|
36
38
|
export class PivotGridComponent {
|
|
37
|
-
constructor(hostEl, zone, dataService, localization, _scrollbarWidthService) {
|
|
39
|
+
constructor(hostEl, zone, dataService, localization, renderer, _scrollbarWidthService) {
|
|
40
|
+
this.hostEl = hostEl;
|
|
38
41
|
this.zone = zone;
|
|
39
42
|
this.dataService = dataService;
|
|
40
43
|
this.localization = localization;
|
|
44
|
+
this.renderer = renderer;
|
|
41
45
|
this.hostClass = true;
|
|
42
46
|
this.ariaRole = 'grid';
|
|
43
47
|
/**
|
|
@@ -46,6 +50,12 @@ export class PivotGridComponent {
|
|
|
46
50
|
* @default 200
|
|
47
51
|
*/
|
|
48
52
|
this.columnHeadersWidth = 200;
|
|
53
|
+
/**
|
|
54
|
+
* If set to true, the user can use dedicated shortcuts to interact with the PivotGrid. By default, navigation is disabled.
|
|
55
|
+
*
|
|
56
|
+
* @default false
|
|
57
|
+
*/
|
|
58
|
+
this.navigable = false;
|
|
49
59
|
this.resizeObservers = [];
|
|
50
60
|
this._loaderSettings = DEFAULT_LOADER_SETTINGS;
|
|
51
61
|
this.subs = new Subscription();
|
|
@@ -121,6 +131,12 @@ export class PivotGridComponent {
|
|
|
121
131
|
get configuratorSettings() {
|
|
122
132
|
return this.configurator && Object.assign({}, DEFAULT_CONFIGURATOR_SETTINGS, this.configurator);
|
|
123
133
|
}
|
|
134
|
+
/**
|
|
135
|
+
* Holds the displayed aggregated PivotGrid values.
|
|
136
|
+
*/
|
|
137
|
+
get aggregateData() {
|
|
138
|
+
return cloneArray(this.dataService.aggregateData);
|
|
139
|
+
}
|
|
124
140
|
ngAfterViewInit() {
|
|
125
141
|
if (isDocumentAvailable()) {
|
|
126
142
|
this.zone.runOutsideAngular(() => {
|
|
@@ -133,15 +149,29 @@ export class PivotGridComponent {
|
|
|
133
149
|
this.resizeObservers = [headerColsResizeObserver, headerRowsResizeObserver];
|
|
134
150
|
this.subs.add(fromEvent(rowHeadersTable, 'wheel')
|
|
135
151
|
.pipe(merge(fromEvent(colHeadersTable, 'wheel'), fromEvent(this.valuesTable.nativeElement, 'scroll'))).subscribe((ev) => this.handleScroll(ev)));
|
|
152
|
+
if (this.navigable) {
|
|
153
|
+
this.initNavigation();
|
|
154
|
+
}
|
|
136
155
|
});
|
|
137
156
|
}
|
|
138
157
|
}
|
|
139
158
|
ngAfterContentInit() {
|
|
140
159
|
this.subs.add(this.dataService.loading.subscribe(state => this.loading = state));
|
|
141
160
|
}
|
|
161
|
+
ngOnChanges(changes) {
|
|
162
|
+
if (isChanged('navigable', changes)) {
|
|
163
|
+
if (this.navigable) {
|
|
164
|
+
this.initNavigation();
|
|
165
|
+
}
|
|
166
|
+
else {
|
|
167
|
+
this.stopNavigation();
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
}
|
|
142
171
|
ngOnDestroy() {
|
|
143
172
|
this.resizeObservers.forEach(o => o.disconnect());
|
|
144
173
|
this.subs.unsubscribe();
|
|
174
|
+
this.stopNavigation();
|
|
145
175
|
}
|
|
146
176
|
/**
|
|
147
177
|
* @hidden
|
|
@@ -149,16 +179,38 @@ export class PivotGridComponent {
|
|
|
149
179
|
messageFor(localizationToken) {
|
|
150
180
|
return this.localization.get(localizationToken);
|
|
151
181
|
}
|
|
182
|
+
initNavigation() {
|
|
183
|
+
this.stopNavigation();
|
|
184
|
+
this.navigation = new PivotGridNavigation({ tabIndex: 0 });
|
|
185
|
+
this.navigation.start(this.hostEl.nativeElement);
|
|
186
|
+
const firstCell = this.navigation.first;
|
|
187
|
+
if (firstCell) {
|
|
188
|
+
firstCell.setAttribute('tabindex', '0');
|
|
189
|
+
}
|
|
190
|
+
this.subs.add(this.dataService.directive.expandChange.pipe(merge(this.dataService.directive.configurationChange)).subscribe(() => this.zone.runOutsideAngular(() => {
|
|
191
|
+
setTimeout(() => this.navigation.update());
|
|
192
|
+
})));
|
|
193
|
+
}
|
|
194
|
+
stopNavigation() {
|
|
195
|
+
if (this.navigation) {
|
|
196
|
+
const lastFocusedEl = this.navigation.elements.find(el => el.hasAttribute('tabindex'));
|
|
197
|
+
if (lastFocusedEl) {
|
|
198
|
+
this.renderer.removeAttribute(lastFocusedEl, 'tabindex');
|
|
199
|
+
}
|
|
200
|
+
this.navigation.stop();
|
|
201
|
+
}
|
|
202
|
+
}
|
|
152
203
|
}
|
|
153
|
-
PivotGridComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: PivotGridComponent, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }, { token: i1.PivotGridDataService }, { token: i2.LocalizationService }, { token: i3.ScrollbarWidthService }], target: i0.ɵɵFactoryTarget.Component });
|
|
154
|
-
PivotGridComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: PivotGridComponent, selector: "kendo-pivotgrid", inputs: { loaderSettings: "loaderSettings", configurator: "configurator", columnHeadersWidth: "columnHeadersWidth" }, host: { properties: { "class.k-d-flex": "this.hostClass", "class.k-pos-relative": "this.hostClass", "class.k-flex-row": "this.rightPositionClass", "class.k-flex-row-reverse": "this.leftPositionClass", "class.k-flex-column": "this.bottomPositionClass", "class.k-flex-column-reverse": "this.topPositionClass", "attr.dir": "this.dir", "attr.role": "this.ariaRole" } }, providers: [
|
|
204
|
+
PivotGridComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: PivotGridComponent, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }, { token: i1.PivotGridDataService }, { token: i2.LocalizationService }, { token: i0.Renderer2 }, { token: i3.ScrollbarWidthService }], target: i0.ɵɵFactoryTarget.Component });
|
|
205
|
+
PivotGridComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: PivotGridComponent, selector: "kendo-pivotgrid", inputs: { loaderSettings: "loaderSettings", configurator: "configurator", columnHeadersWidth: "columnHeadersWidth", navigable: "navigable" }, host: { properties: { "class.k-d-flex": "this.hostClass", "class.k-pos-relative": "this.hostClass", "class.k-flex-row": "this.rightPositionClass", "class.k-flex-row-reverse": "this.leftPositionClass", "class.k-flex-column": "this.bottomPositionClass", "class.k-flex-column-reverse": "this.topPositionClass", "attr.dir": "this.dir", "attr.role": "this.ariaRole" } }, providers: [
|
|
155
206
|
PivotGridDataService,
|
|
156
207
|
LocalizationService,
|
|
208
|
+
PivotLocalizationService,
|
|
157
209
|
{
|
|
158
210
|
provide: L10N_PREFIX,
|
|
159
211
|
useValue: 'kendo.pivotgrid'
|
|
160
212
|
}
|
|
161
|
-
], viewQueries: [{ propertyName: "colHeadersTable", first: true, predicate: ["colHeadersTable"], descendants: true, read: ElementRef }, { propertyName: "rowHeadersTable", first: true, predicate: ["rowHeadersTable"], descendants: true, read: ElementRef }, { propertyName: "valuesTable", first: true, predicate: ["valuesTable"], descendants: true, read: ElementRef }, { propertyName: "table", first: true, predicate: ["table"], descendants: true, read: ElementRef }], ngImport: i0, template: `
|
|
213
|
+
], viewQueries: [{ propertyName: "colHeadersTable", first: true, predicate: ["colHeadersTable"], descendants: true, read: ElementRef }, { propertyName: "rowHeadersTable", first: true, predicate: ["rowHeadersTable"], descendants: true, read: ElementRef }, { propertyName: "valuesTable", first: true, predicate: ["valuesTable"], descendants: true, read: ElementRef }, { propertyName: "table", first: true, predicate: ["table"], descendants: true, read: ElementRef }], usesOnChanges: true, ngImport: i0, template: `
|
|
162
214
|
<ng-container kendoPivotGridLocalizedMessages
|
|
163
215
|
i18n-loading="kendo.pivotgrid.loading|The loading text"
|
|
164
216
|
loading="Loading"
|
|
@@ -248,10 +300,15 @@ PivotGridComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", ver
|
|
|
248
300
|
configuratorEmptyColumnsText="Select some fields to begin setup"
|
|
249
301
|
|
|
250
302
|
i18n-configuratorEmptyMeasuresText="kendo.pivotgrid.configuratorEmptyMeasuresText|The text content of the PivotGrid configurator empty measures container"
|
|
251
|
-
configuratorEmptyMeasuresText="Select some fields to begin setup"
|
|
303
|
+
configuratorEmptyMeasuresText="Select some fields to begin setup"
|
|
304
|
+
|
|
305
|
+
i18n-chipMenuIconTitle="kendo.grid.chipMenuIconTitle|The title of the field menu icon"
|
|
306
|
+
chipMenuIconTitle="{{ '{fieldName} Field Menu' }}"></ng-container>
|
|
252
307
|
|
|
253
308
|
<div #table class="k-pivotgrid">
|
|
254
|
-
<span class="k-pivotgrid-empty-cell"
|
|
309
|
+
<span class="k-pivotgrid-empty-cell">
|
|
310
|
+
<span class="k-sr-only">{{messageFor('emptyCellLabel')}}</span>
|
|
311
|
+
</span>
|
|
255
312
|
<kendo-pivotgrid-table
|
|
256
313
|
#colHeadersTable
|
|
257
314
|
[colWidth]="columnHeadersWidth"
|
|
@@ -286,10 +343,10 @@ PivotGridComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", ver
|
|
|
286
343
|
<div *ngIf="configurator"
|
|
287
344
|
class="k-pivotgrid-configurator-button"
|
|
288
345
|
(click)="showConfigurator = !showConfigurator">
|
|
289
|
-
<span>{{
|
|
346
|
+
<span>{{messageFor('configuratorButtonText')}}<span class="k-icon k-i-gear k-color-inherit"></span>
|
|
290
347
|
</span>
|
|
291
348
|
</div>
|
|
292
|
-
`, isInline: true, styles: ["\n /** TODO: Remove if added to themes */\n div.k-loader {\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n }\n "], components: [{ type: i4.PivotGridTableComponent, selector: "kendo-pivotgrid-table", inputs: ["tableType", "colWidth"] }, { type: i5.LoaderComponent, selector: "kendo-loader", inputs: ["type", "themeColor", "size"] }, { type: i6.PivotGridConfiguratorComponent, selector: "kendo-pivotgrid-configurator", inputs: ["horizontal"] }], directives: [{ type: i7.LocalizedMessagesDirective, selector: "[kendoPivotGridLocalizedMessages]" }, { type: i8.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
349
|
+
`, isInline: true, styles: ["\n /** TODO: Remove if added to themes */\n div.k-loader {\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n }\n "], components: [{ type: i4.PivotGridTableComponent, selector: "kendo-pivotgrid-table", inputs: ["tableType", "colWidth"] }, { type: i5.LoaderComponent, selector: "kendo-loader", inputs: ["type", "themeColor", "size"] }, { type: i6.PivotGridConfiguratorComponent, selector: "kendo-pivotgrid-configurator", inputs: ["horizontal", "sort", "filter"] }], directives: [{ type: i7.LocalizedMessagesDirective, selector: "[kendoPivotGridLocalizedMessages]" }, { type: i8.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
293
350
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: PivotGridComponent, decorators: [{
|
|
294
351
|
type: Component,
|
|
295
352
|
args: [{
|
|
@@ -297,6 +354,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
297
354
|
providers: [
|
|
298
355
|
PivotGridDataService,
|
|
299
356
|
LocalizationService,
|
|
357
|
+
PivotLocalizationService,
|
|
300
358
|
{
|
|
301
359
|
provide: L10N_PREFIX,
|
|
302
360
|
useValue: 'kendo.pivotgrid'
|
|
@@ -392,10 +450,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
392
450
|
configuratorEmptyColumnsText="Select some fields to begin setup"
|
|
393
451
|
|
|
394
452
|
i18n-configuratorEmptyMeasuresText="kendo.pivotgrid.configuratorEmptyMeasuresText|The text content of the PivotGrid configurator empty measures container"
|
|
395
|
-
configuratorEmptyMeasuresText="Select some fields to begin setup"
|
|
453
|
+
configuratorEmptyMeasuresText="Select some fields to begin setup"
|
|
454
|
+
|
|
455
|
+
i18n-chipMenuIconTitle="kendo.grid.chipMenuIconTitle|The title of the field menu icon"
|
|
456
|
+
chipMenuIconTitle="{{ '{fieldName} Field Menu' }}"></ng-container>
|
|
396
457
|
|
|
397
458
|
<div #table class="k-pivotgrid">
|
|
398
|
-
<span class="k-pivotgrid-empty-cell"
|
|
459
|
+
<span class="k-pivotgrid-empty-cell">
|
|
460
|
+
<span class="k-sr-only">{{messageFor('emptyCellLabel')}}</span>
|
|
461
|
+
</span>
|
|
399
462
|
<kendo-pivotgrid-table
|
|
400
463
|
#colHeadersTable
|
|
401
464
|
[colWidth]="columnHeadersWidth"
|
|
@@ -430,7 +493,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
430
493
|
<div *ngIf="configurator"
|
|
431
494
|
class="k-pivotgrid-configurator-button"
|
|
432
495
|
(click)="showConfigurator = !showConfigurator">
|
|
433
|
-
<span>{{
|
|
496
|
+
<span>{{messageFor('configuratorButtonText')}}<span class="k-icon k-i-gear k-color-inherit"></span>
|
|
434
497
|
</span>
|
|
435
498
|
</div>
|
|
436
499
|
`,
|
|
@@ -444,7 +507,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
444
507
|
}
|
|
445
508
|
`]
|
|
446
509
|
}]
|
|
447
|
-
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.NgZone }, { type: i1.PivotGridDataService }, { type: i2.LocalizationService }, { type: i3.ScrollbarWidthService }]; }, propDecorators: { hostClass: [{
|
|
510
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.NgZone }, { type: i1.PivotGridDataService }, { type: i2.LocalizationService }, { type: i0.Renderer2 }, { type: i3.ScrollbarWidthService }]; }, propDecorators: { hostClass: [{
|
|
448
511
|
type: HostBinding,
|
|
449
512
|
args: ['class.k-d-flex']
|
|
450
513
|
}, {
|
|
@@ -486,4 +549,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
486
549
|
type: Input
|
|
487
550
|
}], columnHeadersWidth: [{
|
|
488
551
|
type: Input
|
|
552
|
+
}], navigable: [{
|
|
553
|
+
type: Input
|
|
489
554
|
}] } });
|