@elastic/eui 108.0.0 → 109.1.0-snapshot.1763390960850

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 (405) hide show
  1. package/es/components/accessibility/skip_link/skip_link.js +10 -1
  2. package/es/components/basic_table/collapsed_item_actions.js +3 -1
  3. package/es/components/basic_table/default_item_action.js +7 -4
  4. package/es/components/bottom_bar/bottom_bar.js +12 -2
  5. package/es/components/button/button.js +20 -25
  6. package/es/components/button/button_display/_button_display.js +32 -30
  7. package/es/components/button/button_display/_button_display.styles.js +4 -4
  8. package/es/components/button/button_empty/button_empty.js +32 -14
  9. package/es/components/button/button_group/button_group.js +49 -31
  10. package/es/components/button/button_group/button_group_button.js +16 -5
  11. package/es/components/button/button_group/button_group_button.styles.js +12 -8
  12. package/es/components/button/button_icon/button_icon.js +30 -6
  13. package/es/components/card/card.js +20 -25
  14. package/es/components/card/card_select/card_select.js +20 -25
  15. package/es/components/code/code_block_virtualized.js +9 -7
  16. package/es/components/collapsible_nav_beta/_kibana_solution/collapsible_nav_kibana_solution.js +13 -1
  17. package/es/components/datagrid/body/cell/data_grid_cell.js +35 -12
  18. package/es/components/datagrid/body/data_grid_body.js +23 -6
  19. package/es/components/datagrid/body/data_grid_body_custom.js +23 -6
  20. package/es/components/datagrid/body/data_grid_body_virtualized.js +23 -6
  21. package/es/components/datagrid/body/header/column_actions.js +5 -21
  22. package/es/components/datagrid/body/header/data_grid_header_cell.js +29 -10
  23. package/es/components/datagrid/body/header/data_grid_header_cell.styles.js +8 -2
  24. package/es/components/datagrid/body/header/data_grid_header_cell_wrapper.js +5 -2
  25. package/es/components/datagrid/controls/column_selector.js +36 -19
  26. package/es/components/datagrid/controls/column_sorting.js +23 -6
  27. package/es/components/datagrid/controls/data_grid_toolbar_control.js +13 -7
  28. package/es/components/datagrid/data_grid.js +5 -1
  29. package/es/components/datagrid/utils/in_memory.js +25 -7
  30. package/es/components/date_picker/auto_refresh/auto_refresh.js +11 -2
  31. package/es/components/date_picker/super_date_picker/date_popover/absolute_tab.js +31 -5
  32. package/es/components/date_picker/super_date_picker/date_popover/date_popover_button.js +24 -3
  33. package/es/components/date_picker/super_date_picker/date_popover/date_popover_content.js +26 -4
  34. package/es/components/date_picker/super_date_picker/date_popover/relative_tab.js +29 -3
  35. package/es/components/date_picker/super_date_picker/date_popover/timezone_display.js +98 -0
  36. package/es/components/date_picker/super_date_picker/date_popover/timezone_display.styles.js +19 -0
  37. package/es/components/date_picker/super_date_picker/pretty_duration.js +1 -8
  38. package/es/components/date_picker/super_date_picker/relative_utils.js +8 -0
  39. package/es/components/date_picker/super_date_picker/super_date_picker.js +118 -26
  40. package/es/components/date_picker/super_date_picker/time_window_buttons.js +185 -0
  41. package/es/components/facet/facet_button.js +9 -19
  42. package/es/components/filter_group/filter_button.js +14 -1
  43. package/es/components/flyout/flyout.js +27 -10
  44. package/es/components/form/file_picker/file_picker.styles.js +3 -3
  45. package/es/components/form/form_control_button/form_control_button.js +13 -7
  46. package/es/components/header/header_links/header_link.js +13 -7
  47. package/es/components/header/header_section/header_section_item_button.js +13 -7
  48. package/es/components/icon/assets/boxes_vertical.js +1 -1
  49. package/es/components/icon/assets/checkInCircleFilled.js +1 -2
  50. package/es/components/icon/assets/errorFilled.js +1 -2
  51. package/es/components/icon/assets/paper_clip.js +1 -1
  52. package/es/components/icon/assets/streams_wired.js +3 -2
  53. package/es/components/icon/assets/warningFilled.js +1 -2
  54. package/es/components/icon/icon_map.js +3 -6
  55. package/es/components/list_group/list_group.js +13 -1
  56. package/es/components/list_group/list_group_item.js +13 -1
  57. package/es/components/list_group/list_group_item_extra_action.js +13 -1
  58. package/es/components/list_group/pinnable_list_group/pinnable_list_group.js +15 -2
  59. package/es/components/overlay_mask/overlay_mask.styles.js +1 -1
  60. package/es/components/pagination/pagination_button.js +13 -7
  61. package/es/components/popover/popover.js +22 -16
  62. package/es/components/provider/component_defaults/component_defaults.js +22 -2
  63. package/es/components/table/table_row.styles.js +1 -1
  64. package/es/components/tool_tip/tool_tip.js +24 -24
  65. package/es/global_styling/index.js +2 -1
  66. package/es/global_styling/mixins/_button.js +1 -1
  67. package/es/global_styling/utility/selectors.js +9 -0
  68. package/es/services/focus_trap/focus_trap_pub_sub.js +74 -0
  69. package/es/services/focus_trap/index.js +9 -0
  70. package/es/services/hooks/index.js +2 -1
  71. package/es/services/hooks/useEuiDisabledElement.js +195 -0
  72. package/es/services/index.js +1 -0
  73. package/es/services/popover/reposition_on_scroll.js +61 -0
  74. package/es/services/theme/high_contrast_overrides.js +5 -1
  75. package/es/test/cypress/index.d.ts +12 -0
  76. package/es/test/cypress/index.js +9 -0
  77. package/es/test/cypress/matchers.d.ts +20 -0
  78. package/es/test/cypress/matchers.js +54 -0
  79. package/es/test/cypress/test_reposition_on_scroll.js +66 -0
  80. package/es/test/enzyme/enzyme_matchers.d.ts +36 -0
  81. package/es/test/enzyme/enzyme_matchers.js +43 -0
  82. package/es/test/enzyme/index.d.ts +14 -0
  83. package/es/test/enzyme/index.js +10 -0
  84. package/es/test/rtl/index.d.ts +9 -1
  85. package/es/test/rtl/index.js +2 -1
  86. package/es/test/rtl/matchers.d.ts +36 -0
  87. package/es/test/rtl/matchers.js +82 -0
  88. package/es/utils/element_can_be_disabled.js +16 -0
  89. package/es/utils/index.js +2 -1
  90. package/eui.d.ts +604 -183
  91. package/i18ntokens.json +1357 -1231
  92. package/lib/components/accessibility/skip_link/skip_link.js +10 -1
  93. package/lib/components/basic_table/collapsed_item_actions.js +3 -1
  94. package/lib/components/basic_table/default_item_action.js +7 -4
  95. package/lib/components/bottom_bar/bottom_bar.js +11 -1
  96. package/lib/components/button/button.js +21 -26
  97. package/lib/components/button/button_display/_button_display.js +31 -29
  98. package/lib/components/button/button_display/_button_display.styles.js +4 -4
  99. package/lib/components/button/button_empty/button_empty.js +31 -13
  100. package/lib/components/button/button_group/button_group.js +49 -31
  101. package/lib/components/button/button_group/button_group_button.js +16 -5
  102. package/lib/components/button/button_group/button_group_button.styles.js +10 -6
  103. package/lib/components/button/button_icon/button_icon.js +29 -5
  104. package/lib/components/card/card.js +21 -26
  105. package/lib/components/card/card_select/card_select.js +21 -26
  106. package/lib/components/code/code_block_virtualized.js +9 -7
  107. package/lib/components/collapsible_nav_beta/_kibana_solution/collapsible_nav_kibana_solution.js +13 -1
  108. package/lib/components/datagrid/body/cell/data_grid_cell.js +35 -12
  109. package/lib/components/datagrid/body/data_grid_body.js +23 -6
  110. package/lib/components/datagrid/body/data_grid_body_custom.js +23 -6
  111. package/lib/components/datagrid/body/data_grid_body_virtualized.js +23 -6
  112. package/lib/components/datagrid/body/header/column_actions.js +5 -21
  113. package/lib/components/datagrid/body/header/data_grid_header_cell.js +29 -10
  114. package/lib/components/datagrid/body/header/data_grid_header_cell.styles.js +8 -1
  115. package/lib/components/datagrid/body/header/data_grid_header_cell_wrapper.js +5 -2
  116. package/lib/components/datagrid/controls/column_selector.js +36 -19
  117. package/lib/components/datagrid/controls/column_sorting.js +23 -6
  118. package/lib/components/datagrid/controls/data_grid_toolbar_control.js +13 -7
  119. package/lib/components/datagrid/data_grid.js +5 -1
  120. package/lib/components/datagrid/utils/in_memory.js +25 -7
  121. package/lib/components/date_picker/auto_refresh/auto_refresh.js +12 -3
  122. package/lib/components/date_picker/super_date_picker/date_popover/absolute_tab.js +30 -4
  123. package/lib/components/date_picker/super_date_picker/date_popover/date_popover_button.js +24 -3
  124. package/lib/components/date_picker/super_date_picker/date_popover/date_popover_content.js +26 -4
  125. package/lib/components/date_picker/super_date_picker/date_popover/relative_tab.js +29 -3
  126. package/lib/components/date_picker/super_date_picker/date_popover/timezone_display.js +104 -0
  127. package/lib/components/date_picker/super_date_picker/date_popover/timezone_display.styles.js +25 -0
  128. package/lib/components/date_picker/super_date_picker/pretty_duration.js +2 -9
  129. package/lib/components/date_picker/super_date_picker/relative_utils.js +9 -0
  130. package/lib/components/date_picker/super_date_picker/super_date_picker.js +118 -26
  131. package/lib/components/date_picker/super_date_picker/time_window_buttons.js +193 -0
  132. package/lib/components/facet/facet_button.js +9 -19
  133. package/lib/components/filter_group/filter_button.js +14 -1
  134. package/lib/components/flyout/flyout.js +26 -9
  135. package/lib/components/form/file_picker/file_picker.styles.js +3 -3
  136. package/lib/components/form/form_control_button/form_control_button.js +13 -7
  137. package/lib/components/header/header_links/header_link.js +13 -7
  138. package/lib/components/header/header_section/header_section_item_button.js +13 -7
  139. package/lib/components/icon/assets/boxes_vertical.js +1 -1
  140. package/lib/components/icon/assets/checkInCircleFilled.js +1 -2
  141. package/lib/components/icon/assets/errorFilled.js +1 -2
  142. package/lib/components/icon/assets/paper_clip.js +1 -1
  143. package/lib/components/icon/assets/streams_wired.js +3 -2
  144. package/lib/components/icon/assets/warningFilled.js +1 -2
  145. package/lib/components/icon/icon_map.js +3 -6
  146. package/lib/components/icon/svgs/boxes_vertical.svg +1 -1
  147. package/lib/components/icon/svgs/checkInCircleFilled.svg +1 -1
  148. package/lib/components/icon/svgs/errorFilled.svg +1 -1
  149. package/lib/components/icon/svgs/paper_clip.svg +3 -3
  150. package/lib/components/icon/svgs/warningFilled.svg +1 -1
  151. package/lib/components/list_group/list_group.js +13 -1
  152. package/lib/components/list_group/list_group_item.js +13 -1
  153. package/lib/components/list_group/list_group_item_extra_action.js +13 -1
  154. package/lib/components/list_group/pinnable_list_group/pinnable_list_group.js +15 -2
  155. package/lib/components/overlay_mask/overlay_mask.styles.js +1 -1
  156. package/lib/components/pagination/pagination_button.js +13 -7
  157. package/lib/components/popover/popover.js +21 -15
  158. package/lib/components/provider/component_defaults/component_defaults.js +22 -2
  159. package/lib/components/table/table_row.styles.js +1 -1
  160. package/lib/components/tool_tip/tool_tip.js +24 -24
  161. package/lib/global_styling/index.js +16 -1
  162. package/lib/global_styling/mixins/_button.js +1 -1
  163. package/lib/global_styling/utility/selectors.js +15 -0
  164. package/lib/services/focus_trap/focus_trap_pub_sub.js +80 -0
  165. package/lib/services/focus_trap/index.js +12 -0
  166. package/lib/services/hooks/index.js +18 -1
  167. package/lib/services/hooks/useEuiDisabledElement.js +199 -0
  168. package/lib/services/index.js +8 -0
  169. package/lib/services/popover/reposition_on_scroll.js +67 -0
  170. package/lib/services/theme/high_contrast_overrides.js +5 -1
  171. package/lib/test/cypress/index.d.ts +12 -0
  172. package/lib/test/cypress/index.js +18 -0
  173. package/lib/test/cypress/matchers.d.ts +20 -0
  174. package/lib/test/cypress/matchers.js +61 -0
  175. package/lib/test/cypress/test_reposition_on_scroll.js +69 -0
  176. package/lib/test/enzyme/enzyme_matchers.d.ts +36 -0
  177. package/lib/test/enzyme/enzyme_matchers.js +49 -0
  178. package/lib/test/enzyme/index.d.ts +14 -0
  179. package/lib/test/enzyme/index.js +24 -0
  180. package/lib/test/rtl/index.d.ts +9 -1
  181. package/lib/test/rtl/index.js +24 -2
  182. package/lib/test/rtl/matchers.d.ts +36 -0
  183. package/lib/test/rtl/matchers.js +86 -0
  184. package/lib/utils/element_can_be_disabled.js +22 -0
  185. package/lib/utils/index.js +14 -1
  186. package/optimize/es/components/basic_table/collapsed_item_actions.js +3 -1
  187. package/optimize/es/components/basic_table/default_item_action.js +7 -4
  188. package/optimize/es/components/bottom_bar/bottom_bar.js +12 -2
  189. package/optimize/es/components/button/button_display/_button_display.js +24 -12
  190. package/optimize/es/components/button/button_display/_button_display.styles.js +4 -4
  191. package/optimize/es/components/button/button_empty/button_empty.js +18 -6
  192. package/optimize/es/components/button/button_group/button_group.js +10 -5
  193. package/optimize/es/components/button/button_group/button_group_button.js +2 -3
  194. package/optimize/es/components/button/button_group/button_group_button.styles.js +12 -8
  195. package/optimize/es/components/button/button_icon/button_icon.js +17 -5
  196. package/optimize/es/components/code/code_block_virtualized.js +9 -7
  197. package/optimize/es/components/datagrid/body/header/column_actions.js +5 -21
  198. package/optimize/es/components/datagrid/body/header/data_grid_header_cell.js +6 -4
  199. package/optimize/es/components/datagrid/body/header/data_grid_header_cell.styles.js +8 -2
  200. package/optimize/es/components/datagrid/body/header/data_grid_header_cell_wrapper.js +4 -2
  201. package/optimize/es/components/datagrid/controls/column_selector.js +36 -19
  202. package/optimize/es/components/datagrid/data_grid.js +5 -1
  203. package/optimize/es/components/datagrid/utils/in_memory.js +2 -1
  204. package/optimize/es/components/date_picker/super_date_picker/date_popover/absolute_tab.js +12 -4
  205. package/optimize/es/components/date_picker/super_date_picker/date_popover/date_popover_button.js +5 -2
  206. package/optimize/es/components/date_picker/super_date_picker/date_popover/date_popover_content.js +7 -3
  207. package/optimize/es/components/date_picker/super_date_picker/date_popover/relative_tab.js +10 -2
  208. package/optimize/es/components/date_picker/super_date_picker/date_popover/timezone_display.js +97 -0
  209. package/optimize/es/components/date_picker/super_date_picker/date_popover/timezone_display.styles.js +19 -0
  210. package/optimize/es/components/date_picker/super_date_picker/pretty_duration.js +1 -8
  211. package/optimize/es/components/date_picker/super_date_picker/relative_utils.js +8 -0
  212. package/optimize/es/components/date_picker/super_date_picker/super_date_picker.js +49 -25
  213. package/optimize/es/components/date_picker/super_date_picker/time_window_buttons.js +185 -0
  214. package/optimize/es/components/flyout/flyout.js +27 -10
  215. package/optimize/es/components/form/file_picker/file_picker.styles.js +3 -3
  216. package/optimize/es/components/icon/assets/boxes_vertical.js +1 -1
  217. package/optimize/es/components/icon/assets/checkInCircleFilled.js +1 -2
  218. package/optimize/es/components/icon/assets/errorFilled.js +1 -2
  219. package/optimize/es/components/icon/assets/paper_clip.js +1 -1
  220. package/optimize/es/components/icon/assets/streams_wired.js +3 -2
  221. package/optimize/es/components/icon/assets/warningFilled.js +1 -2
  222. package/optimize/es/components/icon/icon_map.js +3 -6
  223. package/optimize/es/components/overlay_mask/overlay_mask.styles.js +1 -1
  224. package/optimize/es/components/popover/popover.js +22 -16
  225. package/optimize/es/components/table/table_row.styles.js +1 -1
  226. package/optimize/es/components/tool_tip/tool_tip.js +24 -24
  227. package/optimize/es/global_styling/index.js +2 -1
  228. package/optimize/es/global_styling/mixins/_button.js +1 -1
  229. package/optimize/es/global_styling/utility/selectors.js +9 -0
  230. package/optimize/es/services/focus_trap/focus_trap_pub_sub.js +74 -0
  231. package/optimize/es/services/focus_trap/index.js +9 -0
  232. package/optimize/es/services/hooks/index.js +2 -1
  233. package/optimize/es/services/hooks/useEuiDisabledElement.js +192 -0
  234. package/optimize/es/services/index.js +1 -0
  235. package/optimize/es/services/popover/reposition_on_scroll.js +61 -0
  236. package/optimize/es/services/theme/high_contrast_overrides.js +5 -1
  237. package/optimize/es/test/cypress/index.d.ts +12 -0
  238. package/optimize/es/test/cypress/index.js +9 -0
  239. package/optimize/es/test/cypress/matchers.d.ts +20 -0
  240. package/optimize/es/test/cypress/matchers.js +54 -0
  241. package/optimize/es/test/cypress/test_reposition_on_scroll.js +63 -0
  242. package/optimize/es/test/enzyme/enzyme_matchers.d.ts +36 -0
  243. package/optimize/es/test/enzyme/enzyme_matchers.js +43 -0
  244. package/optimize/es/test/enzyme/index.d.ts +14 -0
  245. package/optimize/es/test/enzyme/index.js +10 -0
  246. package/optimize/es/test/rtl/index.d.ts +9 -1
  247. package/optimize/es/test/rtl/index.js +2 -1
  248. package/optimize/es/test/rtl/matchers.d.ts +36 -0
  249. package/optimize/es/test/rtl/matchers.js +82 -0
  250. package/optimize/es/utils/element_can_be_disabled.js +16 -0
  251. package/optimize/es/utils/index.js +2 -1
  252. package/optimize/lib/components/basic_table/collapsed_item_actions.js +3 -1
  253. package/optimize/lib/components/basic_table/default_item_action.js +7 -4
  254. package/optimize/lib/components/bottom_bar/bottom_bar.js +11 -1
  255. package/optimize/lib/components/button/button_display/_button_display.js +23 -11
  256. package/optimize/lib/components/button/button_display/_button_display.styles.js +4 -4
  257. package/optimize/lib/components/button/button_empty/button_empty.js +17 -5
  258. package/optimize/lib/components/button/button_group/button_group.js +10 -5
  259. package/optimize/lib/components/button/button_group/button_group_button.js +2 -3
  260. package/optimize/lib/components/button/button_group/button_group_button.styles.js +10 -6
  261. package/optimize/lib/components/button/button_icon/button_icon.js +16 -4
  262. package/optimize/lib/components/code/code_block_virtualized.js +9 -7
  263. package/optimize/lib/components/datagrid/body/header/column_actions.js +5 -21
  264. package/optimize/lib/components/datagrid/body/header/data_grid_header_cell.js +6 -4
  265. package/optimize/lib/components/datagrid/body/header/data_grid_header_cell.styles.js +8 -1
  266. package/optimize/lib/components/datagrid/body/header/data_grid_header_cell_wrapper.js +4 -2
  267. package/optimize/lib/components/datagrid/controls/column_selector.js +36 -19
  268. package/optimize/lib/components/datagrid/data_grid.js +5 -1
  269. package/optimize/lib/components/datagrid/utils/in_memory.js +2 -1
  270. package/optimize/lib/components/date_picker/super_date_picker/date_popover/absolute_tab.js +11 -3
  271. package/optimize/lib/components/date_picker/super_date_picker/date_popover/date_popover_button.js +5 -2
  272. package/optimize/lib/components/date_picker/super_date_picker/date_popover/date_popover_content.js +7 -3
  273. package/optimize/lib/components/date_picker/super_date_picker/date_popover/relative_tab.js +10 -2
  274. package/optimize/lib/components/date_picker/super_date_picker/date_popover/timezone_display.js +103 -0
  275. package/optimize/lib/components/date_picker/super_date_picker/date_popover/timezone_display.styles.js +25 -0
  276. package/optimize/lib/components/date_picker/super_date_picker/pretty_duration.js +2 -9
  277. package/optimize/lib/components/date_picker/super_date_picker/relative_utils.js +9 -0
  278. package/optimize/lib/components/date_picker/super_date_picker/super_date_picker.js +49 -25
  279. package/optimize/lib/components/date_picker/super_date_picker/time_window_buttons.js +193 -0
  280. package/optimize/lib/components/flyout/flyout.js +26 -9
  281. package/optimize/lib/components/form/file_picker/file_picker.styles.js +3 -3
  282. package/optimize/lib/components/icon/assets/boxes_vertical.js +1 -1
  283. package/optimize/lib/components/icon/assets/checkInCircleFilled.js +1 -2
  284. package/optimize/lib/components/icon/assets/errorFilled.js +1 -2
  285. package/optimize/lib/components/icon/assets/paper_clip.js +1 -1
  286. package/optimize/lib/components/icon/assets/streams_wired.js +3 -2
  287. package/optimize/lib/components/icon/assets/warningFilled.js +1 -2
  288. package/optimize/lib/components/icon/icon_map.js +3 -6
  289. package/optimize/lib/components/icon/svgs/boxes_vertical.svg +1 -1
  290. package/optimize/lib/components/icon/svgs/checkInCircleFilled.svg +1 -1
  291. package/optimize/lib/components/icon/svgs/errorFilled.svg +1 -1
  292. package/optimize/lib/components/icon/svgs/paper_clip.svg +3 -3
  293. package/optimize/lib/components/icon/svgs/warningFilled.svg +1 -1
  294. package/optimize/lib/components/overlay_mask/overlay_mask.styles.js +1 -1
  295. package/optimize/lib/components/popover/popover.js +21 -15
  296. package/optimize/lib/components/table/table_row.styles.js +1 -1
  297. package/optimize/lib/components/tool_tip/tool_tip.js +24 -24
  298. package/optimize/lib/global_styling/index.js +16 -1
  299. package/optimize/lib/global_styling/mixins/_button.js +1 -1
  300. package/optimize/lib/global_styling/utility/selectors.js +15 -0
  301. package/optimize/lib/services/focus_trap/focus_trap_pub_sub.js +80 -0
  302. package/optimize/lib/services/focus_trap/index.js +12 -0
  303. package/optimize/lib/services/hooks/index.js +18 -1
  304. package/optimize/lib/services/hooks/useEuiDisabledElement.js +197 -0
  305. package/optimize/lib/services/index.js +8 -0
  306. package/optimize/lib/services/popover/reposition_on_scroll.js +67 -0
  307. package/optimize/lib/services/theme/high_contrast_overrides.js +5 -1
  308. package/optimize/lib/test/cypress/index.d.ts +12 -0
  309. package/optimize/lib/test/cypress/index.js +18 -0
  310. package/optimize/lib/test/cypress/matchers.d.ts +20 -0
  311. package/optimize/lib/test/cypress/matchers.js +61 -0
  312. package/optimize/lib/test/cypress/test_reposition_on_scroll.js +70 -0
  313. package/optimize/lib/test/enzyme/enzyme_matchers.d.ts +36 -0
  314. package/optimize/lib/test/enzyme/enzyme_matchers.js +50 -0
  315. package/optimize/lib/test/enzyme/index.d.ts +14 -0
  316. package/optimize/lib/test/enzyme/index.js +24 -0
  317. package/optimize/lib/test/rtl/index.d.ts +9 -1
  318. package/optimize/lib/test/rtl/index.js +24 -2
  319. package/optimize/lib/test/rtl/matchers.d.ts +36 -0
  320. package/optimize/lib/test/rtl/matchers.js +86 -0
  321. package/optimize/lib/utils/element_can_be_disabled.js +22 -0
  322. package/optimize/lib/utils/index.js +14 -1
  323. package/package.json +6 -5
  324. package/test-env/components/accessibility/skip_link/skip_link.js +10 -1
  325. package/test-env/components/basic_table/collapsed_item_actions.js +3 -1
  326. package/test-env/components/basic_table/default_item_action.js +7 -4
  327. package/test-env/components/bottom_bar/bottom_bar.js +11 -1
  328. package/test-env/components/button/button.js +21 -26
  329. package/test-env/components/button/button_display/_button_display.js +31 -29
  330. package/test-env/components/button/button_display/_button_display.styles.js +4 -4
  331. package/test-env/components/button/button_empty/button_empty.js +31 -13
  332. package/test-env/components/button/button_group/button_group.js +49 -31
  333. package/test-env/components/button/button_group/button_group_button.js +16 -5
  334. package/test-env/components/button/button_group/button_group_button.styles.js +10 -6
  335. package/test-env/components/button/button_icon/button_icon.js +29 -5
  336. package/test-env/components/card/card.js +21 -26
  337. package/test-env/components/card/card_select/card_select.js +21 -26
  338. package/test-env/components/code/code_block_virtualized.js +9 -7
  339. package/test-env/components/collapsible_nav_beta/_kibana_solution/collapsible_nav_kibana_solution.js +13 -1
  340. package/test-env/components/datagrid/body/cell/data_grid_cell.js +35 -12
  341. package/test-env/components/datagrid/body/data_grid_body.js +23 -6
  342. package/test-env/components/datagrid/body/data_grid_body_custom.js +23 -6
  343. package/test-env/components/datagrid/body/data_grid_body_virtualized.js +23 -6
  344. package/test-env/components/datagrid/body/header/column_actions.js +5 -21
  345. package/test-env/components/datagrid/body/header/data_grid_header_cell.js +29 -10
  346. package/test-env/components/datagrid/body/header/data_grid_header_cell.styles.js +8 -1
  347. package/test-env/components/datagrid/body/header/data_grid_header_cell_wrapper.js +5 -2
  348. package/test-env/components/datagrid/controls/column_selector.js +36 -19
  349. package/test-env/components/datagrid/controls/column_sorting.js +23 -6
  350. package/test-env/components/datagrid/controls/data_grid_toolbar_control.js +13 -7
  351. package/test-env/components/datagrid/data_grid.js +5 -1
  352. package/test-env/components/datagrid/utils/in_memory.js +25 -7
  353. package/test-env/components/date_picker/auto_refresh/auto_refresh.js +12 -3
  354. package/test-env/components/date_picker/super_date_picker/date_popover/absolute_tab.js +30 -4
  355. package/test-env/components/date_picker/super_date_picker/date_popover/date_popover_button.js +24 -3
  356. package/test-env/components/date_picker/super_date_picker/date_popover/date_popover_content.js +26 -4
  357. package/test-env/components/date_picker/super_date_picker/date_popover/relative_tab.js +29 -3
  358. package/test-env/components/date_picker/super_date_picker/date_popover/timezone_display.js +103 -0
  359. package/test-env/components/date_picker/super_date_picker/date_popover/timezone_display.styles.js +25 -0
  360. package/test-env/components/date_picker/super_date_picker/pretty_duration.js +2 -9
  361. package/test-env/components/date_picker/super_date_picker/relative_utils.js +9 -0
  362. package/test-env/components/date_picker/super_date_picker/super_date_picker.js +118 -26
  363. package/test-env/components/date_picker/super_date_picker/time_window_buttons.js +193 -0
  364. package/test-env/components/facet/facet_button.js +9 -19
  365. package/test-env/components/filter_group/filter_button.js +14 -1
  366. package/test-env/components/form/file_picker/file_picker.styles.js +3 -3
  367. package/test-env/components/form/form_control_button/form_control_button.js +13 -7
  368. package/test-env/components/header/header_links/header_link.js +13 -7
  369. package/test-env/components/header/header_section/header_section_item_button.js +13 -7
  370. package/test-env/components/icon/assets/boxes_vertical.js +1 -1
  371. package/test-env/components/icon/assets/checkInCircleFilled.js +1 -2
  372. package/test-env/components/icon/assets/errorFilled.js +1 -2
  373. package/test-env/components/icon/assets/paper_clip.js +1 -1
  374. package/test-env/components/icon/assets/streams_wired.js +3 -2
  375. package/test-env/components/icon/assets/warningFilled.js +1 -2
  376. package/test-env/components/icon/icon_map.js +3 -6
  377. package/test-env/components/list_group/list_group.js +13 -1
  378. package/test-env/components/list_group/list_group_item.js +13 -1
  379. package/test-env/components/list_group/list_group_item_extra_action.js +13 -1
  380. package/test-env/components/list_group/pinnable_list_group/pinnable_list_group.js +15 -2
  381. package/test-env/components/overlay_mask/overlay_mask.styles.js +1 -1
  382. package/test-env/components/pagination/pagination_button.js +13 -7
  383. package/test-env/components/popover/popover.js +21 -15
  384. package/test-env/components/provider/component_defaults/component_defaults.js +22 -2
  385. package/test-env/components/table/table_row.styles.js +1 -1
  386. package/test-env/components/tool_tip/tool_tip.js +24 -24
  387. package/test-env/global_styling/index.js +16 -1
  388. package/test-env/global_styling/mixins/_button.js +1 -1
  389. package/test-env/global_styling/utility/selectors.js +15 -0
  390. package/test-env/services/focus_trap/focus_trap_pub_sub.js +80 -0
  391. package/test-env/services/focus_trap/index.js +12 -0
  392. package/test-env/services/hooks/index.js +18 -1
  393. package/test-env/services/hooks/useEuiDisabledElement.js +197 -0
  394. package/test-env/services/index.js +8 -0
  395. package/test-env/services/popover/reposition_on_scroll.js +67 -0
  396. package/test-env/services/theme/high_contrast_overrides.js +5 -1
  397. package/test-env/test/cypress/index.js +18 -0
  398. package/test-env/test/cypress/matchers.js +61 -0
  399. package/test-env/test/cypress/test_reposition_on_scroll.js +70 -0
  400. package/test-env/test/enzyme/enzyme_matchers.js +50 -0
  401. package/test-env/test/enzyme/index.js +24 -0
  402. package/test-env/test/rtl/index.js +24 -2
  403. package/test-env/test/rtl/matchers.js +86 -0
  404. package/test-env/utils/element_can_be_disabled.js +22 -0
  405. package/test-env/utils/index.js +14 -1
