@eui/components 19.2.0-snapshot-1746008883515 → 19.2.1-snapshot-1746515807848

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 (233) hide show
  1. package/directives/eui-clearable.directive.d.ts.map +1 -1
  2. package/directives/eui-loading.directive.d.ts.map +1 -1
  3. package/directives/eui-maxlength.directive.d.ts.map +1 -1
  4. package/directives/eui-scroll-handler.directive.d.ts.map +1 -1
  5. package/directives/eui-smooth-scroll.directive.d.ts.map +1 -1
  6. package/directives/eui-tooltip/eui-tooltip.directive.d.ts.map +1 -1
  7. package/docs/components/EuiAlertComponent.html +1 -1
  8. package/docs/components/EuiAlertTitleComponent.html +4 -0
  9. package/docs/components/EuiCardContentComponent.html +4 -0
  10. package/docs/components/EuiCardFooterActionButtonsComponent.html +4 -0
  11. package/docs/components/EuiCardFooterActionIconsComponent.html +4 -0
  12. package/docs/components/EuiCardFooterComponent.html +4 -4
  13. package/docs/components/EuiCardHeaderBodyComponent.html +4 -0
  14. package/docs/components/EuiCardHeaderComponent.html +4 -0
  15. package/docs/components/EuiCardHeaderLeftContentComponent.html +4 -0
  16. package/docs/components/EuiCardHeaderRightContentComponent.html +4 -0
  17. package/docs/components/EuiCardHeaderSubtitleComponent.html +4 -0
  18. package/docs/components/EuiCardHeaderTitleComponent.html +4 -0
  19. package/docs/components/EuiCardMediaComponent.html +4 -0
  20. package/docs/components/EuiDashboardCardContentComponent.html +4 -0
  21. package/docs/components/EuiDateRangeSelectorComponent.html +183 -0
  22. package/docs/components/EuiIconButtonComponent.html +51 -0
  23. package/docs/components/EuiIconStateComponent.html +1 -1
  24. package/docs/dependencies.html +19 -19
  25. package/docs/js/menu-wc.js +3 -3
  26. package/docs/js/menu-wc_es5.js +1 -1
  27. package/docs/js/search/search_index.js +2 -2
  28. package/eui-alert/components/eui-alert-title.component.d.ts.map +1 -1
  29. package/eui-alert/eui-alert.component.d.ts.map +1 -1
  30. package/eui-autocomplete/eui-autocomplete-option/eui-autocomplete-option.component.d.ts.map +1 -1
  31. package/eui-autocomplete/eui-autocomplete.component.d.ts.map +1 -1
  32. package/eui-avatar/eui-avatar.component.d.ts.map +1 -1
  33. package/eui-badge/eui-badge.component.d.ts.map +1 -1
  34. package/eui-block-content/eui-block-content.component.d.ts.map +1 -1
  35. package/eui-block-document/eui-block-document.component.d.ts.map +1 -1
  36. package/eui-button/eui-button.component.d.ts.map +1 -1
  37. package/eui-button-group/eui-button-group.component.d.ts.map +1 -1
  38. package/eui-card/components/eui-card-content/eui-card-content.component.d.ts.map +1 -1
  39. package/eui-card/components/eui-card-footer/eui-card-footer-action-buttons.component.d.ts.map +1 -1
  40. package/eui-card/components/eui-card-footer/eui-card-footer-action-icons.component.d.ts.map +1 -1
  41. package/eui-card/components/eui-card-footer/eui-card-footer.component.d.ts.map +1 -1
  42. package/eui-card/components/eui-card-header/eui-card-header-left-content.component.d.ts.map +1 -1
  43. package/eui-card/components/eui-card-header/eui-card-header-right-content.component.d.ts.map +1 -1
  44. package/eui-card/components/eui-card-header/eui-card-header-subtitle.component.d.ts.map +1 -1
  45. package/eui-card/components/eui-card-header/eui-card-header-title.component.d.ts.map +1 -1
  46. package/eui-card/components/eui-card-header/eui-card-header.component.d.ts.map +1 -1
  47. package/eui-card/components/eui-card-header-body/eui-card-header-body.component.d.ts.map +1 -1
  48. package/eui-card/components/eui-card-media/eui-card-media.component.d.ts.map +1 -1
  49. package/eui-card/eui-card.component.d.ts.map +1 -1
  50. package/eui-chip/eui-chip.component.d.ts.map +1 -1
  51. package/eui-chip-list/eui-chip-list.component.d.ts.map +1 -1
  52. package/eui-dashboard-card/eui-dashboard-card-content/dashboard-card-content.component.d.ts.map +1 -1
  53. package/eui-dashboard-card/eui-dashboard-card.component.d.ts.map +1 -1
  54. package/eui-date-range-selector/eui-date-range-selector.component.d.ts +154 -1
  55. package/eui-date-range-selector/eui-date-range-selector.component.d.ts.map +1 -1
  56. package/eui-datepicker/eui-datepicker.component.d.ts.map +1 -1
  57. package/eui-dialog/eui-dialog.component.d.ts.map +1 -1
  58. package/eui-disable-content/eui-disable-content.component.d.ts.map +1 -1
  59. package/eui-dropdown/dropdown-item/eui-dropdown-item.component.d.ts.map +1 -1
  60. package/eui-dropdown/eui-dropdown.component.d.ts.map +1 -1
  61. package/eui-feedback-message/eui-feedback-message.component.d.ts.map +1 -1
  62. package/eui-fieldset/eui-fieldset.component.d.ts.map +1 -1
  63. package/eui-file-upload/eui-file-upload.component.d.ts.map +1 -1
  64. package/eui-file-upload/file-preview/file-preview.component.d.ts.map +1 -1
  65. package/eui-growl/eui-growl.component.d.ts.map +1 -1
  66. package/eui-icon/eui-icon-svg.component.d.ts.map +1 -1
  67. package/eui-icon-button/eui-icon-button.component.d.ts +5 -1
  68. package/eui-icon-button/eui-icon-button.component.d.ts.map +1 -1
  69. package/eui-icon-button-expander/eui-icon-button-expander.component.d.ts.map +1 -1
  70. package/eui-icon-input/eui-icon-input.component.d.ts.map +1 -1
  71. package/eui-icon-state/eui-icon-state.component.d.ts.map +1 -1
  72. package/eui-icon-toggle/eui-icon-toggle.component.d.ts.map +1 -1
  73. package/eui-input-number/eui-input-number.component.d.ts.map +1 -1
  74. package/eui-label/eui-label.component.d.ts.map +1 -1
  75. package/eui-language-selector/language-selector.component.d.ts.map +1 -1
  76. package/eui-list/eui-list-item/eui-list-item.component.d.ts.map +1 -1
  77. package/eui-menu/eui-menu-item.component.d.ts.map +1 -1
  78. package/eui-menu/eui-menu.component.d.ts.map +1 -1
  79. package/eui-message-box/eui-message-box.component.d.ts.map +1 -1
  80. package/eui-navbar/eui-navbar-item/eui-navbar-item.component.d.ts.map +1 -1
  81. package/eui-overlay/eui-overlay.component.d.ts.map +1 -1
  82. package/eui-page/components/eui-page-column/eui-page-column.component.d.ts.map +1 -1
  83. package/eui-page/components/eui-page-columns/eui-page-columns.component.d.ts.map +1 -1
  84. package/eui-page/components/eui-page-header/eui-page-header.component.d.ts.map +1 -1
  85. package/eui-paginator/eui-paginator.component.d.ts.map +1 -1
  86. package/eui-popover/eui-popover.component.d.ts.map +1 -1
  87. package/eui-progress-bar/eui-progress-bar.component.d.ts.map +1 -1
  88. package/eui-progress-circle/eui-progress-circle.component.d.ts.map +1 -1
  89. package/eui-select/eui-select-option.directive.d.ts.map +1 -1
  90. package/eui-select/eui-select.component.d.ts.map +1 -1
  91. package/eui-sidebar-menu/eui-sidebar-menu.component.d.ts.map +1 -1
  92. package/eui-skeleton/eui-skeleton.component.d.ts.map +1 -1
  93. package/eui-slide-toggle/eui-slide-toggle.component.d.ts.map +1 -1
  94. package/eui-table/eui-table.component.d.ts.map +1 -1
  95. package/eui-table/filter/eui-table-filter.component.d.ts.map +1 -1
  96. package/eui-table/selectable-header/eui-table-selectable-header.component.d.ts.map +1 -1
  97. package/eui-table/selectable-row/eui-table-selectable-row.component.d.ts.map +1 -1
  98. package/eui-table/sortable-col/eui-table-sortable-col.component.d.ts.map +1 -1
  99. package/eui-table-v2/eui-table-v2.component.d.ts.map +1 -1
  100. package/eui-table-v2/selectable-header/eui-table-v2-selectable-header.component.d.ts.map +1 -1
  101. package/eui-table-v2/selectable-row/eui-table-v2-selectable-row.component.d.ts.map +1 -1
  102. package/eui-table-v2/sortable-col/eui-table-v2-sortable-col.component.d.ts.map +1 -1
  103. package/eui-tabs/eui-tab/eui-tab.component.d.ts.map +1 -1
  104. package/eui-tabs/eui-tab-content/eui-tab-content.component.d.ts.map +1 -1
  105. package/eui-tabs/eui-tabs.component.d.ts.map +1 -1
  106. package/eui-tabs-v2/eui-tab-v2/eui-tab-v2.component.d.ts.map +1 -1
  107. package/eui-tabs-v2/eui-tab-v2-body/eui-tab-v2-body.component.d.ts.map +1 -1
  108. package/eui-tabs-v2/eui-tabs-v2.component.d.ts.map +1 -1
  109. package/eui-textarea/auto-resize.directive.d.ts.map +1 -1
  110. package/eui-textarea/eui-textarea.component.d.ts.map +1 -1
  111. package/eui-timebar/eui-timebar.component.d.ts.map +1 -1
  112. package/eui-timeline/eui-timeline-item.component.d.ts.map +1 -1
  113. package/eui-timeline/eui-timeline.component.d.ts.map +1 -1
  114. package/eui-timepicker/eui-timepicker.component.d.ts.map +1 -1
  115. package/eui-tree/eui-tree.component.d.ts.map +1 -1
  116. package/eui-tree-list/eui-tree-list-item.component.d.ts.map +1 -1
  117. package/eui-tree-list/eui-tree-list.component.d.ts.map +1 -1
  118. package/eui-tree-list/toolbar/toolbar.component.d.ts.map +1 -1
  119. package/eui-user-profile/user-profile-card/user-profile-card.component.d.ts.map +1 -1
  120. package/eui-user-profile/user-profile-menu/user-profile-menu.component.d.ts.map +1 -1
  121. package/eui-user-profile/user-profile.component.d.ts.map +1 -1
  122. package/eui-wizard/eui-wizard-step.component.d.ts.map +1 -1
  123. package/eui-wizard/eui-wizard.component.d.ts.map +1 -1
  124. package/externals/eui-editor/counters/eui-editor-counters.component.d.ts.map +1 -1
  125. package/externals/quill/quill-editor.component.d.ts.map +1 -1
  126. package/fesm2022/eui-components-directives.mjs +70 -70
  127. package/fesm2022/eui-components-eui-accordion.mjs +13 -13
  128. package/fesm2022/eui-components-eui-alert.mjs +15 -15
  129. package/fesm2022/eui-components-eui-alert.mjs.map +1 -1
  130. package/fesm2022/eui-components-eui-autocomplete.mjs +13 -13
  131. package/fesm2022/eui-components-eui-avatar.mjs +25 -25
  132. package/fesm2022/eui-components-eui-avatar.mjs.map +1 -1
  133. package/fesm2022/eui-components-eui-badge.mjs +8 -8
  134. package/fesm2022/eui-components-eui-badge.mjs.map +1 -1
  135. package/fesm2022/eui-components-eui-block-content.mjs +7 -7
  136. package/fesm2022/eui-components-eui-block-document.mjs +7 -7
  137. package/fesm2022/eui-components-eui-breadcrumb.mjs +13 -13
  138. package/fesm2022/eui-components-eui-button-group.mjs +7 -7
  139. package/fesm2022/eui-components-eui-button.mjs +8 -8
  140. package/fesm2022/eui-components-eui-button.mjs.map +1 -1
  141. package/fesm2022/eui-components-eui-card.mjs +62 -94
  142. package/fesm2022/eui-components-eui-card.mjs.map +1 -1
  143. package/fesm2022/eui-components-eui-chip-group.mjs +7 -7
  144. package/fesm2022/eui-components-eui-chip-list.mjs +13 -13
  145. package/fesm2022/eui-components-eui-chip.mjs +7 -7
  146. package/fesm2022/eui-components-eui-dashboard-button.mjs +13 -13
  147. package/fesm2022/eui-components-eui-dashboard-card.mjs +15 -18
  148. package/fesm2022/eui-components-eui-dashboard-card.mjs.map +1 -1
  149. package/fesm2022/eui-components-eui-date-range-selector.mjs +126 -13
  150. package/fesm2022/eui-components-eui-date-range-selector.mjs.map +1 -1
  151. package/fesm2022/eui-components-eui-datepicker.mjs +19 -19
  152. package/fesm2022/eui-components-eui-dialog.mjs +19 -19
  153. package/fesm2022/eui-components-eui-dimmer.mjs +7 -7
  154. package/fesm2022/eui-components-eui-disable-content.mjs +14 -8
  155. package/fesm2022/eui-components-eui-disable-content.mjs.map +1 -1
  156. package/fesm2022/eui-components-eui-discussion-thread.mjs +10 -10
  157. package/fesm2022/eui-components-eui-dropdown.mjs +20 -20
  158. package/fesm2022/eui-components-eui-feedback-message.mjs +7 -7
  159. package/fesm2022/eui-components-eui-fieldset.mjs +13 -13
  160. package/fesm2022/eui-components-eui-file-upload.mjs +19 -19
  161. package/fesm2022/eui-components-eui-growl.mjs +7 -7
  162. package/fesm2022/eui-components-eui-icon-button-expander.mjs +7 -7
  163. package/fesm2022/eui-components-eui-icon-button.mjs +37 -21
  164. package/fesm2022/eui-components-eui-icon-button.mjs.map +1 -1
  165. package/fesm2022/eui-components-eui-icon-color.mjs +7 -7
  166. package/fesm2022/eui-components-eui-icon-input.mjs +7 -7
  167. package/fesm2022/eui-components-eui-icon-state.mjs +12 -9
  168. package/fesm2022/eui-components-eui-icon-state.mjs.map +1 -1
  169. package/fesm2022/eui-components-eui-icon-toggle.mjs +7 -7
  170. package/fesm2022/eui-components-eui-icon.mjs +7 -7
  171. package/fesm2022/eui-components-eui-input-checkbox.mjs +7 -7
  172. package/fesm2022/eui-components-eui-input-group.mjs +13 -13
  173. package/fesm2022/eui-components-eui-input-number.mjs +10 -10
  174. package/fesm2022/eui-components-eui-input-radio.mjs +7 -7
  175. package/fesm2022/eui-components-eui-input-text.mjs +7 -7
  176. package/fesm2022/eui-components-eui-label.mjs +7 -7
  177. package/fesm2022/eui-components-eui-language-selector.mjs +10 -10
  178. package/fesm2022/eui-components-eui-list.mjs +10 -10
  179. package/fesm2022/eui-components-eui-menu.mjs +10 -10
  180. package/fesm2022/eui-components-eui-message-box.mjs +13 -13
  181. package/fesm2022/eui-components-eui-navbar.mjs +10 -10
  182. package/fesm2022/eui-components-eui-overlay.mjs +22 -22
  183. package/fesm2022/eui-components-eui-page.mjs +58 -58
  184. package/fesm2022/eui-components-eui-paginator.mjs +7 -7
  185. package/fesm2022/eui-components-eui-popover.mjs +10 -10
  186. package/fesm2022/eui-components-eui-progress-bar.mjs +7 -7
  187. package/fesm2022/eui-components-eui-progress-circle.mjs +7 -7
  188. package/fesm2022/eui-components-eui-select.mjs +19 -19
  189. package/fesm2022/eui-components-eui-sidebar-menu.mjs +7 -7
  190. package/fesm2022/eui-components-eui-skeleton.mjs +7 -7
  191. package/fesm2022/eui-components-eui-slide-toggle.mjs +8 -8
  192. package/fesm2022/eui-components-eui-slide-toggle.mjs.map +1 -1
  193. package/fesm2022/eui-components-eui-split-button.mjs +8 -8
  194. package/fesm2022/eui-components-eui-split-button.mjs.map +1 -1
  195. package/fesm2022/eui-components-eui-table-v2.mjs +34 -34
  196. package/fesm2022/eui-components-eui-table.mjs +34 -34
  197. package/fesm2022/eui-components-eui-tabs-v2.mjs +15 -15
  198. package/fesm2022/eui-components-eui-tabs.mjs +22 -22
  199. package/fesm2022/eui-components-eui-textarea.mjs +10 -10
  200. package/fesm2022/eui-components-eui-timebar.mjs +7 -7
  201. package/fesm2022/eui-components-eui-timeline.mjs +10 -10
  202. package/fesm2022/eui-components-eui-timepicker.mjs +7 -7
  203. package/fesm2022/eui-components-eui-tree-list.mjs +25 -25
  204. package/fesm2022/eui-components-eui-tree.mjs +21 -21
  205. package/fesm2022/eui-components-eui-user-profile.mjs +19 -17
  206. package/fesm2022/eui-components-eui-user-profile.mjs.map +1 -1
  207. package/fesm2022/eui-components-eui-wizard.mjs +13 -13
  208. package/fesm2022/eui-components-externals-charts.mjs +7 -7
  209. package/fesm2022/eui-components-externals-eui-editor.mjs +28 -28
  210. package/fesm2022/eui-components-externals-quill.mjs +10 -10
  211. package/fesm2022/eui-components-layout.mjs +182 -182
  212. package/fesm2022/eui-components-pipes.mjs +14 -14
  213. package/fesm2022/eui-components-shared.mjs +6 -6
  214. package/fesm2022/eui-components.mjs +4 -4
  215. package/layout/eui-app/eui-app-sidebar/sidebar-header-user-profile/sidebar-header-user-profile.component.d.ts.map +1 -1
  216. package/layout/eui-app/eui-app-sidebar/sidebar-menu/sidebar-menu.component.d.ts.map +1 -1
  217. package/layout/eui-app/eui-app-toolbar/toolbar.component.d.ts.map +1 -1
  218. package/layout/eui-app/eui-app-top-message/top-message.component.d.ts.map +1 -1
  219. package/layout/eui-app/eui-app.component.d.ts.map +1 -1
  220. package/layout/eui-footer/footer.component.d.ts.map +1 -1
  221. package/layout/eui-header/header-user-profile/header-user-profile.component.d.ts.map +1 -1
  222. package/layout/eui-notifications/eui-notification-item.component.d.ts.map +1 -1
  223. package/layout/eui-notifications/eui-notifications.component.d.ts.map +1 -1
  224. package/layout/eui-notifications-v2/eui-notification-item.component.d.ts.map +1 -1
  225. package/layout/eui-notifications-v2/eui-notifications.component.d.ts.map +1 -1
  226. package/layout/eui-toolbar/toolbar-items/toolbar-items.component.d.ts.map +1 -1
  227. package/layout/eui-toolbar/toolbar-navbar-item/toolbar-navbar-item.component.d.ts.map +1 -1
  228. package/layout/eui-toolbar/toolbar-search/toolbar-search.component.d.ts.map +1 -1
  229. package/layout/eui-toolbar/toolbar-selector/toolbar-selector.component.d.ts.map +1 -1
  230. package/layout/eui-toolbar/toolbar.component.d.ts.map +1 -1
  231. package/package.json +3 -3
  232. package/shared/base/base-states.directive.d.ts.map +1 -1
  233. package/shared/input.directive.d.ts.map +1 -1
