@hermes-ui/angular 0.1.5 → 0.1.7

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 (130) hide show
  1. package/README.md +52 -52
  2. package/button/_properties.buttons.scss +387 -387
  3. package/fesm2022/hermes-ui-angular-accordion.mjs.map +1 -1
  4. package/fesm2022/hermes-ui-angular-addons-a11y.mjs.map +1 -1
  5. package/fesm2022/hermes-ui-angular-addons-card-container.mjs.map +1 -1
  6. package/fesm2022/hermes-ui-angular-addons-certificate-viewer.mjs.map +1 -1
  7. package/fesm2022/hermes-ui-angular-addons-datagrid-filters.mjs.map +1 -1
  8. package/fesm2022/hermes-ui-angular-addons-datagrid.mjs +28 -28
  9. package/fesm2022/hermes-ui-angular-addons-datagrid.mjs.map +1 -1
  10. package/fesm2022/hermes-ui-angular-addons-dialog.mjs.map +1 -1
  11. package/fesm2022/hermes-ui-angular-addons-menu.mjs +8 -8
  12. package/fesm2022/hermes-ui-angular-addons-menu.mjs.map +1 -1
  13. package/fesm2022/hermes-ui-angular-addons-property-view.mjs.map +1 -1
  14. package/fesm2022/hermes-ui-angular-addons-stepper.mjs.map +1 -1
  15. package/fesm2022/hermes-ui-angular-addons-tabs.mjs.map +1 -1
  16. package/fesm2022/hermes-ui-angular-addons-testing.mjs +78 -78
  17. package/fesm2022/hermes-ui-angular-addons-testing.mjs.map +1 -1
  18. package/fesm2022/hermes-ui-angular-addons-theme-builder.mjs +1 -1
  19. package/fesm2022/hermes-ui-angular-addons-theme-builder.mjs.map +1 -1
  20. package/fesm2022/hermes-ui-angular-addons-var.mjs.map +1 -1
  21. package/fesm2022/hermes-ui-angular-addons-wizard.mjs.map +1 -1
  22. package/fesm2022/hermes-ui-angular-addons-workflow.mjs.map +1 -1
  23. package/fesm2022/hermes-ui-angular-button.mjs +74 -74
  24. package/fesm2022/hermes-ui-angular-button.mjs.map +1 -1
  25. package/fesm2022/hermes-ui-angular-card.mjs +48 -0
  26. package/fesm2022/hermes-ui-angular-card.mjs.map +1 -0
  27. package/fesm2022/hermes-ui-angular-collapsible-panel.mjs.map +1 -1
  28. package/fesm2022/hermes-ui-angular-data-datagrid.mjs +926 -926
  29. package/fesm2022/hermes-ui-angular-data-datagrid.mjs.map +1 -1
  30. package/fesm2022/hermes-ui-angular-data-stack-view.mjs +114 -114
  31. package/fesm2022/hermes-ui-angular-data-stack-view.mjs.map +1 -1
  32. package/fesm2022/hermes-ui-angular-data-tree-view.mjs +12 -12
  33. package/fesm2022/hermes-ui-angular-data-tree-view.mjs.map +1 -1
  34. package/fesm2022/hermes-ui-angular-data.mjs.map +1 -1
  35. package/fesm2022/hermes-ui-angular-divider.mjs +46 -0
  36. package/fesm2022/hermes-ui-angular-divider.mjs.map +1 -0
  37. package/fesm2022/hermes-ui-angular-emphasis-alert.mjs.map +1 -1
  38. package/fesm2022/hermes-ui-angular-emphasis-badge.mjs.map +1 -1
  39. package/fesm2022/hermes-ui-angular-emphasis-label.mjs +16 -16
  40. package/fesm2022/hermes-ui-angular-emphasis-label.mjs.map +1 -1
  41. package/fesm2022/hermes-ui-angular-emphasis.mjs.map +1 -1
  42. package/fesm2022/hermes-ui-angular-forms-checkbox.mjs +50 -50
  43. package/fesm2022/hermes-ui-angular-forms-checkbox.mjs.map +1 -1
  44. package/fesm2022/hermes-ui-angular-forms-combobox.mjs +126 -126
  45. package/fesm2022/hermes-ui-angular-forms-combobox.mjs.map +1 -1
  46. package/fesm2022/hermes-ui-angular-forms-common.mjs.map +1 -1
  47. package/fesm2022/hermes-ui-angular-forms-datalist.mjs +46 -46
  48. package/fesm2022/hermes-ui-angular-forms-datalist.mjs.map +1 -1
  49. package/fesm2022/hermes-ui-angular-forms-datepicker.mjs +375 -375
  50. package/fesm2022/hermes-ui-angular-forms-datepicker.mjs.map +1 -1
  51. package/fesm2022/hermes-ui-angular-forms-file-input.mjs +190 -190
  52. package/fesm2022/hermes-ui-angular-forms-file-input.mjs.map +1 -1
  53. package/fesm2022/hermes-ui-angular-forms-input.mjs +52 -52
  54. package/fesm2022/hermes-ui-angular-forms-input.mjs.map +1 -1
  55. package/fesm2022/hermes-ui-angular-forms-native-select.mjs +38 -38
  56. package/fesm2022/hermes-ui-angular-forms-native-select.mjs.map +1 -1
  57. package/fesm2022/hermes-ui-angular-forms-number-input.mjs +80 -80
  58. package/fesm2022/hermes-ui-angular-forms-number-input.mjs.map +1 -1
  59. package/fesm2022/hermes-ui-angular-forms-password.mjs +58 -58
  60. package/fesm2022/hermes-ui-angular-forms-password.mjs.map +1 -1
  61. package/fesm2022/hermes-ui-angular-forms-radio.mjs +50 -50
  62. package/fesm2022/hermes-ui-angular-forms-radio.mjs.map +1 -1
  63. package/fesm2022/hermes-ui-angular-forms-range.mjs +44 -44
  64. package/fesm2022/hermes-ui-angular-forms-range.mjs.map +1 -1
  65. package/fesm2022/hermes-ui-angular-forms-select.mjs +8 -8
  66. package/fesm2022/hermes-ui-angular-forms-select.mjs.map +1 -1
  67. package/fesm2022/hermes-ui-angular-forms-textarea.mjs +38 -38
  68. package/fesm2022/hermes-ui-angular-forms-textarea.mjs.map +1 -1
  69. package/fesm2022/hermes-ui-angular-forms.mjs.map +1 -1
  70. package/fesm2022/hermes-ui-angular-icon.mjs.map +1 -1
  71. package/fesm2022/hermes-ui-angular-layout-breadcrumbs.mjs.map +1 -1
  72. package/fesm2022/hermes-ui-angular-layout-main-container.mjs.map +1 -1
  73. package/fesm2022/hermes-ui-angular-layout-nav.mjs +46 -46
  74. package/fesm2022/hermes-ui-angular-layout-nav.mjs.map +1 -1
  75. package/fesm2022/hermes-ui-angular-layout-tabs.mjs +146 -146
  76. package/fesm2022/hermes-ui-angular-layout-tabs.mjs.map +1 -1
  77. package/fesm2022/hermes-ui-angular-layout-vertical-nav.mjs +31 -3
  78. package/fesm2022/hermes-ui-angular-layout-vertical-nav.mjs.map +1 -1
  79. package/fesm2022/hermes-ui-angular-layout.mjs.map +1 -1
  80. package/fesm2022/hermes-ui-angular-modal.mjs.map +1 -1
  81. package/fesm2022/hermes-ui-angular-pagination.mjs +116 -0
  82. package/fesm2022/hermes-ui-angular-pagination.mjs.map +1 -0
  83. package/fesm2022/hermes-ui-angular-popover-common.mjs +26 -3
  84. package/fesm2022/hermes-ui-angular-popover-common.mjs.map +1 -1
  85. package/fesm2022/hermes-ui-angular-popover-dropdown.mjs.map +1 -1
  86. package/fesm2022/hermes-ui-angular-popover-signpost.mjs +66 -66
  87. package/fesm2022/hermes-ui-angular-popover-signpost.mjs.map +1 -1
  88. package/fesm2022/hermes-ui-angular-popover-tooltip.mjs.map +1 -1
  89. package/fesm2022/hermes-ui-angular-popover.mjs.map +1 -1
  90. package/fesm2022/hermes-ui-angular-progress-progress-bars.mjs +10 -10
  91. package/fesm2022/hermes-ui-angular-progress-progress-bars.mjs.map +1 -1
  92. package/fesm2022/hermes-ui-angular-progress-spinner.mjs.map +1 -1
  93. package/fesm2022/hermes-ui-angular-stepper.mjs.map +1 -1
  94. package/fesm2022/hermes-ui-angular-timeline.mjs.map +1 -1
  95. package/fesm2022/hermes-ui-angular-toast.mjs +4 -4
  96. package/fesm2022/hermes-ui-angular-toast.mjs.map +1 -1
  97. package/fesm2022/hermes-ui-angular-utils-conditional.mjs.map +1 -1
  98. package/fesm2022/hermes-ui-angular-utils.mjs.map +1 -1
  99. package/fesm2022/hermes-ui-angular-wizard.mjs +56 -56
  100. package/fesm2022/hermes-ui-angular-wizard.mjs.map +1 -1
  101. package/fesm2022/hermes-ui-angular.mjs +16 -3
  102. package/fesm2022/hermes-ui-angular.mjs.map +1 -1
  103. package/hermes-ui.scss +7 -7
  104. package/layout/vertical-nav/_mixins.vertical-nav.scss +3 -7
  105. package/layout/vertical-nav/_properties.vertical-nav.scss +10 -5
  106. package/layout/vertical-nav/_variables.vertical-nav.scss +2 -0
  107. package/layout/vertical-nav/_vertical-nav.clarity.scss +14 -0
  108. package/package.json +13 -1
  109. package/popover/dropdown/_dropdown.clarity.scss +8 -7
  110. package/popover/dropdown/_menu-mixins.clarity.scss +22 -6
  111. package/popover/dropdown/_properties.dropdown.scss +20 -0
  112. package/popover/dropdown/_variables.dropdown.scss +7 -0
  113. package/toast/README.md +65 -65
  114. package/toast/_properties.toast.scss +56 -56
  115. package/toast/_toast.clarity.scss +190 -190
  116. package/toast/_variables.toast.scss +33 -33
  117. package/types/hermes-ui-angular-card.d.ts +24 -0
  118. package/types/hermes-ui-angular-card.d.ts.map +1 -0
  119. package/types/hermes-ui-angular-data-datagrid.d.ts.map +1 -1
  120. package/types/hermes-ui-angular-divider.d.ts +20 -0
  121. package/types/hermes-ui-angular-divider.d.ts.map +1 -0
  122. package/types/hermes-ui-angular-layout-vertical-nav.d.ts +11 -1
  123. package/types/hermes-ui-angular-layout-vertical-nav.d.ts.map +1 -1
  124. package/types/hermes-ui-angular-pagination.d.ts +52 -0
  125. package/types/hermes-ui-angular-pagination.d.ts.map +1 -0
  126. package/types/hermes-ui-angular-popover-common.d.ts +4 -3
  127. package/types/hermes-ui-angular-popover-common.d.ts.map +1 -1
  128. package/types/hermes-ui-angular-wizard.d.ts.map +1 -1
  129. package/types/hermes-ui-angular.d.ts +23 -17
  130. package/types/hermes-ui-angular.d.ts.map +1 -1
@@ -1273,46 +1273,46 @@ class HermesDatagridColumnSeparator {
1273
1273
  return event.key === Keys.ArrowRight;
1274
1274
  }
1275
1275
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: HermesDatagridColumnSeparator, deps: [{ token: ColumnResizerService }, { token: i0.Renderer2 }, { token: i0.NgZone }, { token: TableSizeService }, { token: i2.HermesCommonStringsService }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Component }); }
1276
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.22", type: HermesDatagridColumnSeparator, isStandalone: false, selector: "hermes-dg-column-separator", host: { properties: { "class.datagrid-column-separator": "true" } }, viewQueries: [{ propertyName: "resizeTrackerRef", first: true, predicate: ["resizeTracker"], descendants: true }, { propertyName: "columnHandleRef", first: true, predicate: ["columnHandle"], descendants: true }], ngImport: i0, template: `
1277
- <button
1278
- type="button"
1279
- class="datagrid-column-handle"
1280
- [attr.aria-label]="commonString.keys.columnSeparatorAriaLabel"
1281
- [attr.aria-describedby]="descriptionId"
1282
- cdkDrag
1283
- cdkDragLockAxis="x"
1284
- (cdkDragStarted)="showTracker()"
1285
- (cdkDragMoved)="moveTracker($event.distance.x)"
1286
- (cdkDragEnded)="hideTracker(); $event.source._dragRef.reset()"
1287
- #columnHandle
1288
- ></button>
1289
- <span class="hermes-sr-only" [attr.id]="descriptionId">
1290
- {{ commonString.keys.columnSeparatorDescription }}
1291
- </span>
1292
- <div class="datagrid-column-resize-tracker" #resizeTracker></div>
1276
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.22", type: HermesDatagridColumnSeparator, isStandalone: false, selector: "hermes-dg-column-separator", host: { properties: { "class.datagrid-column-separator": "true" } }, viewQueries: [{ propertyName: "resizeTrackerRef", first: true, predicate: ["resizeTracker"], descendants: true }, { propertyName: "columnHandleRef", first: true, predicate: ["columnHandle"], descendants: true }], ngImport: i0, template: `
1277
+ <button
1278
+ type="button"
1279
+ class="datagrid-column-handle"
1280
+ [attr.aria-label]="commonString.keys.columnSeparatorAriaLabel"
1281
+ [attr.aria-describedby]="descriptionId"
1282
+ cdkDrag
1283
+ cdkDragLockAxis="x"
1284
+ (cdkDragStarted)="showTracker()"
1285
+ (cdkDragMoved)="moveTracker($event.distance.x)"
1286
+ (cdkDragEnded)="hideTracker(); $event.source._dragRef.reset()"
1287
+ #columnHandle
1288
+ ></button>
1289
+ <span class="hermes-sr-only" [attr.id]="descriptionId">
1290
+ {{ commonString.keys.columnSeparatorDescription }}
1291
+ </span>
1292
+ <div class="datagrid-column-resize-tracker" #resizeTracker></div>
1293
1293
  `, isInline: true, dependencies: [{ kind: "directive", type: i2.CdkDragModule_CdkDrag, selector: "[cdkDrag]" }] }); }
1294
1294
  }
1295
1295
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: HermesDatagridColumnSeparator, decorators: [{
1296
1296
  type: Component,
1297
1297
  args: [{
1298
1298
  selector: 'hermes-dg-column-separator',
1299
- template: `
1300
- <button
1301
- type="button"
1302
- class="datagrid-column-handle"
1303
- [attr.aria-label]="commonString.keys.columnSeparatorAriaLabel"
1304
- [attr.aria-describedby]="descriptionId"
1305
- cdkDrag
1306
- cdkDragLockAxis="x"
1307
- (cdkDragStarted)="showTracker()"
1308
- (cdkDragMoved)="moveTracker($event.distance.x)"
1309
- (cdkDragEnded)="hideTracker(); $event.source._dragRef.reset()"
1310
- #columnHandle
1311
- ></button>
1312
- <span class="hermes-sr-only" [attr.id]="descriptionId">
1313
- {{ commonString.keys.columnSeparatorDescription }}
1314
- </span>
1315
- <div class="datagrid-column-resize-tracker" #resizeTracker></div>
1299
+ template: `
1300
+ <button
1301
+ type="button"
1302
+ class="datagrid-column-handle"
1303
+ [attr.aria-label]="commonString.keys.columnSeparatorAriaLabel"
1304
+ [attr.aria-describedby]="descriptionId"
1305
+ cdkDrag
1306
+ cdkDragLockAxis="x"
1307
+ (cdkDragStarted)="showTracker()"
1308
+ (cdkDragMoved)="moveTracker($event.distance.x)"
1309
+ (cdkDragEnded)="hideTracker(); $event.source._dragRef.reset()"
1310
+ #columnHandle
1311
+ ></button>
1312
+ <span class="hermes-sr-only" [attr.id]="descriptionId">
1313
+ {{ commonString.keys.columnSeparatorDescription }}
1314
+ </span>
1315
+ <div class="datagrid-column-resize-tracker" #resizeTracker></div>
1316
1316
  `,