@@ -34,8 +34,7 @@ var EuiIconCheckInCircleFilled = function EuiIconCheckInCircleFilled(_ref) {
34
34
  }, props), title ? (0, _react2.jsx)("title", {
35
35
  id: titleId
36
36
  }, title) : null, (0, _react2.jsx)("path", {
37
- fillRule: "evenodd",
38
- d: "M8 16A8 8 0 1 1 8 0a8 8 0 0 1 0 16Zm3.65-10.857L6.91 9.8 4.35 7.286a.5.5 0 0 0-.7.714l2.909 2.857a.5.5 0 0 0 .7 0l5.091-5a.5.5 0 1 0-.7-.714Z"
37
+ d: "M8 1a7 7 0 1 1 0 14A7 7 0 0 1 8 1ZM7 9.293 5.354 7.646l-.708.708L7 10.707l4.354-4.353-.707-.708L7 9.293Z"
39
38
  }));
40
39
  };
41
40
  var icon = exports.icon = EuiIconCheckInCircleFilled;
@@ -34,8 +34,7 @@ var EuiIconErrorFilled = function EuiIconErrorFilled(_ref) {
34
34
  }, props), title ? (0, _react2.jsx)("title", {
35
35
  id: titleId
36
36
  }, title) : null, (0, _react2.jsx)("path", {
37
- fillRule: "evenodd",
38
- d: "M10 1a1 1 0 0 1 .707.293l4 4A1 1 0 0 1 15 6v5a1 1 0 0 1-.293.707l-4 4A1 1 0 0 1 10 16H5a1 1 0 0 1-.707-.293l-4-4A1 1 0 0 1 0 11V6a1 1 0 0 1 .293-.707l4-4A1 1 0 0 1 5 1h5ZM4.146 5.146a.5.5 0 0 1 .708 0L7.5 7.793l2.646-2.647a.5.5 0 0 1 .708.708L8.207 8.5l2.647 2.646a.5.5 0 0 1-.708.708L7.5 9.207l-2.646 2.647a.5.5 0 0 1-.708-.708L6.793 8.5 4.146 5.854a.5.5 0 0 1 0-.708Z"
37
+ d: "M10.392 1.005a1 1 0 0 1 .608.288L14.707 5a1 1 0 0 1 .293.707v4.586a1 1 0 0 1-.293.707L11 14.707a1 1 0 0 1-.707.293H5.707a1 1 0 0 1-.634-.227L5 14.707 1.293 11a1 1 0 0 1-.288-.608L1 10.293V5.707A1 1 0 0 1 1.293 5L5 1.293A1 1 0 0 1 5.707 1h4.586l.099.005ZM8 7.293 5.354 4.646l-.708.708L7.293 8l-2.647 2.646.708.707L8 8.707l2.646 2.646.707-.707L8.707 8l2.646-2.646-.707-.708L8 7.293Z"
39
38
  }));
