@ifsworld/granite-components 11.5.0 → 11.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (107) hide show
  1. package/esm2022/date-picker/lib/date-picker-base.mjs +5 -5
  2. package/esm2022/date-picker/lib/date-picker-trigger-for.directive.mjs +6 -6
  3. package/esm2022/date-picker/lib/date-picker.component.mjs +4 -4
  4. package/esm2022/date-picker/lib/date-picker.module.mjs +5 -5
  5. package/esm2022/date-picker/lib/date-range-picker.component.mjs +4 -4
  6. package/esm2022/index.mjs +5 -1
  7. package/esm2022/lib/arrange-grid/arrange-grid-item.component.mjs +5 -5
  8. package/esm2022/lib/arrange-grid/arrange-grid.component.mjs +5 -5
  9. package/esm2022/lib/arrange-grid/arrange-grid.module.mjs +5 -5
  10. package/esm2022/lib/badge/badge.component.mjs +5 -5
  11. package/esm2022/lib/badge/badge.module.mjs +5 -5
  12. package/esm2022/lib/button/button.component.mjs +9 -9
  13. package/esm2022/lib/button/button.module.mjs +5 -5
  14. package/esm2022/lib/card-list/card/card-avatar.component.mjs +4 -4
  15. package/esm2022/lib/card-list/card/card-content/card-actions.component.mjs +4 -4
  16. package/esm2022/lib/card-list/card/card-content/card-body.component.mjs +4 -4
  17. package/esm2022/lib/card-list/card/card-content/card-content.component.mjs +4 -4
  18. package/esm2022/lib/card-list/card/card-content/card-footer.component.mjs +4 -4
  19. package/esm2022/lib/card-list/card/card-content/card-header-subtitle.component.mjs +4 -4
  20. package/esm2022/lib/card-list/card/card-content/card-header-title.component.mjs +4 -4
  21. package/esm2022/lib/card-list/card/card-content/card-header.component.mjs +4 -4
  22. package/esm2022/lib/card-list/card/card.component.mjs +4 -4
  23. package/esm2022/lib/card-list/card-list.component.mjs +4 -4
  24. package/esm2022/lib/card-list/card-list.module.mjs +5 -5
  25. package/esm2022/lib/checkbox/checkbox-group.component.mjs +4 -4
  26. package/esm2022/lib/checkbox/checkbox.component.mjs +5 -5
  27. package/esm2022/lib/checkbox/checkbox.module.mjs +5 -5
  28. package/esm2022/lib/chips/chip-input.mjs +5 -5
  29. package/esm2022/lib/chips/chip-list.component.mjs +6 -6
  30. package/esm2022/lib/chips/chip.component.mjs +6 -6
  31. package/esm2022/lib/chips/chips.module.mjs +5 -5
  32. package/esm2022/lib/collapsible-group/collapsible-group-body.directive.mjs +17 -0
  33. package/esm2022/lib/collapsible-group/collapsible-group-header.directive.mjs +17 -0
  34. package/esm2022/lib/collapsible-group/collapsible-group.component.mjs +39 -0
  35. package/esm2022/lib/collapsible-group/collapsible-group.module.mjs +33 -0
  36. package/esm2022/lib/core/common-behaviors/disabled.mjs +4 -4
  37. package/esm2022/lib/core/core.module.mjs +5 -5
  38. package/esm2022/lib/core/devices/client-input-desktop.directive.mjs +4 -4
  39. package/esm2022/lib/core/devices/client-input-touch.directive.mjs +4 -4
  40. package/esm2022/lib/core/devices/client-output-desktop.directive.mjs +4 -4
  41. package/esm2022/lib/core/devices/client-output-touch.directive.mjs +4 -4
  42. package/esm2022/lib/core/hide-on-overflow.directive.mjs +5 -5
  43. package/esm2022/lib/core/pipes/pure-pipes.module.mjs +5 -5
  44. package/esm2022/lib/core/pipes/title.pipe.mjs +4 -4
  45. package/esm2022/lib/core/radio-checkbox-base.mjs +4 -4
  46. package/esm2022/lib/core/theme.library.mjs +1 -1
  47. package/esm2022/lib/grid/grid.component.mjs +9 -9
  48. package/esm2022/lib/grid/grid.module.mjs +5 -5
  49. package/esm2022/lib/icon/icon.component.mjs +6 -6
  50. package/esm2022/lib/icon/icon.module.mjs +5 -5
  51. package/esm2022/lib/input-field/input-field.component.mjs +5 -5
  52. package/esm2022/lib/input-field/input-field.module.mjs +5 -5
  53. package/esm2022/lib/label/label.component.mjs +4 -4
  54. package/esm2022/lib/label/label.module.mjs +5 -5
  55. package/esm2022/lib/menu/divider.directive.mjs +4 -4
  56. package/esm2022/lib/menu/menu-base.mjs +5 -5
  57. package/esm2022/lib/menu/menu-item.component.mjs +6 -6
  58. package/esm2022/lib/menu/menu-touch-close.component.mjs +4 -4
  59. package/esm2022/lib/menu/menu-touch-title.component.mjs +6 -6
  60. package/esm2022/lib/menu/menu-trigger-for.directive.mjs +11 -11
  61. package/esm2022/lib/menu/menu.component.mjs +4 -4
  62. package/esm2022/lib/menu/menu.module.mjs +5 -5
  63. package/esm2022/lib/menu/testing/menu.harness.mjs +1 -1
  64. package/esm2022/lib/menu/title.directive.mjs +4 -4
  65. package/esm2022/lib/progress-bar/progress-bar.component.mjs +4 -4
  66. package/esm2022/lib/progress-bar/progress-bar.module.mjs +5 -5
  67. package/esm2022/lib/radio-button/radio-button.component.mjs +5 -5
  68. package/esm2022/lib/radio-button/radio-button.module.mjs +5 -5
  69. package/esm2022/lib/radio-button/radio-group.component.mjs +4 -4
  70. package/esm2022/lib/toggle-switch/toggle-switch.component.mjs +5 -5
  71. package/esm2022/lib/toggle-switch/toggle-switch.module.mjs +5 -5
  72. package/esm2022/table/index.mjs +1 -2
  73. package/esm2022/table/lib/cell/cell-align/cell-align-classes.directive.mjs +12 -33
  74. package/esm2022/table/lib/cell/cell.mjs +4 -4
  75. package/esm2022/table/lib/cell/table-data-cell.component.mjs +5 -5
  76. package/esm2022/table/lib/cell/table-header-cell.component.mjs +5 -5
  77. package/esm2022/table/lib/column/table-column.directive.mjs +12 -4
  78. package/esm2022/table/lib/column-size/column-size.directive.mjs +34 -0
  79. package/esm2022/table/lib/table-constants.library.mjs +4 -6
  80. package/esm2022/table/lib/table.component.mjs +27 -20
  81. package/esm2022/table/lib/table.module.mjs +11 -7
  82. package/esm2022/tooltip/lib/tooltip-trigger-for.directive.mjs +5 -5
  83. package/esm2022/tooltip/lib/tooltip.component.mjs +4 -4
  84. package/esm2022/tooltip/lib/tooltip.module.mjs +5 -5
  85. package/fesm2022/ifsworld-granite-components-date-picker.mjs +19 -19
  86. package/fesm2022/ifsworld-granite-components-date-picker.mjs.map +1 -1
  87. package/fesm2022/ifsworld-granite-components-table.mjs +95 -68
  88. package/fesm2022/ifsworld-granite-components-table.mjs.map +1 -1
  89. package/fesm2022/ifsworld-granite-components-tooltip.mjs +11 -11
  90. package/fesm2022/ifsworld-granite-components-tooltip.mjs.map +1 -1
  91. package/fesm2022/ifsworld-granite-components.mjs +321 -232
  92. package/fesm2022/ifsworld-granite-components.mjs.map +1 -1
  93. package/index.d.ts +4 -0
  94. package/lib/collapsible-group/collapsible-group-body.directive.d.ts +7 -0
  95. package/lib/collapsible-group/collapsible-group-header.directive.d.ts +7 -0
  96. package/lib/collapsible-group/collapsible-group.component.d.ts +15 -0
  97. package/lib/collapsible-group/collapsible-group.module.d.ts +11 -0
  98. package/package.json +9 -9
  99. package/table/index.d.ts +0 -1
  100. package/table/lib/cell/cell-align/cell-align-classes.directive.d.ts +5 -6
  101. package/table/lib/column/table-column.directive.d.ts +7 -1
  102. package/table/lib/column-size/column-size.directive.d.ts +11 -0
  103. package/table/lib/table-constants.library.d.ts +2 -4
  104. package/table/lib/table.component.d.ts +9 -7
  105. package/table/lib/table.module.d.ts +6 -4
  106. package/esm2022/table/lib/table.types.mjs +0 -2
  107. package/table/lib/table.types.d.ts +0 -1
@@ -2,17 +2,21 @@ import * as i0 from '@angular/core';
2
2
  import { Directive, Input, ContentChild, Component, ViewEncapsulation, ChangeDetectionStrategy, HostBinding, ContentChildren, NgModule } from '@angular/core';
3
3
  import * as i1 from '@angular/common';
4
4
  import { CommonModule } from '@angular/common';
5
- import * as i2 from 'primeng/table';
6
5
  import { TableModule } from 'primeng/table';
7
6
  import * as i7 from '@ifsworld/granite-components';
8
7
  import { PurePipesModule } from '@ifsworld/granite-components';
9
- import * as i3 from 'primeng/api';
8
+ import * as i2 from '@angular/cdk/table';
9
+ import { CdkTableModule } from '@angular/cdk/table';
10
10
 
11
11
  class GraniteTableColumnDirective {
12
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GraniteTableColumnDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
13
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: GraniteTableColumnDirective, selector: "granite-table-column", inputs: { name: "name", title: "title", class: "class", headerClass: "headerClass" }, queries: [{ propertyName: "tableCellTemplateRef", first: true, predicate: ["graniteTableCellTemplate"], descendants: true }], ngImport: i0 }); }
12
+ constructor() {
13
+ this.textAlign = 'center';
14
+ this.size = 'small';
15
+ }
16
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: GraniteTableColumnDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
17
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.4", type: GraniteTableColumnDirective, selector: "granite-table-column", inputs: { name: "name", title: "title", class: "class", headerClass: "headerClass", textAlign: "textAlign", size: "size" }, queries: [{ propertyName: "tableCellTemplateRef", first: true, predicate: ["graniteTableCellTemplate"], descendants: true }], ngImport: i0 }); }
14
18
  }