1317
1317
  host: {
1318
1318
  '[class.datagrid-column-separator]': 'true',
@@ -2075,41 +2075,41 @@ class HermesDatagridFilter extends DatagridFilterRegistrar {
2075
2075
  this.subs.forEach(sub => sub.unsubscribe());
2076
2076
  }
2077
2077
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: HermesDatagridFilter, deps: [{ token: FiltersProvider }, { token: i2.HermesCommonStringsService }, { token: i3.HermesPopoverService }, { token: KeyNavigationGridController, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
2078
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "21.2.22", type: HermesDatagridFilter, isStandalone: false, selector: "hermes-dg-filter", inputs: { open: ["hermesDgFilterOpen", "open", booleanAttribute], customFilter: ["hermesDgFilter", "customFilter"] }, outputs: { openChange: "hermesDgFilterOpenChange" }, providers: [{ provide: CustomFilter, useExisting: HermesDatagridFilter }], viewQueries: [{ propertyName: "anchor", first: true, predicate: ["anchor"], descendants: true, read: ElementRef }], usesInheritance: true, ngImport: i0, template: `
2079
- <button
2080
- class="datagrid-filter-toggle"
2081
- type="button"
2082
- #anchor
2083
- [attr.aria-expanded]="ariaExpanded"
2084
- [attr.aria-controls]="popoverId"
2085
- hermesPopoverOrigin
2086
- hermesPopoverOpenCloseButton
2087
- [class.datagrid-filter-open]="open"
2088
- [class.datagrid-filtered]="active"
2089
- >
2090
- <hermes-icon
2091
- [status]="active ? 'info' : null"
2092
- [shape]="active ? 'filter-grid-circle' : 'filter-grid'"
2093
- solid
2094
- ></hermes-icon>
2095
- </button>
2096
-
2097
- <div
2098
- class="datagrid-filter"
2099
- [id]="popoverId"
2100
- cdkTrapFocus
2101
- *hermesPopoverContent="open; at: popoverPosition; type: popoverType; outsideClickToClose: true; scrollToClose: false"
2102
- role="dialog"
2103
- [attr.aria-label]="commonStrings.keys.datagridFilterDialogAriaLabel"
2104
- >
2105
- <div class="datagrid-filter-close-wrapper">
2106
- <button type="button" class="close" hermesPopoverCloseButton>
2107
- <hermes-icon shape="window-close" [attr.title]="commonStrings.keys.close"></hermes-icon>
2108
- </button>
2109
- </div>
2110
-
2111
- <ng-content></ng-content>
2112
- </div>
2078
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "21.2.22", type: HermesDatagridFilter, isStandalone: false, selector: "hermes-dg-filter", inputs: { open: ["hermesDgFilterOpen", "open", booleanAttribute], customFilter: ["hermesDgFilter", "customFilter"] }, outputs: { openChange: "hermesDgFilterOpenChange" }, providers: [{ provide: CustomFilter, useExisting: HermesDatagridFilter }], viewQueries: [{ propertyName: "anchor", first: true, predicate: ["anchor"], descendants: true, read: ElementRef }], usesInheritance: true, ngImport: i0, template: `
2079
+ <button
2080
+ class="datagrid-filter-toggle"
2081
+ type="button"
2082
+ #anchor
2083
+ [attr.aria-expanded]="ariaExpanded"
2084
+ [attr.aria-controls]="popoverId"
2085
+ hermesPopoverOrigin
2086
+ hermesPopoverOpenCloseButton
2087
+ [class.datagrid-filter-open]="open"
2088
+ [class.datagrid-filtered]="active"
2089
+ >
2090
+ <hermes-icon
2091
+ [status]="active ? 'info' : null"
2092
+ [shape]="active ? 'filter-grid-circle' : 'filter-grid'"
2093
+ solid
2094
+ ></hermes-icon>
2095
+ </button>
2096
+
2097
+ <div
2098
+ class="datagrid-filter"
2099
+ [id]="popoverId"
2100
+ cdkTrapFocus
2101
+ *hermesPopoverContent="open; at: popoverPosition; type: popoverType; outsideClickToClose: true; scrollToClose: false"
2102
+ role="dialog"
2103
+ [attr.aria-label]="commonStrings.keys.datagridFilterDialogAriaLabel"
2104
+ >
2105
+ <div class="datagrid-filter-close-wrapper">
2106
+ <button type="button" class="close" hermesPopoverCloseButton>
2107
+ <hermes-icon shape="window-close" [attr.title]="commonStrings.keys.close"></hermes-icon>
2108
+ </button>
2109
+ </div>
2110
+
2111
+ <ng-content></ng-content>
2112
+ </div>
2113
2113
  `, isInline: true, dependencies: [{ kind: "directive", type: i2.CdkTrapFocusModule_CdkTrapFocus, selector: "[cdkTrapFocus]" }, { kind: "component", type: i5.HermesIcon, selector: "hermes-icon, hermes-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "directive", type: i3.HermesPopoverOrigin, selector: "[hermesPopoverOrigin]" }, { kind: "directive", type: i3.HermesPopoverCloseButton, selector: "[hermesPopoverCloseButton]", outputs: ["hermesPopoverOnCloseChange"] }, { kind: "directive", type: i3.HermesPopoverOpenCloseButton, selector: "[hermesPopoverOpenCloseButton]", outputs: ["hermesPopoverOpenCloseChange"] }, { kind: "directive", type: i3.HermesPopoverContent, selector: "[hermesPopoverContent]", inputs: ["hermesPopoverContent", "hermesPopoverContentAt", "hermesPopoverContentAvailablePositions", "hermesPopoverContentType", "hermesPopoverContentOutsideClickToClose", "hermesPopoverContentScrollToClose", "hermesPopoverContentOrigin"] }] }); }
2114
2114
  }
2115
2115
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: HermesDatagridFilter, decorators: [{
@@ -2118,41 +2118,41 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
2118
2118
  selector: 'hermes-dg-filter',
2119
2119
  // We register this component as a CustomFilter, for the parent column to detect it.
2120
2120
  providers: [{ provide: CustomFilter, useExisting: HermesDatagridFilter }],
2121
- template: `
2122
- <button
2123
- class="datagrid-filter-toggle"
2124
- type="button"
2125
- #anchor
2126
- [attr.aria-expanded]="ariaExpanded"
2127
- [attr.aria-controls]="popoverId"
2128
- hermesPopoverOrigin
2129
- hermesPopoverOpenCloseButton
2130
- [class.datagrid-filter-open]="open"
2131
- [class.datagrid-filtered]="active"
2132
- >
2133
- <hermes-icon
2134
- [status]="active ? 'info' : null"
2135
- [shape]="active ? 'filter-grid-circle' : 'filter-grid'"
2136
- solid
2137
- ></hermes-icon>
2138
- </button>
2139
-
2140
- <div
2141
- class="datagrid-filter"
2142
- [id]="popoverId"
2143
- cdkTrapFocus
2144
- *hermesPopoverContent="open; at: popoverPosition; type: popoverType; outsideClickToClose: true; scrollToClose: false"
2145
- role="dialog"
2146
- [attr.aria-label]="commonStrings.keys.datagridFilterDialogAriaLabel"
2147
- >
2148
- <div class="datagrid-filter-close-wrapper">
2149
- <button type="button" class="close" hermesPopoverCloseButton>
2150
- <hermes-icon shape="window-close" [attr.title]="commonStrings.keys.close"></hermes-icon>
2151
- </button>
2152
- </div>
2153
-
2154
- <ng-content></ng-content>
2155
- </div>
2121
+ template: `
2122
+ <button
2123
+ class="datagrid-filter-toggle"
2124
+ type="button"
2125
+ #anchor
2126
+ [attr.aria-expanded]="ariaExpanded"
2127
+ [attr.aria-controls]="popoverId"
2128
+ hermesPopoverOrigin
2129
+ hermesPopoverOpenCloseButton
2130
+ [class.datagrid-filter-open]="open"
2131
+ [class.datagrid-filtered]="active"
2132
+ >
2133
+ <hermes-icon
2134
+ [status]="active ? 'info' : null"
2135
+ [shape]="active ? 'filter-grid-circle' : 'filter-grid'"
2136
+ solid
2137
+ ></hermes-icon>
2138
+ </button>
2139
+
2140
+ <div
2141
+ class="datagrid-filter"
2142
+ [id]="popoverId"
2143
+ cdkTrapFocus
2144
+ *hermesPopoverContent="open; at: popoverPosition; type: popoverType; outsideClickToClose: true; scrollToClose: false"
2145
+ role="dialog"
2146
+ [attr.aria-label]="commonStrings.keys.datagridFilterDialogAriaLabel"
2147
+ >
2148
+ <div class="datagrid-filter-close-wrapper">
2149
+ <button type="button" class="close" hermesPopoverCloseButton>
2150
+ <hermes-icon shape="window-close" [attr.title]="commonStrings.keys.close"></hermes-icon>
2151
+ </button>
2152
+ </div>
2153
+
2154
+ <ng-content></ng-content>
2155
+ </div>
2156
2156
  `,
2157
2157
  standalone: false,
2158
2158
  }]
@@ -2311,39 +2311,39 @@ class DatagridNumericFilter extends DatagridFilterRegistrar {
2311
2311
  });
2312
2312
  }
2313
2313
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: DatagridNumericFilter, deps: [{ token: FiltersProvider }, { token: i2.DomAdapter }, { token: i2.HermesCommonStringsService }, { token: i3.HermesPopoverService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
2314
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.22", type: DatagridNumericFilter, isStandalone: false, selector: "hermes-dg-numeric-filter", inputs: { minPlaceholder: ["hermesFilterMinPlaceholder", "minPlaceholder"], maxPlaceholder: ["hermesFilterMaxPlaceholder", "maxPlaceholder"], fromLabel: ["hermesFilterFromLabel", "fromLabel"], toLabel: ["hermesFilterToLabel", "toLabel"], value: ["hermesFilterValue", "value"], customNumericFilter: ["hermesDgNumericFilter", "customNumericFilter"] }, outputs: { filterValueChange: "hermesFilterValueChange" }, providers: [{ provide: CustomFilter, useExisting: DatagridNumericFilter }], viewQueries: [{ propertyName: "input", first: true, predicate: ["input_low"], descendants: true }, { propertyName: "filterContainer", first: true, predicate: HermesDatagridFilter, descendants: true }], usesInheritance: true, ngImport: i0, template: `
2315
- <hermes-dg-filter [hermesDgFilter]="registered" [(hermesDgFilterOpen)]="open">
2316
- <div class="datagrid-numeric-filter-form">
2317
- <hermes-number-input-container>
2318
- <label class="hermes-control-label">{{ fromLabelValue }}</label>
2319
- <input
2320
- hermesNumberInput
2321
- class="datagrid-numeric-filter-input"
2322
- #input_low
2323
- type="number"
2324
- autocomplete="off"
2325
- name="low"
2326
- [(ngModel)]="low"
2327
- [placeholder]="minPlaceholderValue"
2328
- [attr.aria-label]="minPlaceholderValue"
2329
- />
2330
- </hermes-number-input-container>
2331
- <hermes-number-input-container>
2332
- <label class="hermes-control-label">{{ toLabelValue }}</label>
2333
- <input
2334
- hermesNumberInput
2335
- class="datagrid-numeric-filter-input"
2336
- #input_high
2337
- type="number"
2338
- autocomplete="off"
2339
- name="high"
2340
- [(ngModel)]="high"
2341
- [placeholder]="maxPlaceholderValue"
2342
- [attr.aria-label]="maxPlaceholderValue"
2343
- />
2344
- </hermes-number-input-container>
2345
- </div>
2346
- </hermes-dg-filter>
2314
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.22", type: DatagridNumericFilter, isStandalone: false, selector: "hermes-dg-numeric-filter", inputs: { minPlaceholder: ["hermesFilterMinPlaceholder", "minPlaceholder"], maxPlaceholder: ["hermesFilterMaxPlaceholder", "maxPlaceholder"], fromLabel: ["hermesFilterFromLabel", "fromLabel"], toLabel: ["hermesFilterToLabel", "toLabel"], value: ["hermesFilterValue", "value"], customNumericFilter: ["hermesDgNumericFilter", "customNumericFilter"] }, outputs: { filterValueChange: "hermesFilterValueChange" }, providers: [{ provide: CustomFilter, useExisting: DatagridNumericFilter }], viewQueries: [{ propertyName: "input", first: true, predicate: ["input_low"], descendants: true }, { propertyName: "filterContainer", first: true, predicate: HermesDatagridFilter, descendants: true }], usesInheritance: true, ngImport: i0, template: `
2315
+ <hermes-dg-filter [hermesDgFilter]="registered" [(hermesDgFilterOpen)]="open">
2316
+ <div class="datagrid-numeric-filter-form">
2317
+ <hermes-number-input-container>
2318
+ <label class="hermes-control-label">{{ fromLabelValue }}</label>
2319
+ <input
2320
+ hermesNumberInput
2321
+ class="datagrid-numeric-filter-input"
2322
+ #input_low
2323
+ type="number"
2324
+ autocomplete="off"
2325
+ name="low"
2326
+ [(ngModel)]="low"
2327
+ [placeholder]="minPlaceholderValue"
2328
+ [attr.aria-label]="minPlaceholderValue"
2329
+ />
2330
+ </hermes-number-input-container>
2331
+ <hermes-number-input-container>
2332
+ <label class="hermes-control-label">{{ toLabelValue }}</label>
2333
+ <input
2334
+ hermesNumberInput
2335
+ class="datagrid-numeric-filter-input"
2336
+ #input_high
2337
+ type="number"
2338
+ autocomplete="off"
2339
+ name="high"
2340
+ [(ngModel)]="high"
2341
+ [placeholder]="maxPlaceholderValue"
2342
+ [attr.aria-label]="maxPlaceholderValue"
2343
+ />
2344
+ </hermes-number-input-container>
2345
+ </div>
2346
+ </hermes-dg-filter>
2347
2347
  `, isInline: true, dependencies: [{ kind: "directive", type: i4.HermesControlLabel, selector: "label", inputs: ["id", "for"] }, { kind: "directive", type: i5$1.HermesNumberInput, selector: "input[type=\"number\"][hermesNumberInput]" }, { kind: "component", type: i5$1.HermesNumberInputContainer, selector: "hermes-number-input-container" }, { kind: "directive", type: i14.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i14.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i14.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i14.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: HermesDatagridFilter, selector: "hermes-dg-filter", inputs: ["hermesDgFilterOpen", "hermesDgFilter"], outputs: ["hermesDgFilterOpenChange"] }] }); }
2348
2348
  }
2349
2349
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: DatagridNumericFilter, decorators: [{
@@ -2351,39 +2351,39 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
2351
2351
  args: [{
2352
2352
  selector: 'hermes-dg-numeric-filter',
2353
2353
  providers: [{ provide: CustomFilter, useExisting: DatagridNumericFilter }],
2354
- template: `
2355
- <hermes-dg-filter [hermesDgFilter]="registered" [(hermesDgFilterOpen)]="open">
2356
- <div class="datagrid-numeric-filter-form">
2357
- <hermes-number-input-container>
2358
- <label class="hermes-control-label">{{ fromLabelValue }}</label>
2359
- <input
2360
- hermesNumberInput
2361
- class="datagrid-numeric-filter-input"
2362
- #input_low
2363
- type="number"
2364
- autocomplete="off"
2365
- name="low"
2366
- [(ngModel)]="low"
2367
- [placeholder]="minPlaceholderValue"
2368
- [attr.aria-label]="minPlaceholderValue"
2369
- />
2370
- </hermes-number-input-container>
2371
- <hermes-number-input-container>
2372
- <label class="hermes-control-label">{{ toLabelValue }}</label>
2373
- <input
2374
- hermesNumberInput
2375
- class="datagrid-numeric-filter-input"
2376
- #input_high
2377
- type="number"
2378
- autocomplete="off"
2379
- name="high"
2380
- [(ngModel)]="high"
2381
- [placeholder]="maxPlaceholderValue"
2382
- [attr.aria-label]="maxPlaceholderValue"
2383
- />
2384
- </hermes-number-input-container>
2385
- </div>
2386
- </hermes-dg-filter>
2354
+ template: `
2355
+ <hermes-dg-filter [hermesDgFilter]="registered" [(hermesDgFilterOpen)]="open">
2356
+ <div class="datagrid-numeric-filter-form">
2357
+ <hermes-number-input-container>
2358
+ <label class="hermes-control-label">{{ fromLabelValue }}</label>
2359
+ <input
2360
+ hermesNumberInput
2361
+ class="datagrid-numeric-filter-input"
2362
+ #input_low
2363
+ type="number"
2364
+ autocomplete="off"
2365
+ name="low"
2366
+ [(ngModel)]="low"
2367
+ [placeholder]="minPlaceholderValue"
2368
+ [attr.aria-label]="minPlaceholderValue"
2369
+ />
2370
+ </hermes-number-input-container>
2371
+ <hermes-number-input-container>
2372
+ <label class="hermes-control-label">{{ toLabelValue }}</label>
2373
+ <input
2374
+ hermesNumberInput
2375
+ class="datagrid-numeric-filter-input"
2376
+ #input_high
2377
+ type="number"
2378
+ autocomplete="off"
2379
+ name="high"
2380
+ [(ngModel)]="high"
2381
+ [placeholder]="maxPlaceholderValue"
2382
+ [attr.aria-label]="maxPlaceholderValue"
2383
+ />
2384
+ </hermes-number-input-container>
2385
+ </div>
2386
+ </hermes-dg-filter>
2387
2387
  `,
2388
2388
  standalone: false,
2389
2389
  }]