40
39
  };
41
40
  var icon = exports.icon = EuiIconErrorFilled;
@@ -34,7 +34,7 @@ var EuiIconPaperClip = function EuiIconPaperClip(_ref) {
34
34
  }, props), title ? (0, _react2.jsx)("title", {
35
35
  id: titleId
36
36
  }, title) : null, (0, _react2.jsx)("path", {
37
- d: "M9.84 2.019 3.046 8.57c-.987.952-1.133 2.517-.199 3.516.951 1.021 2.58 1.106 3.64.19.034-.03.068-.061.1-.092l5.655-5.452a.484.484 0 0 0 0-.703.53.53 0 0 0-.729 0L5.92 11.421c-.572.551-1.505.657-2.131.163a1.455 1.455 0 0 1-.118-2.211l6.899-6.651a2.646 2.646 0 0 1 3.644 0 2.422 2.422 0 0 1 0 3.513L7.3 12.901c-1.333 1.285-3.497 1.493-4.95.336-1.54-1.22-1.764-3.411-.5-4.897a3.33 3.33 0 0 1 .238-.252l5.78-5.572a.484.484 0 0 0 0-.703.53.53 0 0 0-.73 0l-5.78 5.572a4.36 4.36 0 0 0 0 6.324c2.188 2.109 5.202 1.31 6.66-.095l6.925-6.676a3.39 3.39 0 0 0 0-4.92C13.534.66 11.25.66 9.841 2.019z"
37
+ d: "M7 11c0 .423.105.648.229.771.123.124.348.229.771.229.423 0 .648-.105.771-.229.124-.123.229-.348.229-.771V5h1v6c0 .577-.145 1.102-.521 1.479C9.102 12.854 8.577 13 8 13c-.577 0-1.102-.145-1.479-.521C6.145 12.101 6 11.577 6 11V4c0-.719.215-1.468.716-2.046C7.226 1.364 7.996 1 9 1c1.005 0 1.773.365 2.284.954.5.578.716 1.327.716 2.046v7c0 1.103-.345 2.11-1.043 2.845C10.255 14.583 9.242 15 8 15c-1.242 0-2.255-.417-2.957-1.155C4.345 13.11 4 12.103 4 11V4h1v7c0 .897.279 1.64.768 2.155C6.253 13.666 6.99 14 8 14c1.01 0 1.747-.334 2.232-.845.49-.515.768-1.258.768-2.155V4c0-.531-.16-1.032-.472-1.392C10.227 2.26 9.745 2 9 2s-1.227.26-1.528.608C7.16 2.968 7 3.47 7 4v7Z"
38
38
  }));