15
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GraniteTableColumnDirective, decorators: [{
19
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: GraniteTableColumnDirective, decorators: [{
16
20
  type: Directive,
17
21
  args: [{
18
22
  // eslint-disable-next-line @angular-eslint/directive-selector
@@ -26,6 +30,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
26
30
  type: Input
27
31
  }], headerClass: [{
28
32
  type: Input
33
+ }], textAlign: [{
34
+ type: Input
35
+ }], size: [{
36
+ type: Input
29
37
  }], tableCellTemplateRef: [{
30
38
  type: ContentChild,
31
39
  args: ['graniteTableCellTemplate', { static: false }]
@@ -33,18 +41,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
33
41
 
34
42
  class GraniteTableCellConstants {
35
43
  static { this.CELL_ID_PREFIX = 'granite-cell'; }
36
- static { this.RIGHT_ALIGN = 'granite-right-align'; }
37
- static { this.CENTER_ALIGN = 'granite-center-align'; }
38
- }
39
- class GraniteTableConstants {
40
- static { this.STYLE_CLASS = 'granite-table'; }
44
+ static { this.START_ALIGN = 'granite-table-cell-start-align'; }
45
+ static { this.CENTER_ALIGN = 'granite-table-cell-center-align'; }
46
+ static { this.END_ALIGN = 'granite-table-cell-end-align'; }
41
47
  }
42
48
 
43
49
  class GraniteCell {
44
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GraniteCell, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
45
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: GraniteCell, inputs: { id: "id", column: "column" }, ngImport: i0 }); }
50
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: GraniteCell, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
51
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.4", type: GraniteCell, inputs: { id: "id", column: "column" }, ngImport: i0 }); }
46
52
  }
47
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GraniteCell, decorators: [{
53
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: GraniteCell, decorators: [{
48
54
  type: Directive
49
55
  }], propDecorators: { id: [{
50
56
  type: Input
@@ -53,25 +59,25 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
53
59
  }] } });
54
60
 
55
61
  class GraniteTableHeaderCellComponent extends GraniteCell {
56
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GraniteTableHeaderCellComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
57
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: GraniteTableHeaderCellComponent, selector: "th[graniteTableHeaderCell]", host: { classAttribute: "granite-table-header-cell" }, usesInheritance: true, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, styles: [".granite-table.p-datatable .p-datatable-thead>tr>th.granite-table-header-cell{padding:var(--granite-spacing-8);font-size:var(--granite-font-size-micro);line-height:var(--granite-line-height-flowing);letter-spacing:.015em;font-weight:400;color:var(--granite-color-text-weak);background:var(--granite-color-background-variant)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
62
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: GraniteTableHeaderCellComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
63
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: GraniteTableHeaderCellComponent, selector: "th[graniteTableHeaderCell]", host: { classAttribute: "granite-table-header-cell" }, usesInheritance: true, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, styles: [".granite-table th.granite-table-header-cell{padding:var(--granite-spacing-8);font-size:var(--granite-font-size-body-small);line-height:var(--granite-line-height-regular);font-weight:var(--granite-font-weight-regular);color:var(--granite-color-text-weak);background:var(--granite-color-background-page)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
58
64
  }
59
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GraniteTableHeaderCellComponent, decorators: [{
65
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: GraniteTableHeaderCellComponent, decorators: [{
60
66
  type: Component,
61
67
  args: [{ selector: 'th[graniteTableHeaderCell]', template: '<ng-content></ng-content>', host: {
62
68
  class: 'granite-table-header-cell',
63
- }, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, styles: [".granite-table.p-datatable .p-datatable-thead>tr>th.granite-table-header-cell{padding:var(--granite-spacing-8);font-size:var(--granite-font-size-micro);line-height:var(--granite-line-height-flowing);letter-spacing:.015em;font-weight:400;color:var(--granite-color-text-weak);background:var(--granite-color-background-variant)}\n"] }]
69
+ }, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, styles: [".granite-table th.granite-table-header-cell{padding:var(--granite-spacing-8);font-size:var(--granite-font-size-body-small);line-height:var(--granite-line-height-regular);font-weight:var(--granite-font-weight-regular);color:var(--granite-color-text-weak);background:var(--granite-color-background-page)}\n"] }]
64
70
  }] });
65
71
 
66
72
  class GraniteTableDataCellComponent extends GraniteCell {
67
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GraniteTableDataCellComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
68
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: GraniteTableDataCellComponent, selector: "granite-table-data-cell", inputs: { value: "value", rowIndex: "rowIndex", columnIndex: "columnIndex", row: "row", tableCellTemplateRef: "tableCellTemplateRef" }, host: { classAttribute: "granite-table-data-cell" }, usesInheritance: true, ngImport: i0, template: "<ng-template\n [ngTemplateOutlet]=\"tableCellTemplateRef || defaultTableCellTemplate\"\n [ngTemplateOutletContext]=\"{\n data: value,\n rowIndex: rowIndex,\n columnIndex: columnIndex,\n column: column,\n row: row\n }\"\n></ng-template>\n\n<ng-template #defaultTableCellTemplate>\n {{ value }}\n</ng-template>\n", styles: [".granite-table.p-datatable .p-datatable-tbody>tr>td{padding:var(--granite-spacing-8);font-size:var(--granite-font-size-body-small);line-height:var(--granite-line-height-regular);color:var(--granite-color-text);border-top:1px solid var(--granite-color-border-soft)}@media only screen and (max-width: 960px){.granite-table.p-datatable.p-datatable-responsive-stack .p-datatable-tbody>tr td{border:none}}@media only screen and (max-width: 960px){.granite-table.p-datatable.p-datatable-responsive-stack .p-datatable-tbody>tr:not(.granite-table.p-datatable.p-datatable-responsive-stack .p-datatable-tbody>tr:last-child) td{border-bottom:1px solid var(--granite-color-border-soft)}}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
73
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: GraniteTableDataCellComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
74
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: GraniteTableDataCellComponent, selector: "granite-table-data-cell", inputs: { value: "value", rowIndex: "rowIndex", columnIndex: "columnIndex", row: "row", tableCellTemplateRef: "tableCellTemplateRef" }, host: { classAttribute: "granite-table-data-cell" }, usesInheritance: true, ngImport: i0, template: "<ng-template\n [ngTemplateOutlet]=\"tableCellTemplateRef || defaultTableCellTemplate\"\n [ngTemplateOutletContext]=\"{\n data: value,\n rowIndex: rowIndex,\n columnIndex: columnIndex,\n column: column,\n row: row\n }\"\n></ng-template>\n\n<ng-template #defaultTableCellTemplate>\n {{ value }}\n</ng-template>\n", styles: [".granite-table tr>td{padding:var(--granite-spacing-8);font-size:var(--granite-font-size-body-medium);font-weight:var(--granite-font-weight-regular);line-height:var(--granite-line-height-flowing);color:var(--granite-color-text);border-top:1px solid var(--granite-color-border-soft)}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
69
75
  }
70
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GraniteTableDataCellComponent, decorators: [{
76
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: GraniteTableDataCellComponent, decorators: [{
71
77
  type: Component,
72
78
  args: [{ selector: 'granite-table-data-cell', host: {
73
79
  class: 'granite-table-data-cell',
74
- }, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-template\n [ngTemplateOutlet]=\"tableCellTemplateRef || defaultTableCellTemplate\"\n [ngTemplateOutletContext]=\"{\n data: value,\n rowIndex: rowIndex,\n columnIndex: columnIndex,\n column: column,\n row: row\n }\"\n></ng-template>\n\n<ng-template #defaultTableCellTemplate>\n {{ value }}\n</ng-template>\n", styles: [".granite-table.p-datatable .p-datatable-tbody>tr>td{padding:var(--granite-spacing-8);font-size:var(--granite-font-size-body-small);line-height:var(--granite-line-height-regular);color:var(--granite-color-text);border-top:1px solid var(--granite-color-border-soft)}@media only screen and (max-width: 960px){.granite-table.p-datatable.p-datatable-responsive-stack .p-datatable-tbody>tr td{border:none}}@media only screen and (max-width: 960px){.granite-table.p-datatable.p-datatable-responsive-stack .p-datatable-tbody>tr:not(.granite-table.p-datatable.p-datatable-responsive-stack .p-datatable-tbody>tr:last-child) td{border-bottom:1px solid var(--granite-color-border-soft)}}\n"] }]
80
+ }, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-template\n [ngTemplateOutlet]=\"tableCellTemplateRef || defaultTableCellTemplate\"\n [ngTemplateOutletContext]=\"{\n data: value,\n rowIndex: rowIndex,\n columnIndex: columnIndex,\n column: column,\n row: row\n }\"\n></ng-template>\n\n<ng-template #defaultTableCellTemplate>\n {{ value }}\n</ng-template>\n", styles: [".granite-table tr>td{padding:var(--granite-spacing-8);font-size:var(--granite-font-size-body-medium);font-weight:var(--granite-font-weight-regular);line-height:var(--granite-line-height-flowing);color:var(--granite-color-text);border-top:1px solid var(--granite-color-border-soft)}\n"] }]
75
81
  }], propDecorators: { value: [{
76
82
  type: Input
77
83
  }], rowIndex: [{
@@ -86,72 +92,91 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
86
92
 
87
93
  class GraniteCellAlignClassesDirective {
88
94
  constructor() {
89
- this.rightAlign = false;
90
- this.centerAlign = false;
95
+ this.textAlign = 'center';
91
96
  }
92
- ngOnChanges(changes) {
93
- if (changes.graniteCellAlignClasses &&
94
- changes.graniteCellAlignClasses.currentValue != null) {
95
- if (this.graniteCellAlignClasses.includes(GraniteTableCellConstants.RIGHT_ALIGN) ||
96
- (Array.isArray(this.graniteCellAlignClasses) &&
97
- this.graniteCellAlignClasses.includes(GraniteTableCellConstants.RIGHT_ALIGN))) {
98
- this.rightAlign = true;
99
- this.centerAlign = false;
100
- }
101
- else if (this.graniteCellAlignClasses.includes(GraniteTableCellConstants.CENTER_ALIGN) ||
102
- (Array.isArray(this.graniteCellAlignClasses) &&
103
- this.graniteCellAlignClasses.includes(GraniteTableCellConstants.CENTER_ALIGN))) {
104
- this.centerAlign = true;
105
- this.rightAlign = false;
106
- }
107
- else {
108
- this.centerAlign = false;
109
- this.rightAlign = false;
110
- }
111
- }
97
+ get alignmentClass() {
98
+ return `granite-table-cell-${this.textAlign ? this.textAlign : 'center'}-align`;
112
99
  }
113
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GraniteCellAlignClassesDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
114
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: GraniteCellAlignClassesDirective, selector: "[graniteCellAlignClasses]", inputs: { graniteCellAlignClasses: "graniteCellAlignClasses" }, host: { properties: { "class.granite-table-cell-right-align": "this.rightAlign", "class.granite-table-cell-center-align": "this.centerAlign" } }, usesOnChanges: true, ngImport: i0 }); }
100
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: GraniteCellAlignClassesDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
101
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.4", type: GraniteCellAlignClassesDirective, selector: "[graniteCellAlignClasses]", inputs: { graniteCellAlignClasses: "graniteCellAlignClasses", textAlign: "textAlign" }, host: { properties: { "class": "this.alignmentClass" } }, ngImport: i0 }); }
115
102
  }
116
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GraniteCellAlignClassesDirective, decorators: [{
103
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: GraniteCellAlignClassesDirective, decorators: [{
117
104
  type: Directive,
118
105
  args: [{
119
106
  selector: '[graniteCellAlignClasses]',
120
107
  }]
121
108
  }], propDecorators: { graniteCellAlignClasses: [{
122
109
  type: Input
123
- }], rightAlign: [{
110
+ }], textAlign: [{
111
+ type: Input
112
+ }], alignmentClass: [{
124
113
  type: HostBinding,
125
- args: ['class.granite-table-cell-right-align']
126
- }], centerAlign: [{
114
+ args: ['class']
115
+ }] } });
116
+
117
+ class GraniteColumnSizeDirective {
118
+ constructor() {
119
+ this.graniteColumnSize = 'medium';
120
+ this.sizeMap = {
121
+ small: 'sm',
122
+ medium: 'md',
123
+ large: 'lg',
124
+ };
125
+ }
126
+ get columnSizeClass() {
127
+ return `column-size-${this.sizeMap[this.graniteColumnSize]}`;
128
+ }
129
+ ngOnChanges() {
130
+ if (!this.graniteColumnSize || !this.sizeMap[this.graniteColumnSize]) {
131
+ this.graniteColumnSize = 'small';
132
+ }
133
+ }
134
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: GraniteColumnSizeDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
135
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.4", type: GraniteColumnSizeDirective, selector: "[graniteColumnSize]", inputs: { graniteColumnSize: "graniteColumnSize" }, host: { properties: { "class": "this.columnSizeClass" } }, usesOnChanges: true, ngImport: i0 }); }
136
+ }
137
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: GraniteColumnSizeDirective, decorators: [{
138
+ type: Directive,
139
+ args: [{
140
+ selector: '[graniteColumnSize]',
141
+ }]
142
+ }], propDecorators: { graniteColumnSize: [{
143
+ type: Input
144
+ }], columnSizeClass: [{
127
145
  type: HostBinding,
128
- args: ['class.granite-table-cell-center-align']
146
+ args: ['class']
129
147
  }] } });
130
148
 
131
149
  class GraniteTableComponent {
132
- constructor() {
150
+ constructor(cd) {
151
+ this.cd = cd;
133
152
  this.dataSource = [];
134
- this.layout = 'stack';
135
- this.styleClass = GraniteTableConstants.STYLE_CLASS;
153
+ this.horizontalScroll = false;
136
154
  this.cellIdPrefix = GraniteTableCellConstants.CELL_ID_PREFIX;
137
155
  }
138
- ngAfterContentInit() {
139
- this._columns = this.tableColumnsComponent.toArray();
156
+ ngAfterContentChecked() {
157
+ this.refreshData();
158
+ this.cd.markForCheck();
140
159
  }
141
160
  _trackColumnName(index, column) {
142
161
  return column.name;
143
162
  }
144
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GraniteTableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
145
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: GraniteTableComponent, selector: "granite-table", inputs: { dataSource: "dataSource", trackBy: "trackBy", layout: "layout" }, queries: [{ propertyName: "tableColumnsComponent", predicate: GraniteTableColumnDirective }], ngImport: i0, template: "<!-- [tableStyle]=\"{ width: '100%' }\" given to have equal width column -->\n<p-table\n [value]=\"dataSource\"\n [rowTrackBy]=\"trackBy\"\n [responsiveLayout]=\"layout\"\n [tableStyle]=\"{ width: '100%' }\"\n [styleClass]=\"styleClass\"\n>\n <ng-template pTemplate=\"header\">\n <tr data-granite-table-header-row>\n <ng-container *ngFor=\"let column of _columns; trackBy: _trackColumnName\"\n ><th\n [attr.data-granite-table-header-cell]=\"column.name\"\n graniteTableHeaderCell\n [graniteCellAlignClasses]=\"column.headerClass\"\n >\n {{ column.title ?? column.name | graniteTitle }}\n </th></ng-container\n >\n </tr>\n </ng-template>\n <ng-template pTemplate=\"body\" let-row let-rowIndex=\"rowIndex\">\n <tr data-granite-table-row>\n <ng-container\n *ngFor=\"\n let column of _columns;\n trackBy: _trackColumnName;\n let columnIndex = index\n \"\n >\n <td\n [attr.data-granite-table-cell]=\"column.name\"\n [graniteCellAlignClasses]=\"column.class\"\n [id]=\"cellIdPrefix + '-' + rowIndex + '-' + columnIndex\"\n >\n <granite-table-data-cell\n [id]=\"cellIdPrefix + '-' + rowIndex + '-' + columnIndex\"\n [value]=\"row[column.name]\"\n [row]=\"row\"\n [column]=\"column\"\n [rowIndex]=\"rowIndex\"\n [columnIndex]=\"columnIndex\"\n [tableCellTemplateRef]=\"column.tableCellTemplateRef\"\n ></granite-table-data-cell>\n </td>\n </ng-container>\n </tr>\n </ng-template>\n</p-table>\n", styles: [".granite-table.p-datatable .p-datatable-tbody>tr>td.granite-table-cell-right-align,.granite-table.p-datatable .p-datatable-thead>tr>th.granite-table-cell-right-align{text-align:end}.granite-table.p-datatable .p-datatable-tbody>tr>td.granite-table-cell-center-align,.granite-table.p-datatable .p-datatable-thead>tr>th.granite-table-cell-center-align{text-align:center}.granite-table.p-datatable.p-component{font-family:inherit;font-weight:inherit;font-size:inherit}.granite-table.p-datatable .p-datatable-tbody>tr{background:var(--granite-color-background-variant)}.granite-table.p-datatable .p-datatable-thead>tr,.granite-table.p-datatable .p-datatable-tbody>tr{height:2.5rem}.granite-table.p-datatable .p-datatable-thead>tr>th,.granite-table.p-datatable .p-datatable-tbody>tr>td{border:none;border-width:0}.granite-table .p-datatable-table{overflow:hidden}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i2.Table, selector: "p-table", inputs: ["frozenColumns", "frozenValue", "style", "styleClass", "tableStyle", "tableStyleClass", "paginator", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorStyleClass", "paginatorDropdownAppendTo", "paginatorDropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showJumpToPageDropdown", "showJumpToPageInput", "showFirstLastIcon", "showPageLinks", "defaultSortOrder", "sortMode", "resetPageOnSort", "selectionMode", "selectionPageOnly", "contextMenuSelection", "contextMenuSelectionMode", "dataKey", "metaKeySelection", "rowSelectable", "rowTrackBy", "lazy", "lazyLoadOnInit", "compareSelectionBy", "csvSeparator", "exportFilename", "filters", "globalFilterFields", "filterDelay", "filterLocale", "expandedRowKeys", "editingRowKeys", "rowExpandMode", "scrollable", "scrollDirection", "rowGroupMode", "scrollHeight", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "virtualScrollDelay", "frozenWidth", "responsive", "contextMenu", "resizableColumns", "columnResizeMode", "reorderableColumns", "loading", "loadingIcon", "showLoader", "rowHover", "customSort", "showInitialSortBadge", "autoLayout", "exportFunction", "exportHeader", "stateKey", "stateStorage", "editMode", "groupRowsBy", "groupRowsByOrder", "responsiveLayout", "breakpoint", "paginatorLocale", "value", "columns", "first", "rows", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "selectAll", "virtualRowHeight"], outputs: ["contextMenuSelectionChange", "selectAllChange", "selectionChange", "onRowSelect", "onRowUnselect", "onPage", "onSort", "onFilter", "onLazyLoad", "onRowExpand", "onRowCollapse", "onContextMenuSelect", "onColResize", "onColReorder", "onRowReorder", "onEditInit", "onEditComplete", "onEditCancel", "onHeaderCheckboxToggle", "sortFunction", "firstChange", "rowsChange", "onStateSave", "onStateRestore"] }, { kind: "directive", type: i3.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "component", type: GraniteTableHeaderCellComponent, selector: "th[graniteTableHeaderCell]" }, { kind: "component", type: GraniteTableDataCellComponent, selector: "granite-table-data-cell", inputs: ["value", "rowIndex", "columnIndex", "row", "tableCellTemplateRef"] }, { kind: "directive", type: GraniteCellAlignClassesDirective, selector: "[graniteCellAlignClasses]", inputs: ["graniteCellAlignClasses"] }, { kind: "pipe", type: i7.GraniteTitlePipe, name: "graniteTitle" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
163
+ refreshData() {
164
+ this._columns = this.tableColumnsComponent.toArray();
165
+ this._displayedColumns = this.tableColumnsComponent
166
+ .toArray()
167
+ .map((c) => c.name);
168
+ }
169
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: GraniteTableComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
170
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: GraniteTableComponent, selector: "granite-table", inputs: { dataSource: "dataSource", horizontalScroll: "horizontalScroll", trackBy: "trackBy" }, queries: [{ propertyName: "tableColumnsComponent", predicate: GraniteTableColumnDirective }], ngImport: i0, template: "<div\n class=\"cdk-table-wrapper\"\n data-fnd=\"granite-table-wrapper\"\n [class.horizontal-scroll]=\"horizontalScroll\"\n>\n <table\n class=\"granite-table\"\n cdk-table\n [dataSource]=\"dataSource\"\n [trackBy]=\"trackBy\"\n >\n <ng-container\n *ngFor=\"\n let column of _columns;\n trackBy: _trackColumnName;\n let columnIndex = index\n \"\n [cdkColumnDef]=\"column.name\"\n >\n <th\n tabindex=\"0\"\n cdk-header-cell\n *cdkHeaderCellDef\n data-fnd=\"data-granite-table-header-cell\"\n [graniteColumnSize]=\"column.size\"\n [attr.data-granite-table-header-cell]=\"column.name\"\n graniteTableHeaderCell\n graniteCellAlignClasses\n [textAlign]=\"column.textAlign\"\n [class]=\"column.headerClass\"\n >\n {{ column.title ?? column.name | graniteTitle }}\n </th>\n\n <td\n tabindex=\"0\"\n cdk-cell\n *cdkCellDef=\"let row; let rowIndex = index\"\n data-fnd=\"data-granite-table-row-cell\"\n [attr.data-granite-table-cell]=\"column.name\"\n [graniteColumnSize]=\"column.size\"\n graniteCellAlignClasses\n [textAlign]=\"column.textAlign\"\n [class]=\"column.class\"\n [id]=\"cellIdPrefix + '-' + rowIndex + '-' + columnIndex\"\n >\n <granite-table-data-cell\n [value]=\"row[column.name]\"\n [row]=\"row\"\n [column]=\"column\"\n [rowIndex]=\"rowIndex\"\n [columnIndex]=\"columnIndex\"\n [tableCellTemplateRef]=\"column.tableCellTemplateRef\"\n ></granite-table-data-cell>\n </td>\n </ng-container>\n\n <tr\n tabindex=\"0\"\n cdk-header-row\n *cdkHeaderRowDef=\"_displayedColumns\"\n data-fnd=\"data-granite-table-header\"\n ></tr>\n <tr\n tabindex=\"0\"\n cdk-row\n *cdkRowDef=\"let row; columns: _displayedColumns\"\n data-fnd=\"data-granite-table-row\"\n ></tr>\n </table>\n</div>\n", styles: [".granite-table tr>td.granite-table-cell-center-align,.granite-table tr>th.granite-table-cell-center-align{text-align:center}.granite-table tr>td.granite-table-cell-start-align,.granite-table tr>th.granite-table-cell-start-align{text-align:start}.granite-table tr>td.granite-table-cell-end-align,.granite-table tr>th.granite-table-cell-end-align{text-align:end}.granite-table [cdk-header-cell].column-size-sm,.granite-table [cdk-cell].column-size-sm{padding:.375rem .5rem}.granite-table [cdk-header-cell].column-size-md,.granite-table [cdk-cell].column-size-md{padding:.75rem 1rem}.granite-table [cdk-header-cell].column-size-lg,.granite-table [cdk-cell].column-size-lg{padding:.9375rem 1.25rem}.cdk-table-wrapper{width:100%;overflow-x:hidden}.cdk-table-wrapper .cdk-table{width:100%;border-spacing:0;white-space:nowrap}.cdk-table-wrapper .cdk-table .cdk-header-row,.cdk-table-wrapper .cdk-table cdk-cell{height:2.5rem}.cdk-table-wrapper .cdk-table .cdk-cell{background:var(--granite-color-background-variant)}.cdk-table-wrapper .cdk-table .cdk-header-cell,.cdk-table-wrapper .cdk-table cdk-cell{border:none;border-width:0}.cdk-table-wrapper .cdk-table .cdk-row,.cdk-table-wrapper .cdk-table .cdk-header-row{background:var(--granite-color-background-variant);height:2.5rem}.horizontal-scroll{overflow-x:auto}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i2.CdkTable, selector: "cdk-table, table[cdk-table]", inputs: ["trackBy", "dataSource", "multiTemplateDataRows", "fixedLayout"], outputs: ["contentChanged"], exportAs: ["cdkTable"] }, { kind: "directive", type: i2.CdkRowDef, selector: "[cdkRowDef]", inputs: ["cdkRowDefColumns", "cdkRowDefWhen"] }, { kind: "directive", type: i2.CdkCellDef, selector: "[cdkCellDef]" }, { kind: "directive", type: i2.CdkHeaderCellDef, selector: "[cdkHeaderCellDef]" }, { kind: "directive", type: i2.CdkColumnDef, selector: "[cdkColumnDef]", inputs: ["cdkColumnDef", "sticky", "stickyEnd"] }, { kind: "directive", type: i2.CdkCell, selector: "cdk-cell, td[cdk-cell]" }, { kind: "component", type: i2.CdkRow, selector: "cdk-row, tr[cdk-row]" }, { kind: "directive", type: i2.CdkHeaderCell, selector: "cdk-header-cell, th[cdk-header-cell]" }, { kind: "component", type: i2.CdkHeaderRow, selector: "cdk-header-row, tr[cdk-header-row]" }, { kind: "directive", type: i2.CdkHeaderRowDef, selector: "[cdkHeaderRowDef]", inputs: ["cdkHeaderRowDef", "cdkHeaderRowDefSticky"] }, { kind: "component", type: GraniteTableHeaderCellComponent, selector: "th[graniteTableHeaderCell]" }, { kind: "component", type: GraniteTableDataCellComponent, selector: "granite-table-data-cell", inputs: ["value", "rowIndex", "columnIndex", "row", "tableCellTemplateRef"] }, { kind: "directive", type: GraniteCellAlignClassesDirective, selector: "[graniteCellAlignClasses]", inputs: ["graniteCellAlignClasses", "textAlign"] }, { kind: "directive", type: GraniteColumnSizeDirective, selector: "[graniteColumnSize]", inputs: ["graniteColumnSize"] }, { kind: "pipe", type: i7.GraniteTitlePipe, name: "graniteTitle" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
146
171
  }
147
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GraniteTableComponent, decorators: [{
172
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: GraniteTableComponent, decorators: [{
148
173
  type: Component,
149
- args: [{ selector: 'granite-table', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<!-- [tableStyle]=\"{ width: '100%' }\" given to have equal width column -->\n<p-table\n [value]=\"dataSource\"\n [rowTrackBy]=\"trackBy\"\n [responsiveLayout]=\"layout\"\n [tableStyle]=\"{ width: '100%' }\"\n [styleClass]=\"styleClass\"\n>\n <ng-template pTemplate=\"header\">\n <tr data-granite-table-header-row>\n <ng-container *ngFor=\"let column of _columns; trackBy: _trackColumnName\"\n ><th\n [attr.data-granite-table-header-cell]=\"column.name\"\n graniteTableHeaderCell\n [graniteCellAlignClasses]=\"column.headerClass\"\n >\n {{ column.title ?? column.name | graniteTitle }}\n </th></ng-container\n >\n </tr>\n </ng-template>\n <ng-template pTemplate=\"body\" let-row let-rowIndex=\"rowIndex\">\n <tr data-granite-table-row>\n <ng-container\n *ngFor=\"\n let column of _columns;\n trackBy: _trackColumnName;\n let columnIndex = index\n \"\n >\n <td\n [attr.data-granite-table-cell]=\"column.name\"\n [graniteCellAlignClasses]=\"column.class\"\n [id]=\"cellIdPrefix + '-' + rowIndex + '-' + columnIndex\"\n >\n <granite-table-data-cell\n [id]=\"cellIdPrefix + '-' + rowIndex + '-' + columnIndex\"\n [value]=\"row[column.name]\"\n [row]=\"row\"\n [column]=\"column\"\n [rowIndex]=\"rowIndex\"\n [columnIndex]=\"columnIndex\"\n [tableCellTemplateRef]=\"column.tableCellTemplateRef\"\n ></granite-table-data-cell>\n </td>\n </ng-container>\n </tr>\n </ng-template>\n</p-table>\n", styles: [".granite-table.p-datatable .p-datatable-tbody>tr>td.granite-table-cell-right-align,.granite-table.p-datatable .p-datatable-thead>tr>th.granite-table-cell-right-align{text-align:end}.granite-table.p-datatable .p-datatable-tbody>tr>td.granite-table-cell-center-align,.granite-table.p-datatable .p-datatable-thead>tr>th.granite-table-cell-center-align{text-align:center}.granite-table.p-datatable.p-component{font-family:inherit;font-weight:inherit;font-size:inherit}.granite-table.p-datatable .p-datatable-tbody>tr{background:var(--granite-color-background-variant)}.granite-table.p-datatable .p-datatable-thead>tr,.granite-table.p-datatable .p-datatable-tbody>tr{height:2.5rem}.granite-table.p-datatable .p-datatable-thead>tr>th,.granite-table.p-datatable .p-datatable-tbody>tr>td{border:none;border-width:0}.granite-table .p-datatable-table{overflow:hidden}\n"] }]
150
- }], propDecorators: { dataSource: [{
174
+ args: [{ selector: 'granite-table', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n class=\"cdk-table-wrapper\"\n data-fnd=\"granite-table-wrapper\"\n [class.horizontal-scroll]=\"horizontalScroll\"\n>\n <table\n class=\"granite-table\"\n cdk-table\n [dataSource]=\"dataSource\"\n [trackBy]=\"trackBy\"\n >\n <ng-container\n *ngFor=\"\n let column of _columns;\n trackBy: _trackColumnName;\n let columnIndex = index\n \"\n [cdkColumnDef]=\"column.name\"\n >\n <th\n tabindex=\"0\"\n cdk-header-cell\n *cdkHeaderCellDef\n data-fnd=\"data-granite-table-header-cell\"\n [graniteColumnSize]=\"column.size\"\n [attr.data-granite-table-header-cell]=\"column.name\"\n graniteTableHeaderCell\n graniteCellAlignClasses\n [textAlign]=\"column.textAlign\"\n [class]=\"column.headerClass\"\n >\n {{ column.title ?? column.name | graniteTitle }}\n </th>\n\n <td\n tabindex=\"0\"\n cdk-cell\n *cdkCellDef=\"let row; let rowIndex = index\"\n data-fnd=\"data-granite-table-row-cell\"\n [attr.data-granite-table-cell]=\"column.name\"\n [graniteColumnSize]=\"column.size\"\n graniteCellAlignClasses\n [textAlign]=\"column.textAlign\"\n [class]=\"column.class\"\n [id]=\"cellIdPrefix + '-' + rowIndex + '-' + columnIndex\"\n >\n <granite-table-data-cell\n [value]=\"row[column.name]\"\n [row]=\"row\"\n [column]=\"column\"\n [rowIndex]=\"rowIndex\"\n [columnIndex]=\"columnIndex\"\n [tableCellTemplateRef]=\"column.tableCellTemplateRef\"\n ></granite-table-data-cell>\n </td>\n </ng-container>\n\n <tr\n tabindex=\"0\"\n cdk-header-row\n *cdkHeaderRowDef=\"_displayedColumns\"\n data-fnd=\"data-granite-table-header\"\n ></tr>\n <tr\n tabindex=\"0\"\n cdk-row\n *cdkRowDef=\"let row; columns: _displayedColumns\"\n data-fnd=\"data-granite-table-row\"\n ></tr>\n </table>\n</div>\n", styles: [".granite-table tr>td.granite-table-cell-center-align,.granite-table tr>th.granite-table-cell-center-align{text-align:center}.granite-table tr>td.granite-table-cell-start-align,.granite-table tr>th.granite-table-cell-start-align{text-align:start}.granite-table tr>td.granite-table-cell-end-align,.granite-table tr>th.granite-table-cell-end-align{text-align:end}.granite-table [cdk-header-cell].column-size-sm,.granite-table [cdk-cell].column-size-sm{padding:.375rem .5rem}.granite-table [cdk-header-cell].column-size-md,.granite-table [cdk-cell].column-size-md{padding:.75rem 1rem}.granite-table [cdk-header-cell].column-size-lg,.granite-table [cdk-cell].column-size-lg{padding:.9375rem 1.25rem}.cdk-table-wrapper{width:100%;overflow-x:hidden}.cdk-table-wrapper .cdk-table{width:100%;border-spacing:0;white-space:nowrap}.cdk-table-wrapper .cdk-table .cdk-header-row,.cdk-table-wrapper .cdk-table cdk-cell{height:2.5rem}.cdk-table-wrapper .cdk-table .cdk-cell{background:var(--granite-color-background-variant)}.cdk-table-wrapper .cdk-table .cdk-header-cell,.cdk-table-wrapper .cdk-table cdk-cell{border:none;border-width:0}.cdk-table-wrapper .cdk-table .cdk-row,.cdk-table-wrapper .cdk-table .cdk-header-row{background:var(--granite-color-background-variant);height:2.5rem}.horizontal-scroll{overflow-x:auto}\n"] }]
175
+ }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { dataSource: [{
151
176
  type: Input
152
- }], trackBy: [{
177
+ }], horizontalScroll: [{
153
178
  type: Input
154
- }], layout: [{
179
+ }], trackBy: [{
155
180
  type: Input
156
181
  }], tableColumnsComponent: [{
157
182
  type: ContentChildren,
@@ -159,24 +184,26 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
159
184
  }] } });
160
185
 
161
186
  class GraniteTableModule {
162
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GraniteTableModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
163
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: GraniteTableModule, declarations: [GraniteTableComponent,
187
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: GraniteTableModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
188
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.4", ngImport: i0, type: GraniteTableModule, declarations: [GraniteTableComponent,
164
189
  GraniteTableColumnDirective,
165
190
  GraniteTableHeaderCellComponent,
166
191
  GraniteTableDataCellComponent,
167
- GraniteCellAlignClassesDirective], imports: [CommonModule, TableModule, PurePipesModule], exports: [GraniteTableComponent, GraniteTableColumnDirective] }); }
168
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GraniteTableModule, imports: [CommonModule, TableModule, PurePipesModule] }); }
192
+ GraniteCellAlignClassesDirective,
193
+ GraniteColumnSizeDirective], imports: [CommonModule, TableModule, PurePipesModule, CdkTableModule], exports: [GraniteTableComponent, GraniteTableColumnDirective] }); }
194
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: GraniteTableModule, imports: [CommonModule, TableModule, PurePipesModule, CdkTableModule] }); }
169
195
  }