@@ -82,10 +82,10 @@ class EuiTimeRangepickerComponent {
82
82
  this.destroy$.next(true);
83
83
  this.destroy$.unsubscribe();
84
84
  }
85
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.8", ngImport: i0, type: EuiTimeRangepickerComponent, deps: [{ token: i1.TranslateService, optional: true }, { token: DYNAMIC_COMPONENT_CONFIG, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
86
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.8", type: EuiTimeRangepickerComponent, isStandalone: true, selector: "eui-time-range-picker", host: { properties: { "class": "this.class", "attr.data-e2e": "this.e2eAttr" } }, ngImport: i0, template: "<div class=\"eui-timerange__time-container\">\n <span class=\"eui-timerange__time-container-label\">{{ startDateLabel }}</span>\n <eui-timepicker iconSize=\"m\" [hasSeconds]=\"hasSeconds\" [formControl]=\"startTimeFormControl\"></eui-timepicker>\n</div>\n\n<div class=\"eui-timerange__time-container\">\n <span class=\"eui-timerange__time-container-label\">{{ endDateLabel }}</span>\n <eui-timepicker iconSize=\"m\" [hasSeconds]=\"hasSeconds\" [formControl]=\"endTimeFormControl\"></eui-timepicker>\n</div>\n", styles: [".eui-19 .eui-date-range-selector{display:inline-flex}.eui-19 .eui-date-range-selector .mat-date-range-input,.eui-19 .eui-date-range-selector .mat-date-range-input .mat-date-range-input-container{align-items:center;display:flex}.eui-19 .eui-date-range-selector .mat-date-range-input .mat-date-range-input-container .mat-date-range-input-wrapper{display:flex;overflow:visible;position:relative;width:calc(6.9 * var(--eui-s-m))}.eui-19 .eui-date-range-selector .mat-date-range-input .mat-date-range-input-container .mat-date-range-input-wrapper .mat-date-range-input-mirror{display:none}.eui-19 .eui-date-range-selector--container-height-large{height:auto}.eui-19 .eui-date-range-selector--container-large{height:auto;width:100%}.eui-19 .eui-date-range-selector--responsive{display:flex;width:100%}.eui-19 .eui-date-range-selector--responsive .mat-date-range-input-container{width:100%}.eui-19 .eui-date-range-selector--responsive .mat-date-range-input-wrapper{width:100%!important}.eui-19 .eui-date-range-selector--clearable .mat-date-range-input-inner{position:relative}.eui-19 .eui-date-range-selector--clearable:not(.eui-date-range-selector--responsive):not(.eui-date-range-selector--long-date-format) .mat-date-range-input-wrapper{width:calc(8.5 * var(--eui-s-m))}.eui-19 .eui-date-range-selector--long-date-format .mat-date-range-input-wrapper{width:calc(12.5 * var(--eui-s-m))!important}.eui-19 .eui-date-range-selector .mat-date-range-input-separator.mat-date-range-input-separator-hidden{opacity:1}.eui-19 .eui-date-range-selector__toggler{border-bottom-left-radius:0!important;border-top-left-radius:0!important;border-left:none!important;box-shadow:none!important}.eui-19 .eui-date-range-selector__toggler-label{width:auto}.eui-19 .eui-date-range-selector .mat-date-range-input{align-items:center;display:flex;box-sizing:border-box;background:var(--eui-c-white);border:var(--eui-bw-xs) solid var(--eui-c-neutral-lighter);border-radius:var(--eui-br-m);border-bottom-right-radius:0;border-top-right-radius:0;max-height:var(--eui-s-3xl);text-align:center}.eui-19 .eui-date-range-selector .mat-date-range-input--read-only{background-color:transparent;border-color:transparent!important;box-shadow:none;height:inherit;padding:var(--eui-s-2xs) 0;pointer-events:none}.eui-19 .eui-date-range-selector .mat-date-range-input--read-only .eui-input-text{padding-left:var(--eui-s-s)!important}.eui-19 .eui-date-range-selector .mat-date-range-input--read-only .mat-date-range-input-separator.mat-date-range-input-separator-hidden{opacity:0}.eui-19 .eui-date-range-selector .mat-date-range-input--disabled{background-image:none;box-shadow:none;cursor:not-allowed!important;opacity:var(--eui-o-50);background-color:var(--eui-c-neutral-bg-light);border:var(--eui-bw-xs) solid var(--eui-c-neutral-lightest)}.eui-19 .eui-date-range-selector .mat-date-range-input--disabled input{border:none!important}.eui-19 .eui-date-range-selector .mat-date-range-input--invalid{border:var(--eui-bw-xs) solid var(--eui-c-s-danger)}.eui-19 .eui-date-range-selector .eui-date-range-selector__start-date.eui-input-text,.eui-19 .eui-date-range-selector .eui-date-range-selector__end-date.eui-input-text{background-color:transparent;border-color:transparent;height:inherit;padding:calc(var(--eui-s-xs) - 1px) calc(var(--eui-s-m) - 2px);position:relative;text-align:left}.eui-19 .mat-datepicker-content .mat-calendar.eui-date-range-selector--container-height-large{height:auto}.eui-19 .mat-datepicker-content .mat-calendar.eui-date-range-selector--container-large{height:auto;width:100%}.eui-19 .eui-timerange{display:flex;justify-content:center;border-top:1px solid var(--eui-c-neutral-dark);padding:var(--eui-s-m) var(--eui-s-m) 0 var(--eui-s-m);gap:var(--eui-s-l)}.eui-19 .eui-timerange .eui-timepicker__input-container{width:unset}.eui-19 .eui-timerange .eui-timepicker__input{padding:calc(var(--eui-s-2xs) - 1px) 0!important;width:var(--eui-s-3xl)!important}.eui-19 .eui-timerange__time-container{display:flex;flex-direction:column;text-align:center}.eui-19 .eui-timerange__time-container .eui-timepicker__spacer{margin:auto}.eui-19 .eui-timerange__time-container-label{font:var(--eui-f-s-bold)}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i4.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i3.EuiTimepickerComponent, selector: "eui-timepicker", inputs: ["e2eAttr", "inputId", "timeMask", "placeholder", "stepHours", "stepMinutes", "stepSeconds", "iconSize", "isreadOnly", "isOneInputField", "hasSeconds"] }], encapsulation: i0.ViewEncapsulation.None }); }
85
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: EuiTimeRangepickerComponent, deps: [{ token: i1.TranslateService, optional: true }, { token: DYNAMIC_COMPONENT_CONFIG, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
86
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.9", type: EuiTimeRangepickerComponent, isStandalone: true, selector: "eui-time-range-picker", host: { properties: { "class": "this.class", "attr.data-e2e": "this.e2eAttr" } }, ngImport: i0, template: "<div class=\"eui-timerange__time-container\">\n <span class=\"eui-timerange__time-container-label\">{{ startDateLabel }}</span>\n <eui-timepicker iconSize=\"m\" [hasSeconds]=\"hasSeconds\" [formControl]=\"startTimeFormControl\"></eui-timepicker>\n</div>\n\n<div class=\"eui-timerange__time-container\">\n <span class=\"eui-timerange__time-container-label\">{{ endDateLabel }}</span>\n <eui-timepicker iconSize=\"m\" [hasSeconds]=\"hasSeconds\" [formControl]=\"endTimeFormControl\"></eui-timepicker>\n</div>\n", styles: [".eui-19 .eui-date-range-selector{display:inline-flex}.eui-19 .eui-date-range-selector .mat-date-range-input,.eui-19 .eui-date-range-selector .mat-date-range-input .mat-date-range-input-container{align-items:center;display:flex}.eui-19 .eui-date-range-selector .mat-date-range-input .mat-date-range-input-container .mat-date-range-input-wrapper{display:flex;overflow:visible;position:relative;width:calc(6.9 * var(--eui-s-m))}.eui-19 .eui-date-range-selector .mat-date-range-input .mat-date-range-input-container .mat-date-range-input-wrapper .mat-date-range-input-mirror{display:none}.eui-19 .eui-date-range-selector--container-height-large{height:auto}.eui-19 .eui-date-range-selector--container-large{height:auto;width:100%}.eui-19 .eui-date-range-selector--responsive{display:flex;width:100%}.eui-19 .eui-date-range-selector--responsive .mat-date-range-input-container{width:100%}.eui-19 .eui-date-range-selector--responsive .mat-date-range-input-wrapper{width:100%!important}.eui-19 .eui-date-range-selector--clearable .mat-date-range-input-inner{position:relative}.eui-19 .eui-date-range-selector--clearable:not(.eui-date-range-selector--responsive):not(.eui-date-range-selector--long-date-format) .mat-date-range-input-wrapper{width:calc(8.5 * var(--eui-s-m))}.eui-19 .eui-date-range-selector--long-date-format .mat-date-range-input-wrapper{width:calc(12.5 * var(--eui-s-m))!important}.eui-19 .eui-date-range-selector .mat-date-range-input-separator.mat-date-range-input-separator-hidden{opacity:1}.eui-19 .eui-date-range-selector__toggler{border-bottom-left-radius:0!important;border-top-left-radius:0!important;border-left:none!important;box-shadow:none!important}.eui-19 .eui-date-range-selector__toggler-label{width:auto}.eui-19 .eui-date-range-selector .mat-date-range-input{align-items:center;display:flex;box-sizing:border-box;background:var(--eui-c-white);border:var(--eui-bw-xs) solid var(--eui-c-neutral-lighter);border-radius:var(--eui-br-m);border-bottom-right-radius:0;border-top-right-radius:0;max-height:var(--eui-s-3xl);text-align:center}.eui-19 .eui-date-range-selector .mat-date-range-input--read-only{background-color:transparent;border-color:transparent!important;box-shadow:none;height:inherit;padding:var(--eui-s-2xs) 0;pointer-events:none}.eui-19 .eui-date-range-selector .mat-date-range-input--read-only .eui-input-text{padding-left:var(--eui-s-s)!important}.eui-19 .eui-date-range-selector .mat-date-range-input--read-only .mat-date-range-input-separator.mat-date-range-input-separator-hidden{opacity:0}.eui-19 .eui-date-range-selector .mat-date-range-input--disabled{background-image:none;box-shadow:none;cursor:not-allowed!important;opacity:var(--eui-o-50);background-color:var(--eui-c-neutral-bg-light);border:var(--eui-bw-xs) solid var(--eui-c-neutral-lightest)}.eui-19 .eui-date-range-selector .mat-date-range-input--disabled input{border:none!important}.eui-19 .eui-date-range-selector .mat-date-range-input--invalid{border:var(--eui-bw-xs) solid var(--eui-c-s-danger)}.eui-19 .eui-date-range-selector .eui-date-range-selector__start-date.eui-input-text,.eui-19 .eui-date-range-selector .eui-date-range-selector__end-date.eui-input-text{background-color:transparent;border-color:transparent;height:inherit;padding:calc(var(--eui-s-xs) - 1px) calc(var(--eui-s-m) - 2px);position:relative;text-align:left}.eui-19 .mat-datepicker-content .mat-calendar.eui-date-range-selector--container-height-large{height:auto}.eui-19 .mat-datepicker-content .mat-calendar.eui-date-range-selector--container-large{height:auto;width:100%}.eui-19 .eui-timerange{display:flex;justify-content:center;border-top:1px solid var(--eui-c-neutral-dark);padding:var(--eui-s-m) var(--eui-s-m) 0 var(--eui-s-m);gap:var(--eui-s-l)}.eui-19 .eui-timerange .eui-timepicker__input-container{width:unset}.eui-19 .eui-timerange .eui-timepicker__input{padding:calc(var(--eui-s-2xs) - 1px) 0!important;width:var(--eui-s-3xl)!important}.eui-19 .eui-timerange__time-container{display:flex;flex-direction:column;text-align:center}.eui-19 .eui-timerange__time-container .eui-timepicker__spacer{margin:auto}.eui-19 .eui-timerange__time-container-label{font:var(--eui-f-s-bold)}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i4.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i3.EuiTimepickerComponent, selector: "eui-timepicker", inputs: ["e2eAttr", "inputId", "timeMask", "placeholder", "stepHours", "stepMinutes", "stepSeconds", "iconSize", "isreadOnly", "isOneInputField", "hasSeconds"] }], encapsulation: i0.ViewEncapsulation.None }); }
87
87
  }
88
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.8", ngImport: i0, type: EuiTimeRangepickerComponent, decorators: [{
88
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: EuiTimeRangepickerComponent, decorators: [{
89
89
  type: Component,
90
90
  args: [{ selector: 'eui-time-range-picker', encapsulation: ViewEncapsulation.None, imports: [
91
91
  FormsModule,
@@ -133,26 +133,83 @@ class EuiDateRangeSelectorComponent {
133
133
  this.selectedDates = { startRange: null, endRange: null };
134
134
  this.startRangeFormControl = new FormControl();
135
135
  this.endRangeFormControl = new FormControl();
136
+ /**
137
+ * Event emitted when the first date is selected.
138
+ */
136
139
  this.firstSelectedDate = new EventEmitter();
140
+ /**
141
+ * Event emitted when the second date is selected.
142
+ */
137
143
  this.secondSelectedDate = new EventEmitter();
138
144
  this.e2eAttr = 'eui-date-range-selector';
145
+ /**
146
+ * Sets the svg icon for the toggler button.
147
+ * @default 'eui-calendar-outline'
148
+ */
139
149
  this.togglerIconSvg = 'eui-calendar-outline';
150
+ /**
151
+ * Sets the starting view of the calendar.
152
+ * @type {('month' | 'year' | 'multi-year')}
153
+ * @default 'month'
154
+ */
140
155
  this.startView = 'month';
156
+ /**
157
+ * Sets a unique id for the first input field.
158
+ * @default 'start-date-<uniqueId>'
159
+ */
141
160
  this.startDateId = `start-date-${uniqueId()}`;
161
+ /**
162
+ * Sets the step value for the hours in the time picker.
163
+ * @default 1
164
+ */
142
165
  this.stepHours = 1;
166
+ /**
167
+ * Sets the step value for the minutes in the time picker.
168
+ * @default 1
169
+ */
143
170
  this.stepMinutes = 1;
171
+ /**
172
+ * Sets the step value for the seconds in the time picker.
173
+ * @default 1
174
+ */
144
175
  this.stepSeconds = 1;
176
+ /**
177
+ * Option to define a long date format.
178
+ * @default false
179
+ */
145
180
  this.islongDateFormat = false;
181
+ /**
182
+ * Option to enable the clearable button in the input field.
183
+ * @default false
184
+ */
146
185
  this.isClearable = false;
186
+ /**
187
+ * Option to enable the readonly state.
188
+ * @default false
189
+ */
147
190
  this.isReadOnly = false;
191
+ /**
192
+ * Option to enable the disabled state.
193
+ * @default false
194
+ */
148
195
  this.isDisabled = false;
196
+ /**
197
+ * Option to make the date range field responsive.
198
+ * @default false
199
+ */
149
200
  this.isResponsive = false;
201
+ /**
202
+ * Option to enable the time range picker.
203
+ * @default false
204
+ */
150
205
  this.isTimeRange = false;
206
+ /**
207
+ * Option to enable seconds in the time range picker.
208
+ * @default false
209
+ */
151
210
  this.hasSeconds = false;
152
211
  this.destroy$ = new Subject();
153
- // eslint-disable-next-line @typescript-eslint/no-empty-function, @typescript-eslint/no-unused-vars
154
212
  this.propagateChange = (_) => { };
155
- // eslint-disable-next-line @typescript-eslint/no-empty-function
156
213
  this.propagateTouched = () => { };
157
214
  if (this.control) {
158
215
  this.control.valueAccessor = this;
@@ -238,6 +295,10 @@ class EuiDateRangeSelectorComponent {
238
295
  this.destroy$.next(true);
239
296
  this.destroy$.unsubscribe();
240
297
  }
298
+ /**
299
+ * Method fired when the first date field changes.
300
+ * @param e Event emitted when the first date changes.
301
+ */
241
302
  onFirstDateChange(e) {
242
303
  this.startDateDefaultValue = e.value;
243
304
  this.selectedDates.startRange = e.value;
@@ -245,6 +306,10 @@ class EuiDateRangeSelectorComponent {
245
306
  this.propagateChange(this.selectedDates);
246
307
  this.propagateTouched();
247
308
  }
309
+ /**
310
+ * Method fired when the second date field changes.
311
+ * @param e Event emitted when the second date changes.
312
+ */
248
313
  onSecondDateChange(e) {
249
314
  this.endDateDefaultValue = e.value;
250
315
  this.selectedDates.endRange = e.value;
@@ -252,12 +317,18 @@ class EuiDateRangeSelectorComponent {
252
317
  this.propagateChange(this.selectedDates);
253
318
  this.propagateTouched();
254
319
  }
320
+ /**
321
+ * Method fired when the first date field is cleared.
322
+ */
255
323
  onFirstDateClear() {
256
324
  this.startDateDefaultValue = null;
257
325
  this.selectedDates.startRange = null;
258
326
  this.firstSelectedDate.emit(null);
259
327
  this.propagateChange(this.selectedDates);
260
328
  }
329
+ /**
330
+ * Method fired when the second date field is cleared.
331
+ */
261
332
  onSecondDateClear() {
262
333
  this.endDateDefaultValue = null;
263
334
  this.selectedDates.endRange = null;
@@ -277,6 +348,10 @@ class EuiDateRangeSelectorComponent {
277
348
  this.endRangeFormControl.setValue(values?.endRange);
278
349
  this.selectedDates = values || { startRange: null, endRange: null };
279
350
  }
351
+ /**
352
+ * Sets the disabled state of the component based on the boolean value passed.
353
+ * @param isDisabled - The boolean value indicating whether the component should be disabled or not.
354
+ */
280
355
  setDisabledState(isDisabled) {
281
356
  this.isDisabled = isDisabled;
282
357
  if (this.isDisabled) {
@@ -295,7 +370,9 @@ class EuiDateRangeSelectorComponent {
295
370
  this.propagateTouched = fn;
296
371
  }
297
372
  /**
298
- * Creates the injector for passing the timeconfig to the dynamic component.
373
+ * Creates an injector for the timepicker component.
374
+ * @param data - The data to be passed to the timepicker component.
375
+ * @return {Injector} - The created injector.
299
376
  * @protected
300
377
  */
301
378
  createInjector(data) {
@@ -333,14 +410,30 @@ class EuiDateRangeSelectorComponent {
333
410
  this.timeRangeInstance = componentRef.instance;
334
411
  }
335
412
  }
413
+ /**
414
+ * Fires then the time of the first date field changes.
415
+ * @param e The event emitted when the time changes.
416
+ * @protected
417
+ */
336
418
  onStartTimeChange(e) {
337
419
  const time = this.extractTime(e);
338
420
  this.updateStartDateTime(time.hours, time.mins, time.secs);
339
421
  }
422
+ /**
423
+ * Fires then the time of the second date field changes.
424
+ * @param e The event emitted when the time changes.
425
+ * @protected
426
+ */
340
427
  onEndTimeChange(e) {
341
428
  const time = this.extractTime(e);
342
429
  this.updateEndDateTime(time.hours, time.mins, time.secs);
343
430
  }
431
+ /**
432
+ * Extracts the time from the date input field.
433
+ * @param e The event or string containing the time.
434
+ * @return {hours: number, mins: number, secs: number} The extracted time.
435
+ * @protected
436
+ */
344
437
  extractTime(e) {
345
438
  const dateTimeString = typeof e === 'string' ? e : e.target.value;
346
439
  // Split the string by space to separate date and time components
@@ -356,6 +449,13 @@ class EuiDateRangeSelectorComponent {
356
449
  secs: secs || 0,
357
450
  };
358
451
  }
452
+ /**
453
+ * Updates the start date time based on the provided hours, minutes, and seconds.
454
+ * @param hours The hours to set.
455
+ * @param mins The minutes to set.
456
+ * @param secs The seconds to set.
457
+ * @protected
458
+ */
359
459
  updateStartDateTime(hours, mins, secs) {
360
460
  if (this.startDateDefaultValue) {
361
461
  this.startDateDefaultValue = moment(this.startDateDefaultValue).set({ hour: hours, minute: mins, second: secs });
@@ -364,6 +464,13 @@ class EuiDateRangeSelectorComponent {
364
464
  }
365
465
  this.propagateChange(this.selectedDates);
366
466
  }
467
+ /**
468
+ * Updates the end date time based on the provided hours, minutes, and seconds.
469
+ * @param hours The hours to set.
470
+ * @param mins The minutes to set.
471
+ * @param secs The seconds to set.
472
+ * @protected
473
+ */
367
474
  updateEndDateTime(hours, mins, secs) {
368
475
  if (this.endDateDefaultValue) {
369
476
  this.endDateDefaultValue = moment(this.endDateDefaultValue).set({ hour: hours, minute: mins, second: secs });
@@ -372,6 +479,11 @@ class EuiDateRangeSelectorComponent {
372
479
  }
373
480
  this.propagateChange(this.selectedDates);
374
481
  }
482
+ /**
483
+ * Returns the class for the container based on the time range and hasSeconds conditions.
484
+ * @return {string} The class for the container.
485
+ * @protected
486
+ */
375
487
  adaptContainerClasses() {
376
488
  if (this.isTimeRange && this.hasSeconds) {
377
489
  return 'eui-date-range-selector--container-large';
@@ -385,15 +497,16 @@ class EuiDateRangeSelectorComponent {
385
497
  }
386
498
  /**
387
499
  * Updates the `aria-required` attribute on the input element.
500
+ * @param control The NgControl instance to check for required validators.
388
501
  * @private
389
502
  */
390
503
  updateInputAriaRequiredAttribute(control) {
391
504
  this.hasAriaRequiredAttribute = control?.control?.hasValidator(Validators.required);
392
505
  }
393
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.8", ngImport: i0, type: EuiDateRangeSelectorComponent, deps: [{ token: i1.TranslateService }, { token: i2.LocaleService, optional: true }, { token: i3$1.DateAdapter }, { token: i0.ComponentFactoryResolver }, { token: i0.Injector }, { token: i0.ApplicationRef }, { token: i4.NgControl, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Component }); }
394
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.8", type: EuiDateRangeSelectorComponent, isStandalone: true, selector: "eui-date-range-selector", inputs: { e2eAttr: "e2eAttr", minDate: "minDate", maxDate: "maxDate", togglerIconSvg: "togglerIconSvg", togglerLabel: "togglerLabel", firstInputPlaceholder: "firstInputPlaceholder", secondInputPlaceholder: "secondInputPlaceholder", firstInputAriaLabel: "firstInputAriaLabel", secondInputAriaLabel: "secondInputAriaLabel", startDateDefaultValue: "startDateDefaultValue", endDateDefaultValue: "endDateDefaultValue", comparisonStart: "comparisonStart", comparisonEnd: "comparisonEnd", startView: "startView", startDateId: "startDateId", stepHours: "stepHours", stepMinutes: "stepMinutes", stepSeconds: "stepSeconds", islongDateFormat: ["islongDateFormat", "islongDateFormat", booleanAttribute], isClearable: ["isClearable", "isClearable", booleanAttribute], isReadOnly: ["isReadOnly", "isReadOnly", booleanAttribute], isDisabled: ["isDisabled", "isDisabled", booleanAttribute], isResponsive: ["isResponsive", "isResponsive", booleanAttribute], isTimeRange: ["isTimeRange", "isTimeRange", booleanAttribute], hasSeconds: ["hasSeconds", "hasSeconds", booleanAttribute] }, outputs: { firstSelectedDate: "firstSelectedDate", secondSelectedDate: "secondSelectedDate" }, host: { properties: { "class": "this.class", "attr.data-e2e": "this.e2eAttr" } }, providers: [provideMomentDateAdapter(DEFAULT_FORMATS)], usesOnChanges: true, ngImport: i0, template: "<mat-date-range-input\n [class.mat-date-range-input--read-only]=\"isReadOnly\"\n [class.mat-date-range-input--disabled]=\"isDisabled\"\n [class.mat-date-range-input--invalid]=\"isInvalid && isTouched\"\n [rangePicker]=\"picker\"\n [min]=\"minDate\"\n [max]=\"maxDate\"\n [comparisonStart]=\"comparisonStart\"\n [comparisonEnd]=\"comparisonEnd\">\n <input\n #inputStartDate\n class=\"eui-date-range-selector__start-date\"\n euiInputText\n [id]=\"startDateId\"\n [readonly]=\"isReadOnly\"\n matStartDate\n placeholder=\"{{ firstInputPlaceholder }}\"\n attr.aria-label=\"{{ firstInputAriaLabel }}\"\n [attr.aria-required]=\"hasAriaRequiredAttribute ? 'true' : null\"\n [formControl]=\"startRangeFormControl\"\n (dateInput)=\"onFirstDateChange($event)\"\n [euiClearable]=\"isClearable\"\n (change)=\"isTimeRange ? onStartTimeChange($event) : null\"\n (clear)=\"onFirstDateClear()\" />\n <input\n #inputEndDate\n class=\"eui-date-range-selector__end-date\"\n euiInputText\n [readonly]=\"isReadOnly\"\n matEndDate\n placeholder=\"{{ secondInputPlaceholder }}\"\n attr.aria-label=\"{{ secondInputAriaLabel }}\"\n [attr.aria-required]=\"hasAriaRequiredAttribute ? 'true' : null\"\n [formControl]=\"endRangeFormControl\"\n (dateInput)=\"onSecondDateChange($event)\"\n [euiClearable]=\"isClearable\"\n (change)=\"isTimeRange ? onEndTimeChange($event) : null\"\n (clear)=\"onSecondDateClear()\" />\n</mat-date-range-input>\n<mat-date-range-picker\n #picker\n [startView]=\"startView\"\n (opened)=\"onOpened()\"\n [panelClass]=\"adaptContainerClasses()\" />\n@if (!isReadOnly) {\n <button\n class=\"eui-date-range-selector__toggler eui-date-range-selector__toggler-{{ !togglerLabel ? 'icon' : 'label' }}\"\n (click)=\"picker.open()\"\n euiButton\n euiSecondary\n [euiIconButton]=\"!togglerLabel ? true : false\"\n type=\"button\"\n [euiDisabled]=\"isDisabled\"\n aria-haspopup=\"dialog\">\n @if (!togglerLabel) {\n <eui-icon-svg icon=\"{{ togglerIconSvg }}\" aria-label=\"Open Calendar\" size=\"s\"></eui-icon-svg>\n } @else {\n <span>{{ togglerLabel }}</span>\n }\n </button>\n}\n", styles: [".eui-19 .eui-date-range-selector{display:inline-flex}.eui-19 .eui-date-range-selector .mat-date-range-input,.eui-19 .eui-date-range-selector .mat-date-range-input .mat-date-range-input-container{align-items:center;display:flex}.eui-19 .eui-date-range-selector .mat-date-range-input .mat-date-range-input-container .mat-date-range-input-wrapper{display:flex;overflow:visible;position:relative;width:calc(6.9 * var(--eui-s-m))}.eui-19 .eui-date-range-selector .mat-date-range-input .mat-date-range-input-container .mat-date-range-input-wrapper .mat-date-range-input-mirror{display:none}.eui-19 .eui-date-range-selector--container-height-large{height:auto}.eui-19 .eui-date-range-selector--container-large{height:auto;width:100%}.eui-19 .eui-date-range-selector--responsive{display:flex;width:100%}.eui-19 .eui-date-range-selector--responsive .mat-date-range-input-container{width:100%}.eui-19 .eui-date-range-selector--responsive .mat-date-range-input-wrapper{width:100%!important}.eui-19 .eui-date-range-selector--clearable .mat-date-range-input-inner{position:relative}.eui-19 .eui-date-range-selector--clearable:not(.eui-date-range-selector--responsive):not(.eui-date-range-selector--long-date-format) .mat-date-range-input-wrapper{width:calc(8.5 * var(--eui-s-m))}.eui-19 .eui-date-range-selector--long-date-format .mat-date-range-input-wrapper{width:calc(12.5 * var(--eui-s-m))!important}.eui-19 .eui-date-range-selector .mat-date-range-input-separator.mat-date-range-input-separator-hidden{opacity:1}.eui-19 .eui-date-range-selector__toggler{border-bottom-left-radius:0!important;border-top-left-radius:0!important;border-left:none!important;box-shadow:none!important}.eui-19 .eui-date-range-selector__toggler-label{width:auto}.eui-19 .eui-date-range-selector .mat-date-range-input{align-items:center;display:flex;box-sizing:border-box;background:var(--eui-c-white);border:var(--eui-bw-xs) solid var(--eui-c-neutral-lighter);border-radius:var(--eui-br-m);border-bottom-right-radius:0;border-top-right-radius:0;max-height:var(--eui-s-3xl);text-align:center}.eui-19 .eui-date-range-selector .mat-date-range-input--read-only{background-color:transparent;border-color:transparent!important;box-shadow:none;height:inherit;padding:var(--eui-s-2xs) 0;pointer-events:none}.eui-19 .eui-date-range-selector .mat-date-range-input--read-only .eui-input-text{padding-left:var(--eui-s-s)!important}.eui-19 .eui-date-range-selector .mat-date-range-input--read-only .mat-date-range-input-separator.mat-date-range-input-separator-hidden{opacity:0}.eui-19 .eui-date-range-selector .mat-date-range-input--disabled{background-image:none;box-shadow:none;cursor:not-allowed!important;opacity:var(--eui-o-50);background-color:var(--eui-c-neutral-bg-light);border:var(--eui-bw-xs) solid var(--eui-c-neutral-lightest)}.eui-19 .eui-date-range-selector .mat-date-range-input--disabled input{border:none!important}.eui-19 .eui-date-range-selector .mat-date-range-input--invalid{border:var(--eui-bw-xs) solid var(--eui-c-s-danger)}.eui-19 .eui-date-range-selector .eui-date-range-selector__start-date.eui-input-text,.eui-19 .eui-date-range-selector .eui-date-range-selector__end-date.eui-input-text{background-color:transparent;border-color:transparent;height:inherit;padding:calc(var(--eui-s-xs) - 1px) calc(var(--eui-s-m) - 2px);position:relative;text-align:left}.eui-19 .mat-datepicker-content .mat-calendar.eui-date-range-selector--container-height-large{height:auto}.eui-19 .mat-datepicker-content .mat-calendar.eui-date-range-selector--container-large{height:auto;width:100%}.eui-19 .eui-timerange{display:flex;justify-content:center;border-top:1px solid var(--eui-c-neutral-dark);padding:var(--eui-s-m) var(--eui-s-m) 0 var(--eui-s-m);gap:var(--eui-s-l)}.eui-19 .eui-timerange .eui-timepicker__input-container{width:unset}.eui-19 .eui-timerange .eui-timepicker__input{padding:calc(var(--eui-s-2xs) - 1px) 0!important;width:var(--eui-s-3xl)!important}.eui-19 .eui-timerange__time-container{display:flex;flex-direction:column;text-align:center}.eui-19 .eui-timerange__time-container .eui-timepicker__spacer{margin:auto}.eui-19 .eui-timerange__time-container-label{font:var(--eui-f-s-bold)}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i4.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: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i4.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "ngmodule", type: MatDatepickerModule }, { kind: "component", type: i5.MatDateRangeInput, selector: "mat-date-range-input", inputs: ["rangePicker", "required", "dateFilter", "min", "max", "disabled", "separator", "comparisonStart", "comparisonEnd"], exportAs: ["matDateRangeInput"] }, { kind: "directive", type: i5.MatStartDate, selector: "input[matStartDate]", outputs: ["dateChange", "dateInput"] }, { kind: "directive", type: i5.MatEndDate, selector: "input[matEndDate]", outputs: ["dateChange", "dateInput"] }, { kind: "component", type: i5.MatDateRangePicker, selector: "mat-date-range-picker", exportAs: ["matDateRangePicker"] }, { kind: "ngmodule", type: MatMomentDateModule }, { kind: "component", type: i6.EuiButtonComponent, selector: "button[euiButton], a[euiButton]", inputs: ["e2eAttr", "id", "euiBasicButton", "euiButtonCall", "euiBlockButton", "euiIconButton", "euiLineWrap", "isChecked", "euiDisabled"], outputs: ["buttonClick"] }, { kind: "component", type: i7.EuiIconSvgComponent, selector: "eui-icon-svg, span[euiIconSvg], i[euiIconSvg]", inputs: ["icon", "fillColor", "set", "size", "style", "iconUrl", "transform", "euiVariant", "aria-label", "ariaHidden", "focusable", "isLoading", "isInputIcon", "euiStart", "euiEnd"] }, { kind: "component", type: i8.EuiInputTextComponent, selector: "input[euiInputText]", inputs: ["isInvalid"] }], encapsulation: i0.ViewEncapsulation.None }); }
506
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: EuiDateRangeSelectorComponent, deps: [{ token: i1.TranslateService }, { token: i2.LocaleService, optional: true }, { token: i3$1.DateAdapter }, { token: i0.ComponentFactoryResolver }, { token: i0.Injector }, { token: i0.ApplicationRef }, { token: i4.NgControl, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Component }); }
507
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.9", type: EuiDateRangeSelectorComponent, isStandalone: true, selector: "eui-date-range-selector", inputs: { e2eAttr: "e2eAttr", minDate: "minDate", maxDate: "maxDate", togglerIconSvg: "togglerIconSvg", togglerLabel: "togglerLabel", firstInputPlaceholder: "firstInputPlaceholder", secondInputPlaceholder: "secondInputPlaceholder", firstInputAriaLabel: "firstInputAriaLabel", secondInputAriaLabel: "secondInputAriaLabel", startDateDefaultValue: "startDateDefaultValue", endDateDefaultValue: "endDateDefaultValue", comparisonStart: "comparisonStart", comparisonEnd: "comparisonEnd", startView: "startView", startDateId: "startDateId", stepHours: "stepHours", stepMinutes: "stepMinutes", stepSeconds: "stepSeconds", islongDateFormat: ["islongDateFormat", "islongDateFormat", booleanAttribute], isClearable: ["isClearable", "isClearable", booleanAttribute], isReadOnly: ["isReadOnly", "isReadOnly", booleanAttribute], isDisabled: ["isDisabled", "isDisabled", booleanAttribute], isResponsive: ["isResponsive", "isResponsive", booleanAttribute], isTimeRange: ["isTimeRange", "isTimeRange", booleanAttribute], hasSeconds: ["hasSeconds", "hasSeconds", booleanAttribute] }, outputs: { firstSelectedDate: "firstSelectedDate", secondSelectedDate: "secondSelectedDate" }, host: { properties: { "class": "this.class", "attr.data-e2e": "this.e2eAttr" } }, providers: [provideMomentDateAdapter(DEFAULT_FORMATS)], usesOnChanges: true, ngImport: i0, template: "<mat-date-range-input\n [class.mat-date-range-input--read-only]=\"isReadOnly\"\n [class.mat-date-range-input--disabled]=\"isDisabled\"\n [class.mat-date-range-input--invalid]=\"isInvalid && isTouched\"\n [rangePicker]=\"picker\"\n [min]=\"minDate\"\n [max]=\"maxDate\"\n [comparisonStart]=\"comparisonStart\"\n [comparisonEnd]=\"comparisonEnd\">\n <input\n #inputStartDate\n class=\"eui-date-range-selector__start-date\"\n euiInputText\n [id]=\"startDateId\"\n [readonly]=\"isReadOnly\"\n matStartDate\n placeholder=\"{{ firstInputPlaceholder }}\"\n attr.aria-label=\"{{ firstInputAriaLabel }}\"\n [attr.aria-required]=\"hasAriaRequiredAttribute ? 'true' : null\"\n [formControl]=\"startRangeFormControl\"\n (dateInput)=\"onFirstDateChange($event)\"\n [euiClearable]=\"isClearable\"\n (change)=\"isTimeRange ? onStartTimeChange($event) : null\"\n (clear)=\"onFirstDateClear()\" />\n <input\n #inputEndDate\n class=\"eui-date-range-selector__end-date\"\n euiInputText\n [readonly]=\"isReadOnly\"\n matEndDate\n placeholder=\"{{ secondInputPlaceholder }}\"\n attr.aria-label=\"{{ secondInputAriaLabel }}\"\n [attr.aria-required]=\"hasAriaRequiredAttribute ? 'true' : null\"\n [formControl]=\"endRangeFormControl\"\n (dateInput)=\"onSecondDateChange($event)\"\n [euiClearable]=\"isClearable\"\n (change)=\"isTimeRange ? onEndTimeChange($event) : null\"\n (clear)=\"onSecondDateClear()\" />\n</mat-date-range-input>\n<mat-date-range-picker\n #picker\n [startView]=\"startView\"\n (opened)=\"onOpened()\"\n [panelClass]=\"adaptContainerClasses()\" />\n@if (!isReadOnly) {\n <button\n class=\"eui-date-range-selector__toggler eui-date-range-selector__toggler-{{ !togglerLabel ? 'icon' : 'label' }}\"\n (click)=\"picker.open()\"\n euiButton\n euiSecondary\n [euiIconButton]=\"!togglerLabel ? true : false\"\n type=\"button\"\n [euiDisabled]=\"isDisabled\"\n aria-haspopup=\"dialog\">\n @if (!togglerLabel) {\n <eui-icon-svg icon=\"{{ togglerIconSvg }}\" aria-label=\"Open Calendar\" size=\"s\"></eui-icon-svg>\n } @else {\n <span>{{ togglerLabel }}</span>\n }\n </button>\n}\n", styles: [".eui-19 .eui-date-range-selector{display:inline-flex}.eui-19 .eui-date-range-selector .mat-date-range-input,.eui-19 .eui-date-range-selector .mat-date-range-input .mat-date-range-input-container{align-items:center;display:flex}.eui-19 .eui-date-range-selector .mat-date-range-input .mat-date-range-input-container .mat-date-range-input-wrapper{display:flex;overflow:visible;position:relative;width:calc(6.9 * var(--eui-s-m))}.eui-19 .eui-date-range-selector .mat-date-range-input .mat-date-range-input-container .mat-date-range-input-wrapper .mat-date-range-input-mirror{display:none}.eui-19 .eui-date-range-selector--container-height-large{height:auto}.eui-19 .eui-date-range-selector--container-large{height:auto;width:100%}.eui-19 .eui-date-range-selector--responsive{display:flex;width:100%}.eui-19 .eui-date-range-selector--responsive .mat-date-range-input-container{width:100%}.eui-19 .eui-date-range-selector--responsive .mat-date-range-input-wrapper{width:100%!important}.eui-19 .eui-date-range-selector--clearable .mat-date-range-input-inner{position:relative}.eui-19 .eui-date-range-selector--clearable:not(.eui-date-range-selector--responsive):not(.eui-date-range-selector--long-date-format) .mat-date-range-input-wrapper{width:calc(8.5 * var(--eui-s-m))}.eui-19 .eui-date-range-selector--long-date-format .mat-date-range-input-wrapper{width:calc(12.5 * var(--eui-s-m))!important}.eui-19 .eui-date-range-selector .mat-date-range-input-separator.mat-date-range-input-separator-hidden{opacity:1}.eui-19 .eui-date-range-selector__toggler{border-bottom-left-radius:0!important;border-top-left-radius:0!important;border-left:none!important;box-shadow:none!important}.eui-19 .eui-date-range-selector__toggler-label{width:auto}.eui-19 .eui-date-range-selector .mat-date-range-input{align-items:center;display:flex;box-sizing:border-box;background:var(--eui-c-white);border:var(--eui-bw-xs) solid var(--eui-c-neutral-lighter);border-radius:var(--eui-br-m);border-bottom-right-radius:0;border-top-right-radius:0;max-height:var(--eui-s-3xl);text-align:center}.eui-19 .eui-date-range-selector .mat-date-range-input--read-only{background-color:transparent;border-color:transparent!important;box-shadow:none;height:inherit;padding:var(--eui-s-2xs) 0;pointer-events:none}.eui-19 .eui-date-range-selector .mat-date-range-input--read-only .eui-input-text{padding-left:var(--eui-s-s)!important}.eui-19 .eui-date-range-selector .mat-date-range-input--read-only .mat-date-range-input-separator.mat-date-range-input-separator-hidden{opacity:0}.eui-19 .eui-date-range-selector .mat-date-range-input--disabled{background-image:none;box-shadow:none;cursor:not-allowed!important;opacity:var(--eui-o-50);background-color:var(--eui-c-neutral-bg-light);border:var(--eui-bw-xs) solid var(--eui-c-neutral-lightest)}.eui-19 .eui-date-range-selector .mat-date-range-input--disabled input{border:none!important}.eui-19 .eui-date-range-selector .mat-date-range-input--invalid{border:var(--eui-bw-xs) solid var(--eui-c-s-danger)}.eui-19 .eui-date-range-selector .eui-date-range-selector__start-date.eui-input-text,.eui-19 .eui-date-range-selector .eui-date-range-selector__end-date.eui-input-text{background-color:transparent;border-color:transparent;height:inherit;padding:calc(var(--eui-s-xs) - 1px) calc(var(--eui-s-m) - 2px);position:relative;text-align:left}.eui-19 .mat-datepicker-content .mat-calendar.eui-date-range-selector--container-height-large{height:auto}.eui-19 .mat-datepicker-content .mat-calendar.eui-date-range-selector--container-large{height:auto;width:100%}.eui-19 .eui-timerange{display:flex;justify-content:center;border-top:1px solid var(--eui-c-neutral-dark);padding:var(--eui-s-m) var(--eui-s-m) 0 var(--eui-s-m);gap:var(--eui-s-l)}.eui-19 .eui-timerange .eui-timepicker__input-container{width:unset}.eui-19 .eui-timerange .eui-timepicker__input{padding:calc(var(--eui-s-2xs) - 1px) 0!important;width:var(--eui-s-3xl)!important}.eui-19 .eui-timerange__time-container{display:flex;flex-direction:column;text-align:center}.eui-19 .eui-timerange__time-container .eui-timepicker__spacer{margin:auto}.eui-19 .eui-timerange__time-container-label{font:var(--eui-f-s-bold)}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i4.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: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i4.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "ngmodule", type: MatDatepickerModule }, { kind: "component", type: i5.MatDateRangeInput, selector: "mat-date-range-input", inputs: ["rangePicker", "required", "dateFilter", "min", "max", "disabled", "separator", "comparisonStart", "comparisonEnd"], exportAs: ["matDateRangeInput"] }, { kind: "directive", type: i5.MatStartDate, selector: "input[matStartDate]", outputs: ["dateChange", "dateInput"] }, { kind: "directive", type: i5.MatEndDate, selector: "input[matEndDate]", outputs: ["dateChange", "dateInput"] }, { kind: "component", type: i5.MatDateRangePicker, selector: "mat-date-range-picker", exportAs: ["matDateRangePicker"] }, { kind: "ngmodule", type: MatMomentDateModule }, { kind: "component", type: i6.EuiButtonComponent, selector: "button[euiButton], a[euiButton]", inputs: ["e2eAttr", "id", "euiBasicButton", "euiButtonCall", "euiBlockButton", "euiIconButton", "euiLineWrap", "isChecked", "euiDisabled"], outputs: ["buttonClick"] }, { kind: "component", type: i7.EuiIconSvgComponent, selector: "eui-icon-svg, span[euiIconSvg], i[euiIconSvg]", inputs: ["icon", "fillColor", "set", "size", "style", "iconUrl", "transform", "euiVariant", "aria-label", "ariaHidden", "focusable", "isLoading", "isInputIcon", "euiStart", "euiEnd"] }, { kind: "component", type: i8.EuiInputTextComponent, selector: "input[euiInputText]", inputs: ["isInvalid"] }], encapsulation: i0.ViewEncapsulation.None }); }
395
508
  }
396
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.8", ngImport: i0, type: EuiDateRangeSelectorComponent, decorators: [{
509
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: EuiDateRangeSelectorComponent, decorators: [{
397
510
  type: Component,
398
511
  args: [{ selector: 'eui-date-range-selector', encapsulation: ViewEncapsulation.None, imports: [
399
512
  FormsModule,
@@ -490,13 +603,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.8", ngImpor
490
603
  *
491
604
  */
492
605
  class EuiDateRangeSelectorModule {
493
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.8", ngImport: i0, type: EuiDateRangeSelectorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
494
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.8", ngImport: i0, type: EuiDateRangeSelectorModule, imports: [EuiTimeRangepickerComponent, EuiDateRangeSelectorComponent], exports: [EuiDateRangeSelectorComponent, EuiTimeRangepickerComponent] }); }
495
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.8", ngImport: i0, type: EuiDateRangeSelectorModule, providers: [
606
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: EuiDateRangeSelectorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
607
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.9", ngImport: i0, type: EuiDateRangeSelectorModule, imports: [EuiTimeRangepickerComponent, EuiDateRangeSelectorComponent], exports: [EuiDateRangeSelectorComponent, EuiTimeRangepickerComponent] }); }
608
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: EuiDateRangeSelectorModule, providers: [
496
609
  provideMomentDateAdapter(DEFAULT_FORMATS),
497
610
  ], imports: [EuiTimeRangepickerComponent, EuiDateRangeSelectorComponent] }); }
498
611
  }
499
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.8", ngImport: i0, type: EuiDateRangeSelectorModule, decorators: [{
612
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: EuiDateRangeSelectorModule, decorators: [{
500
613
  type: NgModule,
501
614
  args: [{
502
615
  imports: [EuiTimeRangepickerComponent, EuiDateRangeSelectorComponent],
@@ -1 +1 @@
1
- {"version":3,"file":"eui-components-eui-date-range-selector.mjs","sources":["../../eui-date-range-selector/eui-time-range-picker/eui-time-range-picker.component.ts","../../eui-date-range-selector/eui-time-range-picker/eui-time-range-picker.component.html","../../eui-date-range-selector/eui-date-range-selector.component.ts","../../eui-date-range-selector/eui-date-range-selector.component.html","../../eui-date-range-selector/eui-date-range-selector.module.ts","../../eui-date-range-selector/eui-date-range-selector.validators.ts","../../eui-date-range-selector/index.ts","../../eui-date-range-selector/eui-components-eui-date-range-selector.ts"],"sourcesContent":["import {\n Component,\n Inject,\n Optional,\n ViewEncapsulation,\n HostBinding,\n OnInit,\n OnDestroy,\n} from '@angular/core';\nimport { Subject, takeUntil } from 'rxjs';\nimport { TranslateService } from '@ngx-translate/core';\nimport { FormControl, FormsModule, ReactiveFormsModule } from '@angular/forms';\n\nimport { DYNAMIC_COMPONENT_CONFIG } from '@eui/core';\nimport { EUI_TIMEPICKER } from '@eui/components/eui-timepicker';\nimport { EuiTimeRangePickerConfig } from '../models/eui-time-range-picker.config.model';\n\n@Component({\n selector: 'eui-time-range-picker',\n templateUrl: './eui-time-range-picker.component.html',\n styleUrls: ['../styles/_index.scss'],\n encapsulation: ViewEncapsulation.None,\n imports: [\n FormsModule, \n ReactiveFormsModule,\n ...EUI_TIMEPICKER,\n ],\n})\nexport class EuiTimeRangepickerComponent implements OnInit, OnDestroy {\n hours: number;\n mins: number;\n secs: number;\n endHours: number;\n endMins: number;\n endSecs: number;\n stepHours: number;\n stepMinutes: number;\n stepSeconds: number;\n hasSeconds: boolean;\n startDateLabel: string;\n endDateLabel: string;\n startTimeFormControl = new FormControl();\n endTimeFormControl = new FormControl();\n @HostBinding('class')\n get class(): string {\n return ['eui-timerange'].join(' ').trim();\n }\n @HostBinding('attr.data-e2e') e2eAttr = 'eui-time-range-picker';\n\n private destroy$: Subject<boolean> = new Subject<boolean>();\n\n constructor(\n @Optional() protected translateService: TranslateService,\n @Optional() @Inject(DYNAMIC_COMPONENT_CONFIG) config: EuiTimeRangePickerConfig,\n ) {\n this.hours = config?.hours || 0;\n this.mins = config?.mins || 0;\n this.secs = config?.secs || 0;\n this.endHours = config?.endHours || 0;\n this.endMins = config?.endMins || 0;\n this.endSecs = config?.endSecs || 0;\n this.hasSeconds = config?.hasSeconds;\n this.stepHours = config? config.stepHours: this.stepHours;\n this.stepMinutes = config? config.stepMinutes: this.stepMinutes;\n this.stepSeconds = config? config.stepSeconds: this.stepSeconds;\n this.callback = config?.callback || this.callback;\n }\n\n ngOnInit(): void {\n this.translateService\n ?.stream('eui.daterangeselector.FIRSTPICKERSLABEL')\n .pipe(takeUntil(this.destroy$))\n .subscribe((result: string) => {\n this.startDateLabel = result;\n });\n\n this.translateService\n ?.stream('eui.daterangeselector.SECONDPICKERSLABEL')\n .pipe(takeUntil(this.destroy$))\n .subscribe((result: string) => {\n this.endDateLabel = result;\n });\n\n this.startTimeFormControl = new FormControl({ value: { hours: this.hours, mins: this.mins, secs: this.secs }, disabled: false });\n this.endTimeFormControl = new FormControl({ value: { hours: this.endHours, mins: this.endMins, secs: this.endSecs }, disabled: false });\n\n this.startTimeFormControl.valueChanges.pipe(takeUntil(this.destroy$)).subscribe((value) => {\n this.hours = value.hours;\n this.mins = value.mins;\n this.secs = value.secs;\n this.callback(this.hours, this.mins, this.secs, this.endHours, this.endMins, this.endSecs);\n });\n this.endTimeFormControl.valueChanges.pipe(takeUntil(this.destroy$)).subscribe((value) => {\n this.endHours = value.hours;\n this.endMins = value.mins;\n this.endSecs = value.secs;\n this.callback(this.hours, this.mins, this.secs, this.endHours, this.endMins, this.endSecs);\n });\n }\n\n ngOnDestroy(): void {\n this.destroy$.next(true);\n this.destroy$.unsubscribe();\n }\n\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n private callback: (hours: number, mins: number, secs?: number, endHours?: number, endMins?: number, endSecs?: number) => void = () => {};\n\n}\n","<div class=\"eui-timerange__time-container\">\n <span class=\"eui-timerange__time-container-label\">{{ startDateLabel }}</span>\n <eui-timepicker iconSize=\"m\" [hasSeconds]=\"hasSeconds\" [formControl]=\"startTimeFormControl\"></eui-timepicker>\n</div>\n\n<div class=\"eui-timerange__time-container\">\n <span class=\"eui-timerange__time-container-label\">{{ endDateLabel }}</span>\n <eui-timepicker iconSize=\"m\" [hasSeconds]=\"hasSeconds\" [formControl]=\"endTimeFormControl\"></eui-timepicker>\n</div>\n","/* eslint-disable @typescript-eslint/no-explicit-any */\nimport {\n ApplicationRef,\n Component,\n ComponentFactoryResolver,\n ComponentRef,\n DoCheck,\n EventEmitter,\n HostBinding,\n Injector,\n Input,\n OnChanges,\n OnDestroy,\n OnInit,\n Optional,\n Output,\n Self,\n SimpleChanges,\n StaticProvider,\n ViewEncapsulation,\n booleanAttribute,\n} from '@angular/core';\nimport {\n ControlValueAccessor,\n FormControl,\n FormsModule,\n NgControl,\n ReactiveFormsModule,\n Validators,\n} from '@angular/forms';\nimport { MatDatepickerInputEvent, MatDatepickerModule } from '@angular/material/datepicker';\nimport { DateAdapter } from '@angular/material/core';\nimport { ComponentPortal, DomPortalOutlet } from '@angular/cdk/portal';\nimport { TranslateModule, TranslateService } from '@ngx-translate/core';\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\nimport moment from 'moment';\nimport 'moment/min/locales';\n\nimport { DYNAMIC_COMPONENT_CONFIG, LocaleService, uniqueId } from '@eui/core';\nimport { EuiDateRangeSelectorDates } from './models/eui-date-range-selector-dates.model';\nimport { EuiTimeRangepickerComponent } from './eui-time-range-picker/eui-time-range-picker.component';\nimport { EuiTimeRangePickerConfig } from './models/eui-time-range-picker.config.model';\nimport { MatMomentDateModule, provideMomentDateAdapter } from '@angular/material-moment-adapter';\nimport { EUI_BUTTON } from '@eui/components/eui-button';\nimport { EUI_ICON } from '@eui/components/eui-icon';\nimport { EUI_INPUT_TEXT } from '@eui/components/eui-input-text';\nimport { EUI_INPUT_NUMBER } from '@eui/components/eui-input-number';\nimport { EUI_TIMEPICKER } from '@eui/components/eui-timepicker';\nimport { DEFAULT_FORMATS } from '@eui/components/eui-datepicker';\n\n@Component({\n selector: 'eui-date-range-selector',\n templateUrl: './eui-date-range-selector.component.html',\n styleUrls: ['./styles/_index.scss'],\n encapsulation: ViewEncapsulation.None,\n imports: [\n FormsModule,\n ReactiveFormsModule,\n TranslateModule,\n MatDatepickerModule,\n MatMomentDateModule,\n ...EUI_BUTTON,\n ...EUI_ICON,\n ...EUI_INPUT_TEXT,\n ...EUI_INPUT_NUMBER,\n ...EUI_TIMEPICKER,\n ],\n providers: [provideMomentDateAdapter(DEFAULT_FORMATS)],\n})\nexport class EuiDateRangeSelectorComponent implements OnInit, OnDestroy, OnChanges, ControlValueAccessor, DoCheck {\n selectedDates: EuiDateRangeSelectorDates = { startRange: null, endRange: null };\n public isInvalid: boolean;\n public isTouched: boolean;\n public startRangeFormControl = new FormControl();\n public endRangeFormControl = new FormControl();\n\n @Output() firstSelectedDate = new EventEmitter<any>();\n @Output() secondSelectedDate = new EventEmitter<any>();\n\n @HostBinding('class')\n get class(): string {\n return [\n 'eui-date-range-selector',\n this.isClearable ? 'eui-date-range-selector--clearable' : '',\n this.islongDateFormat || this.isTimeRange ? 'eui-date-range-selector--long-date-format' : '',\n this.isResponsive ? 'eui-date-range-selector--responsive' : '',\n ].join(' ').trim();\n }\n @HostBinding('attr.data-e2e')\n @Input() e2eAttr = 'eui-date-range-selector';\n @Input() minDate: any;\n @Input() maxDate: any;\n @Input() togglerIconSvg = 'eui-calendar-outline';\n @Input() togglerLabel: string;\n @Input() firstInputPlaceholder: string;\n @Input() secondInputPlaceholder: string;\n @Input() firstInputAriaLabel: string;\n @Input() secondInputAriaLabel: string;\n @Input() startDateDefaultValue: any;\n @Input() endDateDefaultValue: any;\n @Input() comparisonStart: any;\n @Input() comparisonEnd: any;\n @Input() startView: 'month' | 'year' | 'multi-year' = 'month';\n @Input() startDateId = `start-date-${uniqueId()}`;\n @Input() stepHours = 1;\n @Input() stepMinutes = 1;\n @Input() stepSeconds = 1;\n @Input({ transform: booleanAttribute }) islongDateFormat = false;\n @Input({ transform: booleanAttribute }) isClearable = false;\n @Input({ transform: booleanAttribute }) isReadOnly = false;\n @Input({ transform: booleanAttribute }) isDisabled = false;\n @Input({ transform: booleanAttribute }) isResponsive = false;\n @Input({ transform: booleanAttribute }) isTimeRange = false;\n @Input({ transform: booleanAttribute }) hasSeconds = false;\n\n protected hasAriaRequiredAttribute: boolean;\n private destroy$: Subject<boolean> = new Subject<boolean>();\n private portalHost: DomPortalOutlet;\n private portal: ComponentPortal<EuiTimeRangepickerComponent>;\n protected timeRangeInstance: EuiTimeRangepickerComponent;\n\n constructor(\n protected translateService: TranslateService,\n @Optional() protected localeService: LocaleService,\n protected adapter: DateAdapter<any>,\n /**\n * @deprecated will be removed in the next major version\n * @breaking-change 21.0.0\n */\n private componentFactoryResolver: ComponentFactoryResolver,\n private injector: Injector,\n private appRef: ApplicationRef,\n @Self() @Optional() protected control: NgControl,\n ) {\n if (this.control) {\n this.control.valueAccessor = this;\n }\n }\n\n ngOnInit(): void {\n this.localeService\n .getState()\n .pipe(takeUntil(this.destroy$))\n .subscribe((state) => {\n this.adapter.setLocale(state.id);\n });\n\n this.startRangeFormControl = new FormControl({ value: this.startDateDefaultValue, disabled: this.isDisabled });\n this.endRangeFormControl = new FormControl({ value: this.endDateDefaultValue, disabled: this.isDisabled });\n\n if (!this.firstInputPlaceholder) {\n this.translateService\n .stream('eui.daterangeselector.FIRSTPICKERSLABEL')\n .pipe(takeUntil(this.destroy$))\n .subscribe((result: string) => {\n this.firstInputPlaceholder = result;\n });\n }\n // by setting the firstInputAriaLabel to dd/mm/yyyy(or the desired format) the format can be announced to the screen reader users before the users start typing\n if (!this.firstInputAriaLabel) {\n this.translateService\n .stream('eui.daterangeselector.FIRSTPICKERSPLACEHOLDER')\n .pipe(takeUntil(this.destroy$))\n .subscribe((result: string) => {\n this.firstInputAriaLabel = result;\n });\n }\n if (!this.secondInputPlaceholder) {\n this.translateService\n .stream('eui.daterangeselector.SECONDPICKERSLABEL')\n .pipe(takeUntil(this.destroy$))\n .subscribe((result: string) => {\n this.secondInputPlaceholder = result;\n });\n }\n // by setting the secondInputAriaLabel to dd/mm/yyyy(or the desired format) the format can be announced to the screen reader users before the users start typing\n if (!this.secondInputAriaLabel) {\n this.translateService\n .stream('eui.daterangeselector.SECONDPICKERSPLACEHOLDER')\n .pipe(takeUntil(this.destroy$))\n .subscribe((result: string) => {\n this.secondInputAriaLabel = result;\n });\n }\n\n this.updateInputAriaRequiredAttribute(this.control);\n this.control?.valueChanges.pipe(takeUntil(this.destroy$)).subscribe((value) => {\n this.updateInputAriaRequiredAttribute(this.control);\n });\n }\n\n ngDoCheck(): void {\n if (this.control) {\n // marks the input controls as touched/invalid if the form control is touched/invalid\n // eslint-disable-next-line\n this.control?.touched ? this.startRangeFormControl?.markAsTouched() : this.startRangeFormControl.markAsUntouched();\n // eslint-disable-next-line\n this.control?.touched ? this.endRangeFormControl.markAsTouched() : this.endRangeFormControl?.markAsUntouched();\n // eslint-disable-next-line\n this.control?.touched ? (this.isTouched = true) : (this.isTouched = false);\n // eslint-disable-next-line\n this.control?.invalid ? this.startRangeFormControl.setErrors(this.control.errors) : this.startRangeFormControl.setErrors(null);\n // eslint-disable-next-line\n this.control?.invalid ? this.endRangeFormControl.setErrors(this.control.errors) : this.endRangeFormControl.setErrors(null);\n // eslint-disable-next-line\n this.control?.invalid ? (this.isInvalid = true) : (this.isInvalid = false);\n }\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes && changes['startDateDefaultValue']) {\n this.startRangeFormControl.setValue(this.startDateDefaultValue);\n }\n if (changes && changes['endDateDefaultValue']) {\n this.endRangeFormControl.setValue(this.endDateDefaultValue);\n }\n\n if (changes && changes['isDisabled']) {\n this.setDisabledState(this.isDisabled);\n }\n }\n\n ngOnDestroy(): void {\n this.destroy$.next(true);\n this.destroy$.unsubscribe();\n }\n\n public onFirstDateChange(e: MatDatepickerInputEvent<any>): void {\n this.startDateDefaultValue = e.value;\n this.selectedDates.startRange = e.value;\n this.firstSelectedDate.emit(e.value);\n this.propagateChange(this.selectedDates);\n this.propagateTouched();\n }\n\n public onSecondDateChange(e: MatDatepickerInputEvent<any>): void {\n this.endDateDefaultValue = e.value;\n this.selectedDates.endRange = e.value;\n this.secondSelectedDate.emit(e.value);\n this.propagateChange(this.selectedDates);\n this.propagateTouched();\n }\n\n onFirstDateClear(): void {\n this.startDateDefaultValue = null;\n this.selectedDates.startRange = null;\n this.firstSelectedDate.emit(null);\n this.propagateChange(this.selectedDates);\n }\n onSecondDateClear(): void {\n this.endDateDefaultValue = null;\n this.selectedDates.endRange = null;\n this.secondSelectedDate.emit(null);\n this.propagateChange(this.selectedDates);\n }\n\n writeValue(values: EuiDateRangeSelectorDates): void {\n if (values && values.startRange === undefined) {\n throw new Error('startRange of EuiDateRangeSelectorDates model must be defined');\n }\n if (values && values.endRange === undefined) {\n throw new Error('endRange of EuiDateRangeSelectorDates model must be defined');\n }\n\n this.startDateDefaultValue = values?.startRange;\n this.endDateDefaultValue = values?.endRange;\n this.startRangeFormControl.setValue(values?.startRange);\n this.endRangeFormControl.setValue(values?.endRange);\n this.selectedDates = values || { startRange: null, endRange: null };\n }\n\n public setDisabledState?(isDisabled: boolean): void {\n this.isDisabled = isDisabled;\n if (this.isDisabled) {\n this.startRangeFormControl.disable();\n this.endRangeFormControl.disable();\n } else {\n this.startRangeFormControl.enable();\n this.endRangeFormControl.enable();\n }\n }\n\n registerOnChange(fn: any): void {\n this.propagateChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this.propagateTouched = fn;\n }\n\n /**\n * Creates the injector for passing the timeconfig to the dynamic component.\n * @protected\n */\n protected createInjector(data: any): Injector {\n const injectorTokens: StaticProvider = [{ provide: DYNAMIC_COMPONENT_CONFIG, useValue: data }];\n return Injector.create({\n parent: this.injector,\n providers: injectorTokens,\n });\n }\n\n /**\n * Fires when the picker opens.\n * @protected\n */\n protected onOpened(): void {\n if (this.isTimeRange) {\n this.portalHost = new DomPortalOutlet(\n document.querySelector('mat-calendar'),\n null,\n this.appRef,\n this.injector,\n );\n const timeConfig: EuiTimeRangePickerConfig = {\n hours: this.startDateDefaultValue ? moment(this.startDateDefaultValue).hours() : 0,\n mins: this.startDateDefaultValue ? moment(this.startDateDefaultValue).minutes() : 0,\n secs: this.startDateDefaultValue ? moment(this.startDateDefaultValue).seconds() : 0,\n endHours: this.endDateDefaultValue ? moment(this.endDateDefaultValue).hours() : 0,\n endMins: this.endDateDefaultValue ? moment(this.endDateDefaultValue).minutes() : 0,\n endSecs: this.endDateDefaultValue ? moment(this.endDateDefaultValue).seconds() : 0,\n hasSeconds: this.hasSeconds,\n stepHours: this.stepHours,\n stepMinutes: this.stepMinutes,\n stepSeconds: this.stepSeconds,\n callback: (hours: number, mins: number, secs: number, endHours: number, endMins: number, endSecs: number) => {\n this.updateStartDateTime(hours, mins, secs);\n\n this.updateEndDateTime(endHours, endMins, endSecs);\n },\n };\n\n this.portal = new ComponentPortal(EuiTimeRangepickerComponent, null, this.createInjector(timeConfig));\n const componentRef: ComponentRef<EuiTimeRangepickerComponent> = this.portalHost.attachComponentPortal(this.portal);\n this.timeRangeInstance = componentRef.instance;\n }\n }\n\n protected onStartTimeChange(e: string | Event): void {\n const time = this.extractTime(e);\n this.updateStartDateTime(time.hours, time.mins, time.secs);\n }\n\n protected onEndTimeChange(e: string | Event): void {\n const time = this.extractTime(e);\n this.updateEndDateTime(time.hours, time.mins, time.secs);\n }\n\n protected extractTime(e: string | Event): { hours: number, mins: number, secs: number } {\n const dateTimeString = typeof e === 'string' ? e : (e.target as HTMLInputElement).value;\n // Split the string by space to separate date and time components\n const [datePart, timePart] = dateTimeString.split(' ');\n // Ensure timePart exists to avoid errors\n if (!timePart) {\n return { hours: 0, mins: 0, secs: 0 };\n }\n const [hours, mins, secs] = timePart.split(':').map(part => parseInt(part, 10));\n return {\n hours: hours || 0,\n mins: mins || 0,\n secs: secs || 0,\n };\n }\n\n protected updateStartDateTime(hours: number, mins: number, secs: number): void {\n if (this.startDateDefaultValue) {\n this.startDateDefaultValue = moment(this.startDateDefaultValue).set({ hour: hours, minute: mins, second: secs });\n this.startRangeFormControl.setValue(this.startDateDefaultValue);\n this.selectedDates.startRange = this.startDateDefaultValue;\n }\n this.propagateChange(this.selectedDates);\n }\n protected updateEndDateTime(hours: number, mins: number, secs: number): void {\n if (this.endDateDefaultValue) {\n this.endDateDefaultValue = moment(this.endDateDefaultValue).set({ hour: hours, minute: mins, second: secs });\n this.endRangeFormControl.setValue(this.endDateDefaultValue);\n this.selectedDates.endRange = this.endDateDefaultValue;\n }\n this.propagateChange(this.selectedDates);\n }\n\n protected adaptContainerClasses(): string {\n if(this.isTimeRange && this.hasSeconds) {\n return 'eui-date-range-selector--container-large';\n } else if(this.isTimeRange) {\n return 'eui-date-range-selector--container-height-large';\n } else {\n return null;\n }\n }\n\n // eslint-disable-next-line @typescript-eslint/no-empty-function, @typescript-eslint/no-unused-vars\n private propagateChange = (_: any): void => {};\n\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n private propagateTouched = (): void => {};\n\n /**\n * Updates the `aria-required` attribute on the input element.\n * @private\n */\n private updateInputAriaRequiredAttribute(control: NgControl): void {\n this.hasAriaRequiredAttribute = control?.control?.hasValidator(Validators.required);\n }\n}\n","<mat-date-range-input\n [class.mat-date-range-input--read-only]=\"isReadOnly\"\n [class.mat-date-range-input--disabled]=\"isDisabled\"\n [class.mat-date-range-input--invalid]=\"isInvalid && isTouched\"\n [rangePicker]=\"picker\"\n [min]=\"minDate\"\n [max]=\"maxDate\"\n [comparisonStart]=\"comparisonStart\"\n [comparisonEnd]=\"comparisonEnd\">\n <input\n #inputStartDate\n class=\"eui-date-range-selector__start-date\"\n euiInputText\n [id]=\"startDateId\"\n [readonly]=\"isReadOnly\"\n matStartDate\n placeholder=\"{{ firstInputPlaceholder }}\"\n attr.aria-label=\"{{ firstInputAriaLabel }}\"\n [attr.aria-required]=\"hasAriaRequiredAttribute ? 'true' : null\"\n [formControl]=\"startRangeFormControl\"\n (dateInput)=\"onFirstDateChange($event)\"\n [euiClearable]=\"isClearable\"\n (change)=\"isTimeRange ? onStartTimeChange($event) : null\"\n (clear)=\"onFirstDateClear()\" />\n <input\n #inputEndDate\n class=\"eui-date-range-selector__end-date\"\n euiInputText\n [readonly]=\"isReadOnly\"\n matEndDate\n placeholder=\"{{ secondInputPlaceholder }}\"\n attr.aria-label=\"{{ secondInputAriaLabel }}\"\n [attr.aria-required]=\"hasAriaRequiredAttribute ? 'true' : null\"\n [formControl]=\"endRangeFormControl\"\n (dateInput)=\"onSecondDateChange($event)\"\n [euiClearable]=\"isClearable\"\n (change)=\"isTimeRange ? onEndTimeChange($event) : null\"\n (clear)=\"onSecondDateClear()\" />\n</mat-date-range-input>\n<mat-date-range-picker\n #picker\n [startView]=\"startView\"\n (opened)=\"onOpened()\"\n [panelClass]=\"adaptContainerClasses()\" />\n@if (!isReadOnly) {\n <button\n class=\"eui-date-range-selector__toggler eui-date-range-selector__toggler-{{ !togglerLabel ? 'icon' : 'label' }}\"\n (click)=\"picker.open()\"\n euiButton\n euiSecondary\n [euiIconButton]=\"!togglerLabel ? true : false\"\n type=\"button\"\n [euiDisabled]=\"isDisabled\"\n aria-haspopup=\"dialog\">\n @if (!togglerLabel) {\n <eui-icon-svg icon=\"{{ togglerIconSvg }}\" aria-label=\"Open Calendar\" size=\"s\"></eui-icon-svg>\n } @else {\n <span>{{ togglerLabel }}</span>\n }\n </button>\n}\n","import { NgModule } from '@angular/core';\nimport { DEFAULT_FORMATS } from '@eui/components/eui-datepicker';\nimport { provideMomentDateAdapter } from '@angular/material-moment-adapter';\n\nimport { EuiDateRangeSelectorComponent } from './eui-date-range-selector.component';\nimport { EuiTimeRangepickerComponent } from './eui-time-range-picker/eui-time-range-picker.component';\n\n/**\n * EuiDateRangeSelectorModule is an Angular module that declares and exports the EuiDateRangeSelectorComponent\n * and EuiTimeRangepickerComponent.\n *\n * @deprecated Use {@link EuiDateRangeSelectorComponent} and {@link EuiTimeRangepickerComponent} directly.\n *\n */\n@NgModule({\n imports: [EuiTimeRangepickerComponent, EuiDateRangeSelectorComponent],\n exports: [EuiDateRangeSelectorComponent, EuiTimeRangepickerComponent],\n providers: [\n provideMomentDateAdapter(DEFAULT_FORMATS),\n ],\n})\nexport class EuiDateRangeSelectorModule {}\n","import { AbstractControl, ValidationErrors, ValidatorFn } from '@angular/forms';\nimport { DateAdapter } from '@angular/material/core';\nimport moment from 'moment';\n\n/**\n * @description\n * Validator that checks that the start date isn't after the end date.\n *\n * @usageNotes\n * If the user types a value in the input field that is not aligned with the provided format the component propagates a null value that\n * can be used to validate the input field.\n *\n * @returns An error map with the\n * `euiDateRangeInvalid` if the validation check fails, otherwise `null`.\n */\n\nexport const euiStartEndDateValidator =\n // TODO: find the correct type or turn into a generic, https://www.typescriptlang.org/docs/handbook/2/generics.html\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n (adapter: DateAdapter<any>): ValidatorFn =>\n (control: AbstractControl): ValidationErrors | null => {\n const start = moment(adapter.getValidDateOrNull(adapter.deserialize(control.value?.startRange)));\n const end = moment(control.value?.endRange);\n return !start || !end || adapter.compareDate(start, end) <= 0 ? null : { euiDateRangeInvalid: { end, actual: start } };\n };\n","import { EuiDateRangeSelectorComponent } from './eui-date-range-selector.component';\nimport { EuiTimeRangepickerComponent } from './eui-time-range-picker/eui-time-range-picker.component';\n\nexport * from './eui-date-range-selector.module';\nexport * from './eui-date-range-selector.component';\nexport * from './eui-time-range-picker/eui-time-range-picker.component';\nexport * from './models/eui-date-range-selector-dates.model';\nexport * from './models/eui-time-range-picker.config.model';\nexport * from './eui-date-range-selector.validators';\n\nexport const EUI_DATE_RANGE_SELECTOR = [\n EuiTimeRangepickerComponent, \n EuiDateRangeSelectorComponent,\n] as const;","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2","takeUntil","i3"],"mappings":"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"}
1
+ {"version":3,"file":"eui-components-eui-date-range-selector.mjs","sources":["../../eui-date-range-selector/eui-time-range-picker/eui-time-range-picker.component.ts","../../eui-date-range-selector/eui-time-range-picker/eui-time-range-picker.component.html","../../eui-date-range-selector/eui-date-range-selector.component.ts","../../eui-date-range-selector/eui-date-range-selector.component.html","../../eui-date-range-selector/eui-date-range-selector.module.ts","../../eui-date-range-selector/eui-date-range-selector.validators.ts","../../eui-date-range-selector/index.ts","../../eui-date-range-selector/eui-components-eui-date-range-selector.ts"],"sourcesContent":["import {\n Component,\n Inject,\n Optional,\n ViewEncapsulation,\n HostBinding,\n OnInit,\n OnDestroy,\n} from '@angular/core';\nimport { Subject, takeUntil } from 'rxjs';\nimport { TranslateService } from '@ngx-translate/core';\nimport { FormControl, FormsModule, ReactiveFormsModule } from '@angular/forms';\n\nimport { DYNAMIC_COMPONENT_CONFIG } from '@eui/core';\nimport { EUI_TIMEPICKER } from '@eui/components/eui-timepicker';\nimport { EuiTimeRangePickerConfig } from '../models/eui-time-range-picker.config.model';\n\n@Component({\n selector: 'eui-time-range-picker',\n templateUrl: './eui-time-range-picker.component.html',\n styleUrls: ['../styles/_index.scss'],\n encapsulation: ViewEncapsulation.None,\n imports: [\n FormsModule, \n ReactiveFormsModule,\n ...EUI_TIMEPICKER,\n ],\n})\nexport class EuiTimeRangepickerComponent implements OnInit, OnDestroy {\n hours: number;\n mins: number;\n secs: number;\n endHours: number;\n endMins: number;\n endSecs: number;\n stepHours: number;\n stepMinutes: number;\n stepSeconds: number;\n hasSeconds: boolean;\n startDateLabel: string;\n endDateLabel: string;\n startTimeFormControl = new FormControl();\n endTimeFormControl = new FormControl();\n @HostBinding('class')\n get class(): string {\n return ['eui-timerange'].join(' ').trim();\n }\n @HostBinding('attr.data-e2e') e2eAttr = 'eui-time-range-picker';\n\n private destroy$: Subject<boolean> = new Subject<boolean>();\n\n constructor(\n @Optional() protected translateService: TranslateService,\n @Optional() @Inject(DYNAMIC_COMPONENT_CONFIG) config: EuiTimeRangePickerConfig,\n ) {\n this.hours = config?.hours || 0;\n this.mins = config?.mins || 0;\n this.secs = config?.secs || 0;\n this.endHours = config?.endHours || 0;\n this.endMins = config?.endMins || 0;\n this.endSecs = config?.endSecs || 0;\n this.hasSeconds = config?.hasSeconds;\n this.stepHours = config? config.stepHours: this.stepHours;\n this.stepMinutes = config? config.stepMinutes: this.stepMinutes;\n this.stepSeconds = config? config.stepSeconds: this.stepSeconds;\n this.callback = config?.callback || this.callback;\n }\n\n ngOnInit(): void {\n this.translateService\n ?.stream('eui.daterangeselector.FIRSTPICKERSLABEL')\n .pipe(takeUntil(this.destroy$))\n .subscribe((result: string) => {\n this.startDateLabel = result;\n });\n\n this.translateService\n ?.stream('eui.daterangeselector.SECONDPICKERSLABEL')\n .pipe(takeUntil(this.destroy$))\n .subscribe((result: string) => {\n this.endDateLabel = result;\n });\n\n this.startTimeFormControl = new FormControl({ value: { hours: this.hours, mins: this.mins, secs: this.secs }, disabled: false });\n this.endTimeFormControl = new FormControl({ value: { hours: this.endHours, mins: this.endMins, secs: this.endSecs }, disabled: false });\n\n this.startTimeFormControl.valueChanges.pipe(takeUntil(this.destroy$)).subscribe((value) => {\n this.hours = value.hours;\n this.mins = value.mins;\n this.secs = value.secs;\n this.callback(this.hours, this.mins, this.secs, this.endHours, this.endMins, this.endSecs);\n });\n this.endTimeFormControl.valueChanges.pipe(takeUntil(this.destroy$)).subscribe((value) => {\n this.endHours = value.hours;\n this.endMins = value.mins;\n this.endSecs = value.secs;\n this.callback(this.hours, this.mins, this.secs, this.endHours, this.endMins, this.endSecs);\n });\n }\n\n ngOnDestroy(): void {\n this.destroy$.next(true);\n this.destroy$.unsubscribe();\n }\n\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n private callback: (hours: number, mins: number, secs?: number, endHours?: number, endMins?: number, endSecs?: number) => void = () => {};\n\n}\n","<div class=\"eui-timerange__time-container\">\n <span class=\"eui-timerange__time-container-label\">{{ startDateLabel }}</span>\n <eui-timepicker iconSize=\"m\" [hasSeconds]=\"hasSeconds\" [formControl]=\"startTimeFormControl\"></eui-timepicker>\n</div>\n\n<div class=\"eui-timerange__time-container\">\n <span class=\"eui-timerange__time-container-label\">{{ endDateLabel }}</span>\n <eui-timepicker iconSize=\"m\" [hasSeconds]=\"hasSeconds\" [formControl]=\"endTimeFormControl\"></eui-timepicker>\n</div>\n","/* eslint-disable @typescript-eslint/no-explicit-any */\nimport {\n ApplicationRef,\n Component,\n ComponentFactoryResolver,\n ComponentRef,\n DoCheck,\n EventEmitter,\n HostBinding,\n Injector,\n Input,\n OnChanges,\n OnDestroy,\n OnInit,\n Optional,\n Output,\n Self,\n SimpleChanges,\n StaticProvider,\n ViewEncapsulation,\n booleanAttribute,\n} from '@angular/core';\nimport {\n ControlValueAccessor,\n FormControl,\n FormsModule,\n NgControl,\n ReactiveFormsModule,\n Validators,\n} from '@angular/forms';\nimport { MatDatepickerInputEvent, MatDatepickerModule } from '@angular/material/datepicker';\nimport { DateAdapter } from '@angular/material/core';\nimport { ComponentPortal, DomPortalOutlet } from '@angular/cdk/portal';\nimport { TranslateModule, TranslateService } from '@ngx-translate/core';\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\nimport moment from 'moment';\nimport 'moment/min/locales';\n\nimport { DYNAMIC_COMPONENT_CONFIG, LocaleService, uniqueId } from '@eui/core';\nimport { EuiDateRangeSelectorDates } from './models/eui-date-range-selector-dates.model';\nimport { EuiTimeRangepickerComponent } from './eui-time-range-picker/eui-time-range-picker.component';\nimport { EuiTimeRangePickerConfig } from './models/eui-time-range-picker.config.model';\nimport { MatMomentDateModule, provideMomentDateAdapter } from '@angular/material-moment-adapter';\nimport { EUI_BUTTON } from '@eui/components/eui-button';\nimport { EUI_ICON } from '@eui/components/eui-icon';\nimport { EUI_INPUT_TEXT } from '@eui/components/eui-input-text';\nimport { EUI_INPUT_NUMBER } from '@eui/components/eui-input-number';\nimport { EUI_TIMEPICKER } from '@eui/components/eui-timepicker';\nimport { DEFAULT_FORMATS } from '@eui/components/eui-datepicker';\n\n@Component({\n selector: 'eui-date-range-selector',\n templateUrl: './eui-date-range-selector.component.html',\n styleUrls: ['./styles/_index.scss'],\n encapsulation: ViewEncapsulation.None,\n imports: [\n FormsModule,\n ReactiveFormsModule,\n TranslateModule,\n MatDatepickerModule,\n MatMomentDateModule,\n ...EUI_BUTTON,\n ...EUI_ICON,\n ...EUI_INPUT_TEXT,\n ...EUI_INPUT_NUMBER,\n ...EUI_TIMEPICKER,\n ],\n providers: [provideMomentDateAdapter(DEFAULT_FORMATS)],\n})\nexport class EuiDateRangeSelectorComponent implements OnInit, OnDestroy, OnChanges, ControlValueAccessor, DoCheck {\n selectedDates: EuiDateRangeSelectorDates = { startRange: null, endRange: null };\n public isInvalid: boolean;\n public isTouched: boolean;\n public startRangeFormControl = new FormControl();\n public endRangeFormControl = new FormControl();\n /**\n * Event emitted when the first date is selected.\n */\n @Output() firstSelectedDate = new EventEmitter<any>();\n /**\n * Event emitted when the second date is selected.\n */\n @Output() secondSelectedDate = new EventEmitter<any>();\n\n @HostBinding('class')\n get class(): string {\n return [\n 'eui-date-range-selector',\n this.isClearable ? 'eui-date-range-selector--clearable' : '',\n this.islongDateFormat || this.isTimeRange ? 'eui-date-range-selector--long-date-format' : '',\n this.isResponsive ? 'eui-date-range-selector--responsive' : '',\n ].join(' ').trim();\n }\n @HostBinding('attr.data-e2e')\n @Input() e2eAttr = 'eui-date-range-selector';\n /**\n * Sets the minimum date that can be selected.\n */\n @Input() minDate: any;\n /**\n * Sets the maximum date that can be selected.\n */\n @Input() maxDate: any;\n /**\n * Sets the svg icon for the toggler button.\n * @default 'eui-calendar-outline'\n */\n @Input() togglerIconSvg = 'eui-calendar-outline';\n /**\n * Sets the label of the toggler button.\n * @type {string}\n */\n @Input() togglerLabel: string;\n /**\n * Sets the placeholder of the first input field.\n * @type {string}\n */\n @Input() firstInputPlaceholder: string;\n /**\n * Sets the placeholder of the second input field.\n * @type {string}\n */\n @Input() secondInputPlaceholder: string;\n /**\n * Sets the aria-label of the first input field.\n * @type {string}\n */\n @Input() firstInputAriaLabel: string;\n /**\n * Sets the aria-label of the second input field.\n * @type {string}\n */\n @Input() secondInputAriaLabel: string;\n /**\n * Sets the default start date value.\n */\n @Input() startDateDefaultValue: any;\n /**\n * Sets the default end date value.\n */\n @Input() endDateDefaultValue: any;\n /**\n * Sets the first comparison date range.\n */\n @Input() comparisonStart: any;\n /**\n * Sets the second comparison date range.\n */\n @Input() comparisonEnd: any;\n /**\n * Sets the starting view of the calendar.\n * @type {('month' | 'year' | 'multi-year')}\n * @default 'month'\n */\n @Input() startView: 'month' | 'year' | 'multi-year' = 'month';\n /**\n * Sets a unique id for the first input field.\n * @default 'start-date-<uniqueId>'\n */\n @Input() startDateId = `start-date-${uniqueId()}`;\n /**\n * Sets the step value for the hours in the time picker.\n * @default 1\n */\n @Input() stepHours = 1;\n /**\n * Sets the step value for the minutes in the time picker.\n * @default 1\n */\n @Input() stepMinutes = 1;\n /**\n * Sets the step value for the seconds in the time picker.\n * @default 1\n */\n @Input() stepSeconds = 1;\n /**\n * Option to define a long date format.\n * @default false\n */\n @Input({ transform: booleanAttribute }) islongDateFormat = false;\n /**\n * Option to enable the clearable button in the input field.\n * @default false\n */\n @Input({ transform: booleanAttribute }) isClearable = false;\n /**\n * Option to enable the readonly state.\n * @default false\n */\n @Input({ transform: booleanAttribute }) isReadOnly = false;\n /**\n * Option to enable the disabled state.\n * @default false\n */\n @Input({ transform: booleanAttribute }) isDisabled = false;\n /**\n * Option to make the date range field responsive.\n * @default false\n */\n @Input({ transform: booleanAttribute }) isResponsive = false;\n /**\n * Option to enable the time range picker.\n * @default false\n */\n @Input({ transform: booleanAttribute }) isTimeRange = false;\n /**\n * Option to enable seconds in the time range picker.\n * @default false\n */\n @Input({ transform: booleanAttribute }) hasSeconds = false;\n\n protected hasAriaRequiredAttribute: boolean;\n private destroy$: Subject<boolean> = new Subject<boolean>();\n private portalHost: DomPortalOutlet;\n private portal: ComponentPortal<EuiTimeRangepickerComponent>;\n protected timeRangeInstance: EuiTimeRangepickerComponent;\n\n constructor(\n protected translateService: TranslateService,\n @Optional() protected localeService: LocaleService,\n protected adapter: DateAdapter<any>,\n /**\n * @deprecated will be removed in the next major version\n * @breaking-change 21.0.0\n */\n private componentFactoryResolver: ComponentFactoryResolver,\n private injector: Injector,\n private appRef: ApplicationRef,\n @Self() @Optional() protected control: NgControl,\n ) {\n if (this.control) {\n this.control.valueAccessor = this;\n }\n }\n\n ngOnInit(): void {\n this.localeService\n .getState()\n .pipe(takeUntil(this.destroy$))\n .subscribe((state) => {\n this.adapter.setLocale(state.id);\n });\n\n this.startRangeFormControl = new FormControl({ value: this.startDateDefaultValue, disabled: this.isDisabled });\n this.endRangeFormControl = new FormControl({ value: this.endDateDefaultValue, disabled: this.isDisabled });\n\n if (!this.firstInputPlaceholder) {\n this.translateService\n .stream('eui.daterangeselector.FIRSTPICKERSLABEL')\n .pipe(takeUntil(this.destroy$))\n .subscribe((result: string) => {\n this.firstInputPlaceholder = result;\n });\n }\n // by setting the firstInputAriaLabel to dd/mm/yyyy(or the desired format) the format can be announced to the screen reader users before the users start typing\n if (!this.firstInputAriaLabel) {\n this.translateService\n .stream('eui.daterangeselector.FIRSTPICKERSPLACEHOLDER')\n .pipe(takeUntil(this.destroy$))\n .subscribe((result: string) => {\n this.firstInputAriaLabel = result;\n });\n }\n if (!this.secondInputPlaceholder) {\n this.translateService\n .stream('eui.daterangeselector.SECONDPICKERSLABEL')\n .pipe(takeUntil(this.destroy$))\n .subscribe((result: string) => {\n this.secondInputPlaceholder = result;\n });\n }\n // by setting the secondInputAriaLabel to dd/mm/yyyy(or the desired format) the format can be announced to the screen reader users before the users start typing\n if (!this.secondInputAriaLabel) {\n this.translateService\n .stream('eui.daterangeselector.SECONDPICKERSPLACEHOLDER')\n .pipe(takeUntil(this.destroy$))\n .subscribe((result: string) => {\n this.secondInputAriaLabel = result;\n });\n }\n\n this.updateInputAriaRequiredAttribute(this.control);\n this.control?.valueChanges.pipe(takeUntil(this.destroy$)).subscribe((value) => {\n this.updateInputAriaRequiredAttribute(this.control);\n });\n }\n\n ngDoCheck(): void {\n if (this.control) {\n // marks the input controls as touched/invalid if the form control is touched/invalid\n // eslint-disable-next-line\n this.control?.touched ? this.startRangeFormControl?.markAsTouched() : this.startRangeFormControl.markAsUntouched();\n // eslint-disable-next-line\n this.control?.touched ? this.endRangeFormControl.markAsTouched() : this.endRangeFormControl?.markAsUntouched();\n // eslint-disable-next-line\n this.control?.touched ? (this.isTouched = true) : (this.isTouched = false);\n // eslint-disable-next-line\n this.control?.invalid ? this.startRangeFormControl.setErrors(this.control.errors) : this.startRangeFormControl.setErrors(null);\n // eslint-disable-next-line\n this.control?.invalid ? this.endRangeFormControl.setErrors(this.control.errors) : this.endRangeFormControl.setErrors(null);\n // eslint-disable-next-line\n this.control?.invalid ? (this.isInvalid = true) : (this.isInvalid = false);\n }\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes && changes['startDateDefaultValue']) {\n this.startRangeFormControl.setValue(this.startDateDefaultValue);\n }\n if (changes && changes['endDateDefaultValue']) {\n this.endRangeFormControl.setValue(this.endDateDefaultValue);\n }\n\n if (changes && changes['isDisabled']) {\n this.setDisabledState(this.isDisabled);\n }\n }\n\n ngOnDestroy(): void {\n this.destroy$.next(true);\n this.destroy$.unsubscribe();\n }\n /**\n * Method fired when the first date field changes.\n * @param e Event emitted when the first date changes.\n */\n public onFirstDateChange(e: MatDatepickerInputEvent<any>): void {\n this.startDateDefaultValue = e.value;\n this.selectedDates.startRange = e.value;\n this.firstSelectedDate.emit(e.value);\n this.propagateChange(this.selectedDates);\n this.propagateTouched();\n }\n /**\n * Method fired when the second date field changes.\n * @param e Event emitted when the second date changes.\n */\n public onSecondDateChange(e: MatDatepickerInputEvent<any>): void {\n this.endDateDefaultValue = e.value;\n this.selectedDates.endRange = e.value;\n this.secondSelectedDate.emit(e.value);\n this.propagateChange(this.selectedDates);\n this.propagateTouched();\n }\n /**\n * Method fired when the first date field is cleared.\n */\n onFirstDateClear(): void {\n this.startDateDefaultValue = null;\n this.selectedDates.startRange = null;\n this.firstSelectedDate.emit(null);\n this.propagateChange(this.selectedDates);\n }\n /**\n * Method fired when the second date field is cleared.\n */\n onSecondDateClear(): void {\n this.endDateDefaultValue = null;\n this.selectedDates.endRange = null;\n this.secondSelectedDate.emit(null);\n this.propagateChange(this.selectedDates);\n }\n\n writeValue(values: EuiDateRangeSelectorDates): void {\n if (values && values.startRange === undefined) {\n throw new Error('startRange of EuiDateRangeSelectorDates model must be defined');\n }\n if (values && values.endRange === undefined) {\n throw new Error('endRange of EuiDateRangeSelectorDates model must be defined');\n }\n\n this.startDateDefaultValue = values?.startRange;\n this.endDateDefaultValue = values?.endRange;\n this.startRangeFormControl.setValue(values?.startRange);\n this.endRangeFormControl.setValue(values?.endRange);\n this.selectedDates = values || { startRange: null, endRange: null };\n }\n /**\n * Sets the disabled state of the component based on the boolean value passed.\n * @param isDisabled - The boolean value indicating whether the component should be disabled or not.\n */\n public setDisabledState?(isDisabled: boolean): void {\n this.isDisabled = isDisabled;\n if (this.isDisabled) {\n this.startRangeFormControl.disable();\n this.endRangeFormControl.disable();\n } else {\n this.startRangeFormControl.enable();\n this.endRangeFormControl.enable();\n }\n }\n\n registerOnChange(fn: any): void {\n this.propagateChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this.propagateTouched = fn;\n }\n\n /**\n * Creates an injector for the timepicker component.\n * @param data - The data to be passed to the timepicker component.\n * @return {Injector} - The created injector.\n * @protected\n */\n protected createInjector(data: any): Injector {\n const injectorTokens: StaticProvider = [{ provide: DYNAMIC_COMPONENT_CONFIG, useValue: data }];\n return Injector.create({\n parent: this.injector,\n providers: injectorTokens,\n });\n }\n\n /**\n * Fires when the picker opens.\n * @protected\n */\n protected onOpened(): void {\n if (this.isTimeRange) {\n this.portalHost = new DomPortalOutlet(\n document.querySelector('mat-calendar'),\n null,\n this.appRef,\n this.injector,\n );\n const timeConfig: EuiTimeRangePickerConfig = {\n hours: this.startDateDefaultValue ? moment(this.startDateDefaultValue).hours() : 0,\n mins: this.startDateDefaultValue ? moment(this.startDateDefaultValue).minutes() : 0,\n secs: this.startDateDefaultValue ? moment(this.startDateDefaultValue).seconds() : 0,\n endHours: this.endDateDefaultValue ? moment(this.endDateDefaultValue).hours() : 0,\n endMins: this.endDateDefaultValue ? moment(this.endDateDefaultValue).minutes() : 0,\n endSecs: this.endDateDefaultValue ? moment(this.endDateDefaultValue).seconds() : 0,\n hasSeconds: this.hasSeconds,\n stepHours: this.stepHours,\n stepMinutes: this.stepMinutes,\n stepSeconds: this.stepSeconds,\n callback: (hours: number, mins: number, secs: number, endHours: number, endMins: number, endSecs: number) => {\n this.updateStartDateTime(hours, mins, secs);\n\n this.updateEndDateTime(endHours, endMins, endSecs);\n },\n };\n\n this.portal = new ComponentPortal(EuiTimeRangepickerComponent, null, this.createInjector(timeConfig));\n const componentRef: ComponentRef<EuiTimeRangepickerComponent> = this.portalHost.attachComponentPortal(this.portal);\n this.timeRangeInstance = componentRef.instance;\n }\n }\n /**\n * Fires then the time of the first date field changes.\n * @param e The event emitted when the time changes.\n * @protected\n */\n protected onStartTimeChange(e: string | Event): void {\n const time = this.extractTime(e);\n this.updateStartDateTime(time.hours, time.mins, time.secs);\n }\n /**\n * Fires then the time of the second date field changes.\n * @param e The event emitted when the time changes.\n * @protected\n */\n protected onEndTimeChange(e: string | Event): void {\n const time = this.extractTime(e);\n this.updateEndDateTime(time.hours, time.mins, time.secs);\n }\n /**\n * Extracts the time from the date input field.\n * @param e The event or string containing the time.\n * @return {hours: number, mins: number, secs: number} The extracted time.\n * @protected\n */\n protected extractTime(e: string | Event): { hours: number, mins: number, secs: number } {\n const dateTimeString = typeof e === 'string' ? e : (e.target as HTMLInputElement).value;\n // Split the string by space to separate date and time components\n const [datePart, timePart] = dateTimeString.split(' ');\n // Ensure timePart exists to avoid errors\n if (!timePart) {\n return { hours: 0, mins: 0, secs: 0 };\n }\n const [hours, mins, secs] = timePart.split(':').map(part => parseInt(part, 10));\n return {\n hours: hours || 0,\n mins: mins || 0,\n secs: secs || 0,\n };\n }\n /**\n * Updates the start date time based on the provided hours, minutes, and seconds.\n * @param hours The hours to set.\n * @param mins The minutes to set.\n * @param secs The seconds to set.\n * @protected\n */\n protected updateStartDateTime(hours: number, mins: number, secs: number): void {\n if (this.startDateDefaultValue) {\n this.startDateDefaultValue = moment(this.startDateDefaultValue).set({ hour: hours, minute: mins, second: secs });\n this.startRangeFormControl.setValue(this.startDateDefaultValue);\n this.selectedDates.startRange = this.startDateDefaultValue;\n }\n this.propagateChange(this.selectedDates);\n }\n /**\n * Updates the end date time based on the provided hours, minutes, and seconds.\n * @param hours The hours to set.\n * @param mins The minutes to set.\n * @param secs The seconds to set.\n * @protected\n */\n protected updateEndDateTime(hours: number, mins: number, secs: number): void {\n if (this.endDateDefaultValue) {\n this.endDateDefaultValue = moment(this.endDateDefaultValue).set({ hour: hours, minute: mins, second: secs });\n this.endRangeFormControl.setValue(this.endDateDefaultValue);\n this.selectedDates.endRange = this.endDateDefaultValue;\n }\n this.propagateChange(this.selectedDates);\n }\n /**\n * Returns the class for the container based on the time range and hasSeconds conditions.\n * @return {string} The class for the container.\n * @protected\n */\n protected adaptContainerClasses(): string {\n if(this.isTimeRange && this.hasSeconds) {\n return 'eui-date-range-selector--container-large';\n } else if(this.isTimeRange) {\n return 'eui-date-range-selector--container-height-large';\n } else {\n return null;\n }\n }\n\n private propagateChange = (_: any): void => {/* empty */};\n\n private propagateTouched = (): void => {/* empty */};\n\n /**\n * Updates the `aria-required` attribute on the input element.\n * @param control The NgControl instance to check for required validators.\n * @private\n */\n private updateInputAriaRequiredAttribute(control: NgControl): void {\n this.hasAriaRequiredAttribute = control?.control?.hasValidator(Validators.required);\n }\n}\n","<mat-date-range-input\n [class.mat-date-range-input--read-only]=\"isReadOnly\"\n [class.mat-date-range-input--disabled]=\"isDisabled\"\n [class.mat-date-range-input--invalid]=\"isInvalid && isTouched\"\n [rangePicker]=\"picker\"\n [min]=\"minDate\"\n [max]=\"maxDate\"\n [comparisonStart]=\"comparisonStart\"\n [comparisonEnd]=\"comparisonEnd\">\n <input\n #inputStartDate\n class=\"eui-date-range-selector__start-date\"\n euiInputText\n [id]=\"startDateId\"\n [readonly]=\"isReadOnly\"\n matStartDate\n placeholder=\"{{ firstInputPlaceholder }}\"\n attr.aria-label=\"{{ firstInputAriaLabel }}\"\n [attr.aria-required]=\"hasAriaRequiredAttribute ? 'true' : null\"\n [formControl]=\"startRangeFormControl\"\n (dateInput)=\"onFirstDateChange($event)\"\n [euiClearable]=\"isClearable\"\n (change)=\"isTimeRange ? onStartTimeChange($event) : null\"\n (clear)=\"onFirstDateClear()\" />\n <input\n #inputEndDate\n class=\"eui-date-range-selector__end-date\"\n euiInputText\n [readonly]=\"isReadOnly\"\n matEndDate\n placeholder=\"{{ secondInputPlaceholder }}\"\n attr.aria-label=\"{{ secondInputAriaLabel }}\"\n [attr.aria-required]=\"hasAriaRequiredAttribute ? 'true' : null\"\n [formControl]=\"endRangeFormControl\"\n (dateInput)=\"onSecondDateChange($event)\"\n [euiClearable]=\"isClearable\"\n (change)=\"isTimeRange ? onEndTimeChange($event) : null\"\n (clear)=\"onSecondDateClear()\" />\n</mat-date-range-input>\n<mat-date-range-picker\n #picker\n [startView]=\"startView\"\n (opened)=\"onOpened()\"\n [panelClass]=\"adaptContainerClasses()\" />\n@if (!isReadOnly) {\n <button\n class=\"eui-date-range-selector__toggler eui-date-range-selector__toggler-{{ !togglerLabel ? 'icon' : 'label' }}\"\n (click)=\"picker.open()\"\n euiButton\n euiSecondary\n [euiIconButton]=\"!togglerLabel ? true : false\"\n type=\"button\"\n [euiDisabled]=\"isDisabled\"\n aria-haspopup=\"dialog\">\n @if (!togglerLabel) {\n <eui-icon-svg icon=\"{{ togglerIconSvg }}\" aria-label=\"Open Calendar\" size=\"s\"></eui-icon-svg>\n } @else {\n <span>{{ togglerLabel }}</span>\n }\n </button>\n}\n","import { NgModule } from '@angular/core';\nimport { DEFAULT_FORMATS } from '@eui/components/eui-datepicker';\nimport { provideMomentDateAdapter } from '@angular/material-moment-adapter';\n\nimport { EuiDateRangeSelectorComponent } from './eui-date-range-selector.component';\nimport { EuiTimeRangepickerComponent } from './eui-time-range-picker/eui-time-range-picker.component';\n\n/**\n * EuiDateRangeSelectorModule is an Angular module that declares and exports the EuiDateRangeSelectorComponent\n * and EuiTimeRangepickerComponent.\n *\n * @deprecated Use {@link EuiDateRangeSelectorComponent} and {@link EuiTimeRangepickerComponent} directly.\n *\n */\n@NgModule({\n imports: [EuiTimeRangepickerComponent, EuiDateRangeSelectorComponent],\n exports: [EuiDateRangeSelectorComponent, EuiTimeRangepickerComponent],\n providers: [\n provideMomentDateAdapter(DEFAULT_FORMATS),\n ],\n})\nexport class EuiDateRangeSelectorModule {}\n","import { AbstractControl, ValidationErrors, ValidatorFn } from '@angular/forms';\nimport { DateAdapter } from '@angular/material/core';\nimport moment from 'moment';\n\n/**\n * @description\n * Validator that checks that the start date isn't after the end date.\n *\n * @usageNotes\n * If the user types a value in the input field that is not aligned with the provided format the component propagates a null value that\n * can be used to validate the input field.\n *\n * @returns An error map with the\n * `euiDateRangeInvalid` if the validation check fails, otherwise `null`.\n */\n\nexport const euiStartEndDateValidator =\n // TODO: find the correct type or turn into a generic, https://www.typescriptlang.org/docs/handbook/2/generics.html\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n (adapter: DateAdapter<any>): ValidatorFn =>\n (control: AbstractControl): ValidationErrors | null => {\n const start = moment(adapter.getValidDateOrNull(adapter.deserialize(control.value?.startRange)));\n const end = moment(control.value?.endRange);\n return !start || !end || adapter.compareDate(start, end) <= 0 ? null : { euiDateRangeInvalid: { end, actual: start } };\n };\n","import { EuiDateRangeSelectorComponent } from './eui-date-range-selector.component';\nimport { EuiTimeRangepickerComponent } from './eui-time-range-picker/eui-time-range-picker.component';\n\nexport * from './eui-date-range-selector.module';\nexport * from './eui-date-range-selector.component';\nexport * from './eui-time-range-picker/eui-time-range-picker.component';\nexport * from './models/eui-date-range-selector-dates.model';\nexport * from './models/eui-time-range-picker.config.model';\nexport * from './eui-date-range-selector.validators';\n\nexport const EUI_DATE_RANGE_SELECTOR = [\n EuiTimeRangepickerComponent, \n EuiDateRangeSelectorComponent,\n] as const;","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2","takeUntil","i3"],"mappings":"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"}