@ember-eui/core 12.0.1 → 12.0.3

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 (314) hide show
  1. package/declarations/components/common.d.ts +1 -1
  2. package/declarations/components/common.d.ts.map +1 -1
  3. package/declarations/components/eui-accordion.d.ts.map +1 -1
  4. package/declarations/components/eui-badge.d.ts.map +1 -1
  5. package/declarations/components/eui-button-group-button.d.ts.map +1 -1
  6. package/declarations/components/eui-combo-box.d.ts +1 -1
  7. package/declarations/components/eui-combo-box.d.ts.map +1 -1
  8. package/declarations/components/eui-described-form-group.d.ts +2 -0
  9. package/declarations/components/eui-described-form-group.d.ts.map +1 -1
  10. package/declarations/components/eui-dual-range.d.ts.map +1 -1
  11. package/declarations/components/eui-header-section-item-button.d.ts.map +1 -1
  12. package/declarations/components/eui-list-group-item.d.ts.map +1 -1
  13. package/declarations/components/eui-loading-content.d.ts.map +1 -1
  14. package/declarations/components/eui-markdown-editor.d.ts.map +1 -1
  15. package/declarations/components/eui-markdown-format.d.ts.map +1 -1
  16. package/declarations/components/eui-notification-event-messages.d.ts.map +1 -1
  17. package/declarations/components/eui-page-header-content.d.ts.map +1 -1
  18. package/declarations/components/eui-popover.d.ts.map +1 -1
  19. package/declarations/components/eui-range.d.ts.map +1 -1
  20. package/declarations/components/eui-step.d.ts +3 -3
  21. package/declarations/components/eui-step.d.ts.map +1 -1
  22. package/declarations/components/eui-steps.d.ts +1 -3
  23. package/declarations/components/eui-steps.d.ts.map +1 -1
  24. package/declarations/components/eui-super-date-picker/utils/date-utils.d.ts +1 -0
  25. package/declarations/components/eui-super-date-picker/utils/date-utils.d.ts.map +1 -1
  26. package/declarations/components/eui-super-date-picker/utils/index.d.ts +1 -0
  27. package/declarations/components/eui-super-date-picker/utils/index.d.ts.map +1 -1
  28. package/declarations/components/eui-super-date-picker/utils/pretty-duration.d.ts +1 -0
  29. package/declarations/components/eui-super-date-picker/utils/pretty-duration.d.ts.map +1 -1
  30. package/declarations/components/eui-super-date-picker/utils/quick-select.d.ts +1 -0
  31. package/declarations/components/eui-super-date-picker/utils/quick-select.d.ts.map +1 -1
  32. package/declarations/components/eui-super-date-picker/utils/time-options.d.ts +1 -0
  33. package/declarations/components/eui-super-date-picker/utils/time-options.d.ts.map +1 -1
  34. package/declarations/components/eui-tabbed-content.d.ts.map +1 -1
  35. package/declarations/utils/common.d.ts +42 -0
  36. package/declarations/utils/common.d.ts.map +1 -0
  37. package/dist/_rollupPluginBabelHelpers-9wjJaosZ.js +63 -0
  38. package/dist/_rollupPluginBabelHelpers-9wjJaosZ.js.map +1 -0
  39. package/dist/components/common.js +1 -19
  40. package/dist/components/common.js.map +1 -1
  41. package/dist/components/eui-accordion.js +12 -16
  42. package/dist/components/eui-accordion.js.map +1 -1
  43. package/dist/components/eui-auto-sizer.js +2 -2
  44. package/dist/components/eui-auto-sizer.js.map +1 -1
  45. package/dist/components/eui-badge.js +1 -1
  46. package/dist/components/eui-badge.js.map +1 -1
  47. package/dist/components/eui-bottom-bar.js +1 -1
  48. package/dist/components/eui-bottom-bar.js.map +1 -1
  49. package/dist/components/eui-breadcrumbs.js +2 -2
  50. package/dist/components/eui-breadcrumbs.js.map +1 -1
  51. package/dist/components/eui-button-group-button.js +7 -3
  52. package/dist/components/eui-button-group-button.js.map +1 -1
  53. package/dist/components/eui-card-select.js +1 -1
  54. package/dist/components/eui-card-select.js.map +1 -1
  55. package/dist/components/eui-card.js +2 -2
  56. package/dist/components/eui-card.js.map +1 -1
  57. package/dist/components/eui-checkbox.js +1 -1
  58. package/dist/components/eui-checkbox.js.map +1 -1
  59. package/dist/components/eui-code-block.js +7 -7
  60. package/dist/components/eui-code-block.js.map +1 -1
  61. package/dist/components/eui-code.js +2 -2
  62. package/dist/components/eui-code.js.map +1 -1
  63. package/dist/components/eui-collapsible-nav.js +1 -1
  64. package/dist/components/eui-collapsible-nav.js.map +1 -1
  65. package/dist/components/eui-combo-box/create-option.js +1 -1
  66. package/dist/components/eui-combo-box/create-option.js.map +1 -1
  67. package/dist/components/eui-combo-box/options.js +1 -1
  68. package/dist/components/eui-combo-box/options.js.map +1 -1
  69. package/dist/components/eui-combo-box/trigger.js +1 -1
  70. package/dist/components/eui-combo-box/trigger.js.map +1 -1
  71. package/dist/components/eui-combo-box-pill.js +1 -1
  72. package/dist/components/eui-combo-box-pill.js.map +1 -1
  73. package/dist/components/eui-combo-box.js +9 -11
  74. package/dist/components/eui-combo-box.js.map +1 -1
  75. package/dist/components/eui-context-menu-item.js +1 -1
  76. package/dist/components/eui-context-menu-item.js.map +1 -1
  77. package/dist/components/eui-copy.js +1 -1
  78. package/dist/components/eui-copy.js.map +1 -1
  79. package/dist/components/eui-described-form-group.js +1 -1
  80. package/dist/components/eui-described-form-group.js.map +1 -1
  81. package/dist/components/eui-dual-range.js +17 -17
  82. package/dist/components/eui-dual-range.js.map +1 -1
  83. package/dist/components/eui-field-number.js +1 -1
  84. package/dist/components/eui-field-number.js.map +1 -1
  85. package/dist/components/eui-field-password.js +1 -1
  86. package/dist/components/eui-field-password.js.map +1 -1
  87. package/dist/components/eui-field-search.js +3 -3
  88. package/dist/components/eui-field-search.js.map +1 -1
  89. package/dist/components/eui-field-text.js +1 -1
  90. package/dist/components/eui-field-text.js.map +1 -1
  91. package/dist/components/eui-file-picker.js +6 -6
  92. package/dist/components/eui-file-picker.js.map +1 -1
  93. package/dist/components/eui-flyout.js +2 -2
  94. package/dist/components/eui-flyout.js.map +1 -1
  95. package/dist/components/eui-global-toast-list.js +4 -4
  96. package/dist/components/eui-global-toast-list.js.map +1 -1
  97. package/dist/components/eui-header-links.js +1 -1
  98. package/dist/components/eui-header-links.js.map +1 -1
  99. package/dist/components/eui-header-section-item-button.js +3 -3
  100. package/dist/components/eui-header-section-item-button.js.map +1 -1
  101. package/dist/components/eui-i18n.js +1 -1
  102. package/dist/components/eui-i18n.js.map +1 -1
  103. package/dist/components/eui-icon.js +2 -2
  104. package/dist/components/eui-icon.js.map +1 -1
  105. package/dist/components/eui-image.js +2 -2
  106. package/dist/components/eui-image.js.map +1 -1
  107. package/dist/components/eui-inner-text.js +2 -2
  108. package/dist/components/eui-inner-text.js.map +1 -1
  109. package/dist/components/eui-input-popover.js +9 -9
  110. package/dist/components/eui-input-popover.js.map +1 -1
  111. package/dist/components/eui-list-group-item.js +1 -4
  112. package/dist/components/eui-list-group-item.js.map +1 -1
  113. package/dist/components/eui-loading-content.js +17 -5
  114. package/dist/components/eui-loading-content.js.map +1 -1
  115. package/dist/components/eui-markdown-editor-footer.js +2 -2
  116. package/dist/components/eui-markdown-editor-footer.js.map +1 -1
  117. package/dist/components/eui-markdown-editor.js +16 -16
  118. package/dist/components/eui-markdown-editor.js.map +1 -1
  119. package/dist/components/eui-markdown-format.js +1 -1
  120. package/dist/components/eui-markdown-format.js.map +1 -1
  121. package/dist/components/eui-modal.js +1 -1
  122. package/dist/components/eui-modal.js.map +1 -1
  123. package/dist/components/eui-notification-event-messages.js +4 -2
  124. package/dist/components/eui-notification-event-messages.js.map +1 -1
  125. package/dist/components/eui-notification-event-meta.js +2 -2
  126. package/dist/components/eui-notification-event-meta.js.map +1 -1
  127. package/dist/components/eui-notification-event.js +1 -1
  128. package/dist/components/eui-notification-event.js.map +1 -1
  129. package/dist/components/eui-overlay-mask.js +1 -1
  130. package/dist/components/eui-overlay-mask.js.map +1 -1
  131. package/dist/components/eui-page-header-content.js +4 -4
  132. package/dist/components/eui-page-header-content.js.map +1 -1
  133. package/dist/components/eui-page-template.js +3 -3
  134. package/dist/components/eui-page-template.js.map +1 -1
  135. package/dist/components/eui-popover.js +22 -22
  136. package/dist/components/eui-popover.js.map +1 -1
  137. package/dist/components/eui-portal.js +1 -1
  138. package/dist/components/eui-portal.js.map +1 -1
  139. package/dist/components/eui-radio.js +1 -1
  140. package/dist/components/eui-radio.js.map +1 -1
  141. package/dist/components/eui-range-ticks.js +1 -1
  142. package/dist/components/eui-range-ticks.js.map +1 -1
  143. package/dist/components/eui-range-track.js +1 -1
  144. package/dist/components/eui-range-track.js.map +1 -1
  145. package/dist/components/eui-range.js +15 -15
  146. package/dist/components/eui-range.js.map +1 -1
  147. package/dist/components/eui-select.js +1 -1
  148. package/dist/components/eui-select.js.map +1 -1
  149. package/dist/components/eui-show-for.js +1 -1
  150. package/dist/components/eui-show-for.js.map +1 -1
  151. package/dist/components/eui-side-nav-item.js +1 -1
  152. package/dist/components/eui-side-nav-item.js.map +1 -1
  153. package/dist/components/eui-side-nav.js +1 -1
  154. package/dist/components/eui-side-nav.js.map +1 -1
  155. package/dist/components/eui-step-horizontal.js +1 -1
  156. package/dist/components/eui-step-horizontal.js.map +1 -1
  157. package/dist/components/eui-step.js.map +1 -1
  158. package/dist/components/eui-steps.js.map +1 -1
  159. package/dist/components/eui-super-date-picker/date-popover/absolute-tab.js +3 -3
  160. package/dist/components/eui-super-date-picker/date-popover/absolute-tab.js.map +1 -1
  161. package/dist/components/eui-super-date-picker/date-popover/datetime-picker.js +8 -8
  162. package/dist/components/eui-super-date-picker/date-popover/datetime-picker.js.map +1 -1
  163. package/dist/components/eui-super-date-picker/date-popover/eui-date-popover-button.js +2 -2
  164. package/dist/components/eui-super-date-picker/date-popover/eui-date-popover-button.js.map +1 -1
  165. package/dist/components/eui-super-date-picker/date-popover/eui-date-popover-content.js +2 -2
  166. package/dist/components/eui-super-date-picker/date-popover/eui-date-popover-content.js.map +1 -1
  167. package/dist/components/eui-super-date-picker/date-popover/relative-tab.js +4 -4
  168. package/dist/components/eui-super-date-picker/date-popover/relative-tab.js.map +1 -1
  169. package/dist/components/eui-super-date-picker/eui-quick-select-popover/eui-quick-select.js +4 -4
  170. package/dist/components/eui-super-date-picker/eui-quick-select-popover/eui-quick-select.js.map +1 -1
  171. package/dist/components/eui-super-date-picker/eui-quick-select-popover.js +2 -2
  172. package/dist/components/eui-super-date-picker/eui-quick-select-popover.js.map +1 -1
  173. package/dist/components/eui-super-date-picker/utils/date-utils.js +1 -1
  174. package/dist/components/eui-super-date-picker/utils/date-utils.js.map +1 -1
  175. package/dist/components/eui-super-date-picker/utils/index.js +1 -1
  176. package/dist/components/eui-super-date-picker/utils/index.js.map +1 -1
  177. package/dist/components/eui-super-date-picker/utils/pretty-duration.js +1 -1
  178. package/dist/components/eui-super-date-picker/utils/pretty-duration.js.map +1 -1
  179. package/dist/components/eui-super-date-picker/utils/quick-select.js +1 -1
  180. package/dist/components/eui-super-date-picker/utils/quick-select.js.map +1 -1
  181. package/dist/components/eui-super-date-picker/utils/time-options.js +1 -1
  182. package/dist/components/eui-super-date-picker/utils/time-options.js.map +1 -1
  183. package/dist/components/eui-super-date-picker.js +13 -13
  184. package/dist/components/eui-super-date-picker.js.map +1 -1
  185. package/dist/components/eui-tabbed-content.js +4 -4
  186. package/dist/components/eui-tabbed-content.js.map +1 -1
  187. package/dist/components/eui-text-area.js +1 -1
  188. package/dist/components/eui-text-area.js.map +1 -1
  189. package/dist/components/eui-tool-tip.js +9 -9
  190. package/dist/components/eui-tool-tip.js.map +1 -1
  191. package/dist/helpers/get-eui-config.js +1 -1
  192. package/dist/helpers/get-eui-config.js.map +1 -1
  193. package/dist/helpers/use-state.js +1 -1
  194. package/dist/helpers/use-state.js.map +1 -1
  195. package/dist/services/eui-config.js +1 -1
  196. package/dist/services/eui-config.js.map +1 -1
  197. package/dist/services/eui-toaster.js +1 -1
  198. package/dist/services/eui-toaster.js.map +1 -1
  199. package/package.json +9 -123
  200. package/dist/_app_/utils/accesibility/accessible-click-keys.js +0 -1
  201. package/dist/_app_/utils/accesibility/cascading-menu-keys.js +0 -1
  202. package/dist/_app_/utils/accesibility/combo-box-keys.js +0 -1
  203. package/dist/_app_/utils/accesibility/index.js +0 -1
  204. package/dist/_app_/utils/breakpoint.js +0 -1
  205. package/dist/_app_/utils/browser/browser.js +0 -1
  206. package/dist/_app_/utils/browser/index.js +0 -1
  207. package/dist/_app_/utils/code/utils.js +0 -1
  208. package/dist/_app_/utils/color/color_palette.js +0 -1
  209. package/dist/_app_/utils/color/eui_palettes.js +0 -1
  210. package/dist/_app_/utils/color/index.js +0 -1
  211. package/dist/_app_/utils/copy-to-clipboard.js +0 -1
  212. package/dist/_app_/utils/css-mappings/eui-accordion.js +0 -1
  213. package/dist/_app_/utils/css-mappings/eui-avatar.js +0 -1
  214. package/dist/_app_/utils/css-mappings/eui-badge-group.js +0 -1
  215. package/dist/_app_/utils/css-mappings/eui-badge.js +0 -1
  216. package/dist/_app_/utils/css-mappings/eui-beta-badge.js +0 -1
  217. package/dist/_app_/utils/css-mappings/eui-bottom-bar.js +0 -1
  218. package/dist/_app_/utils/css-mappings/eui-button-empty.js +0 -1
  219. package/dist/_app_/utils/css-mappings/eui-button-group-button.js +0 -1
  220. package/dist/_app_/utils/css-mappings/eui-button-group.js +0 -1
  221. package/dist/_app_/utils/css-mappings/eui-button-icon.js +0 -1
  222. package/dist/_app_/utils/css-mappings/eui-button.js +0 -1
  223. package/dist/_app_/utils/css-mappings/eui-call-out.js +0 -1
  224. package/dist/_app_/utils/css-mappings/eui-card-select.js +0 -1
  225. package/dist/_app_/utils/css-mappings/eui-card.js +0 -1
  226. package/dist/_app_/utils/css-mappings/eui-code-block.js +0 -1
  227. package/dist/_app_/utils/css-mappings/eui-collapsible-nav-group.js +0 -1
  228. package/dist/_app_/utils/css-mappings/eui-comment-event.js +0 -1
  229. package/dist/_app_/utils/css-mappings/eui-comment-timeline-icon.js +0 -1
  230. package/dist/_app_/utils/css-mappings/eui-context-menu-item.js +0 -1
  231. package/dist/_app_/utils/css-mappings/eui-described-form-group.js +0 -1
  232. package/dist/_app_/utils/css-mappings/eui-description-list.js +0 -1
  233. package/dist/_app_/utils/css-mappings/eui-empty-prompt.js +0 -1
  234. package/dist/_app_/utils/css-mappings/eui-file-picker.js +0 -1
  235. package/dist/_app_/utils/css-mappings/eui-flex-grid.js +0 -1
  236. package/dist/_app_/utils/css-mappings/eui-flex-group.js +0 -1
  237. package/dist/_app_/utils/css-mappings/eui-flex-item.js +0 -1
  238. package/dist/_app_/utils/css-mappings/eui-flyout.js +0 -1
  239. package/dist/_app_/utils/css-mappings/eui-form-control-layout-clear-button.js +0 -1
  240. package/dist/_app_/utils/css-mappings/eui-form-row.js +0 -1
  241. package/dist/_app_/utils/css-mappings/eui-global-toast-list.js +0 -1
  242. package/dist/_app_/utils/css-mappings/eui-header-links.js +0 -1
  243. package/dist/_app_/utils/css-mappings/eui-header-section-item.js +0 -1
  244. package/dist/_app_/utils/css-mappings/eui-header-section.js +0 -1
  245. package/dist/_app_/utils/css-mappings/eui-header.js +0 -1
  246. package/dist/_app_/utils/css-mappings/eui-health.js +0 -1
  247. package/dist/_app_/utils/css-mappings/eui-horizontal-rule.js +0 -1
  248. package/dist/_app_/utils/css-mappings/eui-icon.js +0 -1
  249. package/dist/_app_/utils/css-mappings/eui-image.js +0 -1
  250. package/dist/_app_/utils/css-mappings/eui-link.js +0 -1
  251. package/dist/_app_/utils/css-mappings/eui-list-group-item.js +0 -1
  252. package/dist/_app_/utils/css-mappings/eui-list-group.js +0 -1
  253. package/dist/_app_/utils/css-mappings/eui-loading-spinner.js +0 -1
  254. package/dist/_app_/utils/css-mappings/eui-modal.js +0 -1
  255. package/dist/_app_/utils/css-mappings/eui-notification-badge.js +0 -1
  256. package/dist/_app_/utils/css-mappings/eui-page-body.js +0 -1
  257. package/dist/_app_/utils/css-mappings/eui-page-content-body.js +0 -1
  258. package/dist/_app_/utils/css-mappings/eui-page-content.js +0 -1
  259. package/dist/_app_/utils/css-mappings/eui-page-header.js +0 -1
  260. package/dist/_app_/utils/css-mappings/eui-page-side-bar.js +0 -1
  261. package/dist/_app_/utils/css-mappings/eui-page.js +0 -1
  262. package/dist/_app_/utils/css-mappings/eui-panel.js +0 -1
  263. package/dist/_app_/utils/css-mappings/eui-popover-footer.js +0 -1
  264. package/dist/_app_/utils/css-mappings/eui-popover-title.js +0 -1
  265. package/dist/_app_/utils/css-mappings/eui-popover.js +0 -1
  266. package/dist/_app_/utils/css-mappings/eui-progress-data.js +0 -1
  267. package/dist/_app_/utils/css-mappings/eui-progress.js +0 -1
  268. package/dist/_app_/utils/css-mappings/eui-range-highlight.js +0 -1
  269. package/dist/_app_/utils/css-mappings/eui-range-input.js +0 -1
  270. package/dist/_app_/utils/css-mappings/eui-range-levels.js +0 -1
  271. package/dist/_app_/utils/css-mappings/eui-selectable-list-item.js +0 -1
  272. package/dist/_app_/utils/css-mappings/eui-spacer.js +0 -1
  273. package/dist/_app_/utils/css-mappings/eui-stat.js +0 -1
  274. package/dist/_app_/utils/css-mappings/eui-step-number.js +0 -1
  275. package/dist/_app_/utils/css-mappings/eui-tabs.js +0 -1
  276. package/dist/_app_/utils/css-mappings/eui-text-align.js +0 -1
  277. package/dist/_app_/utils/css-mappings/eui-text-area.js +0 -1
  278. package/dist/_app_/utils/css-mappings/eui-text-color.js +0 -1
  279. package/dist/_app_/utils/css-mappings/eui-text.js +0 -1
  280. package/dist/_app_/utils/css-mappings/eui-title.js +0 -1
  281. package/dist/_app_/utils/css-mappings/eui-toast.js +0 -1
  282. package/dist/_app_/utils/css-mappings/eui-tool-tip.js +0 -1
  283. package/dist/_app_/utils/css-mappings/index.js +0 -1
  284. package/dist/_app_/utils/detect-element-resize.js +0 -1
  285. package/dist/_app_/utils/index.js +0 -1
  286. package/dist/_app_/utils/keys.js +0 -1
  287. package/dist/_app_/utils/markdown/markdown-actions.js +0 -1
  288. package/dist/_app_/utils/markdown/markdown-modes.js +0 -1
  289. package/dist/_app_/utils/markdown/markdown-types.js +0 -1
  290. package/dist/_app_/utils/markdown/plugins/markdown-add-components/index.js +0 -1
  291. package/dist/_app_/utils/markdown/plugins/markdown-add-components/processor.js +0 -1
  292. package/dist/_app_/utils/markdown/plugins/markdown-checkbox/index.js +0 -1
  293. package/dist/_app_/utils/markdown/plugins/markdown-checkbox/parser.js +0 -1
  294. package/dist/_app_/utils/markdown/plugins/markdown-default-plugins/index.js +0 -1
  295. package/dist/_app_/utils/markdown/plugins/markdown-default-plugins/parsing-plugins.js +0 -1
  296. package/dist/_app_/utils/markdown/plugins/markdown-default-plugins/plugins.js +0 -1
  297. package/dist/_app_/utils/markdown/plugins/markdown-default-plugins/processing-plugins.js +0 -1
  298. package/dist/_app_/utils/markdown/plugins/markdown-default-plugins/ui-plugins.js +0 -1
  299. package/dist/_app_/utils/markdown/plugins/markdown-tooltip/index.js +0 -1
  300. package/dist/_app_/utils/markdown/plugins/markdown-tooltip/parser.js +0 -1
  301. package/dist/_app_/utils/markdown/plugins/markdown-tooltip/plugin.js +0 -1
  302. package/dist/_app_/utils/markdown/plugins/to-dom.js +0 -1
  303. package/dist/_app_/utils/markdown/remark/remark-prismjs.js +0 -1
  304. package/dist/_app_/utils/maybe-unwrap-proxy.js +0 -1
  305. package/dist/_app_/utils/number/index.js +0 -1
  306. package/dist/_app_/utils/number/number.js +0 -1
  307. package/dist/_app_/utils/popover/index.js +0 -1
  308. package/dist/_app_/utils/popover/types.js +0 -1
  309. package/dist/_app_/utils/predicate/common_predicates.js +0 -1
  310. package/dist/_app_/utils/predicate/index.js +0 -1
  311. package/dist/_app_/utils/predicate/lodash_predicates.js +0 -1
  312. package/dist/_app_/utils/range/index.js +0 -1
  313. package/dist/_app_/utils/timer.js +0 -1
  314. package/dist/_app_/utils/transition.js +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"datetime-picker.js","sources":["../../../../src/components/eui-super-date-picker/date-popover/datetime-picker.gts"],"sourcesContent":["import Component from '@glimmer/component';\nimport { tracked } from '@glimmer/tracking';\nimport { helper } from '@ember/component/helper';\nimport { concat, fn } from '@ember/helper';\nimport { on } from '@ember/modifier';\nimport { action } from '@ember/object';\nimport type Owner from '@ember/owner';\n\nimport pick from 'ember-composable-helpers/helpers/pick';\nimport { and, eq, not } from 'ember-truth-helpers';\nimport moment from 'moment';\n\nimport EuiFlexItem from '../../eui-flex-item.gts';\nimport EuiFormControlLayout from '../../eui-form-control-layout.gts';\nimport EuiIcon from '../../eui-icon.gts';\nimport EuiSelect from '../../eui-select.gts';\n\nconst isSameDayHelper = helper(function ([year, month, day, selectedDate]: [\n number,\n number,\n number,\n moment.Moment | undefined\n]) {\n if (!selectedDate) {\n return false;\n }\n\n return (\n selectedDate.year() === year &&\n selectedDate.month() === month &&\n selectedDate.date() === day\n );\n});\n\ninterface DatetimePickerArgs {\n selected?: moment.Moment | null;\n onChange: (value: string | Date | moment.Moment, e: Event) => void;\n iconClasses?: string;\n dateFormat?: string;\n}\n\ninterface Day {\n day: number;\n month?: number;\n year?: number;\n isOutside?: boolean;\n}\n\ninterface DatetimePickerSignature {\n Args: DatetimePickerArgs;\n}\n\nexport default class DatetimePicker extends Component<DatetimePickerSignature> {\n @tracked month: number = 0;\n @tracked year: number = 0;\n @tracked monthMoment: moment.Moment;\n // Used to style the days outside of the current month\n @tracked offset: number = 0;\n @tracked selectedDate?: moment.Moment;\n @tracked selectedTime?: string;\n @tracked today: moment.Moment;\n\n momentConfig: {\n year: number;\n month: number;\n day: number;\n hour: number;\n minute: number;\n second: number;\n millisecond: number;\n };\n\n constructor(owner: Owner, args: DatetimePickerArgs) {\n super(owner, args);\n\n if (this.args.selected) {\n this.monthMoment = this.args.selected;\n this.selectedDate = this.args.selected;\n } else {\n this.monthMoment = moment([this.year, this.month]);\n }\n\n this.momentConfig = {\n year: this.monthMoment.year(),\n month: this.monthMoment.month(),\n day: this.monthMoment.date(),\n hour: this.monthMoment.hour(),\n minute: this.monthMoment.minute(),\n second: 0,\n millisecond: 0\n };\n\n this.month = this.momentConfig.month;\n this.year = this.momentConfig.year;\n\n let hour = this.momentConfig.hour;\n let minute = this.momentConfig.minute;\n let hourStr = hour < 10 ? `0${hour}` : hour;\n let minuteStr = minute < 10 ? `0${minute}` : minute;\n\n this.selectedTime = `${hourStr}:${minuteStr}`;\n\n this.offset = this.monthMoment.clone().startOf('month').day();\n\n this.today = moment();\n }\n\n get monthNames() {\n return moment.months().map((month, i) => {\n return {\n text: month,\n value: i\n };\n });\n }\n\n get years() {\n return Array.from(Array(15).keys()).map((_, i) => {\n // Create a list of years +/- 7 from the current year\n let year = this.year - 7 + i;\n\n return {\n text: year,\n value: year\n };\n });\n }\n\n get times() {\n const timesArray = [];\n\n // Create entries every 30 minutes\n for (let i = 0; i < 24; i++) {\n let hour = i < 10 ? `0${i}` : i;\n\n timesArray.push(`${hour}:00`, `${hour}:30`);\n }\n\n return timesArray;\n }\n\n get days() {\n // Used for showing days outside of the current month\n // const prevMonth = moment([this.year, this.month - 1]);\n const prevMonth = this.monthMoment.clone().subtract(1, 'month');\n const nextMonth = this.monthMoment.clone().add(1, 'month');\n const offset = this.offset;\n let daysInMonth = this.monthMoment.daysInMonth();\n let daysInPrevMonth = prevMonth.daysInMonth();\n\n const daysArray = [];\n\n for (let i = 0; i < daysInMonth; i++) {\n daysArray[i] = {\n day: i + 1\n };\n }\n\n // Fill the previous and next month days\n for (let i = 0, d = daysInPrevMonth; i < offset; i++, d--) {\n daysArray.unshift({\n day: d,\n month: prevMonth.month(),\n year: prevMonth.year(),\n isOutside: true\n });\n }\n\n // All months fit within 6 weeks (42 days)\n for (let d = 1, i = daysInMonth + offset; i < 42; d++, i++) {\n daysArray.push({\n day: d,\n month: nextMonth.month(),\n year: nextMonth.year(),\n isOutside: true\n });\n }\n\n // All months fit within 6 weeks (42 days)\n // but depending on the starting day, one week may not be needed\n const daysMatrix = [];\n const weeks = daysInMonth + offset > 35 ? 6 : 5;\n\n for (let i = 0; i < weeks; i++) {\n daysMatrix[i] = daysArray.slice(i * 7, i * 7 + 7);\n }\n\n return daysMatrix;\n }\n\n updateDate() {\n this.year = this.monthMoment.year();\n this.month = this.monthMoment.month();\n this.offset = this.monthMoment.clone().startOf('month').day();\n }\n\n @action\n selectTime(time: string, e: Event) {\n this.selectedTime = time;\n\n const [hour, minute] = time.split(':');\n\n this.momentConfig.hour = parseInt(hour!);\n this.momentConfig.minute = parseInt(minute!);\n this.momentConfig.second = 0;\n this.momentConfig.millisecond = 0;\n this.selectedDate = moment(this.momentConfig);\n this.args.onChange(this.selectedDate, e);\n }\n\n @action\n selectDate(day: Day, e: Event) {\n // Only outside days will have year/month\n this.momentConfig.year = day.year || this.year;\n this.momentConfig.month = day.month || this.month;\n this.momentConfig.day = day.day;\n this.selectedDate = moment(this.momentConfig);\n this.args.onChange(this.selectedDate, e);\n\n // Update the state to show the selected month properly\n if (day.isOutside && day.month && day.year) {\n this.monthMoment.month(day.month);\n this.monthMoment.year(day.year);\n this.updateDate();\n }\n }\n\n @action\n setYear(year: string) {\n this.year = parseInt(year);\n }\n\n @action\n setMonth(month: string) {\n this.monthMoment.month(parseInt(month));\n this.updateDate();\n }\n\n @action\n increaseMonth() {\n this.monthMoment.add(1, 'month');\n this.updateDate();\n }\n\n @action\n decreaseMonth() {\n this.monthMoment.subtract(1, 'month');\n this.updateDate();\n }\n\n <template>\n <div class=\"euiDatePicker euiDatePicker--inline\">\n <EuiFormControlLayout>\n <div class=\"react-datepicker\">\n <button\n type=\"button\"\n class=\"react-datepicker__navigation react-datepicker__navigation--previous\"\n aria-label=\"Previous month\"\n {{on \"click\" this.decreaseMonth}}\n >\n <EuiIcon @iconClasses=\"euiButtonIcon__icon\" @type=\"arrowLeft\" />\n </button>\n <button\n type=\"button\"\n class=\"react-datepicker__navigation react-datepicker__navigation--next\"\n aria-label=\"Next month\"\n {{on \"click\" this.increaseMonth}}\n >\n <EuiIcon\n @iconClasses=\"euiButtonIcon__icon {{@iconClasses}}\"\n @type=\"arrowRight\"\n />\n </button>\n <div class=\"react-datepicker__month-container\">\n <div class=\"react-datepicker__header\">\n <div\n class=\"react-datepicker__header__dropdown react-datepicker__header__dropdown--scroll\"\n >\n <div\n class=\"react-datepicker__month-dropdown-container react-datepicker__month-dropdown-container--scroll\"\n >\n {{!template-lint-disable}}\n <div\n class=\"react-datepicker__month-read-view\"\n style=\"padding: 0;\"\n >\n <EuiFlexItem @grow={{1}}>\n <EuiSelect\n @compressed={{true}}\n @value={{this.month}}\n @options={{this.monthNames}}\n {{on \"change\" (pick \"target.value\" this.setMonth)}}\n />\n </EuiFlexItem>\n </div>\n </div>\n <div\n class=\"react-datepicker__year-dropdown-container react-datepicker__year-dropdown-container--scroll\"\n >\n {{!template-lint-disable}}\n <div\n class=\"react-datepicker__year-read-view\"\n style=\"padding: 0;\"\n >\n <EuiFlexItem @grow={{1}}>\n <EuiSelect\n @compressed={{true}}\n @value={{this.year}}\n @options={{this.years}}\n {{on \"change\" (pick \"target.value\" this.setYear)}}\n />\n </EuiFlexItem>\n </div>\n </div>\n </div>\n <div class=\"react-datepicker__day-names\">\n <div class=\"react-datepicker__day-name\">Su</div>\n <div class=\"react-datepicker__day-name\">Mo</div>\n <div class=\"react-datepicker__day-name\">Tu</div>\n <div class=\"react-datepicker__day-name\">We</div>\n <div class=\"react-datepicker__day-name\">Th</div>\n <div class=\"react-datepicker__day-name\">Fr</div>\n <div class=\"react-datepicker__day-name\">Sa</div>\n </div>\n </div>\n\n <div\n class=\"react-datepicker__month react-datepicker__month--accessible\"\n >\n {{#each this.days as |days|}}\n <div class=\"react-datepicker__week\">\n {{#each days as |day|}}\n <div\n role=\"button\"\n class={{concat\n \"react-datepicker__day\"\n (if\n (and\n (not day.isOutside)\n (isSameDayHelper\n this.year this.month day.day this.selectedDate\n )\n )\n \" react-datepicker__day--selected\"\n )\n (if\n (isSameDayHelper\n this.year this.month day.day this.today\n )\n \" react-datepicker__day--today\"\n )\n (if\n day.isOutside \" react-datepicker__day--outside-month\"\n )\n }}\n {{on \"click\" (fn this.selectDate day)}}\n >\n <div class=\"react-datepicker__day-text\">{{day.day}}</div>\n </div>\n {{/each}}\n </div>\n {{/each}}\n </div>\n </div>\n\n <div class=\"react-datepicker__time-container\">\n <div class=\"react-datepicker__time\">\n <div\n class=\"react-datepicker__time-box react-datepicker__time-box--accessible\"\n >\n <ul class=\"react-datepicker__time-list\">\n {{#each this.times as |time|}}\n <li\n role=\"option\"\n class={{concat\n \"react-datepicker__time-list-item\"\n (if\n (eq time this.selectedTime)\n \" react-datepicker__time-list-item--selected\"\n )\n }}\n {{on \"click\" (fn this.selectTime time)}}\n >\n {{time}}\n </li>\n {{/each}}\n </ul>\n </div>\n </div>\n </div>\n </div>\n </EuiFormControlLayout>\n </div>\n </template>\n}\n"],"names":["isSameDayHelper","helper","year","month","day","selectedDate","date","DatetimePicker","Component","g","prototype","tracked","i","void 0","momentConfig","constructor","owner","args","selected","monthMoment","moment","hour","minute","second","millisecond","hourStr","minuteStr","selectedTime","offset","clone","startOf","today","monthNames","months","map","text","value","years","Array","from","keys","_","times","timesArray","push","days","prevMonth","subtract","nextMonth","add","daysInMonth","daysInPrevMonth","daysArray","d","unshift","isOutside","daysMatrix","weeks","slice","updateDate","selectTime","time","e","split","parseInt","onChange","n","action","selectDate","setYear","setMonth","increaseMonth","decreaseMonth","setComponentTemplate","precompileTemplate","strictMode","scope","EuiFormControlLayout","on","EuiIcon","EuiFlexItem","EuiSelect","pick","concat","and","not","fn","eq"],"mappings":"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"}
