@elastic/eui 77.0.0 → 77.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (312) hide show
  1. package/dist/eui_theme_dark.css +22 -51
  2. package/dist/eui_theme_dark.min.css +1 -1
  3. package/dist/eui_theme_light.css +22 -51
  4. package/dist/eui_theme_light.min.css +1 -1
  5. package/es/components/accordion/accordion.a11y.js +3 -1
  6. package/es/components/accordion/accordion.js +4 -2
  7. package/es/components/basic_table/table.a11y.js +3 -1
  8. package/es/components/breadcrumbs/breadcrumbs.a11y.js +3 -1
  9. package/es/components/card/card.a11y.js +3 -1
  10. package/es/components/color_picker/color_picker.a11y.js +3 -1
  11. package/es/components/combo_box/combo_box.a11y.js +3 -1
  12. package/es/components/combo_box/combo_box.js +2 -21
  13. package/es/components/combo_box/combo_box_input/combo_box_input.js +66 -36
  14. package/es/components/combo_box/combo_box_options_list/combo_box_options_list.js +1 -1
  15. package/es/components/context_menu/context_menu_panel.a11y.js +3 -1
  16. package/es/components/control_bar/control_bar.a11y.js +3 -1
  17. package/es/components/copy/copy.a11y.js +6 -5
  18. package/es/components/datagrid/data_grid.a11y.js +3 -1
  19. package/es/components/date_picker/date_picker.a11y.js +3 -1
  20. package/es/components/date_picker/date_picker.js +148 -155
  21. package/es/components/date_picker/date_picker_range.js +2 -2
  22. package/es/components/date_picker/super_date_picker/super_date_picker.a11y.js +3 -1
  23. package/es/components/delay_hide/delay_hide.a11y.js +9 -9
  24. package/es/components/delay_render/delay_render.a11y.js +9 -9
  25. package/es/components/drag_and_drop/drag_and_drop.a11y.js +3 -2
  26. package/es/components/empty_prompt/empty_prompt.a11y.js +8 -14
  27. package/es/components/error_boundary/error_boundary.a11y.js +3 -1
  28. package/es/components/expression/expression.a11y.js +3 -1
  29. package/es/components/filter_group/filter_group.a11y.js +4 -3
  30. package/es/components/flyout/flyout.a11y.js +3 -1
  31. package/es/components/focus_trap/focus_trap.a11y.js +3 -1
  32. package/es/components/form/checkbox/checkbox_group.a11y.js +3 -1
  33. package/es/components/form/file_picker/file_picker.js +4 -2
  34. package/es/components/form/radio/radio_group.a11y.js +4 -5
  35. package/es/components/form/range/range.a11y.js +3 -1
  36. package/es/components/form/switch/switch.a11y.js +4 -5
  37. package/es/components/form/text_area/text_area.js +11 -3
  38. package/es/components/form/validatable_control/index.js +1 -1
  39. package/es/components/form/validatable_control/validatable_control.js +49 -13
  40. package/es/components/header/header.a11y.js +3 -1
  41. package/es/components/icon/icon_ML.a11y.js +3 -1
  42. package/es/components/icon/icon_apps.a11y.js +3 -1
  43. package/es/components/icon/icon_editor.a11y.js +3 -1
  44. package/es/components/icon/icon_elastic.a11y.js +3 -1
  45. package/es/components/icon/icon_glyphs.a11y.js +3 -1
  46. package/es/components/icon/icon_tokens.a11y.js +3 -1
  47. package/es/components/image/image.a11y.js +3 -1
  48. package/es/components/index.js +1 -0
  49. package/es/components/inline_edit/index.js +10 -0
  50. package/es/components/inline_edit/inline_edit.styles.js +15 -0
  51. package/es/components/inline_edit/inline_edit_form.js +190 -0
  52. package/es/components/inline_edit/inline_edit_text.js +97 -0
  53. package/es/components/inline_edit/inline_edit_title.js +105 -0
  54. package/es/components/key_pad_menu/key_pad_menu.a11y.js +3 -1
  55. package/es/components/modal/modal.a11y.js +3 -1
  56. package/es/components/notification/notification_event.a11y.js +3 -1
  57. package/es/components/page/page_header/page_header.a11y.js +3 -1
  58. package/es/components/pagination/pagination.a11y.js +3 -1
  59. package/es/components/popover/popover.a11y.js +3 -1
  60. package/es/components/popover/popover_footer.js +4 -4
  61. package/es/components/popover/popover_footer.styles.js +16 -5
  62. package/es/components/popover/popover_panel/_popover_panel.js +8 -5
  63. package/es/components/portal/portal.a11y.js +3 -1
  64. package/es/components/progress/progress.a11y.js +3 -1
  65. package/es/components/resizable_container/resizable_container.a11y.js +3 -1
  66. package/es/components/search_bar/search_bar.a11y.js +8 -7
  67. package/es/components/selectable/selectable.a11y.js +3 -1
  68. package/es/components/side_nav/side_nav.a11y.js +3 -1
  69. package/es/components/tabs/tabs.a11y.js +3 -1
  70. package/es/components/tree_view/tree_view.a11y.js +3 -1
  71. package/eui.d.ts +161 -37
  72. package/i18ntokens.json +40 -4
  73. package/lib/components/accordion/accordion.a11y.js +3 -1
  74. package/lib/components/accordion/accordion.js +4 -2
  75. package/lib/components/basic_table/table.a11y.js +3 -1
  76. package/lib/components/breadcrumbs/breadcrumbs.a11y.js +3 -1
  77. package/lib/components/combo_box/combo_box.js +2 -21
  78. package/lib/components/combo_box/combo_box_input/combo_box_input.js +66 -36
  79. package/lib/components/combo_box/combo_box_options_list/combo_box_options_list.js +1 -1
  80. package/lib/components/context_menu/context_menu_panel.a11y.js +3 -1
  81. package/lib/components/copy/copy.a11y.js +3 -4
  82. package/lib/components/date_picker/date_picker.js +147 -153
  83. package/lib/components/date_picker/date_picker_range.js +2 -2
  84. package/lib/components/delay_hide/delay_hide.a11y.js +6 -8
  85. package/lib/components/delay_render/delay_render.a11y.js +6 -8
  86. package/lib/components/drag_and_drop/drag_and_drop.a11y.js +0 -1
  87. package/lib/components/empty_prompt/empty_prompt.a11y.js +8 -14
  88. package/lib/components/error_boundary/error_boundary.a11y.js +3 -1
  89. package/lib/components/filter_group/filter_group.a11y.js +7 -8
  90. package/lib/components/form/file_picker/file_picker.js +4 -2
  91. package/lib/components/form/radio/radio_group.a11y.js +1 -4
  92. package/lib/components/form/switch/switch.a11y.js +1 -4
  93. package/lib/components/form/text_area/text_area.js +11 -3
  94. package/lib/components/form/validatable_control/index.js +6 -0
  95. package/lib/components/form/validatable_control/validatable_control.js +51 -14
  96. package/lib/components/icon/icon_ML.a11y.js +3 -1
  97. package/lib/components/icon/icon_apps.a11y.js +3 -1
  98. package/lib/components/icon/icon_editor.a11y.js +3 -1
  99. package/lib/components/icon/icon_elastic.a11y.js +3 -1
  100. package/lib/components/icon/icon_glyphs.a11y.js +3 -1
  101. package/lib/components/icon/icon_tokens.a11y.js +3 -1
  102. package/lib/components/image/image.a11y.js +3 -1
  103. package/lib/components/index.js +11 -0
  104. package/lib/components/inline_edit/index.js +19 -0
  105. package/lib/components/inline_edit/inline_edit.styles.js +22 -0
  106. package/lib/components/inline_edit/inline_edit_form.js +193 -0
  107. package/lib/components/inline_edit/inline_edit_text.js +97 -0
  108. package/lib/components/inline_edit/inline_edit_title.js +106 -0
  109. package/lib/components/page/page_header/page_header.a11y.js +3 -1
  110. package/lib/components/popover/popover_footer.js +4 -4
  111. package/lib/components/popover/popover_footer.styles.js +19 -7
  112. package/lib/components/popover/popover_panel/_popover_panel.js +7 -4
  113. package/lib/components/resizable_container/resizable_container.a11y.js +3 -1
  114. package/lib/components/search_bar/search_bar.a11y.js +5 -6
  115. package/lib/components/tree_view/tree_view.a11y.js +3 -1
  116. package/optimize/es/components/accordion/accordion.a11y.js +3 -1
  117. package/optimize/es/components/accordion/accordion.js +4 -2
  118. package/optimize/es/components/basic_table/table.a11y.js +3 -1
  119. package/optimize/es/components/breadcrumbs/breadcrumbs.a11y.js +3 -1
  120. package/optimize/es/components/card/card.a11y.js +3 -1
  121. package/optimize/es/components/color_picker/color_picker.a11y.js +3 -1
  122. package/optimize/es/components/combo_box/combo_box.a11y.js +3 -1
  123. package/optimize/es/components/combo_box/combo_box.js +2 -21
  124. package/optimize/es/components/combo_box/combo_box_input/combo_box_input.js +63 -34
  125. package/optimize/es/components/combo_box/combo_box_options_list/combo_box_options_list.js +1 -1
  126. package/optimize/es/components/context_menu/context_menu_panel.a11y.js +3 -1
  127. package/optimize/es/components/control_bar/control_bar.a11y.js +3 -1
  128. package/optimize/es/components/copy/copy.a11y.js +6 -5
  129. package/optimize/es/components/datagrid/data_grid.a11y.js +3 -1
  130. package/optimize/es/components/date_picker/date_picker.a11y.js +3 -1
  131. package/optimize/es/components/date_picker/date_picker.js +142 -148
  132. package/optimize/es/components/date_picker/date_picker_range.js +1 -1
  133. package/optimize/es/components/date_picker/super_date_picker/super_date_picker.a11y.js +3 -1
  134. package/optimize/es/components/delay_hide/delay_hide.a11y.js +9 -9
  135. package/optimize/es/components/delay_render/delay_render.a11y.js +9 -9
  136. package/optimize/es/components/drag_and_drop/drag_and_drop.a11y.js +3 -2
  137. package/optimize/es/components/empty_prompt/empty_prompt.a11y.js +8 -14
  138. package/optimize/es/components/error_boundary/error_boundary.a11y.js +3 -1
  139. package/optimize/es/components/expression/expression.a11y.js +3 -1
  140. package/optimize/es/components/filter_group/filter_group.a11y.js +4 -3
  141. package/optimize/es/components/flyout/flyout.a11y.js +3 -1
  142. package/optimize/es/components/focus_trap/focus_trap.a11y.js +3 -1
  143. package/optimize/es/components/form/checkbox/checkbox_group.a11y.js +3 -1
  144. package/optimize/es/components/form/file_picker/file_picker.js +4 -2
  145. package/optimize/es/components/form/radio/radio_group.a11y.js +4 -5
  146. package/optimize/es/components/form/range/range.a11y.js +3 -1
  147. package/optimize/es/components/form/switch/switch.a11y.js +4 -5
  148. package/optimize/es/components/form/text_area/text_area.js +10 -3
  149. package/optimize/es/components/form/validatable_control/index.js +1 -1
  150. package/optimize/es/components/form/validatable_control/validatable_control.js +49 -9
  151. package/optimize/es/components/header/header.a11y.js +3 -1
  152. package/optimize/es/components/icon/icon_ML.a11y.js +3 -1
  153. package/optimize/es/components/icon/icon_apps.a11y.js +3 -1
  154. package/optimize/es/components/icon/icon_editor.a11y.js +3 -1
  155. package/optimize/es/components/icon/icon_elastic.a11y.js +3 -1
  156. package/optimize/es/components/icon/icon_glyphs.a11y.js +3 -1
  157. package/optimize/es/components/icon/icon_tokens.a11y.js +3 -1
  158. package/optimize/es/components/image/image.a11y.js +3 -1
  159. package/optimize/es/components/index.js +1 -0
  160. package/optimize/es/components/inline_edit/index.js +10 -0
  161. package/optimize/es/components/inline_edit/inline_edit.styles.js +15 -0
  162. package/optimize/es/components/inline_edit/inline_edit_form.js +133 -0
  163. package/optimize/es/components/inline_edit/inline_edit_text.js +52 -0
  164. package/optimize/es/components/inline_edit/inline_edit_title.js +56 -0
  165. package/optimize/es/components/key_pad_menu/key_pad_menu.a11y.js +3 -1
  166. package/optimize/es/components/modal/modal.a11y.js +3 -1
  167. package/optimize/es/components/notification/notification_event.a11y.js +3 -1
  168. package/optimize/es/components/page/page_header/page_header.a11y.js +3 -1
  169. package/optimize/es/components/pagination/pagination.a11y.js +3 -1
  170. package/optimize/es/components/popover/popover.a11y.js +3 -1
  171. package/optimize/es/components/popover/popover_footer.js +4 -4
  172. package/optimize/es/components/popover/popover_footer.styles.js +16 -5
  173. package/optimize/es/components/popover/popover_panel/_popover_panel.js +8 -5
  174. package/optimize/es/components/portal/portal.a11y.js +3 -1
  175. package/optimize/es/components/progress/progress.a11y.js +3 -1
  176. package/optimize/es/components/resizable_container/resizable_container.a11y.js +3 -1
  177. package/optimize/es/components/search_bar/search_bar.a11y.js +8 -7
  178. package/optimize/es/components/selectable/selectable.a11y.js +3 -1
  179. package/optimize/es/components/side_nav/side_nav.a11y.js +3 -1
  180. package/optimize/es/components/tabs/tabs.a11y.js +3 -1
  181. package/optimize/es/components/tree_view/tree_view.a11y.js +3 -1
  182. package/optimize/lib/components/accordion/accordion.a11y.js +3 -1
  183. package/optimize/lib/components/accordion/accordion.js +4 -2
  184. package/optimize/lib/components/basic_table/table.a11y.js +3 -1
  185. package/optimize/lib/components/breadcrumbs/breadcrumbs.a11y.js +3 -1
  186. package/optimize/lib/components/card/card.a11y.js +3 -1
  187. package/optimize/lib/components/color_picker/color_picker.a11y.js +3 -1
  188. package/optimize/lib/components/combo_box/combo_box.a11y.js +3 -1
  189. package/optimize/lib/components/combo_box/combo_box.js +2 -21
  190. package/optimize/lib/components/combo_box/combo_box_input/combo_box_input.js +63 -34
  191. package/optimize/lib/components/combo_box/combo_box_options_list/combo_box_options_list.js +1 -1
  192. package/optimize/lib/components/context_menu/context_menu_panel.a11y.js +3 -1
  193. package/optimize/lib/components/control_bar/control_bar.a11y.js +3 -1
  194. package/optimize/lib/components/copy/copy.a11y.js +6 -5
  195. package/optimize/lib/components/datagrid/data_grid.a11y.js +3 -1
  196. package/optimize/lib/components/date_picker/date_picker.a11y.js +3 -1
  197. package/optimize/lib/components/date_picker/date_picker.js +141 -147
  198. package/optimize/lib/components/date_picker/date_picker_range.js +1 -1
  199. package/optimize/lib/components/date_picker/super_date_picker/super_date_picker.a11y.js +3 -1
  200. package/optimize/lib/components/delay_hide/delay_hide.a11y.js +9 -9
  201. package/optimize/lib/components/delay_render/delay_render.a11y.js +9 -9
  202. package/optimize/lib/components/drag_and_drop/drag_and_drop.a11y.js +3 -2
  203. package/optimize/lib/components/empty_prompt/empty_prompt.a11y.js +8 -14
  204. package/optimize/lib/components/error_boundary/error_boundary.a11y.js +3 -1
  205. package/optimize/lib/components/filter_group/filter_group.a11y.js +10 -9
  206. package/optimize/lib/components/focus_trap/focus_trap.a11y.js +3 -1
  207. package/optimize/lib/components/form/file_picker/file_picker.js +4 -2
  208. package/optimize/lib/components/form/radio/radio_group.a11y.js +4 -5
  209. package/optimize/lib/components/form/range/range.a11y.js +3 -1
  210. package/optimize/lib/components/form/switch/switch.a11y.js +4 -5
  211. package/optimize/lib/components/form/text_area/text_area.js +10 -3
  212. package/optimize/lib/components/form/validatable_control/index.js +6 -0
  213. package/optimize/lib/components/form/validatable_control/validatable_control.js +52 -12
  214. package/optimize/lib/components/header/header.a11y.js +3 -1
  215. package/optimize/lib/components/icon/icon_ML.a11y.js +3 -1
  216. package/optimize/lib/components/icon/icon_apps.a11y.js +3 -1
  217. package/optimize/lib/components/icon/icon_editor.a11y.js +3 -1
  218. package/optimize/lib/components/icon/icon_elastic.a11y.js +3 -1
  219. package/optimize/lib/components/icon/icon_glyphs.a11y.js +3 -1
  220. package/optimize/lib/components/icon/icon_tokens.a11y.js +3 -1
  221. package/optimize/lib/components/image/image.a11y.js +3 -1
  222. package/optimize/lib/components/index.js +11 -0
  223. package/optimize/lib/components/inline_edit/index.js +19 -0
  224. package/optimize/lib/components/inline_edit/inline_edit.styles.js +22 -0
  225. package/optimize/lib/components/inline_edit/inline_edit_form.js +144 -0
  226. package/optimize/lib/components/inline_edit/inline_edit_text.js +52 -0
  227. package/optimize/lib/components/inline_edit/inline_edit_title.js +57 -0
  228. package/optimize/lib/components/key_pad_menu/key_pad_menu.a11y.js +3 -1
  229. package/optimize/lib/components/modal/modal.a11y.js +3 -1
  230. package/optimize/lib/components/notification/notification_event.a11y.js +3 -1
  231. package/optimize/lib/components/page/page_header/page_header.a11y.js +3 -1
  232. package/optimize/lib/components/pagination/pagination.a11y.js +3 -1
  233. package/optimize/lib/components/popover/popover.a11y.js +3 -1
  234. package/optimize/lib/components/popover/popover_footer.js +4 -4
  235. package/optimize/lib/components/popover/popover_footer.styles.js +19 -7
  236. package/optimize/lib/components/popover/popover_panel/_popover_panel.js +7 -4
  237. package/optimize/lib/components/portal/portal.a11y.js +3 -1
  238. package/optimize/lib/components/progress/progress.a11y.js +3 -1
  239. package/optimize/lib/components/resizable_container/resizable_container.a11y.js +3 -1
  240. package/optimize/lib/components/search_bar/search_bar.a11y.js +8 -7
  241. package/optimize/lib/components/selectable/selectable.a11y.js +3 -1
  242. package/optimize/lib/components/side_nav/side_nav.a11y.js +3 -1
  243. package/optimize/lib/components/tree_view/tree_view.a11y.js +3 -1
  244. package/package.json +1 -1
  245. package/src/components/combo_box/_combo_box.scss +2 -38
  246. package/src/components/date_picker/_date_picker_range.scss +1 -1
  247. package/src/components/form/field_text/_field_text.scss +0 -7
  248. package/src/components/form/file_picker/_file_picker.scss +3 -2
  249. package/src/components/form/form_control_layout/_form_control_layout.scss +7 -2
  250. package/src/components/form/text_area/_text_area.scss +9 -0
  251. package/test-env/components/accordion/accordion.a11y.js +3 -1
  252. package/test-env/components/accordion/accordion.js +4 -2
  253. package/test-env/components/basic_table/table.a11y.js +3 -1
  254. package/test-env/components/breadcrumbs/breadcrumbs.a11y.js +3 -1
  255. package/test-env/components/card/card.a11y.js +3 -1
  256. package/test-env/components/color_picker/color_picker.a11y.js +3 -1
  257. package/test-env/components/combo_box/combo_box.a11y.js +3 -1
  258. package/test-env/components/combo_box/combo_box.js +2 -21
  259. package/test-env/components/combo_box/combo_box_input/combo_box_input.js +66 -36
  260. package/test-env/components/combo_box/combo_box_options_list/combo_box_options_list.js +1 -1
  261. package/test-env/components/context_menu/context_menu_panel.a11y.js +3 -1
  262. package/test-env/components/control_bar/control_bar.a11y.js +3 -1
  263. package/test-env/components/copy/copy.a11y.js +6 -5
  264. package/test-env/components/datagrid/data_grid.a11y.js +3 -1
  265. package/test-env/components/date_picker/date_picker.a11y.js +3 -1
  266. package/test-env/components/date_picker/date_picker.js +141 -147
  267. package/test-env/components/date_picker/date_picker_range.js +2 -2
  268. package/test-env/components/date_picker/super_date_picker/super_date_picker.a11y.js +3 -1
  269. package/test-env/components/delay_hide/delay_hide.a11y.js +9 -9
  270. package/test-env/components/delay_render/delay_render.a11y.js +9 -9
  271. package/test-env/components/drag_and_drop/drag_and_drop.a11y.js +3 -2
  272. package/test-env/components/empty_prompt/empty_prompt.a11y.js +8 -14
  273. package/test-env/components/error_boundary/error_boundary.a11y.js +3 -1
  274. package/test-env/components/filter_group/filter_group.a11y.js +10 -9
  275. package/test-env/components/focus_trap/focus_trap.a11y.js +3 -1
  276. package/test-env/components/form/file_picker/file_picker.js +4 -2
  277. package/test-env/components/form/radio/radio_group.a11y.js +4 -5
  278. package/test-env/components/form/range/range.a11y.js +3 -1
  279. package/test-env/components/form/switch/switch.a11y.js +4 -5
  280. package/test-env/components/form/text_area/text_area.js +11 -3
  281. package/test-env/components/form/validatable_control/index.js +6 -0
  282. package/test-env/components/form/validatable_control/validatable_control.js +51 -14
  283. package/test-env/components/header/header.a11y.js +3 -1
  284. package/test-env/components/icon/icon_ML.a11y.js +3 -1
  285. package/test-env/components/icon/icon_apps.a11y.js +3 -1
  286. package/test-env/components/icon/icon_editor.a11y.js +3 -1
  287. package/test-env/components/icon/icon_elastic.a11y.js +3 -1
  288. package/test-env/components/icon/icon_glyphs.a11y.js +3 -1
  289. package/test-env/components/icon/icon_tokens.a11y.js +3 -1
  290. package/test-env/components/image/image.a11y.js +3 -1
  291. package/test-env/components/index.js +11 -0
  292. package/test-env/components/inline_edit/index.js +19 -0
  293. package/test-env/components/inline_edit/inline_edit.styles.js +22 -0
  294. package/test-env/components/inline_edit/inline_edit_form.js +196 -0
  295. package/test-env/components/inline_edit/inline_edit_text.js +96 -0
  296. package/test-env/components/inline_edit/inline_edit_title.js +105 -0
  297. package/test-env/components/key_pad_menu/key_pad_menu.a11y.js +3 -1
  298. package/test-env/components/modal/modal.a11y.js +3 -1
  299. package/test-env/components/notification/notification_event.a11y.js +3 -1
  300. package/test-env/components/page/page_header/page_header.a11y.js +3 -1
  301. package/test-env/components/pagination/pagination.a11y.js +3 -1
  302. package/test-env/components/popover/popover.a11y.js +3 -1
  303. package/test-env/components/popover/popover_footer.js +4 -4
  304. package/test-env/components/popover/popover_footer.styles.js +19 -7
  305. package/test-env/components/popover/popover_panel/_popover_panel.js +7 -4
  306. package/test-env/components/portal/portal.a11y.js +3 -1
  307. package/test-env/components/progress/progress.a11y.js +3 -1
  308. package/test-env/components/resizable_container/resizable_container.a11y.js +3 -1
  309. package/test-env/components/search_bar/search_bar.a11y.js +8 -7
  310. package/test-env/components/selectable/selectable.a11y.js +3 -1
  311. package/test-env/components/side_nav/side_nav.a11y.js +3 -1
  312. package/test-env/components/tree_view/tree_view.a11y.js +3 -1
