@progress/kendo-angular-pivotgrid 15.1.1-develop.5 → 15.2.0-develop.2

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.
@@ -0,0 +1,40 @@
1
+ /**-----------------------------------------------------------------------------------------
2
+ * Copyright © 2024 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, TemplateRef } from '@angular/core';
6
+ import * as i0 from "@angular/core";
7
+ /**
8
+ * Represents the value cell template of the PivotGrid.
9
+ * Helps to customize the content of the value cells. To define the value cell template, nest an `<ng-template>` tag with the
10
+ * `kendoPivotGridValueCellTemplate` directive inside a `<kendo-pivot-grid>` tag [see example](slug:templates_pivotgrid#toc-value-cell-template).
11
+ *
12
+ * The template context is set to the current cell item and the following additional fields are passed:
13
+ * - `cellItem`&mdash;The current cell item. Represents the default context that will be assigned to any template variable which utilizes the `let-x` syntax&mdash;for example, `let-cellItem`.
14
+ * - `columnIndex`&mdash;The current column index. Use it as an alias for a template variable by utilizing the `let-columnIndex="columnIndex"` syntax.
15
+ * - `rowIndex`&mdash;The current data row index. Use it as an alias for a template variable by utilizing the `let-rowIndex="rowIndex"` syntax.
16
+ * - `tableType`&mdash;The table type. Use it as an alias for a template variable by utilizing the `let-tableType="tableType"` syntax.
17
+ * - `value`&mdash;The default cell value. Use it as an alias for a template variable by utilizing the `let-value="value"` syntax.
18
+ *
19
+ * @example
20
+ * ```html
21
+ * <kendo-pivot-grid [data]="data" ...>
22
+ * <ng-template kendoPivotGridValueCellTemplate let-cellItem let-rowIndex="rowIndex" let-column="column">
23
+ * Row: {{rowIndex}}
24
+ * </ng-template>
25
+ * </kendo-pivot-grid>
26
+ * ```
27
+ */
28
+ export class ValueCellTemplateDirective {
29
+ constructor(templateRef) {
30
+ this.templateRef = templateRef;
31
+ }
32
+ }
33
+ ValueCellTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ValueCellTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
34
+ ValueCellTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.12", type: ValueCellTemplateDirective, selector: "[kendoPivotGridValueCellTemplate]", ngImport: i0 });
35
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ValueCellTemplateDirective, decorators: [{
36
+ type: Directive,
37
+ args: [{
38
+ selector: '[kendoPivotGridValueCellTemplate]'
39
+ }]
40
+ }], ctorParameters: function () { return [{ type: i0.TemplateRef }]; } });
@@ -3,7 +3,7 @@
3
3
  * Licensed under commercial license. See LICENSE.md in the project root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
5
  import * as i0 from '@angular/core';
6
- import { EventEmitter, Injectable, Output, Component, HostBinding, Input, Directive, ContentChildren, isDevMode, Optional, ContentChild, forwardRef, ViewChild, ElementRef, NgModule } from '@angular/core';
6
+ import { EventEmitter, Injectable, Output, Directive, Component, HostBinding, Input, ContentChildren, isDevMode, Optional, ContentChild, forwardRef, ViewChild, ElementRef, NgModule } from '@angular/core';
7
7
  import { validatePackage } from '@progress/kendo-licensing';
8
8
  import * as i1$1 from '@progress/kendo-angular-common';
9
9
  import { isDocumentAvailable, PreventableEvent, Keys, isChanged, hasObservers, anyChanged, EventsModule, DraggableModule } from '@progress/kendo-angular-common';
@@ -18,13 +18,13 @@ import * as i2 from '@progress/kendo-angular-icons';
18
18
  import { IconsModule } from '@progress/kendo-angular-icons';
19
19
  import * as i7 from '@angular/common';
20
20
  import { CommonModule } from '@angular/common';
21
+ import * as i5 from '@progress/kendo-angular-buttons';
22
+ import { ButtonsModule } from '@progress/kendo-angular-buttons';
21
23
  import * as i5$1 from '@progress/kendo-angular-indicators';
22
24
  import { IndicatorsModule } from '@progress/kendo-angular-indicators';
23
25
  import * as i4 from '@progress/kendo-angular-treeview';
24
26
  import { TreeViewComponent, TreeViewModule } from '@progress/kendo-angular-treeview';
25
27
  import * as i1$2 from '@progress/kendo-angular-popup';
26
- import * as i5 from '@progress/kendo-angular-buttons';
27
- import { ButtonsModule } from '@progress/kendo-angular-buttons';
28
28
  import { trigger, state, style, transition, animate } from '@angular/animations';
29
29
  import * as i3 from '@angular/forms';
30
30
  import { NG_VALUE_ACCESSOR, ReactiveFormsModule, FormsModule } from '@angular/forms';
@@ -41,8 +41,8 @@ const packageMetadata = {
41
41
  name: '@progress/kendo-angular-pivotgrid',
42
42
  productName: 'Kendo UI for Angular',
43
43
  productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
44
- publishDate: 1709648187,
45
- version: '15.1.1-develop.5',
44
+ publishDate: 1709727765,
45
+ version: '15.2.0-develop.2',
46
46
  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'
47
47
  };