1
+ {"version":3,"file":"datetime-picker.js","sources":["../../../../src/components/eui-super-date-picker/date-popover/datetime-picker.gts"],"sourcesContent":["import Component from '@glimmer/component';\nimport { tracked } from '@glimmer/tracking';\nimport { helper } from '@ember/component/helper';\nimport { concat, fn } from '@ember/helper';\nimport { on } from '@ember/modifier';\nimport { action } from '@ember/object';\nimport type Owner from '@ember/owner';\n\nimport pick from '@nullvoxpopuli/ember-composable-helpers/helpers/pick';\nimport { and, eq, not } from 'ember-truth-helpers';\nimport moment from 'moment';\n\nimport EuiFlexItem from '../../eui-flex-item.gts';\nimport EuiFormControlLayout from '../../eui-form-control-layout.gts';\nimport EuiIcon from '../../eui-icon.gts';\nimport EuiSelect from '../../eui-select.gts';\n\nconst isSameDayHelper = helper(function ([year, month, day, selectedDate]: [\n number,\n number,\n number,\n moment.Moment | undefined\n]) {\n if (!selectedDate) {\n return false;\n }\n\n return (\n selectedDate.year() === year &&\n selectedDate.month() === month &&\n selectedDate.date() === day\n );\n});\n\ninterface DatetimePickerArgs {\n selected?: moment.Moment | null;\n onChange: (value: string | Date | moment.Moment, e: Event) => void;\n iconClasses?: string;\n dateFormat?: string;\n}\n\ninterface Day {\n day: number;\n month?: number;\n year?: number;\n isOutside?: boolean;\n}\n\ninterface DatetimePickerSignature {\n Args: DatetimePickerArgs;\n}\n\nexport default class DatetimePicker extends Component<DatetimePickerSignature> {\n @tracked month: number = 0;\n @tracked year: number = 0;\n @tracked monthMoment: moment.Moment;\n // Used to style the days outside of the current month\n @tracked offset: number = 0;\n @tracked selectedDate?: moment.Moment;\n @tracked selectedTime?: string;\n @tracked today: moment.Moment;\n\n momentConfig: {\n year: number;\n month: number;\n day: number;\n hour: number;\n minute: number;\n second: number;\n millisecond: number;\n };\n\n constructor(owner: Owner, args: DatetimePickerArgs) {\n super(owner, args);\n\n if (this.args.selected) {\n this.monthMoment = this.args.selected;\n this.selectedDate = this.args.selected;\n } else {\n this.monthMoment = moment([this.year, this.month]);\n }\n\n this.momentConfig = {\n year: this.monthMoment.year(),\n month: this.monthMoment.month(),\n day: this.monthMoment.date(),\n hour: this.monthMoment.hour(),\n minute: this.monthMoment.minute(),\n second: 0,\n millisecond: 0\n };\n\n this.month = this.momentConfig.month;\n this.year = this.momentConfig.year;\n\n let hour = this.momentConfig.hour;\n let minute = this.momentConfig.minute;\n let hourStr = hour < 10 ? `0${hour}` : hour;\n let minuteStr = minute < 10 ? `0${minute}` : minute;\n\n this.selectedTime = `${hourStr}:${minuteStr}`;\n\n this.offset = this.monthMoment.clone().startOf('month').day();\n\n this.today = moment();\n }\n\n get monthNames() {\n return moment.months().map((month, i) => {\n return {\n text: month,\n value: i\n };\n });\n }\n\n get years() {\n return Array.from(Array(15).keys()).map((_, i) => {\n // Create a list of years +/- 7 from the current year\n let year = this.year - 7 + i;\n\n return {\n text: year,\n value: year\n };\n });\n }\n\n get times() {\n const timesArray = [];\n\n // Create entries every 30 minutes\n for (let i = 0; i < 24; i++) {\n let hour = i < 10 ? `0${i}` : i;\n\n timesArray.push(`${hour}:00`, `${hour}:30`);\n }\n\n return timesArray;\n }\n\n get days() {\n // Used for showing days outside of the current month\n // const prevMonth = moment([this.year, this.month - 1]);\n const prevMonth = this.monthMoment.clone().subtract(1, 'month');\n const nextMonth = this.monthMoment.clone().add(1, 'month');\n const offset = this.offset;\n let daysInMonth = this.monthMoment.daysInMonth();\n let daysInPrevMonth = prevMonth.daysInMonth();\n\n const daysArray = [];\n\n for (let i = 0; i < daysInMonth; i++) {\n daysArray[i] = {\n day: i + 1\n };\n }\n\n // Fill the previous and next month days\n for (let i = 0, d = daysInPrevMonth; i < offset; i++, d--) {\n daysArray.unshift({\n day: d,\n month: prevMonth.month(),\n year: prevMonth.year(),\n isOutside: true\n });\n }\n\n // All months fit within 6 weeks (42 days)\n for (let d = 1, i = daysInMonth + offset; i < 42; d++, i++) {\n daysArray.push({\n day: d,\n month: nextMonth.month(),\n year: nextMonth.year(),\n isOutside: true\n });\n }\n\n // All months fit within 6 weeks (42 days)\n // but depending on the starting day, one week may not be needed\n const daysMatrix = [];\n const weeks = daysInMonth + offset > 35 ? 6 : 5;\n\n for (let i = 0; i < weeks; i++) {\n daysMatrix[i] = daysArray.slice(i * 7, i * 7 + 7);\n }\n\n return daysMatrix;\n }\n\n updateDate() {\n this.year = this.monthMoment.year();\n this.month = this.monthMoment.month();\n this.offset = this.monthMoment.clone().startOf('month').day();\n }\n\n @action\n selectTime(time: string, e: Event) {\n this.selectedTime = time;\n\n const [hour, minute] = time.split(':');\n\n this.momentConfig.hour = parseInt(hour!);\n this.momentConfig.minute = parseInt(minute!);\n this.momentConfig.second = 0;\n this.momentConfig.millisecond = 0;\n this.selectedDate = moment(this.momentConfig);\n this.args.onChange(this.selectedDate, e);\n }\n\n @action\n selectDate(day: Day, e: Event) {\n // Only outside days will have year/month\n this.momentConfig.year = day.year || this.year;\n this.momentConfig.month = day.month || this.month;\n this.momentConfig.day = day.day;\n this.selectedDate = moment(this.momentConfig);\n this.args.onChange(this.selectedDate, e);\n\n // Update the state to show the selected month properly\n if (day.isOutside && day.month && day.year) {\n this.monthMoment.month(day.month);\n this.monthMoment.year(day.year);\n this.updateDate();\n }\n }\n\n @action\n setYear(year: string) {\n this.year = parseInt(year);\n }\n\n @action\n setMonth(month: string) {\n this.monthMoment.month(parseInt(month));\n this.updateDate();\n }\n\n @action\n increaseMonth() {\n this.monthMoment.add(1, 'month');\n this.updateDate();\n }\n\n @action\n decreaseMonth() {\n this.monthMoment.subtract(1, 'month');\n this.updateDate();\n }\n\n <template>\n <div class=\"euiDatePicker euiDatePicker--inline\">\n <EuiFormControlLayout>\n <div class=\"react-datepicker\">\n <button\n type=\"button\"\n class=\"react-datepicker__navigation react-datepicker__navigation--previous\"\n aria-label=\"Previous month\"\n {{on \"click\" this.decreaseMonth}}\n >\n <EuiIcon @iconClasses=\"euiButtonIcon__icon\" @type=\"arrowLeft\" />\n </button>\n <button\n type=\"button\"\n class=\"react-datepicker__navigation react-datepicker__navigation--next\"\n aria-label=\"Next month\"\n {{on \"click\" this.increaseMonth}}\n >\n <EuiIcon\n @iconClasses=\"euiButtonIcon__icon {{@iconClasses}}\"\n @type=\"arrowRight\"\n />\n </button>\n <div class=\"react-datepicker__month-container\">\n <div class=\"react-datepicker__header\">\n <div\n class=\"react-datepicker__header__dropdown react-datepicker__header__dropdown--scroll\"\n >\n <div\n class=\"react-datepicker__month-dropdown-container react-datepicker__month-dropdown-container--scroll\"\n >\n {{!template-lint-disable}}\n <div\n class=\"react-datepicker__month-read-view\"\n style=\"padding: 0;\"\n >\n <EuiFlexItem @grow={{1}}>\n <EuiSelect\n @compressed={{true}}\n @value={{this.month}}\n @options={{this.monthNames}}\n {{on \"change\" (pick \"target.value\" this.setMonth)}}\n />\n </EuiFlexItem>\n </div>\n </div>\n <div\n class=\"react-datepicker__year-dropdown-container react-datepicker__year-dropdown-container--scroll\"\n >\n {{!template-lint-disable}}\n <div\n class=\"react-datepicker__year-read-view\"\n style=\"padding: 0;\"\n >\n <EuiFlexItem @grow={{1}}>\n <EuiSelect\n @compressed={{true}}\n @value={{this.year}}\n @options={{this.years}}\n {{on \"change\" (pick \"target.value\" this.setYear)}}\n />\n </EuiFlexItem>\n </div>\n </div>\n </div>\n <div class=\"react-datepicker__day-names\">\n <div class=\"react-datepicker__day-name\">Su</div>\n <div class=\"react-datepicker__day-name\">Mo</div>\n <div class=\"react-datepicker__day-name\">Tu</div>\n <div class=\"react-datepicker__day-name\">We</div>\n <div class=\"react-datepicker__day-name\">Th</div>\n <div class=\"react-datepicker__day-name\">Fr</div>\n <div class=\"react-datepicker__day-name\">Sa</div>\n </div>\n </div>\n\n <div\n class=\"react-datepicker__month react-datepicker__month--accessible\"\n >\n {{#each this.days as |days|}}\n <div class=\"react-datepicker__week\">\n {{#each days as |day|}}\n <div\n role=\"button\"\n class={{concat\n \"react-datepicker__day\"\n (if\n (and\n (not day.isOutside)\n (isSameDayHelper\n this.year this.month day.day this.selectedDate\n )\n )\n \" react-datepicker__day--selected\"\n )\n (if\n (isSameDayHelper\n this.year this.month day.day this.today\n )\n \" react-datepicker__day--today\"\n )\n (if\n day.isOutside \" react-datepicker__day--outside-month\"\n )\n }}\n {{on \"click\" (fn this.selectDate day)}}\n >\n <div class=\"react-datepicker__day-text\">{{day.day}}</div>\n </div>\n {{/each}}\n </div>\n {{/each}}\n </div>\n </div>\n\n <div class=\"react-datepicker__time-container\">\n <div class=\"react-datepicker__time\">\n <div\n class=\"react-datepicker__time-box react-datepicker__time-box--accessible\"\n >\n <ul class=\"react-datepicker__time-list\">\n {{#each this.times as |time|}}\n <li\n role=\"option\"\n class={{concat\n \"react-datepicker__time-list-item\"\n (if\n (eq time this.selectedTime)\n \" react-datepicker__time-list-item--selected\"\n )\n }}\n {{on \"click\" (fn this.selectTime time)}}\n >\n {{time}}\n </li>\n {{/each}}\n </ul>\n </div>\n </div>\n </div>\n </div>\n </EuiFormControlLayout>\n </div>\n </template>\n}\n"],"names":["isSameDayHelper","helper","year","month","day","selectedDate","date","DatetimePicker","Component","g","prototype","tracked","i","void 0","momentConfig","constructor","owner","args","selected","monthMoment","moment","hour","minute","second","millisecond","hourStr","minuteStr","selectedTime","offset","clone","startOf","today","monthNames","months","map","text","value","years","Array","from","keys","_","times","timesArray","push","days","prevMonth","subtract","nextMonth","add","daysInMonth","daysInPrevMonth","daysArray","d","unshift","isOutside","daysMatrix","weeks","slice","updateDate","selectTime","time","e","split","parseInt","onChange","n","action","selectDate","setYear","setMonth","increaseMonth","decreaseMonth","setComponentTemplate","precompileTemplate","strictMode","scope","EuiFormControlLayout","on","EuiIcon","EuiFlexItem","EuiSelect","pick","concat","and","not","fn","eq"],"mappings":"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"}
@@ -18,13 +18,13 @@ class EuiDatePopoverButton extends Component {
18
18
  static {
19
19
  g(this.prototype, "euiI18n", [inject]);
20
20
  }
21
- #euiI18n = (i(this, "euiI18n"), undefined);
21
+ #euiI18n = (i(this, "euiI18n"), void 0);
22
22
  static {
23
23
  g(this.prototype, "isOpen", [tracked], function () {
24
24
  return false;
25
25
  });
26
26
  }
27
- #isOpen = (i(this, "isOpen"), undefined);
27
+ #isOpen = (i(this, "isOpen"), void 0);
28
28
  get dateFormat() {
29
29
  //date with seconds and such
30
30
  return this.args.dateFormat ?? 'YYYY-MM-DDTHH:mm:ss.SSSZ';
@@ -1 +1 @@
1
- {"version":3,"file":"eui-date-popover-button.js","sources":["../../../../src/components/eui-super-date-picker/date-popover/eui-date-popover-button.gts"],"sourcesContent":["import Component from '@glimmer/component';\nimport { tracked } from '@glimmer/tracking';\nimport { concat, hash } from '@ember/helper';\nimport { on } from '@ember/modifier';\nimport { inject as service } from '@ember/service';\n\nimport set from 'ember-set-helper/helpers/set';\nimport { not } from 'ember-truth-helpers';\n\nimport classNames from '../../../helpers/class-names.ts';\nimport EuiPopover from '../../eui-popover.gts';\nimport { useFormatTimeString } from '../utils/index.ts';\nimport { useI18nTimeOptions } from '../utils/time-options.ts';\nimport EuiDatePopoverContent from './eui-date-popover-content.gts';\n\nimport type EuiI18n from '../../../services/eui-i18n';\nimport type { EuiDatePopoverContentSignature } from './eui-date-popover-content';\n\ninterface EuiDatePopoverButtonArgs {\n className?: string;\n dateFormat?: string;\n isDisabled?: boolean;\n isInvalid?: boolean;\n isOpen?: boolean;\n needsUpdating?: boolean;\n locale?: EuiDatePopoverContentSignature['Args']['locale'];\n position?: 'start' | 'end';\n roundUp?: boolean;\n timeFormat?: string;\n value: string;\n utcOffset?: number;\n compressed?: boolean;\n timeOptions?: EuiDatePopoverContentSignature['Args']['timeOptions'];\n onChange: EuiDatePopoverContentSignature['Args']['onChange'];\n}\n\nexport interface EuiDatePopoverButtonSignature {\n Element: HTMLButtonElement;\n Args: EuiDatePopoverButtonArgs;\n Blocks: {\n button: [\n {\n classes: string;\n formattedValue: string;\n open: () => void;\n close: () => void;\n }\n ];\n };\n}\n\nexport default class EuiDatePopoverButton extends Component<EuiDatePopoverButtonSignature> {\n @service declare euiI18n: EuiI18n;\n @tracked isOpen = false;\n\n get dateFormat() {\n //date with seconds and such\n return this.args.dateFormat ?? 'YYYY-MM-DDTHH:mm:ss.SSSZ';\n }\n\n get formattedValue() {\n const roundUp = this.args.roundUp ?? false;\n const locale = this.args.locale ?? 'en';\n\n return useFormatTimeString(\n this.args.value,\n this.dateFormat,\n roundUp,\n locale,\n this.euiI18n\n );\n }\n\n get timeOptions() {\n return this.args.timeOptions || useI18nTimeOptions(this.euiI18n);\n }\n\n get anchorPosition() {\n return this.args.position === 'start' ? 'downLeft' : 'downRight';\n }\n\n get position() {\n return this.args.position ?? 'start';\n }\n\n <template>\n {{#let\n (classNames\n \"euiDatePopoverButton\"\n (concat \"euiDatePopoverButton--\" @position)\n (if @compressed \"euiDatePopoverButton--compressed\")\n (if this.isOpen \"euiDatePopoverButton-isSelected\")\n (if @isInvalid \"euiDatePopoverButton-isInvalid\")\n (if @needsUpdating \"euiDatePopoverButton-needsUpdating\")\n (if @isDisabled \"euiDatePopoverButton-disabled\")\n )\n as |classes|\n }}\n <EuiPopover\n @isOpen={{this.isOpen}}\n @closePopover={{set this \"isOpen\" false}}\n @anchorPosition={{this.anchorPosition}}\n @panelPaddingSize=\"none\"\n @display=\"block\"\n >\n <:button>\n {{#if (has-block \"button\")}}\n {{yield\n (hash\n classes=classes\n formattedValue=this.formattedValue\n open=(set this \"isOpen\" true)\n close=(set this \"isOpen\" false)\n )\n to=\"button\"\n }}\n {{else}}\n <button\n type=\"button\"\n class={{classes}}\n title={{this.formattedValue}}\n disabled={{@isDisabled}}\n ...attributes\n {{on \"click\" (set this \"isOpen\" (not this.isOpen))}}\n >\n {{this.formattedValue}}\n </button>\n {{/if}}\n </:button>\n\n <:content>\n <EuiDatePopoverContent\n @position={{this.position}}\n @value={{@value}}\n @roundUp={{@roundUp}}\n @dateFormat={{this.dateFormat}}\n @timeFormat={{@timeFormat}}\n @locale={{@locale}}\n @utcOffset={{@utcOffset}}\n @timeOptions={{this.timeOptions}}\n @onChange={{@onChange}}\n />\n </:content>\n </EuiPopover>\n {{/let}}\n </template>\n}\n"],"names":["EuiDatePopoverButton","Component","g","prototype","service","i","void 0","tracked","dateFormat","args","formattedValue","roundUp","locale","useFormatTimeString","value","euiI18n","timeOptions","useI18nTimeOptions","anchorPosition","position","setComponentTemplate","precompileTemplate","strictMode","scope","classNames","concat","EuiPopover","set","hash","on","not","EuiDatePopoverContent"],"mappings":";;;;;;;;;;;;;;;;AAmDe,MAAMA,6BAA6BC,SAAU,CAAA;AAAA,EAAA;IAAAC,CAAA,CAAA,IAAA,CAAAC,SAAA,EAAA,SAAA,EAAA,CACzDC,MAAA,CAAA,CAAA;AAAA;AAAA,EAAA,QAAA,IAAAC,CAAA,CAAA,IAAA,EAAA,SAAA,CAAA,EAAAC,SAAA;AAAA,EAAA;IAAAJ,CAAA,CAAA,IAAA,CAAAC,SAAA,EAAA,QAAA,EAAA,CACAI,OAAA,CAAA,EAAA,YAAA;AAAA,MAAA,OAAiB,KAAM;AAAA,KAAA,CAAA;AAAA;AAAA,EAAA,OAAA,IAAAF,CAAA,CAAA,IAAA,EAAA,QAAA,CAAA,EAAAC,SAAA;EAExB,IAAIE,UAAaA,GAAA;AACf;AACA,IAAA,OAAO,IAAI,CAACC,IAAI,CAACD,UAAU,IAAI,0BAAA;AACjC;EAEA,IAAIE,cAAiBA,GAAA;IACnB,MAAMC,UAAU,IAAI,CAACF,IAAI,CAACE,OAAO,IAAI,KAAA;IACrC,MAAMC,SAAS,IAAI,CAACH,IAAI,CAACG,MAAM,IAAI,IAAA;AAEnC,IAAA,OAAOC,mBACL,CAAA,IAAI,CAACJ,IAAI,CAACK,KAAK,EACf,IAAI,CAACN,UAAU,EACfG,OAAA,EACAC,MACA,EAAA,IAAI,CAACG,OAAO,CAAA;AAEhB;EAEA,IAAIC,WAAcA,GAAA;IAChB,OAAO,IAAI,CAACP,IAAI,CAACO,WAAW,IAAIC,kBAAA,CAAmB,IAAI,CAACF,OAAO,CAAA;AACjE;EAEA,IAAIG,cAAiBA,GAAA;IACnB,OAAO,IAAI,CAACT,IAAI,CAACU,QAAQ,KAAK,UAAU,UAAa,GAAA,WAAA;AACvD;EAEA,IAAIA,QAAWA,GAAA;AACb,IAAA,OAAO,IAAI,CAACV,IAAI,CAACU,QAAQ,IAAI,OAAA;AAC/B;AAEA,EAAA;IAAAC,oBAAA,CAAAC,kBAAA,CA4DA,u5CAAA,EAAA;MAAAC,UAAA,EAAA,IAAA;AAAAC,MAAAA,KAAA,EAAAA,OAAA;QAAAC,UAAA;QAAAC,MAAA;oBAAAC,mBAAA;QAAAC,GAAA;QAAAC,IAAA;QAAAC,EAAA;QAAAC,GAAA;AAAAC,QAAAA;AAAA,OAAA;KAAU,CAAA,EAAV,IAAW,CAAA;AAAD;AACZ;;;;"}
1
+ {"version":3,"file":"eui-date-popover-button.js","sources":["../../../../src/components/eui-super-date-picker/date-popover/eui-date-popover-button.gts"],"sourcesContent":["import Component from '@glimmer/component';\nimport { tracked } from '@glimmer/tracking';\nimport { concat, hash } from '@ember/helper';\nimport { on } from '@ember/modifier';\nimport { inject as service } from '@ember/service';\n\nimport set from 'ember-set-helper/helpers/set';\nimport { not } from 'ember-truth-helpers';\n\nimport classNames from '../../../helpers/class-names.ts';\nimport EuiPopover from '../../eui-popover.gts';\nimport { useFormatTimeString } from '../utils/index.ts';\nimport { useI18nTimeOptions } from '../utils/time-options.ts';\nimport EuiDatePopoverContent from './eui-date-popover-content.gts';\n\nimport type EuiI18n from '../../../services/eui-i18n';\nimport type { EuiDatePopoverContentSignature } from './eui-date-popover-content';\n\ninterface EuiDatePopoverButtonArgs {\n className?: string;\n dateFormat?: string;\n isDisabled?: boolean;\n isInvalid?: boolean;\n isOpen?: boolean;\n needsUpdating?: boolean;\n locale?: EuiDatePopoverContentSignature['Args']['locale'];\n position?: 'start' | 'end';\n roundUp?: boolean;\n timeFormat?: string;\n value: string;\n utcOffset?: number;\n compressed?: boolean;\n timeOptions?: EuiDatePopoverContentSignature['Args']['timeOptions'];\n onChange: EuiDatePopoverContentSignature['Args']['onChange'];\n}\n\nexport interface EuiDatePopoverButtonSignature {\n Element: HTMLButtonElement;\n Args: EuiDatePopoverButtonArgs;\n Blocks: {\n button: [\n {\n classes: string;\n formattedValue: string;\n open: () => void;\n close: () => void;\n }\n ];\n };\n}\n\nexport default class EuiDatePopoverButton extends Component<EuiDatePopoverButtonSignature> {\n @service declare euiI18n: EuiI18n;\n @tracked isOpen = false;\n\n get dateFormat() {\n //date with seconds and such\n return this.args.dateFormat ?? 'YYYY-MM-DDTHH:mm:ss.SSSZ';\n }\n\n get formattedValue() {\n const roundUp = this.args.roundUp ?? false;\n const locale = this.args.locale ?? 'en';\n\n return useFormatTimeString(\n this.args.value,\n this.dateFormat,\n roundUp,\n locale,\n this.euiI18n\n );\n }\n\n get timeOptions() {\n return this.args.timeOptions || useI18nTimeOptions(this.euiI18n);\n }\n\n get anchorPosition() {\n return this.args.position === 'start' ? 'downLeft' : 'downRight';\n }\n\n get position() {\n return this.args.position ?? 'start';\n }\n\n <template>\n {{#let\n (classNames\n \"euiDatePopoverButton\"\n (concat \"euiDatePopoverButton--\" @position)\n (if @compressed \"euiDatePopoverButton--compressed\")\n (if this.isOpen \"euiDatePopoverButton-isSelected\")\n (if @isInvalid \"euiDatePopoverButton-isInvalid\")\n (if @needsUpdating \"euiDatePopoverButton-needsUpdating\")\n (if @isDisabled \"euiDatePopoverButton-disabled\")\n )\n as |classes|\n }}\n <EuiPopover\n @isOpen={{this.isOpen}}\n @closePopover={{set this \"isOpen\" false}}\n @anchorPosition={{this.anchorPosition}}\n @panelPaddingSize=\"none\"\n @display=\"block\"\n >\n <:button>\n {{#if (has-block \"button\")}}\n {{yield\n (hash\n classes=classes\n formattedValue=this.formattedValue\n open=(set this \"isOpen\" true)\n close=(set this \"isOpen\" false)\n )\n to=\"button\"\n }}\n {{else}}\n <button\n type=\"button\"\n class={{classes}}\n title={{this.formattedValue}}\n disabled={{@isDisabled}}\n ...attributes\n {{on \"click\" (set this \"isOpen\" (not this.isOpen))}}\n >\n {{this.formattedValue}}\n </button>\n {{/if}}\n </:button>\n\n <:content>\n <EuiDatePopoverContent\n @position={{this.position}}\n @value={{@value}}\n @roundUp={{@roundUp}}\n @dateFormat={{this.dateFormat}}\n @timeFormat={{@timeFormat}}\n @locale={{@locale}}\n @utcOffset={{@utcOffset}}\n @timeOptions={{this.timeOptions}}\n @onChange={{@onChange}}\n />\n </:content>\n </EuiPopover>\n {{/let}}\n </template>\n}\n"],"names":["EuiDatePopoverButton","Component","g","prototype","service","i","void 0","tracked","dateFormat","args","formattedValue","roundUp","locale","useFormatTimeString","value","euiI18n","timeOptions","useI18nTimeOptions","anchorPosition","position","setComponentTemplate","precompileTemplate","strictMode","scope","classNames","concat","EuiPopover","set","hash","on","not","EuiDatePopoverContent"],"mappings":";;;;;;;;;;;;;;;;AAmDe,MAAMA,6BAA6BC,SAAU,CAAA;AAAA,EAAA;IAAAC,CAAA,CAAA,IAAA,CAAAC,SAAA,EAAA,SAAA,EAAA,CACzDC,MAAA,CAAA,CAAA;AAAA;AAAA,EAAA,QAAA,IAAAC,CAAA,CAAA,IAAA,EAAA,SAAA,CAAA,EAAAC,MAAA;AAAA,EAAA;IAAAJ,CAAA,CAAA,IAAA,CAAAC,SAAA,EAAA,QAAA,EAAA,CACAI,OAAA,CAAA,EAAA,YAAA;AAAA,MAAA,OAAiB,KAAM;AAAA,KAAA,CAAA;AAAA;AAAA,EAAA,OAAA,IAAAF,CAAA,CAAA,IAAA,EAAA,QAAA,CAAA,EAAAC,MAAA;EAExB,IAAIE,UAAaA,GAAA;AACf;AACA,IAAA,OAAO,IAAI,CAACC,IAAI,CAACD,UAAU,IAAI,0BAAA;AACjC;EAEA,IAAIE,cAAiBA,GAAA;IACnB,MAAMC,UAAU,IAAI,CAACF,IAAI,CAACE,OAAO,IAAI,KAAA;IACrC,MAAMC,SAAS,IAAI,CAACH,IAAI,CAACG,MAAM,IAAI,IAAA;AAEnC,IAAA,OAAOC,mBACL,CAAA,IAAI,CAACJ,IAAI,CAACK,KAAK,EACf,IAAI,CAACN,UAAU,EACfG,OAAA,EACAC,MACA,EAAA,IAAI,CAACG,OAAO,CAAA;AAEhB;EAEA,IAAIC,WAAcA,GAAA;IAChB,OAAO,IAAI,CAACP,IAAI,CAACO,WAAW,IAAIC,kBAAA,CAAmB,IAAI,CAACF,OAAO,CAAA;AACjE;EAEA,IAAIG,cAAiBA,GAAA;IACnB,OAAO,IAAI,CAACT,IAAI,CAACU,QAAQ,KAAK,UAAU,UAAa,GAAA,WAAA;AACvD;EAEA,IAAIA,QAAWA,GAAA;AACb,IAAA,OAAO,IAAI,CAACV,IAAI,CAACU,QAAQ,IAAI,OAAA;AAC/B;AAEA,EAAA;IAAAC,oBAAA,CAAAC,kBAAA,CA4DA,u5CAAA,EAAA;MAAAC,UAAA,EAAA,IAAA;AAAAC,MAAAA,KAAA,EAAAA,OAAA;QAAAC,UAAA;QAAAC,MAAA;oBAAAC,mBAAA;QAAAC,GAAA;QAAAC,IAAA;QAAAC,EAAA;QAAAC,GAAA;AAAAC,QAAAA;AAAA,OAAA;KAAU,CAAA,EAAV,IAAW,CAAA;AAAD;AACZ;;;;"}
@@ -20,13 +20,13 @@ class EuiDatePopoverContent extends Component {
20
20
  static {
21
21
  g(this.prototype, "euiI18n", [inject]);
22
22
  }
23
- #euiI18n = (i(this, "euiI18n"), undefined);
23
+ #euiI18n = (i(this, "euiI18n"), void 0);
24
24
  static {
25
25
  g(this.prototype, "selectedTab", [tracked], function () {
26
26
  return 0;
27
27
  });
28
28
  }
29
- #selectedTab = (i(this, "selectedTab"), undefined);
29
+ #selectedTab = (i(this, "selectedTab"), void 0);
30
30
  toAbsoluteStringHelper = toAbsoluteStringHelper;
31
31
  get labelPrefix() {
32
32
  return this.args.position === 'start' ? this.euiI18n.lookupToken('euiDatePopoverContent.startDateLabel', 'Start date') : this.euiI18n.lookupToken('euiDatePopoverContent.endDateLabel', 'End date');
@@ -1 +1 @@
1
- {"version":3,"file":"eui-date-popover-content.js","sources":["../../../../src/components/eui-super-date-picker/date-popover/eui-date-popover-content.gts"],"sourcesContent":["import Component from '@glimmer/component';\nimport { tracked } from '@glimmer/tracking';\nimport { helper } from '@ember/component/helper';\nimport { inject as service } from '@ember/service';\n\nimport { eq } from 'ember-truth-helpers';\n\nimport EuiTabbedContent from '../../eui-tabbed-content.gts';\nimport { getDateMode, toAbsoluteString } from '../utils/index.ts';\nimport { useI18nTimeOptions } from '../utils/time-options.ts';\nimport AbsoluteTab from './absolute-tab.gts';\nimport NowTab from './now-tab.gts';\nimport RelativeTab from './relative-tab.gts';\n\nimport type EuiI18n from '../../../services/eui-i18n';\nimport type { EuiTabbedContentTab } from '../../eui-tabbed-content';\nimport type { TimeOptions } from '../utils/time-options.ts';\nimport type { AbsoluteTabSignature } from './absolute-tab';\nimport type { NowTabSignature } from './now-tab';\nimport type { RelativeTabSignature } from './relative-tab';\nimport type { LocaleSpecifier } from 'moment';\n\ninterface EuiDatePopoverContentArgs {\n value: string;\n onChange:\n | RelativeTabSignature['Args']['onChange']\n | NowTabSignature['Args']['onChange']\n | AbsoluteTabSignature['Args']['onChange'];\n roundUp?: boolean;\n dateFormat: string;\n timeFormat?: string;\n locale?: LocaleSpecifier;\n position: 'start' | 'end';\n utcOffset?: number;\n timeOptions: TimeOptions;\n}\n\nconst toAbsoluteStringHelper = helper(function ([value, roundUp]: [\n string,\n boolean\n]) {\n return toAbsoluteString(value, roundUp);\n});\n\nexport interface EuiDatePopoverContentSignature {\n Element: HTMLDivElement;\n Args: EuiDatePopoverContentArgs;\n Blocks: {\n selectedTabContent: [\n {\n id: string;\n name: string;\n }\n ];\n };\n}\n\nexport default class EuiDatePopoverContent extends Component<EuiDatePopoverContentSignature> {\n @service declare euiI18n: EuiI18n;\n @tracked selectedTab = 0;\n toAbsoluteStringHelper = toAbsoluteStringHelper;\n\n get labelPrefix() {\n return this.args.position === 'start'\n ? this.euiI18n.lookupToken(\n 'euiDatePopoverContent.startDateLabel',\n 'Start date'\n )\n : this.euiI18n.lookupToken(\n 'euiDatePopoverContent.endDateLabel',\n 'End date'\n );\n }\n\n get tabs(): EuiTabbedContentTab[] {\n return [\n {\n id: 'absolute',\n name: this.euiI18n.lookupToken(\n 'euiDatePopoverContent.absoluteTabLabel',\n 'Absolute'\n )\n },\n {\n id: 'relative',\n name: this.euiI18n.lookupToken(\n 'euiDatePopoverContent.relativeTabLabel',\n 'Relative'\n )\n },\n {\n id: 'now',\n name: this.euiI18n.lookupToken(\n 'euiDatePopoverContent.nowTabLabel',\n 'Now'\n )\n }\n ];\n }\n\n get initialSelectedTab() {\n return this.tabs.find((tab) => tab.id === getDateMode(this.args.value));\n }\n\n get roundUp() {\n return this.args.roundUp ?? false;\n }\n\n get timeOptions() {\n return this.args.timeOptions || useI18nTimeOptions(this.euiI18n);\n }\n\n <template>\n <EuiTabbedContent\n @className=\"euiDatePopoverContent\"\n @tabs={{this.tabs}}\n @initialSelectedTab={{this.initialSelectedTab}}\n @autoFocus=\"selected\"\n @expand={{true}}\n @size=\"s\"\n >\n <:selectedTabContent as |selected|>\n {{#if (eq selected.id \"relative\")}}\n <RelativeTab\n @value={{this.toAbsoluteStringHelper @value this.roundUp}}\n @onChange={{@onChange}}\n @labelPrefix={{this.labelPrefix}}\n @roundUp={{this.roundUp}}\n @dateFormat={{@dateFormat}}\n @locale={{@locale}}\n @position={{@position}}\n @timeOptions={{this.timeOptions}}\n />\n {{else if (eq selected.id \"now\")}}\n <NowTab @position={{@position}} @onChange={{@onChange}} />\n {{else if (eq selected.id \"absolute\")}}\n <AbsoluteTab\n @value={{@value}}\n @roundUp={{this.roundUp}}\n @dateFormat={{@dateFormat}}\n @locale={{@locale}}\n @position={{@position}}\n @onChange={{@onChange}}\n @labelPrefix={{this.labelPrefix}}\n />\n {{/if}}\n </:selectedTabContent>\n </EuiTabbedContent>\n </template>\n}\n"],"names":["toAbsoluteStringHelper","helper","value","roundUp","toAbsoluteString","EuiDatePopoverContent","Component","g","prototype","service","i","void 0","tracked","labelPrefix","args","position","euiI18n","lookupToken","tabs","id","name","initialSelectedTab","find","tab","getDateMode","timeOptions","useI18nTimeOptions","setComponentTemplate","precompileTemplate","strictMode","scope","EuiTabbedContent","eq","RelativeTab","NowTab","AbsoluteTab"],"mappings":";;;;;;;;;;;;;;;AAqCA,MAAMA,sBAAA,GAAyBC,OAAO,UAAU,CAACC,OAAOC,OACtD,CAED,EAAA;AACC,EAAA,OAAOC,iBAAiBF,KAAO,EAAAC,OAAA,CAAA;AACjC,CAAA,CAAA;AAee,MAAME,8BAA8BC,SAAU,CAAA;AAAA,EAAA;IAAAC,CAAA,CAAA,IAAA,CAAAC,SAAA,EAAA,SAAA,EAAA,CAC1DC,MAAA,CAAA,CAAA;AAAA;AAAA,EAAA,QAAA,IAAAC,CAAA,CAAA,IAAA,EAAA,SAAA,CAAA,EAAAC,SAAA;AAAA,EAAA;IAAAJ,CAAA,CAAA,IAAA,CAAAC,SAAA,EAAA,aAAA,EAAA,CACAI,OAAA,CAAA,EAAA,YAAA;AAAA,MAAA,OAAsB,CAAE;AAAA,KAAA,CAAA;AAAA;AAAA,EAAA,YAAA,IAAAF,CAAA,CAAA,IAAA,EAAA,aAAA,CAAA,EAAAC,SAAA;AACzBX,EAAAA,sBAAA,GAAyBA,sBAAuB;EAEhD,IAAIa,WAAcA,GAAA;AAChB,IAAA,OAAO,IAAI,CAACC,IAAI,CAACC,QAAQ,KAAK,OAAA,GAC1B,IAAI,CAACC,OAAO,CAACC,WAAW,CACtB,wCACA,YAEF,CAAA,GAAA,IAAI,CAACD,OAAO,CAACC,WAAW,CACtB,oCACA,EAAA,UAAA,CAAA;AAER;EAEA,IAAIC,OAA8B;AAChC,IAAA,OAAO,CACL;AACEC,MAAAA,EAAI,EAAA,UAAA;MACJC,IAAA,EAAM,IAAI,CAACJ,OAAO,CAACC,WAAW,CAC5B,wCACA,EAAA,UAAA;AAEJ,KAAA,EACA;AACEE,MAAAA,EAAI,EAAA,UAAA;MACJC,IAAA,EAAM,IAAI,CAACJ,OAAO,CAACC,WAAW,CAC5B,wCACA,EAAA,UAAA;AAEJ,KAAA,EACA;AACEE,MAAAA,EAAI,EAAA,KAAA;MACJC,IAAA,EAAM,IAAI,CAACJ,OAAO,CAACC,WAAW,CAC5B,mCACA,EAAA,KAAA;AAEJ,KAAA,CACD;AACH;EAEA,IAAII,kBAAqBA,GAAA;IACvB,OAAO,IAAI,CAACH,IAAI,CAACI,IAAI,CAAEC,GAAA,IAAQA,GAAI,CAAAJ,EAAE,KAAKK,WAAY,CAAA,IAAI,CAACV,IAAI,CAACZ,KAAK,CAAA,CAAA;AACvE;EAEA,IAAIC,OAAUA,GAAA;AACZ,IAAA,OAAO,IAAI,CAACW,IAAI,CAACX,OAAO,IAAI,KAAA;AAC9B;EAEA,IAAIsB,WAAcA,GAAA;IAChB,OAAO,IAAI,CAACX,IAAI,CAACW,WAAW,IAAIC,kBAAA,CAAmB,IAAI,CAACV,OAAO,CAAA;AACjE;AAEA,EAAA;IAAAW,oBAAA,CAAAC,kBAAA,CAoCA,k+BAAA,EAAA;MAAAC,UAAA,EAAA,IAAA;AAAAC,MAAAA,KAAA,EAAAA,OAAA;0BAAAC,yBAAA;QAAAC,EAAA;QAAAC,WAAA;gBAAAC,mCAAA;AAAAC,QAAAA;AAAA,OAAA;KAAU,CAAA,EAAV,IAAW,CAAA;AAAD;AACZ;;;;"}
1
+ {"version":3,"file":"eui-date-popover-content.js","sources":["../../../../src/components/eui-super-date-picker/date-popover/eui-date-popover-content.gts"],"sourcesContent":["import Component from '@glimmer/component';\nimport { tracked } from '@glimmer/tracking';\nimport { helper } from '@ember/component/helper';\nimport { inject as service } from '@ember/service';\n\nimport { eq } from 'ember-truth-helpers';\n\nimport EuiTabbedContent from '../../eui-tabbed-content.gts';\nimport { getDateMode, toAbsoluteString } from '../utils/index.ts';\nimport { useI18nTimeOptions } from '../utils/time-options.ts';\nimport AbsoluteTab from './absolute-tab.gts';\nimport NowTab from './now-tab.gts';\nimport RelativeTab from './relative-tab.gts';\n\nimport type EuiI18n from '../../../services/eui-i18n';\nimport type { EuiTabbedContentTab } from '../../eui-tabbed-content';\nimport type { TimeOptions } from '../utils/time-options.ts';\nimport type { AbsoluteTabSignature } from './absolute-tab';\nimport type { NowTabSignature } from './now-tab';\nimport type { RelativeTabSignature } from './relative-tab';\nimport type { LocaleSpecifier } from 'moment';\n\ninterface EuiDatePopoverContentArgs {\n value: string;\n onChange:\n | RelativeTabSignature['Args']['onChange']\n | NowTabSignature['Args']['onChange']\n | AbsoluteTabSignature['Args']['onChange'];\n roundUp?: boolean;\n dateFormat: string;\n timeFormat?: string;\n locale?: LocaleSpecifier;\n position: 'start' | 'end';\n utcOffset?: number;\n timeOptions: TimeOptions;\n}\n\nconst toAbsoluteStringHelper = helper(function ([value, roundUp]: [\n string,\n boolean\n]) {\n return toAbsoluteString(value, roundUp);\n});\n\nexport interface EuiDatePopoverContentSignature {\n Element: HTMLDivElement;\n Args: EuiDatePopoverContentArgs;\n Blocks: {\n selectedTabContent: [\n {\n id: string;\n name: string;\n }\n ];\n };\n}\n\nexport default class EuiDatePopoverContent extends Component<EuiDatePopoverContentSignature> {\n @service declare euiI18n: EuiI18n;\n @tracked selectedTab = 0;\n toAbsoluteStringHelper = toAbsoluteStringHelper;\n\n get labelPrefix() {\n return this.args.position === 'start'\n ? this.euiI18n.lookupToken(\n 'euiDatePopoverContent.startDateLabel',\n 'Start date'\n )\n : this.euiI18n.lookupToken(\n 'euiDatePopoverContent.endDateLabel',\n 'End date'\n );\n }\n\n get tabs(): EuiTabbedContentTab[] {\n return [\n {\n id: 'absolute',\n name: this.euiI18n.lookupToken(\n 'euiDatePopoverContent.absoluteTabLabel',\n 'Absolute'\n )\n },\n {\n id: 'relative',\n name: this.euiI18n.lookupToken(\n 'euiDatePopoverContent.relativeTabLabel',\n 'Relative'\n )\n },\n {\n id: 'now',\n name: this.euiI18n.lookupToken(\n 'euiDatePopoverContent.nowTabLabel',\n 'Now'\n )\n }\n ];\n }\n\n get initialSelectedTab() {\n return this.tabs.find((tab) => tab.id === getDateMode(this.args.value));\n }\n\n get roundUp() {\n return this.args.roundUp ?? false;\n }\n\n get timeOptions() {\n return this.args.timeOptions || useI18nTimeOptions(this.euiI18n);\n }\n\n <template>\n <EuiTabbedContent\n @className=\"euiDatePopoverContent\"\n @tabs={{this.tabs}}\n @initialSelectedTab={{this.initialSelectedTab}}\n @autoFocus=\"selected\"\n @expand={{true}}\n @size=\"s\"\n >\n <:selectedTabContent as |selected|>\n {{#if (eq selected.id \"relative\")}}\n <RelativeTab\n @value={{this.toAbsoluteStringHelper @value this.roundUp}}\n @onChange={{@onChange}}\n @labelPrefix={{this.labelPrefix}}\n @roundUp={{this.roundUp}}\n @dateFormat={{@dateFormat}}\n @locale={{@locale}}\n @position={{@position}}\n @timeOptions={{this.timeOptions}}\n />\n {{else if (eq selected.id \"now\")}}\n <NowTab @position={{@position}} @onChange={{@onChange}} />\n {{else if (eq selected.id \"absolute\")}}\n <AbsoluteTab\n @value={{@value}}\n @roundUp={{this.roundUp}}\n @dateFormat={{@dateFormat}}\n @locale={{@locale}}\n @position={{@position}}\n @onChange={{@onChange}}\n @labelPrefix={{this.labelPrefix}}\n />\n {{/if}}\n </:selectedTabContent>\n </EuiTabbedContent>\n </template>\n}\n"],"names":["toAbsoluteStringHelper","helper","value","roundUp","toAbsoluteString","EuiDatePopoverContent","Component","g","prototype","service","i","void 0","tracked","labelPrefix","args","position","euiI18n","lookupToken","tabs","id","name","initialSelectedTab","find","tab","getDateMode","timeOptions","useI18nTimeOptions","setComponentTemplate","precompileTemplate","strictMode","scope","EuiTabbedContent","eq","RelativeTab","NowTab","AbsoluteTab"],"mappings":";;;;;;;;;;;;;;;AAqCA,MAAMA,sBAAA,GAAyBC,OAAO,UAAU,CAACC,OAAOC,OACtD,CAED,EAAA;AACC,EAAA,OAAOC,iBAAiBF,KAAO,EAAAC,OAAA,CAAA;AACjC,CAAA,CAAA;AAee,MAAME,8BAA8BC,SAAU,CAAA;AAAA,EAAA;IAAAC,CAAA,CAAA,IAAA,CAAAC,SAAA,EAAA,SAAA,EAAA,CAC1DC,MAAA,CAAA,CAAA;AAAA;AAAA,EAAA,QAAA,IAAAC,CAAA,CAAA,IAAA,EAAA,SAAA,CAAA,EAAAC,MAAA;AAAA,EAAA;IAAAJ,CAAA,CAAA,IAAA,CAAAC,SAAA,EAAA,aAAA,EAAA,CACAI,OAAA,CAAA,EAAA,YAAA;AAAA,MAAA,OAAsB,CAAE;AAAA,KAAA,CAAA;AAAA;AAAA,EAAA,YAAA,IAAAF,CAAA,CAAA,IAAA,EAAA,aAAA,CAAA,EAAAC,MAAA;AACzBX,EAAAA,sBAAA,GAAyBA,sBAAuB;EAEhD,IAAIa,WAAcA,GAAA;AAChB,IAAA,OAAO,IAAI,CAACC,IAAI,CAACC,QAAQ,KAAK,OAAA,GAC1B,IAAI,CAACC,OAAO,CAACC,WAAW,CACtB,wCACA,YAEF,CAAA,GAAA,IAAI,CAACD,OAAO,CAACC,WAAW,CACtB,oCACA,EAAA,UAAA,CAAA;AAER;EAEA,IAAIC,OAA8B;AAChC,IAAA,OAAO,CACL;AACEC,MAAAA,EAAI,EAAA,UAAA;MACJC,IAAA,EAAM,IAAI,CAACJ,OAAO,CAACC,WAAW,CAC5B,wCACA,EAAA,UAAA;AAEJ,KAAA,EACA;AACEE,MAAAA,EAAI,EAAA,UAAA;MACJC,IAAA,EAAM,IAAI,CAACJ,OAAO,CAACC,WAAW,CAC5B,wCACA,EAAA,UAAA;AAEJ,KAAA,EACA;AACEE,MAAAA,EAAI,EAAA,KAAA;MACJC,IAAA,EAAM,IAAI,CAACJ,OAAO,CAACC,WAAW,CAC5B,mCACA,EAAA,KAAA;AAEJ,KAAA,CACD;AACH;EAEA,IAAII,kBAAqBA,GAAA;IACvB,OAAO,IAAI,CAACH,IAAI,CAACI,IAAI,CAAEC,GAAA,IAAQA,GAAI,CAAAJ,EAAE,KAAKK,WAAY,CAAA,IAAI,CAACV,IAAI,CAACZ,KAAK,CAAA,CAAA;AACvE;EAEA,IAAIC,OAAUA,GAAA;AACZ,IAAA,OAAO,IAAI,CAACW,IAAI,CAACX,OAAO,IAAI,KAAA;AAC9B;EAEA,IAAIsB,WAAcA,GAAA;IAChB,OAAO,IAAI,CAACX,IAAI,CAACW,WAAW,IAAIC,kBAAA,CAAmB,IAAI,CAACV,OAAO,CAAA;AACjE;AAEA,EAAA;IAAAW,oBAAA,CAAAC,kBAAA,CAoCA,k+BAAA,EAAA;MAAAC,UAAA,EAAA,IAAA;AAAAC,MAAAA,KAAA,EAAAA,OAAA;0BAAAC,yBAAA;QAAAC,EAAA;QAAAC,WAAA;gBAAAC,mCAAA;AAAAC,QAAAA;AAAA,OAAA;KAAU,CAAA,EAAV,IAAW,CAAA;AAAD;AACZ;;;;"}
@@ -3,7 +3,7 @@ import { tracked } from '@glimmer/tracking';
3
3
  import { on } from '@ember/modifier';
4
4
  import { action } from '@ember/object';
5
5
  import dateMath from '@elastic/datemath';
6
- import pick from 'ember-composable-helpers/helpers/pick';
6
+ import pick from '@nullvoxpopuli/ember-composable-helpers/helpers/pick';
7
7
  import EuiFieldNumber from '../../eui-field-number.js';
8
8
  import EuiFieldText from '../../eui-field-text.js';
9
9
  import EuiFlexGroup from '../../eui-flex-group.js';
@@ -24,19 +24,19 @@ class RelativeTab extends Component {
24
24
  static {
25
25
  g(this.prototype, "count", [tracked]);
26
26
  }
27
- #count = (i(this, "count"), undefined);
27
+ #count = (i(this, "count"), void 0);
28
28
  static {
29
29
  g(this.prototype, "unit", [tracked], function () {
30
30
  return 'm';
31
31
  });
32
32
  }
33
- #unit = (i(this, "unit"), undefined);
33
+ #unit = (i(this, "unit"), void 0);
34
34
  static {
35
35
  g(this.prototype, "round", [tracked], function () {
36
36
  return false;
37
37
  });
38
38
  }
39
- #round = (i(this, "round"), undefined);
39
+ #round = (i(this, "round"), void 0);
40
40
  roundUnit;
41
41
  constructor(owner, args) {
42
42
  super(owner, args);
@@ -1 +1 @@
1
- {"version":3,"file":"relative-tab.js","sources":["../../../../src/components/eui-super-date-picker/date-popover/relative-tab.gts"],"sourcesContent":["import Component from '@glimmer/component';\nimport { tracked } from '@glimmer/tracking';\nimport { on } from '@ember/modifier';\nimport { action } from '@ember/object';\nimport type Owner from '@ember/owner';\n\nimport dateMath from '@elastic/datemath';\nimport pick from 'ember-composable-helpers/helpers/pick';\n\nimport EuiFieldNumber from '../../eui-field-number.gts';\nimport EuiFieldText from '../../eui-field-text.gts';\nimport EuiFlexGroup from '../../eui-flex-group.gts';\nimport EuiFlexItem from '../../eui-flex-item.gts';\nimport EuiForm from '../../eui-form.gts';\nimport EuiFormLabel from '../../eui-form-label.gts';\nimport EuiFormRow from '../../eui-form-row.gts';\nimport EuiPopoverFooter from '../../eui-popover-footer.gts';\nimport EuiSelect from '../../eui-select.gts';\nimport EuiSpacer from '../../eui-spacer.gts';\nimport EuiSwitch from '../../eui-switch.gts';\nimport { INVALID_DATE, toRelativeStringFromParts } from '../utils/index.ts';\nimport { parseRelativeParts } from '../utils/index.ts';\n\nimport type { TimeOptions } from '../utils/time-options.ts';\nimport type { LocaleSpecifier } from 'moment';\n\ninterface RelativeTabArgs {\n dateFormat: string;\n locale?: LocaleSpecifier;\n value: string;\n onChange: (value: string, event?: Event) => void;\n roundUp?: boolean;\n position: 'start' | 'end';\n labelPrefix: string;\n timeOptions: TimeOptions;\n}\n\nexport interface RelativeTabSignature {\n Args: RelativeTabArgs;\n}\n\nexport default class RelativeTab extends Component<RelativeTabSignature> {\n @tracked count?: number;\n @tracked unit: any = 'm';\n @tracked round = false;\n\n roundUnit;\n\n constructor(owner: Owner, args: RelativeTabArgs) {\n super(owner, args);\n\n const parsed = parseRelativeParts(this.args.value);\n\n if (parsed) {\n this.count = parsed.count;\n this.unit = parsed.unit as any;\n this.round = parsed.round;\n this.roundUnit = parsed.roundUnit;\n }\n }\n\n get formattedValue() {\n const invalidDate = this.args.value === INVALID_DATE;\n const invalidValue = this.count === undefined || this.count < 0;\n const isInvalid = invalidValue || invalidDate;\n const parsedValue = dateMath.parse(this.args.value, {\n roundUp: this.args.roundUp\n });\n const invalid = isInvalid || !parsedValue || !parsedValue.isValid();\n\n return invalid\n ? ''\n : parsedValue\n .locale(this.args.locale || 'en')\n .format(this.args.dateFormat);\n }\n\n get roundingLabel() {\n //@ts-expect-error\n return this.args.timeOptions.relativeRoundingLabels[this.unit[0]];\n }\n\n @action\n onCountChange(e: Event) {\n const sanitizedValue = parseInt((e.target as HTMLInputElement).value, 10);\n\n this.count = isNaN(sanitizedValue) ? undefined : sanitizedValue;\n this.handleChange();\n }\n\n @action\n onUnitChange(unit: string) {\n this.unit = unit as any;\n this.handleChange();\n }\n\n @action\n onRoundChange(checked: boolean) {\n this.round = checked;\n this.handleChange();\n }\n\n handleChange(e?: Event) {\n if (this.count === undefined || this.count < 0) {\n return;\n }\n\n const date = toRelativeStringFromParts({\n count: this.count,\n round: this.round,\n roundUnit: this.roundUnit as any,\n unit: this.unit\n });\n\n this.args.onChange(date, e);\n }\n\n <template>\n <EuiForm class=\"euiDatePopoverContent__padded\">\n <EuiFlexGroup @gutterSize=\"s\" @responsive={{false}}>\n <EuiFlexItem>\n <EuiFormRow>\n <EuiFieldNumber\n @compressed={{true}}\n @value={{this.count}}\n @min=\"0\"\n {{on \"input\" this.onCountChange}}\n />\n </EuiFormRow>\n </EuiFlexItem>\n <EuiFlexItem>\n <EuiSelect\n @compressed={{true}}\n @value={{this.unit}}\n @options={{@timeOptions.relativeOptions}}\n {{on \"change\" (pick \"target.value\" this.onUnitChange)}}\n />\n </EuiFlexItem>\n </EuiFlexGroup>\n <EuiSpacer @size=\"s\" />\n <EuiFieldText\n @compressed={{true}}\n @value={{this.formattedValue}}\n @readOnly={{true}}\n >\n <:prepend>\n <EuiFormLabel>{{@labelPrefix}}</EuiFormLabel>\n </:prepend>\n </EuiFieldText>\n </EuiForm>\n <EuiPopoverFooter @paddingSize=\"s\">\n <EuiSwitch\n @label={{this.roundingLabel}}\n @checked={{this.round}}\n @onChange={{pick \"target.checked\" this.onRoundChange}}\n />\n </EuiPopoverFooter>\n </template>\n}\n"],"names":["RelativeTab","Component","g","prototype","tracked","i","void 0","roundUnit","constructor","owner","args","parsed","parseRelativeParts","value","count","unit","round","formattedValue","invalidDate","INVALID_DATE","invalidValue","undefined","isInvalid","parsedValue","dateMath","parse","roundUp","invalid","isValid","locale","format","dateFormat","roundingLabel","timeOptions","relativeRoundingLabels","onCountChange","e","sanitizedValue","parseInt","target","isNaN","handleChange","n","action","onUnitChange","onRoundChange","checked","date","toRelativeStringFromParts","onChange","setComponentTemplate","precompileTemplate","strictMode","scope","EuiForm","EuiFlexGroup","EuiFlexItem","EuiFormRow","EuiFieldNumber","on","EuiSelect","pick","EuiSpacer","EuiFieldText","EuiFormLabel","EuiPopoverFooter","EuiSwitch"],"mappings":"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"}
1
+ {"version":3,"file":"relative-tab.js","sources":["../../../../src/components/eui-super-date-picker/date-popover/relative-tab.gts"],"sourcesContent":["import Component from '@glimmer/component';\nimport { tracked } from '@glimmer/tracking';\nimport { on } from '@ember/modifier';\nimport { action } from '@ember/object';\nimport type Owner from '@ember/owner';\n\nimport dateMath from '@elastic/datemath';\nimport pick from '@nullvoxpopuli/ember-composable-helpers/helpers/pick';\n\nimport EuiFieldNumber from '../../eui-field-number.gts';\nimport EuiFieldText from '../../eui-field-text.gts';\nimport EuiFlexGroup from '../../eui-flex-group.gts';\nimport EuiFlexItem from '../../eui-flex-item.gts';\nimport EuiForm from '../../eui-form.gts';\nimport EuiFormLabel from '../../eui-form-label.gts';\nimport EuiFormRow from '../../eui-form-row.gts';\nimport EuiPopoverFooter from '../../eui-popover-footer.gts';\nimport EuiSelect from '../../eui-select.gts';\nimport EuiSpacer from '../../eui-spacer.gts';\nimport EuiSwitch from '../../eui-switch.gts';\nimport { INVALID_DATE, toRelativeStringFromParts } from '../utils/index.ts';\nimport { parseRelativeParts } from '../utils/index.ts';\n\nimport type { TimeOptions } from '../utils/time-options.ts';\nimport type { LocaleSpecifier } from 'moment';\n\ninterface RelativeTabArgs {\n dateFormat: string;\n locale?: LocaleSpecifier;\n value: string;\n onChange: (value: string, event?: Event) => void;\n roundUp?: boolean;\n position: 'start' | 'end';\n labelPrefix: string;\n timeOptions: TimeOptions;\n}\n\nexport interface RelativeTabSignature {\n Args: RelativeTabArgs;\n}\n\nexport default class RelativeTab extends Component<RelativeTabSignature> {\n @tracked count?: number;\n @tracked unit: any = 'm';\n @tracked round = false;\n\n roundUnit;\n\n constructor(owner: Owner, args: RelativeTabArgs) {\n super(owner, args);\n\n const parsed = parseRelativeParts(this.args.value);\n\n if (parsed) {\n this.count = parsed.count;\n this.unit = parsed.unit as any;\n this.round = parsed.round;\n this.roundUnit = parsed.roundUnit;\n }\n }\n\n get formattedValue() {\n const invalidDate = this.args.value === INVALID_DATE;\n const invalidValue = this.count === undefined || this.count < 0;\n const isInvalid = invalidValue || invalidDate;\n const parsedValue = dateMath.parse(this.args.value, {\n roundUp: this.args.roundUp\n });\n const invalid = isInvalid || !parsedValue || !parsedValue.isValid();\n\n return invalid\n ? ''\n : parsedValue\n .locale(this.args.locale || 'en')\n .format(this.args.dateFormat);\n }\n\n get roundingLabel() {\n //@ts-expect-error\n return this.args.timeOptions.relativeRoundingLabels[this.unit[0]];\n }\n\n @action\n onCountChange(e: Event) {\n const sanitizedValue = parseInt((e.target as HTMLInputElement).value, 10);\n\n this.count = isNaN(sanitizedValue) ? undefined : sanitizedValue;\n this.handleChange();\n }\n\n @action\n onUnitChange(unit: string) {\n this.unit = unit as any;\n this.handleChange();\n }\n\n @action\n onRoundChange(checked: boolean) {\n this.round = checked;\n this.handleChange();\n }\n\n handleChange(e?: Event) {\n if (this.count === undefined || this.count < 0) {\n return;\n }\n\n const date = toRelativeStringFromParts({\n count: this.count,\n round: this.round,\n roundUnit: this.roundUnit as any,\n unit: this.unit\n });\n\n this.args.onChange(date, e);\n }\n\n <template>\n <EuiForm class=\"euiDatePopoverContent__padded\">\n <EuiFlexGroup @gutterSize=\"s\" @responsive={{false}}>\n <EuiFlexItem>\n <EuiFormRow>\n <EuiFieldNumber\n @compressed={{true}}\n @value={{this.count}}\n @min=\"0\"\n {{on \"input\" this.onCountChange}}\n />\n </EuiFormRow>\n </EuiFlexItem>\n <EuiFlexItem>\n <EuiSelect\n @compressed={{true}}\n @value={{this.unit}}\n @options={{@timeOptions.relativeOptions}}\n {{on \"change\" (pick \"target.value\" this.onUnitChange)}}\n />\n </EuiFlexItem>\n </EuiFlexGroup>\n <EuiSpacer @size=\"s\" />\n <EuiFieldText\n @compressed={{true}}\n @value={{this.formattedValue}}\n @readOnly={{true}}\n >\n <:prepend>\n <EuiFormLabel>{{@labelPrefix}}</EuiFormLabel>\n </:prepend>\n </EuiFieldText>\n </EuiForm>\n <EuiPopoverFooter @paddingSize=\"s\">\n <EuiSwitch\n @label={{this.roundingLabel}}\n @checked={{this.round}}\n @onChange={{pick \"target.checked\" this.onRoundChange}}\n />\n </EuiPopoverFooter>\n </template>\n}\n"],"names":["RelativeTab","Component","g","prototype","tracked","i","void 0","roundUnit","constructor","owner","args","parsed","parseRelativeParts","value","count","unit","round","formattedValue","invalidDate","INVALID_DATE","invalidValue","undefined","isInvalid","parsedValue","dateMath","parse","roundUp","invalid","isValid","locale","format","dateFormat","roundingLabel","timeOptions","relativeRoundingLabels","onCountChange","e","sanitizedValue","parseInt","target","isNaN","handleChange","n","action","onUnitChange","onRoundChange","checked","date","toRelativeStringFromParts","onChange","setComponentTemplate","precompileTemplate","strictMode","scope","EuiForm","EuiFlexGroup","EuiFlexItem","EuiFormRow","EuiFieldNumber","on","EuiSelect","pick","EuiSpacer","EuiFieldText","EuiFormLabel","EuiPopoverFooter","EuiSwitch"],"mappings":"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"}
@@ -3,7 +3,7 @@ import { tracked } from '@glimmer/tracking';
3
3
  import { on } from '@ember/modifier';
4
4
  import { action } from '@ember/object';
5
5
  import dateMath from '@elastic/datemath';
6
- import pick from 'ember-composable-helpers/helpers/pick';
6
+ import pick from '@nullvoxpopuli/ember-composable-helpers/helpers/pick';
7
7
  import set from 'ember-set-helper/helpers/set';
8
8
  import { lte } from 'ember-truth-helpers';
9
9
  import moment from 'moment';
@@ -27,15 +27,15 @@ class EuiQuickSelect extends Component {
27
27
  static {
28
28
  g(this.prototype, "timeTense", [tracked]);
29
29
  }
30
- #timeTense = (i(this, "timeTense"), undefined);
30
+ #timeTense = (i(this, "timeTense"), void 0);
31
31
  static {
32
32
  g(this.prototype, "timeValue", [tracked]);
33
33
  }
34
- #timeValue = (i(this, "timeValue"), undefined);
34
+ #timeValue = (i(this, "timeValue"), void 0);
35
35
  static {
36
36
  g(this.prototype, "timeUnits", [tracked]);
37
37
  }
38
- #timeUnits = (i(this, "timeUnits"), undefined);
38
+ #timeUnits = (i(this, "timeUnits"), void 0);
39
39
  constructor(owner, args) {
40
40
  super(owner, args);
41
41
  const {
@@ -1 +1 @@
1
- {"version":3,"file":"eui-quick-select.js","sources":["../../../../src/components/eui-super-date-picker/eui-quick-select-popover/eui-quick-select.gts"],"sourcesContent":["import Component from '@glimmer/component';\nimport { tracked } from '@glimmer/tracking';\nimport { on } from '@ember/modifier';\nimport { action } from '@ember/object';\nimport type Owner from '@ember/owner';\n\nimport dateMath from '@elastic/datemath';\nimport pick from 'ember-composable-helpers/helpers/pick';\nimport set from 'ember-set-helper/helpers/set';\nimport { lte } from 'ember-truth-helpers';\nimport moment from 'moment';\n\nimport randomId from '../../../-private/random-id.ts';\nimport EuiButton from '../../eui-button.gts';\nimport EuiButtonIcon from '../../eui-button-icon.gts';\nimport EuiFieldNumber from '../../eui-field-number.gts';\nimport EuiFlexGroup from '../../eui-flex-group.gts';\nimport EuiFlexItem from '../../eui-flex-item.gts';\nimport EuiI18n from '../../eui-i18n.gts';\nimport EuiSelect from '../../eui-select.gts';\nimport EuiSpacer from '../../eui-spacer.gts';\nimport EuiToolTip from '../../eui-tool-tip.gts';\nimport { parseTimeParts } from '../utils/quick-select.ts';\nimport { NEXT } from '../utils/time-options.ts';\n\nimport type { ApplyTime, TimeUnitId } from '../types/global';\nimport type { TimeOptions } from '../utils/time-options.ts';\n\ninterface EuiQuickSelectState {\n timeTense: string;\n timeValue: number;\n timeUnits: TimeUnitId;\n}\n\ninterface EuiQuickSelectArgs {\n applyTime: ApplyTime;\n start: string;\n end: string;\n prevQuickSelect?: EuiQuickSelectState;\n timeOptions: TimeOptions;\n}\n\nexport interface EuiQuickSelectSignature {\n Args: EuiQuickSelectArgs;\n Blocks: { default: [] };\n}\n\nexport default class EuiQuickSelect extends Component<EuiQuickSelectSignature> {\n @tracked timeTense: string;\n @tracked timeValue: number;\n @tracked timeUnits: TimeUnitId;\n\n constructor(owner: Owner, args: EuiQuickSelectArgs) {\n super(owner, args);\n\n const {\n timeTense: timeTenseDefault,\n timeUnits: timeUnitsDefault,\n timeValue: timeValueDefault\n } = parseTimeParts(this.args.start, this.args.end);\n\n this.timeTense =\n this.args.prevQuickSelect && this.args.prevQuickSelect.timeTense\n ? this.args.prevQuickSelect.timeTense\n : timeTenseDefault;\n this.timeValue =\n this.args.prevQuickSelect && this.args.prevQuickSelect.timeValue\n ? this.args.prevQuickSelect.timeValue\n : timeValueDefault;\n this.timeUnits =\n this.args.prevQuickSelect && this.args.prevQuickSelect.timeUnits\n ? this.args.prevQuickSelect.timeUnits\n : timeUnitsDefault;\n }\n\n getBounds() {\n const startMoment = dateMath.parse(this.args.start);\n const endMoment = dateMath.parse(this.args.end, { roundUp: true });\n\n return {\n min:\n startMoment && startMoment.isValid()\n ? startMoment\n : moment().subtract(15, 'minute'),\n max: endMoment && endMoment.isValid() ? endMoment : moment()\n };\n }\n\n @action\n applyQuickSelect() {\n if (this.timeTense === NEXT) {\n this.args.applyTime({\n start: 'now',\n end: `now+${this.timeValue}${this.timeUnits}`\n // quickSelect: { ...this.state },\n });\n } else {\n this.args.applyTime({\n start: `now-${this.timeValue}${this.timeUnits}`,\n end: 'now'\n // quickSelect: { ...this.state },\n });\n }\n }\n\n @action\n stepForward() {\n const { min, max } = this.getBounds();\n const diff = max.diff(min);\n\n this.args.applyTime({\n start: moment(max).add(1, 'ms').toISOString(),\n end: moment(max)\n .add(diff + 1, 'ms')\n .toISOString(),\n keepPopoverOpen: true\n });\n }\n\n @action\n stepBackward() {\n const { min, max } = this.getBounds();\n const diff = max.diff(min);\n\n this.args.applyTime({\n start: moment(min)\n .subtract(diff + 1, 'ms')\n .toISOString(),\n end: moment(min).subtract(1, 'ms').toISOString(),\n keepPopoverOpen: true\n });\n }\n\n <template>\n {{#let (randomId) as |legendId|}}\n <fieldset>\n <EuiFlexGroup\n @responsive={{false}}\n @alignItems=\"center\"\n @justifyContent=\"spaceBetween\"\n @gutterSize=\"s\"\n >\n <EuiFlexItem @grow={{false}}>\n <EuiI18n\n @token=\"euiQuickSelect.quickSelectTitle\"\n @default=\"Quick select\"\n as |Token|\n >\n <Token as |quickSelectTitle|>\n <div aria-hidden class=\"euiFormLabel\">\n {{quickSelectTitle}}\n </div>\n </Token>\n </EuiI18n>\n </EuiFlexItem>\n <EuiFlexItem @grow={{false}}>\n <EuiFlexGroup\n @alignItems=\"center\"\n @gutterSize=\"s\"\n @responsive={{false}}\n >\n <EuiFlexItem @grow={{false}}>\n <EuiI18n\n @token=\"euiQuickSelect.previousLabel\"\n @default=\"Previous time window\"\n as |Token|\n >\n <Token as |previousLabel|>\n <EuiToolTip @content={{previousLabel}}>\n <EuiButtonIcon\n aria-label={{previousLabel}}\n @iconType=\"arrowLeft\"\n {{on \"click\" this.stepBackward}}\n />\n </EuiToolTip>\n </Token>\n </EuiI18n>\n </EuiFlexItem>\n <EuiFlexItem @grow={{false}}>\n <EuiI18n\n @token=\"euiQuickSelect.nextLabel\"\n @default=\"Next time window\"\n as |Token|\n >\n <Token as |nextLabel|>\n <EuiToolTip @content={{nextLabel}}>\n <EuiButtonIcon\n aria-label={{nextLabel}}\n @iconType=\"arrowRight\"\n {{on \"click\" this.stepForward}}\n />\n </EuiToolTip>\n </Token>\n </EuiI18n>\n </EuiFlexItem>\n </EuiFlexGroup>\n </EuiFlexItem>\n </EuiFlexGroup>\n <EuiSpacer @size=\"s\" />\n <EuiFlexGroup @gutterSize=\"s\" @responsive={{false}}>\n <EuiFlexItem>\n <EuiI18n\n @token=\"euiQuickSelect.tenseLabel\"\n @default=\"Time tense\"\n as |Token|\n >\n <Token as |tenseLabel|>\n <EuiSelect\n @compressed={{true}}\n aria-label={{tenseLabel}}\n @value={{this.timeTense}}\n @options={{@timeOptions.timeTenseOptions}}\n {{on \"change\" (pick \"target.value\" (set this \"timeTense\"))}}\n />\n </Token>\n </EuiI18n>\n </EuiFlexItem>\n <EuiFlexItem>\n <EuiI18n\n @token=\"euiQuickSelect.valueLabel\"\n @default=\"Time value\"\n as |Token|\n >\n <Token as |valueLabel|>\n <EuiFieldNumber\n @compressed={{true}}\n aria-label={{valueLabel}}\n @value={{this.timeValue}}\n {{on \"input\" (pick \"target.value\" (set this \"timeValue\"))}}\n />\n </Token>\n </EuiI18n>\n </EuiFlexItem>\n <EuiFlexItem>\n <EuiI18n\n @token=\"euiQuickSelect.unitLabel\"\n @default=\"Time unit\"\n as |Token|\n >\n <Token as |unitLabel|>\n <EuiSelect\n @compressed={{true}}\n aria-label={{unitLabel}}\n @value={{this.timeUnits}}\n @options={{@timeOptions.timeUnitsOptions}}\n {{on \"change\" (pick \"target.value\" (set this \"timeUnits\"))}}\n />\n </Token>\n </EuiI18n>\n </EuiFlexItem>\n <EuiFlexItem @grow={{false}}>\n <EuiButton\n class=\"euiQuickSelect__applyButton\"\n @size=\"s\"\n @disabled={{lte this.timeValue 0}}\n {{on \"click\" this.applyQuickSelect}}\n >\n <EuiI18n\n @token=\"euiQuickSelect.applyButton\"\n @default=\"Apply\"\n as |Token|\n >\n <Token as |value|>\n {{value}}\n </Token>\n </EuiI18n>\n </EuiButton>\n </EuiFlexItem>\n </EuiFlexGroup>\n </fieldset>\n {{/let}}\n </template>\n}\n"],"names":["EuiQuickSelect","Component","g","prototype","tracked","i","void 0","constructor","owner","args","timeTense","timeTenseDefault","timeUnits","timeUnitsDefault","timeValue","timeValueDefault","parseTimeParts","start","end","prevQuickSelect","getBounds","startMoment","dateMath","parse","endMoment","roundUp","min","isValid","moment","subtract","max","applyQuickSelect","NEXT","applyTime","n","action","stepForward","diff","add","toISOString","keepPopoverOpen","stepBackward","setComponentTemplate","precompileTemplate","strictMode","scope","randomId","EuiFlexGroup","EuiFlexItem","EuiI18n","EuiToolTip","EuiButtonIcon","on","EuiSpacer","EuiSelect","pick","set","EuiFieldNumber","EuiButton","lte"],"mappings":"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"}
1
+ {"version":3,"file":"eui-quick-select.js","sources":["../../../../src/components/eui-super-date-picker/eui-quick-select-popover/eui-quick-select.gts"],"sourcesContent":["import Component from '@glimmer/component';\nimport { tracked } from '@glimmer/tracking';\nimport { on } from '@ember/modifier';\nimport { action } from '@ember/object';\nimport type Owner from '@ember/owner';\n\nimport dateMath from '@elastic/datemath';\nimport pick from '@nullvoxpopuli/ember-composable-helpers/helpers/pick';\nimport set from 'ember-set-helper/helpers/set';\nimport { lte } from 'ember-truth-helpers';\nimport moment from 'moment';\n\nimport randomId from '../../../-private/random-id.ts';\nimport EuiButton from '../../eui-button.gts';\nimport EuiButtonIcon from '../../eui-button-icon.gts';\nimport EuiFieldNumber from '../../eui-field-number.gts';\nimport EuiFlexGroup from '../../eui-flex-group.gts';\nimport EuiFlexItem from '../../eui-flex-item.gts';\nimport EuiI18n from '../../eui-i18n.gts';\nimport EuiSelect from '../../eui-select.gts';\nimport EuiSpacer from '../../eui-spacer.gts';\nimport EuiToolTip from '../../eui-tool-tip.gts';\nimport { parseTimeParts } from '../utils/quick-select.ts';\nimport { NEXT } from '../utils/time-options.ts';\n\nimport type { ApplyTime, TimeUnitId } from '../types/global';\nimport type { TimeOptions } from '../utils/time-options.ts';\n\ninterface EuiQuickSelectState {\n timeTense: string;\n timeValue: number;\n timeUnits: TimeUnitId;\n}\n\ninterface EuiQuickSelectArgs {\n applyTime: ApplyTime;\n start: string;\n end: string;\n prevQuickSelect?: EuiQuickSelectState;\n timeOptions: TimeOptions;\n}\n\nexport interface EuiQuickSelectSignature {\n Args: EuiQuickSelectArgs;\n Blocks: { default: [] };\n}\n\nexport default class EuiQuickSelect extends Component<EuiQuickSelectSignature> {\n @tracked timeTense: string;\n @tracked timeValue: number;\n @tracked timeUnits: TimeUnitId;\n\n constructor(owner: Owner, args: EuiQuickSelectArgs) {\n super(owner, args);\n\n const {\n timeTense: timeTenseDefault,\n timeUnits: timeUnitsDefault,\n timeValue: timeValueDefault\n } = parseTimeParts(this.args.start, this.args.end);\n\n this.timeTense =\n this.args.prevQuickSelect && this.args.prevQuickSelect.timeTense\n ? this.args.prevQuickSelect.timeTense\n : timeTenseDefault;\n this.timeValue =\n this.args.prevQuickSelect && this.args.prevQuickSelect.timeValue\n ? this.args.prevQuickSelect.timeValue\n : timeValueDefault;\n this.timeUnits =\n this.args.prevQuickSelect && this.args.prevQuickSelect.timeUnits\n ? this.args.prevQuickSelect.timeUnits\n : timeUnitsDefault;\n }\n\n getBounds() {\n const startMoment = dateMath.parse(this.args.start);\n const endMoment = dateMath.parse(this.args.end, { roundUp: true });\n\n return {\n min:\n startMoment && startMoment.isValid()\n ? startMoment\n : moment().subtract(15, 'minute'),\n max: endMoment && endMoment.isValid() ? endMoment : moment()\n };\n }\n\n @action\n applyQuickSelect() {\n if (this.timeTense === NEXT) {\n this.args.applyTime({\n start: 'now',\n end: `now+${this.timeValue}${this.timeUnits}`\n // quickSelect: { ...this.state },\n });\n } else {\n this.args.applyTime({\n start: `now-${this.timeValue}${this.timeUnits}`,\n end: 'now'\n // quickSelect: { ...this.state },\n });\n }\n }\n\n @action\n stepForward() {\n const { min, max } = this.getBounds();\n const diff = max.diff(min);\n\n this.args.applyTime({\n start: moment(max).add(1, 'ms').toISOString(),\n end: moment(max)\n .add(diff + 1, 'ms')\n .toISOString(),\n keepPopoverOpen: true\n });\n }\n\n @action\n stepBackward() {\n const { min, max } = this.getBounds();\n const diff = max.diff(min);\n\n this.args.applyTime({\n start: moment(min)\n .subtract(diff + 1, 'ms')\n .toISOString(),\n end: moment(min).subtract(1, 'ms').toISOString(),\n keepPopoverOpen: true\n });\n }\n\n <template>\n {{#let (randomId) as |legendId|}}\n <fieldset>\n <EuiFlexGroup\n @responsive={{false}}\n @alignItems=\"center\"\n @justifyContent=\"spaceBetween\"\n @gutterSize=\"s\"\n >\n <EuiFlexItem @grow={{false}}>\n <EuiI18n\n @token=\"euiQuickSelect.quickSelectTitle\"\n @default=\"Quick select\"\n as |Token|\n >\n <Token as |quickSelectTitle|>\n <div aria-hidden class=\"euiFormLabel\">\n {{quickSelectTitle}}\n </div>\n </Token>\n </EuiI18n>\n </EuiFlexItem>\n <EuiFlexItem @grow={{false}}>\n <EuiFlexGroup\n @alignItems=\"center\"\n @gutterSize=\"s\"\n @responsive={{false}}\n >\n <EuiFlexItem @grow={{false}}>\n <EuiI18n\n @token=\"euiQuickSelect.previousLabel\"\n @default=\"Previous time window\"\n as |Token|\n >\n <Token as |previousLabel|>\n <EuiToolTip @content={{previousLabel}}>\n <EuiButtonIcon\n aria-label={{previousLabel}}\n @iconType=\"arrowLeft\"\n {{on \"click\" this.stepBackward}}\n />\n </EuiToolTip>\n </Token>\n </EuiI18n>\n </EuiFlexItem>\n <EuiFlexItem @grow={{false}}>\n <EuiI18n\n @token=\"euiQuickSelect.nextLabel\"\n @default=\"Next time window\"\n as |Token|\n >\n <Token as |nextLabel|>\n <EuiToolTip @content={{nextLabel}}>\n <EuiButtonIcon\n aria-label={{nextLabel}}\n @iconType=\"arrowRight\"\n {{on \"click\" this.stepForward}}\n />\n </EuiToolTip>\n </Token>\n </EuiI18n>\n </EuiFlexItem>\n </EuiFlexGroup>\n </EuiFlexItem>\n </EuiFlexGroup>\n <EuiSpacer @size=\"s\" />\n <EuiFlexGroup @gutterSize=\"s\" @responsive={{false}}>\n <EuiFlexItem>\n <EuiI18n\n @token=\"euiQuickSelect.tenseLabel\"\n @default=\"Time tense\"\n as |Token|\n >\n <Token as |tenseLabel|>\n <EuiSelect\n @compressed={{true}}\n aria-label={{tenseLabel}}\n @value={{this.timeTense}}\n @options={{@timeOptions.timeTenseOptions}}\n {{on \"change\" (pick \"target.value\" (set this \"timeTense\"))}}\n />\n </Token>\n </EuiI18n>\n </EuiFlexItem>\n <EuiFlexItem>\n <EuiI18n\n @token=\"euiQuickSelect.valueLabel\"\n @default=\"Time value\"\n as |Token|\n >\n <Token as |valueLabel|>\n <EuiFieldNumber\n @compressed={{true}}\n aria-label={{valueLabel}}\n @value={{this.timeValue}}\n {{on \"input\" (pick \"target.value\" (set this \"timeValue\"))}}\n />\n </Token>\n </EuiI18n>\n </EuiFlexItem>\n <EuiFlexItem>\n <EuiI18n\n @token=\"euiQuickSelect.unitLabel\"\n @default=\"Time unit\"\n as |Token|\n >\n <Token as |unitLabel|>\n <EuiSelect\n @compressed={{true}}\n aria-label={{unitLabel}}\n @value={{this.timeUnits}}\n @options={{@timeOptions.timeUnitsOptions}}\n {{on \"change\" (pick \"target.value\" (set this \"timeUnits\"))}}\n />\n </Token>\n </EuiI18n>\n </EuiFlexItem>\n <EuiFlexItem @grow={{false}}>\n <EuiButton\n class=\"euiQuickSelect__applyButton\"\n @size=\"s\"\n @disabled={{lte this.timeValue 0}}\n {{on \"click\" this.applyQuickSelect}}\n >\n <EuiI18n\n @token=\"euiQuickSelect.applyButton\"\n @default=\"Apply\"\n as |Token|\n >\n <Token as |value|>\n {{value}}\n </Token>\n </EuiI18n>\n </EuiButton>\n </EuiFlexItem>\n </EuiFlexGroup>\n </fieldset>\n {{/let}}\n </template>\n}\n"],"names":["EuiQuickSelect","Component","g","prototype","tracked","i","void 0","constructor","owner","args","timeTense","timeTenseDefault","timeUnits","timeUnitsDefault","timeValue","timeValueDefault","parseTimeParts","start","end","prevQuickSelect","getBounds","startMoment","dateMath","parse","endMoment","roundUp","min","isValid","moment","subtract","max","applyQuickSelect","NEXT","applyTime","n","action","stepForward","diff","add","toISOString","keepPopoverOpen","stepBackward","setComponentTemplate","precompileTemplate","strictMode","scope","randomId","EuiFlexGroup","EuiFlexItem","EuiI18n","EuiToolTip","EuiButtonIcon","on","EuiSpacer","EuiSelect","pick","set","EuiFieldNumber","EuiButton","lte"],"mappings":"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"}
@@ -21,13 +21,13 @@ class EuiQuickSelectPopover extends Component {
21
21
  static {
22
22
  g(this.prototype, "euiI18n", [inject]);
23
23
  }
24
- #euiI18n = (i(this, "euiI18n"), undefined);
24
+ #euiI18n = (i(this, "euiI18n"), void 0);
25
25
  static {
26
26
  g(this.prototype, "isOpen", [tracked], function () {
27
27
  return false;
28
28
  });
29
29
  }
30
- #isOpen = (i(this, "isOpen"), undefined);
30
+ #isOpen = (i(this, "isOpen"), void 0);
31
31
  applyTime({
32
32
  start,
33
33
  end,
@@ -1 +1 @@
1
- {"version":3,"file":"eui-quick-select-popover.js","sources":["../../../src/components/eui-super-date-picker/eui-quick-select-popover.gts"],"sourcesContent":["import Component from '@glimmer/component';\nimport { tracked } from '@glimmer/tracking';\nimport { on } from '@ember/modifier';\nimport { action } from '@ember/object';\nimport { inject as service } from '@ember/service';\n\nimport set from 'ember-set-helper/helpers/set';\nimport { gt, not } from 'ember-truth-helpers';\n\nimport EuiButtonEmpty from '../eui-button-empty.gts';\nimport EuiHorizontalRule from '../eui-horizontal-rule.gts';\nimport EuiIcon from '../eui-icon.gts';\nimport EuiPopover from '../eui-popover.gts';\nimport EuiRecentlyUsed from '../eui-super-date-picker/eui-quick-select-popover/eui-recently-used.gts';\nimport EuiCommonlyUsedTimeRanges from './eui-quick-select-popover/eui-commonly-used-time-ranges.gts';\nimport EuiQuickSelect from './eui-quick-select-popover/eui-quick-select.gts';\nimport { useI18nTimeOptions } from './utils/time-options.ts';\n\nimport type EuiI18n from '../../services/eui-i18n';\nimport type { EuiRecentlyUsedSignature } from '../eui-super-date-picker/eui-quick-select-popover/eui-recently-used';\nimport type { EuiCommonlyUsedTimeRangesSignature } from './eui-quick-select-popover/eui-commonly-used-time-ranges';\nimport type { EuiQuickSelectSignature } from './eui-quick-select-popover/eui-quick-select';\nimport type { ApplyTime } from './types/global';\n\nexport interface EuiQuickSelectPopoverSignature {\n Args: {\n applyTime: ApplyTime;\n isDisabled?: boolean;\n commonlyUsedRanges: EuiCommonlyUsedTimeRangesSignature['Args']['commonlyUsedRanges'];\n recentlyUsedRanges?: EuiRecentlyUsedSignature['Args']['recentlyUsedRanges'];\n start: string;\n end: string;\n timeOptions: EuiQuickSelectSignature['Args']['timeOptions'];\n };\n}\n\nexport default class EuiQuickSelectPopover extends Component<EuiQuickSelectPopoverSignature> {\n @service declare euiI18n: EuiI18n\n @tracked isOpen = false;\n\n @action\n applyTime({\n start,\n end,\n keepPopoverOpen = false\n }: {\n start: string;\n end: string;\n quickSelect?: { timeTense: string; timeValue: number; timeUnits: string };\n keepPopoverOpen?: boolean;\n }) {\n this.args.applyTime({\n start,\n end\n });\n\n if (!keepPopoverOpen) {\n this.isOpen = false;\n }\n }\n\n get timeOptions() {\n return this.args.timeOptions || useI18nTimeOptions(this.euiI18n);\n }\n\n <template>\n <EuiPopover\n @isOpen={{this.isOpen}}\n @closePopover={{set this \"isOpen\" false}}\n @anchorPosition=\"downLeft\"\n @anchorClassName=\"euiQuickSelectPopover__anchor\"\n >\n <:button>\n <EuiButtonEmpty\n class=\"euiFormControlLayout__prepend\"\n @textClasses=\"euiQuickSelectPopover__buttonText\"\n @size=\"xs\"\n @iconType=\"arrowDown\"\n @iconSide=\"right\"\n @isDisabled={{@isDisabled}}\n {{on \"click\" (set this \"isOpen\" (not this.isOpen))}}\n >\n <EuiIcon @type=\"calendar\" />\n </EuiButtonEmpty>\n </:button>\n\n <:content>\n <div class=\"euiQuickSelectPopover__content\">\n <EuiQuickSelect\n @applyTime={{this.applyTime}}\n @start={{@start}}\n @end={{@end}}\n @timeOptions={{this.timeOptions}}\n />\n\n {{#if (gt @commonlyUsedRanges.length 0)}}\n <EuiHorizontalRule @margin=\"s\" />\n <EuiCommonlyUsedTimeRanges\n @applyTime={{this.applyTime}}\n @commonlyUsedRanges={{@commonlyUsedRanges}}\n />\n {{/if}}\n\n {{#if (gt @recentlyUsedRanges.length 0)}}\n <EuiHorizontalRule @margin=\"s\" />\n <EuiRecentlyUsed\n @applyTime={{this.applyTime}}\n @recentlyUsedRanges={{@recentlyUsedRanges}}\n />\n {{/if}}\n\n </div>\n </:content>\n </EuiPopover>\n </template>\n}\n"],"names":["EuiQuickSelectPopover","Component","g","prototype","service","i","void 0","tracked","applyTime","start","end","keepPopoverOpen","args","isOpen","n","action","timeOptions","useI18nTimeOptions","euiI18n","setComponentTemplate","precompileTemplate","strictMode","scope","EuiPopover","set","EuiButtonEmpty","on","not","EuiIcon","EuiQuickSelect","gt","EuiHorizontalRule","EuiCommonlyUsedTimeRanges","EuiRecentlyUsed"],"mappings":";;;;;;;;;;;;;;;;;;;AAoCe,MAAMA,8BAA8BC,SAAU,CAAA;AAAA,EAAA;IAAAC,CAAA,CAAA,IAAA,CAAAC,SAAA,EAAA,SAAA,EAAA,CAC1DC,MAAA,CAAA,CAAA;AAAA;AAAA,EAAA,QAAA,IAAAC,CAAA,CAAA,IAAA,EAAA,SAAA,CAAA,EAAAC,SAAA;AAAA,EAAA;IAAAJ,CAAA,CAAA,IAAA,CAAAC,SAAA,EAAA,QAAA,EAAA,CACAI,OAAA,CAAA,EAAA,YAAA;AAAA,MAAA,OAAiB,KAAM;AAAA,KAAA,CAAA;AAAA;AAAA,EAAA,OAAA,IAAAF,CAAA,CAAA,IAAA,EAAA,QAAA,CAAA,EAAAC,SAAA;AAGxBE,EAAAA,SAAAA,CAAU;IACRC,KAAK;IACLC,GAAG;AACHC,IAAAA,kBAAkB;GAMnB,EAAE;AACD,IAAA,IAAI,CAACC,IAAI,CAACJ,SAAS,CAAC;MAClBC,KAAA;AACAC,MAAAA;AACF,KAAA,CAAA;IAEA,IAAI,CAACC,eAAiB,EAAA;MACpB,IAAI,CAACE,MAAM,GAAG,KAAA;AAChB;AACF;AAAA,EAAA;IAAAC,CAAA,CAAA,IAAA,CAAAX,SAAA,EAAA,WAAA,EAAA,CAnBCY,MAAA,CAAA,CAAA;AAAA;EAqBD,IAAIC,WAAcA,GAAA;IAChB,OAAO,IAAI,CAACJ,IAAI,CAACI,WAAW,IAAIC,kBAAA,CAAmB,IAAI,CAACC,OAAO,CAAA;AACjE;AAEA,EAAA;IAAAC,oBAAA,CAAAC,kBAAA,CAiDA,+uCAAA,EAAA;MAAAC,UAAA,EAAA,IAAA;AAAAC,MAAAA,KAAA,EAAAA,OAAA;oBAAAC,mBAAA;QAAAC,GAAA;QAAAC,cAAA;QAAAC,EAAA;QAAAC,GAAA;QAAAC,OAAA;QAAAC,cAAA;QAAAC,EAAA;QAAAC,iBAAA;QAAAC,yBAAA;AAAAC,QAAAA;AAAA,OAAA;KAAU,CAAA,EAAV,IAAW,CAAA;AAAD;AACZ;;;;"}
1
+ {"version":3,"file":"eui-quick-select-popover.js","sources":["../../../src/components/eui-super-date-picker/eui-quick-select-popover.gts"],"sourcesContent":["import Component from '@glimmer/component';\nimport { tracked } from '@glimmer/tracking';\nimport { on } from '@ember/modifier';\nimport { action } from '@ember/object';\nimport { inject as service } from '@ember/service';\n\nimport set from 'ember-set-helper/helpers/set';\nimport { gt, not } from 'ember-truth-helpers';\n\nimport EuiButtonEmpty from '../eui-button-empty.gts';\nimport EuiHorizontalRule from '../eui-horizontal-rule.gts';\nimport EuiIcon from '../eui-icon.gts';\nimport EuiPopover from '../eui-popover.gts';\nimport EuiRecentlyUsed from '../eui-super-date-picker/eui-quick-select-popover/eui-recently-used.gts';\nimport EuiCommonlyUsedTimeRanges from './eui-quick-select-popover/eui-commonly-used-time-ranges.gts';\nimport EuiQuickSelect from './eui-quick-select-popover/eui-quick-select.gts';\nimport { useI18nTimeOptions } from './utils/time-options.ts';\n\nimport type EuiI18n from '../../services/eui-i18n';\nimport type { EuiRecentlyUsedSignature } from '../eui-super-date-picker/eui-quick-select-popover/eui-recently-used';\nimport type { EuiCommonlyUsedTimeRangesSignature } from './eui-quick-select-popover/eui-commonly-used-time-ranges';\nimport type { EuiQuickSelectSignature } from './eui-quick-select-popover/eui-quick-select';\nimport type { ApplyTime } from './types/global';\n\nexport interface EuiQuickSelectPopoverSignature {\n Args: {\n applyTime: ApplyTime;\n isDisabled?: boolean;\n commonlyUsedRanges: EuiCommonlyUsedTimeRangesSignature['Args']['commonlyUsedRanges'];\n recentlyUsedRanges?: EuiRecentlyUsedSignature['Args']['recentlyUsedRanges'];\n start: string;\n end: string;\n timeOptions: EuiQuickSelectSignature['Args']['timeOptions'];\n };\n}\n\nexport default class EuiQuickSelectPopover extends Component<EuiQuickSelectPopoverSignature> {\n @service declare euiI18n: EuiI18n\n @tracked isOpen = false;\n\n @action\n applyTime({\n start,\n end,\n keepPopoverOpen = false\n }: {\n start: string;\n end: string;\n quickSelect?: { timeTense: string; timeValue: number; timeUnits: string };\n keepPopoverOpen?: boolean;\n }) {\n this.args.applyTime({\n start,\n end\n });\n\n if (!keepPopoverOpen) {\n this.isOpen = false;\n }\n }\n\n get timeOptions() {\n return this.args.timeOptions || useI18nTimeOptions(this.euiI18n);\n }\n\n <template>\n <EuiPopover\n @isOpen={{this.isOpen}}\n @closePopover={{set this \"isOpen\" false}}\n @anchorPosition=\"downLeft\"\n @anchorClassName=\"euiQuickSelectPopover__anchor\"\n >\n <:button>\n <EuiButtonEmpty\n class=\"euiFormControlLayout__prepend\"\n @textClasses=\"euiQuickSelectPopover__buttonText\"\n @size=\"xs\"\n @iconType=\"arrowDown\"\n @iconSide=\"right\"\n @isDisabled={{@isDisabled}}\n {{on \"click\" (set this \"isOpen\" (not this.isOpen))}}\n >\n <EuiIcon @type=\"calendar\" />\n </EuiButtonEmpty>\n </:button>\n\n <:content>\n <div class=\"euiQuickSelectPopover__content\">\n <EuiQuickSelect\n @applyTime={{this.applyTime}}\n @start={{@start}}\n @end={{@end}}\n @timeOptions={{this.timeOptions}}\n />\n\n {{#if (gt @commonlyUsedRanges.length 0)}}\n <EuiHorizontalRule @margin=\"s\" />\n <EuiCommonlyUsedTimeRanges\n @applyTime={{this.applyTime}}\n @commonlyUsedRanges={{@commonlyUsedRanges}}\n />\n {{/if}}\n\n {{#if (gt @recentlyUsedRanges.length 0)}}\n <EuiHorizontalRule @margin=\"s\" />\n <EuiRecentlyUsed\n @applyTime={{this.applyTime}}\n @recentlyUsedRanges={{@recentlyUsedRanges}}\n />\n {{/if}}\n\n </div>\n </:content>\n </EuiPopover>\n </template>\n}\n"],"names":["EuiQuickSelectPopover","Component","g","prototype","service","i","void 0","tracked","applyTime","start","end","keepPopoverOpen","args","isOpen","n","action","timeOptions","useI18nTimeOptions","euiI18n","setComponentTemplate","precompileTemplate","strictMode","scope","EuiPopover","set","EuiButtonEmpty","on","not","EuiIcon","EuiQuickSelect","gt","EuiHorizontalRule","EuiCommonlyUsedTimeRanges","EuiRecentlyUsed"],"mappings":";;;;;;;;;;;;;;;;;;;AAoCe,MAAMA,8BAA8BC,SAAU,CAAA;AAAA,EAAA;IAAAC,CAAA,CAAA,IAAA,CAAAC,SAAA,EAAA,SAAA,EAAA,CAC1DC,MAAA,CAAA,CAAA;AAAA;AAAA,EAAA,QAAA,IAAAC,CAAA,CAAA,IAAA,EAAA,SAAA,CAAA,EAAAC,MAAA;AAAA,EAAA;IAAAJ,CAAA,CAAA,IAAA,CAAAC,SAAA,EAAA,QAAA,EAAA,CACAI,OAAA,CAAA,EAAA,YAAA;AAAA,MAAA,OAAiB,KAAM;AAAA,KAAA,CAAA;AAAA;AAAA,EAAA,OAAA,IAAAF,CAAA,CAAA,IAAA,EAAA,QAAA,CAAA,EAAAC,MAAA;AAGxBE,EAAAA,SAAAA,CAAU;IACRC,KAAK;IACLC,GAAG;AACHC,IAAAA,kBAAkB;GAMnB,EAAE;AACD,IAAA,IAAI,CAACC,IAAI,CAACJ,SAAS,CAAC;MAClBC,KAAA;AACAC,MAAAA;AACF,KAAA,CAAA;IAEA,IAAI,CAACC,eAAiB,EAAA;MACpB,IAAI,CAACE,MAAM,GAAG,KAAA;AAChB;AACF;AAAA,EAAA;IAAAC,CAAA,CAAA,IAAA,CAAAX,SAAA,EAAA,WAAA,EAAA,CAnBCY,MAAA,CAAA,CAAA;AAAA;EAqBD,IAAIC,WAAcA,GAAA;IAChB,OAAO,IAAI,CAACJ,IAAI,CAACI,WAAW,IAAIC,kBAAA,CAAmB,IAAI,CAACC,OAAO,CAAA;AACjE;AAEA,EAAA;IAAAC,oBAAA,CAAAC,kBAAA,CAiDA,+uCAAA,EAAA;MAAAC,UAAA,EAAA,IAAA;AAAAC,MAAAA,KAAA,EAAAA,OAAA;oBAAAC,mBAAA;QAAAC,GAAA;QAAAC,cAAA;QAAAC,EAAA;QAAAC,GAAA;QAAAC,OAAA;QAAAC,cAAA;QAAAC,EAAA;QAAAC,iBAAA;QAAAC,yBAAA;AAAAC,QAAAA;AAAA,OAAA;KAAU,CAAA,EAAV,IAAW,CAAA;AAAD;AACZ;;;;"}
@@ -28,5 +28,5 @@ function isOutOfBounds(day, {
28
28
  return minDate && day.isBefore(minDate, 'day') || maxDate && day.isAfter(maxDate, 'day');
29
29
  }
30
30
 
31
- export { isDayDisabled, isOutOfBounds, isSameDay, isSameTime };
31
+ export { isOutOfBounds as default, isDayDisabled, isOutOfBounds, isSameDay, isSameTime };
32
32
  //# sourceMappingURL=date-utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"date-utils.js","sources":["../../../../src/components/eui-super-date-picker/utils/date-utils.ts"],"sourcesContent":["import type { Moment } from 'moment';\n\nexport function isSameDay(moment1: Moment, moment2: Moment) {\n if (moment1 && moment2) {\n return moment1.isSame(moment2, 'day');\n } else {\n return !moment1 && !moment2;\n }\n}\n\nexport function isSameTime(moment1: Moment, moment2: Moment) {\n if (moment1 && moment2) {\n return moment1.isSame(moment2, 'second');\n } else {\n return !moment1 && !moment2;\n }\n}\n\nexport function isDayDisabled(\n day: Moment,\n {\n minDate,\n maxDate,\n excludeDates,\n includeDates,\n filterDate\n }: {\n minDate?: Moment;\n maxDate?: Moment;\n excludeDates?: Moment[];\n includeDates?: Moment[];\n filterDate?: (day: Moment) => boolean;\n } = {}\n) {\n return (\n (minDate && day.isBefore(minDate, 'day')) ||\n (maxDate && day.isAfter(maxDate, 'day')) ||\n (excludeDates &&\n excludeDates.some((excludeDate: Moment) =>\n isSameDay(day, excludeDate)\n )) ||\n (includeDates &&\n !includeDates.some((includeDate: Moment) =>\n isSameDay(day, includeDate)\n )) ||\n (filterDate && !filterDate(day.clone())) ||\n false\n );\n}\n\nexport function isOutOfBounds(\n day: Moment,\n { minDate, maxDate }: { minDate?: Moment; maxDate?: Moment } = {}\n) {\n return (\n (minDate && day.isBefore(minDate, 'day')) ||\n (maxDate && day.isAfter(maxDate, 'day'))\n );\n}\n"],"names":["isSameDay","moment1","moment2","isSame","isSameTime","isDayDisabled","day","minDate","maxDate","excludeDates","includeDates","filterDate","isBefore","isAfter","some","excludeDate","includeDate","clone","isOutOfBounds"],"mappings":"AAEO,SAASA,SAASA,CAACC,OAAe,EAAEC,OAAe,EAAE;EAC1D,IAAID,OAAO,IAAIC,OAAO,EAAE;AACtB,IAAA,OAAOD,OAAO,CAACE,MAAM,CAACD,OAAO,EAAE,KAAK,CAAC;AACvC,GAAC,MAAM;AACL,IAAA,OAAO,CAACD,OAAO,IAAI,CAACC,OAAO;AAC7B;AACF;AAEO,SAASE,UAAUA,CAACH,OAAe,EAAEC,OAAe,EAAE;EAC3D,IAAID,OAAO,IAAIC,OAAO,EAAE;AACtB,IAAA,OAAOD,OAAO,CAACE,MAAM,CAACD,OAAO,EAAE,QAAQ,CAAC;AAC1C,GAAC,MAAM;AACL,IAAA,OAAO,CAACD,OAAO,IAAI,CAACC,OAAO;AAC7B;AACF;AAEO,SAASG,aAAaA,CAC3BC,GAAW,EACX;EACEC,OAAO;EACPC,OAAO;EACPC,YAAY;EACZC,YAAY;AACZC,EAAAA;AAOF,CAAC,GAAG,EAAE,EACN;AACA,EAAA,OACGJ,OAAO,IAAID,GAAG,CAACM,QAAQ,CAACL,OAAO,EAAE,KAAK,CAAC,IACvCC,OAAO,IAAIF,GAAG,CAACO,OAAO,CAACL,OAAO,EAAE,KAAK,CAAE,IACvCC,YAAY,IACXA,YAAY,CAACK,IAAI,CAAEC,WAAmB,IACpCf,SAAS,CAACM,GAAG,EAAES,WAAW,CAC5B,CAAE,IACHL,YAAY,IACX,CAACA,YAAY,CAACI,IAAI,CAAEE,WAAmB,IACrChB,SAAS,CAACM,GAAG,EAAEU,WAAW,CAC5B,CAAE,IACHL,UAAU,IAAI,CAACA,UAAU,CAACL,GAAG,CAACW,KAAK,EAAE,CAAE,IACxC,KAAK;AAET;AAEO,SAASC,aAAaA,CAC3BZ,GAAW,EACX;EAAEC,OAAO;AAAEC,EAAAA;AAAgD,CAAC,GAAG,EAAE,EACjE;EACA,OACGD,OAAO,IAAID,GAAG,CAACM,QAAQ,CAACL,OAAO,EAAE,KAAK,CAAC,IACvCC,OAAO,IAAIF,GAAG,CAACO,OAAO,CAACL,OAAO,EAAE,KAAK,CAAE;AAE5C;;;;"}
1
+ {"version":3,"file":"date-utils.js","sources":["../../../../src/components/eui-super-date-picker/utils/date-utils.ts"],"sourcesContent":["import type { Moment } from 'moment';\n\nexport function isSameDay(moment1: Moment, moment2: Moment) {\n if (moment1 && moment2) {\n return moment1.isSame(moment2, 'day');\n } else {\n return !moment1 && !moment2;\n }\n}\n\nexport function isSameTime(moment1: Moment, moment2: Moment) {\n if (moment1 && moment2) {\n return moment1.isSame(moment2, 'second');\n } else {\n return !moment1 && !moment2;\n }\n}\n\nexport function isDayDisabled(\n day: Moment,\n {\n minDate,\n maxDate,\n excludeDates,\n includeDates,\n filterDate\n }: {\n minDate?: Moment;\n maxDate?: Moment;\n excludeDates?: Moment[];\n includeDates?: Moment[];\n filterDate?: (day: Moment) => boolean;\n } = {}\n) {\n return (\n (minDate && day.isBefore(minDate, 'day')) ||\n (maxDate && day.isAfter(maxDate, 'day')) ||\n (excludeDates &&\n excludeDates.some((excludeDate: Moment) =>\n isSameDay(day, excludeDate)\n )) ||\n (includeDates &&\n !includeDates.some((includeDate: Moment) =>\n isSameDay(day, includeDate)\n )) ||\n (filterDate && !filterDate(day.clone())) ||\n false\n );\n}\n\nexport function isOutOfBounds(\n day: Moment,\n { minDate, maxDate }: { minDate?: Moment; maxDate?: Moment } = {}\n) {\n return (\n (minDate && day.isBefore(minDate, 'day')) ||\n (maxDate && day.isAfter(maxDate, 'day'))\n );\n}\n\nexport default isOutOfBounds;\n"],"names":["isSameDay","moment1","moment2","isSame","isSameTime","isDayDisabled","day","minDate","maxDate","excludeDates","includeDates","filterDate","isBefore","isAfter","some","excludeDate","includeDate","clone","isOutOfBounds"],"mappings":"AAEO,SAASA,SAASA,CAACC,OAAe,EAAEC,OAAe,EAAE;EAC1D,IAAID,OAAO,IAAIC,OAAO,EAAE;AACtB,IAAA,OAAOD,OAAO,CAACE,MAAM,CAACD,OAAO,EAAE,KAAK,CAAC;AACvC,GAAC,MAAM;AACL,IAAA,OAAO,CAACD,OAAO,IAAI,CAACC,OAAO;AAC7B;AACF;AAEO,SAASE,UAAUA,CAACH,OAAe,EAAEC,OAAe,EAAE;EAC3D,IAAID,OAAO,IAAIC,OAAO,EAAE;AACtB,IAAA,OAAOD,OAAO,CAACE,MAAM,CAACD,OAAO,EAAE,QAAQ,CAAC;AAC1C,GAAC,MAAM;AACL,IAAA,OAAO,CAACD,OAAO,IAAI,CAACC,OAAO;AAC7B;AACF;AAEO,SAASG,aAAaA,CAC3BC,GAAW,EACX;EACEC,OAAO;EACPC,OAAO;EACPC,YAAY;EACZC,YAAY;AACZC,EAAAA;AAOF,CAAC,GAAG,EAAE,EACN;AACA,EAAA,OACGJ,OAAO,IAAID,GAAG,CAACM,QAAQ,CAACL,OAAO,EAAE,KAAK,CAAC,IACvCC,OAAO,IAAIF,GAAG,CAACO,OAAO,CAACL,OAAO,EAAE,KAAK,CAAE,IACvCC,YAAY,IACXA,YAAY,CAACK,IAAI,CAAEC,WAAmB,IACpCf,SAAS,CAACM,GAAG,EAAES,WAAW,CAC5B,CAAE,IACHL,YAAY,IACX,CAACA,YAAY,CAACI,IAAI,CAAEE,WAAmB,IACrChB,SAAS,CAACM,GAAG,EAAEU,WAAW,CAC5B,CAAE,IACHL,UAAU,IAAI,CAACA,UAAU,CAACL,GAAG,CAACW,KAAK,EAAE,CAAE,IACxC,KAAK;AAET;AAEO,SAASC,aAAaA,CAC3BZ,GAAW,EACX;EAAEC,OAAO;AAAEC,EAAAA;AAAgD,CAAC,GAAG,EAAE,EACjE;EACA,OACGD,OAAO,IAAID,GAAG,CAACM,QAAQ,CAACL,OAAO,EAAE,KAAK,CAAC,IACvCC,OAAO,IAAIF,GAAG,CAACO,OAAO,CAACL,OAAO,EAAE,KAAK,CAAE;AAE5C;;;;"}
@@ -128,5 +128,5 @@ function getDateMode(value) {
128
128
  return DATE_MODES.ABSOLUTE;
129
129
  }
130
130
 
131
- export { DATE_MODES, INVALID_DATE, ISO_FORMAT, ROUND_DELIMETER, getDateMode, isRangeInvalid, parseRelativeParts, relativeUnitsFromLargestToSmallest, toAbsoluteString, toRelativeStringFromParts, useFormatTimeString };
131
+ export { DATE_MODES, INVALID_DATE, ISO_FORMAT, ROUND_DELIMETER, useFormatTimeString as default, getDateMode, isRangeInvalid, parseRelativeParts, relativeUnitsFromLargestToSmallest, toAbsoluteString, toRelativeStringFromParts, useFormatTimeString };
132
132
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../src/components/eui-super-date-picker/utils/index.ts"],"sourcesContent":["/*\n * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one\n * or more contributor license agreements. Licensed under the Elastic License\n * 2.0 and the Server Side Public License, v 1; you may not use this file except\n * in compliance with, at your election, the Elastic License 2.0 or the Server\n * Side Public License, v 1.\n */\n\nimport dateMath from '@elastic/datemath';\nimport moment from 'moment';\n\nimport type EuiI18n from '../../../services/eui-i18n';\nimport type { RelativeParts, ShortDate } from '../types/global';\nimport type { LocaleSpecifier } from 'moment';\n\n/**\n * Reusable format time string util\n */\nexport const ISO_FORMAT = 'YYYY-MM-DDTHH:mm:ss.SSSZ';\nexport const INVALID_DATE = 'invalid_date';\nexport const ROUND_DELIMETER = '/';\nexport const relativeUnitsFromLargestToSmallest = [\n 'y',\n 'M',\n 'w',\n 'd',\n 'h',\n 'm',\n 's'\n];\nexport type AbsoluteDateMode = 'absolute';\nexport type RelativeDateMode = 'relative';\nexport type NowDateMode = 'now';\nexport type DateMode = AbsoluteDateMode | RelativeDateMode | NowDateMode;\nexport const DATE_MODES: {\n ABSOLUTE: AbsoluteDateMode;\n RELATIVE: RelativeDateMode;\n NOW: NowDateMode;\n} = {\n ABSOLUTE: 'absolute',\n RELATIVE: 'relative',\n NOW: 'now'\n};\n\nexport const useFormatTimeString = (\n timeString: string,\n dateFormat: string,\n roundUp = false,\n locale: LocaleSpecifier = 'en',\n euiI18nService: EuiI18n\n): string => {\n let lookupToken = euiI18nService.lookupToken;\n\n // i18n'd strings\n const nowDisplay = lookupToken('euiPrettyDuration.now', 'now');\n const invalidDateDisplay = lookupToken(\n 'euiPrettyDuration.invalid',\n 'Invalid date'\n );\n\n const timeAsMoment = moment(timeString, ISO_FORMAT, true);\n\n if (timeAsMoment.isValid()) {\n return timeAsMoment.locale(locale).format(dateFormat);\n }\n\n if (timeString === 'now') {\n return nowDisplay as string;\n }\n\n const tryParse = dateMath.parse(timeString, { roundUp: roundUp });\n\n if (!moment(tryParse).isValid()) {\n return invalidDateDisplay as string;\n }\n\n if (moment.isMoment(tryParse)) {\n return `~ ${tryParse.locale(locale).fromNow()}`;\n }\n\n return timeString;\n};\n\nexport function toAbsoluteString(value: string, roundUp: boolean = false) {\n const valueAsMoment = dateMath.parse(value, { roundUp });\n\n if (!valueAsMoment) {\n return value;\n }\n\n if (!moment(valueAsMoment).isValid()) {\n return INVALID_DATE;\n }\n\n return valueAsMoment.toISOString();\n}\n\nexport function parseRelativeParts(value: string): {\n count: number;\n unit: string;\n round: boolean;\n roundUnit?: string;\n} {\n const matches =\n typeof value === 'string' &&\n value.match(/now(([-+])([0-9]+)([smhdwMy])(\\/[smhdwMy])?)?/);\n\n const operator = matches && matches[2];\n const count = matches && matches[3];\n const unit = matches && matches[4];\n const roundBy = matches && matches[5];\n\n if (count && unit) {\n const isRounded = roundBy ? true : false;\n const roundUnit =\n isRounded && roundBy ? roundBy.replace(ROUND_DELIMETER, '') : undefined;\n\n return {\n count: parseInt(count, 10),\n unit: operator === '+' ? `${unit}+` : unit,\n round: isRounded,\n ...(roundUnit ? { roundUnit } : {})\n };\n }\n\n const results = { count: 0, unit: 's', round: false };\n const duration = moment.duration(moment().diff(dateMath.parse(value)));\n let unitOp = '';\n\n for (let i = 0; i < relativeUnitsFromLargestToSmallest.length; i++) {\n // @ts-expect-error this is a string with the accepted time units\n const asRelative = duration.as(relativeUnitsFromLargestToSmallest[i]);\n\n if (asRelative < 0) unitOp = '+';\n\n if (Math.abs(asRelative) > 1) {\n results.count = Math.round(Math.abs(asRelative));\n results.unit = relativeUnitsFromLargestToSmallest[i] + unitOp;\n results.round = false;\n\n break;\n }\n }\n\n return results;\n}\n\nexport function toRelativeStringFromParts(relativeParts: RelativeParts) {\n const count = relativeParts.count ?? 0;\n const isRounded = relativeParts.round ?? false;\n\n if (count === 0 && !isRounded) {\n return 'now';\n }\n\n const matches = (relativeParts.unit ?? 's').match(/([smhdwMy])(\\+)?/);\n const unit = matches?.[1];\n const operator = matches && matches[2] ? matches[2] : '-';\n const round = isRounded ? `${ROUND_DELIMETER}${unit}` : '';\n\n return `now${operator}${count}${unit}${round}`;\n}\n\nexport function isRangeInvalid(start: ShortDate, end: ShortDate) {\n if (start === 'now' && end === 'now') {\n return true;\n }\n\n const startMoment = dateMath.parse(start);\n const endMoment = dateMath.parse(end, { roundUp: true });\n\n const isInvalid =\n !startMoment ||\n !endMoment ||\n !startMoment.isValid() ||\n !endMoment.isValid() ||\n !moment(startMoment).isValid() ||\n !moment(endMoment).isValid() ||\n startMoment.isAfter(endMoment);\n\n return isInvalid;\n}\n\nexport function getDateMode(value: ShortDate) {\n if (value === 'now') {\n return DATE_MODES.NOW;\n }\n\n if (value?.includes?.('now')) {\n return DATE_MODES.RELATIVE;\n }\n\n return DATE_MODES.ABSOLUTE;\n}\n"],"names":["ISO_FORMAT","INVALID_DATE","ROUND_DELIMETER","relativeUnitsFromLargestToSmallest","DATE_MODES","ABSOLUTE","RELATIVE","NOW","useFormatTimeString","timeString","dateFormat","roundUp","locale","euiI18nService","lookupToken","nowDisplay","invalidDateDisplay","timeAsMoment","moment","isValid","format","tryParse","dateMath","parse","isMoment","fromNow","toAbsoluteString","value","valueAsMoment","toISOString","parseRelativeParts","matches","match","operator","count","unit","roundBy","isRounded","roundUnit","replace","undefined","parseInt","round","results","duration","diff","unitOp","i","length","asRelative","as","Math","abs","toRelativeStringFromParts","relativeParts","isRangeInvalid","start","end","startMoment","endMoment","isInvalid","isAfter","getDateMode","includes"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../../../src/components/eui-super-date-picker/utils/index.ts"],"sourcesContent":["/*\n * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one\n * or more contributor license agreements. Licensed under the Elastic License\n * 2.0 and the Server Side Public License, v 1; you may not use this file except\n * in compliance with, at your election, the Elastic License 2.0 or the Server\n * Side Public License, v 1.\n */\n\nimport dateMath from '@elastic/datemath';\nimport moment from 'moment';\n\nimport type EuiI18n from '../../../services/eui-i18n';\nimport type { RelativeParts, ShortDate } from '../types/global';\nimport type { LocaleSpecifier } from 'moment';\n\n/**\n * Reusable format time string util\n */\nexport const ISO_FORMAT = 'YYYY-MM-DDTHH:mm:ss.SSSZ';\nexport const INVALID_DATE = 'invalid_date';\nexport const ROUND_DELIMETER = '/';\nexport const relativeUnitsFromLargestToSmallest = [\n 'y',\n 'M',\n 'w',\n 'd',\n 'h',\n 'm',\n 's'\n];\nexport type AbsoluteDateMode = 'absolute';\nexport type RelativeDateMode = 'relative';\nexport type NowDateMode = 'now';\nexport type DateMode = AbsoluteDateMode | RelativeDateMode | NowDateMode;\nexport const DATE_MODES: {\n ABSOLUTE: AbsoluteDateMode;\n RELATIVE: RelativeDateMode;\n NOW: NowDateMode;\n} = {\n ABSOLUTE: 'absolute',\n RELATIVE: 'relative',\n NOW: 'now'\n};\n\nexport const useFormatTimeString = (\n timeString: string,\n dateFormat: string,\n roundUp = false,\n locale: LocaleSpecifier = 'en',\n euiI18nService: EuiI18n\n): string => {\n let lookupToken = euiI18nService.lookupToken;\n\n // i18n'd strings\n const nowDisplay = lookupToken('euiPrettyDuration.now', 'now');\n const invalidDateDisplay = lookupToken(\n 'euiPrettyDuration.invalid',\n 'Invalid date'\n );\n\n const timeAsMoment = moment(timeString, ISO_FORMAT, true);\n\n if (timeAsMoment.isValid()) {\n return timeAsMoment.locale(locale).format(dateFormat);\n }\n\n if (timeString === 'now') {\n return nowDisplay as string;\n }\n\n const tryParse = dateMath.parse(timeString, { roundUp: roundUp });\n\n if (!moment(tryParse).isValid()) {\n return invalidDateDisplay as string;\n }\n\n if (moment.isMoment(tryParse)) {\n return `~ ${tryParse.locale(locale).fromNow()}`;\n }\n\n return timeString;\n};\n\nexport function toAbsoluteString(value: string, roundUp: boolean = false) {\n const valueAsMoment = dateMath.parse(value, { roundUp });\n\n if (!valueAsMoment) {\n return value;\n }\n\n if (!moment(valueAsMoment).isValid()) {\n return INVALID_DATE;\n }\n\n return valueAsMoment.toISOString();\n}\n\nexport function parseRelativeParts(value: string): {\n count: number;\n unit: string;\n round: boolean;\n roundUnit?: string;\n} {\n const matches =\n typeof value === 'string' &&\n value.match(/now(([-+])([0-9]+)([smhdwMy])(\\/[smhdwMy])?)?/);\n\n const operator = matches && matches[2];\n const count = matches && matches[3];\n const unit = matches && matches[4];\n const roundBy = matches && matches[5];\n\n if (count && unit) {\n const isRounded = roundBy ? true : false;\n const roundUnit =\n isRounded && roundBy ? roundBy.replace(ROUND_DELIMETER, '') : undefined;\n\n return {\n count: parseInt(count, 10),\n unit: operator === '+' ? `${unit}+` : unit,\n round: isRounded,\n ...(roundUnit ? { roundUnit } : {})\n };\n }\n\n const results = { count: 0, unit: 's', round: false };\n const duration = moment.duration(moment().diff(dateMath.parse(value)));\n let unitOp = '';\n\n for (let i = 0; i < relativeUnitsFromLargestToSmallest.length; i++) {\n // @ts-expect-error this is a string with the accepted time units\n const asRelative = duration.as(relativeUnitsFromLargestToSmallest[i]);\n\n if (asRelative < 0) unitOp = '+';\n\n if (Math.abs(asRelative) > 1) {\n results.count = Math.round(Math.abs(asRelative));\n results.unit = relativeUnitsFromLargestToSmallest[i] + unitOp;\n results.round = false;\n\n break;\n }\n }\n\n return results;\n}\n\nexport function toRelativeStringFromParts(relativeParts: RelativeParts) {\n const count = relativeParts.count ?? 0;\n const isRounded = relativeParts.round ?? false;\n\n if (count === 0 && !isRounded) {\n return 'now';\n }\n\n const matches = (relativeParts.unit ?? 's').match(/([smhdwMy])(\\+)?/);\n const unit = matches?.[1];\n const operator = matches && matches[2] ? matches[2] : '-';\n const round = isRounded ? `${ROUND_DELIMETER}${unit}` : '';\n\n return `now${operator}${count}${unit}${round}`;\n}\n\nexport function isRangeInvalid(start: ShortDate, end: ShortDate) {\n if (start === 'now' && end === 'now') {\n return true;\n }\n\n const startMoment = dateMath.parse(start);\n const endMoment = dateMath.parse(end, { roundUp: true });\n\n const isInvalid =\n !startMoment ||\n !endMoment ||\n !startMoment.isValid() ||\n !endMoment.isValid() ||\n !moment(startMoment).isValid() ||\n !moment(endMoment).isValid() ||\n startMoment.isAfter(endMoment);\n\n return isInvalid;\n}\n\nexport function getDateMode(value: ShortDate) {\n if (value === 'now') {\n return DATE_MODES.NOW;\n }\n\n if (value?.includes?.('now')) {\n return DATE_MODES.RELATIVE;\n }\n\n return DATE_MODES.ABSOLUTE;\n}\n\nexport default useFormatTimeString;\n"],"names":["ISO_FORMAT","INVALID_DATE","ROUND_DELIMETER","relativeUnitsFromLargestToSmallest","DATE_MODES","ABSOLUTE","RELATIVE","NOW","useFormatTimeString","timeString","dateFormat","roundUp","locale","euiI18nService","lookupToken","nowDisplay","invalidDateDisplay","timeAsMoment","moment","isValid","format","tryParse","dateMath","parse","isMoment","fromNow","toAbsoluteString","value","valueAsMoment","toISOString","parseRelativeParts","matches","match","operator","count","unit","roundBy","isRounded","roundUnit","replace","undefined","parseInt","round","results","duration","diff","unitOp","i","length","asRelative","as","Math","abs","toRelativeStringFromParts","relativeParts","isRangeInvalid","start","end","startMoment","endMoment","isInvalid","isAfter","getDateMode","includes"],"mappings":"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"}
@@ -129,5 +129,5 @@ const showPrettyDuration = (timeFrom, timeTo, quickRanges) => {
129
129
  return isRelativeToNow(timeFrom, timeTo);
130
130
  };
131
131
 
132
- export { showPrettyDuration, useRelativeDurationI18n };
132
+ export { useRelativeDurationI18n as default, showPrettyDuration, useRelativeDurationI18n };
133
133
  //# sourceMappingURL=pretty-duration.js.map