@@ -2521,22 +2521,22 @@ class DatagridStringFilter extends DatagridFilterRegistrar {
2521
2521
  });
2522
2522
  }
2523
2523
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: DatagridStringFilter, deps: [{ token: FiltersProvider }, { token: i2.DomAdapter }, { token: i2.HermesCommonStringsService }, { token: i3.HermesPopoverService }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
2524
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.22", type: DatagridStringFilter, isStandalone: false, selector: "hermes-dg-string-filter", inputs: { placeholder: ["hermesFilterPlaceholder", "placeholder"], label: ["hermesFilterLabel", "label"], customStringFilter: ["hermesDgStringFilter", "customStringFilter"], value: ["hermesFilterValue", "value"] }, outputs: { filterValueChange: "hermesFilterValueChange" }, providers: [{ provide: CustomFilter, useExisting: DatagridStringFilter }], viewQueries: [{ propertyName: "input", first: true, predicate: ["input"], descendants: true }, { propertyName: "filterContainer", first: true, predicate: HermesDatagridFilter, descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: `
2525
- <hermes-dg-filter [hermesDgFilter]="registered" [(hermesDgFilterOpen)]="open">
2526
- <hermes-input-container>
2527
- <label>{{ labelValue }}</label>
2528
- <input
2529
- #input
2530
- type="text"
2531
- autocomplete="off"
2532
- name="search"
2533
- [(ngModel)]="value"
2534
- hermesInput
2535
- [attr.aria-label]="placeholderValue"
2536
- [placeholder]="placeholderValue"
2537
- />
2538
- </hermes-input-container>
2539
- </hermes-dg-filter>
2524
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.22", type: DatagridStringFilter, isStandalone: false, selector: "hermes-dg-string-filter", inputs: { placeholder: ["hermesFilterPlaceholder", "placeholder"], label: ["hermesFilterLabel", "label"], customStringFilter: ["hermesDgStringFilter", "customStringFilter"], value: ["hermesFilterValue", "value"] }, outputs: { filterValueChange: "hermesFilterValueChange" }, providers: [{ provide: CustomFilter, useExisting: DatagridStringFilter }], viewQueries: [{ propertyName: "input", first: true, predicate: ["input"], descendants: true }, { propertyName: "filterContainer", first: true, predicate: HermesDatagridFilter, descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: `
2525
+ <hermes-dg-filter [hermesDgFilter]="registered" [(hermesDgFilterOpen)]="open">
2526
+ <hermes-input-container>
2527
+ <label>{{ labelValue }}</label>
2528
+ <input
2529
+ #input
2530
+ type="text"
2531
+ autocomplete="off"
2532
+ name="search"
2533
+ [(ngModel)]="value"
2534
+ hermesInput
2535
+ [attr.aria-label]="placeholderValue"
2536
+ [placeholder]="placeholderValue"
2537
+ />
2538
+ </hermes-input-container>
2539
+ </hermes-dg-filter>
2540
2540
  `, isInline: true, dependencies: [{ kind: "directive", type: i4.HermesControlLabel, selector: "label", inputs: ["id", "for"] }, { kind: "directive", type: i5$2.HermesInput, selector: "[hermesInput]" }, { kind: "component", type: i5$2.HermesInputContainer, selector: "hermes-input-container" }, { kind: "directive", type: i14.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i14.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i14.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: HermesDatagridFilter, selector: "hermes-dg-filter", inputs: ["hermesDgFilterOpen", "hermesDgFilter"], outputs: ["hermesDgFilterOpenChange"] }] }); }
2541
2541
  }
2542
2542
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: DatagridStringFilter, decorators: [{
@@ -2544,22 +2544,22 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
2544
2544
  args: [{
2545
2545
  selector: 'hermes-dg-string-filter',
2546
2546
  providers: [{ provide: CustomFilter, useExisting: DatagridStringFilter }],
2547
- template: `
2548
- <hermes-dg-filter [hermesDgFilter]="registered" [(hermesDgFilterOpen)]="open">
2549
- <hermes-input-container>
2550
- <label>{{ labelValue }}</label>
2551
- <input
2552
- #input
2553
- type="text"
2554
- autocomplete="off"
2555
- name="search"
2556
- [(ngModel)]="value"
2557
- hermesInput
2558
- [attr.aria-label]="placeholderValue"
2559
- [placeholder]="placeholderValue"
2560
- />
2561
- </hermes-input-container>
2562
- </hermes-dg-filter>
2547
+ template: `
2548
+ <hermes-dg-filter [hermesDgFilter]="registered" [(hermesDgFilterOpen)]="open">
2549
+ <hermes-input-container>
2550
+ <label>{{ labelValue }}</label>
2551
+ <input
2552
+ #input
2553
+ type="text"
2554
+ autocomplete="off"
2555
+ name="search"
2556
+ [(ngModel)]="value"
2557
+ hermesInput
2558
+ [attr.aria-label]="placeholderValue"
2559
+ [placeholder]="placeholderValue"
2560
+ />
2561
+ </hermes-input-container>
2562
+ </hermes-dg-filter>
2563
2563
  `,
2564
2564
  standalone: false,
2565
2565
  }]
@@ -2918,136 +2918,136 @@ class HermesDatagridColumn extends DatagridFilterRegistrar {
2918
2918
  }
2919
2919
  }