39
39
  };
40
40
  var icon = exports.icon = EuiIconPaperClip;
@@ -29,17 +29,18 @@ var EuiIconStreamsWired = function EuiIconStreamsWired(_ref) {
29
29
  xmlns: "http://www.w3.org/2000/svg",
30
30
  width: 16,
31
31
  height: 16,
32
+ fill: "none",
32
33
  viewBox: "0 0 16 16",
33
34
  "aria-labelledby": titleId
34
35
  }, props), title ? (0, _react2.jsx)("title", {
35
36
  id: titleId
36
37
  }, title) : null, (0, _react2.jsx)("path", {
37
38
  fillRule: "evenodd",
38
- d: "M13.5 1a1.5 1.5 0 1 1-1.413 2H11.5A1.5 1.5 0 0 0 10 4.5v1c0 .564-.19 1.082-.504 1.5H9.5l-.048.06a2.58 2.58 0 0 1-.352.36c-.01.01-.021.017-.032.025a2.501 2.501 0 0 1-.142.108l-.043.03c-.055.036-.11.07-.168.103l-.047.024c-.057.03-.115.06-.175.085-.018.008-.036.014-.055.021A2.475 2.475 0 0 1 7.5 8h-.504c.315.418.504.936.504 1.5v1A1.5 1.5 0 0 0 9 12h3.087a1.5 1.5 0 1 1 0 1H9a2.5 2.5 0 0 1-2.5-2.5v-1A1.5 1.5 0 0 0 5 8H3.913a1.5 1.5 0 1 1 0-1H7.5A1.5 1.5 0 0 0 9 5.5v-1A2.5 2.5 0 0 1 11.5 2h.587A1.5 1.5 0 0 1 13.5 1Zm0 11a.5.5 0 1 0 0 1 .5.5 0 0 0 0-1Zm-11-5a.5.5 0 1 0 0 1 .5.5 0 0 0 0-1Zm11-5a.5.5 0 1 0 0 1 .5.5 0 0 0 0-1Z",
39
+ d: "M13.5 1a1.5 1.5 0 1 1-1.413 2H11.5A1.5 1.5 0 0 0 10 4.5V6a2.49 2.49 0 0 1-.504 1.5H9.5l-.048.06a2.58 2.58 0 0 1-.352.36c-.01.01-.021.017-.032.025a2.496 2.496 0 0 1-.142.108l-.043.03c-.055.036-.11.07-.168.103l-.047.024c-.057.03-.115.06-.175.085-.018.008-.036.014-.055.021A2.475 2.475 0 0 1 7.5 8.5h-.504c.315.418.504.936.504 1.5v1.5A1.5 1.5 0 0 0 9 13h3.087a1.5 1.5 0 1 1 0 1H9a2.5 2.5 0 0 1-2.5-2.5V10A1.5 1.5 0 0 0 5 8.5H3.913a1.5 1.5 0 1 1 0-1H7.5A1.5 1.5 0 0 0 9 6V4.5A2.5 2.5 0 0 1 11.5 2h.587A1.5 1.5 0 0 1 13.5 1Zm0 12a.5.5 0 1 0 0 1 .5.5 0 0 0 0-1Zm-11-5.5a.5.5 0 1 0 0 1 .5.5 0 0 0 0-1Zm11-5.5a.5.5 0 1 0 0 1 .5.5 0 0 0 0-1Z",
39
40
  clipRule: "evenodd"
40
41
  }), (0, _react2.jsx)("path", {
41
42
  fillRule: "evenodd",
42
- d: "M13.5 6a1.5 1.5 0 1 1-1.413 2H9.948c.293-.287.536-.625.714-1h1.425A1.5 1.5 0 0 1 13.5 6Zm0 1a.5.5 0 1 0 0 1 .5.5 0 0 0 0-1Z",
43
+ d: "M13.5 6.5a1.5 1.5 0 1 1-1.413 2H9.948c.293-.287.536-.625.714-1h1.425a1.5 1.5 0 0 1 1.413-1Zm0 1a.5.5 0 1 0 0 1 .5.5 0 0 0 0-1Z",
43
44
  clipRule: "evenodd"
44
45
  }));