48
48
 
@@ -321,6 +321,149 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
321
321
  type: Injectable
322
322
  }], ctorParameters: function () { return [{ type: i1.LocalizationService }]; } });
323
323
 
324
+ /**
325
+ * Represents the cell template of the PivotGrid.
326
+ * Helps to customize the content of the cells. To define the cell template, nest an `<ng-template>` tag with the
327
+ * `kendoPivotGridCellTemplate` directive inside a `<kendo-pivot-grid>` tag [see example](slug:templates_pivotgrid#toc-cell-template).
328
+ *
329
+ * The template context is set to the current cell item and the following additional fields are passed:
330
+ * - `cellItem`&mdash;The current cell item. Represents the default context that will be assigned to any template variable which utilizes the `let-x` syntax&mdash;for example, `let-cellItem`.
331
+ * - `columnIndex`&mdash;The current column index. Use it as an alias for a template variable by utilizing the `let-columnIndex="columnIndex"` syntax.
332
+ * - `rowIndex`&mdash;The current data row index. Use it as an alias for a template variable by utilizing the `let-rowIndex="rowIndex"` syntax.
333
+ * - `expanded`&mdash;The expanded state of the cell. Use it as an alias for a template variable by utilizing the `let-expanded="expanded"` syntax.
334
+ * - `tableType`&mdash;The table type. Use it as an alias for a template variable by utilizing the `let-tableType="tableType"` syntax.
335
+ * - `text`&mdash;The default cell text. Use it as an alias for a template variable by utilizing the `let-text="text"` syntax.
336
+ *
337
+ * @example
338
+ * ```html
339
+ * <kendo-pivot-grid [data]="data" ...>
340
+ * <ng-template kendoPivotGridCellTemplate let-cellItem let-rowIndex="rowIndex" let-column="column">
341
+ * Row: {{rowIndex}}
342
+ * </ng-template>
343
+ * </kendo-pivot-grid>
344
+ * ```
345
+ */
346
+ class CellTemplateDirective {
347
+ constructor(templateRef) {
348
+ this.templateRef = templateRef;
349
+ }
350
+ }
351
+ CellTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: CellTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
352
+ CellTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.12", type: CellTemplateDirective, selector: "[kendoPivotGridCellTemplate]", ngImport: i0 });
353
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: CellTemplateDirective, decorators: [{
354
+ type: Directive,
355
+ args: [{
356
+ selector: '[kendoPivotGridCellTemplate]'
357
+ }]
358
+ }], ctorParameters: function () { return [{ type: i0.TemplateRef }]; } });
359
+
360
+ /**
361
+ * Represents the value cell template of the PivotGrid.
362
+ * Helps to customize the content of the value cells. To define the value cell template, nest an `<ng-template>` tag with the
363
+ * `kendoPivotGridValueCellTemplate` directive inside a `<kendo-pivot-grid>` tag [see example](slug:templates_pivotgrid#toc-value-cell-template).
364
+ *
365
+ * The template context is set to the current cell item and the following additional fields are passed:
366
+ * - `cellItem`&mdash;The current cell item. Represents the default context that will be assigned to any template variable which utilizes the `let-x` syntax&mdash;for example, `let-cellItem`.
367
+ * - `columnIndex`&mdash;The current column index. Use it as an alias for a template variable by utilizing the `let-columnIndex="columnIndex"` syntax.
368
+ * - `rowIndex`&mdash;The current data row index. Use it as an alias for a template variable by utilizing the `let-rowIndex="rowIndex"` syntax.
369
+ * - `tableType`&mdash;The table type. Use it as an alias for a template variable by utilizing the `let-tableType="tableType"` syntax.
370
+ * - `value`&mdash;The default cell value. Use it as an alias for a template variable by utilizing the `let-value="value"` syntax.
371
+ *
372
+ * @example
373
+ * ```html
374
+ * <kendo-pivot-grid [data]="data" ...>
375
+ * <ng-template kendoPivotGridValueCellTemplate let-cellItem let-rowIndex="rowIndex" let-column="column">
376
+ * Row: {{rowIndex}}
377
+ * </ng-template>
378
+ * </kendo-pivot-grid>
379
+ * ```
380
+ */
381
+ class ValueCellTemplateDirective {
382
+ constructor(templateRef) {
383
+ this.templateRef = templateRef;
384
+ }
385
+ }
386
+ ValueCellTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ValueCellTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
387
+ ValueCellTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.12", type: ValueCellTemplateDirective, selector: "[kendoPivotGridValueCellTemplate]", ngImport: i0 });
388
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ValueCellTemplateDirective, decorators: [{
389
+ type: Directive,
390
+ args: [{
391
+ selector: '[kendoPivotGridValueCellTemplate]'
392
+ }]
393
+ }], ctorParameters: function () { return [{ type: i0.TemplateRef }]; } });
394
+
395
+ /**
396
+ * Represents the row header cell template of the PivotGrid.
397
+ * Helps to customize the content of the row header cells. To define the row header cell template, nest an `<ng-template>` tag with the
398
+ * `kendoPivotGridRowHeaderCellTemplate` directive inside a `<kendo-pivot-grid>` tag [see example](slug:templates_pivotgrid#toc-row-header-cell-template).
399
+ *
400
+ * The template context is set to the current cell item and the following additional fields are passed:
401
+ * - `cellItem`&mdash;The current cell item. Represents the default context that will be assigned to any template variable which utilizes the `let-x` syntax&mdash;for example, `let-cellItem`.
402
+ * - `columnIndex`&mdash;The current column index. Use it as an alias for a template variable by utilizing the `let-columnIndex="columnIndex"` syntax.
403
+ * - `rowIndex`&mdash;The current data row index. Use it as an alias for a template variable by utilizing the `let-rowIndex="rowIndex"` syntax.
404
+ * - `expanded`&mdash;The expanded state of the cell. Use it as an alias for a template variable by utilizing the `let-expanded="expanded"` syntax.
405
+ * - `tableType`&mdash;The table type. Use it as an alias for a template variable by utilizing the `let-tableType="tableType"` syntax.
406
+ * - `text`&mdash;The default cell text. Use it as an alias for a template variable by utilizing the `let-text="text"` syntax.
407
+ *
408
+ * @example
409
+ * ```html
410
+ * <kendo-pivot-grid [data]="data" ...>
411
+ * <ng-template kendoPivotGridRowHeaderCellTemplate let-cellItem let-rowIndex="rowIndex" let-column="column">
412
+ * Row: {{rowIndex}}
413
+ * </ng-template>
414
+ * </kendo-pivot-grid>
415
+ * ```
416
+ */
417
+ class RowHeaderCellTemplateDirective {
418
+ constructor(templateRef) {
419
+ this.templateRef = templateRef;
420
+ }
421
+ }
422
+ RowHeaderCellTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: RowHeaderCellTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
423
+ RowHeaderCellTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.12", type: RowHeaderCellTemplateDirective, selector: "[kendoPivotGridRowHeaderCellTemplate]", ngImport: i0 });
424
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: RowHeaderCellTemplateDirective, decorators: [{
425
+ type: Directive,
426
+ args: [{
427
+ selector: '[kendoPivotGridRowHeaderCellTemplate]'
428
+ }]
429
+ }], ctorParameters: function () { return [{ type: i0.TemplateRef }]; } });
430
+
431
+ /**
432
+ * Represents the column header cell template of the PivotGrid.
433
+ * Helps to customize the content of the column header cells. To define the column header cell template, nest an `<ng-template>` tag with the
434
+ * `kendoPivotGridColumnHeaderCellTemplate` directive inside a `<kendo-pivot-grid>` tag [see example](slug:templates_pivotgrid#toc-column-header-cell-template).
435
+ *
436
+ * The template context is set to the current cell item and the following additional fields are passed:
437
+ * - `cellItem`&mdash;The current cell item. Represents the default context that will be assigned to any template variable which utilizes the `let-x` syntax&mdash;for example, `let-cellItem`.
438
+ * - `columnIndex`&mdash;The current column index. Use it as an alias for a template variable by utilizing the `let-columnIndex="columnIndex"` syntax.
439
+ * - `rowIndex`&mdash;The current data row index. Use it as an alias for a template variable by utilizing the `let-rowIndex="rowIndex"` syntax.
440
+ * - `expanded`&mdash;The expanded state of the cell. Use it as an alias for a template variable by utilizing the `let-expanded="expanded"` syntax.
441
+ * - `tableType`&mdash;The table type. Use it as an alias for a template variable by utilizing the `let-tableType="tableType"` syntax.
442
+ * - `text`&mdash;The default cell text. Use it as an alias for a template variable by utilizing the `let-text="text"` syntax.
443
+ *
444
+ * @example
445
+ * ```html
446
+ * <kendo-pivot-grid [data]="data" ...>
447
+ * <ng-template kendoPivotGridColumnHeaderCellTemplate let-cellItem let-rowIndex="rowIndex" let-column="column">
448
+ * Row: {{rowIndex}}
449
+ * </ng-template>
450
+ * </kendo-pivot-grid>
451
+ * ```
452
+ */
453
+ class ColumnHeaderCellTemplateDirective {
454
+ constructor(templateRef) {
455
+ this.templateRef = templateRef;
456
+ }
457
+ }
458
+ ColumnHeaderCellTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ColumnHeaderCellTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
459
+ ColumnHeaderCellTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.12", type: ColumnHeaderCellTemplateDirective, selector: "[kendoPivotGridColumnHeaderCellTemplate]", ngImport: i0 });
460
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ColumnHeaderCellTemplateDirective, decorators: [{
461
+ type: Directive,
462
+ args: [{
463
+ selector: '[kendoPivotGridColumnHeaderCellTemplate]'
464
+ }]
465
+ }], ctorParameters: function () { return [{ type: i0.TemplateRef }]; } });
466
+
324
467
  /**
325
468
  * @hidden
326
469
  */