2920
2920
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: HermesDatagridColumn, deps: [{ token: i0.ElementRef }, { token: Sort }, { token: FiltersProvider }, { token: i0.ViewContainerRef }, { token: DetailService }, { token: i0.ChangeDetectorRef }, { token: i2.HermesCommonStringsService }, { token: ColumnsService }, { token: COLUMN_STATE, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
2921
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.22", type: HermesDatagridColumn, isStandalone: false, selector: "hermes-dg-column", inputs: { filterStringPlaceholder: ["hermesFilterStringPlaceholder", "filterStringPlaceholder"], filterNumberMaxPlaceholder: ["hermesFilterNumberMaxPlaceholder", "filterNumberMaxPlaceholder"], filterNumberMinPlaceholder: ["hermesFilterNumberMinPlaceholder", "filterNumberMinPlaceholder"], disableUnsort: ["hermesDgDisableUnsort", "disableUnsort"], pinned: ["hermesDgPinned", "pinned", booleanAttribute], colType: ["hermesDgColType", "colType"], field: ["hermesDgField", "field"], sortBy: ["hermesDgSortBy", "sortBy"], sortOrder: ["hermesDgSortOrder", "sortOrder"], updateFilterValue: ["hermesFilterValue", "updateFilterValue"] }, outputs: { sortOrderChange: "hermesDgSortOrderChange", filterValueChange: "hermesFilterValueChange" }, host: { attributes: { "role": "columnheader" }, properties: { "class.datagrid-column": "true", "attr.aria-sort": "ariaSort" } }, queries: [{ propertyName: "projectedFilter", first: true, predicate: CustomFilter, descendants: true }], viewQueries: [{ propertyName: "titleContainer", first: true, predicate: ["titleContainer"], descendants: true, read: ElementRef }], usesInheritance: true, usesOnChanges: true, hostDirectives: [{ directive: i3.HermesPopoverHostDirective }], ngImport: i0, template: `
2922
- <div class="datagrid-column-flex">
2923
- <!--
2924
- hermesDgPinnable is disabled for now. Restoring it means uncommenting this block together with
2925
- the pinnable input, the hermesDgPinnedChange output and togglePinned() below, the
2926
- .datagrid-column-pin styles, the pin/unpin icons in HermesDatagridModule and the
2927
- pinColumn/unpinColumn common strings.
2928
-
2929
- @if (pinnable) {
2930
- <button
2931
- class="datagrid-column-pin"
2932
- type="button"
2933
- [attr.aria-label]="pinned ? commonStrings.keys.unpinColumn : commonStrings.keys.pinColumn"
2934
- (click)="togglePinned($event)"
2935
- >
2936
- <hermes-icon [size]="'12'" [shape]="pinned ? 'unpin' : 'pin'" solid aria-hidden="true"></hermes-icon>
2937
- </button>
2938
- }
2939
- -->
2940
- @if (sortable) {
2941
- <button class="datagrid-column-title" (click)="sort()" type="button" #titleContainer>
2942
- <ng-container *ngTemplateOutlet="columnTitle"></ng-container>
2943
- <hermes-icon
2944
- [shape]="sortDirection ? 'arrow' : 'two-way-arrows'"
2945
- [direction]="sortDirection ? sortDirection : 'left'"
2946
- aria-hidden="true"
2947
- class="sort-icon"
2948
- ></hermes-icon>
2949
- </button>
2950
- }
2951
- <!-- I'm really not happy with that select since it's not very scalable -->
2952
- <ng-content select="hermes-dg-filter, hermes-dg-string-filter, hermes-dg-numeric-filter"></ng-content>
2953
-
2954
- @if (field && !customFilter && colType == 'string') {
2955
- <hermes-dg-string-filter
2956
- [hermesFilterPlaceholder]="filterStringPlaceholder"
2957
- [hermesDgStringFilter]="registered"
2958
- [(hermesFilterValue)]="filterValue"
2959
- ></hermes-dg-string-filter>
2960
- }
2961
- @if (field && !customFilter && colType == 'number') {
2962
- <hermes-dg-numeric-filter
2963
- [hermesFilterMaxPlaceholder]="filterNumberMaxPlaceholder"
2964
- [hermesFilterMinPlaceholder]="filterNumberMinPlaceholder"
2965
- [hermesDgNumericFilter]="registered"
2966
- [(hermesFilterValue)]="filterValue"
2967
- ></hermes-dg-numeric-filter>
2968
- }
2969
-
2970
- <ng-template #columnTitle>
2971
- <ng-content></ng-content>
2972
- </ng-template>
2973
-
2974
- @if (!sortable) {
2975
- <span class="datagrid-column-title" #titleContainer>
2976
- <ng-container *ngTemplateOutlet="columnTitle"></ng-container>
2977
- </span>
2978
- }
2979
- @if (showSeparator) {
2980
- <hermes-dg-column-separator></hermes-dg-column-separator>
2981
- }
2982
- </div>
2921
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.22", type: HermesDatagridColumn, isStandalone: false, selector: "hermes-dg-column", inputs: { filterStringPlaceholder: ["hermesFilterStringPlaceholder", "filterStringPlaceholder"], filterNumberMaxPlaceholder: ["hermesFilterNumberMaxPlaceholder", "filterNumberMaxPlaceholder"], filterNumberMinPlaceholder: ["hermesFilterNumberMinPlaceholder", "filterNumberMinPlaceholder"], disableUnsort: ["hermesDgDisableUnsort", "disableUnsort"], pinned: ["hermesDgPinned", "pinned", booleanAttribute], colType: ["hermesDgColType", "colType"], field: ["hermesDgField", "field"], sortBy: ["hermesDgSortBy", "sortBy"], sortOrder: ["hermesDgSortOrder", "sortOrder"], updateFilterValue: ["hermesFilterValue", "updateFilterValue"] }, outputs: { sortOrderChange: "hermesDgSortOrderChange", filterValueChange: "hermesFilterValueChange" }, host: { attributes: { "role": "columnheader" }, properties: { "class.datagrid-column": "true", "attr.aria-sort": "ariaSort" } }, queries: [{ propertyName: "projectedFilter", first: true, predicate: CustomFilter, descendants: true }], viewQueries: [{ propertyName: "titleContainer", first: true, predicate: ["titleContainer"], descendants: true, read: ElementRef }], usesInheritance: true, usesOnChanges: true, hostDirectives: [{ directive: i3.HermesPopoverHostDirective }], ngImport: i0, template: `
2922
+ <div class="datagrid-column-flex">
2923
+ <!--
2924
+ hermesDgPinnable is disabled for now. Restoring it means uncommenting this block together with
2925
+ the pinnable input, the hermesDgPinnedChange output and togglePinned() below, the
2926
+ .datagrid-column-pin styles, the pin/unpin icons in HermesDatagridModule and the
2927
+ pinColumn/unpinColumn common strings.
2928
+
2929
+ @if (pinnable) {
2930
+ <button
2931
+ class="datagrid-column-pin"
2932
+ type="button"
2933
+ [attr.aria-label]="pinned ? commonStrings.keys.unpinColumn : commonStrings.keys.pinColumn"
2934
+ (click)="togglePinned($event)"
2935
+ >
2936
+ <hermes-icon [size]="'12'" [shape]="pinned ? 'unpin' : 'pin'" solid aria-hidden="true"></hermes-icon>
2937
+ </button>
2938
+ }
2939
+ -->
2940
+ @if (sortable) {
2941
+ <button class="datagrid-column-title" (click)="sort()" type="button" #titleContainer>
2942
+ <ng-container *ngTemplateOutlet="columnTitle"></ng-container>
2943
+ <hermes-icon
2944
+ [shape]="sortDirection ? 'arrow' : 'two-way-arrows'"
2945
+ [direction]="sortDirection ? sortDirection : 'left'"
2946
+ aria-hidden="true"
2947
+ class="sort-icon"
2948
+ ></hermes-icon>
2949
+ </button>
2950
+ }
2951
+ <!-- I'm really not happy with that select since it's not very scalable -->
2952
+ <ng-content select="hermes-dg-filter, hermes-dg-string-filter, hermes-dg-numeric-filter"></ng-content>
2953
+
2954
+ @if (field && !customFilter && colType == 'string') {
2955
+ <hermes-dg-string-filter
2956
+ [hermesFilterPlaceholder]="filterStringPlaceholder"
2957
+ [hermesDgStringFilter]="registered"
2958
+ [(hermesFilterValue)]="filterValue"
2959
+ ></hermes-dg-string-filter>
2960
+ }
2961
+ @if (field && !customFilter && colType == 'number') {
2962
+ <hermes-dg-numeric-filter
2963
+ [hermesFilterMaxPlaceholder]="filterNumberMaxPlaceholder"
2964
+ [hermesFilterMinPlaceholder]="filterNumberMinPlaceholder"
2965
+ [hermesDgNumericFilter]="registered"
2966
+ [(hermesFilterValue)]="filterValue"
2967
+ ></hermes-dg-numeric-filter>
2968
+ }
2969
+
2970
+ <ng-template #columnTitle>
2971
+ <ng-content></ng-content>
2972
+ </ng-template>
2973
+
2974
+ @if (!sortable) {
2975
+ <span class="datagrid-column-title" #titleContainer>
2976
+ <ng-container *ngTemplateOutlet="columnTitle"></ng-container>
2977
+ </span>
2978
+ }
2979
+ @if (showSeparator) {
2980
+ <hermes-dg-column-separator></hermes-dg-column-separator>
2981
+ }
2982
+ </div>
2983
2983
  `, isInline: true, dependencies: [{ kind: "directive", type: i10.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i5.HermesIcon, selector: "hermes-icon, hermes-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "component", type: HermesDatagridColumnSeparator, selector: "hermes-dg-column-separator" }, { kind: "component", type: DatagridNumericFilter, selector: "hermes-dg-numeric-filter", inputs: ["hermesFilterMinPlaceholder", "hermesFilterMaxPlaceholder", "hermesFilterFromLabel", "hermesFilterToLabel", "hermesFilterValue", "hermesDgNumericFilter"], outputs: ["hermesFilterValueChange"] }, { kind: "component", type: DatagridStringFilter, selector: "hermes-dg-string-filter", inputs: ["hermesFilterPlaceholder", "hermesFilterLabel", "hermesDgStringFilter", "hermesFilterValue"], outputs: ["hermesFilterValueChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
2984
2984
  }
2985
2985
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: HermesDatagridColumn, decorators: [{
2986
2986
  type: Component,
2987
2987
  args: [{
2988
2988
  selector: 'hermes-dg-column',
2989
- template: `
2990
- <div class="datagrid-column-flex">
2991
- <!--
2992
- hermesDgPinnable is disabled for now. Restoring it means uncommenting this block together with
2993
- the pinnable input, the hermesDgPinnedChange output and togglePinned() below, the
2994
- .datagrid-column-pin styles, the pin/unpin icons in HermesDatagridModule and the
2995
- pinColumn/unpinColumn common strings.
2996
-
2997
- @if (pinnable) {
2998
- <button
2999
- class="datagrid-column-pin"
3000
- type="button"
3001
- [attr.aria-label]="pinned ? commonStrings.keys.unpinColumn : commonStrings.keys.pinColumn"
3002
- (click)="togglePinned($event)"
3003
- >
3004
- <hermes-icon [size]="'12'" [shape]="pinned ? 'unpin' : 'pin'" solid aria-hidden="true"></hermes-icon>
3005
- </button>
3006
- }
3007
- -->
3008
- @if (sortable) {
3009
- <button class="datagrid-column-title" (click)="sort()" type="button" #titleContainer>
3010
- <ng-container *ngTemplateOutlet="columnTitle"></ng-container>
3011
- <hermes-icon
3012
- [shape]="sortDirection ? 'arrow' : 'two-way-arrows'"
3013
- [direction]="sortDirection ? sortDirection : 'left'"
3014
- aria-hidden="true"
3015
- class="sort-icon"
3016
- ></hermes-icon>
3017
- </button>
3018
- }
3019
- <!-- I'm really not happy with that select since it's not very scalable -->
3020
- <ng-content select="hermes-dg-filter, hermes-dg-string-filter, hermes-dg-numeric-filter"></ng-content>
3021
-
3022
- @if (field && !customFilter && colType == 'string') {
3023
- <hermes-dg-string-filter
3024
- [hermesFilterPlaceholder]="filterStringPlaceholder"
3025
- [hermesDgStringFilter]="registered"
3026
- [(hermesFilterValue)]="filterValue"
3027
- ></hermes-dg-string-filter>
3028
- }
3029
- @if (field && !customFilter && colType == 'number') {
3030
- <hermes-dg-numeric-filter
3031
- [hermesFilterMaxPlaceholder]="filterNumberMaxPlaceholder"
3032
- [hermesFilterMinPlaceholder]="filterNumberMinPlaceholder"
3033
- [hermesDgNumericFilter]="registered"
3034
- [(hermesFilterValue)]="filterValue"
3035
- ></hermes-dg-numeric-filter>
3036
- }
3037
-
3038
- <ng-template #columnTitle>
3039
- <ng-content></ng-content>
3040
- </ng-template>
3041
-
3042
- @if (!sortable) {
3043
- <span class="datagrid-column-title" #titleContainer>
3044
- <ng-container *ngTemplateOutlet="columnTitle"></ng-container>
3045
- </span>
3046
- }
3047
- @if (showSeparator) {
3048
- <hermes-dg-column-separator></hermes-dg-column-separator>
3049
- }
3050
- </div>
2989
+ template: `
2990
+ <div class="datagrid-column-flex">
2991
+ <!--
2992
+ hermesDgPinnable is disabled for now. Restoring it means uncommenting this block together with
2993
+ the pinnable input, the hermesDgPinnedChange output and togglePinned() below, the
2994
+ .datagrid-column-pin styles, the pin/unpin icons in HermesDatagridModule and the
2995
+ pinColumn/unpinColumn common strings.
2996
+
2997
+ @if (pinnable) {
2998
+ <button
2999
+ class="datagrid-column-pin"
3000
+ type="button"
3001
+ [attr.aria-label]="pinned ? commonStrings.keys.unpinColumn : commonStrings.keys.pinColumn"
3002
+ (click)="togglePinned($event)"
3003
+ >
3004
+ <hermes-icon [size]="'12'" [shape]="pinned ? 'unpin' : 'pin'" solid aria-hidden="true"></hermes-icon>
3005
+ </button>
3006
+ }
3007
+ -->
3008
+ @if (sortable) {
3009
+ <button class="datagrid-column-title" (click)="sort()" type="button" #titleContainer>
3010
+ <ng-container *ngTemplateOutlet="columnTitle"></ng-container>
3011
+ <hermes-icon
3012
+ [shape]="sortDirection ? 'arrow' : 'two-way-arrows'"
3013
+ [direction]="sortDirection ? sortDirection : 'left'"
3014
+ aria-hidden="true"
3015
+ class="sort-icon"
3016
+ ></hermes-icon>
3017
+ </button>
3018
+ }
3019
+ <!-- I'm really not happy with that select since it's not very scalable -->
3020
+ <ng-content select="hermes-dg-filter, hermes-dg-string-filter, hermes-dg-numeric-filter"></ng-content>
3021
+
3022
+ @if (field && !customFilter && colType == 'string') {
3023
+ <hermes-dg-string-filter
3024
+ [hermesFilterPlaceholder]="filterStringPlaceholder"
3025
+ [hermesDgStringFilter]="registered"
3026
+ [(hermesFilterValue)]="filterValue"
3027
+ ></hermes-dg-string-filter>
3028
+ }
3029
+ @if (field && !customFilter && colType == 'number') {
3030
+ <hermes-dg-numeric-filter
3031
+ [hermesFilterMaxPlaceholder]="filterNumberMaxPlaceholder"
3032
+ [hermesFilterMinPlaceholder]="filterNumberMinPlaceholder"
3033
+ [hermesDgNumericFilter]="registered"
3034
+ [(hermesFilterValue)]="filterValue"
3035
+ ></hermes-dg-numeric-filter>
3036
+ }
3037
+
3038
+ <ng-template #columnTitle>
3039
+ <ng-content></ng-content>
3040
+ </ng-template>
3041
+
3042
+ @if (!sortable) {
3043
+ <span class="datagrid-column-title" #titleContainer>
3044
+ <ng-container *ngTemplateOutlet="columnTitle"></ng-container>
3045
+ </span>
3046
+ }
3047
+ @if (showSeparator) {
3048
+ <hermes-dg-column-separator></hermes-dg-column-separator>
3049
+ }
3050
+ </div>
3051
3051
  `,
3052
3052
  hostDirectives: [HermesPopoverHostDirective],
3053
3053
  host: {
@@ -5749,42 +5749,42 @@ class HermesDatagridActionOverflow {
5749
5749
  }
5750
5750
  }
5751
5751
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: HermesDatagridActionOverflow, deps: [{ token: RowActionService }, { token: i2.HermesCommonStringsService }, { token: PLATFORM_ID }, { token: i3.HermesPopoverService }], target: i0.ɵɵFactoryTarget.Component }); }
5752
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.22", type: HermesDatagridActionOverflow, isStandalone: false, selector: "hermes-dg-action-overflow", inputs: { buttonLabel: ["hermesDgActionOverflowButtonLabel", "buttonLabel"], open: ["hermesDgActionOverflowOpen", "open"] }, outputs: { openChange: "hermesDgActionOverflowOpenChange" }, viewQueries: [{ propertyName: "keyFocus", first: true, predicate: HermesKeyFocus, descendants: true }], hostDirectives: [{ directive: i3.HermesPopoverHostDirective }], ngImport: i0, template: `
5753
- <button
5754
- tabindex="-1"
5755
- class="datagrid-action-toggle"
5756
- type="button"
5757
- role="button"
5758
- aria-haspopup="true"
5759
- #anchor
5760
- [attr.aria-controls]="popoverId"
5761
- [attr.aria-expanded]="open"
5762
- [attr.aria-label]="buttonLabel || commonStrings.keys.rowActions"
5763
- hermesPopoverOrigin
5764
- hermesPopoverOpenCloseButton
5765
- (click)="$event.stopPropagation()"
5766
- >
5767
- <hermes-icon shape="ellipsis-vertical" [attr.title]="buttonLabel || commonStrings.keys.rowActions"></hermes-icon>
5768
- </button>
5769
-
5770
- <div
5771
- class="datagrid-action-overflow"
5772
- [id]="popoverId"
5773
- [attr.aria-hidden]="!open"
5774
- [attr.id]="popoverId"
5775
- hermesKeyFocus
5776
- cdkTrapFocus
5777
- (click)="closeOverflowContent($event)"
5778
- *hermesPopoverContent="
5779
- open;
5780
- at: smartPosition;
5781
- availablePositions: positions;
5782
- outsideClickToClose: true;
5783
- scrollToClose: true
5784
- "
5785
- >
5786
- <ng-content></ng-content>
5787
- </div>
5752
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.22", type: HermesDatagridActionOverflow, isStandalone: false, selector: "hermes-dg-action-overflow", inputs: { buttonLabel: ["hermesDgActionOverflowButtonLabel", "buttonLabel"], open: ["hermesDgActionOverflowOpen", "open"] }, outputs: { openChange: "hermesDgActionOverflowOpenChange" }, viewQueries: [{ propertyName: "keyFocus", first: true, predicate: HermesKeyFocus, descendants: true }], hostDirectives: [{ directive: i3.HermesPopoverHostDirective }], ngImport: i0, template: `
5753
+ <button
5754
+ tabindex="-1"
5755
+ class="datagrid-action-toggle"
5756
+ type="button"
5757
+ role="button"
5758
+ aria-haspopup="true"
5759
+ #anchor
5760
+ [attr.aria-controls]="popoverId"
5761
+ [attr.aria-expanded]="open"
5762
+ [attr.aria-label]="buttonLabel || commonStrings.keys.rowActions"
5763
+ hermesPopoverOrigin
5764
+ hermesPopoverOpenCloseButton
5765
+ (click)="$event.stopPropagation()"
5766
+ >
5767
+ <hermes-icon shape="ellipsis-vertical" [attr.title]="buttonLabel || commonStrings.keys.rowActions"></hermes-icon>
5768
+ </button>
5769
+
5770
+ <div
5771
+ class="datagrid-action-overflow"
5772
+ [id]="popoverId"
5773
+ [attr.aria-hidden]="!open"
5774
+ [attr.id]="popoverId"
5775
+ hermesKeyFocus
5776
+ cdkTrapFocus
5777
+ (click)="closeOverflowContent($event)"
5778
+ *hermesPopoverContent="
5779
+ open;
5780
+ at: smartPosition;
5781
+ availablePositions: positions;
5782
+ outsideClickToClose: true;
5783
+ scrollToClose: true
5784
+ "
5785
+ >
5786
+ <ng-content></ng-content>
5787
+ </div>
5788
5788
  `, isInline: true, dependencies: [{ kind: "directive", type: i2.CdkTrapFocusModule_CdkTrapFocus, selector: "[cdkTrapFocus]" }, { kind: "component", type: i5.HermesIcon, selector: "hermes-icon, hermes-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "directive", type: i3.HermesPopoverOrigin, selector: "[hermesPopoverOrigin]" }, { kind: "directive", type: i3.HermesPopoverOpenCloseButton, selector: "[hermesPopoverOpenCloseButton]", outputs: ["hermesPopoverOpenCloseChange"] }, { kind: "directive", type: i3.HermesPopoverContent, selector: "[hermesPopoverContent]", inputs: ["hermesPopoverContent", "hermesPopoverContentAt", "hermesPopoverContentAvailablePositions", "hermesPopoverContentType", "hermesPopoverContentOutsideClickToClose", "hermesPopoverContentScrollToClose", "hermesPopoverContentOrigin"] }, { kind: "component", type: i2.HermesKeyFocus, selector: "[hermesKeyFocus]", inputs: ["hermesDirection", "hermesFocusOnLoad", "hermesKeyFocus"], outputs: ["hermesFocusChange"] }] }); }
5789
5789
  }
5790
5790
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: HermesDatagridActionOverflow, decorators: [{
@@ -5792,42 +5792,42 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
5792
5792
  args: [{
5793
5793
  selector: 'hermes-dg-action-overflow',
5794
5794
  hostDirectives: [HermesPopoverHostDirective],
5795
- template: `
5796
- <button
5797
- tabindex="-1"
5798
- class="datagrid-action-toggle"
5799
- type="button"
5800
- role="button"
5801
- aria-haspopup="true"
5802
- #anchor
5803
- [attr.aria-controls]="popoverId"
5804
- [attr.aria-expanded]="open"
5805
- [attr.aria-label]="buttonLabel || commonStrings.keys.rowActions"
5806
- hermesPopoverOrigin
5807
- hermesPopoverOpenCloseButton
5808
- (click)="$event.stopPropagation()"
5809
- >
5810
- <hermes-icon shape="ellipsis-vertical" [attr.title]="buttonLabel || commonStrings.keys.rowActions"></hermes-icon>
5811
- </button>
5812
-
5813
- <div
5814
- class="datagrid-action-overflow"
5815
- [id]="popoverId"
5816
- [attr.aria-hidden]="!open"
5817
- [attr.id]="popoverId"
5818
- hermesKeyFocus
5819
- cdkTrapFocus
5820
- (click)="closeOverflowContent($event)"
5821
- *hermesPopoverContent="
5822
- open;
5823
- at: smartPosition;
5824
- availablePositions: positions;
5825
- outsideClickToClose: true;
5826
- scrollToClose: true
5827
- "
5828
- >
5829
- <ng-content></ng-content>
5830
- </div>
5795
+ template: `
5796
+ <button
5797
+ tabindex="-1"
5798
+ class="datagrid-action-toggle"
5799
+ type="button"
5800
+ role="button"
5801
+ aria-haspopup="true"
5802
+ #anchor
5803
+ [attr.aria-controls]="popoverId"
5804
+ [attr.aria-expanded]="open"
5805
+ [attr.aria-label]="buttonLabel || commonStrings.keys.rowActions"
5806
+ hermesPopoverOrigin
5807
+ hermesPopoverOpenCloseButton
5808
+ (click)="$event.stopPropagation()"
5809
+ >
5810
+ <hermes-icon shape="ellipsis-vertical" [attr.title]="buttonLabel || commonStrings.keys.rowActions"></hermes-icon>
5811
+ </button>
5812
+
5813
+ <div
5814
+ class="datagrid-action-overflow"
5815
+ [id]="popoverId"
5816
+ [attr.aria-hidden]="!open"
5817
+ [attr.id]="popoverId"
5818
+ hermesKeyFocus
5819
+ cdkTrapFocus
5820
+ (click)="closeOverflowContent($event)"
5821
+ *hermesPopoverContent="
5822
+ open;
5823
+ at: smartPosition;
5824
+ availablePositions: positions;
5825
+ outsideClickToClose: true;
5826
+ scrollToClose: true
5827
+ "
5828
+ >
5829
+ <ng-content></ng-content>
5830
+ </div>
5831
5831
  `,
