@elastic/eui 89.1.0 → 90.0.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 (314) hide show
  1. package/dist/eui_theme_dark.css +2 -467
  2. package/dist/eui_theme_dark.min.css +1 -1
  3. package/dist/eui_theme_light.css +2 -467
  4. package/dist/eui_theme_light.min.css +1 -1
  5. package/es/components/accessibility/skip_link/skip_link.js +1 -2
  6. package/es/components/accordion/accordion.js +27 -2
  7. package/es/components/accordion/accordion_children/accordion_children.js +7 -15
  8. package/es/components/basic_table/basic_table.js +60 -23
  9. package/es/components/basic_table/collapsed_item_actions.js +1 -1
  10. package/es/components/basic_table/in_memory_table.js +18 -4
  11. package/es/components/button/button.js +17 -45
  12. package/es/components/button/button_empty/button_empty.js +30 -47
  13. package/es/components/button/button_icon/button_icon.js +26 -43
  14. package/es/components/card/card.js +1 -6
  15. package/es/components/card/card_select/card_select.js +1 -6
  16. package/es/components/collapsible_nav_beta/collapsible_nav_beta.js +12 -8
  17. package/es/components/collapsible_nav_beta/collapsible_nav_button/collapsible_nav_button.js +12 -7
  18. package/es/components/collapsible_nav_beta/collapsible_nav_group/collapsible_nav_group.js +18 -4
  19. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +11 -4
  20. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +11 -4
  21. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +11 -4
  22. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.js +36 -4
  23. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.styles.js +1 -1
  24. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_group.js +158 -0
  25. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +65 -26
  26. package/es/components/collapsible_nav_beta/context.js +1 -0
  27. package/es/components/comment_list/comment_event.js +31 -19
  28. package/es/components/comment_list/comment_event.styles.js +26 -24
  29. package/es/components/context_menu/context_menu.js +28 -22
  30. package/es/components/context_menu/context_menu.styles.js +26 -0
  31. package/es/components/context_menu/context_menu_item.js +95 -125
  32. package/es/components/context_menu/context_menu_item.styles.js +82 -0
  33. package/es/components/context_menu/context_menu_panel.a11y.js +4 -2
  34. package/es/components/context_menu/context_menu_panel.js +32 -61
  35. package/es/components/context_menu/context_menu_panel.styles.js +40 -0
  36. package/es/components/control_bar/control_bar.js +28 -23
  37. package/es/components/datagrid/body/data_grid_body.js +6 -7
  38. package/es/components/datagrid/body/data_grid_body_custom.js +6 -7
  39. package/es/components/datagrid/body/data_grid_body_virtualized.js +6 -7
  40. package/es/components/datagrid/body/data_grid_cell.js +12 -13
  41. package/es/components/datagrid/body/data_grid_row_manager.js +28 -9
  42. package/es/components/datagrid/body/header/data_grid_header_cell.js +6 -7
  43. package/es/components/datagrid/body/header/data_grid_header_row.js +6 -7
  44. package/es/components/datagrid/data_grid.js +6 -7
  45. package/es/components/datagrid/utils/in_memory.js +6 -7
  46. package/es/components/date_picker/auto_refresh/auto_refresh.js +1 -2
  47. package/es/components/form/field_number/field_number.js +13 -9
  48. package/es/components/form/field_password/field_password.js +4 -7
  49. package/es/components/form/range/dual_range.js +110 -85
  50. package/es/components/form/range/range.js +47 -40
  51. package/es/components/form/range/range_track.js +6 -20
  52. package/es/components/form/range/utils.js +1 -2
  53. package/es/components/header/header_links/header_link.js +1 -6
  54. package/es/components/header/header_section/header_section_item_button.js +1 -6
  55. package/es/components/list_group/list_group.js +1 -2
  56. package/es/components/list_group/list_group_item.js +7 -5
  57. package/es/components/list_group/list_group_item_extra_action.js +1 -2
  58. package/es/components/list_group/list_group_item_extra_action.styles.js +1 -1
  59. package/es/components/list_group/pinnable_list_group/pinnable_list_group.js +2 -3
  60. package/es/components/modal/confirm_modal.js +1 -1
  61. package/es/components/notification/notification_event.js +1 -6
  62. package/es/components/notification/notification_event_read_button.js +1 -2
  63. package/es/components/page/index.js +1 -4
  64. package/es/components/pagination/pagination_button.js +1 -6
  65. package/es/components/popover/input_popover.js +26 -11
  66. package/es/components/tabs/tab.js +1 -1
  67. package/eui.d.ts +198 -287
  68. package/i18ntokens.json +103 -67
  69. package/lib/components/accessibility/skip_link/skip_link.js +1 -2
  70. package/lib/components/accordion/accordion.js +27 -2
  71. package/lib/components/accordion/accordion_children/accordion_children.js +5 -13
  72. package/lib/components/basic_table/basic_table.js +60 -23
  73. package/lib/components/basic_table/collapsed_item_actions.js +1 -1
  74. package/lib/components/basic_table/in_memory_table.js +18 -4
  75. package/lib/components/button/button.js +24 -51
  76. package/lib/components/button/button_empty/button_empty.js +29 -46
  77. package/lib/components/button/button_icon/button_icon.js +25 -42
  78. package/lib/components/card/card.js +1 -6
  79. package/lib/components/card/card_select/card_select.js +1 -6
  80. package/lib/components/collapsible_nav_beta/collapsible_nav_beta.js +12 -8
  81. package/lib/components/collapsible_nav_beta/collapsible_nav_button/collapsible_nav_button.js +12 -7
  82. package/lib/components/collapsible_nav_beta/collapsible_nav_group/collapsible_nav_group.js +18 -4
  83. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +11 -4
  84. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +11 -4
  85. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +11 -4
  86. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.js +36 -4
  87. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.styles.js +1 -1
  88. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_group.js +165 -0
  89. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +65 -26
  90. package/lib/components/collapsible_nav_beta/context.js +1 -0
  91. package/lib/components/comment_list/comment_event.js +33 -18
  92. package/lib/components/comment_list/comment_event.styles.js +28 -25
  93. package/lib/components/context_menu/context_menu.js +31 -24
  94. package/lib/components/context_menu/context_menu.styles.js +34 -0
  95. package/lib/components/context_menu/context_menu_item.js +102 -133
  96. package/lib/components/context_menu/context_menu_item.styles.js +87 -0
  97. package/lib/components/context_menu/context_menu_panel.a11y.js +4 -2
  98. package/lib/components/context_menu/context_menu_panel.js +35 -63
  99. package/lib/components/context_menu/context_menu_panel.styles.js +46 -0
  100. package/lib/components/control_bar/control_bar.js +28 -23
  101. package/lib/components/datagrid/body/data_grid_body.js +6 -7
  102. package/lib/components/datagrid/body/data_grid_body_custom.js +6 -7
  103. package/lib/components/datagrid/body/data_grid_body_virtualized.js +6 -7
  104. package/lib/components/datagrid/body/data_grid_cell.js +12 -13
  105. package/lib/components/datagrid/body/data_grid_row_manager.js +33 -16
  106. package/lib/components/datagrid/body/header/data_grid_header_cell.js +6 -7
  107. package/lib/components/datagrid/body/header/data_grid_header_row.js +6 -7
  108. package/lib/components/datagrid/data_grid.js +6 -7
  109. package/lib/components/datagrid/utils/in_memory.js +6 -7
  110. package/lib/components/date_picker/auto_refresh/auto_refresh.js +1 -2
  111. package/lib/components/form/field_number/field_number.js +12 -8
  112. package/lib/components/form/field_password/field_password.js +4 -7
  113. package/lib/components/form/range/dual_range.js +110 -85
  114. package/lib/components/form/range/range.js +47 -40
  115. package/lib/components/form/range/range_track.js +5 -19
  116. package/lib/components/form/range/utils.js +1 -2
  117. package/lib/components/header/header_links/header_link.js +1 -6
  118. package/lib/components/header/header_section/header_section_item_button.js +1 -6
  119. package/lib/components/list_group/list_group.js +1 -2
  120. package/lib/components/list_group/list_group_item.js +7 -5
  121. package/lib/components/list_group/list_group_item_extra_action.js +1 -2
  122. package/lib/components/list_group/list_group_item_extra_action.styles.js +1 -1
  123. package/lib/components/list_group/pinnable_list_group/pinnable_list_group.js +2 -3
  124. package/lib/components/modal/confirm_modal.js +1 -1
  125. package/lib/components/notification/notification_event.js +1 -6
  126. package/lib/components/notification/notification_event_read_button.js +1 -2
  127. package/lib/components/page/index.js +1 -40
  128. package/lib/components/popover/input_popover.js +26 -11
  129. package/lib/components/tabs/tab.js +1 -1
  130. package/optimize/es/components/accordion/accordion.js +27 -2
  131. package/optimize/es/components/accordion/accordion_children/accordion_children.js +5 -14
  132. package/optimize/es/components/basic_table/basic_table.js +42 -19
  133. package/optimize/es/components/button/button.js +15 -33
  134. package/optimize/es/components/button/button_empty/button_empty.js +29 -41
  135. package/optimize/es/components/button/button_icon/button_icon.js +25 -37
  136. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_beta.js +12 -8
  137. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_button/collapsible_nav_button.js +12 -7
  138. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.styles.js +1 -1
  139. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_group.js +60 -0
  140. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +21 -10
  141. package/optimize/es/components/collapsible_nav_beta/context.js +1 -0
  142. package/optimize/es/components/comment_list/comment_event.js +31 -19
  143. package/optimize/es/components/comment_list/comment_event.styles.js +26 -24
  144. package/optimize/es/components/context_menu/context_menu.js +25 -19
  145. package/optimize/es/components/context_menu/context_menu.styles.js +26 -0
  146. package/optimize/es/components/context_menu/context_menu_item.js +94 -119
  147. package/optimize/es/components/context_menu/context_menu_item.styles.js +82 -0
  148. package/optimize/es/components/context_menu/context_menu_panel.a11y.js +4 -2
  149. package/optimize/es/components/context_menu/context_menu_panel.js +29 -58
  150. package/optimize/es/components/context_menu/context_menu_panel.styles.js +40 -0
  151. package/optimize/es/components/control_bar/control_bar.js +28 -23
  152. package/optimize/es/components/datagrid/body/data_grid_row_manager.js +23 -9
  153. package/optimize/es/components/form/field_number/field_number.js +13 -9
  154. package/optimize/es/components/form/field_password/field_password.js +4 -7
  155. package/optimize/es/components/form/range/dual_range.js +110 -85
  156. package/optimize/es/components/form/range/range.js +47 -40
  157. package/optimize/es/components/form/range/range_track.js +5 -14
  158. package/optimize/es/components/form/range/utils.js +1 -2
  159. package/optimize/es/components/list_group/list_group_item.js +6 -3
  160. package/optimize/es/components/list_group/list_group_item_extra_action.styles.js +1 -1
  161. package/optimize/es/components/page/index.js +1 -4
  162. package/optimize/es/components/popover/input_popover.js +26 -11
  163. package/optimize/es/components/tabs/tab.js +1 -1
  164. package/optimize/lib/components/accordion/accordion.js +27 -2
  165. package/optimize/lib/components/accordion/accordion_children/accordion_children.js +3 -12
  166. package/optimize/lib/components/basic_table/basic_table.js +42 -19
  167. package/optimize/lib/components/button/button.js +16 -34
  168. package/optimize/lib/components/button/button_empty/button_empty.js +28 -40
  169. package/optimize/lib/components/button/button_icon/button_icon.js +24 -36
  170. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_beta.js +12 -8
  171. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_button/collapsible_nav_button.js +12 -7
  172. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.styles.js +1 -1
  173. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_group.js +67 -0
  174. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +21 -10
  175. package/optimize/lib/components/collapsible_nav_beta/context.js +1 -0
  176. package/optimize/lib/components/comment_list/comment_event.js +33 -18
  177. package/optimize/lib/components/comment_list/comment_event.styles.js +28 -25
  178. package/optimize/lib/components/context_menu/context_menu.js +28 -21
  179. package/optimize/lib/components/context_menu/context_menu.styles.js +34 -0
  180. package/optimize/lib/components/context_menu/context_menu_item.js +101 -128
  181. package/optimize/lib/components/context_menu/context_menu_item.styles.js +87 -0
  182. package/optimize/lib/components/context_menu/context_menu_panel.a11y.js +4 -2
  183. package/optimize/lib/components/context_menu/context_menu_panel.js +32 -60
  184. package/optimize/lib/components/context_menu/context_menu_panel.styles.js +47 -0
  185. package/optimize/lib/components/control_bar/control_bar.js +28 -23
  186. package/optimize/lib/components/datagrid/body/data_grid_row_manager.js +23 -8
  187. package/optimize/lib/components/form/field_number/field_number.js +12 -8
  188. package/optimize/lib/components/form/field_password/field_password.js +5 -8
  189. package/optimize/lib/components/form/range/dual_range.js +110 -85
  190. package/optimize/lib/components/form/range/range.js +47 -40
  191. package/optimize/lib/components/form/range/range_track.js +4 -13
  192. package/optimize/lib/components/form/range/utils.js +1 -2
  193. package/optimize/lib/components/list_group/list_group_item.js +6 -3
  194. package/optimize/lib/components/list_group/list_group_item_extra_action.styles.js +1 -1
  195. package/optimize/lib/components/page/index.js +1 -40
  196. package/optimize/lib/components/popover/input_popover.js +27 -12
  197. package/optimize/lib/components/tabs/tab.js +1 -1
  198. package/package.json +5 -5
  199. package/src/components/datagrid/_data_grid_data_row.scss +0 -1
  200. package/src/components/date_picker/super_date_picker/date_popover/_date_popover_content.scss +2 -1
  201. package/src/components/index.scss +0 -2
  202. package/test-env/components/accessibility/skip_link/skip_link.js +1 -2
  203. package/test-env/components/accordion/accordion.js +27 -2
  204. package/test-env/components/accordion/accordion_children/accordion_children.js +5 -13
  205. package/test-env/components/basic_table/basic_table.js +60 -23
  206. package/test-env/components/basic_table/collapsed_item_actions.js +1 -1
  207. package/test-env/components/basic_table/in_memory_table.js +18 -4
  208. package/test-env/components/button/button.js +17 -40
  209. package/test-env/components/button/button_empty/button_empty.js +29 -46
  210. package/test-env/components/button/button_icon/button_icon.js +25 -42
  211. package/test-env/components/card/card.js +1 -6
  212. package/test-env/components/card/card_select/card_select.js +1 -6
  213. package/test-env/components/collapsible_nav_beta/collapsible_nav_beta.js +12 -8
  214. package/test-env/components/collapsible_nav_beta/collapsible_nav_button/collapsible_nav_button.js +12 -7
  215. package/test-env/components/collapsible_nav_beta/collapsible_nav_group/collapsible_nav_group.js +18 -4
  216. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +11 -4
  217. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +11 -4
  218. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +11 -4
  219. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.js +36 -4
  220. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.styles.js +1 -1
  221. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_group.js +164 -0
  222. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +65 -26
  223. package/test-env/components/collapsible_nav_beta/context.js +1 -0
  224. package/test-env/components/comment_list/comment_event.js +33 -18
  225. package/test-env/components/comment_list/comment_event.styles.js +28 -25
  226. package/test-env/components/context_menu/context_menu.js +31 -24
  227. package/test-env/components/context_menu/context_menu.styles.js +34 -0
  228. package/test-env/components/context_menu/context_menu_item.js +102 -129
  229. package/test-env/components/context_menu/context_menu_item.styles.js +87 -0
  230. package/test-env/components/context_menu/context_menu_panel.a11y.js +4 -2
  231. package/test-env/components/context_menu/context_menu_panel.js +35 -63
  232. package/test-env/components/context_menu/context_menu_panel.styles.js +47 -0
  233. package/test-env/components/control_bar/control_bar.js +28 -23
  234. package/test-env/components/datagrid/body/data_grid_body.js +6 -7
  235. package/test-env/components/datagrid/body/data_grid_body_custom.js +6 -7
  236. package/test-env/components/datagrid/body/data_grid_body_virtualized.js +6 -7
  237. package/test-env/components/datagrid/body/data_grid_cell.js +12 -13
  238. package/test-env/components/datagrid/body/data_grid_row_manager.js +23 -8
  239. package/test-env/components/datagrid/body/header/data_grid_header_cell.js +6 -7
  240. package/test-env/components/datagrid/body/header/data_grid_header_row.js +6 -7
  241. package/test-env/components/datagrid/data_grid.js +6 -7
  242. package/test-env/components/datagrid/utils/in_memory.js +6 -7
  243. package/test-env/components/date_picker/auto_refresh/auto_refresh.js +1 -2
  244. package/test-env/components/form/field_number/field_number.js +12 -8
  245. package/test-env/components/form/field_password/field_password.js +4 -7
  246. package/test-env/components/form/range/dual_range.js +110 -85
  247. package/test-env/components/form/range/range.js +47 -40
  248. package/test-env/components/form/range/range_track.js +5 -14
  249. package/test-env/components/form/range/utils.js +1 -2
  250. package/test-env/components/header/header_links/header_link.js +1 -6
  251. package/test-env/components/header/header_section/header_section_item_button.js +1 -6
  252. package/test-env/components/list_group/list_group.js +1 -2
  253. package/test-env/components/list_group/list_group_item.js +7 -5
  254. package/test-env/components/list_group/list_group_item_extra_action.js +1 -2
  255. package/test-env/components/list_group/list_group_item_extra_action.styles.js +1 -1
  256. package/test-env/components/list_group/pinnable_list_group/pinnable_list_group.js +2 -3
  257. package/test-env/components/modal/confirm_modal.js +1 -1
  258. package/test-env/components/notification/notification_event.js +1 -6
  259. package/test-env/components/notification/notification_event_read_button.js +1 -2
  260. package/test-env/components/page/index.js +1 -40
  261. package/test-env/components/popover/input_popover.js +26 -11
  262. package/test-env/components/tabs/tab.js +1 -1
  263. package/es/components/page/page_content/index.js +0 -12
  264. package/es/components/page/page_content/page_content.js +0 -110
  265. package/es/components/page/page_content/page_content_body.js +0 -69
  266. package/es/components/page/page_content/page_content_header.js +0 -43
  267. package/es/components/page/page_content/page_content_header_section.js +0 -34
  268. package/es/components/page/page_side_bar/index.js +0 -9
  269. package/es/components/page/page_side_bar/page_side_bar.js +0 -60
  270. package/es/components/page/page_template.js +0 -591
  271. package/lib/components/page/page_content/index.js +0 -33
  272. package/lib/components/page/page_content/page_content.js +0 -117
  273. package/lib/components/page/page_content/page_content_body.js +0 -77
  274. package/lib/components/page/page_content/page_content_header.js +0 -50
  275. package/lib/components/page/page_content/page_content_header_section.js +0 -41
  276. package/lib/components/page/page_side_bar/index.js +0 -12
  277. package/lib/components/page/page_side_bar/page_side_bar.js +0 -67
  278. package/lib/components/page/page_template.js +0 -598
  279. package/optimize/es/components/page/page_content/index.js +0 -12
  280. package/optimize/es/components/page/page_content/page_content.js +0 -45
  281. package/optimize/es/components/page/page_content/page_content_body.js +0 -45
  282. package/optimize/es/components/page/page_content/page_content_header.js +0 -30
  283. package/optimize/es/components/page/page_content/page_content_header_section.js +0 -26
  284. package/optimize/es/components/page/page_side_bar/index.js +0 -9
  285. package/optimize/es/components/page/page_side_bar/page_side_bar.js +0 -44
  286. package/optimize/es/components/page/page_template.js +0 -325
  287. package/optimize/lib/components/page/page_content/index.js +0 -33
  288. package/optimize/lib/components/page/page_content/page_content.js +0 -52
  289. package/optimize/lib/components/page/page_content/page_content_body.js +0 -53
  290. package/optimize/lib/components/page/page_content/page_content_header.js +0 -37
  291. package/optimize/lib/components/page/page_content/page_content_header_section.js +0 -33
  292. package/optimize/lib/components/page/page_side_bar/index.js +0 -12
  293. package/optimize/lib/components/page/page_side_bar/page_side_bar.js +0 -51
  294. package/optimize/lib/components/page/page_template.js +0 -332
  295. package/src/components/context_menu/_context_menu.scss +0 -27
  296. package/src/components/context_menu/_context_menu_item.scss +0 -65
  297. package/src/components/context_menu/_context_menu_panel.scss +0 -101
  298. package/src/components/context_menu/_index.scss +0 -3
  299. package/src/components/page/_index.scss +0 -2
  300. package/src/components/page/page_content/_index.scss +0 -4
  301. package/src/components/page/page_content/_page_content.scss +0 -25
  302. package/src/components/page/page_content/_page_content_body.scss +0 -19
  303. package/src/components/page/page_content/_page_content_header.scss +0 -20
  304. package/src/components/page/page_content/_page_content_header_section.scss +0 -17
  305. package/src/components/page/page_side_bar/_index.scss +0 -1
  306. package/src/components/page/page_side_bar/_page_side_bar.scss +0 -31
  307. package/test-env/components/page/page_content/index.js +0 -33
  308. package/test-env/components/page/page_content/page_content.js +0 -116
  309. package/test-env/components/page/page_content/page_content_body.js +0 -73
  310. package/test-env/components/page/page_content/page_content_header.js +0 -49
  311. package/test-env/components/page/page_content/page_content_header_section.js +0 -40
  312. package/test-env/components/page/page_side_bar/index.js +0 -12
  313. package/test-env/components/page/page_side_bar/page_side_bar.js +0 -66
  314. package/test-env/components/page/page_template.js +0 -594