45
46
  };
@@ -34,8 +34,7 @@ var EuiIconWarningFilled = function EuiIconWarningFilled(_ref) {
34
34
  }, props), title ? (0, _react2.jsx)("title", {
35
35
  id: titleId
36
36
  }, title) : null, (0, _react2.jsx)("path", {
37
- fillRule: "evenodd",
38
- d: "M8 1a1 1 0 0 1 .864.496l7 12A1 1 0 0 1 15 15H1a1 1 0 0 1-.864-1.504l7-12A1 1 0 0 1 8 1Zm.9 4.995-.35 3.507a.552.552 0 0 1-1.1 0L7.1 5.995a.905.905 0 1 1 1.8 0ZM8 13a1 1 0 1 0 0-2 1 1 0 0 0 0 2Z"
37
+ d: "M8 1a1 1 0 0 1 .863.496l7 12A1 1 0 0 1 15 15H1a1 1 0 0 1-.864-1.504l7-12A1 1 0 0 1 8 1Zm0 10a1 1 0 1 0 0 2 1 1 0 0 0 0-2Zm-.5-6v5h1V5h-1Z"
39
38
  }));
40
39
  };
41
40
  var icon = exports.icon = EuiIconWarningFilled;
@@ -60,8 +60,7 @@ var typeToPathMap = exports.typeToPathMap = {
60
60
  changePointDetection: 'change_point_detection',
61
61
  check: 'check',
62
62
  checkCircle: 'checkCircle',
63
- checkInCircleFilled: 'checkCircle',
64
- // NOTE: To be deprecated in favor of `checkCircle`
63
+ checkInCircleFilled: 'checkInCircleFilled',
65
64
  cheer: 'cheer',
66
65
  classificationJob: 'ml_classification_job',
67
66
  clickLeft: 'clickLeft',
@@ -166,8 +165,7 @@ var typeToPathMap = exports.typeToPathMap = {
166
165
  eql: 'eql',
167
166
  eraser: 'eraser',
168
167
  error: 'error',
169
- errorFilled: 'error',
170
- // NOTE: To be deprecated in favor of `error`
168
+ errorFilled: 'errorFilled',
171
169
  esqlVis: 'esqlVis',
172
170
  exit: 'exit',
173
171
  expand: 'expand',
@@ -506,8 +504,7 @@ var typeToPathMap = exports.typeToPathMap = {
506
504
  visualizeApp: 'app_visualize',
507
505
  vulnerabilityManagementApp: 'app_vulnerability_management',
508
506
  warning: 'warning',
509
- warningFilled: 'warning',
510
- // NOTE: To be deprecated in favor of `warning`
507
+ warningFilled: 'warningFilled',
511
508
  watchesApp: 'app_watches',
512
509
  web: 'web',
513
510
  wordWrap: 'wordWrap',
@@ -194,7 +194,6 @@ EuiListGroup.propTypes = {
194
194
  color: _propTypes.default.any,
195
195
  "aria-label": _propTypes.default.string,
196
196
  "aria-labelledby": _propTypes.default.string,
197
- isDisabled: _propTypes.default.bool,
198
197
  /**
199
198
  * Overall size of button.
200
199
  * Matches the sizes of other EuiButtons
@@ -224,6 +223,19 @@ EuiListGroup.propTypes = {
224
223
  className: _propTypes.default.string,
225
224
  "data-test-subj": _propTypes.default.string,
226
225
  css: _propTypes.default.any,
226
+ /**
227
+ * Controls the disabled behavior via the native `disabled` attribute.
228
+ */
229
+ isDisabled: _propTypes.default.bool,
230
+ /**
231
+ * NOTE: Beta feature, may be changed or removed in the future
232
+ *
233
+ * Changes the native `disabled` attribute to `aria-disabled` to preserve focusability.
234
+ * This results in a semantically disabled button without the default browser handling of the disabled state.
235
+ *
236
+ * Use e.g. when a disabled button should have a tooltip.
237
+ */
238
+ hasAriaDisabled: _propTypes.default.bool,
227
239
  buttonRef: _propTypes.default.any
228
240
  }),
229
241
  /**
@@ -271,7 +271,6 @@ EuiListGroupItem.propTypes = {
271
271
  color: _propTypes.default.any,
272
272
  "aria-label": _propTypes.default.string,
273
273
  "aria-labelledby": _propTypes.default.string,
274
- isDisabled: _propTypes.default.bool,
275
274
  /**
276
275
  * Overall size of button.
277
276
  * Matches the sizes of other EuiButtons
@@ -301,6 +300,19 @@ EuiListGroupItem.propTypes = {
301
300
  className: _propTypes.default.string,
302
301
  "data-test-subj": _propTypes.default.string,
303
302
  css: _propTypes.default.any,
303
+ /**
304
+ * Controls the disabled behavior via the native `disabled` attribute.
305
+ */
306
+ isDisabled: _propTypes.default.bool,
307
+ /**
308
+ * NOTE: Beta feature, may be changed or removed in the future
309
+ *
310
+ * Changes the native `disabled` attribute to `aria-disabled` to preserve focusability.
311
+ * This results in a semantically disabled button without the default browser handling of the disabled state.
312
+ *
313
+ * Use e.g. when a disabled button should have a tooltip.
314
+ */
315
+ hasAriaDisabled: _propTypes.default.bool,
304
316
  buttonRef: _propTypes.default.any
305
317
  }),