5832
5832
  standalone: false,
5833
5833
  }]
@@ -5885,30 +5885,30 @@ class HermesDatagridColumnToggleButton {
5885
5885
  return this.columnsService.columns.filter(column => column.value.hideable);
5886
5886
  }
5887
5887
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: HermesDatagridColumnToggleButton, deps: [{ token: i2.HermesCommonStringsService }, { token: ColumnsService }], target: i0.ɵɵFactoryTarget.Component }); }
5888
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.22", type: HermesDatagridColumnToggleButton, isStandalone: false, selector: "hermes-dg-column-toggle-button", outputs: { hermesAllSelected: "hermesAllSelected" }, ngImport: i0, template: `
5889
- <button
5890
- class="btn btn-sm btn-link switch-button"
5891
- (click)="selectAll()"
5892
- [disabled]="allHideablesVisible"
5893
- type="button"
5894
- >
5895
- {{ commonStrings.keys.selectAll }}
5896
- </button>
5888
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.22", type: HermesDatagridColumnToggleButton, isStandalone: false, selector: "hermes-dg-column-toggle-button", outputs: { hermesAllSelected: "hermesAllSelected" }, ngImport: i0, template: `
5889
+ <button
5890
+ class="btn btn-sm btn-link switch-button"
5891
+ (click)="selectAll()"
5892
+ [disabled]="allHideablesVisible"
5893
+ type="button"
5894
+ >
5895
+ {{ commonStrings.keys.selectAll }}
5896
+ </button>
5897
5897
  `, isInline: true }); }
5898
5898
  }
5899
5899
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: HermesDatagridColumnToggleButton, decorators: [{
5900
5900
  type: Component,
5901
5901
  args: [{
5902
5902
  selector: 'hermes-dg-column-toggle-button',
5903
- template: `
5904
- <button
5905
- class="btn btn-sm btn-link switch-button"
5906
- (click)="selectAll()"
5907
- [disabled]="allHideablesVisible"
5908
- type="button"
5909
- >
5910
- {{ commonStrings.keys.selectAll }}
5911
- </button>
5903
+ template: `
5904
+ <button
5905
+ class="btn btn-sm btn-link switch-button"
5906
+ (click)="selectAll()"
5907
+ [disabled]="allHideablesVisible"
5908
+ type="button"
5909
+ >
5910
+ {{ commonStrings.keys.selectAll }}
5911
+ </button>
5912
5912
  `,
5913
5913
  standalone: false,
5914
5914
  }]
@@ -5969,138 +5969,138 @@ class HermesDatagridColumnToggle {
5969
5969
  this.allSelectedElement.nativeElement.focus();
5970
5970
  }
5971
5971
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: HermesDatagridColumnToggle, deps: [{ token: i2.HermesCommonStringsService }, { token: ColumnsService }, { token: i3.HermesPopoverService }], target: i0.ɵɵFactoryTarget.Component }); }
5972
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.22", type: HermesDatagridColumnToggle, isStandalone: false, selector: "hermes-dg-column-toggle", host: { properties: { "class.column-switch-wrapper": "true", "class.active": "openState" } }, viewQueries: [{ propertyName: "allSelectedElement", first: true, predicate: ["allSelected"], descendants: true, read: ElementRef }], hostDirectives: [{ directive: i3.HermesPopoverHostDirective }], ngImport: i0, template: `
5973
- <button
5974
- role="button"
5975
- type="button"
5976
- class="btn btn-sm column-toggle-action"
5977
- hermesPopoverOrigin
5978
- hermesPopoverOpenCloseButton
5979
- [attr.aria-controls]="popoverId"
5980
- [attr.aria-expanded]="openState"
5981
- [attr.aria-haspopup]="'menu'"
5982
- >
5983
- {{ commonStrings.keys.pickColumns }}
5984
- </button>
5985
- <div
5986
- class="column-switch"
5987
- role="dialog"
5988
- [attr.aria-label]="commonStrings.keys.showColumnsMenuDescription"
5989
- [id]="popoverId"
5990
- cdkTrapFocus
5991
- cdkTrapFocusAutoCapture
5992
- *hermesPopoverContent="
5993
- openState;
5994
- at: popoverPosition;
5995
- type: popoverType;
5996
- outsideClickToClose: true;
5997
- scrollToClose: true
5998
- "
5999
- >
6000
- <div class="switch-header">
6001
- <div class="hermes-sr-only" tabindex="-1" #allSelected>{{ commonStrings.keys.allColumnsSelected }}</div>
6002
- <h2>{{ commonStrings.keys.showColumns }}</h2>
6003
- <button
6004
- class="btn btn-sm btn-link-neutral toggle-switch-close-button"
6005
- hermesPopoverCloseButton
6006
- type="button"
6007
- [attr.aria-label]="commonStrings.keys.close"
6008
- >
6009
- <hermes-icon shape="window-close" aria-hidden="true" [attr.title]="commonStrings.keys.close"></hermes-icon>
6010
- <span class="hermes-sr-only">{{ commonStrings.keys.close }}</span>
6011
- </button>
6012
- </div>
6013
- <ul class="switch-content list-unstyled">
6014
- @for (columnState of hideableColumnStates; track trackByFn($index, columnState)) {
6015
- <li>
6016
- <hermes-checkbox-wrapper>
6017
- <input
6018
- hermesCheckbox
6019
- type="checkbox"
6020
- [disabled]="hasOnlyOneVisibleColumn && !columnState.hidden"
6021
- [ngModel]="!columnState.hidden"
6022
- (ngModelChange)="toggleColumnState(columnState, !$event)"
6023
- />
6024
- <label>
6025
- <ng-template [ngTemplateOutlet]="columnState.titleTemplateRef"></ng-template>
6026
- </label>
6027
- </hermes-checkbox-wrapper>
6028
- </li>
6029
- }
6030
- </ul>
6031
- <div class="switch-footer">
6032
- <hermes-dg-column-toggle-button (hermesAllSelected)="allColumnsSelected()"></hermes-dg-column-toggle-button>
6033
- </div>
6034
- </div>
5972
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.22", type: HermesDatagridColumnToggle, isStandalone: false, selector: "hermes-dg-column-toggle", host: { properties: { "class.column-switch-wrapper": "true", "class.active": "openState" } }, viewQueries: [{ propertyName: "allSelectedElement", first: true, predicate: ["allSelected"], descendants: true, read: ElementRef }], hostDirectives: [{ directive: i3.HermesPopoverHostDirective }], ngImport: i0, template: `
5973
+ <button
5974
+ role="button"
5975
+ type="button"
5976
+ class="btn btn-sm column-toggle-action"
5977
+ hermesPopoverOrigin
5978
+ hermesPopoverOpenCloseButton
5979
+ [attr.aria-controls]="popoverId"
5980
+ [attr.aria-expanded]="openState"
5981
+ [attr.aria-haspopup]="'menu'"
5982
+ >
5983
+ {{ commonStrings.keys.pickColumns }}
5984
+ </button>
5985
+ <div
5986
+ class="column-switch"
5987
+ role="dialog"
5988
+ [attr.aria-label]="commonStrings.keys.showColumnsMenuDescription"
5989
+ [id]="popoverId"
5990
+ cdkTrapFocus
5991
+ cdkTrapFocusAutoCapture
5992
+ *hermesPopoverContent="
5993
+ openState;
5994
+ at: popoverPosition;
5995
+ type: popoverType;
5996
+ outsideClickToClose: true;
5997
+ scrollToClose: true
5998
+ "
5999
+ >
6000
+ <div class="switch-header">
6001
+ <div class="hermes-sr-only" tabindex="-1" #allSelected>{{ commonStrings.keys.allColumnsSelected }}</div>
6002
+ <h2>{{ commonStrings.keys.showColumns }}</h2>
6003
+ <button
6004
+ class="btn btn-sm btn-link-neutral toggle-switch-close-button"
6005
+ hermesPopoverCloseButton
6006
+ type="button"
6007
+ [attr.aria-label]="commonStrings.keys.close"
6008
+ >
6009
+ <hermes-icon shape="window-close" aria-hidden="true" [attr.title]="commonStrings.keys.close"></hermes-icon>
6010
+ <span class="hermes-sr-only">{{ commonStrings.keys.close }}</span>
6011
+ </button>
6012
+ </div>
6013
+ <ul class="switch-content list-unstyled">
6014
+ @for (columnState of hideableColumnStates; track trackByFn($index, columnState)) {
6015
+ <li>
6016
+ <hermes-checkbox-wrapper>
6017
+ <input
6018
+ hermesCheckbox
6019
+ type="checkbox"
6020
+ [disabled]="hasOnlyOneVisibleColumn && !columnState.hidden"
6021
+ [ngModel]="!columnState.hidden"
6022
+ (ngModelChange)="toggleColumnState(columnState, !$event)"
6023
+ />
6024
+ <label>
6025
+ <ng-template [ngTemplateOutlet]="columnState.titleTemplateRef"></ng-template>
6026
+ </label>
6027
+ </hermes-checkbox-wrapper>
6028
+ </li>
6029
+ }
6030
+ </ul>
6031
+ <div class="switch-footer">
6032
+ <hermes-dg-column-toggle-button (hermesAllSelected)="allColumnsSelected()"></hermes-dg-column-toggle-button>
6033
+ </div>
6034
+ </div>
6035
6035
  `, isInline: true, dependencies: [{ kind: "directive", type: i10.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.CdkTrapFocusModule_CdkTrapFocus, selector: "[cdkTrapFocus]" }, { kind: "component", type: i5.HermesIcon, selector: "hermes-icon, hermes-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "directive", type: i4.HermesControlLabel, selector: "label", inputs: ["id", "for"] }, { kind: "directive", type: i7.HermesCheckbox, selector: "[hermesCheckbox],[hermesToggle]" }, { kind: "component", type: i7.HermesCheckboxWrapper, selector: "hermes-checkbox-wrapper,hermes-toggle-wrapper" }, { kind: "directive", type: i14.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i14.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i14.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i3.HermesPopoverOrigin, selector: "[hermesPopoverOrigin]" }, { kind: "directive", type: i3.HermesPopoverCloseButton, selector: "[hermesPopoverCloseButton]", outputs: ["hermesPopoverOnCloseChange"] }, { kind: "directive", type: i3.HermesPopoverOpenCloseButton, selector: "[hermesPopoverOpenCloseButton]", outputs: ["hermesPopoverOpenCloseChange"] }, { kind: "directive", type: i3.HermesPopoverContent, selector: "[hermesPopoverContent]", inputs: ["hermesPopoverContent", "hermesPopoverContentAt", "hermesPopoverContentAvailablePositions", "hermesPopoverContentType", "hermesPopoverContentOutsideClickToClose", "hermesPopoverContentScrollToClose", "hermesPopoverContentOrigin"] }, { kind: "component", type: HermesDatagridColumnToggleButton, selector: "hermes-dg-column-toggle-button", outputs: ["hermesAllSelected"] }] }); }
6036
6036
  }
6037
6037
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: HermesDatagridColumnToggle, decorators: [{
6038
6038
  type: Component,
6039
6039
  args: [{
6040
6040
  selector: 'hermes-dg-column-toggle',
6041
- template: `
6042
- <button
6043
- role="button"
6044
- type="button"
6045
- class="btn btn-sm column-toggle-action"
6046
- hermesPopoverOrigin
6047
- hermesPopoverOpenCloseButton
6048
- [attr.aria-controls]="popoverId"
6049
- [attr.aria-expanded]="openState"
6050
- [attr.aria-haspopup]="'menu'"
6051
- >
6052
- {{ commonStrings.keys.pickColumns }}
6053
- </button>
6054
- <div
6055
- class="column-switch"
6056
- role="dialog"
6057
- [attr.aria-label]="commonStrings.keys.showColumnsMenuDescription"
6058
- [id]="popoverId"
6059
- cdkTrapFocus
6060
- cdkTrapFocusAutoCapture
6061
- *hermesPopoverContent="
6062
- openState;
6063
- at: popoverPosition;
6064
- type: popoverType;
6065
- outsideClickToClose: true;
6066
- scrollToClose: true
6067
- "
6068
- >
6069
- <div class="switch-header">
6070
- <div class="hermes-sr-only" tabindex="-1" #allSelected>{{ commonStrings.keys.allColumnsSelected }}</div>
6071
- <h2>{{ commonStrings.keys.showColumns }}</h2>
6072
- <button
6073
- class="btn btn-sm btn-link-neutral toggle-switch-close-button"
6074
- hermesPopoverCloseButton
6075
- type="button"
6076
- [attr.aria-label]="commonStrings.keys.close"
6077
- >
6078
- <hermes-icon shape="window-close" aria-hidden="true" [attr.title]="commonStrings.keys.close"></hermes-icon>
6079
- <span class="hermes-sr-only">{{ commonStrings.keys.close }}</span>
6080
- </button>
6081
- </div>
6082
- <ul class="switch-content list-unstyled">
6083
- @for (columnState of hideableColumnStates; track trackByFn($index, columnState)) {
6084
- <li>
6085
- <hermes-checkbox-wrapper>
6086
- <input
6087
- hermesCheckbox
6088
- type="checkbox"
6089
- [disabled]="hasOnlyOneVisibleColumn && !columnState.hidden"
6090
- [ngModel]="!columnState.hidden"
6091
- (ngModelChange)="toggleColumnState(columnState, !$event)"
6092
- />
6093
- <label>
6094
- <ng-template [ngTemplateOutlet]="columnState.titleTemplateRef"></ng-template>
6095
- </label>
6096
- </hermes-checkbox-wrapper>
6097
- </li>
6098
- }
6099
- </ul>
6100
- <div class="switch-footer">
6101
- <hermes-dg-column-toggle-button (hermesAllSelected)="allColumnsSelected()"></hermes-dg-column-toggle-button>
6102
- </div>
6103
- </div>
6041
+ template: `
6042
+ <button
6043
+ role="button"
6044
+ type="button"
6045
+ class="btn btn-sm column-toggle-action"
6046
+ hermesPopoverOrigin
6047
+ hermesPopoverOpenCloseButton
6048
+ [attr.aria-controls]="popoverId"
6049
+ [attr.aria-expanded]="openState"
6050
+ [attr.aria-haspopup]="'menu'"
6051
+ >
6052
+ {{ commonStrings.keys.pickColumns }}
6053
+ </button>
6054
+ <div
6055
+ class="column-switch"
6056
+ role="dialog"
6057
+ [attr.aria-label]="commonStrings.keys.showColumnsMenuDescription"
6058
+ [id]="popoverId"
6059
+ cdkTrapFocus
6060
+ cdkTrapFocusAutoCapture
6061
+ *hermesPopoverContent="
6062
+ openState;
6063
+ at: popoverPosition;
6064
+ type: popoverType;
6065
+ outsideClickToClose: true;
6066
+ scrollToClose: true
6067
+ "
6068
+ >
6069
+ <div class="switch-header">
6070
+ <div class="hermes-sr-only" tabindex="-1" #allSelected>{{ commonStrings.keys.allColumnsSelected }}</div>
6071
+ <h2>{{ commonStrings.keys.showColumns }}</h2>
6072
+ <button
6073
+ class="btn btn-sm btn-link-neutral toggle-switch-close-button"
6074
+ hermesPopoverCloseButton
6075
+ type="button"
6076
+ [attr.aria-label]="commonStrings.keys.close"
6077
+ >
6078
+ <hermes-icon shape="window-close" aria-hidden="true" [attr.title]="commonStrings.keys.close"></hermes-icon>
6079
+ <span class="hermes-sr-only">{{ commonStrings.keys.close }}</span>
6080
+ </button>
6081
+ </div>
6082
+ <ul class="switch-content list-unstyled">
6083
+ @for (columnState of hideableColumnStates; track trackByFn($index, columnState)) {
6084
+ <li>
6085
+ <hermes-checkbox-wrapper>
6086
+ <input
6087
+ hermesCheckbox
6088
+ type="checkbox"
6089
+ [disabled]="hasOnlyOneVisibleColumn && !columnState.hidden"
6090
+ [ngModel]="!columnState.hidden"
6091
+ (ngModelChange)="toggleColumnState(columnState, !$event)"
6092
+ />
6093
+ <label>
6094
+ <ng-template [ngTemplateOutlet]="columnState.titleTemplateRef"></ng-template>
6095
+ </label>
6096
+ </hermes-checkbox-wrapper>
6097
+ </li>
6098
+ }
6099
+ </ul>
6100
+ <div class="switch-footer">
6101
+ <hermes-dg-column-toggle-button (hermesAllSelected)="allColumnsSelected()"></hermes-dg-column-toggle-button>
6102
+ </div>
6103
+ </div>
6104
6104
  `,