170
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GraniteTableModule, decorators: [{
196
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: GraniteTableModule, decorators: [{
171
197
  type: NgModule,
172
198
  args: [{
173
- imports: [CommonModule, TableModule, PurePipesModule],
199
+ imports: [CommonModule, TableModule, PurePipesModule, CdkTableModule],
174
200
  declarations: [
175
201
  GraniteTableComponent,
176
202
  GraniteTableColumnDirective,
177
203
  GraniteTableHeaderCellComponent,
178
204
  GraniteTableDataCellComponent,
179
205
  GraniteCellAlignClassesDirective,
206
+ GraniteColumnSizeDirective,
180
207
  ],
181
208
  exports: [GraniteTableComponent, GraniteTableColumnDirective],
182
209
  }]
@@ -1 +1 @@
1
- {"version":3,"file":"ifsworld-granite-components-table.mjs","sources":["../../../../libs/granite-components/table/src/lib/column/table-column.directive.ts","../../../../libs/granite-components/table/src/lib/table-constants.library.ts","../../../../libs/granite-components/table/src/lib/cell/cell.ts","../../../../libs/granite-components/table/src/lib/cell/table-header-cell.component.ts","../../../../libs/granite-components/table/src/lib/cell/table-data-cell.component.ts","../../../../libs/granite-components/table/src/lib/cell/table-data-cell.component.html","../../../../libs/granite-components/table/src/lib/cell/cell-align/cell-align-classes.directive.ts","../../../../libs/granite-components/table/src/lib/table.component.ts","../../../../libs/granite-components/table/src/lib/table.component.html","../../../../libs/granite-components/table/src/lib/table.module.ts","../../../../libs/granite-components/table/src/ifsworld-granite-components-table.ts"],"sourcesContent":["import { ContentChild, Directive, Input, TemplateRef } from '@angular/core';\n\nexport interface GraniteTableColumnInterface {\n name: string;\n title?: string;\n class?: string | string[];\n headerClass?: string | string[];\n}\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: 'granite-table-column',\n})\nexport class GraniteTableColumnDirective\n implements GraniteTableColumnInterface\n{\n @Input()\n name: string;\n\n @Input()\n title?: string;\n\n @Input()\n class?: string | string[];\n\n @Input()\n headerClass?: string | string[];\n\n @ContentChild('graniteTableCellTemplate', { static: false })\n tableCellTemplateRef: TemplateRef<any>;\n}\n","export class GraniteTableCellConstants {\n static readonly CELL_ID_PREFIX: string = 'granite-cell';\n static readonly RIGHT_ALIGN: string = 'granite-right-align';\n static readonly CENTER_ALIGN: string = 'granite-center-align';\n}\n\nexport class GraniteTableConstants {\n static readonly STYLE_CLASS: string = 'granite-table';\n}\n","import { Directive, Input } from '@angular/core';\n\nimport { GraniteTableColumnDirective } from '../column/table-column.directive';\n\n@Directive()\nexport abstract class GraniteCell {\n @Input()\n id: string;\n\n @Input()\n column: GraniteTableColumnDirective;\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ViewEncapsulation,\n} from '@angular/core';\n\nimport { GraniteCell } from './cell';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'th[graniteTableHeaderCell]',\n template: '<ng-content></ng-content>',\n styleUrls: ['./table-header-cell.component.scss'],\n host: {\n class: 'granite-table-header-cell',\n },\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class GraniteTableHeaderCellComponent extends GraniteCell {}\n","import {\n ChangeDetectionStrategy,\n Component,\n Input,\n TemplateRef,\n ViewEncapsulation,\n} from '@angular/core';\n\nimport { GraniteCell } from './cell';\n\n@Component({\n selector: 'granite-table-data-cell',\n templateUrl: './table-data-cell.component.html',\n styleUrls: ['./table-data-cell.component.scss'],\n host: {\n class: 'granite-table-data-cell',\n },\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class GraniteTableDataCellComponent extends GraniteCell {\n @Input()\n value: any;\n\n @Input()\n rowIndex: number;\n\n @Input()\n columnIndex: number;\n\n @Input()\n row: any;\n\n // Custom template provided by the consumer\n @Input()\n tableCellTemplateRef: TemplateRef<any>;\n}\n","<ng-template\n [ngTemplateOutlet]=\"tableCellTemplateRef || defaultTableCellTemplate\"\n [ngTemplateOutletContext]=\"{\n data: value,\n rowIndex: rowIndex,\n columnIndex: columnIndex,\n column: column,\n row: row\n }\"\n></ng-template>\n\n<ng-template #defaultTableCellTemplate>\n {{ value }}\n</ng-template>\n","import {\n Directive,\n HostBinding,\n Input,\n OnChanges,\n SimpleChanges,\n} from '@angular/core';\n\nimport { GraniteTableCellConstants } from '../../table-constants.library';\n\n@Directive({\n selector: '[graniteCellAlignClasses]',\n})\nexport class GraniteCellAlignClassesDirective implements OnChanges {\n @Input()\n graniteCellAlignClasses?: string | string[];\n\n @HostBinding('class.granite-table-cell-right-align')\n rightAlign: boolean = false;\n\n @HostBinding('class.granite-table-cell-center-align')\n centerAlign: boolean = false;\n\n ngOnChanges(changes: SimpleChanges): void {\n if (\n changes.graniteCellAlignClasses &&\n changes.graniteCellAlignClasses.currentValue != null\n ) {\n if (\n this.graniteCellAlignClasses.includes(\n GraniteTableCellConstants.RIGHT_ALIGN\n ) ||\n (Array.isArray(this.graniteCellAlignClasses) &&\n this.graniteCellAlignClasses.includes(\n GraniteTableCellConstants.RIGHT_ALIGN\n ))\n ) {\n this.rightAlign = true;\n this.centerAlign = false;\n } else if (\n this.graniteCellAlignClasses.includes(\n GraniteTableCellConstants.CENTER_ALIGN\n ) ||\n (Array.isArray(this.graniteCellAlignClasses) &&\n this.graniteCellAlignClasses.includes(\n GraniteTableCellConstants.CENTER_ALIGN\n ))\n ) {\n this.centerAlign = true;\n this.rightAlign = false;\n } else {\n this.centerAlign = false;\n this.rightAlign = false;\n }\n }\n }\n}\n","import {\n AfterContentInit,\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n Input,\n QueryList,\n TrackByFunction,\n ViewEncapsulation,\n} from '@angular/core';\n\nimport { GraniteTableColumnDirective } from './column/table-column.directive';\nimport {\n GraniteTableCellConstants,\n GraniteTableConstants,\n} from './table-constants.library';\nimport { ResponsiveLayout } from './table.types';\n\n@Component({\n selector: 'granite-table',\n templateUrl: './table.component.html',\n styleUrls: ['./table.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class GraniteTableComponent<T> implements AfterContentInit {\n @Input()\n dataSource: any[] = [];\n\n @Input()\n trackBy: TrackByFunction<T>;\n\n @Input()\n layout: ResponsiveLayout = 'stack';\n\n @ContentChildren(GraniteTableColumnDirective)\n tableColumnsComponent: QueryList<GraniteTableColumnDirective>;\n\n readonly styleClass = GraniteTableConstants.STYLE_CLASS;\n readonly cellIdPrefix = GraniteTableCellConstants.CELL_ID_PREFIX;\n\n _columns: GraniteTableColumnDirective[];\n\n ngAfterContentInit(): void {\n this._columns = this.tableColumnsComponent.toArray();\n }\n\n _trackColumnName(index: number, column: GraniteTableColumnDirective): string {\n return column.name;\n }\n}\n","<!-- [tableStyle]=\"{ width: '100%' }\" given to have equal width column -->\n<p-table\n [value]=\"dataSource\"\n [rowTrackBy]=\"trackBy\"\n [responsiveLayout]=\"layout\"\n [tableStyle]=\"{ width: '100%' }\"\n [styleClass]=\"styleClass\"\n>\n <ng-template pTemplate=\"header\">\n <tr data-granite-table-header-row>\n <ng-container *ngFor=\"let column of _columns; trackBy: _trackColumnName\"\n ><th\n [attr.data-granite-table-header-cell]=\"column.name\"\n graniteTableHeaderCell\n [graniteCellAlignClasses]=\"column.headerClass\"\n >\n {{ column.title ?? column.name | graniteTitle }}\n </th></ng-container\n >\n </tr>\n </ng-template>\n <ng-template pTemplate=\"body\" let-row let-rowIndex=\"rowIndex\">\n <tr data-granite-table-row>\n <ng-container\n *ngFor=\"\n let column of _columns;\n trackBy: _trackColumnName;\n let columnIndex = index\n \"\n >\n <td\n [attr.data-granite-table-cell]=\"column.name\"\n [graniteCellAlignClasses]=\"column.class\"\n [id]=\"cellIdPrefix + '-' + rowIndex + '-' + columnIndex\"\n >\n <granite-table-data-cell\n [id]=\"cellIdPrefix + '-' + rowIndex + '-' + columnIndex\"\n [value]=\"row[column.name]\"\n [row]=\"row\"\n [column]=\"column\"\n [rowIndex]=\"rowIndex\"\n [columnIndex]=\"columnIndex\"\n [tableCellTemplateRef]=\"column.tableCellTemplateRef\"\n ></granite-table-data-cell>\n </td>\n </ng-container>\n </tr>\n </ng-template>\n</p-table>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { TableModule } from 'primeng/table';\n\nimport { PurePipesModule } from '@ifsworld/granite-components';\n\nimport { GraniteTableComponent } from './table.component';\nimport { GraniteTableColumnDirective } from './column/table-column.directive';\nimport { GraniteTableHeaderCellComponent } from './cell/table-header-cell.component';\nimport { GraniteTableDataCellComponent } from './cell/table-data-cell.component';\nimport { GraniteCellAlignClassesDirective } from './cell/cell-align/cell-align-classes.directive';\n\n@NgModule({\n imports: [CommonModule, TableModule, PurePipesModule],\n declarations: [\n GraniteTableComponent,\n GraniteTableColumnDirective,\n GraniteTableHeaderCellComponent,\n GraniteTableDataCellComponent,\n GraniteCellAlignClassesDirective,\n ],\n exports: [GraniteTableComponent, GraniteTableColumnDirective],\n})\nexport class GraniteTableModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i4.GraniteTableHeaderCellComponent","i5.GraniteTableDataCellComponent","i6.GraniteCellAlignClassesDirective"],"mappings":"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"}
1
+ {"version":3,"file":"ifsworld-granite-components-table.mjs","sources":["../../../../libs/granite-components/table/src/lib/column/table-column.directive.ts","../../../../libs/granite-components/table/src/lib/table-constants.library.ts","../../../../libs/granite-components/table/src/lib/cell/cell.ts","../../../../libs/granite-components/table/src/lib/cell/table-header-cell.component.ts","../../../../libs/granite-components/table/src/lib/cell/table-data-cell.component.ts","../../../../libs/granite-components/table/src/lib/cell/table-data-cell.component.html","../../../../libs/granite-components/table/src/lib/cell/cell-align/cell-align-classes.directive.ts","../../../../libs/granite-components/table/src/lib/column-size/column-size.directive.ts","../../../../libs/granite-components/table/src/lib/table.component.ts","../../../../libs/granite-components/table/src/lib/table.component.html","../../../../libs/granite-components/table/src/lib/table.module.ts","../../../../libs/granite-components/table/src/ifsworld-granite-components-table.ts"],"sourcesContent":["import { ContentChild, Directive, Input, TemplateRef } from '@angular/core';\n\nexport type GranitTableColumnAlign = 'start' | 'center' | 'end';\nexport type GranitTableColumnSize = 'small' | 'medium' | 'large';\n\nexport interface GraniteTableColumnInterface {\n name: string;\n title?: string;\n class?: string | string[];\n headerClass?: string | string[];\n textAlign?: GranitTableColumnAlign;\n size?: GranitTableColumnSize;\n}\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: 'granite-table-column',\n})\nexport class GraniteTableColumnDirective\n implements GraniteTableColumnInterface\n{\n @Input()\n name: string;\n\n @Input()\n title?: string;\n\n @Input()\n class?: string | string[];\n\n @Input()\n headerClass?: string | string[];\n\n @Input() textAlign: GranitTableColumnAlign = 'center';\n\n @Input() size: GranitTableColumnSize = 'small';\n\n @ContentChild('graniteTableCellTemplate', { static: false })\n tableCellTemplateRef: TemplateRef<any>;\n}\n","export class GraniteTableCellConstants {\n static readonly CELL_ID_PREFIX: string = 'granite-cell';\n static readonly START_ALIGN: string = 'granite-table-cell-start-align';\n static readonly CENTER_ALIGN: string = 'granite-table-cell-center-align';\n static readonly END_ALIGN: string = 'granite-table-cell-end-align';\n}\n","import { Directive, Input } from '@angular/core';\n\nimport { GraniteTableColumnDirective } from '../column/table-column.directive';\n\n@Directive()\nexport abstract class GraniteCell {\n @Input()\n id: string;\n\n @Input()\n column: GraniteTableColumnDirective;\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ViewEncapsulation,\n} from '@angular/core';\n\nimport { GraniteCell } from './cell';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'th[graniteTableHeaderCell]',\n template: '<ng-content></ng-content>',\n styleUrls: ['./table-header-cell.component.scss'],\n host: {\n class: 'granite-table-header-cell',\n },\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class GraniteTableHeaderCellComponent extends GraniteCell {}\n","import {\n ChangeDetectionStrategy,\n Component,\n Input,\n TemplateRef,\n ViewEncapsulation,\n} from '@angular/core';\n\nimport { GraniteCell } from './cell';\n\n@Component({\n selector: 'granite-table-data-cell',\n templateUrl: './table-data-cell.component.html',\n styleUrls: ['./table-data-cell.component.scss'],\n host: {\n class: 'granite-table-data-cell',\n },\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class GraniteTableDataCellComponent extends GraniteCell {\n @Input()\n value: any;\n\n @Input()\n rowIndex: number;\n\n @Input()\n columnIndex: number;\n\n @Input()\n row: any;\n\n // Custom template provided by the consumer\n @Input()\n tableCellTemplateRef: TemplateRef<any>;\n}\n","<ng-template\n [ngTemplateOutlet]=\"tableCellTemplateRef || defaultTableCellTemplate\"\n [ngTemplateOutletContext]=\"{\n data: value,\n rowIndex: rowIndex,\n columnIndex: columnIndex,\n column: column,\n row: row\n }\"\n></ng-template>\n\n<ng-template #defaultTableCellTemplate>\n {{ value }}\n</ng-template>\n","import { Directive, HostBinding, Input } from '@angular/core';\nimport { GranitTableColumnAlign } from '../../column/table-column.directive';\n\n@Directive({\n selector: '[graniteCellAlignClasses]',\n})\nexport class GraniteCellAlignClassesDirective {\n @Input() graniteCellAlignClasses?: string | string[];\n @Input() textAlign: GranitTableColumnAlign = 'center';\n\n @HostBinding('class') get alignmentClass(): string {\n return `granite-table-cell-${\n this.textAlign ? this.textAlign : 'center'\n }-align`;\n }\n}\n","import { Directive, HostBinding, Input, OnChanges } from '@angular/core';\nimport { GranitTableColumnSize } from '../column/table-column.directive';\n\n@Directive({\n selector: '[graniteColumnSize]',\n})\nexport class GraniteColumnSizeDirective implements OnChanges {\n @Input() graniteColumnSize: GranitTableColumnSize = 'medium';\n\n @HostBinding('class') get columnSizeClass(): string {\n return `column-size-${this.sizeMap[this.graniteColumnSize]}`;\n }\n\n private readonly sizeMap: Record<GranitTableColumnSize, string> = {\n small: 'sm',\n medium: 'md',\n large: 'lg',\n } as const;\n\n ngOnChanges(): void {\n if (!this.graniteColumnSize || !this.sizeMap[this.graniteColumnSize]) {\n this.graniteColumnSize = 'small';\n }\n }\n}\n","import {\n AfterContentChecked,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n Input,\n QueryList,\n TrackByFunction,\n ViewEncapsulation,\n} from '@angular/core';\n\nimport { GraniteTableColumnDirective } from './column/table-column.directive';\nimport { GraniteTableCellConstants } from './table-constants.library';\n\n@Component({\n selector: 'granite-table',\n templateUrl: './table.component.html',\n styleUrls: ['./table.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class GraniteTableComponent<T> implements AfterContentChecked {\n @Input()\n dataSource: any[] = [];\n\n @Input()\n horizontalScroll = false;\n\n @Input()\n trackBy: TrackByFunction<T>;\n\n @ContentChildren(GraniteTableColumnDirective)\n tableColumnsComponent: QueryList<GraniteTableColumnDirective>;\n\n readonly cellIdPrefix = GraniteTableCellConstants.CELL_ID_PREFIX;\n\n _columns: GraniteTableColumnDirective[];\n _displayedColumns: string[];\n\n constructor(private cd: ChangeDetectorRef) {}\n\n ngAfterContentChecked(): void {\n this.refreshData();\n this.cd.markForCheck();\n }\n\n _trackColumnName(index: number, column: GraniteTableColumnDirective): string {\n return column.name;\n }\n\n private refreshData(): void {\n this._columns = this.tableColumnsComponent.toArray();\n this._displayedColumns = this.tableColumnsComponent\n .toArray()\n .map((c) => c.name);\n }\n}\n","<div\n class=\"cdk-table-wrapper\"\n data-fnd=\"granite-table-wrapper\"\n [class.horizontal-scroll]=\"horizontalScroll\"\n>\n <table\n class=\"granite-table\"\n cdk-table\n [dataSource]=\"dataSource\"\n [trackBy]=\"trackBy\"\n >\n <ng-container\n *ngFor=\"\n let column of _columns;\n trackBy: _trackColumnName;\n let columnIndex = index\n \"\n [cdkColumnDef]=\"column.name\"\n >\n <th\n tabindex=\"0\"\n cdk-header-cell\n *cdkHeaderCellDef\n data-fnd=\"data-granite-table-header-cell\"\n [graniteColumnSize]=\"column.size\"\n [attr.data-granite-table-header-cell]=\"column.name\"\n graniteTableHeaderCell\n graniteCellAlignClasses\n [textAlign]=\"column.textAlign\"\n [class]=\"column.headerClass\"\n >\n {{ column.title ?? column.name | graniteTitle }}\n </th>\n\n <td\n tabindex=\"0\"\n cdk-cell\n *cdkCellDef=\"let row; let rowIndex = index\"\n data-fnd=\"data-granite-table-row-cell\"\n [attr.data-granite-table-cell]=\"column.name\"\n [graniteColumnSize]=\"column.size\"\n graniteCellAlignClasses\n [textAlign]=\"column.textAlign\"\n [class]=\"column.class\"\n [id]=\"cellIdPrefix + '-' + rowIndex + '-' + columnIndex\"\n >\n <granite-table-data-cell\n [value]=\"row[column.name]\"\n [row]=\"row\"\n [column]=\"column\"\n [rowIndex]=\"rowIndex\"\n [columnIndex]=\"columnIndex\"\n [tableCellTemplateRef]=\"column.tableCellTemplateRef\"\n ></granite-table-data-cell>\n </td>\n </ng-container>\n\n <tr\n tabindex=\"0\"\n cdk-header-row\n *cdkHeaderRowDef=\"_displayedColumns\"\n data-fnd=\"data-granite-table-header\"\n ></tr>\n <tr\n tabindex=\"0\"\n cdk-row\n *cdkRowDef=\"let row; columns: _displayedColumns\"\n data-fnd=\"data-granite-table-row\"\n ></tr>\n </table>\n</div>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { TableModule } from 'primeng/table';\n\nimport { PurePipesModule } from '@ifsworld/granite-components';\n\nimport { GraniteTableComponent } from './table.component';\nimport { GraniteTableColumnDirective } from './column/table-column.directive';\nimport { GraniteTableHeaderCellComponent } from './cell/table-header-cell.component';\nimport { GraniteTableDataCellComponent } from './cell/table-data-cell.component';\nimport { GraniteCellAlignClassesDirective } from './cell/cell-align/cell-align-classes.directive';\nimport { CdkTableModule } from '@angular/cdk/table';\nimport { GraniteColumnSizeDirective } from './column-size/column-size.directive';\n\n@NgModule({\n imports: [CommonModule, TableModule, PurePipesModule, CdkTableModule],\n declarations: [\n GraniteTableComponent,\n GraniteTableColumnDirective,\n GraniteTableHeaderCellComponent,\n GraniteTableDataCellComponent,\n GraniteCellAlignClassesDirective,\n GraniteColumnSizeDirective,\n ],\n exports: [GraniteTableComponent, GraniteTableColumnDirective],\n})\nexport class GraniteTableModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i3.GraniteTableHeaderCellComponent","i4.GraniteTableDataCellComponent","i5.GraniteCellAlignClassesDirective","i6.GraniteColumnSizeDirective"],"mappings":"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"}
@@ -9,10 +9,10 @@ import { Subject, fromEvent } from 'rxjs';
9
9
  import { takeUntil } from 'rxjs/operators';
10
10
 
11
11
  class GraniteTooltipComponent {
12
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GraniteTooltipComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
13
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: GraniteTooltipComponent, selector: "granite-tooltip", viewQueries: [{ propertyName: "_templateRef", first: true, predicate: TemplateRef, descendants: true }], ngImport: i0, template: "<ng-template>\n <div class=\"granite-tooltip\">\n <ng-content></ng-content>\n </div>\n</ng-template>\n", styles: [".granite-tooltip{background-color:var(--granite-color-background-inverse);color:var(--granite-color-text-inverse);font-size:var(--granite-font-size-body-small);line-height:var(--granite-line-height-regular);padding:var(--granite-spacing-8);margin:0 var(--granite-spacing-4);border-radius:var(--granite-radius-s);position:relative;filter:drop-shadow(var(--granite-shadow-m))}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
12
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: GraniteTooltipComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
13
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: GraniteTooltipComponent, selector: "granite-tooltip", viewQueries: [{ propertyName: "_templateRef", first: true, predicate: TemplateRef, descendants: true }], ngImport: i0, template: "<ng-template>\n <div class=\"granite-tooltip\">\n <ng-content></ng-content>\n </div>\n</ng-template>\n", styles: [".granite-tooltip{background-color:var(--granite-color-background-inverse);color:var(--granite-color-text-inverse);font-size:var(--granite-font-size-body-small);line-height:var(--granite-line-height-regular);padding:var(--granite-spacing-8);margin:0 var(--granite-spacing-4);border-radius:var(--granite-radius-s);position:relative;filter:drop-shadow(var(--granite-shadow-m))}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
14
14
  }
15
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GraniteTooltipComponent, decorators: [{
15
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: GraniteTooltipComponent, decorators: [{
16
16
  type: Component,
17
17
  args: [{ selector: 'granite-tooltip', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-template>\n <div class=\"granite-tooltip\">\n <ng-content></ng-content>\n </div>\n</ng-template>\n", styles: [".granite-tooltip{background-color:var(--granite-color-background-inverse);color:var(--granite-color-text-inverse);font-size:var(--granite-font-size-body-small);line-height:var(--granite-line-height-regular);padding:var(--granite-spacing-8);margin:0 var(--granite-spacing-4);border-radius:var(--granite-radius-s);position:relative;filter:drop-shadow(var(--granite-shadow-m))}\n"] }]
18
18
  }], propDecorators: { _templateRef: [{
@@ -122,10 +122,10 @@ class GraniteTooltipTriggerForDirective {
122
122
  _getTriggerElement() {
123
123
  return this._elementRef.nativeElement;
124
124
  }
125
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GraniteTooltipTriggerForDirective, deps: [{ token: i0.ElementRef }, { token: i1.Overlay }, { token: i0.ViewContainerRef }, { token: i2.FocusMonitor }], target: i0.ɵɵFactoryTarget.Directive }); }
126
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: GraniteTooltipTriggerForDirective, selector: "[graniteTooltipTriggerFor]", inputs: { tooltip: ["graniteTooltipTriggerFor", "tooltip"], hideDelay: "hideDelay", showDelay: "showDelay", showOnKeyboardFocus: "showOnKeyboardFocus", showOnClick: "showOnClick" }, host: { listeners: { "mouseenter": "_handleMouseenter($event)", "mouseleave": "_handleMouseleave($event)" } }, usesOnChanges: true, ngImport: i0 }); }
125
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: GraniteTooltipTriggerForDirective, deps: [{ token: i0.ElementRef }, { token: i1.Overlay }, { token: i0.ViewContainerRef }, { token: i2.FocusMonitor }], target: i0.ɵɵFactoryTarget.Directive }); }
126
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.4", type: GraniteTooltipTriggerForDirective, selector: "[graniteTooltipTriggerFor]", inputs: { tooltip: ["graniteTooltipTriggerFor", "tooltip"], hideDelay: "hideDelay", showDelay: "showDelay", showOnKeyboardFocus: "showOnKeyboardFocus", showOnClick: "showOnClick" }, host: { listeners: { "mouseenter": "_handleMouseenter($event)", "mouseleave": "_handleMouseleave($event)" } }, usesOnChanges: true, ngImport: i0 }); }
127
127
  }
128
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GraniteTooltipTriggerForDirective, decorators: [{
128
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: GraniteTooltipTriggerForDirective, decorators: [{
129
129
  type: Directive,
130
130
  args: [{
131
131
  selector: '[graniteTooltipTriggerFor]',
@@ -134,7 +134,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
134
134
  '(mouseleave)': '_handleMouseleave($event)',
135
135
  },
136
136
  }]
137
- }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.Overlay }, { type: i0.ViewContainerRef }, { type: i2.FocusMonitor }]; }, propDecorators: { tooltip: [{
137
+ }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.Overlay }, { type: i0.ViewContainerRef }, { type: i2.FocusMonitor }], propDecorators: { tooltip: [{
138
138
  type: Input,
139
139
  args: ['graniteTooltipTriggerFor']
140
140
  }], hideDelay: [{
@@ -148,11 +148,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
148
148
  }] } });