306
318
  /**
@@ -59,7 +59,6 @@ EuiListGroupItemExtraAction.propTypes = {
59
59
  color: _propTypes.default.any,
60
60
  "aria-label": _propTypes.default.string,
61
61
  "aria-labelledby": _propTypes.default.string,
62
- isDisabled: _propTypes.default.bool,
63
62
  /**
64
63
  * Overall size of button.
65
64
  * Matches the sizes of other EuiButtons
@@ -89,6 +88,19 @@ EuiListGroupItemExtraAction.propTypes = {
89
88
  className: _propTypes.default.string,
90
89
  "data-test-subj": _propTypes.default.string,
91
90
  css: _propTypes.default.any,
91
+ /**
92
+ * Controls the disabled behavior via the native `disabled` attribute.
93
+ */
94
+ isDisabled: _propTypes.default.bool,
95
+ /**
96
+ * NOTE: Beta feature, may be changed or removed in the future
97
+ *
98
+ * Changes the native `disabled` attribute to `aria-disabled` to preserve focusability.
99
+ * This results in a semantically disabled button without the default browser handling of the disabled state.
100
+ *
101
+ * Use e.g. when a disabled button should have a tooltip.
102
+ */
103
+ hasAriaDisabled: _propTypes.default.bool,
92
104
  buttonRef: _propTypes.default.any,
93
105
  parentIsDisabled: _propTypes.default.bool
94
106
  };
@@ -173,7 +173,6 @@ EuiPinnableListGroup.propTypes = {
173
173
  color: _propTypes.default.any,
174
174
  "aria-label": _propTypes.default.string,
175
175
  "aria-labelledby": _propTypes.default.string,
176
- isDisabled: _propTypes.default.bool,
177
176
  /**
178
177
  * Overall size of button.
179
178
  * Matches the sizes of other EuiButtons
@@ -203,6 +202,19 @@ EuiPinnableListGroup.propTypes = {
203
202
  className: _propTypes.default.string,
204
203
  "data-test-subj": _propTypes.default.string,
205
204
  css: _propTypes.default.any,
205
+ /**
206
+ * Controls the disabled behavior via the native `disabled` attribute.
207
+ */
208
+ isDisabled: _propTypes.default.bool,
209
+ /**
210
+ * NOTE: Beta feature, may be changed or removed in the future
211
+ *
212
+ * Changes the native `disabled` attribute to `aria-disabled` to preserve focusability.
213
+ * This results in a semantically disabled button without the default browser handling of the disabled state.
214
+ *
215
+ * Use e.g. when a disabled button should have a tooltip.
216
+ */
217
+ hasAriaDisabled: _propTypes.default.bool,
206
218
  buttonRef: _propTypes.default.any
207
219
  }),
208
220
  /**
@@ -306,7 +318,6 @@ EuiPinnableListGroup.propTypes = {
306
318
  color: _propTypes.default.any,
307
319
  "aria-label": _propTypes.default.string,
308
320
  "aria-labelledby": _propTypes.default.string,
309
- isDisabled: _propTypes.default.bool,
310
321
  size: _propTypes.default.any,
311
322
  iconSize: _propTypes.default.any,
312
323
  isSelected: _propTypes.default.bool,
@@ -315,6 +326,8 @@ EuiPinnableListGroup.propTypes = {
315
326
  className: _propTypes.default.string,
316
327
  "data-test-subj": _propTypes.default.string,
317
328
  css: _propTypes.default.any,
329
+ isDisabled: _propTypes.default.bool,
330
+ hasAriaDisabled: _propTypes.default.bool,
318
331
  buttonRef: _propTypes.default.any
319
332
  }),
320
333
  /**
@@ -18,7 +18,7 @@ var euiOverlayMaskStyles = exports.euiOverlayMaskStyles = function euiOverlayMas
18
18
  var euiTheme = _ref.euiTheme,
19
19
  highContrastMode = _ref.highContrastMode;
20
20
  return {
21
- euiOverlayMask: /*#__PURE__*/(0, _css.css)("position:fixed;", (0, _global_styling.logicalCSS)('top', 0), " ", (0, _global_styling.logicalCSS)('left', 0), " ", (0, _global_styling.logicalCSS)('right', 0), " ", (0, _global_styling.logicalCSS)('bottom', 0), " display:flex;align-items:center;justify-content:center;", (0, _global_styling.logicalCSS)('padding-bottom', '10vh'), " animation:", _global_styling.euiAnimFadeIn, " ", euiTheme.animation.fast, " ease-in;background:", highContrastMode ? euiTheme.components.overlayMaskBackgroundHighContrast : euiTheme.components.overlayMaskBackground, ";;label:euiOverlayMask;"),
21
+ euiOverlayMask: /*#__PURE__*/(0, _css.css)("position:fixed;", (0, _global_styling.logicalCSS)('top', 0), " ", (0, _global_styling.logicalCSS)('left', 0), " ", (0, _global_styling.logicalCSS)('right', 0), " ", (0, _global_styling.logicalCSS)('bottom', 0), " display:flex;align-items:center;justify-content:center;animation:", _global_styling.euiAnimFadeIn, " ", euiTheme.animation.fast, " ease-in;background:", highContrastMode ? euiTheme.components.overlayMaskBackgroundHighContrast : euiTheme.components.overlayMaskBackground, ";;label:euiOverlayMask;"),
22
22
  aboveHeader: /*#__PURE__*/(0, _css.css)("z-index:", euiTheme.levels.mask, ";;label:aboveHeader;"),
23
23
  belowHeader: /*#__PURE__*/(0, _css.css)("z-index:", euiTheme.levels.maskBelowHeader, ";", (0, _global_styling.logicalCSS)('top', 'var(--euiFixedHeadersOffset, 0)'), ";;label:belowHeader;")
24
24
  };
@@ -73,13 +73,6 @@ var EuiPaginationButton = exports.EuiPaginationButton = function EuiPaginationBu
73
73
  EuiPaginationButton.propTypes = {
74
74
  href: _propTypes.default.oneOfType([_propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.string]), _propTypes.default.string]),
75
75
  onClick: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.func]),
76
- /**
77
- * `disabled` is also allowed
78
- */
79
- /**
80
- * `disabled` is also allowed
81
- */
82
- isDisabled: _propTypes.default.bool,
83
76
  target: _propTypes.default.string,
84
77
  rel: _propTypes.default.string,
85
78
  type: _propTypes.default.any,
@@ -118,10 +111,23 @@ EuiPaginationButton.propTypes = {
118
111
  "data-text": _propTypes.default.string
119
112
  }).isRequired, _propTypes.default.oneOf([false])]),
120
113
  iconSize: _propTypes.default.any,
114
+ /**
115
+ * Controls the disabled behavior via the native `disabled` attribute.
116
+ */
117
+ isDisabled: _propTypes.default.bool,
121
118
  className: _propTypes.default.string,
122
119
  "aria-label": _propTypes.default.string,
123
120
  "data-test-subj": _propTypes.default.string,
124
121
  css: _propTypes.default.any,
122
+ /**
123
+ * NOTE: Beta feature, may be changed or removed in the future
124
+ *
125
+ * Changes the native `disabled` attribute to `aria-disabled` to preserve focusability.
126
+ * This results in a semantically disabled button without the default browser handling of the disabled state.
127
+ *
128
+ * Use e.g. when a disabled button should have a tooltip.
129
+ */
130
+ hasAriaDisabled: _propTypes.default.bool,
125
131
  isActive: _propTypes.default.bool,
126
132
  pageIndex: _propTypes.default.number.isRequired,
127
133
  totalPages: _propTypes.default.number
@@ -30,11 +30,13 @@ var _accessibility = require("../accessibility");
30
30
  var _portal = require("../portal");
31
31
  var _mutation_observer = require("../observer/mutation_observer");
32
32
  var _popover = require("../../services/popover");
33
+ var _reposition_on_scroll = require("../../services/popover/reposition_on_scroll");
33
34
  var _i18n = require("../i18n");
34
35
  var _outside_click_detector = require("../outside_click_detector");
35
36
  var _popover_arrow = require("./popover_arrow");
36
37
  var _popover2 = require("./popover.styles");
37
38
  var _popover_panel = require("./popover_panel");
39
+ var _component_defaults = require("../provider/component_defaults");
38
40
  var _react2 = require("@emotion/react");
39
41
  var _excluded = ["anchorPosition", "button", "insert", "isOpen", "ownFocus", "children", "className", "closePopover", "panelClassName", "panelPaddingSize", "panelProps", "panelRef", "panelStyle", "popoverScreenReaderText", "popoverRef", "hasArrow", "arrowChildren", "repositionOnScroll", "repositionToCrossAxis", "zIndex", "attachToAnchor", "display", "offset", "onPositionChange", "buffer", "aria-label", "aria-labelledby", "aria-live", "container", "focusTrapProps", "initialFocus", "tabIndex"];