6105
6105
  host: { '[class.column-switch-wrapper]': 'true', '[class.active]': 'openState' },
6106
6106
  hostDirectives: [HermesPopoverHostDirective],
@@ -6129,20 +6129,20 @@ class HermesDatagridDetailHeader {
6129
6129
  this.title.nativeElement.focus();
6130
6130
  }
6131
6131
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: HermesDatagridDetailHeader, deps: [{ token: DetailService }, { token: i2.HermesCommonStringsService }], target: i0.ɵɵFactoryTarget.Component }); }
6132
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.22", type: HermesDatagridDetailHeader, isStandalone: false, selector: "hermes-dg-detail-header", host: { properties: { "class.datagrid-detail-header": "true" } }, viewQueries: [{ propertyName: "title", first: true, predicate: ["title"], descendants: true }], ngImport: i0, template: `
6133
- <div #title class="datagrid-detail-header-title" tabindex="-1" [id]="titleId">
6134
- <ng-content></ng-content>
6135
- </div>
6136
- <div class="datagrid-detail-pane-close">
6137
- <button
6138
- type="button"
6139
- class="btn btn-icon btn-link"
6140
- (click)="detailService.close()"
6141
- [attr.aria-label]="commonStrings.keys.close"
6142
- >
6143
- <hermes-icon shape="times"></hermes-icon>
6144
- </button>
6145
- </div>
6132
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.22", type: HermesDatagridDetailHeader, isStandalone: false, selector: "hermes-dg-detail-header", host: { properties: { "class.datagrid-detail-header": "true" } }, viewQueries: [{ propertyName: "title", first: true, predicate: ["title"], descendants: true }], ngImport: i0, template: `
6133
+ <div #title class="datagrid-detail-header-title" tabindex="-1" [id]="titleId">
6134
+ <ng-content></ng-content>
6135
+ </div>
6136
+ <div class="datagrid-detail-pane-close">
6137
+ <button
6138
+ type="button"
6139
+ class="btn btn-icon btn-link"
6140
+ (click)="detailService.close()"
6141
+ [attr.aria-label]="commonStrings.keys.close"
6142
+ >
6143
+ <hermes-icon shape="times"></hermes-icon>
6144
+ </button>
6145
+ </div>
6146
6146
  `, isInline: true, dependencies: [{ kind: "component", type: i5.HermesIcon, selector: "hermes-icon, hermes-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }] }); }
6147
6147
  }
6148
6148
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: HermesDatagridDetailHeader, decorators: [{
@@ -6152,20 +6152,20 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
6152
6152
  host: {
6153
6153
  '[class.datagrid-detail-header]': 'true',
6154
6154
  },
6155
- template: `
6156
- <div #title class="datagrid-detail-header-title" tabindex="-1" [id]="titleId">
6157
- <ng-content></ng-content>
6158
- </div>
6159
- <div class="datagrid-detail-pane-close">
6160
- <button
6161
- type="button"
6162
- class="btn btn-icon btn-link"
6163
- (click)="detailService.close()"
6164
- [attr.aria-label]="commonStrings.keys.close"
6165
- >
6166
- <hermes-icon shape="times"></hermes-icon>
6167
- </button>
6168
- </div>
6155
+ template: `
6156
+ <div #title class="datagrid-detail-header-title" tabindex="-1" [id]="titleId">
6157
+ <ng-content></ng-content>
6158
+ </div>
6159
+ <div class="datagrid-detail-pane-close">
6160
+ <button
6161
+ type="button"
6162
+ class="btn btn-icon btn-link"
6163
+ (click)="detailService.close()"
6164
+ [attr.aria-label]="commonStrings.keys.close"
6165
+ >
6166
+ <hermes-icon shape="times"></hermes-icon>
6167
+ </button>
6168
+ </div>
6169
6169
  `,
6170
6170
  standalone: false,
6171
6171
  }]
@@ -6235,23 +6235,23 @@ class HermesDatagridDetail {
6235
6235
  this.detailService.close();
6236
6236
  }
6237
6237
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: HermesDatagridDetail, deps: [{ token: DetailService }, { token: i2.HermesCommonStringsService }], target: i0.ɵɵFactoryTarget.Component }); }
6238
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.22", type: HermesDatagridDetail, isStandalone: false, selector: "hermes-dg-detail", inputs: { ariaLabelledBy: ["hermesDetailAriaLabelledBy", "ariaLabelledBy"], ariaLabel: ["hermesDetailAriaLabel", "ariaLabel"], detailWidth: ["hermesDetailWidth", "detailWidth"] }, host: { properties: { "class.datagrid-detail-pane": "true", "class.datagrid-detail-custom-width": "isCustomWidth", "style.width.%": "width" } }, queries: [{ propertyName: "header", first: true, predicate: HermesDatagridDetailHeader, descendants: true }], ngImport: i0, template: `
6239
- @if (detailService.isOpen) {
6240
- <div
6241
- cdkTrapFocus
6242
- [cdkTrapFocusAutoCapture]="!header"
6243
- class="datagrid-detail-pane-content"
6244
- role="dialog"
6245
- [id]="detailService.id"
6246
- aria-modal="true"
6247
- [attr.aria-labelledby]="labelledBy"
6248
- [attr.aria-label]="label"
6249
- >
6250
- <div class="hermes-sr-only">{{ commonStrings.keys.detailPaneStart }}</div>
6251
- <ng-content></ng-content>
6252
- <div class="hermes-sr-only">{{ commonStrings.keys.detailPaneEnd }}</div>
6253
- </div>
6254
- }
6238
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.22", type: HermesDatagridDetail, isStandalone: false, selector: "hermes-dg-detail", inputs: { ariaLabelledBy: ["hermesDetailAriaLabelledBy", "ariaLabelledBy"], ariaLabel: ["hermesDetailAriaLabel", "ariaLabel"], detailWidth: ["hermesDetailWidth", "detailWidth"] }, host: { properties: { "class.datagrid-detail-pane": "true", "class.datagrid-detail-custom-width": "isCustomWidth", "style.width.%": "width" } }, queries: [{ propertyName: "header", first: true, predicate: HermesDatagridDetailHeader, descendants: true }], ngImport: i0, template: `
6239
+ @if (detailService.isOpen) {
6240
+ <div
6241
+ cdkTrapFocus
6242
+ [cdkTrapFocusAutoCapture]="!header"
6243
+ class="datagrid-detail-pane-content"
6244
+ role="dialog"
6245
+ [id]="detailService.id"
6246
+ aria-modal="true"
6247
+ [attr.aria-labelledby]="labelledBy"
6248
+ [attr.aria-label]="label"
6249
+ >
6250
+ <div class="hermes-sr-only">{{ commonStrings.keys.detailPaneStart }}</div>
6251
+ <ng-content></ng-content>
6252
+ <div class="hermes-sr-only">{{ commonStrings.keys.detailPaneEnd }}</div>
6253
+ </div>
6254
+ }
6255
6255
  `, isInline: true, dependencies: [{ kind: "directive", type: i2.CdkTrapFocusModule_CdkTrapFocus, selector: "[cdkTrapFocus]" }] }); }
6256
6256
  }
6257
6257
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: HermesDatagridDetail, decorators: [{
@@ -6265,23 +6265,23 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
6265
6265
  },
6266
6266
  // We put the @if on the cdkTrapFocus so it doesn't always exist on the page
6267
6267
  // have to test for presence of header for aria-describedby because it was causing unit tests to crash
6268
- template: `
6269
- @if (detailService.isOpen) {
6270
- <div
6271
- cdkTrapFocus
6272
- [cdkTrapFocusAutoCapture]="!header"
6273
- class="datagrid-detail-pane-content"
6274
- role="dialog"
6275
- [id]="detailService.id"
6276
- aria-modal="true"
6277
- [attr.aria-labelledby]="labelledBy"
6278
- [attr.aria-label]="label"
6279
- >
6280
- <div class="hermes-sr-only">{{ commonStrings.keys.detailPaneStart }}</div>
6281
- <ng-content></ng-content>
6282
- <div class="hermes-sr-only">{{ commonStrings.keys.detailPaneEnd }}</div>
6283
- </div>
6284
- }
6268
+ template: `
6269
+ @if (detailService.isOpen) {
6270
+ <div
6271
+ cdkTrapFocus
6272
+ [cdkTrapFocusAutoCapture]="!header"
6273
+ class="datagrid-detail-pane-content"
6274
+ role="dialog"
6275
+ [id]="detailService.id"
6276
+ aria-modal="true"
6277
+ [attr.aria-labelledby]="labelledBy"
6278
+ [attr.aria-label]="label"
6279
+ >
6280
+ <div class="hermes-sr-only">{{ commonStrings.keys.detailPaneStart }}</div>
6281
+ <ng-content></ng-content>
6282
+ <div class="hermes-sr-only">{{ commonStrings.keys.detailPaneEnd }}</div>
6283
+ </div>
6284
+ }
6285
6285
  `,
6286
6286
  standalone: false,
6287
6287
  }]
@@ -6634,78 +6634,78 @@ class HermesDatagridRowDetail {
6634
6634
  }
6635
6635
  }
6636
6636
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: HermesDatagridRowDetail, deps: [{ token: Selection }, { token: RowActionService }, { token: DatagridIfExpandService }, { token: ExpandableRowsCount }, { token: i2.HermesCommonStringsService }, { token: ColumnsService }, { token: DisplayModeService }], target: i0.ɵɵFactoryTarget.Component }); }
6637
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.22", type: HermesDatagridRowDetail, isStandalone: false, selector: "hermes-dg-row-detail", inputs: { _beginningOfExpandableContentAriaText: ["hermesRowDetailBeginningAriaText", "_beginningOfExpandableContentAriaText"], _endOfExpandableContentAriaText: ["hermesRowDetailEndAriaText", "_endOfExpandableContentAriaText"], replace: ["hermesDgReplace", "replace"] }, host: { attributes: { "role": "row" }, properties: { "class.datagrid-row-flex": "true", "class.datagrid-row-detail": "true", "attr.id": "expand.expandableId" } }, queries: [{ propertyName: "cells", predicate: HermesDatagridCell }], viewQueries: [{ propertyName: "_pinnedCells", first: true, predicate: ["pinnedCells"], descendants: true, read: ViewContainerRef }, { propertyName: "_scrollableCells", first: true, predicate: ["scrollableCells"], descendants: true, read: ViewContainerRef }, { propertyName: "_plainCells", first: true, predicate: ["plainCells"], descendants: true, read: ViewContainerRef }], ngImport: i0, template: `
6638
- <div class="hermes-sr-only">
6639
- {{ beginningOfExpandableContentAriaText }}
6640
- {{ commonStrings.keys.datagridExpandableRowsHelperText }}
6641
- </div>
6642
- <!--
6643
- These two containers mirror the ones in the row above and are only used while the detail is
6644
- column aligned - see columnAligned. They are always rendered so the cells always have
6645
- somewhere to be moved into, and the pinned one takes itself out of the layout while empty.
6646
- -->
6647
- <div class="datagrid-pinned-cells">
6648
- <ng-container #pinnedCells></ng-container>
6649
- </div>
6650
- <ng-container #scrollableCells></ng-container>
6651
- @if (this.cells?.length > 0) {
6652
- <ng-container [ngTemplateOutlet]="noCells"></ng-container>
6653
- <!--
6654
- Where the cells go back to when the detail stops being column aligned, because a column was
6655
- unpinned. A view that has been moved into a container cannot be handed back to the content
6656
- projection it came from, so it needs a container of its own in the same place.
6657
- -->
6658
- <ng-container #plainCells></ng-container>
6659
- }
6660
- @if (this.cells?.length === 0) {
6661
- <hermes-dg-cell class="datagrid-container">
6662
- <ng-container [ngTemplateOutlet]="noCells"></ng-container>
6663
- </hermes-dg-cell>
6664
- }
6665
-
6666
- <ng-template #noCells>
6667
- <ng-content></ng-content>
6668
- </ng-template>
6669
- <div class="hermes-sr-only">{{ endOfExpandableContentAriaText }}</div>
6637
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.22", type: HermesDatagridRowDetail, isStandalone: false, selector: "hermes-dg-row-detail", inputs: { _beginningOfExpandableContentAriaText: ["hermesRowDetailBeginningAriaText", "_beginningOfExpandableContentAriaText"], _endOfExpandableContentAriaText: ["hermesRowDetailEndAriaText", "_endOfExpandableContentAriaText"], replace: ["hermesDgReplace", "replace"] }, host: { attributes: { "role": "row" }, properties: { "class.datagrid-row-flex": "true", "class.datagrid-row-detail": "true", "attr.id": "expand.expandableId" } }, queries: [{ propertyName: "cells", predicate: HermesDatagridCell }], viewQueries: [{ propertyName: "_pinnedCells", first: true, predicate: ["pinnedCells"], descendants: true, read: ViewContainerRef }, { propertyName: "_scrollableCells", first: true, predicate: ["scrollableCells"], descendants: true, read: ViewContainerRef }, { propertyName: "_plainCells", first: true, predicate: ["plainCells"], descendants: true, read: ViewContainerRef }], ngImport: i0, template: `
6638
+ <div class="hermes-sr-only">
6639
+ {{ beginningOfExpandableContentAriaText }}
6640
+ {{ commonStrings.keys.datagridExpandableRowsHelperText }}
6641
+ </div>
6642
+ <!--
6643
+ These two containers mirror the ones in the row above and are only used while the detail is
6644
+ column aligned - see columnAligned. They are always rendered so the cells always have
6645
+ somewhere to be moved into, and the pinned one takes itself out of the layout while empty.
6646
+ -->
6647
+ <div class="datagrid-pinned-cells">
6648
+ <ng-container #pinnedCells></ng-container>
6649
+ </div>
6650
+ <ng-container #scrollableCells></ng-container>
6651
+ @if (this.cells?.length > 0) {
6652
+ <ng-container [ngTemplateOutlet]="noCells"></ng-container>
6653
+ <!--
6654
+ Where the cells go back to when the detail stops being column aligned, because a column was
6655
+ unpinned. A view that has been moved into a container cannot be handed back to the content
6656
+ projection it came from, so it needs a container of its own in the same place.
6657
+ -->
6658
+ <ng-container #plainCells></ng-container>
6659
+ }
6660
+ @if (this.cells?.length === 0) {
6661
+ <hermes-dg-cell class="datagrid-container">
6662
+ <ng-container [ngTemplateOutlet]="noCells"></ng-container>
6663
+ </hermes-dg-cell>
6664
+ }
6665
+
6666
+ <ng-template #noCells>
6667
+ <ng-content></ng-content>
6668
+ </ng-template>
6669
+ <div class="hermes-sr-only">{{ endOfExpandableContentAriaText }}</div>
6670
6670
  `, isInline: true, dependencies: [{ kind: "directive", type: i10.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: HermesDatagridCell, selector: "hermes-dg-cell" }, { kind: "directive", type: DatagridCellRenderer, selector: "hermes-dg-cell" }] }); }
6671
6671
  }
6672
6672
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: HermesDatagridRowDetail, decorators: [{
6673
6673
  type: Component,
6674
6674
  args: [{
6675
6675
  selector: 'hermes-dg-row-detail',
6676
- template: `
6677
- <div class="hermes-sr-only">
6678
- {{ beginningOfExpandableContentAriaText }}
6679
- {{ commonStrings.keys.datagridExpandableRowsHelperText }}
6680
- </div>
6681
- <!--
6682
- These two containers mirror the ones in the row above and are only used while the detail is
6683
- column aligned - see columnAligned. They are always rendered so the cells always have
6684
- somewhere to be moved into, and the pinned one takes itself out of the layout while empty.
6685
- -->
6686
- <div class="datagrid-pinned-cells">
6687
- <ng-container #pinnedCells></ng-container>
6688
- </div>
6689
- <ng-container #scrollableCells></ng-container>
6690
- @if (this.cells?.length > 0) {
6691
- <ng-container [ngTemplateOutlet]="noCells"></ng-container>
6692
- <!--
6693
- Where the cells go back to when the detail stops being column aligned, because a column was
6694
- unpinned. A view that has been moved into a container cannot be handed back to the content
6695
- projection it came from, so it needs a container of its own in the same place.
6696
- -->
6697
- <ng-container #plainCells></ng-container>
6698
- }
6699
- @if (this.cells?.length === 0) {
6700
- <hermes-dg-cell class="datagrid-container">
6701
- <ng-container [ngTemplateOutlet]="noCells"></ng-container>
6702
- </hermes-dg-cell>
6703
- }
6704
-
6705
- <ng-template #noCells>
6706
- <ng-content></ng-content>
6707
- </ng-template>
6708
- <div class="hermes-sr-only">{{ endOfExpandableContentAriaText }}</div>
6676
+ template: `
6677
+ <div class="hermes-sr-only">
6678
+ {{ beginningOfExpandableContentAriaText }}
6679
+ {{ commonStrings.keys.datagridExpandableRowsHelperText }}
6680
+ </div>
6681
+ <!--
6682
+ These two containers mirror the ones in the row above and are only used while the detail is
6683
+ column aligned - see columnAligned. They are always rendered so the cells always have
6684
+ somewhere to be moved into, and the pinned one takes itself out of the layout while empty.
6685
+ -->
6686
+ <div class="datagrid-pinned-cells">
6687
+ <ng-container #pinnedCells></ng-container>
6688
+ </div>
6689
+ <ng-container #scrollableCells></ng-container>
6690
+ @if (this.cells?.length > 0) {
6691
+ <ng-container [ngTemplateOutlet]="noCells"></ng-container>
6692
+ <!--
6693
+ Where the cells go back to when the detail stops being column aligned, because a column was
6694
+ unpinned. A view that has been moved into a container cannot be handed back to the content
6695
+ projection it came from, so it needs a container of its own in the same place.
6696
+ -->
6697
+ <ng-container #plainCells></ng-container>
6698
+ }
6699
+ @if (this.cells?.length === 0) {
6700
+ <hermes-dg-cell class="datagrid-container">
6701
+ <ng-container [ngTemplateOutlet]="noCells"></ng-container>
6702
+ </hermes-dg-cell>
6703
+ }
6704
+
6705
+ <ng-template #noCells>
6706
+ <ng-content></ng-content>
6707
+ </ng-template>
6708
+ <div class="hermes-sr-only">{{ endOfExpandableContentAriaText }}</div>
6709
6709
  `,
