@progress/kendo-angular-pivotgrid 0.2.0-dev.202208190706 → 0.2.0-dev.202209020832
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 +16 -1
- 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 +30 -4
- package/esm2015/data-binding/local-binding.directive.js +3 -3
- package/esm2015/data-binding/olap-binding.directive.js +6 -4
- 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/models/data-row-item.js +6 -0
- package/esm2015/package-metadata.js +1 -1
- package/esm2015/pivotgrid.component.js +72 -13
- package/esm2015/pivotgrid.module.js +9 -12
- package/esm2015/shared.module.js +40 -0
- package/esm2015/util.js +13 -0
- package/fesm2015/kendo-angular-pivotgrid.js +1400 -81
- package/localization/messages.d.ts +23 -1
- package/localization/pivot-localization.service.d.ts +19 -0
- package/main.d.ts +1 -0
- package/models/configurator-settings.d.ts +4 -1
- package/models/data-row-item.d.ts +18 -0
- package/package.json +3 -3
- package/pivotgrid.component.d.ts +15 -3
- package/pivotgrid.module.d.ts +6 -7
- package/shared.module.d.ts +17 -0
- package/util.d.ts +12 -0
|
@@ -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.
|
|
@@ -41,13 +45,18 @@ export class PivotBaseBindingDirective {
|
|
|
41
45
|
* If you prevent the event, the PivotGrid will not be rerendered with the new state, resulting from the configuration changes, applied through the configurator interface.
|
|
42
46
|
*/
|
|
43
47
|
this.configurationChange = new EventEmitter();
|
|
48
|
+
/**
|
|
49
|
+
* Fires each time when new data is loaded and transformed to show aggregated values.
|
|
50
|
+
* The event fires upon initialization and on user interaction that changes the state of the PivotGrid.
|
|
51
|
+
*/
|
|
52
|
+
this.dataLoaded = new EventEmitter();
|
|
44
53
|
this.subs = new Subscription();
|
|
45
54
|
}
|
|
46
55
|
/**
|
|
47
56
|
* @hidden
|
|
48
57
|
*/
|
|
49
58
|
get state() {
|
|
50
|
-
return new PivotGridState(this.columnAxes, this.rowAxes, this.measureAxes);
|
|
59
|
+
return new PivotGridState(this.columnAxes, this.rowAxes, this.measureAxes, this.sort, this.filter);
|
|
51
60
|
}
|
|
52
61
|
ngOnInit() {
|
|
53
62
|
this.loadData(this.state);
|
|
@@ -73,11 +82,20 @@ export class PivotBaseBindingDirective {
|
|
|
73
82
|
this.dataService.configuredFields.next({
|
|
74
83
|
columnAxes: state.columnAxes,
|
|
75
84
|
rowAxes: state.rowAxes,
|
|
76
|
-
measureAxes: state.measureAxes
|
|
85
|
+
measureAxes: state.measureAxes,
|
|
86
|
+
sort: state.sort,
|
|
87
|
+
filter: state.filter
|
|
77
88
|
});
|
|
78
89
|
this.loadData(state);
|
|
79
90
|
});
|
|
80
91
|
}));
|
|
92
|
+
this.subs.add(this.dataService.valuesRows.subscribe((data) => {
|
|
93
|
+
this.zone.run(() => {
|
|
94
|
+
if (hasObservers(this.dataLoaded)) {
|
|
95
|
+
this.dataLoaded.emit(data);
|
|
96
|
+
}
|
|
97
|
+
});
|
|
98
|
+
}));
|
|
81
99
|
this.dataService.directive = this;
|
|
82
100
|
}
|
|
83
101
|
ngOnDestroy() {
|
|
@@ -94,7 +112,9 @@ export class PivotBaseBindingDirective {
|
|
|
94
112
|
this.dataService.configuredFields.next({
|
|
95
113
|
columnAxes: this.columnAxes,
|
|
96
114
|
rowAxes: this.rowAxes,
|
|
97
|
-
measureAxes: this.measureAxes
|
|
115
|
+
measureAxes: this.measureAxes,
|
|
116
|
+
sort: this.sort,
|
|
117
|
+
filter: this.filter
|
|
98
118
|
});
|
|
99
119
|
}
|
|
100
120
|
updateHeaders(axes, tree, path) {
|
|
@@ -121,7 +141,7 @@ export class PivotBaseBindingDirective {
|
|
|
121
141
|
;
|
|
122
142
|
}
|
|
123
143
|
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 });
|
|
124
|
-
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" }, ngImport: i0 });
|
|
144
|
+
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 });
|
|
125
145
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: PivotBaseBindingDirective, decorators: [{
|
|
126
146
|
type: Directive,
|
|
127
147
|
args: [{
|
|
@@ -133,8 +153,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
133
153
|
type: Input
|
|
134
154
|
}], measureAxes: [{
|
|
135
155
|
type: Input
|
|
156
|
+
}], sort: [{
|
|
157
|
+
type: Input
|
|
158
|
+
}], filter: [{
|
|
159
|
+
type: Input
|
|
136
160
|
}], expandChange: [{
|
|
137
161
|
type: Output
|
|
138
162
|
}], configurationChange: [{
|
|
139
163
|
type: Output
|
|
164
|
+
}], dataLoaded: [{
|
|
165
|
+
type: Output
|
|
140
166
|
}] } });
|
|
@@ -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();
|
|
@@ -24,16 +24,18 @@ export class PivotOLAPBindingDirective extends PivotBaseBindingDirective {
|
|
|
24
24
|
}
|
|
25
25
|
}
|
|
26
26
|
loadData(state) {
|
|
27
|
-
const { columnAxes, rowAxes, measureAxes } = state;
|
|
27
|
+
const { columnAxes, rowAxes, measureAxes, sort, filter } = state;
|
|
28
28
|
this.dataService.loading.next(true);
|
|
29
29
|
const options = {
|
|
30
30
|
connection: {
|
|
31
31
|
catalog: this.catalog,
|
|
32
32
|
cube: this.cube
|
|
33
33
|
},
|
|
34
|
-
columnAxes
|
|
35
|
-
rowAxes
|
|
36
|
-
measureAxes
|
|
34
|
+
columnAxes,
|
|
35
|
+
rowAxes,
|
|
36
|
+
measureAxes,
|
|
37
|
+
sort,
|
|
38
|
+
filter
|
|
37
39
|
};
|
|
38
40
|
fetchData({ url: this.url }, JSON.parse(JSON.stringify(options)))
|
|
39
41
|
.then(createDataState)
|
|
@@ -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
|
}
|
|
@@ -0,0 +1,6 @@
|
|
|
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
|
+
;
|
|
6
|
+
export {};
|
|
@@ -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: 1662107494,
|
|
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
11
|
import { 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();
|
|
@@ -133,15 +143,29 @@ export class PivotGridComponent {
|
|
|
133
143
|
this.resizeObservers = [headerColsResizeObserver, headerRowsResizeObserver];
|
|
134
144
|
this.subs.add(fromEvent(rowHeadersTable, 'wheel')
|
|
135
145
|
.pipe(merge(fromEvent(colHeadersTable, 'wheel'), fromEvent(this.valuesTable.nativeElement, 'scroll'))).subscribe((ev) => this.handleScroll(ev)));
|
|
146
|
+
if (this.navigable) {
|
|
147
|
+
this.initNavigation();
|
|
148
|
+
}
|
|
136
149
|
});
|
|
137
150
|
}
|
|
138
151
|
}
|
|
139
152
|
ngAfterContentInit() {
|
|
140
153
|
this.subs.add(this.dataService.loading.subscribe(state => this.loading = state));
|
|
141
154
|
}
|
|
155
|
+
ngOnChanges(changes) {
|
|
156
|
+
if (isChanged('navigable', changes)) {
|
|
157
|
+
if (this.navigable) {
|
|
158
|
+
this.initNavigation();
|
|
159
|
+
}
|
|
160
|
+
else {
|
|
161
|
+
this.stopNavigation();
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
}
|
|
142
165
|
ngOnDestroy() {
|
|
143
166
|
this.resizeObservers.forEach(o => o.disconnect());
|
|
144
167
|
this.subs.unsubscribe();
|
|
168
|
+
this.stopNavigation();
|
|
145
169
|
}
|
|
146
170
|
/**
|
|
147
171
|
* @hidden
|
|
@@ -149,16 +173,38 @@ export class PivotGridComponent {
|
|
|
149
173
|
messageFor(localizationToken) {
|
|
150
174
|
return this.localization.get(localizationToken);
|
|
151
175
|
}
|
|
176
|
+
initNavigation() {
|
|
177
|
+
this.stopNavigation();
|
|
178
|
+
this.navigation = new PivotGridNavigation({ tabIndex: 0 });
|
|
179
|
+
this.navigation.start(this.hostEl.nativeElement);
|
|
180
|
+
const firstCell = this.navigation.first;
|
|
181
|
+
if (firstCell) {
|
|
182
|
+
firstCell.setAttribute('tabindex', '0');
|
|
183
|
+
}
|
|
184
|
+
this.subs.add(this.dataService.directive.expandChange.pipe(merge(this.dataService.directive.configurationChange)).subscribe(() => this.zone.runOutsideAngular(() => {
|
|
185
|
+
setTimeout(() => this.navigation.update());
|
|
186
|
+
})));
|
|
187
|
+
}
|
|
188
|
+
stopNavigation() {
|
|
189
|
+
if (this.navigation) {
|
|
190
|
+
const lastFocusedEl = this.navigation.elements.find(el => el.hasAttribute('tabindex'));
|
|
191
|
+
if (lastFocusedEl) {
|
|
192
|
+
this.renderer.removeAttribute(lastFocusedEl, 'tabindex');
|
|
193
|
+
}
|
|
194
|
+
this.navigation.stop();
|
|
195
|
+
}
|
|
196
|
+
}
|
|
152
197
|
}
|
|
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: [
|
|
198
|
+
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 });
|
|
199
|
+
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
200
|
PivotGridDataService,
|
|
156
201
|
LocalizationService,
|
|
202
|
+
PivotLocalizationService,
|
|
157
203
|
{
|
|
158
204
|
provide: L10N_PREFIX,
|
|
159
205
|
useValue: 'kendo.pivotgrid'
|
|
160
206
|
}
|
|
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: `
|
|
207
|
+
], 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
208
|
<ng-container kendoPivotGridLocalizedMessages
|
|
163
209
|
i18n-loading="kendo.pivotgrid.loading|The loading text"
|
|
164
210
|
loading="Loading"
|
|
@@ -248,10 +294,15 @@ PivotGridComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", ver
|
|
|
248
294
|
configuratorEmptyColumnsText="Select some fields to begin setup"
|
|
249
295
|
|
|
250
296
|
i18n-configuratorEmptyMeasuresText="kendo.pivotgrid.configuratorEmptyMeasuresText|The text content of the PivotGrid configurator empty measures container"
|
|
251
|
-
configuratorEmptyMeasuresText="Select some fields to begin setup"
|
|
297
|
+
configuratorEmptyMeasuresText="Select some fields to begin setup"
|
|
298
|
+
|
|
299
|
+
i18n-chipMenuIconTitle="kendo.grid.chipMenuIconTitle|The title of the field menu icon"
|
|
300
|
+
chipMenuIconTitle="{{ '{fieldName} Field Menu' }}"></ng-container>
|
|
252
301
|
|
|
253
302
|
<div #table class="k-pivotgrid">
|
|
254
|
-
<span class="k-pivotgrid-empty-cell"
|
|
303
|
+
<span class="k-pivotgrid-empty-cell">
|
|
304
|
+
<span class="k-sr-only">{{messageFor('emptyCellLabel')}}</span>
|
|
305
|
+
</span>
|
|
255
306
|
<kendo-pivotgrid-table
|
|
256
307
|
#colHeadersTable
|
|
257
308
|
[colWidth]="columnHeadersWidth"
|
|
@@ -286,10 +337,10 @@ PivotGridComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", ver
|
|
|
286
337
|
<div *ngIf="configurator"
|
|
287
338
|
class="k-pivotgrid-configurator-button"
|
|
288
339
|
(click)="showConfigurator = !showConfigurator">
|
|
289
|
-
<span>{{
|
|
340
|
+
<span>{{messageFor('configuratorButtonText')}}<span class="k-icon k-i-gear k-color-inherit"></span>
|
|
290
341
|
</span>
|
|
291
342
|
</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"] }] });
|
|
343
|
+
`, 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
344
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: PivotGridComponent, decorators: [{
|
|
294
345
|
type: Component,
|
|
295
346
|
args: [{
|
|
@@ -297,6 +348,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
297
348
|
providers: [
|
|
298
349
|
PivotGridDataService,
|
|
299
350
|
LocalizationService,
|
|
351
|
+
PivotLocalizationService,
|
|
300
352
|
{
|
|
301
353
|
provide: L10N_PREFIX,
|
|
302
354
|
useValue: 'kendo.pivotgrid'
|
|
@@ -392,10 +444,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
392
444
|
configuratorEmptyColumnsText="Select some fields to begin setup"
|
|
393
445
|
|
|
394
446
|
i18n-configuratorEmptyMeasuresText="kendo.pivotgrid.configuratorEmptyMeasuresText|The text content of the PivotGrid configurator empty measures container"
|
|
395
|
-
configuratorEmptyMeasuresText="Select some fields to begin setup"
|
|
447
|
+
configuratorEmptyMeasuresText="Select some fields to begin setup"
|
|
448
|
+
|
|
449
|
+
i18n-chipMenuIconTitle="kendo.grid.chipMenuIconTitle|The title of the field menu icon"
|
|
450
|
+
chipMenuIconTitle="{{ '{fieldName} Field Menu' }}"></ng-container>
|
|
396
451
|
|
|
397
452
|
<div #table class="k-pivotgrid">
|
|
398
|
-
<span class="k-pivotgrid-empty-cell"
|
|
453
|
+
<span class="k-pivotgrid-empty-cell">
|
|
454
|
+
<span class="k-sr-only">{{messageFor('emptyCellLabel')}}</span>
|
|
455
|
+
</span>
|
|
399
456
|
<kendo-pivotgrid-table
|
|
400
457
|
#colHeadersTable
|
|
401
458
|
[colWidth]="columnHeadersWidth"
|
|
@@ -430,7 +487,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
430
487
|
<div *ngIf="configurator"
|
|
431
488
|
class="k-pivotgrid-configurator-button"
|
|
432
489
|
(click)="showConfigurator = !showConfigurator">
|
|
433
|
-
<span>{{
|
|
490
|
+
<span>{{messageFor('configuratorButtonText')}}<span class="k-icon k-i-gear k-color-inherit"></span>
|
|
434
491
|
</span>
|
|
435
492
|
</div>
|
|
436
493
|
`,
|
|
@@ -444,7 +501,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
444
501
|
}
|
|
445
502
|
`]
|
|
446
503
|
}]
|
|
447
|
-
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.NgZone }, { type: i1.PivotGridDataService }, { type: i2.LocalizationService }, { type: i3.ScrollbarWidthService }]; }, propDecorators: { hostClass: [{
|
|
504
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.NgZone }, { type: i1.PivotGridDataService }, { type: i2.LocalizationService }, { type: i0.Renderer2 }, { type: i3.ScrollbarWidthService }]; }, propDecorators: { hostClass: [{
|
|
448
505
|
type: HostBinding,
|
|
449
506
|
args: ['class.k-d-flex']
|
|
450
507
|
}, {
|
|
@@ -486,4 +543,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
486
543
|
type: Input
|
|
487
544
|
}], columnHeadersWidth: [{
|
|
488
545
|
type: Input
|
|
546
|
+
}], navigable: [{
|
|
547
|
+
type: Input
|
|
489
548
|
}] } });
|