40
42
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
@@ -98,7 +100,8 @@ var EuiPopover = exports.EuiPopover = /*#__PURE__*/function (_Component) {
98
100
  var _this;
99
101
  (0, _classCallCheck2.default)(this, EuiPopover);
100
102
  _this = _callSuper(this, EuiPopover, [props]);
101
- (0, _defineProperty2.default)(_this, "respositionTimeout", void 0);
103
+ (0, _defineProperty2.default)(_this, "repositionOnScroll", void 0);
104
+ (0, _defineProperty2.default)(_this, "repositionTimeout", void 0);
102
105
  (0, _defineProperty2.default)(_this, "strandedFocusTimeout", void 0);
103
106
  (0, _defineProperty2.default)(_this, "closingTransitionTimeout", void 0);
104
107
  (0, _defineProperty2.default)(_this, "closingTransitionAnimationFrame", void 0);
@@ -177,12 +180,13 @@ var EuiPopover = exports.EuiPopover = /*#__PURE__*/function (_Component) {
177
180
  }),
178
181
  durationMatch = _Array$prototype$slic.durationMatch,
179
182
  delayMatch = _Array$prototype$slic.delayMatch;
180
- clearTimeout(_this.respositionTimeout);
181
- _this.respositionTimeout = window.setTimeout(function () {
183
+ clearTimeout(_this.repositionTimeout);
184
+ _this.repositionTimeout = window.setTimeout(function () {
182
185
  _this.setState({
183
186
  isOpenStable: true
184
187
  }, function () {
185
188
  _this.positionPopoverFixed();
189
+ _services.focusTrapPubSub.publish();
186
190
  });
187
191
  }, durationMatch + delayMatch);
188
192
  });
@@ -292,6 +296,13 @@ var EuiPopover = exports.EuiPopover = /*#__PURE__*/function (_Component) {
292
296
  // once a stable position has been found, keep the contents on that side
293
297
  isOpenStable: false // wait for any initial opening transitions to finish before marking as stable
294
298
  };
299
+ _this.repositionOnScroll = (0, _reposition_on_scroll.createRepositionOnScroll)(function () {
300
+ return {
301
+ repositionOnScroll: _this.props.repositionOnScroll,
302
+ componentDefaults: _this.context.EuiPopover,
303
+ repositionFn: _this.positionPopoverFixed
304
+ };
305
+ });
295
306
  return _this;
296
307
  }
297
308
  (0, _inherits2.default)(EuiPopover, _Component);
@@ -309,9 +320,7 @@ var EuiPopover = exports.EuiPopover = /*#__PURE__*/function (_Component) {
309
320
  _this2.onOpenPopover();
310
321
  });
311
322
  }
312
- if (this.props.repositionOnScroll) {
313
- window.addEventListener('scroll', this.positionPopoverFixed, true);
314
- }
323
+ this.repositionOnScroll.subscribe();
315
324
  }
316
325
  }, {
317
326
  key: "componentDidUpdate",
@@ -328,13 +337,7 @@ var EuiPopover = exports.EuiPopover = /*#__PURE__*/function (_Component) {
328
337
  }
329
338
 
330
339
  // update scroll listener
331
- if (prevProps.repositionOnScroll !== this.props.repositionOnScroll) {
332
- if (this.props.repositionOnScroll) {
333
- window.addEventListener('scroll', this.positionPopoverFixed, true);
334
- } else {
335
- window.removeEventListener('scroll', this.positionPopoverFixed, true);
336
- }
337
- }
340
+ this.repositionOnScroll.update();
338
341
 
339
342
  // The popover is being closed.
340
343
  if (prevProps.isOpen && !this.props.isOpen) {
@@ -344,17 +347,19 @@ var EuiPopover = exports.EuiPopover = /*#__PURE__*/function (_Component) {
344
347
  _this3.setState({
345
348
  isClosing: false
346
349
  });
350
+ _services.focusTrapPubSub.publish();
347
351
  }, closingTransitionTime);
348
352
  }
349
353
  }
350
354
  }, {
351
355
  key: "componentWillUnmount",
352
356
  value: function componentWillUnmount() {
353
- window.removeEventListener('scroll', this.positionPopoverFixed, true);
354
- clearTimeout(this.respositionTimeout);
357
+ this.repositionOnScroll.cleanup();
358
+ clearTimeout(this.repositionTimeout);
355
359
  clearTimeout(this.strandedFocusTimeout);
356
360
  clearTimeout(this.closingTransitionTimeout);
357
361
  cancelAnimationFrame(this.closingTransitionAnimationFrame);
362
+ _services.focusTrapPubSub.publish();
358
363
  }
359
364
  }, {
360
365
  key: "render",
@@ -527,6 +532,7 @@ var EuiPopover = exports.EuiPopover = /*#__PURE__*/function (_Component) {
527
532
  }
528
533
  }]);
529
534
  }(_react.Component);
535
+ (0, _defineProperty2.default)(EuiPopover, "contextType", _component_defaults.EuiComponentDefaultsContext);
530
536
  (0, _defineProperty2.default)(EuiPopover, "defaultProps", {
531
537
  isOpen: false,
532
538
  ownFocus: true,
@@ -71,7 +71,17 @@ EuiComponentDefaultsProvider.propTypes = {
71
71
  * Provide a global configuration for `EuiFlyout`s.
72
72
  * Defaults will be inherited by all `EuiFlyout`s.
73
73
  */
74
- EuiFlyout: _propTypes.default.any
74
+ EuiFlyout: _propTypes.default.any,
75
+ /**
76
+ * Provide a global configuration for `EuiPopover`s.
77
+ * Defaults will be inherited by every `EuiPopover`.
78
+ */
79
+ EuiPopover: _propTypes.default.any,
80
+ /**
81
+ * Provide a global configuration for `EuiToolTip`s.
82
+ * Defaults will be inherited by every `EuiToolTip`.
83
+ */
84
+ EuiToolTip: _propTypes.default.any
75
85
  })
76
86
  };
77
87
  var useComponentDefaults = exports.useComponentDefaults = function useComponentDefaults() {
@@ -126,5 +136,15 @@ EuiProviderComponentDefaultsProps.propTypes = {
126
136
  * Provide a global configuration for `EuiFlyout`s.
127
137
  * Defaults will be inherited by all `EuiFlyout`s.
128
138
  */
129
- EuiFlyout: _propTypes.default.any
139
+ EuiFlyout: _propTypes.default.any,
140
+ /**
141
+ * Provide a global configuration for `EuiPopover`s.
142
+ * Defaults will be inherited by every `EuiPopover`.
143
+ */
144
+ EuiPopover: _propTypes.default.any,
145
+ /**
146
+ * Provide a global configuration for `EuiToolTip`s.
147
+ * Defaults will be inherited by every `EuiToolTip`.
148
+ */
149
+ EuiToolTip: _propTypes.default.any
130
150
  };
@@ -62,7 +62,7 @@ var euiTableRowStyles = exports.euiTableRowStyles = function euiTableRowStyles(e
62
62
  // preceding table row via negative margins
63
63
  'margin-top', (0, _global_styling.mathWithUnits)([cellContentPadding, euiTheme.border.width.thin], function (x, y) {
64
64
  return (x + y * 2) * -1;
65
- })), (0, _global_styling.logicalCSS)('padding-left', cellContentPadding), " ", (0, _global_styling.logicalCSS)('border-top', euiTheme.border.thin), " ", (0, _global_styling.logicalCSS)('border-top-left-radius', 0), " ", (0, _global_styling.logicalCSS)('border-top-right-radius', 0), " &:after{", (0, _global_styling.logicalCSS)('border-top', 'none'), ";}clip-path:polygon(-50% 0, 150% 0, 150% 100vh, -50% 100vh);>.euiTableRowCell{", (0, _global_styling.logicalCSS)('width', '100%'), ";}", expandedAnimationCss, ";;label:expanded;")
65
+ })), (0, _global_styling.logicalCSS)('padding-left', cellContentPadding), " ", (0, _global_styling.logicalCSS)('border-top', euiTheme.border.thin), " ", (0, _global_styling.logicalCSS)('border-top-left-radius', 0), " ", (0, _global_styling.logicalCSS)('border-top-right-radius', 0), " &:after{", (0, _global_styling.logicalCSS)('border-top', 'none'), ";}clip-path:polygon(-50% 0, 150% 0, 150% 150%, -50% 150%);>.euiTableRowCell{", (0, _global_styling.logicalCSS)('width', '100%'), ";}", expandedAnimationCss, ";;label:expanded;")
66
66
  }
67
67
  };
68
68
  };
@@ -18,9 +18,11 @@ var _react = _interopRequireWildcard(require("react"));
18
18
  var _propTypes = _interopRequireDefault(require("prop-types"));
19
19
  var _classnames = _interopRequireDefault(require("classnames"));
20
20
  var _services = require("../../services");
21
+ var _reposition_on_scroll = require("../../services/popover/reposition_on_scroll");
21
22
  var _react2 = require("../../services/react");