6710
6710
  host: {
6711
6711
  '[class.datagrid-row-flex]': 'true',
@@ -6757,50 +6757,50 @@ class HermesDatagridFooter {
6757
6757
  return this.columnsService.hasHideableColumns;
6758
6758
  }
6759
6759
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: HermesDatagridFooter, deps: [{ token: Selection }, { token: DetailService }, { token: ColumnsService }, { token: i2.HermesCommonStringsService }], target: i0.ɵɵFactoryTarget.Component }); }
6760
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.22", type: HermesDatagridFooter, isStandalone: false, selector: "hermes-dg-footer", host: { properties: { "class.datagrid-footer": "true" } }, ngImport: i0, template: `
6761
- @if (selection.selectionType === SELECTION_TYPE.Multi && selection.current?.length > 0) {
6762
- <div class="hermes-form-control-disabled">
6763
- <hermes-checkbox-wrapper class="datagrid-footer-select">
6764
- <input hermesCheckbox type="checkbox" checked="checked" disabled />
6765
- <label>{{ selection.current.length }}</label>
6766
- <span class="hermes-sr-only">{{ commonStrings.keys.selectedRows }}</span>
6767
- </hermes-checkbox-wrapper>
6768
- </div>
6769
- }
6770
- @if (!detailService.isOpen) {
6771
- @if (hasHideableColumns) {
6772
- <hermes-dg-column-toggle></hermes-dg-column-toggle>
6773
- }
6774
- <div class="datagrid-footer-description">
6775
- <ng-content></ng-content>
6776
- </div>
6777
- }
6778
- <ng-content select="hermes-dg-pagination"></ng-content>
6760
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.22", type: HermesDatagridFooter, isStandalone: false, selector: "hermes-dg-footer", host: { properties: { "class.datagrid-footer": "true" } }, ngImport: i0, template: `
6761
+ @if (selection.selectionType === SELECTION_TYPE.Multi && selection.current?.length > 0) {
6762
+ <div class="hermes-form-control-disabled">
6763
+ <hermes-checkbox-wrapper class="datagrid-footer-select">
6764
+ <input hermesCheckbox type="checkbox" checked="checked" disabled />
6765
+ <label>{{ selection.current.length }}</label>
6766
+ <span class="hermes-sr-only">{{ commonStrings.keys.selectedRows }}</span>
6767
+ </hermes-checkbox-wrapper>
6768
+ </div>
6769
+ }
6770
+ @if (!detailService.isOpen) {
6771
+ @if (hasHideableColumns) {
6772
+ <hermes-dg-column-toggle></hermes-dg-column-toggle>
6773
+ }
6774
+ <div class="datagrid-footer-description">
6775
+ <ng-content></ng-content>
6776
+ </div>
6777
+ }
6778
+ <ng-content select="hermes-dg-pagination"></ng-content>
6779
6779
  `, isInline: true, dependencies: [{ kind: "directive", type: i4.HermesControlLabel, selector: "label", inputs: ["id", "for"] }, { kind: "directive", type: i7.HermesCheckbox, selector: "[hermesCheckbox],[hermesToggle]" }, { kind: "component", type: i7.HermesCheckboxWrapper, selector: "hermes-checkbox-wrapper,hermes-toggle-wrapper" }, { kind: "component", type: HermesDatagridColumnToggle, selector: "hermes-dg-column-toggle" }] }); }
6780
6780
  }
6781
6781
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: HermesDatagridFooter, decorators: [{
6782
6782
  type: Component,
6783
6783
  args: [{
6784
6784
  selector: 'hermes-dg-footer',
6785
- template: `
6786
- @if (selection.selectionType === SELECTION_TYPE.Multi && selection.current?.length > 0) {
6787
- <div class="hermes-form-control-disabled">
6788
- <hermes-checkbox-wrapper class="datagrid-footer-select">
6789
- <input hermesCheckbox type="checkbox" checked="checked" disabled />
6790
- <label>{{ selection.current.length }}</label>
6791
- <span class="hermes-sr-only">{{ commonStrings.keys.selectedRows }}</span>
6792
- </hermes-checkbox-wrapper>
6793
- </div>
6794
- }
6795
- @if (!detailService.isOpen) {
6796
- @if (hasHideableColumns) {
6797
- <hermes-dg-column-toggle></hermes-dg-column-toggle>
6798
- }
6799
- <div class="datagrid-footer-description">
6800
- <ng-content></ng-content>
6801
- </div>
6802
- }
6803
- <ng-content select="hermes-dg-pagination"></ng-content>
6785
+ template: `
6786
+ @if (selection.selectionType === SELECTION_TYPE.Multi && selection.current?.length > 0) {
6787
+ <div class="hermes-form-control-disabled">
6788
+ <hermes-checkbox-wrapper class="datagrid-footer-select">
6789
+ <input hermesCheckbox type="checkbox" checked="checked" disabled />
6790
+ <label>{{ selection.current.length }}</label>
6791
+ <span class="hermes-sr-only">{{ commonStrings.keys.selectedRows }}</span>
6792
+ </hermes-checkbox-wrapper>
6793
+ </div>
6794
+ }
6795
+ @if (!detailService.isOpen) {
6796
+ @if (hasHideableColumns) {
6797
+ <hermes-dg-column-toggle></hermes-dg-column-toggle>
6798
+ }
6799
+ <div class="datagrid-footer-description">
6800
+ <ng-content></ng-content>
6801
+ </div>
6802
+ }
6803
+ <ng-content select="hermes-dg-pagination"></ng-content>
6804
6804
  `,
6805
6805
  host: {
6806
6806
  '[class.datagrid-footer]': 'true',
@@ -6831,30 +6831,30 @@ class HermesDatagridPageSize {
6831
6831
  }
6832
6832
  }
6833
6833
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: HermesDatagridPageSize, deps: [{ token: Page }], target: i0.ɵɵFactoryTarget.Component }); }
6834
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.22", type: HermesDatagridPageSize, isStandalone: false, selector: "hermes-dg-page-size", inputs: { pageSizeOptions: ["hermesPageSizeOptions", "pageSizeOptions"], pageSizeOptionsId: ["hermesPageSizeOptionsId", "pageSizeOptionsId"] }, viewQueries: [{ propertyName: "label", first: true, predicate: HermesControlLabel, descendants: true, static: true }], ngImport: i0, template: `
6835
- <label [for]="pageSizeOptionsId"><ng-content></ng-content></label>
6836
- <div class="hermes-native-select-wrapper">
6837
- <select [id]="pageSizeOptionsId" [class.hermes-page-size-select]="true" [(ngModel)]="page.size">
6838
- @for (option of pageSizeOptions; track option) {
6839
- <option [ngValue]="option">{{ option }}</option>
6840
- }
6841
- </select>
6842
- </div>
6834
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.22", type: HermesDatagridPageSize, isStandalone: false, selector: "hermes-dg-page-size", inputs: { pageSizeOptions: ["hermesPageSizeOptions", "pageSizeOptions"], pageSizeOptionsId: ["hermesPageSizeOptionsId", "pageSizeOptionsId"] }, viewQueries: [{ propertyName: "label", first: true, predicate: HermesControlLabel, descendants: true, static: true }], ngImport: i0, template: `
6835
+ <label [for]="pageSizeOptionsId"><ng-content></ng-content></label>
6836
+ <div class="hermes-native-select-wrapper">
6837
+ <select [id]="pageSizeOptionsId" [class.hermes-page-size-select]="true" [(ngModel)]="page.size">
6838
+ @for (option of pageSizeOptions; track option) {
6839
+ <option [ngValue]="option">{{ option }}</option>
6840
+ }
6841
+ </select>
6842
+ </div>
6843
6843
  `, isInline: true, dependencies: [{ kind: "directive", type: i4.HermesControlLabel, selector: "label", inputs: ["id", "for"] }, { kind: "directive", type: i14.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i14.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i14.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i14.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i14.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] }); }
6844
6844
  }
6845
6845
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: HermesDatagridPageSize, decorators: [{
6846
6846
  type: Component,
6847
6847
  args: [{
6848
6848
  selector: 'hermes-dg-page-size',
6849
- template: `
6850
- <label [for]="pageSizeOptionsId"><ng-content></ng-content></label>
6851
- <div class="hermes-native-select-wrapper">
6852
- <select [id]="pageSizeOptionsId" [class.hermes-page-size-select]="true" [(ngModel)]="page.size">
6853
- @for (option of pageSizeOptions; track option) {
6854
- <option [ngValue]="option">{{ option }}</option>
6855
- }
6856
- </select>
6857
- </div>
6849
+ template: `
6850
+ <label [for]="pageSizeOptionsId"><ng-content></ng-content></label>
6851
+ <div class="hermes-native-select-wrapper">
6852
+ <select [id]="pageSizeOptionsId" [class.hermes-page-size-select]="true" [(ngModel)]="page.size">
6853
+ @for (option of pageSizeOptions; track option) {
6854
+ <option [ngValue]="option">{{ option }}</option>
6855
+ }
6856
+ </select>
6857
+ </div>
6858
6858
  `,
6859
6859
  standalone: false,
6860
6860
  }]
@@ -7020,212 +7020,212 @@ class HermesDatagridPagination {
7020
7020
  this.currentPageInputRef.nativeElement.value = this.page.current.toString();
7021
7021
  }