@@ -27,6 +27,7 @@ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Re
27
27
 
28
28
  import classNames from 'classnames';
29
29
  import React, { Component } from 'react';
30
+ import { EuiThemeProvider } from '../../services';
30
31
  import { EuiScreenReaderOnly } from '../accessibility';
31
32
  import { EuiBreadcrumbs } from '../breadcrumbs';
32
33
  import { EuiButton, EuiButtonIcon } from '../button';
@@ -161,8 +162,7 @@ export var EuiControlBar = /*#__PURE__*/function (_Component) {
161
162
  {
162
163
  var controlType = control.controlType,
163
164
  id = control.id,
164
- _control$color = control.color,
165
- color = _control$color === void 0 ? 'ghost' : _control$color,
165
+ color = control.color,
166
166
  label = control.label,
167
167
  _className = control.className,
168
168
  _rest = _objectWithoutProperties(control, _excluded2);
@@ -180,8 +180,8 @@ export var EuiControlBar = /*#__PURE__*/function (_Component) {
180
180
  _id = control.id,
181
181
  iconType = control.iconType,
182
182
  _className2 = control.className,
183
- _control$color2 = control.color,
184
- _color = _control$color2 === void 0 ? 'ghost' : _control$color2,
183
+ _control$color = control.color,
184
+ _color = _control$color === void 0 ? 'text' : _control$color,
185
185
  onClick = control.onClick,
186
186
  href = control.href,
187
187
  _rest2 = _objectWithoutProperties(control, _excluded3);
@@ -257,25 +257,30 @@ export var EuiControlBar = /*#__PURE__*/function (_Component) {
257
257
  token: "euiControlBar.screenReaderHeading",
258
258
  default: "Page level controls"
259
259
  }, function (screenReaderHeading) {
260
- return (
261
- // Though it would be better to use aria-labelledby than aria-label and not repeat the same string twice
262
- // A bug in voiceover won't list some landmarks in the rotor without an aria-label
263
- ___EmotionJSX("section", _extends({
264
- className: classes,
265
- "aria-label": landmarkHeading ? landmarkHeading : screenReaderHeading
266
- }, rest, {
267
- style: styles
268
- }), ___EmotionJSX(EuiScreenReaderOnly, null, ___EmotionJSX("h2", null, landmarkHeading ? landmarkHeading : screenReaderHeading)), ___EmotionJSX("div", {
269
- className: "euiControlBar__controls",
270
- ref: function ref(node) {
271
- _this2.bar = node;
272
- }
273
- }, controls.map(function (control, index) {
274
- return controlItem(control, index);
275
- })), _this2.props.showContent ? ___EmotionJSX("div", {
276
- className: "euiControlBar__content"
277
- }, children) : null)
278
- );
260
+ return ___EmotionJSX(EuiThemeProvider, {
261
+ colorMode: "dark",
262
+ wrapperProps: {
263
+ cloneElement: true
264
+ }
265
+ }, ___EmotionJSX("section", _extends({
266
+ className: classes
267
+ // Though it would be better to use aria-labelledby than aria-label
268
+ // and not repeat the same string twice, a bug in voiceover won't list
269
+ // some landmarks in the rotor without an aria-label
270
+ ,
271
+ "aria-label": landmarkHeading ? landmarkHeading : screenReaderHeading
272
+ }, rest, {
273
+ style: styles
274
+ }), ___EmotionJSX(EuiScreenReaderOnly, null, ___EmotionJSX("h2", null, landmarkHeading ? landmarkHeading : screenReaderHeading)), ___EmotionJSX("div", {
275
+ className: "euiControlBar__controls",
276
+ ref: function ref(node) {
277
+ _this2.bar = node;
278
+ }
279
+ }, controls.map(function (control, index) {
280
+ return controlItem(control, index);
281
+ })), _this2.props.showContent ? ___EmotionJSX("div", {
282
+ className: "euiControlBar__content"
283
+ }, children) : null));
279
284
  });
280
285
  return position === 'fixed' ? ___EmotionJSX(EuiPortal, null, controlBar, ___EmotionJSX(EuiScreenReaderOnly, null, ___EmotionJSX("p", {
281
286
  "aria-live": "assertive"
@@ -1,3 +1,4 @@
1
+ import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
1
2
  /*
2
3
  * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
3
4
  * or more contributor license agreements. Licensed under the Elastic License
@@ -6,7 +7,8 @@
6
7
  * Side Public License, v 1.
7
8
  */
8
9
 
9
- import { useRef, useCallback, useEffect } from 'react';
10
+ import { useRef, useCallback } from 'react';
11
+ import { useUpdateEffect } from '../../../services';
10
12
  export var useRowManager = function useRowManager(_ref) {
11
13
  var innerGridRef = _ref.innerGridRef,
12
14
  rowClasses = _ref.rowClasses;
@@ -20,14 +22,12 @@ export var useRowManager = function useRowManager(_ref) {
20
22
  if (rowElement == null) {
21
23
  rowElement = document.createElement('div');
22
24
  rowElement.setAttribute('role', 'row');
23
- rowElement.dataset.gridRowIndex = String(rowIndex); // Row index from data, affected by sorting/pagination
24
- rowElement.dataset.gridVisibleRowIndex = String(visibleRowIndex); // Affected by sorting/pagination
25
+ rowElement.dataset.gridRowIndex = String(rowIndex); // Row index from data, not affected by sorting/pagination
25
26
  rowElement.classList.add('euiDataGridRow');
26
27
  if (rowClasses !== null && rowClasses !== void 0 && rowClasses[rowIndex]) {
27
- rowElement.classList.add(rowClasses[rowIndex]);
28
+ var _rowElement$classList;
29
+ (_rowElement$classList = rowElement.classList).add.apply(_rowElement$classList, _toConsumableArray(rowClasses[rowIndex].split(' ')));
28
30
  }
29
- var isOddRow = visibleRowIndex % 2 !== 0;
30
- if (isOddRow) rowElement.classList.add('euiDataGridRow--striped');
31
31
  rowElement.style.position = 'absolute';
32
32
  rowElement.style.left = '0';
33
33
  rowElement.style.right = '0';
@@ -56,6 +56,17 @@ export var useRowManager = function useRowManager(_ref) {
56
56
  });
57
57
  }
58
58
 
59
+ // Ensure the row's visible row index & striping update correctly on sort & pagination
60
+ if (rowElement.dataset.gridVisibleRowIndex !== String(visibleRowIndex)) {
61
+ rowElement.dataset.gridVisibleRowIndex = String(visibleRowIndex);
62
+ var isOddRow = visibleRowIndex % 2 !== 0;
63
+ if (isOddRow) {
64
+ rowElement.classList.add('euiDataGridRow--striped');
65
+ } else {
66
+ rowElement.classList.remove('euiDataGridRow--striped');
67
+ }
68
+ }
69
+
59
70
  // Ensure that the row's dimensions are always correct by having each cell update position styles
60
71
  rowElement.style.top = top;
61
72
  rowElement.style.height = "".concat(height, "px");
@@ -63,13 +74,16 @@ export var useRowManager = function useRowManager(_ref) {
63
74
  }, [rowClasses, innerGridRef]);
64
75
 
65
76
  // Update row classes dynamically whenever a new prop is passed in
66
- useEffect(function () {
77
+ useUpdateEffect(function () {
67
78
  if (rowClasses) {
68
79
  rowIdToElements.current.forEach(function (rowElement, rowIndex) {
80
+ var euiClasses = Array.from(rowElement.classList).filter(function (className) {
81
+ return className.startsWith('euiDataGridRow');
82
+ }).join(' ');
69
83
  if (rowClasses[rowIndex]) {
70
- rowElement.classList.value = "euiDataGridRow ".concat(rowClasses[rowIndex]);
84
+ rowElement.classList.value = "".concat(euiClasses, " ").concat(rowClasses[rowIndex]);
71
85
  } else {
72
- rowElement.classList.value = 'euiDataGridRow'; // Clear any added classes
86
+ rowElement.classList.value = euiClasses; // Clear any added classes
73
87
  }
74
88
  });
75
89
  }
@@ -1,7 +1,7 @@
1
1
  import _extends from "@babel/runtime/helpers/extends";
2
2
  import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
3
3
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
4
- var _excluded = ["className", "icon", "id", "placeholder", "name", "min", "max", "step", "value", "isInvalid", "fullWidth", "isLoading", "compressed", "prepend", "append", "inputRef", "readOnly", "controlOnly", "onKeyUp", "onBlur"];
4
+ var _excluded = ["className", "icon", "id", "placeholder", "name", "min", "max", "step", "value", "isInvalid", "fullWidth", "isLoading", "compressed", "prepend", "append", "inputRef", "readOnly", "controlOnly", "onKeyUp"];
5
5
  /*
6
6
  * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
7
7
  * or more contributor license agreements. Licensed under the Elastic License
@@ -10,8 +10,9 @@ var _excluded = ["className", "icon", "id", "placeholder", "name", "min", "max",
10
10
  * Side Public License, v 1.
11
11
  */
12
12
 
13
- import React, { useState, useCallback } from 'react';
13
+ import React, { useState, useEffect, useCallback, useRef } from 'react';
14
14
  import classNames from 'classnames';
15
+ import { useCombinedRefs } from '../../../services';
15
16
  import { EuiValidatableControl } from '../validatable_control';
16
17
  import { EuiFormControlLayout } from '../form_control_layout';
17
18
  import { getFormControlClassNameForIconCount } from '../form_control_layout/_num_icons';
@@ -43,8 +44,9 @@ export var EuiFieldNumber = function EuiFieldNumber(props) {
43
44
  readOnly = props.readOnly,
44
45
  controlOnly = props.controlOnly,
45
46
  _onKeyUp = props.onKeyUp,
46
- _onBlur = props.onBlur,
47
47
  rest = _objectWithoutProperties(props, _excluded);
48
+ var _inputRef = useRef(null);
49
+ var combinedRefs = useCombinedRefs([_inputRef, inputRef]);
48
50
 
49
51
  // Attempt to determine additional invalid state. The native number input
50
52
  // will set :invalid state automatically, but we need to also set
@@ -59,6 +61,13 @@ export var EuiFieldNumber = function EuiFieldNumber(props) {
59
61
  var isInvalid = !inputEl.validity.valid || undefined;
60
62
  setIsNativelyInvalid(isInvalid);
61
63
  }, []);
64
+
65
+ // Re-check validity whenever props that might affect validity are updated
66
+ useEffect(function () {
67
+ if (_inputRef.current) {
68
+ checkNativeValidity(_inputRef.current);
69
+ }
70
+ }, [value, min, max, step, checkNativeValidity]);
62
71
  var numIconsClass = controlOnly ? false : getFormControlClassNameForIconCount({
63
72
  isInvalid: isInvalid || isNativelyInvalid,
64
73
  isLoading: isLoading
@@ -83,18 +92,13 @@ export var EuiFieldNumber = function EuiFieldNumber(props) {
83
92
  placeholder: placeholder,
84
93
  readOnly: readOnly,
85
94
  className: classes,
86
- ref: inputRef,
95
+ ref: combinedRefs,
87
96
  "aria-invalid": isInvalid || isNativelyInvalid,
88
97
  onKeyUp: function onKeyUp(e) {
89
98
  // Note that we can't use `onChange` because browsers don't emit change events
90
99
  // for invalid text - see https://github.com/facebook/react/issues/16554
91
100
  _onKeyUp === null || _onKeyUp === void 0 ? void 0 : _onKeyUp(e);
92
101
  checkNativeValidity(e.currentTarget);
93
- },
94
- onBlur: function onBlur(e) {
95
- // Browsers can also set/determine validity (e.g. when `step` is undefined) on focus blur
96
- _onBlur === null || _onBlur === void 0 ? void 0 : _onBlur(e);
97
- checkNativeValidity(e.currentTarget);
98
102
  }
99
103
  }, rest)));
100
104
  if (controlOnly) {
@@ -32,8 +32,10 @@ export var EuiFieldPassword = function EuiFieldPassword(props) {
32
32
  isInvalid = props.isInvalid,
33
33
  _props$fullWidth = props.fullWidth,
34
34
  fullWidth = _props$fullWidth === void 0 ? defaultFullWidth : _props$fullWidth,
35
- isLoading = props.isLoading,
36
- compressed = props.compressed,
35
+ _props$isLoading = props.isLoading,
36
+ isLoading = _props$isLoading === void 0 ? false : _props$isLoading,
37
+ _props$compressed = props.compressed,
38
+ compressed = _props$compressed === void 0 ? false : _props$compressed,
37
39
  _inputRef = props.inputRef,
38
40
  prepend = props.prepend,
39
41
  append = props.append,
@@ -121,9 +123,4 @@ export var EuiFieldPassword = function EuiFieldPassword(props) {
121
123
  value: value,
122
124
  ref: setInputRef
123
125
  }, rest))));
124
- };
125
- EuiFieldPassword.defaultProps = {
126
- value: undefined,
127
- isLoading: false,
128
- compressed: false
129
126
  };
@@ -56,17 +56,35 @@ export var EuiDualRangeClass = /*#__PURE__*/function (_Component) {
56
56
  id: _this.props.id || htmlIdGenerator()(),
57
57
  rangeSliderRefAvailable: false,
58
58
  isPopoverOpen: false,
59
- rangeWidth: undefined,
59
+ rangeWidth: 0,
60
60
  isVisible: true // used to trigger a rerender if initial element width is 0
61
61
  });
62
62
  _defineProperty(_assertThisInitialized(_this), "preventPopoverClose", false);
63
63
  _defineProperty(_assertThisInitialized(_this), "rangeSliderRef", null);
64
64
  _defineProperty(_assertThisInitialized(_this), "handleRangeSliderRefUpdate", function (ref) {
65
65
  _this.rangeSliderRef = ref;
66
- _this.setState({
67
- rangeSliderRefAvailable: !!ref,
68
- rangeWidth: !!ref ? ref.clientWidth : null
69
- });
66
+ if (ref) {
67
+ if (_this.isInPopover) {
68
+ // Wait a tick for popover rendering to settle
69
+ requestAnimationFrame(function () {
70
+ _this.setState({
71
+ rangeSliderRefAvailable: true,
72
+ rangeWidth: ref.clientWidth
73
+ });
74
+ });
75
+ } else {
76
+ // If not in a popover, no need to wait
77
+ _this.setState({
78
+ rangeSliderRefAvailable: true,
79
+ rangeWidth: ref.clientWidth
80
+ });
81
+ }
82
+ } else {
83
+ _this.setState({
84
+ rangeSliderRefAvailable: false,
85
+ rangeWidth: 0
86
+ });
87
+ }
70
88
  });
71
89
  _defineProperty(_assertThisInitialized(_this), "leftPosition", 0);
72
90
  _defineProperty(_assertThisInitialized(_this), "dragAcc", 0);
@@ -176,7 +194,7 @@ export var EuiDualRangeClass = /*#__PURE__*/function (_Component) {
176
194
  }
177
195
  lower = _this._handleKeyDown(lower, event);
178
196
  }
179
- if (lower >= _this.upperValue || lower < _this.props.min) return;
197
+ if (lower >= Number(_this.upperValue) || lower < _this.props.min) return;
180
198
  _this._handleOnChange(lower, _this.upperValue, event);
181
199
  });
182
200
  _defineProperty(_assertThisInitialized(_this), "handleUpperKeyDown", function (event) {
@@ -193,7 +211,7 @@ export var EuiDualRangeClass = /*#__PURE__*/function (_Component) {
193
211
  }
194
212
  upper = _this._handleKeyDown(upper, event);
195
213
  }
196
- if (upper <= _this.lowerValue || upper > _this.props.max) return;
214
+ if (upper <= Number(_this.lowerValue) || upper > _this.props.max) return;
197
215
  _this._handleOnChange(_this.lowerValue, upper, event);
198
216
  });
199
217
  _defineProperty(_assertThisInitialized(_this), "handleDraggableKeyDown", function (event) {
@@ -206,12 +224,12 @@ export var EuiDualRangeClass = /*#__PURE__*/function (_Component) {
206
224
  lower = _this._handleKeyDown(lower, event);
207
225
  upper = _this._handleKeyDown(upper, event);
208
226
  }
209
- if (lower >= _this.upperValue || lower < _this.props.min) return;
210
- if (upper <= _this.lowerValue || upper > _this.props.max) return;
227
+ if (lower >= Number(_this.upperValue) || lower < _this.props.min) return;
228
+ if (upper <= Number(_this.lowerValue) || upper > _this.props.max) return;
211
229
  _this._handleOnChange(lower, upper, event);
212
230
  });
213
231
  _defineProperty(_assertThisInitialized(_this), "calculateThumbPositionStyle", function (value, width) {
214
- var trackWidth = _this.props.showInput === 'inputWithPopover' && !!width ? width : _this.rangeSliderRef.clientWidth;
232
+ var trackWidth = _this.isInPopover && !!width ? width : _this.state.rangeWidth;
215
233
  var position = calculateThumbPosition(value, _this.props.min, _this.props.max, trackWidth);
216
234
  return {
217
235
  left: "".concat(position, "%")
@@ -260,9 +278,11 @@ export var EuiDualRangeClass = /*#__PURE__*/function (_Component) {
260
278
  });
261
279
  _defineProperty(_assertThisInitialized(_this), "onResize", function (width) {
262
280
  var _this$props$inputPopo, _this$props$inputPopo2;
263
- _this.setState({
264
- rangeWidth: width
265
- });
281
+ if (_this.rangeSliderRef) {
282
+ _this.setState({
283
+ rangeWidth: _this.rangeSliderRef.clientWidth
284
+ });
285
+ }
266
286
  (_this$props$inputPopo = _this.props.inputPopoverProps) === null || _this$props$inputPopo === void 0 ? void 0 : (_this$props$inputPopo2 = _this$props$inputPopo.onPanelResize) === null || _this$props$inputPopo2 === void 0 ? void 0 : _this$props$inputPopo2.call(_this$props$inputPopo, width);
267
287
  });
268
288
  _defineProperty(_assertThisInitialized(_this), "getNearestStep", function (value) {
@@ -301,6 +321,11 @@ export var EuiDualRangeClass = /*#__PURE__*/function (_Component) {
301
321
  return _this;
302
322
  }
303
323
  _createClass(EuiDualRangeClass, [{
324
+ key: "isInPopover",
325
+ get: function get() {
326
+ return this.props.showInput === 'inputWithPopover';
327
+ }
328
+ }, {
304
329
  key: "lowerValue",
305
330
  get: function get() {
306
331
  return this.props.value ? this.props.value[0] : this.props.min;
@@ -328,7 +353,8 @@ export var EuiDualRangeClass = /*#__PURE__*/function (_Component) {
328
353
  }, {
329
354
  key: "componentDidMount",
330
355
  value: function componentDidMount() {
331
- if (this.rangeSliderRef && this.rangeSliderRef.clientWidth === 0) {
356
+ var _this$rangeSliderRef;
357
+ if (((_this$rangeSliderRef = this.rangeSliderRef) === null || _this$rangeSliderRef === void 0 ? void 0 : _this$rangeSliderRef.clientWidth) === 0) {
332
358
  this.setState({
333
359
  isVisible: false
334
360
  });
@@ -337,8 +363,8 @@ export var EuiDualRangeClass = /*#__PURE__*/function (_Component) {
337
363
  }, {
338
364
  key: "componentDidUpdate",
339
365
  value: function componentDidUpdate() {
340
- var _this$rangeSliderRef;
341
- if ((_this$rangeSliderRef = this.rangeSliderRef) !== null && _this$rangeSliderRef !== void 0 && _this$rangeSliderRef.clientWidth && !this.state.isVisible) {
366
+ var _this$rangeSliderRef2;
367
+ if ((_this$rangeSliderRef2 = this.rangeSliderRef) !== null && _this$rangeSliderRef2 !== void 0 && _this$rangeSliderRef2.clientWidth && !this.state.isVisible) {
342
368
  this.setState({
343
369
  isVisible: true
344
370
  });
@@ -387,7 +413,7 @@ export var EuiDualRangeClass = /*#__PURE__*/function (_Component) {
387
413
  var min = minProps;
388
414
  var max = maxProps;
389
415
  var id = this.state.id;
390
- var showInputOnly = showInput === 'inputWithPopover';
416
+ var showInputOnly = this.isInPopover;
391
417
  var canShowDropdown = showInputOnly && !readOnly && !disabled;
392
418
  var rangeStyles = euiRangeStyles(theme);
393
419
  var minInput = !!showInput ? ___EmotionJSX(EuiRangeInput
@@ -535,6 +561,7 @@ export var EuiDualRangeClass = /*#__PURE__*/function (_Component) {
535
561
  side: "min",
536
562
  disabled: disabled
537
563
  }, min), ___EmotionJSX(EuiRangeTrack, {
564
+ trackWidth: this.state.rangeWidth,
538
565
  compressed: compressed,
539
566
  disabled: disabled,
540
567
  max: max,
@@ -548,74 +575,72 @@ export var EuiDualRangeClass = /*#__PURE__*/function (_Component) {
548
575
  value: value,
549
576
  "aria-hidden": showInput === true,
550
577
  showRange: showRange
551
- }, function (trackWidth) {
552
- return ___EmotionJSX(React.Fragment, null, ___EmotionJSX(EuiRangeSlider, _extends({
553
- className: "euiDualRange__slider",
554
- css: dualRangeStyles.euiDualRange__slider,
555
- ref: _this2.handleRangeSliderRefUpdate,
556
- id: id,
557
- name: name,
558
- min: min,
559
- max: max,
560
- step: step,
561
- disabled: disabled,
562
- onChange: _this2.handleSliderChange,
563
- showTicks: showTicks,
564
- "aria-hidden": true,
565
- tabIndex: -1,
566
- showRange: showRange,
567
- onFocus: _onFocus,
568
- onBlur: _onBlur
569
- }, rest)), _this2.state.rangeSliderRefAvailable && ___EmotionJSX(React.Fragment, null, isDraggable && _this2.isValid && ___EmotionJSX(EuiRangeDraggable, {
570
- min: min,
571
- max: max,
572
- value: [_this2.lowerValue, _this2.upperValue],
573
- disabled: disabled,
574
- lowerPosition: leftThumbPosition.left,
575
- upperPosition: rightThumbPosition.left,
576
- showTicks: showTicks,
577
- onChange: _this2.handleDrag,
578
- onFocus: _this2.onThumbFocus,
579
- onBlur: _this2.onThumbBlur,
580
- onKeyDown: _this2.handleDraggableKeyDown,
581
- "aria-describedby": showInputOnly ? undefined : _this2.props['aria-describedby'],
582
- "aria-label": showInputOnly ? undefined : _this2.props['aria-label']
583
- }), ___EmotionJSX(EuiRangeThumb, {
584
- min: min,
585
- max: Number(_this2.upperValue),
586
- value: _this2.lowerValue,
587
- disabled: disabled,
588
- showTicks: showTicks,
589
- showInput: !!showInput,
590
- onKeyDown: _this2.handleLowerKeyDown,
591
- onFocus: _this2.onThumbFocus,
592
- onBlur: _this2.onThumbBlur,
593
- style: logicalStyles(leftThumbStyles),
594
- "aria-describedby": showInputOnly ? undefined : _this2.props['aria-describedby'],
595
- "aria-label": showInputOnly ? undefined : _this2.props['aria-label']
596
- }), ___EmotionJSX(EuiRangeThumb, {
597
- min: Number(_this2.lowerValue),
598
- max: max,
599
- value: _this2.upperValue,
600
- disabled: disabled,
601
- showTicks: showTicks,
602
- showInput: !!showInput,
603
- onKeyDown: _this2.handleUpperKeyDown,
604
- onFocus: _this2.onThumbFocus,
605
- onBlur: _this2.onThumbBlur,
606
- style: logicalStyles(rightThumbStyles),
607
- "aria-describedby": showInputOnly ? undefined : _this2.props['aria-describedby'],
608
- "aria-label": showInputOnly ? undefined : _this2.props['aria-label']
609
- })), showRange && _this2.isValid && ___EmotionJSX(EuiRangeHighlight, {
610
- showTicks: showTicks,
611
- min: Number(min),
612
- max: Number(max),
613
- lowerValue: Number(_this2.lowerValue),
614
- upperValue: Number(_this2.upperValue),
615
- levels: levels,
616
- trackWidth: trackWidth
617
- }));
618
- }), showLabels && ___EmotionJSX(EuiRangeLabel, {
578
+ }, ___EmotionJSX(EuiRangeSlider, _extends({
579
+ className: "euiDualRange__slider",
580
+ css: dualRangeStyles.euiDualRange__slider,
581
+ ref: this.handleRangeSliderRefUpdate,
582
+ id: id,
583
+ name: name,
584
+ min: min,
585
+ max: max,
586
+ step: step,
587
+ disabled: disabled,
588
+ onChange: this.handleSliderChange,
589
+ showTicks: showTicks,
590
+ "aria-hidden": true,
591
+ tabIndex: -1,
592
+ showRange: showRange,
593
+ onFocus: _onFocus,
594
+ onBlur: _onBlur
595
+ }, rest)), this.state.rangeSliderRefAvailable && ___EmotionJSX(React.Fragment, null, isDraggable && this.isValid && ___EmotionJSX(EuiRangeDraggable, {
596
+ min: min,
597
+ max: max,
598
+ value: [this.lowerValue, this.upperValue],
599
+ disabled: disabled,
600
+ lowerPosition: leftThumbPosition.left,
601
+ upperPosition: rightThumbPosition.left,
602
+ showTicks: showTicks,
603
+ onChange: this.handleDrag,
604
+ onFocus: this.onThumbFocus,
605
+ onBlur: this.onThumbBlur,
606
+ onKeyDown: this.handleDraggableKeyDown,
607
+ "aria-describedby": showInputOnly ? undefined : this.props['aria-describedby'],
608
+ "aria-label": showInputOnly ? undefined : this.props['aria-label']
609
+ }), ___EmotionJSX(EuiRangeThumb, {
610
+ min: min,
611
+ max: Number(this.upperValue),
612
+ value: this.lowerValue,
613
+ disabled: disabled,
614
+ showTicks: showTicks,
615
+ showInput: !!showInput,
616
+ onKeyDown: this.handleLowerKeyDown,
617
+ onFocus: this.onThumbFocus,
618
+ onBlur: this.onThumbBlur,
619
+ style: logicalStyles(leftThumbStyles),
620
+ "aria-describedby": showInputOnly ? undefined : this.props['aria-describedby'],
621
+ "aria-label": showInputOnly ? undefined : this.props['aria-label']
622
+ }), ___EmotionJSX(EuiRangeThumb, {
623
+ min: Number(this.lowerValue),
624
+ max: max,
625
+ value: this.upperValue,
626
+ disabled: disabled,
627
+ showTicks: showTicks,
628
+ showInput: !!showInput,
629
+ onKeyDown: this.handleUpperKeyDown,
630
+ onFocus: this.onThumbFocus,
631
+ onBlur: this.onThumbBlur,
632
+ style: logicalStyles(rightThumbStyles),
633
+ "aria-describedby": showInputOnly ? undefined : this.props['aria-describedby'],
634
+ "aria-label": showInputOnly ? undefined : this.props['aria-label']
635
+ })), showRange && this.isValid && ___EmotionJSX(EuiRangeHighlight, {
636
+ showTicks: showTicks,
637
+ min: Number(min),
638
+ max: Number(max),
639
+ lowerValue: Number(this.lowerValue),
640
+ upperValue: Number(this.upperValue),
641
+ levels: levels,
642
+ trackWidth: this.state.rangeWidth
643
+ })), showLabels && ___EmotionJSX(EuiRangeLabel, {
619
644
  disabled: disabled
620
645
  }, max), showInput && !showInputOnly && ___EmotionJSX(React.Fragment, null, ___EmotionJSX("div", {
621
646
  className: showTicks || ticks ? 'euiRange__slimHorizontalSpacer' : 'euiRange__horizontalSpacer',
@@ -48,7 +48,8 @@ export var EuiRangeClass = /*#__PURE__*/function (_Component) {
48
48
  _defineProperty(_assertThisInitialized(_this), "preventPopoverClose", false);
49
49
  _defineProperty(_assertThisInitialized(_this), "state", {
50
50
  id: _this.props.id || htmlIdGenerator()(),
51
- isPopoverOpen: false
51
+ isPopoverOpen: false,
52
+ trackWidth: 0
52
53
  });
53
54
  _defineProperty(_assertThisInitialized(_this), "handleOnChange", function (e) {
54
55
  var isValid = isWithinRange(_this.props.min, _this.props.max, e.currentTarget.value);
@@ -56,6 +57,11 @@ export var EuiRangeClass = /*#__PURE__*/function (_Component) {
56
57
  _this.props.onChange(e, isValid);
57
58
  }
58
59
  });
60
+ _defineProperty(_assertThisInitialized(_this), "rangeSliderRef", function (ref) {
61
+ _this.setState({
62
+ trackWidth: (ref === null || ref === void 0 ? void 0 : ref.clientWidth) || 0
63
+ });
64
+ });
59
65
  _defineProperty(_assertThisInitialized(_this), "onInputFocus", function (e) {
60
66
  if (_this.props.onFocus) {
61
67
  _this.props.onFocus(e);
@@ -169,6 +175,7 @@ export var EuiRangeClass = /*#__PURE__*/function (_Component) {
169
175
  side: "min",
170
176
  disabled: disabled
171
177
  }, min), ___EmotionJSX(EuiRangeTrack, {
178
+ trackWidth: this.state.trackWidth,
172
179
  disabled: disabled,
173
180
  compressed: compressed,
174
181
  max: max,
@@ -182,45 +189,45 @@ export var EuiRangeClass = /*#__PURE__*/function (_Component) {
182
189
  value: value,
183
190
  "aria-hidden": !!showInput,
184
191
  showRange: showRange
185
- }, function (trackWidth) {
186
- return ___EmotionJSX(React.Fragment, null, ___EmotionJSX(EuiRangeSlider, _extends({
187
- id: showInput ? undefined : id // Attach id only to the input if there is one
188
- ,
189
- name: name,
190
- min: min,
191
- max: max,
192
- step: step,
193
- value: value,
194
- disabled: disabled,
195
- onChange: _this2.handleOnChange,
196
- showTicks: showTicks,
197
- showRange: showRange,
198
- tabIndex: showInput ? -1 : tabIndex,
199
- onMouseDown: showInputOnly ? function () {
200
- return _this2.preventPopoverClose = true;
201
- } : undefined,
202
- onFocus: showInput === true ? undefined : onFocus,
203
- onBlur: showInputOnly ? _this2.onInputBlur : onBlur,
204
- "aria-hidden": !!showInput,
205
- thumbColor: thumbColor
206
- }, rest)), showRange && _this2.isValid && ___EmotionJSX(EuiRangeHighlight, {
207
- showTicks: showTicks,
208
- min: Number(min),
209
- max: Number(max),
210
- lowerValue: Number(min),
211
- upperValue: Number(value),
212
- levels: levels,
213
- trackWidth: trackWidth
214
- }), showValue && !!String(value).length && ___EmotionJSX(EuiRangeTooltip, {
215
- value: value,
216
- max: max,
217
- min: min,
218
- name: name,
219
- showTicks: showTicks,
220
- valuePrepend: valuePrepend,
221
- valueAppend: valueAppend
222
- }));
223
- }), showLabels && ___EmotionJSX(EuiRangeLabel, {
192
+ }, ___EmotionJSX(EuiRangeSlider, _extends({
193
+ id: showInput ? undefined : id // Attach id only to the input if there is one
194
+ ,
195
+ name: name,
196
+ min: min,
197
+ max: max,
198
+ step: step,
199
+ value: value,
200
+ disabled: disabled,
201
+ onChange: this.handleOnChange,
202
+ showTicks: showTicks,
203
+ showRange: showRange,
204
+ tabIndex: showInput ? -1 : tabIndex,
205
+ onMouseDown: showInputOnly ? function () {
206
+ return _this2.preventPopoverClose = true;
207
+ } : undefined,
208
+ onFocus: showInput === true ? undefined : onFocus,
209
+ onBlur: showInputOnly ? this.onInputBlur : onBlur,
210
+ "aria-hidden": !!showInput,
211
+ thumbColor: thumbColor
212
+ }, rest, {
213
+ ref: this.rangeSliderRef
214
+ })), showRange && this.isValid && ___EmotionJSX(EuiRangeHighlight, {
215
+ showTicks: showTicks,
216
+ min: Number(min),
217
+ max: Number(max),
218
+ lowerValue: Number(min),
219
+ upperValue: Number(value),
220
+ levels: levels,
221
+ trackWidth: this.state.trackWidth
222
+ }), showValue && !!String(value).length && ___EmotionJSX(EuiRangeTooltip, {
223
+ value: value,
224
+ max: max,
225
+ min: min,
226
+ name: name,
227
+ showTicks: showTicks,
228
+ valuePrepend: valuePrepend,
229
+ valueAppend: valueAppend
230
+ })), showLabels && ___EmotionJSX(EuiRangeLabel, {
224
231
  side: "max",
225
232
  disabled: disabled
226
233
  }, max), showInput && !showInputOnly && ___EmotionJSX(React.Fragment, null, ___EmotionJSX("div", {