@@ -216,22 +216,6 @@ var EuiComboBox = /*#__PURE__*/function (_Component) {
216
216
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "clearSearchValue", function () {
217
217
  _this.onSearchChange('');
218
218
  });
219
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "removeLastOption", function () {
220
- if (!_this.props.selectedOptions.length) {
221
- return;
222
- }
223
-
224
- // Backspace will be used to delete the input, not a pill.
225
- if (_this.state.searchValue.length) {
226
- return;
227
- }
228
-
229
- // Delete last pill.
230
- _this.onRemoveOption(_this.props.selectedOptions[_this.props.selectedOptions.length - 1]);
231
- if (Boolean(_this.props.singleSelection) && !_this.state.isListOpen) {
232
- _this.openList();
233
- }
234
- });
235
219
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "addCustomOption", function (isContainerBlur, searchValue) {
236
220
  var _this$props = _this.props,
237
221
  isCaseSensitive = _this$props.isCaseSensitive,
@@ -381,10 +365,6 @@ var EuiComboBox = /*#__PURE__*/function (_Component) {
381
365
  _this.openList();
382
366
  }
383
367
  break;
384
- case _services.keys.BACKSPACE:
385
- event.stopPropagation();
386
- _this.removeLastOption();
387
- break;
388
368
  case _services.keys.ESCAPE:
389
369
  if (_this.state.isListOpen) {
390
370
  event.preventDefault();
@@ -661,7 +641,7 @@ var EuiComboBox = /*#__PURE__*/function (_Component) {
661
641
  // Visually indicate the combobox is in an invalid state if it has lost focus but there is text entered in the input.
662
642
  // When custom options are disabled and the user leaves the combo box after entering text that does not match any
663
643
  // options, this tells the user that they've entered invalid input.
664
- var markAsInvalid = isInvalid || (hasFocus === false || isListOpen === false) && searchValue;
644
+ var markAsInvalid = !!(isInvalid || (hasFocus === false || isListOpen === false) && searchValue);
665
645
  var classes = (0, _classnames.default)('euiComboBox', className, {
666
646
  'euiComboBox--compressed': compressed,
667
647
  'euiComboBox--fullWidth': fullWidth,
@@ -758,6 +738,7 @@ var EuiComboBox = /*#__PURE__*/function (_Component) {
758
738
  append: singleSelection ? append : undefined,
759
739
  prepend: singleSelection ? prepend : undefined,
760
740
  isLoading: isLoading,
741
+ isInvalid: markAsInvalid,
761
742
  autoFocus: autoFocus,
762
743
  "aria-label": ariaLabel,
763
744
  "aria-labelledby": ariaLabelledby
@@ -19,8 +19,10 @@ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/de
19
19
  var _react = _interopRequireWildcard(require("react"));
20
20
  var _classnames = _interopRequireDefault(require("classnames"));
21
21
  var _reactInputAutosize = _interopRequireDefault(require("react-input-autosize"));
22
+ var _services = require("../../../services");
22
23
  var _accessibility = require("../../accessibility");
23
24
  var _form_control_layout = require("../../form/form_control_layout");
25
+ var _num_icons = require("../../form/form_control_layout/_num_icons");
24
26
  var _combo_box_pill = require("./combo_box_pill");
25
27
  var _react2 = require("@emotion/react");
26
28
  var _excluded = ["key", "label", "color", "onClick"];
@@ -61,10 +63,29 @@ var EuiComboBoxInput = /*#__PURE__*/function (_Component) {
61
63
  hasFocus: false
62
64
  });
63
65
  });
64
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "inputOnChange", function (event) {
66
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "onKeyDown", function (event) {
65
67
  var _this$props = _this.props,
66
- onChange = _this$props.onChange,
67
- searchValue = _this$props.searchValue;
68
+ searchValue = _this$props.searchValue,
69
+ selectedOptions = _this$props.selectedOptions,
70
+ onRemoveOption = _this$props.onRemoveOption,
71
+ singleSelection = _this$props.singleSelection,
72
+ isListOpen = _this$props.isListOpen,
73
+ onOpenListClick = _this$props.onOpenListClick;
74
+
75
+ // When backspacing from an empty input, delete the last pill option in the list
76
+ var searchIsEmpty = !searchValue.length;
77
+ var hasPills = selectedOptions.length;
78
+ if (event.key === _services.keys.BACKSPACE && searchIsEmpty && hasPills) {
79
+ onRemoveOption(selectedOptions[selectedOptions.length - 1]);
80
+ if (!!singleSelection && !isListOpen) {
81
+ onOpenListClick();
82
+ }
83
+ }
84
+ });
85
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "inputOnChange", function (event) {
86
+ var _this$props2 = _this.props,
87
+ onChange = _this$props2.onChange,
88
+ searchValue = _this$props2.searchValue;
68
89
  if (onChange) {
69
90
  onChange(event.target.value);
70
91
  }
@@ -91,34 +112,35 @@ var EuiComboBoxInput = /*#__PURE__*/function (_Component) {
91
112
  }, {
92
113
  key: "render",
93
114
  value: function render() {
94
- var _this$props2 = this.props,
95
- compressed = _this$props2.compressed,
96
- focusedOptionId = _this$props2.focusedOptionId,
97
- fullWidth = _this$props2.fullWidth,
98
- hasSelectedOptions = _this$props2.hasSelectedOptions,
99
- id = _this$props2.id,
100
- inputRef = _this$props2.inputRef,
101
- isDisabled = _this$props2.isDisabled,
102
- isListOpen = _this$props2.isListOpen,
103
- noIcon = _this$props2.noIcon,
104
- onClear = _this$props2.onClear,
105
- onClick = _this$props2.onClick,
106
- onCloseListClick = _this$props2.onCloseListClick,
107
- onOpenListClick = _this$props2.onOpenListClick,
108
- onRemoveOption = _this$props2.onRemoveOption,
109
- placeholder = _this$props2.placeholder,
110
- rootId = _this$props2.rootId,
111
- searchValue = _this$props2.searchValue,
112
- selectedOptions = _this$props2.selectedOptions,
113
- singleSelectionProp = _this$props2.singleSelection,
114
- toggleButtonRef = _this$props2.toggleButtonRef,
115
- value = _this$props2.value,
116
- prepend = _this$props2.prepend,
117
- append = _this$props2.append,
118
- isLoading = _this$props2.isLoading,
119
- autoFocus = _this$props2.autoFocus,
120
- ariaLabel = _this$props2['aria-label'],
121
- ariaLabelledby = _this$props2['aria-labelledby'];
115
+ var _this$props3 = this.props,
116
+ compressed = _this$props3.compressed,
117
+ focusedOptionId = _this$props3.focusedOptionId,
118
+ fullWidth = _this$props3.fullWidth,
119
+ hasSelectedOptions = _this$props3.hasSelectedOptions,
120
+ id = _this$props3.id,
121
+ inputRef = _this$props3.inputRef,
122
+ isDisabled = _this$props3.isDisabled,
123
+ isListOpen = _this$props3.isListOpen,
124
+ noIcon = _this$props3.noIcon,
125
+ onClear = _this$props3.onClear,
126
+ onClick = _this$props3.onClick,
127
+ onCloseListClick = _this$props3.onCloseListClick,
128
+ onOpenListClick = _this$props3.onOpenListClick,
129
+ onRemoveOption = _this$props3.onRemoveOption,
130
+ placeholder = _this$props3.placeholder,
131
+ rootId = _this$props3.rootId,
132
+ searchValue = _this$props3.searchValue,
133
+ selectedOptions = _this$props3.selectedOptions,
134
+ singleSelectionProp = _this$props3.singleSelection,
135
+ toggleButtonRef = _this$props3.toggleButtonRef,
136
+ value = _this$props3.value,
137
+ prepend = _this$props3.prepend,
138
+ append = _this$props3.append,
139
+ isLoading = _this$props3.isLoading,
140
+ isInvalid = _this$props3.isInvalid,
141
+ autoFocus = _this$props3.autoFocus,
142
+ ariaLabel = _this$props3['aria-label'],
143
+ ariaLabelledby = _this$props3['aria-labelledby'];
122
144
  var singleSelection = Boolean(singleSelectionProp);
123
145
  var asPlainText = singleSelectionProp && (0, _typeof2.default)(singleSelectionProp) === 'object' && singleSelectionProp.asPlainText || false;
124
146
  var pills = selectedOptions ? selectedOptions.map(function (option) {
@@ -180,12 +202,16 @@ var EuiComboBoxInput = /*#__PURE__*/function (_Component) {
180
202
  type: 'arrowDown'
181
203
  };
182
204
  }
183
- var wrapClasses = (0, _classnames.default)('euiComboBox__inputWrap', {
205
+ var numIconsClass = (0, _num_icons.getFormControlClassNameForIconCount)({
206
+ isDropdown: !noIcon,
207
+ clear: !!clickProps.clear,
208
+ isInvalid: isInvalid,
209
+ isLoading: isLoading
210
+ });
211
+ var wrapClasses = (0, _classnames.default)('euiComboBox__inputWrap', numIconsClass, {
184
212
  'euiComboBox__inputWrap--compressed': compressed,
185
213
  'euiComboBox__inputWrap--fullWidth': fullWidth,
186
214
  'euiComboBox__inputWrap--noWrap': singleSelection,
187
- 'euiComboBox__inputWrap-isLoading': isLoading,
188
- 'euiComboBox__inputWrap-isClearable': onClear,
189
215
  'euiComboBox__inputWrap--inGroup': prepend || append
190
216
  });
191
217
  return (0, _react2.jsx)(_form_control_layout.EuiFormControlLayout, (0, _extends2.default)({
@@ -193,6 +219,7 @@ var EuiComboBoxInput = /*#__PURE__*/function (_Component) {
193
219
  }, clickProps, {
194
220
  inputId: id,
195
221
  isLoading: isLoading,
222
+ isInvalid: isInvalid,
196
223
  compressed: compressed,
197
224
  fullWidth: fullWidth,
198
225
  prepend: prepend,
@@ -209,6 +236,7 @@ var EuiComboBoxInput = /*#__PURE__*/function (_Component) {
209
236
  "aria-expanded": isListOpen,
210
237
  "aria-label": ariaLabel,
211
238
  "aria-labelledby": ariaLabelledby,
239
+ "aria-invalid": isInvalid,
212
240
  className: "euiComboBox__input",
213
241
  "data-test-subj": "comboBoxSearchInput",
214
242
  disabled: isDisabled,
@@ -217,6 +245,7 @@ var EuiComboBoxInput = /*#__PURE__*/function (_Component) {
217
245
  onBlur: this.onBlur,
218
246
  onChange: this.inputOnChange,
219
247
  onFocus: this.onFocus,
248
+ onKeyDown: this.onKeyDown,
220
249
  ref: this.inputRefCallback,
221
250
  role: "combobox",
222
251
  style: {
@@ -345,7 +345,7 @@ var EuiComboBoxOptionsList = /*#__PURE__*/function (_Component) {
345
345
  hasShadow: false,
346
346
  className: classes,
347
347
  panelRef: this.listRefCallback,
348
- "data-test-subj": "comboBoxOptionsList ".concat(dataTestSubj),
348
+ "data-test-subj": (0, _classnames.default)('comboBoxOptionsList', dataTestSubj),
349
349
  style: _objectSpread(_objectSpread({}, style), {}, {
350
350
  zIndex: zIndex
351
351
  }),
@@ -13,7 +13,9 @@ var _react2 = require("@emotion/react");
13
13
  * Side Public License, v 1.
14
14
  */
15
15
 
16
- /// <reference types="../../../cypress/support"/>
16
+ /// <reference types="cypress" />
17
+ /// <reference types="cypress-real-events" />
18
+ /// <reference types="../../../cypress/support" />
17
19
 
18
20
  var items = [(0, _react2.jsx)(_context_menu_item.EuiContextMenuItem, {
19
21
  key: "A",
@@ -19,7 +19,9 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
19
19
  * Side Public License, v 1.
20
20
  */
21
21
 
22
- /// <reference types="../../../cypress/support"/>
22
+ /// <reference types="cypress" />
23
+ /// <reference types="cypress-real-events" />
24
+ /// <reference types="../../../cypress/support" />
23
25
 
24
26
  var ControlBar = function ControlBar() {
25
27
  var _useState = (0, _react.useState)(false),
@@ -19,21 +19,22 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
19
19
  * Side Public License, v 1.
20
20
  */
21
21
 
22
- /// <reference types="../../../cypress/support"/>
22
+ /// <reference types="cypress" />
23
+ /// <reference types="cypress-real-events" />
24
+ /// <reference types="../../../cypress/support" />
23
25
 
24
26
  var Copy = function Copy() {
25
27
  var _useState = (0, _react.useState)('I am the text that will be copied'),
26
28
  _useState2 = (0, _slicedToArray2.default)(_useState, 2),
27
29
  copyText = _useState2[0],
28
30
  setCopyText = _useState2[1];
29
- var onChange = function onChange(e) {
30
- setCopyText(e.target.value);
31
- };
32
31
  return (0, _react2.jsx)("div", null, (0, _react2.jsx)(_form.EuiFormRow, {
33
32
  label: "Enter text that will be copied to clipboard"
34
33
  }, (0, _react2.jsx)(_form.EuiFieldText, {
35
34
  value: copyText,
36
- onChange: onChange
35
+ onChange: function onChange(e) {
36
+ return setCopyText(e.target.value);
37
+ }
37
38
  })), (0, _react2.jsx)(_spacer.EuiSpacer, {
38
39
  size: "m"
39
40
  }), (0, _react2.jsx)(_copy.EuiCopy, {
@@ -18,7 +18,9 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
18
18
  * Side Public License, v 1.
19
19
  */
20
20
 
21
- /// <reference types="../../../cypress/support"/>
21
+ /// <reference types="cypress" />
22
+ /// <reference types="cypress-real-events" />
23
+ /// <reference types="../../../cypress/support" />
22
24
 
23
25
  var columns = [{
24
26
  id: 'Name'
@@ -18,7 +18,9 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
18
18
  * Side Public License, v 1.
19
19
  */
20
20
 
21
- /// <reference types="../../../cypress/support"/>
21
+ /// <reference types="cypress" />
22
+ /// <reference types="cypress-real-events" />
23
+ /// <reference types="../../../cypress/support" />
22
24
 
23
25
  var DatePicker = function DatePicker() {
24
26
  var _useState = (0, _react.useState)((0, _moment.default)()),
@@ -7,24 +7,19 @@ Object.defineProperty(exports, "__esModule", {
7
7
  });
8
8
  exports.euiDatePickerDefaultTimeFormat = exports.euiDatePickerDefaultDateFormat = exports.EuiDatePicker = void 0;
9
9
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
10
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
10
11
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
11
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
12
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
13
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
14
- var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
15
- var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
16
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
17
12
  var _react = _interopRequireWildcard(require("react"));
18
13
  var _classnames = _interopRequireDefault(require("classnames"));
19
14
  var _form = require("../form");
15
+ var _num_icons = require("../form/form_control_layout/_num_icons");
16
+ var _services = require("../../services");
20
17
  var _context = require("../context");
21
18
  var _reactDatepicker = require("./react-datepicker");
22
19
  var _react2 = require("@emotion/react");
23
20
  var _excluded = ["adjustDateOnChange", "calendarClassName", "className", "customInput", "dateFormat", "dayClassName", "disabled", "excludeDates", "filterDate", "fullWidth", "iconType", "injectTimes", "inline", "inputRef", "isInvalid", "isLoading", "locale", "maxDate", "maxTime", "minDate", "minTime", "onChange", "onClear", "openToDate", "placeholder", "popperClassName", "popoverPlacement", "selected", "shadow", "shouldCloseOnSelect", "showIcon", "showTimeSelect", "showTimeSelectOnly", "timeFormat", "utcOffset"];
24
21
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
25
22
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
26
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
27
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
28
23
  var euiDatePickerDefaultDateFormat = 'MM/DD/YYYY';
29
24
  exports.euiDatePickerDefaultDateFormat = euiDatePickerDefaultDateFormat;
30
25
  var euiDatePickerDefaultTimeFormat = 'hh:mm A';
@@ -56,144 +51,143 @@ var unsupportedProps = [
56
51
  'showMonthYearDropdown',
57
52
  // We overridde this with `popoverPlacement`
58
53
  'popperPlacement'];
59
- var EuiDatePicker = /*#__PURE__*/function (_Component) {
60
- (0, _inherits2.default)(EuiDatePicker, _Component);
61
- var _super = _createSuper(EuiDatePicker);
62
- function EuiDatePicker() {
63
- (0, _classCallCheck2.default)(this, EuiDatePicker);
64
- return _super.apply(this, arguments);
54
+ var EuiDatePicker = function EuiDatePicker(_ref) {
55
+ var _ref$adjustDateOnChan = _ref.adjustDateOnChange,
56
+ adjustDateOnChange = _ref$adjustDateOnChan === void 0 ? true : _ref$adjustDateOnChan,
57
+ calendarClassName = _ref.calendarClassName,
58
+ className = _ref.className,
59
+ customInput = _ref.customInput,
60
+ _ref$dateFormat = _ref.dateFormat,
61
+ dateFormat = _ref$dateFormat === void 0 ? euiDatePickerDefaultDateFormat : _ref$dateFormat,
62
+ dayClassName = _ref.dayClassName,
63
+ disabled = _ref.disabled,
64
+ excludeDates = _ref.excludeDates,
65
+ filterDate = _ref.filterDate,
66
+ _ref$fullWidth = _ref.fullWidth,
67
+ fullWidth = _ref$fullWidth === void 0 ? false : _ref$fullWidth,
68
+ iconType = _ref.iconType,
69
+ injectTimes = _ref.injectTimes,
70
+ inline = _ref.inline,
71
+ inputRef = _ref.inputRef,
72
+ isInvalid = _ref.isInvalid,
73
+ isLoading = _ref.isLoading,
74
+ locale = _ref.locale,
75
+ maxDate = _ref.maxDate,
76
+ maxTime = _ref.maxTime,
77
+ minDate = _ref.minDate,
78
+ minTime = _ref.minTime,
79
+ onChange = _ref.onChange,
80
+ onClear = _ref.onClear,
81
+ openToDate = _ref.openToDate,
82
+ placeholder = _ref.placeholder,
83
+ popperClassName = _ref.popperClassName,
84
+ _ref$popoverPlacement = _ref.popoverPlacement,
85
+ popoverPlacement = _ref$popoverPlacement === void 0 ? 'downLeft' : _ref$popoverPlacement,
86
+ selected = _ref.selected,
87
+ _ref$shadow = _ref.shadow,
88
+ shadow = _ref$shadow === void 0 ? true : _ref$shadow,
89
+ _ref$shouldCloseOnSel = _ref.shouldCloseOnSelect,
90
+ shouldCloseOnSelect = _ref$shouldCloseOnSel === void 0 ? true : _ref$shouldCloseOnSel,
91
+ _ref$showIcon = _ref.showIcon,
92
+ showIcon = _ref$showIcon === void 0 ? true : _ref$showIcon,
93
+ _ref$showTimeSelect = _ref.showTimeSelect,
94
+ showTimeSelect = _ref$showTimeSelect === void 0 ? false : _ref$showTimeSelect,
95
+ showTimeSelectOnly = _ref.showTimeSelectOnly,
96
+ _ref$timeFormat = _ref.timeFormat,
97
+ timeFormat = _ref$timeFormat === void 0 ? euiDatePickerDefaultTimeFormat : _ref$timeFormat,
98
+ utcOffset = _ref.utcOffset,
99
+ rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
100
+ var classes = (0, _classnames.default)('euiDatePicker', {
101
+ 'euiDatePicker--shadow': shadow,
102
+ 'euiDatePicker--inline': inline
103
+ });
104
+ var numIconsClass = (0, _num_icons.getFormControlClassNameForIconCount)({
105
+ isInvalid: isInvalid,
106
+ isLoading: isLoading
107
+ });
108
+ var datePickerClasses = (0, _classnames.default)('euiDatePicker', 'euiFieldText', numIconsClass, {
109
+ 'euiFieldText--fullWidth': fullWidth,
110
+ 'euiFieldText-isLoading': isLoading,
111
+ 'euiFieldText--withIcon': !inline && showIcon,
112
+ 'euiFieldText--isClearable': !inline && selected && onClear
113
+ }, className);
114
+ var optionalIcon;
115
+ if (inline || customInput || !showIcon) {
116
+ optionalIcon = undefined;
117
+ } else if (iconType) {
118
+ optionalIcon = iconType;
119
+ } else if (showTimeSelectOnly) {
120
+ optionalIcon = 'clock';
121
+ } else {
122
+ optionalIcon = 'calendar';
65
123
  }
66
- (0, _createClass2.default)(EuiDatePicker, [{
67
- key: "render",
68
- value: function render() {
69
- var _this$props = this.props,
70
- adjustDateOnChange = _this$props.adjustDateOnChange,
71
- calendarClassName = _this$props.calendarClassName,
72
- className = _this$props.className,
73
- customInput = _this$props.customInput,
74
- dateFormat = _this$props.dateFormat,
75
- dayClassName = _this$props.dayClassName,
76
- disabled = _this$props.disabled,
77
- excludeDates = _this$props.excludeDates,
78
- filterDate = _this$props.filterDate,
79
- fullWidth = _this$props.fullWidth,
80
- iconType = _this$props.iconType,
81
- injectTimes = _this$props.injectTimes,
82
- inline = _this$props.inline,
83
- inputRef = _this$props.inputRef,
84
- isInvalid = _this$props.isInvalid,
85
- isLoading = _this$props.isLoading,
86
- locale = _this$props.locale,
87
- maxDate = _this$props.maxDate,
88
- maxTime = _this$props.maxTime,
89
- minDate = _this$props.minDate,
90
- minTime = _this$props.minTime,
91
- onChange = _this$props.onChange,
92
- onClear = _this$props.onClear,
93
- openToDate = _this$props.openToDate,
94
- placeholder = _this$props.placeholder,
95
- popperClassName = _this$props.popperClassName,
96
- popoverPlacement = _this$props.popoverPlacement,
97
- selected = _this$props.selected,
98
- shadow = _this$props.shadow,
99
- shouldCloseOnSelect = _this$props.shouldCloseOnSelect,
100
- showIcon = _this$props.showIcon,
101
- showTimeSelect = _this$props.showTimeSelect,
102
- showTimeSelectOnly = _this$props.showTimeSelectOnly,
103
- timeFormat = _this$props.timeFormat,
104
- utcOffset = _this$props.utcOffset,
105
- rest = (0, _objectWithoutProperties2.default)(_this$props, _excluded);
106
- var classes = (0, _classnames.default)('euiDatePicker', {
107
- 'euiDatePicker--shadow': shadow,
108
- 'euiDatePicker--inline': inline
109
- });
110
- var datePickerClasses = (0, _classnames.default)('euiDatePicker', 'euiFieldText', {
111
- 'euiFieldText--fullWidth': fullWidth,
112
- 'euiFieldText-isLoading': isLoading,
113
- 'euiFieldText--withIcon': !inline && showIcon,
114
- 'euiFieldText--isClearable': !inline && selected && onClear,
115
- 'euiFieldText-isInvalid': isInvalid
116
- }, className);
117
- var optionalIcon;
118
- if (inline || customInput || !showIcon) {
119
- optionalIcon = undefined;
120
- } else if (iconType) {
121
- optionalIcon = iconType;
122
- } else if (showTimeSelectOnly) {
123
- optionalIcon = 'clock';
124
- } else {
125
- optionalIcon = 'calendar';
126
- }
127
124
 
128
- // In case the consumer did not alter the default date format but wants
129
- // to add the time select, we append the default time format
130
- var fullDateFormat = dateFormat;
131
- if (showTimeSelect && dateFormat === euiDatePickerDefaultDateFormat) {
132
- fullDateFormat = "".concat(dateFormat, " ").concat(timeFormat);
133
- }
134
- return (0, _react2.jsx)("span", {
135
- className: classes
136
- }, (0, _react2.jsx)(_form.EuiFormControlLayout, {
137
- icon: optionalIcon,
138
- fullWidth: fullWidth,
139
- clear: selected && onClear ? {
140
- onClick: onClear
141
- } : undefined,
142
- isLoading: isLoading
143
- }, (0, _react2.jsx)(_form.EuiValidatableControl, {
144
- isInvalid: isInvalid
145
- }, (0, _react2.jsx)(_context.EuiI18nConsumer, null, function (_ref) {
146
- var contextLocale = _ref.locale;
147
- return (0, _react2.jsx)(_reactDatepicker.ReactDatePicker, (0, _extends2.default)({
148
- adjustDateOnChange: adjustDateOnChange,
149
- calendarClassName: calendarClassName,
150
- className: datePickerClasses,
151
- customInput: customInput,
152
- dateFormat: fullDateFormat,
153
- dayClassName: dayClassName,
154
- disabled: disabled,
155
- excludeDates: excludeDates,
156
- filterDate: filterDate,
157
- injectTimes: injectTimes,
158
- inline: inline,
159
- locale: locale || contextLocale,
160
- maxDate: maxDate,
161
- maxTime: maxTime,
162
- minDate: minDate,
163
- minTime: minTime,
164
- onChange: onChange,
165
- openToDate: openToDate,
166
- placeholderText: placeholder,
167
- popperClassName: popperClassName,
168
- ref: inputRef,
169
- selected: selected,
170
- shouldCloseOnSelect: shouldCloseOnSelect,
171
- showMonthDropdown: true,
172
- showTimeSelect: showTimeSelectOnly ? true : showTimeSelect,
173
- showTimeSelectOnly: showTimeSelectOnly,
174
- showYearDropdown: true,
175
- timeFormat: timeFormat,
176
- utcOffset: utcOffset,
177
- yearDropdownItemNumber: 7,
178
- accessibleMode: true,
179
- popperPlacement: popoverPlacement
180
- }, rest));
181
- }))));
182
- }
183
- }]);
184
- return EuiDatePicker;
185
- }(_react.Component);
186
- exports.EuiDatePicker = EuiDatePicker;
187
- (0, _defineProperty2.default)(EuiDatePicker, "defaultProps", {
188
- adjustDateOnChange: true,
189
- dateFormat: euiDatePickerDefaultDateFormat,
190
- fullWidth: false,
191
- inputRef: function inputRef() {},
192
- isLoading: false,
193
- shadow: true,
194
- shouldCloseOnSelect: true,
195
- showIcon: true,
196
- showTimeSelect: false,
197
- timeFormat: euiDatePickerDefaultTimeFormat,
198
- popoverPlacement: 'downLeft'
199
- });
125
+ // In case the consumer did not alter the default date format but wants
126
+ // to add the time select, we append the default time format
127
+ var fullDateFormat = dateFormat;
128
+ if (showTimeSelect && dateFormat === euiDatePickerDefaultDateFormat) {
129
+ fullDateFormat = "".concat(dateFormat, " ").concat(timeFormat);
130
+ }
131
+
132
+ // Set an internal ref on ReactDatePicker's `input` so we can set its :invalid state via useEuiValidatableControl
133
+ var _useState = (0, _react.useState)(null),
134
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
135
+ inputValidityRef = _useState2[0],
136
+ _setInputValidityRef = _useState2[1];
137
+ var setInputValidityRef = (0, _react.useCallback)(function (ref) {
138
+ _setInputValidityRef(ref === null || ref === void 0 ? void 0 : ref.input);
139
+ }, []);
140
+ (0, _form.useEuiValidatableControl)({
141
+ isInvalid: isInvalid,
142
+ controlEl: inputValidityRef
143
+ });
144
+ var inputRefs = (0, _services.useCombinedRefs)([inputRef, setInputValidityRef]);
145
+ return (0, _react2.jsx)("span", {
146
+ className: classes
147
+ }, (0, _react2.jsx)(_form.EuiFormControlLayout, {
148
+ icon: optionalIcon,
149
+ fullWidth: fullWidth,
150
+ clear: selected && onClear ? {
151
+ onClick: onClear
152
+ } : undefined,
153
+ isLoading: isLoading,
154
+ isInvalid: isInvalid
155
+ }, (0, _react2.jsx)(_context.EuiI18nConsumer, null, function (_ref2) {
156
+ var contextLocale = _ref2.locale;
157
+ return (0, _react2.jsx)(_reactDatepicker.ReactDatePicker, (0, _extends2.default)({
158
+ adjustDateOnChange: adjustDateOnChange,
159
+ calendarClassName: calendarClassName,
160
+ className: datePickerClasses,
161
+ customInput: customInput,
162
+ dateFormat: fullDateFormat,
163
+ dayClassName: dayClassName,
164
+ disabled: disabled,
165
+ excludeDates: excludeDates,
166
+ filterDate: filterDate,
167
+ injectTimes: injectTimes,
168
+ inline: inline,
169
+ locale: locale || contextLocale,
170
+ maxDate: maxDate,
171
+ maxTime: maxTime,
172
+ minDate: minDate,
173
+ minTime: minTime,
174
+ onChange: onChange,
175
+ openToDate: openToDate,
176
+ placeholderText: placeholder,
177
+ popperClassName: popperClassName,
178
+ ref: inputRefs,
179
+ selected: selected,
180
+ shouldCloseOnSelect: shouldCloseOnSelect,
181
+ showMonthDropdown: true,
182
+ showTimeSelect: showTimeSelectOnly ? true : showTimeSelect,
183
+ showTimeSelectOnly: showTimeSelectOnly,
184
+ showYearDropdown: true,
185
+ timeFormat: timeFormat,
186
+ utcOffset: utcOffset,
187
+ yearDropdownItemNumber: 7,
188
+ accessibleMode: true,
189
+ popperPlacement: popoverPlacement
190
+ }, rest));
191
+ })));
192
+ };
193
+ exports.EuiDatePicker = EuiDatePicker;
@@ -82,7 +82,7 @@ var EuiDatePickerRange = function EuiDatePickerRange(_ref) {
82
82
  className: "euiDatePickerRange__delimeter"
83
83
  }, (0, _react2.jsx)(_icon.EuiIcon, {
84
84
  color: isInvalid ? 'danger' : 'subdued',
85
- type: isInvalid ? 'warning' : 'sortRight'
85
+ type: "sortRight"
86
86
  }));
87
87
  return (0, _react2.jsx)("div", (0, _extends2.default)({
88
88
  className: classes
@@ -17,7 +17,9 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
17
17
  * Side Public License, v 1.
18
18
  */
19
19
 
20
- /// <reference types="../../../../cypress/support"/>
20
+ /// <reference types="cypress" />
21
+ /// <reference types="cypress-real-events" />
22
+ /// <reference types="../../../../cypress/support" />
21
23
 
22
24
  var SuperDatePicker = function SuperDatePicker() {
23
25
  var _useState = (0, _react.useState)(false),