@@ -340,9 +483,14 @@ class PivotGridCellDirective {
340
483
  });
341
484
  };
342
485
  }
486
+ get isNotProvidedCellTemplatePerType() {
487
+ return (this.tableType === 'values' && !this.valueCellTemplate)
488
+ || (this.tableType === 'rowHeader' && !this.rowHeaderCellTemplate)
489
+ || (this.tableType === 'columnHeader' && !this.columnHeaderCellTemplate);
490
+ }
343
491
  get expanded() {
344
492
  var _a;
345
- return ((_a = this.kendoPivotGridCell) === null || _a === void 0 ? void 0 : _a.hasChildren) && this.kendoPivotGridCell.children.length;
493
+ return (((_a = this.kendoPivotGridCell) === null || _a === void 0 ? void 0 : _a.hasChildren) && this.kendoPivotGridCell.children.length > 0) || false;
346
494
  }
347
495
  ngOnInit() {
348
496
  var _a, _b, _c;
@@ -365,31 +513,133 @@ class PivotGridCellDirective {
365
513
  }
366
514
  }
367
515
  PivotGridCellDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: PivotGridCellDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: PivotGridDataService }], target: i0.ɵɵFactoryTarget.Component });
368
- PivotGridCellDirective.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: PivotGridCellDirective, selector: "[kendoPivotGridCell]", inputs: { kendoPivotGridCell: "kendoPivotGridCell", tableType: "tableType", rowIndex: "rowIndex", colIndex: "colIndex" }, host: { properties: { "class.k-pivotgrid-cell": "this.cellClass" } }, ngImport: i0, template: `
369
- <kendo-icon-wrapper
370
- *ngIf="kendoPivotGridCell.hasChildren && !kendoPivotGridCell.total"
371
- aria-hidden="true"
372
- [kendoEventsOutsideAngular]="{ click: handleClick }"
373
- [name]="expanded ? 'chevron-up' : 'chevron-down'"
374
- [svgIcon]="expanded ? chevronUpSVGIcon : chevronDownSVGIcon"
375
- innerCssClass="k-pivotgrid-toggle">
376
- </kendo-icon-wrapper>
377
- {{ kendoPivotGridCell.data ? kendoPivotGridCell.data.fmtValue : kendoPivotGridCell.caption }}`, isInline: true, components: [{ type: i2.IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }], directives: [{ type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1$1.EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }] });
516
+ PivotGridCellDirective.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: PivotGridCellDirective, selector: "[kendoPivotGridCell]", inputs: { kendoPivotGridCell: "kendoPivotGridCell", tableType: "tableType", rowIndex: "rowIndex", colIndex: "colIndex", customCellTemplate: "customCellTemplate", valueCellTemplate: "valueCellTemplate", rowHeaderCellTemplate: "rowHeaderCellTemplate", columnHeaderCellTemplate: "columnHeaderCellTemplate" }, host: { properties: { "class.k-pivotgrid-cell": "this.cellClass" } }, ngImport: i0, template: `
517
+ <kendo-icon-wrapper
518
+ *ngIf="kendoPivotGridCell.hasChildren && !kendoPivotGridCell.total"
519
+ aria-hidden="true"
520
+ [kendoEventsOutsideAngular]="{ click: handleClick }"
521
+ [name]="expanded ? 'chevron-up' : 'chevron-down'"
522
+ [svgIcon]="expanded ? chevronUpSVGIcon : chevronDownSVGIcon"
523
+ innerCssClass="k-pivotgrid-toggle">
524
+ </kendo-icon-wrapper>
525
+ <!--value cell template-->
526
+ <ng-template *ngIf="tableType === 'values' && valueCellTemplate"
527
+ [templateContext]="{
528
+ templateRef: valueCellTemplate.templateRef,
529
+ $implicit: kendoPivotGridCell,
530
+ value: kendoPivotGridCell.data ? kendoPivotGridCell.data.fmtValue : kendoPivotGridCell.caption,
531
+ rowIndex: rowIndex,
532
+ columnIndex: colIndex,
533
+ tableType: tableType
534
+ }">
535
+ </ng-template>
536
+ <!--row header cell template-->
537
+ <ng-template *ngIf="tableType === 'rowHeader' && rowHeaderCellTemplate"
538
+ [templateContext]="{
539
+ templateRef: rowHeaderCellTemplate.templateRef,
540
+ $implicit: kendoPivotGridCell,
541
+ text: kendoPivotGridCell.data ? kendoPivotGridCell.data.fmtValue : kendoPivotGridCell.caption,
542
+ rowIndex: rowIndex,
543
+ columnIndex: colIndex,
544
+ tableType: tableType,
545
+ expanded: expanded
546
+ }">
547
+ </ng-template>
548
+ <!--column header cell template-->
549
+ <ng-template *ngIf="tableType === 'columnHeader' && columnHeaderCellTemplate"
550
+ [templateContext]="{
551
+ templateRef: columnHeaderCellTemplate.templateRef,
552
+ $implicit: kendoPivotGridCell,
553
+ text: kendoPivotGridCell.data ? kendoPivotGridCell.data.fmtValue : kendoPivotGridCell.caption,
554
+ rowIndex: rowIndex,
555
+ columnIndex: colIndex,
556
+ tableType: tableType,
557
+ expanded: expanded
558
+ }">
559
+ </ng-template>
560
+ <!--cell template-->
561
+ <ng-template *ngIf="customCellTemplate && isNotProvidedCellTemplatePerType"
562
+ [templateContext]="{
563
+ templateRef: customCellTemplate.templateRef,
564
+ $implicit: kendoPivotGridCell,
565
+ text: kendoPivotGridCell.data ? kendoPivotGridCell.data.fmtValue : kendoPivotGridCell.caption,
566
+ rowIndex: rowIndex,
567
+ columnIndex: colIndex,
568
+ tableType: tableType,
569
+ expanded: expanded
570
+ }">
571
+ </ng-template>
572
+ <!--default cell content-->
573
+ <span *ngIf="!customCellTemplate && isNotProvidedCellTemplatePerType">
574
+ {{ kendoPivotGridCell.data ? kendoPivotGridCell.data.fmtValue : kendoPivotGridCell.caption }}
575
+ </span>
576
+ `, isInline: true, components: [{ type: i2.IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }], directives: [{ type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1$1.EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }, { type: i5.TemplateContextDirective, selector: "[templateContext]", inputs: ["templateContext"] }] });
378
577
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: PivotGridCellDirective, decorators: [{
379
578
  type: Component,
380
579
  args: [{
381
580
  // eslint-disable-next-line @angular-eslint/component-selector
382
581
  selector: '[kendoPivotGridCell]',
383
582
  template: `
384
- <kendo-icon-wrapper
385
- *ngIf="kendoPivotGridCell.hasChildren && !kendoPivotGridCell.total"
386
- aria-hidden="true"
387
- [kendoEventsOutsideAngular]="{ click: handleClick }"
388
- [name]="expanded ? 'chevron-up' : 'chevron-down'"
389
- [svgIcon]="expanded ? chevronUpSVGIcon : chevronDownSVGIcon"
390
- innerCssClass="k-pivotgrid-toggle">
391
- </kendo-icon-wrapper>
392
- {{ kendoPivotGridCell.data ? kendoPivotGridCell.data.fmtValue : kendoPivotGridCell.caption }}`
583
+ <kendo-icon-wrapper
584
+ *ngIf="kendoPivotGridCell.hasChildren && !kendoPivotGridCell.total"
585
+ aria-hidden="true"
586
+ [kendoEventsOutsideAngular]="{ click: handleClick }"
587
+ [name]="expanded ? 'chevron-up' : 'chevron-down'"
588
+ [svgIcon]="expanded ? chevronUpSVGIcon : chevronDownSVGIcon"
589
+ innerCssClass="k-pivotgrid-toggle">
590
+ </kendo-icon-wrapper>
591
+ <!--value cell template-->
592
+ <ng-template *ngIf="tableType === 'values' && valueCellTemplate"
593
+ [templateContext]="{
594
+ templateRef: valueCellTemplate.templateRef,
595
+ $implicit: kendoPivotGridCell,
596
+ value: kendoPivotGridCell.data ? kendoPivotGridCell.data.fmtValue : kendoPivotGridCell.caption,
597
+ rowIndex: rowIndex,
598
+ columnIndex: colIndex,
599
+ tableType: tableType
600
+ }">
601
+ </ng-template>
602
+ <!--row header cell template-->
603
+ <ng-template *ngIf="tableType === 'rowHeader' && rowHeaderCellTemplate"
604
+ [templateContext]="{
605
+ templateRef: rowHeaderCellTemplate.templateRef,
606
+ $implicit: kendoPivotGridCell,
607
+ text: kendoPivotGridCell.data ? kendoPivotGridCell.data.fmtValue : kendoPivotGridCell.caption,
608
+ rowIndex: rowIndex,
609
+ columnIndex: colIndex,
610
+ tableType: tableType,
611
+ expanded: expanded
612
+ }">
613
+ </ng-template>
614
+ <!--column header cell template-->
615
+ <ng-template *ngIf="tableType === 'columnHeader' && columnHeaderCellTemplate"
616
+ [templateContext]="{
617
+ templateRef: columnHeaderCellTemplate.templateRef,
618
+ $implicit: kendoPivotGridCell,
619
+ text: kendoPivotGridCell.data ? kendoPivotGridCell.data.fmtValue : kendoPivotGridCell.caption,
620
+ rowIndex: rowIndex,
621
+ columnIndex: colIndex,
622
+ tableType: tableType,
623
+ expanded: expanded
624
+ }">
625
+ </ng-template>
626
+ <!--cell template-->
627
+ <ng-template *ngIf="customCellTemplate && isNotProvidedCellTemplatePerType"
628
+ [templateContext]="{
629
+ templateRef: customCellTemplate.templateRef,
630
+ $implicit: kendoPivotGridCell,
631
+ text: kendoPivotGridCell.data ? kendoPivotGridCell.data.fmtValue : kendoPivotGridCell.caption,
632
+ rowIndex: rowIndex,
633
+ columnIndex: colIndex,
634
+ tableType: tableType,
635
+ expanded: expanded
636
+ }">
637
+ </ng-template>
638
+ <!--default cell content-->
639
+ <span *ngIf="!customCellTemplate && isNotProvidedCellTemplatePerType">
640
+ {{ kendoPivotGridCell.data ? kendoPivotGridCell.data.fmtValue : kendoPivotGridCell.caption }}
641
+ </span>
642
+ `
393
643
  }]
394
644
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: PivotGridDataService }]; }, propDecorators: { cellClass: [{
395
645
  type: HostBinding,
@@ -402,6 +652,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
402
652
  type: Input
403
653
  }], colIndex: [{
404
654
  type: Input
655
+ }], customCellTemplate: [{
656
+ type: Input
657
+ }], valueCellTemplate: [{
658
+ type: Input
659
+ }], rowHeaderCellTemplate: [{
660
+ type: Input
661
+ }], columnHeaderCellTemplate: [{
662
+ type: Input
405
663
  }] } });
406
664
 
407
665
  /**
@@ -426,7 +684,7 @@ class PivotGridTableComponent {
426
684
  }
427
685
  }
428
686
  PivotGridTableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: PivotGridTableComponent, deps: [{ token: PivotGridDataService }], target: i0.ɵɵFactoryTarget.Component });
429
- PivotGridTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: PivotGridTableComponent, selector: "kendo-pivotgrid-table", inputs: { tableType: "tableType", colWidth: "colWidth" }, ngImport: i0, template: `
687
+ PivotGridTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: PivotGridTableComponent, selector: "kendo-pivotgrid-table", inputs: { tableType: "tableType", colWidth: "colWidth", customCellTemplate: "customCellTemplate", valueCellTemplate: "valueCellTemplate", rowHeaderCellTemplate: "rowHeaderCellTemplate", columnHeaderCellTemplate: "columnHeaderCellTemplate" }, ngImport: i0, template: `
430
688
  <table
431
689
  class="k-pivotgrid-table"
432
690
  role="presentation">
@@ -443,6 +701,9 @@ PivotGridTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0"
443
701
  <th
444
702
  *ngIf="cell && tableType !== 'values'"
445
703
  [kendoPivotGridCell]="cell"
704
+ [customCellTemplate]="customCellTemplate"
705
+ [rowHeaderCellTemplate]="rowHeaderCellTemplate"
706
+ [columnHeaderCellTemplate]="columnHeaderCellTemplate"
446
707
  [tableType]="tableType"
447
708
  [colIndex]="colIndex"
448
709
  [rowIndex]="rowIndex"
@@ -451,6 +712,8 @@ PivotGridTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0"
451
712
  [attr.id]="pivotGridId + (tableType === 'columnHeader' ? 'ch-' : 'rh-') + (rowIndex + 1) + '-' + (colIndex + 1)"></th>
452
713
  <td
453
714
  *ngIf="cell && tableType === 'values'"
715
+ [customCellTemplate]="customCellTemplate"
716
+ [valueCellTemplate]="valueCellTemplate"
454
717
  [kendoPivotGridCell]="cell"
455
718
  tableType="values"
456
719
  [colIndex]="colIndex"
@@ -461,7 +724,7 @@ PivotGridTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0"
461
724
  </tr>
462
725
  </tbody>
463
726
  </table>
464
- `, isInline: true, components: [{ type: PivotGridCellDirective, selector: "[kendoPivotGridCell]", inputs: ["kendoPivotGridCell", "tableType", "rowIndex", "colIndex"] }], directives: [{ type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
727
+ `, isInline: true, components: [{ type: PivotGridCellDirective, selector: "[kendoPivotGridCell]", inputs: ["kendoPivotGridCell", "tableType", "rowIndex", "colIndex", "customCellTemplate", "valueCellTemplate", "rowHeaderCellTemplate", "columnHeaderCellTemplate"] }], directives: [{ type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
465
728
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: PivotGridTableComponent, decorators: [{
466
729
  type: Component,
467
730
  args: [{
@@ -483,6 +746,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
483
746
  <th
484
747
  *ngIf="cell && tableType !== 'values'"
485
748
  [kendoPivotGridCell]="cell"
749
+ [customCellTemplate]="customCellTemplate"
750
+ [rowHeaderCellTemplate]="rowHeaderCellTemplate"
751
+ [columnHeaderCellTemplate]="columnHeaderCellTemplate"
486
752
  [tableType]="tableType"
487
753
  [colIndex]="colIndex"
488
754
  [rowIndex]="rowIndex"
@@ -491,6 +757,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
491
757
  [attr.id]="pivotGridId + (tableType === 'columnHeader' ? 'ch-' : 'rh-') + (rowIndex + 1) + '-' + (colIndex + 1)"></th>
492
758
  <td
493
759
  *ngIf="cell && tableType === 'values'"
760
+ [customCellTemplate]="customCellTemplate"
761
+ [valueCellTemplate]="valueCellTemplate"
494
762
  [kendoPivotGridCell]="cell"
495
763
  tableType="values"
496
764
  [colIndex]="colIndex"
@@ -507,6 +775,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
507
775
  type: Input
508
776
  }], colWidth: [{
509
777
  type: Input
778
+ }], customCellTemplate: [{
779
+ type: Input
780
+ }], valueCellTemplate: [{
781
+ type: Input
782
+ }], rowHeaderCellTemplate: [{
783
+ type: Input
784
+ }], columnHeaderCellTemplate: [{
785
+ type: Input
510
786
  }] } });
511
787
 
512
788
  /**
@@ -3323,7 +3599,7 @@ PivotGridComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", ver
3323
3599
  provide: L10N_PREFIX,
3324
3600
  useValue: 'kendo.pivotgrid'
3325
3601
  }
3326
- ], 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 }, { propertyName: "configuratorWrapper", first: true, predicate: ["configurator"], descendants: true, read: ElementRef }], usesOnChanges: true, ngImport: i0, template: `
3602
+ ], queries: [{ propertyName: "customCellTemplate", first: true, predicate: CellTemplateDirective, descendants: true }, { propertyName: "valueCellTemplate", first: true, predicate: ValueCellTemplateDirective, descendants: true }, { propertyName: "rowHeaderCellTemplate", first: true, predicate: RowHeaderCellTemplateDirective, descendants: true }, { propertyName: "columnHeaderCellTemplate", first: true, predicate: ColumnHeaderCellTemplateDirective, descendants: true }], 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 }, { propertyName: "configuratorWrapper", first: true, predicate: ["configurator"], descendants: true, read: ElementRef }], usesOnChanges: true, ngImport: i0, template: `
3327
3603
  <ng-container kendoPivotGridLocalizedMessages
3328
3604
  i18n-loading="kendo.pivotgrid.loading|The loading text"
3329
3605
  loading="Loading"
@@ -3437,14 +3713,20 @@ PivotGridComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", ver
3437
3713
  <kendo-pivotgrid-table
3438
3714
  #colHeadersTable
3439
3715
  [colWidth]="columnHeadersWidth"
3716
+ [customCellTemplate]="customCellTemplate"
3717
+ [columnHeaderCellTemplate]="columnHeaderCellTemplate"
3440
3718
  class="k-pivotgrid-column-headers"
3441
3719
  tableType="columnHeader"></kendo-pivotgrid-table>
3442
3720
  <kendo-pivotgrid-table
3443
3721
  #rowHeadersTable
3722
+ [customCellTemplate]="customCellTemplate"
3723
+ [rowHeaderCellTemplate]="rowHeaderCellTemplate"
3444
3724
  class="k-pivotgrid-row-headers"
3445
3725
  tableType="rowHeader"></kendo-pivotgrid-table>
3446
3726
  <kendo-pivotgrid-table
3447
3727
  #valuesTable
3728
+ [customCellTemplate]="customCellTemplate"
3729
+ [valueCellTemplate]="valueCellTemplate"
3448
3730
  [colWidth]="columnHeadersWidth"
3449
3731
  class="k-pivotgrid-values"
3450
3732
  tableType="values"></kendo-pivotgrid-table>
@@ -3474,7 +3756,7 @@ PivotGridComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", ver
3474
3756
  <span>{{messageFor('configuratorButtonText')}}<kendo-icon-wrapper name="gear" innerCssClass="k-color-inherit" [svgIcon]="gearSVGIcon"></kendo-icon-wrapper>
3475
3757
  </span>
3476
3758
  </div>
3477
- `, isInline: true, components: [{ type: PivotGridTableComponent, selector: "kendo-pivotgrid-table", inputs: ["tableType", "colWidth"] }, { type: i5$1.LoaderComponent, selector: "kendo-loader", inputs: ["type", "themeColor", "size"] }, { type: PivotGridConfiguratorComponent, selector: "kendo-pivotgrid-configurator", inputs: ["orientation", "sort", "filter", "navigation"], outputs: ["close"] }, { type: i2.IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }], directives: [{ type: LocalizedMessagesDirective, selector: "[kendoPivotGridLocalizedMessages]" }, { type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
3759
+ `, isInline: true, components: [{ type: PivotGridTableComponent, selector: "kendo-pivotgrid-table", inputs: ["tableType", "colWidth", "customCellTemplate", "valueCellTemplate", "rowHeaderCellTemplate", "columnHeaderCellTemplate"] }, { type: i5$1.LoaderComponent, selector: "kendo-loader", inputs: ["type", "themeColor", "size"] }, { type: PivotGridConfiguratorComponent, selector: "kendo-pivotgrid-configurator", inputs: ["orientation", "sort", "filter", "navigation"], outputs: ["close"] }, { type: i2.IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }], directives: [{ type: LocalizedMessagesDirective, selector: "[kendoPivotGridLocalizedMessages]" }, { type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
3478
3760
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: PivotGridComponent, decorators: [{
3479
3761
  type: Component,
3480
3762
  args: [{
@@ -3602,14 +3884,20 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
3602
3884
  <kendo-pivotgrid-table
3603
3885
  #colHeadersTable
3604
3886
  [colWidth]="columnHeadersWidth"
3887
+ [customCellTemplate]="customCellTemplate"
3888
+ [columnHeaderCellTemplate]="columnHeaderCellTemplate"
3605
3889
  class="k-pivotgrid-column-headers"
3606
3890
  tableType="columnHeader"></kendo-pivotgrid-table>
3607
3891
  <kendo-pivotgrid-table
3608
3892
  #rowHeadersTable
3893
+ [customCellTemplate]="customCellTemplate"
3894
+ [rowHeaderCellTemplate]="rowHeaderCellTemplate"
3609
3895
  class="k-pivotgrid-row-headers"
3610
3896
  tableType="rowHeader"></kendo-pivotgrid-table>
3611
3897
  <kendo-pivotgrid-table
3612
3898
  #valuesTable
3899
+ [customCellTemplate]="customCellTemplate"
3900
+ [valueCellTemplate]="valueCellTemplate"
3613
3901
  [colWidth]="columnHeadersWidth"
3614
3902
  class="k-pivotgrid-values"
3615
3903
  tableType="values"></kendo-pivotgrid-table>
@@ -3677,6 +3965,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
3677
3965
  }], configuratorWrapper: [{
3678
3966
  type: ViewChild,
3679
3967
  args: ['configurator', { read: ElementRef }]
3968
+ }], customCellTemplate: [{
3969
+ type: ContentChild,
3970
+ args: [CellTemplateDirective]
3971
+ }], valueCellTemplate: [{
3972
+ type: ContentChild,
3973
+ args: [ValueCellTemplateDirective]
3974
+ }], rowHeaderCellTemplate: [{
3975
+ type: ContentChild,
3976
+ args: [RowHeaderCellTemplateDirective]
3977
+ }], columnHeaderCellTemplate: [{
3978
+ type: ContentChild,
3979
+ args: [ColumnHeaderCellTemplateDirective]
3680
3980
  }], loaderSettings: [{
3681
3981
  type: Input
3682
3982
  }], configurator: [{
@@ -4256,7 +4556,11 @@ const DECLARATIONS = [
4256
4556
  DropTargetDirective,
4257
4557
  LocalizedMessagesDirective,
4258
4558
  CustomMessagesComponent,
4259
- ChipKeyboardNavigationDirective
4559
+ ChipKeyboardNavigationDirective,
4560
+ CellTemplateDirective,
4561
+ ValueCellTemplateDirective,
4562
+ RowHeaderCellTemplateDirective,
4563
+ ColumnHeaderCellTemplateDirective
4260
4564
  ];
4261
4565
  const EXPORTS = [
4262
4566
  PivotGridComponent,
@@ -4264,7 +4568,11 @@ const EXPORTS = [
4264
4568
  PivotGridCellDirective,
4265
4569
  PivotLocalBindingDirective,
4266
4570
  PivotOLAPBindingDirective,
4267
- CustomMessagesComponent
4571
+ CustomMessagesComponent,
4572
+ CellTemplateDirective,
4573
+ ValueCellTemplateDirective,
4574
+ RowHeaderCellTemplateDirective,
4575
+ ColumnHeaderCellTemplateDirective
4268
4576
  ];
4269
4577
  /**
4270
4578
  * Sample module
@@ -4282,7 +4590,11 @@ PivotGridModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version
4282
4590
  DropTargetDirective,
4283
4591
  LocalizedMessagesDirective,
4284
4592
  CustomMessagesComponent,
4285
- ChipKeyboardNavigationDirective], imports: [EventsModule,
4593
+ ChipKeyboardNavigationDirective,
4594
+ CellTemplateDirective,
4595
+ ValueCellTemplateDirective,
4596
+ RowHeaderCellTemplateDirective,
4597
+ ColumnHeaderCellTemplateDirective], imports: [EventsModule,
4286
4598
  IndicatorsModule,
4287
4599
  TreeViewModule,
4288
4600
  DraggableModule,
@@ -4293,7 +4605,11 @@ PivotGridModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version
4293
4605
  PivotGridCellDirective,
4294
4606
  PivotLocalBindingDirective,
4295
4607
  PivotOLAPBindingDirective,
4296
- CustomMessagesComponent] });
4608
+ CustomMessagesComponent,
4609
+ CellTemplateDirective,
4610
+ ValueCellTemplateDirective,
4611
+ RowHeaderCellTemplateDirective,
4612
+ ColumnHeaderCellTemplateDirective] });
4297
4613
  PivotGridModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: PivotGridModule, imports: [[...IMPORTED_MODULES]] });
4298
4614
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: PivotGridModule, decorators: [{
4299
4615
  type: NgModule,
@@ -4308,5 +4624,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
4308
4624
  * Generated bundle index. Do not edit.
4309
4625
  */
4310
4626
 
4311
- export { ConfigurationChangeEvent, CustomMessagesComponent, DraggableChipDirective, DropTargetDirective, ExpandChangeEvent, PivotGridCellDirective, PivotGridComponent, PivotGridConfiguratorComponent, PivotGridModule, PivotGridTableComponent, PivotLocalBindingDirective, PivotOLAPBindingDirective };
4627
+ export { CellTemplateDirective, ColumnHeaderCellTemplateDirective, ConfigurationChangeEvent, CustomMessagesComponent, DraggableChipDirective, DropTargetDirective, ExpandChangeEvent, PivotGridCellDirective, PivotGridComponent, PivotGridConfiguratorComponent, PivotGridModule, PivotGridTableComponent, PivotLocalBindingDirective, PivotOLAPBindingDirective, RowHeaderCellTemplateDirective, ValueCellTemplateDirective };
4312
4628