22
23
  var _resize_observer = require("../observer/resize_observer");
23
24
  var _portal = require("../portal");
25
+ var _component_defaults = require("../provider/component_defaults");
24
26
  var _tool_tip_popover = require("./tool_tip_popover");
25
27
  var _tool_tip_anchor = require("./tool_tip_anchor");
26
28
  var _tool_tip_arrow = require("./tool_tip_arrow");
@@ -57,25 +59,15 @@ var DEFAULT_TOOLTIP_STYLES = {
57
59
  visibility: 'hidden'
58
60
  };
59
61
  var EuiToolTip = exports.EuiToolTip = /*#__PURE__*/function (_Component) {
60
- function EuiToolTip() {
62
+ function EuiToolTip(props) {
61
63
  var _this;
62
64
  (0, _classCallCheck2.default)(this, EuiToolTip);
63
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
64
- args[_key] = arguments[_key];
65
- }
66
- _this = _callSuper(this, EuiToolTip, [].concat(args));
65
+ _this = _callSuper(this, EuiToolTip, [props]);
66
+ (0, _defineProperty2.default)(_this, "repositionOnScroll", void 0);
67
67
  (0, _defineProperty2.default)(_this, "_isMounted", false);
68
68
  (0, _defineProperty2.default)(_this, "anchor", null);
69
69
  (0, _defineProperty2.default)(_this, "popover", null);
70
70
  (0, _defineProperty2.default)(_this, "timeoutId", void 0);
71
- (0, _defineProperty2.default)(_this, "state", {
72
- visible: false,
73
- hasFocus: false,
74
- calculatedPosition: _this.props.position,
75
- toolTipStyles: DEFAULT_TOOLTIP_STYLES,
76
- arrowStyles: undefined,
77
- id: _this.props.id || (0, _services.htmlIdGenerator)()()
78
- });
79
71
  (0, _defineProperty2.default)(_this, "clearAnimationTimeout", function () {
80
72
  if (_this.timeoutId) {
81
73
  _this.timeoutId = clearTimeout(_this.timeoutId);
@@ -204,6 +196,21 @@ var EuiToolTip = exports.EuiToolTip = /*#__PURE__*/function (_Component) {
204
196
  _this.props.onMouseOut(event);
205
197
  }
206
198
  });
199
+ _this.state = {
200
+ visible: false,
201
+ hasFocus: false,
202
+ calculatedPosition: _this.props.position,
203
+ toolTipStyles: DEFAULT_TOOLTIP_STYLES,
204
+ arrowStyles: undefined,
205
+ id: _this.props.id || (0, _services.htmlIdGenerator)()()
206
+ };
207
+ _this.repositionOnScroll = (0, _reposition_on_scroll.createRepositionOnScroll)(function () {
208
+ return {
209
+ repositionOnScroll: _this.props.repositionOnScroll,
210
+ componentDefaults: _this.context.EuiToolTip,
211
+ repositionFn: _this.positionToolTip
212
+ };
213
+ });
207
214
  return _this;
208
215
  }
209
216
  (0, _inherits2.default)(EuiToolTip, _Component);
@@ -211,16 +218,14 @@ var EuiToolTip = exports.EuiToolTip = /*#__PURE__*/function (_Component) {
211
218
  key: "componentDidMount",
212
219
  value: function componentDidMount() {
213
220
  this._isMounted = true;
214
- if (this.props.repositionOnScroll) {
215
- window.addEventListener('scroll', this.positionToolTip, true);
216
- }
221
+ this.repositionOnScroll.subscribe();
217
222
  }
218
223
  }, {
219
224
  key: "componentWillUnmount",
220
225
  value: function componentWillUnmount() {
221
226
  this.clearAnimationTimeout();
222
227
  this._isMounted = false;
223
- window.removeEventListener('scroll', this.positionToolTip, true);
228
+ this.repositionOnScroll.cleanup();
224
229
  }
225
230
  }, {
226
231
  key: "componentDidUpdate",
@@ -230,13 +235,7 @@ var EuiToolTip = exports.EuiToolTip = /*#__PURE__*/function (_Component) {
230
235
  }
231
236
 
232
237
  // update scroll listener
233
- if (prevProps.repositionOnScroll !== this.props.repositionOnScroll) {
234
- if (this.props.repositionOnScroll) {
235
- window.addEventListener('scroll', this.positionToolTip, true);
236
- } else {
237
- window.removeEventListener('scroll', this.positionToolTip, true);
238
- }
239
- }
238
+ this.repositionOnScroll.update();
240
239
  }
241
240
  }, {
242
241
  key: "render",
@@ -298,6 +297,7 @@ var EuiToolTip = exports.EuiToolTip = /*#__PURE__*/function (_Component) {
298
297
  }
299
298
  }]);
300
299
  }(_react.Component);
300
+ (0, _defineProperty2.default)(EuiToolTip, "contextType", _component_defaults.EuiComponentDefaultsContext);
301
301
  (0, _defineProperty2.default)(EuiToolTip, "defaultProps", {
302
302
  position: 'top',
303
303
  delay: 'regular',
@@ -3,9 +3,19 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
+ var _exportNames = {
7
+ euiDisabledSelector: true
8
+ };
9
+ Object.defineProperty(exports, "euiDisabledSelector", {
10
+ enumerable: true,
11
+ get: function get() {
12
+ return _selectors.euiDisabledSelector;
13
+ }
14
+ });
6
15
  var _global_styles = require("./reset/global_styles");
7
16
  Object.keys(_global_styles).forEach(function (key) {
8
17
  if (key === "default" || key === "__esModule") return;
18
+ if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
9
19
  if (key in exports && exports[key] === _global_styles[key]) return;
10
20
  Object.defineProperty(exports, key, {
11
21
  enumerable: true,
@@ -17,6 +27,7 @@ Object.keys(_global_styles).forEach(function (key) {
17
27
  var _functions = require("./functions");
18
28
  Object.keys(_functions).forEach(function (key) {
19
29
  if (key === "default" || key === "__esModule") return;
30
+ if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
20
31
  if (key in exports && exports[key] === _functions[key]) return;
21
32
  Object.defineProperty(exports, key, {
22
33
  enumerable: true,
@@ -28,6 +39,7 @@ Object.keys(_functions).forEach(function (key) {
28
39
  var _variables = require("./variables");
29
40
  Object.keys(_variables).forEach(function (key) {
30
41
  if (key === "default" || key === "__esModule") return;
42
+ if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
31
43
  if (key in exports && exports[key] === _variables[key]) return;
32
44
  Object.defineProperty(exports, key, {
33
45
  enumerable: true,
@@ -39,6 +51,7 @@ Object.keys(_variables).forEach(function (key) {
39
51
  var _mixins = require("./mixins");
40
52
  Object.keys(_mixins).forEach(function (key) {
41
53
  if (key === "default" || key === "__esModule") return;
54
+ if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
42
55
  if (key in exports && exports[key] === _mixins[key]) return;
43
56
  Object.defineProperty(exports, key, {
44
57
  enumerable: true,
@@ -50,6 +63,7 @@ Object.keys(_mixins).forEach(function (key) {
50
63
  var _animations = require("./utility/animations");
51
64
  Object.keys(_animations).forEach(function (key) {
52
65
  if (key === "default" || key === "__esModule") return;
66
+ if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
53
67
  if (key in exports && exports[key] === _animations[key]) return;
54
68
  Object.defineProperty(exports, key, {
55
69
  enumerable: true,
@@ -57,4 +71,5 @@ Object.keys(_animations).forEach(function (key) {
57
71
  return _animations[key];
58
72
  }
59
73
  });
60
- });
74
+ });
75
+ var _selectors = require("./utility/selectors");
@@ -134,7 +134,7 @@ var euiButtonDisplaysColors = function euiButtonDisplaysColors(euiThemeContext)
134
134
  case 'fill':
135
135
  {
136
136
  var _buttonColors = getButtonVariantTokenValues(euiThemeContext, color, 'filled');
137
- displaysColorsMap[display][color] = /*#__PURE__*/(0, _react.css)(euiButtonFillColor(euiThemeContext, color), "outline-color:", euiThemeContext.colorMode === 'DARK' && color === 'text' ? 'currentColor' : euiThemeContext.euiTheme.colors.fullShade, ";", _interactionStyles(euiThemeContext, _buttonColors), ";;label:displaysColorsMap-display-color;");
137
+ displaysColorsMap[display][color] = /*#__PURE__*/(0, _react.css)(euiButtonFillColor(euiThemeContext, color), "outline-color:", euiThemeContext.colorMode === 'DARK' && color === 'text' ? 'currentColor' : color !== 'disabled' ? euiThemeContext.euiTheme.colors.fullShade : '', ";", _interactionStyles(euiThemeContext, _buttonColors), ";;label:displaysColorsMap-display-color;");
138
138
  break;
139
139
  }
140
140
  case 'empty':
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.euiDisabledSelector = void 0;
7
+ /*
8
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
9
+ * or more contributor license agreements. Licensed under the Elastic License
10
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
11
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
12
+ * Side Public License, v 1.
13
+ */
14
+
15
+ var euiDisabledSelector = exports.euiDisabledSelector = ":disabled, [aria-disabled=\"true\"]";