149
149
 
150
150
  class GraniteTooltipModule {
151
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GraniteTooltipModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
152
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: GraniteTooltipModule, declarations: [GraniteTooltipComponent, GraniteTooltipTriggerForDirective], imports: [CommonModule], exports: [GraniteTooltipComponent, GraniteTooltipTriggerForDirective] }); }
153
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GraniteTooltipModule, imports: [CommonModule] }); }
151
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: GraniteTooltipModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
152
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.4", ngImport: i0, type: GraniteTooltipModule, declarations: [GraniteTooltipComponent, GraniteTooltipTriggerForDirective], imports: [CommonModule], exports: [GraniteTooltipComponent, GraniteTooltipTriggerForDirective] }); }
153
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: GraniteTooltipModule, imports: [CommonModule] }); }
154
154
  }
155
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GraniteTooltipModule, decorators: [{
155
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: GraniteTooltipModule, decorators: [{
156
156
  type: NgModule,
157
157
  args: [{
158
158
  imports: [CommonModule],
@@ -1 +1 @@
1
- {"version":3,"file":"ifsworld-granite-components-tooltip.mjs","sources":["../../../../libs/granite-components/tooltip/src/lib/tooltip.component.ts","../../../../libs/granite-components/tooltip/src/lib/tooltip.component.html","../../../../libs/granite-components/tooltip/src/lib/tooltip-constants.library.ts","../../../../libs/granite-components/tooltip/src/lib/tooltip-trigger-for.directive.ts","../../../../libs/granite-components/tooltip/src/lib/tooltip.module.ts","../../../../libs/granite-components/tooltip/src/ifsworld-granite-components-tooltip.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n TemplateRef,\n ViewChild,\n} from '@angular/core';\n\n@Component({\n selector: 'granite-tooltip',\n templateUrl: './tooltip.component.html',\n styleUrls: ['./tooltip.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class GraniteTooltipComponent {\n @ViewChild(TemplateRef) _templateRef: TemplateRef<any>;\n}\n","<ng-template>\n <div class=\"granite-tooltip\">\n <ng-content></ng-content>\n </div>\n</ng-template>\n","export class GraniteTooltipConstants {\n static readonly OFFSET_Y: number = 8;\n}\n","import { FocusMonitor } from '@angular/cdk/a11y';\nimport {\n ConnectionPositionPair,\n Overlay,\n OverlayRef,\n} from '@angular/cdk/overlay';\nimport { TemplatePortal } from '@angular/cdk/portal';\nimport {\n Directive,\n ElementRef,\n Input,\n OnChanges,\n OnDestroy,\n OnInit,\n SimpleChanges,\n ViewContainerRef,\n} from '@angular/core';\nimport { fromEvent, Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { GraniteTooltipConstants } from './tooltip-constants.library';\nimport { GraniteTooltipComponent } from './tooltip.component';\n\n@Directive({\n selector: '[graniteTooltipTriggerFor]',\n host: {\n '(mouseenter)': '_handleMouseenter($event)',\n '(mouseleave)': '_handleMouseleave($event)',\n },\n})\nexport class GraniteTooltipTriggerForDirective\n implements OnDestroy, OnInit, OnChanges\n{\n @Input('graniteTooltipTriggerFor')\n tooltip: GraniteTooltipComponent;\n\n @Input()\n hideDelay: number = 0;\n\n @Input()\n showDelay: number = 0;\n\n @Input()\n showOnKeyboardFocus: boolean = false;\n\n @Input()\n showOnClick: boolean = false;\n\n private _overlayRef: OverlayRef;\n private _destroy: Subject<void> = new Subject();\n\n private _detachOverlayTimeoutId: number | null;\n private _attachOverlayTimeoutId: number | null;\n\n constructor(\n private _elementRef: ElementRef,\n private _overlay: Overlay,\n private _viewContainerRef: ViewContainerRef,\n private _focusMonitor: FocusMonitor\n ) {}\n\n ngOnInit(): void {\n this._createOverlay();\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes.showOnKeyboardFocus) {\n this._handleKeyboardFocus();\n }\n if (changes.showOnClick) {\n this._handleClick();\n }\n }\n\n ngOnDestroy(): void {\n this._detachOverlay(this.hideDelay);\n this._destroy.next();\n this._destroy.complete();\n }\n\n _handleMouseenter(): void {\n if (!this.showOnClick) {\n this._attachOverlay(this.showDelay);\n }\n }\n\n _handleMouseleave(): void {\n this._detachOverlay(this.hideDelay);\n }\n\n private _handleClick(): void {\n fromEvent(this._getTriggerElement(), 'click')\n .pipe(takeUntil(this._destroy))\n .subscribe(() => {\n this._attachOverlay(this.showDelay);\n });\n }\n\n private _handleKeyboardFocus(): void {\n this._focusMonitor\n .monitor(this._getTriggerElement())\n .pipe(takeUntil(this._destroy))\n .subscribe((origin) => {\n if (!origin) {\n this._detachOverlay(this.hideDelay);\n } else if (origin === 'keyboard') {\n this._attachOverlay(this.hideDelay);\n }\n });\n }\n\n private _createOverlay(): void {\n const scrollStrategy = this._overlay.scrollStrategies.reposition();\n const positionStrategy = this._overlay\n .position()\n .flexibleConnectedTo(this._getTriggerElement())\n .withPositions([\n new ConnectionPositionPair(\n { originX: 'center', originY: 'bottom' },\n { overlayX: 'center', overlayY: 'top' },\n undefined,\n GraniteTooltipConstants.OFFSET_Y,\n 'granite-tooltip-position-below'\n ),\n new ConnectionPositionPair(\n { originX: 'center', originY: 'top' },\n { overlayX: 'center', overlayY: 'bottom' },\n undefined,\n -GraniteTooltipConstants.OFFSET_Y,\n 'granite-tooltip-position-above'\n ),\n ])\n .withPush(true);\n\n this._overlayRef = this._overlay.create({\n positionStrategy,\n scrollStrategy,\n });\n\n this._overlayRef\n .backdropClick()\n .pipe(takeUntil(this._destroy))\n .subscribe(() => {\n this._detachOverlay(this.hideDelay);\n });\n }\n\n private _attachOverlay(delay: number): void {\n if (!this._overlayRef.hasAttached()) {\n clearTimeout(this._detachOverlayTimeoutId);\n\n this._attachOverlayTimeoutId = window.setTimeout(() => {\n const portal = new TemplatePortal(\n this.tooltip._templateRef,\n this._viewContainerRef\n );\n this._overlayRef.attach(portal);\n }, delay);\n }\n }\n\n private _detachOverlay(delay: number): void {\n if (this._overlayRef.hasAttached()) {\n clearTimeout(this._attachOverlayTimeoutId);\n\n this._detachOverlayTimeoutId = window.setTimeout(() => {\n this._overlayRef.detach();\n this._detachOverlayTimeoutId = null;\n }, delay);\n }\n }\n\n private _getTriggerElement(): HTMLInputElement {\n return this._elementRef.nativeElement;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { GraniteTooltipComponent } from './tooltip.component';\nimport { GraniteTooltipTriggerForDirective } from './tooltip-trigger-for.directive';\n\n@NgModule({\n imports: [CommonModule],\n declarations: [GraniteTooltipComponent, GraniteTooltipTriggerForDirective],\n exports: [GraniteTooltipComponent, GraniteTooltipTriggerForDirective],\n})\nexport class GraniteTooltipModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ifsworld-granite-components-tooltip.mjs","sources":["../../../../libs/granite-components/tooltip/src/lib/tooltip.component.ts","../../../../libs/granite-components/tooltip/src/lib/tooltip.component.html","../../../../libs/granite-components/tooltip/src/lib/tooltip-constants.library.ts","../../../../libs/granite-components/tooltip/src/lib/tooltip-trigger-for.directive.ts","../../../../libs/granite-components/tooltip/src/lib/tooltip.module.ts","../../../../libs/granite-components/tooltip/src/ifsworld-granite-components-tooltip.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n TemplateRef,\n ViewChild,\n} from '@angular/core';\n\n@Component({\n selector: 'granite-tooltip',\n templateUrl: './tooltip.component.html',\n styleUrls: ['./tooltip.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class GraniteTooltipComponent {\n @ViewChild(TemplateRef) _templateRef: TemplateRef<any>;\n}\n","<ng-template>\n <div class=\"granite-tooltip\">\n <ng-content></ng-content>\n </div>\n</ng-template>\n","export class GraniteTooltipConstants {\n static readonly OFFSET_Y: number = 8;\n}\n","import { FocusMonitor } from '@angular/cdk/a11y';\nimport {\n ConnectionPositionPair,\n Overlay,\n OverlayRef,\n} from '@angular/cdk/overlay';\nimport { TemplatePortal } from '@angular/cdk/portal';\nimport {\n Directive,\n ElementRef,\n Input,\n OnChanges,\n OnDestroy,\n OnInit,\n SimpleChanges,\n ViewContainerRef,\n} from '@angular/core';\nimport { fromEvent, Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { GraniteTooltipConstants } from './tooltip-constants.library';\nimport { GraniteTooltipComponent } from './tooltip.component';\n\n@Directive({\n selector: '[graniteTooltipTriggerFor]',\n host: {\n '(mouseenter)': '_handleMouseenter($event)',\n '(mouseleave)': '_handleMouseleave($event)',\n },\n})\nexport class GraniteTooltipTriggerForDirective\n implements OnDestroy, OnInit, OnChanges\n{\n @Input('graniteTooltipTriggerFor')\n tooltip: GraniteTooltipComponent;\n\n @Input()\n hideDelay: number = 0;\n\n @Input()\n showDelay: number = 0;\n\n @Input()\n showOnKeyboardFocus: boolean = false;\n\n @Input()\n showOnClick: boolean = false;\n\n private _overlayRef: OverlayRef;\n private _destroy: Subject<void> = new Subject();\n\n private _detachOverlayTimeoutId: number | null;\n private _attachOverlayTimeoutId: number | null;\n\n constructor(\n private _elementRef: ElementRef,\n private _overlay: Overlay,\n private _viewContainerRef: ViewContainerRef,\n private _focusMonitor: FocusMonitor\n ) {}\n\n ngOnInit(): void {\n this._createOverlay();\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes.showOnKeyboardFocus) {\n this._handleKeyboardFocus();\n }\n if (changes.showOnClick) {\n this._handleClick();\n }\n }\n\n ngOnDestroy(): void {\n this._detachOverlay(this.hideDelay);\n this._destroy.next();\n this._destroy.complete();\n }\n\n _handleMouseenter(): void {\n if (!this.showOnClick) {\n this._attachOverlay(this.showDelay);\n }\n }\n\n _handleMouseleave(): void {\n this._detachOverlay(this.hideDelay);\n }\n\n private _handleClick(): void {\n fromEvent(this._getTriggerElement(), 'click')\n .pipe(takeUntil(this._destroy))\n .subscribe(() => {\n this._attachOverlay(this.showDelay);\n });\n }\n\n private _handleKeyboardFocus(): void {\n this._focusMonitor\n .monitor(this._getTriggerElement())\n .pipe(takeUntil(this._destroy))\n .subscribe((origin) => {\n if (!origin) {\n this._detachOverlay(this.hideDelay);\n } else if (origin === 'keyboard') {\n this._attachOverlay(this.hideDelay);\n }\n });\n }\n\n private _createOverlay(): void {\n const scrollStrategy = this._overlay.scrollStrategies.reposition();\n const positionStrategy = this._overlay\n .position()\n .flexibleConnectedTo(this._getTriggerElement())\n .withPositions([\n new ConnectionPositionPair(\n { originX: 'center', originY: 'bottom' },\n { overlayX: 'center', overlayY: 'top' },\n undefined,\n GraniteTooltipConstants.OFFSET_Y,\n 'granite-tooltip-position-below'\n ),\n new ConnectionPositionPair(\n { originX: 'center', originY: 'top' },\n { overlayX: 'center', overlayY: 'bottom' },\n undefined,\n -GraniteTooltipConstants.OFFSET_Y,\n 'granite-tooltip-position-above'\n ),\n ])\n .withPush(true);\n\n this._overlayRef = this._overlay.create({\n positionStrategy,\n scrollStrategy,\n });\n\n this._overlayRef\n .backdropClick()\n .pipe(takeUntil(this._destroy))\n .subscribe(() => {\n this._detachOverlay(this.hideDelay);\n });\n }\n\n private _attachOverlay(delay: number): void {\n if (!this._overlayRef.hasAttached()) {\n clearTimeout(this._detachOverlayTimeoutId);\n\n this._attachOverlayTimeoutId = window.setTimeout(() => {\n const portal = new TemplatePortal(\n this.tooltip._templateRef,\n this._viewContainerRef\n );\n this._overlayRef.attach(portal);\n }, delay);\n }\n }\n\n private _detachOverlay(delay: number): void {\n if (this._overlayRef.hasAttached()) {\n clearTimeout(this._attachOverlayTimeoutId);\n\n this._detachOverlayTimeoutId = window.setTimeout(() => {\n this._overlayRef.detach();\n this._detachOverlayTimeoutId = null;\n }, delay);\n }\n }\n\n private _getTriggerElement(): HTMLInputElement {\n return this._elementRef.nativeElement;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { GraniteTooltipComponent } from './tooltip.component';\nimport { GraniteTooltipTriggerForDirective } from './tooltip-trigger-for.directive';\n\n@NgModule({\n imports: [CommonModule],\n declarations: [GraniteTooltipComponent, GraniteTooltipTriggerForDirective],\n exports: [GraniteTooltipComponent, GraniteTooltipTriggerForDirective],\n})\nexport class GraniteTooltipModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}