7022
7022
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: HermesDatagridPagination, deps: [{ token: Page }, { token: i2.HermesCommonStringsService }, { token: DetailService }], target: i0.ɵɵFactoryTarget.Component }); }
7023
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.22", type: HermesDatagridPagination, isStandalone: false, selector: "hermes-dg-pagination", inputs: { disableCurrentPageInput: ["hermesDgPageInputDisabled", "disableCurrentPageInput"], pageSize: ["hermesDgPageSize", "pageSize"], totalItems: ["hermesDgTotalItems", "totalItems"], lastPage: ["hermesDgLastPage", "lastPage"], currentPage: ["hermesDgPage", "currentPage"] }, outputs: { currentChanged: "hermesDgPageChange" }, host: { properties: { "class.pagination": "true" } }, queries: [{ propertyName: "_pageSizeComponent", first: true, predicate: HermesDatagridPageSize, descendants: true }], viewQueries: [{ propertyName: "currentPageInputRef", first: true, predicate: ["currentPageInput"], descendants: true }], ngImport: i0, template: `
7024
- @if (!detailService.isOpen) {
7025
- @if (_pageSizeComponent) {
7026
- <div class="pagination-size">
7027
- <ng-content select="hermes-dg-page-size"></ng-content>
7028
- </div>
7029
- }
7030
- <div class="pagination-description">
7031
- <ng-content></ng-content>
7032
- </div>
7033
- @if (page.last > 1) {
7034
- <div class="pagination-list">
7035
- <button
7036
- type="button"
7037
- class="pagination-first"
7038
- [disabled]="page.current <= 1"
7039
- (click)="page.current = 1"
7040
- [attr.aria-label]="commonStrings.keys.firstPage"
7041
- >
7042
- <span class="hermes-sr-only">{{ commonStrings.keys.firstPage }}</span>
7043
- <hermes-icon shape="step-forward-2" direction="down"></hermes-icon>
7044
- </button>
7045
- <button
7046
- type="button"
7047
- class="pagination-previous"
7048
- [disabled]="page.current <= 1"
7049
- (click)="page.current = page.current - 1"
7050
- [attr.aria-label]="commonStrings.keys.previousPage"
7051
- >
7052
- <span class="hermes-sr-only">{{ commonStrings.keys.previousPage }}</span>
7053
- <hermes-icon shape="angle" direction="left"></hermes-icon>
7054
- </button>
7055
- <div class="pagination-pages">
7056
- @if (!disableCurrentPageInput) {
7057
- <input
7058
- #currentPageInput
7059
- type="text"
7060
- class="pagination-current hermes-input"
7061
- [size]="page.last.toString().length"
7062
- [value]="page.current"
7063
- (keydown.enter)="updateCurrentPage($event)"
7064
- (blur)="verifyCurrentPage($event)"
7065
- [attr.aria-label]="commonStrings.keys.currentPage"
7066
- />
7067
- } @else {
7068
- <span>{{ page.current }}</span>
7069
- }
7070
- &nbsp;/&nbsp;<span [attr.aria-label]="commonStrings.keys.totalPages">{{ page.last }}</span>
7071
- </div>
7072
- <button
7073
- type="button"
7074
- class="pagination-next"
7075
- [disabled]="page.current >= page.last"
7076
- (click)="page.current = page.current + 1"
7077
- [attr.aria-label]="commonStrings.keys.nextPage"
7078
- >
7079
- <span class="hermes-sr-only">{{ commonStrings.keys.nextPage }}</span>
7080
- <hermes-icon shape="angle" direction="right"></hermes-icon>
7081
- </button>
7082
- <button
7083
- type="button"
7084
- class="pagination-last"
7085
- [disabled]="page.current >= page.last"
7086
- (click)="page.current = page.last"
7087
- [attr.aria-label]="commonStrings.keys.lastPage"
7088
- >
7089
- <span class="hermes-sr-only">{{ commonStrings.keys.lastPage }}</span>
7090
- <hermes-icon shape="step-forward-2" direction="up"></hermes-icon>
7091
- </button>
7092
- </div>
7093
- }
7094
- }
7095
- @if (detailService.isOpen) {
7096
- <div class="pagination-description-compact">
7097
- {{ page.firstItem + 1 }}-{{ page.lastItem + 1 }} / {{ page.totalItems }}
7098
- </div>
7099
- <div class="pagination-list">
7100
- <button
7101
- type="button"
7102
- class="pagination-previous"
7103
- [disabled]="page.current <= 1"
7104
- (click)="page.current = page.current - 1"
7105
- [attr.aria-label]="commonStrings.keys.previousPage"
7106
- >
7107
- <span class="hermes-sr-only">{{ commonStrings.keys.previousPage }}</span>
7108
- <hermes-icon shape="angle" direction="left"></hermes-icon>
7109
- </button>
7110
- <span>{{ page.current }}</span>
7111
- <button
7112
- type="button"
7113
- class="pagination-next"
7114
- [disabled]="page.current >= page.last"
7115
- (click)="page.current = page.current + 1"
7116
- [attr.aria-label]="commonStrings.keys.nextPage"
7117
- >
7118
- <span class="hermes-sr-only">{{ commonStrings.keys.nextPage }}</span>
7119
- <hermes-icon shape="angle" direction="right"></hermes-icon>
7120
- </button>
7121
- </div>
7122
- }
7023
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.22", type: HermesDatagridPagination, isStandalone: false, selector: "hermes-dg-pagination", inputs: { disableCurrentPageInput: ["hermesDgPageInputDisabled", "disableCurrentPageInput"], pageSize: ["hermesDgPageSize", "pageSize"], totalItems: ["hermesDgTotalItems", "totalItems"], lastPage: ["hermesDgLastPage", "lastPage"], currentPage: ["hermesDgPage", "currentPage"] }, outputs: { currentChanged: "hermesDgPageChange" }, host: { properties: { "class.pagination": "true" } }, queries: [{ propertyName: "_pageSizeComponent", first: true, predicate: HermesDatagridPageSize, descendants: true }], viewQueries: [{ propertyName: "currentPageInputRef", first: true, predicate: ["currentPageInput"], descendants: true }], ngImport: i0, template: `
7024
+ @if (!detailService.isOpen) {
7025
+ @if (_pageSizeComponent) {
7026
+ <div class="pagination-size">
7027
+ <ng-content select="hermes-dg-page-size"></ng-content>
7028
+ </div>
7029
+ }
7030
+ <div class="pagination-description">
7031
+ <ng-content></ng-content>
7032
+ </div>
7033
+ @if (page.last > 1) {
7034
+ <div class="pagination-list">
7035
+ <button
7036
+ type="button"
7037
+ class="pagination-first"
7038
+ [disabled]="page.current <= 1"
7039
+ (click)="page.current = 1"
7040
+ [attr.aria-label]="commonStrings.keys.firstPage"
7041
+ >
7042
+ <span class="hermes-sr-only">{{ commonStrings.keys.firstPage }}</span>
7043
+ <hermes-icon shape="step-forward-2" direction="down"></hermes-icon>
7044
+ </button>
7045
+ <button
7046
+ type="button"
7047
+ class="pagination-previous"
7048
+ [disabled]="page.current <= 1"
7049
+ (click)="page.current = page.current - 1"
7050
+ [attr.aria-label]="commonStrings.keys.previousPage"
7051
+ >
7052
+ <span class="hermes-sr-only">{{ commonStrings.keys.previousPage }}</span>
7053
+ <hermes-icon shape="angle" direction="left"></hermes-icon>
7054
+ </button>
7055
+ <div class="pagination-pages">
7056
+ @if (!disableCurrentPageInput) {
7057
+ <input
7058
+ #currentPageInput
7059
+ type="text"
7060
+ class="pagination-current hermes-input"
7061
+ [size]="page.last.toString().length"
7062
+ [value]="page.current"
7063
+ (keydown.enter)="updateCurrentPage($event)"
7064
+ (blur)="verifyCurrentPage($event)"
7065
+ [attr.aria-label]="commonStrings.keys.currentPage"
7066
+ />
7067
+ } @else {
7068
+ <span>{{ page.current }}</span>
7069
+ }
7070
+ &nbsp;/&nbsp;<span [attr.aria-label]="commonStrings.keys.totalPages">{{ page.last }}</span>
7071
+ </div>
7072
+ <button
7073
+ type="button"
7074
+ class="pagination-next"
7075
+ [disabled]="page.current >= page.last"
7076
+ (click)="page.current = page.current + 1"
7077
+ [attr.aria-label]="commonStrings.keys.nextPage"
7078
+ >
7079
+ <span class="hermes-sr-only">{{ commonStrings.keys.nextPage }}</span>
7080
+ <hermes-icon shape="angle" direction="right"></hermes-icon>
7081
+ </button>
7082
+ <button
7083
+ type="button"
7084
+ class="pagination-last"
7085
+ [disabled]="page.current >= page.last"
7086
+ (click)="page.current = page.last"
7087
+ [attr.aria-label]="commonStrings.keys.lastPage"
7088
+ >
7089
+ <span class="hermes-sr-only">{{ commonStrings.keys.lastPage }}</span>
7090
+ <hermes-icon shape="step-forward-2" direction="up"></hermes-icon>
7091
+ </button>
7092
+ </div>
7093
+ }
7094
+ }
7095
+ @if (detailService.isOpen) {
7096
+ <div class="pagination-description-compact">
7097
+ {{ page.firstItem + 1 }}-{{ page.lastItem + 1 }} / {{ page.totalItems }}
7098
+ </div>
7099
+ <div class="pagination-list">
7100
+ <button
7101
+ type="button"
7102
+ class="pagination-previous"
7103
+ [disabled]="page.current <= 1"
7104
+ (click)="page.current = page.current - 1"
7105
+ [attr.aria-label]="commonStrings.keys.previousPage"
7106
+ >
7107
+ <span class="hermes-sr-only">{{ commonStrings.keys.previousPage }}</span>
7108
+ <hermes-icon shape="angle" direction="left"></hermes-icon>
7109
+ </button>
7110
+ <span>{{ page.current }}</span>
7111
+ <button
7112
+ type="button"
7113
+ class="pagination-next"
7114
+ [disabled]="page.current >= page.last"
7115
+ (click)="page.current = page.current + 1"
7116
+ [attr.aria-label]="commonStrings.keys.nextPage"
7117
+ >
7118
+ <span class="hermes-sr-only">{{ commonStrings.keys.nextPage }}</span>
7119
+ <hermes-icon shape="angle" direction="right"></hermes-icon>
7120
+ </button>
7121
+ </div>
7122
+ }
7123
7123
  `, isInline: true, dependencies: [{ kind: "component", type: i5.HermesIcon, selector: "hermes-icon, hermes-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }] }); }
7124
7124
  }
7125
7125
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: HermesDatagridPagination, decorators: [{
7126
7126
  type: Component,
7127
7127
  args: [{
7128
7128
  selector: 'hermes-dg-pagination',
7129
- template: `
7130
- @if (!detailService.isOpen) {
7131
- @if (_pageSizeComponent) {
7132
- <div class="pagination-size">
7133
- <ng-content select="hermes-dg-page-size"></ng-content>
7134
- </div>
7135
- }
7136
- <div class="pagination-description">
7137
- <ng-content></ng-content>
7138
- </div>
7139
- @if (page.last > 1) {
7140
- <div class="pagination-list">
7141
- <button
7142
- type="button"
7143
- class="pagination-first"
7144
- [disabled]="page.current <= 1"
7145
- (click)="page.current = 1"
7146
- [attr.aria-label]="commonStrings.keys.firstPage"
7147
- >
7148
- <span class="hermes-sr-only">{{ commonStrings.keys.firstPage }}</span>
7149
- <hermes-icon shape="step-forward-2" direction="down"></hermes-icon>
7150
- </button>
7151
- <button
7152
- type="button"
7153
- class="pagination-previous"
7154
- [disabled]="page.current <= 1"
7155
- (click)="page.current = page.current - 1"
7156
- [attr.aria-label]="commonStrings.keys.previousPage"
7157
- >
7158
- <span class="hermes-sr-only">{{ commonStrings.keys.previousPage }}</span>
7159
- <hermes-icon shape="angle" direction="left"></hermes-icon>
7160
- </button>
7161
- <div class="pagination-pages">
7162
- @if (!disableCurrentPageInput) {
7163
- <input
7164
- #currentPageInput
7165
- type="text"
7166
- class="pagination-current hermes-input"
7167
- [size]="page.last.toString().length"
7168
- [value]="page.current"
7169
- (keydown.enter)="updateCurrentPage($event)"
7170
- (blur)="verifyCurrentPage($event)"
7171
- [attr.aria-label]="commonStrings.keys.currentPage"
7172
- />
7173
- } @else {
7174
- <span>{{ page.current }}</span>
7175
- }
7176
- &nbsp;/&nbsp;<span [attr.aria-label]="commonStrings.keys.totalPages">{{ page.last }}</span>
7177
- </div>
7178
- <button
7179
- type="button"
7180
- class="pagination-next"
7181
- [disabled]="page.current >= page.last"
7182
- (click)="page.current = page.current + 1"
7183
- [attr.aria-label]="commonStrings.keys.nextPage"
7184
- >
7185
- <span class="hermes-sr-only">{{ commonStrings.keys.nextPage }}</span>
7186
- <hermes-icon shape="angle" direction="right"></hermes-icon>
7187
- </button>
7188
- <button
7189
- type="button"
7190
- class="pagination-last"
7191
- [disabled]="page.current >= page.last"
7192
- (click)="page.current = page.last"
7193
- [attr.aria-label]="commonStrings.keys.lastPage"
7194
- >
7195
- <span class="hermes-sr-only">{{ commonStrings.keys.lastPage }}</span>
7196
- <hermes-icon shape="step-forward-2" direction="up"></hermes-icon>
7197
- </button>
7198
- </div>
7199
- }
7200
- }
7201
- @if (detailService.isOpen) {
7202
- <div class="pagination-description-compact">
7203
- {{ page.firstItem + 1 }}-{{ page.lastItem + 1 }} / {{ page.totalItems }}
7204
- </div>
7205
- <div class="pagination-list">
7206
- <button
7207
- type="button"
7208
- class="pagination-previous"
7209
- [disabled]="page.current <= 1"
7210
- (click)="page.current = page.current - 1"
7211
- [attr.aria-label]="commonStrings.keys.previousPage"
7212
- >
7213
- <span class="hermes-sr-only">{{ commonStrings.keys.previousPage }}</span>
7214
- <hermes-icon shape="angle" direction="left"></hermes-icon>
7215
- </button>
7216
- <span>{{ page.current }}</span>
7217
- <button
7218
- type="button"
7219
- class="pagination-next"
7220
- [disabled]="page.current >= page.last"
7221
- (click)="page.current = page.current + 1"
7222
- [attr.aria-label]="commonStrings.keys.nextPage"
7223
- >
7224
- <span class="hermes-sr-only">{{ commonStrings.keys.nextPage }}</span>
7225
- <hermes-icon shape="angle" direction="right"></hermes-icon>
7226
- </button>
7227
- </div>
7228
- }
7129
+ template: `
7130
+ @if (!detailService.isOpen) {
7131
+ @if (_pageSizeComponent) {
7132
+ <div class="pagination-size">
7133
+ <ng-content select="hermes-dg-page-size"></ng-content>
7134
+ </div>
7135
+ }
7136
+ <div class="pagination-description">
7137
+ <ng-content></ng-content>
7138
+ </div>
7139
+ @if (page.last > 1) {
7140
+ <div class="pagination-list">
7141
+ <button
7142
+ type="button"
7143
+ class="pagination-first"
7144
+ [disabled]="page.current <= 1"
7145
+ (click)="page.current = 1"
7146
+ [attr.aria-label]="commonStrings.keys.firstPage"
7147
+ >
7148
+ <span class="hermes-sr-only">{{ commonStrings.keys.firstPage }}</span>
7149
+ <hermes-icon shape="step-forward-2" direction="down"></hermes-icon>
7150
+ </button>
7151
+ <button
7152
+ type="button"
7153
+ class="pagination-previous"
7154
+ [disabled]="page.current <= 1"
7155
+ (click)="page.current = page.current - 1"
7156
+ [attr.aria-label]="commonStrings.keys.previousPage"
7157
+ >
7158
+ <span class="hermes-sr-only">{{ commonStrings.keys.previousPage }}</span>
7159
+ <hermes-icon shape="angle" direction="left"></hermes-icon>
7160
+ </button>
7161
+ <div class="pagination-pages">
7162
+ @if (!disableCurrentPageInput) {
7163
+ <input
7164
+ #currentPageInput
7165
+ type="text"
7166
+ class="pagination-current hermes-input"
7167
+ [size]="page.last.toString().length"
7168
+ [value]="page.current"
7169
+ (keydown.enter)="updateCurrentPage($event)"
7170
+ (blur)="verifyCurrentPage($event)"
7171
+ [attr.aria-label]="commonStrings.keys.currentPage"
7172
+ />
7173
+ } @else {
7174
+ <span>{{ page.current }}</span>
7175
+ }
7176
+ &nbsp;/&nbsp;<span [attr.aria-label]="commonStrings.keys.totalPages">{{ page.last }}</span>
7177
+ </div>
7178
+ <button
7179
+ type="button"
7180
+ class="pagination-next"
7181
+ [disabled]="page.current >= page.last"
7182
+ (click)="page.current = page.current + 1"
7183
+ [attr.aria-label]="commonStrings.keys.nextPage"
7184
+ >
7185
+ <span class="hermes-sr-only">{{ commonStrings.keys.nextPage }}</span>
7186
+ <hermes-icon shape="angle" direction="right"></hermes-icon>
7187
+ </button>
7188
+ <button
7189
+ type="button"
7190
+ class="pagination-last"
7191
+ [disabled]="page.current >= page.last"
7192
+ (click)="page.current = page.last"
7193
+ [attr.aria-label]="commonStrings.keys.lastPage"
7194
+ >
7195
+ <span class="hermes-sr-only">{{ commonStrings.keys.lastPage }}</span>
7196
+ <hermes-icon shape="step-forward-2" direction="up"></hermes-icon>
7197
+ </button>
7198
+ </div>
7199
+ }
7200
+ }
7201
+ @if (detailService.isOpen) {
7202
+ <div class="pagination-description-compact">
7203
+ {{ page.firstItem + 1 }}-{{ page.lastItem + 1 }} / {{ page.totalItems }}
7204
+ </div>
7205
+ <div class="pagination-list">
7206
+ <button
7207
+ type="button"
7208
+ class="pagination-previous"
7209
+ [disabled]="page.current <= 1"
7210
+ (click)="page.current = page.current - 1"
7211
+ [attr.aria-label]="commonStrings.keys.previousPage"
7212
+ >
7213
+ <span class="hermes-sr-only">{{ commonStrings.keys.previousPage }}</span>
7214
+ <hermes-icon shape="angle" direction="left"></hermes-icon>
7215
+ </button>
7216
+ <span>{{ page.current }}</span>
7217
+ <button
7218
+ type="button"
7219
+ class="pagination-next"
7220
+ [disabled]="page.current >= page.last"
7221
+ (click)="page.current = page.current + 1"
7222
+ [attr.aria-label]="commonStrings.keys.nextPage"
7223
+ >
7224
+ <span class="hermes-sr-only">{{ commonStrings.keys.nextPage }}</span>
7225
+ <hermes-icon shape="angle" direction="right"></hermes-icon>
7226
+ </button>
7227
+ </div>
7228
+ }
7229
7229
  `,
7230
7230
  host: { '[class.pagination]': 'true' },
7231
7231
  standalone: false,